@kamod-ch/ui 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +12 -0
  3. package/dist/{Accordion-D1PiNspd.d.ts → Accordion-BiCBkB8o.d.ts} +7 -1
  4. package/dist/{AlertDialog-GadhKjPC.d.ts → AlertDialog-CZ2taZg4.d.ts} +3 -3
  5. package/dist/Button-OI3VvO-J.d.ts +84 -0
  6. package/dist/{Collapsible-CW1hQwqV.d.ts → Collapsible-BdQqvk35.d.ts} +6 -1
  7. package/dist/{ComboboxValue-BGfXgtZt.d.ts → ComboboxValue-Cq6zoDkt.d.ts} +1 -1
  8. package/dist/{Dialog-BOIteLfe.d.ts → Dialog-DdD1sMwk.d.ts} +12 -1
  9. package/dist/{DialogContent-cQHSRQdT.d.ts → DialogContent-YWzwWdSv.d.ts} +6 -1
  10. package/dist/{Drawer-CdjXZxxK.d.ts → Drawer-8xfn9KLf.d.ts} +2 -2
  11. package/dist/{Dropdown-CVbWVKok.d.ts → Dropdown-CzDJJgXQ.d.ts} +32 -27
  12. package/dist/{FieldTitle-aSgThW-B.d.ts → FieldTitle-hsI0Y6Zm.d.ts} +13 -13
  13. package/dist/{HoverCard-aVEEtkyO.d.ts → HoverCard-CBBr-tT9.d.ts} +14 -14
  14. package/dist/{Input-Cem05el9.d.ts → Input-C_X0Xpn2.d.ts} +11 -11
  15. package/dist/{PopoverTrigger-CH_Kx2mn.d.ts → PopoverTrigger-CIPAh0h0.d.ts} +14 -14
  16. package/dist/{RadioGroup-BaElzLwa.d.ts → RadioGroup-BDF3NaXQ.d.ts} +8 -8
  17. package/dist/{Sheet-DZ-p-aHY.d.ts → Sheet-DVt5iTiK.d.ts} +1 -1
  18. package/dist/{SidebarProvider-Bx7-BdQn.d.ts → SidebarProvider-CoVCItNd.d.ts} +18 -18
  19. package/dist/{Switch-CTTkNdqF.d.ts → Switch-BcNJFeRY.d.ts} +8 -8
  20. package/dist/{Tabs-CR-thcs6.d.ts → Tabs-CrXH3YED.d.ts} +18 -9
  21. package/dist/{Textarea-DbKkduOG.d.ts → Textarea-CST17pYW.d.ts} +11 -11
  22. package/dist/Toggle-BgvkYUI8.d.ts +49 -0
  23. package/dist/{ToggleGroup-UeYHzQe7.d.ts → ToggleGroup-CqYICGsS.d.ts} +42 -42
  24. package/dist/Typography-Df9IVmw2.d.ts +64 -0
  25. package/dist/{chunk-ZM67EKZC.js → chunk-22G3DW5M.js} +4 -4
  26. package/dist/{chunk-ZM67EKZC.js.map → chunk-22G3DW5M.js.map} +1 -1
  27. package/dist/{chunk-BDK7CDEI.js → chunk-2F3PWEDR.js} +3 -3
  28. package/dist/{chunk-BDK7CDEI.js.map → chunk-2F3PWEDR.js.map} +1 -1
  29. package/dist/{chunk-ZHAGKFSO.js → chunk-2SPOI3MX.js} +3 -3
  30. package/dist/{chunk-ZHAGKFSO.js.map → chunk-2SPOI3MX.js.map} +1 -1
  31. package/dist/chunk-2UTJHQTS.js +162 -0
  32. package/dist/chunk-2UTJHQTS.js.map +1 -0
  33. package/dist/{chunk-NKKMM6CK.js → chunk-3AFRSB5R.js} +3 -3
  34. package/dist/{chunk-NKKMM6CK.js.map → chunk-3AFRSB5R.js.map} +1 -1
  35. package/dist/{chunk-LCMPFPBN.js → chunk-3ETRJPBL.js} +3 -3
  36. package/dist/{chunk-LCMPFPBN.js.map → chunk-3ETRJPBL.js.map} +1 -1
  37. package/dist/{chunk-WAPRVVDQ.js → chunk-3HBKDY64.js} +3 -3
  38. package/dist/{chunk-WAPRVVDQ.js.map → chunk-3HBKDY64.js.map} +1 -1
  39. package/dist/{chunk-PPYJQNE5.js → chunk-3XMFQKWB.js} +9 -5
  40. package/dist/chunk-3XMFQKWB.js.map +1 -0
  41. package/dist/{chunk-HCTZJYHK.js → chunk-4SQKSVBH.js} +6 -6
  42. package/dist/chunk-4SQKSVBH.js.map +1 -0
  43. package/dist/{chunk-ZVAW22GX.js → chunk-4ZFKDNSK.js} +3 -3
  44. package/dist/{chunk-ZVAW22GX.js.map → chunk-4ZFKDNSK.js.map} +1 -1
  45. package/dist/{chunk-IJ4ZRIR4.js → chunk-53FZEAOJ.js} +5 -5
  46. package/dist/{chunk-IJ4ZRIR4.js.map → chunk-53FZEAOJ.js.map} +1 -1
  47. package/dist/{chunk-BYG2ULS3.js → chunk-5ATODZ6L.js} +5 -7
  48. package/dist/chunk-5ATODZ6L.js.map +1 -0
  49. package/dist/{chunk-TXKPDNRD.js → chunk-5I7ULBDP.js} +3 -3
  50. package/dist/{chunk-TXKPDNRD.js.map → chunk-5I7ULBDP.js.map} +1 -1
  51. package/dist/{chunk-UEXTD7ZB.js → chunk-6HFTTHSY.js} +3 -3
  52. package/dist/{chunk-UEXTD7ZB.js.map → chunk-6HFTTHSY.js.map} +1 -1
  53. package/dist/{chunk-6RASPU5N.js → chunk-7LWAWZHM.js} +4 -11
  54. package/dist/chunk-7LWAWZHM.js.map +1 -0
  55. package/dist/{chunk-RHNI5UQO.js → chunk-A6ZZZFZN.js} +4 -4
  56. package/dist/{chunk-RHNI5UQO.js.map → chunk-A6ZZZFZN.js.map} +1 -1
  57. package/dist/{chunk-V63YIVKJ.js → chunk-APZXMU2X.js} +4 -4
  58. package/dist/{chunk-V63YIVKJ.js.map → chunk-APZXMU2X.js.map} +1 -1
  59. package/dist/{chunk-6FYSVMH7.js → chunk-AYLEWD77.js} +3 -3
  60. package/dist/{chunk-6FYSVMH7.js.map → chunk-AYLEWD77.js.map} +1 -1
  61. package/dist/{chunk-D3DQ4ICC.js → chunk-BZMD4EZC.js} +4 -11
  62. package/dist/chunk-BZMD4EZC.js.map +1 -0
  63. package/dist/{chunk-PU5J5EPY.js → chunk-C7TARE5T.js} +5 -5
  64. package/dist/{chunk-PU5J5EPY.js.map → chunk-C7TARE5T.js.map} +1 -1
  65. package/dist/{chunk-5FBD2NTR.js → chunk-DDRX6NNW.js} +6 -9
  66. package/dist/chunk-DDRX6NNW.js.map +1 -0
  67. package/dist/{chunk-HHLQYMPT.js → chunk-DUTKHOH3.js} +4 -4
  68. package/dist/{chunk-HHLQYMPT.js.map → chunk-DUTKHOH3.js.map} +1 -1
  69. package/dist/{chunk-24QD2FTA.js → chunk-EBXTNL52.js} +12 -15
  70. package/dist/chunk-EBXTNL52.js.map +1 -0
  71. package/dist/{chunk-STRBBF45.js → chunk-FOQ32NEP.js} +5 -5
  72. package/dist/chunk-FOQ32NEP.js.map +1 -0
  73. package/dist/{chunk-UIA74JVN.js → chunk-FXG53XY2.js} +5 -5
  74. package/dist/chunk-FXG53XY2.js.map +1 -0
  75. package/dist/{chunk-2KY7P27I.js → chunk-G7LTWXRN.js} +3 -3
  76. package/dist/{chunk-2KY7P27I.js.map → chunk-G7LTWXRN.js.map} +1 -1
  77. package/dist/{chunk-6BK3PIRX.js → chunk-GD3VBO44.js} +6 -6
  78. package/dist/{chunk-6BK3PIRX.js.map → chunk-GD3VBO44.js.map} +1 -1
  79. package/dist/{chunk-MD6HHORY.js → chunk-GPRE2VWB.js} +3 -3
  80. package/dist/{chunk-MD6HHORY.js.map → chunk-GPRE2VWB.js.map} +1 -1
  81. package/dist/{chunk-QZX3RFIC.js → chunk-HJF5AV4L.js} +11 -34
  82. package/dist/chunk-HJF5AV4L.js.map +1 -0
  83. package/dist/{chunk-QFDTG2ZJ.js → chunk-HWPROYKB.js} +3 -3
  84. package/dist/{chunk-QFDTG2ZJ.js.map → chunk-HWPROYKB.js.map} +1 -1
  85. package/dist/chunk-ISISDJ3Z.js +205 -0
  86. package/dist/chunk-ISISDJ3Z.js.map +1 -0
  87. package/dist/{chunk-3LIT5GWF.js → chunk-IW43BO47.js} +57 -19
  88. package/dist/chunk-IW43BO47.js.map +1 -0
  89. package/dist/{chunk-CLEC2RMU.js → chunk-JKEILBHG.js} +3 -3
  90. package/dist/{chunk-CLEC2RMU.js.map → chunk-JKEILBHG.js.map} +1 -1
  91. package/dist/{chunk-TFLSEEM4.js → chunk-KCN3GXRK.js} +3 -3
  92. package/dist/{chunk-TFLSEEM4.js.map → chunk-KCN3GXRK.js.map} +1 -1
  93. package/dist/{chunk-EMUPVA2F.js → chunk-KHV3WV6T.js} +4 -4
  94. package/dist/{chunk-EMUPVA2F.js.map → chunk-KHV3WV6T.js.map} +1 -1
  95. package/dist/{chunk-G6TV6TF7.js → chunk-KJ5PYCJG.js} +4 -12
  96. package/dist/chunk-KJ5PYCJG.js.map +1 -0
  97. package/dist/{chunk-5KS2VSX2.js → chunk-LAM4GIME.js} +4 -4
  98. package/dist/chunk-LAM4GIME.js.map +1 -0
  99. package/dist/{chunk-OCLVMKVC.js → chunk-MDXTENZ4.js} +8 -31
  100. package/dist/chunk-MDXTENZ4.js.map +1 -0
  101. package/dist/{chunk-CP55TVOV.js → chunk-MJUKNUFV.js} +3 -3
  102. package/dist/{chunk-CP55TVOV.js.map → chunk-MJUKNUFV.js.map} +1 -1
  103. package/dist/{chunk-GGTDJEE2.js → chunk-MTNLY7AY.js} +3 -3
  104. package/dist/{chunk-GGTDJEE2.js.map → chunk-MTNLY7AY.js.map} +1 -1
  105. package/dist/{chunk-67J4KBOW.js → chunk-NBIBBLP6.js} +10 -52
  106. package/dist/chunk-NBIBBLP6.js.map +1 -0
  107. package/dist/chunk-NBP4J2QF.js +200 -0
  108. package/dist/chunk-NBP4J2QF.js.map +1 -0
  109. package/dist/{chunk-NGKQBNZ5.js → chunk-NJYJCMKY.js} +3 -3
  110. package/dist/{chunk-NGKQBNZ5.js.map → chunk-NJYJCMKY.js.map} +1 -1
  111. package/dist/{chunk-COPT6I2D.js → chunk-NSEY5IC6.js} +9 -10
  112. package/dist/chunk-NSEY5IC6.js.map +1 -0
  113. package/dist/{chunk-UARVH66B.js → chunk-O4PHGLXF.js} +5 -5
  114. package/dist/{chunk-UARVH66B.js.map → chunk-O4PHGLXF.js.map} +1 -1
  115. package/dist/{chunk-J4DMQV64.js → chunk-OCZC4PDM.js} +3 -3
  116. package/dist/{chunk-J4DMQV64.js.map → chunk-OCZC4PDM.js.map} +1 -1
  117. package/dist/{chunk-IQH3XSOI.js → chunk-ODYHA3O5.js} +4 -4
  118. package/dist/{chunk-IQH3XSOI.js.map → chunk-ODYHA3O5.js.map} +1 -1
  119. package/dist/chunk-OJEZZVZB.js +9 -0
  120. package/dist/{chunk-CMBERB5B.js.map → chunk-OJEZZVZB.js.map} +1 -1
  121. package/dist/{chunk-7IOAIEIA.js → chunk-OTXP2QJ7.js} +6 -6
  122. package/dist/{chunk-7IOAIEIA.js.map → chunk-OTXP2QJ7.js.map} +1 -1
  123. package/dist/{chunk-JSHUWI3C.js → chunk-OUVUK3E7.js} +9 -9
  124. package/dist/chunk-OUVUK3E7.js.map +1 -0
  125. package/dist/{chunk-3KB54OYF.js → chunk-P6ICWO5B.js} +3 -3
  126. package/dist/{chunk-3KB54OYF.js.map → chunk-P6ICWO5B.js.map} +1 -1
  127. package/dist/{chunk-GIU6BZTW.js → chunk-P7PPE4P5.js} +8 -11
  128. package/dist/chunk-P7PPE4P5.js.map +1 -0
  129. package/dist/{chunk-XGFJJ2YB.js → chunk-PVQUVEZV.js} +4 -11
  130. package/dist/chunk-PVQUVEZV.js.map +1 -0
  131. package/dist/{chunk-LCWXIQKA.js → chunk-Q3RL7TOY.js} +4 -4
  132. package/dist/chunk-Q3RL7TOY.js.map +1 -0
  133. package/dist/{chunk-5Q4RBIMZ.js → chunk-Q5B6ROW6.js} +3 -3
  134. package/dist/{chunk-5Q4RBIMZ.js.map → chunk-Q5B6ROW6.js.map} +1 -1
  135. package/dist/{chunk-262EK2XT.js → chunk-Q7ZDP6DS.js} +9 -7
  136. package/dist/chunk-Q7ZDP6DS.js.map +1 -0
  137. package/dist/{chunk-4IBTERDG.js → chunk-QFTOABOJ.js} +3 -3
  138. package/dist/{chunk-4IBTERDG.js.map → chunk-QFTOABOJ.js.map} +1 -1
  139. package/dist/{chunk-JURNPBSW.js → chunk-QINEFXUA.js} +3 -3
  140. package/dist/{chunk-JURNPBSW.js.map → chunk-QINEFXUA.js.map} +1 -1
  141. package/dist/{chunk-FIOKWIJP.js → chunk-QWSD34JA.js} +4 -4
  142. package/dist/{chunk-FIOKWIJP.js.map → chunk-QWSD34JA.js.map} +1 -1
  143. package/dist/{chunk-Q5IUIA6B.js → chunk-RLBAA7WW.js} +3 -3
  144. package/dist/{chunk-Q5IUIA6B.js.map → chunk-RLBAA7WW.js.map} +1 -1
  145. package/dist/{chunk-MJQ6R345.js → chunk-SEC7UN45.js} +5 -5
  146. package/dist/chunk-SEC7UN45.js.map +1 -0
  147. package/dist/chunk-SIA46B4Q.js +9 -0
  148. package/dist/{chunk-RTIFG4XT.js.map → chunk-SIA46B4Q.js.map} +1 -1
  149. package/dist/{chunk-X4HPHMYW.js → chunk-TMPADU74.js} +4 -4
  150. package/dist/{chunk-X4HPHMYW.js.map → chunk-TMPADU74.js.map} +1 -1
  151. package/dist/{chunk-YTHUHPE5.js → chunk-USPWL4KC.js} +3 -3
  152. package/dist/{chunk-YTHUHPE5.js.map → chunk-USPWL4KC.js.map} +1 -1
  153. package/dist/{chunk-U2UNWXBC.js → chunk-VEQ7X2PO.js} +7 -6
  154. package/dist/chunk-VEQ7X2PO.js.map +1 -0
  155. package/dist/{chunk-YZLPO4B2.js → chunk-WRXXU5F6.js} +4 -11
  156. package/dist/chunk-WRXXU5F6.js.map +1 -0
  157. package/dist/{chunk-XNYAQZIB.js → chunk-X4B6I3M4.js} +4 -4
  158. package/dist/{chunk-XNYAQZIB.js.map → chunk-X4B6I3M4.js.map} +1 -1
  159. package/dist/{chunk-JNF7FDJO.js → chunk-XCYEWILH.js} +4 -4
  160. package/dist/{chunk-JNF7FDJO.js.map → chunk-XCYEWILH.js.map} +1 -1
  161. package/dist/{chunk-V2MG5Y5F.js → chunk-XGVQXRLA.js} +4 -4
  162. package/dist/chunk-XGVQXRLA.js.map +1 -0
  163. package/dist/chunk-XIANSPQO.js +11 -0
  164. package/dist/chunk-XIANSPQO.js.map +1 -0
  165. package/dist/{chunk-UNWEH4Z6.js → chunk-XOMPJYYA.js} +4 -4
  166. package/dist/chunk-XOMPJYYA.js.map +1 -0
  167. package/dist/{chunk-UXWUFNXY.js → chunk-XSYSV3R3.js} +3 -3
  168. package/dist/{chunk-UXWUFNXY.js.map → chunk-XSYSV3R3.js.map} +1 -1
  169. package/dist/{chunk-ERBGZZ2U.js → chunk-XZYJUJED.js} +4 -4
  170. package/dist/chunk-XZYJUJED.js.map +1 -0
  171. package/dist/{chunk-PFV7YIEP.js → chunk-Z4JNYSV3.js} +4 -4
  172. package/dist/{chunk-PFV7YIEP.js.map → chunk-Z4JNYSV3.js.map} +1 -1
  173. package/dist/{chunk-4V3WHQJE.js → chunk-ZLSCHWTN.js} +4 -4
  174. package/dist/{chunk-4V3WHQJE.js.map → chunk-ZLSCHWTN.js.map} +1 -1
  175. package/dist/chunk-ZQ2WOX4X.js +29 -0
  176. package/dist/chunk-ZQ2WOX4X.js.map +1 -0
  177. package/dist/{chunk-NILG56Z7.js → chunk-ZROHNZDC.js} +4 -4
  178. package/dist/{chunk-NILG56Z7.js.map → chunk-ZROHNZDC.js.map} +1 -1
  179. package/dist/{chunk-PGOCR4LG.js → chunk-ZVYCUG4N.js} +4 -4
  180. package/dist/chunk-ZVYCUG4N.js.map +1 -0
  181. package/dist/components/accordion/index.d.ts +2 -2
  182. package/dist/components/accordion/index.js +3 -2
  183. package/dist/components/alert/index.d.ts +26 -26
  184. package/dist/components/alert/index.js +2 -2
  185. package/dist/components/alert-dialog/index.d.ts +6 -5
  186. package/dist/components/alert-dialog/index.js +6 -6
  187. package/dist/components/aspect-ratio/index.js +2 -2
  188. package/dist/components/avatar/index.d.ts +11 -11
  189. package/dist/components/avatar/index.js +2 -2
  190. package/dist/components/badge/index.d.ts +112 -112
  191. package/dist/components/badge/index.js +2 -2
  192. package/dist/components/breadcrumb/index.js +2 -2
  193. package/dist/components/button/index.d.ts +51 -51
  194. package/dist/components/button/index.js +3 -3
  195. package/dist/components/button-group/index.js +2 -2
  196. package/dist/components/calendar/index.js +10 -10
  197. package/dist/components/card/index.d.ts +22 -22
  198. package/dist/components/card/index.js +2 -1
  199. package/dist/components/carousel/index.js +3 -3
  200. package/dist/components/chart/index.js +2 -2
  201. package/dist/components/checkbox/index.js +2 -2
  202. package/dist/components/collapsible/index.d.ts +2 -2
  203. package/dist/components/collapsible/index.js +3 -2
  204. package/dist/components/combobox/index.d.ts +2 -2
  205. package/dist/components/combobox/index.js +5 -5
  206. package/dist/components/command/index.js +7 -7
  207. package/dist/components/context-menu/index.d.ts +11 -11
  208. package/dist/components/context-menu/index.js +3 -3
  209. package/dist/components/data-table/index.js +3 -3
  210. package/dist/components/date-picker/index.js +6 -6
  211. package/dist/components/dialog/index.d.ts +26 -5
  212. package/dist/components/dialog/index.js +5 -5
  213. package/dist/components/direction/index.js +2 -2
  214. package/dist/components/drawer/index.d.ts +5 -4
  215. package/dist/components/drawer/index.js +5 -5
  216. package/dist/components/dropdown/index.d.ts +3 -3
  217. package/dist/components/dropdown/index.js +3 -3
  218. package/dist/components/dropzone/index.js +3 -3
  219. package/dist/components/empty/index.d.ts +6 -6
  220. package/dist/components/empty/index.js +2 -2
  221. package/dist/components/field/index.d.ts +2 -2
  222. package/dist/components/field/index.js +4 -4
  223. package/dist/components/hover-card/index.d.ts +2 -2
  224. package/dist/components/hover-card/index.js +2 -1
  225. package/dist/components/image/index.js +2 -2
  226. package/dist/components/input/index.d.ts +12 -12
  227. package/dist/components/input/index.js +3 -2
  228. package/dist/components/input-group/index.d.ts +56 -56
  229. package/dist/components/input-group/index.js +5 -5
  230. package/dist/components/input-otp/index.js +2 -2
  231. package/dist/components/item/index.d.ts +31 -31
  232. package/dist/components/item/index.js +3 -3
  233. package/dist/components/kbd/index.d.ts +8 -8
  234. package/dist/components/kbd/index.js +2 -2
  235. package/dist/components/label/index.d.ts +22 -22
  236. package/dist/components/label/index.js +3 -2
  237. package/dist/components/locale-segment-group/index.js +2 -2
  238. package/dist/components/menubar/index.js +3 -3
  239. package/dist/components/native-select/index.d.ts +34 -34
  240. package/dist/components/native-select/index.js +2 -1
  241. package/dist/components/navigation-menu/index.d.ts +2 -2
  242. package/dist/components/navigation-menu/index.js +3 -3
  243. package/dist/components/pagination/index.d.ts +1 -1
  244. package/dist/components/pagination/index.js +3 -3
  245. package/dist/components/popover/index.d.ts +22 -22
  246. package/dist/components/popover/index.js +4 -3
  247. package/dist/components/progress/index.js +2 -2
  248. package/dist/components/prose/index.js +2 -2
  249. package/dist/components/radio-group/index.d.ts +2 -2
  250. package/dist/components/radio-group/index.js +3 -3
  251. package/dist/components/scroll-area/index.js +2 -2
  252. package/dist/components/select/index.js +3 -3
  253. package/dist/components/selectable-card/index.js +3 -3
  254. package/dist/components/separator/index.d.ts +8 -8
  255. package/dist/components/separator/index.js +3 -2
  256. package/dist/components/sheet/index.d.ts +5 -4
  257. package/dist/components/sheet/index.js +5 -5
  258. package/dist/components/sidebar/index.d.ts +3 -3
  259. package/dist/components/sidebar/index.js +10 -10
  260. package/dist/components/skeleton/index.d.ts +22 -22
  261. package/dist/components/skeleton/index.js +2 -1
  262. package/dist/components/slider/index.js +2 -2
  263. package/dist/components/spinner/index.js +2 -2
  264. package/dist/components/switch/index.d.ts +1 -1
  265. package/dist/components/switch/index.js +2 -2
  266. package/dist/components/table/index.js +3 -3
  267. package/dist/components/tabs/index.d.ts +2 -2
  268. package/dist/components/tabs/index.js +3 -3
  269. package/dist/components/textarea/index.d.ts +12 -12
  270. package/dist/components/textarea/index.js +3 -2
  271. package/dist/components/theme-toggle/index.js +4 -4
  272. package/dist/components/toggle/index.d.ts +1 -1
  273. package/dist/components/toggle/index.js +2 -2
  274. package/dist/components/toggle-group/index.d.ts +2 -2
  275. package/dist/components/toggle-group/index.js +2 -2
  276. package/dist/components/typography/index.d.ts +2 -2
  277. package/dist/components/typography/index.js +2 -2
  278. package/dist/components/video/index.js +2 -2
  279. package/dist/index.d.ts +24 -24
  280. package/dist/index.js +79 -78
  281. package/dist/lib/interactive/index.js +1 -1
  282. package/dist/lib/utils.d.ts +2 -1
  283. package/dist/lib/utils.js +1 -1
  284. package/dist/{navigationMenuTriggerStyle-BWnESpon.d.ts → navigationMenuTriggerStyle-DUhqCYxO.d.ts} +1 -1
  285. package/dist/theme.css +16 -0
  286. package/dist/utils.d.ts +2 -0
  287. package/dist/utils.js +3 -0
  288. package/dist/utils.js.map +1 -0
  289. package/package.json +28 -25
  290. package/dist/Button-vQnkiVTI.d.ts +0 -84
  291. package/dist/Toggle-CseZl7XN.d.ts +0 -49
  292. package/dist/Typography-ccTtE182.d.ts +0 -64
  293. package/dist/chunk-24QD2FTA.js.map +0 -1
  294. package/dist/chunk-262EK2XT.js.map +0 -1
  295. package/dist/chunk-3LIT5GWF.js.map +0 -1
  296. package/dist/chunk-5FBD2NTR.js.map +0 -1
  297. package/dist/chunk-5KS2VSX2.js.map +0 -1
  298. package/dist/chunk-67J4KBOW.js.map +0 -1
  299. package/dist/chunk-6RASPU5N.js.map +0 -1
  300. package/dist/chunk-BYG2ULS3.js.map +0 -1
  301. package/dist/chunk-CMBERB5B.js +0 -9
  302. package/dist/chunk-COPT6I2D.js.map +0 -1
  303. package/dist/chunk-D3DQ4ICC.js.map +0 -1
  304. package/dist/chunk-ERBGZZ2U.js.map +0 -1
  305. package/dist/chunk-G6TV6TF7.js.map +0 -1
  306. package/dist/chunk-GIU6BZTW.js.map +0 -1
  307. package/dist/chunk-HCTZJYHK.js.map +0 -1
  308. package/dist/chunk-JSHUWI3C.js.map +0 -1
  309. package/dist/chunk-LCWXIQKA.js.map +0 -1
  310. package/dist/chunk-MJQ6R345.js.map +0 -1
  311. package/dist/chunk-MKG3UAP6.js +0 -347
  312. package/dist/chunk-MKG3UAP6.js.map +0 -1
  313. package/dist/chunk-MS2ZNYCJ.js +0 -9
  314. package/dist/chunk-MS2ZNYCJ.js.map +0 -1
  315. package/dist/chunk-OCLVMKVC.js.map +0 -1
  316. package/dist/chunk-PGOCR4LG.js.map +0 -1
  317. package/dist/chunk-PPYJQNE5.js.map +0 -1
  318. package/dist/chunk-QZX3RFIC.js.map +0 -1
  319. package/dist/chunk-RTIFG4XT.js +0 -9
  320. package/dist/chunk-STRBBF45.js.map +0 -1
  321. package/dist/chunk-U2UNWXBC.js.map +0 -1
  322. package/dist/chunk-UEGIKBX6.js +0 -385
  323. package/dist/chunk-UEGIKBX6.js.map +0 -1
  324. package/dist/chunk-UIA74JVN.js.map +0 -1
  325. package/dist/chunk-UNWEH4Z6.js.map +0 -1
  326. package/dist/chunk-V2MG5Y5F.js.map +0 -1
  327. package/dist/chunk-X2YUFNK7.js +0 -18
  328. package/dist/chunk-X2YUFNK7.js.map +0 -1
  329. package/dist/chunk-XGFJJ2YB.js.map +0 -1
  330. package/dist/chunk-YZLPO4B2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/drawer/drawer-context.tsx","../src/components/drawer/Drawer.tsx","../src/components/drawer/DrawerClose.tsx","../src/components/drawer/DrawerContent.tsx","../src/components/drawer/DrawerDescription.tsx","../src/components/drawer/DrawerFooter.tsx","../src/components/drawer/DrawerHeader.tsx","../src/components/drawer/DrawerTitle.tsx","../src/components/drawer/DrawerTrigger.tsx","../src/components/drawer/index.ts"],"names":["jsx"],"mappings":"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","file":"chunk-UARVH66B.js","sourcesContent":["import { createContext } from \"preact\";\nimport { useContext } from \"preact/hooks\";\n\nexport type DrawerDirection = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport type DrawerContextValue = {\n direction: DrawerDirection;\n};\n\nconst DrawerContext = createContext<DrawerContextValue | null>(null);\n\nexport const DrawerProvider = DrawerContext.Provider;\n\nexport const useDrawerRoot = () => {\n const ctx = useContext(DrawerContext);\n if (!ctx) throw new Error(\"Drawer subcomponents must be used within Drawer\");\n return ctx;\n};\n","import type { ComponentChildren } from \"preact\";\nimport { Sheet, type SheetProps } from \"../sheet/Sheet\";\nimport { type DrawerDirection, DrawerProvider } from \"./drawer-context\";\n\nexport type DrawerProps = SheetProps & {\n /** Edge the drawer opens from (shadcn/Vaul `direction`). Default `bottom`. */\n direction?: DrawerDirection;\n children?: ComponentChildren;\n};\n\nexport const Drawer = ({ direction = \"bottom\", children, ...rest }: DrawerProps) => (\n <DrawerProvider value={{ direction }}>\n <Sheet data-slot=\"drawer\" {...rest}>\n {children}\n </Sheet>\n </DrawerProvider>\n);\n","import type { DialogCloseProps } from \"../dialog/DialogClose\";\nimport { SheetClose } from \"../sheet/SheetClose\";\n\nexport type DrawerCloseProps = DialogCloseProps;\n\nexport const DrawerClose = (props: DrawerCloseProps) => (\n <SheetClose data-slot=\"drawer-close\" {...props} />\n);\n","import type { ComponentChildren } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { SheetContent, type SheetContentProps } from \"../sheet/SheetContent\";\nimport { useDrawerRoot } from \"./drawer-context\";\n\nexport type DrawerContentProps = Omit<SheetContentProps, \"side\"> & {\n /** Drag affordance for top/bottom drawers. Default: `true` when `direction` is top or bottom. */\n showHandle?: boolean;\n children?: ComponentChildren;\n};\n\nexport const DrawerContent = ({\n showHandle,\n showCloseButton = false,\n class: className,\n children,\n ...rest\n}: DrawerContentProps) => {\n const { direction } = useDrawerRoot();\n const edge = direction === \"top\" || direction === \"bottom\";\n const handleVisible = showHandle !== undefined ? showHandle : edge;\n\n const Handle = () => (\n <div\n data-slot=\"drawer-handle\"\n aria-hidden\n class={cn(\n \"bg-muted mx-auto h-1.5 w-[100px] shrink-0 rounded-full\",\n direction === \"bottom\" && \"mb-2\",\n direction === \"top\" && \"mt-4\",\n )}\n />\n );\n\n return (\n <SheetContent\n side={direction}\n showCloseButton={showCloseButton}\n data-slot=\"drawer-content\"\n data-vaul-drawer-direction={direction}\n class={cn(className)}\n {...rest}\n >\n {direction === \"bottom\" && handleVisible ? <Handle /> : null}\n {children}\n {direction === \"top\" && handleVisible ? <Handle /> : null}\n </SheetContent>\n );\n};\n","import type { DialogDescriptionProps } from \"../dialog/DialogDescription\";\nimport { SheetDescription } from \"../sheet/SheetDescription\";\n\nexport type DrawerDescriptionProps = DialogDescriptionProps;\n\nexport const DrawerDescription = (props: DrawerDescriptionProps) => (\n <SheetDescription data-slot=\"drawer-description\" {...props} />\n);\n","import { SheetFooter, type SheetFooterProps } from \"../sheet/SheetFooter\";\n\nexport type DrawerFooterProps = SheetFooterProps;\n\nexport const DrawerFooter = (props: DrawerFooterProps) => (\n <SheetFooter data-slot=\"drawer-footer\" {...props} />\n);\n","import { SheetHeader, type SheetHeaderProps } from \"../sheet/SheetHeader\";\n\nexport type DrawerHeaderProps = SheetHeaderProps;\n\nexport const DrawerHeader = (props: DrawerHeaderProps) => (\n <SheetHeader data-slot=\"drawer-header\" {...props} />\n);\n","import type { DialogTitleProps } from \"../dialog/DialogTitle\";\nimport { SheetTitle } from \"../sheet/SheetTitle\";\n\nexport type DrawerTitleProps = DialogTitleProps;\n\nexport const DrawerTitle = (props: DrawerTitleProps) => (\n <SheetTitle data-slot=\"drawer-title\" {...props} />\n);\n","import type { DialogTriggerProps } from \"../dialog/DialogTrigger\";\nimport { SheetTrigger } from \"../sheet/SheetTrigger\";\n\nexport type DrawerTriggerProps = DialogTriggerProps;\n\nexport const DrawerTrigger = (props: DrawerTriggerProps) => (\n <SheetTrigger data-slot=\"drawer-trigger\" {...props} />\n);\n","import { Drawer } from \"./Drawer\";\nimport { DrawerClose } from \"./DrawerClose\";\nimport { DrawerContent } from \"./DrawerContent\";\nimport { DrawerDescription } from \"./DrawerDescription\";\nimport { DrawerFooter } from \"./DrawerFooter\";\nimport { DrawerHeader } from \"./DrawerHeader\";\nimport { DrawerTitle } from \"./DrawerTitle\";\nimport { DrawerTrigger } from \"./DrawerTrigger\";\n\nexport type { DrawerDirection } from \"./drawer-context\";\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n};\n\nexport default {\n Root: Drawer,\n Trigger: DrawerTrigger,\n Content: DrawerContent,\n Header: DrawerHeader,\n Footer: DrawerFooter,\n Title: DrawerTitle,\n Description: DrawerDescription,\n Close: DrawerClose,\n};\n"]}
