@mdigital_ui/ui 0.4.2 → 0.4.3

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 (481) hide show
  1. package/dist/accordion/index.d.ts.map +1 -1
  2. package/dist/accordion/index.js +3 -3
  3. package/dist/accordion/types.d.ts +2 -42
  4. package/dist/accordion/types.d.ts.map +1 -1
  5. package/dist/avatar/index.d.ts +0 -6
  6. package/dist/avatar/index.d.ts.map +1 -1
  7. package/dist/avatar/index.js +2 -2
  8. package/dist/avatar/types.d.ts +0 -48
  9. package/dist/avatar/types.d.ts.map +1 -1
  10. package/dist/badge/index.d.ts +1 -23
  11. package/dist/badge/index.d.ts.map +1 -1
  12. package/dist/badge/index.js +3 -3
  13. package/dist/badge/types.d.ts +1 -20
  14. package/dist/badge/types.d.ts.map +1 -1
  15. package/dist/breadcrumbs/index.d.ts.map +1 -1
  16. package/dist/breadcrumbs/index.js +7 -6
  17. package/dist/breadcrumbs/types.d.ts +3 -38
  18. package/dist/breadcrumbs/types.d.ts.map +1 -1
  19. package/dist/button/index.d.ts +1 -1
  20. package/dist/button/index.d.ts.map +1 -1
  21. package/dist/button/index.js +5 -5
  22. package/dist/button/types.d.ts +2 -8
  23. package/dist/button/types.d.ts.map +1 -1
  24. package/dist/button-group/index.d.ts +0 -28
  25. package/dist/button-group/index.d.ts.map +1 -1
  26. package/dist/button-group/index.js +2 -2
  27. package/dist/button-group/types.d.ts +0 -19
  28. package/dist/button-group/types.d.ts.map +1 -1
  29. package/dist/card/index.d.ts +0 -40
  30. package/dist/card/index.d.ts.map +1 -1
  31. package/dist/card/index.js +3 -3
  32. package/dist/card/types.d.ts +3 -29
  33. package/dist/card/types.d.ts.map +1 -1
  34. package/dist/carousel/index.d.ts +4 -0
  35. package/dist/carousel/index.d.ts.map +1 -1
  36. package/dist/carousel/index.js +2 -2
  37. package/dist/cascader/index.d.ts +0 -21
  38. package/dist/cascader/index.d.ts.map +1 -1
  39. package/dist/cascader/index.js +3 -3
  40. package/dist/cascader/types.d.ts +3 -89
  41. package/dist/cascader/types.d.ts.map +1 -1
  42. package/dist/checkbox/index.d.ts.map +1 -1
  43. package/dist/checkbox/index.js +3 -3
  44. package/dist/checkbox/types.d.ts +2 -2
  45. package/dist/checkbox/types.d.ts.map +1 -1
  46. package/dist/checkbox-group/index.d.ts.map +1 -1
  47. package/dist/checkbox-group/index.js +2 -2
  48. package/dist/checkbox-group/types.d.ts +0 -24
  49. package/dist/checkbox-group/types.d.ts.map +1 -1
  50. package/dist/{chunk-H6G4BUPA.js → chunk-2FYXBW4S.js} +201 -161
  51. package/dist/chunk-2FYXBW4S.js.map +1 -0
  52. package/dist/{chunk-KH577UDI.js → chunk-2OBMSB5S.js} +9 -6
  53. package/dist/chunk-2OBMSB5S.js.map +1 -0
  54. package/dist/{chunk-3BIV3QE2.js → chunk-3FXOQC6P.js} +60 -28
  55. package/dist/chunk-3FXOQC6P.js.map +1 -0
  56. package/dist/{chunk-YXLIGJTN.js → chunk-3KISIZGP.js} +6 -6
  57. package/dist/chunk-3KISIZGP.js.map +1 -0
  58. package/dist/{chunk-6G3BMY4N.js → chunk-3QD7AQX7.js} +76 -85
  59. package/dist/chunk-3QD7AQX7.js.map +1 -0
  60. package/dist/{chunk-ROA7BYGB.js → chunk-3YP7HY3Y.js} +7 -5
  61. package/dist/chunk-3YP7HY3Y.js.map +1 -0
  62. package/dist/{chunk-OLTQAMV2.js → chunk-442OQLPK.js} +9 -24
  63. package/dist/chunk-442OQLPK.js.map +1 -0
  64. package/dist/{chunk-OFUPJH35.js → chunk-4TEZWGX7.js} +3 -3
  65. package/dist/{chunk-OFUPJH35.js.map → chunk-4TEZWGX7.js.map} +1 -1
  66. package/dist/chunk-4WZDQI22.js +378 -0
  67. package/dist/chunk-4WZDQI22.js.map +1 -0
  68. package/dist/{chunk-TLNHWOQQ.js → chunk-54Z7XTJA.js} +30 -19
  69. package/dist/chunk-54Z7XTJA.js.map +1 -0
  70. package/dist/{chunk-64NHVOZS.js → chunk-5CIJ7UCP.js} +25 -15
  71. package/dist/chunk-5CIJ7UCP.js.map +1 -0
  72. package/dist/{chunk-ON2CMF6J.js → chunk-5XLCUGLQ.js} +14 -10
  73. package/dist/chunk-5XLCUGLQ.js.map +1 -0
  74. package/dist/{chunk-DUIL5BYS.js → chunk-62LTLXVG.js} +72 -48
  75. package/dist/chunk-62LTLXVG.js.map +1 -0
  76. package/dist/{chunk-G6NVGBYZ.js → chunk-6ZPCKFRS.js} +23 -22
  77. package/dist/chunk-6ZPCKFRS.js.map +1 -0
  78. package/dist/{chunk-N2WHJ3FI.js → chunk-7OYMEXY3.js} +7 -5
  79. package/dist/chunk-7OYMEXY3.js.map +1 -0
  80. package/dist/{chunk-ONGJXAYQ.js → chunk-AEPBQO7U.js} +6 -5
  81. package/dist/chunk-AEPBQO7U.js.map +1 -0
  82. package/dist/{chunk-UTWQ2FZK.js → chunk-AOXTD7QZ.js} +47 -93
  83. package/dist/chunk-AOXTD7QZ.js.map +1 -0
  84. package/dist/{chunk-ZJNGZCRB.js → chunk-BLFXVSZU.js} +54 -153
  85. package/dist/chunk-BLFXVSZU.js.map +1 -0
  86. package/dist/{chunk-VOODO2ZE.js → chunk-BMA4E3T6.js} +6 -14
  87. package/dist/chunk-BMA4E3T6.js.map +1 -0
  88. package/dist/{chunk-4FFVNUTK.js → chunk-BNHRUHI4.js} +7 -6
  89. package/dist/chunk-BNHRUHI4.js.map +1 -0
  90. package/dist/{chunk-3BZE6BBJ.js → chunk-C46VTIW7.js} +41 -23
  91. package/dist/chunk-C46VTIW7.js.map +1 -0
  92. package/dist/{chunk-BVO2BNFG.js → chunk-CHGABWIV.js} +3 -3
  93. package/dist/chunk-CHGABWIV.js.map +1 -0
  94. package/dist/chunk-DF2ICSNI.js +99 -0
  95. package/dist/chunk-DF2ICSNI.js.map +1 -0
  96. package/dist/chunk-DOI7OTYV.js +81 -0
  97. package/dist/chunk-DOI7OTYV.js.map +1 -0
  98. package/dist/{chunk-2TLOWZE4.js → chunk-DPIXBBXK.js} +40 -179
  99. package/dist/chunk-DPIXBBXK.js.map +1 -0
  100. package/dist/{chunk-OQFYIKWR.js → chunk-EC5DXYME.js} +21 -12
  101. package/dist/chunk-EC5DXYME.js.map +1 -0
  102. package/dist/{chunk-KJTMZJ7V.js → chunk-EHNWVQBL.js} +65 -48
  103. package/dist/chunk-EHNWVQBL.js.map +1 -0
  104. package/dist/{chunk-I32ZQUYY.js → chunk-F4GLUQOF.js} +9 -8
  105. package/dist/chunk-F4GLUQOF.js.map +1 -0
  106. package/dist/{chunk-GJPZOMFE.js → chunk-FCU2ENQQ.js} +63 -31
  107. package/dist/chunk-FCU2ENQQ.js.map +1 -0
  108. package/dist/{chunk-JWTWPZ32.js → chunk-FZXMRXWE.js} +10 -9
  109. package/dist/chunk-FZXMRXWE.js.map +1 -0
  110. package/dist/{chunk-LOYLJRCF.js → chunk-G27HGKWO.js} +15 -5
  111. package/dist/chunk-G27HGKWO.js.map +1 -0
  112. package/dist/{chunk-Y4XAXZHB.js → chunk-GGQF5PQN.js} +9 -8
  113. package/dist/chunk-GGQF5PQN.js.map +1 -0
  114. package/dist/chunk-GLJDHW73.js +24 -0
  115. package/dist/chunk-GLJDHW73.js.map +1 -0
  116. package/dist/{chunk-LX4FDH4J.js → chunk-GPSZJWU3.js} +10 -11
  117. package/dist/chunk-GPSZJWU3.js.map +1 -0
  118. package/dist/{chunk-6LYRMQOI.js → chunk-H6PCGSIT.js} +21 -16
  119. package/dist/chunk-H6PCGSIT.js.map +1 -0
  120. package/dist/{chunk-WRSG7WU5.js → chunk-HJITFPBT.js} +78 -94
  121. package/dist/chunk-HJITFPBT.js.map +1 -0
  122. package/dist/{chunk-HECAAILV.js → chunk-HRVOTFU4.js} +24 -16
  123. package/dist/chunk-HRVOTFU4.js.map +1 -0
  124. package/dist/{chunk-O3V3BTIJ.js → chunk-HSW64H23.js} +54 -87
  125. package/dist/chunk-HSW64H23.js.map +1 -0
  126. package/dist/{chunk-YS5AIY4A.js → chunk-K5RV3GF4.js} +6 -5
  127. package/dist/chunk-K5RV3GF4.js.map +1 -0
  128. package/dist/{chunk-2WZVD7P3.js → chunk-KZZJAZ5M.js} +6 -5
  129. package/dist/chunk-KZZJAZ5M.js.map +1 -0
  130. package/dist/{chunk-6HGUDHHE.js → chunk-L5BU2QTI.js} +3 -5
  131. package/dist/chunk-L5BU2QTI.js.map +1 -0
  132. package/dist/{chunk-C5IGZLIT.js → chunk-LM6CJZX5.js} +8 -22
  133. package/dist/chunk-LM6CJZX5.js.map +1 -0
  134. package/dist/{chunk-RFHTC6AH.js → chunk-LXHOS74B.js} +16 -38
  135. package/dist/chunk-LXHOS74B.js.map +1 -0
  136. package/dist/{chunk-674JC24S.js → chunk-MZDAQSI4.js} +27 -28
  137. package/dist/chunk-MZDAQSI4.js.map +1 -0
  138. package/dist/{chunk-3PWILVOE.js → chunk-NHM6DZOF.js} +35 -50
  139. package/dist/chunk-NHM6DZOF.js.map +1 -0
  140. package/dist/chunk-NZHKNUGE.js +96 -0
  141. package/dist/chunk-NZHKNUGE.js.map +1 -0
  142. package/dist/{chunk-2PNLIQYM.js → chunk-ON76IMMI.js} +3 -3
  143. package/dist/chunk-ON76IMMI.js.map +1 -0
  144. package/dist/{chunk-POLVJ36Y.js → chunk-QNLTSHMB.js} +13 -38
  145. package/dist/chunk-QNLTSHMB.js.map +1 -0
  146. package/dist/{chunk-7UCNBMCV.js → chunk-QZ67UOPR.js} +13 -19
  147. package/dist/chunk-QZ67UOPR.js.map +1 -0
  148. package/dist/{chunk-NGYLRX6F.js → chunk-RAS6HUEI.js} +2 -2
  149. package/dist/chunk-RAS6HUEI.js.map +1 -0
  150. package/dist/{chunk-R3TLU26W.js → chunk-S7R4NTOI.js} +9 -7
  151. package/dist/chunk-S7R4NTOI.js.map +1 -0
  152. package/dist/{chunk-L5UYN5LX.js → chunk-SHUHAORE.js} +78 -44
  153. package/dist/chunk-SHUHAORE.js.map +1 -0
  154. package/dist/{chunk-SGRACNBP.js → chunk-STAYOHDI.js} +13 -5
  155. package/dist/chunk-STAYOHDI.js.map +1 -0
  156. package/dist/{chunk-ERRZ2CSG.js → chunk-SUNCSPDF.js} +45 -74
  157. package/dist/chunk-SUNCSPDF.js.map +1 -0
  158. package/dist/{chunk-YJOLLSHH.js → chunk-TS2PG6Z4.js} +42 -34
  159. package/dist/chunk-TS2PG6Z4.js.map +1 -0
  160. package/dist/{chunk-X3YNHX77.js → chunk-U3RHF7QF.js} +32 -33
  161. package/dist/chunk-U3RHF7QF.js.map +1 -0
  162. package/dist/{chunk-GVVP5TZM.js → chunk-UIVOI7HE.js} +231 -197
  163. package/dist/chunk-UIVOI7HE.js.map +1 -0
  164. package/dist/{chunk-D4SUSZDN.js → chunk-USHR3MWQ.js} +13 -13
  165. package/dist/chunk-USHR3MWQ.js.map +1 -0
  166. package/dist/{chunk-764UKE6X.js → chunk-VIK6UTVN.js} +7 -6
  167. package/dist/chunk-VIK6UTVN.js.map +1 -0
  168. package/dist/{chunk-HUXODBIO.js → chunk-VKY3JXAQ.js} +42 -101
  169. package/dist/chunk-VKY3JXAQ.js.map +1 -0
  170. package/dist/{chunk-FZSCLZF6.js → chunk-VV3VO5TS.js} +64 -101
  171. package/dist/chunk-VV3VO5TS.js.map +1 -0
  172. package/dist/{chunk-ZIYA7TGX.js → chunk-W5L7C7WS.js} +12 -22
  173. package/dist/chunk-W5L7C7WS.js.map +1 -0
  174. package/dist/{chunk-GOLARX5K.js → chunk-X3CNTOKQ.js} +13 -10
  175. package/dist/chunk-X3CNTOKQ.js.map +1 -0
  176. package/dist/{chunk-EHWXPH76.js → chunk-XKDN5PWJ.js} +8 -6
  177. package/dist/chunk-XKDN5PWJ.js.map +1 -0
  178. package/dist/{chunk-HCOTO5WX.js → chunk-XWCWTPEM.js} +7 -8
  179. package/dist/chunk-XWCWTPEM.js.map +1 -0
  180. package/dist/{chunk-BPRCBPVJ.js → chunk-YSV5GQS7.js} +55 -17
  181. package/dist/chunk-YSV5GQS7.js.map +1 -0
  182. package/dist/{chunk-6JGNJI5T.js → chunk-ZNNIXMJZ.js} +35 -21
  183. package/dist/chunk-ZNNIXMJZ.js.map +1 -0
  184. package/dist/{chunk-CN74CNAN.js → chunk-ZZZGD5EF.js} +8 -22
  185. package/dist/chunk-ZZZGD5EF.js.map +1 -0
  186. package/dist/clipboard/index.d.ts.map +1 -1
  187. package/dist/clipboard/index.js +4 -4
  188. package/dist/clipboard/types.d.ts +2 -35
  189. package/dist/clipboard/types.d.ts.map +1 -1
  190. package/dist/collapse/index.d.ts.map +1 -1
  191. package/dist/collapse/index.js +3 -3
  192. package/dist/collapse/types.d.ts +2 -35
  193. package/dist/collapse/types.d.ts.map +1 -1
  194. package/dist/command/index.d.ts +39 -66
  195. package/dist/command/index.d.ts.map +1 -1
  196. package/dist/command/index.js +3 -3
  197. package/dist/command/types.d.ts +2 -2
  198. package/dist/command/types.d.ts.map +1 -1
  199. package/dist/context-menu/index.d.ts +1 -45
  200. package/dist/context-menu/index.d.ts.map +1 -1
  201. package/dist/context-menu/index.js +4 -3
  202. package/dist/context-menu/types.d.ts +9 -63
  203. package/dist/context-menu/types.d.ts.map +1 -1
  204. package/dist/date-picker/index.d.ts.map +1 -1
  205. package/dist/date-picker/index.js +4 -4
  206. package/dist/date-picker/types.d.ts +2 -2
  207. package/dist/date-picker/types.d.ts.map +1 -1
  208. package/dist/descriptions/index.d.ts.map +1 -1
  209. package/dist/descriptions/index.js +2 -2
  210. package/dist/divider/index.d.ts.map +1 -1
  211. package/dist/divider/index.js +3 -2
  212. package/dist/divider/types.d.ts +0 -12
  213. package/dist/divider/types.d.ts.map +1 -1
  214. package/dist/drawer/index.d.ts +4 -1
  215. package/dist/drawer/index.d.ts.map +1 -1
  216. package/dist/drawer/index.js +2 -2
  217. package/dist/drawer/types.d.ts +2 -145
  218. package/dist/drawer/types.d.ts.map +1 -1
  219. package/dist/dropdown/index.d.ts.map +1 -1
  220. package/dist/dropdown/index.js +6 -5
  221. package/dist/dropdown/types.d.ts +2 -71
  222. package/dist/dropdown/types.d.ts.map +1 -1
  223. package/dist/empty/index.d.ts.map +1 -1
  224. package/dist/empty/index.js +2 -2
  225. package/dist/empty/types.d.ts +3 -40
  226. package/dist/empty/types.d.ts.map +1 -1
  227. package/dist/fetching-overlay/index.d.ts.map +1 -1
  228. package/dist/fetching-overlay/index.js +4 -4
  229. package/dist/float-input/index.d.ts.map +1 -1
  230. package/dist/float-input/index.js +4 -4
  231. package/dist/float-input/types.d.ts +5 -10
  232. package/dist/float-input/types.d.ts.map +1 -1
  233. package/dist/grid/index.d.ts +1 -1
  234. package/dist/grid/index.d.ts.map +1 -1
  235. package/dist/grid/index.js +2 -2
  236. package/dist/grid/types.d.ts +1 -9
  237. package/dist/grid/types.d.ts.map +1 -1
  238. package/dist/hooks/index.d.ts +1 -0
  239. package/dist/hooks/index.d.ts.map +1 -1
  240. package/dist/hooks/useMenuNavigation.d.ts +18 -0
  241. package/dist/hooks/useMenuNavigation.d.ts.map +1 -0
  242. package/dist/image/index.d.ts.map +1 -1
  243. package/dist/image/index.js +2 -2
  244. package/dist/image/types.d.ts +2 -34
  245. package/dist/image/types.d.ts.map +1 -1
  246. package/dist/index.d.ts +2 -1
  247. package/dist/index.d.ts.map +1 -1
  248. package/dist/index.js +68 -67
  249. package/dist/index.js.map +1 -1
  250. package/dist/input/index.d.ts.map +1 -1
  251. package/dist/input/index.js +4 -4
  252. package/dist/input/types.d.ts +9 -4
  253. package/dist/input/types.d.ts.map +1 -1
  254. package/dist/input-group/index.d.ts.map +1 -1
  255. package/dist/input-group/index.js +2 -2
  256. package/dist/input-group/types.d.ts +7 -19
  257. package/dist/input-group/types.d.ts.map +1 -1
  258. package/dist/input-otp/index.d.ts.map +1 -1
  259. package/dist/input-otp/index.js +2 -2
  260. package/dist/input-otp/types.d.ts +3 -81
  261. package/dist/input-otp/types.d.ts.map +1 -1
  262. package/dist/input-password/index.d.ts.map +1 -1
  263. package/dist/input-password/index.js +5 -5
  264. package/dist/input-password/types.d.ts +0 -6
  265. package/dist/input-password/types.d.ts.map +1 -1
  266. package/dist/kbd/index.d.ts.map +1 -1
  267. package/dist/kbd/index.js +3 -3
  268. package/dist/kbd/types.d.ts +2 -17
  269. package/dist/kbd/types.d.ts.map +1 -1
  270. package/dist/link/index.d.ts +1 -1
  271. package/dist/link/index.d.ts.map +1 -1
  272. package/dist/link/index.js +2 -2
  273. package/dist/menubar/index.d.ts.map +1 -1
  274. package/dist/menubar/index.js +5 -4
  275. package/dist/modal/index.d.ts.map +1 -1
  276. package/dist/modal/index.js +2 -2
  277. package/dist/modal/types.d.ts +2 -44
  278. package/dist/modal/types.d.ts.map +1 -1
  279. package/dist/multi-select/index.d.ts.map +1 -1
  280. package/dist/multi-select/index.js +7 -6
  281. package/dist/multi-select/types.d.ts +2 -34
  282. package/dist/multi-select/types.d.ts.map +1 -1
  283. package/dist/navigation-menu/index.js +2 -2
  284. package/dist/notification/index.d.ts.map +1 -1
  285. package/dist/notification/index.js +3 -3
  286. package/dist/notification/types.d.ts +2 -62
  287. package/dist/notification/types.d.ts.map +1 -1
  288. package/dist/number-input/index.d.ts.map +1 -1
  289. package/dist/number-input/index.js +5 -5
  290. package/dist/number-input/types.d.ts +5 -2
  291. package/dist/number-input/types.d.ts.map +1 -1
  292. package/dist/pagination/index.d.ts.map +1 -1
  293. package/dist/pagination/index.js +4 -3
  294. package/dist/pagination/types.d.ts +3 -53
  295. package/dist/pagination/types.d.ts.map +1 -1
  296. package/dist/popover/index.d.ts +1 -1
  297. package/dist/popover/index.d.ts.map +1 -1
  298. package/dist/popover/index.js +3 -3
  299. package/dist/popover/types.d.ts +3 -17
  300. package/dist/popover/types.d.ts.map +1 -1
  301. package/dist/progress/index.d.ts.map +1 -1
  302. package/dist/progress/index.js +3 -2
  303. package/dist/progress/styles.d.ts +4 -5
  304. package/dist/progress/styles.d.ts.map +1 -1
  305. package/dist/progress/types.d.ts +2 -44
  306. package/dist/progress/types.d.ts.map +1 -1
  307. package/dist/radio/index.d.ts.map +1 -1
  308. package/dist/radio/index.js +3 -3
  309. package/dist/radio/types.d.ts +2 -2
  310. package/dist/radio/types.d.ts.map +1 -1
  311. package/dist/radio-group/index.d.ts.map +1 -1
  312. package/dist/radio-group/index.js +2 -2
  313. package/dist/radio-group/types.d.ts +0 -24
  314. package/dist/radio-group/types.d.ts.map +1 -1
  315. package/dist/rating/index.d.ts.map +1 -1
  316. package/dist/rating/index.js +2 -2
  317. package/dist/rating/types.d.ts +2 -2
  318. package/dist/rating/types.d.ts.map +1 -1
  319. package/dist/scroll-area/index.d.ts.map +1 -1
  320. package/dist/scroll-area/index.js +2 -2
  321. package/dist/select/index.d.ts.map +1 -1
  322. package/dist/select/index.js +7 -6
  323. package/dist/select/types.d.ts +8 -3
  324. package/dist/select/types.d.ts.map +1 -1
  325. package/dist/shared/useSelectBase.d.ts +4 -2
  326. package/dist/shared/useSelectBase.d.ts.map +1 -1
  327. package/dist/skeleton/index.d.ts.map +1 -1
  328. package/dist/skeleton/index.js +3 -3
  329. package/dist/skeleton/types.d.ts +1 -1
  330. package/dist/skeleton/types.d.ts.map +1 -1
  331. package/dist/slider/index.d.ts.map +1 -1
  332. package/dist/slider/index.js +3 -2
  333. package/dist/slider/types.d.ts +2 -36
  334. package/dist/slider/types.d.ts.map +1 -1
  335. package/dist/spinner/index.d.ts +2 -1
  336. package/dist/spinner/index.d.ts.map +1 -1
  337. package/dist/spinner/index.js +3 -3
  338. package/dist/spinner/types.d.ts +1 -1
  339. package/dist/spinner/types.d.ts.map +1 -1
  340. package/dist/stepper/index.d.ts.map +1 -1
  341. package/dist/stepper/index.js +3 -2
  342. package/dist/stepper/types.d.ts +3 -2
  343. package/dist/stepper/types.d.ts.map +1 -1
  344. package/dist/switch/index.d.ts.map +1 -1
  345. package/dist/switch/index.js +3 -3
  346. package/dist/switch/types.d.ts +2 -31
  347. package/dist/switch/types.d.ts.map +1 -1
  348. package/dist/table/index.d.ts.map +1 -1
  349. package/dist/table/index.js +11 -11
  350. package/dist/table/types.d.ts +2 -2
  351. package/dist/table/types.d.ts.map +1 -1
  352. package/dist/tabs/index.d.ts.map +1 -1
  353. package/dist/tabs/index.js +3 -3
  354. package/dist/tabs/types.d.ts +3 -53
  355. package/dist/tabs/types.d.ts.map +1 -1
  356. package/dist/tag/index.d.ts +1 -1
  357. package/dist/tag/index.d.ts.map +1 -1
  358. package/dist/tag/index.js +3 -3
  359. package/dist/tag/types.d.ts +1 -1
  360. package/dist/tag/types.d.ts.map +1 -1
  361. package/dist/textarea/index.d.ts.map +1 -1
  362. package/dist/textarea/index.js +2 -2
  363. package/dist/textarea/types.d.ts +3 -54
  364. package/dist/textarea/types.d.ts.map +1 -1
  365. package/dist/theme/types.d.ts +0 -12
  366. package/dist/theme/types.d.ts.map +1 -1
  367. package/dist/timeline/index.d.ts.map +1 -1
  368. package/dist/timeline/index.js +2 -2
  369. package/dist/toast/index.d.ts.map +1 -1
  370. package/dist/toast/index.js +3 -3
  371. package/dist/toast/types.d.ts +0 -6
  372. package/dist/toast/types.d.ts.map +1 -1
  373. package/dist/toggle/index.d.ts.map +1 -1
  374. package/dist/toggle/index.js +4 -3
  375. package/dist/toggle/types.d.ts +3 -26
  376. package/dist/toggle/types.d.ts.map +1 -1
  377. package/dist/toggle-group/index.d.ts.map +1 -1
  378. package/dist/toggle-group/index.js +4 -3
  379. package/dist/toggle-group/types.d.ts +3 -44
  380. package/dist/toggle-group/types.d.ts.map +1 -1
  381. package/dist/tooltip/index.d.ts.map +1 -1
  382. package/dist/tooltip/index.js +3 -3
  383. package/dist/tooltip/types.d.ts +2 -44
  384. package/dist/tooltip/types.d.ts.map +1 -1
  385. package/dist/transfer/index.d.ts.map +1 -1
  386. package/dist/transfer/index.js +4 -4
  387. package/dist/transfer/types.d.ts +0 -20
  388. package/dist/transfer/types.d.ts.map +1 -1
  389. package/dist/transfer/utils.d.ts.map +1 -1
  390. package/dist/tree/index.d.ts.map +1 -1
  391. package/dist/tree/index.js +2 -2
  392. package/dist/tree/types.d.ts +2 -73
  393. package/dist/tree/types.d.ts.map +1 -1
  394. package/dist/tree-select/index.d.ts.map +1 -1
  395. package/dist/tree-select/index.js +5 -5
  396. package/dist/tree-select/types.d.ts +3 -91
  397. package/dist/tree-select/types.d.ts.map +1 -1
  398. package/dist/types.d.ts +1 -35
  399. package/dist/types.d.ts.map +1 -1
  400. package/dist/upload/index.d.ts.map +1 -1
  401. package/dist/upload/index.js +3 -3
  402. package/dist/upload/types.d.ts +5 -32
  403. package/dist/upload/types.d.ts.map +1 -1
  404. package/dist/upload/utils.d.ts +1 -0
  405. package/dist/upload/utils.d.ts.map +1 -1
  406. package/dist/utils.d.ts +0 -39
  407. package/dist/utils.d.ts.map +1 -1
  408. package/dist/variants.d.ts +3 -314
  409. package/dist/variants.d.ts.map +1 -1
  410. package/package.json +1 -1
  411. package/styles/global.css +300 -977
  412. package/dist/chunk-2PNLIQYM.js.map +0 -1
  413. package/dist/chunk-2TLOWZE4.js.map +0 -1
  414. package/dist/chunk-2WZVD7P3.js.map +0 -1
  415. package/dist/chunk-3BIV3QE2.js.map +0 -1
  416. package/dist/chunk-3BZE6BBJ.js.map +0 -1
  417. package/dist/chunk-3PWILVOE.js.map +0 -1
  418. package/dist/chunk-4FFVNUTK.js.map +0 -1
  419. package/dist/chunk-64NHVOZS.js.map +0 -1
  420. package/dist/chunk-674JC24S.js.map +0 -1
  421. package/dist/chunk-6BAP6QUT.js +0 -72
  422. package/dist/chunk-6BAP6QUT.js.map +0 -1
  423. package/dist/chunk-6G3BMY4N.js.map +0 -1
  424. package/dist/chunk-6HGUDHHE.js.map +0 -1
  425. package/dist/chunk-6JGNJI5T.js.map +0 -1
  426. package/dist/chunk-6LYRMQOI.js.map +0 -1
  427. package/dist/chunk-6YOOKE6C.js +0 -138
  428. package/dist/chunk-6YOOKE6C.js.map +0 -1
  429. package/dist/chunk-764UKE6X.js.map +0 -1
  430. package/dist/chunk-7UCNBMCV.js.map +0 -1
  431. package/dist/chunk-BPRCBPVJ.js.map +0 -1
  432. package/dist/chunk-BVO2BNFG.js.map +0 -1
  433. package/dist/chunk-C5IGZLIT.js.map +0 -1
  434. package/dist/chunk-CN74CNAN.js.map +0 -1
  435. package/dist/chunk-D4SUSZDN.js.map +0 -1
  436. package/dist/chunk-DUIL5BYS.js.map +0 -1
  437. package/dist/chunk-EHWXPH76.js.map +0 -1
  438. package/dist/chunk-ERRZ2CSG.js.map +0 -1
  439. package/dist/chunk-EZGK67T6.js +0 -383
  440. package/dist/chunk-EZGK67T6.js.map +0 -1
  441. package/dist/chunk-FZSCLZF6.js.map +0 -1
  442. package/dist/chunk-G6NVGBYZ.js.map +0 -1
  443. package/dist/chunk-GJPZOMFE.js.map +0 -1
  444. package/dist/chunk-GOLARX5K.js.map +0 -1
  445. package/dist/chunk-GVVP5TZM.js.map +0 -1
  446. package/dist/chunk-H6G4BUPA.js.map +0 -1
  447. package/dist/chunk-HCOTO5WX.js.map +0 -1
  448. package/dist/chunk-HECAAILV.js.map +0 -1
  449. package/dist/chunk-HUXODBIO.js.map +0 -1
  450. package/dist/chunk-I32ZQUYY.js.map +0 -1
  451. package/dist/chunk-JWTWPZ32.js.map +0 -1
  452. package/dist/chunk-KH577UDI.js.map +0 -1
  453. package/dist/chunk-KJTMZJ7V.js.map +0 -1
  454. package/dist/chunk-L5UYN5LX.js.map +0 -1
  455. package/dist/chunk-LOYLJRCF.js.map +0 -1
  456. package/dist/chunk-LX4FDH4J.js.map +0 -1
  457. package/dist/chunk-N2WHJ3FI.js.map +0 -1
  458. package/dist/chunk-NGYLRX6F.js.map +0 -1
  459. package/dist/chunk-O3V3BTIJ.js.map +0 -1
  460. package/dist/chunk-OLTQAMV2.js.map +0 -1
  461. package/dist/chunk-ON2CMF6J.js.map +0 -1
  462. package/dist/chunk-ONGJXAYQ.js.map +0 -1
  463. package/dist/chunk-OQFYIKWR.js.map +0 -1
  464. package/dist/chunk-POLVJ36Y.js.map +0 -1
  465. package/dist/chunk-POXI7JJ4.js +0 -351
  466. package/dist/chunk-POXI7JJ4.js.map +0 -1
  467. package/dist/chunk-R3TLU26W.js.map +0 -1
  468. package/dist/chunk-RFHTC6AH.js.map +0 -1
  469. package/dist/chunk-ROA7BYGB.js.map +0 -1
  470. package/dist/chunk-SGRACNBP.js.map +0 -1
  471. package/dist/chunk-TLNHWOQQ.js.map +0 -1
  472. package/dist/chunk-UTWQ2FZK.js.map +0 -1
  473. package/dist/chunk-VOODO2ZE.js.map +0 -1
  474. package/dist/chunk-WRSG7WU5.js.map +0 -1
  475. package/dist/chunk-X3YNHX77.js.map +0 -1
  476. package/dist/chunk-Y4XAXZHB.js.map +0 -1
  477. package/dist/chunk-YJOLLSHH.js.map +0 -1
  478. package/dist/chunk-YS5AIY4A.js.map +0 -1
  479. package/dist/chunk-YXLIGJTN.js.map +0 -1
  480. package/dist/chunk-ZIYA7TGX.js.map +0 -1
  481. package/dist/chunk-ZJNGZCRB.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { cn } from './chunk-RAS6HUEI.js';
