@etus/ui 0.4.0-beta.18 → 0.4.0-beta.19

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 (563) hide show
  1. package/dist/{chunk-U2CXFKRK.js → chunk-2SUZS6GZ.js} +4 -4
  2. package/dist/{chunk-U2CXFKRK.js.map → chunk-2SUZS6GZ.js.map} +1 -1
  3. package/dist/{chunk-UPYT2XM5.js → chunk-2XNMKALT.js} +3 -3
  4. package/dist/{chunk-UPYT2XM5.js.map → chunk-2XNMKALT.js.map} +1 -1
  5. package/dist/{chunk-SM4AZOEP.js → chunk-3MOBFZJM.js} +4 -4
  6. package/dist/{chunk-SM4AZOEP.js.map → chunk-3MOBFZJM.js.map} +1 -1
  7. package/dist/{chunk-TA4HCLP3.js → chunk-3R6MY3YJ.js} +4 -4
  8. package/dist/{chunk-TA4HCLP3.js.map → chunk-3R6MY3YJ.js.map} +1 -1
  9. package/dist/{chunk-EVUHEBWX.js → chunk-447INBQP.js} +3 -3
  10. package/dist/{chunk-EVUHEBWX.js.map → chunk-447INBQP.js.map} +1 -1
  11. package/dist/{chunk-F7XARQUW.js → chunk-4LZ53BAG.js} +3 -3
  12. package/dist/{chunk-F7XARQUW.js.map → chunk-4LZ53BAG.js.map} +1 -1
  13. package/dist/{chunk-CYIFWQ5Y.js → chunk-4OWRNWHW.js} +3 -3
  14. package/dist/{chunk-CYIFWQ5Y.js.map → chunk-4OWRNWHW.js.map} +1 -1
  15. package/dist/{chunk-OQCGQG47.js → chunk-4RNPI3LU.js} +3 -3
  16. package/dist/{chunk-OQCGQG47.js.map → chunk-4RNPI3LU.js.map} +1 -1
  17. package/dist/{chunk-3NHH7VPI.js → chunk-4SFBDK4E.js} +4 -4
  18. package/dist/{chunk-3NHH7VPI.js.map → chunk-4SFBDK4E.js.map} +1 -1
  19. package/dist/{chunk-B7ZLPQSO.js → chunk-4XXAIWQ4.js} +3 -3
  20. package/dist/{chunk-B7ZLPQSO.js.map → chunk-4XXAIWQ4.js.map} +1 -1
  21. package/dist/{chunk-D2V2HKLX.js → chunk-5ETVWWA5.js} +3 -3
  22. package/dist/{chunk-D2V2HKLX.js.map → chunk-5ETVWWA5.js.map} +1 -1
  23. package/dist/{chunk-U4H3XHSI.js → chunk-5GV4LDX7.js} +4 -4
  24. package/dist/{chunk-U4H3XHSI.js.map → chunk-5GV4LDX7.js.map} +1 -1
  25. package/dist/{chunk-BFBGESUI.js → chunk-5MJQ5XSR.js} +4 -4
  26. package/dist/{chunk-BFBGESUI.js.map → chunk-5MJQ5XSR.js.map} +1 -1
  27. package/dist/{chunk-GKMR5SVC.js → chunk-5QDKJMUA.js} +3 -3
  28. package/dist/{chunk-GKMR5SVC.js.map → chunk-5QDKJMUA.js.map} +1 -1
  29. package/dist/{chunk-3NFQXZHO.js → chunk-5T7EKOJ5.js} +3 -3
  30. package/dist/{chunk-3NFQXZHO.js.map → chunk-5T7EKOJ5.js.map} +1 -1
  31. package/dist/{chunk-WBE6VQOO.js → chunk-5W3T767A.js} +3 -3
  32. package/dist/{chunk-WBE6VQOO.js.map → chunk-5W3T767A.js.map} +1 -1
  33. package/dist/{chunk-F5X2BBGU.js → chunk-5YUUE5JJ.js} +3 -3
  34. package/dist/{chunk-F5X2BBGU.js.map → chunk-5YUUE5JJ.js.map} +1 -1
  35. package/dist/{chunk-IQKKPOI7.js → chunk-627ZZ6HO.js} +4 -4
  36. package/dist/{chunk-IQKKPOI7.js.map → chunk-627ZZ6HO.js.map} +1 -1
  37. package/dist/{chunk-WCMRVCIM.js → chunk-6G5QK3SU.js} +3 -3
  38. package/dist/{chunk-WCMRVCIM.js.map → chunk-6G5QK3SU.js.map} +1 -1
  39. package/dist/{chunk-SMVH56FQ.js → chunk-6QVXMYKH.js} +3 -3
  40. package/dist/{chunk-SMVH56FQ.js.map → chunk-6QVXMYKH.js.map} +1 -1
  41. package/dist/{chunk-NWVYQYKK.js → chunk-6VEQLD2P.js} +3 -3
  42. package/dist/{chunk-NWVYQYKK.js.map → chunk-6VEQLD2P.js.map} +1 -1
  43. package/dist/{chunk-S6ORCWM2.js → chunk-73DDLKBG.js} +3 -3
  44. package/dist/{chunk-S6ORCWM2.js.map → chunk-73DDLKBG.js.map} +1 -1
  45. package/dist/{chunk-E27SQ54A.js → chunk-7AR5QRRX.js} +3 -3
  46. package/dist/{chunk-E27SQ54A.js.map → chunk-7AR5QRRX.js.map} +1 -1
  47. package/dist/{chunk-3MJNJKAF.js → chunk-7IKX4AFY.js} +4 -4
  48. package/dist/{chunk-3MJNJKAF.js.map → chunk-7IKX4AFY.js.map} +1 -1
  49. package/dist/{chunk-A7YNTSVU.js → chunk-7PX3WBR3.js} +3 -3
  50. package/dist/{chunk-A7YNTSVU.js.map → chunk-7PX3WBR3.js.map} +1 -1
  51. package/dist/{chunk-LR56MGWT.js → chunk-7QEFKWUR.js} +7 -7
  52. package/dist/{chunk-LR56MGWT.js.map → chunk-7QEFKWUR.js.map} +1 -1
  53. package/dist/{chunk-JRVUEOKT.js → chunk-7TX5X4EP.js} +3 -3
  54. package/dist/{chunk-JRVUEOKT.js.map → chunk-7TX5X4EP.js.map} +1 -1
  55. package/dist/{chunk-BQMQULAC.js → chunk-7XJQYAGY.js} +4 -4
  56. package/dist/{chunk-BQMQULAC.js.map → chunk-7XJQYAGY.js.map} +1 -1
  57. package/dist/{chunk-KA7747GR.js → chunk-7Y325TBV.js} +3 -3
  58. package/dist/{chunk-KA7747GR.js.map → chunk-7Y325TBV.js.map} +1 -1
  59. package/dist/{chunk-6KMRMXR6.js → chunk-7YZ7HNXX.js} +3 -3
  60. package/dist/{chunk-6KMRMXR6.js.map → chunk-7YZ7HNXX.js.map} +1 -1
  61. package/dist/{chunk-YACIRNVP.js → chunk-AD4RW2JV.js} +3 -3
  62. package/dist/{chunk-YACIRNVP.js.map → chunk-AD4RW2JV.js.map} +1 -1
  63. package/dist/{chunk-YMYXWHDU.js → chunk-ADX6C3V7.js} +3 -3
  64. package/dist/{chunk-YMYXWHDU.js.map → chunk-ADX6C3V7.js.map} +1 -1
  65. package/dist/{chunk-WVFQKBDB.js → chunk-AJUOTABG.js} +3 -3
  66. package/dist/{chunk-WVFQKBDB.js.map → chunk-AJUOTABG.js.map} +1 -1
  67. package/dist/{chunk-G5TWK7L3.js → chunk-AP4ZM3DV.js} +3 -3
  68. package/dist/{chunk-G5TWK7L3.js.map → chunk-AP4ZM3DV.js.map} +1 -1
  69. package/dist/{chunk-2X35C55E.js → chunk-ARJAIH7Q.js} +3 -3
  70. package/dist/{chunk-2X35C55E.js.map → chunk-ARJAIH7Q.js.map} +1 -1
  71. package/dist/{chunk-YCZ6M6EF.js → chunk-BBKDABQK.js} +3 -3
  72. package/dist/{chunk-YCZ6M6EF.js.map → chunk-BBKDABQK.js.map} +1 -1
  73. package/dist/{chunk-GPW57XOW.js → chunk-BSTUCHL4.js} +4 -4
  74. package/dist/{chunk-GPW57XOW.js.map → chunk-BSTUCHL4.js.map} +1 -1
  75. package/dist/{chunk-ARYBNQNS.js → chunk-BUCXPZYE.js} +4 -4
  76. package/dist/{chunk-ARYBNQNS.js.map → chunk-BUCXPZYE.js.map} +1 -1
  77. package/dist/{chunk-ESLSPRYA.js → chunk-C2MAX4YK.js} +3 -3
  78. package/dist/{chunk-ESLSPRYA.js.map → chunk-C2MAX4YK.js.map} +1 -1
  79. package/dist/{chunk-2FJJOHHH.js → chunk-C34UNXMN.js} +3 -3
  80. package/dist/{chunk-2FJJOHHH.js.map → chunk-C34UNXMN.js.map} +1 -1
  81. package/dist/{chunk-AEHYYTFW.js → chunk-CV77MF4G.js} +3 -3
  82. package/dist/{chunk-AEHYYTFW.js.map → chunk-CV77MF4G.js.map} +1 -1
  83. package/dist/{chunk-MQ2446N7.js → chunk-DGOW65KM.js} +3 -3
  84. package/dist/{chunk-MQ2446N7.js.map → chunk-DGOW65KM.js.map} +1 -1
  85. package/dist/{chunk-NULX3RRN.js → chunk-DJHDCDU6.js} +4 -4
  86. package/dist/{chunk-NULX3RRN.js.map → chunk-DJHDCDU6.js.map} +1 -1
  87. package/dist/{chunk-USPITOG4.js → chunk-DQGBTZRX.js} +4 -4
  88. package/dist/{chunk-USPITOG4.js.map → chunk-DQGBTZRX.js.map} +1 -1
  89. package/dist/{chunk-2IFYXJ3H.js → chunk-DRIEZH7R.js} +3 -3
  90. package/dist/{chunk-2IFYXJ3H.js.map → chunk-DRIEZH7R.js.map} +1 -1
  91. package/dist/{chunk-VWW3DJKI.js → chunk-E6SAO2CY.js} +3 -3
  92. package/dist/{chunk-VWW3DJKI.js.map → chunk-E6SAO2CY.js.map} +1 -1
  93. package/dist/{chunk-5ACHKT35.js → chunk-EDSIOUUR.js} +4 -4
  94. package/dist/{chunk-5ACHKT35.js.map → chunk-EDSIOUUR.js.map} +1 -1
  95. package/dist/{chunk-G2CMEHW6.js → chunk-ELRIFGMN.js} +4 -4
  96. package/dist/{chunk-G2CMEHW6.js.map → chunk-ELRIFGMN.js.map} +1 -1
  97. package/dist/{chunk-IMUBWKZC.js → chunk-EO4NGM5W.js} +4 -4
  98. package/dist/{chunk-IMUBWKZC.js.map → chunk-EO4NGM5W.js.map} +1 -1
  99. package/dist/{chunk-AFCSDND5.js → chunk-EQ4YAADN.js} +3 -3
  100. package/dist/{chunk-AFCSDND5.js.map → chunk-EQ4YAADN.js.map} +1 -1
  101. package/dist/{chunk-AP3T3KMY.js → chunk-EZYXD2YI.js} +4 -4
  102. package/dist/{chunk-AP3T3KMY.js.map → chunk-EZYXD2YI.js.map} +1 -1
  103. package/dist/{chunk-HJ4E6YPW.js → chunk-F3ETIDS7.js} +4 -4
  104. package/dist/{chunk-HJ4E6YPW.js.map → chunk-F3ETIDS7.js.map} +1 -1
  105. package/dist/{chunk-LNY2EXOV.js → chunk-F3WDMYZ4.js} +3 -3
  106. package/dist/{chunk-LNY2EXOV.js.map → chunk-F3WDMYZ4.js.map} +1 -1
  107. package/dist/{chunk-FPCRGFNY.js → chunk-FRKB4Z2P.js} +3 -3
  108. package/dist/{chunk-FPCRGFNY.js.map → chunk-FRKB4Z2P.js.map} +1 -1
  109. package/dist/{chunk-YGLD22TU.js → chunk-FVRSXJKS.js} +3 -3
  110. package/dist/{chunk-YGLD22TU.js.map → chunk-FVRSXJKS.js.map} +1 -1
  111. package/dist/{chunk-AR7K7Y4L.js → chunk-FXFVFSG5.js} +5 -5
  112. package/dist/{chunk-AR7K7Y4L.js.map → chunk-FXFVFSG5.js.map} +1 -1
  113. package/dist/{chunk-WQI2USN7.js → chunk-GDZECJFS.js} +3 -3
  114. package/dist/{chunk-WQI2USN7.js.map → chunk-GDZECJFS.js.map} +1 -1
  115. package/dist/{chunk-7CMOCWFX.js → chunk-GLHKHYJY.js} +8 -8
  116. package/dist/{chunk-7CMOCWFX.js.map → chunk-GLHKHYJY.js.map} +1 -1
  117. package/dist/{chunk-IA24GUNV.js → chunk-GRODCJS4.js} +8 -8
  118. package/dist/{chunk-IA24GUNV.js.map → chunk-GRODCJS4.js.map} +1 -1
  119. package/dist/{chunk-JDG5A44W.js → chunk-GVNG5ME6.js} +22 -11
  120. package/dist/chunk-GVNG5ME6.js.map +1 -0
  121. package/dist/{chunk-5J5OL4IV.js → chunk-GWSM2XNV.js} +3 -3
  122. package/dist/{chunk-5J5OL4IV.js.map → chunk-GWSM2XNV.js.map} +1 -1
  123. package/dist/{chunk-2NY6DDLO.js → chunk-H32A6UPL.js} +3 -3
  124. package/dist/{chunk-2NY6DDLO.js.map → chunk-H32A6UPL.js.map} +1 -1
  125. package/dist/{chunk-HV2ZZXFN.js → chunk-HHWUROMA.js} +6 -6
  126. package/dist/{chunk-HV2ZZXFN.js.map → chunk-HHWUROMA.js.map} +1 -1
  127. package/dist/{chunk-CNRV2IGH.js → chunk-HM6TEHA6.js} +3 -3
  128. package/dist/{chunk-CNRV2IGH.js.map → chunk-HM6TEHA6.js.map} +1 -1
  129. package/dist/{chunk-6ABGMOE2.js → chunk-HNQX6ZG7.js} +4 -4
  130. package/dist/{chunk-6ABGMOE2.js.map → chunk-HNQX6ZG7.js.map} +1 -1
  131. package/dist/{chunk-HAEZLC7V.js → chunk-I5RDX6O3.js} +3 -3
  132. package/dist/{chunk-HAEZLC7V.js.map → chunk-I5RDX6O3.js.map} +1 -1
  133. package/dist/{chunk-B2OCNHUW.js → chunk-IKLFWGFS.js} +70 -52
  134. package/dist/chunk-IKLFWGFS.js.map +1 -0
  135. package/dist/{chunk-DL7D5F7B.js → chunk-IPCT4YZT.js} +3 -3
  136. package/dist/{chunk-DL7D5F7B.js.map → chunk-IPCT4YZT.js.map} +1 -1
  137. package/dist/{chunk-BIUVOZQG.js → chunk-IPDAFW4F.js} +3 -3
  138. package/dist/{chunk-BIUVOZQG.js.map → chunk-IPDAFW4F.js.map} +1 -1
  139. package/dist/{chunk-G2MAGZHQ.js → chunk-IXZBH33I.js} +3 -3
  140. package/dist/{chunk-G2MAGZHQ.js.map → chunk-IXZBH33I.js.map} +1 -1
  141. package/dist/{chunk-ZHUW6UYD.js → chunk-JDETM3FL.js} +3 -3
  142. package/dist/{chunk-ZHUW6UYD.js.map → chunk-JDETM3FL.js.map} +1 -1
  143. package/dist/{chunk-HZ47LQFJ.js → chunk-JE46MFMN.js} +6 -6
  144. package/dist/{chunk-HZ47LQFJ.js.map → chunk-JE46MFMN.js.map} +1 -1
  145. package/dist/{chunk-3JCV72FO.js → chunk-JFV7CNBP.js} +4 -4
  146. package/dist/{chunk-3JCV72FO.js.map → chunk-JFV7CNBP.js.map} +1 -1
  147. package/dist/{chunk-7RTHGI6E.js → chunk-JPRHMMY6.js} +3 -3
  148. package/dist/{chunk-7RTHGI6E.js.map → chunk-JPRHMMY6.js.map} +1 -1
  149. package/dist/{chunk-G2V7D7VC.js → chunk-JUSPLVWO.js} +5 -5
  150. package/dist/{chunk-G2V7D7VC.js.map → chunk-JUSPLVWO.js.map} +1 -1
  151. package/dist/{chunk-FRDYXDAE.js → chunk-JUZ4JQWH.js} +3 -3
  152. package/dist/{chunk-FRDYXDAE.js.map → chunk-JUZ4JQWH.js.map} +1 -1
  153. package/dist/{chunk-6SHOL6WR.js → chunk-JVTB3NTP.js} +3 -3
  154. package/dist/{chunk-6SHOL6WR.js.map → chunk-JVTB3NTP.js.map} +1 -1
  155. package/dist/{chunk-XETKCF73.js → chunk-JXEIRIU4.js} +3 -3
  156. package/dist/{chunk-XETKCF73.js.map → chunk-JXEIRIU4.js.map} +1 -1
  157. package/dist/{chunk-XKO6G5H2.js → chunk-JYYB6F5O.js} +3 -3
  158. package/dist/{chunk-XKO6G5H2.js.map → chunk-JYYB6F5O.js.map} +1 -1
  159. package/dist/{chunk-V7WEN4SD.js → chunk-JZA45LEV.js} +3 -3
  160. package/dist/{chunk-V7WEN4SD.js.map → chunk-JZA45LEV.js.map} +1 -1
  161. package/dist/{chunk-FCSYPOHF.js → chunk-K44K3EHW.js} +3 -3
  162. package/dist/{chunk-FCSYPOHF.js.map → chunk-K44K3EHW.js.map} +1 -1
  163. package/dist/{chunk-ZMUUEXVD.js → chunk-K4UCALQQ.js} +3 -3
  164. package/dist/{chunk-ZMUUEXVD.js.map → chunk-K4UCALQQ.js.map} +1 -1
  165. package/dist/{chunk-KYURFRCH.js → chunk-KBU4KJKC.js} +7 -7
  166. package/dist/{chunk-KYURFRCH.js.map → chunk-KBU4KJKC.js.map} +1 -1
  167. package/dist/{chunk-JRWQHBJC.js → chunk-KDNTSZF5.js} +4 -4
  168. package/dist/{chunk-JRWQHBJC.js.map → chunk-KDNTSZF5.js.map} +1 -1
  169. package/dist/{chunk-WZ2J4ALB.js → chunk-KHCHATTD.js} +5 -5
  170. package/dist/{chunk-WZ2J4ALB.js.map → chunk-KHCHATTD.js.map} +1 -1
  171. package/dist/{chunk-57KTYE5H.js → chunk-KHJIUHHM.js} +3 -3
  172. package/dist/{chunk-57KTYE5H.js.map → chunk-KHJIUHHM.js.map} +1 -1
  173. package/dist/{chunk-H7JHFBFD.js → chunk-KLFYTLF3.js} +4 -4
  174. package/dist/{chunk-H7JHFBFD.js.map → chunk-KLFYTLF3.js.map} +1 -1
  175. package/dist/{chunk-W3QUVCRK.js → chunk-KXJ3SEW7.js} +3 -3
  176. package/dist/{chunk-W3QUVCRK.js.map → chunk-KXJ3SEW7.js.map} +1 -1
  177. package/dist/{chunk-X5XP5QVO.js → chunk-L4OQ6BJ5.js} +6 -6
  178. package/dist/{chunk-X5XP5QVO.js.map → chunk-L4OQ6BJ5.js.map} +1 -1
  179. package/dist/{chunk-MAM6VUKD.js → chunk-LCBB3N5H.js} +3 -3
  180. package/dist/{chunk-MAM6VUKD.js.map → chunk-LCBB3N5H.js.map} +1 -1
  181. package/dist/{chunk-FLERVSKG.js → chunk-LDK6ADKM.js} +6 -6
  182. package/dist/{chunk-FLERVSKG.js.map → chunk-LDK6ADKM.js.map} +1 -1
  183. package/dist/{chunk-K4MYVFWQ.js → chunk-LP6JYJQN.js} +4 -4
  184. package/dist/{chunk-K4MYVFWQ.js.map → chunk-LP6JYJQN.js.map} +1 -1
  185. package/dist/{chunk-7VGF6ZVE.js → chunk-LRE3LJMW.js} +5 -5
  186. package/dist/{chunk-7VGF6ZVE.js.map → chunk-LRE3LJMW.js.map} +1 -1
  187. package/dist/{chunk-LQVQ7SHG.js → chunk-LSRKDZW4.js} +4 -4
  188. package/dist/{chunk-LQVQ7SHG.js.map → chunk-LSRKDZW4.js.map} +1 -1
  189. package/dist/{chunk-WBERMEN7.js → chunk-MGIGDALC.js} +3 -3
  190. package/dist/{chunk-WBERMEN7.js.map → chunk-MGIGDALC.js.map} +1 -1
  191. package/dist/{chunk-IRFAIJLV.js → chunk-MNYU5MHO.js} +7 -7
  192. package/dist/{chunk-IRFAIJLV.js.map → chunk-MNYU5MHO.js.map} +1 -1
  193. package/dist/{chunk-6GWO7JNP.js → chunk-MXBDOYQL.js} +4 -4
  194. package/dist/{chunk-6GWO7JNP.js.map → chunk-MXBDOYQL.js.map} +1 -1
  195. package/dist/{chunk-37KLBMFQ.js → chunk-N2DAVD4Y.js} +3 -3
  196. package/dist/{chunk-37KLBMFQ.js.map → chunk-N2DAVD4Y.js.map} +1 -1
  197. package/dist/{chunk-EC5YEK3C.js → chunk-N5YGAESZ.js} +5 -5
  198. package/dist/{chunk-EC5YEK3C.js.map → chunk-N5YGAESZ.js.map} +1 -1
  199. package/dist/{chunk-DSCLJ3GK.js → chunk-N7VMQWM3.js} +15 -10
  200. package/dist/chunk-N7VMQWM3.js.map +1 -0
  201. package/dist/{chunk-5KTMPLDK.js → chunk-NAI3TX52.js} +3 -3
  202. package/dist/{chunk-5KTMPLDK.js.map → chunk-NAI3TX52.js.map} +1 -1
  203. package/dist/{chunk-QHKOBGLW.js → chunk-NGX3ITG4.js} +3 -3
  204. package/dist/{chunk-QHKOBGLW.js.map → chunk-NGX3ITG4.js.map} +1 -1
  205. package/dist/{chunk-5SUD32RK.js → chunk-NHUUSXBL.js} +3 -3
  206. package/dist/{chunk-5SUD32RK.js.map → chunk-NHUUSXBL.js.map} +1 -1
  207. package/dist/{chunk-IOWHM7ZY.js → chunk-NIRTZLZL.js} +4 -4
  208. package/dist/{chunk-IOWHM7ZY.js.map → chunk-NIRTZLZL.js.map} +1 -1
  209. package/dist/{chunk-5E44I7PB.js → chunk-NLPVF34P.js} +4 -4
  210. package/dist/{chunk-5E44I7PB.js.map → chunk-NLPVF34P.js.map} +1 -1
  211. package/dist/{chunk-ZPAWUKJI.js → chunk-NNWMBVCB.js} +4 -4
  212. package/dist/{chunk-ZPAWUKJI.js.map → chunk-NNWMBVCB.js.map} +1 -1
  213. package/dist/{chunk-H4ANCFZG.js → chunk-NUA54ABI.js} +4 -4
  214. package/dist/{chunk-H4ANCFZG.js.map → chunk-NUA54ABI.js.map} +1 -1
  215. package/dist/{chunk-ZPCELVWJ.js → chunk-NY2WZ4P2.js} +4 -4
  216. package/dist/{chunk-ZPCELVWJ.js.map → chunk-NY2WZ4P2.js.map} +1 -1
  217. package/dist/{chunk-BECPEVUL.js → chunk-O6LFU3KB.js} +3 -3
  218. package/dist/{chunk-BECPEVUL.js.map → chunk-O6LFU3KB.js.map} +1 -1
  219. package/dist/{chunk-HXHB2CK5.js → chunk-OAES72MK.js} +3 -3
  220. package/dist/{chunk-HXHB2CK5.js.map → chunk-OAES72MK.js.map} +1 -1
  221. package/dist/{chunk-NGR4HFVA.js → chunk-OCH7GGZF.js} +3 -3
  222. package/dist/{chunk-NGR4HFVA.js.map → chunk-OCH7GGZF.js.map} +1 -1
  223. package/dist/{chunk-HA5YVDHW.js → chunk-ONN5XVYC.js} +3 -3
  224. package/dist/{chunk-HA5YVDHW.js.map → chunk-ONN5XVYC.js.map} +1 -1
  225. package/dist/{chunk-OG3M4CMJ.js → chunk-OWZ3MZ5C.js} +3 -3
  226. package/dist/{chunk-OG3M4CMJ.js.map → chunk-OWZ3MZ5C.js.map} +1 -1
  227. package/dist/{chunk-MK6ID2HI.js → chunk-OXO6SKJO.js} +3 -3
  228. package/dist/{chunk-MK6ID2HI.js.map → chunk-OXO6SKJO.js.map} +1 -1
  229. package/dist/{chunk-5K2SOCOX.js → chunk-P4WMDGAQ.js} +4 -4
  230. package/dist/{chunk-5K2SOCOX.js.map → chunk-P4WMDGAQ.js.map} +1 -1
  231. package/dist/{chunk-K43MPWTO.js → chunk-PBZI5XNV.js} +3 -3
  232. package/dist/{chunk-K43MPWTO.js.map → chunk-PBZI5XNV.js.map} +1 -1
  233. package/dist/{chunk-HI3T55XK.js → chunk-PEX7FCZC.js} +3 -3
  234. package/dist/{chunk-HI3T55XK.js.map → chunk-PEX7FCZC.js.map} +1 -1
  235. package/dist/{chunk-WMG2MMJF.js → chunk-PI4WGIPG.js} +3 -3
  236. package/dist/{chunk-WMG2MMJF.js.map → chunk-PI4WGIPG.js.map} +1 -1
  237. package/dist/{chunk-V7O4X3AE.js → chunk-PTXC4KPQ.js} +4 -4
  238. package/dist/{chunk-V7O4X3AE.js.map → chunk-PTXC4KPQ.js.map} +1 -1
  239. package/dist/{chunk-34WNJNPL.js → chunk-PVIIIQJI.js} +6 -6
  240. package/dist/{chunk-34WNJNPL.js.map → chunk-PVIIIQJI.js.map} +1 -1
  241. package/dist/{chunk-A4O3USMA.js → chunk-PXR6CZIL.js} +4 -4
  242. package/dist/{chunk-A4O3USMA.js.map → chunk-PXR6CZIL.js.map} +1 -1
  243. package/dist/{chunk-KDJCZXLB.js → chunk-PZSKZFVO.js} +3 -3
  244. package/dist/{chunk-KDJCZXLB.js.map → chunk-PZSKZFVO.js.map} +1 -1
  245. package/dist/{chunk-DNAGXK2C.js → chunk-Q3JCNSPU.js} +4 -4
  246. package/dist/{chunk-DNAGXK2C.js.map → chunk-Q3JCNSPU.js.map} +1 -1
  247. package/dist/{chunk-JUTPDS4E.js → chunk-QD2ZS5DU.js} +4 -4
  248. package/dist/{chunk-JUTPDS4E.js.map → chunk-QD2ZS5DU.js.map} +1 -1
  249. package/dist/{chunk-DI3AISAZ.js → chunk-QJOWG2D4.js} +5 -5
  250. package/dist/{chunk-DI3AISAZ.js.map → chunk-QJOWG2D4.js.map} +1 -1
  251. package/dist/{chunk-6F5NWXZF.js → chunk-QLYH3GCV.js} +4 -4
  252. package/dist/{chunk-6F5NWXZF.js.map → chunk-QLYH3GCV.js.map} +1 -1
  253. package/dist/{chunk-F4EX3622.js → chunk-QO6TOE45.js} +3 -3
  254. package/dist/{chunk-F4EX3622.js.map → chunk-QO6TOE45.js.map} +1 -1
  255. package/dist/{chunk-46SUPGQV.js → chunk-QWWA4FZP.js} +3 -3
  256. package/dist/{chunk-46SUPGQV.js.map → chunk-QWWA4FZP.js.map} +1 -1
  257. package/dist/{chunk-VTDSGJ4R.js → chunk-QXET2TML.js} +4 -4
  258. package/dist/{chunk-VTDSGJ4R.js.map → chunk-QXET2TML.js.map} +1 -1
  259. package/dist/{chunk-2VHARFMD.js → chunk-QZ7SGO7L.js} +3 -3
  260. package/dist/{chunk-2VHARFMD.js.map → chunk-QZ7SGO7L.js.map} +1 -1
  261. package/dist/{chunk-XORDGKZI.js → chunk-R42LSLJL.js} +6 -6
  262. package/dist/{chunk-XORDGKZI.js.map → chunk-R42LSLJL.js.map} +1 -1
  263. package/dist/{chunk-EVZ2GZU4.js → chunk-RMJVCJ6U.js} +3 -3
  264. package/dist/{chunk-EVZ2GZU4.js.map → chunk-RMJVCJ6U.js.map} +1 -1
  265. package/dist/{chunk-UYPYAOET.js → chunk-ROPW65RD.js} +3 -3
  266. package/dist/{chunk-UYPYAOET.js.map → chunk-ROPW65RD.js.map} +1 -1
  267. package/dist/{chunk-M6VBDPNQ.js → chunk-RQBYBBMP.js} +3 -3
  268. package/dist/{chunk-M6VBDPNQ.js.map → chunk-RQBYBBMP.js.map} +1 -1
  269. package/dist/chunk-RVAYDRMA.js +31 -0
  270. package/dist/chunk-RVAYDRMA.js.map +1 -0
  271. package/dist/{chunk-ARNVOHVW.js → chunk-S4P7JIQ2.js} +3 -3
  272. package/dist/{chunk-ARNVOHVW.js.map → chunk-S4P7JIQ2.js.map} +1 -1
  273. package/dist/{chunk-AKRVZ2YW.js → chunk-S6BREP2G.js} +4 -4
  274. package/dist/{chunk-AKRVZ2YW.js.map → chunk-S6BREP2G.js.map} +1 -1
  275. package/dist/{chunk-Y5GO2F6P.js → chunk-SA3IQI3Y.js} +3 -3
  276. package/dist/{chunk-Y5GO2F6P.js.map → chunk-SA3IQI3Y.js.map} +1 -1
  277. package/dist/{chunk-56TC4CPT.js → chunk-SKI25Q7O.js} +6 -6
  278. package/dist/{chunk-56TC4CPT.js.map → chunk-SKI25Q7O.js.map} +1 -1
  279. package/dist/{chunk-MLSIZ6JU.js → chunk-SSKSWSVO.js} +5 -5
  280. package/dist/{chunk-MLSIZ6JU.js.map → chunk-SSKSWSVO.js.map} +1 -1
  281. package/dist/{chunk-VV6QE3M2.js → chunk-STADVFL2.js} +5 -5
  282. package/dist/{chunk-VV6QE3M2.js.map → chunk-STADVFL2.js.map} +1 -1
  283. package/dist/{chunk-UA3OQAHJ.js → chunk-SX63UD5X.js} +3 -3
  284. package/dist/{chunk-UA3OQAHJ.js.map → chunk-SX63UD5X.js.map} +1 -1
  285. package/dist/{chunk-YZY35OHQ.js → chunk-SXSR2VRG.js} +4 -4
  286. package/dist/{chunk-YZY35OHQ.js.map → chunk-SXSR2VRG.js.map} +1 -1
  287. package/dist/{chunk-AR3OXNPL.js → chunk-TDANAN5A.js} +3 -3
  288. package/dist/{chunk-AR3OXNPL.js.map → chunk-TDANAN5A.js.map} +1 -1
  289. package/dist/{chunk-7ZJ32KRQ.js → chunk-TEVGCTUN.js} +3 -3
  290. package/dist/{chunk-7ZJ32KRQ.js.map → chunk-TEVGCTUN.js.map} +1 -1
  291. package/dist/{chunk-GAMOVEZD.js → chunk-TIPKU427.js} +3 -3
  292. package/dist/{chunk-GAMOVEZD.js.map → chunk-TIPKU427.js.map} +1 -1
  293. package/dist/{chunk-2Q4I4VDB.js → chunk-TK5WS675.js} +3 -3
  294. package/dist/{chunk-2Q4I4VDB.js.map → chunk-TK5WS675.js.map} +1 -1
  295. package/dist/{chunk-EDSDAX56.js → chunk-TNSMTINE.js} +4 -4
  296. package/dist/{chunk-EDSDAX56.js.map → chunk-TNSMTINE.js.map} +1 -1
  297. package/dist/{chunk-5TABQJDW.js → chunk-TRTVYFOF.js} +3 -3
  298. package/dist/{chunk-5TABQJDW.js.map → chunk-TRTVYFOF.js.map} +1 -1
  299. package/dist/{chunk-QBLU7J34.js → chunk-TSE3PKWQ.js} +3 -3
  300. package/dist/{chunk-QBLU7J34.js.map → chunk-TSE3PKWQ.js.map} +1 -1
  301. package/dist/{chunk-3BBOSSDG.js → chunk-U7TPJMGY.js} +4 -4
  302. package/dist/{chunk-3BBOSSDG.js.map → chunk-U7TPJMGY.js.map} +1 -1
  303. package/dist/{chunk-PGRMKSVA.js → chunk-UC5J6GWG.js} +4 -4
  304. package/dist/{chunk-PGRMKSVA.js.map → chunk-UC5J6GWG.js.map} +1 -1
  305. package/dist/{chunk-HP7LEQJR.js → chunk-UNHPLKMR.js} +3 -3
  306. package/dist/{chunk-HP7LEQJR.js.map → chunk-UNHPLKMR.js.map} +1 -1
  307. package/dist/{chunk-I7ZLEC7Y.js → chunk-UZEJ3ZVR.js} +3 -3
  308. package/dist/{chunk-I7ZLEC7Y.js.map → chunk-UZEJ3ZVR.js.map} +1 -1
  309. package/dist/{chunk-J62NPPDO.js → chunk-UZZCEQH4.js} +4 -4
  310. package/dist/{chunk-J62NPPDO.js.map → chunk-UZZCEQH4.js.map} +1 -1
  311. package/dist/{chunk-AEE5GDNA.js → chunk-V4NSLSCA.js} +4 -4
  312. package/dist/{chunk-AEE5GDNA.js.map → chunk-V4NSLSCA.js.map} +1 -1
  313. package/dist/{chunk-IZC5YFGO.js → chunk-V57DERRV.js} +14 -7
  314. package/dist/chunk-V57DERRV.js.map +1 -0
  315. package/dist/{chunk-PM344VOQ.js → chunk-VHJ6ALIE.js} +4 -4
  316. package/dist/{chunk-PM344VOQ.js.map → chunk-VHJ6ALIE.js.map} +1 -1
  317. package/dist/{chunk-N3I6GA4I.js → chunk-WG34IXUV.js} +3 -3
  318. package/dist/{chunk-N3I6GA4I.js.map → chunk-WG34IXUV.js.map} +1 -1
  319. package/dist/{chunk-45YJLE4R.js → chunk-WGKOYZRI.js} +3 -3
  320. package/dist/{chunk-45YJLE4R.js.map → chunk-WGKOYZRI.js.map} +1 -1
  321. package/dist/{chunk-6DN2UAIR.js → chunk-WGSVSZ7V.js} +3 -3
  322. package/dist/{chunk-6DN2UAIR.js.map → chunk-WGSVSZ7V.js.map} +1 -1
  323. package/dist/{chunk-X4YUWX7H.js → chunk-WK324C6D.js} +4 -4
  324. package/dist/{chunk-X4YUWX7H.js.map → chunk-WK324C6D.js.map} +1 -1
  325. package/dist/{chunk-N2WITPE2.js → chunk-WOP5OWLG.js} +3 -3
  326. package/dist/{chunk-N2WITPE2.js.map → chunk-WOP5OWLG.js.map} +1 -1
  327. package/dist/{chunk-MAM5PTRV.js → chunk-WSDWJX4Y.js} +4 -4
  328. package/dist/{chunk-MAM5PTRV.js.map → chunk-WSDWJX4Y.js.map} +1 -1
  329. package/dist/{chunk-2XJWE2XR.js → chunk-WUS45IZW.js} +4 -4
  330. package/dist/{chunk-2XJWE2XR.js.map → chunk-WUS45IZW.js.map} +1 -1
  331. package/dist/{chunk-B3BDIM4H.js → chunk-WVOZYDH3.js} +3 -3
  332. package/dist/{chunk-B3BDIM4H.js.map → chunk-WVOZYDH3.js.map} +1 -1
  333. package/dist/{chunk-HVFACGNK.js → chunk-WWK7UIKK.js} +3 -3
  334. package/dist/{chunk-HVFACGNK.js.map → chunk-WWK7UIKK.js.map} +1 -1
  335. package/dist/{chunk-NCLOPI6U.js → chunk-X2EMALTZ.js} +3 -3
  336. package/dist/{chunk-NCLOPI6U.js.map → chunk-X2EMALTZ.js.map} +1 -1
  337. package/dist/{chunk-PK5O62XD.js → chunk-X4CJFD6D.js} +3 -3
  338. package/dist/{chunk-PK5O62XD.js.map → chunk-X4CJFD6D.js.map} +1 -1
  339. package/dist/{chunk-JWXK4TMX.js → chunk-XEQGATVF.js} +3 -3
  340. package/dist/{chunk-JWXK4TMX.js.map → chunk-XEQGATVF.js.map} +1 -1
  341. package/dist/{chunk-B6KQKQ4S.js → chunk-XMUD3LG7.js} +3 -3
  342. package/dist/{chunk-B6KQKQ4S.js.map → chunk-XMUD3LG7.js.map} +1 -1
  343. package/dist/{chunk-5ZEYTBTU.js → chunk-XWBVIBN4.js} +3 -3
  344. package/dist/{chunk-5ZEYTBTU.js.map → chunk-XWBVIBN4.js.map} +1 -1
  345. package/dist/{chunk-7I6KK6QE.js → chunk-XXWCMY2G.js} +3 -3
  346. package/dist/{chunk-7I6KK6QE.js.map → chunk-XXWCMY2G.js.map} +1 -1
  347. package/dist/{chunk-LFN7UHDT.js → chunk-Y4FEW7SR.js} +3 -3
  348. package/dist/{chunk-LFN7UHDT.js.map → chunk-Y4FEW7SR.js.map} +1 -1
  349. package/dist/{chunk-PFVT27B5.js → chunk-YC5VVIZO.js} +3 -3
  350. package/dist/{chunk-PFVT27B5.js.map → chunk-YC5VVIZO.js.map} +1 -1
  351. package/dist/{chunk-OR3NPCY2.js → chunk-YMCKML6D.js} +7 -7
  352. package/dist/{chunk-OR3NPCY2.js.map → chunk-YMCKML6D.js.map} +1 -1
  353. package/dist/{chunk-TGLALXPU.js → chunk-YMQDTTO7.js} +6 -6
  354. package/dist/{chunk-TGLALXPU.js.map → chunk-YMQDTTO7.js.map} +1 -1
  355. package/dist/{chunk-ZARZYMBM.js → chunk-YNTS4GRT.js} +3 -3
  356. package/dist/{chunk-ZARZYMBM.js.map → chunk-YNTS4GRT.js.map} +1 -1
  357. package/dist/{chunk-6SZRWNPT.js → chunk-ZOHLZ4YL.js} +3 -3
  358. package/dist/{chunk-6SZRWNPT.js.map → chunk-ZOHLZ4YL.js.map} +1 -1
  359. package/dist/{chunk-VUHJTTPV.js → chunk-ZVSMLMMS.js} +3 -3
  360. package/dist/{chunk-VUHJTTPV.js.map → chunk-ZVSMLMMS.js.map} +1 -1
  361. package/dist/{chunk-VKDN66VL.js → chunk-ZXWT4KWJ.js} +3 -3
  362. package/dist/{chunk-VKDN66VL.js.map → chunk-ZXWT4KWJ.js.map} +1 -1
  363. package/dist/components/advanced/AssetManager/index.js +2 -2
  364. package/dist/components/advanced/Calendar/index.js +7 -7
  365. package/dist/components/advanced/Command/index.js +3 -3
  366. package/dist/components/advanced/DragAndDrop/index.js +2 -2
  367. package/dist/components/advanced/ErrorBoundary/index.js +2 -2
  368. package/dist/components/advanced/EventCalendar/index.js +7 -7
  369. package/dist/components/advanced/FileDropzone/index.js +2 -2
  370. package/dist/components/advanced/FilePreview/index.js +2 -2
  371. package/dist/components/advanced/FileUpload/index.js +2 -2
  372. package/dist/components/advanced/FilterBuilder/index.js +9 -9
  373. package/dist/components/advanced/MarkdownEditor/index.js +6 -6
  374. package/dist/components/advanced/ReportBuilder/index.js +7 -7
  375. package/dist/components/advanced/RichTextEditor/index.js +4 -4
  376. package/dist/components/advanced/Search/index.js +2 -2
  377. package/dist/components/advanced/SortableList/index.js +2 -2
  378. package/dist/components/advanced/VersionControl/index.js +2 -2
  379. package/dist/components/advanced/index.js +30 -30
  380. package/dist/components/data-display/Accordion/index.js +2 -2
  381. package/dist/components/data-display/AreaChart/index.js +3 -3
  382. package/dist/components/data-display/Banner/index.js +2 -2
  383. package/dist/components/data-display/BarChart/index.js +3 -3
  384. package/dist/components/data-display/BarList/index.js +2 -2
  385. package/dist/components/data-display/Callout/index.js +2 -2
  386. package/dist/components/data-display/Carousel/index.js +7 -7
  387. package/dist/components/data-display/CategoryBar/index.js +3 -3
  388. package/dist/components/data-display/Chart/index.js +2 -2
  389. package/dist/components/data-display/ChartCard/index.js +5 -5
  390. package/dist/components/data-display/ChartLegend/index.js +2 -2
  391. package/dist/components/data-display/ComboChart/index.js +3 -3
  392. package/dist/components/data-display/DashboardCard/index.js +3 -3
  393. package/dist/components/data-display/DataTable/FilterBuilder/index.js +9 -9
  394. package/dist/components/data-display/DataTable/index.js +16 -16
  395. package/dist/components/data-display/DeltaBar/index.js +3 -3
  396. package/dist/components/data-display/EmptyState/index.js +2 -2
  397. package/dist/components/data-display/FeatureItem/index.js +3 -3
  398. package/dist/components/data-display/Feed/index.js +2 -2
  399. package/dist/components/data-display/FunnelChart/index.js +3 -3
  400. package/dist/components/data-display/GaugeChart/index.js +2 -2
  401. package/dist/components/data-display/Heatmap/index.js +3 -3
  402. package/dist/components/data-display/HoverCard/index.js +2 -2
  403. package/dist/components/data-display/ImageGallery/index.js +9 -9
  404. package/dist/components/data-display/Item/index.js +3 -3
  405. package/dist/components/data-display/KPICard/index.js +8 -8
  406. package/dist/components/data-display/Lightbox/index.js +2 -2
  407. package/dist/components/data-display/LineChart/index.js +3 -3
  408. package/dist/components/data-display/List/index.js +6 -6
  409. package/dist/components/data-display/MarkerBar/index.js +3 -3
  410. package/dist/components/data-display/PieChart/index.js +3 -3
  411. package/dist/components/data-display/RadarChart/index.js +3 -3
  412. package/dist/components/data-display/RadialChart/index.js +3 -3
  413. package/dist/components/data-display/ScatterChart/index.js +3 -3
  414. package/dist/components/data-display/SingleStat/index.js +3 -3
  415. package/dist/components/data-display/Sparkline/index.js +2 -2
  416. package/dist/components/data-display/Table/index.js +2 -2
  417. package/dist/components/data-display/Timeline/index.js +2 -2
  418. package/dist/components/data-display/Tracker/index.js +3 -3
  419. package/dist/components/data-display/VirtualTable/index.js +5 -5
  420. package/dist/components/data-display/index.js +56 -56
  421. package/dist/components/feedback/Alert/index.js +2 -2
  422. package/dist/components/feedback/AlertDialog/index.js +7 -7
  423. package/dist/components/feedback/ConfirmModal/index.js +8 -8
  424. package/dist/components/feedback/Dialog/index.js +2 -2
  425. package/dist/components/feedback/ErrorPage/index.js +2 -2
  426. package/dist/components/feedback/FocusTrap/index.js +2 -2
  427. package/dist/components/feedback/Message/index.js +2 -2
  428. package/dist/components/feedback/Modal/index.js +2 -2
  429. package/dist/components/feedback/Notification/index.js +4 -4
  430. package/dist/components/feedback/Popover/index.js +2 -2
  431. package/dist/components/feedback/Tooltip/index.js +2 -2
  432. package/dist/components/feedback/UpdatesWidget/index.js +2 -2
  433. package/dist/components/feedback/index.js +18 -18
  434. package/dist/components/forms/Autocomplete/index.js +2 -2
  435. package/dist/components/forms/Checkbox/index.js +2 -2
  436. package/dist/components/forms/CheckboxGroup/index.js +3 -3
  437. package/dist/components/forms/ColorPicker/index.js +3 -3
  438. package/dist/components/forms/Combobox/index.js +2 -2
  439. package/dist/components/forms/DatePicker/index.js +10 -10
  440. package/dist/components/forms/DateRangePicker/index.js +10 -10
  441. package/dist/components/forms/EmailInput/index.js +3 -3
  442. package/dist/components/forms/ErrorMessage/index.js +2 -2
  443. package/dist/components/forms/Field/index.js +4 -4
  444. package/dist/components/forms/FloatLabel/index.js +2 -2
  445. package/dist/components/forms/Form/index.js +3 -3
  446. package/dist/components/forms/FormValidation/index.js +2 -2
  447. package/dist/components/forms/HelpText/index.js +2 -2
  448. package/dist/components/forms/IftaLabel/index.js +2 -2
  449. package/dist/components/forms/InputGroup/index.js +9 -9
  450. package/dist/components/forms/InputOTP/index.js +2 -2
  451. package/dist/components/forms/InputOTPField/index.js +6 -6
  452. package/dist/components/forms/MultiSelect/index.js +3 -3
  453. package/dist/components/forms/NativeSelect/index.js +2 -2
  454. package/dist/components/forms/NumberInput/index.js +2 -2
  455. package/dist/components/forms/PasswordInput/index.js +3 -3
  456. package/dist/components/forms/PaymentInput/index.js +2 -2
  457. package/dist/components/forms/PhoneInput/index.js +2 -2
  458. package/dist/components/forms/RadioButton/index.js +2 -2
  459. package/dist/components/forms/RadioCardGroup/index.js +2 -2
  460. package/dist/components/forms/RadioGroup/index.js +2 -2
  461. package/dist/components/forms/Rating/index.js +2 -2
  462. package/dist/components/forms/SearchInput/index.js +3 -3
  463. package/dist/components/forms/Select/index.js +2 -2
  464. package/dist/components/forms/Slider/index.js +2 -2
  465. package/dist/components/forms/SuccessMessage/index.js +2 -2
  466. package/dist/components/forms/Switch/index.js +2 -2
  467. package/dist/components/forms/TagsInput/index.js +4 -4
  468. package/dist/components/forms/TextInput/index.js +2 -2
  469. package/dist/components/forms/Textarea/index.js +2 -2
  470. package/dist/components/forms/TextareaField/index.js +6 -6
  471. package/dist/components/forms/TimePicker/index.js +4 -4
  472. package/dist/components/forms/URLInput/index.js +3 -3
  473. package/dist/components/forms/index.js +50 -50
  474. package/dist/components/index.js +183 -183
  475. package/dist/components/layout/Card/index.js +2 -2
  476. package/dist/components/layout/Collapsible/index.js +2 -2
  477. package/dist/components/layout/Container/index.js +2 -2
  478. package/dist/components/layout/Flex/index.js +2 -2
  479. package/dist/components/layout/Grid/index.js +2 -2
  480. package/dist/components/layout/Panel/index.js +3 -3
  481. package/dist/components/layout/ResizablePanels/index.js +2 -2
  482. package/dist/components/layout/ResponsiveContainer/index.js +2 -2
  483. package/dist/components/layout/ScrollArea/index.js +2 -2
  484. package/dist/components/layout/Section/index.js +2 -2
  485. package/dist/components/layout/Sheet/index.js +2 -2
  486. package/dist/components/layout/Stack/index.js +2 -2
  487. package/dist/components/layout/index.js +13 -13
  488. package/dist/components/navigation/AccountSwitch/index.js +6 -6
  489. package/dist/components/navigation/Breadcrumb/index.js +2 -2
  490. package/dist/components/navigation/ContextMenu/index.js +2 -2
  491. package/dist/components/navigation/Drawer/index.js +2 -2
  492. package/dist/components/navigation/DropdownMenu/index.js +2 -2
  493. package/dist/components/navigation/FileTree/index.js +2 -2
  494. package/dist/components/navigation/Header/index.js +2 -2
  495. package/dist/components/navigation/LogoConta/index.js +2 -2
  496. package/dist/components/navigation/Menu/index.js +3 -3
  497. package/dist/components/navigation/Menubar/index.js +2 -2
  498. package/dist/components/navigation/Navbar/index.js +2 -2
  499. package/dist/components/navigation/NavigationMenu/index.js +2 -2
  500. package/dist/components/navigation/Pagination/index.js +7 -7
  501. package/dist/components/navigation/Sidebar/index.js +11 -11
  502. package/dist/components/navigation/SkipLinks/index.js +2 -2
  503. package/dist/components/navigation/SpeedDial/index.js +3 -3
  504. package/dist/components/navigation/TabNavigation/index.js +2 -2
  505. package/dist/components/navigation/TabPanel/index.js +2 -2
  506. package/dist/components/navigation/Tabs/index.js +2 -2
  507. package/dist/components/navigation/Toolbar/index.js +2 -2
  508. package/dist/components/navigation/Topbar/index.js +2 -2
  509. package/dist/components/navigation/index.js +32 -32
  510. package/dist/components/primitives/ArrowAnimated/index.js +2 -2
  511. package/dist/components/primitives/Avatar/index.js +3 -3
  512. package/dist/components/primitives/Badge/index.js +3 -3
  513. package/dist/components/primitives/Button/index.js +6 -6
  514. package/dist/components/primitives/ButtonGroup/index.js +3 -3
  515. package/dist/components/primitives/ConfirmButton/index.js +8 -8
  516. package/dist/components/primitives/Divider/index.js +2 -2
  517. package/dist/components/primitives/FeaturedIcon/index.js +2 -2
  518. package/dist/components/primitives/FolderStack/index.js +2 -2
  519. package/dist/components/primitives/Heading/index.js +2 -2
  520. package/dist/components/primitives/Icon/index.js +2 -2
  521. package/dist/components/primitives/Image/index.js +2 -2
  522. package/dist/components/primitives/Kbd/index.js +2 -2
  523. package/dist/components/primitives/Label/index.js +2 -2
  524. package/dist/components/primitives/Link/index.js +2 -2
  525. package/dist/components/primitives/Paragraph/index.js +2 -2
  526. package/dist/components/primitives/PaymentMethodIcon/index.js +2 -2
  527. package/dist/components/primitives/ProgressBar/index.js +3 -3
  528. package/dist/components/primitives/ProgressCircle/index.js +3 -3
  529. package/dist/components/primitives/SkeletonLoader/index.js +2 -2
  530. package/dist/components/primitives/Spacer/index.js +2 -2
  531. package/dist/components/primitives/Spinner/index.js +2 -2
  532. package/dist/components/primitives/SplitButton/index.js +3 -3
  533. package/dist/components/primitives/StatusIndicator/index.js +2 -2
  534. package/dist/components/primitives/Tag/index.js +2 -2
  535. package/dist/components/primitives/Text/index.js +2 -2
  536. package/dist/components/primitives/Thumbnail/index.js +3 -3
  537. package/dist/components/primitives/Toggle/index.js +2 -2
  538. package/dist/components/primitives/index.js +32 -32
  539. package/dist/components/workflow/ApprovalFlow/index.js +8 -8
  540. package/dist/components/workflow/ApprovalStatus/index.js +2 -2
  541. package/dist/components/workflow/CommentSystem/index.js +9 -9
  542. package/dist/components/workflow/Dashboard/index.js +7 -7
  543. package/dist/components/workflow/DashboardBuilder/index.js +9 -9
  544. package/dist/components/workflow/KanbanBoard/index.js +9 -9
  545. package/dist/components/workflow/ProgressSteps/index.js +2 -2
  546. package/dist/components/workflow/ReportGenerator/index.js +9 -9
  547. package/dist/components/workflow/Stepper/index.js +2 -2
  548. package/dist/components/workflow/TaskCard/index.js +2 -2
  549. package/dist/components/workflow/TaskList/index.js +2 -2
  550. package/dist/components/workflow/TaskStatus/index.js +3 -3
  551. package/dist/components/workflow/Wizard/index.js +8 -8
  552. package/dist/components/workflow/index.js +26 -26
  553. package/dist/index.d.ts +55 -14
  554. package/dist/index.js +183 -183
  555. package/dist/lib/utils.d.ts +2 -1
  556. package/dist/lib/utils.js +1 -1
  557. package/package.json +1 -1
  558. package/dist/chunk-B2OCNHUW.js.map +0 -1
  559. package/dist/chunk-DSCLJ3GK.js.map +0 -1
  560. package/dist/chunk-HRNDJU7D.js +0 -11
  561. package/dist/chunk-HRNDJU7D.js.map +0 -1
  562. package/dist/chunk-IZC5YFGO.js.map +0 -1
  563. package/dist/chunk-JDG5A44W.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/data-display/Lightbox/Lightbox.tsx"],"names":[],"mappings":"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","file":"chunk-2FJJOHHH.js","sourcesContent":["\"use client\"\n\nimport type { LightboxImage, LightboxProps } from \"./Lightbox.types\"\n\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport {\n ChevronLeft,\n ChevronRight,\n Download,\n X,\n ZoomIn,\n ZoomOut,\n} from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\n\n// Shared button styles\nconst controlButtonBase = cn(\n \"flex items-center justify-center rounded-[var(--lightbox-button-radius)]\",\n \"bg-white/10 text-white transition-colors hover:bg-white/20\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/50\"\n)\n\nconst controlButtonSmall = cn(\n controlButtonBase,\n \"size-[var(--lightbox-button-size-sm)]\"\n)\nconst controlButtonLarge = cn(\n controlButtonBase,\n \"size-[var(--lightbox-button-size-lg)]\"\n)\nconst controlButtonDisabled = \"disabled:cursor-not-allowed disabled:opacity-30\"\n\n/**\n * Lightbox - A full-screen media viewer with navigation, zoom, and captions\n *\n * @example\n * ```tsx\n * const [open, setOpen] = useState(false)\n * const images = [\n * { id: '1', src: '/img1.jpg', alt: 'Image 1', caption: 'First image' },\n * { id: '2', src: '/img2.jpg', alt: 'Image 2', caption: 'Second image' },\n * ]\n *\n * <Lightbox\n * images={images}\n * open={open}\n * onOpenChange={setOpen}\n * showCaption\n * enableZoom\n * />\n * ```\n */\nfunction Lightbox({\n className,\n enableDownload = false,\n enableZoom = true,\n images,\n initialIndex = 0,\n loop = true,\n onClose,\n onIndexChange,\n onOpenChange,\n open,\n showCaption = true,\n showCounter = true,\n showThumbnails = false,\n}: LightboxProps) {\n // Use a key to reset state when dialog opens at a specific index\n const [stateKey, setStateKey] = React.useState(0)\n const [currentIndex, setCurrentIndex] = React.useState(initialIndex)\n const [zoom, setZoom] = React.useState(1)\n const [imageLoading, setImageLoading] = React.useState(true)\n const [imageError, setImageError] = React.useState(false)\n\n // Track previous open state to detect when dialog opens\n const prevOpenRef = React.useRef(open)\n\n // Reset state when dialog opens (not on every render)\n /* eslint-disable react-you-might-not-need-an-effect/no-derived-state, react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect -- Intentional state reset on open */\n React.useEffect(() => {\n if (open && !prevOpenRef.current) {\n // Dialog just opened - reset to initialIndex\n setCurrentIndex(initialIndex)\n setZoom(1)\n setImageLoading(true)\n setImageError(false)\n setStateKey((k) => k + 1)\n }\n prevOpenRef.current = open\n }, [open, initialIndex])\n /* eslint-enable react-you-might-not-need-an-effect/no-derived-state, react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect */\n\n // Reset loading state when the image changes\n /* eslint-disable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, react-you-might-not-need-an-effect/no-chain-state-updates, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect -- Image loading state sync */\n React.useEffect(() => {\n setImageLoading(true)\n setImageError(false)\n }, [currentIndex])\n /* eslint-enable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, react-you-might-not-need-an-effect/no-chain-state-updates, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect */\n\n const currentImage: LightboxImage | undefined = images[currentIndex]\n const hasMultipleImages = images.length > 1\n\n const canGoNext = loop || currentIndex < images.length - 1\n const canGoPrev = loop || currentIndex > 0\n\n const goNext = React.useCallback(() => {\n if (!canGoNext) return\n setZoom(1)\n const nextIndex =\n currentIndex < images.length - 1\n ? currentIndex + 1\n : loop\n ? 0\n : currentIndex\n setCurrentIndex(nextIndex)\n onIndexChange?.(nextIndex)\n }, [currentIndex, images.length, loop, canGoNext, onIndexChange])\n\n const goPrev = React.useCallback(() => {\n if (!canGoPrev) return\n setZoom(1)\n const prevIndex =\n currentIndex > 0\n ? currentIndex - 1\n : loop\n ? images.length - 1\n : currentIndex\n setCurrentIndex(prevIndex)\n onIndexChange?.(prevIndex)\n }, [currentIndex, images.length, loop, canGoPrev, onIndexChange])\n\n const goToIndex = React.useCallback(\n (index: number) => {\n if (index >= 0 && index < images.length) {\n setZoom(1)\n setCurrentIndex(index)\n onIndexChange?.(index)\n }\n },\n [images.length, onIndexChange]\n )\n\n const handleClose = React.useCallback(() => {\n onOpenChange?.(false)\n onClose?.()\n }, [onOpenChange, onClose])\n\n const handleZoomIn = React.useCallback(() => {\n setZoom((prev) => Math.min(3, prev + 0.25))\n }, [])\n\n const handleZoomOut = React.useCallback(() => {\n setZoom((prev) => Math.max(0.5, prev - 0.25))\n }, [])\n\n const handleDownload = React.useCallback(() => {\n if (!currentImage) return\n\n const link = document.createElement(\"a\")\n link.href = currentImage.src\n link.download = currentImage.alt || `image-${currentImage.id}`\n link.target = \"_blank\"\n link.rel = \"noopener noreferrer\"\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n }, [currentImage])\n\n const handleImageLoad = React.useCallback(() => {\n setImageLoading(false)\n setImageError(false)\n }, [])\n\n const handleImageError = React.useCallback(() => {\n setImageLoading(false)\n setImageError(true)\n }, [])\n\n // Keyboard navigation\n React.useEffect(() => {\n if (!open) return\n\n const handleKeyDown = (event: KeyboardEvent) => {\n switch (event.key) {\n case \"ArrowLeft\":\n event.preventDefault()\n goPrev()\n break\n case \"ArrowRight\":\n event.preventDefault()\n goNext()\n break\n case \"Escape\":\n event.preventDefault()\n handleClose()\n break\n case \"+\":\n case \"=\":\n if (enableZoom) {\n event.preventDefault()\n handleZoomIn()\n }\n break\n case \"-\":\n if (enableZoom) {\n event.preventDefault()\n handleZoomOut()\n }\n break\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => {\n window.removeEventListener(\"keydown\", handleKeyDown)\n }\n }, [open, goNext, goPrev, handleClose, enableZoom, handleZoomIn, handleZoomOut])\n\n if (!currentImage) return null\n\n return (\n <DialogPrimitive.Root open={open} onOpenChange={onOpenChange}>\n <DialogPrimitive.Portal>\n <DialogPrimitive.Overlay\n className={cn(\n \"fixed inset-0 z-50 bg-black/90\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\"\n )}\n data-slot=\"lightbox-overlay\"\n />\n <DialogPrimitive.Content\n key={stateKey}\n className={cn(\n \"fixed inset-0 z-50 flex flex-col\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"duration-200\",\n className\n )}\n aria-describedby={currentImage.caption ? \"lightbox-caption\" : undefined}\n aria-label={`Lightbox: ${currentImage.alt}`}\n data-slot=\"lightbox\"\n >\n {/* Hide dialog title for screen readers but provide accessible label */}\n <DialogPrimitive.Title className=\"sr-only\">\n Image Viewer\n </DialogPrimitive.Title>\n <DialogPrimitive.Description className=\"sr-only\">\n {`Viewing image ${String(currentIndex + 1)} of ${String(images.length)}`}\n </DialogPrimitive.Description>\n\n {/* Top controls bar */}\n <div\n className=\"absolute top-0 left-0 right-0 z-10 flex items-center justify-between p-[var(--lightbox-header-padding)]\"\n data-slot=\"lightbox-header\"\n >\n {/* Counter */}\n {showCounter && hasMultipleImages ? (\n <div\n aria-live=\"polite\"\n className=\"text-sm text-white/70\"\n data-slot=\"lightbox-counter\"\n >\n {currentIndex + 1} / {images.length}\n </div>\n ) : (\n <div />\n )}\n\n {/* Action buttons */}\n <div className=\"flex items-center gap-2\">\n {enableDownload && (\n <button\n aria-label=\"Download image\"\n className={controlButtonSmall}\n data-slot=\"lightbox-download\"\n type=\"button\"\n onClick={handleDownload}\n >\n <Download className=\"size-5\" />\n </button>\n )}\n <DialogPrimitive.Close asChild>\n <button\n aria-label=\"Close lightbox\"\n className={controlButtonSmall}\n data-slot=\"lightbox-close\"\n type=\"button\"\n >\n <X className=\"size-6\" />\n </button>\n </DialogPrimitive.Close>\n </div>\n </div>\n\n {/* Navigation arrows */}\n {hasMultipleImages && (\n <>\n <button\n className={cn(\n \"absolute left-4 top-1/2 z-10 -translate-y-1/2\",\n controlButtonLarge,\n controlButtonDisabled\n )}\n aria-label=\"Previous image\"\n data-slot=\"lightbox-prev\"\n disabled={!canGoPrev}\n type=\"button\"\n onClick={goPrev}\n >\n <ChevronLeft className=\"size-8\" />\n </button>\n <button\n className={cn(\n \"absolute right-4 top-1/2 z-10 -translate-y-1/2\",\n controlButtonLarge,\n controlButtonDisabled\n )}\n aria-label=\"Next image\"\n data-slot=\"lightbox-next\"\n disabled={!canGoNext}\n type=\"button\"\n onClick={goNext}\n >\n <ChevronRight className=\"size-8\" />\n </button>\n </>\n )}\n\n {/* Main image area */}\n <div\n className={cn(\n \"flex flex-1 items-center justify-center\",\n showThumbnails ? \"pb-24\" : \"pb-20\",\n \"pt-16 px-16\"\n )}\n data-slot=\"lightbox-image-container\"\n >\n {imageLoading && (\n <div\n className=\"absolute inset-0 flex items-center justify-center\"\n data-loading=\"true\"\n >\n <div className=\"size-12 animate-spin rounded-full border-4 border-white/20 border-t-white\" />\n </div>\n )}\n {imageError ? (\n <div\n className=\"flex flex-col items-center justify-center gap-4 text-white/70\"\n data-error=\"true\"\n >\n <X className=\"size-16 text-white/40\" />\n <span>Failed to load image</span>\n </div>\n ) : (\n <img\n className={cn(\n \"max-h-full max-w-full object-contain transition-all duration-200\",\n imageLoading ? \"opacity-0\" : \"opacity-100\"\n )}\n alt={currentImage.alt}\n data-slot=\"lightbox-image\"\n src={currentImage.src}\n style={{ transform: `scale(${String(zoom)})` }}\n onError={handleImageError}\n onLoad={handleImageLoad}\n />\n )}\n </div>\n\n {/* Bottom controls bar */}\n <div\n className={cn(\n \"absolute bottom-0 left-0 right-0 z-10 flex flex-col items-center gap-[var(--lightbox-footer-gap)] p-[var(--lightbox-footer-padding)]\",\n showThumbnails ? \"pb-4\" : \"pb-6\"\n )}\n data-slot=\"lightbox-footer\"\n >\n {/* Zoom controls */}\n {enableZoom && (\n <div\n className=\"flex items-center gap-2\"\n data-slot=\"lightbox-zoom-controls\"\n >\n <button\n aria-label=\"Zoom out\"\n className={cn(controlButtonSmall, controlButtonDisabled)}\n data-slot=\"lightbox-zoom-out\"\n disabled={zoom <= 0.5}\n type=\"button\"\n onClick={handleZoomOut}\n >\n <ZoomOut className=\"size-5\" />\n </button>\n <span className=\"min-w-[4ch] text-center text-sm text-white/70\">\n {Math.round(zoom * 100)}%\n </span>\n <button\n aria-label=\"Zoom in\"\n className={cn(controlButtonSmall, controlButtonDisabled)}\n data-slot=\"lightbox-zoom-in\"\n disabled={zoom >= 3}\n type=\"button\"\n onClick={handleZoomIn}\n >\n <ZoomIn className=\"size-5\" />\n </button>\n </div>\n )}\n\n {/* Caption */}\n {showCaption && currentImage.caption && (\n <p\n className=\"text-center text-sm text-white/90\"\n data-slot=\"lightbox-caption\"\n id=\"lightbox-caption\"\n >\n {currentImage.caption}\n </p>\n )}\n\n {/* Thumbnails strip */}\n {showThumbnails && hasMultipleImages && (\n <div\n aria-label=\"Image thumbnails\"\n className=\"flex max-w-full gap-[var(--lightbox-thumbnail-gap)] overflow-x-auto px-4 py-2\"\n data-slot=\"lightbox-thumbnails\"\n role=\"tablist\"\n >\n {images.map((image, index) => (\n <button\n key={image.id}\n className={cn(\n \"relative size-[var(--lightbox-thumbnail-size)] shrink-0 overflow-hidden rounded-md transition-all\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/50\",\n index === currentIndex\n ? \"ring-2 ring-white ring-offset-2 ring-offset-black/90\"\n : \"opacity-[var(--lightbox-thumbnail-opacity-inactive)] hover:opacity-100\"\n )}\n aria-label={`View ${image.alt}`}\n aria-selected={index === currentIndex}\n data-slot=\"lightbox-thumbnail\"\n role=\"tab\"\n type=\"button\"\n onClick={() => {\n goToIndex(index)\n }}\n >\n <img\n alt={image.alt}\n className=\"size-full object-cover\"\n loading=\"lazy\"\n src={image.thumbnail ?? image.src}\n />\n </button>\n ))}\n </div>\n )}\n </div>\n </DialogPrimitive.Content>\n </DialogPrimitive.Portal>\n </DialogPrimitive.Root>\n )\n}\n\nexport { Lightbox }\nexport type { LightboxImage, LightboxProps }\n"]}