1
+ {"version":3,"sources":["../src/components/drawer/drawer-context.tsx","../src/components/drawer/Drawer.tsx","../src/components/drawer/DrawerClose.tsx","../src/components/drawer/DrawerContent.tsx","../src/components/drawer/DrawerDescription.tsx","../src/components/drawer/DrawerFooter.tsx","../src/components/drawer/DrawerHeader.tsx","../src/components/drawer/DrawerTitle.tsx","../src/components/drawer/DrawerTrigger.tsx","../src/components/drawer/index.ts"],"names":["jsx"],"mappings":"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","file":"chunk-O4PHGLXF.js","sourcesContent":["import { createContext } from \"preact\";\nimport { useContext } from \"preact/hooks\";\n\nexport type DrawerDirection = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport type DrawerContextValue = {\n direction: DrawerDirection;\n};\n\nconst DrawerContext = createContext<DrawerContextValue | null>(null);\n\nexport const DrawerProvider = DrawerContext.Provider;\n\nexport const useDrawerRoot = () => {\n const ctx = useContext(DrawerContext);\n if (!ctx) throw new Error(\"Drawer subcomponents must be used within Drawer\");\n return ctx;\n};\n","import type { ComponentChildren } from \"preact\";\nimport { Sheet, type SheetProps } from \"../sheet/Sheet\";\nimport { type DrawerDirection, DrawerProvider } from \"./drawer-context\";\n\nexport type DrawerProps = SheetProps & {\n /** Edge the drawer opens from (shadcn/Vaul `direction`). Default `bottom`. */\n direction?: DrawerDirection;\n children?: ComponentChildren;\n};\n\nexport const Drawer = ({ direction = \"bottom\", children, ...rest }: DrawerProps) => (\n <DrawerProvider value={{ direction }}>\n <Sheet data-slot=\"drawer\" {...rest}>\n {children}\n </Sheet>\n </DrawerProvider>\n);\n","import type { DialogCloseProps } from \"../dialog/DialogClose\";\nimport { SheetClose } from \"../sheet/SheetClose\";\n\nexport type DrawerCloseProps = DialogCloseProps;\n\nexport const DrawerClose = (props: DrawerCloseProps) => (\n <SheetClose data-slot=\"drawer-close\" {...props} />\n);\n","import type { ComponentChildren } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { SheetContent, type SheetContentProps } from \"../sheet/SheetContent\";\nimport { useDrawerRoot } from \"./drawer-context\";\n\nexport type DrawerContentProps = Omit<SheetContentProps, \"side\"> & {\n /** Drag affordance for top/bottom drawers. Default: `true` when `direction` is top or bottom. */\n showHandle?: boolean;\n children?: ComponentChildren;\n};\n\nexport const DrawerContent = ({\n showHandle,\n showCloseButton = false,\n class: className,\n children,\n ...rest\n}: DrawerContentProps) => {\n const { direction } = useDrawerRoot();\n const edge = direction === \"top\" || direction === \"bottom\";\n const handleVisible = showHandle !== undefined ? showHandle : edge;\n\n const Handle = () => (\n <div\n data-slot=\"drawer-handle\"\n aria-hidden\n class={cn(\n \"bg-muted mx-auto h-1.5 w-[100px] shrink-0 rounded-full\",\n direction === \"bottom\" && \"mb-2\",\n direction === \"top\" && \"mt-4\",\n )}\n />\n );\n\n return (\n <SheetContent\n side={direction}\n showCloseButton={showCloseButton}\n data-slot=\"drawer-content\"\n data-vaul-drawer-direction={direction}\n class={cn(className)}\n {...rest}\n >\n {direction === \"bottom\" && handleVisible ? <Handle /> : null}\n {children}\n {direction === \"top\" && handleVisible ? <Handle /> : null}\n </SheetContent>\n );\n};\n","import type { DialogDescriptionProps } from \"../dialog/DialogDescription\";\nimport { SheetDescription } from \"../sheet/SheetDescription\";\n\nexport type DrawerDescriptionProps = DialogDescriptionProps;\n\nexport const DrawerDescription = (props: DrawerDescriptionProps) => (\n <SheetDescription data-slot=\"drawer-description\" {...props} />\n);\n","import { SheetFooter, type SheetFooterProps } from \"../sheet/SheetFooter\";\n\nexport type DrawerFooterProps = SheetFooterProps;\n\nexport const DrawerFooter = (props: DrawerFooterProps) => (\n <SheetFooter data-slot=\"drawer-footer\" {...props} />\n);\n","import { SheetHeader, type SheetHeaderProps } from \"../sheet/SheetHeader\";\n\nexport type DrawerHeaderProps = SheetHeaderProps;\n\nexport const DrawerHeader = (props: DrawerHeaderProps) => (\n <SheetHeader data-slot=\"drawer-header\" {...props} />\n);\n","import type { DialogTitleProps } from \"../dialog/DialogTitle\";\nimport { SheetTitle } from \"../sheet/SheetTitle\";\n\nexport type DrawerTitleProps = DialogTitleProps;\n\nexport const DrawerTitle = (props: DrawerTitleProps) => (\n <SheetTitle data-slot=\"drawer-title\" {...props} />\n);\n","import type { DialogTriggerProps } from \"../dialog/DialogTrigger\";\nimport { SheetTrigger } from \"../sheet/SheetTrigger\";\n\nexport type DrawerTriggerProps = DialogTriggerProps;\n\nexport const DrawerTrigger = (props: DrawerTriggerProps) => (\n <SheetTrigger data-slot=\"drawer-trigger\" {...props} />\n);\n","import { Drawer } from \"./Drawer\";\nimport { DrawerClose } from \"./DrawerClose\";\nimport { DrawerContent } from \"./DrawerContent\";\nimport { DrawerDescription } from \"./DrawerDescription\";\nimport { DrawerFooter } from \"./DrawerFooter\";\nimport { DrawerHeader } from \"./DrawerHeader\";\nimport { DrawerTitle } from \"./DrawerTitle\";\nimport { DrawerTrigger } from \"./DrawerTrigger\";\n\nexport type { DrawerDirection } from \"./drawer-context\";\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n};\n\nexport default {\n Root: Drawer,\n Trigger: DrawerTrigger,\n Content: DrawerContent,\n Header: DrawerHeader,\n Footer: DrawerFooter,\n Title: DrawerTitle,\n Description: DrawerDescription,\n Close: DrawerClose,\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { cn } from './chunk-XIANSPQO.js';
2
2
  import { createContext, toChildArray, isValidElement } from 'preact';
3
3
  import { useState, useLayoutEffect, useRef, useMemo, useContext } from 'preact/hooks';
4
4
  import { jsx, jsxs } from 'preact/jsx-runtime';
@@ -336,5 +336,5 @@ var scroll_area_default = {
336
336
  };
337
337
 
338
338
  export { ScrollArea, ScrollAreaCorner, ScrollBar, scroll_area_default };
339
- //# sourceMappingURL=chunk-J4DMQV64.js.map
340
- //# sourceMappingURL=chunk-J4DMQV64.js.map
339
+ //# sourceMappingURL=chunk-OCZC4PDM.js.map
340
+ //# sourceMappingURL=chunk-OCZC4PDM.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/scroll-area/scroll-area-context.tsx","../src/components/scroll-area/ScrollAreaCorner.tsx","../src/components/scroll-area/ScrollBar.tsx","../src/components/scroll-area/ScrollArea.tsx","../src/components/scroll-area/index.ts"],"names":["useState","useLayoutEffect","isVertical","jsx","useRef"],"mappings":"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","file":"chunk-J4DMQV64.js","sourcesContent":["import type { RefObject } from \"preact\";\nimport { createContext } from \"preact\";\nimport { useContext } from \"preact/hooks\";\n\nexport type ScrollAreaContextValue = {\n viewportRef: RefObject<HTMLDivElement | null>;\n};\n\nexport const ScrollAreaContext = createContext<ScrollAreaContextValue | null>(null);\n\nexport const useScrollAreaContext = () => {\n const ctx = useContext(ScrollAreaContext);\n if (!ctx) {\n throw new Error(\"ScrollBar and ScrollAreaCorner must be used within ScrollArea\");\n }\n return ctx;\n};\n","import type { JSX } from \"preact\";\nimport { useLayoutEffect, useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { useScrollAreaContext } from \"./scroll-area-context\";\n\nexport type ScrollAreaCornerProps = JSX.HTMLAttributes<HTMLDivElement>;\n\nexport const ScrollAreaCorner = ({ class: className, ...rest }: ScrollAreaCornerProps) => {\n const { viewportRef } = useScrollAreaContext();\n const [visible, setVisible] = useState(false);\n\n useLayoutEffect(() => {\n const el = viewportRef.current;\n if (!el) return;\n\n const check = () => {\n const eps = 0.5;\n const hasX = el.scrollWidth > el.clientWidth + eps;\n const hasY = el.scrollHeight > el.clientHeight + eps;\n setVisible(hasX && hasY);\n };\n\n check();\n el.addEventListener(\"scroll\", check, { passive: true });\n const resizeObserver = new ResizeObserver(check);\n resizeObserver.observe(el);\n const mutationObserver = new MutationObserver(check);\n mutationObserver.observe(el, { childList: true, subtree: true, characterData: true });\n\n return () => {\n el.removeEventListener(\"scroll\", check);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, [viewportRef]);\n\n if (!visible) return null;\n\n return (\n <div\n data-slot=\"scroll-area-corner\"\n aria-hidden=\"true\"\n class={cn(\n \"pointer-events-none absolute bottom-1 right-1 z-[1] size-2.5 rounded-sm bg-border/45\",\n className,\n )}\n {...rest}\n />\n );\n};\n","import type { JSX } from \"preact\";\nimport { useLayoutEffect, useRef, useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { useScrollAreaContext } from \"./scroll-area-context\";\n\nexport type ScrollBarProps = JSX.HTMLAttributes<HTMLDivElement> & {\n orientation?: \"horizontal\" | \"vertical\";\n};\n\ntype ThumbState = {\n size: number;\n offset: number;\n hidden: boolean;\n};\n\ntype Metrics = {\n thumbSize: number;\n maxScroll: number;\n maxThumbTravel: number;\n viewportSize: number;\n scrollSize: number;\n};\n\nconst MIN_THUMB_SIZE = 18;\nconst TRACK_PADDING = 2;\n\nexport const ScrollBar = ({\n class: className,\n orientation = \"vertical\",\n onPointerDown: onPointerDownProp,\n ...rest\n}: ScrollBarProps) => {\n const { viewportRef } = useScrollAreaContext();\n const trackRef = useRef<HTMLDivElement>(null);\n const thumbRef = useRef<HTMLDivElement>(null);\n const metricsRef = useRef<Metrics>({\n thumbSize: 0,\n maxScroll: 0,\n maxThumbTravel: 0,\n viewportSize: 0,\n scrollSize: 0,\n });\n const dragRef = useRef<{ startPointer: number; startScroll: number } | null>(null);\n const [thumb, setThumb] = useState<ThumbState>({ size: 0, offset: 0, hidden: true });\n\n useLayoutEffect(() => {\n const scrollEl = viewportRef.current;\n const track = trackRef.current;\n if (!scrollEl || !track) return;\n\n const compute = () => {\n const isVertical = orientation === \"vertical\";\n const viewportSize = isVertical ? scrollEl.clientHeight : scrollEl.clientWidth;\n const scrollSize = isVertical ? scrollEl.scrollHeight : scrollEl.scrollWidth;\n const scrollOffset = isVertical ? scrollEl.scrollTop : scrollEl.scrollLeft;\n const trackSize = (isVertical ? track.clientHeight : track.clientWidth) - TRACK_PADDING * 2;\n const maxScroll = scrollSize - viewportSize;\n\n if (trackSize <= 0 || maxScroll <= 0) {\n metricsRef.current = {\n thumbSize: 0,\n maxScroll: 0,\n maxThumbTravel: 0,\n viewportSize,\n scrollSize,\n };\n setThumb({ size: 0, offset: 0, hidden: true });\n return;\n }\n\n const rawSize = (viewportSize / scrollSize) * trackSize;\n const size = Math.min(trackSize, Math.max(MIN_THUMB_SIZE, rawSize));\n const maxThumbTravel = trackSize - size;\n const ratio = maxScroll > 0 ? scrollOffset / maxScroll : 0;\n const offset = maxThumbTravel * ratio;\n\n metricsRef.current = {\n thumbSize: size,\n maxScroll,\n maxThumbTravel,\n viewportSize,\n scrollSize,\n };\n setThumb({ size, offset, hidden: false });\n };\n\n compute();\n scrollEl.addEventListener(\"scroll\", compute, { passive: true });\n const resizeObserver = new ResizeObserver(compute);\n resizeObserver.observe(scrollEl);\n resizeObserver.observe(track);\n const mutationObserver = new MutationObserver(compute);\n mutationObserver.observe(scrollEl, { childList: true, subtree: true, characterData: true });\n\n return () => {\n scrollEl.removeEventListener(\"scroll\", compute);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, [orientation, viewportRef]);\n\n const isVertical = orientation === \"vertical\";\n\n const onThumbPointerDown = (e: JSX.TargetedPointerEvent<HTMLDivElement>) => {\n if (thumb.hidden) return;\n e.preventDefault();\n e.stopPropagation();\n const scrollEl = viewportRef.current;\n if (!scrollEl || !e.isPrimary) return;\n\n const m = metricsRef.current;\n if (m.maxThumbTravel <= 0) return;\n\n dragRef.current = {\n startPointer: isVertical ? e.clientY : e.clientX,\n startScroll: isVertical ? scrollEl.scrollTop : scrollEl.scrollLeft,\n };\n\n (e.currentTarget as HTMLElement).setPointerCapture(e.pointerId);\n\n const onMove = (ev: globalThis.PointerEvent) => {\n if (!dragRef.current) return;\n const el = viewportRef.current;\n if (!el) return;\n const mm = metricsRef.current;\n if (mm.maxThumbTravel <= 0) return;\n const pointer = isVertical ? ev.clientY : ev.clientX;\n const delta = pointer - dragRef.current.startPointer;\n const scrollDelta = (delta / mm.maxThumbTravel) * mm.maxScroll;\n const next = dragRef.current.startScroll + scrollDelta;\n const clamped = Math.max(0, Math.min(mm.maxScroll, next));\n if (isVertical) {\n el.scrollTop = clamped;\n } else {\n el.scrollLeft = clamped;\n }\n };\n\n const onUp = (ev: globalThis.PointerEvent) => {\n (e.currentTarget as HTMLElement).releasePointerCapture(ev.pointerId);\n dragRef.current = null;\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n window.removeEventListener(\"pointercancel\", onUp);\n };\n\n window.addEventListener(\"pointermove\", onMove);\n window.addEventListener(\"pointerup\", onUp);\n window.addEventListener(\"pointercancel\", onUp);\n };\n\n const onTrackPointerDown = (e: JSX.TargetedPointerEvent<HTMLDivElement>) => {\n if (thumb.hidden || e.button !== 0) return;\n const t = thumbRef.current;\n if (t && (e.target === t || t.contains(e.target as Node))) return;\n\n const scrollEl = viewportRef.current;\n const track = trackRef.current;\n if (!scrollEl || !track) return;\n\n const m = metricsRef.current;\n if (m.maxThumbTravel <= 0 || m.maxScroll <= 0) return;\n\n const rect = track.getBoundingClientRect();\n const clickAlong = isVertical\n ? e.clientY - rect.top - TRACK_PADDING\n : e.clientX - rect.left - TRACK_PADDING;\n\n const page = thumb.size + 4;\n let nextOffset = thumb.offset;\n if (clickAlong < thumb.offset) {\n nextOffset = Math.max(0, thumb.offset - page);\n } else if (clickAlong > thumb.offset + thumb.size) {\n nextOffset = Math.min(m.maxThumbTravel, thumb.offset + page);\n } else {\n return;\n }\n\n const nextScroll = (nextOffset / m.maxThumbTravel) * m.maxScroll;\n if (isVertical) {\n scrollEl.scrollTop = nextScroll;\n } else {\n scrollEl.scrollLeft = nextScroll;\n }\n };\n\n return (\n <div\n ref={trackRef}\n data-slot=\"scroll-bar\"\n data-orientation={orientation}\n aria-hidden=\"true\"\n class={cn(\n \"absolute z-[1] rounded-full bg-border/45 p-0.5 transition-opacity select-none\",\n orientation === \"vertical\" ? \"right-1 top-1 bottom-1 w-2\" : \"right-1 left-1 bottom-1 h-2\",\n thumb.hidden ? \"pointer-events-none opacity-0\" : \"opacity-100\",\n className,\n )}\n {...rest}\n onPointerDown={(e) => {\n onPointerDownProp?.(e);\n onTrackPointerDown(e);\n }}\n >\n <div\n ref={thumbRef}\n data-slot=\"scroll-bar-thumb\"\n class={cn(\n \"absolute touch-none rounded-full bg-foreground/35 ring-1 ring-border/40\",\n orientation === \"vertical\"\n ? \"left-0 right-0 top-0 cursor-grab active:cursor-grabbing\"\n : \"bottom-0 left-0 top-0 h-full cursor-grab active:cursor-grabbing\",\n )}\n style={\n orientation === \"vertical\"\n ? { height: `${thumb.size}px`, transform: `translateY(${thumb.offset}px)` }\n : { width: `${thumb.size}px`, transform: `translateX(${thumb.offset}px)` }\n }\n onPointerDown={onThumbPointerDown}\n />\n </div>\n );\n};\n","import type { ComponentChild, ComponentChildren, JSX } from \"preact\";\nimport { isValidElement, toChildArray } from \"preact\";\nimport { useLayoutEffect, useMemo, useRef } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { ScrollAreaCorner } from \"./ScrollAreaCorner\";\nimport { ScrollBar } from \"./ScrollBar\";\nimport { ScrollAreaContext } from \"./scroll-area-context\";\n\nconst hideNativeScrollbar =\n \"[scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden\";\n\nfunction partitionScrollAreaChildren(children: ComponentChildren): {\n content: ComponentChild[];\n chrome: ComponentChild[];\n} {\n const content: ComponentChild[] = [];\n const chrome: ComponentChild[] = [];\n for (const node of toChildArray(children)) {\n if (isValidElement(node) && (node.type === ScrollBar || node.type === ScrollAreaCorner)) {\n chrome.push(node);\n } else {\n content.push(node);\n }\n }\n return { content, chrome };\n}\n\nfunction syncViewportOverflowState(el: HTMLDivElement) {\n const { scrollLeft, scrollTop, clientWidth, clientHeight, scrollWidth, scrollHeight } = el;\n const maxX = scrollWidth - clientWidth;\n const maxY = scrollHeight - clientHeight;\n const eps = 0.5;\n const hasX = maxX > eps;\n const hasY = maxY > eps;\n\n const setEdge = (name: string, on: boolean) => {\n if (on) el.setAttribute(name, \"\");\n else el.removeAttribute(name);\n };\n\n if (hasX) {\n setEdge(\"data-has-overflow-x\", true);\n setEdge(\"data-overflow-x-start\", scrollLeft > eps);\n setEdge(\"data-overflow-x-end\", scrollLeft < maxX - eps);\n } else {\n el.removeAttribute(\"data-has-overflow-x\");\n el.removeAttribute(\"data-overflow-x-start\");\n el.removeAttribute(\"data-overflow-x-end\");\n }\n\n if (hasY) {\n setEdge(\"data-has-overflow-y\", true);\n setEdge(\"data-overflow-y-start\", scrollTop > eps);\n setEdge(\"data-overflow-y-end\", scrollTop < maxY - eps);\n } else {\n el.removeAttribute(\"data-has-overflow-y\");\n el.removeAttribute(\"data-overflow-y-start\");\n el.removeAttribute(\"data-overflow-y-end\");\n }\n\n el.style.setProperty(\"--scroll-area-overflow-x-start\", `${scrollLeft}px`);\n el.style.setProperty(\"--scroll-area-overflow-x-end\", `${Math.max(0, maxX - scrollLeft)}px`);\n el.style.setProperty(\"--scroll-area-overflow-y-start\", `${scrollTop}px`);\n el.style.setProperty(\"--scroll-area-overflow-y-end\", `${Math.max(0, maxY - scrollTop)}px`);\n}\n\nexport type ScrollAreaProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ScrollArea = ({ class: className, children, ...rest }: ScrollAreaProps) => {\n const viewportRef = useRef<HTMLDivElement>(null);\n const scrollEndTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const { content, chrome } = partitionScrollAreaChildren(children);\n\n const contextValue = useMemo(() => ({ viewportRef }), []);\n\n useLayoutEffect(() => {\n const el = viewportRef.current;\n if (!el) return;\n\n const update = () => {\n syncViewportOverflowState(el);\n };\n\n const onScroll = () => {\n syncViewportOverflowState(el);\n el.setAttribute(\"data-scrolling\", \"\");\n if (scrollEndTimerRef.current !== undefined) {\n clearTimeout(scrollEndTimerRef.current);\n }\n scrollEndTimerRef.current = setTimeout(() => {\n el.removeAttribute(\"data-scrolling\");\n scrollEndTimerRef.current = undefined;\n }, 150);\n };\n\n update();\n el.addEventListener(\"scroll\", onScroll, { passive: true });\n const resizeObserver = new ResizeObserver(update);\n resizeObserver.observe(el);\n const mutationObserver = new MutationObserver(update);\n mutationObserver.observe(el, { childList: true, subtree: true, characterData: true });\n\n return () => {\n el.removeEventListener(\"scroll\", onScroll);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n if (scrollEndTimerRef.current !== undefined) {\n clearTimeout(scrollEndTimerRef.current);\n }\n el.removeAttribute(\"data-scrolling\");\n };\n }, []);\n\n return (\n <ScrollAreaContext.Provider value={contextValue}>\n <div\n data-slot=\"scroll-area\"\n class={cn(\"relative min-h-0 min-w-0 overflow-hidden\", className)}\n {...rest}\n >\n <div\n ref={viewportRef}\n data-slot=\"scroll-area-viewport\"\n class={cn(\"size-full overflow-auto\", hideNativeScrollbar)}\n >\n <div data-slot=\"scroll-area-content\" class=\"min-w-0\">\n {content}\n </div>\n </div>\n {chrome}\n </div>\n </ScrollAreaContext.Provider>\n );\n};\n","import { ScrollArea } from \"./ScrollArea\";\nimport { ScrollAreaCorner } from \"./ScrollAreaCorner\";\nimport { ScrollBar } from \"./ScrollBar\";\n\nexport { ScrollArea, ScrollAreaCorner, ScrollBar };\n\nexport default {\n Root: ScrollArea,\n Bar: ScrollBar,\n Corner: ScrollAreaCorner,\n};\n"]}
1
+ {"version":3,"sources":["../src/components/scroll-area/scroll-area-context.tsx","../src/components/scroll-area/ScrollAreaCorner.tsx","../src/components/scroll-area/ScrollBar.tsx","../src/components/scroll-area/ScrollArea.tsx","../src/components/scroll-area/index.ts"],"names":["useState","useLayoutEffect","isVertical","jsx","useRef"],"mappings":"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","file":"chunk-OCZC4PDM.js","sourcesContent":["import type { RefObject } from \"preact\";\nimport { createContext } from \"preact\";\nimport { useContext } from \"preact/hooks\";\n\nexport type ScrollAreaContextValue = {\n viewportRef: RefObject<HTMLDivElement | null>;\n};\n\nexport const ScrollAreaContext = createContext<ScrollAreaContextValue | null>(null);\n\nexport const useScrollAreaContext = () => {\n const ctx = useContext(ScrollAreaContext);\n if (!ctx) {\n throw new Error(\"ScrollBar and ScrollAreaCorner must be used within ScrollArea\");\n }\n return ctx;\n};\n","import type { JSX } from \"preact\";\nimport { useLayoutEffect, useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { useScrollAreaContext } from \"./scroll-area-context\";\n\nexport type ScrollAreaCornerProps = JSX.HTMLAttributes<HTMLDivElement>;\n\nexport const ScrollAreaCorner = ({ class: className, ...rest }: ScrollAreaCornerProps) => {\n const { viewportRef } = useScrollAreaContext();\n const [visible, setVisible] = useState(false);\n\n useLayoutEffect(() => {\n const el = viewportRef.current;\n if (!el) return;\n\n const check = () => {\n const eps = 0.5;\n const hasX = el.scrollWidth > el.clientWidth + eps;\n const hasY = el.scrollHeight > el.clientHeight + eps;\n setVisible(hasX && hasY);\n };\n\n check();\n el.addEventListener(\"scroll\", check, { passive: true });\n const resizeObserver = new ResizeObserver(check);\n resizeObserver.observe(el);\n const mutationObserver = new MutationObserver(check);\n mutationObserver.observe(el, { childList: true, subtree: true, characterData: true });\n\n return () => {\n el.removeEventListener(\"scroll\", check);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, [viewportRef]);\n\n if (!visible) return null;\n\n return (\n <div\n data-slot=\"scroll-area-corner\"\n aria-hidden=\"true\"\n class={cn(\n \"pointer-events-none absolute bottom-1 right-1 z-[1] size-2.5 rounded-sm bg-border/45\",\n className,\n )}\n {...rest}\n />\n );\n};\n","import type { JSX } from \"preact\";\nimport { useLayoutEffect, useRef, useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { useScrollAreaContext } from \"./scroll-area-context\";\n\nexport type ScrollBarProps = JSX.HTMLAttributes<HTMLDivElement> & {\n orientation?: \"horizontal\" | \"vertical\";\n};\n\ntype ThumbState = {\n size: number;\n offset: number;\n hidden: boolean;\n};\n\ntype Metrics = {\n thumbSize: number;\n maxScroll: number;\n maxThumbTravel: number;\n viewportSize: number;\n scrollSize: number;\n};\n\nconst MIN_THUMB_SIZE = 18;\nconst TRACK_PADDING = 2;\n\nexport const ScrollBar = ({\n class: className,\n orientation = \"vertical\",\n onPointerDown: onPointerDownProp,\n ...rest\n}: ScrollBarProps) => {\n const { viewportRef } = useScrollAreaContext();\n const trackRef = useRef<HTMLDivElement>(null);\n const thumbRef = useRef<HTMLDivElement>(null);\n const metricsRef = useRef<Metrics>({\n thumbSize: 0,\n maxScroll: 0,\n maxThumbTravel: 0,\n viewportSize: 0,\n scrollSize: 0,\n });\n const dragRef = useRef<{ startPointer: number; startScroll: number } | null>(null);\n const [thumb, setThumb] = useState<ThumbState>({ size: 0, offset: 0, hidden: true });\n\n useLayoutEffect(() => {\n const scrollEl = viewportRef.current;\n const track = trackRef.current;\n if (!scrollEl || !track) return;\n\n const compute = () => {\n const isVertical = orientation === \"vertical\";\n const viewportSize = isVertical ? scrollEl.clientHeight : scrollEl.clientWidth;\n const scrollSize = isVertical ? scrollEl.scrollHeight : scrollEl.scrollWidth;\n const scrollOffset = isVertical ? scrollEl.scrollTop : scrollEl.scrollLeft;\n const trackSize = (isVertical ? track.clientHeight : track.clientWidth) - TRACK_PADDING * 2;\n const maxScroll = scrollSize - viewportSize;\n\n if (trackSize <= 0 || maxScroll <= 0) {\n metricsRef.current = {\n thumbSize: 0,\n maxScroll: 0,\n maxThumbTravel: 0,\n viewportSize,\n scrollSize,\n };\n setThumb({ size: 0, offset: 0, hidden: true });\n return;\n }\n\n const rawSize = (viewportSize / scrollSize) * trackSize;\n const size = Math.min(trackSize, Math.max(MIN_THUMB_SIZE, rawSize));\n const maxThumbTravel = trackSize - size;\n const ratio = maxScroll > 0 ? scrollOffset / maxScroll : 0;\n const offset = maxThumbTravel * ratio;\n\n metricsRef.current = {\n thumbSize: size,\n maxScroll,\n maxThumbTravel,\n viewportSize,\n scrollSize,\n };\n setThumb({ size, offset, hidden: false });\n };\n\n compute();\n scrollEl.addEventListener(\"scroll\", compute, { passive: true });\n const resizeObserver = new ResizeObserver(compute);\n resizeObserver.observe(scrollEl);\n resizeObserver.observe(track);\n const mutationObserver = new MutationObserver(compute);\n mutationObserver.observe(scrollEl, { childList: true, subtree: true, characterData: true });\n\n return () => {\n scrollEl.removeEventListener(\"scroll\", compute);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, [orientation, viewportRef]);\n\n const isVertical = orientation === \"vertical\";\n\n const onThumbPointerDown = (e: JSX.TargetedPointerEvent<HTMLDivElement>) => {\n if (thumb.hidden) return;\n e.preventDefault();\n e.stopPropagation();\n const scrollEl = viewportRef.current;\n if (!scrollEl || !e.isPrimary) return;\n\n const m = metricsRef.current;\n if (m.maxThumbTravel <= 0) return;\n\n dragRef.current = {\n startPointer: isVertical ? e.clientY : e.clientX,\n startScroll: isVertical ? scrollEl.scrollTop : scrollEl.scrollLeft,\n };\n\n (e.currentTarget as HTMLElement).setPointerCapture(e.pointerId);\n\n const onMove = (ev: globalThis.PointerEvent) => {\n if (!dragRef.current) return;\n const el = viewportRef.current;\n if (!el) return;\n const mm = metricsRef.current;\n if (mm.maxThumbTravel <= 0) return;\n const pointer = isVertical ? ev.clientY : ev.clientX;\n const delta = pointer - dragRef.current.startPointer;\n const scrollDelta = (delta / mm.maxThumbTravel) * mm.maxScroll;\n const next = dragRef.current.startScroll + scrollDelta;\n const clamped = Math.max(0, Math.min(mm.maxScroll, next));\n if (isVertical) {\n el.scrollTop = clamped;\n } else {\n el.scrollLeft = clamped;\n }\n };\n\n const onUp = (ev: globalThis.PointerEvent) => {\n (e.currentTarget as HTMLElement).releasePointerCapture(ev.pointerId);\n dragRef.current = null;\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n window.removeEventListener(\"pointercancel\", onUp);\n };\n\n window.addEventListener(\"pointermove\", onMove);\n window.addEventListener(\"pointerup\", onUp);\n window.addEventListener(\"pointercancel\", onUp);\n };\n\n const onTrackPointerDown = (e: JSX.TargetedPointerEvent<HTMLDivElement>) => {\n if (thumb.hidden || e.button !== 0) return;\n const t = thumbRef.current;\n if (t && (e.target === t || t.contains(e.target as Node))) return;\n\n const scrollEl = viewportRef.current;\n const track = trackRef.current;\n if (!scrollEl || !track) return;\n\n const m = metricsRef.current;\n if (m.maxThumbTravel <= 0 || m.maxScroll <= 0) return;\n\n const rect = track.getBoundingClientRect();\n const clickAlong = isVertical\n ? e.clientY - rect.top - TRACK_PADDING\n : e.clientX - rect.left - TRACK_PADDING;\n\n const page = thumb.size + 4;\n let nextOffset = thumb.offset;\n if (clickAlong < thumb.offset) {\n nextOffset = Math.max(0, thumb.offset - page);\n } else if (clickAlong > thumb.offset + thumb.size) {\n nextOffset = Math.min(m.maxThumbTravel, thumb.offset + page);\n } else {\n return;\n }\n\n const nextScroll = (nextOffset / m.maxThumbTravel) * m.maxScroll;\n if (isVertical) {\n scrollEl.scrollTop = nextScroll;\n } else {\n scrollEl.scrollLeft = nextScroll;\n }\n };\n\n return (\n <div\n ref={trackRef}\n data-slot=\"scroll-bar\"\n data-orientation={orientation}\n aria-hidden=\"true\"\n class={cn(\n \"absolute z-[1] rounded-full bg-border/45 p-0.5 transition-opacity select-none\",\n orientation === \"vertical\" ? \"right-1 top-1 bottom-1 w-2\" : \"right-1 left-1 bottom-1 h-2\",\n thumb.hidden ? \"pointer-events-none opacity-0\" : \"opacity-100\",\n className,\n )}\n {...rest}\n onPointerDown={(e) => {\n onPointerDownProp?.(e);\n onTrackPointerDown(e);\n }}\n >\n <div\n ref={thumbRef}\n data-slot=\"scroll-bar-thumb\"\n class={cn(\n \"absolute touch-none rounded-full bg-foreground/35 ring-1 ring-border/40\",\n orientation === \"vertical\"\n ? \"left-0 right-0 top-0 cursor-grab active:cursor-grabbing\"\n : \"bottom-0 left-0 top-0 h-full cursor-grab active:cursor-grabbing\",\n )}\n style={\n orientation === \"vertical\"\n ? { height: `${thumb.size}px`, transform: `translateY(${thumb.offset}px)` }\n : { width: `${thumb.size}px`, transform: `translateX(${thumb.offset}px)` }\n }\n onPointerDown={onThumbPointerDown}\n />\n </div>\n );\n};\n","import type { ComponentChild, ComponentChildren, JSX } from \"preact\";\nimport { isValidElement, toChildArray } from \"preact\";\nimport { useLayoutEffect, useMemo, useRef } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { ScrollAreaCorner } from \"./ScrollAreaCorner\";\nimport { ScrollBar } from \"./ScrollBar\";\nimport { ScrollAreaContext } from \"./scroll-area-context\";\n\nconst hideNativeScrollbar =\n \"[scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden\";\n\nfunction partitionScrollAreaChildren(children: ComponentChildren): {\n content: ComponentChild[];\n chrome: ComponentChild[];\n} {\n const content: ComponentChild[] = [];\n const chrome: ComponentChild[] = [];\n for (const node of toChildArray(children)) {\n if (isValidElement(node) && (node.type === ScrollBar || node.type === ScrollAreaCorner)) {\n chrome.push(node);\n } else {\n content.push(node);\n }\n }\n return { content, chrome };\n}\n\nfunction syncViewportOverflowState(el: HTMLDivElement) {\n const { scrollLeft, scrollTop, clientWidth, clientHeight, scrollWidth, scrollHeight } = el;\n const maxX = scrollWidth - clientWidth;\n const maxY = scrollHeight - clientHeight;\n const eps = 0.5;\n const hasX = maxX > eps;\n const hasY = maxY > eps;\n\n const setEdge = (name: string, on: boolean) => {\n if (on) el.setAttribute(name, \"\");\n else el.removeAttribute(name);\n };\n\n if (hasX) {\n setEdge(\"data-has-overflow-x\", true);\n setEdge(\"data-overflow-x-start\", scrollLeft > eps);\n setEdge(\"data-overflow-x-end\", scrollLeft < maxX - eps);\n } else {\n el.removeAttribute(\"data-has-overflow-x\");\n el.removeAttribute(\"data-overflow-x-start\");\n el.removeAttribute(\"data-overflow-x-end\");\n }\n\n if (hasY) {\n setEdge(\"data-has-overflow-y\", true);\n setEdge(\"data-overflow-y-start\", scrollTop > eps);\n setEdge(\"data-overflow-y-end\", scrollTop < maxY - eps);\n } else {\n el.removeAttribute(\"data-has-overflow-y\");\n el.removeAttribute(\"data-overflow-y-start\");\n el.removeAttribute(\"data-overflow-y-end\");\n }\n\n el.style.setProperty(\"--scroll-area-overflow-x-start\", `${scrollLeft}px`);\n el.style.setProperty(\"--scroll-area-overflow-x-end\", `${Math.max(0, maxX - scrollLeft)}px`);\n el.style.setProperty(\"--scroll-area-overflow-y-start\", `${scrollTop}px`);\n el.style.setProperty(\"--scroll-area-overflow-y-end\", `${Math.max(0, maxY - scrollTop)}px`);\n}\n\nexport type ScrollAreaProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ScrollArea = ({ class: className, children, ...rest }: ScrollAreaProps) => {\n const viewportRef = useRef<HTMLDivElement>(null);\n const scrollEndTimerRef = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const { content, chrome } = partitionScrollAreaChildren(children);\n\n const contextValue = useMemo(() => ({ viewportRef }), []);\n\n useLayoutEffect(() => {\n const el = viewportRef.current;\n if (!el) return;\n\n const update = () => {\n syncViewportOverflowState(el);\n };\n\n const onScroll = () => {\n syncViewportOverflowState(el);\n el.setAttribute(\"data-scrolling\", \"\");\n if (scrollEndTimerRef.current !== undefined) {\n clearTimeout(scrollEndTimerRef.current);\n }\n scrollEndTimerRef.current = setTimeout(() => {\n el.removeAttribute(\"data-scrolling\");\n scrollEndTimerRef.current = undefined;\n }, 150);\n };\n\n update();\n el.addEventListener(\"scroll\", onScroll, { passive: true });\n const resizeObserver = new ResizeObserver(update);\n resizeObserver.observe(el);\n const mutationObserver = new MutationObserver(update);\n mutationObserver.observe(el, { childList: true, subtree: true, characterData: true });\n\n return () => {\n el.removeEventListener(\"scroll\", onScroll);\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n if (scrollEndTimerRef.current !== undefined) {\n clearTimeout(scrollEndTimerRef.current);\n }\n el.removeAttribute(\"data-scrolling\");\n };\n }, []);\n\n return (\n <ScrollAreaContext.Provider value={contextValue}>\n <div\n data-slot=\"scroll-area\"\n class={cn(\"relative min-h-0 min-w-0 overflow-hidden\", className)}\n {...rest}\n >\n <div\n ref={viewportRef}\n data-slot=\"scroll-area-viewport\"\n class={cn(\"size-full overflow-auto\", hideNativeScrollbar)}\n >\n <div data-slot=\"scroll-area-content\" class=\"min-w-0\">\n {content}\n </div>\n </div>\n {chrome}\n </div>\n </ScrollAreaContext.Provider>\n );\n};\n","import { ScrollArea } from \"./ScrollArea\";\nimport { ScrollAreaCorner } from \"./ScrollAreaCorner\";\nimport { ScrollBar } from \"./ScrollBar\";\n\nexport { ScrollArea, ScrollAreaCorner, ScrollBar };\n\nexport default {\n Root: ScrollArea,\n Bar: ScrollBar,\n Corner: ScrollAreaCorner,\n};\n"]}
@@ -1,5 +1,5 @@
1
- import { SheetFooter, SheetHeader, SheetContent, Sheet } from './chunk-EMUPVA2F.js';
2
- import { DialogClose, DialogDescription, DialogTitle, DialogTrigger } from './chunk-HHLQYMPT.js';
1
+ import { SheetFooter, SheetHeader, SheetContent, Sheet } from './chunk-KHV3WV6T.js';
2
+ import { DialogClose, DialogDescription, DialogTitle, DialogTrigger } from './chunk-DUTKHOH3.js';
3
3
 
4
4
  // src/components/sheet/index.ts
5
5
  var sheet_default = {
@@ -14,5 +14,5 @@ var sheet_default = {
14
14
  };
15
15
 
16
16
  export { sheet_default };
17
- //# sourceMappingURL=chunk-IQH3XSOI.js.map
18
- //# sourceMappingURL=chunk-IQH3XSOI.js.map
17
+ //# sourceMappingURL=chunk-ODYHA3O5.js.map
18
+ //# sourceMappingURL=chunk-ODYHA3O5.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/sheet/index.ts"],"names":[],"mappings":";;;;AAoBA,IAAO,aAAA,GAAQ;AAAA,EACb,IAAA,EAAM,KAAA;AAAA,EACN,OAAA,EAAS,aAAA;AAAA,EACT,OAAA,EAAS,YAAA;AAAA,EACT,MAAA,EAAQ,WAAA;AAAA,EACR,MAAA,EAAQ,WAAA;AAAA,EACR,KAAA,EAAO,WAAA;AAAA,EACP,WAAA,EAAa,iBAAA;AAAA,EACb,KAAA,EAAO;AACT","file":"chunk-IQH3XSOI.js","sourcesContent":["import { Sheet } from \"./Sheet\";\nimport { SheetClose } from \"./SheetClose\";\nimport { SheetContent } from \"./SheetContent\";\nimport { SheetDescription } from \"./SheetDescription\";\nimport { SheetFooter } from \"./SheetFooter\";\nimport { SheetHeader } from \"./SheetHeader\";\nimport { SheetTitle } from \"./SheetTitle\";\nimport { SheetTrigger } from \"./SheetTrigger\";\n\nexport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n};\n\nexport default {\n Root: Sheet,\n Trigger: SheetTrigger,\n Content: SheetContent,\n Header: SheetHeader,\n Footer: SheetFooter,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n};\n"]}
1
+ {"version":3,"sources":["../src/components/sheet/index.ts"],"names":[],"mappings":";;;;AAoBA,IAAO,aAAA,GAAQ;AAAA,EACb,IAAA,EAAM,KAAA;AAAA,EACN,OAAA,EAAS,aAAA;AAAA,EACT,OAAA,EAAS,YAAA;AAAA,EACT,MAAA,EAAQ,WAAA;AAAA,EACR,MAAA,EAAQ,WAAA;AAAA,EACR,KAAA,EAAO,WAAA;AAAA,EACP,WAAA,EAAa,iBAAA;AAAA,EACb,KAAA,EAAO;AACT","file":"chunk-ODYHA3O5.js","sourcesContent":["import { Sheet } from \"./Sheet\";\nimport { SheetClose } from \"./SheetClose\";\nimport { SheetContent } from \"./SheetContent\";\nimport { SheetDescription } from \"./SheetDescription\";\nimport { SheetFooter } from \"./SheetFooter\";\nimport { SheetHeader } from \"./SheetHeader\";\nimport { SheetTitle } from \"./SheetTitle\";\nimport { SheetTrigger } from \"./SheetTrigger\";\n\nexport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n};\n\nexport default {\n Root: Sheet,\n Trigger: SheetTrigger,\n Content: SheetContent,\n Header: SheetHeader,\n Footer: SheetFooter,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n};\n"]}
@@ -0,0 +1,9 @@
1
+ import { input, Input } from './chunk-7LWAWZHM.js';
2
+
3
+ // src/components/input/index.ts
4
+ var InputVariants = { input };
5
+ var input_default = Input;
6
+
7
+ export { InputVariants, input_default };
8
+ //# sourceMappingURL=chunk-OJEZZVZB.js.map
9
+ //# sourceMappingURL=chunk-OJEZZVZB.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/input/index.ts"],"names":[],"mappings":";;;AAEA,IAAM,aAAA,GAAgB,EAAE,KAAA;AAIxB,IAAO,aAAA,GAAQ","file":"chunk-CMBERB5B.js","sourcesContent":["import { Input, input } from \"./Input\";\n\nconst InputVariants = { input };\n\nexport { Input, InputVariants };\n\nexport default Input;\n"]}
1
+ {"version":3,"sources":["../src/components/input/index.ts"],"names":[],"mappings":";;;AAEA,IAAM,aAAA,GAAgB,EAAE,KAAA;AAIxB,IAAO,aAAA,GAAQ","file":"chunk-OJEZZVZB.js","sourcesContent":["import { Input, input } from \"./Input\";\n\nconst InputVariants = { input };\n\nexport { Input, InputVariants };\n\nexport default Input;\n"]}
@@ -1,7 +1,7 @@
1
- import { Popover, PopoverTrigger, PopoverContent } from './chunk-U2UNWXBC.js';
2
- import { Calendar } from './chunk-JNF7FDJO.js';
3
- import { Button } from './chunk-5FBD2NTR.js';
4
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { Popover, PopoverTrigger, PopoverContent } from './chunk-VEQ7X2PO.js';
2
+ import { Calendar } from './chunk-XCYEWILH.js';
3
+ import { Button } from './chunk-DDRX6NNW.js';
4
+ import { cn } from './chunk-XIANSPQO.js';
5
5
  import { useState } from 'preact/hooks';
6
6
  import { jsx, jsxs } from 'preact/jsx-runtime';
7
7
 
@@ -98,5 +98,5 @@ var DatePicker = ({
98
98
  var date_picker_default = DatePicker;
99
99
 
100
100
  export { DatePicker, date_picker_default, formatDatePickerDisplay };
101
- //# sourceMappingURL=chunk-7IOAIEIA.js.map
102
- //# sourceMappingURL=chunk-7IOAIEIA.js.map
101
+ //# sourceMappingURL=chunk-OTXP2QJ7.js.map
102
+ //# sourceMappingURL=chunk-OTXP2QJ7.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/date-picker/DatePicker.tsx","../src/components/date-picker/index.ts"],"names":[],"mappings":"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","file":"chunk-7IOAIEIA.js","sourcesContent":["import type { ComponentChildren, JSX } from \"preact\";\nimport { useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { Button } from \"../button/Button\";\nimport { Calendar } from \"../calendar/Calendar\";\nimport { Popover } from \"../popover/Popover\";\nimport { PopoverContent } from \"../popover/PopoverContent\";\nimport { PopoverTrigger } from \"../popover/PopoverTrigger\";\n\n/** Long date label (~`date-fns` `PPP`) without extra dependencies. */\nexport const formatDatePickerDisplay = (date: Date, locale?: string) =>\n date.toLocaleDateString(locale, {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n });\n\nconst CalendarGlyph = ({ class: className }: { class?: string }) => (\n <svg\n class={cn(\"size-4 shrink-0 opacity-60\", className)}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n aria-hidden=\"true\"\n >\n <rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" />\n <path d=\"M16 2v4M8 2v4M3 10h18\" />\n </svg>\n);\n\nconst ChevronDownGlyph = ({ class: className }: { class?: string }) => (\n <svg\n class={cn(\"size-4 shrink-0 opacity-60\", className)}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n aria-hidden=\"true\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n);\n\nexport type DatePickerProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, \"onChange\"> & {\n value?: Date;\n defaultValue?: Date;\n onValueChange?: (next: Date | undefined) => void;\n placeholder?: string;\n /** Close popover after a day is picked (single mode). @default true */\n closeOnSelect?: boolean;\n align?: \"start\" | \"center\" | \"end\";\n /** Trigger affordance aligned with shadcn demos. @default \"chevron\" */\n triggerIcon?: \"chevron\" | \"calendar\" | \"none\";\n format?: (date: Date) => string;\n children?: ComponentChildren;\n};\n\nexport const DatePicker = ({\n class: className,\n value,\n defaultValue,\n onValueChange,\n placeholder = \"Pick a date\",\n closeOnSelect = true,\n align = \"start\",\n triggerIcon = \"chevron\",\n format = formatDatePickerDisplay,\n children,\n ...rest\n}: DatePickerProps) => {\n const [localValue, setLocalValue] = useState<Date | undefined>(defaultValue);\n const [open, setOpen] = useState(false);\n const selected = value !== undefined ? value : localValue;\n const isControlled = value !== undefined;\n\n const setSelected = (next: Date | undefined) => {\n if (!isControlled) setLocalValue(next);\n onValueChange?.(next);\n };\n\n const iconEl =\n triggerIcon === \"calendar\" ? (\n <CalendarGlyph />\n ) : triggerIcon === \"chevron\" ? (\n <ChevronDownGlyph />\n ) : null;\n\n return (\n <div data-slot=\"date-picker\" class={cn(\"inline-flex\", className)} {...rest}>\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n {children ?? (\n <Button\n variant=\"outline\"\n data-empty={selected ? undefined : \"true\"}\n class={cn(\n \"data-[empty=true]:text-muted-foreground w-[min(100%,280px)] text-start font-normal\",\n triggerIcon === \"chevron\" && \"justify-between\",\n (triggerIcon === \"calendar\" || triggerIcon === \"none\") && \"justify-start gap-2\",\n )}\n >\n {triggerIcon === \"calendar\" ? iconEl : null}\n <span class=\"min-w-0 flex-1 truncate\">\n {selected ? format(selected) : <span>{placeholder}</span>}\n </span>\n {triggerIcon === \"chevron\" ? iconEl : null}\n </Button>\n )}\n </PopoverTrigger>\n <PopoverContent class=\"w-auto overflow-hidden p-0\" align={align} sideOffset={4}>\n <Calendar\n mode=\"single\"\n selected={selected}\n defaultMonth={selected}\n onSelect={(d) => {\n if (!(d instanceof Date)) return;\n setSelected(d);\n if (closeOnSelect) setOpen(false);\n }}\n />\n </PopoverContent>\n </Popover>\n </div>\n );\n};\n","import { DatePicker, formatDatePickerDisplay } from \"./DatePicker\";\n\nexport { DatePicker, formatDatePickerDisplay };\n\nexport default DatePicker;\n"]}
1
+ {"version":3,"sources":["../src/components/date-picker/DatePicker.tsx","../src/components/date-picker/index.ts"],"names":[],"mappings":"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","file":"chunk-OTXP2QJ7.js","sourcesContent":["import type { ComponentChildren, JSX } from \"preact\";\nimport { useState } from \"preact/hooks\";\nimport { cn } from \"../../lib/utils\";\nimport { Button } from \"../button/Button\";\nimport { Calendar } from \"../calendar/Calendar\";\nimport { Popover } from \"../popover/Popover\";\nimport { PopoverContent } from \"../popover/PopoverContent\";\nimport { PopoverTrigger } from \"../popover/PopoverTrigger\";\n\n/** Long date label (~`date-fns` `PPP`) without extra dependencies. */\nexport const formatDatePickerDisplay = (date: Date, locale?: string) =>\n date.toLocaleDateString(locale, {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n });\n\nconst CalendarGlyph = ({ class: className }: { class?: string }) => (\n <svg\n class={cn(\"size-4 shrink-0 opacity-60\", className)}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n aria-hidden=\"true\"\n >\n <rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" />\n <path d=\"M16 2v4M8 2v4M3 10h18\" />\n </svg>\n);\n\nconst ChevronDownGlyph = ({ class: className }: { class?: string }) => (\n <svg\n class={cn(\"size-4 shrink-0 opacity-60\", className)}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n aria-hidden=\"true\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n);\n\nexport type DatePickerProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, \"onChange\"> & {\n value?: Date;\n defaultValue?: Date;\n onValueChange?: (next: Date | undefined) => void;\n placeholder?: string;\n /** Close popover after a day is picked (single mode). @default true */\n closeOnSelect?: boolean;\n align?: \"start\" | \"center\" | \"end\";\n /** Trigger affordance aligned with shadcn demos. @default \"chevron\" */\n triggerIcon?: \"chevron\" | \"calendar\" | \"none\";\n format?: (date: Date) => string;\n children?: ComponentChildren;\n};\n\nexport const DatePicker = ({\n class: className,\n value,\n defaultValue,\n onValueChange,\n placeholder = \"Pick a date\",\n closeOnSelect = true,\n align = \"start\",\n triggerIcon = \"chevron\",\n format = formatDatePickerDisplay,\n children,\n ...rest\n}: DatePickerProps) => {\n const [localValue, setLocalValue] = useState<Date | undefined>(defaultValue);\n const [open, setOpen] = useState(false);\n const selected = value !== undefined ? value : localValue;\n const isControlled = value !== undefined;\n\n const setSelected = (next: Date | undefined) => {\n if (!isControlled) setLocalValue(next);\n onValueChange?.(next);\n };\n\n const iconEl =\n triggerIcon === \"calendar\" ? (\n <CalendarGlyph />\n ) : triggerIcon === \"chevron\" ? (\n <ChevronDownGlyph />\n ) : null;\n\n return (\n <div data-slot=\"date-picker\" class={cn(\"inline-flex\", className)} {...rest}>\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n {children ?? (\n <Button\n variant=\"outline\"\n data-empty={selected ? undefined : \"true\"}\n class={cn(\n \"data-[empty=true]:text-muted-foreground w-[min(100%,280px)] text-start font-normal\",\n triggerIcon === \"chevron\" && \"justify-between\",\n (triggerIcon === \"calendar\" || triggerIcon === \"none\") && \"justify-start gap-2\",\n )}\n >\n {triggerIcon === \"calendar\" ? iconEl : null}\n <span class=\"min-w-0 flex-1 truncate\">\n {selected ? format(selected) : <span>{placeholder}</span>}\n </span>\n {triggerIcon === \"chevron\" ? iconEl : null}\n </Button>\n )}\n </PopoverTrigger>\n <PopoverContent class=\"w-auto overflow-hidden p-0\" align={align} sideOffset={4}>\n <Calendar\n mode=\"single\"\n selected={selected}\n defaultMonth={selected}\n onSelect={(d) => {\n if (!(d instanceof Date)) return;\n setSelected(d);\n if (closeOnSelect) setOpen(false);\n }}\n />\n </PopoverContent>\n </Popover>\n </div>\n );\n};\n","import { DatePicker, formatDatePickerDisplay } from \"./DatePicker\";\n\nexport { DatePicker, formatDatePickerDisplay };\n\nexport default DatePicker;\n"]}
@@ -1,7 +1,7 @@
1
- import { DialogFooter, DialogHeader } from './chunk-5Q4RBIMZ.js';
2
- import { Dialog, DialogClose, DialogContent, dialogViewportBleedClass, DialogDescription, DialogTitle, DialogTrigger } from './chunk-HHLQYMPT.js';
3
- import { button } from './chunk-5FBD2NTR.js';
4
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { DialogFooter, DialogHeader } from './chunk-Q5B6ROW6.js';
2
+ import { Dialog, DialogClose, DialogContent, dialogViewportBleedClass, DialogDescription, DialogTitle, DialogTrigger } from './chunk-DUTKHOH3.js';
3
+ import { button } from './chunk-DDRX6NNW.js';
4
+ import { cn } from './chunk-XIANSPQO.js';
5
5
  import { jsx } from 'preact/jsx-runtime';
6
6
 
7
7
  var AlertDialog = ({ children, ...rest }) => /* @__PURE__ */ jsx(Dialog, { "data-slot": "alert-dialog", lockBodyScroll: true, ...rest, children });
@@ -13,7 +13,7 @@ var AlertDialogAction = ({
13
13
  }) => /* @__PURE__ */ jsx(
14
14
  DialogClose,
15
15
  {
16
- class: button({ variant, class: cn("w-full sm:w-auto", className) }),
16
+ class: cn(button({ variant }), "w-full sm:w-auto", className),
17
17
  "data-slot": "alert-dialog-action",
18
18
  ...rest,
19
19
  children
@@ -27,7 +27,7 @@ var AlertDialogCancel = ({
27
27
  }) => /* @__PURE__ */ jsx(
28
28
  DialogClose,
29
29
  {
30
- class: button({ variant, class: cn("w-full sm:w-auto", className) }),
30
+ class: cn(button({ variant }), "w-full sm:w-auto", className),
31
31
  "data-slot": "alert-dialog-cancel",
32
32
  ...rest,
33
33
  children
@@ -145,7 +145,7 @@ var AlertDialogTrigger = ({
145
145
  DialogTrigger,
146
146
  {
147
147
  asChild,
148
- class: asChild ? className : button({ variant: "outline", class: className }),
148
+ class: asChild ? className : cn(button({ variant: "outline" }), className),
149
149
  "data-slot": "alert-dialog-trigger",
150
150
  ...rest,
151
151
  children
@@ -167,5 +167,5 @@ var alert_dialog_default = {
167
167
  };
168
168
 
169
169
  export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogTitle, AlertDialogTrigger, alert_dialog_default };
170
- //# sourceMappingURL=chunk-JSHUWI3C.js.map
171
- //# sourceMappingURL=chunk-JSHUWI3C.js.map
170
+ //# sourceMappingURL=chunk-OUVUK3E7.js.map
171
+ //# sourceMappingURL=chunk-OUVUK3E7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/alert-dialog/AlertDialog.tsx","../src/components/alert-dialog/AlertDialogAction.tsx","../src/components/alert-dialog/AlertDialogCancel.tsx","../src/components/alert-dialog/AlertDialogContent.tsx","../src/components/alert-dialog/AlertDialogDescription.tsx","../src/components/alert-dialog/AlertDialogFooter.tsx","../src/components/alert-dialog/AlertDialogHeader.tsx","../src/components/alert-dialog/AlertDialogMedia.tsx","../src/components/alert-dialog/AlertDialogTitle.tsx","../src/components/alert-dialog/AlertDialogTrigger.tsx","../src/components/alert-dialog/index.ts"],"names":["jsx"],"mappings":"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","file":"chunk-OUVUK3E7.js","sourcesContent":["import type { ComponentChildren } from \"preact\";\nimport { Dialog, type DialogProps } from \"../dialog/Dialog\";\n\nexport type AlertDialogProps = DialogProps & { children?: ComponentChildren };\n\nexport const AlertDialog = ({ children, ...rest }: AlertDialogProps) => (\n <Dialog data-slot=\"alert-dialog\" lockBodyScroll {...rest}>\n {children}\n </Dialog>\n);\n","import type { ComponentChildren } from \"preact\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\nimport { button } from \"../button/Button\";\nimport { DialogClose, type DialogCloseProps } from \"../dialog/DialogClose\";\n\nexport type AlertDialogActionProps = DialogCloseProps & {\n variant?: VariantProps<typeof button>[\"variant\"];\n children?: ComponentChildren;\n};\n\nexport const AlertDialogAction = ({\n variant = \"default\",\n class: className,\n children,\n ...rest\n}: AlertDialogActionProps) => (\n <DialogClose\n class={cn(button({ variant }), \"w-full sm:w-auto\", className)}\n data-slot=\"alert-dialog-action\"\n {...rest}\n >\n {children}\n </DialogClose>\n);\n","import type { ComponentChildren } from \"preact\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\nimport { button } from \"../button/Button\";\nimport { DialogClose, type DialogCloseProps } from \"../dialog/DialogClose\";\n\nexport type AlertDialogCancelProps = DialogCloseProps & {\n variant?: VariantProps<typeof button>[\"variant\"];\n children?: ComponentChildren;\n};\n\nexport const AlertDialogCancel = ({\n variant = \"outline\",\n class: className,\n children,\n ...rest\n}: AlertDialogCancelProps) => (\n <DialogClose\n class={cn(button({ variant }), \"w-full sm:w-auto\", className)}\n data-slot=\"alert-dialog-cancel\"\n {...rest}\n >\n {children}\n </DialogClose>\n);\n","import type { ComponentChildren } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport {\n DialogContent,\n type DialogContentProps,\n dialogViewportBleedClass,\n} from \"../dialog/DialogContent\";\n\nexport type AlertDialogContentSize = \"default\" | \"sm\";\n\nexport type AlertDialogContentProps = DialogContentProps & {\n /** `sm` — narrower panel (shadcn parity). */\n size?: AlertDialogContentSize;\n children?: ComponentChildren;\n};\n\nexport const AlertDialogContent = ({\n size = \"default\",\n class: className,\n children,\n ...rest\n}: AlertDialogContentProps) => (\n // presentation=\"slot\": we own the full-screen flex overlay + inner panel; default \"modal\" would add a second backdrop.\n <DialogContent\n presentation=\"slot\"\n class={cn(\n dialogViewportBleedClass,\n \"z-50 flex items-center justify-center bg-black/50 p-3 sm:p-6 pointer-events-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fill-mode-forwards fade-in fade-out\",\n )}\n data-slot=\"alert-dialog-content\"\n {...rest}\n >\n <div\n class={cn(\n \"data-open:animate-in relative z-[1] grid min-h-0 min-w-0 w-full max-w-[calc(100svw-1.5rem)] max-h-[calc(100dvh-1.5rem)] overflow-y-auto overflow-x-hidden rounded-xl border bg-background shadow-lg pointer-events-auto\",\n size === \"sm\"\n ? \"gap-3 p-4 sm:max-w-sm sm:max-h-[calc(100dvh-3rem)] sm:p-4\"\n : \"gap-4 p-4 sm:max-w-[32rem] sm:max-h-[calc(100dvh-3rem)] sm:p-6\",\n className,\n )}\n data-slot=\"alert-dialog-panel\"\n data-size={size}\n data-open=\"true\"\n >\n {children}\n </div>\n </DialogContent>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { DialogDescription } from \"../dialog/DialogDescription\";\n\nexport type AlertDialogDescriptionProps = JSX.HTMLAttributes<HTMLParagraphElement> & {\n children?: ComponentChildren;\n};\n\nexport const AlertDialogDescription = ({\n class: className,\n children,\n ...rest\n}: AlertDialogDescriptionProps) => (\n <DialogDescription\n class={cn(\"text-muted-foreground text-sm leading-relaxed break-words\", className)}\n data-slot=\"alert-dialog-description\"\n {...rest}\n >\n {children}\n </DialogDescription>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { DialogFooter } from \"../dialog/DialogFooter\";\n\nexport type AlertDialogFooterProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const AlertDialogFooter = ({\n class: className,\n children,\n ...rest\n}: AlertDialogFooterProps) => (\n <DialogFooter\n class={cn(\"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\", className)}\n data-slot=\"alert-dialog-footer\"\n {...rest}\n >\n {children}\n </DialogFooter>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { DialogHeader } from \"../dialog/DialogHeader\";\n\nexport type AlertDialogHeaderProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const AlertDialogHeader = ({\n class: className,\n children,\n ...rest\n}: AlertDialogHeaderProps) => (\n <DialogHeader\n class={cn(\"grid gap-2 text-center sm:text-left\", className)}\n data-slot=\"alert-dialog-header\"\n {...rest}\n >\n {children}\n </DialogHeader>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type AlertDialogMediaProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\n/** Optional icon or image slot above the title (shadcn AlertDialogMedia pattern). */\nexport const AlertDialogMedia = ({\n class: className,\n children,\n ...rest\n}: AlertDialogMediaProps) => (\n <div\n data-slot=\"alert-dialog-media\"\n class={cn(\n \"mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-muted text-foreground\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-6\",\n className,\n )}\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { DialogTitle } from \"../dialog/DialogTitle\";\n\nexport type AlertDialogTitleProps = JSX.HTMLAttributes<HTMLHeadingElement> & {\n children?: ComponentChildren;\n};\n\nexport const AlertDialogTitle = ({\n class: className,\n children,\n ...rest\n}: AlertDialogTitleProps) => (\n <DialogTitle\n class={cn(\"text-lg font-semibold break-words\", className)}\n data-slot=\"alert-dialog-title\"\n {...rest}\n >\n {children}\n </DialogTitle>\n);\n","import type { ComponentChildren } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { button } from \"../button/Button\";\nimport { DialogTrigger, type DialogTriggerProps } from \"../dialog/DialogTrigger\";\n\nexport type AlertDialogTriggerProps = DialogTriggerProps & { children?: ComponentChildren };\n\nexport const AlertDialogTrigger = ({\n asChild,\n class: className,\n children,\n ...rest\n}: AlertDialogTriggerProps) => (\n <DialogTrigger\n asChild={asChild}\n class={asChild ? className : cn(button({ variant: \"outline\" }), className)}\n data-slot=\"alert-dialog-trigger\"\n {...rest}\n >\n {children}\n </DialogTrigger>\n);\n","import { AlertDialog } from \"./AlertDialog\";\nimport { AlertDialogAction } from \"./AlertDialogAction\";\nimport { AlertDialogCancel } from \"./AlertDialogCancel\";\nimport { AlertDialogContent } from \"./AlertDialogContent\";\nimport { AlertDialogDescription } from \"./AlertDialogDescription\";\nimport { AlertDialogFooter } from \"./AlertDialogFooter\";\nimport { AlertDialogHeader } from \"./AlertDialogHeader\";\nimport { AlertDialogMedia } from \"./AlertDialogMedia\";\nimport { AlertDialogTitle } from \"./AlertDialogTitle\";\nimport { AlertDialogTrigger } from \"./AlertDialogTrigger\";\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogMedia,\n AlertDialogTitle,\n AlertDialogTrigger,\n};\n\nexport default {\n Root: AlertDialog,\n Trigger: AlertDialogTrigger,\n Content: AlertDialogContent,\n Header: AlertDialogHeader,\n Footer: AlertDialogFooter,\n Title: AlertDialogTitle,\n Description: AlertDialogDescription,\n Media: AlertDialogMedia,\n Cancel: AlertDialogCancel,\n Action: AlertDialogAction,\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { cn } from './chunk-XIANSPQO.js';
2
2
  import { tv } from 'tailwind-variants';
3
3
  import { jsxs, jsx } from 'preact/jsx-runtime';
4
4
 
@@ -77,5 +77,5 @@ var EmptyTitle = ({ class: className, children, ...rest }) => /* @__PURE__ */ js
77
77
  );
78
78
 
79
79
  export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, emptyMedia, emptyRoot };
80
- //# sourceMappingURL=chunk-3KB54OYF.js.map
81
- //# sourceMappingURL=chunk-3KB54OYF.js.map
80
+ //# sourceMappingURL=chunk-P6ICWO5B.js.map
81
+ //# sourceMappingURL=chunk-P6ICWO5B.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/empty/empty-variants.ts","../src/components/empty/Empty.tsx","../src/components/empty/EmptyContent.tsx","../src/components/empty/EmptyDescription.tsx","../src/components/empty/EmptyHeader.tsx","../src/components/empty/EmptyMedia.tsx","../src/components/empty/EmptyTitle.tsx"],"names":["jsx"],"mappings":"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","file":"chunk-3KB54OYF.js","sourcesContent":["import { tv, type VariantProps } from \"tailwind-variants\";\n\n/** Composable Empty root (shadcn-aligned). */\nexport const emptyRoot = tv({\n base: \"group/empty flex w-full flex-col items-center justify-center gap-6 text-balance text-center\",\n});\n\nexport type EmptyRootVariants = VariantProps<typeof emptyRoot>;\n\nexport const emptyMedia = tv({\n base: \"mb-0 flex shrink-0 justify-center\",\n variants: {\n variant: {\n default: \"\",\n icon: [\n \"mb-2 flex size-10 items-center justify-center rounded-md border bg-muted text-muted-foreground\",\n \"[&_svg:not([class*='size-'])]:size-6\",\n ],\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { emptyRoot } from \"./empty-variants\";\n\nexport type EmptyProps = JSX.HTMLAttributes<HTMLDivElement> & {\n /** Legacy: render title inside dashed card (use EmptyTitle when composing). */\n title?: ComponentChildren;\n /** Legacy: description line. */\n description?: ComponentChildren;\n children?: ComponentChildren;\n};\n\nexport const Empty = ({ class: className, title, description, children, ...rest }: EmptyProps) => {\n const legacy = title != null || description != null;\n\n if (legacy) {\n return (\n <div\n {...rest}\n data-slot=\"empty\"\n class={cn(\n \"flex min-h-40 flex-col items-center justify-center gap-2 rounded-lg border border-dashed p-6 text-center\",\n className,\n )}\n >\n {title != null ? (\n <h3 data-slot=\"empty-title\" class=\"text-base font-semibold\">\n {title}\n </h3>\n ) : null}\n {description != null ? (\n <p data-slot=\"empty-description\" class=\"text-muted-foreground text-sm\">\n {description}\n </p>\n ) : null}\n {children}\n </div>\n );\n }\n\n return (\n <div {...rest} data-slot=\"empty\" class={cn(emptyRoot(), className)}>\n {children}\n </div>\n );\n};\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyContentProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyContent = ({ class: className, children, ...rest }: EmptyContentProps) => (\n <div\n class={cn(\"flex w-full max-w-sm flex-col items-center justify-center gap-2\", className)}\n data-slot=\"empty-content\"\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyDescriptionProps = JSX.HTMLAttributes<HTMLParagraphElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyDescription = ({\n class: className,\n children,\n ...rest\n}: EmptyDescriptionProps) => (\n <p\n class={cn(\"text-muted-foreground max-w-sm text-sm leading-normal\", className)}\n data-slot=\"empty-description\"\n {...rest}\n >\n {children}\n </p>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyHeaderProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyHeader = ({ class: className, children, ...rest }: EmptyHeaderProps) => (\n <div class={cn(\"flex flex-col items-center gap-2\", className)} data-slot=\"empty-header\" {...rest}>\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\nimport { emptyMedia } from \"./empty-variants\";\n\nexport type EmptyMediaProps = JSX.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof emptyMedia> & {\n children?: ComponentChildren;\n };\n\nexport const EmptyMedia = ({ class: className, variant, children, ...rest }: EmptyMediaProps) => (\n <div class={cn(emptyMedia({ variant }), className)} data-slot=\"empty-media\" {...rest}>\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyTitleProps = JSX.HTMLAttributes<HTMLHeadingElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyTitle = ({ class: className, children, ...rest }: EmptyTitleProps) => (\n <h3\n class={cn(\"text-lg font-semibold tracking-tight\", className)}\n data-slot=\"empty-title\"\n {...rest}\n >\n {children}\n </h3>\n);\n"]}
1
+ {"version":3,"sources":["../src/components/empty/empty-variants.ts","../src/components/empty/Empty.tsx","../src/components/empty/EmptyContent.tsx","../src/components/empty/EmptyDescription.tsx","../src/components/empty/EmptyHeader.tsx","../src/components/empty/EmptyMedia.tsx","../src/components/empty/EmptyTitle.tsx"],"names":["jsx"],"mappings":";;;;AAGO,IAAM,YAAY,EAAA,CAAG;AAAA,EAC1B,IAAA,EAAM;AACR,CAAC;AAIM,IAAM,aAAa,EAAA,CAAG;AAAA,EAC3B,IAAA,EAAM,mCAAA;AAAA,EACN,QAAA,EAAU;AAAA,IACR,OAAA,EAAS;AAAA,MACP,OAAA,EAAS,EAAA;AAAA,MACT,IAAA,EAAM;AAAA,QACJ,gGAAA;AAAA,QACA;AAAA;AACF;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,OAAA,EAAS;AAAA;AAEb,CAAC;ACXM,IAAM,KAAA,GAAQ,CAAC,EAAE,KAAA,EAAO,SAAA,EAAW,OAAO,WAAA,EAAa,QAAA,EAAU,GAAG,IAAA,EAAK,KAAkB;AAChG,EAAA,MAAM,MAAA,GAAS,KAAA,IAAS,IAAA,IAAQ,WAAA,IAAe,IAAA;AAE/C,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACE,GAAG,IAAA;AAAA,QACJ,WAAA,EAAU,OAAA;AAAA,QACV,KAAA,EAAO,EAAA;AAAA,UACL,0GAAA;AAAA,UACA;AAAA,SACF;AAAA,QAEC,QAAA,EAAA;AAAA,UAAA,KAAA,IAAS,IAAA,uBACP,IAAA,EAAA,EAAG,WAAA,EAAU,eAAc,KAAA,EAAM,yBAAA,EAC/B,iBACH,CAAA,GACE,IAAA;AAAA,UACH,WAAA,IAAe,uBACd,GAAA,CAAC,GAAA,EAAA,EAAE,aAAU,mBAAA,EAAoB,KAAA,EAAM,+BAAA,EACpC,QAAA,EAAA,WAAA,EACH,CAAA,GACE,IAAA;AAAA,UACH;AAAA;AAAA;AAAA,KACH;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAK,GAAG,IAAA,EAAM,WAAA,EAAU,OAAA,EAAQ,KAAA,EAAO,EAAA,CAAG,SAAA,EAAU,EAAG,SAAS,CAAA,EAC9D,QAAA,EACH,CAAA;AAEJ;ACtCO,IAAM,YAAA,GAAe,CAAC,EAAE,KAAA,EAAO,WAAW,QAAA,EAAU,GAAG,IAAA,EAAK,qBACjEA,GAAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,KAAA,EAAO,EAAA,CAAG,iEAAA,EAAmE,SAAS,CAAA;AAAA,IACtF,WAAA,EAAU,eAAA;AAAA,IACT,GAAG,IAAA;AAAA,IAEH;AAAA;AACH;ACPK,IAAM,mBAAmB,CAAC;AAAA,EAC/B,KAAA,EAAO,SAAA;AAAA,EACP,QAAA;AAAA,EACA,GAAG;AACL,CAAA,qBACEA,GAAAA;AAAA,EAAC,GAAA;AAAA,EAAA;AAAA,IACC,KAAA,EAAO,EAAA,CAAG,uDAAA,EAAyD,SAAS,CAAA;AAAA,IAC5E,WAAA,EAAU,mBAAA;AAAA,IACT,GAAG,IAAA;AAAA,IAEH;AAAA;AACH;ACXK,IAAM,WAAA,GAAc,CAAC,EAAE,KAAA,EAAO,WAAW,QAAA,EAAU,GAAG,MAAK,qBAChEA,IAAC,KAAA,EAAA,EAAI,KAAA,EAAO,GAAG,kCAAA,EAAoC,SAAS,GAAG,WAAA,EAAU,cAAA,EAAgB,GAAG,IAAA,EACzF,QAAA,EACH;ACAK,IAAM,UAAA,GAAa,CAAC,EAAE,KAAA,EAAO,SAAA,EAAW,OAAA,EAAS,QAAA,EAAU,GAAG,IAAA,EAAK,qBACxEA,GAAAA,CAAC,KAAA,EAAA,EAAI,OAAO,EAAA,CAAG,UAAA,CAAW,EAAE,OAAA,EAAS,CAAA,EAAG,SAAS,CAAA,EAAG,WAAA,EAAU,aAAA,EAAe,GAAG,IAAA,EAC7E,QAAA,EACH;ACNK,IAAM,UAAA,GAAa,CAAC,EAAE,KAAA,EAAO,WAAW,QAAA,EAAU,GAAG,IAAA,EAAK,qBAC/DA,GAAAA;AAAA,EAAC,IAAA;AAAA,EAAA;AAAA,IACC,KAAA,EAAO,EAAA,CAAG,sCAAA,EAAwC,SAAS,CAAA;AAAA,IAC3D,WAAA,EAAU,aAAA;AAAA,IACT,GAAG,IAAA;AAAA,IAEH;AAAA;AACH","file":"chunk-P6ICWO5B.js","sourcesContent":["import { tv, type VariantProps } from \"tailwind-variants\";\n\n/** Composable Empty root (shadcn-aligned). */\nexport const emptyRoot = tv({\n base: \"group/empty flex w-full flex-col items-center justify-center gap-6 text-balance text-center\",\n});\n\nexport type EmptyRootVariants = VariantProps<typeof emptyRoot>;\n\nexport const emptyMedia = tv({\n base: \"mb-0 flex shrink-0 justify-center\",\n variants: {\n variant: {\n default: \"\",\n icon: [\n \"mb-2 flex size-10 items-center justify-center rounded-md border bg-muted text-muted-foreground\",\n \"[&_svg:not([class*='size-'])]:size-6\",\n ],\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\nimport { emptyRoot } from \"./empty-variants\";\n\nexport type EmptyProps = JSX.HTMLAttributes<HTMLDivElement> & {\n /** Legacy: render title inside dashed card (use EmptyTitle when composing). */\n title?: ComponentChildren;\n /** Legacy: description line. */\n description?: ComponentChildren;\n children?: ComponentChildren;\n};\n\nexport const Empty = ({ class: className, title, description, children, ...rest }: EmptyProps) => {\n const legacy = title != null || description != null;\n\n if (legacy) {\n return (\n <div\n {...rest}\n data-slot=\"empty\"\n class={cn(\n \"flex min-h-40 flex-col items-center justify-center gap-2 rounded-lg border border-dashed p-6 text-center\",\n className,\n )}\n >\n {title != null ? (\n <h3 data-slot=\"empty-title\" class=\"text-base font-semibold\">\n {title}\n </h3>\n ) : null}\n {description != null ? (\n <p data-slot=\"empty-description\" class=\"text-muted-foreground text-sm\">\n {description}\n </p>\n ) : null}\n {children}\n </div>\n );\n }\n\n return (\n <div {...rest} data-slot=\"empty\" class={cn(emptyRoot(), className)}>\n {children}\n </div>\n );\n};\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyContentProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyContent = ({ class: className, children, ...rest }: EmptyContentProps) => (\n <div\n class={cn(\"flex w-full max-w-sm flex-col items-center justify-center gap-2\", className)}\n data-slot=\"empty-content\"\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyDescriptionProps = JSX.HTMLAttributes<HTMLParagraphElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyDescription = ({\n class: className,\n children,\n ...rest\n}: EmptyDescriptionProps) => (\n <p\n class={cn(\"text-muted-foreground max-w-sm text-sm leading-normal\", className)}\n data-slot=\"empty-description\"\n {...rest}\n >\n {children}\n </p>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyHeaderProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyHeader = ({ class: className, children, ...rest }: EmptyHeaderProps) => (\n <div class={cn(\"flex flex-col items-center gap-2\", className)} data-slot=\"empty-header\" {...rest}>\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport type { VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\nimport { emptyMedia } from \"./empty-variants\";\n\nexport type EmptyMediaProps = JSX.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof emptyMedia> & {\n children?: ComponentChildren;\n };\n\nexport const EmptyMedia = ({ class: className, variant, children, ...rest }: EmptyMediaProps) => (\n <div class={cn(emptyMedia({ variant }), className)} data-slot=\"empty-media\" {...rest}>\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type EmptyTitleProps = JSX.HTMLAttributes<HTMLHeadingElement> & {\n children?: ComponentChildren;\n};\n\nexport const EmptyTitle = ({ class: className, children, ...rest }: EmptyTitleProps) => (\n <h3\n class={cn(\"text-lg font-semibold tracking-tight\", className)}\n data-slot=\"empty-title\"\n {...rest}\n >\n {children}\n </h3>\n);\n"]}
@@ -1,5 +1,5 @@
1
- import { Separator } from './chunk-LCWXIQKA.js';
2
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { Separator } from './chunk-Q3RL7TOY.js';
2
+ import { cn } from './chunk-XIANSPQO.js';
3
3
  import { isValidElement, cloneElement } from 'preact';
4
4
  import { tv } from 'tailwind-variants';
5
5
  import { jsx } from 'preact/jsx-runtime';
@@ -37,11 +37,8 @@ var Item = ({
37
37
  }) => {
38
38
  const resolvedVariant = variant ?? "default";
39
39
  const resolvedSize = size ?? "default";
40
- const resolvedClassName = item({
41
- variant: resolvedVariant,
42
- size: resolvedSize,
43
- class: className
44
- });
40
+ const variantClasses = item({ variant: resolvedVariant, size: resolvedSize });
41
+ const resolvedClassName = cn(variantClasses, className);
45
42
  if (asChild) {
46
43
  if (!isValidElement(children)) {
47
44
  return null;
@@ -50,7 +47,7 @@ var Item = ({
50
47
  return cloneElement(children, {
51
48
  ...childProps,
52
49
  ...rest,
53
- class: cn(childProps.class, childProps.className, resolvedClassName),
50
+ class: cn(variantClasses, childProps.class, childProps.className, className),
54
51
  "data-slot": "item",
55
52
  "data-variant": resolvedVariant,
56
53
  "data-size": resolvedSize
@@ -143,7 +140,7 @@ var ItemMedia = ({ variant, class: className, children, ...rest }) => {
143
140
  {
144
141
  "data-slot": "item-media",
145
142
  "data-variant": resolvedVariant,
146
- class: cn(itemMedia({ variant: resolvedVariant, class: className })),
143
+ class: cn(itemMedia({ variant: resolvedVariant }), className),
147
144
  ...rest,
148
145
  children
149
146
  }
@@ -169,5 +166,5 @@ var ItemTitle = ({ class: className, children, ...rest }) => /* @__PURE__ */ jsx
169
166
  );
170
167
 
171
168
  export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle };
172
- //# sourceMappingURL=chunk-GIU6BZTW.js.map
173
- //# sourceMappingURL=chunk-GIU6BZTW.js.map
169
+ //# sourceMappingURL=chunk-P7PPE4P5.js.map
170
+ //# sourceMappingURL=chunk-P7PPE4P5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/item/Item.tsx","../src/components/item/ItemActions.tsx","../src/components/item/ItemContent.tsx","../src/components/item/ItemDescription.tsx","../src/components/item/ItemFooter.tsx","../src/components/item/ItemGroup.tsx","../src/components/item/ItemHeader.tsx","../src/components/item/ItemMedia.tsx","../src/components/item/ItemSeparator.tsx","../src/components/item/ItemTitle.tsx"],"names":["jsx","tv"],"mappings":"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","file":"chunk-P7PPE4P5.js","sourcesContent":["import { type ComponentChildren, cloneElement, isValidElement, type JSX } from \"preact\";\nimport { tv, type VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\n\nexport const item = tv({\n base: [\n \"group/item flex flex-wrap items-center rounded-md border border-transparent text-sm outline-none transition-[color,background-color,box-shadow] duration-100\",\n \"[a]:transition-colors [a]:hover:bg-accent/50\",\n \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50\",\n ],\n variants: {\n variant: {\n default: \"bg-transparent hover:bg-muted/40\",\n outline: \"border-border hover:bg-accent/35\",\n muted: \"bg-muted/50 hover:bg-muted/65\",\n },\n size: {\n default: \"gap-4 p-4\",\n sm: \"gap-2.5 px-4 py-3\",\n xs: \"gap-2 px-3 py-2 text-xs\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n});\n\nexport type ItemProps = Omit<JSX.HTMLAttributes<HTMLDivElement>, \"size\"> &\n VariantProps<typeof item> & {\n children?: ComponentChildren;\n asChild?: boolean;\n };\n\nexport const Item = ({\n variant,\n size,\n asChild = false,\n class: className,\n children,\n ...rest\n}: ItemProps) => {\n const resolvedVariant = variant ?? \"default\";\n const resolvedSize = size ?? \"default\";\n const variantClasses = item({ variant: resolvedVariant, size: resolvedSize });\n const resolvedClassName = cn(variantClasses, className);\n\n if (asChild) {\n if (!isValidElement(children)) {\n return null;\n }\n\n const childProps = (children.props ?? {}) as JSX.HTMLAttributes<HTMLElement> & {\n class?: string;\n className?: string;\n };\n\n return cloneElement(children, {\n ...childProps,\n ...(rest as JSX.HTMLAttributes<HTMLElement>),\n class: cn(variantClasses, childProps.class, childProps.className, className),\n \"data-slot\": \"item\",\n \"data-variant\": resolvedVariant,\n \"data-size\": resolvedSize,\n });\n }\n\n return (\n <div\n data-slot=\"item\"\n data-variant={resolvedVariant}\n data-size={resolvedSize}\n class={resolvedClassName}\n {...rest}\n >\n {children}\n </div>\n );\n};\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemActionsProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemActions = ({ class: className, children, ...rest }: ItemActionsProps) => (\n <div data-slot=\"item-actions\" class={cn(\"flex items-center gap-2\", className)} {...rest}>\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemContentProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemContent = ({ class: className, children, ...rest }: ItemContentProps) => (\n <div\n data-slot=\"item-content\"\n class={cn(\"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\", className)}\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemDescriptionProps = JSX.HTMLAttributes<HTMLParagraphElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemDescription = ({ class: className, children, ...rest }: ItemDescriptionProps) => (\n <p\n data-slot=\"item-description\"\n class={cn(\n \"text-muted-foreground line-clamp-2 text-balance text-sm font-normal leading-normal\",\n \"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className,\n )}\n {...rest}\n >\n {children}\n </p>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemFooterProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemFooter = ({ class: className, children, ...rest }: ItemFooterProps) => (\n <div\n data-slot=\"item-footer\"\n class={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemGroupProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemGroup = ({ class: className, children, ...rest }: ItemGroupProps) => (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n class={cn(\"group/item-group flex flex-col\", className)}\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemHeaderProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemHeader = ({ class: className, children, ...rest }: ItemHeaderProps) => (\n <div\n data-slot=\"item-header\"\n class={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n {...rest}\n >\n {children}\n </div>\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { tv, type VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\n\nexport const itemMedia = tv({\n base: [\n \"flex shrink-0 items-center justify-center gap-2\",\n \"group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start\",\n \"[&_svg]:pointer-events-none\",\n ],\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"bg-muted size-8 rounded-sm border [&_svg:not([class*='size-'])]:size-4\",\n image: \"size-10 overflow-hidden rounded-sm [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\n\nexport type ItemMediaProps = JSX.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof itemMedia> & {\n children?: ComponentChildren;\n };\n\nexport const ItemMedia = ({ variant, class: className, children, ...rest }: ItemMediaProps) => {\n const resolvedVariant = variant ?? \"default\";\n return (\n <div\n data-slot=\"item-media\"\n data-variant={resolvedVariant}\n class={cn(itemMedia({ variant: resolvedVariant }), className)}\n {...rest}\n >\n {children}\n </div>\n );\n};\n","import { cn } from \"../../lib/utils\";\nimport { Separator, type SeparatorProps } from \"../separator/Separator\";\n\nexport const ItemSeparator = ({ class: className, ...rest }: SeparatorProps) => (\n <Separator\n orientation=\"horizontal\"\n class={cn(\"my-0\", className)}\n data-slot=\"item-separator\"\n {...rest}\n />\n);\n","import type { ComponentChildren, JSX } from \"preact\";\nimport { cn } from \"../../lib/utils\";\n\nexport type ItemTitleProps = JSX.HTMLAttributes<HTMLDivElement> & {\n children?: ComponentChildren;\n};\n\nexport const ItemTitle = ({ class: className, children, ...rest }: ItemTitleProps) => (\n <div\n data-slot=\"item-title\"\n class={cn(\"flex w-fit items-center gap-2 text-sm font-medium leading-snug\", className)}\n {...rest}\n >\n {children}\n </div>\n);\n"]}
@@ -1,7 +1,7 @@
1
+ import { cn } from './chunk-XIANSPQO.js';
1
2
  import { tv } from 'tailwind-variants';
2
3
  import { jsx } from 'preact/jsx-runtime';
3
4
 
4
- // src/components/textarea/Textarea.tsx
5
5
  var textarea = tv({
6
6
  base: [
7
7
  "border-input/70 bg-background/80 text-foreground ring-offset-background min-h-16 w-full rounded-lg border shadow-xs",
@@ -22,15 +22,8 @@ var textarea = tv({
22
22
  },
23
23
  defaultVariants: { size: "md" }
24
24
  });
25
- var Textarea = ({ size, class: className, ...rest }) => /* @__PURE__ */ jsx(
26
- "textarea",
27
- {
28
- class: textarea({ size, class: className }),
29
- "data-slot": "textarea",
30
- ...rest
31
- }
32
- );
25
+ var Textarea = ({ size, class: className, ...rest }) => /* @__PURE__ */ jsx("textarea", { class: cn(textarea({ size }), className), "data-slot": "textarea", ...rest });
33
26
 
34
27
  export { Textarea, textarea };
35
- //# sourceMappingURL=chunk-XGFJJ2YB.js.map
36
- //# sourceMappingURL=chunk-XGFJJ2YB.js.map
28
+ //# sourceMappingURL=chunk-PVQUVEZV.js.map
29
+ //# sourceMappingURL=chunk-PVQUVEZV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/textarea/Textarea.tsx"],"names":[],"mappings":";;;;AAIO,IAAM,WAAW,EAAA,CAAG;AAAA,EACzB,IAAA,EAAM;AAAA,IACJ,qHAAA;AAAA,IACA,4FAAA;AAAA,IACA,sCAAA;AAAA,IACA,iFAAA;AAAA,IACA,sFAAA;AAAA,IACA,iDAAA;AAAA,IACA,4GAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,gCAAA;AAAA,MACJ,EAAA,EAAI,8BAAA;AAAA,MACJ,EAAA,EAAI;AAAA;AACN,GACF;AAAA,EACA,eAAA,EAAiB,EAAE,IAAA,EAAM,IAAA;AAC3B,CAAC;AAKM,IAAM,QAAA,GAAW,CAAC,EAAE,IAAA,EAAM,OAAO,SAAA,EAAW,GAAG,IAAA,EAAK,qBACzD,GAAA,CAAC,UAAA,EAAA,EAAS,OAAO,EAAA,CAAG,QAAA,CAAS,EAAE,IAAA,EAAM,CAAA,EAAG,SAAS,CAAA,EAAG,WAAA,EAAU,UAAA,EAAY,GAAG,IAAA,EAAM","file":"chunk-PVQUVEZV.js","sourcesContent":["import type { JSX } from \"preact\";\nimport { tv, type VariantProps } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\n\nexport const textarea = tv({\n base: [\n \"border-input/70 bg-background/80 text-foreground ring-offset-background min-h-16 w-full rounded-lg border shadow-xs\",\n \"px-3 py-2 leading-relaxed transition-[color,box-shadow,border-color] outline-none resize-y\",\n \"placeholder:text-muted-foreground/80\",\n \"focus-visible:border-outline focus-visible:ring-outline/45 focus-visible:ring-3\",\n \"file:text-foreground file:border-0 file:bg-transparent file:text-sm file:font-medium\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"aria-invalid:border-error aria-invalid:focus-visible:ring-error/40 aria-invalid:focus-visible:border-error\",\n \"peer\",\n ],\n variants: {\n size: {\n sm: \"min-h-16 px-2.5 py-1.5 text-sm\",\n md: \"min-h-16 px-3 py-2 text-base\",\n lg: \"min-h-24 px-4 py-3 text-lg\",\n },\n },\n defaultVariants: { size: \"md\" },\n});\n\nexport type TextareaProps = Omit<JSX.TextareaHTMLAttributes<HTMLTextAreaElement>, \"size\"> &\n VariantProps<typeof textarea>;\n\nexport const Textarea = ({ size, class: className, ...rest }: TextareaProps) => (\n <textarea class={cn(textarea({ size }), className)} data-slot=\"textarea\" {...rest} />\n);\n"]}
@@ -1,7 +1,7 @@
1
+ import { cn } from './chunk-XIANSPQO.js';
1
2
  import { tv } from 'tailwind-variants';
2
3
  import { jsx } from 'preact/jsx-runtime';
3
4
 
4
- // src/components/separator/Separator.tsx
5
5
  var separator = tv({
6
6
  base: "bg-border shrink-0",
7
7
  variants: {
@@ -25,12 +25,12 @@ var Separator = ({
25
25
  role: decorative ? void 0 : "separator",
26
26
  "aria-orientation": decorative ? void 0 : orientation,
27
27
  "data-orientation": orientation,
28
- class: separator({ orientation, class: className }),
28
+ class: cn(separator({ orientation }), className),
29
29
  "data-slot": "separator",
30
30
  ...rest
31
31
  }
32
32
  );
33
33
 
34
34
  export { Separator, separator };
35
- //# sourceMappingURL=chunk-LCWXIQKA.js.map
36
- //# sourceMappingURL=chunk-LCWXIQKA.js.map
35
+ //# sourceMappingURL=chunk-Q3RL7TOY.js.map
36
+ //# sourceMappingURL=chunk-Q3RL7TOY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/separator/Separator.tsx"],"names":[],"mappings":";;;;AAIO,IAAM,YAAY,EAAA,CAAG;AAAA,EAC1B,IAAA,EAAM,oBAAA;AAAA,EACN,QAAA,EAAU;AAAA,IACR,WAAA,EAAa;AAAA,MACX,UAAA,EAAY,gBAAA;AAAA,MACZ,QAAA,EAAU;AAAA;AACZ,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,WAAA,EAAa;AAAA;AAEjB,CAAC;AAUM,IAAM,YAAY,CAAC;AAAA,EACxB,KAAA,EAAO,SAAA;AAAA,EACP,WAAA,GAAc,YAAA;AAAA,EACd,UAAA,GAAa,KAAA;AAAA,EACb,GAAG;AACL,CAAA,qBACE,GAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,IAAA,EAAM,aAAa,MAAA,GAAY,WAAA;AAAA,IAC/B,kBAAA,EAAkB,aAAa,MAAA,GAAY,WAAA;AAAA,IAC3C,kBAAA,EAAkB,WAAA;AAAA,IAClB,OAAO,EAAA,CAAG,SAAA,CAAU,EAAE,WAAA,EAAa,GAAG,SAAS,CAAA;AAAA,IAC/C,WAAA,EAAU,WAAA;AAAA,IACT,GAAG;AAAA;AACN","file":"chunk-Q3RL7TOY.js","sourcesContent":["import type { JSX } from \"preact\";\nimport { tv } from \"tailwind-variants\";\nimport { cn } from \"../../lib/utils\";\n\nexport const separator = tv({\n base: \"bg-border shrink-0\",\n variants: {\n orientation: {\n horizontal: \"h-[1px] w-full\",\n vertical: \"h-full w-[1px]\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n});\n\nexport type SeparatorProps = Omit<\n JSX.HTMLAttributes<HTMLDivElement>,\n \"role\" | \"aria-orientation\"\n> & {\n orientation?: \"horizontal\" | \"vertical\";\n decorative?: boolean;\n};\n\nexport const Separator = ({\n class: className,\n orientation = \"horizontal\",\n decorative = false,\n ...rest\n}: SeparatorProps) => (\n <div\n role={decorative ? undefined : \"separator\"}\n aria-orientation={decorative ? undefined : orientation}\n data-orientation={orientation}\n class={cn(separator({ orientation }), className)}\n data-slot=\"separator\"\n {...rest}\n />\n);\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-MS2ZNYCJ.js';
1
+ import { cn } from './chunk-XIANSPQO.js';
2
2
  import { jsx } from 'preact/jsx-runtime';
3
3
 
4
4
  var DialogFooter = ({ class: className, children, ...rest }) => /* @__PURE__ */ jsx(
@@ -21,5 +21,5 @@ var DialogHeader = ({ class: className, children, ...rest }) => /* @__PURE__ */
21
21
  );
22
22
 
23
23
  export { DialogFooter, DialogHeader };
24
- //# sourceMappingURL=chunk-5Q4RBIMZ.js.map
25
- //# sourceMappingURL=chunk-5Q4RBIMZ.js.map
24
+ //# sourceMappingURL=chunk-Q5B6ROW6.js.map
25
+ //# sourceMappingURL=chunk-Q5B6ROW6.js.map