2
2
  import { cva } from 'class-variance-authority';
3
3
  import { X } from 'lucide-react';
4
4
  import { Drawer as Drawer$1 } from 'vaul';
@@ -68,30 +68,29 @@ var paddingClasses = {
68
68
  lg: "p-6",
69
69
  full: "p-6"
70
70
  };
71
- var Drawer = React.memo(
72
- ({
73
- open,
74
- onOpenChange,
75
- direction = "bottom",
76
- modal = true,
77
- dismissible = true,
78
- snapPoints,
79
- children
80
- }) => {
81
- return /* @__PURE__ */ jsx(DrawerContext.Provider, { value: { direction }, children: /* @__PURE__ */ jsx(
82
- Drawer$1.Root,
83
- {
84
- open,
85
- onOpenChange,
86
- direction,
87
- modal,
88
- dismissible,
89
- snapPoints,
90
- children
91
- }
92
- ) });
93
- }
94
- );
71
+ function Drawer({
72
+ open,
73
+ onOpenChange,
74
+ direction = "bottom",
75
+ modal = true,
76
+ dismissible = true,
77
+ snapPoints,
78
+ children
79
+ }) {
80
+ const contextValue = React.useMemo(() => ({ direction }), [direction]);
81
+ return /* @__PURE__ */ jsx(DrawerContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(
82
+ Drawer$1.Root,
83
+ {
84
+ open,
85
+ onOpenChange,
86
+ direction,
87
+ modal,
88
+ dismissible,
89
+ snapPoints,
90
+ children
91
+ }
92
+ ) });
93
+ }
95
94
  Drawer.displayName = "Drawer";
