@codefast/ui 0.2.22 → 0.2.24

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 (567) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/{chunk-CWVNPFGZ.js → chunk-2AZ4MW4T.js} +1 -1
  3. package/dist/chunk-2AZ4MW4T.js.map +1 -0
  4. package/dist/chunk-2GUGNIMN.cjs +2 -0
  5. package/dist/chunk-2GUGNIMN.cjs.map +1 -0
  6. package/dist/chunk-2YU62UV7.js +2 -0
  7. package/dist/chunk-2YU62UV7.js.map +1 -0
  8. package/dist/chunk-3K2NGYFD.cjs +2 -0
  9. package/dist/chunk-3K2NGYFD.cjs.map +1 -0
  10. package/dist/chunk-3QLOE6JT.cjs +2 -0
  11. package/dist/chunk-3QLOE6JT.cjs.map +1 -0
  12. package/dist/{chunk-QYZMBJFY.js → chunk-4BADV3FT.js} +2 -2
  13. package/dist/chunk-4BADV3FT.js.map +1 -0
  14. package/dist/{chunk-4OYK75XH.cjs → chunk-57Y4FSTL.cjs} +2 -2
  15. package/dist/chunk-57Y4FSTL.cjs.map +1 -0
  16. package/dist/chunk-5NVU3OSZ.js +2 -0
  17. package/dist/chunk-5NVU3OSZ.js.map +1 -0
  18. package/dist/{chunk-OK2YNCDD.cjs → chunk-5W4F5LEY.cjs} +2 -2
  19. package/dist/chunk-5W4F5LEY.cjs.map +1 -0
  20. package/dist/{chunk-2HQFST3N.cjs → chunk-62L2GZO7.cjs} +2 -2
  21. package/dist/chunk-62L2GZO7.cjs.map +1 -0
  22. package/dist/chunk-6LL5EQAE.cjs +2 -0
  23. package/dist/chunk-6LL5EQAE.cjs.map +1 -0
  24. package/dist/{chunk-PGKNHNSZ.cjs → chunk-74METGII.cjs} +1 -1
  25. package/dist/chunk-74METGII.cjs.map +1 -0
  26. package/dist/chunk-76DVQCMA.js +2 -0
  27. package/dist/chunk-76DVQCMA.js.map +1 -0
  28. package/dist/chunk-7DZQUICW.cjs +2 -0
  29. package/dist/chunk-7DZQUICW.cjs.map +1 -0
  30. package/dist/chunk-7LIPJFEV.cjs +2 -0
  31. package/dist/chunk-7LIPJFEV.cjs.map +1 -0
  32. package/dist/chunk-7RIKNXUQ.cjs +2 -0
  33. package/dist/chunk-7RIKNXUQ.cjs.map +1 -0
  34. package/dist/chunk-AJTEFLYJ.cjs +2 -0
  35. package/dist/chunk-AJTEFLYJ.cjs.map +1 -0
  36. package/dist/{chunk-46UZJXKE.js → chunk-AXBTXUF5.js} +2 -2
  37. package/dist/{chunk-46UZJXKE.js.map → chunk-AXBTXUF5.js.map} +1 -1
  38. package/dist/{chunk-HJPUT7OQ.js → chunk-AXOKJEVY.js} +2 -2
  39. package/dist/chunk-AXOKJEVY.js.map +1 -0
  40. package/dist/chunk-B4S3AVXY.cjs +2 -0
  41. package/dist/chunk-B4S3AVXY.cjs.map +1 -0
  42. package/dist/chunk-BBU6D4ST.js +2 -0
  43. package/dist/chunk-BBU6D4ST.js.map +1 -0
  44. package/dist/chunk-BTYNCXRY.js +2 -0
  45. package/dist/chunk-BTYNCXRY.js.map +1 -0
  46. package/dist/{chunk-ONU4ZNQP.js → chunk-BYLDBIZQ.js} +2 -2
  47. package/dist/{chunk-ONU4ZNQP.js.map → chunk-BYLDBIZQ.js.map} +1 -1
  48. package/dist/chunk-C2WGTATR.cjs +2 -0
  49. package/dist/chunk-C2WGTATR.cjs.map +1 -0
  50. package/dist/chunk-C6I24UU5.js +2 -0
  51. package/dist/chunk-C6I24UU5.js.map +1 -0
  52. package/dist/chunk-CPXZI54X.cjs +2 -0
  53. package/dist/chunk-CPXZI54X.cjs.map +1 -0
  54. package/dist/chunk-D76EFHBN.cjs +2 -0
  55. package/dist/chunk-D76EFHBN.cjs.map +1 -0
  56. package/dist/chunk-DQFISQYQ.js +2 -0
  57. package/dist/chunk-DQFISQYQ.js.map +1 -0
  58. package/dist/{chunk-YP7XMWG3.cjs → chunk-DRDC77KX.cjs} +2 -2
  59. package/dist/chunk-DRDC77KX.cjs.map +1 -0
  60. package/dist/chunk-DZXTYNCB.js +2 -0
  61. package/dist/chunk-DZXTYNCB.js.map +1 -0
  62. package/dist/chunk-EGY5ICBL.cjs +2 -0
  63. package/dist/chunk-EGY5ICBL.cjs.map +1 -0
  64. package/dist/chunk-FNLQQIZW.cjs +2 -0
  65. package/dist/chunk-FNLQQIZW.cjs.map +1 -0
  66. package/dist/chunk-FS4CRFFU.cjs +2 -0
  67. package/dist/chunk-FS4CRFFU.cjs.map +1 -0
  68. package/dist/chunk-GAE7GSMH.cjs +2 -0
  69. package/dist/chunk-GAE7GSMH.cjs.map +1 -0
  70. package/dist/chunk-GGPIDYQC.js +2 -0
  71. package/dist/chunk-GGPIDYQC.js.map +1 -0
  72. package/dist/chunk-GT6M2CAP.cjs +2 -0
  73. package/dist/chunk-GT6M2CAP.cjs.map +1 -0
  74. package/dist/{chunk-PWJMO7LF.cjs → chunk-GUB22J32.cjs} +2 -2
  75. package/dist/{chunk-PWJMO7LF.cjs.map → chunk-GUB22J32.cjs.map} +1 -1
  76. package/dist/chunk-GXBW3N3M.cjs +2 -0
  77. package/dist/chunk-GXBW3N3M.cjs.map +1 -0
  78. package/dist/chunk-H44NQWHN.cjs +2 -0
  79. package/dist/chunk-H44NQWHN.cjs.map +1 -0
  80. package/dist/chunk-HAVND45W.js +2 -0
  81. package/dist/chunk-HAVND45W.js.map +1 -0
  82. package/dist/chunk-HDL22SXW.cjs +2 -0
  83. package/dist/chunk-HDL22SXW.cjs.map +1 -0
  84. package/dist/chunk-HN2LADGF.cjs +2 -0
  85. package/dist/chunk-HN2LADGF.cjs.map +1 -0
  86. package/dist/chunk-HQ6DUL6D.js +2 -0
  87. package/dist/chunk-HQ6DUL6D.js.map +1 -0
  88. package/dist/chunk-HQBOID2K.js +2 -0
  89. package/dist/chunk-HQBOID2K.js.map +1 -0
  90. package/dist/chunk-HV4HLOTW.cjs +2 -0
  91. package/dist/chunk-HV4HLOTW.cjs.map +1 -0
  92. package/dist/chunk-I5SKL4NE.js +2 -0
  93. package/dist/chunk-I5SKL4NE.js.map +1 -0
  94. package/dist/chunk-IGCYTKJ7.js +2 -0
  95. package/dist/chunk-IGCYTKJ7.js.map +1 -0
  96. package/dist/chunk-IRFNIQ3S.js +2 -0
  97. package/dist/chunk-IRFNIQ3S.js.map +1 -0
  98. package/dist/{chunk-6EKIIH2A.js → chunk-JCMXN5SL.js} +2 -2
  99. package/dist/chunk-JCMXN5SL.js.map +1 -0
  100. package/dist/{chunk-YZHSPX6Y.cjs → chunk-JJ46AZUG.cjs} +2 -2
  101. package/dist/chunk-JJ46AZUG.cjs.map +1 -0
  102. package/dist/chunk-KRMPCH3E.js +2 -0
  103. package/dist/chunk-KRMPCH3E.js.map +1 -0
  104. package/dist/chunk-KT25BHLM.js +2 -0
  105. package/dist/chunk-KT25BHLM.js.map +1 -0
  106. package/dist/chunk-KX4STYPY.js +2 -0
  107. package/dist/chunk-KX4STYPY.js.map +1 -0
  108. package/dist/{chunk-4VEUMBAT.cjs → chunk-KXRMWFKE.cjs} +2 -2
  109. package/dist/chunk-KXRMWFKE.cjs.map +1 -0
  110. package/dist/chunk-KZZLDLIH.js +2 -0
  111. package/dist/chunk-KZZLDLIH.js.map +1 -0
  112. package/dist/{chunk-XSTVNTLV.js → chunk-L4TXGBGM.js} +2 -2
  113. package/dist/{chunk-XSTVNTLV.js.map → chunk-L4TXGBGM.js.map} +1 -1
  114. package/dist/chunk-LDAZP6I6.js +2 -0
  115. package/dist/chunk-LDAZP6I6.js.map +1 -0
  116. package/dist/chunk-LHOOK4QI.js +2 -0
  117. package/dist/chunk-LHOOK4QI.js.map +1 -0
  118. package/dist/chunk-LJEBU2VA.js +4 -0
  119. package/dist/chunk-LJEBU2VA.js.map +1 -0
  120. package/dist/chunk-LUOAGYB6.cjs +2 -0
  121. package/dist/chunk-LUOAGYB6.cjs.map +1 -0
  122. package/dist/chunk-LWZFDY6N.cjs +2 -0
  123. package/dist/chunk-LWZFDY6N.cjs.map +1 -0
  124. package/dist/chunk-LYULASEA.js +2 -0
  125. package/dist/chunk-LYULASEA.js.map +1 -0
  126. package/dist/{chunk-FA7EBRYX.cjs → chunk-M6ZEN65I.cjs} +2 -2
  127. package/dist/chunk-M6ZEN65I.cjs.map +1 -0
  128. package/dist/chunk-M7FNDRW7.cjs +2 -0
  129. package/dist/chunk-M7FNDRW7.cjs.map +1 -0
  130. package/dist/chunk-MDTVBZCP.js +2 -0
  131. package/dist/chunk-MDTVBZCP.js.map +1 -0
  132. package/dist/chunk-MI6EOUQI.cjs +2 -0
  133. package/dist/chunk-MI6EOUQI.cjs.map +1 -0
  134. package/dist/{chunk-YM5ZQJMZ.js → chunk-MUL2EY3O.js} +2 -2
  135. package/dist/chunk-MUL2EY3O.js.map +1 -0
  136. package/dist/{chunk-3LGRR4TI.cjs → chunk-PIJN35MC.cjs} +2 -2
  137. package/dist/{chunk-3LGRR4TI.cjs.map → chunk-PIJN35MC.cjs.map} +1 -1
  138. package/dist/chunk-PLQBG655.cjs +2 -0
  139. package/dist/chunk-PLQBG655.cjs.map +1 -0
  140. package/dist/chunk-PRRPNTUI.js +2 -0
  141. package/dist/chunk-PRRPNTUI.js.map +1 -0
  142. package/dist/chunk-Q2R7BKY2.cjs +2 -0
  143. package/dist/chunk-Q2R7BKY2.cjs.map +1 -0
  144. package/dist/{chunk-TTWAO7YU.cjs → chunk-QO5ZOLVS.cjs} +2 -2
  145. package/dist/chunk-QO5ZOLVS.cjs.map +1 -0
  146. package/dist/chunk-QVCV6SHI.js +2 -0
  147. package/dist/chunk-QVCV6SHI.js.map +1 -0
  148. package/dist/chunk-R4EO3PAD.cjs +2 -0
  149. package/dist/chunk-R4EO3PAD.cjs.map +1 -0
  150. package/dist/chunk-R4NBV7W4.cjs +2 -0
  151. package/dist/chunk-R4NBV7W4.cjs.map +1 -0
  152. package/dist/chunk-RD5ZOT6N.cjs +2 -0
  153. package/dist/chunk-RD5ZOT6N.cjs.map +1 -0
  154. package/dist/chunk-RQJY6UQZ.js +2 -0
  155. package/dist/chunk-RQJY6UQZ.js.map +1 -0
  156. package/dist/chunk-SRVIWHMN.cjs +2 -0
  157. package/dist/chunk-SRVIWHMN.cjs.map +1 -0
  158. package/dist/chunk-SSD6L5OR.js +2 -0
  159. package/dist/chunk-SSD6L5OR.js.map +1 -0
  160. package/dist/chunk-T4YGCOXD.js +2 -0
  161. package/dist/chunk-T4YGCOXD.js.map +1 -0
  162. package/dist/chunk-TAVXLFQE.js +2 -0
  163. package/dist/chunk-TAVXLFQE.js.map +1 -0
  164. package/dist/chunk-TB6L4INZ.js +2 -0
  165. package/dist/chunk-TB6L4INZ.js.map +1 -0
  166. package/dist/chunk-TLVUBHED.js +2 -0
  167. package/dist/chunk-TLVUBHED.js.map +1 -0
  168. package/dist/chunk-TPYKFY52.js +2 -0
  169. package/dist/chunk-TPYKFY52.js.map +1 -0
  170. package/dist/chunk-TUU4GFJ6.js +2 -0
  171. package/dist/chunk-TUU4GFJ6.js.map +1 -0
  172. package/dist/chunk-TZA6RQAF.js +2 -0
  173. package/dist/chunk-TZA6RQAF.js.map +1 -0
  174. package/dist/chunk-U2275H6S.cjs +2 -0
  175. package/dist/chunk-U2275H6S.cjs.map +1 -0
  176. package/dist/{chunk-AK26BZ5A.cjs → chunk-UGCN3YGM.cjs} +2 -2
  177. package/dist/{chunk-AK26BZ5A.cjs.map → chunk-UGCN3YGM.cjs.map} +1 -1
  178. package/dist/chunk-UQ5VJMRW.js +2 -0
  179. package/dist/chunk-UQ5VJMRW.js.map +1 -0
  180. package/dist/chunk-V2AYLOM5.js +2 -0
  181. package/dist/chunk-V2AYLOM5.js.map +1 -0
  182. package/dist/chunk-V3KAJCT6.js +2 -0
  183. package/dist/chunk-V3KAJCT6.js.map +1 -0
  184. package/dist/{chunk-FJUGGAT4.cjs → chunk-VEXA5WBY.cjs} +2 -2
  185. package/dist/chunk-VEXA5WBY.cjs.map +1 -0
  186. package/dist/chunk-VIZADH2K.cjs +2 -0
  187. package/dist/chunk-VIZADH2K.cjs.map +1 -0
  188. package/dist/chunk-VKG6MFL3.js +2 -0
  189. package/dist/chunk-VKG6MFL3.js.map +1 -0
  190. package/dist/chunk-VM7X5P6J.js +2 -0
  191. package/dist/chunk-VM7X5P6J.js.map +1 -0
  192. package/dist/chunk-WBWLWSHG.cjs +2 -0
  193. package/dist/chunk-WBWLWSHG.cjs.map +1 -0
  194. package/dist/chunk-WDUTGZTG.cjs +4 -0
  195. package/dist/chunk-WDUTGZTG.cjs.map +1 -0
  196. package/dist/{chunk-WUDXQ77W.cjs → chunk-WLZPSCYA.cjs} +2 -2
  197. package/dist/chunk-WLZPSCYA.cjs.map +1 -0
  198. package/dist/chunk-X5Z3T7HA.js +2 -0
  199. package/dist/chunk-X5Z3T7HA.js.map +1 -0
  200. package/dist/chunk-XC2CDZHC.js +2 -0
  201. package/dist/chunk-XC2CDZHC.js.map +1 -0
  202. package/dist/chunk-XHKU3O3L.js +2 -0
  203. package/dist/chunk-XHKU3O3L.js.map +1 -0
  204. package/dist/chunk-XJZWYO4Y.js +2 -0
  205. package/dist/chunk-XJZWYO4Y.js.map +1 -0
  206. package/dist/{chunk-NLWL4Y2E.cjs → chunk-XRR7KIOZ.cjs} +2 -2
  207. package/dist/chunk-XRR7KIOZ.cjs.map +1 -0
  208. package/dist/chunk-XYRJ3S6Z.cjs +2 -0
  209. package/dist/chunk-XYRJ3S6Z.cjs.map +1 -0
  210. package/dist/chunk-Y4EFTCNM.cjs +2 -0
  211. package/dist/chunk-Y4EFTCNM.cjs.map +1 -0
  212. package/dist/chunk-Z5FCLKN6.js +2 -0
  213. package/dist/chunk-Z5FCLKN6.js.map +1 -0
  214. package/dist/chunk-Z5QDQB2Y.js +2 -0
  215. package/dist/chunk-Z5QDQB2Y.js.map +1 -0
  216. package/dist/chunk-ZPQ2TVNB.js +2 -0
  217. package/dist/chunk-ZPQ2TVNB.js.map +1 -0
  218. package/dist/chunk-ZQYHFDUL.cjs +2 -0
  219. package/dist/chunk-ZQYHFDUL.cjs.map +1 -0
  220. package/dist/{chunk-LBFHFIWF.cjs → chunk-ZYHOIY4R.cjs} +2 -2
  221. package/dist/chunk-ZYHOIY4R.cjs.map +1 -0
  222. package/dist/components/accordion.cjs +1 -1
  223. package/dist/components/accordion.js +1 -1
  224. package/dist/components/alert-dialog.cjs +1 -1
  225. package/dist/components/alert-dialog.d.cts +1 -1
  226. package/dist/components/alert-dialog.d.ts +1 -1
  227. package/dist/components/alert-dialog.js +1 -1
  228. package/dist/components/alert.cjs +1 -1
  229. package/dist/components/alert.js +1 -1
  230. package/dist/components/badge.cjs +1 -1
  231. package/dist/components/badge.d.cts +24 -101
  232. package/dist/components/badge.d.ts +24 -101
  233. package/dist/components/badge.js +1 -1
  234. package/dist/components/button.cjs +1 -1
  235. package/dist/components/button.js +1 -1
  236. package/dist/components/calendar.cjs +1 -1
  237. package/dist/components/calendar.d.cts +4 -4
  238. package/dist/components/calendar.d.ts +4 -4
  239. package/dist/components/calendar.js +1 -1
  240. package/dist/components/card.cjs +1 -1
  241. package/dist/components/card.js +1 -1
  242. package/dist/components/carousel.cjs +1 -1
  243. package/dist/components/carousel.js +1 -1
  244. package/dist/components/chart.cjs +1 -1
  245. package/dist/components/chart.d.cts +1 -1
  246. package/dist/components/chart.d.ts +1 -1
  247. package/dist/components/chart.js +1 -1
  248. package/dist/components/checkbox-cards.cjs +1 -1
  249. package/dist/components/checkbox-cards.d.cts +1 -1
  250. package/dist/components/checkbox-cards.d.ts +1 -1
  251. package/dist/components/checkbox-cards.js +1 -1
  252. package/dist/components/checkbox-group.cjs +1 -1
  253. package/dist/components/checkbox-group.js +1 -1
  254. package/dist/components/checkbox.cjs +1 -1
  255. package/dist/components/checkbox.js +1 -1
  256. package/dist/components/collapsible.cjs +1 -1
  257. package/dist/components/collapsible.js +1 -1
  258. package/dist/components/command.cjs +1 -1
  259. package/dist/components/command.js +1 -1
  260. package/dist/components/context-menu.cjs +1 -1
  261. package/dist/components/context-menu.js +1 -1
  262. package/dist/components/data-table.cjs +1 -1
  263. package/dist/components/data-table.js +1 -1
  264. package/dist/components/dialog.cjs +1 -1
  265. package/dist/components/dialog.js +1 -1
  266. package/dist/components/drawer.cjs +1 -1
  267. package/dist/components/drawer.js +1 -1
  268. package/dist/components/dropdown-menu.cjs +1 -1
  269. package/dist/components/dropdown-menu.js +1 -1
  270. package/dist/components/form.cjs +1 -1
  271. package/dist/components/form.d.cts +4 -2
  272. package/dist/components/form.d.ts +4 -2
  273. package/dist/components/form.js +1 -1
  274. package/dist/components/hover-card.cjs +1 -1
  275. package/dist/components/hover-card.js +1 -1
  276. package/dist/components/input-number.cjs +1 -1
  277. package/dist/components/input-number.js +1 -1
  278. package/dist/components/input-otp.cjs +1 -1
  279. package/dist/components/input-otp.js +1 -1
  280. package/dist/components/input-password.cjs +1 -1
  281. package/dist/components/input-password.d.cts +1 -1
  282. package/dist/components/input-password.d.ts +1 -1
  283. package/dist/components/input-password.js +1 -1
  284. package/dist/components/input-search.cjs +1 -1
  285. package/dist/components/input-search.d.cts +1 -1
  286. package/dist/components/input-search.d.ts +1 -1
  287. package/dist/components/input-search.js +1 -1
  288. package/dist/components/input.cjs +1 -1
  289. package/dist/components/input.d.cts +1 -1
  290. package/dist/components/input.d.ts +1 -1
  291. package/dist/components/input.js +1 -1
  292. package/dist/components/label.cjs +1 -1
  293. package/dist/components/label.js +1 -1
  294. package/dist/components/menubar.cjs +1 -1
  295. package/dist/components/menubar.js +1 -1
  296. package/dist/components/navigation-menu.cjs +1 -1
  297. package/dist/components/navigation-menu.js +1 -1
  298. package/dist/components/pagination.cjs +1 -1
  299. package/dist/components/pagination.js +1 -1
  300. package/dist/components/popover.cjs +1 -1
  301. package/dist/components/popover.js +1 -1
  302. package/dist/components/radio-cards.cjs +1 -1
  303. package/dist/components/radio-cards.js +1 -1
  304. package/dist/components/radio-group.cjs +1 -1
  305. package/dist/components/radio-group.js +1 -1
  306. package/dist/components/radio.cjs +1 -1
  307. package/dist/components/radio.js +1 -1
  308. package/dist/components/resizable.cjs +1 -1
  309. package/dist/components/resizable.js +1 -1
  310. package/dist/components/scroll-area.cjs +1 -1
  311. package/dist/components/scroll-area.d.cts +14 -14
  312. package/dist/components/scroll-area.d.ts +14 -14
  313. package/dist/components/scroll-area.js +1 -1
  314. package/dist/components/select.cjs +1 -1
  315. package/dist/components/select.js +1 -1
  316. package/dist/components/separator.cjs +1 -1
  317. package/dist/components/separator.js +1 -1
  318. package/dist/components/sheet.cjs +1 -1
  319. package/dist/components/sheet.d.cts +30 -30
  320. package/dist/components/sheet.d.ts +30 -30
  321. package/dist/components/sheet.js +1 -1
  322. package/dist/components/sidebar.cjs +1 -1
  323. package/dist/components/sidebar.d.cts +9 -9
  324. package/dist/components/sidebar.d.ts +9 -9
  325. package/dist/components/sidebar.js +1 -1
  326. package/dist/components/skeleton.cjs +1 -1
  327. package/dist/components/skeleton.js +1 -1
  328. package/dist/components/slider.cjs +1 -1
  329. package/dist/components/slider.js +1 -1
  330. package/dist/components/sonner.cjs +1 -1
  331. package/dist/components/sonner.js +1 -1
  332. package/dist/components/spinner.cjs +1 -1
  333. package/dist/components/spinner.js +1 -1
  334. package/dist/components/switch.cjs +1 -1
  335. package/dist/components/switch.js +1 -1
  336. package/dist/components/table.cjs +1 -1
  337. package/dist/components/table.js +1 -1
  338. package/dist/components/tabs.cjs +1 -1
  339. package/dist/components/tabs.js +1 -1
  340. package/dist/components/textarea.cjs +1 -1
  341. package/dist/components/textarea.js +1 -1
  342. package/dist/components/toggle-group.cjs +1 -1
  343. package/dist/components/toggle-group.js +1 -1
  344. package/dist/components/toggle.cjs +1 -1
  345. package/dist/components/toggle.js +1 -1
  346. package/dist/components/tooltip.cjs +1 -1
  347. package/dist/components/tooltip.js +1 -1
  348. package/dist/index.cjs +1 -1
  349. package/dist/index.cjs.map +1 -1
  350. package/dist/index.css +2 -0
  351. package/dist/index.css.map +1 -0
  352. package/dist/index.d.cts +1 -1
  353. package/dist/index.d.ts +1 -1
  354. package/dist/index.js +1 -1
  355. package/dist/lib/logger.cjs +1 -1
  356. package/dist/lib/logger.js +1 -1
  357. package/dist/variants/button.variants.cjs +1 -1
  358. package/dist/variants/button.variants.d.cts +95 -95
  359. package/dist/variants/button.variants.d.ts +95 -95
  360. package/dist/variants/button.variants.js +1 -1
  361. package/dist/variants/input.variants.cjs +1 -1
  362. package/dist/variants/input.variants.d.cts +83 -83
  363. package/dist/variants/input.variants.d.ts +83 -83
  364. package/dist/variants/input.variants.js +1 -1
  365. package/dist/variants/toggle.variants.cjs +1 -1
  366. package/dist/variants/toggle.variants.d.cts +46 -88
  367. package/dist/variants/toggle.variants.d.ts +46 -88
  368. package/dist/variants/toggle.variants.js +1 -1
  369. package/package.json +20 -29
  370. package/dist/chunk-23EVLBKY.js +0 -2
  371. package/dist/chunk-23EVLBKY.js.map +0 -1
  372. package/dist/chunk-2HQFST3N.cjs.map +0 -1
  373. package/dist/chunk-2OAFUKSI.js +0 -2
  374. package/dist/chunk-2OAFUKSI.js.map +0 -1
  375. package/dist/chunk-2T5ATHNG.cjs +0 -2
  376. package/dist/chunk-2T5ATHNG.cjs.map +0 -1
  377. package/dist/chunk-2XAD6KHW.js +0 -2
  378. package/dist/chunk-2XAD6KHW.js.map +0 -1
  379. package/dist/chunk-3PQYLBF5.cjs +0 -2
  380. package/dist/chunk-3PQYLBF5.cjs.map +0 -1
  381. package/dist/chunk-3R4JJFSA.js +0 -2
  382. package/dist/chunk-3R4JJFSA.js.map +0 -1
  383. package/dist/chunk-4OYK75XH.cjs.map +0 -1
  384. package/dist/chunk-4VEUMBAT.cjs.map +0 -1
  385. package/dist/chunk-5AP5SOMK.cjs +0 -2
  386. package/dist/chunk-5AP5SOMK.cjs.map +0 -1
  387. package/dist/chunk-5WX3E22K.cjs +0 -2
  388. package/dist/chunk-5WX3E22K.cjs.map +0 -1
  389. package/dist/chunk-6EKIIH2A.js.map +0 -1
  390. package/dist/chunk-6SAOAD7N.js +0 -2
  391. package/dist/chunk-6SAOAD7N.js.map +0 -1
  392. package/dist/chunk-7AO2GOMC.cjs +0 -2
  393. package/dist/chunk-7AO2GOMC.cjs.map +0 -1
  394. package/dist/chunk-7X325ZDU.js +0 -2
  395. package/dist/chunk-7X325ZDU.js.map +0 -1
  396. package/dist/chunk-A5RWHIED.cjs +0 -2
  397. package/dist/chunk-A5RWHIED.cjs.map +0 -1
  398. package/dist/chunk-AEHJUTB6.js +0 -2
  399. package/dist/chunk-AEHJUTB6.js.map +0 -1
  400. package/dist/chunk-AGY7ZINL.js +0 -2
  401. package/dist/chunk-AGY7ZINL.js.map +0 -1
  402. package/dist/chunk-ARHU67E3.js +0 -2
  403. package/dist/chunk-ARHU67E3.js.map +0 -1
  404. package/dist/chunk-ASWVOLVY.js +0 -2
  405. package/dist/chunk-ASWVOLVY.js.map +0 -1
  406. package/dist/chunk-BQMMZOW2.cjs +0 -2
  407. package/dist/chunk-BQMMZOW2.cjs.map +0 -1
  408. package/dist/chunk-C57DD4MH.cjs +0 -2
  409. package/dist/chunk-C57DD4MH.cjs.map +0 -1
  410. package/dist/chunk-CMGARCLB.cjs +0 -2
  411. package/dist/chunk-CMGARCLB.cjs.map +0 -1
  412. package/dist/chunk-CWVNPFGZ.js.map +0 -1
  413. package/dist/chunk-D2MSNZGZ.js +0 -2
  414. package/dist/chunk-D2MSNZGZ.js.map +0 -1
  415. package/dist/chunk-D3CKUFYQ.cjs +0 -2
  416. package/dist/chunk-D3CKUFYQ.cjs.map +0 -1
  417. package/dist/chunk-DMDORTLF.js +0 -2
  418. package/dist/chunk-DMDORTLF.js.map +0 -1
  419. package/dist/chunk-DPD3MYJA.js +0 -2
  420. package/dist/chunk-DPD3MYJA.js.map +0 -1
  421. package/dist/chunk-DV2WTX6F.js +0 -2
  422. package/dist/chunk-DV2WTX6F.js.map +0 -1
  423. package/dist/chunk-DZFTFPGA.cjs +0 -2
  424. package/dist/chunk-DZFTFPGA.cjs.map +0 -1
  425. package/dist/chunk-E65CC5MR.cjs +0 -2
  426. package/dist/chunk-E65CC5MR.cjs.map +0 -1
  427. package/dist/chunk-EJIFLQRM.cjs +0 -2
  428. package/dist/chunk-EJIFLQRM.cjs.map +0 -1
  429. package/dist/chunk-ELGMNSNZ.js +0 -2
  430. package/dist/chunk-ELGMNSNZ.js.map +0 -1
  431. package/dist/chunk-EQKKLJNJ.js +0 -2
  432. package/dist/chunk-EQKKLJNJ.js.map +0 -1
  433. package/dist/chunk-F54E45OA.js +0 -2
  434. package/dist/chunk-F54E45OA.js.map +0 -1
  435. package/dist/chunk-FA7EBRYX.cjs.map +0 -1
  436. package/dist/chunk-FIYSKOEZ.cjs +0 -2
  437. package/dist/chunk-FIYSKOEZ.cjs.map +0 -1
  438. package/dist/chunk-FJUGGAT4.cjs.map +0 -1
  439. package/dist/chunk-FMJH72MR.js +0 -2
  440. package/dist/chunk-FMJH72MR.js.map +0 -1
  441. package/dist/chunk-FUVB7GYS.js +0 -2
  442. package/dist/chunk-FUVB7GYS.js.map +0 -1
  443. package/dist/chunk-GLQEDQFR.cjs +0 -2
  444. package/dist/chunk-GLQEDQFR.cjs.map +0 -1
  445. package/dist/chunk-HJPUT7OQ.js.map +0 -1
  446. package/dist/chunk-HTUQ65FG.js +0 -2
  447. package/dist/chunk-HTUQ65FG.js.map +0 -1
  448. package/dist/chunk-IGVEMKZX.js +0 -2
  449. package/dist/chunk-IGVEMKZX.js.map +0 -1
  450. package/dist/chunk-IPQ7USJI.js +0 -2
  451. package/dist/chunk-IPQ7USJI.js.map +0 -1
  452. package/dist/chunk-IRGIHT6Q.cjs +0 -2
  453. package/dist/chunk-IRGIHT6Q.cjs.map +0 -1
  454. package/dist/chunk-ISDNKWFY.js +0 -2
  455. package/dist/chunk-ISDNKWFY.js.map +0 -1
  456. package/dist/chunk-IW5SUYQ6.cjs +0 -2
  457. package/dist/chunk-IW5SUYQ6.cjs.map +0 -1
  458. package/dist/chunk-JRMDTSBT.cjs +0 -2
  459. package/dist/chunk-JRMDTSBT.cjs.map +0 -1
  460. package/dist/chunk-JWJ2UTIR.cjs +0 -2
  461. package/dist/chunk-JWJ2UTIR.cjs.map +0 -1
  462. package/dist/chunk-K23WCISZ.js +0 -4
  463. package/dist/chunk-K23WCISZ.js.map +0 -1
  464. package/dist/chunk-K3VON6TU.cjs +0 -2
  465. package/dist/chunk-K3VON6TU.cjs.map +0 -1
  466. package/dist/chunk-KH5HNZFJ.cjs +0 -2
  467. package/dist/chunk-KH5HNZFJ.cjs.map +0 -1
  468. package/dist/chunk-KJ52RDFA.js +0 -2
  469. package/dist/chunk-KJ52RDFA.js.map +0 -1
  470. package/dist/chunk-LBFHFIWF.cjs.map +0 -1
  471. package/dist/chunk-LTVOTU54.cjs +0 -2
  472. package/dist/chunk-LTVOTU54.cjs.map +0 -1
  473. package/dist/chunk-MOV4RJ6N.js +0 -2
  474. package/dist/chunk-MOV4RJ6N.js.map +0 -1
  475. package/dist/chunk-MSABUPTO.cjs +0 -2
  476. package/dist/chunk-MSABUPTO.cjs.map +0 -1
  477. package/dist/chunk-MTR3VABR.cjs +0 -2
  478. package/dist/chunk-MTR3VABR.cjs.map +0 -1
  479. package/dist/chunk-NLWL4Y2E.cjs.map +0 -1
  480. package/dist/chunk-NUTKI7MN.cjs +0 -2
  481. package/dist/chunk-NUTKI7MN.cjs.map +0 -1
  482. package/dist/chunk-NXC3EONN.js +0 -2
  483. package/dist/chunk-NXC3EONN.js.map +0 -1
  484. package/dist/chunk-O6Q7TNNG.js +0 -2
  485. package/dist/chunk-O6Q7TNNG.js.map +0 -1
  486. package/dist/chunk-OAB4NWE2.js +0 -2
  487. package/dist/chunk-OAB4NWE2.js.map +0 -1
  488. package/dist/chunk-OK2YNCDD.cjs.map +0 -1
  489. package/dist/chunk-OZBTMTRM.js +0 -2
  490. package/dist/chunk-OZBTMTRM.js.map +0 -1
  491. package/dist/chunk-PGD5STRH.cjs +0 -2
  492. package/dist/chunk-PGD5STRH.cjs.map +0 -1
  493. package/dist/chunk-PGKNHNSZ.cjs.map +0 -1
  494. package/dist/chunk-PS4ZPIDS.cjs +0 -4
  495. package/dist/chunk-PS4ZPIDS.cjs.map +0 -1
  496. package/dist/chunk-QB5NCYE4.cjs +0 -2
  497. package/dist/chunk-QB5NCYE4.cjs.map +0 -1
  498. package/dist/chunk-QLHV4Y57.js +0 -2
  499. package/dist/chunk-QLHV4Y57.js.map +0 -1
  500. package/dist/chunk-QQCKQCXV.js +0 -2
  501. package/dist/chunk-QQCKQCXV.js.map +0 -1
  502. package/dist/chunk-QU4VM5VF.js +0 -2
  503. package/dist/chunk-QU4VM5VF.js.map +0 -1
  504. package/dist/chunk-QYZMBJFY.js.map +0 -1
  505. package/dist/chunk-RX4LFU6W.cjs +0 -2
  506. package/dist/chunk-RX4LFU6W.cjs.map +0 -1
  507. package/dist/chunk-SFR34SQ2.js +0 -2
  508. package/dist/chunk-SFR34SQ2.js.map +0 -1
  509. package/dist/chunk-SPCGL26X.js +0 -2
  510. package/dist/chunk-SPCGL26X.js.map +0 -1
  511. package/dist/chunk-SSZKZXFM.js +0 -2
  512. package/dist/chunk-SSZKZXFM.js.map +0 -1
  513. package/dist/chunk-T6ATICRQ.js +0 -2
  514. package/dist/chunk-T6ATICRQ.js.map +0 -1
  515. package/dist/chunk-T6TKUY76.cjs +0 -2
  516. package/dist/chunk-T6TKUY76.cjs.map +0 -1
  517. package/dist/chunk-TR7XTVTB.cjs +0 -2
  518. package/dist/chunk-TR7XTVTB.cjs.map +0 -1
  519. package/dist/chunk-TTWAO7YU.cjs.map +0 -1
  520. package/dist/chunk-UDGC4CDE.js +0 -2
  521. package/dist/chunk-UDGC4CDE.js.map +0 -1
  522. package/dist/chunk-UKULSFKO.js +0 -2
  523. package/dist/chunk-UKULSFKO.js.map +0 -1
  524. package/dist/chunk-ULZZJB4X.js +0 -2
  525. package/dist/chunk-ULZZJB4X.js.map +0 -1
  526. package/dist/chunk-USJYG7MC.js +0 -2
  527. package/dist/chunk-USJYG7MC.js.map +0 -1
  528. package/dist/chunk-W3Y5Q4KW.cjs +0 -2
  529. package/dist/chunk-W3Y5Q4KW.cjs.map +0 -1
  530. package/dist/chunk-WH2BSQGH.js +0 -2
  531. package/dist/chunk-WH2BSQGH.js.map +0 -1
  532. package/dist/chunk-WNNUATHQ.cjs +0 -2
  533. package/dist/chunk-WNNUATHQ.cjs.map +0 -1
  534. package/dist/chunk-WPHGIH4B.cjs +0 -2
  535. package/dist/chunk-WPHGIH4B.cjs.map +0 -1
  536. package/dist/chunk-WRLVHZJ4.js +0 -2
  537. package/dist/chunk-WRLVHZJ4.js.map +0 -1
  538. package/dist/chunk-WUDXQ77W.cjs.map +0 -1
  539. package/dist/chunk-XCPSEB55.cjs +0 -2
  540. package/dist/chunk-XCPSEB55.cjs.map +0 -1
  541. package/dist/chunk-YA5ZRFA7.cjs +0 -2
  542. package/dist/chunk-YA5ZRFA7.cjs.map +0 -1
  543. package/dist/chunk-YJA5B6SE.cjs +0 -2
  544. package/dist/chunk-YJA5B6SE.cjs.map +0 -1
  545. package/dist/chunk-YJH4ARV4.js +0 -2
  546. package/dist/chunk-YJH4ARV4.js.map +0 -1
  547. package/dist/chunk-YJVH2ALW.js +0 -2
  548. package/dist/chunk-YJVH2ALW.js.map +0 -1
  549. package/dist/chunk-YM5ZQJMZ.js.map +0 -1
  550. package/dist/chunk-YP7XMWG3.cjs.map +0 -1
  551. package/dist/chunk-YZHSPX6Y.cjs.map +0 -1
  552. package/dist/chunk-Z4APHFUJ.cjs +0 -2
  553. package/dist/chunk-Z4APHFUJ.cjs.map +0 -1
  554. package/dist/chunk-ZIVKN2AV.js +0 -2
  555. package/dist/chunk-ZIVKN2AV.js.map +0 -1
  556. package/dist/chunk-ZSMC6CLH.js +0 -2
  557. package/dist/chunk-ZSMC6CLH.js.map +0 -1
  558. package/dist/chunk-ZZ7IIDWN.cjs +0 -2
  559. package/dist/chunk-ZZ7IIDWN.cjs.map +0 -1
  560. package/dist/styles.css +0 -2
  561. package/dist/styles.css.map +0 -1
  562. package/dist/tailwindcss/animate.cjs +0 -2
  563. package/dist/tailwindcss/animate.cjs.map +0 -1
  564. package/dist/tailwindcss/animate.d.cts +0 -5
  565. package/dist/tailwindcss/animate.d.ts +0 -5
  566. package/dist/tailwindcss/animate.js +0 -2
  567. package/dist/tailwindcss/animate.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-3PQYLBF5.cjs","../src/components/dropdown-menu.tsx"],"names":["DropdownMenu","DropdownMenuTrigger","DropdownMenuGroup","DropdownMenuSub","DropdownMenuRadioGroup","DropdownMenuSubTrigger","children","className","inset","props","jsxs","cn","jsx","ChevronRightIcon","DropdownMenuSubContent","DropdownMenuContent","sideOffset","DropdownMenuItem","DropdownMenuCheckboxItem","checked","CheckIcon","DropdownMenuRadioItem","DotIcon","DropdownMenuLabel","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuArrow"],"mappings":"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","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-3PQYLBF5.cjs","sourcesContent":[null,"import type { ComponentProps, JSX } from 'react';\n\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { CheckIcon, ChevronRightIcon, DotIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenu\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuProps = ComponentProps<typeof DropdownMenuPrimitive.Root>;\nconst DropdownMenu = DropdownMenuPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuTrigger\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuTriggerProps = ComponentProps<typeof DropdownMenuPrimitive.Trigger>;\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuGroup\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuGroupProps = ComponentProps<typeof DropdownMenuPrimitive.Group>;\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSub\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSubProps = ComponentProps<typeof DropdownMenuPrimitive.Sub>;\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuRadioGroupProps = ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>;\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ninterface DropdownMenuSubTriggerProps\n extends ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> {\n inset?: boolean;\n}\n\nfunction DropdownMenuSubTrigger({\n children,\n className,\n inset,\n ...props\n}: DropdownMenuSubTriggerProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.SubTrigger\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubContent\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSubContentProps = DropdownMenuPrimitive.DropdownMenuSubContentProps;\n\nfunction DropdownMenuSubContent({ className, ...props }: DropdownMenuSubContentProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.SubContent\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuContent\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuContentProps = ComponentProps<typeof DropdownMenuPrimitive.Content>;\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 6,\n ...props\n}: DropdownMenuContentProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n sideOffset={sideOffset}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuItem\n * -------------------------------------------------------------------------- */\n\ninterface DropdownMenuItemProps extends ComponentProps<typeof DropdownMenuPrimitive.Item> {\n inset?: boolean;\n}\n\nfunction DropdownMenuItem({ className, inset, ...props }: DropdownMenuItemProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.Item\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuCheckboxItem\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuCheckboxItemProps = ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>;\n\nfunction DropdownMenuCheckboxItem({\n checked,\n children,\n className,\n ...props\n}: DropdownMenuCheckboxItemProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n checked={checked}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuRadioItem\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuRadioItemProps = ComponentProps<typeof DropdownMenuPrimitive.RadioItem>;\n\nfunction DropdownMenuRadioItem({\n children,\n className,\n ...props\n}: DropdownMenuRadioItemProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.RadioItem\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <DotIcon className=\"size-4 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuLabel\n * -------------------------------------------------------------------------- */\n\ninterface DropdownMenuLabelProps extends ComponentProps<typeof DropdownMenuPrimitive.Label> {\n inset?: boolean;\n}\n\nfunction DropdownMenuLabel({ className, inset, ...props }: DropdownMenuLabelProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.Label\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex items-center text-sm font-semibold',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSeparator\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSeparatorProps = ComponentProps<typeof DropdownMenuPrimitive.Separator>;\n\nfunction DropdownMenuSeparator({ className, ...props }: DropdownMenuSeparatorProps): JSX.Element {\n return (\n <DropdownMenuPrimitive.Separator\n className={cn('bg-muted mx-2 my-1 h-px', className)}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuShortcut\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuShortcutProps = ComponentProps<'span'>;\n\nfunction DropdownMenuShortcut({ className, ...props }: DropdownMenuShortcutProps): JSX.Element {\n return (\n <span className={cn('ml-auto text-xs tracking-widest opacity-60', className)} {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuArrow\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuArrowProps = DropdownMenuPrimitive.DropdownMenuArrowProps;\n\nfunction DropdownMenuArrow({ className, ...props }: DropdownMenuArrowProps): JSX.Element {\n return <DropdownMenuPrimitive.Arrow className={cn('fill-popover', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type {\n DropdownMenuArrowProps,\n DropdownMenuCheckboxItemProps,\n DropdownMenuContentProps,\n DropdownMenuGroupProps,\n DropdownMenuItemProps,\n DropdownMenuLabelProps,\n DropdownMenuProps,\n DropdownMenuRadioGroupProps,\n DropdownMenuRadioItemProps,\n DropdownMenuSeparatorProps,\n DropdownMenuShortcutProps,\n DropdownMenuSubContentProps,\n DropdownMenuSubProps,\n DropdownMenuSubTriggerProps,\n DropdownMenuTriggerProps,\n};\nexport {\n DropdownMenu,\n DropdownMenuArrow,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n};\n"]}
@@ -1,2 +0,0 @@
1
- "use client";import{a as B,b as X,c as J,d as T}from"./chunk-ELGMNSNZ.js";import{a as I,c as N,g as _,h as k}from"./chunk-YJVH2ALW.js";import{a as P}from"./chunk-46UZJXKE.js";import{a as E}from"./chunk-6EKIIH2A.js";import{a as M}from"./chunk-FMJH72MR.js";import{a as y}from"./chunk-QU4VM5VF.js";import{a as o}from"./chunk-OKUFCFYT.js";import{useMediaQuery as R}from"@codefast/hooks";import{Slot as g}from"@radix-ui/react-slot";import{VisuallyHidden as H}from"@radix-ui/react-visually-hidden";import K from"js-cookie";import{PanelLeftIcon as L}from"lucide-react";import{createContext as V,useCallback as z,useContext as F,useEffect as W,useMemo as O,useState as A}from"react";import{tv as j}from"tailwind-variants";import{jsx as a,jsxs as c}from"react/jsx-runtime";var q="sidebar:state",$=7,Q="16rem",U="18rem",Y="3rem",Z="b",ee=768,D=V(null);function x(){let e=F(D);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}function ge({children:e,className:t,defaultOpen:n=!0,onOpenChange:r,open:i,style:l,...f}){let p=R(`(max-width: ${ee-1}px)`),[u,d]=A(!1),[S,w]=A(n),m=i??S,v=z(s=>{let b=typeof s=="function"?s(m):s;r?r(b):w(b),K.set(q,String(b),{expires:$,path:"/"})},[r,m]),h=z(()=>{p?d(s=>!s):v(s=>!s)},[p,v,d]);W(()=>{let s=b=>{b.key===Z&&(b.metaKey||b.ctrlKey)&&(b.preventDefault(),h())};return window.addEventListener("keydown",s),()=>{window.removeEventListener("keydown",s)}},[h]);let C=m?"expanded":"collapsed",G=O(()=>({isMobile:p,open:m,openMobile:u,setOpen:v,setOpenMobile:d,state:C,toggleSidebar:h}),[C,m,v,p,u,d,h]);return a(D.Provider,{value:G,children:a(B,{delayDuration:0,children:a("div",{className:o("group/sidebar-wrapper has-[[data-variant=inset]]:bg-sidebar flex min-h-svh w-full",t),style:{"--sidebar-width":Q,"--sidebar-width-icon":Y,...l},...f,children:e})})})}function Se({children:e,className:t,collapsible:n="offcanvas",side:r="left",variant:i="sidebar",...l}){let{isMobile:f,openMobile:p,setOpenMobile:u,state:d}=x();return n==="none"?a("div",{className:o("bg-sidebar text-sidebar-foreground w-(--sidebar-width) flex h-full flex-col",t),...l,children:e}):f?a(I,{open:p,onOpenChange:u,...l,children:c(N,{className:"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden","data-mobile":"true","data-sidebar":"sidebar",side:r,style:{"--sidebar-width":U},children:[c(H,{children:[a(_,{children:"Sidebar"}),a(k,{children:"Press escape to close the sidebar"})]}),a("div",{className:"flex h-full w-full flex-col",children:e})]})}):c("div",{className:"text-sidebar-foreground group peer hidden md:block","data-collapsible":d==="collapsed"?n:"","data-side":r,"data-state":d,"data-variant":i,children:[a("div",{className:o("w-(--sidebar-width) relative h-svh bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",i==="floating"||i==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),a("div",{className:o("w-(--sidebar-width) fixed inset-y-0 z-10 hidden h-svh transition-[left,right,width] duration-200 ease-linear md:flex",r==="left"?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",i==="floating"||i==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",t),...l,children:a("div",{className:"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow","data-sidebar":"sidebar",children:e})})]})}function ve({className:e,onClick:t,...n}){let{toggleSidebar:r}=x();return c(y,{icon:!0,className:o("",e),"data-sidebar":"trigger",size:"xxs",variant:"ghost",onClick:i=>{t?.(i),r()},...n,children:[a(L,{}),a("span",{className:"sr-only",children:"Toggle Sidebar"})]})}function he({className:e,...t}){let{toggleSidebar:n}=x();return a("button",{"aria-label":"Toggle Sidebar",className:o("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",e),"data-sidebar":"rail",tabIndex:-1,title:"Toggle Sidebar",type:"button",onClick:n,...t})}function xe({className:e,...t}){return a("main",{className:o("bg-background relative flex min-h-svh flex-1 flex-col","peer-data-[variant=inset]:min-h-[calc(100svh-var(--spacing-4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",e),...t})}function Pe({className:e,...t}){return a(M,{className:o("bg-background focus-visible:ring-sidebar-ring focus-visible:ring-3 h-8 w-full shadow-none",e),"data-sidebar":"input",...t})}function we({className:e,...t}){return a("div",{className:o("flex flex-col gap-2 p-2",e),"data-sidebar":"header",...t})}function Ce({className:e,...t}){return a("div",{className:o("flex flex-col gap-2 p-2",e),"data-sidebar":"footer",...t})}function ye({className:e,...t}){return a(E,{className:o("bg-sidebar-border mx-2 w-auto",e),"data-sidebar":"separator",...t})}function Me({className:e,...t}){return a("div",{className:o("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),"data-sidebar":"content",...t})}function Ee({className:e,...t}){return a("div",{className:o("relative flex w-full min-w-0 flex-col p-2",e),"data-sidebar":"group",...t})}function Ie({asChild:e=!1,className:t,...n}){return a(e?g:"div",{className:o("text-sidebar-foreground/70 ring-sidebar-ring focus-visible:ring-3 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-none transition-[margin,opa] duration-200 ease-linear [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",t),"data-sidebar":"group-label",...n})}function Ne({asChild:e=!1,className:t,...n}){return a(e?g:"button",{className:o("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",t),"data-sidebar":"group-action",...n})}function _e({className:e,...t}){return a("div",{className:o("w-full text-sm",e),"data-sidebar":"group-content",...t})}function ke({className:e,...t}){return a("ul",{className:o("flex w-full min-w-0 flex-col gap-1",e),"data-sidebar":"menu",...t})}function Be({className:e,...t}){return a("li",{className:o("group/menu-item relative",e),"data-sidebar":"menu-item",...t})}var te=j({base:"peer/menu-button ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground focus-visible:ring-3 flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none transition-[width,height,padding] disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:font-medium group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",defaultVariants:{size:"default",variant:"default"},variants:{size:{default:"h-8 text-sm",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0",sm:"h-7 text-xs"},variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background hover:bg-sidebar-accent hover:text-sidebar-accent-foreground shadow-[0_0_0_1px_hsl(var(--color-sidebar-border))] hover:shadow-[0_0_0_1px_hsl(var(--color-sidebar-accent))]"}}});function Xe({asChild:e=!1,className:t,isActive:n=!1,size:r="default",tooltip:i,variant:l="default",...f}){let p=e?g:"button",{isMobile:u,state:d}=x(),S=a(p,{className:o(te({size:r,variant:l}),t),"data-active":n,"data-sidebar":"menu-button","data-size":r,...f});return i?c(X,{children:[a(J,{asChild:!0,children:S}),a(T,{align:"center",hidden:d!=="collapsed"||u,side:"right",...typeof i=="string"?{children:i}:i})]}):S}function Je({asChild:e=!1,className:t,showOnHover:n=!1,...r}){return a(e?g:"button",{className:o("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",n&&"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0",t),"data-sidebar":"menu-action",...r})}function Te({className:e,...t}){return a("div",{className:o("text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",e),"data-sidebar":"menu-badge",...t})}function ze({className:e,showIcon:t=!1,...n}){let r=O(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return c("div",{className:o("flex h-8 items-center gap-2 rounded-md px-2",e),"data-sidebar":"menu-skeleton",...n,children:[t?a(P,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}):null,a(P,{className:"max-w-(--skeleton-width) h-4 flex-1","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":r}})]})}function Ae({className:e,...t}){return a("ul",{className:o("border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",e),"data-sidebar":"menu-sub",...t})}function Oe({...e}){return a("li",{...e})}function De({asChild:e=!1,className:t,isActive:n,size:r="md",...i}){return a(e?g:"a",{className:o("text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground focus-visible:ring-3 flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",r==="sm"&&"text-xs",r==="md"&&"text-sm","group-data-[collapsible=icon]:hidden",t),"data-active":n,"data-sidebar":"menu-sub-button","data-size":r,...i})}export{x as a,ge as b,Se as c,ve as d,he as e,xe as f,Pe as g,we as h,Ce as i,ye as j,Me as k,Ee as l,Ie as m,Ne as n,_e as o,ke as p,Be as q,Xe as r,Je as s,Te as t,ze as u,Ae as v,Oe as w,De as x};
2
- //# sourceMappingURL=chunk-3R4JJFSA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/sidebar.tsx"],"names":["useMediaQuery","Slot","VisuallyHidden","Cookies","PanelLeftIcon","createContext","useCallback","useContext","useEffect","useMemo","useState","tv","jsx","jsxs","SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SIDEBAR_MOBILE_BREAKPOINT","SidebarContext","useSidebar","context","SidebarProvider","children","className","defaultOpen","setOpenProp","openProp","style","props","isMobile","openMobile","setOpenMobile","isOpen","setIsOpen","open","setOpen","value","openState","toggleSidebar","currentValue","handleKeyDown","event","state","contextValue","TooltipProvider","cn","Sidebar","collapsible","side","variant","Sheet","SheetContent","SheetTitle","SheetDescription","SidebarTrigger","onClick","Button","SidebarRail","SidebarInset","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","SidebarMenuButton","isActive","size","tooltip","Component","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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","sourcesContent":["'use client';\n\nimport type { ComponentProps, CSSProperties, JSX } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport { useMediaQuery } from '@codefast/hooks';\nimport { Slot } from '@radix-ui/react-slot';\nimport { VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport Cookies from 'js-cookie';\nimport { PanelLeftIcon } from 'lucide-react';\nimport { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';\nimport { tv } from 'tailwind-variants';\n\nimport { Button } from '@/components/button';\nimport { Input } from '@/components/input';\nimport { Separator } from '@/components/separator';\nimport { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/sheet';\nimport { Skeleton } from '@/components/skeleton';\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/tooltip';\nimport { cn } from '@/lib/utils';\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar:state';\nconst SIDEBAR_COOKIE_MAX_AGE = 7; // 1 week in days.\nconst SIDEBAR_WIDTH = '16rem';\nconst SIDEBAR_WIDTH_MOBILE = '18rem';\nconst SIDEBAR_WIDTH_ICON = '3rem';\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b';\nconst SIDEBAR_MOBILE_BREAKPOINT = 768;\n\ninterface SidebarContext {\n isMobile: boolean;\n open: boolean;\n openMobile: boolean;\n setOpen: (open: boolean) => void;\n setOpenMobile: (open: boolean) => void;\n state: 'collapsed' | 'expanded';\n toggleSidebar: () => void;\n}\n\nconst SidebarContext = createContext<null | SidebarContext>(null);\n\nfunction useSidebar(): SidebarContext {\n const context = useContext(SidebarContext);\n\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarProvider\n * -------------------------------------------------------------------------- */\n\ninterface SidebarProviderProps extends ComponentProps<'div'> {\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n}\n\nfunction SidebarProvider({\n children,\n className,\n defaultOpen = true,\n onOpenChange: setOpenProp,\n open: openProp,\n style,\n ...props\n}: SidebarProviderProps): JSX.Element {\n const isMobile = useMediaQuery(`(max-width: ${SIDEBAR_MOBILE_BREAKPOINT - 1}px)`);\n const [openMobile, setOpenMobile] = useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const open = openProp ?? isOpen;\n const setOpen = useCallback(\n (value: ((value: boolean) => boolean) | boolean) => {\n const openState = typeof value === 'function' ? value(open) : value;\n\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n setIsOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n Cookies.set(SIDEBAR_COOKIE_NAME, String(openState), {\n expires: SIDEBAR_COOKIE_MAX_AGE,\n path: '/',\n });\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = useCallback(() => {\n if (isMobile) {\n setOpenMobile((currentValue) => !currentValue);\n } else {\n setOpen((currentValue) => !currentValue);\n }\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent): void => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener('keydown', handleKeyDown);\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n };\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed';\n\n const contextValue = useMemo<SidebarContext>(\n () => ({\n isMobile,\n open,\n openMobile,\n setOpen,\n setOpenMobile,\n state,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n className={cn(\n 'group/sidebar-wrapper has-[[data-variant=inset]]:bg-sidebar flex min-h-svh w-full',\n className,\n )}\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: Sidebar\n * -------------------------------------------------------------------------- */\n\ninterface SidebarProps extends ComponentProps<'div'> {\n collapsible?: 'icon' | 'none' | 'offcanvas';\n side?: 'left' | 'right';\n variant?: 'floating' | 'inset' | 'sidebar';\n}\n\nfunction Sidebar({\n children,\n className,\n collapsible = 'offcanvas',\n side = 'left',\n variant = 'sidebar',\n ...props\n}: SidebarProps): JSX.Element {\n const { isMobile, openMobile, setOpenMobile, state } = useSidebar();\n\n if (collapsible === 'none') {\n return (\n <div\n className={cn(\n 'bg-sidebar text-sidebar-foreground w-(--sidebar-width) flex h-full flex-col',\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n className=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\"\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n side={side}\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n } as CSSProperties\n }\n >\n <VisuallyHidden>\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Press escape to close the sidebar</SheetDescription>\n </VisuallyHidden>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n className=\"text-sidebar-foreground group peer hidden md:block\"\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-side={side}\n data-state={state}\n data-variant={variant}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n 'w-(--sidebar-width) relative h-svh bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n )}\n />\n <div\n className={cn(\n 'w-(--sidebar-width) fixed inset-y-0 z-10 hidden h-svh transition-[left,right,width] duration-200 ease-linear md:flex',\n side === 'left'\n ? 'left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n : 'right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className,\n )}\n {...props}\n >\n <div\n className=\"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow\"\n data-sidebar=\"sidebar\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarTrigger\n * -------------------------------------------------------------------------- */\n\ntype SidebarTriggerProps = ComponentProps<typeof Button>;\n\nfunction SidebarTrigger({ className, onClick, ...props }: SidebarTriggerProps): JSX.Element {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n icon\n className={cn('', className)}\n data-sidebar=\"trigger\"\n size=\"xxs\"\n variant=\"ghost\"\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarRail\n * -------------------------------------------------------------------------- */\n\ntype SidebarRailProps = ComponentProps<'button'>;\n\nfunction SidebarRail({ className, ...props }: SidebarRailProps): JSX.Element {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n aria-label=\"Toggle Sidebar\"\n className={cn(\n 'hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex',\n '[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className,\n )}\n data-sidebar=\"rail\"\n tabIndex={-1}\n title=\"Toggle Sidebar\"\n type=\"button\"\n onClick={toggleSidebar}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarInset\n * -------------------------------------------------------------------------- */\n\ntype SidebarInsetProps = ComponentProps<'main'>;\n\nfunction SidebarInset({ className, ...props }: SidebarInsetProps): JSX.Element {\n return (\n <main\n className={cn(\n 'bg-background relative flex min-h-svh flex-1 flex-col',\n 'peer-data-[variant=inset]:min-h-[calc(100svh-var(--spacing-4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarInput\n * -------------------------------------------------------------------------- */\n\ntype SidebarInputProps = ComponentProps<typeof Input>;\n\nfunction SidebarInput({ className, ...props }: SidebarInputProps): JSX.Element {\n return (\n <Input\n className={cn(\n 'bg-background focus-visible:ring-sidebar-ring focus-visible:ring-3 h-8 w-full shadow-none',\n className,\n )}\n data-sidebar=\"input\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarHeader\n * -------------------------------------------------------------------------- */\n\ntype SidebarHeaderProps = ComponentProps<'div'>;\n\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps): JSX.Element {\n return (\n <div className={cn('flex flex-col gap-2 p-2', className)} data-sidebar=\"header\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarFooter\n * -------------------------------------------------------------------------- */\n\ntype SidebarFooterProps = ComponentProps<'div'>;\n\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps): JSX.Element {\n return (\n <div className={cn('flex flex-col gap-2 p-2', className)} data-sidebar=\"footer\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarSeparator\n * -------------------------------------------------------------------------- */\n\ntype SidebarSeparatorProps = ComponentProps<typeof Separator>;\n\nfunction SidebarSeparator({ className, ...props }: SidebarSeparatorProps): JSX.Element {\n return (\n <Separator\n className={cn('bg-sidebar-border mx-2 w-auto', className)}\n data-sidebar=\"separator\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarContent\n * -------------------------------------------------------------------------- */\n\ntype SidebarContentProps = ComponentProps<'div'>;\n\nfunction SidebarContent({ className, ...props }: SidebarContentProps): JSX.Element {\n return (\n <div\n className={cn(\n 'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className,\n )}\n data-sidebar=\"content\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroup\n * -------------------------------------------------------------------------- */\n\ntype SidebarGroupProps = ComponentProps<'div'>;\n\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps): JSX.Element {\n return (\n <div\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n data-sidebar=\"group\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupLabel\n * -------------------------------------------------------------------------- */\n\ninterface SidebarGroupLabelProps extends ComponentProps<'div'> {\n asChild?: boolean;\n}\n\nfunction SidebarGroupLabel({\n asChild = false,\n className,\n ...props\n}: SidebarGroupLabelProps): JSX.Element {\n const Component = asChild ? Slot : 'div';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground/70 ring-sidebar-ring focus-visible:ring-3 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-none transition-[margin,opa] duration-200 ease-linear [&>svg]:size-4 [&>svg]:shrink-0',\n 'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n className,\n )}\n data-sidebar=\"group-label\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupAction\n * -------------------------------------------------------------------------- */\n\ninterface SidebarGroupActionProps extends ComponentProps<'button'> {\n asChild?: boolean;\n}\n\nfunction SidebarGroupAction({\n asChild = false,\n className,\n ...props\n}: SidebarGroupActionProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"group-action\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupContent\n * -------------------------------------------------------------------------- */\n\ntype SidebarGroupContentProps = ComponentProps<'div'>;\n\nfunction SidebarGroupContent({ className, ...props }: SidebarGroupContentProps): JSX.Element {\n return (\n <div className={cn('w-full text-sm', className)} data-sidebar=\"group-content\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenu\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuProps = ComponentProps<'ul'>;\n\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps): JSX.Element {\n return (\n <ul\n className={cn('flex w-full min-w-0 flex-col gap-1', className)}\n data-sidebar=\"menu\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuItem\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuItemProps = ComponentProps<'li'>;\n\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps): JSX.Element {\n return (\n <li className={cn('group/menu-item relative', className)} data-sidebar=\"menu-item\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuButton\n * -------------------------------------------------------------------------- */\n\nconst sidebarMenuButtonVariants = tv({\n base: 'peer/menu-button ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground focus-visible:ring-3 flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none transition-[width,height,padding] disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:font-medium group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n defaultVariants: {\n size: 'default',\n variant: 'default',\n },\n variants: {\n size: {\n default: 'h-8 text-sm',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:!p-0',\n sm: 'h-7 text-xs',\n },\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background hover:bg-sidebar-accent hover:text-sidebar-accent-foreground shadow-[0_0_0_1px_hsl(var(--color-sidebar-border))] hover:shadow-[0_0_0_1px_hsl(var(--color-sidebar-accent))]',\n },\n },\n});\n\ninterface SidebarMenuButtonProps\n extends ComponentProps<'button'>,\n VariantProps<typeof sidebarMenuButtonVariants> {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: ComponentProps<typeof TooltipContent> | string;\n}\n\nfunction SidebarMenuButton({\n asChild = false,\n className,\n isActive = false,\n size = 'default',\n tooltip,\n variant = 'default',\n ...props\n}: SidebarMenuButtonProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Component\n className={cn(sidebarMenuButtonVariants({ size, variant }), className)}\n data-active={isActive}\n data-sidebar=\"menu-button\"\n data-size={size}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n const tooltipProps =\n typeof tooltip === 'string'\n ? {\n children: tooltip,\n }\n : tooltip;\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n align=\"center\"\n hidden={state !== 'collapsed' || isMobile}\n side=\"right\"\n {...tooltipProps}\n />\n </Tooltip>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuAction\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuActionProps extends ComponentProps<'button'> {\n asChild?: boolean;\n showOnHover?: boolean;\n}\n\nfunction SidebarMenuAction({\n asChild = false,\n className,\n showOnHover = false,\n ...props\n}: SidebarMenuActionProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n showOnHover &&\n 'peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0',\n className,\n )}\n data-sidebar=\"menu-action\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuBadge\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuBadgeProps = ComponentProps<'div'>;\n\nfunction SidebarMenuBadge({ className, ...props }: SidebarMenuBadgeProps): JSX.Element {\n return (\n <div\n className={cn(\n 'text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums',\n 'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"menu-badge\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSkeleton\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuSkeletonProps extends ComponentProps<'div'> {\n showIcon?: boolean;\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: SidebarMenuSkeletonProps): JSX.Element {\n // Random width between 50 to 90%.\n const width = useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n data-sidebar=\"menu-skeleton\"\n {...props}\n >\n {showIcon ? (\n <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />\n ) : null}\n <Skeleton\n className=\"max-w-(--skeleton-width) h-4 flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width,\n } as CSSProperties\n }\n />\n </div>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSub\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuSubProps = ComponentProps<'ul'>;\n\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps): JSX.Element {\n return (\n <ul\n className={cn(\n 'border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"menu-sub\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSubItem\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuSubItemProps = ComponentProps<'li'>;\n\nfunction SidebarMenuSubItem({ ...props }: SidebarMenuSubItemProps): JSX.Element {\n return <li {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSubButton\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuSubButtonProps extends ComponentProps<'a'> {\n asChild?: boolean;\n isActive?: boolean;\n size?: 'md' | 'sm';\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n className,\n isActive,\n size = 'md',\n ...props\n}: SidebarMenuSubButtonProps): JSX.Element {\n const Component = asChild ? Slot : 'a';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground focus-visible:ring-3 flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n 'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n size === 'sm' && 'text-xs',\n size === 'md' && 'text-sm',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-active={isActive}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-4OYK75XH.cjs","../src/components/toggle-group.tsx"],"names":["ToggleGroupPrimitive","useToggleGroupScope","createToggleGroupScope","ToggleGroupProvider","useToggleGroupContext","createToggleGroupContext","TOGGLE_GROUP_NAME","ToggleGroup","children","className","size","props","toggleGroupScope","jsx","__scopeToggleGroup","cn","context","TOGGLE_GROUP_ITEM_NAME","jsxs","toggleVariants","prefix"],"mappings":"AAAA,uWAAY,CAAC,wDAAmC,wDCKvC,uDACGA,oHACH,+CAWiB,IAAA,CAAA,CAAA,aAIuE,CAE3FC,CAAAA,CAAsBC,CAAAA,CAAuB,8CAAA,CAE5CC,CAAAA,CAAqBC,wCAAqB,CAAA,CAC/CC,CAAAA,CAA8CC,CAAiB,sDAAA,CAIjE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASC,CAAAA,CAAY,CACnB,CAAA,SAAA,CAAA,CAAA,CAAA,kBACAC,CACA,CAAA,CAAA,QAAAC,CAAAA,CACA,CAAA,SACA,CAAA,CAAAC,CAAAA,IACA,CAAA,CAAA,CAAA,IACA,CAAA,CAAA,CAAGC,OAEH,CAAMC,CAAAA,CAAmBX,GAAsC,CAAA,CAE/D,CAAA,CAAA,IAAA,CACEY,CAAAA,CAACV,CAAAA,CAAA,CAAoB,CAAA,OAAY,6BAAA,CAAA,CAAA,CAAOW,IAAoB,CAAA,CAAA,CAAMJ,KAAM,CAAA,CAAA,CAAA,IACtE,CAAA,CAAA,CAAA,OAAAG,CAAsB,CAAA,CAAA,QACpB,CAAA,6BAAA,CAAA,CAAA,IAAWE,CAAG,CAAA,SAAA,CAAA,iCAAA,0CAEVJ,CAEH,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,GACH,CAAA,CACF,QAQ2B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,iBAS7B,CAAA,SAAA,CAAA,CAAA,CAAA,kBACAH,CACA,CAAA,CAAA,QAAAC,CAAAA,CACA,CAAA,SACA,CAAA,CAAA,CAAA,MACA,CAAA,CAAGE,CACL,MACE,CAAMK,CAAAA,CAAUZ,GAAsBa,CAAwBH,CAAkB,CAAA,CAC1EF,IAAuCE,CAAkB,CAAA,CAE/D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACEI,CAAAA,CAAsB,CAAA,CAAA,CAAA,CAAA,OACpB,8BAAA,CAAA,CAAA,IAAWC,CAAe,CAAE,SAAY,CAAA,iCAAA,CAAA,GAAU,CAAC,CAAA,SAE/CR,CAAAA,CAEH,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,GAAAS,CACA,CAAA,QAAOZ,CAAa,CAAA,CAAA,CAAA,OAAWK,CAAC,EAAA,QAAK,CAAA,6BAAA,MAAU,CAAA,CAAA,SAAY,CAAA,UAAS,CAAUL,QAIrF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,6BAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-4OYK75XH.cjs","sourcesContent":[null,"'use client';\n\nimport type { Scope } from '@radix-ui/react-context';\nimport type { ComponentProps, JSX, ReactNode } from 'react';\n\nimport { createContextScope } from '@radix-ui/react-context';\nimport * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';\nimport { createToggleGroupScope } from '@radix-ui/react-toggle-group';\n\nimport type { ToggleVariantsProps } from '@/variants/toggle.variants';\n\nimport { cn } from '@/lib/utils';\nimport { toggleVariants } from '@/variants/toggle.variants';\n\n/* -----------------------------------------------------------------------------\n * Component: ToggleGroup\n * -------------------------------------------------------------------------- */\n\nconst TOGGLE_GROUP_NAME = 'ToggleGroup';\n\ntype ScopedProps<P> = P & { __scopeToggleGroup?: Scope };\n\nconst [createToggleGroupContext] = createContextScope(TOGGLE_GROUP_NAME, [createToggleGroupScope]);\n\nconst useToggleGroupScope = createToggleGroupScope();\n\nconst [ToggleGroupProvider, useToggleGroupContext] =\n createToggleGroupContext<ToggleVariantsProps>(TOGGLE_GROUP_NAME);\n\ntype ToggleGroupProps = ComponentProps<typeof ToggleGroupPrimitive.Root> & ToggleVariantsProps;\n\nfunction ToggleGroup({\n __scopeToggleGroup,\n children,\n className,\n icon,\n size,\n variant,\n ...props\n}: ScopedProps<ToggleGroupProps>): JSX.Element {\n const toggleGroupScope = useToggleGroupScope(__scopeToggleGroup);\n\n return (\n <ToggleGroupProvider icon={icon} scope={__scopeToggleGroup} size={size} variant={variant}>\n <ToggleGroupPrimitive.Root\n className={cn('flex items-center justify-center gap-1.5', className)}\n {...toggleGroupScope}\n {...props}\n >\n {children}\n </ToggleGroupPrimitive.Root>\n </ToggleGroupProvider>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: ToggleGroupItem\n * -------------------------------------------------------------------------- */\n\nconst TOGGLE_GROUP_ITEM_NAME = 'ToggleGroupItem';\n\ninterface ToggleGroupItemProps\n extends Omit<ComponentProps<typeof ToggleGroupPrimitive.Item>, 'prefix'> {\n prefix?: ReactNode;\n suffix?: ReactNode;\n}\n\nfunction ToggleGroupItem({\n __scopeToggleGroup,\n children,\n className,\n prefix,\n suffix,\n ...props\n}: ScopedProps<ToggleGroupItemProps>): JSX.Element {\n const context = useToggleGroupContext(TOGGLE_GROUP_ITEM_NAME, __scopeToggleGroup);\n const toggleGroupScope = useToggleGroupScope(__scopeToggleGroup);\n\n return (\n <ToggleGroupPrimitive.Item\n className={toggleVariants({ ...context, className })}\n {...toggleGroupScope}\n {...props}\n >\n {prefix}\n {typeof children === 'string' ? <span className=\"truncate\">{children}</span> : children}\n {suffix}\n </ToggleGroupPrimitive.Item>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { ToggleGroupItemProps, ToggleGroupProps };\nexport { ToggleGroup, ToggleGroupItem };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-4VEUMBAT.cjs","../src/components/toggle.tsx"],"names":["Toggle","children","className","icon","prefix","size","suffix","variant","props","jsxs","toggleVariants","jsx"],"mappings":"AAAA,mZAAwC,oGCEP,+CA4B7B,SAXKA,CAAAA,CAAO,CACd,QAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAA6B,CAC3B,OACEC,8BAAAA,CAAiB,CAAA,IAAA,CAAhB,CAAqB,SAAA,CAAWC,iCAAAA,CAAiB,SAAA,CAAAR,CAAAA,CAAW,IAAA,CAAAC,CAAAA,CAAM,IAAA,CAAAE,CAAAA,CAAM,OAAA,CAAAE,CAAQ,CAAC,CAAA,CAAI,GAAGC,CAAAA,CACtF,QAAA,CAAA,CAAAJ,CAAAA,CACA,OAAOH,CAAAA,EAAa,QAAA,CAAWU,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAU,UAAA,CAAY,QAAA,CAAAV,CAAAA,CAAS,CAAA,CAAUA,CAAAA,CAC9EK,CAAAA,CAAAA,CACH,CAEJ,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-4VEUMBAT.cjs","sourcesContent":[null,"import type { ComponentProps, JSX, ReactNode } from 'react';\n\nimport * as TogglePrimitive from '@radix-ui/react-toggle';\n\nimport type { ToggleVariantsProps } from '@/variants/toggle.variants';\n\nimport { toggleVariants } from '@/variants/toggle.variants';\n\n/* -----------------------------------------------------------------------------\n * Component: Toggle\n * -------------------------------------------------------------------------- */\n\ninterface ToggleProps\n extends Omit<ComponentProps<typeof TogglePrimitive.Root>, 'prefix'>,\n ToggleVariantsProps {\n prefix?: ReactNode;\n suffix?: ReactNode;\n}\n\nfunction Toggle({\n children,\n className,\n icon,\n prefix,\n size,\n suffix,\n variant,\n ...props\n}: ToggleProps): JSX.Element {\n return (\n <TogglePrimitive.Root className={toggleVariants({ className, icon, size, variant })} {...props}>\n {prefix}\n {typeof children === 'string' ? <span className=\"truncate\">{children}</span> : children}\n {suffix}\n </TogglePrimitive.Root>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { ToggleProps };\nexport { Toggle };\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var _chunkSMJEDCFPcjs = require('./chunk-SMJEDCFP.cjs');var _reactpopover = require('@radix-ui/react-popover'); var o = _interopRequireWildcard(_reactpopover);var _jsxruntime = require('react/jsx-runtime');var P=o.Root,n= exports.b =o.Trigger,d= exports.c =o.Anchor;function v({align:t="center",className:e,sideOffset:i=6,...a}){return _jsxruntime.jsx.call(void 0, o.Portal,{children:_jsxruntime.jsx.call(void 0, o.Content,{align:t,className:_chunkSMJEDCFPcjs.a.call(void 0, "bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-4 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95","data-[state=open]:data-[side=top]:slide-in-from-bottom-2","data-[state=open]:data-[side=right]:slide-in-from-left-2","data-[state=open]:data-[side=bottom]:slide-in-from-top-2","data-[state=open]:data-[side=left]:slide-in-from-right-2","data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95","data-[state=closed]:data-[side=top]:slide-out-to-bottom-2","data-[state=closed]:data-[side=left]:slide-out-to-right-2","data-[state=closed]:data-[side=bottom]:slide-out-to-top-2","data-[state=closed]:data-[side=right]:slide-out-to-left-2",e),sideOffset:i,...a})})}function m({className:t,...e}){return _jsxruntime.jsx.call(void 0, o.Arrow,{className:_chunkSMJEDCFPcjs.a.call(void 0, "fill-popover",t),...e})}exports.a = P; exports.b = n; exports.c = d; exports.d = v; exports.e = m;
2
- //# sourceMappingURL=chunk-5AP5SOMK.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-5AP5SOMK.cjs","../src/components/popover.tsx"],"names":["Popover","PopoverTrigger","PopoverAnchor","PopoverContent","align","className","sideOffset","props","jsx","cn","PopoverArrow"],"mappings":"AAAA,mZAAwC,uGCEN,+CAuC5B,IA9BAA,CAAAA,CAA2B,CAAA,CAAA,IAAA,CAO3BC,CAAAA,aAAkC,CAAA,CAAA,OAAA,CAOlCC,CAAAA,aAAiC,CAAA,CAAA,MAAA,CAQvC,SAASC,CAAAA,CAAe,CACtB,KAAA,CAAAC,CAAAA,CAAQ,QAAA,CACR,SAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CAAa,CAAA,CACb,GAAGC,CACL,CAAA,CAAqC,CACnC,OACEC,6BAAAA,CAAkB,CAAA,MAAA,CAAjB,CACC,QAAA,CAAAA,6BAAAA,CAAkB,CAAA,OAAA,CAAjB,CACC,KAAA,CAAOJ,CAAAA,CACP,SAAA,CAAWK,iCAAAA,kFACT,CACA,qFAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACA,8FAAA,CACA,2DAAA,CACA,2DAAA,CACA,2DAAA,CACA,2DAAA,CACAJ,CACF,CAAA,CACA,UAAA,CAAYC,CAAAA,CACX,GAAGC,CAAAA,CACN,CAAA,CACF,CAEJ,CAQA,SAASG,CAAAA,CAAa,CAAE,SAAA,CAAAL,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAmC,CAC7E,OAAOC,6BAAAA,CAAkB,CAAA,KAAA,CAAjB,CAAuB,SAAA,CAAWC,iCAAAA,cAAG,CAAgBJ,CAAS,CAAA,CAAI,GAAGE,CAAAA,CAAO,CACtF,CAAA,0EAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-5AP5SOMK.cjs","sourcesContent":[null,"import type { ComponentProps, JSX } from 'react';\n\nimport * as PopoverPrimitive from '@radix-ui/react-popover';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Popover\n * -------------------------------------------------------------------------- */\n\ntype PopoverProps = ComponentProps<typeof PopoverPrimitive.Root>;\nconst Popover = PopoverPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverTrigger\n * -------------------------------------------------------------------------- */\n\ntype PopoverTriggerProps = ComponentProps<typeof PopoverPrimitive.Trigger>;\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverAnchor\n * -------------------------------------------------------------------------- */\n\ntype PopoverAnchorProps = ComponentProps<typeof PopoverPrimitive.Anchor>;\nconst PopoverAnchor = PopoverPrimitive.Anchor;\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverContent\n * -------------------------------------------------------------------------- */\n\ntype PopoverContentProps = ComponentProps<typeof PopoverPrimitive.Content>;\n\nfunction PopoverContent({\n align = 'center',\n className,\n sideOffset = 6,\n ...props\n}: PopoverContentProps): JSX.Element {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n align={align}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-4 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n className,\n )}\n sideOffset={sideOffset}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverArrow\n * -------------------------------------------------------------------------- */\n\ntype PopoverArrowProps = ComponentProps<typeof PopoverPrimitive.Arrow>;\n\nfunction PopoverArrow({ className, ...props }: PopoverArrowProps): JSX.Element {\n return <PopoverPrimitive.Arrow className={cn('fill-popover', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type {\n PopoverAnchorProps,\n PopoverArrowProps,\n PopoverContentProps,\n PopoverProps,\n PopoverTriggerProps,\n};\nexport { Popover, PopoverAnchor, PopoverArrow, PopoverContent, PopoverTrigger };\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _tailwindvariants = require('tailwind-variants');var a=_tailwindvariants.tv.call(void 0, {base:["inline-flex shrink-0 select-none items-center justify-center gap-2 whitespace-nowrap rounded-md px-4 text-sm font-medium transition","[&>svg]:shrink-0","focus-visible:outline-none","focus-visible:ring-ring/40 focus-visible:ring-3","disabled:pointer-events-none disabled:opacity-50"],compoundVariants:[{className:"w-7",icon:!0,size:"xxs"},{className:"w-8",icon:!0,size:"xs"},{className:"w-9",icon:!0,size:"sm"},{className:"w-10",icon:!0,size:"md"},{className:"w-11",icon:!0,size:"lg"},{className:"w-12",icon:!0,size:"xl"},{className:"[&>svg]:size-3",size:"xxs"},{className:"[&>svg]:size-3.5",size:"xs"}],defaultVariants:{icon:!1,size:"md",variant:"default"},variants:{icon:{false:"",true:"px-0"},size:{lg:"h-11 [&>svg]:size-5",md:"h-10 [&>svg]:size-4",sm:"h-9 [&>svg]:size-4",xl:"h-12 [&>svg]:size-5",xs:"h-8 [&>svg]:size-3.5",xxs:"h-7 [&>svg]:size-3"},variant:{default:["data-[state=on]:bg-primary data-[state=on]:text-primary-foreground data-[state=on]:shadow-sm","hover:bg-primary/80 hover:text-primary-foreground"],destructive:["data-[state=on]:bg-destructive data-[state=on]:text-destructive-foreground data-[state=on]:shadow-sm","hover:bg-destructive/80 hover:text-destructive-foreground"],ghost:["data-[state=on]:bg-accent data-[state=on]:text-accent-foreground","hover:bg-accent/80 hover:text-accent-foreground"],info:["data-[state=on]:bg-info data-[state=on]:text-info-foreground data-[state=on]:shadow-sm","hover:bg-info/80 hover:text-info-foreground"],outline:["data-[state=on]:bg-accent data-[state=on]:text-accent-foreground","hover:bg-accent/80 hover:text-accent-foreground","bg-background border-input border shadow-sm"],secondary:["data-[state=on]:bg-secondary data-[state=on]:text-secondary-foreground data-[state=on]:shadow-sm","hover:bg-secondary/80 hover:text-secondary-foreground"],success:["data-[state=on]:bg-success data-[state=on]:text-success-foreground data-[state=on]:shadow-sm","hover:bg-success/80 hover:text-success-foreground"],warning:["data-[state=on]:bg-warning data-[state=on]:text-warning-foreground data-[state=on]:shadow-sm","hover:bg-warning/80 hover:text-warning-foreground"]}}});exports.a = a;
2
- //# sourceMappingURL=chunk-5WX3E22K.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/variants/toggle.variants.ts"],"names":["toggleVariants","tv"],"mappings":"AAEA,8HAAmB,IAEbA,CAAAA,CAAiBC,kCAAAA,CACrB,IAAA,CAAM,CACJ,qIAAA,CACA,kBAAA,CACA,4BAAA,CACA,iDAAA,CACA,kDACF,CAAA,CACA,gBAAA,CAAkB,CAEhB,CAAE,SAAA,CAAW,KAAA,CAAO,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,KAAM,CAAA,CAC5C,CAAE,SAAA,CAAW,KAAA,CAAO,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,IAAK,CAAA,CAC3C,CAAE,SAAA,CAAW,KAAA,CAAO,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,IAAK,CAAA,CAC3C,CAAE,SAAA,CAAW,MAAA,CAAQ,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,IAAK,CAAA,CAC5C,CAAE,SAAA,CAAW,MAAA,CAAQ,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,IAAK,CAAA,CAC5C,CAAE,SAAA,CAAW,MAAA,CAAQ,IAAA,CAAM,CAAA,CAAA,CAAM,IAAA,CAAM,IAAK,CAAA,CAE5C,CAAE,SAAA,CAAW,gBAAA,CAAkB,IAAA,CAAM,KAAM,CAAA,CAC3C,CAAE,SAAA,CAAW,kBAAA,CAAoB,IAAA,CAAM,IAAK,CAC9C,CAAA,CACA,eAAA,CAAiB,CACf,IAAA,CAAM,CAAA,CAAA,CACN,IAAA,CAAM,IAAA,CACN,OAAA,CAAS,SACX,CAAA,CACA,QAAA,CAAU,CACR,IAAA,CAAM,CAAE,KAAA,CAAO,EAAA,CAAI,IAAA,CAAM,MAAO,CAAA,CAChC,IAAA,CAAM,CACJ,EAAA,CAAI,qBAAA,CACJ,EAAA,CAAI,qBAAA,CACJ,EAAA,CAAI,oBAAA,CACJ,EAAA,CAAI,qBAAA,CACJ,EAAA,CAAI,sBAAA,CACJ,GAAA,CAAK,oBACP,CAAA,CACA,OAAA,CAAS,CACP,OAAA,CAAS,CACP,8FAAA,CACA,mDACF,CAAA,CACA,WAAA,CAAa,CACX,sGAAA,CACA,2DACF,CAAA,CACA,KAAA,CAAO,CACL,kEAAA,CACA,iDACF,CAAA,CACA,IAAA,CAAM,CACJ,wFAAA,CACA,6CACF,CAAA,CACA,OAAA,CAAS,CACP,kEAAA,CACA,iDAAA,CACA,6CACF,CAAA,CACA,SAAA,CAAW,CACT,kGAAA,CACA,uDACF,CAAA,CACA,OAAA,CAAS,CACP,8FAAA,CACA,mDACF,CAAA,CACA,OAAA,CAAS,CACP,8FAAA,CACA,mDACF,CACF,CACF,CACF,CAAC,CAAA,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-5WX3E22K.cjs","sourcesContent":["import type { VariantProps } from 'tailwind-variants';\n\nimport { tv } from 'tailwind-variants';\n\nconst toggleVariants = tv({\n base: [\n 'inline-flex shrink-0 select-none items-center justify-center gap-2 whitespace-nowrap rounded-md px-4 text-sm font-medium transition',\n '[&>svg]:shrink-0',\n 'focus-visible:outline-none',\n 'focus-visible:ring-ring/40 focus-visible:ring-3',\n 'disabled:pointer-events-none disabled:opacity-50',\n ],\n compoundVariants: [\n // --\n { className: 'w-7', icon: true, size: 'xxs' },\n { className: 'w-8', icon: true, size: 'xs' },\n { className: 'w-9', icon: true, size: 'sm' },\n { className: 'w-10', icon: true, size: 'md' },\n { className: 'w-11', icon: true, size: 'lg' },\n { className: 'w-12', icon: true, size: 'xl' },\n // --\n { className: '[&>svg]:size-3', size: 'xxs' },\n { className: '[&>svg]:size-3.5', size: 'xs' },\n ],\n defaultVariants: {\n icon: false,\n size: 'md',\n variant: 'default',\n },\n variants: {\n icon: { false: '', true: 'px-0' },\n size: {\n lg: 'h-11 [&>svg]:size-5', // 44px\n md: 'h-10 [&>svg]:size-4', // 40px\n sm: 'h-9 [&>svg]:size-4', // 36px\n xl: 'h-12 [&>svg]:size-5', // 48px\n xs: 'h-8 [&>svg]:size-3.5', // 32px\n xxs: 'h-7 [&>svg]:size-3', // 28px\n },\n variant: {\n default: [\n 'data-[state=on]:bg-primary data-[state=on]:text-primary-foreground data-[state=on]:shadow-sm',\n 'hover:bg-primary/80 hover:text-primary-foreground',\n ],\n destructive: [\n 'data-[state=on]:bg-destructive data-[state=on]:text-destructive-foreground data-[state=on]:shadow-sm',\n 'hover:bg-destructive/80 hover:text-destructive-foreground',\n ],\n ghost: [\n 'data-[state=on]:bg-accent data-[state=on]:text-accent-foreground',\n 'hover:bg-accent/80 hover:text-accent-foreground',\n ],\n info: [\n 'data-[state=on]:bg-info data-[state=on]:text-info-foreground data-[state=on]:shadow-sm',\n 'hover:bg-info/80 hover:text-info-foreground',\n ],\n outline: [\n 'data-[state=on]:bg-accent data-[state=on]:text-accent-foreground',\n 'hover:bg-accent/80 hover:text-accent-foreground',\n 'bg-background border-input border shadow-sm',\n ],\n secondary: [\n 'data-[state=on]:bg-secondary data-[state=on]:text-secondary-foreground data-[state=on]:shadow-sm',\n 'hover:bg-secondary/80 hover:text-secondary-foreground',\n ],\n success: [\n 'data-[state=on]:bg-success data-[state=on]:text-success-foreground data-[state=on]:shadow-sm',\n 'hover:bg-success/80 hover:text-success-foreground',\n ],\n warning: [\n 'data-[state=on]:bg-warning data-[state=on]:text-warning-foreground data-[state=on]:shadow-sm',\n 'hover:bg-warning/80 hover:text-warning-foreground',\n ],\n },\n },\n});\n\ntype ToggleVariantsProps = VariantProps<typeof toggleVariants>;\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { ToggleVariantsProps };\nexport { toggleVariants };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/separator.tsx"],"names":["SeparatorPrimitive","tv","jsx","separatorVariants","Separator","align","className","decorative","orientation","props","SeparatorItem","cn"],"mappings":"mCAGA,UAAYA,MAAwB,4BACpC,OAAS,MAAAC,MAAU,oBA6Cf,cAAAC,MAAA,oBArCJ,IAAMC,EAAoBF,EAAG,CAC3B,KAAM,+CACN,gBAAiB,CACf,MAAO,SACP,YAAa,YACf,EACA,SAAU,CACR,MAAO,CACL,OAAQ,iBACR,IAAK,cACL,MAAO,eACT,EACA,YAAa,CACX,WAAY,cACZ,SAAU,sBACZ,CACF,CACF,CAAC,EAYD,SAASG,EAAU,CACjB,MAAAC,EACA,UAAAC,EACA,WAAAC,EAAa,GACb,YAAAC,EACA,GAAGC,CACL,EAAgC,CAC9B,OACEP,EAAoB,OAAnB,CACC,UAAWC,EAAkB,CAAE,MAAAE,EAAO,UAAAC,EAAW,YAAAE,CAAY,CAAC,EAC9D,WAAYD,EACZ,YAAaC,EACZ,GAAGC,EACN,CAEJ,CAQA,SAASC,EAAc,CAAE,UAAAJ,EAAW,GAAGG,CAAM,EAAoC,CAC/E,OACEP,EAAC,OACC,UAAWS,EAAG,iEAAkEL,CAAS,EACxF,GAAGG,EACN,CAEJ","sourcesContent":["import type { ComponentProps, JSX } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport * as SeparatorPrimitive from '@radix-ui/react-separator';\nimport { tv } from 'tailwind-variants';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Variant: Separator\n * -------------------------------------------------------------------------- */\n\nconst separatorVariants = tv({\n base: 'bg-muted relative flex shrink-0 items-center',\n defaultVariants: {\n align: 'center',\n orientation: 'horizontal',\n },\n variants: {\n align: {\n center: 'justify-center',\n end: 'justify-end',\n start: 'justify-start',\n },\n orientation: {\n horizontal: 'h-px w-full',\n vertical: 'h-full w-px flex-col',\n },\n },\n});\n\ntype SeparatorVariantsProps = VariantProps<typeof separatorVariants>;\n\n/* -----------------------------------------------------------------------------\n * Component: Separator\n * -------------------------------------------------------------------------- */\n\ninterface SeparatorProps\n extends ComponentProps<typeof SeparatorPrimitive.Root>,\n Omit<SeparatorVariantsProps, 'orientation'> {}\n\nfunction Separator({\n align,\n className,\n decorative = true,\n orientation,\n ...props\n}: SeparatorProps): JSX.Element {\n return (\n <SeparatorPrimitive.Root\n className={separatorVariants({ align, className, orientation })}\n decorative={decorative}\n orientation={orientation}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SeparatorItem\n * -------------------------------------------------------------------------- */\n\ntype SeparatorItemProps = ComponentProps<'div'>;\n\nfunction SeparatorItem({ className, ...props }: SeparatorItemProps): JSX.Element {\n return (\n <div\n className={cn('bg-background text-muted-foreground absolute mx-2 px-2 text-sm', className)}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { SeparatorProps };\nexport { Separator, SeparatorItem };\n"]}
@@ -1,2 +0,0 @@
1
- import{a}from"./chunk-OKUFCFYT.js";import{VisuallyHidden as f}from"@radix-ui/react-visually-hidden";import{jsx as n,jsxs as l}from"react/jsx-runtime";var e=8;function c({children:r,className:i,loading:s=!0,...p}){if(!s)return r;let o=n("span",{className:a("relative flex size-4 items-center justify-center opacity-60",i),...p,children:Array.from({length:e},(u,t)=>n("span",{className:"before:fade-out-25 before:animate-out before:animation-repeat-infinite before:animation-delay-(--spinner-delay) before:animation-duration-(--spinner-duration) rotate-(--spinner-rotate) absolute h-full before:block before:h-1/3 before:w-full before:rounded-full before:bg-current",style:{"--spinner-delay":`-${((e-t)*100).toString()}ms`,"--spinner-duration":`${(e*100).toString()}ms`,"--spinner-rotate":`${(360/e*t).toString()}deg`,width:`${(100/e).toString()}%`}},t))});return r===void 0?o:l("span",{className:"relative",children:[n("span",{"aria-hidden":!0,className:"invisible contents",children:r}),n(f,{children:r}),n("span",{className:"absolute inset-0 flex items-center justify-center",children:o})]})}export{c as a};
2
- //# sourceMappingURL=chunk-6SAOAD7N.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/spinner.tsx"],"names":["VisuallyHidden","jsx","jsxs","spinnerCount","Spinner","children","className","loading","props","spinner","cn","_","i"],"mappings":"mCAEA,OAAS,kBAAAA,MAAsB,kCAyBvB,cAAAC,EAqBJ,QAAAC,MArBI,oBAjBR,IAAMC,EAAe,EAMrB,SAASC,EAAQ,CAAE,SAAAC,EAAU,UAAAC,EAAW,QAAAC,EAAU,GAAM,GAAGC,CAAM,EAA4B,CAC3F,GAAI,CAACD,EACH,OAAOF,EAGT,IAAMI,EACJR,EAAC,QACC,UAAWS,EAAG,8DAA+DJ,CAAS,EACrF,GAAGE,EAEH,eAAM,KAAK,CAAE,OAAQL,CAAa,EAAG,CAACQ,EAAGC,IACxCX,EAAC,QAEC,UAAU,yRACV,MACE,CACE,kBAAmB,MAAME,EAAeS,GAAK,KAAK,SAAS,CAAC,KAC5D,qBAAsB,IAAIT,EAAe,KAAK,SAAS,CAAC,KACxD,mBAAoB,IAAK,IAAMA,EAAgBS,GAAG,SAAS,CAAC,MAC5D,MAAO,IAAI,IAAMT,GAAc,SAAS,CAAC,GAC3C,GARGS,CAUP,CACD,EACH,EAGF,OAAIP,IAAa,OACRI,EAIPP,EAAC,QAAK,UAAU,WACd,UAAAD,EAAC,QAAK,cAAW,GAAC,UAAU,qBACzB,SAAAI,EACH,EACAJ,EAACD,EAAA,CAAgB,SAAAK,EAAS,EAC1BJ,EAAC,QAAK,UAAU,oDAAqD,SAAAQ,EAAQ,GAC/E,CAEJ","sourcesContent":["import type { ComponentProps, CSSProperties, ReactNode } from 'react';\n\nimport { VisuallyHidden } from '@radix-ui/react-visually-hidden';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Spinner\n * -------------------------------------------------------------------------- */\n\nconst spinnerCount = 8;\n\ninterface SpinnerProps extends ComponentProps<'span'> {\n loading?: boolean;\n}\n\nfunction Spinner({ children, className, loading = true, ...props }: SpinnerProps): ReactNode {\n if (!loading) {\n return children;\n }\n\n const spinner = (\n <span\n className={cn('relative flex size-4 items-center justify-center opacity-60', className)}\n {...props}\n >\n {Array.from({ length: spinnerCount }, (_, i) => (\n <span\n key={i}\n className=\"before:fade-out-25 before:animate-out before:animation-repeat-infinite before:animation-delay-(--spinner-delay) before:animation-duration-(--spinner-duration) rotate-(--spinner-rotate) absolute h-full before:block before:h-1/3 before:w-full before:rounded-full before:bg-current\"\n style={\n {\n '--spinner-delay': `-${((spinnerCount - i) * 100).toString()}ms`,\n '--spinner-duration': `${(spinnerCount * 100).toString()}ms`,\n '--spinner-rotate': `${((360 / spinnerCount) * i).toString()}deg`,\n width: `${(100 / spinnerCount).toString()}%`,\n } as CSSProperties\n }\n />\n ))}\n </span>\n );\n\n if (children === undefined) {\n return spinner;\n }\n\n return (\n <span className=\"relative\">\n <span aria-hidden className=\"invisible contents\">\n {children}\n </span>\n <VisuallyHidden>{children}</VisuallyHidden>\n <span className=\"absolute inset-0 flex items-center justify-center\">{spinner}</span>\n </span>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { SpinnerProps };\nexport { Spinner };\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";var _chunk2T5ATHNGcjs = require('./chunk-2T5ATHNG.cjs');var _chunkMTR3VABRcjs = require('./chunk-MTR3VABR.cjs');var _chunkAK26BZ5Acjs = require('./chunk-AK26BZ5A.cjs');var _chunkYZHSPX6Ycjs = require('./chunk-YZHSPX6Y.cjs');var _chunkMSABUPTOcjs = require('./chunk-MSABUPTO.cjs');var _chunkA5RWHIEDcjs = require('./chunk-A5RWHIED.cjs');var _chunkSMJEDCFPcjs = require('./chunk-SMJEDCFP.cjs');var _hooks = require('@codefast/hooks');var _reactslot = require('@radix-ui/react-slot');var _reactvisuallyhidden = require('@radix-ui/react-visually-hidden');var _jscookie = require('js-cookie'); var _jscookie2 = _interopRequireDefault(_jscookie);var _lucidereact = require('lucide-react');var _react = require('react');var _tailwindvariants = require('tailwind-variants');var _jsxruntime = require('react/jsx-runtime');var q="sidebar:state",$=7,Q="16rem",U="18rem",Y="3rem",Z="b",ee=768,D=_react.createContext.call(void 0, null);function x(){let e=_react.useContext.call(void 0, D);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}function ge({children:e,className:t,defaultOpen:n=!0,onOpenChange:r,open:i,style:l,...f}){let p=_hooks.useMediaQuery.call(void 0, `(max-width: ${ee-1}px)`),[u,d]=_react.useState.call(void 0, !1),[S,w]=_react.useState.call(void 0, n),m=_nullishCoalesce(i, () => (S)),v=_react.useCallback.call(void 0, s=>{let b=typeof s=="function"?s(m):s;r?r(b):w(b),_jscookie2.default.set(q,String(b),{expires:$,path:"/"})},[r,m]),h=_react.useCallback.call(void 0, ()=>{p?d(s=>!s):v(s=>!s)},[p,v,d]);_react.useEffect.call(void 0, ()=>{let s=b=>{b.key===Z&&(b.metaKey||b.ctrlKey)&&(b.preventDefault(),h())};return window.addEventListener("keydown",s),()=>{window.removeEventListener("keydown",s)}},[h]);let C=m?"expanded":"collapsed",G=_react.useMemo.call(void 0, ()=>({isMobile:p,open:m,openMobile:u,setOpen:v,setOpenMobile:d,state:C,toggleSidebar:h}),[C,m,v,p,u,d,h]);return _jsxruntime.jsx.call(void 0, D.Provider,{value:G,children:_jsxruntime.jsx.call(void 0, _chunk2T5ATHNGcjs.a,{delayDuration:0,children:_jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "group/sidebar-wrapper has-[[data-variant=inset]]:bg-sidebar flex min-h-svh w-full",t),style:{"--sidebar-width":Q,"--sidebar-width-icon":Y,...l},...f,children:e})})})}function Se({children:e,className:t,collapsible:n="offcanvas",side:r="left",variant:i="sidebar",...l}){let{isMobile:f,openMobile:p,setOpenMobile:u,state:d}=x();return n==="none"?_jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "bg-sidebar text-sidebar-foreground w-(--sidebar-width) flex h-full flex-col",t),...l,children:e}):f?_jsxruntime.jsx.call(void 0, _chunkMTR3VABRcjs.a,{open:p,onOpenChange:u,...l,children:_jsxruntime.jsxs.call(void 0, _chunkMTR3VABRcjs.c,{className:"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden","data-mobile":"true","data-sidebar":"sidebar",side:r,style:{"--sidebar-width":U},children:[_jsxruntime.jsxs.call(void 0, _reactvisuallyhidden.VisuallyHidden,{children:[_jsxruntime.jsx.call(void 0, _chunkMTR3VABRcjs.g,{children:"Sidebar"}),_jsxruntime.jsx.call(void 0, _chunkMTR3VABRcjs.h,{children:"Press escape to close the sidebar"})]}),_jsxruntime.jsx.call(void 0, "div",{className:"flex h-full w-full flex-col",children:e})]})}):_jsxruntime.jsxs.call(void 0, "div",{className:"text-sidebar-foreground group peer hidden md:block","data-collapsible":d==="collapsed"?n:"","data-side":r,"data-state":d,"data-variant":i,children:[_jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "w-(--sidebar-width) relative h-svh bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180",i==="floating"||i==="inset"?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),_jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "w-(--sidebar-width) fixed inset-y-0 z-10 hidden h-svh transition-[left,right,width] duration-200 ease-linear md:flex",r==="left"?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",i==="floating"||i==="inset"?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",t),...l,children:_jsxruntime.jsx.call(void 0, "div",{className:"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow","data-sidebar":"sidebar",children:e})})]})}function ve({className:e,onClick:t,...n}){let{toggleSidebar:r}=x();return _jsxruntime.jsxs.call(void 0, _chunkA5RWHIEDcjs.a,{icon:!0,className:_chunkSMJEDCFPcjs.a.call(void 0, "",e),"data-sidebar":"trigger",size:"xxs",variant:"ghost",onClick:i=>{_optionalChain([t, 'optionalCall', _2 => _2(i)]),r()},...n,children:[_jsxruntime.jsx.call(void 0, _lucidereact.PanelLeftIcon,{}),_jsxruntime.jsx.call(void 0, "span",{className:"sr-only",children:"Toggle Sidebar"})]})}function he({className:e,...t}){let{toggleSidebar:n}=x();return _jsxruntime.jsx.call(void 0, "button",{"aria-label":"Toggle Sidebar",className:_chunkSMJEDCFPcjs.a.call(void 0, "hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",e),"data-sidebar":"rail",tabIndex:-1,title:"Toggle Sidebar",type:"button",onClick:n,...t})}function xe({className:e,...t}){return _jsxruntime.jsx.call(void 0, "main",{className:_chunkSMJEDCFPcjs.a.call(void 0, "bg-background relative flex min-h-svh flex-1 flex-col","peer-data-[variant=inset]:min-h-[calc(100svh-var(--spacing-4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",e),...t})}function Pe({className:e,...t}){return _jsxruntime.jsx.call(void 0, _chunkMSABUPTOcjs.a,{className:_chunkSMJEDCFPcjs.a.call(void 0, "bg-background focus-visible:ring-sidebar-ring focus-visible:ring-3 h-8 w-full shadow-none",e),"data-sidebar":"input",...t})}function we({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "flex flex-col gap-2 p-2",e),"data-sidebar":"header",...t})}function Ce({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "flex flex-col gap-2 p-2",e),"data-sidebar":"footer",...t})}function ye({className:e,...t}){return _jsxruntime.jsx.call(void 0, _chunkYZHSPX6Ycjs.a,{className:_chunkSMJEDCFPcjs.a.call(void 0, "bg-sidebar-border mx-2 w-auto",e),"data-sidebar":"separator",...t})}function Me({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),"data-sidebar":"content",...t})}function Ee({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "relative flex w-full min-w-0 flex-col p-2",e),"data-sidebar":"group",...t})}function Ie({asChild:e=!1,className:t,...n}){return _jsxruntime.jsx.call(void 0, e?_reactslot.Slot:"div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "text-sidebar-foreground/70 ring-sidebar-ring focus-visible:ring-3 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-none transition-[margin,opa] duration-200 ease-linear [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",t),"data-sidebar":"group-label",...n})}function Ne({asChild:e=!1,className:t,...n}){return _jsxruntime.jsx.call(void 0, e?_reactslot.Slot:"button",{className:_chunkSMJEDCFPcjs.a.call(void 0, "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",t),"data-sidebar":"group-action",...n})}function _e({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "w-full text-sm",e),"data-sidebar":"group-content",...t})}function ke({className:e,...t}){return _jsxruntime.jsx.call(void 0, "ul",{className:_chunkSMJEDCFPcjs.a.call(void 0, "flex w-full min-w-0 flex-col gap-1",e),"data-sidebar":"menu",...t})}function Be({className:e,...t}){return _jsxruntime.jsx.call(void 0, "li",{className:_chunkSMJEDCFPcjs.a.call(void 0, "group/menu-item relative",e),"data-sidebar":"menu-item",...t})}var te=_tailwindvariants.tv.call(void 0, {base:"peer/menu-button ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground focus-visible:ring-3 flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none transition-[width,height,padding] disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:font-medium group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",defaultVariants:{size:"default",variant:"default"},variants:{size:{default:"h-8 text-sm",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0",sm:"h-7 text-xs"},variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background hover:bg-sidebar-accent hover:text-sidebar-accent-foreground shadow-[0_0_0_1px_hsl(var(--color-sidebar-border))] hover:shadow-[0_0_0_1px_hsl(var(--color-sidebar-accent))]"}}});function Xe({asChild:e=!1,className:t,isActive:n=!1,size:r="default",tooltip:i,variant:l="default",...f}){let p=e?_reactslot.Slot:"button",{isMobile:u,state:d}=x(),S=_jsxruntime.jsx.call(void 0, p,{className:_chunkSMJEDCFPcjs.a.call(void 0, te({size:r,variant:l}),t),"data-active":n,"data-sidebar":"menu-button","data-size":r,...f});return i?_jsxruntime.jsxs.call(void 0, _chunk2T5ATHNGcjs.b,{children:[_jsxruntime.jsx.call(void 0, _chunk2T5ATHNGcjs.c,{asChild:!0,children:S}),_jsxruntime.jsx.call(void 0, _chunk2T5ATHNGcjs.d,{align:"center",hidden:d!=="collapsed"||u,side:"right",...typeof i=="string"?{children:i}:i})]}):S}function Je({asChild:e=!1,className:t,showOnHover:n=!1,...r}){return _jsxruntime.jsx.call(void 0, e?_reactslot.Slot:"button",{className:_chunkSMJEDCFPcjs.a.call(void 0, "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",n&&"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0",t),"data-sidebar":"menu-action",...r})}function Te({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",e),"data-sidebar":"menu-badge",...t})}function ze({className:e,showIcon:t=!1,...n}){let r=_react.useMemo.call(void 0, ()=>`${Math.floor(Math.random()*40)+50}%`,[]);return _jsxruntime.jsxs.call(void 0, "div",{className:_chunkSMJEDCFPcjs.a.call(void 0, "flex h-8 items-center gap-2 rounded-md px-2",e),"data-sidebar":"menu-skeleton",...n,children:[t?_jsxruntime.jsx.call(void 0, _chunkAK26BZ5Acjs.a,{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}):null,_jsxruntime.jsx.call(void 0, _chunkAK26BZ5Acjs.a,{className:"max-w-(--skeleton-width) h-4 flex-1","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":r}})]})}function Ae({className:e,...t}){return _jsxruntime.jsx.call(void 0, "ul",{className:_chunkSMJEDCFPcjs.a.call(void 0, "border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",e),"data-sidebar":"menu-sub",...t})}function Oe({...e}){return _jsxruntime.jsx.call(void 0, "li",{...e})}function De({asChild:e=!1,className:t,isActive:n,size:r="md",...i}){return _jsxruntime.jsx.call(void 0, e?_reactslot.Slot:"a",{className:_chunkSMJEDCFPcjs.a.call(void 0, "text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground focus-visible:ring-3 flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",r==="sm"&&"text-xs",r==="md"&&"text-sm","group-data-[collapsible=icon]:hidden",t),"data-active":n,"data-sidebar":"menu-sub-button","data-size":r,...i})}exports.a = x; exports.b = ge; exports.c = Se; exports.d = ve; exports.e = he; exports.f = xe; exports.g = Pe; exports.h = we; exports.i = Ce; exports.j = ye; exports.k = Me; exports.l = Ee; exports.m = Ie; exports.n = Ne; exports.o = _e; exports.p = ke; exports.q = Be; exports.r = Xe; exports.s = Je; exports.t = Te; exports.u = ze; exports.v = Ae; exports.w = Oe; exports.x = De;
2
- //# sourceMappingURL=chunk-7AO2GOMC.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-7AO2GOMC.cjs","../src/components/sidebar.tsx"],"names":["Cookies","SIDEBAR_WIDTH_MOBILE","SIDEBAR_MOBILE_BREAKPOINT","SidebarContext","createContext","useSidebar","SidebarProvider","children","className","defaultOpen","setOpenProp","style","props","isMobile","useMediaQuery","openMobile","useState","isOpen","setIsOpen","open","openProp","setOpen","useCallback","value","openState","SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","setOpenMobile","currentValue","useEffect","handleKeyDown","event","SIDEBAR_KEYBOARD_SHORTCUT","state","contextValue","toggleSidebar","jsx","TooltipProvider","cn","Sidebar","collapsible","SheetContent","jsxs","VisuallyHidden","SheetTitle","side","variant","SidebarTrigger","Button","onClick","PanelLeftIcon","SidebarRail","SidebarInset","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","SidebarMenuButton","isActive","Component","button","size","Tooltip","TooltipTrigger","tooltip","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","useMemo"],"mappings":"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","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-7AO2GOMC.cjs","sourcesContent":[null,"'use client';\n\nimport type { ComponentProps, CSSProperties, JSX } from 'react';\nimport type { VariantProps } from 'tailwind-variants';\n\nimport { useMediaQuery } from '@codefast/hooks';\nimport { Slot } from '@radix-ui/react-slot';\nimport { VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport Cookies from 'js-cookie';\nimport { PanelLeftIcon } from 'lucide-react';\nimport { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';\nimport { tv } from 'tailwind-variants';\n\nimport { Button } from '@/components/button';\nimport { Input } from '@/components/input';\nimport { Separator } from '@/components/separator';\nimport { Sheet, SheetContent, SheetDescription, SheetTitle } from '@/components/sheet';\nimport { Skeleton } from '@/components/skeleton';\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/tooltip';\nimport { cn } from '@/lib/utils';\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar:state';\nconst SIDEBAR_COOKIE_MAX_AGE = 7; // 1 week in days.\nconst SIDEBAR_WIDTH = '16rem';\nconst SIDEBAR_WIDTH_MOBILE = '18rem';\nconst SIDEBAR_WIDTH_ICON = '3rem';\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b';\nconst SIDEBAR_MOBILE_BREAKPOINT = 768;\n\ninterface SidebarContext {\n isMobile: boolean;\n open: boolean;\n openMobile: boolean;\n setOpen: (open: boolean) => void;\n setOpenMobile: (open: boolean) => void;\n state: 'collapsed' | 'expanded';\n toggleSidebar: () => void;\n}\n\nconst SidebarContext = createContext<null | SidebarContext>(null);\n\nfunction useSidebar(): SidebarContext {\n const context = useContext(SidebarContext);\n\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarProvider\n * -------------------------------------------------------------------------- */\n\ninterface SidebarProviderProps extends ComponentProps<'div'> {\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n}\n\nfunction SidebarProvider({\n children,\n className,\n defaultOpen = true,\n onOpenChange: setOpenProp,\n open: openProp,\n style,\n ...props\n}: SidebarProviderProps): JSX.Element {\n const isMobile = useMediaQuery(`(max-width: ${SIDEBAR_MOBILE_BREAKPOINT - 1}px)`);\n const [openMobile, setOpenMobile] = useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const open = openProp ?? isOpen;\n const setOpen = useCallback(\n (value: ((value: boolean) => boolean) | boolean) => {\n const openState = typeof value === 'function' ? value(open) : value;\n\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n setIsOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n Cookies.set(SIDEBAR_COOKIE_NAME, String(openState), {\n expires: SIDEBAR_COOKIE_MAX_AGE,\n path: '/',\n });\n },\n [setOpenProp, open],\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = useCallback(() => {\n if (isMobile) {\n setOpenMobile((currentValue) => !currentValue);\n } else {\n setOpen((currentValue) => !currentValue);\n }\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent): void => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener('keydown', handleKeyDown);\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n };\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed';\n\n const contextValue = useMemo<SidebarContext>(\n () => ({\n isMobile,\n open,\n openMobile,\n setOpen,\n setOpenMobile,\n state,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar],\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n className={cn(\n 'group/sidebar-wrapper has-[[data-variant=inset]]:bg-sidebar flex min-h-svh w-full',\n className,\n )}\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style,\n } as CSSProperties\n }\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: Sidebar\n * -------------------------------------------------------------------------- */\n\ninterface SidebarProps extends ComponentProps<'div'> {\n collapsible?: 'icon' | 'none' | 'offcanvas';\n side?: 'left' | 'right';\n variant?: 'floating' | 'inset' | 'sidebar';\n}\n\nfunction Sidebar({\n children,\n className,\n collapsible = 'offcanvas',\n side = 'left',\n variant = 'sidebar',\n ...props\n}: SidebarProps): JSX.Element {\n const { isMobile, openMobile, setOpenMobile, state } = useSidebar();\n\n if (collapsible === 'none') {\n return (\n <div\n className={cn(\n 'bg-sidebar text-sidebar-foreground w-(--sidebar-width) flex h-full flex-col',\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n className=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\"\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n side={side}\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n } as CSSProperties\n }\n >\n <VisuallyHidden>\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Press escape to close the sidebar</SheetDescription>\n </VisuallyHidden>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n className=\"text-sidebar-foreground group peer hidden md:block\"\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-side={side}\n data-state={state}\n data-variant={variant}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n 'w-(--sidebar-width) relative h-svh bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n )}\n />\n <div\n className={cn(\n 'w-(--sidebar-width) fixed inset-y-0 z-10 hidden h-svh transition-[left,right,width] duration-200 ease-linear md:flex',\n side === 'left'\n ? 'left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n : 'right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className,\n )}\n {...props}\n >\n <div\n className=\"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow\"\n data-sidebar=\"sidebar\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarTrigger\n * -------------------------------------------------------------------------- */\n\ntype SidebarTriggerProps = ComponentProps<typeof Button>;\n\nfunction SidebarTrigger({ className, onClick, ...props }: SidebarTriggerProps): JSX.Element {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n icon\n className={cn('', className)}\n data-sidebar=\"trigger\"\n size=\"xxs\"\n variant=\"ghost\"\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarRail\n * -------------------------------------------------------------------------- */\n\ntype SidebarRailProps = ComponentProps<'button'>;\n\nfunction SidebarRail({ className, ...props }: SidebarRailProps): JSX.Element {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n aria-label=\"Toggle Sidebar\"\n className={cn(\n 'hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex',\n '[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:hover:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className,\n )}\n data-sidebar=\"rail\"\n tabIndex={-1}\n title=\"Toggle Sidebar\"\n type=\"button\"\n onClick={toggleSidebar}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarInset\n * -------------------------------------------------------------------------- */\n\ntype SidebarInsetProps = ComponentProps<'main'>;\n\nfunction SidebarInset({ className, ...props }: SidebarInsetProps): JSX.Element {\n return (\n <main\n className={cn(\n 'bg-background relative flex min-h-svh flex-1 flex-col',\n 'peer-data-[variant=inset]:min-h-[calc(100svh-var(--spacing-4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarInput\n * -------------------------------------------------------------------------- */\n\ntype SidebarInputProps = ComponentProps<typeof Input>;\n\nfunction SidebarInput({ className, ...props }: SidebarInputProps): JSX.Element {\n return (\n <Input\n className={cn(\n 'bg-background focus-visible:ring-sidebar-ring focus-visible:ring-3 h-8 w-full shadow-none',\n className,\n )}\n data-sidebar=\"input\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarHeader\n * -------------------------------------------------------------------------- */\n\ntype SidebarHeaderProps = ComponentProps<'div'>;\n\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps): JSX.Element {\n return (\n <div className={cn('flex flex-col gap-2 p-2', className)} data-sidebar=\"header\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarFooter\n * -------------------------------------------------------------------------- */\n\ntype SidebarFooterProps = ComponentProps<'div'>;\n\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps): JSX.Element {\n return (\n <div className={cn('flex flex-col gap-2 p-2', className)} data-sidebar=\"footer\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarSeparator\n * -------------------------------------------------------------------------- */\n\ntype SidebarSeparatorProps = ComponentProps<typeof Separator>;\n\nfunction SidebarSeparator({ className, ...props }: SidebarSeparatorProps): JSX.Element {\n return (\n <Separator\n className={cn('bg-sidebar-border mx-2 w-auto', className)}\n data-sidebar=\"separator\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarContent\n * -------------------------------------------------------------------------- */\n\ntype SidebarContentProps = ComponentProps<'div'>;\n\nfunction SidebarContent({ className, ...props }: SidebarContentProps): JSX.Element {\n return (\n <div\n className={cn(\n 'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className,\n )}\n data-sidebar=\"content\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroup\n * -------------------------------------------------------------------------- */\n\ntype SidebarGroupProps = ComponentProps<'div'>;\n\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps): JSX.Element {\n return (\n <div\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n data-sidebar=\"group\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupLabel\n * -------------------------------------------------------------------------- */\n\ninterface SidebarGroupLabelProps extends ComponentProps<'div'> {\n asChild?: boolean;\n}\n\nfunction SidebarGroupLabel({\n asChild = false,\n className,\n ...props\n}: SidebarGroupLabelProps): JSX.Element {\n const Component = asChild ? Slot : 'div';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground/70 ring-sidebar-ring focus-visible:ring-3 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-none transition-[margin,opa] duration-200 ease-linear [&>svg]:size-4 [&>svg]:shrink-0',\n 'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n className,\n )}\n data-sidebar=\"group-label\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupAction\n * -------------------------------------------------------------------------- */\n\ninterface SidebarGroupActionProps extends ComponentProps<'button'> {\n asChild?: boolean;\n}\n\nfunction SidebarGroupAction({\n asChild = false,\n className,\n ...props\n}: SidebarGroupActionProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"group-action\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarGroupContent\n * -------------------------------------------------------------------------- */\n\ntype SidebarGroupContentProps = ComponentProps<'div'>;\n\nfunction SidebarGroupContent({ className, ...props }: SidebarGroupContentProps): JSX.Element {\n return (\n <div className={cn('w-full text-sm', className)} data-sidebar=\"group-content\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenu\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuProps = ComponentProps<'ul'>;\n\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps): JSX.Element {\n return (\n <ul\n className={cn('flex w-full min-w-0 flex-col gap-1', className)}\n data-sidebar=\"menu\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuItem\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuItemProps = ComponentProps<'li'>;\n\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps): JSX.Element {\n return (\n <li className={cn('group/menu-item relative', className)} data-sidebar=\"menu-item\" {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuButton\n * -------------------------------------------------------------------------- */\n\nconst sidebarMenuButtonVariants = tv({\n base: 'peer/menu-button ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground focus-visible:ring-3 flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none transition-[width,height,padding] disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:font-medium group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n defaultVariants: {\n size: 'default',\n variant: 'default',\n },\n variants: {\n size: {\n default: 'h-8 text-sm',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:!p-0',\n sm: 'h-7 text-xs',\n },\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background hover:bg-sidebar-accent hover:text-sidebar-accent-foreground shadow-[0_0_0_1px_hsl(var(--color-sidebar-border))] hover:shadow-[0_0_0_1px_hsl(var(--color-sidebar-accent))]',\n },\n },\n});\n\ninterface SidebarMenuButtonProps\n extends ComponentProps<'button'>,\n VariantProps<typeof sidebarMenuButtonVariants> {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: ComponentProps<typeof TooltipContent> | string;\n}\n\nfunction SidebarMenuButton({\n asChild = false,\n className,\n isActive = false,\n size = 'default',\n tooltip,\n variant = 'default',\n ...props\n}: SidebarMenuButtonProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Component\n className={cn(sidebarMenuButtonVariants({ size, variant }), className)}\n data-active={isActive}\n data-sidebar=\"menu-button\"\n data-size={size}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n const tooltipProps =\n typeof tooltip === 'string'\n ? {\n children: tooltip,\n }\n : tooltip;\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n align=\"center\"\n hidden={state !== 'collapsed' || isMobile}\n side=\"right\"\n {...tooltipProps}\n />\n </Tooltip>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuAction\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuActionProps extends ComponentProps<'button'> {\n asChild?: boolean;\n showOnHover?: boolean;\n}\n\nfunction SidebarMenuAction({\n asChild = false,\n className,\n showOnHover = false,\n ...props\n}: SidebarMenuActionProps): JSX.Element {\n const Component = asChild ? Slot : 'button';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground focus-visible:ring-3 absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-none transition-transform [&>svg]:size-4 [&>svg]:shrink-0',\n // Increases the hit area of the button on mobile.\n 'after:absolute after:-inset-2 after:md:hidden',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n showOnHover &&\n 'peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0',\n className,\n )}\n data-sidebar=\"menu-action\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuBadge\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuBadgeProps = ComponentProps<'div'>;\n\nfunction SidebarMenuBadge({ className, ...props }: SidebarMenuBadgeProps): JSX.Element {\n return (\n <div\n className={cn(\n 'text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums',\n 'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n 'peer-data-[size=sm]/menu-button:top-1',\n 'peer-data-[size=default]/menu-button:top-1.5',\n 'peer-data-[size=lg]/menu-button:top-2.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"menu-badge\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSkeleton\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuSkeletonProps extends ComponentProps<'div'> {\n showIcon?: boolean;\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: SidebarMenuSkeletonProps): JSX.Element {\n // Random width between 50 to 90%.\n const width = useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n data-sidebar=\"menu-skeleton\"\n {...props}\n >\n {showIcon ? (\n <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />\n ) : null}\n <Skeleton\n className=\"max-w-(--skeleton-width) h-4 flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width,\n } as CSSProperties\n }\n />\n </div>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSub\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuSubProps = ComponentProps<'ul'>;\n\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps): JSX.Element {\n return (\n <ul\n className={cn(\n 'border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-sidebar=\"menu-sub\"\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSubItem\n * -------------------------------------------------------------------------- */\n\ntype SidebarMenuSubItemProps = ComponentProps<'li'>;\n\nfunction SidebarMenuSubItem({ ...props }: SidebarMenuSubItemProps): JSX.Element {\n return <li {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SidebarMenuSubButton\n * -------------------------------------------------------------------------- */\n\ninterface SidebarMenuSubButtonProps extends ComponentProps<'a'> {\n asChild?: boolean;\n isActive?: boolean;\n size?: 'md' | 'sm';\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n className,\n isActive,\n size = 'md',\n ...props\n}: SidebarMenuSubButtonProps): JSX.Element {\n const Component = asChild ? Slot : 'a';\n\n return (\n <Component\n className={cn(\n 'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground focus-visible:ring-3 flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-none disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n 'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n size === 'sm' && 'text-xs',\n size === 'md' && 'text-sm',\n 'group-data-[collapsible=icon]:hidden',\n className,\n )}\n data-active={isActive}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"]}
@@ -1,2 +0,0 @@
1
- import{a as n}from"./chunk-OKUFCFYT.js";import*as e from"@radix-ui/react-menubar";import{CheckIcon as p,ChevronRightIcon as m,DotIcon as b}from"lucide-react";import{jsx as o,jsxs as s}from"react/jsx-runtime";var l=e.Menu,M=e.Group,P=e.Sub,f=e.RadioGroup;function g({className:t,...r}){return o(e.Root,{className:n("bg-background flex h-10 items-center space-x-1 rounded-md border p-1",t),...r})}function v({className:t,...r}){return o(e.Trigger,{className:n("gap-x-2 px-3 py-1.5","flex cursor-pointer select-none items-center rounded-sm text-sm font-medium","focus:bg-accent focus:text-accent-foreground focus:outline-none","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t),...r})}function x({children:t,className:r,inset:a,...i}){return s(e.SubTrigger,{className:n("gap-x-2 px-3 py-1.5","flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",a&&"pl-8",r),...i,children:[t,o(m,{className:"ml-auto size-4"})]})}function y({className:t,...r}){return o(e.Portal,{children:o(e.SubContent,{className:n("bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95","data-[state=open]:data-[side=top]:slide-in-from-bottom-2","data-[state=open]:data-[side=right]:slide-in-from-left-2","data-[state=open]:data-[side=bottom]:slide-in-from-top-2","data-[state=open]:data-[side=left]:slide-in-from-right-2","data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95","data-[state=closed]:data-[side=top]:slide-out-to-bottom-2","data-[state=closed]:data-[side=left]:slide-out-to-right-2","data-[state=closed]:data-[side=bottom]:slide-out-to-top-2","data-[state=closed]:data-[side=right]:slide-out-to-left-2",t),...r})})}function S({align:t="start",alignOffset:r=-4,className:a,sideOffset:i=8,...u}){return o(e.Portal,{children:o(e.Content,{align:t,alignOffset:r,className:n("bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2",a),sideOffset:i,...u})})}function C({className:t,inset:r,...a}){return o(e.Item,{className:n("gap-x-2 px-3 py-1.5","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",r&&"pl-8",t),...a})}function I({checked:t,children:r,className:a,...i}){return s(e.CheckboxItem,{checked:t,className:n("gap-x-2 px-3 py-1.5","pl-8","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",a),...i,children:[o("span",{className:"absolute left-2 flex size-3.5 items-center justify-center",children:o(e.ItemIndicator,{children:o(p,{className:"size-4"})})}),r]})}function h({children:t,className:r,...a}){return s(e.RadioItem,{className:n("gap-x-2 px-3 py-1.5","pl-8","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",r),...a,children:[o("span",{className:"absolute left-2 flex size-3.5 items-center justify-center",children:o(e.ItemIndicator,{children:o(b,{className:"size-4 fill-current"})})}),t]})}function N({className:t,inset:r,...a}){return o(e.Label,{className:n("gap-x-2 px-3 py-1.5","flex items-center text-sm font-semibold",r&&"pl-8",t),...a})}function R({className:t,...r}){return o(e.Separator,{className:n("bg-muted mx-2 my-1 h-px",t),...r})}function J({className:t,...r}){return o("span",{className:n("text-muted-foreground ml-auto text-xs tracking-widest",t),...r})}function T({className:t,...r}){return o(e.Arrow,{className:n("fill-popover",t),...r})}export{l as a,M as b,P as c,f as d,g as e,v as f,x as g,y as h,S as i,C as j,I as k,h as l,N as m,R as n,J as o,T as p};
2
- //# sourceMappingURL=chunk-7X325ZDU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/menubar.tsx"],"names":["MenubarPrimitive","CheckIcon","ChevronRightIcon","DotIcon","jsx","jsxs","MenubarMenu","MenubarGroup","MenubarSub","MenubarRadioGroup","Menubar","className","props","cn","MenubarTrigger","MenubarSubTrigger","children","inset","MenubarSubContent","MenubarContent","align","alignOffset","sideOffset","MenubarItem","MenubarCheckboxItem","checked","MenubarRadioItem","MenubarLabel","MenubarSeparator","MenubarShortcut","MenubarArrow"],"mappings":"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","sourcesContent":["import type { ComponentProps, JSX } from 'react';\n\nimport * as MenubarPrimitive from '@radix-ui/react-menubar';\nimport { CheckIcon, ChevronRightIcon, DotIcon } from 'lucide-react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarMenu\n * -------------------------------------------------------------------------- */\n\ntype MenubarMenuProps = ComponentProps<typeof MenubarPrimitive.Menu>;\nconst MenubarMenu = MenubarPrimitive.Menu;\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarGroup\n * -------------------------------------------------------------------------- */\n\ntype MenubarGroupProps = ComponentProps<typeof MenubarPrimitive.Group>;\nconst MenubarGroup = MenubarPrimitive.Group;\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarSub\n * -------------------------------------------------------------------------- */\n\ntype MenubarSubProps = ComponentProps<typeof MenubarPrimitive.Sub>;\nconst MenubarSub = MenubarPrimitive.Sub;\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarRadioGroup\n * -------------------------------------------------------------------------- */\n\ntype MenubarRadioGroupProps = ComponentProps<typeof MenubarPrimitive.RadioGroup>;\nconst MenubarRadioGroup = MenubarPrimitive.RadioGroup;\n\n/* -----------------------------------------------------------------------------\n * Component: Menubar\n * -------------------------------------------------------------------------- */\n\ntype MenubarProps = ComponentProps<typeof MenubarPrimitive.Root>;\n\nfunction Menubar({ className, ...props }: MenubarProps): JSX.Element {\n return (\n <MenubarPrimitive.Root\n className={cn(\n 'bg-background flex h-10 items-center space-x-1 rounded-md border p-1',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarTrigger\n * -------------------------------------------------------------------------- */\n\ntype MenubarTriggerProps = ComponentProps<typeof MenubarPrimitive.Trigger>;\n\nfunction MenubarTrigger({ className, ...props }: MenubarTriggerProps): JSX.Element {\n return (\n <MenubarPrimitive.Trigger\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded-sm text-sm font-medium',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarSubTrigger\n * -------------------------------------------------------------------------- */\n\ninterface MenubarSubTriggerProps extends ComponentProps<typeof MenubarPrimitive.SubTrigger> {\n inset?: boolean;\n}\n\nfunction MenubarSubTrigger({\n children,\n className,\n inset,\n ...props\n}: MenubarSubTriggerProps): JSX.Element {\n return (\n <MenubarPrimitive.SubTrigger\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </MenubarPrimitive.SubTrigger>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarSubContent\n * -------------------------------------------------------------------------- */\n\ntype MenubarSubContentProps = ComponentProps<typeof MenubarPrimitive.SubContent>;\n\nfunction MenubarSubContent({ className, ...props }: MenubarSubContentProps): JSX.Element {\n return (\n <MenubarPrimitive.Portal>\n <MenubarPrimitive.SubContent\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n className,\n )}\n {...props}\n />\n </MenubarPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarContent\n * -------------------------------------------------------------------------- */\n\ntype MenubarContentProps = ComponentProps<typeof MenubarPrimitive.Content>;\n\nfunction MenubarContent({\n align = 'start',\n alignOffset = -4,\n className,\n sideOffset = 8,\n ...props\n}: MenubarContentProps): JSX.Element {\n return (\n <MenubarPrimitive.Portal>\n <MenubarPrimitive.Content\n align={align}\n alignOffset={alignOffset}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2',\n className,\n )}\n sideOffset={sideOffset}\n {...props}\n />\n </MenubarPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarItem\n * -------------------------------------------------------------------------- */\n\ninterface MenubarItemProps extends ComponentProps<typeof MenubarPrimitive.Item> {\n inset?: boolean;\n}\n\nfunction MenubarItem({ className, inset, ...props }: MenubarItemProps): JSX.Element {\n return (\n <MenubarPrimitive.Item\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarCheckboxItem\n * -------------------------------------------------------------------------- */\n\ntype MenubarCheckboxItemProps = ComponentProps<typeof MenubarPrimitive.CheckboxItem>;\n\nfunction MenubarCheckboxItem({\n checked,\n children,\n className,\n ...props\n}: MenubarCheckboxItemProps): JSX.Element {\n return (\n <MenubarPrimitive.CheckboxItem\n checked={checked}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarRadioItem\n * -------------------------------------------------------------------------- */\n\ntype MenubarRadioItemProps = ComponentProps<typeof MenubarPrimitive.RadioItem>;\n\nfunction MenubarRadioItem({ children, className, ...props }: MenubarRadioItemProps): JSX.Element {\n return (\n <MenubarPrimitive.RadioItem\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded-sm text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <DotIcon className=\"size-4 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarLabel\n * -------------------------------------------------------------------------- */\n\ninterface MenubarLabelProps extends ComponentProps<typeof MenubarPrimitive.Label> {\n inset?: boolean;\n}\n\nfunction MenubarLabel({ className, inset, ...props }: MenubarLabelProps): JSX.Element {\n return (\n <MenubarPrimitive.Label\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex items-center text-sm font-semibold',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarSeparator\n * -------------------------------------------------------------------------- */\n\ntype MenubarSeparatorProps = ComponentProps<typeof MenubarPrimitive.Separator>;\n\nfunction MenubarSeparator({ className, ...props }: MenubarSeparatorProps): JSX.Element {\n return (\n <MenubarPrimitive.Separator className={cn('bg-muted mx-2 my-1 h-px', className)} {...props} />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarShortcut\n * -------------------------------------------------------------------------- */\n\ntype MenubarShortcutProps = ComponentProps<'span'>;\n\nfunction MenubarShortcut({ className, ...props }: MenubarShortcutProps): JSX.Element {\n return (\n <span\n className={cn('text-muted-foreground ml-auto text-xs tracking-widest', className)}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: MenubarArrow\n * -------------------------------------------------------------------------- */\n\ntype MenubarArrowProps = MenubarPrimitive.MenubarArrowProps;\n\nfunction MenubarArrow({ className, ...props }: MenubarArrowProps): JSX.Element {\n return <MenubarPrimitive.Arrow className={cn('fill-popover', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type {\n MenubarArrowProps,\n MenubarCheckboxItemProps,\n MenubarContentProps,\n MenubarGroupProps,\n MenubarItemProps,\n MenubarLabelProps,\n MenubarMenuProps,\n MenubarProps,\n MenubarRadioGroupProps,\n MenubarRadioItemProps,\n MenubarSeparatorProps,\n MenubarShortcutProps,\n MenubarSubContentProps,\n MenubarSubProps,\n MenubarSubTriggerProps,\n MenubarTriggerProps,\n};\nexport {\n Menubar,\n MenubarArrow,\n MenubarCheckboxItem,\n MenubarContent,\n MenubarGroup,\n MenubarItem,\n MenubarLabel,\n MenubarMenu,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSeparator,\n MenubarShortcut,\n MenubarSub,\n MenubarSubContent,\n MenubarSubTrigger,\n MenubarTrigger,\n};\n"]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJRMDTSBTcjs = require('./chunk-JRMDTSBT.cjs');var _chunkPGD5STRHcjs = require('./chunk-PGD5STRH.cjs');var _jsxruntime = require('react/jsx-runtime');function d({children:t,className:s,disabled:i,icon:f,inside:u,loaderPosition:r="prefix",loading:o,prefix:m,size:x,spinner:p,suffix:b,variant:c,...P}){return _jsxruntime.jsxs.call(void 0, "button",{className:_chunkPGD5STRHcjs.a.call(void 0, {className:s,icon:f,inside:u,size:x,variant:c}),disabled:o||i,type:"button",...P,children:[o&&r==="prefix"?p||_jsxruntime.jsx.call(void 0, _chunkJRMDTSBTcjs.a,{}):m,typeof t=="string"?_jsxruntime.jsx.call(void 0, "span",{className:"truncate",children:t}):t,o&&r==="suffix"?p||_jsxruntime.jsx.call(void 0, _chunkJRMDTSBTcjs.a,{}):b]})}exports.a = d;
2
- //# sourceMappingURL=chunk-A5RWHIED.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-A5RWHIED.cjs","../src/components/button.tsx"],"names":["Button","children","className","disabled","icon","inside","loaderPosition","loading","prefix","size","spinner","suffix","variant","props","jsxs","buttonVariants","jsx","Spinner"],"mappings":"AAAA,iIAAwC,wDAAoC,+CCmCxE,SAhBKA,CAAAA,CAAO,CACd,QAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CAAiB,QAAA,CACjB,OAAA,CAAAC,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAA6B,CAC3B,OACEC,8BAAAA,QAAC,CAAA,CACC,SAAA,CAAWC,iCAAAA,CACT,SAAA,CAAAb,CAAAA,CACA,IAAA,CAAAE,CAAAA,CACA,MAAA,CAAAC,CAAAA,CACA,IAAA,CAAAI,CAAAA,CACA,OAAA,CAAAG,CACF,CAAC,CAAA,CACD,QAAA,CAAUL,CAAAA,EAAWJ,CAAAA,CACrB,IAAA,CAAK,QAAA,CACJ,GAAGU,CAAAA,CAEH,QAAA,CAAA,CAAAN,CAAAA,EAAWD,CAAAA,GAAmB,QAAA,CAAWI,CAAAA,EAAWM,6BAAAA,mBAACC,CAAA,CAAA,CAAQ,CAAA,CAAKT,CAAAA,CAClE,OAAOP,CAAAA,EAAa,QAAA,CAAWe,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAU,UAAA,CAAY,QAAA,CAAAf,CAAAA,CAAS,CAAA,CAAUA,CAAAA,CAC9EM,CAAAA,EAAWD,CAAAA,GAAmB,QAAA,CAAWI,CAAAA,EAAWM,6BAAAA,mBAACC,CAAA,CAAA,CAAQ,CAAA,CAAKN,CAAAA,CAAAA,CACrE,CAEJ,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-A5RWHIED.cjs","sourcesContent":[null,"import type { ComponentProps, JSX, ReactNode } from 'react';\n\nimport type { ButtonVariantsProps } from '@/variants/button.variants';\n\nimport { Spinner } from '@/components/spinner';\nimport { buttonVariants } from '@/variants/button.variants';\n\n/* -----------------------------------------------------------------------------\n * Component: Button\n * -------------------------------------------------------------------------- */\n\ninterface ButtonProps extends Omit<ComponentProps<'button'>, 'prefix'>, ButtonVariantsProps {\n loaderPosition?: 'prefix' | 'suffix';\n loading?: boolean;\n prefix?: ReactNode;\n spinner?: ReactNode;\n suffix?: ReactNode;\n}\n\nfunction Button({\n children,\n className,\n disabled,\n icon,\n inside,\n loaderPosition = 'prefix',\n loading,\n prefix,\n size,\n spinner,\n suffix,\n variant,\n ...props\n}: ButtonProps): JSX.Element {\n return (\n <button\n className={buttonVariants({\n className,\n icon,\n inside,\n size,\n variant,\n })}\n disabled={loading || disabled}\n type=\"button\"\n {...props}\n >\n {loading && loaderPosition === 'prefix' ? spinner || <Spinner /> : prefix}\n {typeof children === 'string' ? <span className=\"truncate\">{children}</span> : children}\n {loading && loaderPosition === 'suffix' ? spinner || <Spinner /> : suffix}\n </button>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { ButtonProps };\nexport { Button };\n"]}
@@ -1,2 +0,0 @@
1
- import{a as r}from"./chunk-OKUFCFYT.js";import*as t from"@radix-ui/react-hover-card";import{jsx as a}from"react/jsx-runtime";var n=t.Root,p=t.Trigger;function m({align:o="center",className:e,sideOffset:d=6,...i}){return a(t.Portal,{children:a(t.Content,{align:o,className:r("bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-4 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95","data-[state=open]:data-[side=top]:slide-in-from-bottom-2","data-[state=open]:data-[side=left]:slide-in-from-right-2","data-[state=open]:data-[side=bottom]:slide-in-from-top-2","data-[state=open]:data-[side=right]:slide-in-from-left-2","data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95","data-[state=closed]:data-[side=top]:slide-out-to-bottom-2","data-[state=closed]:data-[side=left]:slide-out-to-right-2","data-[state=closed]:data-[side=bottom]:slide-out-to-top-2","data-[state=closed]:data-[side=right]:slide-out-to-left-2",e),sideOffset:d,...i})})}function v({className:o,...e}){return a(t.Arrow,{className:r("fill-popover",o),...e})}export{n as a,p as b,m as c,v as d};
2
- //# sourceMappingURL=chunk-AEHJUTB6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/hover-card.tsx"],"names":["HoverCardPrimitive","jsx","HoverCard","HoverCardTrigger","HoverCardContent","align","className","sideOffset","props","cn","HoverCardArrow"],"mappings":"wCAEA,UAAYA,MAAwB,6BAgC9B,cAAAC,MAAA,oBAvBN,IAAMC,EAA+B,OAO/BC,EAAsC,UAQ5C,SAASC,EAAiB,CACxB,MAAAC,EAAQ,SACR,UAAAC,EACA,WAAAC,EAAa,EACb,GAAGC,CACL,EAAuC,CACrC,OACEP,EAAoB,SAAnB,CACC,SAAAA,EAAoB,UAAnB,CACC,MAAOI,EACP,UAAWI,EACT,mFACA,sFACA,2DACA,2DACA,2DACA,2DACA,+FACA,4DACA,4DACA,4DACA,4DACAH,CACF,EACA,WAAYC,EACX,GAAGC,EACN,EACF,CAEJ,CAQA,SAASE,EAAe,CAAE,UAAAJ,EAAW,GAAGE,CAAM,EAAqC,CACjF,OAAOP,EAAoB,QAAnB,CAAyB,UAAWQ,EAAG,eAAgBH,CAAS,EAAI,GAAGE,EAAO,CACxF","sourcesContent":["import type { ComponentProps, JSX } from 'react';\n\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: HoverCard\n * -------------------------------------------------------------------------- */\n\ntype HoverCardProps = ComponentProps<typeof HoverCardPrimitive.Root>;\nconst HoverCard = HoverCardPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: HoverCardTrigger\n * -------------------------------------------------------------------------- */\n\ntype HoverCardTriggerProps = ComponentProps<typeof HoverCardPrimitive.Trigger>;\nconst HoverCardTrigger = HoverCardPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: HoverCardContent\n * -------------------------------------------------------------------------- */\n\ntype HoverCardContentProps = ComponentProps<typeof HoverCardPrimitive.Content>;\n\nfunction HoverCardContent({\n align = 'center',\n className,\n sideOffset = 6,\n ...props\n}: HoverCardContentProps): JSX.Element {\n return (\n <HoverCardPrimitive.Portal>\n <HoverCardPrimitive.Content\n align={align}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-4 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n className,\n )}\n sideOffset={sideOffset}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: HoverCardArrow\n * -------------------------------------------------------------------------- */\n\ntype HoverCardArrowProps = ComponentProps<typeof HoverCardPrimitive.Arrow>;\n\nfunction HoverCardArrow({ className, ...props }: HoverCardArrowProps): JSX.Element {\n return <HoverCardPrimitive.Arrow className={cn('fill-popover', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { HoverCardArrowProps, HoverCardContentProps, HoverCardProps, HoverCardTriggerProps };\nexport { HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger };\n"]}
@@ -1,2 +0,0 @@
1
- import{tv as e}from"tailwind-variants";var i=e({base:["inline-flex shrink-0 select-none items-center justify-center gap-2 whitespace-nowrap rounded-md px-4 text-sm font-medium shadow-sm transition","[&>svg]:shrink-0","focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none","disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none"],compoundVariants:[{className:"w-7",icon:!0,size:"xxs"},{className:"w-8",icon:!0,size:"xs"},{className:"w-9",icon:!0,size:"sm"},{className:"w-10",icon:!0,size:"md"},{className:"w-11",icon:!0,size:"lg"},{className:"w-12",icon:!0,size:"xl"},{className:"h-6",inside:!0,size:"xxs"},{className:"h-6",inside:!0,size:"xs"},{className:"h-7",inside:!0,size:"sm"},{className:"h-8",inside:!0,size:"md"},{className:"h-9",inside:!0,size:"lg"},{className:"h-10",inside:!0,size:"xl"},{className:"w-6",icon:!0,inside:!0,size:"xxs"},{className:"w-6",icon:!0,inside:!0,size:"xs"},{className:"w-7",icon:!0,inside:!0,size:"sm"},{className:"w-8",icon:!0,inside:!0,size:"md"},{className:"w-9",icon:!0,inside:!0,size:"lg"},{className:"w-10",icon:!0,inside:!0,size:"xl"}],defaultVariants:{icon:!1,inside:!1,size:"md",variant:"default"},variants:{icon:{false:"",true:"px-0"},inside:{false:"",true:""},size:{lg:"h-11 [&>svg]:size-5",md:"h-10 [&>svg]:size-4",sm:"h-9 [&>svg]:size-4",xl:"h-12 [&>svg]:size-5",xs:"h-8 [&>svg]:size-3.5",xxs:"h-7 [&>svg]:size-3"},variant:{default:["bg-primary text-primary-foreground","hover:bg-primary/80"],destructive:["bg-destructive text-destructive-foreground","hover:bg-destructive/80"],ghost:["text-foreground shadow-none","hover:bg-accent hover:text-accent-foreground"],info:["bg-info text-info-foreground","hover:bg-info/80"],link:["text-primary underline-offset-4 shadow-none","hover:underline"],outline:["text-foreground border-input border","focus-visible:border-ring","hover:bg-accent hover:text-accent-foreground"],secondary:["bg-secondary text-secondary-foreground","hover:bg-secondary/80"],success:["bg-success text-success-foreground","hover:bg-success/80"],warning:["bg-warning text-warning-foreground","hover:bg-warning/80"]}}});export{i as a};
2
- //# sourceMappingURL=chunk-AGY7ZINL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/variants/button.variants.ts"],"names":["tv","buttonVariants"],"mappings":"AAEA,OAAS,MAAAA,MAAU,oBAEnB,IAAMC,EAAiBD,EAAG,CACxB,KAAM,CACJ,gJACA,mBACA,6EACA,uEACF,EACA,iBAAkB,CAEhB,CAAE,UAAW,MAAO,KAAM,GAAM,KAAM,KAAM,EAC5C,CAAE,UAAW,MAAO,KAAM,GAAM,KAAM,IAAK,EAC3C,CAAE,UAAW,MAAO,KAAM,GAAM,KAAM,IAAK,EAC3C,CAAE,UAAW,OAAQ,KAAM,GAAM,KAAM,IAAK,EAC5C,CAAE,UAAW,OAAQ,KAAM,GAAM,KAAM,IAAK,EAC5C,CAAE,UAAW,OAAQ,KAAM,GAAM,KAAM,IAAK,EAE5C,CAAE,UAAW,MAAO,OAAQ,GAAM,KAAM,KAAM,EAC9C,CAAE,UAAW,MAAO,OAAQ,GAAM,KAAM,IAAK,EAC7C,CAAE,UAAW,MAAO,OAAQ,GAAM,KAAM,IAAK,EAC7C,CAAE,UAAW,MAAO,OAAQ,GAAM,KAAM,IAAK,EAC7C,CAAE,UAAW,MAAO,OAAQ,GAAM,KAAM,IAAK,EAC7C,CAAE,UAAW,OAAQ,OAAQ,GAAM,KAAM,IAAK,EAE9C,CAAE,UAAW,MAAO,KAAM,GAAM,OAAQ,GAAM,KAAM,KAAM,EAC1D,CAAE,UAAW,MAAO,KAAM,GAAM,OAAQ,GAAM,KAAM,IAAK,EACzD,CAAE,UAAW,MAAO,KAAM,GAAM,OAAQ,GAAM,KAAM,IAAK,EACzD,CAAE,UAAW,MAAO,KAAM,GAAM,OAAQ,GAAM,KAAM,IAAK,EACzD,CAAE,UAAW,MAAO,KAAM,GAAM,OAAQ,GAAM,KAAM,IAAK,EACzD,CAAE,UAAW,OAAQ,KAAM,GAAM,OAAQ,GAAM,KAAM,IAAK,CAC5D,EACA,gBAAiB,CACf,KAAM,GACN,OAAQ,GACR,KAAM,KACN,QAAS,SACX,EACA,SAAU,CACR,KAAM,CAAE,MAAO,GAAI,KAAM,MAAO,EAChC,OAAQ,CAAE,MAAO,GAAI,KAAM,EAAG,EAC9B,KAAM,CACJ,GAAI,sBACJ,GAAI,sBACJ,GAAI,qBACJ,GAAI,sBACJ,GAAI,uBACJ,IAAK,oBACP,EACA,QAAS,CACP,QAAS,CAAC,qCAAsC,qBAAqB,EACrE,YAAa,CAAC,6CAA8C,yBAAyB,EACrF,MAAO,CAAC,8BAA+B,8CAA8C,EACrF,KAAM,CAAC,+BAAgC,kBAAkB,EACzD,KAAM,CAAC,8CAA+C,iBAAiB,EACvE,QAAS,CACP,sCACA,4BACA,8CACF,EACA,UAAW,CAAC,yCAA0C,uBAAuB,EAC7E,QAAS,CAAC,qCAAsC,qBAAqB,EACrE,QAAS,CAAC,qCAAsC,qBAAqB,CACvE,CACF,CACF,CAAC","sourcesContent":["import type { VariantProps } from 'tailwind-variants';\n\nimport { tv } from 'tailwind-variants';\n\nconst buttonVariants = tv({\n base: [\n 'inline-flex shrink-0 select-none items-center justify-center gap-2 whitespace-nowrap rounded-md px-4 text-sm font-medium shadow-sm transition',\n '[&>svg]:shrink-0',\n 'focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none',\n 'disabled:pointer-events-none disabled:opacity-50 disabled:shadow-none',\n ],\n compoundVariants: [\n // --\n { className: 'w-7', icon: true, size: 'xxs' },\n { className: 'w-8', icon: true, size: 'xs' },\n { className: 'w-9', icon: true, size: 'sm' },\n { className: 'w-10', icon: true, size: 'md' },\n { className: 'w-11', icon: true, size: 'lg' },\n { className: 'w-12', icon: true, size: 'xl' },\n // --\n { className: 'h-6', inside: true, size: 'xxs' },\n { className: 'h-6', inside: true, size: 'xs' },\n { className: 'h-7', inside: true, size: 'sm' },\n { className: 'h-8', inside: true, size: 'md' },\n { className: 'h-9', inside: true, size: 'lg' },\n { className: 'h-10', inside: true, size: 'xl' },\n // --\n { className: 'w-6', icon: true, inside: true, size: 'xxs' },\n { className: 'w-6', icon: true, inside: true, size: 'xs' },\n { className: 'w-7', icon: true, inside: true, size: 'sm' },\n { className: 'w-8', icon: true, inside: true, size: 'md' },\n { className: 'w-9', icon: true, inside: true, size: 'lg' },\n { className: 'w-10', icon: true, inside: true, size: 'xl' },\n ],\n defaultVariants: {\n icon: false,\n inside: false,\n size: 'md',\n variant: 'default',\n },\n variants: {\n icon: { false: '', true: 'px-0' },\n inside: { false: '', true: '' },\n size: {\n lg: 'h-11 [&>svg]:size-5', // 44px\n md: 'h-10 [&>svg]:size-4', // 40px\n sm: 'h-9 [&>svg]:size-4', // 36px\n xl: 'h-12 [&>svg]:size-5', // 48px\n xs: 'h-8 [&>svg]:size-3.5', // 32px\n xxs: 'h-7 [&>svg]:size-3', // 28px\n },\n variant: {\n default: ['bg-primary text-primary-foreground', 'hover:bg-primary/80'],\n destructive: ['bg-destructive text-destructive-foreground', 'hover:bg-destructive/80'],\n ghost: ['text-foreground shadow-none', 'hover:bg-accent hover:text-accent-foreground'],\n info: ['bg-info text-info-foreground', 'hover:bg-info/80'],\n link: ['text-primary underline-offset-4 shadow-none', 'hover:underline'],\n outline: [\n 'text-foreground border-input border',\n 'focus-visible:border-ring',\n 'hover:bg-accent hover:text-accent-foreground',\n ],\n secondary: ['bg-secondary text-secondary-foreground', 'hover:bg-secondary/80'],\n success: ['bg-success text-success-foreground', 'hover:bg-success/80'],\n warning: ['bg-warning text-warning-foreground', 'hover:bg-warning/80'],\n },\n },\n});\n\ntype ButtonVariantsProps = VariantProps<typeof buttonVariants>;\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { ButtonVariantsProps };\nexport { buttonVariants };\n"]}
@@ -1,2 +0,0 @@
1
- import{a as s}from"./chunk-OKUFCFYT.js";import*as e from"@radix-ui/react-tabs";import{jsx as o}from"react/jsx-runtime";var n=e.Root;function a({className:t,...i}){return o(e.List,{className:s("bg-muted text-muted-foreground inline-flex h-10 items-center justify-center gap-1 rounded-md p-1",t),...i})}function p({className:t,...i}){return o(e.Trigger,{className:s("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium outline-transparent transition-all","data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm","focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none","disabled:pointer-events-none disabled:opacity-50",t),...i})}function m({className:t,...i}){return o(e.Content,{className:s("mt-2 rounded-md","focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none",t),...i})}export{n as a,a as b,p as c,m as d};
2
- //# sourceMappingURL=chunk-ARHU67E3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/tabs.tsx"],"names":["TabsPrimitive","jsx","Tabs","TabsList","className","props","cn","TabsTrigger","TabsContent"],"mappings":"wCAEA,UAAYA,MAAmB,uBAmB3B,cAAAC,MAAA,oBAVJ,IAAMC,EAAqB,OAQ3B,SAASC,EAAS,CAAE,UAAAC,EAAW,GAAGC,CAAM,EAA+B,CACrE,OACEJ,EAAe,OAAd,CACC,UAAWK,EACT,mGACAF,CACF,EACC,GAAGC,EACN,CAEJ,CAQA,SAASE,EAAY,CAAE,UAAAH,EAAW,GAAGC,CAAM,EAAkC,CAC3E,OACEJ,EAAe,UAAd,CACC,UAAWK,EACT,0IACA,sGACA,6EACA,mDACAF,CACF,EACC,GAAGC,EACN,CAEJ,CAQA,SAASG,EAAY,CAAE,UAAAJ,EAAW,GAAGC,CAAM,EAAkC,CAC3E,OACEJ,EAAe,UAAd,CACC,UAAWK,EACT,kBACA,6EACAF,CACF,EACC,GAAGC,EACN,CAEJ","sourcesContent":["import type { ComponentProps, JSX } from 'react';\n\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Tabs\n * -------------------------------------------------------------------------- */\n\ntype TabsProps = ComponentProps<typeof TabsPrimitive.Root>;\nconst Tabs = TabsPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: TabsList\n * -------------------------------------------------------------------------- */\n\ntype TabsListProps = ComponentProps<typeof TabsPrimitive.List>;\n\nfunction TabsList({ className, ...props }: TabsListProps): JSX.Element {\n return (\n <TabsPrimitive.List\n className={cn(\n 'bg-muted text-muted-foreground inline-flex h-10 items-center justify-center gap-1 rounded-md p-1',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: TabsTrigger\n * -------------------------------------------------------------------------- */\n\ntype TabsTriggerProps = ComponentProps<typeof TabsPrimitive.Trigger>;\n\nfunction TabsTrigger({ className, ...props }: TabsTriggerProps): JSX.Element {\n return (\n <TabsPrimitive.Trigger\n className={cn(\n 'inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium outline-transparent transition-all',\n 'data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm',\n 'focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none',\n 'disabled:pointer-events-none disabled:opacity-50',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: TabsContent\n * -------------------------------------------------------------------------- */\n\ntype TabsContentProps = ComponentProps<typeof TabsPrimitive.Content>;\n\nfunction TabsContent({ className, ...props }: TabsContentProps): JSX.Element {\n return (\n <TabsPrimitive.Content\n className={cn(\n 'mt-2 rounded-md',\n 'focus-visible:ring-ring/40 focus-visible:ring-3 focus-visible:outline-none',\n className,\n )}\n {...props}\n />\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport type { TabsContentProps, TabsListProps, TabsProps, TabsTriggerProps };\nexport { Tabs, TabsContent, TabsList, TabsTrigger };\n"]}
@@ -1,2 +0,0 @@
1
- import{a as p}from"./chunk-OKUFCFYT.js";import*as o from"@radix-ui/react-dropdown-menu";import{CheckIcon as d,ChevronRightIcon as s,DotIcon as u}from"lucide-react";import{jsx as n,jsxs as a}from"react/jsx-runtime";var l=o.Root,w=o.Trigger,P=o.Group,D=o.Sub,M=o.RadioGroup;function f({children:e,className:t,inset:r,...i}){return a(o.SubTrigger,{className:p("gap-x-2 px-3 py-1.5","flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",r&&"pl-8",t),...i,children:[e,n(s,{className:"ml-auto size-4"})]})}function b({className:e,...t}){return n(o.Portal,{children:n(o.SubContent,{className:p("bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95","data-[state=open]:data-[side=top]:slide-in-from-bottom-2","data-[state=open]:data-[side=right]:slide-in-from-left-2","data-[state=open]:data-[side=bottom]:slide-in-from-top-2","data-[state=open]:data-[side=left]:slide-in-from-right-2","data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95","data-[state=closed]:data-[side=top]:slide-out-to-bottom-2","data-[state=closed]:data-[side=right]:slide-out-to-left-2","data-[state=closed]:data-[side=bottom]:slide-out-to-top-2","data-[state=closed]:data-[side=left]:slide-out-to-right-2",e),...t})})}function g({className:e,sideOffset:t=6,...r}){return n(o.Portal,{children:n(o.Content,{className:p("bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95","data-[state=open]:data-[side=top]:slide-in-from-bottom-2","data-[state=open]:data-[side=right]:slide-in-from-left-2","data-[state=open]:data-[side=bottom]:slide-in-from-top-2","data-[state=open]:data-[side=left]:slide-in-from-right-2","data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95","data-[state=closed]:data-[side=top]:slide-out-to-bottom-2","data-[state=closed]:data-[side=right]:slide-out-to-left-2","data-[state=closed]:data-[side=bottom]:slide-out-to-top-2","data-[state=closed]:data-[side=left]:slide-out-to-right-2",e),sideOffset:t,...r})})}function v({className:e,inset:t,...r}){return n(o.Item,{className:p("gap-x-2 px-3 py-1.5","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",t&&"pl-8",e),...r})}function x({checked:e,children:t,className:r,...i}){return a(o.CheckboxItem,{checked:e,className:p("gap-x-2 px-3 py-1.5","pl-8","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",r),...i,children:[n("span",{className:"absolute left-2 flex size-3.5 items-center justify-center",children:n(o.ItemIndicator,{children:n(d,{className:"size-4"})})}),t]})}function S({children:e,className:t,...r}){return a(o.RadioItem,{className:p("gap-x-2 px-3 py-1.5","pl-8","relative flex cursor-pointer select-none items-center rounded-sm text-sm","focus:bg-accent focus:text-accent-foreground focus:outline-none","aria-disabled:pointer-events-none aria-disabled:opacity-50",t),...r,children:[n("span",{className:"absolute left-2 flex size-3.5 items-center justify-center",children:n(o.ItemIndicator,{children:n(u,{className:"size-4 fill-current"})})}),e]})}function y({className:e,inset:t,...r}){return n(o.Label,{className:p("gap-x-2 px-3 py-1.5","flex items-center text-sm font-semibold",t&&"pl-8",e),...r})}function C({className:e,...t}){return n(o.Separator,{className:p("bg-muted mx-2 my-1 h-px",e),...t})}function I({className:e,...t}){return n("span",{className:p("ml-auto text-xs tracking-widest opacity-60",e),...t})}function h({className:e,...t}){return n(o.Arrow,{className:p("fill-popover",e),...t})}export{l as a,w as b,P as c,D as d,M as e,f,b as g,g as h,v as i,x as j,S as k,y as l,C as m,I as n,h as o};
2
- //# sourceMappingURL=chunk-ASWVOLVY.js.map