1
+ {"version":3,"sources":["../src/components/data-display/Lightbox/Lightbox.tsx"],"names":[],"mappings":"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","file":"chunk-C34UNXMN.js","sourcesContent":["\"use client\"\n\nimport type { LightboxImage, LightboxProps } from \"./Lightbox.types\"\n\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport {\n ChevronLeft,\n ChevronRight,\n Download,\n X,\n ZoomIn,\n ZoomOut,\n} from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\n\n// Shared button styles\nconst controlButtonBase = cn(\n \"flex items-center justify-center rounded-[var(--lightbox-button-radius)]\",\n \"bg-white/10 text-white transition-colors hover:bg-white/20\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/50\"\n)\n\nconst controlButtonSmall = cn(\n controlButtonBase,\n \"size-[var(--lightbox-button-size-sm)]\"\n)\nconst controlButtonLarge = cn(\n controlButtonBase,\n \"size-[var(--lightbox-button-size-lg)]\"\n)\nconst controlButtonDisabled = \"disabled:cursor-not-allowed disabled:opacity-30\"\n\n/**\n * Lightbox - A full-screen media viewer with navigation, zoom, and captions\n *\n * @example\n * ```tsx\n * const [open, setOpen] = useState(false)\n * const images = [\n * { id: '1', src: '/img1.jpg', alt: 'Image 1', caption: 'First image' },\n * { id: '2', src: '/img2.jpg', alt: 'Image 2', caption: 'Second image' },\n * ]\n *\n * <Lightbox\n * images={images}\n * open={open}\n * onOpenChange={setOpen}\n * showCaption\n * enableZoom\n * />\n * ```\n */\nfunction Lightbox({\n className,\n enableDownload = false,\n enableZoom = true,\n images,\n initialIndex = 0,\n loop = true,\n onClose,\n onIndexChange,\n onOpenChange,\n open,\n showCaption = true,\n showCounter = true,\n showThumbnails = false,\n}: LightboxProps) {\n // Use a key to reset state when dialog opens at a specific index\n const [stateKey, setStateKey] = React.useState(0)\n const [currentIndex, setCurrentIndex] = React.useState(initialIndex)\n const [zoom, setZoom] = React.useState(1)\n const [imageLoading, setImageLoading] = React.useState(true)\n const [imageError, setImageError] = React.useState(false)\n\n // Track previous open state to detect when dialog opens\n const prevOpenRef = React.useRef(open)\n\n // Reset state when dialog opens (not on every render)\n /* eslint-disable react-you-might-not-need-an-effect/no-derived-state, react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect -- Intentional state reset on open */\n React.useEffect(() => {\n if (open && !prevOpenRef.current) {\n // Dialog just opened - reset to initialIndex\n setCurrentIndex(initialIndex)\n setZoom(1)\n setImageLoading(true)\n setImageError(false)\n setStateKey((k) => k + 1)\n }\n prevOpenRef.current = open\n }, [open, initialIndex])\n /* eslint-enable react-you-might-not-need-an-effect/no-derived-state, react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect */\n\n // Reset loading state when the image changes\n /* eslint-disable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, react-you-might-not-need-an-effect/no-chain-state-updates, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect -- Image loading state sync */\n React.useEffect(() => {\n setImageLoading(true)\n setImageError(false)\n }, [currentIndex])\n /* eslint-enable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, react-you-might-not-need-an-effect/no-chain-state-updates, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect */\n\n const currentImage: LightboxImage | undefined = images[currentIndex]\n const hasMultipleImages = images.length > 1\n\n const canGoNext = loop || currentIndex < images.length - 1\n const canGoPrev = loop || currentIndex > 0\n\n const goNext = React.useCallback(() => {\n if (!canGoNext) return\n setZoom(1)\n const nextIndex =\n currentIndex < images.length - 1\n ? currentIndex + 1\n : loop\n ? 0\n : currentIndex\n setCurrentIndex(nextIndex)\n onIndexChange?.(nextIndex)\n }, [currentIndex, images.length, loop, canGoNext, onIndexChange])\n\n const goPrev = React.useCallback(() => {\n if (!canGoPrev) return\n setZoom(1)\n const prevIndex =\n currentIndex > 0\n ? currentIndex - 1\n : loop\n ? images.length - 1\n : currentIndex\n setCurrentIndex(prevIndex)\n onIndexChange?.(prevIndex)\n }, [currentIndex, images.length, loop, canGoPrev, onIndexChange])\n\n const goToIndex = React.useCallback(\n (index: number) => {\n if (index >= 0 && index < images.length) {\n setZoom(1)\n setCurrentIndex(index)\n onIndexChange?.(index)\n }\n },\n [images.length, onIndexChange]\n )\n\n const handleClose = React.useCallback(() => {\n onOpenChange?.(false)\n onClose?.()\n }, [onOpenChange, onClose])\n\n const handleZoomIn = React.useCallback(() => {\n setZoom((prev) => Math.min(3, prev + 0.25))\n }, [])\n\n const handleZoomOut = React.useCallback(() => {\n setZoom((prev) => Math.max(0.5, prev - 0.25))\n }, [])\n\n const handleDownload = React.useCallback(() => {\n if (!currentImage) return\n\n const link = document.createElement(\"a\")\n link.href = currentImage.src\n link.download = currentImage.alt || `image-${currentImage.id}`\n link.target = \"_blank\"\n link.rel = \"noopener noreferrer\"\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n }, [currentImage])\n\n const handleImageLoad = React.useCallback(() => {\n setImageLoading(false)\n setImageError(false)\n }, [])\n\n const handleImageError = React.useCallback(() => {\n setImageLoading(false)\n setImageError(true)\n }, [])\n\n // Keyboard navigation\n React.useEffect(() => {\n if (!open) return\n\n const handleKeyDown = (event: KeyboardEvent) => {\n switch (event.key) {\n case \"ArrowLeft\":\n event.preventDefault()\n goPrev()\n break\n case \"ArrowRight\":\n event.preventDefault()\n goNext()\n break\n case \"Escape\":\n event.preventDefault()\n handleClose()\n break\n case \"+\":\n case \"=\":\n if (enableZoom) {\n event.preventDefault()\n handleZoomIn()\n }\n break\n case \"-\":\n if (enableZoom) {\n event.preventDefault()\n handleZoomOut()\n }\n break\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => {\n window.removeEventListener(\"keydown\", handleKeyDown)\n }\n }, [open, goNext, goPrev, handleClose, enableZoom, handleZoomIn, handleZoomOut])\n\n if (!currentImage) return null\n\n return (\n <DialogPrimitive.Root open={open} onOpenChange={onOpenChange}>\n <DialogPrimitive.Portal>\n <DialogPrimitive.Overlay\n className={cn(\n \"fixed inset-0 z-50 bg-black/90\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\"\n )}\n data-slot=\"lightbox-overlay\"\n />\n <DialogPrimitive.Content\n key={stateKey}\n className={cn(\n \"fixed inset-0 z-50 flex flex-col\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"duration-200\",\n className\n )}\n aria-describedby={currentImage.caption ? \"lightbox-caption\" : undefined}\n aria-label={`Lightbox: ${currentImage.alt}`}\n data-slot=\"lightbox\"\n >\n {/* Hide dialog title for screen readers but provide accessible label */}\n <DialogPrimitive.Title className=\"sr-only\">\n Image Viewer\n </DialogPrimitive.Title>\n <DialogPrimitive.Description className=\"sr-only\">\n {`Viewing image ${String(currentIndex + 1)} of ${String(images.length)}`}\n </DialogPrimitive.Description>\n\n {/* Top controls bar */}\n <div\n className=\"absolute top-0 left-0 right-0 z-10 flex items-center justify-between p-[var(--lightbox-header-padding)]\"\n data-slot=\"lightbox-header\"\n >\n {/* Counter */}\n {showCounter && hasMultipleImages ? (\n <div\n aria-live=\"polite\"\n className=\"text-sm text-white/70\"\n data-slot=\"lightbox-counter\"\n >\n {currentIndex + 1} / {images.length}\n </div>\n ) : (\n <div />\n )}\n\n {/* Action buttons */}\n <div className=\"flex items-center gap-2\">\n {enableDownload && (\n <button\n aria-label=\"Download image\"\n className={controlButtonSmall}\n data-slot=\"lightbox-download\"\n type=\"button\"\n onClick={handleDownload}\n >\n <Download className=\"size-5\" />\n </button>\n )}\n <DialogPrimitive.Close asChild>\n <button\n aria-label=\"Close lightbox\"\n className={controlButtonSmall}\n data-slot=\"lightbox-close\"\n type=\"button\"\n >\n <X className=\"size-6\" />\n </button>\n </DialogPrimitive.Close>\n </div>\n </div>\n\n {/* Navigation arrows */}\n {hasMultipleImages && (\n <>\n <button\n className={cn(\n \"absolute left-4 top-1/2 z-10 -translate-y-1/2\",\n controlButtonLarge,\n controlButtonDisabled\n )}\n aria-label=\"Previous image\"\n data-slot=\"lightbox-prev\"\n disabled={!canGoPrev}\n type=\"button\"\n onClick={goPrev}\n >\n <ChevronLeft className=\"size-8\" />\n </button>\n <button\n className={cn(\n \"absolute right-4 top-1/2 z-10 -translate-y-1/2\",\n controlButtonLarge,\n controlButtonDisabled\n )}\n aria-label=\"Next image\"\n data-slot=\"lightbox-next\"\n disabled={!canGoNext}\n type=\"button\"\n onClick={goNext}\n >\n <ChevronRight className=\"size-8\" />\n </button>\n </>\n )}\n\n {/* Main image area */}\n <div\n className={cn(\n \"flex flex-1 items-center justify-center\",\n showThumbnails ? \"pb-24\" : \"pb-20\",\n \"pt-16 px-16\"\n )}\n data-slot=\"lightbox-image-container\"\n >\n {imageLoading && (\n <div\n className=\"absolute inset-0 flex items-center justify-center\"\n data-loading=\"true\"\n >\n <div className=\"size-12 animate-spin rounded-full border-4 border-white/20 border-t-white\" />\n </div>\n )}\n {imageError ? (\n <div\n className=\"flex flex-col items-center justify-center gap-4 text-white/70\"\n data-error=\"true\"\n >\n <X className=\"size-16 text-white/40\" />\n <span>Failed to load image</span>\n </div>\n ) : (\n <img\n className={cn(\n \"max-h-full max-w-full object-contain transition-all duration-200\",\n imageLoading ? \"opacity-0\" : \"opacity-100\"\n )}\n alt={currentImage.alt}\n data-slot=\"lightbox-image\"\n src={currentImage.src}\n style={{ transform: `scale(${String(zoom)})` }}\n onError={handleImageError}\n onLoad={handleImageLoad}\n />\n )}\n </div>\n\n {/* Bottom controls bar */}\n <div\n className={cn(\n \"absolute bottom-0 left-0 right-0 z-10 flex flex-col items-center gap-[var(--lightbox-footer-gap)] p-[var(--lightbox-footer-padding)]\",\n showThumbnails ? \"pb-4\" : \"pb-6\"\n )}\n data-slot=\"lightbox-footer\"\n >\n {/* Zoom controls */}\n {enableZoom && (\n <div\n className=\"flex items-center gap-2\"\n data-slot=\"lightbox-zoom-controls\"\n >\n <button\n aria-label=\"Zoom out\"\n className={cn(controlButtonSmall, controlButtonDisabled)}\n data-slot=\"lightbox-zoom-out\"\n disabled={zoom <= 0.5}\n type=\"button\"\n onClick={handleZoomOut}\n >\n <ZoomOut className=\"size-5\" />\n </button>\n <span className=\"min-w-[4ch] text-center text-sm text-white/70\">\n {Math.round(zoom * 100)}%\n </span>\n <button\n aria-label=\"Zoom in\"\n className={cn(controlButtonSmall, controlButtonDisabled)}\n data-slot=\"lightbox-zoom-in\"\n disabled={zoom >= 3}\n type=\"button\"\n onClick={handleZoomIn}\n >\n <ZoomIn className=\"size-5\" />\n </button>\n </div>\n )}\n\n {/* Caption */}\n {showCaption && currentImage.caption && (\n <p\n className=\"text-center text-sm text-white/90\"\n data-slot=\"lightbox-caption\"\n id=\"lightbox-caption\"\n >\n {currentImage.caption}\n </p>\n )}\n\n {/* Thumbnails strip */}\n {showThumbnails && hasMultipleImages && (\n <div\n aria-label=\"Image thumbnails\"\n className=\"flex max-w-full gap-[var(--lightbox-thumbnail-gap)] overflow-x-auto px-4 py-2\"\n data-slot=\"lightbox-thumbnails\"\n role=\"tablist\"\n >\n {images.map((image, index) => (\n <button\n key={image.id}\n className={cn(\n \"relative size-[var(--lightbox-thumbnail-size)] shrink-0 overflow-hidden rounded-md transition-all\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/50\",\n index === currentIndex\n ? \"ring-2 ring-white ring-offset-2 ring-offset-black/90\"\n : \"opacity-[var(--lightbox-thumbnail-opacity-inactive)] hover:opacity-100\"\n )}\n aria-label={`View ${image.alt}`}\n aria-selected={index === currentIndex}\n data-slot=\"lightbox-thumbnail\"\n role=\"tab\"\n type=\"button\"\n onClick={() => {\n goToIndex(index)\n }}\n >\n <img\n alt={image.alt}\n className=\"size-full object-cover\"\n loading=\"lazy\"\n src={image.thumbnail ?? image.src}\n />\n </button>\n ))}\n </div>\n )}\n </div>\n </DialogPrimitive.Content>\n </DialogPrimitive.Portal>\n </DialogPrimitive.Root>\n )\n}\n\nexport { Lightbox }\nexport type { LightboxImage, LightboxProps }\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { cn } from './chunk-RVAYDRMA.js';
2
2
  import { cva } from 'class-variance-authority';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
 
@@ -66,5 +66,5 @@ function FormValidation({
66
66
  }
67
67
 
68
68
  export { FormValidation, formValidationVariants };
69
- //# sourceMappingURL=chunk-AEHYYTFW.js.map
70
- //# sourceMappingURL=chunk-AEHYYTFW.js.map
69
+ //# sourceMappingURL=chunk-CV77MF4G.js.map
70
+ //# sourceMappingURL=chunk-CV77MF4G.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/forms/FormValidation/FormValidation.variants.ts","../src/components/forms/FormValidation/FormValidation.tsx"],"names":[],"mappings":";;;;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,gBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,uBAAA;AAAA,QACN,KAAA,EAAO,kBAAA;AAAA,QACP,OAAA,EAAS,cAAA;AAAA,QACT,OAAA,EAAS;AAAA;AACX,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO;AAAA;AACT;AAEJ;ACRA,SAAS,aAAa,KAAA,EAAiD;AACrE,EAAA,IAAI,KAAA,CAAM,OAAO,OAAO,OAAA;AACxB,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,OAAO,MAAA;AACT;AAKA,SAAS,UAAA,CAAW,OAA4B,KAAA,EAA4B;AAC1E,EAAA,QAAQ,KAAA;AAAO,IACb,KAAK,OAAA;AACH,MAAA,OAAO,KAAA,CAAM,KAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,MAAA;AAAA,IACL;AACE,MAAA,OAAO,KAAA,CAAM,IAAA;AAAA;AAEnB;AA8BA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqD;AAEnD,EAAA,MAAM,aAAA,GAAgB,SAAS,YAAA,CAAa,EAAE,OAAO,OAAA,EAAS,OAAc,CAAC,CAAA;AAC7E,EAAA,MAAM,OAAA,GAAU,WAAW,aAAA,EAAe,EAAE,OAAO,OAAA,EAAS,OAAA,EAAS,MAAM,CAAA;AAG3E,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,IAAA;AAAA,EACT;AAGA,EAAA,MAAM,OAAO,aAAA,KAAkB,OAAA,GAAU,OAAA,GAAU,aAAA,KAAkB,YAAY,QAAA,GAAW,MAAA;AAE5F,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,sBAAA,CAAuB,EAAE,OAAO,aAAA,EAAe,GAAG,SAAS,CAAA;AAAA,MACzE,WAAA,EAAU,iBAAA;AAAA,MACV,YAAA,EAAY,aAAA;AAAA,MACZ,IAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA;AAAA,GACH;AAEJ","file":"chunk-AEHYYTFW.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * FormValidation variant styles using CVA\n */\nexport const formValidationVariants = cva(\n \"text-sm mt-1.5\",\n {\n variants: {\n state: {\n idle: \"text-muted-foreground\",\n error: \"text-destructive\",\n success: \"text-success\",\n warning: \"text-warning\",\n },\n },\n defaultVariants: {\n state: \"idle\",\n },\n }\n)\n\n// Export variant prop types\nexport type FormValidationVariantProps = VariantProps<typeof formValidationVariants>\n","import type { FormValidationProps, FormValidationState } from \"./FormValidation.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n type FormValidationVariantProps,\n formValidationVariants,\n} from \"./FormValidation.variants\"\n\n/**\n * Determines the validation state based on which message prop is provided.\n * Priority order: error > warning > success > help (idle)\n */\nfunction getAutoState(props: FormValidationProps): FormValidationState {\n if (props.error) return \"error\"\n if (props.warning) return \"warning\"\n if (props.success) return \"success\"\n return \"idle\"\n}\n\n/**\n * Gets the message content based on the validation state.\n */\nfunction getMessage(state: FormValidationState, props: FormValidationProps) {\n switch (state) {\n case \"error\":\n return props.error\n case \"warning\":\n return props.warning\n case \"success\":\n return props.success\n case \"idle\":\n default:\n return props.help\n }\n}\n\n/**\n * FormValidation displays form validation feedback with appropriate styling.\n *\n * @example\n * ```tsx\n * // Auto-detect state from message prop\n * <FormValidation error=\"This field is required\" />\n * <FormValidation success=\"Email is available\" />\n * <FormValidation warning=\"Password is weak\" />\n * <FormValidation help=\"Enter your email address\" />\n * ```\n *\n * @example\n * ```tsx\n * // Explicit state control\n * <FormValidation state=\"error\" error=\"Invalid format\" />\n * ```\n *\n * @example\n * ```tsx\n * // With conditional rendering\n * <FormValidation\n * error={errors.email?.message}\n * success={isValid ? \"Looks good!\" : undefined}\n * help=\"We'll never share your email\"\n * />\n * ```\n */\nfunction FormValidation({\n className,\n state,\n error,\n success,\n warning,\n help,\n ...props\n}: FormValidationProps & FormValidationVariantProps) {\n // Auto-detect state if not explicitly provided\n const resolvedState = state ?? getAutoState({ error, success, warning, help })\n const message = getMessage(resolvedState, { error, success, warning, help })\n\n // Don't render if no message to display\n if (!message) {\n return null\n }\n\n // Determine appropriate role for accessibility\n const role = resolvedState === \"error\" ? \"alert\" : resolvedState === \"success\" ? \"status\" : undefined\n\n return (\n <div\n className={cn(formValidationVariants({ state: resolvedState }), className)}\n data-slot=\"form-validation\"\n data-state={resolvedState}\n role={role}\n {...props}\n >\n {message}\n </div>\n )\n}\n\nexport { FormValidation }\n"]}
1
+ {"version":3,"sources":["../src/components/forms/FormValidation/FormValidation.variants.ts","../src/components/forms/FormValidation/FormValidation.tsx"],"names":[],"mappings":";;;;AAKO,IAAM,sBAAA,GAAyB,GAAA;AAAA,EACpC,gBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,uBAAA;AAAA,QACN,KAAA,EAAO,kBAAA;AAAA,QACP,OAAA,EAAS,cAAA;AAAA,QACT,OAAA,EAAS;AAAA;AACX,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO;AAAA;AACT;AAEJ;ACRA,SAAS,aAAa,KAAA,EAAiD;AACrE,EAAA,IAAI,KAAA,CAAM,OAAO,OAAO,OAAA;AACxB,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,IAAI,KAAA,CAAM,SAAS,OAAO,SAAA;AAC1B,EAAA,OAAO,MAAA;AACT;AAKA,SAAS,UAAA,CAAW,OAA4B,KAAA,EAA4B;AAC1E,EAAA,QAAQ,KAAA;AAAO,IACb,KAAK,OAAA;AACH,MAAA,OAAO,KAAA,CAAM,KAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,SAAA;AACH,MAAA,OAAO,KAAA,CAAM,OAAA;AAAA,IACf,KAAK,MAAA;AAAA,IACL;AACE,MAAA,OAAO,KAAA,CAAM,IAAA;AAAA;AAEnB;AA8BA,SAAS,cAAA,CAAe;AAAA,EACtB,SAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAqD;AAEnD,EAAA,MAAM,aAAA,GAAgB,SAAS,YAAA,CAAa,EAAE,OAAO,OAAA,EAAS,OAAc,CAAC,CAAA;AAC7E,EAAA,MAAM,OAAA,GAAU,WAAW,aAAA,EAAe,EAAE,OAAO,OAAA,EAAS,OAAA,EAAS,MAAM,CAAA;AAG3E,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO,IAAA;AAAA,EACT;AAGA,EAAA,MAAM,OAAO,aAAA,KAAkB,OAAA,GAAU,OAAA,GAAU,aAAA,KAAkB,YAAY,QAAA,GAAW,MAAA;AAE5F,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,GAAG,sBAAA,CAAuB,EAAE,OAAO,aAAA,EAAe,GAAG,SAAS,CAAA;AAAA,MACzE,WAAA,EAAU,iBAAA;AAAA,MACV,YAAA,EAAY,aAAA;AAAA,MACZ,IAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA;AAAA,GACH;AAEJ","file":"chunk-CV77MF4G.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * FormValidation variant styles using CVA\n */\nexport const formValidationVariants = cva(\n \"text-sm mt-1.5\",\n {\n variants: {\n state: {\n idle: \"text-muted-foreground\",\n error: \"text-destructive\",\n success: \"text-success\",\n warning: \"text-warning\",\n },\n },\n defaultVariants: {\n state: \"idle\",\n },\n }\n)\n\n// Export variant prop types\nexport type FormValidationVariantProps = VariantProps<typeof formValidationVariants>\n","import type { FormValidationProps, FormValidationState } from \"./FormValidation.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n type FormValidationVariantProps,\n formValidationVariants,\n} from \"./FormValidation.variants\"\n\n/**\n * Determines the validation state based on which message prop is provided.\n * Priority order: error > warning > success > help (idle)\n */\nfunction getAutoState(props: FormValidationProps): FormValidationState {\n if (props.error) return \"error\"\n if (props.warning) return \"warning\"\n if (props.success) return \"success\"\n return \"idle\"\n}\n\n/**\n * Gets the message content based on the validation state.\n */\nfunction getMessage(state: FormValidationState, props: FormValidationProps) {\n switch (state) {\n case \"error\":\n return props.error\n case \"warning\":\n return props.warning\n case \"success\":\n return props.success\n case \"idle\":\n default:\n return props.help\n }\n}\n\n/**\n * FormValidation displays form validation feedback with appropriate styling.\n *\n * @example\n * ```tsx\n * // Auto-detect state from message prop\n * <FormValidation error=\"This field is required\" />\n * <FormValidation success=\"Email is available\" />\n * <FormValidation warning=\"Password is weak\" />\n * <FormValidation help=\"Enter your email address\" />\n * ```\n *\n * @example\n * ```tsx\n * // Explicit state control\n * <FormValidation state=\"error\" error=\"Invalid format\" />\n * ```\n *\n * @example\n * ```tsx\n * // With conditional rendering\n * <FormValidation\n * error={errors.email?.message}\n * success={isValid ? \"Looks good!\" : undefined}\n * help=\"We'll never share your email\"\n * />\n * ```\n */\nfunction FormValidation({\n className,\n state,\n error,\n success,\n warning,\n help,\n ...props\n}: FormValidationProps & FormValidationVariantProps) {\n // Auto-detect state if not explicitly provided\n const resolvedState = state ?? getAutoState({ error, success, warning, help })\n const message = getMessage(resolvedState, { error, success, warning, help })\n\n // Don't render if no message to display\n if (!message) {\n return null\n }\n\n // Determine appropriate role for accessibility\n const role = resolvedState === \"error\" ? \"alert\" : resolvedState === \"success\" ? \"status\" : undefined\n\n return (\n <div\n className={cn(formValidationVariants({ state: resolvedState }), className)}\n data-slot=\"form-validation\"\n data-state={resolvedState}\n role={role}\n {...props}\n >\n {message}\n </div>\n )\n}\n\nexport { FormValidation }\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { cn } from './chunk-RVAYDRMA.js';
2
2
  import * as NavigationMenuPrimitive from '@radix-ui/react-navigation-menu';
3
3
  import { ChevronDownIcon } from 'lucide-react';
4
4
  import { cva } from 'class-variance-authority';
@@ -212,5 +212,5 @@ function NavigationMenuIndicator({
212
212
  }
213
213
 
214
214
  export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuContentVariants, navigationMenuIndicatorArrowVariants, navigationMenuIndicatorVariants, navigationMenuItemVariants, navigationMenuLinkVariants, navigationMenuListVariants, navigationMenuTriggerStyle, navigationMenuVariants, navigationMenuViewportVariants, navigationMenuViewportWrapperVariants };
215
- //# sourceMappingURL=chunk-MQ2446N7.js.map
216
- //# sourceMappingURL=chunk-MQ2446N7.js.map
215
+ //# sourceMappingURL=chunk-DGOW65KM.js.map
216
+ //# sourceMappingURL=chunk-DGOW65KM.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/navigation/NavigationMenu/NavigationMenu.variants.ts","../src/components/navigation/NavigationMenu/NavigationMenu.tsx"],"names":[],"mappings":"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","file":"chunk-MQ2446N7.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * NavigationMenu root variant styles\n */\nexport const navigationMenuVariants = cva([\n \"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center\",\n])\n\n/**\n * NavigationMenuList variant styles\n */\nexport const navigationMenuListVariants = cva([\n \"group flex flex-1 list-none items-center justify-center gap-1\",\n])\n\n/**\n * NavigationMenuItem variant styles\n */\nexport const navigationMenuItemVariants = cva([\"relative\"])\n\n/**\n * NavigationMenuTrigger variant styles\n * Used for both trigger buttons and standalone links\n */\nexport const navigationMenuTriggerStyle = cva([\n \"group inline-flex h-9 w-max items-center justify-center\",\n \"rounded-md bg-[color:var(--navigation-menu-trigger-bg)] px-4 py-2 text-sm font-medium\",\n \"hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] hover:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] focus:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"data-[state=open]:hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[state=open]:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"data-[state=open]:focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[state=open]:bg-[color:var(--navigation-menu-trigger-hover-bg)]/50\",\n \"focus-visible:ring-ring/50 outline-none\",\n \"transition-[color,box-shadow]\",\n \"focus-visible:ring-[3px] focus-visible:outline-1\",\n])\n\n/**\n * NavigationMenuContent variant styles\n */\nexport const navigationMenuContentVariants = cva([\n // Motion animations\n \"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out\",\n \"data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out\",\n \"data-[motion=from-end]:slide-in-from-right-52\",\n \"data-[motion=from-start]:slide-in-from-left-52\",\n \"data-[motion=to-end]:slide-out-to-right-52\",\n \"data-[motion=to-start]:slide-out-to-left-52\",\n // Positioning\n \"top-0 left-0 w-full p-2 pr-2.5\",\n \"md:absolute md:w-auto\",\n // No viewport mode styles\n \"group-data-[viewport=false]/navigation-menu:bg-[color:var(--navigation-menu-content-bg)]\",\n \"group-data-[viewport=false]/navigation-menu:text-[color:var(--navigation-menu-content-text)]\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0\",\n \"group-data-[viewport=false]/navigation-menu:top-full\",\n \"group-data-[viewport=false]/navigation-menu:mt-1.5\",\n \"group-data-[viewport=false]/navigation-menu:overflow-hidden\",\n \"group-data-[viewport=false]/navigation-menu:rounded-md\",\n \"group-data-[viewport=false]/navigation-menu:border\",\n \"group-data-[viewport=false]/navigation-menu:shadow\",\n \"group-data-[viewport=false]/navigation-menu:duration-200\",\n // Link focus reset\n \"**:data-[slot=navigation-menu-link]:focus:ring-0\",\n \"**:data-[slot=navigation-menu-link]:focus:outline-none\",\n])\n\n/**\n * NavigationMenuViewport wrapper variant styles\n */\nexport const navigationMenuViewportWrapperVariants = cva([\n \"absolute top-full left-0 isolate z-50 flex justify-center\",\n])\n\n/**\n * NavigationMenuViewport variant styles\n */\nexport const navigationMenuViewportVariants = cva([\n \"origin-top-center bg-[color:var(--navigation-menu-viewport-bg)] text-[color:var(--navigation-menu-viewport-text)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90\",\n \"relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)]\",\n \"w-full overflow-hidden rounded-md border shadow\",\n \"md:w-[var(--radix-navigation-menu-viewport-width)]\",\n])\n\n/**\n * NavigationMenuLink variant styles\n */\nexport const navigationMenuLinkVariants = cva([\n \"data-[active=true]:focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[active=true]:hover:bg-[color:var(--navigation-menu-trigger-hover-bg)]\",\n \"data-[active=true]:bg-[color:var(--navigation-menu-trigger-hover-bg)]/50 data-[active=true]:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] hover:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] focus:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus-visible:ring-ring/50\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none\",\n \"focus-visible:ring-[3px] focus-visible:outline-1\",\n \"[&_svg:not([class*='size-'])]:size-4\",\n])\n\n/**\n * NavigationMenuIndicator variant styles\n */\nexport const navigationMenuIndicatorVariants = cva([\n \"data-[state=visible]:animate-in data-[state=hidden]:animate-out\",\n \"data-[state=hidden]:fade-out data-[state=visible]:fade-in\",\n // z-[1]: intentionally a decorative local lift — keeps the arrow above its\n // immediate sibling content without participating in the global z-index scale.\n \"top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden\",\n])\n\n/**\n * NavigationMenuIndicator arrow variant styles\n */\nexport const navigationMenuIndicatorArrowVariants = cva([\n \"bg-[color:var(--navigation-menu-indicator-bg)] relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md\",\n])\n","\"use client\"\n\nimport type {\n NavigationMenuContentProps,\n NavigationMenuIndicatorProps,\n NavigationMenuItemProps,\n NavigationMenuLinkProps,\n NavigationMenuListProps,\n NavigationMenuProps,\n NavigationMenuTriggerProps,\n NavigationMenuViewportProps,\n} from \"./NavigationMenu.types\"\n\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\"\nimport { ChevronDownIcon } from \"lucide-react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n navigationMenuContentVariants,\n navigationMenuIndicatorArrowVariants,\n navigationMenuIndicatorVariants,\n navigationMenuItemVariants,\n navigationMenuLinkVariants,\n navigationMenuListVariants,\n navigationMenuTriggerStyle,\n navigationMenuVariants,\n navigationMenuViewportVariants,\n navigationMenuViewportWrapperVariants,\n} from \"./NavigationMenu.variants\"\n\n/**\n * NavigationMenu - A collection of navigation links.\n *\n * Built on top of Radix UI NavigationMenu primitive with additional styling.\n * Provides accessible navigation with keyboard support and animations.\n *\n * @example\n * <NavigationMenu>\n * <NavigationMenuList>\n * <NavigationMenuItem>\n * <NavigationMenuTrigger>Item One</NavigationMenuTrigger>\n * <NavigationMenuContent>\n * <NavigationMenuLink href=\"/link\">Link</NavigationMenuLink>\n * </NavigationMenuContent>\n * </NavigationMenuItem>\n * </NavigationMenuList>\n * </NavigationMenu>\n */\nfunction NavigationMenu({\n className,\n children,\n viewport = true,\n ...props\n}: NavigationMenuProps) {\n return (\n <NavigationMenuPrimitive.Root\n className={cn(navigationMenuVariants(), className)}\n data-slot=\"navigation-menu\"\n data-viewport={viewport}\n {...props}\n >\n {children}\n {viewport && <NavigationMenuViewport />}\n </NavigationMenuPrimitive.Root>\n )\n}\n\n/**\n * NavigationMenuList - Container for navigation menu items.\n */\nfunction NavigationMenuList({\n className,\n ...props\n}: NavigationMenuListProps) {\n return (\n <NavigationMenuPrimitive.List\n className={cn(navigationMenuListVariants(), className)}\n data-slot=\"navigation-menu-list\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuItem - An individual navigation item.\n */\nfunction NavigationMenuItem({\n className,\n ...props\n}: NavigationMenuItemProps) {\n return (\n <NavigationMenuPrimitive.Item\n className={cn(navigationMenuItemVariants(), className)}\n data-slot=\"navigation-menu-item\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuTrigger - Button that opens a navigation menu content panel.\n *\n * Includes a chevron icon that rotates when open.\n */\nfunction NavigationMenuTrigger({\n className,\n children,\n ...props\n}: NavigationMenuTriggerProps) {\n return (\n <NavigationMenuPrimitive.Trigger\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n data-slot=\"navigation-menu-trigger\"\n {...props}\n >\n {children}{\" \"}\n <ChevronDownIcon\n aria-hidden=\"true\"\n className=\"relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180\"\n />\n </NavigationMenuPrimitive.Trigger>\n )\n}\n\n/**\n * NavigationMenuContent - Content panel for navigation menu items.\n *\n * Supports animated transitions for entering and leaving states.\n */\nfunction NavigationMenuContent({\n className,\n ...props\n}: NavigationMenuContentProps) {\n return (\n <NavigationMenuPrimitive.Content\n className={cn(navigationMenuContentVariants(), className)}\n data-slot=\"navigation-menu-content\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuViewport - Viewport container for navigation menu content.\n *\n * Positioned below the navigation menu with proper sizing.\n */\nfunction NavigationMenuViewport({\n className,\n ...props\n}: NavigationMenuViewportProps) {\n return (\n <div className={cn(navigationMenuViewportWrapperVariants())}>\n <NavigationMenuPrimitive.Viewport\n className={cn(navigationMenuViewportVariants(), className)}\n data-slot=\"navigation-menu-viewport\"\n {...props}\n />\n </div>\n )\n}\n\n/**\n * NavigationMenuLink - A navigation link within the menu.\n *\n * Use for both internal and external navigation links.\n */\nfunction NavigationMenuLink({\n className,\n ...props\n}: NavigationMenuLinkProps) {\n return (\n <NavigationMenuPrimitive.Link\n className={cn(navigationMenuLinkVariants(), className)}\n data-slot=\"navigation-menu-link\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuIndicator - Visual indicator showing the active menu item.\n *\n * Animates between items as the user navigates.\n */\nfunction NavigationMenuIndicator({\n className,\n ...props\n}: NavigationMenuIndicatorProps) {\n return (\n <NavigationMenuPrimitive.Indicator\n className={cn(navigationMenuIndicatorVariants(), className)}\n data-slot=\"navigation-menu-indicator\"\n {...props}\n >\n <div className={cn(navigationMenuIndicatorArrowVariants())} />\n </NavigationMenuPrimitive.Indicator>\n )\n}\n\nexport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuIndicator,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n NavigationMenuViewport,\n}\n"]}
1
+ {"version":3,"sources":["../src/components/navigation/NavigationMenu/NavigationMenu.variants.ts","../src/components/navigation/NavigationMenu/NavigationMenu.tsx"],"names":[],"mappings":"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","file":"chunk-DGOW65KM.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * NavigationMenu root variant styles\n */\nexport const navigationMenuVariants = cva([\n \"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center\",\n])\n\n/**\n * NavigationMenuList variant styles\n */\nexport const navigationMenuListVariants = cva([\n \"group flex flex-1 list-none items-center justify-center gap-1\",\n])\n\n/**\n * NavigationMenuItem variant styles\n */\nexport const navigationMenuItemVariants = cva([\"relative\"])\n\n/**\n * NavigationMenuTrigger variant styles\n * Used for both trigger buttons and standalone links\n */\nexport const navigationMenuTriggerStyle = cva([\n \"group inline-flex h-9 w-max items-center justify-center\",\n \"rounded-md bg-[color:var(--navigation-menu-trigger-bg)] px-4 py-2 text-sm font-medium\",\n \"hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] hover:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] focus:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"data-[state=open]:hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[state=open]:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"data-[state=open]:focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[state=open]:bg-[color:var(--navigation-menu-trigger-hover-bg)]/50\",\n \"focus-visible:ring-ring/50 outline-none\",\n \"transition-[color,box-shadow]\",\n \"focus-visible:ring-[3px] focus-visible:outline-1\",\n])\n\n/**\n * NavigationMenuContent variant styles\n */\nexport const navigationMenuContentVariants = cva([\n // Motion animations\n \"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out\",\n \"data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out\",\n \"data-[motion=from-end]:slide-in-from-right-52\",\n \"data-[motion=from-start]:slide-in-from-left-52\",\n \"data-[motion=to-end]:slide-out-to-right-52\",\n \"data-[motion=to-start]:slide-out-to-left-52\",\n // Positioning\n \"top-0 left-0 w-full p-2 pr-2.5\",\n \"md:absolute md:w-auto\",\n // No viewport mode styles\n \"group-data-[viewport=false]/navigation-menu:bg-[color:var(--navigation-menu-content-bg)]\",\n \"group-data-[viewport=false]/navigation-menu:text-[color:var(--navigation-menu-content-text)]\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0\",\n \"group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0\",\n \"group-data-[viewport=false]/navigation-menu:top-full\",\n \"group-data-[viewport=false]/navigation-menu:mt-1.5\",\n \"group-data-[viewport=false]/navigation-menu:overflow-hidden\",\n \"group-data-[viewport=false]/navigation-menu:rounded-md\",\n \"group-data-[viewport=false]/navigation-menu:border\",\n \"group-data-[viewport=false]/navigation-menu:shadow\",\n \"group-data-[viewport=false]/navigation-menu:duration-200\",\n // Link focus reset\n \"**:data-[slot=navigation-menu-link]:focus:ring-0\",\n \"**:data-[slot=navigation-menu-link]:focus:outline-none\",\n])\n\n/**\n * NavigationMenuViewport wrapper variant styles\n */\nexport const navigationMenuViewportWrapperVariants = cva([\n \"absolute top-full left-0 isolate z-50 flex justify-center\",\n])\n\n/**\n * NavigationMenuViewport variant styles\n */\nexport const navigationMenuViewportVariants = cva([\n \"origin-top-center bg-[color:var(--navigation-menu-viewport-bg)] text-[color:var(--navigation-menu-viewport-text)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90\",\n \"relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)]\",\n \"w-full overflow-hidden rounded-md border shadow\",\n \"md:w-[var(--radix-navigation-menu-viewport-width)]\",\n])\n\n/**\n * NavigationMenuLink variant styles\n */\nexport const navigationMenuLinkVariants = cva([\n \"data-[active=true]:focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] data-[active=true]:hover:bg-[color:var(--navigation-menu-trigger-hover-bg)]\",\n \"data-[active=true]:bg-[color:var(--navigation-menu-trigger-hover-bg)]/50 data-[active=true]:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"hover:bg-[color:var(--navigation-menu-trigger-hover-bg)] hover:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus:bg-[color:var(--navigation-menu-trigger-hover-bg)] focus:text-[color:var(--navigation-menu-trigger-hover-text)]\",\n \"focus-visible:ring-ring/50\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none\",\n \"focus-visible:ring-[3px] focus-visible:outline-1\",\n \"[&_svg:not([class*='size-'])]:size-4\",\n])\n\n/**\n * NavigationMenuIndicator variant styles\n */\nexport const navigationMenuIndicatorVariants = cva([\n \"data-[state=visible]:animate-in data-[state=hidden]:animate-out\",\n \"data-[state=hidden]:fade-out data-[state=visible]:fade-in\",\n // z-[1]: intentionally a decorative local lift — keeps the arrow above its\n // immediate sibling content without participating in the global z-index scale.\n \"top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden\",\n])\n\n/**\n * NavigationMenuIndicator arrow variant styles\n */\nexport const navigationMenuIndicatorArrowVariants = cva([\n \"bg-[color:var(--navigation-menu-indicator-bg)] relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md\",\n])\n","\"use client\"\n\nimport type {\n NavigationMenuContentProps,\n NavigationMenuIndicatorProps,\n NavigationMenuItemProps,\n NavigationMenuLinkProps,\n NavigationMenuListProps,\n NavigationMenuProps,\n NavigationMenuTriggerProps,\n NavigationMenuViewportProps,\n} from \"./NavigationMenu.types\"\n\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\"\nimport { ChevronDownIcon } from \"lucide-react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n navigationMenuContentVariants,\n navigationMenuIndicatorArrowVariants,\n navigationMenuIndicatorVariants,\n navigationMenuItemVariants,\n navigationMenuLinkVariants,\n navigationMenuListVariants,\n navigationMenuTriggerStyle,\n navigationMenuVariants,\n navigationMenuViewportVariants,\n navigationMenuViewportWrapperVariants,\n} from \"./NavigationMenu.variants\"\n\n/**\n * NavigationMenu - A collection of navigation links.\n *\n * Built on top of Radix UI NavigationMenu primitive with additional styling.\n * Provides accessible navigation with keyboard support and animations.\n *\n * @example\n * <NavigationMenu>\n * <NavigationMenuList>\n * <NavigationMenuItem>\n * <NavigationMenuTrigger>Item One</NavigationMenuTrigger>\n * <NavigationMenuContent>\n * <NavigationMenuLink href=\"/link\">Link</NavigationMenuLink>\n * </NavigationMenuContent>\n * </NavigationMenuItem>\n * </NavigationMenuList>\n * </NavigationMenu>\n */\nfunction NavigationMenu({\n className,\n children,\n viewport = true,\n ...props\n}: NavigationMenuProps) {\n return (\n <NavigationMenuPrimitive.Root\n className={cn(navigationMenuVariants(), className)}\n data-slot=\"navigation-menu\"\n data-viewport={viewport}\n {...props}\n >\n {children}\n {viewport && <NavigationMenuViewport />}\n </NavigationMenuPrimitive.Root>\n )\n}\n\n/**\n * NavigationMenuList - Container for navigation menu items.\n */\nfunction NavigationMenuList({\n className,\n ...props\n}: NavigationMenuListProps) {\n return (\n <NavigationMenuPrimitive.List\n className={cn(navigationMenuListVariants(), className)}\n data-slot=\"navigation-menu-list\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuItem - An individual navigation item.\n */\nfunction NavigationMenuItem({\n className,\n ...props\n}: NavigationMenuItemProps) {\n return (\n <NavigationMenuPrimitive.Item\n className={cn(navigationMenuItemVariants(), className)}\n data-slot=\"navigation-menu-item\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuTrigger - Button that opens a navigation menu content panel.\n *\n * Includes a chevron icon that rotates when open.\n */\nfunction NavigationMenuTrigger({\n className,\n children,\n ...props\n}: NavigationMenuTriggerProps) {\n return (\n <NavigationMenuPrimitive.Trigger\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n data-slot=\"navigation-menu-trigger\"\n {...props}\n >\n {children}{\" \"}\n <ChevronDownIcon\n aria-hidden=\"true\"\n className=\"relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180\"\n />\n </NavigationMenuPrimitive.Trigger>\n )\n}\n\n/**\n * NavigationMenuContent - Content panel for navigation menu items.\n *\n * Supports animated transitions for entering and leaving states.\n */\nfunction NavigationMenuContent({\n className,\n ...props\n}: NavigationMenuContentProps) {\n return (\n <NavigationMenuPrimitive.Content\n className={cn(navigationMenuContentVariants(), className)}\n data-slot=\"navigation-menu-content\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuViewport - Viewport container for navigation menu content.\n *\n * Positioned below the navigation menu with proper sizing.\n */\nfunction NavigationMenuViewport({\n className,\n ...props\n}: NavigationMenuViewportProps) {\n return (\n <div className={cn(navigationMenuViewportWrapperVariants())}>\n <NavigationMenuPrimitive.Viewport\n className={cn(navigationMenuViewportVariants(), className)}\n data-slot=\"navigation-menu-viewport\"\n {...props}\n />\n </div>\n )\n}\n\n/**\n * NavigationMenuLink - A navigation link within the menu.\n *\n * Use for both internal and external navigation links.\n */\nfunction NavigationMenuLink({\n className,\n ...props\n}: NavigationMenuLinkProps) {\n return (\n <NavigationMenuPrimitive.Link\n className={cn(navigationMenuLinkVariants(), className)}\n data-slot=\"navigation-menu-link\"\n {...props}\n />\n )\n}\n\n/**\n * NavigationMenuIndicator - Visual indicator showing the active menu item.\n *\n * Animates between items as the user navigates.\n */\nfunction NavigationMenuIndicator({\n className,\n ...props\n}: NavigationMenuIndicatorProps) {\n return (\n <NavigationMenuPrimitive.Indicator\n className={cn(navigationMenuIndicatorVariants(), className)}\n data-slot=\"navigation-menu-indicator\"\n {...props}\n >\n <div className={cn(navigationMenuIndicatorArrowVariants())} />\n </NavigationMenuPrimitive.Indicator>\n )\n}\n\nexport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuIndicator,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n NavigationMenuViewport,\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Field, FieldLabel, FieldError, FieldDescription } from './chunk-7VGF6ZVE.js';
2
- import { Textarea } from './chunk-2X35C55E.js';
1
+ import { Field, FieldLabel, FieldError, FieldDescription } from './chunk-LRE3LJMW.js';
2
+ import { Textarea } from './chunk-ARJAIH7Q.js';
3
3
  import { useId } from 'react';
4
4
  import { jsxs, jsx } from 'react/jsx-runtime';
5
5
  import { cva } from 'class-variance-authority';
@@ -97,5 +97,5 @@ var textareaFieldErrorVariants = cva(
97
97
  );
98
98
 
99
99
  export { TextareaField, textareaFieldDescriptionVariants, textareaFieldErrorVariants, textareaFieldLabelVariants, textareaFieldVariants };
100
- //# sourceMappingURL=chunk-NULX3RRN.js.map
101
- //# sourceMappingURL=chunk-NULX3RRN.js.map
100
+ //# sourceMappingURL=chunk-DJHDCDU6.js.map
101
+ //# sourceMappingURL=chunk-DJHDCDU6.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/forms/TextareaField/TextareaField.tsx","../src/components/forms/TextareaField/TextareaField.variants.ts"],"names":[],"mappings":";;;;;;AA2BA,SAAS,aAAA,CAAc;AAAA,EACrB,KAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,EAAA,EAAI,UAAA;AAAA,EACJ,GAAG;AACL,CAAA,EAAuB;AACrB,EAAA,MAAM,cAAc,KAAA,EAAM;AAC1B,EAAA,MAAM,KAAK,UAAA,IAAc,WAAA;AACzB,EAAA,MAAM,aAAA,GAAgB,GAAG,EAAE,CAAA,YAAA,CAAA;AAC3B,EAAA,MAAM,OAAA,GAAU,GAAG,EAAE,CAAA,MAAA,CAAA;AAErB,EAAA,MAAM,QAAA,GAAW,CAAC,CAAC,YAAA;AAEnB,EAAA,4BACG,KAAA,EAAA,EACE,QAAA,EAAA;AAAA,IAAA,KAAA,oBACC,IAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAS,EAAA,EAClB,QAAA,EAAA;AAAA,MAAA,KAAA;AAAA,MACA,4BACC,GAAA,CAAC,MAAA,EAAA,EAAK,eAAY,MAAA,EAAO,SAAA,EAAU,yBAAwB,QAAA,EAAA,GAAA,EAE3D;AAAA,KAAA,EAEJ,CAAA;AAAA,oBAEF,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,kBAAA,EACE,QAAA,GAAW,OAAA,GAAW,WAAA,GAAc,aAAA,GAAgB,MAAA;AAAA,QAEtD,gBAAc,QAAA,IAAY,MAAA;AAAA,QAC1B,iBAAe,QAAA,IAAY,MAAA;AAAA,QAC3B,EAAA;AAAA,QACC,GAAG;AAAA;AAAA,KACN;AAAA,IACC,QAAA,mBACC,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAI,OAAA,EAAU,QAAA,EAAA,YAAA,EAAa,CAAA,GACrC,WAAA,mBACF,GAAA,CAAC,gBAAA,EAAA,EAAiB,EAAA,EAAI,aAAA,EAAgB,uBAAY,CAAA,GAChD;AAAA,GAAA,EACN,CAAA;AAEJ;AChEO,IAAM,qBAAA,GAAwB,GAAA;AAAA,EACnC,qBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,OAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,0BAAA,GAA6B,GAAA;AAAA,EACxC,oFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,gCAAA,GAAmC,GAAA;AAAA,EAC9C,uBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,0BAAA,GAA6B,GAAA;AAAA,EACxC,8BAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ","file":"chunk-NULX3RRN.js","sourcesContent":["\"use client\"\n\nimport type { TextareaFieldProps } from \"./TextareaField.types\"\n\nimport { useId } from \"react\"\n\nimport { Field, FieldDescription, FieldError, FieldLabel } from \"../Field\"\nimport { Textarea } from \"../Textarea\"\n\n/**\n * TextareaField - A complete form field combining Textarea with label, description, and error handling\n *\n * @example\n * ```tsx\n * <TextareaField\n * label=\"Description\"\n * description=\"Enter a detailed description\"\n * placeholder=\"Type here...\"\n * />\n *\n * <TextareaField\n * label=\"Comments\"\n * errorMessage=\"This field is required\"\n * required\n * />\n * ```\n */\nfunction TextareaField({\n label,\n description,\n errorMessage,\n required,\n id: providedId,\n ...textareaProps\n}: TextareaFieldProps) {\n const generatedId = useId()\n const id = providedId ?? generatedId\n const descriptionId = `${id}-description`\n const errorId = `${id}-error`\n\n const hasError = !!errorMessage\n\n return (\n <Field>\n {label && (\n <FieldLabel htmlFor={id}>\n {label}\n {required && (\n <span aria-hidden=\"true\" className=\"text-destructive ml-1\">\n *\n </span>\n )}\n </FieldLabel>\n )}\n <Textarea\n aria-describedby={\n hasError ? errorId : (description ? descriptionId : undefined)\n }\n aria-invalid={hasError || undefined}\n aria-required={required ?? undefined}\n id={id}\n {...textareaProps}\n />\n {hasError ? (\n <FieldError id={errorId}>{errorMessage}</FieldError>\n ) : description ? (\n <FieldDescription id={descriptionId}>{description}</FieldDescription>\n ) : null}\n </Field>\n )\n}\n\nexport { TextareaField }\n","import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * TextareaField container variant styles using CVA\n * Wraps the Field + Textarea combination with consistent spacing\n */\nexport const textareaFieldVariants = cva(\n \"flex flex-col gap-2\",\n {\n variants: {\n size: {\n sm: \"gap-1.5\",\n md: \"gap-2\",\n lg: \"gap-2.5\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField label variant styles using CVA\n */\nexport const textareaFieldLabelVariants = cva(\n \"font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField description variant styles using CVA\n */\nexport const textareaFieldDescriptionVariants = cva(\n \"text-muted-foreground\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField error variant styles using CVA\n */\nexport const textareaFieldErrorVariants = cva(\n \"text-destructive font-medium\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type TextareaFieldVariantProps = VariantProps<typeof textareaFieldVariants>\nexport type TextareaFieldLabelVariantProps = VariantProps<typeof textareaFieldLabelVariants>\nexport type TextareaFieldDescriptionVariantProps = VariantProps<typeof textareaFieldDescriptionVariants>\nexport type TextareaFieldErrorVariantProps = VariantProps<typeof textareaFieldErrorVariants>\n"]}
1
+ {"version":3,"sources":["../src/components/forms/TextareaField/TextareaField.tsx","../src/components/forms/TextareaField/TextareaField.variants.ts"],"names":[],"mappings":";;;;;;AA2BA,SAAS,aAAA,CAAc;AAAA,EACrB,KAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,EAAA,EAAI,UAAA;AAAA,EACJ,GAAG;AACL,CAAA,EAAuB;AACrB,EAAA,MAAM,cAAc,KAAA,EAAM;AAC1B,EAAA,MAAM,KAAK,UAAA,IAAc,WAAA;AACzB,EAAA,MAAM,aAAA,GAAgB,GAAG,EAAE,CAAA,YAAA,CAAA;AAC3B,EAAA,MAAM,OAAA,GAAU,GAAG,EAAE,CAAA,MAAA,CAAA;AAErB,EAAA,MAAM,QAAA,GAAW,CAAC,CAAC,YAAA;AAEnB,EAAA,4BACG,KAAA,EAAA,EACE,QAAA,EAAA;AAAA,IAAA,KAAA,oBACC,IAAA,CAAC,UAAA,EAAA,EAAW,OAAA,EAAS,EAAA,EAClB,QAAA,EAAA;AAAA,MAAA,KAAA;AAAA,MACA,4BACC,GAAA,CAAC,MAAA,EAAA,EAAK,eAAY,MAAA,EAAO,SAAA,EAAU,yBAAwB,QAAA,EAAA,GAAA,EAE3D;AAAA,KAAA,EAEJ,CAAA;AAAA,oBAEF,GAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,kBAAA,EACE,QAAA,GAAW,OAAA,GAAW,WAAA,GAAc,aAAA,GAAgB,MAAA;AAAA,QAEtD,gBAAc,QAAA,IAAY,MAAA;AAAA,QAC1B,iBAAe,QAAA,IAAY,MAAA;AAAA,QAC3B,EAAA;AAAA,QACC,GAAG;AAAA;AAAA,KACN;AAAA,IACC,QAAA,mBACC,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAI,OAAA,EAAU,QAAA,EAAA,YAAA,EAAa,CAAA,GACrC,WAAA,mBACF,GAAA,CAAC,gBAAA,EAAA,EAAiB,EAAA,EAAI,aAAA,EAAgB,uBAAY,CAAA,GAChD;AAAA,GAAA,EACN,CAAA;AAEJ;AChEO,IAAM,qBAAA,GAAwB,GAAA;AAAA,EACnC,qBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,OAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,0BAAA,GAA6B,GAAA;AAAA,EACxC,oFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,gCAAA,GAAmC,GAAA;AAAA,EAC9C,uBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ;AAKO,IAAM,0BAAA,GAA6B,GAAA;AAAA,EACxC,8BAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ","file":"chunk-DJHDCDU6.js","sourcesContent":["\"use client\"\n\nimport type { TextareaFieldProps } from \"./TextareaField.types\"\n\nimport { useId } from \"react\"\n\nimport { Field, FieldDescription, FieldError, FieldLabel } from \"../Field\"\nimport { Textarea } from \"../Textarea\"\n\n/**\n * TextareaField - A complete form field combining Textarea with label, description, and error handling\n *\n * @example\n * ```tsx\n * <TextareaField\n * label=\"Description\"\n * description=\"Enter a detailed description\"\n * placeholder=\"Type here...\"\n * />\n *\n * <TextareaField\n * label=\"Comments\"\n * errorMessage=\"This field is required\"\n * required\n * />\n * ```\n */\nfunction TextareaField({\n label,\n description,\n errorMessage,\n required,\n id: providedId,\n ...textareaProps\n}: TextareaFieldProps) {\n const generatedId = useId()\n const id = providedId ?? generatedId\n const descriptionId = `${id}-description`\n const errorId = `${id}-error`\n\n const hasError = !!errorMessage\n\n return (\n <Field>\n {label && (\n <FieldLabel htmlFor={id}>\n {label}\n {required && (\n <span aria-hidden=\"true\" className=\"text-destructive ml-1\">\n *\n </span>\n )}\n </FieldLabel>\n )}\n <Textarea\n aria-describedby={\n hasError ? errorId : (description ? descriptionId : undefined)\n }\n aria-invalid={hasError || undefined}\n aria-required={required ?? undefined}\n id={id}\n {...textareaProps}\n />\n {hasError ? (\n <FieldError id={errorId}>{errorMessage}</FieldError>\n ) : description ? (\n <FieldDescription id={descriptionId}>{description}</FieldDescription>\n ) : null}\n </Field>\n )\n}\n\nexport { TextareaField }\n","import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * TextareaField container variant styles using CVA\n * Wraps the Field + Textarea combination with consistent spacing\n */\nexport const textareaFieldVariants = cva(\n \"flex flex-col gap-2\",\n {\n variants: {\n size: {\n sm: \"gap-1.5\",\n md: \"gap-2\",\n lg: \"gap-2.5\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField label variant styles using CVA\n */\nexport const textareaFieldLabelVariants = cva(\n \"font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField description variant styles using CVA\n */\nexport const textareaFieldDescriptionVariants = cva(\n \"text-muted-foreground\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\n/**\n * TextareaField error variant styles using CVA\n */\nexport const textareaFieldErrorVariants = cva(\n \"text-destructive font-medium\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type TextareaFieldVariantProps = VariantProps<typeof textareaFieldVariants>\nexport type TextareaFieldLabelVariantProps = VariantProps<typeof textareaFieldLabelVariants>\nexport type TextareaFieldDescriptionVariantProps = VariantProps<typeof textareaFieldDescriptionVariants>\nexport type TextareaFieldErrorVariantProps = VariantProps<typeof textareaFieldErrorVariants>\n"]}
@@ -1,5 +1,5 @@
1
- import { ScrollArea } from './chunk-CNRV2IGH.js';
2
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { ScrollArea } from './chunk-HM6TEHA6.js';
2
+ import { cn } from './chunk-RVAYDRMA.js';
3
3
  import { useRef, useCallback } from 'react';
4
4
  import { cva } from 'class-variance-authority';
5
5
  import { jsx } from 'react/jsx-runtime';
@@ -266,5 +266,5 @@ function MenuShortcut({ className, children, ...props }) {
266
266
  }
267
267
 
268
268
  export { Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, MenuShortcut, menuGroupVariants, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuShortcutVariants, menuVariants };
269
- //# sourceMappingURL=chunk-USPITOG4.js.map
270
- //# sourceMappingURL=chunk-USPITOG4.js.map
269
+ //# sourceMappingURL=chunk-DQGBTZRX.js.map
270
+ //# sourceMappingURL=chunk-DQGBTZRX.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/navigation/Menu/Menu.variants.ts","../src/components/navigation/Menu/Menu.tsx"],"names":[],"mappings":"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","file":"chunk-USPITOG4.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * Menu root variant styles\n */\nexport const menuVariants = cva(\n [\n \"flex p-[var(--menu-root-padding)]\",\n // Floating chrome (DES-1281): Menu owns the popover casing — bg/border/shadow/radius —\n // so consumers no longer wrap it in a `rounded-md border bg-popover shadow-md` div.\n \"rounded-[var(--menu-content-radius)] border border-[color:var(--menu-content-border)] bg-[color:var(--menu-content-bg)] shadow-[var(--menu-content-shadow)]\",\n ],\n {\n variants: {\n orientation: {\n vertical: \"flex-col\",\n horizontal: \"flex-row\",\n },\n },\n defaultVariants: {\n orientation: \"vertical\",\n },\n }\n)\n\n/**\n * MenuItem variant styles\n */\nexport const menuItemVariants = cva(\n [\n // Base styles\n \"relative flex w-full cursor-pointer select-none items-center gap-[var(--menu-item-gap)]\",\n \"rounded-[var(--menu-item-radius)] px-[var(--menu-item-padding-x)] py-[var(--menu-item-padding-y)] text-[length:var(--menu-item-text-size)] outline-none\",\n // Focus styles\n \"focus:bg-[color:var(--menu-item-bg-hover)] focus:text-[color:var(--menu-item-fg-hover)]\",\n // Hover styles\n \"hover:bg-[color:var(--menu-item-bg-hover)] hover:text-[color:var(--menu-item-fg-hover)]\",\n // Transition\n \"transition-colors\",\n // Disabled styles\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n // SVG styles\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n ],\n {\n variants: {\n variant: {\n default: \"\",\n destructive: \"text-[color:var(--menu-item-fg-destructive)] focus:bg-destructive/10 focus:text-[color:var(--menu-item-fg-destructive)] hover:bg-destructive/10 hover:text-[color:var(--menu-item-fg-destructive)]\",\n },\n inset: {\n true: \"pl-8\",\n false: \"\",\n },\n selected: {\n true: \"bg-accent/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n inset: false,\n selected: false,\n },\n }\n)\n\n/**\n * MenuGroup variant styles\n */\nexport const menuGroupVariants = cva([\n \"flex flex-col gap-1\",\n])\n\n/**\n * MenuLabel variant styles\n */\nexport const menuLabelVariants = cva(\n [\n \"px-2 py-1.5 text-xs font-medium text-muted-foreground\",\n \"uppercase tracking-wider\",\n ],\n {\n variants: {\n inset: {\n true: \"pl-8\",\n false: \"\",\n },\n },\n defaultVariants: {\n inset: false,\n },\n }\n)\n\n/**\n * MenuSeparator variant styles\n */\nexport const menuSeparatorVariants = cva([\n \"-mx-1 my-1 h-px bg-border\",\n])\n\n/**\n * MenuShortcut variant styles\n */\nexport const menuShortcutVariants = cva([\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n])\n","\"use client\"\n\nimport type {\n MenuGroupProps,\n MenuItemProps,\n MenuLabelProps,\n MenuProps,\n MenuSeparatorProps,\n MenuShortcutProps,\n} from \"./Menu.types\"\nimport type { KeyboardEvent } from \"react\";\n\nimport { useCallback, useRef } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { ScrollArea } from \"../../layout/ScrollArea\"\nimport {\n menuGroupVariants,\n menuItemVariants,\n menuLabelVariants,\n menuSeparatorVariants,\n menuShortcutVariants,\n menuVariants,\n} from \"./Menu.variants\"\n\n/**\n * Menu - A navigable list of options with keyboard support.\n *\n * Base component for creating custom menus with full accessibility.\n *\n * @example\n * <Menu>\n * <MenuItem onSelect={() => console.log(\"Edit\")}>Edit</MenuItem>\n * <MenuItem onSelect={() => console.log(\"Copy\")}>Copy</MenuItem>\n * <MenuSeparator />\n * <MenuItem variant=\"destructive\">Delete</MenuItem>\n * </Menu>\n */\nfunction Menu({\n className,\n orientation = \"vertical\",\n maxHeight,\n children,\n ...props\n}: MenuProps) {\n const menuRef = useRef<HTMLDivElement>(null)\n\n /* eslint-disable sonarjs/cognitive-complexity -- Keyboard navigation requires handling multiple key cases */\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n const menu = menuRef.current\n if (!menu) return\n\n const items = [...menu.querySelectorAll('[role=\"menuitem\"]:not([data-disabled])')] as HTMLElement[]\n\n if (items.length === 0) return\n\n const currentIndex = items.findIndex((item) => item === document.activeElement)\n\n let nextIndex: null | number = null\n\n switch (event.key) {\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n event.preventDefault()\n nextIndex = currentIndex < items.length - 1 ? currentIndex + 1 : 0\n }\n break\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n event.preventDefault()\n nextIndex = currentIndex > 0 ? currentIndex - 1 : items.length - 1\n }\n break\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n event.preventDefault()\n nextIndex = currentIndex < items.length - 1 ? currentIndex + 1 : 0\n }\n break\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n event.preventDefault()\n nextIndex = currentIndex > 0 ? currentIndex - 1 : items.length - 1\n }\n break\n case \"Home\":\n event.preventDefault()\n nextIndex = 0\n break\n case \"End\":\n event.preventDefault()\n nextIndex = items.length - 1\n break\n }\n\n if (nextIndex !== null) {\n const nextItem = items[nextIndex]\n if (nextItem) {\n nextItem.focus()\n }\n }\n },\n [orientation]\n )\n /* eslint-enable sonarjs/cognitive-complexity */\n\n return (\n <div\n ref={menuRef}\n className={cn(menuVariants({ orientation }), className)}\n data-slot=\"menu\"\n role=\"menu\"\n onKeyDown={handleKeyDown}\n {...props}\n >\n {maxHeight == null ? (\n children\n ) : (\n <ScrollArea className=\"w-full\" style={{ maxHeight }}>\n {children}\n </ScrollArea>\n )}\n </div>\n )\n}\n\n/**\n * MenuItem - Individual menu item with optional variants.\n */\nfunction MenuItem({\n className,\n variant = \"default\",\n inset = false,\n selected = false,\n onSelect,\n disabled = false,\n children,\n onClick,\n onKeyDown,\n ...props\n}: MenuItemProps) {\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled) return\n onClick?.(event)\n onSelect?.()\n },\n [disabled, onClick, onSelect]\n )\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(event)\n if (disabled) return\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault()\n onSelect?.()\n }\n },\n [disabled, onKeyDown, onSelect]\n )\n\n return (\n <button\n aria-disabled={disabled || undefined}\n aria-selected={selected || undefined}\n className={cn(menuItemVariants({ variant, inset, selected }), className)}\n data-disabled={disabled || undefined}\n data-slot=\"menu-item\"\n role=\"menuitem\"\n tabIndex={disabled ? -1 : 0}\n type=\"button\"\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...props}\n >\n {children}\n </button>\n )\n}\n\n/**\n * MenuGroup - Groups related menu items together.\n */\nfunction MenuGroup({\n className,\n label,\n children,\n ...props\n}: MenuGroupProps) {\n return (\n <div\n aria-label={label}\n className={cn(menuGroupVariants(), className)}\n data-slot=\"menu-group\"\n role=\"group\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * MenuLabel - Label for a group of menu items.\n */\nfunction MenuLabel({\n className,\n inset = false,\n children,\n ...props\n}: MenuLabelProps) {\n return (\n <div\n className={cn(menuLabelVariants({ inset }), className)}\n data-slot=\"menu-label\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * MenuSeparator - Visual divider between menu items.\n */\nfunction MenuSeparator({ className, ...props }: MenuSeparatorProps) {\n return (\n <div\n className={cn(menuSeparatorVariants(), className)}\n data-slot=\"menu-separator\"\n role=\"separator\"\n {...props}\n />\n )\n}\n\n/**\n * MenuShortcut - Displays keyboard shortcut hint.\n */\nfunction MenuShortcut({ className, children, ...props }: MenuShortcutProps) {\n return (\n <span\n className={cn(menuShortcutVariants(), className)}\n data-slot=\"menu-shortcut\"\n {...props}\n >\n {children}\n </span>\n )\n}\n\nexport { Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, MenuShortcut }\n"]}
1
+ {"version":3,"sources":["../src/components/navigation/Menu/Menu.variants.ts","../src/components/navigation/Menu/Menu.tsx"],"names":[],"mappings":";;;;;;AAKO,IAAM,YAAA,GAAe,GAAA;AAAA,EAC1B;AAAA,IACE,mCAAA;AAAA;AAAA;AAAA,IAGA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,WAAA,EAAa;AAAA,QACX,QAAA,EAAU,UAAA;AAAA,QACV,UAAA,EAAY;AAAA;AACd,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,WAAA,EAAa;AAAA;AACf;AAEJ;AAKO,IAAM,gBAAA,GAAmB,GAAA;AAAA,EAC9B;AAAA;AAAA,IAEE,yFAAA;AAAA,IACA,yJAAA;AAAA;AAAA,IAEA,yFAAA;AAAA;AAAA,IAEA,yFAAA;AAAA;AAAA,IAEA,mBAAA;AAAA;AAAA,IAEA,gEAAA;AAAA;AAAA,IAEA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,EAAA;AAAA,QACT,WAAA,EAAa;AAAA,OACf;AAAA,MACA,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,MAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,cAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,SAAA;AAAA,MACT,KAAA,EAAO,KAAA;AAAA,MACP,QAAA,EAAU;AAAA;AACZ;AAEJ;AAKO,IAAM,oBAAoB,GAAA,CAAI;AAAA,EACnC;AACF,CAAC;AAKM,IAAM,iBAAA,GAAoB,GAAA;AAAA,EAC/B;AAAA,IACE,uDAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,MAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO;AAAA;AACT;AAEJ;AAKO,IAAM,wBAAwB,GAAA,CAAI;AAAA,EACvC;AACF,CAAC;AAKM,IAAM,uBAAuB,GAAA,CAAI;AAAA,EACtC;AACF,CAAC;ACrED,SAAS,IAAA,CAAK;AAAA,EACZ,SAAA;AAAA,EACA,WAAA,GAAc,UAAA;AAAA,EACd,SAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAc;AACZ,EAAA,MAAM,OAAA,GAAU,OAAuB,IAAI,CAAA;AAG3C,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,KAAA,KAAyC;AACxC,MAAA,MAAM,OAAO,OAAA,CAAQ,OAAA;AACrB,MAAA,IAAI,CAAC,IAAA,EAAM;AAEX,MAAA,MAAM,QAAQ,CAAC,GAAG,IAAA,CAAK,gBAAA,CAAiB,wCAAwC,CAAC,CAAA;AAEjF,MAAA,IAAI,KAAA,CAAM,WAAW,CAAA,EAAG;AAExB,MAAA,MAAM,eAAe,KAAA,CAAM,SAAA,CAAU,CAAC,IAAA,KAAS,IAAA,KAAS,SAAS,aAAa,CAAA;AAE9E,MAAA,IAAI,SAAA,GAA2B,IAAA;AAE/B,MAAA,QAAQ,MAAM,GAAA;AAAK,QACjB,KAAK,WAAA;AACH,UAAA,IAAI,gBAAgB,UAAA,EAAY;AAC9B,YAAA,KAAA,CAAM,cAAA,EAAe;AACrB,YAAA,SAAA,GAAY,YAAA,GAAe,KAAA,CAAM,MAAA,GAAS,CAAA,GAAI,eAAe,CAAA,GAAI,CAAA;AAAA,UACnE;AACA,UAAA;AAAA,QACF,KAAK,SAAA;AACH,UAAA,IAAI,gBAAgB,UAAA,EAAY;AAC9B,YAAA,KAAA,CAAM,cAAA,EAAe;AACrB,YAAA,SAAA,GAAY,YAAA,GAAe,CAAA,GAAI,YAAA,GAAe,CAAA,GAAI,MAAM,MAAA,GAAS,CAAA;AAAA,UACnE;AACA,UAAA;AAAA,QACF,KAAK,YAAA;AACH,UAAA,IAAI,gBAAgB,YAAA,EAAc;AAChC,YAAA,KAAA,CAAM,cAAA,EAAe;AACrB,YAAA,SAAA,GAAY,YAAA,GAAe,KAAA,CAAM,MAAA,GAAS,CAAA,GAAI,eAAe,CAAA,GAAI,CAAA;AAAA,UACnE;AACA,UAAA;AAAA,QACF,KAAK,WAAA;AACH,UAAA,IAAI,gBAAgB,YAAA,EAAc;AAChC,YAAA,KAAA,CAAM,cAAA,EAAe;AACrB,YAAA,SAAA,GAAY,YAAA,GAAe,CAAA,GAAI,YAAA,GAAe,CAAA,GAAI,MAAM,MAAA,GAAS,CAAA;AAAA,UACnE;AACA,UAAA;AAAA,QACF,KAAK,MAAA;AACH,UAAA,KAAA,CAAM,cAAA,EAAe;AACrB,UAAA,SAAA,GAAY,CAAA;AACZ,UAAA;AAAA,QACF,KAAK,KAAA;AACH,UAAA,KAAA,CAAM,cAAA,EAAe;AACrB,UAAA,SAAA,GAAY,MAAM,MAAA,GAAS,CAAA;AAC3B,UAAA;AAAA;AAGJ,MAAA,IAAI,cAAc,IAAA,EAAM;AACtB,QAAA,MAAM,QAAA,GAAW,MAAM,SAAS,CAAA;AAChC,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,KAAA,EAAM;AAAA,QACjB;AAAA,MACF;AAAA,IACF,CAAA;AAAA,IACA,CAAC,WAAW;AAAA,GACd;AAGA,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA,EAAK,OAAA;AAAA,MACL,WAAW,EAAA,CAAG,YAAA,CAAa,EAAE,WAAA,EAAa,GAAG,SAAS,CAAA;AAAA,MACtD,WAAA,EAAU,MAAA;AAAA,MACV,IAAA,EAAK,MAAA;AAAA,MACL,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA,SAAA,IAAa,IAAA,GACZ,QAAA,mBAEA,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,QAAA,EAAS,KAAA,EAAO,EAAE,SAAA,EAAU,EAC/C,QAAA,EACH;AAAA;AAAA,GAEJ;AAEJ;AAKA,SAAS,QAAA,CAAS;AAAA,EAChB,SAAA;AAAA,EACA,OAAA,GAAU,SAAA;AAAA,EACV,KAAA,GAAQ,KAAA;AAAA,EACR,QAAA,GAAW,KAAA;AAAA,EACX,QAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAkB;AAChB,EAAA,MAAM,WAAA,GAAc,WAAA;AAAA,IAClB,CAAC,KAAA,KAA+C;AAC9C,MAAA,IAAI,QAAA,EAAU;AACd,MAAA,OAAA,GAAU,KAAK,CAAA;AACf,MAAA,QAAA,IAAW;AAAA,IACb,CAAA;AAAA,IACA,CAAC,QAAA,EAAU,OAAA,EAAS,QAAQ;AAAA,GAC9B;AAEA,EAAA,MAAM,aAAA,GAAgB,WAAA;AAAA,IACpB,CAAC,KAAA,KAAkD;AACjD,MAAA,SAAA,GAAY,KAAK,CAAA;AACjB,MAAA,IAAI,QAAA,EAAU;AAEd,MAAA,IAAI,KAAA,CAAM,GAAA,KAAQ,OAAA,IAAW,KAAA,CAAM,QAAQ,GAAA,EAAK;AAC9C,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,QAAA,IAAW;AAAA,MACb;AAAA,IACF,CAAA;AAAA,IACA,CAAC,QAAA,EAAU,SAAA,EAAW,QAAQ;AAAA,GAChC;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,iBAAe,QAAA,IAAY,MAAA;AAAA,MAC3B,iBAAe,QAAA,IAAY,MAAA;AAAA,MAC3B,SAAA,EAAW,GAAG,gBAAA,CAAiB,EAAE,SAAS,KAAA,EAAO,QAAA,EAAU,CAAA,EAAG,SAAS,CAAA;AAAA,MACvE,iBAAe,QAAA,IAAY,MAAA;AAAA,MAC3B,WAAA,EAAU,WAAA;AAAA,MACV,IAAA,EAAK,UAAA;AAAA,MACL,QAAA,EAAU,WAAW,EAAA,GAAK,CAAA;AAAA,MAC1B,IAAA,EAAK,QAAA;AAAA,MACL,OAAA,EAAS,WAAA;AAAA,MACT,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,KAAA;AAAA,MAEH;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,SAAA,CAAU;AAAA,EACjB,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAY,KAAA;AAAA,MACZ,SAAA,EAAW,EAAA,CAAG,iBAAA,EAAkB,EAAG,SAAS,CAAA;AAAA,MAC5C,WAAA,EAAU,YAAA;AAAA,MACV,IAAA,EAAK,OAAA;AAAA,MACJ,GAAG,KAAA;AAAA,MAEH;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,SAAA,CAAU;AAAA,EACjB,SAAA;AAAA,EACA,KAAA,GAAQ,KAAA;AAAA,EACR,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,WAAW,EAAA,CAAG,iBAAA,CAAkB,EAAE,KAAA,EAAO,GAAG,SAAS,CAAA;AAAA,MACrD,WAAA,EAAU,YAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH;AAAA;AAAA,GACH;AAEJ;AAKA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAsB,EAAG,SAAS,CAAA;AAAA,MAChD,WAAA,EAAU,gBAAA;AAAA,MACV,IAAA,EAAK,WAAA;AAAA,MACJ,GAAG;AAAA;AAAA,GACN;AAEJ;AAKA,SAAS,aAAa,EAAE,SAAA,EAAW,QAAA,EAAU,GAAG,OAAM,EAAsB;AAC1E,EAAA,uBACE,GAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,oBAAA,EAAqB,EAAG,SAAS,CAAA;AAAA,MAC/C,WAAA,EAAU,eAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH;AAAA;AAAA,GACH;AAEJ","file":"chunk-DQGBTZRX.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/**\n * Menu root variant styles\n */\nexport const menuVariants = cva(\n [\n \"flex p-[var(--menu-root-padding)]\",\n // Floating chrome (DES-1281): Menu owns the popover casing — bg/border/shadow/radius —\n // so consumers no longer wrap it in a `rounded-md border bg-popover shadow-md` div.\n \"rounded-[var(--menu-content-radius)] border border-[color:var(--menu-content-border)] bg-[color:var(--menu-content-bg)] shadow-[var(--menu-content-shadow)]\",\n ],\n {\n variants: {\n orientation: {\n vertical: \"flex-col\",\n horizontal: \"flex-row\",\n },\n },\n defaultVariants: {\n orientation: \"vertical\",\n },\n }\n)\n\n/**\n * MenuItem variant styles\n */\nexport const menuItemVariants = cva(\n [\n // Base styles\n \"relative flex w-full cursor-pointer select-none items-center gap-[var(--menu-item-gap)]\",\n \"rounded-[var(--menu-item-radius)] px-[var(--menu-item-padding-x)] py-[var(--menu-item-padding-y)] text-[length:var(--menu-item-text-size)] outline-none\",\n // Focus styles\n \"focus:bg-[color:var(--menu-item-bg-hover)] focus:text-[color:var(--menu-item-fg-hover)]\",\n // Hover styles\n \"hover:bg-[color:var(--menu-item-bg-hover)] hover:text-[color:var(--menu-item-fg-hover)]\",\n // Transition\n \"transition-colors\",\n // Disabled styles\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n // SVG styles\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n ],\n {\n variants: {\n variant: {\n default: \"\",\n destructive: \"text-[color:var(--menu-item-fg-destructive)] focus:bg-destructive/10 focus:text-[color:var(--menu-item-fg-destructive)] hover:bg-destructive/10 hover:text-[color:var(--menu-item-fg-destructive)]\",\n },\n inset: {\n true: \"pl-8\",\n false: \"\",\n },\n selected: {\n true: \"bg-accent/50\",\n false: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n inset: false,\n selected: false,\n },\n }\n)\n\n/**\n * MenuGroup variant styles\n */\nexport const menuGroupVariants = cva([\n \"flex flex-col gap-1\",\n])\n\n/**\n * MenuLabel variant styles\n */\nexport const menuLabelVariants = cva(\n [\n \"px-2 py-1.5 text-xs font-medium text-muted-foreground\",\n \"uppercase tracking-wider\",\n ],\n {\n variants: {\n inset: {\n true: \"pl-8\",\n false: \"\",\n },\n },\n defaultVariants: {\n inset: false,\n },\n }\n)\n\n/**\n * MenuSeparator variant styles\n */\nexport const menuSeparatorVariants = cva([\n \"-mx-1 my-1 h-px bg-border\",\n])\n\n/**\n * MenuShortcut variant styles\n */\nexport const menuShortcutVariants = cva([\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n])\n","\"use client\"\n\nimport type {\n MenuGroupProps,\n MenuItemProps,\n MenuLabelProps,\n MenuProps,\n MenuSeparatorProps,\n MenuShortcutProps,\n} from \"./Menu.types\"\nimport type { KeyboardEvent } from \"react\";\n\nimport { useCallback, useRef } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { ScrollArea } from \"../../layout/ScrollArea\"\nimport {\n menuGroupVariants,\n menuItemVariants,\n menuLabelVariants,\n menuSeparatorVariants,\n menuShortcutVariants,\n menuVariants,\n} from \"./Menu.variants\"\n\n/**\n * Menu - A navigable list of options with keyboard support.\n *\n * Base component for creating custom menus with full accessibility.\n *\n * @example\n * <Menu>\n * <MenuItem onSelect={() => console.log(\"Edit\")}>Edit</MenuItem>\n * <MenuItem onSelect={() => console.log(\"Copy\")}>Copy</MenuItem>\n * <MenuSeparator />\n * <MenuItem variant=\"destructive\">Delete</MenuItem>\n * </Menu>\n */\nfunction Menu({\n className,\n orientation = \"vertical\",\n maxHeight,\n children,\n ...props\n}: MenuProps) {\n const menuRef = useRef<HTMLDivElement>(null)\n\n /* eslint-disable sonarjs/cognitive-complexity -- Keyboard navigation requires handling multiple key cases */\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n const menu = menuRef.current\n if (!menu) return\n\n const items = [...menu.querySelectorAll('[role=\"menuitem\"]:not([data-disabled])')] as HTMLElement[]\n\n if (items.length === 0) return\n\n const currentIndex = items.findIndex((item) => item === document.activeElement)\n\n let nextIndex: null | number = null\n\n switch (event.key) {\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n event.preventDefault()\n nextIndex = currentIndex < items.length - 1 ? currentIndex + 1 : 0\n }\n break\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n event.preventDefault()\n nextIndex = currentIndex > 0 ? currentIndex - 1 : items.length - 1\n }\n break\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n event.preventDefault()\n nextIndex = currentIndex < items.length - 1 ? currentIndex + 1 : 0\n }\n break\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n event.preventDefault()\n nextIndex = currentIndex > 0 ? currentIndex - 1 : items.length - 1\n }\n break\n case \"Home\":\n event.preventDefault()\n nextIndex = 0\n break\n case \"End\":\n event.preventDefault()\n nextIndex = items.length - 1\n break\n }\n\n if (nextIndex !== null) {\n const nextItem = items[nextIndex]\n if (nextItem) {\n nextItem.focus()\n }\n }\n },\n [orientation]\n )\n /* eslint-enable sonarjs/cognitive-complexity */\n\n return (\n <div\n ref={menuRef}\n className={cn(menuVariants({ orientation }), className)}\n data-slot=\"menu\"\n role=\"menu\"\n onKeyDown={handleKeyDown}\n {...props}\n >\n {maxHeight == null ? (\n children\n ) : (\n <ScrollArea className=\"w-full\" style={{ maxHeight }}>\n {children}\n </ScrollArea>\n )}\n </div>\n )\n}\n\n/**\n * MenuItem - Individual menu item with optional variants.\n */\nfunction MenuItem({\n className,\n variant = \"default\",\n inset = false,\n selected = false,\n onSelect,\n disabled = false,\n children,\n onClick,\n onKeyDown,\n ...props\n}: MenuItemProps) {\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled) return\n onClick?.(event)\n onSelect?.()\n },\n [disabled, onClick, onSelect]\n )\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(event)\n if (disabled) return\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault()\n onSelect?.()\n }\n },\n [disabled, onKeyDown, onSelect]\n )\n\n return (\n <button\n aria-disabled={disabled || undefined}\n aria-selected={selected || undefined}\n className={cn(menuItemVariants({ variant, inset, selected }), className)}\n data-disabled={disabled || undefined}\n data-slot=\"menu-item\"\n role=\"menuitem\"\n tabIndex={disabled ? -1 : 0}\n type=\"button\"\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...props}\n >\n {children}\n </button>\n )\n}\n\n/**\n * MenuGroup - Groups related menu items together.\n */\nfunction MenuGroup({\n className,\n label,\n children,\n ...props\n}: MenuGroupProps) {\n return (\n <div\n aria-label={label}\n className={cn(menuGroupVariants(), className)}\n data-slot=\"menu-group\"\n role=\"group\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * MenuLabel - Label for a group of menu items.\n */\nfunction MenuLabel({\n className,\n inset = false,\n children,\n ...props\n}: MenuLabelProps) {\n return (\n <div\n className={cn(menuLabelVariants({ inset }), className)}\n data-slot=\"menu-label\"\n {...props}\n >\n {children}\n </div>\n )\n}\n\n/**\n * MenuSeparator - Visual divider between menu items.\n */\nfunction MenuSeparator({ className, ...props }: MenuSeparatorProps) {\n return (\n <div\n className={cn(menuSeparatorVariants(), className)}\n data-slot=\"menu-separator\"\n role=\"separator\"\n {...props}\n />\n )\n}\n\n/**\n * MenuShortcut - Displays keyboard shortcut hint.\n */\nfunction MenuShortcut({ className, children, ...props }: MenuShortcutProps) {\n return (\n <span\n className={cn(menuShortcutVariants(), className)}\n data-slot=\"menu-shortcut\"\n {...props}\n >\n {children}\n </span>\n )\n}\n\nexport { Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, MenuShortcut }\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { cn } from './chunk-RVAYDRMA.js';
2
2
  import { cva } from 'class-variance-authority';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
 
@@ -103,5 +103,5 @@ function Stack({
103
103
  }
104
104
 
105
105
  export { Stack, stackVariants };
106
- //# sourceMappingURL=chunk-2IFYXJ3H.js.map
107
- //# sourceMappingURL=chunk-2IFYXJ3H.js.map
106
+ //# sourceMappingURL=chunk-DRIEZH7R.js.map
107
+ //# sourceMappingURL=chunk-DRIEZH7R.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/layout/Stack/Stack.variants.ts","../src/components/layout/Stack/Stack.tsx"],"names":[],"mappings":";;;;AAMO,IAAM,aAAA,GAAgB,IAAI,MAAA,EAAQ;AAAA,EACvC,QAAA,EAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOR,SAAA,EAAW;AAAA,MACT,MAAA,EAAQ,UAAA;AAAA,MACR,GAAA,EAAK,UAAA;AAAA,MACL,IAAA,EAAM;AAAA,KACR;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA,EAAS;AAAA,MACP,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG;AAAA,KACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,KAAA,EAAO;AAAA,MACL,KAAA,EAAO,aAAA;AAAA,MACP,MAAA,EAAQ,cAAA;AAAA,MACR,GAAA,EAAK,WAAA;AAAA,MACL,OAAA,EAAS;AAAA,KACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,OAAA,EAAS;AAAA,MACP,KAAA,EAAO,eAAA;AAAA,MACP,MAAA,EAAQ,gBAAA;AAAA,MACR,GAAA,EAAK,aAAA;AAAA,MACL,OAAA,EAAS,iBAAA;AAAA,MACT,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,cAAA;AAAA,MACN,KAAA,EAAO;AAAA;AACT,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,SAAA,EAAW,QAAA;AAAA,IACX,OAAA,EAAS,CAAA;AAAA,IACT,KAAA,EAAO,OAAA;AAAA,IACP,OAAA,EAAS,OAAA;AAAA,IACT,IAAA,EAAM;AAAA;AAEV,CAAC;AC/CD,SAAS,KAAA,CAAM;AAAA,EACb,IAAI,SAAA,GAAY,KAAA;AAAA,EAChB,SAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAe;AACb,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,aAAA,CAAc;AAAA,UACZ,SAAA;AAAA,UACA,OAAA;AAAA,UACA,KAAA;AAAA,UACA,OAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,QACD;AAAA,OACF;AAAA,MACA,gBAAA,EAAgB,SAAA;AAAA,MAChB,WAAA,EAAU,OAAA;AAAA,MACV,cAAA,EAAc,OAAA;AAAA,MACb,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-2IFYXJ3H.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * Stack variant styles\n * Utility component for organizing elements in rows or columns with consistent spacing\n */\nexport const stackVariants = cva(\"flex\", {\n variants: {\n /**\n * Direction of the stack\n * - column: Elements stacked vertically (default)\n * - row: Elements in a horizontal line\n * - wrap: Elements in a row that wraps to new lines\n */\n direction: {\n column: \"flex-col\",\n row: \"flex-row\",\n wrap: \"flex-row flex-wrap\",\n },\n /**\n * Spacing between elements (gap)\n */\n spacing: {\n 0: \"gap-0\",\n 1: \"gap-1\",\n 2: \"gap-2\",\n 3: \"gap-3\",\n 4: \"gap-4\",\n 6: \"gap-6\",\n 8: \"gap-8\",\n },\n /**\n * Cross axis alignment (align-items)\n * - start: Items at the start\n * - center: Items at the center\n * - end: Items at the end\n * - stretch: Items stretched to fill\n */\n align: {\n start: \"items-start\",\n center: \"items-center\",\n end: \"items-end\",\n stretch: \"items-stretch\",\n },\n /**\n * Main axis alignment (justify-content)\n * - start: Items at the start\n * - center: Items at the center\n * - end: Items at the end\n * - between: Space between items\n * - around: Space around items\n */\n justify: {\n start: \"justify-start\",\n center: \"justify-center\",\n end: \"justify-end\",\n between: \"justify-between\",\n around: \"justify-around\",\n },\n /**\n * Whether children should grow to fill available space\n */\n grow: {\n true: \"[&>*]:flex-1\",\n false: \"\",\n },\n },\n defaultVariants: {\n direction: \"column\",\n spacing: 4,\n align: \"start\",\n justify: \"start\",\n grow: false,\n },\n})\n\nexport type StackVariantProps = VariantProps<typeof stackVariants>\n","import type { StackProps } from \"./Stack.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { stackVariants } from \"./Stack.variants\"\n\n/**\n * Stack component for organizing elements in rows or columns\n *\n * A utility component that organizes child elements in a flexible box layout\n * with consistent spacing. Simplifies creating layouts without complex Tailwind classes.\n *\n * @example\n * ```tsx\n * <Stack spacing={4}>\n * <div>Item 1</div>\n * <div>Item 2</div>\n * </Stack>\n * ```\n *\n * @example\n * ```tsx\n * <Stack direction=\"row\" spacing={2} align=\"center\">\n * <Button>Save</Button>\n * <Button>Cancel</Button>\n * </Stack>\n * ```\n */\nfunction Stack({\n as: Component = \"div\",\n direction,\n spacing,\n align,\n justify,\n grow,\n className,\n ...props\n}: StackProps) {\n return (\n <Component\n className={cn(\n stackVariants({\n direction,\n spacing,\n align,\n justify,\n grow,\n }),\n className\n )}\n data-direction={direction}\n data-slot=\"stack\"\n data-spacing={spacing}\n {...props}\n />\n )\n}\n\nexport { Stack }\n"]}
1
+ {"version":3,"sources":["../src/components/layout/Stack/Stack.variants.ts","../src/components/layout/Stack/Stack.tsx"],"names":[],"mappings":";;;;AAMO,IAAM,aAAA,GAAgB,IAAI,MAAA,EAAQ;AAAA,EACvC,QAAA,EAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOR,SAAA,EAAW;AAAA,MACT,MAAA,EAAQ,UAAA;AAAA,MACR,GAAA,EAAK,UAAA;AAAA,MACL,IAAA,EAAM;AAAA,KACR;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA,EAAS;AAAA,MACP,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG,OAAA;AAAA,MACH,CAAA,EAAG;AAAA,KACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,KAAA,EAAO;AAAA,MACL,KAAA,EAAO,aAAA;AAAA,MACP,MAAA,EAAQ,cAAA;AAAA,MACR,GAAA,EAAK,WAAA;AAAA,MACL,OAAA,EAAS;AAAA,KACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,OAAA,EAAS;AAAA,MACP,KAAA,EAAO,eAAA;AAAA,MACP,MAAA,EAAQ,gBAAA;AAAA,MACR,GAAA,EAAK,aAAA;AAAA,MACL,OAAA,EAAS,iBAAA;AAAA,MACT,MAAA,EAAQ;AAAA,KACV;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA,EAAM;AAAA,MACJ,IAAA,EAAM,cAAA;AAAA,MACN,KAAA,EAAO;AAAA;AACT,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,SAAA,EAAW,QAAA;AAAA,IACX,OAAA,EAAS,CAAA;AAAA,IACT,KAAA,EAAO,OAAA;AAAA,IACP,OAAA,EAAS,OAAA;AAAA,IACT,IAAA,EAAM;AAAA;AAEV,CAAC;AC/CD,SAAS,KAAA,CAAM;AAAA,EACb,IAAI,SAAA,GAAY,KAAA;AAAA,EAChB,SAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAe;AACb,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,aAAA,CAAc;AAAA,UACZ,SAAA;AAAA,UACA,OAAA;AAAA,UACA,KAAA;AAAA,UACA,OAAA;AAAA,UACA;AAAA,SACD,CAAA;AAAA,QACD;AAAA,OACF;AAAA,MACA,gBAAA,EAAgB,SAAA;AAAA,MAChB,WAAA,EAAU,OAAA;AAAA,MACV,cAAA,EAAc,OAAA;AAAA,MACb,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-DRIEZH7R.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * Stack variant styles\n * Utility component for organizing elements in rows or columns with consistent spacing\n */\nexport const stackVariants = cva(\"flex\", {\n variants: {\n /**\n * Direction of the stack\n * - column: Elements stacked vertically (default)\n * - row: Elements in a horizontal line\n * - wrap: Elements in a row that wraps to new lines\n */\n direction: {\n column: \"flex-col\",\n row: \"flex-row\",\n wrap: \"flex-row flex-wrap\",\n },\n /**\n * Spacing between elements (gap)\n */\n spacing: {\n 0: \"gap-0\",\n 1: \"gap-1\",\n 2: \"gap-2\",\n 3: \"gap-3\",\n 4: \"gap-4\",\n 6: \"gap-6\",\n 8: \"gap-8\",\n },\n /**\n * Cross axis alignment (align-items)\n * - start: Items at the start\n * - center: Items at the center\n * - end: Items at the end\n * - stretch: Items stretched to fill\n */\n align: {\n start: \"items-start\",\n center: \"items-center\",\n end: \"items-end\",\n stretch: \"items-stretch\",\n },\n /**\n * Main axis alignment (justify-content)\n * - start: Items at the start\n * - center: Items at the center\n * - end: Items at the end\n * - between: Space between items\n * - around: Space around items\n */\n justify: {\n start: \"justify-start\",\n center: \"justify-center\",\n end: \"justify-end\",\n between: \"justify-between\",\n around: \"justify-around\",\n },\n /**\n * Whether children should grow to fill available space\n */\n grow: {\n true: \"[&>*]:flex-1\",\n false: \"\",\n },\n },\n defaultVariants: {\n direction: \"column\",\n spacing: 4,\n align: \"start\",\n justify: \"start\",\n grow: false,\n },\n})\n\nexport type StackVariantProps = VariantProps<typeof stackVariants>\n","import type { StackProps } from \"./Stack.types\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { stackVariants } from \"./Stack.variants\"\n\n/**\n * Stack component for organizing elements in rows or columns\n *\n * A utility component that organizes child elements in a flexible box layout\n * with consistent spacing. Simplifies creating layouts without complex Tailwind classes.\n *\n * @example\n * ```tsx\n * <Stack spacing={4}>\n * <div>Item 1</div>\n * <div>Item 2</div>\n * </Stack>\n * ```\n *\n * @example\n * ```tsx\n * <Stack direction=\"row\" spacing={2} align=\"center\">\n * <Button>Save</Button>\n * <Button>Cancel</Button>\n * </Stack>\n * ```\n */\nfunction Stack({\n as: Component = \"div\",\n direction,\n spacing,\n align,\n justify,\n grow,\n className,\n ...props\n}: StackProps) {\n return (\n <Component\n className={cn(\n stackVariants({\n direction,\n spacing,\n align,\n justify,\n grow,\n }),\n className\n )}\n data-direction={direction}\n data-slot=\"stack\"\n data-spacing={spacing}\n {...props}\n />\n )\n}\n\nexport { Stack }\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { cn } from './chunk-RVAYDRMA.js';
2
2
  import * as HoverCardPrimitive from '@radix-ui/react-hover-card';
3
3
  import 'react';
4
4
  import { cva } from 'class-variance-authority';
@@ -49,5 +49,5 @@ function HoverCardContent({
49
49
  }
50
50
 
51
51
  export { HoverCard, HoverCardContent, HoverCardTrigger };
52
- //# sourceMappingURL=chunk-VWW3DJKI.js.map
53
- //# sourceMappingURL=chunk-VWW3DJKI.js.map
52
+ //# sourceMappingURL=chunk-E6SAO2CY.js.map
53
+ //# sourceMappingURL=chunk-E6SAO2CY.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/data-display/HoverCard/HoverCard.variants.ts","../src/components/data-display/HoverCard/HoverCard.tsx"],"names":[],"mappings":";;;;;;AAUO,IAAM,wBAAA,GAA2B,GAAA;AAAA;AAAA,EAEtC,omBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,iFAAA;AAAA,QACJ,OAAA,EAAS,2FAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ,CAAA;ACnBA,SAAS,SAAA,CAAU;AAAA,EACjB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAA2B,kBAAA,CAAA,IAAA,EAAnB,EAAwB,WAAA,EAAU,YAAA,EAAc,GAAG,KAAA,EAAO,CAAA;AACpE;AAEA,SAAS,gBAAA,CAAiB;AAAA,EACxB,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,2BACsB,kBAAA,CAAA,OAAA,EAAnB,EAA2B,WAAA,EAAU,oBAAA,EAAsB,GAAG,KAAA,EAAO,CAAA;AAE1E;AAEA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,KAAA,GAAQ,QAAA;AAAA,EACR,UAAA,GAAa,CAAA;AAAA,EACb,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,uBACE,GAAA,CAAoB,kBAAA,CAAA,MAAA,EAAnB,EAA0B,WAAA,EAAU,mBAAA,EACnC,QAAA,kBAAA,GAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB;AAAA,MACC,KAAA;AAAA,MACA,SAAA,EAAW,EAAA,CAAG,wBAAA,EAAyB,EAAG,SAAS,CAAA;AAAA,MACnD,WAAA,EAAU,oBAAA;AAAA,MACV,UAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN,EACF,CAAA;AAEJ","file":"chunk-VWW3DJKI.js","sourcesContent":["// HoverCard/HoverCard.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * HoverCard content style variants using CVA\n *\n * Controls the popover appearance when hovering.\n *\n * @see https://cva.style/docs\n */\nexport const hoverCardContentVariants = cva(\n // Base styles (always applied)\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[var(--hover-card-content-z-index)] origin-(--radix-hover-card-content-transform-origin) rounded-[var(--hover-card-content-radius)] border-[var(--hover-card-content-border-width)] shadow-[var(--hover-card-content-shadow)] outline-hidden\",\n {\n variants: {\n size: {\n sm: \"w-[var(--hover-card-content-width-sm)] p-[var(--hover-card-content-padding-sm)]\",\n default: \"w-[var(--hover-card-content-width-default)] p-[var(--hover-card-content-padding-default)]\",\n lg: \"w-[var(--hover-card-content-width-lg)] p-[var(--hover-card-content-padding-lg)]\",\n },\n },\n defaultVariants: {\n size: \"default\",\n },\n }\n)\n\n// Export variant prop types\nexport type HoverCardContentVariantProps = VariantProps<typeof hoverCardContentVariants>\n","import * as HoverCardPrimitive from \"@radix-ui/react-hover-card\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { hoverCardContentVariants } from \"./HoverCard.variants\"\n\nfunction HoverCard({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />\n}\n\nfunction HoverCardTrigger({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return (\n <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />\n )\n}\n\nfunction HoverCardContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n align={align}\n className={cn(hoverCardContentVariants(), className)}\n data-slot=\"hover-card-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n )\n}\n\nexport { HoverCard, HoverCardContent, HoverCardTrigger }\n"]}
1
+ {"version":3,"sources":["../src/components/data-display/HoverCard/HoverCard.variants.ts","../src/components/data-display/HoverCard/HoverCard.tsx"],"names":[],"mappings":";;;;;;AAUO,IAAM,wBAAA,GAA2B,GAAA;AAAA;AAAA,EAEtC,omBAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,iFAAA;AAAA,QACJ,OAAA,EAAS,2FAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM;AAAA;AACR;AAEJ,CAAA;ACnBA,SAAS,SAAA,CAAU;AAAA,EACjB,GAAG;AACL,CAAA,EAAyD;AACvD,EAAA,2BAA2B,kBAAA,CAAA,IAAA,EAAnB,EAAwB,WAAA,EAAU,YAAA,EAAc,GAAG,KAAA,EAAO,CAAA;AACpE;AAEA,SAAS,gBAAA,CAAiB;AAAA,EACxB,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,2BACsB,kBAAA,CAAA,OAAA,EAAnB,EAA2B,WAAA,EAAU,oBAAA,EAAsB,GAAG,KAAA,EAAO,CAAA;AAE1E;AAEA,SAAS,gBAAA,CAAiB;AAAA,EACxB,SAAA;AAAA,EACA,KAAA,GAAQ,QAAA;AAAA,EACR,UAAA,GAAa,CAAA;AAAA,EACb,GAAG;AACL,CAAA,EAA4D;AAC1D,EAAA,uBACE,GAAA,CAAoB,kBAAA,CAAA,MAAA,EAAnB,EAA0B,WAAA,EAAU,mBAAA,EACnC,QAAA,kBAAA,GAAA;AAAA,IAAoB,kBAAA,CAAA,OAAA;AAAA,IAAnB;AAAA,MACC,KAAA;AAAA,MACA,SAAA,EAAW,EAAA,CAAG,wBAAA,EAAyB,EAAG,SAAS,CAAA;AAAA,MACnD,WAAA,EAAU,oBAAA;AAAA,MACV,UAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN,EACF,CAAA;AAEJ","file":"chunk-E6SAO2CY.js","sourcesContent":["// HoverCard/HoverCard.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * HoverCard content style variants using CVA\n *\n * Controls the popover appearance when hovering.\n *\n * @see https://cva.style/docs\n */\nexport const hoverCardContentVariants = cva(\n // Base styles (always applied)\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[var(--hover-card-content-z-index)] origin-(--radix-hover-card-content-transform-origin) rounded-[var(--hover-card-content-radius)] border-[var(--hover-card-content-border-width)] shadow-[var(--hover-card-content-shadow)] outline-hidden\",\n {\n variants: {\n size: {\n sm: \"w-[var(--hover-card-content-width-sm)] p-[var(--hover-card-content-padding-sm)]\",\n default: \"w-[var(--hover-card-content-width-default)] p-[var(--hover-card-content-padding-default)]\",\n lg: \"w-[var(--hover-card-content-width-lg)] p-[var(--hover-card-content-padding-lg)]\",\n },\n },\n defaultVariants: {\n size: \"default\",\n },\n }\n)\n\n// Export variant prop types\nexport type HoverCardContentVariantProps = VariantProps<typeof hoverCardContentVariants>\n","import * as HoverCardPrimitive from \"@radix-ui/react-hover-card\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { hoverCardContentVariants } from \"./HoverCard.variants\"\n\nfunction HoverCard({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />\n}\n\nfunction HoverCardTrigger({\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return (\n <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />\n )\n}\n\nfunction HoverCardContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n align={align}\n className={cn(hoverCardContentVariants(), className)}\n data-slot=\"hover-card-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n )\n}\n\nexport { HoverCard, HoverCardContent, HoverCardTrigger }\n"]}
@@ -1,5 +1,5 @@
1
- import { Label } from './chunk-KA7747GR.js';
2
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { Label } from './chunk-7Y325TBV.js';
2
+ import { cn } from './chunk-RVAYDRMA.js';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import * as React from 'react';
5
5
  import { FormProvider, Controller, useFormContext, useFormState } from 'react-hook-form';
@@ -155,5 +155,5 @@ function FormMessage({
155
155
  }
156
156
 
157
157
  export { Form, FormControl, FormDescription, FormField, FormFieldContext, FormItem, FormItemContext, FormLabel, FormMessage, formDescriptionVariants, formItemVariants, formLabelVariants, formMessageVariants, useFormField };
158
- //# sourceMappingURL=chunk-5ACHKT35.js.map
159
- //# sourceMappingURL=chunk-5ACHKT35.js.map
158
+ //# sourceMappingURL=chunk-EDSIOUUR.js.map
159
+ //# sourceMappingURL=chunk-EDSIOUUR.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/forms/Form/Form.variants.ts","../src/components/forms/Form/Form.tsx"],"names":[],"mappings":"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","file":"chunk-5ACHKT35.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * FormItem variant styles using CVA\n *\n * Controls spacing and layout for form field containers.\n */\nexport const formItemVariants = cva(\"grid gap-2\", {\n variants: {\n spacing: {\n default: \"gap-2\",\n tight: \"gap-1\",\n loose: \"gap-3\",\n },\n },\n defaultVariants: {\n spacing: \"default\",\n },\n})\n\n/**\n * FormLabel variant styles using CVA\n *\n * Handles label styling with error state support.\n */\nexport const formLabelVariants = cva(\n \"text-[length:var(--form-label-size)] font-[var(--form-label-weight)] text-[color:var(--form-label-fg)] leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n {\n variants: {\n error: {\n true: \"text-[color:var(--form-error-fg)]\",\n false: \"\",\n },\n },\n defaultVariants: {\n error: false,\n },\n }\n)\n\n/**\n * FormDescription variant styles using CVA\n *\n * Provides consistent styling for field helper text.\n */\nexport const formDescriptionVariants = cva(\"text-muted-foreground text-sm\", {\n variants: {\n size: {\n default: \"text-sm\",\n small: \"text-xs\",\n },\n },\n defaultVariants: {\n size: \"default\",\n },\n})\n\n/**\n * FormMessage variant styles using CVA\n *\n * Styles validation messages with different states (error, success).\n */\nexport const formMessageVariants = cva(\"text-sm font-medium\", {\n variants: {\n state: {\n error: \"text-destructive\",\n success: \"text-success\",\n info: \"text-muted-foreground\",\n },\n },\n defaultVariants: {\n state: \"error\",\n },\n})\n\n// Export variant prop types\nexport type FormItemVariantProps = VariantProps<typeof formItemVariants>\nexport type FormLabelVariantProps = VariantProps<typeof formLabelVariants>\nexport type FormDescriptionVariantProps = VariantProps<\n typeof formDescriptionVariants\n>\nexport type FormMessageVariantProps = VariantProps<typeof formMessageVariants>\n","\"use client\"\n\nimport type {\n FormControlProps,\n FormDescriptionProps,\n FormFieldContextValue,\n FormItemContextValue,\n FormItemProps,\n FormLabelProps,\n FormMessageProps,\n} from \"./Form.types\"\n\nimport { Slot } from \"@radix-ui/react-slot\"\nimport * as React from \"react\"\nimport {\n Controller,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n FormProvider,\n useFormContext,\n useFormState,\n} from \"react-hook-form\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Label } from \"../../primitives/Label\"\nimport {\n formDescriptionVariants,\n formItemVariants,\n formLabelVariants,\n formMessageVariants,\n} from \"./Form.variants\"\n\nconst Form = FormProvider\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue\n)\n\nfunction FormField<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({ ...props }: ControllerProps<TFieldValues, TName>) {\n return (\n <FormFieldContext value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = React.use(FormFieldContext)\n const itemContext = React.use(FormItemContext)\n const { getFieldState } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n const { id } = itemContext\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n)\n\nfunction FormItem({ className, spacing, ...props }: FormItemProps) {\n const id = React.useId()\n\n return (\n <FormItemContext value={{ id }}>\n <div\n className={cn(formItemVariants({ spacing }), className)}\n data-slot=\"form-item\"\n {...props}\n />\n </FormItemContext>\n )\n}\n\nfunction FormLabel({ className, ...props }: FormLabelProps) {\n const { error, formItemId } = useFormField()\n\n return (\n <Label\n className={cn(formLabelVariants({ error: !!error }), className)}\n data-error={!!error}\n data-slot=\"form-label\"\n htmlFor={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormControl({ ...props }: FormControlProps) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <Slot\n aria-describedby={\n !error\n ? formDescriptionId\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n data-slot=\"form-control\"\n id={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, size, ...props }: FormDescriptionProps) {\n const { formDescriptionId } = useFormField()\n\n return (\n <p\n className={cn(formDescriptionVariants({ size }), className)}\n data-slot=\"form-description\"\n id={formDescriptionId}\n {...props}\n />\n )\n}\n\nfunction FormMessage({\n className,\n state,\n children,\n ...props\n}: FormMessageProps) {\n const { error, formMessageId } = useFormField()\n const body = error ? (error.message ?? \"\") : children\n\n if (!body) {\n return null\n }\n\n return (\n <p\n className={cn(formMessageVariants({ state }), className)}\n data-slot=\"form-message\"\n id={formMessageId}\n role=\"alert\"\n {...props}\n >\n {body}\n </p>\n )\n}\n\nexport {\n Form,\n FormControl,\n FormDescription,\n FormField,\n FormFieldContext,\n FormItem,\n FormItemContext,\n FormLabel,\n FormMessage,\n useFormField,\n}\n"]}
1
+ {"version":3,"sources":["../src/components/forms/Form/Form.variants.ts","../src/components/forms/Form/Form.tsx"],"names":[],"mappings":"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","file":"chunk-EDSIOUUR.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * FormItem variant styles using CVA\n *\n * Controls spacing and layout for form field containers.\n */\nexport const formItemVariants = cva(\"grid gap-2\", {\n variants: {\n spacing: {\n default: \"gap-2\",\n tight: \"gap-1\",\n loose: \"gap-3\",\n },\n },\n defaultVariants: {\n spacing: \"default\",\n },\n})\n\n/**\n * FormLabel variant styles using CVA\n *\n * Handles label styling with error state support.\n */\nexport const formLabelVariants = cva(\n \"text-[length:var(--form-label-size)] font-[var(--form-label-weight)] text-[color:var(--form-label-fg)] leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n {\n variants: {\n error: {\n true: \"text-[color:var(--form-error-fg)]\",\n false: \"\",\n },\n },\n defaultVariants: {\n error: false,\n },\n }\n)\n\n/**\n * FormDescription variant styles using CVA\n *\n * Provides consistent styling for field helper text.\n */\nexport const formDescriptionVariants = cva(\"text-muted-foreground text-sm\", {\n variants: {\n size: {\n default: \"text-sm\",\n small: \"text-xs\",\n },\n },\n defaultVariants: {\n size: \"default\",\n },\n})\n\n/**\n * FormMessage variant styles using CVA\n *\n * Styles validation messages with different states (error, success).\n */\nexport const formMessageVariants = cva(\"text-sm font-medium\", {\n variants: {\n state: {\n error: \"text-destructive\",\n success: \"text-success\",\n info: \"text-muted-foreground\",\n },\n },\n defaultVariants: {\n state: \"error\",\n },\n})\n\n// Export variant prop types\nexport type FormItemVariantProps = VariantProps<typeof formItemVariants>\nexport type FormLabelVariantProps = VariantProps<typeof formLabelVariants>\nexport type FormDescriptionVariantProps = VariantProps<\n typeof formDescriptionVariants\n>\nexport type FormMessageVariantProps = VariantProps<typeof formMessageVariants>\n","\"use client\"\n\nimport type {\n FormControlProps,\n FormDescriptionProps,\n FormFieldContextValue,\n FormItemContextValue,\n FormItemProps,\n FormLabelProps,\n FormMessageProps,\n} from \"./Form.types\"\n\nimport { Slot } from \"@radix-ui/react-slot\"\nimport * as React from \"react\"\nimport {\n Controller,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n FormProvider,\n useFormContext,\n useFormState,\n} from \"react-hook-form\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Label } from \"../../primitives/Label\"\nimport {\n formDescriptionVariants,\n formItemVariants,\n formLabelVariants,\n formMessageVariants,\n} from \"./Form.variants\"\n\nconst Form = FormProvider\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue\n)\n\nfunction FormField<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({ ...props }: ControllerProps<TFieldValues, TName>) {\n return (\n <FormFieldContext value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = React.use(FormFieldContext)\n const itemContext = React.use(FormItemContext)\n const { getFieldState } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n const { id } = itemContext\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n)\n\nfunction FormItem({ className, spacing, ...props }: FormItemProps) {\n const id = React.useId()\n\n return (\n <FormItemContext value={{ id }}>\n <div\n className={cn(formItemVariants({ spacing }), className)}\n data-slot=\"form-item\"\n {...props}\n />\n </FormItemContext>\n )\n}\n\nfunction FormLabel({ className, ...props }: FormLabelProps) {\n const { error, formItemId } = useFormField()\n\n return (\n <Label\n className={cn(formLabelVariants({ error: !!error }), className)}\n data-error={!!error}\n data-slot=\"form-label\"\n htmlFor={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormControl({ ...props }: FormControlProps) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <Slot\n aria-describedby={\n !error\n ? formDescriptionId\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n data-slot=\"form-control\"\n id={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, size, ...props }: FormDescriptionProps) {\n const { formDescriptionId } = useFormField()\n\n return (\n <p\n className={cn(formDescriptionVariants({ size }), className)}\n data-slot=\"form-description\"\n id={formDescriptionId}\n {...props}\n />\n )\n}\n\nfunction FormMessage({\n className,\n state,\n children,\n ...props\n}: FormMessageProps) {\n const { error, formMessageId } = useFormField()\n const body = error ? (error.message ?? \"\") : children\n\n if (!body) {\n return null\n }\n\n return (\n <p\n className={cn(formMessageVariants({ state }), className)}\n data-slot=\"form-message\"\n id={formMessageId}\n role=\"alert\"\n {...props}\n >\n {body}\n </p>\n )\n}\n\nexport {\n Form,\n FormControl,\n FormDescription,\n FormField,\n FormFieldContext,\n FormItem,\n FormItemContext,\n FormLabel,\n FormMessage,\n useFormField,\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Divider } from './chunk-MAM6VUKD.js';
2
- import { cn } from './chunk-HRNDJU7D.js';
1
+ import { Divider } from './chunk-LCBB3N5H.js';
2
+ import { cn } from './chunk-RVAYDRMA.js';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import { cva } from 'class-variance-authority';
5
5
  import * as React from 'react';
@@ -194,5 +194,5 @@ function ButtonGroupItem({
194
194
  }
195
195
 
196
196
  export { ButtonGroup, ButtonGroupContext, ButtonGroupItem, ButtonGroupSeparator, ButtonGroupText, buttonGroupItemVariants, buttonGroupVariants, useButtonGroup };
197
- //# sourceMappingURL=chunk-G2CMEHW6.js.map
198
- //# sourceMappingURL=chunk-G2CMEHW6.js.map
197
+ //# sourceMappingURL=chunk-ELRIFGMN.js.map
198
+ //# sourceMappingURL=chunk-ELRIFGMN.js.map