96
95
  var DrawerTrigger = React.memo(
97
96
  ({ children, asChild = false, className, ref, ...props }) => {
@@ -117,7 +116,7 @@ var DrawerOverlay = React.memo(
117
116
  ref,
118
117
  className: cn(
119
118
  "drawer_overlay",
120
- "fixed inset-0 z-50 bg-black/20 backdrop-blur-sm data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 duration-200",
119
+ "fixed inset-0 z-50 bg-overlay backdrop-blur-sm data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 duration-200",
121
120
  classNames?.overlay,
122
121
  className
123
122
  ),
@@ -410,5 +409,5 @@ ComposedDrawer.displayName = "ComposedDrawer";
410
409
  var drawer_default = ComposedDrawer;
411
410
 
412
411
  export { ComposedDrawer, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, drawer_default };
413
- //# sourceMappingURL=chunk-674JC24S.js.map
414
- //# sourceMappingURL=chunk-674JC24S.js.map
412
+ //# sourceMappingURL=chunk-MZDAQSI4.js.map
413
+ //# sourceMappingURL=chunk-MZDAQSI4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/drawer/index.tsx"],"names":["DrawerPrimitive"],"mappings":"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","file":"chunk-MZDAQSI4.js","sourcesContent":["'use client'\n\nimport { cva } from \"class-variance-authority\";\nimport { X } from \"lucide-react\";\nimport { Drawer as DrawerPrimitive } from \"vaul\";\nimport React, { createContext, useContext } from \"react\";\n\nimport { cn } from \"../utils\";\nimport type {\n ComposedDrawerProps,\n DrawerBodyProps,\n DrawerCloseProps,\n DrawerContentProps,\n DrawerDescriptionProps,\n DrawerDirection,\n DrawerFooterProps,\n DrawerHeaderProps,\n DrawerOverlayProps,\n DrawerProps,\n DrawerSize,\n DrawerTitleProps,\n DrawerTriggerProps,\n} from \"./types\";\n\n// Context to pass direction from Drawer to DrawerContent\nconst DrawerContext = createContext<{\n direction: DrawerDirection;\n}>({ direction: \"bottom\" });\n\nconst drawerContentVariants = cva(\n \"fixed bg-background border-border flex flex-col outline-none\",\n {\n variants: {\n direction: {\n bottom: \"bottom-0 left-0 right-0 border-t rounded-t-xl max-h-[96vh]\",\n top: \"top-0 left-0 right-0 border-b rounded-b-xl max-h-[96vh]\",\n left: \"left-0 top-0 bottom-0 border-r max-w-[96vw]\",\n right: \"right-0 top-0 bottom-0 border-l max-w-[96vw]\",\n },\n size: {\n xs: \"\",\n sm: \"\",\n md: \"\",\n lg: \"\",\n full: \"\",\n },\n },\n compoundVariants: [\n // Bottom/Top - height based\n { direction: \"bottom\", size: \"xs\", class: \"h-1/4\" },\n { direction: \"bottom\", size: \"sm\", class: \"h-1/3\" },\n { direction: \"bottom\", size: \"md\", class: \"h-1/2\" },\n { direction: \"bottom\", size: \"lg\", class: \"h-3/4\" },\n { direction: \"bottom\", size: \"full\", class: \"h-[96vh]\" },\n { direction: \"top\", size: \"xs\", class: \"h-1/4\" },\n { direction: \"top\", size: \"sm\", class: \"h-1/3\" },\n { direction: \"top\", size: \"md\", class: \"h-1/2\" },\n { direction: \"top\", size: \"lg\", class: \"h-3/4\" },\n { direction: \"top\", size: \"full\", class: \"h-[96vh]\" },\n // Left/Right - width based\n { direction: \"left\", size: \"xs\", class: \"w-64\" },\n { direction: \"left\", size: \"sm\", class: \"w-80\" },\n { direction: \"left\", size: \"md\", class: \"w-96\" },\n { direction: \"left\", size: \"lg\", class: \"w-[480px]\" },\n { direction: \"left\", size: \"full\", class: \"w-[96vw]\" },\n { direction: \"right\", size: \"xs\", class: \"w-64\" },\n { direction: \"right\", size: \"sm\", class: \"w-80\" },\n { direction: \"right\", size: \"md\", class: \"w-96\" },\n { direction: \"right\", size: \"lg\", class: \"w-[480px]\" },\n { direction: \"right\", size: \"full\", class: \"w-[96vw]\" },\n ],\n defaultVariants: {\n direction: \"bottom\",\n size: \"md\",\n },\n },\n);\n\n/**\n * Close button size classes\n */\nconst closeButtonSizeClasses: Record<DrawerSize, string> = {\n xs: \"top-2 right-2 p-1 [&_svg]:size-3.5\",\n sm: \"top-3 right-3 p-1.5 [&_svg]:size-4\",\n md: \"top-4 right-4 p-1.5 [&_svg]:size-4\",\n lg: \"top-4 right-4 p-2 [&_svg]:size-5\",\n full: \"top-5 right-5 p-2 [&_svg]:size-5\",\n};\n\n/**\n * Padding classes based on size\n */\nconst paddingClasses: Record<DrawerSize, string> = {\n xs: \"p-3\",\n sm: \"p-4\",\n md: \"p-5\",\n lg: \"p-6\",\n full: \"p-6\",\n};\n\nexport function Drawer({\n open,\n onOpenChange,\n direction = \"bottom\",\n modal = true,\n dismissible = true,\n snapPoints,\n children,\n}: DrawerProps) {\n const contextValue = React.useMemo(() => ({ direction }), [direction]);\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <DrawerPrimitive.Root\n open={open}\n onOpenChange={onOpenChange}\n direction={direction}\n modal={modal}\n dismissible={dismissible}\n snapPoints={snapPoints}\n >\n {children}\n </DrawerPrimitive.Root>\n </DrawerContext.Provider>\n );\n}\n\nDrawer.displayName = \"Drawer\";\n\nexport const DrawerTrigger = React.memo<DrawerTriggerProps>(\n ({ children, asChild = false, className, ref, ...props }) => {\n return (\n <DrawerPrimitive.Trigger\n ref={ref}\n asChild={asChild}\n className={className}\n data-slot=\"drawer-trigger\"\n {...props}\n >\n {children}\n </DrawerPrimitive.Trigger>\n );\n },\n);\n\nDrawerTrigger.displayName = \"DrawerTrigger\";\n\nexport const DrawerPortal = DrawerPrimitive.Portal;\n\nexport const DrawerOverlay = React.memo<DrawerOverlayProps>(\n ({ className, ref, classNames, ...props }) => (\n <DrawerPrimitive.Overlay\n ref={ref}\n className={cn(\n \"drawer_overlay\",\n \"fixed inset-0 z-50 bg-overlay backdrop-blur-sm data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 duration-200\",\n classNames?.overlay,\n className,\n )}\n data-slot=\"drawer-overlay\"\n {...props}\n />\n ),\n);\n\nDrawerOverlay.displayName = \"DrawerOverlay\";\n\nexport const DrawerContent = React.memo<DrawerContentProps>(\n ({\n children,\n direction: directionProp,\n size = \"md\",\n showCloseButton = false,\n showHandle,\n className,\n ref,\n classNames,\n }) => {\n const { direction: contextDirection } = useContext(DrawerContext);\n const direction = directionProp ?? contextDirection;\n\n // Default showHandle based on direction\n const shouldShowHandle =\n showHandle ?? (direction === \"bottom\" || direction === \"top\");\n\n const isHorizontal = direction === \"left\" || direction === \"right\";\n\n return (\n <DrawerPortal>\n <DrawerOverlay classNames={classNames} />\n <DrawerPrimitive.Content\n ref={ref}\n className={cn(\n \"drawer_content\",\n drawerContentVariants({ direction, size }),\n paddingClasses[size],\n \"z-50\",\n classNames?.content,\n className,\n )}\n data-slot=\"drawer-content\"\n >\n {/* Handle for bottom drawer */}\n {shouldShowHandle && direction === \"bottom\" && (\n <div\n className={cn(\n \"drawer_handle\",\n \"mx-auto w-12 h-1.5 flex-shrink-0 rounded-full bg-border mb-4\",\n classNames?.handle\n )}\n data-slot=\"drawer-handle\"\n />\n )}\n\n {/* Handle for top drawer */}\n {shouldShowHandle && direction === \"top\" && (\n <div\n className={cn(\n \"drawer_handle\",\n \"mx-auto w-12 h-1.5 flex-shrink-0 rounded-full bg-border mb-4 order-last mt-auto\",\n classNames?.handle\n )}\n data-slot=\"drawer-handle\"\n />\n )}\n\n {/* Handle for left drawer */}\n {shouldShowHandle && direction === \"left\" && (\n <div\n className={cn(\n \"drawer_handle\",\n \"absolute right-2 top-1/2 -translate-y-1/2 w-1.5 h-12 rounded-full bg-border\",\n classNames?.handle\n )}\n data-slot=\"drawer-handle\"\n />\n )}\n\n {/* Handle for right drawer */}\n {shouldShowHandle && direction === \"right\" && (\n <div\n className={cn(\n \"drawer_handle\",\n \"absolute left-2 top-1/2 -translate-y-1/2 w-1.5 h-12 rounded-full bg-border\",\n classNames?.handle\n )}\n data-slot=\"drawer-handle\"\n />\n )}\n\n {/* Close button */}\n {showCloseButton && (\n <DrawerPrimitive.Close\n className={cn(\n \"drawer_closeButton\",\n \"absolute rounded-md opacity-70 transition-opacity hover:opacity-100\",\n \"focus:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2\",\n \"text-text-secondary hover:text-text-primary hover:bg-surface\",\n closeButtonSizeClasses[size],\n classNames?.closeButton,\n )}\n data-slot=\"drawer-closeButton\"\n >\n <X />\n <span className=\"sr-only\">Close</span>\n </DrawerPrimitive.Close>\n )}\n\n {/* Content wrapper */}\n <div\n className={cn(\n \"drawer_wrapper\",\n \"flex flex-col flex-1 min-h-0\",\n isHorizontal && \"overflow-y-auto\",\n showCloseButton && \"pt-6\",\n classNames?.wrapper,\n )}\n data-slot=\"drawer-wrapper\"\n >\n {children}\n </div>\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n },\n);\n\nDrawerContent.displayName = \"DrawerContent\";\n\nexport const DrawerHeader = React.memo<DrawerHeaderProps>(\n ({ children, className, ref, classNames, ...props }) => {\n return (\n <div\n ref={ref}\n className={cn(\n \"drawer_header\",\n \"flex flex-col gap-1.5 mb-4 shrink-0\",\n classNames?.header,\n className\n )}\n data-slot=\"drawer-header\"\n {...props}\n >\n {children}\n </div>\n );\n },\n);\n\nDrawerHeader.displayName = \"DrawerHeader\";\n\nexport const DrawerBody = React.memo<DrawerBodyProps>(\n ({ children, className, ref, classNames, ...props }) => {\n return (\n <div\n ref={ref}\n className={cn(\n \"drawer_body\",\n \"flex-1 overflow-y-auto min-h-0\",\n classNames?.body,\n className\n )}\n data-slot=\"drawer-body\"\n {...props}\n >\n {children}\n </div>\n );\n },\n);\n\nDrawerBody.displayName = \"DrawerBody\";\n\nexport const DrawerFooter = React.memo<DrawerFooterProps>(\n ({ children, className, ref, classNames, ...props }) => {\n return (\n <div\n ref={ref}\n className={cn(\n \"drawer_footer\",\n \"flex gap-2 mt-auto pt-4 shrink-0\",\n classNames?.footer,\n className\n )}\n data-slot=\"drawer-footer\"\n {...props}\n >\n {children}\n </div>\n );\n },\n);\n\nDrawerFooter.displayName = \"DrawerFooter\";\n\nexport const DrawerTitle = React.memo<DrawerTitleProps>(\n ({ children, className, ref, classNames, ...props }) => {\n return (\n <DrawerPrimitive.Title\n ref={ref}\n className={cn(\n \"drawer_title\",\n \"text-lg font-semibold text-text-primary\",\n classNames?.title,\n className\n )}\n data-slot=\"drawer-title\"\n {...props}\n >\n {children}\n </DrawerPrimitive.Title>\n );\n },\n);\n\nDrawerTitle.displayName = \"DrawerTitle\";\n\nexport const DrawerDescription = React.memo<DrawerDescriptionProps>(\n ({ children, className, ref, classNames, ...props }) => {\n return (\n <DrawerPrimitive.Description\n ref={ref}\n className={cn(\n \"drawer_description\",\n \"text-sm text-text-secondary\",\n classNames?.description,\n className\n )}\n data-slot=\"drawer-description\"\n {...props}\n >\n {children}\n </DrawerPrimitive.Description>\n );\n },\n);\n\nDrawerDescription.displayName = \"DrawerDescription\";\n\nexport const DrawerClose = React.memo<DrawerCloseProps>(\n ({ children, asChild = false, className, ref, ...props }) => {\n return (\n <DrawerPrimitive.Close\n ref={ref}\n asChild={asChild}\n className={className}\n data-slot=\"drawer-close\"\n {...props}\n >\n {children}\n </DrawerPrimitive.Close>\n );\n },\n);\n\nDrawerClose.displayName = \"DrawerClose\";\n\n/**\n * ComposedDrawer - A convenience component that combines all drawer parts\n */\nexport function ComposedDrawer({\n open,\n onOpenChange,\n title,\n description,\n children,\n footer,\n direction = \"right\",\n size = \"md\",\n modal = true,\n showCloseButton = true,\n showHandle,\n dismissible = true,\n hideHeader = false,\n hideFooter = false,\n className,\n contentClassName,\n classNames,\n}: ComposedDrawerProps) {\n return (\n <Drawer\n open={open}\n onOpenChange={onOpenChange}\n direction={direction}\n modal={modal}\n dismissible={dismissible}\n >\n <DrawerContent\n direction={direction}\n size={size}\n showCloseButton={showCloseButton}\n showHandle={showHandle}\n className={contentClassName}\n classNames={classNames}\n >\n {!hideHeader && (title || description) && (\n <DrawerHeader className={className} classNames={classNames}>\n {title && <DrawerTitle classNames={classNames}>{title}</DrawerTitle>}\n {description && (\n <DrawerDescription classNames={classNames}>{description}</DrawerDescription>\n )}\n </DrawerHeader>\n )}\n <DrawerBody classNames={classNames}>{children}</DrawerBody>\n {!hideFooter && footer && <DrawerFooter classNames={classNames}>{footer}</DrawerFooter>}\n </DrawerContent>\n </Drawer>\n );\n}\n\nComposedDrawer.displayName = \"ComposedDrawer\";\n\nexport type * from \"./types\";\nexport default ComposedDrawer;\n"]}
@@ -1,11 +1,25 @@
1
- import { useRipple, RippleContainer } from './chunk-OFUPJH35.js';
2
- import { focusRingColorClasses } from './chunk-POXI7JJ4.js';
3
- import { cn, iconSizes } from './chunk-NGYLRX6F.js';
1
+ import { useRipple, RippleContainer } from './chunk-4TEZWGX7.js';
2
+ import { colorVars } from './chunk-GLJDHW73.js';
3
+ import { cn, iconSizes } from './chunk-RAS6HUEI.js';
4
4
  import { cva } from 'class-variance-authority';
5
5
  import { Check, Copy } from 'lucide-react';
6
6
  import React, { useState, useRef, useEffect } from 'react';
7
7
  import { jsxs, jsx } from 'react/jsx-runtime';
8
8
 
9
+ async function copyToClipboard(text) {
10
+ if (navigator.clipboard) {
11
+ await navigator.clipboard.writeText(text);
12
+ return;
13
+ }
14
+ const textarea = document.createElement("textarea");
15
+ textarea.value = text;
16
+ textarea.style.position = "fixed";
17
+ textarea.style.opacity = "0";
18
+ document.body.appendChild(textarea);
19
+ textarea.select();
20
+ document.execCommand("copy");
21
+ document.body.removeChild(textarea);
22
+ }
9
23
  var clipboardVariants = cva(
10
24
  "inline-flex items-center justify-between gap-2 rounded-md font-medium transition-colors cursor-pointer border focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background relative overflow-hidden",
11
25
  {
@@ -22,47 +36,15 @@ var clipboardVariants = cva(
22
36
  }
23
37
  }
24
38
  );
25
- var colorStyles = {
26
- default: {
27
- default: "bg-background border-border text-text-primary hover:bg-surface",
28
- solid: "bg-surface border-border text-text-primary hover:bg-surface/80",
29
- soft: "bg-surface/50 border-border text-text-primary hover:bg-surface"
30
- },
31
- primary: {
32
- default: "bg-background border-primary text-primary hover:bg-primary/10",
33
- solid: "bg-primary border-primary text-background hover:bg-primary/90",
34
- soft: "bg-primary/10 border-primary/30 text-primary hover:bg-primary/20"
35
- },
36
- secondary: {
37
- default: "bg-background border-secondary text-secondary hover:bg-secondary/10",
38
- solid: "bg-secondary border-secondary text-background hover:bg-secondary/90",
39
- soft: "bg-secondary/10 border-secondary/30 text-secondary hover:bg-secondary/20"
40
- },
41
- accent: {
42
- default: "bg-background border-accent text-accent hover:bg-accent/10",
43
- solid: "bg-accent border-accent text-background hover:bg-accent/90",
44
- soft: "bg-accent/10 border-accent/30 text-accent hover:bg-accent/20"
45
- },
46
- success: {
47
- default: "bg-background border-success text-success hover:bg-success/10",
48
- solid: "bg-success border-success text-background hover:bg-success/90",
49
- soft: "bg-success/10 border-success/30 text-success hover:bg-success/20"
50
- },
51
- error: {
52
- default: "bg-background border-error text-error hover:bg-error/10",
53
- solid: "bg-error border-error text-background hover:bg-error/90",
54
- soft: "bg-error/10 border-error/30 text-error hover:bg-error/20"
55
- },
56
- warning: {
57
- default: "bg-background border-warning text-warning hover:bg-warning/10",
58
- solid: "bg-warning border-warning text-background hover:bg-warning/90",
59
- soft: "bg-warning/10 border-warning/30 text-warning hover:bg-warning/20"
60
- },
61
- info: {
62
- default: "bg-background border-info text-info hover:bg-info/10",
63
- solid: "bg-info border-info text-background hover:bg-info/90",
64
- soft: "bg-info/10 border-info/30 text-info hover:bg-info/20"
39
+ var getClipboardStyles = (color, variant) => {
40
+ const baseColor = colorVars[color] || colorVars.default;
41
+ if (variant === "solid") {
42
+ return cn(baseColor, "bg-slot border-slot text-slot-fg hover:bg-slot-90");
43
+ }
44
+ if (variant === "soft") {
45
+ return cn(baseColor, "bg-slot-10 border-slot-30 text-slot hover:bg-slot-20");
65
46
  }
47
+ return cn(baseColor, "bg-background border-slot text-slot hover:bg-slot-10");
66
48
  };
67
49
  var Clipboard = React.memo(
68
50
  ({
@@ -80,9 +62,11 @@ var Clipboard = React.memo(
80
62
  }) => {
81
63
  const [copied, setCopied] = useState(false);
82
64
  const timerRef = useRef(null);
65
+ const isMountedRef = useRef(true);
83
66
  const { ripples, onPointerDown: ripplePointerDown, onKeyDown: rippleKeyDown, onAnimationEnd: rippleAnimationEnd } = useRipple(!disabled);
84
67
  useEffect(() => {
85
68
  return () => {
69
+ isMountedRef.current = false;
86
70
  if (timerRef.current) {
87
71
  clearTimeout(timerRef.current);
88
72
  }
@@ -91,14 +75,14 @@ var Clipboard = React.memo(
91
75
  const handleCopy = async () => {
92
76
  if (disabled) return;
93
77
  try {
94
- await navigator.clipboard.writeText(value);
95
- setCopied(true);
78
+ await copyToClipboard(value);
79
+ if (isMountedRef.current) setCopied(true);
96
80
  onCopy?.();
97
81
  if (timerRef.current) {
98
82
  clearTimeout(timerRef.current);
99
83
  }
100
84
  timerRef.current = setTimeout(() => {
101
- setCopied(false);
85
+ if (isMountedRef.current) setCopied(false);
102
86
  }, successDuration);
103
87
  } catch {
104
88
  }
@@ -126,8 +110,9 @@ var Clipboard = React.memo(
126
110
  "aria-live": "polite",
127
111
  className: cn(
128
112
  clipboardVariants({ size }),
129
- colorStyles[color][variant],
130
- focusRingColorClasses[color],
113
+ getClipboardStyles(color, variant),
114
+ colorVars[color],
115
+ "focus-visible:ring-slot",
131
116
  disabled && "opacity-50 cursor-not-allowed",
132
117
  !showValue && "aspect-square justify-center",
133
118
  "clipboard_root",
@@ -178,5 +163,5 @@ Clipboard.displayName = "Clipboard";
178
163
  var clipboard_default = Clipboard;
179
164
 
180
165
  export { clipboard_default };
181
- //# sourceMappingURL=chunk-3PWILVOE.js.map
182
- //# sourceMappingURL=chunk-3PWILVOE.js.map
166
+ //# sourceMappingURL=chunk-NHM6DZOF.js.map
167
+ //# sourceMappingURL=chunk-NHM6DZOF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/clipboard/index.tsx"],"names":[],"mappings":"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","file":"chunk-NHM6DZOF.js","sourcesContent":["\"use client\";\n\nimport { cva } from \"class-variance-authority\";\nimport { Check, Copy } from \"lucide-react\";\nimport React, { useState, useRef, useEffect } from \"react\";\n\nimport { useRipple, RippleContainer } from \"../hooks/useRipple\";\nimport { cn, iconSizes } from \"../utils\";\nimport { colorVars } from \"../variants\";\nimport type { ClipboardProps } from \"./types\";\n\nasync function copyToClipboard(text: string): Promise<void> {\n if (navigator.clipboard) {\n await navigator.clipboard.writeText(text);\n return;\n }\n // Fallback for insecure contexts\n const textarea = document.createElement(\"textarea\");\n textarea.value = text;\n textarea.style.position = \"fixed\";\n textarea.style.opacity = \"0\";\n document.body.appendChild(textarea);\n textarea.select();\n document.execCommand(\"copy\");\n document.body.removeChild(textarea);\n}\n\nconst clipboardVariants = cva(\n \"inline-flex items-center justify-between gap-2 rounded-md font-medium transition-colors cursor-pointer border focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background relative overflow-hidden\",\n {\n variants: {\n size: {\n xs: \"px-1.5 py-1 text-xs\",\n sm: \"px-2 py-1.5 text-xs\",\n md: \"px-2.5 py-2 text-sm\",\n lg: \"px-3.5 py-2 text-lg\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n },\n);\n\nconst getClipboardStyles = (color: string, variant: string) => {\n const baseColor = colorVars[color as keyof typeof colorVars] || colorVars.default\n\n if (variant === 'solid') {\n return cn(baseColor, 'bg-slot border-slot text-slot-fg hover:bg-slot-90')\n }\n if (variant === 'soft') {\n return cn(baseColor, 'bg-slot-10 border-slot-30 text-slot hover:bg-slot-20')\n }\n // default variant\n return cn(baseColor, 'bg-background border-slot text-slot hover:bg-slot-10')\n}\n\nconst Clipboard = React.memo<ClipboardProps>(\n ({\n value,\n color = \"default\",\n size = \"md\",\n variant = \"default\",\n showValue = true,\n successDuration = 2000,\n disabled = false,\n onCopy,\n className,\n classNames,\n ref,\n }) => {\n const [copied, setCopied] = useState(false);\n const timerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const isMountedRef = useRef(true);\n const { ripples, onPointerDown: ripplePointerDown, onKeyDown: rippleKeyDown, onAnimationEnd: rippleAnimationEnd } = useRipple(!disabled);\n\n // Cleanup timeout on unmount to prevent memory leak\n useEffect(() => {\n return () => {\n isMountedRef.current = false;\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n };\n }, []);\n\n const handleCopy = async () => {\n if (disabled) return;\n\n try {\n await copyToClipboard(value);\n if (isMountedRef.current) setCopied(true);\n onCopy?.();\n\n // Clear any existing timer before setting a new one\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n\n timerRef.current = setTimeout(() => {\n if (isMountedRef.current) setCopied(false);\n }, successDuration);\n } catch {\n // Copy failed - user can try again\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n handleCopy();\n }\n };\n\n return (\n <div\n ref={ref}\n role=\"button\"\n tabIndex={disabled ? -1 : 0}\n onClick={handleCopy}\n onPointerDown={ripplePointerDown}\n onKeyDown={(e) => { rippleKeyDown(e); handleKeyDown(e); }}\n aria-label={\n copied\n ? \"Copied to clipboard\"\n : `Copy ${showValue ? value : \"to clipboard\"}`\n }\n aria-disabled={disabled}\n aria-live=\"polite\"\n className={cn(\n clipboardVariants({ size }),\n getClipboardStyles(color, variant),\n colorVars[color],\n 'focus-visible:ring-slot',\n disabled && \"opacity-50 cursor-not-allowed\",\n !showValue && \"aspect-square justify-center\",\n \"clipboard_root\",\n classNames?.root,\n className,\n )}\n data-slot=\"root\"\n >\n {showValue && (\n <span\n className={cn(\n \"font-mono truncate clipboard_input\",\n classNames?.input,\n )}\n data-slot=\"input\"\n >\n {value}\n </span>\n )}\n {copied ? (\n <Check\n className={cn(\n iconSizes[size],\n \"shrink-0 clipboard_button animate-in zoom-in-75 duration-200\",\n classNames?.button,\n )}\n data-slot=\"icon\"\n />\n ) : (\n <Copy\n className={cn(\n iconSizes[size],\n \"shrink-0 clipboard_button\",\n classNames?.button,\n )}\n data-slot=\"icon\"\n />\n )}\n <RippleContainer ripples={ripples} onAnimationEnd={rippleAnimationEnd} />\n </div>\n );\n },\n);\n\nClipboard.displayName = \"Clipboard\";\n\nexport type * from \"./types\";\nexport default Clipboard;\n"]}
@@ -0,0 +1,96 @@
1
+ import { useState, useRef, useEffect, useCallback } from 'react';
2
+
3
+ // src/hooks/useMenuNavigation.ts
4
+ function useMenuNavigation({
5
+ enabledIndices,
6
+ isOpen,
7
+ onClose,
8
+ onSelect,
9
+ onOpen,
10
+ loop = true
11
+ }) {
12
+ const [highlightedIndex, setHighlightedIndex] = useState(-1);
13
+ const ref = useRef({ enabledIndices, highlightedIndex, onClose, onSelect, onOpen, isOpen });
14
+ ref.current = { enabledIndices, highlightedIndex, onClose, onSelect, onOpen, isOpen };
15
+ useEffect(() => {
16
+ if (!isOpen) setHighlightedIndex(-1);
17
+ }, [isOpen]);
18
+ const move = useCallback(
19
+ (direction) => {
20
+ setHighlightedIndex((prev) => {
21
+ const indices = ref.current.enabledIndices;
22
+ if (indices.length === 0) return -1;
23
+ const pos = indices.indexOf(prev);
24
+ if (pos === -1) {
25
+ return (direction === 1 ? indices[0] : indices[indices.length - 1]) ?? -1;
26
+ }
27
+ const next = pos + direction;
28
+ if (next >= 0 && next < indices.length) return indices[next] ?? -1;
29
+ return loop ? (direction === 1 ? indices[0] : indices[indices.length - 1]) ?? -1 : prev;
30
+ });
31
+ },
32
+ [loop]
33
+ );
34
+ const highlightFirst = useCallback(() => {
35
+ setHighlightedIndex(ref.current.enabledIndices[0] ?? -1);
36
+ }, []);
37
+ const highlightLast = useCallback(() => {
38
+ const indices = ref.current.enabledIndices;
39
+ setHighlightedIndex(indices[indices.length - 1] ?? -1);
40
+ }, []);
41
+ const handleKeyDown = useCallback(
42
+ (e) => {
43
+ const { onOpen: open, isOpen: currentIsOpen } = ref.current;
44
+ switch (e.key) {
45
+ case "ArrowDown":
46
+ e.preventDefault();
47
+ if (!currentIsOpen && open) {
48
+ open();
49
+ highlightFirst();
50
+ } else move(1);
51
+ break;
52
+ case "ArrowUp":
53
+ e.preventDefault();
54
+ if (!currentIsOpen && open) {
55
+ open();
56
+ highlightLast();
57
+ } else move(-1);
58
+ break;
59
+ case "Home":
60
+ if (currentIsOpen) {
61
+ e.preventDefault();
62
+ highlightFirst();
63
+ }
64
+ break;
65
+ case "End":
66
+ if (currentIsOpen) {
67
+ e.preventDefault();
68
+ highlightLast();
69
+ }
70
+ break;
71
+ case "Enter":
72
+ case " ":
73
+ e.preventDefault();
74
+ if (currentIsOpen && ref.current.highlightedIndex >= 0) {
75
+ ref.current.onSelect(ref.current.highlightedIndex);
76
+ } else if (!currentIsOpen && open) {
77
+ open();
78
+ }
79
+ break;
80
+ case "Escape":
81
+ e.preventDefault();
82
+ ref.current.onClose();
83
+ break;
84
+ case "Tab":
85
+ ref.current.onClose();
86
+ break;
87
+ }
88
+ },
89
+ [move, highlightFirst, highlightLast]
90
+ );
91
+ return { highlightedIndex, setHighlightedIndex, handleKeyDown, highlightFirst };
92
+ }
93
+
94
+ export { useMenuNavigation };
95
+ //# sourceMappingURL=chunk-NZHKNUGE.js.map
96
+ //# sourceMappingURL=chunk-NZHKNUGE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/useMenuNavigation.ts"],"names":[],"mappings":"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","file":"chunk-NZHKNUGE.js","sourcesContent":["import { useState, useCallback, useEffect, useRef } from 'react'\n\nexport interface UseMenuNavigationOptions {\n enabledIndices: number[]\n isOpen: boolean\n onClose: () => void\n onSelect: (index: number) => void\n onOpen?: () => void\n loop?: boolean\n}\n\nexport function useMenuNavigation({\n enabledIndices,\n isOpen,\n onClose,\n onSelect,\n onOpen,\n loop = true,\n}: UseMenuNavigationOptions) {\n const [highlightedIndex, setHighlightedIndex] = useState(-1)\n\n const ref = useRef({ enabledIndices, highlightedIndex, onClose, onSelect, onOpen, isOpen })\n ref.current = { enabledIndices, highlightedIndex, onClose, onSelect, onOpen, isOpen }\n\n useEffect(() => {\n if (!isOpen) setHighlightedIndex(-1)\n }, [isOpen])\n\n const move = useCallback(\n (direction: 1 | -1) => {\n setHighlightedIndex((prev) => {\n const indices = ref.current.enabledIndices\n if (indices.length === 0) return -1\n const pos = indices.indexOf(prev)\n if (pos === -1) {\n return (direction === 1 ? indices[0] : indices[indices.length - 1]) ?? -1\n }\n const next = pos + direction\n if (next >= 0 && next < indices.length) return indices[next] ?? -1\n return loop ? ((direction === 1 ? indices[0] : indices[indices.length - 1]) ?? -1) : prev\n })\n },\n [loop],\n )\n\n const highlightFirst = useCallback(() => {\n setHighlightedIndex(ref.current.enabledIndices[0] ?? -1)\n }, [])\n\n const highlightLast = useCallback(() => {\n const indices = ref.current.enabledIndices\n setHighlightedIndex(indices[indices.length - 1] ?? -1)\n }, [])\n\n const handleKeyDown = useCallback(\n (e: { key: string; preventDefault: () => void }) => {\n const { onOpen: open, isOpen: currentIsOpen } = ref.current\n\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault()\n if (!currentIsOpen && open) { open(); highlightFirst() }\n else move(1)\n break\n case 'ArrowUp':\n e.preventDefault()\n if (!currentIsOpen && open) { open(); highlightLast() }\n else move(-1)\n break\n case 'Home':\n if (currentIsOpen) { e.preventDefault(); highlightFirst() }\n break\n case 'End':\n if (currentIsOpen) { e.preventDefault(); highlightLast() }\n break\n case 'Enter':\n case ' ':\n e.preventDefault()\n if (currentIsOpen && ref.current.highlightedIndex >= 0) {\n ref.current.onSelect(ref.current.highlightedIndex)\n } else if (!currentIsOpen && open) {\n open()\n }\n break\n case 'Escape':\n e.preventDefault()\n ref.current.onClose()\n break\n case 'Tab':\n ref.current.onClose()\n break\n }\n },\n [move, highlightFirst, highlightLast],\n )\n\n return { highlightedIndex, setHighlightedIndex, handleKeyDown, highlightFirst }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { cn } from './chunk-RAS6HUEI.js';
2
2
  import React, { useId } from 'react';
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
4
 
@@ -72,5 +72,5 @@ CheckboxGroup.displayName = "CheckboxGroup";
72
72
  var checkbox_group_default = CheckboxGroup;
73
73
 
74
74
  export { checkbox_group_default };
75
- //# sourceMappingURL=chunk-2PNLIQYM.js.map
76
- //# sourceMappingURL=chunk-2PNLIQYM.js.map
75
+ //# sourceMappingURL=chunk-ON76IMMI.js.map
76
+ //# sourceMappingURL=chunk-ON76IMMI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/checkbox-group/index.tsx"],"names":[],"mappings":";;;;AAOA,IAAM,gBAAgB,KAAA,CAAM,IAAA;AAAA,EAC1B,CAAC;AAAA,IACC,KAAA;AAAA,IACA,UAAA;AAAA,IACA,KAAA;AAAA,IACA,WAAA,GAAc,UAAA;AAAA,IACd,SAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,MAAM,WAAW,KAAA,EAAM;AACvB,IAAA,MAAM,OAAA,GAAU,KAAA,GAAQ,CAAA,oBAAA,EAAuB,QAAQ,CAAA,CAAA,GAAK,MAAA;AAC5D,IAAA,MAAM,SAAA,GAAa,UAAA,IAAc,KAAA,GAAS,CAAA,sBAAA,EAAyB,QAAQ,CAAA,CAAA,GAAK,MAAA;AAEhF,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,IAAA,EAAK,OAAA;AAAA,QACL,iBAAA,EAAiB,OAAA;AAAA,QACjB,kBAAA,EAAkB,SAAA;AAAA,QAClB,WAAW,EAAA,CAAG,oBAAA,EAAsB,QAAA,EAAU,SAAA,EAAW,YAAY,IAAI,CAAA;AAAA,QACzE,WAAA,EAAU,MAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,KAAA,oBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EAAO,aAAU,OAAA,EAC9B,QAAA,kBAAA,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,EAAA,EAAI,OAAA;AAAA,cACJ,SAAA,EAAW,EAAA,CAAG,qBAAA,EAAuB,yCAAA,EAA2C,YAAY,KAAK,CAAA;AAAA,cAEhG,QAAA,EAAA;AAAA;AAAA,WACH,EACF,CAAA;AAAA,0BAEF,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,qBAAA;AAAA,gBACA,MAAA;AAAA,gBACA,WAAA,KAAgB,aACZ,gBAAA,GACA,0BAAA;AAAA,gBACJ,UAAA,EAAY;AAAA,eACd;AAAA,cACA,WAAA,EAAU,OAAA;AAAA,cAET;AAAA;AAAA,WACH;AAAA,UAAA,CACE,cAAc,KAAA,qBACd,GAAA;AAAA,YAAC,GAAA;AAAA,YAAA;AAAA,cACC,EAAA,EAAI,SAAA;AAAA,cACJ,SAAA,EAAW,EAAA;AAAA,gBACT,QAAQ,qBAAA,GAAwB,sBAAA;AAAA,gBAChC,cAAA;AAAA,gBACA,QAAQ,YAAA,GAAe,qBAAA;AAAA,gBACvB,KAAA,GAAQ,UAAA,EAAY,KAAA,GAAQ,UAAA,EAAY;AAAA,eAC1C;AAAA,cACA,WAAA,EAAW,QAAQ,OAAA,GAAU,QAAA;AAAA,cAE5B,QAAA,EAAA,KAAA,IAAS;AAAA;AAAA;AACZ;AAAA;AAAA,KAEJ;AAAA,EAEJ;AACF,CAAA;AAEA,aAAA,CAAc,WAAA,GAAc,eAAA;AAG5B,IAAO,sBAAA,GAAQ","file":"chunk-ON76IMMI.js","sourcesContent":["'use client'\n\nimport React, { useId } from 'react'\n\nimport { cn } from '../utils'\nimport type { CheckboxGroupProps } from './types'\n\nconst CheckboxGroup = React.memo<CheckboxGroupProps>(\n ({\n label,\n helperText,\n error,\n orientation = 'vertical',\n className,\n classNames,\n children,\n ref,\n ...props\n }) => {\n const uniqueId = useId()\n const labelId = label ? `checkboxgroup-label-${uniqueId}` : undefined\n const messageId = (helperText || error) ? `checkboxgroup-message-${uniqueId}` : undefined\n\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-labelledby={labelId}\n aria-describedby={messageId}\n className={cn('checkboxGroup_root', 'w-full', className, classNames?.root)}\n data-slot=\"root\"\n {...props}\n >\n {label && (\n <div className=\"mb-2\" data-slot=\"label\">\n <span\n id={labelId}\n className={cn('checkboxGroup_label', 'text-sm font-medium text-text-secondary', classNames?.label)}\n >\n {label}\n </span>\n </div>\n )}\n <div\n className={cn(\n 'checkboxGroup_group',\n 'flex',\n orientation === 'vertical'\n ? 'flex-col gap-2'\n : 'flex-row flex-wrap gap-4',\n classNames?.group,\n )}\n data-slot=\"group\"\n >\n {children}\n </div>\n {(helperText || error) && (\n <p\n id={messageId}\n className={cn(\n error ? 'checkboxGroup_error' : 'checkboxGroup_helper',\n 'mt-2 text-xs',\n error ? 'text-error' : 'text-text-secondary',\n error ? classNames?.error : classNames?.helper,\n )}\n data-slot={error ? 'error' : 'helper'}\n >\n {error || helperText}\n </p>\n )}\n </div>\n )\n },\n)\n\nCheckboxGroup.displayName = 'CheckboxGroup'\n\nexport type * from './types'\nexport default CheckboxGroup\n"]}
@@ -1,39 +1,20 @@
1
- import { createAllColorVariants, componentColors } from './chunk-POXI7JJ4.js';
2
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { colorVars } from './chunk-GLJDHW73.js';
2
+ import { cn } from './chunk-RAS6HUEI.js';
3
3
  import { cva } from 'class-variance-authority';
4
4
  import React from 'react';
5
5
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
6
 
7
- var processingRingClasses = {
8
- default: "bg-surface/50",
9
- primary: "bg-primary/50",
10
- secondary: "bg-secondary/50",
11
- accent: "bg-accent/50",
12
- success: "bg-success/50",
13
- error: "bg-error/50",
14
- warning: "bg-warning/50",
15
- info: "bg-info/50"
16
- };
17
7
  var badgeVariants = cva(
18
8
  "inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors",
19
9
  {
20
10
  variants: {
21
11
  variant: {
22
- default: "border",
23
- solid: "",
24
- outline: "border",
25
- soft: ""
26
- },
27
- color: {
28
- default: "",
29
- primary: "",
30
- secondary: "",
31
- accent: "",
32
- success: "",
33
- error: "",
34
- warning: "",
35
- info: ""
12
+ default: "bg-slot border border-slot text-slot-fg",
13
+ solid: "bg-slot border border-slot text-slot-fg hover:bg-slot-90",
14
+ outline: "border border-slot text-slot hover:bg-slot-10",
15
+ soft: "bg-slot-10 text-slot"
36
16
  },
17
+ color: colorVars,
37
18
  size: {
38
19
  xs: "text-(length:--badge-font-size-xs) px-(--badge-padding-x-xs) py-(--badge-padding-y-xs)",
39
20
  sm: "text-(length:--badge-font-size-sm) px-(--badge-padding-x-sm) py-(--badge-padding-y-sm)",
@@ -46,12 +27,6 @@ var badgeVariants = cva(
46
27
  circle: "rounded-full aspect-square"
47
28
  }
48
29
  },
49
- compoundVariants: createAllColorVariants(componentColors, [
50
- "default",
51
- "solid",
52
- "outline",
53
- "soft"
54
- ]),
55
30
  defaultVariants: {
56
31
  variant: "solid",
57
32
  color: "primary",
@@ -78,7 +53,7 @@ var placementClasses = {
78
53
  "bottom-right": "bottom-0 right-0 translate-y-1/2 translate-x-1/2",
79
54
  "bottom-left": "bottom-0 left-0 translate-y-1/2 -translate-x-1/2"
80
55
  };
81
- var Badge = ({
56
+ var Badge = React.memo(({
82
57
  children,
83
58
  color = "primary",
84
59
  variant = "solid",
@@ -164,8 +139,8 @@ var Badge = ({
164
139
  "span",
165
140
  {
166
141
  className: cn(
167
- "absolute inset-0 rounded-full animate-ping",
168
- processingRingClasses[color]
142
+ "absolute inset-0 rounded-full animate-ping bg-slot-50",
143
+ colorVars[color]
169
144
  )
170
145
  }
171
146
  );
@@ -201,10 +176,10 @@ var Badge = ({
201
176
  ] });
202
177
  }
203
178
  return renderBadge(standaloneContent);
204
- };
179
+ });
205
180
  Badge.displayName = "Badge";
206
181
  var badge_default = Badge;
207
182
 
208
183
  export { badge_default };
209
- //# sourceMappingURL=chunk-POLVJ36Y.js.map
210
- //# sourceMappingURL=chunk-POLVJ36Y.js.map
184
+ //# sourceMappingURL=chunk-QNLTSHMB.js.map
185
+ //# sourceMappingURL=chunk-QNLTSHMB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/badge/index.tsx"],"names":[],"mappings":"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","file":"chunk-QNLTSHMB.js","sourcesContent":["'use client'\n\nimport { cva } from \"class-variance-authority\";\nimport React from \"react\";\n\nimport { cn } from \"../utils\";\nimport { colorVars } from \"../variants\";\nimport type {\n BadgePlacement,\n BadgeProps,\n BadgeSize,\n} from \"./types\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center justify-center whitespace-nowrap font-medium transition-colors\",\n {\n variants: {\n variant: {\n default: \"bg-slot border border-slot text-slot-fg\",\n solid: \"bg-slot border border-slot text-slot-fg hover:bg-slot-90\",\n outline: \"border border-slot text-slot hover:bg-slot-10\",\n soft: \"bg-slot-10 text-slot\",\n },\n color: colorVars,\n size: {\n xs: \"text-(length:--badge-font-size-xs) px-(--badge-padding-x-xs) py-(--badge-padding-y-xs)\",\n sm: \"text-(length:--badge-font-size-sm) px-(--badge-padding-x-sm) py-(--badge-padding-y-sm)\",\n md: \"text-(length:--badge-font-size-md) px-(--badge-padding-x-md) py-(--badge-padding-y-md)\",\n lg: \"text-(length:--badge-font-size-lg) px-(--badge-padding-x-lg) py-(--badge-padding-y-lg)\",\n },\n shape: {\n rounded: \"rounded\",\n pill: \"rounded-full\",\n circle: \"rounded-full aspect-square\",\n },\n },\n defaultVariants: {\n variant: \"solid\",\n color: \"primary\",\n size: \"sm\",\n shape: \"rounded\",\n },\n },\n);\n\nconst dotSizeClasses: Record<BadgeSize, string> = {\n xs: \"size-1.5\",\n sm: \"size-2\",\n md: \"size-2.5\",\n lg: \"size-3\",\n};\n\nconst iconSizeClasses: Record<BadgeSize, string> = {\n xs: \"size-2.5\",\n sm: \"size-3\",\n md: \"size-3.5\",\n lg: \"size-4\",\n};\n\nconst placementClasses: Record<BadgePlacement, string> = {\n \"top-right\": \"top-0 right-0 -translate-y-1/2 translate-x-1/2\",\n \"top-left\": \"top-0 left-0 -translate-y-1/2 -translate-x-1/2\",\n \"bottom-right\": \"bottom-0 right-0 translate-y-1/2 translate-x-1/2\",\n \"bottom-left\": \"bottom-0 left-0 translate-y-1/2 -translate-x-1/2\",\n};\n\nconst Badge = React.memo<BadgeProps>(({\n children,\n color = \"primary\",\n variant = \"solid\",\n size = \"sm\",\n shape = \"rounded\",\n dot = false,\n count,\n maxCount = 99,\n showZero = false,\n icon,\n placement = \"top-right\",\n offset,\n processing = false,\n invisible = false,\n standalone = false,\n content,\n className,\n wrapperClassName,\n ref,\n}) => {\n const getDisplayCount = () => {\n if (count === undefined) return null;\n if (count === 0 && !showZero) return null;\n if (count > maxCount) return `${maxCount}+`;\n return count;\n };\n\n const displayCount = getDisplayCount();\n\n const isFloatingMode =\n children && (count !== undefined || dot || content) && !standalone;\n\n if (\n count !== undefined &&\n count === 0 &&\n !showZero &&\n !children &&\n !content\n ) {\n return null;\n }\n\n const offsetStyles = offset\n ? {\n \"--badge-offset-x\": `${offset[0]}px`,\n \"--badge-offset-y\": `${offset[1]}px`,\n }\n : undefined;\n\n const renderBadge = (badgeContent: React.ReactNode) => {\n const isIconOnly = !!icon && badgeContent == null && !dot;\n\n return (\n <span\n ref={ref}\n data-slot=\"root\"\n className={cn(\n \"badge_root\",\n badgeVariants({ variant, color, size, shape }),\n dot && [dotSizeClasses[size], \"min-w-0\", \"rounded-full\"],\n isIconOnly && \"aspect-square\",\n processing && \"animate-pulse\",\n invisible && \"opacity-0 scale-0\",\n \"z-10\",\n className,\n )}\n style={{\n ...(dot ? { padding: 0 } : undefined),\n ...(offsetStyles as React.CSSProperties),\n }}\n >\n {!dot && (\n <>\n {icon && (\n <span\n className={cn(\n \"inline-flex items-center justify-center shrink-0\",\n iconSizeClasses[size],\n badgeContent && \"mr-1\",\n )}\n >\n {React.isValidElement(icon)\n ? React.cloneElement(\n icon as React.ReactElement<{ className?: string }>,\n {\n className: cn(\n \"w-full h-full\",\n (icon as React.ReactElement<{ className?: string }>)\n .props.className,\n ),\n },\n )\n : icon}\n </span>\n )}\n {badgeContent}\n </>\n )}\n </span>\n );\n };\n\n const renderProcessingRing = () =>\n processing &&\n dot &&\n !invisible && (\n <span\n className={cn(\n \"absolute inset-0 rounded-full animate-ping bg-slot-50\",\n colorVars[color],\n )}\n />\n );\n\n if (isFloatingMode) {\n const floatingContent = content ?? displayCount;\n\n if (count !== undefined && count === 0 && !showZero && !dot && !content) {\n return (\n <span className={cn(\"relative inline-flex\", wrapperClassName)}>\n {children}\n </span>\n );\n }\n\n return (\n <span className={cn(\"relative inline-flex\", wrapperClassName)}>\n {children}\n <span\n className={cn(\n \"absolute\",\n placementClasses[placement],\n offset &&\n \"translate-x-[calc(var(--tw-translate-x)+var(--badge-offset-x,0px))] translate-y-[calc(var(--tw-translate-y)+var(--badge-offset-y,0px))]\",\n )}\n style={offsetStyles as React.CSSProperties}\n >\n <span className=\"relative inline-flex\">\n {renderBadge(floatingContent)}\n {renderProcessingRing()}\n </span>\n </span>\n </span>\n );\n }\n\n const standaloneContent =\n content ?? (count !== undefined ? displayCount : children);\n\n if (dot && processing) {\n return (\n <span className={cn(\"relative inline-flex\", wrapperClassName)}>\n {renderBadge(null)}\n {renderProcessingRing()}\n </span>\n );\n }\n\n return renderBadge(standaloneContent);\n});\n\nBadge.displayName = \"Badge\";\n\nexport type * from \"./types\";\nexport default Badge;\n"]}
@@ -1,4 +1,4 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
1
+ import { cn } from './chunk-RAS6HUEI.js';
2
2
  import { cva } from 'class-variance-authority';
3
3
  import { Star } from 'lucide-react';
4
4
  import React, { useState, useId, useCallback } from 'react';
@@ -152,29 +152,18 @@ var Rating = React.memo(
152
152
  },
153
153
  [isInteractive, value, count, allowHalf, updateValue]
154
154
  );
155
- const getStarFill = (index) => {
155
+ const getStarFill = useCallback((index) => {
156
156
  const fillValue = displayValue - index;
157
157
  if (fillValue >= 1) return "full";
158
158
  if (fillValue > 0 && fillValue < 1) return "half";
159
159
  return "empty";
160
- };
161
- const getValueText = (val) => {
162
- if (val === 0) return "No rating";
163
- if (val === 1) return "1 star";
164
- return `${val} stars`;
165
- };
166
- return /* @__PURE__ */ jsx("div", { className: cn(ratingVariants({ size }), "rating_root", classNames?.root, className), children: /* @__PURE__ */ jsx(
160
+ }, [displayValue]);
161
+ return /* @__PURE__ */ jsx("div", { "data-slot": "root", className: cn(ratingVariants({ size }), "rating_root", classNames?.root, className), children: /* @__PURE__ */ jsx(
167
162
  "div",
168
163
  {
169
164
  id: `rating-${uniqueId}`,
170
- role: "slider",
165
+ role: "radiogroup",
171
166
  "aria-label": ariaLabel || "Rating",
172
- "aria-valuenow": value,
173
- "aria-valuemin": 0,
174
- "aria-valuemax": count,
175
- "aria-valuetext": getValueText(value),
176
- "aria-disabled": disabled || void 0,
177
- "aria-readonly": readOnly || void 0,
178
167
  tabIndex: isInteractive ? 0 : -1,
179
168
  onKeyDown: handleKeyDown,
180
169
  onMouseLeave: handleMouseLeave,
@@ -182,14 +171,19 @@ var Rating = React.memo(
182
171
  "inline-flex items-center gap-0.5 outline-none",
183
172
  "rating_label",
184
173
  classNames?.label,
185
- isInteractive && "focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 rounded"
174
+ isInteractive && "focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 focus-visible:ring-offset-background rounded"
186
175
  ),
187
176
  children: Array.from({ length: count }, (_, index) => {
188
177
  const fillType = getStarFill(index);
189
178
  const isHovered = hoverValue !== null && index < Math.ceil(hoverValue);
179
+ const starValue = index + 1;
180
+ const isChecked = fillType !== "empty";
190
181
  return /* @__PURE__ */ jsxs(
191
182
  "div",
192
183
  {
184
+ role: "radio",
185
+ "aria-checked": isChecked,
186
+ "aria-label": `${starValue} ${starValue === 1 ? "star" : "stars"}`,
193
187
  className: cn(
194
188
  "relative inline-flex",
195
189
  isInteractive && "cursor-pointer",
@@ -257,5 +251,5 @@ Rating.displayName = "Rating";
257
251
  var rating_default = Rating;
258
252
 
259
253
  export { rating_default };
260
- //# sourceMappingURL=chunk-7UCNBMCV.js.map
261
- //# sourceMappingURL=chunk-7UCNBMCV.js.map
254
+ //# sourceMappingURL=chunk-QZ67UOPR.js.map
255
+ //# sourceMappingURL=chunk-QZ67UOPR.js.map