@mdigital_ui/ui 0.4.3 → 0.4.5

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 (389) hide show
  1. package/README.md +45 -5
  2. package/dist/accordion/index.js +2 -2
  3. package/dist/alert/index.d.ts +6 -0
  4. package/dist/alert/index.d.ts.map +1 -0
  5. package/dist/alert/index.js +5 -0
  6. package/dist/alert/types.d.ts +24 -0
  7. package/dist/alert/types.d.ts.map +1 -0
  8. package/dist/anchor/index.d.ts +6 -0
  9. package/dist/anchor/index.d.ts.map +1 -0
  10. package/dist/anchor/types.d.ts +26 -0
  11. package/dist/anchor/types.d.ts.map +1 -0
  12. package/dist/autocomplete/index.d.ts +6 -0
  13. package/dist/autocomplete/index.d.ts.map +1 -0
  14. package/dist/autocomplete/types.d.ts +39 -0
  15. package/dist/autocomplete/types.d.ts.map +1 -0
  16. package/dist/avatar/index.d.ts.map +1 -1
  17. package/dist/avatar/index.js +2 -1
  18. package/dist/badge/index.js +2 -2
  19. package/dist/breadcrumbs/index.d.ts.map +1 -1
  20. package/dist/breadcrumbs/index.js +4 -4
  21. package/dist/button/index.js +3 -3
  22. package/dist/calendar/index.d.ts +6 -0
  23. package/dist/calendar/index.d.ts.map +1 -0
  24. package/dist/calendar/types.d.ts +29 -0
  25. package/dist/calendar/types.d.ts.map +1 -0
  26. package/dist/card/index.d.ts +1 -1
  27. package/dist/card/index.d.ts.map +1 -1
  28. package/dist/card/index.js +2 -2
  29. package/dist/carousel/carousel-navigation.d.ts.map +1 -1
  30. package/dist/carousel/index.d.ts +1 -2
  31. package/dist/carousel/index.d.ts.map +1 -1
  32. package/dist/carousel/index.js +1 -1
  33. package/dist/carousel/styles.d.ts +12 -0
  34. package/dist/carousel/styles.d.ts.map +1 -0
  35. package/dist/cascader/CascaderMenu.d.ts +41 -0
  36. package/dist/cascader/CascaderMenu.d.ts.map +1 -0
  37. package/dist/cascader/index.d.ts.map +1 -1
  38. package/dist/cascader/index.js +2 -2
  39. package/dist/checkbox/index.d.ts.map +1 -1
  40. package/dist/checkbox/index.js +2 -2
  41. package/dist/{chunk-XWCWTPEM.js → chunk-253JZOYG.js} +4 -4
  42. package/dist/chunk-253JZOYG.js.map +1 -0
  43. package/dist/{chunk-VV3VO5TS.js → chunk-3D77IPKB.js} +7 -15
  44. package/dist/chunk-3D77IPKB.js.map +1 -0
  45. package/dist/{chunk-FCU2ENQQ.js → chunk-3XOHSE3X.js} +12 -7
  46. package/dist/chunk-3XOHSE3X.js.map +1 -0
  47. package/dist/{chunk-4WZDQI22.js → chunk-4HKPDSA6.js} +4 -4
  48. package/dist/chunk-4HKPDSA6.js.map +1 -0
  49. package/dist/{chunk-54Z7XTJA.js → chunk-4ZXHLPRS.js} +32 -34
  50. package/dist/chunk-4ZXHLPRS.js.map +1 -0
  51. package/dist/{chunk-H6PCGSIT.js → chunk-5MBKTMDW.js} +3 -3
  52. package/dist/{chunk-H6PCGSIT.js.map → chunk-5MBKTMDW.js.map} +1 -1
  53. package/dist/{chunk-ZZZGD5EF.js → chunk-5SEVPU6C.js} +3 -3
  54. package/dist/{chunk-ZZZGD5EF.js.map → chunk-5SEVPU6C.js.map} +1 -1
  55. package/dist/{chunk-ZNNIXMJZ.js → chunk-7RT65ZGV.js} +5 -7
  56. package/dist/chunk-7RT65ZGV.js.map +1 -0
  57. package/dist/{chunk-F4GLUQOF.js → chunk-A4MYCEGM.js} +9 -11
  58. package/dist/chunk-A4MYCEGM.js.map +1 -0
  59. package/dist/{chunk-EHNWVQBL.js → chunk-ADZWWBAX.js} +28 -79
  60. package/dist/chunk-ADZWWBAX.js.map +1 -0
  61. package/dist/{chunk-3KISIZGP.js → chunk-AFW2ORFT.js} +12 -4
  62. package/dist/chunk-AFW2ORFT.js.map +1 -0
  63. package/dist/{chunk-5CIJ7UCP.js → chunk-AL2EEKUY.js} +5 -5
  64. package/dist/chunk-AL2EEKUY.js.map +1 -0
  65. package/dist/{chunk-442OQLPK.js → chunk-BGMYX7L5.js} +4 -4
  66. package/dist/chunk-BGMYX7L5.js.map +1 -0
  67. package/dist/chunk-BKLJDEUX.js +857 -0
  68. package/dist/chunk-BKLJDEUX.js.map +1 -0
  69. package/dist/{chunk-QNLTSHMB.js → chunk-C32HL4XU.js} +3 -3
  70. package/dist/{chunk-QNLTSHMB.js.map → chunk-C32HL4XU.js.map} +1 -1
  71. package/dist/chunk-C65SCJD6.js +138 -0
  72. package/dist/chunk-C65SCJD6.js.map +1 -0
  73. package/dist/{chunk-C46VTIW7.js → chunk-CUXQZRDI.js} +6 -13
  74. package/dist/chunk-CUXQZRDI.js.map +1 -0
  75. package/dist/{chunk-MZDAQSI4.js → chunk-DDZCRCTQ.js} +4 -4
  76. package/dist/chunk-DDZCRCTQ.js.map +1 -0
  77. package/dist/{chunk-GLJDHW73.js → chunk-G6QIIWKU.js} +2 -2
  78. package/dist/chunk-G6QIIWKU.js.map +1 -0
  79. package/dist/{chunk-BLFXVSZU.js → chunk-HR5TGNOF.js} +3 -3
  80. package/dist/{chunk-BLFXVSZU.js.map → chunk-HR5TGNOF.js.map} +1 -1
  81. package/dist/{chunk-GPSZJWU3.js → chunk-HSMO2BR4.js} +5 -13
  82. package/dist/chunk-HSMO2BR4.js.map +1 -0
  83. package/dist/{chunk-UIVOI7HE.js → chunk-HVHQA34X.js} +15 -21
  84. package/dist/chunk-HVHQA34X.js.map +1 -0
  85. package/dist/{chunk-3QD7AQX7.js → chunk-I5AD247M.js} +9 -5
  86. package/dist/chunk-I5AD247M.js.map +1 -0
  87. package/dist/{chunk-DF2ICSNI.js → chunk-I7HJBHQU.js} +3 -3
  88. package/dist/{chunk-DF2ICSNI.js.map → chunk-I7HJBHQU.js.map} +1 -1
  89. package/dist/{chunk-NHM6DZOF.js → chunk-J2WIZULN.js} +23 -8
  90. package/dist/chunk-J2WIZULN.js.map +1 -0
  91. package/dist/{chunk-62LTLXVG.js → chunk-JBNFVXH5.js} +14 -9
  92. package/dist/chunk-JBNFVXH5.js.map +1 -0
  93. package/dist/{chunk-BMA4E3T6.js → chunk-JFTSWOGE.js} +9 -21
  94. package/dist/chunk-JFTSWOGE.js.map +1 -0
  95. package/dist/{chunk-G27HGKWO.js → chunk-JIXINKUJ.js} +7 -26
  96. package/dist/chunk-JIXINKUJ.js.map +1 -0
  97. package/dist/{chunk-DOI7OTYV.js → chunk-LJOQ2C5W.js} +4 -4
  98. package/dist/chunk-LJOQ2C5W.js.map +1 -0
  99. package/dist/chunk-LWYZCSX4.js +531 -0
  100. package/dist/chunk-LWYZCSX4.js.map +1 -0
  101. package/dist/{chunk-3FXOQC6P.js → chunk-LXHFGQOI.js} +3 -3
  102. package/dist/chunk-LXHFGQOI.js.map +1 -0
  103. package/dist/{chunk-W5L7C7WS.js → chunk-NMP4HY6M.js} +4 -4
  104. package/dist/chunk-NMP4HY6M.js.map +1 -0
  105. package/dist/{chunk-DPIXBBXK.js → chunk-NTCAZ2LF.js} +30 -10
  106. package/dist/chunk-NTCAZ2LF.js.map +1 -0
  107. package/dist/{chunk-VIK6UTVN.js → chunk-OGB5QPNZ.js} +10 -92
  108. package/dist/chunk-OGB5QPNZ.js.map +1 -0
  109. package/dist/{chunk-YSV5GQS7.js → chunk-OJAHIPPP.js} +21 -114
  110. package/dist/chunk-OJAHIPPP.js.map +1 -0
  111. package/dist/{chunk-AOXTD7QZ.js → chunk-OTNKP5CD.js} +9 -26
  112. package/dist/chunk-OTNKP5CD.js.map +1 -0
  113. package/dist/{chunk-VKY3JXAQ.js → chunk-PB5VGXS5.js} +4 -4
  114. package/dist/chunk-PB5VGXS5.js.map +1 -0
  115. package/dist/chunk-PQOIW5CM.js +27 -0
  116. package/dist/chunk-PQOIW5CM.js.map +1 -0
  117. package/dist/{chunk-CHGABWIV.js → chunk-PRDJLQLB.js} +22 -102
  118. package/dist/chunk-PRDJLQLB.js.map +1 -0
  119. package/dist/{chunk-7OYMEXY3.js → chunk-QEAALOJC.js} +9 -13
  120. package/dist/chunk-QEAALOJC.js.map +1 -0
  121. package/dist/{chunk-LM6CJZX5.js → chunk-ROQGBDET.js} +4 -4
  122. package/dist/{chunk-LM6CJZX5.js.map → chunk-ROQGBDET.js.map} +1 -1
  123. package/dist/{chunk-GGQF5PQN.js → chunk-RRPMZYVN.js} +3 -3
  124. package/dist/{chunk-GGQF5PQN.js.map → chunk-RRPMZYVN.js.map} +1 -1
  125. package/dist/{chunk-USHR3MWQ.js → chunk-S6HO7HUY.js} +8 -6
  126. package/dist/chunk-S6HO7HUY.js.map +1 -0
  127. package/dist/{chunk-K5RV3GF4.js → chunk-SFP77VS3.js} +3 -3
  128. package/dist/{chunk-K5RV3GF4.js.map → chunk-SFP77VS3.js.map} +1 -1
  129. package/dist/{chunk-LXHOS74B.js → chunk-SJLH5ZDW.js} +4 -4
  130. package/dist/{chunk-LXHOS74B.js.map → chunk-SJLH5ZDW.js.map} +1 -1
  131. package/dist/{chunk-5XLCUGLQ.js → chunk-TBKPQOXF.js} +48 -29
  132. package/dist/chunk-TBKPQOXF.js.map +1 -0
  133. package/dist/{chunk-X3CNTOKQ.js → chunk-TDNPACQD.js} +4 -4
  134. package/dist/chunk-TDNPACQD.js.map +1 -0
  135. package/dist/{chunk-QZ67UOPR.js → chunk-TQEMGWZ2.js} +16 -17
  136. package/dist/chunk-TQEMGWZ2.js.map +1 -0
  137. package/dist/{chunk-U3RHF7QF.js → chunk-U4JPTWK6.js} +4 -4
  138. package/dist/chunk-U4JPTWK6.js.map +1 -0
  139. package/dist/{chunk-S7R4NTOI.js → chunk-UFC3RGIN.js} +3 -3
  140. package/dist/{chunk-S7R4NTOI.js.map → chunk-UFC3RGIN.js.map} +1 -1
  141. package/dist/{chunk-2OBMSB5S.js → chunk-W5VLFE4U.js} +5 -5
  142. package/dist/chunk-W5VLFE4U.js.map +1 -0
  143. package/dist/{chunk-6ZPCKFRS.js → chunk-WG5AYAC6.js} +7 -16
  144. package/dist/chunk-WG5AYAC6.js.map +1 -0
  145. package/dist/{chunk-TS2PG6Z4.js → chunk-WQT24BGG.js} +4 -17
  146. package/dist/chunk-WQT24BGG.js.map +1 -0
  147. package/dist/{chunk-FZXMRXWE.js → chunk-X7MF3TIF.js} +8 -13
  148. package/dist/chunk-X7MF3TIF.js.map +1 -0
  149. package/dist/{chunk-SUNCSPDF.js → chunk-XAM5EKOS.js} +6 -19
  150. package/dist/chunk-XAM5EKOS.js.map +1 -0
  151. package/dist/{chunk-XKDN5PWJ.js → chunk-XBXPY7U3.js} +4 -4
  152. package/dist/{chunk-XKDN5PWJ.js.map → chunk-XBXPY7U3.js.map} +1 -1
  153. package/dist/{chunk-5PUATOLR.js → chunk-XCK62GVU.js} +4 -4
  154. package/dist/chunk-XCK62GVU.js.map +1 -0
  155. package/dist/{chunk-AEPBQO7U.js → chunk-XMBZBXXS.js} +5 -13
  156. package/dist/chunk-XMBZBXXS.js.map +1 -0
  157. package/dist/{chunk-2FYXBW4S.js → chunk-XOEEAMMY.js} +23 -36
  158. package/dist/chunk-XOEEAMMY.js.map +1 -0
  159. package/dist/{chunk-HSW64H23.js → chunk-Z3DIBMBQ.js} +20 -34
  160. package/dist/chunk-Z3DIBMBQ.js.map +1 -0
  161. package/dist/clipboard/index.d.ts.map +1 -1
  162. package/dist/clipboard/index.js +2 -2
  163. package/dist/collapse/index.d.ts.map +1 -1
  164. package/dist/collapse/index.js +3 -2
  165. package/dist/color-picker/index.d.ts +8 -0
  166. package/dist/color-picker/index.d.ts.map +1 -0
  167. package/dist/color-picker/types.d.ts +42 -0
  168. package/dist/color-picker/types.d.ts.map +1 -0
  169. package/dist/command/index.d.ts.map +1 -1
  170. package/dist/command/index.js +3 -2
  171. package/dist/context-menu/index.d.ts +2 -2
  172. package/dist/context-menu/index.d.ts.map +1 -1
  173. package/dist/context-menu/index.js +2 -1
  174. package/dist/context-menu/types.d.ts +12 -0
  175. package/dist/context-menu/types.d.ts.map +1 -1
  176. package/dist/date-picker/CalendarHeader.d.ts +18 -0
  177. package/dist/date-picker/CalendarHeader.d.ts.map +1 -0
  178. package/dist/date-picker/MonthSelector.d.ts +11 -0
  179. package/dist/date-picker/MonthSelector.d.ts.map +1 -0
  180. package/dist/date-picker/PickerWrapper.d.ts +18 -0
  181. package/dist/date-picker/PickerWrapper.d.ts.map +1 -0
  182. package/dist/date-picker/RangePicker.d.ts +4 -0
  183. package/dist/date-picker/RangePicker.d.ts.map +1 -0
  184. package/dist/date-picker/TimePicker.d.ts +4 -0
  185. package/dist/date-picker/TimePicker.d.ts.map +1 -0
  186. package/dist/date-picker/YearSelector.d.ts +10 -0
  187. package/dist/date-picker/YearSelector.d.ts.map +1 -0
  188. package/dist/date-picker/index.d.ts +6 -6
  189. package/dist/date-picker/index.d.ts.map +1 -1
  190. package/dist/date-picker/index.js +3 -3
  191. package/dist/date-picker/shared.d.ts +3 -0
  192. package/dist/date-picker/shared.d.ts.map +1 -0
  193. package/dist/date-picker/utils.d.ts +1 -1
  194. package/dist/date-picker/utils.d.ts.map +1 -1
  195. package/dist/descriptions/index.d.ts.map +1 -1
  196. package/dist/descriptions/index.js +2 -1
  197. package/dist/divider/index.d.ts.map +1 -1
  198. package/dist/divider/index.js +2 -2
  199. package/dist/drawer/index.js +1 -1
  200. package/dist/dropdown/index.d.ts.map +1 -1
  201. package/dist/dropdown/index.js +3 -3
  202. package/dist/fetching-overlay/index.js +3 -3
  203. package/dist/float-button/index.d.ts +9 -0
  204. package/dist/float-button/index.d.ts.map +1 -0
  205. package/dist/float-button/types.d.ts +45 -0
  206. package/dist/float-button/types.d.ts.map +1 -0
  207. package/dist/float-input/index.d.ts.map +1 -1
  208. package/dist/float-input/index.js +3 -3
  209. package/dist/index.d.ts +28 -2
  210. package/dist/index.d.ts.map +1 -1
  211. package/dist/index.js +3020 -81
  212. package/dist/index.js.map +1 -1
  213. package/dist/input/index.d.ts.map +1 -1
  214. package/dist/input/index.js +3 -3
  215. package/dist/input-otp/index.d.ts.map +1 -1
  216. package/dist/input-otp/index.js +1 -1
  217. package/dist/input-password/index.d.ts.map +1 -1
  218. package/dist/input-password/index.js +4 -4
  219. package/dist/kbd/index.js +2 -2
  220. package/dist/link/index.d.ts.map +1 -1
  221. package/dist/link/index.js +2 -1
  222. package/dist/mentions/index.d.ts +6 -0
  223. package/dist/mentions/index.d.ts.map +1 -0
  224. package/dist/mentions/types.d.ts +36 -0
  225. package/dist/mentions/types.d.ts.map +1 -0
  226. package/dist/menubar/index.d.ts.map +1 -1
  227. package/dist/menubar/index.js +3 -3
  228. package/dist/modal/index.d.ts +1 -1
  229. package/dist/modal/index.d.ts.map +1 -1
  230. package/dist/modal/index.js +1 -1
  231. package/dist/modal/types.d.ts +8 -0
  232. package/dist/modal/types.d.ts.map +1 -1
  233. package/dist/multi-select/index.d.ts.map +1 -1
  234. package/dist/multi-select/index.js +5 -4
  235. package/dist/navigation-menu/index.d.ts.map +1 -1
  236. package/dist/navigation-menu/index.js +1 -1
  237. package/dist/navigation-menu/types.d.ts +2 -0
  238. package/dist/navigation-menu/types.d.ts.map +1 -1
  239. package/dist/notification/index.d.ts.map +1 -1
  240. package/dist/notification/index.js +2 -2
  241. package/dist/number-input/index.d.ts.map +1 -1
  242. package/dist/number-input/index.js +4 -3
  243. package/dist/pagination/index.d.ts.map +1 -1
  244. package/dist/pagination/index.js +2 -2
  245. package/dist/popover/index.js +2 -2
  246. package/dist/progress/index.d.ts.map +1 -1
  247. package/dist/progress/index.js +2 -2
  248. package/dist/qr-code/index.d.ts +6 -0
  249. package/dist/qr-code/index.d.ts.map +1 -0
  250. package/dist/qr-code/types.d.ts +49 -0
  251. package/dist/qr-code/types.d.ts.map +1 -0
  252. package/dist/radio/index.js +2 -2
  253. package/dist/rating/index.d.ts.map +1 -1
  254. package/dist/rating/index.js +2 -1
  255. package/dist/resizable/index.d.ts +7 -0
  256. package/dist/resizable/index.d.ts.map +1 -0
  257. package/dist/resizable/types.d.ts +8 -0
  258. package/dist/resizable/types.d.ts.map +1 -0
  259. package/dist/result/index.d.ts +6 -0
  260. package/dist/result/index.d.ts.map +1 -0
  261. package/dist/result/types.d.ts +22 -0
  262. package/dist/result/types.d.ts.map +1 -0
  263. package/dist/scroll-area/index.d.ts.map +1 -1
  264. package/dist/scroll-area/index.js +1 -1
  265. package/dist/select/index.d.ts.map +1 -1
  266. package/dist/select/index.js +5 -4
  267. package/dist/skeleton/index.js +2 -2
  268. package/dist/slider/index.js +2 -2
  269. package/dist/spinner/index.js +2 -2
  270. package/dist/stepper/index.d.ts +3 -3
  271. package/dist/stepper/index.d.ts.map +1 -1
  272. package/dist/stepper/index.js +2 -2
  273. package/dist/switch/index.js +2 -2
  274. package/dist/table/TableHeaderCell.d.ts.map +1 -1
  275. package/dist/table/index.d.ts +1 -1
  276. package/dist/table/index.d.ts.map +1 -1
  277. package/dist/table/index.js +9 -9
  278. package/dist/table/types.d.ts +6 -0
  279. package/dist/table/types.d.ts.map +1 -1
  280. package/dist/tabs/index.d.ts.map +1 -1
  281. package/dist/tabs/index.js +2 -2
  282. package/dist/tag/index.d.ts.map +1 -1
  283. package/dist/tag/index.js +2 -2
  284. package/dist/tags-input/index.d.ts +6 -0
  285. package/dist/tags-input/index.d.ts.map +1 -0
  286. package/dist/tags-input/types.d.ts +36 -0
  287. package/dist/tags-input/types.d.ts.map +1 -0
  288. package/dist/textarea/index.d.ts.map +1 -1
  289. package/dist/textarea/index.js +1 -1
  290. package/dist/theme/ThemeProvider.d.ts +11 -3
  291. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  292. package/dist/theme/index.js +1 -1
  293. package/dist/timeline/index.d.ts.map +1 -1
  294. package/dist/timeline/index.js +2 -1
  295. package/dist/toast/index.js +2 -2
  296. package/dist/toggle/index.js +2 -2
  297. package/dist/toggle-group/index.d.ts.map +1 -1
  298. package/dist/toggle-group/index.js +2 -2
  299. package/dist/tooltip/index.js +2 -2
  300. package/dist/tour/index.d.ts +6 -0
  301. package/dist/tour/index.d.ts.map +1 -0
  302. package/dist/tour/types.d.ts +45 -0
  303. package/dist/tour/types.d.ts.map +1 -0
  304. package/dist/transfer/index.d.ts.map +1 -1
  305. package/dist/transfer/index.js +3 -3
  306. package/dist/tree/index.d.ts.map +1 -1
  307. package/dist/tree/index.js +1 -1
  308. package/dist/tree-select/index.d.ts.map +1 -1
  309. package/dist/tree-select/index.js +4 -4
  310. package/dist/typography/index.d.ts +8 -0
  311. package/dist/typography/index.d.ts.map +1 -0
  312. package/dist/typography/types.d.ts +33 -0
  313. package/dist/typography/types.d.ts.map +1 -0
  314. package/dist/upload/index.d.ts.map +1 -1
  315. package/dist/upload/index.js +2 -1
  316. package/dist/upload/utils.d.ts +1 -1
  317. package/dist/upload/utils.d.ts.map +1 -1
  318. package/dist/variants.d.ts +1 -1
  319. package/dist/variants.d.ts.map +1 -1
  320. package/dist/watermark/index.d.ts +6 -0
  321. package/dist/watermark/index.d.ts.map +1 -0
  322. package/dist/watermark/types.d.ts +24 -0
  323. package/dist/watermark/types.d.ts.map +1 -0
  324. package/package.json +6 -3
  325. package/styles/global.css +506 -6787
  326. package/styles/themes/dark.css +15 -5
  327. package/styles/themes/light.css +20 -2
  328. package/styles/themes/presets/corporate.css +2 -0
  329. package/styles/themes/presets/minimal.css +2 -0
  330. package/styles/themes/presets/vibrant.css +2 -0
  331. package/dist/chunk-2FYXBW4S.js.map +0 -1
  332. package/dist/chunk-2OBMSB5S.js.map +0 -1
  333. package/dist/chunk-3FXOQC6P.js.map +0 -1
  334. package/dist/chunk-3KISIZGP.js.map +0 -1
  335. package/dist/chunk-3QD7AQX7.js.map +0 -1
  336. package/dist/chunk-442OQLPK.js.map +0 -1
  337. package/dist/chunk-4WZDQI22.js.map +0 -1
  338. package/dist/chunk-54Z7XTJA.js.map +0 -1
  339. package/dist/chunk-5CIJ7UCP.js.map +0 -1
  340. package/dist/chunk-5PUATOLR.js.map +0 -1
  341. package/dist/chunk-5XLCUGLQ.js.map +0 -1
  342. package/dist/chunk-62LTLXVG.js.map +0 -1
  343. package/dist/chunk-6ZPCKFRS.js.map +0 -1
  344. package/dist/chunk-7OYMEXY3.js.map +0 -1
  345. package/dist/chunk-AEPBQO7U.js.map +0 -1
  346. package/dist/chunk-AOXTD7QZ.js.map +0 -1
  347. package/dist/chunk-BMA4E3T6.js.map +0 -1
  348. package/dist/chunk-C46VTIW7.js.map +0 -1
  349. package/dist/chunk-CHGABWIV.js.map +0 -1
  350. package/dist/chunk-DOI7OTYV.js.map +0 -1
  351. package/dist/chunk-DPIXBBXK.js.map +0 -1
  352. package/dist/chunk-EC5DXYME.js +0 -1273
  353. package/dist/chunk-EC5DXYME.js.map +0 -1
  354. package/dist/chunk-EHNWVQBL.js.map +0 -1
  355. package/dist/chunk-F4GLUQOF.js.map +0 -1
  356. package/dist/chunk-FCU2ENQQ.js.map +0 -1
  357. package/dist/chunk-FZXMRXWE.js.map +0 -1
  358. package/dist/chunk-G27HGKWO.js.map +0 -1
  359. package/dist/chunk-GLJDHW73.js.map +0 -1
  360. package/dist/chunk-GPSZJWU3.js.map +0 -1
  361. package/dist/chunk-HSW64H23.js.map +0 -1
  362. package/dist/chunk-KZZJAZ5M.js +0 -146
  363. package/dist/chunk-KZZJAZ5M.js.map +0 -1
  364. package/dist/chunk-MZDAQSI4.js.map +0 -1
  365. package/dist/chunk-NHM6DZOF.js.map +0 -1
  366. package/dist/chunk-QZ67UOPR.js.map +0 -1
  367. package/dist/chunk-SHUHAORE.js +0 -821
  368. package/dist/chunk-SHUHAORE.js.map +0 -1
  369. package/dist/chunk-SUNCSPDF.js.map +0 -1
  370. package/dist/chunk-TS2PG6Z4.js.map +0 -1
  371. package/dist/chunk-U3RHF7QF.js.map +0 -1
  372. package/dist/chunk-UIVOI7HE.js.map +0 -1
  373. package/dist/chunk-USHR3MWQ.js.map +0 -1
  374. package/dist/chunk-VIK6UTVN.js.map +0 -1
  375. package/dist/chunk-VKY3JXAQ.js.map +0 -1
  376. package/dist/chunk-VV3VO5TS.js.map +0 -1
  377. package/dist/chunk-W5L7C7WS.js.map +0 -1
  378. package/dist/chunk-X3CNTOKQ.js.map +0 -1
  379. package/dist/chunk-XWCWTPEM.js.map +0 -1
  380. package/dist/chunk-YSV5GQS7.js.map +0 -1
  381. package/dist/chunk-ZNNIXMJZ.js.map +0 -1
  382. package/dist/empty/index.d.ts +0 -6
  383. package/dist/empty/index.d.ts.map +0 -1
  384. package/dist/empty/index.js +0 -4
  385. package/dist/empty/types.d.ts +0 -25
  386. package/dist/empty/types.d.ts.map +0 -1
  387. package/dist/styles/tokens.d.ts +0 -428
  388. package/dist/styles/tokens.d.ts.map +0 -1
  389. /package/dist/{empty → alert}/index.js.map +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cascader/index.tsx"],"names":["selectedPath","error","label"],"mappings":"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","file":"chunk-SHUHAORE.js","sourcesContent":["'use client'\n\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\nimport { cva } from \"class-variance-authority\";\nimport { Check, ChevronDown, ChevronRight, Loader2, X } from \"lucide-react\";\nimport React from \"react\";\n\nimport type { ComponentColor } from \"../types\";\nimport { cn, iconSizes } from \"../utils\";\nimport { colorVars } from \"../variants\";\nimport type { CascaderOption, CascaderProps, CascaderSize } from \"./types\";\n\nconst cascaderTriggerVariants = cva(\n \"flex items-center justify-between gap-2 rounded-md border transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background\",\n {\n variants: {\n status: {\n default: \"bg-background border-border hover:border-primary/50\",\n error: \"border-error\",\n warning: \"border-warning\",\n info: \"border-info\",\n success: \"border-success\",\n },\n size: {\n xs: \"h-(--select-height-xs) px-(--select-padding-x-xs) text-xs\",\n sm: \"h-(--select-height-sm) px-(--select-padding-x-sm) text-sm\",\n md: \"h-(--select-height-md) px-(--select-padding-x-md) text-base\",\n lg: \"h-(--select-height-lg) px-(--select-padding-x-lg) text-lg\",\n },\n fullWidth: {\n true: \"w-full\",\n false: \"max-w-full\",\n },\n },\n defaultVariants: {\n status: \"default\",\n size: \"md\",\n fullWidth: true,\n },\n },\n);\n\nconst cascaderMenuVariants = cva(\n \"overflow-auto rounded-md border bg-background w-[200px] max-h-[300px]\",\n {\n variants: {\n size: {\n xs: \"w-[160px]\",\n sm: \"w-[180px]\",\n md: \"w-[200px]\",\n lg: \"w-[220px]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n },\n);\n\nconst cascaderItemVariants = cva(\n \"relative cursor-pointer select-none text-text-primary transition-colors flex items-center gap-2 w-full\",\n {\n variants: {\n size: {\n xs: \"px-2 py-1 text-xs min-h-[28px]\",\n sm: \"px-2.5 py-1.5 text-sm min-h-[32px]\",\n md: \"px-3 py-2 text-base min-h-[36px]\",\n lg: \"px-3.5 py-2.5 text-lg min-h-[44px]\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"hover:bg-surface\",\n },\n active: {\n true: \"bg-surface\",\n false: \"\",\n },\n selected: {\n true: \"font-medium\",\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n disabled: false,\n active: false,\n selected: false,\n },\n },\n);\n\nconst tagSizeClasses: Record<CascaderSize, string> = {\n xs: \"text-[10px] px-1 py-0\",\n sm: \"text-xs px-1.5 py-0.5\",\n md: \"text-sm px-2 py-0.5\",\n lg: \"text-sm px-2.5 py-1\",\n};\n\nconst accentBgClasses: Record<ComponentColor, string> = {\n default: \"bg-primary/10 text-primary\",\n primary: \"bg-primary/10 text-primary\",\n secondary: \"bg-secondary/10 text-secondary\",\n accent: \"bg-accent/10 text-accent\",\n success: \"bg-success/10 text-success\",\n error: \"bg-error/10 text-error\",\n warning: \"bg-warning/10 text-warning\",\n info: \"bg-info/10 text-info\",\n};\n\nconst checkboxCheckedClasses: Record<ComponentColor, string> = {\n default: \"bg-primary border-primary\",\n primary: \"bg-primary border-primary\",\n secondary: \"bg-secondary border-secondary\",\n accent: \"bg-accent border-accent\",\n success: \"bg-success border-success\",\n error: \"bg-error border-error\",\n warning: \"bg-warning border-warning\",\n info: \"bg-info border-info\",\n};\n\nconst indeterminateBgClasses: Record<ComponentColor, string> = {\n default: \"bg-primary\",\n primary: \"bg-primary\",\n secondary: \"bg-secondary\",\n accent: \"bg-accent\",\n success: \"bg-success\",\n error: \"bg-error\",\n warning: \"bg-warning\",\n info: \"bg-info\",\n};\n\nconst Cascader = React.memo<CascaderProps>(\n ({\n options,\n value,\n defaultValue,\n onChange,\n onSelect,\n placeholder = \"Please select\",\n label,\n helperText,\n messagePosition = \"bottom\",\n color = \"default\",\n size = \"md\",\n placement = \"bottomLeft\",\n disabled = false,\n loading = false,\n error,\n warning,\n info,\n success,\n fullWidth = true,\n expandTrigger = \"hover\",\n multiple = false,\n maxTagCount = 3,\n clearable = true,\n showPath = true,\n pathSeparator = \" / \",\n changeOnSelect = false,\n loadData,\n displayRender,\n tagRender,\n emptyContent = \"No options\",\n className,\n classNames,\n required,\n ref,\n onOpenChange,\n }) => {\n const [isOpen, setIsOpen] = React.useState(false);\n const [internalValue, setInternalValue] = React.useState<\n string[] | string[][]\n >(defaultValue || []);\n const [activeMenus, setActiveMenus] = React.useState<CascaderOption[][]>([\n options,\n ]);\n const [hoveredPath, setHoveredPath] = React.useState<number[]>([]);\n const [selectedPath, setSelectedPath] = React.useState<string[]>([]);\n const [focusedIndex, setFocusedIndex] = React.useState<{\n level: number;\n index: number;\n } | null>(null);\n\n const containerRef = React.useRef<HTMLDivElement>(null);\n const menuRefs = React.useRef<(HTMLDivElement | null)[]>([]);\n\n const currentValue = value !== undefined ? value : internalValue;\n\n const normalizedValue: string[][] = React.useMemo(() => {\n if (multiple) {\n return Array.isArray(currentValue[0])\n ? (currentValue as string[][])\n : [];\n }\n return Array.isArray(currentValue) &&\n currentValue.length > 0 &&\n !Array.isArray(currentValue[0])\n ? [currentValue as string[]]\n : [];\n }, [currentValue, multiple]);\n\n const selectedPathSet = React.useMemo(() => {\n const set = new Set<string>();\n for (const path of normalizedValue) {\n set.add(path.join('\\0'));\n }\n return set;\n }, [normalizedValue]);\n\n const selectionStateMap = React.useMemo(() => {\n if (!multiple) return null;\n const map = new Map<string, { checked: boolean; indeterminate: boolean }>();\n\n const collectLeafPaths = (option: CascaderOption, basePath: string[]): string[][] => {\n const paths: string[][] = [];\n const fullPath = [...basePath, option.value];\n if (!option.children || option.children.length === 0) {\n paths.push(fullPath);\n } else {\n for (const child of option.children) {\n paths.push(...collectLeafPaths(child, fullPath));\n }\n }\n return paths;\n };\n\n const computeForOption = (option: CascaderOption, basePath: string[]) => {\n const key = [...basePath, option.value].join('\\0');\n\n if (!option.children || option.children.length === 0) {\n const isSelected = selectedPathSet.has(key);\n map.set(key, { checked: isSelected, indeterminate: false });\n } else {\n for (const child of option.children) {\n computeForOption(child, [...basePath, option.value]);\n }\n const leafPaths = collectLeafPaths(option, basePath);\n let selectedCount = 0;\n for (const lp of leafPaths) {\n if (selectedPathSet.has(lp.join('\\0'))) selectedCount++;\n }\n map.set(key, {\n checked: selectedCount === leafPaths.length && leafPaths.length > 0,\n indeterminate: selectedCount > 0 && selectedCount < leafPaths.length,\n });\n }\n };\n\n for (const option of options) {\n computeForOption(option, []);\n }\n\n return map;\n }, [normalizedValue, multiple, options, selectedPathSet]);\n\n let status: \"default\" | \"error\" | \"warning\" | \"info\" | \"success\" =\n \"default\";\n if (error) status = \"error\";\n else if (warning) status = \"warning\";\n else if (success) status = \"success\";\n else if (info) status = \"info\";\n\n const helperMessage = error || warning || info || success || helperText;\n\n const expandToPath = React.useCallback(\n (path: string[]) => {\n const menus: CascaderOption[][] = [options];\n let currentOptions = options;\n\n for (const val of path) {\n const option = currentOptions.find((opt) => opt.value === val);\n if (option?.children && option.children.length > 0) {\n menus.push(option.children);\n currentOptions = option.children;\n }\n }\n\n setActiveMenus(menus);\n },\n [options],\n );\n\n const handleOpenChange = React.useCallback(\n (open: boolean) => {\n if (disabled || loading) return;\n\n setIsOpen(open);\n onOpenChange?.(open);\n\n if (open) {\n setActiveMenus([options]);\n setHoveredPath([]);\n setFocusedIndex(null);\n\n if (normalizedValue.length > 0 && !multiple) {\n setSelectedPath(normalizedValue[0] || []);\n expandToPath(normalizedValue[0] || []);\n } else {\n setSelectedPath([]);\n }\n }\n },\n [disabled, loading, options, normalizedValue, multiple, onOpenChange, expandToPath],\n );\n\n const getSelectedOptions = React.useCallback(\n (path: string[]): CascaderOption[] => {\n const selected: CascaderOption[] = [];\n let currentOptions = options;\n\n for (const val of path) {\n const option = currentOptions.find((opt) => opt.value === val);\n if (option) {\n selected.push(option);\n currentOptions = option.children || [];\n }\n }\n\n return selected;\n },\n [options],\n );\n\n const isPathSelected = React.useCallback(\n (path: string[]): boolean => {\n return normalizedValue.some(\n (selectedPath) =>\n selectedPath.length === path.length &&\n selectedPath.every((val, idx) => val === path[idx]),\n );\n },\n [normalizedValue],\n );\n\n const getAllLeafPaths = React.useCallback(\n (option: CascaderOption, currentPath: string[]): string[][] => {\n const paths: string[][] = [];\n const fullPath = [...currentPath, option.value];\n\n if (!option.children || option.children.length === 0) {\n paths.push(fullPath);\n } else {\n option.children.forEach((child) => {\n paths.push(...getAllLeafPaths(child, fullPath));\n });\n }\n\n return paths;\n },\n [],\n );\n\n const handleItemClick = React.useCallback(\n async (option: CascaderOption, level: number) => {\n if (option.disabled) return;\n\n const newPath = [...selectedPath.slice(0, level), option.value];\n setSelectedPath(newPath);\n\n if (loadData && !option.children && !option.isLeaf && !option.loading) {\n const selectedOpts = getSelectedOptions(newPath);\n try {\n await loadData(selectedOpts);\n } catch (error) {\n // loadData consumer should handle their own errors\n }\n return;\n }\n\n const hasChildren = option.children && option.children.length > 0;\n const isLeaf = !hasChildren;\n\n if (hasChildren && !multiple) {\n setActiveMenus((prev) => [\n ...prev.slice(0, level + 1),\n option.children!,\n ]);\n\n if (changeOnSelect) {\n const selectedOpts = getSelectedOptions(newPath);\n if (value === undefined) setInternalValue(newPath);\n onChange?.(newPath, selectedOpts);\n }\n } else if (hasChildren && multiple) {\n const leafPaths = getAllLeafPaths(\n option,\n selectedPath.slice(0, level),\n );\n const allSelected = leafPaths.every((path) => isPathSelected(path));\n\n let newValue: string[][];\n if (allSelected) {\n newValue = normalizedValue.filter(\n (sp) =>\n !leafPaths.some(\n (lp) =>\n lp.length === sp.length && lp.every((v, i) => v === sp[i]),\n ),\n );\n } else {\n const pathsToAdd = leafPaths.filter(\n (path) => !isPathSelected(path),\n );\n newValue = [...normalizedValue, ...pathsToAdd];\n }\n\n const newSelectedOptions = newValue.map((path) =>\n getSelectedOptions(path),\n );\n if (value === undefined) setInternalValue(newValue);\n onChange?.(newValue, newSelectedOptions);\n\n setActiveMenus((prev) => [\n ...prev.slice(0, level + 1),\n option.children!,\n ]);\n } else if (isLeaf) {\n if (multiple) {\n let newValue: string[][];\n if (isPathSelected(newPath)) {\n newValue = normalizedValue.filter(\n (path) =>\n !(\n path.length === newPath.length &&\n path.every((val, idx) => val === newPath[idx])\n ),\n );\n } else {\n newValue = [...normalizedValue, newPath];\n }\n\n const newSelectedOptions = newValue.map((path) =>\n getSelectedOptions(path),\n );\n if (value === undefined) setInternalValue(newValue);\n onChange?.(newValue, newSelectedOptions);\n } else {\n const selectedOpts = getSelectedOptions(newPath);\n if (value === undefined) setInternalValue(newPath);\n onChange?.(newPath, selectedOpts);\n onSelect?.(newPath, selectedOpts);\n handleOpenChange(false);\n }\n }\n },\n [\n selectedPath,\n value,\n onChange,\n onSelect,\n getSelectedOptions,\n multiple,\n isPathSelected,\n normalizedValue,\n getAllLeafPaths,\n changeOnSelect,\n loadData,\n handleOpenChange,\n ],\n );\n\n const handleItemHover = React.useCallback(\n (option: CascaderOption, level: number, index: number) => {\n if (expandTrigger !== \"hover\" || option.disabled) return;\n\n setHoveredPath((prev) => [...prev.slice(0, level), index]);\n setSelectedPath((prev) => [...prev.slice(0, level), option.value]);\n\n if (option.children && option.children.length > 0) {\n setActiveMenus((prev) => [\n ...prev.slice(0, level + 1),\n option.children!,\n ]);\n } else {\n setActiveMenus((prev) => prev.slice(0, level + 1));\n }\n },\n [expandTrigger],\n );\n\n const handleClear = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n const emptyValue = multiple ? [] : [];\n if (value === undefined) setInternalValue(emptyValue);\n onChange?.(emptyValue, []);\n },\n [value, onChange, multiple],\n );\n\n const removeSelection = React.useCallback(\n (pathToRemove: string[], e: React.MouseEvent) => {\n e.stopPropagation();\n if (!multiple) return;\n\n const newValue = normalizedValue.filter(\n (path) =>\n !(\n path.length === pathToRemove.length &&\n path.every((val, idx) => val === pathToRemove[idx])\n ),\n );\n\n const newSelectedOptions = newValue.map((path) =>\n getSelectedOptions(path),\n );\n if (value === undefined) setInternalValue(newValue);\n onChange?.(newValue, newSelectedOptions);\n },\n [multiple, normalizedValue, value, onChange, getSelectedOptions],\n );\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent) => {\n if (!isOpen) {\n if (e.key === \"Enter\" || e.key === \" \" || e.key === \"ArrowDown\") {\n e.preventDefault();\n handleOpenChange(true);\n }\n return;\n }\n\n switch (e.key) {\n case \"Escape\":\n e.preventDefault();\n handleOpenChange(false);\n break;\n\n case \"ArrowDown\":\n e.preventDefault();\n if (focusedIndex === null) {\n setFocusedIndex({ level: 0, index: 0 });\n } else {\n const currentMenu = activeMenus[focusedIndex.level];\n if (currentMenu && focusedIndex.index < currentMenu.length - 1) {\n setFocusedIndex({\n ...focusedIndex,\n index: focusedIndex.index + 1,\n });\n }\n }\n break;\n\n case \"ArrowUp\":\n e.preventDefault();\n if (focusedIndex && focusedIndex.index > 0) {\n setFocusedIndex({\n ...focusedIndex,\n index: focusedIndex.index - 1,\n });\n }\n break;\n\n case \"ArrowRight\":\n e.preventDefault();\n if (focusedIndex) {\n const currentMenu = activeMenus[focusedIndex.level];\n const option = currentMenu?.[focusedIndex.index];\n if (option?.children && option.children.length > 0) {\n setActiveMenus((prev) => [\n ...prev.slice(0, focusedIndex.level + 1),\n option.children!,\n ]);\n setFocusedIndex({ level: focusedIndex.level + 1, index: 0 });\n }\n }\n break;\n\n case \"ArrowLeft\":\n e.preventDefault();\n if (focusedIndex && focusedIndex.level > 0) {\n const parentLevel = focusedIndex.level - 1;\n const parentIndex = hoveredPath[parentLevel] ?? 0;\n setActiveMenus((prev) => prev.slice(0, focusedIndex.level));\n setFocusedIndex({ level: parentLevel, index: parentIndex });\n }\n break;\n\n case \"Enter\":\n e.preventDefault();\n if (focusedIndex) {\n const currentMenu = activeMenus[focusedIndex.level];\n const option = currentMenu?.[focusedIndex.index];\n if (option) {\n handleItemClick(option, focusedIndex.level);\n }\n }\n break;\n }\n },\n [isOpen, focusedIndex, activeMenus, handleOpenChange, handleItemClick],\n );\n\n const displayValue = React.useMemo(() => {\n if (normalizedValue.length === 0) return null;\n\n if (displayRender) {\n if (multiple) {\n const allLabels = normalizedValue.map((path) =>\n getSelectedOptions(path).map((opt) => opt.label),\n );\n const allOptions = normalizedValue.map((path) =>\n getSelectedOptions(path),\n );\n return displayRender(allLabels, allOptions);\n } else {\n const selectedOpts = getSelectedOptions(normalizedValue[0] || []);\n const labels = selectedOpts.map((opt) => opt.label);\n return displayRender(labels, selectedOpts);\n }\n }\n\n if (!multiple) {\n const selectedOpts = getSelectedOptions(normalizedValue[0] || []);\n const labels = selectedOpts.map((opt) => opt.label);\n if (showPath) {\n return labels.join(pathSeparator);\n }\n return labels[labels.length - 1] || null;\n }\n\n return null;\n }, [\n normalizedValue,\n displayRender,\n getSelectedOptions,\n multiple,\n showPath,\n pathSeparator,\n ]);\n\n const showClearButton =\n clearable &&\n normalizedValue.length > 0 &&\n normalizedValue[0]?.[0] &&\n !disabled &&\n !loading;\n\n const renderCascaderMenus = () => {\n return (\n <div className={cn(\"flex [&>*:not(:first-child)]:rounded-l-none [&>*:not(:last-child)]:border-r-0 [&>*:not(:last-child)]:rounded-r-none cascader_dropdown\", classNames?.dropdown)} data-slot=\"dropdown\">\n {activeMenus.map((menu, level) => (\n <div\n key={level}\n ref={(el) => {\n menuRefs.current[level] = el;\n }}\n role=\"listbox\"\n className={cn(cascaderMenuVariants({ size }), \"border-border cascader_menu\", classNames?.menu)}\n data-slot=\"menu\"\n >\n {menu.length === 0 ? (\n <div className=\"px-3 py-6 text-center text-text-secondary text-sm\">\n {emptyContent}\n </div>\n ) : (\n menu.map((option, index) => {\n const isActive =\n selectedPath[level] === option.value ||\n (expandTrigger === \"hover\" && hoveredPath[level] === index);\n const isFocused =\n focusedIndex?.level === level &&\n focusedIndex?.index === index;\n const currentPath = selectedPath.slice(0, level);\n const fullPath = [...currentPath, option.value];\n const selectionState = multiple && selectionStateMap\n ? selectionStateMap.get(fullPath.join('\\0')) ?? { checked: false, indeterminate: false }\n : null;\n const isLeafSelected =\n !multiple &&\n selectedPathSet.has(fullPath.join('\\0')) &&\n (!option.children || option.children.length === 0);\n\n return (\n <div\n key={option.value}\n role=\"option\"\n aria-selected={isLeafSelected || (selectionState?.checked ?? false)}\n aria-disabled={option.disabled}\n className={cn(\n cascaderItemVariants({\n size,\n disabled: !!option.disabled,\n active: isActive || isFocused,\n selected: isLeafSelected,\n }),\n isLeafSelected && accentBgClasses[color],\n \"cascader_option\",\n classNames?.option\n )}\n onClick={() => handleItemClick(option, level)}\n onMouseEnter={() => handleItemHover(option, level, index)}\n data-slot=\"option\"\n >\n {multiple && (\n <div\n className={cn(\n \"w-4 h-4 border rounded flex items-center justify-center shrink-0\",\n selectionState?.checked\n ? checkboxCheckedClasses[color]\n : \"border-border\",\n )}\n >\n {selectionState?.checked && (\n <Check className=\"h-3 w-3 text-background\" />\n )}\n {selectionState?.indeterminate &&\n !selectionState?.checked && (\n <div className={cn(\"w-2 h-0.5\", indeterminateBgClasses[color])} />\n )}\n </div>\n )}\n <span className=\"flex-1 truncate\">{option.label}</span>\n <span\n className={cn(\n \"shrink-0 flex items-center\",\n iconSizes[size],\n )}\n >\n {option.loading && (\n <Loader2\n className={cn(\"animate-spin\", iconSizes[size])}\n />\n )}\n {!option.loading &&\n option.children &&\n option.children.length > 0 && (\n <ChevronRight className={iconSizes[size]} />\n )}\n {!option.loading && isLeafSelected && (\n <Check\n className={cn(iconSizes[size], colorVars[color], 'text-slot')}\n />\n )}\n </span>\n </div>\n );\n })\n )}\n </div>\n ))}\n </div>\n );\n };\n\n const renderTriggerContent = () => {\n if (multiple && normalizedValue.length > 0) {\n const visibleTags = normalizedValue.slice(0, maxTagCount);\n const remainingCount = normalizedValue.length - maxTagCount;\n\n return (\n <div className=\"flex-1 flex flex-wrap gap-1 items-center min-h-0 overflow-hidden\">\n {visibleTags.map((path, idx) => {\n const selectedOpts = getSelectedOptions(path);\n const label = showPath\n ? selectedOpts.map((o) => o.label).join(pathSeparator)\n : selectedOpts[selectedOpts.length - 1]?.label || \"\";\n\n if (tagRender) {\n return (\n <React.Fragment key={idx}>\n {tagRender({\n label,\n value: path,\n closable: !disabled,\n onClose: () =>\n removeSelection(path, {\n stopPropagation: () => {},\n } as React.MouseEvent),\n })}\n </React.Fragment>\n );\n }\n\n return (\n <span\n key={idx}\n className={cn(\n \"inline-flex items-center gap-1 rounded whitespace-nowrap\",\n accentBgClasses[color],\n tagSizeClasses[size],\n )}\n >\n <span className=\"truncate max-w-[150px]\">{label}</span>\n {!disabled && (\n <button\n type=\"button\"\n onClick={(e) => removeSelection(path, e)}\n className=\"hover:text-error shrink-0\"\n >\n <X className=\"h-3 w-3\" />\n </button>\n )}\n </span>\n );\n })}\n {remainingCount > 0 && (\n <span\n className={cn(\n \"inline-flex items-center bg-surface text-text-secondary rounded whitespace-nowrap\",\n tagSizeClasses[size],\n )}\n >\n +{remainingCount}\n </span>\n )}\n </div>\n );\n }\n\n return (\n <span\n className={cn(\"truncate flex-1\", !displayValue && \"text-text-secondary\")}\n >\n {displayValue || placeholder}\n </span>\n );\n };\n\n const popoverSide = placement.startsWith(\"top\") ? \"top\" : \"bottom\";\n const popoverAlign = placement.endsWith(\"Right\") ? \"end\" : \"start\";\n\n const triggerElement = (\n <div\n ref={ref}\n className={cn(\n cascaderTriggerVariants({ status, size, fullWidth }),\n colorVars[color], 'focus-visible:ring-slot',\n disabled && \"opacity-50 cursor-not-allowed\",\n loading && \"opacity-50 pointer-events-none\",\n \"cascader_trigger\",\n classNames?.trigger,\n className,\n )}\n onKeyDown={handleKeyDown}\n tabIndex={disabled ? -1 : 0}\n role=\"combobox\"\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n aria-disabled={disabled}\n aria-label={label || placeholder}\n data-slot=\"trigger\"\n >\n {renderTriggerContent()}\n <div className=\"flex items-center gap-1 text-text-secondary shrink-0\">\n {loading && (\n <Loader2\n className={cn(\"animate-spin text-text-secondary\", iconSizes[size])}\n />\n )}\n {!loading && showClearButton && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"hover:text-text-primary\"\n aria-label=\"Clear selection\"\n >\n <X className={iconSizes[size]} />\n </button>\n )}\n {!loading && (\n <ChevronDown\n className={cn(\n \"transition-transform\",\n iconSizes[size],\n isOpen && \"rotate-180\",\n )}\n />\n )}\n </div>\n </div>\n );\n\n const cascaderElement = (\n <div\n ref={containerRef}\n className={cn(\"relative cascader_root\", fullWidth ? \"w-full\" : \"inline-block\", classNames?.root)}\n data-slot=\"root\"\n >\n <PopoverPrimitive.Root open={isOpen} onOpenChange={handleOpenChange}>\n <PopoverPrimitive.Trigger asChild>\n {triggerElement}\n </PopoverPrimitive.Trigger>\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n side={popoverSide}\n align={popoverAlign}\n sideOffset={4}\n className=\"z-50 outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 duration-200\"\n >\n {renderCascaderMenus()}\n </PopoverPrimitive.Content>\n </PopoverPrimitive.Portal>\n </PopoverPrimitive.Root>\n </div>\n );\n\n return (\n <div\n className={cn(\"flex flex-col\", fullWidth ? \"w-full\" : \"inline-block\")}\n >\n <div className=\"flex gap-2 items-center mb-0.5\">\n {label && (\n <label className=\"text-sm font-medium text-text-secondary\">\n {label}\n {required && <span className=\"text-error ml-1\">*</span>}\n </label>\n )}\n {helperMessage && messagePosition === \"top\" && (\n <span\n className={cn(\n \"text-xs\",\n status === \"error\" && \"text-error\",\n status === \"warning\" && \"text-warning\",\n status === \"info\" && \"text-info\",\n status === \"success\" && \"text-success\",\n status === \"default\" && \"text-text-secondary\",\n )}\n >\n {helperMessage}\n </span>\n )}\n </div>\n {cascaderElement}\n {helperMessage && messagePosition === \"bottom\" && (\n <span\n className={cn(\n \"text-xs mt-0.5\",\n status === \"error\" && \"text-error\",\n status === \"warning\" && \"text-warning\",\n status === \"info\" && \"text-info\",\n status === \"success\" && \"text-success\",\n status === \"default\" && \"text-text-secondary\",\n )}\n >\n {helperMessage}\n </span>\n )}\n </div>\n );\n },\n);\n\nCascader.displayName = \"Cascader\";\n\nexport type * from \"./types\";\nexport default Cascader;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/toggle-group/index.tsx"],"names":[],"mappings":"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","file":"chunk-SUNCSPDF.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport React, { useState, useCallback } from 'react'\n\nimport { useRipple, RippleContainer } from '../hooks/useRipple'\nimport { cn } from '../utils'\nimport { colorVars } from '../variants'\nimport type { ToggleGroupProps } from './types'\n\nconst toggleGroupVariants = cva(\n 'inline-flex border rounded-md overflow-hidden',\n {\n variants: {\n size: {\n xs: 'gap-0',\n sm: 'gap-0',\n md: 'gap-0',\n lg: 'gap-0',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst toggleItemVariants = cva(\n 'font-medium transition-colors cursor-pointer border-r last:border-r-0 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background',\n {\n variants: {\n size: {\n xs: 'h-(--toggle-height-xs) px-(--toggle-padding-x-xs) text-xs',\n sm: 'h-(--toggle-height-sm) px-(--toggle-padding-x-sm) text-sm',\n md: 'h-(--toggle-height-md) px-(--toggle-padding-x-md) text-base',\n lg: 'h-(--toggle-height-lg) px-(--toggle-padding-x-lg) text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst getToggleClasses = (\n color: string,\n variant: string,\n isActive: boolean,\n) => {\n const baseColor = colorVars[color as keyof typeof colorVars] || colorVars.default\n\n if (!isActive) {\n // Inactive: text-secondary with hover to accent color\n return cn(baseColor, 'text-text-secondary hover:text-slot hover:bg-slot-10')\n }\n\n // Active state\n if (variant === 'solid') {\n return cn(baseColor, 'bg-slot text-slot-fg')\n }\n if (variant === 'soft') {\n return cn(baseColor, 'bg-slot-20 text-slot')\n }\n // default variant\n return cn(baseColor, 'border-slot bg-slot-10 text-slot')\n}\n\nconst ToggleItemButton = React.memo<{ children: React.ReactNode; disabled?: boolean; className?: string; [key: string]: any }>(({ children, disabled, className, ...props }) => {\n const { ripples, onPointerDown, onKeyDown, onAnimationEnd } = useRipple(!disabled)\n return (\n <button className={cn(className, 'relative overflow-hidden')} onPointerDown={onPointerDown} onKeyDown={onKeyDown} disabled={disabled} {...props}>\n {children}\n <RippleContainer ripples={ripples} onAnimationEnd={onAnimationEnd} />\n </button>\n )\n})\n\nexport const ToggleGroup = React.memo<ToggleGroupProps>(\n ({\n options,\n value: controlledValue,\n defaultValue,\n multiple = false,\n color = 'primary',\n size = 'md',\n variant = 'default',\n onChange,\n fullWidth = false,\n disabled = false,\n className,\n centered = false,\n classNames,\n ref,\n }) => {\n const [internalValue, setInternalValue] = useState<string | string[]>(\n defaultValue || (multiple ? [] : options[0]?.value || ''),\n )\n\n const value =\n controlledValue !== undefined ? controlledValue : internalValue\n\n const handleToggleClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n const optionValue = e.currentTarget.dataset.value\n const optionDisabled = e.currentTarget.dataset.disabled === 'true'\n\n if (!optionValue || disabled || optionDisabled) return\n\n setInternalValue((prevValue) => {\n const currentValues = Array.isArray(prevValue) ? prevValue : []\n let newValue: string | string[]\n\n if (multiple) {\n if (currentValues.includes(optionValue)) {\n newValue = currentValues.filter((v) => v !== optionValue)\n } else {\n newValue = [...currentValues, optionValue]\n }\n } else {\n newValue = optionValue\n }\n\n onChange?.(newValue)\n return controlledValue !== undefined ? prevValue : newValue\n })\n },\n [disabled, multiple, onChange, controlledValue],\n )\n\n const isActive = (optionValue: string) => {\n if (multiple && Array.isArray(value)) {\n return value.includes(optionValue)\n }\n return optionValue === value\n }\n\n return (\n <div\n data-slot=\"root\"\n ref={ref}\n role=\"group\"\n className={cn(\n 'toggleGroup_root',\n toggleGroupVariants({ size }),\n 'border-border bg-background',\n classNames?.root,\n className,\n fullWidth && 'grid w-full',\n )}\n style={fullWidth ? { gridTemplateColumns: `repeat(${options.length}, 1fr)` } : undefined}\n >\n {options.map((option) => {\n const active = isActive(option.value)\n const isDisabled = disabled || option.disabled\n\n return (\n <ToggleItemButton\n type=\"button\"\n key={option.value}\n className={cn(\n 'toggleGroup_item',\n toggleItemVariants({ size }),\n getToggleClasses(color, variant, active),\n\n 'border-border flex items-center justify-center',\n isDisabled && 'opacity-50 cursor-not-allowed',\n centered && 'text-center',\n classNames?.item,\n )}\n data-value={option.value}\n data-disabled={option.disabled}\n onClick={handleToggleClick}\n disabled={isDisabled}\n aria-pressed={active}\n >\n <div className=\"flex items-center gap-2\">\n {option.icon}\n {option.label}\n </div>\n </ToggleItemButton>\n )\n })}\n </div>\n )\n },\n)\n\nToggleGroup.displayName = 'ToggleGroup'\n\nexport type * from './types'\nexport default ToggleGroup\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/scroll-area/index.tsx"],"names":[],"mappings":"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","file":"chunk-TS2PG6Z4.js","sourcesContent":["'use client'\n\nimport React, { useEffect, useId, useRef } from 'react'\nimport { cva } from 'class-variance-authority'\n\nimport { cn } from '../utils'\nimport type { ScrollAreaProps, ScrollAreaSize } from './types'\n\nconst stylesInjected = new Set<string>()\n\n/**\n * Scrollbar thickness by size\n */\nconst scrollbarSizes: Record<ScrollAreaSize, string> = {\n xs: '4px',\n sm: '6px',\n md: '8px',\n lg: '10px',\n}\n\n/**\n * ScrollArea root variants\n */\nconst scrollAreaVariants = cva('scroll-area_root relative overflow-hidden', {\n variants: {\n size: {\n xs: '',\n sm: '',\n md: '',\n lg: '',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\n/**\n * ScrollArea Component\n * Provides a customizable scrollable container with styled scrollbars\n */\nconst ScrollArea = React.memo<ScrollAreaProps>(\n ({\n children,\n maxHeight,\n maxWidth,\n direction = 'vertical',\n size = 'md',\n scrollbarVisibility = 'auto',\n className,\n classNames,\n ref,\n style,\n ...props\n }) => {\n const scrollId = useId().replace(/:/g, '')\n const scrollClass = `scroll-area-${scrollId}`\n const thickness = scrollbarSizes[size]\n const styleElRef = useRef<HTMLStyleElement | null>(null)\n\n const getOverflowClass = () => {\n if (direction === 'vertical') return 'overflow-y-auto overflow-x-hidden'\n if (direction === 'horizontal') return 'overflow-x-auto overflow-y-hidden'\n return 'overflow-auto'\n }\n\n const viewportStyle: React.CSSProperties = {\n ...style,\n ...(maxHeight && { maxHeight: typeof maxHeight === 'number' ? `${maxHeight}px` : maxHeight }),\n ...(maxWidth && { maxWidth: typeof maxWidth === 'number' ? `${maxWidth}px` : maxWidth }),\n }\n\n useEffect(() => {\n if (!stylesInjected.has(scrollClass)) {\n const baseOpacity = scrollbarVisibility === 'hover' ? '0' : '1'\n const hoverOpacity = '1'\n\n const scrollbarStyles = `\n .${scrollClass} {\n scrollbar-width: thin;\n scrollbar-color: hsl(var(--color-border)) transparent;\n }\n\n .${scrollClass}::-webkit-scrollbar {\n width: ${direction !== 'horizontal' ? thickness : '0'};\n height: ${direction !== 'vertical' ? thickness : '0'};\n }\n\n .${scrollClass}::-webkit-scrollbar-track {\n background: transparent;\n border-radius: ${thickness};\n }\n\n .${scrollClass}::-webkit-scrollbar-thumb {\n background: hsl(var(--color-border));\n border-radius: ${thickness};\n opacity: ${baseOpacity};\n transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;\n }\n\n .${scrollClass}::-webkit-scrollbar-thumb:hover {\n background: hsl(var(--color-border-strong));\n }\n\n ${\n scrollbarVisibility === 'hover'\n ? `.${scrollClass}:hover::-webkit-scrollbar-thumb {\n opacity: ${hoverOpacity};\n }`\n : ''\n }\n\n .${scrollClass}::-webkit-scrollbar-corner {\n background: transparent;\n }\n `\n\n const styleEl = document.createElement('style')\n styleEl.textContent = scrollbarStyles\n document.head.appendChild(styleEl)\n styleElRef.current = styleEl\n stylesInjected.add(scrollClass)\n }\n\n return () => {\n if (styleElRef.current) {\n document.head.removeChild(styleElRef.current)\n stylesInjected.delete(scrollClass)\n }\n }\n }, [scrollClass, direction, thickness, scrollbarVisibility])\n\n return (\n <div\n ref={ref}\n className={cn(\n scrollAreaVariants({ size }),\n classNames?.root,\n className,\n )}\n data-slot=\"root\"\n {...props}\n >\n <div\n className={cn(\n 'scroll-area_viewport',\n scrollClass,\n getOverflowClass(),\n classNames?.viewport,\n )}\n style={viewportStyle}\n data-slot=\"viewport\"\n >\n {children}\n </div>\n </div>\n )\n },\n)\n\nScrollArea.displayName = 'ScrollArea'\n\nexport type * from './types'\nexport default ScrollArea\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/notification/index.tsx"],"names":[],"mappings":"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","file":"chunk-U3RHF7QF.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport { X } from 'lucide-react'\nimport React from 'react'\n\nimport { cn, iconSizes } from '../utils'\nimport { colorVars } from '../variants'\nimport type { NotificationProps } from './types'\n\nconst notificationVariants = cva(\n 'relative flex gap-3 rounded-md transition-colors',\n {\n variants: {\n variant: {\n default: 'bg-slot border border-slot text-slot-fg',\n solid: 'bg-slot text-slot-fg',\n outline: 'bg-background border border-slot border-l-4 border-l-slot text-slot',\n soft: 'bg-slot-10 border-l-4 border-l-slot text-slot',\n },\n color: colorVars,\n size: {\n xs: 'p-2 gap-2',\n sm: 'p-3 gap-2.5',\n md: 'p-4 gap-3',\n lg: 'p-5 gap-3.5',\n },\n },\n defaultVariants: {\n variant: 'default',\n color: 'default',\n size: 'md',\n },\n },\n)\n\nconst titleSizeClasses = {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-base',\n lg: 'text-lg',\n}\n\nconst descriptionSizeClasses = {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-sm',\n lg: 'text-base',\n}\n\nconst Notification = React.memo<NotificationProps>(\n ({\n title,\n description,\n variant = 'default',\n color = 'default',\n size = 'md',\n closable,\n onClose,\n action,\n className,\n classNames,\n children,\n }) => {\n const isClosable = closable ?? (onClose !== undefined)\n\n return (\n <div\n data-slot=\"root\"\n role=\"alert\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n className={cn(\n 'notification_root',\n notificationVariants({ variant, color, size }),\n className,\n classNames?.root,\n )}\n >\n <div className={cn('flex-1 min-w-0', 'notification_content', classNames?.content)}>\n {title && <div className={cn('font-semibold mb-1', titleSizeClasses[size], 'notification_title', classNames?.title)}>{title}</div>}\n {description && (\n <div className={cn('opacity-90', descriptionSizeClasses[size], 'notification_description', classNames?.description)}>{description}</div>\n )}\n {children && <div className=\"mt-2\">{children}</div>}\n {action && (\n <button\n type=\"button\"\n onClick={action.onClick}\n className={cn('mt-2 font-medium underline hover:no-underline', descriptionSizeClasses[size], 'notification_action', classNames?.action)}\n >\n {action.label}\n </button>\n )}\n </div>\n\n {isClosable && (\n <button\n type=\"button\"\n onClick={onClose}\n className={cn('shrink-0 rounded-sm opacity-70 hover:opacity-100 transition-opacity', 'notification_closeButton', classNames?.closeButton)}\n aria-label=\"Close notification\"\n >\n <X className={cn(iconSizes[size], 'notification_icon', classNames?.icon)} aria-hidden=\"true\" />\n </button>\n )}\n </div>\n )\n },\n)\n\nNotification.displayName = 'Notification'\n\nexport type * from './types'\nexport default Notification\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/select/index.tsx"],"names":[],"mappings":"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","file":"chunk-UIVOI7HE.js","sourcesContent":["\"use client\";\n\nimport { cva } from \"class-variance-authority\";\nimport { Check, ChevronDown, ChevronUp, Search, X } from \"lucide-react\";\nimport React from \"react\";\n\nimport Spinner from \"../spinner\";\n\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover\";\nimport { useSelectBase } from \"../shared/useSelectBase\";\nimport type { FlattenedItem } from \"../shared/useSelectBase\";\nimport { cn, iconSizes, statusMessageVariants } from \"../utils\";\nimport type { SelectOption, SelectProps } from \"./types\";\n\nconst selectTriggerVariants = cva(\n \"w-full flex items-center justify-between rounded-md bg-background text-text-primary border focus:border-primary outline-none disabled:opacity-50 disabled:cursor-not-allowed cursor-pointer transition-colors\",\n {\n variants: {\n status: {\n default: \"border-border hover:border-primary/50\",\n error: \"border-error\",\n warning: \"border-warning\",\n info: \"border-info\",\n success: \"border-success\",\n },\n size: {\n xs: \"h-(--select-height-xs) px-(--select-padding-x-xs) text-xs gap-1.5\",\n sm: \"h-(--select-height-sm) px-(--select-padding-x-sm) text-sm gap-2\",\n md: \"h-(--select-height-md) px-(--select-padding-x-md) text-base gap-2.5\",\n lg: \"h-(--select-height-lg) px-(--select-padding-x-lg) text-lg gap-3\",\n },\n fullWidth: {\n true: \"w-full\",\n false: \"max-w-full\",\n },\n },\n defaultVariants: {\n status: \"default\",\n size: \"md\",\n fullWidth: true,\n },\n },\n);\n\nconst selectOptionVariants = cva(\n \"relative cursor-pointer select-none px-3 py-2 text-text-primary rounded-sm transition-colors\",\n {\n variants: {\n selected: {\n true: \"bg-primary/10 text-primary font-medium\",\n false: \"hover:bg-surface\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"\",\n },\n },\n defaultVariants: {\n selected: false,\n disabled: false,\n },\n },\n);\n\nconst selectGroupVariants = cva(\n \"px-3 py-2 text-xs font-semibold text-text-secondary uppercase tracking-wider bg-surface/50\",\n);\n\nconst Select = React.memo<SelectProps>(\n ({\n size = \"md\",\n label,\n helperText,\n error,\n warning,\n info,\n success,\n options = [],\n placeholder = \"Select an option\",\n loading = false,\n fullWidth = true,\n value,\n defaultValue,\n onChange,\n clearable = false,\n disabled,\n required,\n virtualizeThreshold = 50,\n maxDropdownHeight = 300,\n className,\n classNames,\n ref,\n ...props\n }) => {\n const [internalValue, setInternalValue] = React.useState<string | number>(\n defaultValue ?? \"\",\n );\n\n const currentValue = value !== undefined ? value : internalValue;\n\n const {\n // State\n isOpen,\n setIsOpen,\n searchQuery,\n setSearchQuery,\n setHighlightedIndex,\n highlightedIndex,\n showTopArrow,\n showBottomArrow,\n // Refs\n triggerRef,\n inputRef,\n scrollContainerRef,\n // Computed\n filteredOptions,\n selectableOptions,\n shouldVirtualize,\n virtualizer,\n // IDs & validation\n labelId,\n listboxId,\n helperId,\n status,\n helperMessage,\n // Handlers\n handleInputChange,\n handleInputClick,\n handleScroll,\n handleKeyDown,\n handleKeyUp,\n refCallback,\n } = useSelectBase<SelectOption>({\n options,\n onSelectOption: (option) => handleSelect(option.value),\n virtualizeThreshold,\n maxDropdownHeight,\n label,\n idPrefix: \"select\",\n error,\n warning,\n info,\n success,\n helperText,\n });\n\n const handleSelect = React.useCallback(\n (optionValue: string | number) => {\n if (value === undefined) {\n setInternalValue(optionValue);\n }\n onChange?.(optionValue);\n setIsOpen(false);\n setSearchQuery(\"\");\n setHighlightedIndex(-1);\n },\n [value, onChange, setIsOpen, setSearchQuery, setHighlightedIndex],\n );\n\n const selectedOption = React.useMemo(\n () => options.find((opt) => opt.value === currentValue),\n [options, currentValue],\n );\n const displayValue = isOpen ? searchQuery : selectedOption?.label || \"\";\n\n const handleClear = React.useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (value === undefined) {\n setInternalValue(\"\");\n }\n onChange?.(\"\");\n setSearchQuery(\"\");\n setHighlightedIndex(-1);\n },\n [value, onChange, setSearchQuery, setHighlightedIndex],\n );\n\n const handleOptionClick = React.useCallback(\n (optionValue: string | number) => {\n handleSelect(optionValue);\n },\n [handleSelect],\n );\n\n const renderOptionsList = React.useMemo(\n () => (\n <div className=\"relative\">\n {/* Top scroll indicator */}\n <div className=\"flex items-center justify-center h-4\">\n {showTopArrow && (\n <ChevronUp className=\"size-4 text-text-primary animate-in fade-in duration-150\" />\n )}\n </div>\n\n <div\n ref={scrollContainerRef}\n className=\"overflow-auto relative\"\n style={{ maxHeight: maxDropdownHeight }}\n role=\"listbox\"\n id={listboxId}\n aria-labelledby={label ? labelId : undefined}\n onScroll={handleScroll}\n >\n {!filteredOptions.length ? (\n <div\n data-slot=\"empty\"\n className={cn(\n \"select_empty\",\n \"px-3 py-4 text-center text-sm text-text-secondary\",\n classNames?.empty,\n )}\n >\n No options found\n </div>\n ) : shouldVirtualize ? (\n <div\n ref={refCallback}\n style={{\n height: `${Math.min(virtualizer.getTotalSize(), maxDropdownHeight)}px`,\n overflow: \"auto\",\n }}\n onScroll={handleScroll}\n >\n <div\n style={{\n height: `${virtualizer.getTotalSize()}px`,\n width: \"100%\",\n position: \"relative\",\n }}\n >\n {virtualizer.getVirtualItems().map((virtualItem) => {\n const item = filteredOptions[virtualItem.index];\n\n if (!item) return null;\n\n if (item.type === \"group\") {\n return (\n <div\n key={`group-${virtualItem.index}`}\n data-slot=\"group\"\n style={{\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={cn(\n \"select_group\",\n selectGroupVariants(),\n classNames?.group,\n )}\n >\n <span\n data-slot=\"groupLabel\"\n className={cn(\n \"select_groupLabel\",\n classNames?.groupLabel,\n )}\n >\n {item.data as string}\n </span>\n </div>\n );\n }\n\n const option = item.data as SelectOption;\n const isSelected = option.value === currentValue;\n const selectableIndex = selectableOptions.indexOf(\n item as FlattenedItem<SelectOption>,\n );\n const isHighlighted = selectableIndex === highlightedIndex;\n\n return (\n <div\n key={option.value}\n data-slot=\"option\"\n data-value={option.value}\n style={{\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: `${virtualItem.size}px`,\n transform: `translateY(${virtualItem.start}px)`,\n }}\n className={cn(\n \"select_option\",\n selectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && \"bg-surface\",\n classNames?.option,\n isSelected && classNames?.optionSelected,\n )}\n onClick={() =>\n !option.disabled && handleOptionClick(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn(\n \"text-primary animate-in zoom-in-75 duration-150\",\n iconSizes[size],\n )}\n />\n </span>\n )}\n </div>\n );\n })}\n </div>\n </div>\n ) : (\n <div>\n {filteredOptions.map((item, index) => {\n if (item.type === \"group\") {\n return (\n <div\n key={`group-${index}`}\n data-slot=\"group\"\n className={cn(\n \"select_group\",\n selectGroupVariants(),\n classNames?.group,\n )}\n >\n <span\n data-slot=\"groupLabel\"\n className={cn(\n \"select_groupLabel\",\n classNames?.groupLabel,\n )}\n >\n {item.data as string}\n </span>\n </div>\n );\n }\n\n const option = item.data as SelectOption;\n const isSelected = option.value === currentValue;\n const selectableIndex = selectableOptions.indexOf(\n item as FlattenedItem<SelectOption>,\n );\n const isHighlighted = selectableIndex === highlightedIndex;\n\n return (\n <div\n key={option.value}\n data-slot=\"option\"\n data-value={option.value}\n className={cn(\n \"select_option\",\n selectOptionVariants({\n selected: isSelected,\n disabled: !!option.disabled,\n }),\n isHighlighted && \"bg-surface\",\n classNames?.option,\n isSelected && classNames?.optionSelected,\n )}\n onClick={() =>\n !option.disabled && handleOptionClick(option.value)\n }\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={option.disabled}\n >\n {option.label}\n {isSelected && (\n <span className=\"absolute right-3 top-1/2 -translate-y-1/2\">\n <Check\n className={cn(\n \"text-primary animate-in zoom-in-75 duration-150\",\n iconSizes[size],\n )}\n />\n </span>\n )}\n </div>\n );\n })}\n </div>\n )}\n </div>\n\n {/* Bottom scroll indicator */}\n <div className=\"flex items-center justify-center h-4\">\n {showBottomArrow && (\n <ChevronDown className=\"size-4 text-text-primary animate-in fade-in duration-150\" />\n )}\n </div>\n </div>\n ),\n [\n showTopArrow,\n showBottomArrow,\n filteredOptions,\n shouldVirtualize,\n virtualizer,\n currentValue,\n selectableOptions,\n highlightedIndex,\n handleOptionClick,\n maxDropdownHeight,\n listboxId,\n label,\n labelId,\n handleScroll,\n refCallback,\n classNames,\n size,\n ],\n );\n\n // Trigger button (used in both desktop and mobile)\n const triggerButton = (\n <button\n ref={triggerRef}\n type=\"button\"\n data-slot=\"trigger\"\n className={cn(\n \"select_trigger\",\n selectTriggerVariants({ status, size, fullWidth }),\n loading && \"opacity-50\",\n className,\n classNames?.trigger,\n )}\n disabled={disabled || loading}\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-controls={listboxId}\n aria-labelledby={label ? labelId : undefined}\n aria-describedby={helperMessage ? helperId : undefined}\n >\n <input\n ref={inputRef}\n type=\"text\"\n data-slot=\"search\"\n className={cn(\n \"select_search\",\n \"w-full text-ellipsis flex-1 bg-transparent outline-none cursor-pointer placeholder:text-text-secondary/50\",\n classNames?.search,\n )}\n placeholder={placeholder}\n value={displayValue}\n onChange={handleInputChange}\n onClick={handleInputClick}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n disabled={disabled || loading}\n readOnly={!isOpen}\n tabIndex={0}\n aria-autocomplete=\"list\"\n aria-controls={isOpen ? listboxId : undefined}\n />\n <div\n data-slot=\"triggerIcon\"\n className={cn(\n \"select_triggerIcon\",\n \"flex items-center gap-1 text-text-secondary\",\n classNames?.triggerIcon,\n )}\n >\n {clearable && currentValue && !disabled && !loading && (\n <span\n role=\"button\"\n tabIndex={-1}\n onClick={handleClear}\n onKeyDown={(e) => { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); handleClear(e as unknown as React.MouseEvent); } }}\n className=\"hover:text-text-primary transition-colors cursor-pointer\"\n aria-label=\"Clear selection\"\n >\n <X className={iconSizes[size]} />\n </span>\n )}\n {loading ? (\n <Spinner />\n ) : (\n <>\n {isOpen ? (\n <Search className={iconSizes[size]} />\n ) : (\n <ChevronDown className={iconSizes[size]} />\n )}\n </>\n )}\n </div>\n </button>\n );\n\n const selectElement = (\n <div\n data-slot=\"root\"\n className={cn(\n \"select_root\",\n \"relative group\",\n fullWidth ? \"w-full\" : \"inline-block\",\n classNames?.root,\n )}\n ref={ref}\n {...props}\n >\n <Popover open={isOpen} onOpenChange={setIsOpen}>\n <PopoverTrigger asChild>{triggerButton}</PopoverTrigger>\n\n <PopoverContent\n data-slot=\"dropdown\"\n className={cn(\n \"select_dropdown\",\n \"p-0 w-[var(--radix-popover-trigger-width)]\",\n classNames?.dropdown,\n )}\n align=\"start\"\n onOpenAutoFocus={(e: Event) => {\n e.preventDefault();\n inputRef.current?.focus();\n }}\n >\n {renderOptionsList}\n </PopoverContent>\n </Popover>\n </div>\n );\n\n return (\n <div className={cn(\"w-full flex flex-col\", !fullWidth && \"inline-block\")}>\n <div className=\"flex gap-2 items-center\">\n {label && (\n <label\n id={labelId}\n data-slot=\"label\"\n className={cn(\"select_label\", \"block mb-0.5\", classNames?.label)}\n >\n <span className=\"text-sm font-medium text-text-secondary\">\n {label}\n {required && <span className=\"text-error ml-1\">*</span>}\n </span>\n </label>\n )}\n {helperMessage && (\n <p\n id={helperId}\n data-slot=\"helper\"\n className={cn(\n \"select_helper\",\n statusMessageVariants({ status }),\n classNames?.helper,\n )}\n >\n {helperMessage}\n </p>\n )}\n </div>\n {selectElement}\n </div>\n );\n },\n);\n\nSelect.displayName = \"Select\";\n\nexport type * from \"./types\";\nexport default Select;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/navigation-menu/index.tsx"],"names":[],"mappings":"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","file":"chunk-USHR3MWQ.js","sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { cva } from \"class-variance-authority\";\nimport { cn } from \"../utils\";\nimport type {\n NavigationMenuProps,\n NavigationMenuItem,\n NavigationMenuChildItem,\n} from \"./types\";\n\nconst navigationMenuVariants = cva(\"navigationMenu_root\", {\n variants: {\n orientation: {\n horizontal: \"flex flex-row\",\n vertical: \"flex flex-col\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n});\n\nconst navigationMenuListVariants = cva(\n \"navigationMenu_list flex items-center gap-1 relative\",\n {\n variants: {\n orientation: {\n horizontal: \"flex-row\",\n vertical: \"flex-col\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n },\n);\n\nconst navigationMenuItemVariants = cva(\"navigationMenu_item relative\", {\n variants: {},\n});\n\nconst navigationMenuTriggerVariants = cva(\n \"navigationMenu_trigger inline-flex items-center justify-center gap-2 rounded-md cursor-pointer px-4 py-2 text-sm font-medium transition-colors hover:bg-surface focus:bg-surface focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-primary focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-50 data-[state=open]:bg-surface\",\n {\n variants: {},\n },\n);\n\nconst navigationMenuLinkVariants = cva(\n \"navigationMenu_link inline-flex items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-colors hover:bg-surface focus:bg-surface focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-primary focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {},\n },\n);\n\nconst navigationMenuContentVariants = cva(\n \"navigationMenu_content absolute top-full left-0 mt-1 w-auto min-w-[400px] rounded-md border border-border bg-background p-4 shadow-lg data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-top-2 duration-200\",\n {\n variants: {},\n },\n);\n\nconst NavigationMenuContent = React.memo(\n ({\n children,\n isOpen,\n className,\n }: {\n children: NavigationMenuChildItem[];\n isOpen: boolean;\n className?: string;\n }) => {\n return (\n <div\n data-slot=\"content\"\n data-state={isOpen ? \"open\" : \"closed\"}\n className={cn(\n navigationMenuContentVariants(),\n !isOpen && \"hidden\",\n className,\n )}\n role=\"menu\"\n >\n <div className=\"grid gap-3\">\n {children.map((child) => (\n <NavigationMenuChildLink key={child.key} item={child} />\n ))}\n </div>\n </div>\n );\n },\n);\n\nNavigationMenuContent.displayName = \"NavigationMenuContent\";\n\nconst NavigationMenuChildLink = React.memo(\n ({ item }: { item: NavigationMenuChildItem }) => {\n const handleClick = (e: React.MouseEvent) => {\n if (item.disabled) {\n e.preventDefault();\n return;\n }\n if (item.onClick) {\n e.preventDefault();\n item.onClick();\n }\n };\n\n const content = (\n <div className=\"flex items-start gap-3 rounded-md p-3 hover:bg-surface transition-colors\">\n {item.icon && (\n <div className=\"flex h-10 w-10 shrink-0 items-center justify-center rounded-md bg-surface\">\n {item.icon}\n </div>\n )}\n <div className=\"space-y-1\">\n <div className=\"text-sm font-medium leading-none\">{item.label}</div>\n {item.description && (\n <p className=\"text-sm leading-snug text-text-secondary\">\n {item.description}\n </p>\n )}\n </div>\n </div>\n );\n\n if (item.href && !item.disabled) {\n return (\n <a\n href={item.href}\n onClick={handleClick}\n className={cn(\n \"block\",\n item.disabled && \"pointer-events-none opacity-50\",\n )}\n role=\"menuitem\"\n aria-disabled={item.disabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type=\"button\"\n onClick={handleClick}\n disabled={item.disabled}\n className=\"block w-full text-left disabled:pointer-events-none disabled:opacity-50\"\n role=\"menuitem\"\n aria-disabled={item.disabled}\n >\n {content}\n </button>\n );\n },\n);\n\nNavigationMenuChildLink.displayName = \"NavigationMenuChildLink\";\n\nconst NavigationMenuItemComponent = React.memo(\n ({\n item,\n onOpenChange,\n isOpen,\n classNames,\n }: {\n item: NavigationMenuItem;\n onOpenChange: (key: string, open: boolean) => void;\n isOpen: boolean;\n classNames?: NavigationMenuProps[\"classNames\"];\n }) => {\n const hasChildren = item.children && item.children.length > 0;\n const timeoutRef = React.useRef<ReturnType<typeof setTimeout> | undefined>(\n undefined,\n );\n\n const handleMouseEnter = () => {\n if (hasChildren && !item.disabled) {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n onOpenChange(item.key, true);\n }\n };\n\n const handleMouseLeave = () => {\n if (hasChildren && !item.disabled) {\n timeoutRef.current = setTimeout(() => {\n onOpenChange(item.key, false);\n }, 150);\n }\n };\n\n const handleClick = (e: React.MouseEvent) => {\n if (item.disabled) {\n e.preventDefault();\n return;\n }\n\n if (hasChildren) {\n e.preventDefault();\n onOpenChange(item.key, !isOpen);\n } else if (item.onClick) {\n e.preventDefault();\n item.onClick();\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (item.disabled) return;\n\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (hasChildren) {\n onOpenChange(item.key, !isOpen);\n } else if (item.onClick) {\n item.onClick();\n }\n } else if (e.key === \"Escape\" && isOpen) {\n e.preventDefault();\n onOpenChange(item.key, false);\n }\n };\n\n React.useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n };\n }, []);\n\n const content = (\n <>\n {item.icon && <span className=\"shrink-0\">{item.icon}</span>}\n <span>{item.label}</span>\n {hasChildren && (\n <svg\n className={cn(\n \"h-4 w-4 shrink-0 transition-transform\",\n isOpen && \"rotate-180\",\n )}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M19 9l-7 7-7-7\"\n />\n </svg>\n )}\n </>\n );\n\n return (\n <li\n data-slot=\"item\"\n className={cn(navigationMenuItemVariants(), classNames?.item)}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n role=\"none\"\n >\n {hasChildren ? (\n <>\n <button\n type=\"button\"\n data-slot=\"trigger\"\n data-state={isOpen ? \"open\" : \"closed\"}\n className={cn(\n navigationMenuTriggerVariants(),\n classNames?.trigger,\n )}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n disabled={item.disabled}\n aria-haspopup=\"true\"\n aria-expanded={isOpen}\n role=\"menuitem\"\n >\n {content}\n </button>\n <NavigationMenuContent\n children={item.children!}\n isOpen={isOpen}\n className={classNames?.content}\n />\n </>\n ) : item.href && !item.disabled ? (\n <a\n href={item.href}\n data-slot=\"link\"\n className={cn(\n navigationMenuLinkVariants(),\n classNames?.link,\n item.disabled && \"pointer-events-none opacity-50\",\n )}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n role=\"menuitem\"\n aria-disabled={item.disabled}\n >\n {content}\n </a>\n ) : (\n <button\n type=\"button\"\n data-slot=\"link\"\n className={cn(navigationMenuLinkVariants(), classNames?.link)}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n disabled={item.disabled}\n role=\"menuitem\"\n >\n {content}\n </button>\n )}\n </li>\n );\n },\n);\n\nNavigationMenuItemComponent.displayName = \"NavigationMenuItemComponent\";\n\nexport const NavigationMenu = React.memo<NavigationMenuProps>(\n ({ items, orientation = \"horizontal\", className, classNames, ref }) => {\n const [openItems, setOpenItems] = React.useState<Set<string>>(new Set());\n const navRef = React.useRef<HTMLElement>(null);\n\n React.useImperativeHandle(ref, () => navRef.current!);\n\n const handleOpenChange = React.useCallback((key: string, open: boolean) => {\n if (open) {\n setOpenItems(new Set([key])) // close all others, open only this one\n } else {\n setOpenItems(prev => {\n const next = new Set(prev)\n next.delete(key)\n return next\n })\n }\n }, []);\n\n // Close on outside click\n React.useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n if (navRef.current && !navRef.current.contains(e.target as Node)) {\n setOpenItems(new Set());\n }\n };\n\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, []);\n\n // Close on Escape\n React.useEffect(() => {\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") {\n setOpenItems(new Set());\n }\n };\n\n document.addEventListener(\"keydown\", handleEscape);\n return () => {\n document.removeEventListener(\"keydown\", handleEscape);\n };\n }, []);\n\n return (\n <nav\n ref={navRef}\n data-slot=\"root\"\n className={cn(\n navigationMenuVariants({ orientation }),\n className,\n classNames?.root,\n )}\n role=\"navigation\"\n aria-label=\"Main navigation\"\n >\n <ul\n data-slot=\"list\"\n className={cn(\n navigationMenuListVariants({ orientation }),\n classNames?.list,\n )}\n role=\"menubar\"\n >\n {items.map((item) => (\n <NavigationMenuItemComponent\n key={item.key}\n item={item}\n onOpenChange={handleOpenChange}\n isOpen={openItems.has(item.key)}\n classNames={classNames}\n />\n ))}\n </ul>\n </nav>\n );\n },\n);\n\nNavigationMenu.displayName = \"NavigationMenu\";\n\nexport type * from \"./types\";\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/card/index.tsx"],"names":[],"mappings":"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","file":"chunk-VIK6UTVN.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 CardActionProps,\n CardClassNames,\n CardColor,\n CardContentProps,\n CardDescriptionProps,\n CardFooterProps,\n CardHeaderProps,\n CardImageProps,\n CardProps,\n CardSize,\n CardTitleProps,\n CardVariant,\n} from \"./types\";\n\ninterface CardContextValue {\n variant: CardVariant;\n color: CardColor;\n classNames?: CardClassNames;\n}\n\nconst CardContext = React.createContext<CardContextValue | null>(null);\n\nfunction useCardContext() {\n return React.useContext(CardContext);\n}\n\nconst cardVariants = cva(\"rounded-lg transition-[shadow,transform]\", {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground border\",\n solid: \"border\",\n outline: \"bg-transparent border\",\n soft: \"border-transparent\",\n ghost: \"border-transparent bg-transparent\",\n elevated: \"bg-card text-card-foreground border-transparent shadow-md\",\n },\n color: {\n default: \"border-border\",\n primary: \"border-primary\",\n secondary: \"border-secondary\",\n accent: \"border-accent\",\n success: \"border-success\",\n error: \"border-error\",\n warning: \"border-warning\",\n info: \"border-info\",\n },\n shadow: {\n none: \"\",\n sm: \"shadow-sm\",\n md: \"shadow-md\",\n lg: \"shadow-lg\",\n },\n hoverable: {\n true: \"hover:shadow-lg hover:-translate-y-0.5 cursor-pointer\",\n false: \"\",\n },\n clickable: {\n true: \"cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-background active:translate-y-0 active:shadow-md\",\n false: \"\",\n },\n },\n compoundVariants: (() => {\n const styles: Record<string, Record<string, string>> = {\n default: {\n default: 'bg-card text-card-foreground border-border',\n primary: 'bg-card text-card-foreground border-primary',\n secondary: 'bg-card text-card-foreground border-secondary',\n accent: 'bg-card text-card-foreground border-accent',\n success: 'bg-card text-card-foreground border-success',\n error: 'bg-card text-card-foreground border-error',\n warning: 'bg-card text-card-foreground border-warning',\n info: 'bg-card text-card-foreground border-info',\n },\n solid: {\n default: 'bg-surface border-border text-text-primary',\n primary: 'bg-primary border-primary text-background',\n secondary: 'bg-secondary border-secondary text-background',\n accent: 'bg-accent border-accent text-background',\n success: 'bg-success border-success text-background',\n error: 'bg-error border-error text-background',\n warning: 'bg-warning border-warning text-background',\n info: 'bg-info border-info text-background',\n },\n outline: {\n default: 'border-border text-text-primary',\n primary: 'border-primary text-text-primary',\n secondary: 'border-secondary text-text-primary',\n accent: 'border-accent text-text-primary',\n success: 'border-success text-text-primary',\n error: 'border-error text-text-primary',\n warning: 'border-warning text-text-primary',\n info: 'border-info text-text-primary',\n },\n soft: {\n default: 'bg-surface text-text-primary',\n primary: 'bg-primary/10 text-primary',\n secondary: 'bg-secondary/10 text-secondary',\n accent: 'bg-accent/10 text-accent',\n success: 'bg-success/10 text-success',\n error: 'bg-error/10 text-error',\n warning: 'bg-warning/10 text-warning',\n info: 'bg-info/10 text-info',\n },\n ghost: {\n default: 'text-text-primary',\n primary: 'text-primary',\n secondary: 'text-secondary',\n accent: 'text-accent',\n success: 'text-success',\n error: 'text-error',\n warning: 'text-warning',\n info: 'text-info',\n },\n elevated: {\n default: 'bg-card text-card-foreground',\n primary: 'bg-card text-card-foreground ring-1 ring-primary/20',\n secondary: 'bg-card text-card-foreground ring-1 ring-secondary/20',\n accent: 'bg-card text-card-foreground ring-1 ring-accent/20',\n success: 'bg-card text-card-foreground ring-1 ring-success/20',\n error: 'bg-card text-card-foreground ring-1 ring-error/20',\n warning: 'bg-card text-card-foreground ring-1 ring-warning/20',\n info: 'bg-card text-card-foreground ring-1 ring-info/20',\n },\n }\n return Object.entries(styles).flatMap(([variant, colorMap]) =>\n Object.entries(colorMap).map(([color, cls]) => ({\n variant: variant as \"default\" | \"solid\" | \"outline\" | \"soft\" | \"ghost\" | \"elevated\",\n color: color as \"default\" | \"primary\" | \"secondary\" | \"accent\" | \"success\" | \"error\" | \"warning\" | \"info\",\n class: cls,\n }))\n )\n })(),\n defaultVariants: {\n variant: \"default\",\n color: \"default\",\n shadow: \"none\",\n hoverable: false,\n clickable: false,\n },\n});\n\nconst sizeClasses: Record<CardSize, string> = {\n xs: \"[--card-padding:0.5rem] [--card-content-padding:0.5rem] [--card-footer-padding:0.5rem]\",\n sm: \"[--card-padding:1rem] [--card-content-padding:1rem] [--card-footer-padding:1rem]\",\n md: \"[--card-padding:1.5rem] [--card-content-padding:1.5rem] [--card-footer-padding:1.5rem]\",\n lg: \"[--card-padding:2rem] [--card-content-padding:2rem] [--card-footer-padding:2rem]\",\n};\n\nconst Card = React.memo<CardProps>(\n ({\n className,\n variant = \"default\",\n color = \"default\",\n size = \"md\",\n shadow = \"none\",\n hoverable = false,\n clickable = false,\n bordered = true,\n loading = false,\n classNames,\n onClick,\n ref,\n children,\n ...props\n }) => {\n const cardContent = loading ? (\n <div className=\"animate-pulse\">\n <div className=\"p-(--card-padding)\">\n <div className=\"h-4 bg-surface rounded w-3/4 mb-2\" />\n <div className=\"h-3 bg-surface rounded w-1/2\" />\n </div>\n <div className=\"p-(--card-content-padding) pt-0\">\n <div className=\"h-3 bg-surface rounded w-full mb-2\" />\n <div className=\"h-3 bg-surface rounded w-full mb-2\" />\n <div className=\"h-3 bg-surface rounded w-2/3\" />\n </div>\n </div>\n ) : (\n children\n );\n\n const cardClassName = cn(\n \"card_root\",\n cardVariants({\n variant,\n color,\n shadow,\n hoverable,\n clickable,\n }),\n !bordered && \"border-transparent\",\n clickable && colorVars[color],\n clickable && 'focus-visible:ring-slot',\n sizeClasses[size],\n classNames?.root,\n className,\n );\n\n const contextValue = React.useMemo(\n () => ({ variant, color, classNames }),\n [variant, color, classNames],\n );\n\n if (clickable) {\n return (\n <CardContext.Provider value={contextValue}>\n <div\n ref={ref}\n role=\"button\"\n tabIndex={0}\n className={cardClassName}\n onClick={onClick}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n onClick?.(e as unknown as React.MouseEvent<HTMLDivElement>);\n }\n }}\n data-slot=\"root\"\n {...props}\n >\n {cardContent}\n </div>\n </CardContext.Provider>\n );\n }\n\n return (\n <CardContext.Provider value={contextValue}>\n <div ref={ref} className={cardClassName} onClick={onClick} data-slot=\"root\" {...props}>\n {cardContent}\n </div>\n </CardContext.Provider>\n );\n },\n);\nCard.displayName = \"Card\";\n\nconst CardHeader: React.FC<CardHeaderProps> = ({ className, ref, ...props }) => {\n const ctx = useCardContext();\n return (\n <div\n ref={ref}\n className={cn(\"card_header\", \"flex flex-col gap-1.5 p-(--card-padding)\", ctx?.classNames?.header, className)}\n data-slot=\"header\"\n {...props}\n />\n );\n};\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle: React.FC<CardTitleProps> = ({ className, as: Tag = \"h3\", ref, ...props }) => {\n const ctx = useCardContext();\n return (\n <Tag\n ref={ref}\n className={cn(\n \"card_title\",\n \"text-lg font-semibold leading-none tracking-tight\",\n ctx?.classNames?.title,\n className,\n )}\n data-slot=\"title\"\n {...props}\n />\n );\n};\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription: React.FC<CardDescriptionProps> = ({ className, ref, ...props }) => {\n const ctx = useCardContext();\n const isSolidColored = ctx?.variant === \"solid\" && ctx?.color !== \"default\";\n return (\n <p\n ref={ref}\n className={cn(\n \"card_description\",\n \"text-sm\",\n isSolidColored ? \"text-inherit opacity-80\" : \"text-text-secondary\",\n ctx?.classNames?.description,\n className,\n )}\n data-slot=\"description\"\n {...props}\n />\n );\n};\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent: React.FC<CardContentProps> = ({ className, ref, ...props }) => {\n const ctx = useCardContext();\n return (\n <div\n ref={ref}\n className={cn(\"card_content\", \"p-(--card-content-padding) pt-0\", ctx?.classNames?.content, className)}\n data-slot=\"content\"\n {...props}\n />\n );\n};\nCardContent.displayName = \"CardContent\";\n\nconst CardFooter: React.FC<CardFooterProps> = ({ className, ref, ...props }) => {\n const ctx = useCardContext();\n return (\n <div\n ref={ref}\n className={cn(\n \"card_footer\",\n \"flex items-center p-(--card-footer-padding) pt-0\",\n ctx?.classNames?.footer,\n className,\n )}\n data-slot=\"footer\"\n {...props}\n />\n );\n};\nCardFooter.displayName = \"CardFooter\";\n\nconst CardAction: React.FC<CardActionProps> = ({ className, ref, ...props }) => {\n const ctx = useCardContext();\n return (\n <div\n ref={ref}\n className={cn(\"card_action\", \"ml-auto flex items-center gap-2\", ctx?.classNames?.action, className)}\n data-slot=\"action\"\n {...props}\n />\n );\n};\nCardAction.displayName = \"CardAction\";\n\nconst aspectRatioClasses = {\n square: \"aspect-square\",\n video: \"aspect-video\",\n wide: \"aspect-[21/9]\",\n auto: \"\",\n};\n\nconst objectFitClasses = {\n cover: \"object-cover\",\n contain: \"object-contain\",\n fill: \"object-fill\",\n none: \"object-none\",\n};\n\nconst CardImage: React.FC<CardImageProps> = ({\n src,\n alt,\n position = \"top\",\n aspectRatio = \"video\",\n objectFit = \"cover\",\n className,\n ref,\n ...props\n}) => {\n const ctx = useCardContext();\n return (\n <div\n className={cn(\n \"overflow-hidden\",\n position === \"top\" && \"rounded-t-lg\",\n position === \"bottom\" && \"rounded-b-lg\",\n aspectRatio !== \"auto\" && aspectRatioClasses[aspectRatio],\n )}\n >\n <img\n ref={ref}\n src={src}\n alt={alt}\n className={cn(\"card_image\", \"w-full h-full\", objectFitClasses[objectFit], ctx?.classNames?.image, className)}\n data-slot=\"image\"\n loading=\"lazy\"\n {...props}\n />\n </div>\n );\n};\nCardImage.displayName = \"CardImage\";\n\nconst CardWithSubComponents = Object.assign(Card, {\n Header: CardHeader,\n Footer: CardFooter,\n Title: CardTitle,\n Description: CardDescription,\n Content: CardContent,\n Action: CardAction,\n Image: CardImage,\n});\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n CardAction,\n CardImage,\n cardVariants,\n};\n\nexport type { CardClassNames } from \"./types\";\nexport type * from \"./types\";\nexport default CardWithSubComponents;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/pagination/index.tsx"],"names":[],"mappings":"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","file":"chunk-VKY3JXAQ.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority'\nimport {\n ChevronLeft,\n ChevronRight,\n ChevronsLeft,\n ChevronsRight,\n MoreHorizontal,\n} from 'lucide-react'\nimport React, { useCallback, useMemo, useState } from 'react'\n\nimport { useRipple, RippleContainer } from '../hooks/useRipple'\nimport { cn, iconSizes } from '../utils'\nimport { colorVars } from '../variants'\nimport type { PaginationProps } from './types'\n\nconst paginationVariants = cva('inline-flex items-center gap-1', {\n variants: {\n size: {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-base',\n lg: 'text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst paginationItemVariants = cva(\n 'inline-flex items-center justify-center rounded-md font-medium outline-none cursor-pointer border min-w-fit',\n {\n variants: {\n size: {\n xs: 'h-6 min-w-6 px-1.5 text-xs',\n sm: 'h-8 min-w-8 px-2 text-sm',\n md: 'h-10 min-w-10 px-3 text-base',\n lg: 'h-12 min-w-12 px-4 text-lg',\n },\n disabled: {\n true: 'opacity-50 cursor-not-allowed',\n false: '',\n },\n },\n defaultVariants: {\n size: 'md',\n disabled: false,\n },\n },\n)\n\nconst getInactiveStyles = (color: string, variant: string) => {\n const baseColor = colorVars[color as keyof typeof colorVars] || colorVars.default\n\n if (variant === 'solid') {\n return cn(baseColor, 'border-slot bg-slot text-slot-fg hover:bg-slot-90')\n }\n if (variant === 'soft') {\n return cn(baseColor, 'border-slot-30 bg-slot-10 text-slot hover:bg-slot-20')\n }\n // default variant\n return cn(baseColor, 'border-border bg-background text-text-primary hover:bg-slot-10 hover:border-slot')\n}\n\nconst getActiveStyles = (color: string, variant: string) => {\n const baseColor = colorVars[color as keyof typeof colorVars] || colorVars.default\n\n if (variant === 'solid') {\n return cn(baseColor, 'border-slot bg-slot text-slot-fg')\n }\n if (variant === 'soft') {\n return cn(baseColor, 'border-slot bg-slot-20 text-slot')\n }\n // default variant\n return cn(baseColor, 'border-slot bg-slot-10 text-slot')\n}\n\nconst PaginationButton: React.FC<{ children: React.ReactNode; disabled?: boolean; className?: string; [key: string]: any }> = ({ children, disabled, className, ...props }) => {\n const { ripples, onPointerDown, onKeyDown, onAnimationEnd } = useRipple(!disabled)\n return (\n <button className={cn(className, 'relative overflow-hidden')} onPointerDown={onPointerDown} onKeyDown={onKeyDown} disabled={disabled} {...props}>\n {children}\n <RippleContainer ripples={ripples} onAnimationEnd={onAnimationEnd} />\n </button>\n )\n}\n\nconst Pagination = React.memo<PaginationProps>(\n ({\n total,\n current: controlledCurrent,\n defaultCurrent = 1,\n pageSize: controlledPageSize,\n defaultPageSize = 10,\n onChange,\n onShowSizeChange,\n color = 'default',\n size = 'md',\n variant = 'default',\n showSizeChanger = false,\n pageSizeOptions = [10, 20, 50, 100],\n showQuickJumper = false,\n showFirstLastButtons = false,\n showTotal,\n disabled = false,\n className,\n classNames,\n }) => {\n const [internalCurrent, setInternalCurrent] = useState(defaultCurrent)\n const [internalPageSize, setInternalPageSize] = useState(defaultPageSize)\n\n const current =\n controlledCurrent !== undefined ? controlledCurrent : internalCurrent\n const pageSize =\n controlledPageSize !== undefined ? controlledPageSize : internalPageSize\n const totalPages = Math.ceil(total / pageSize)\n\n const handlePageChange = useCallback((page: number) => {\n if (disabled || page === current || page < 1 || page > totalPages) return\n\n if (controlledCurrent === undefined) {\n setInternalCurrent(page)\n }\n onChange?.(page, pageSize)\n }, [disabled, current, totalPages, controlledCurrent, onChange, pageSize])\n\n const handlePageSizeChange = useCallback((newSize: number) => {\n if (disabled) return\n\n const newTotalPages = Math.ceil(total / newSize)\n const newCurrent = current > newTotalPages ? newTotalPages : current\n\n if (controlledPageSize === undefined) {\n setInternalPageSize(newSize)\n }\n if (controlledCurrent === undefined && newCurrent !== current) {\n setInternalCurrent(newCurrent)\n }\n\n onShowSizeChange?.(newCurrent, newSize)\n onChange?.(newCurrent, newSize)\n }, [disabled, total, current, controlledPageSize, controlledCurrent, onShowSizeChange, onChange])\n\n const getPageNumbers = useMemo(() => {\n const pages: (number | 'ellipsis')[] = []\n\n if (totalPages <= 7) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i)\n }\n } else if (current <= 4) {\n for (let i = 1; i <= 5; i++) pages.push(i)\n pages.push('ellipsis')\n pages.push(totalPages)\n } else if (current >= totalPages - 3) {\n pages.push(1)\n pages.push('ellipsis')\n for (let i = totalPages - 4; i <= totalPages; i++) pages.push(i)\n } else {\n pages.push(1)\n pages.push('ellipsis')\n pages.push(current - 1)\n pages.push(current)\n pages.push(current + 1)\n pages.push('ellipsis')\n pages.push(totalPages)\n }\n\n return pages\n }, [current, totalPages])\n\n const range: [number, number] = [\n (current - 1) * pageSize + 1,\n Math.min(current * pageSize, total),\n ]\n\n if (totalPages <= 0) {\n return null\n }\n\n return (\n <div\n data-slot=\"root\"\n className={cn(\n 'pagination_root',\n 'flex items-center gap-4',\n classNames?.root,\n className,\n )}\n >\n {showTotal && (\n <div\n className={cn(\n 'pagination_info',\n 'text-text-secondary text-sm',\n classNames?.info,\n )}\n >\n {showTotal(total, range)}\n </div>\n )}\n\n <div\n className={cn(\n 'pagination_list',\n paginationVariants({ size }),\n classNames?.list,\n )}\n >\n {/* First Page Button */}\n {showFirstLastButtons && (\n <PaginationButton\n type=\"button\"\n onClick={() => handlePageChange(1)}\n disabled={disabled || current === 1}\n className={cn(\n 'pagination_button',\n paginationItemVariants({\n size,\n disabled: disabled || current === 1,\n }),\n getInactiveStyles(color, variant),\n classNames?.button,\n )}\n aria-label=\"First page\"\n >\n <ChevronsLeft className={iconSizes[size]} />\n </PaginationButton>\n )}\n\n {/* Previous Button */}\n <PaginationButton\n type=\"button\"\n onClick={() => handlePageChange(current - 1)}\n disabled={disabled || current === 1}\n className={cn(\n 'pagination_button',\n paginationItemVariants({\n size,\n disabled: disabled || current === 1,\n }),\n getInactiveStyles(color, variant),\n classNames?.button,\n )}\n aria-label=\"Previous page\"\n >\n <ChevronLeft className={iconSizes[size]} />\n </PaginationButton>\n\n {/* Page Numbers */}\n {getPageNumbers.map((page, index) =>\n page === 'ellipsis' ? (\n <span\n key={`slot-${index}`}\n className={cn(\n 'pagination_ellipsis',\n paginationItemVariants({ size, disabled: false }),\n getInactiveStyles(color, 'soft'),\n 'border-none pointer-events-none',\n classNames?.ellipsis,\n )}\n aria-hidden=\"true\"\n >\n <MoreHorizontal className={iconSizes[size]} />\n </span>\n ) : (\n <PaginationButton\n type=\"button\"\n key={`slot-${index}`}\n onClick={() => handlePageChange(page)}\n disabled={disabled}\n aria-label={`Page ${page} of ${totalPages}`}\n aria-current={current === page ? 'page' : undefined}\n className={cn(\n 'pagination_button',\n paginationItemVariants({ size, disabled }),\n current === page\n ? getActiveStyles(color, variant)\n : getInactiveStyles(color, variant),\n current === page ? classNames?.buttonActive : classNames?.button,\n )}\n >\n {page}\n </PaginationButton>\n ),\n )}\n\n {/* Next Button */}\n <PaginationButton\n type=\"button\"\n onClick={() => handlePageChange(current + 1)}\n disabled={disabled || current === totalPages}\n className={cn(\n 'pagination_button',\n paginationItemVariants({\n size,\n disabled: disabled || current === totalPages,\n }),\n getInactiveStyles(color, variant),\n classNames?.button,\n )}\n aria-label=\"Next page\"\n >\n <ChevronRight className={iconSizes[size]} />\n </PaginationButton>\n\n {/* Last Page Button */}\n {showFirstLastButtons && (\n <PaginationButton\n type=\"button\"\n onClick={() => handlePageChange(totalPages)}\n disabled={disabled || current === totalPages}\n className={cn(\n 'pagination_button',\n paginationItemVariants({\n size,\n disabled: disabled || current === totalPages,\n }),\n getInactiveStyles(color, variant),\n classNames?.button,\n )}\n aria-label=\"Last page\"\n >\n <ChevronsRight className={iconSizes[size]} />\n </PaginationButton>\n )}\n </div>\n\n {/* Page Size Changer */}\n {showSizeChanger && (\n <select\n value={pageSize}\n onChange={(e) => handlePageSizeChange(Number(e.target.value))}\n disabled={disabled}\n aria-label=\"Items per page\"\n className={cn(\n paginationItemVariants({ size, disabled }),\n getInactiveStyles(color, variant),\n 'cursor-pointer',\n )}\n >\n {pageSizeOptions.map((option) => (\n <option\n key={option}\n value={option}\n >\n {option} / page\n </option>\n ))}\n </select>\n )}\n\n {/* Quick Jumper */}\n {showQuickJumper && (\n <div className=\"flex items-center gap-2\">\n <span className=\"text-text-secondary text-sm\">Go to</span>\n <input\n type=\"number\"\n min={1}\n max={totalPages}\n disabled={disabled}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n const inputEl = e.target as HTMLInputElement\n const value = parseInt(inputEl.value)\n if (!isNaN(value)) {\n const clampedValue = Math.max(1, Math.min(totalPages, value))\n handlePageChange(clampedValue)\n inputEl.value = ''\n }\n }\n }}\n onBlur={(e) => {\n const inputEl = e.target as HTMLInputElement\n const value = parseInt(inputEl.value)\n if (!isNaN(value) && inputEl.value !== '') {\n const clampedValue = Math.max(1, Math.min(totalPages, value))\n if (clampedValue !== value) {\n inputEl.value = String(clampedValue)\n }\n }\n }}\n className={cn(\n paginationItemVariants({ size, disabled }),\n getInactiveStyles(color, variant),\n 'w-16 text-center',\n )}\n />\n </div>\n )}\n </div>\n )\n },\n)\n\nPagination.displayName = 'Pagination'\n\nexport type * from './types'\nexport default Pagination\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/stepper/index.tsx"],"names":[],"mappings":"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","file":"chunk-VV3VO5TS.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 StepItem,\n StepperProps,\n StepperVariant,\n} from './types'\n\nconst stepCircleVariants = cva(\n 'rounded-full flex items-center justify-center font-medium transition-[colors,transform]',\n {\n variants: {\n size: {\n xs: 'w-6 h-6 text-xs',\n sm: 'w-8 h-8 text-sm',\n md: 'w-10 h-10 text-base',\n lg: 'w-12 h-12 text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n)\n\nconst stepDotVariants = cva('rounded-full transition-[colors,transform]', {\n variants: {\n size: {\n xs: 'w-2 h-2',\n sm: 'w-3 h-3',\n md: 'w-4 h-4',\n lg: 'w-5 h-5',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst stepLabelVariants = cva('font-medium', {\n variants: {\n size: {\n xs: 'text-xs',\n sm: 'text-sm',\n md: 'text-base',\n lg: 'text-lg',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst stepDescriptionVariants = cva('text-text-secondary', {\n variants: {\n size: {\n xs: 'text-xs',\n sm: 'text-xs',\n md: 'text-sm',\n lg: 'text-sm',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst connectorVariants = cva('bg-border', {\n variants: {\n size: {\n xs: 'h-0.5',\n sm: 'h-0.5',\n md: 'h-1',\n lg: 'h-1',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\n\nconst getStepCircleClasses = (\n variant: StepperVariant,\n state: 'wait' | 'process' | 'finish' | 'error',\n) => {\n const isError = state === 'error'\n const isWait = state === 'wait'\n\n if (isError) {\n if (variant === 'solid')\n return 'bg-error text-error-foreground border-2 border-error'\n if (variant === 'soft')\n return 'bg-error/10 border-2 border-error/50 text-error'\n return 'bg-error/20 border-2 border-error text-error'\n }\n\n if (isWait) {\n if (variant === 'solid') {\n return 'bg-slot-20 text-slot-fg opacity-50 border-2 border-slot-20'\n }\n if (variant === 'soft') {\n return 'bg-slot-10 border-2 border-slot-20 text-text-secondary'\n }\n return 'bg-slot-10 border-2 border-slot-20 text-text-secondary'\n }\n\n // process or finish states\n if (variant === 'solid') {\n return 'bg-slot text-slot-fg border-2 border-slot'\n }\n if (variant === 'soft') {\n return 'bg-slot-10 border-2 border-slot-50 text-slot'\n }\n return 'bg-slot-20 border-2 border-slot text-slot'\n}\n\nconst getConnectorClasses = (\n variant: StepperVariant,\n isFinished: boolean,\n) => {\n if (!isFinished) return 'bg-border/50'\n\n if (variant === 'soft') {\n return 'bg-slot-50'\n }\n return 'bg-slot'\n}\n\nconst Stepper = React.memo<StepperProps>(\n ({\n steps,\n currentStep,\n color = 'primary',\n size = 'md',\n variant = 'default',\n orientation = 'horizontal',\n type = 'numbered',\n status,\n onStepClick,\n className,\n classNames,\n }) => {\n const getStepState = (\n index: number,\n step: StepItem,\n ): 'wait' | 'process' | 'finish' | 'error' => {\n if (step.status) return step.status\n if (index === currentStep && status === 'error') return 'error'\n if (index < currentStep) return 'finish'\n if (index === currentStep) return status || 'process'\n return 'wait'\n }\n\n const handleStepClick = (index: number, disabled?: boolean) => {\n if (disabled) return\n onStepClick?.(index)\n }\n\n if (orientation === 'vertical') {\n return (\n <div\n data-slot=\"root\"\n role=\"list\"\n className={cn(\n 'stepper_root',\n 'flex flex-col',\n colorVars[color],\n classNames?.root,\n className,\n )}\n >\n {steps.map((step, index) => {\n const state = getStepState(index, step)\n const isClickable = !step.disabled && onStepClick\n\n return (\n <div\n key={index}\n role=\"listitem\"\n aria-label={`Step ${index + 1} of ${steps.length}`}\n className={cn(\n 'stepper_step',\n 'flex',\n state === 'process' && classNames?.stepActive,\n state === 'finish' && classNames?.stepCompleted,\n classNames?.step,\n )}\n {...(index === currentStep && { 'aria-current': 'step' })}\n >\n <div className=\"flex flex-col items-center mr-4\">\n <div\n {...(isClickable && {\n role: 'button',\n tabIndex: 0,\n onKeyDown: (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleStepClick(index, step.disabled)\n }\n },\n })}\n className={cn(\n 'stepper_icon',\n stepCircleVariants({ size }),\n getStepCircleClasses(variant, state),\n isClickable && 'cursor-pointer hover:scale-105 transition-transform duration-150',\n step.disabled && 'opacity-50 cursor-not-allowed',\n classNames?.icon,\n )}\n onClick={() => handleStepClick(index, step.disabled)}\n >\n {step.icon || index + 1}\n </div>\n {index < steps.length - 1 && (\n <div\n className={cn(\n 'stepper_connector',\n 'w-0.5 flex-1 my-2',\n getConnectorClasses(variant, state === 'finish'),\n classNames?.connector,\n )}\n />\n )}\n </div>\n <div\n className={cn('pb-8', index === steps.length - 1 && 'pb-0')}\n >\n <div\n className={cn(\n 'stepper_label',\n stepLabelVariants({ size }),\n state === 'wait'\n ? 'text-text-secondary'\n : 'text-text-primary',\n state === 'error' && 'text-error',\n classNames?.label,\n )}\n >\n {step.label}\n </div>\n {step.description && (\n <div\n className={cn(\n 'stepper_description',\n stepDescriptionVariants({ size }),\n 'mt-1',\n classNames?.description,\n )}\n >\n {step.description}\n </div>\n )}\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n\n if (type === 'dots') {\n return (\n <div\n role=\"list\"\n className={cn(\n 'stepper_root',\n 'flex items-start',\n colorVars[color],\n classNames?.root,\n className,\n )}\n >\n {steps.map((step, index) => {\n const state = getStepState(index, step)\n const isClickable = !step.disabled && onStepClick\n const prevStep = steps[index - 1]\n const prevState =\n index > 0 && prevStep ? getStepState(index - 1, prevStep) : 'wait'\n\n return (\n <React.Fragment key={index}>\n <div\n role=\"listitem\"\n aria-label={`Step ${index + 1} of ${steps.length}`}\n className={cn(\n 'stepper_step',\n 'flex flex-col items-center flex-1',\n index === 0 && 'items-start',\n index === steps.length - 1 && 'items-end',\n state === 'process' && classNames?.stepActive,\n state === 'finish' && classNames?.stepCompleted,\n classNames?.step,\n )}\n {...(index === currentStep && { 'aria-current': 'step' })}\n >\n <div className=\"flex items-center w-full\">\n {index > 0 && (\n <div\n className={cn(\n 'stepper_connector',\n 'flex-1',\n connectorVariants({ size }),\n getConnectorClasses(\n variant,\n prevState === 'finish',\n ),\n classNames?.connector,\n )}\n />\n )}\n <div\n {...(isClickable && {\n role: 'button',\n tabIndex: 0,\n onKeyDown: (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleStepClick(index, step.disabled)\n }\n },\n })}\n className={cn(\n 'stepper_icon',\n stepDotVariants({ size }),\n getStepCircleClasses(variant, state),\n isClickable && 'cursor-pointer hover:scale-105 transition-transform duration-150',\n step.disabled && 'opacity-50 cursor-not-allowed',\n 'flex-shrink-0',\n classNames?.icon,\n )}\n onClick={() => handleStepClick(index, step.disabled)}\n />\n {index < steps.length - 1 && (\n <div\n className={cn(\n 'stepper_connector',\n 'flex-1',\n connectorVariants({ size }),\n getConnectorClasses(\n variant,\n state === 'finish',\n ),\n classNames?.connector,\n )}\n />\n )}\n </div>\n <div\n className={cn(\n 'mt-2 px-2',\n index === 0 && 'text-left',\n index === steps.length - 1 && 'text-right',\n index > 0 && index < steps.length - 1 && 'text-center',\n )}\n >\n <div\n className={cn(\n 'stepper_label',\n stepLabelVariants({ size }),\n state === 'wait'\n ? 'text-text-secondary'\n : 'text-text-primary',\n state === 'error' && 'text-error',\n classNames?.label,\n )}\n >\n {step.label}\n </div>\n {step.description && (\n <div\n className={cn(\n 'stepper_description',\n stepDescriptionVariants({ size }),\n 'mt-1',\n classNames?.description,\n )}\n >\n {step.description}\n </div>\n )}\n </div>\n </div>\n </React.Fragment>\n )\n })}\n </div>\n )\n }\n\n return (\n <div\n role=\"list\"\n className={cn(\n 'stepper_root',\n 'flex items-start',\n classNames?.root,\n className,\n )}\n >\n {steps.map((step, index) => {\n const state = getStepState(index, step)\n const isClickable = !step.disabled && onStepClick\n const prevStep = steps[index - 1]\n const prevState =\n index > 0 && prevStep ? getStepState(index - 1, prevStep) : 'wait'\n\n return (\n <React.Fragment key={index}>\n <div\n role=\"listitem\"\n aria-label={`Step ${index + 1} of ${steps.length}`}\n className={cn(\n 'stepper_step',\n 'flex flex-col items-center flex-1',\n index === 0 && 'items-start',\n index === steps.length - 1 && 'items-end',\n state === 'process' && classNames?.stepActive,\n state === 'finish' && classNames?.stepCompleted,\n classNames?.step,\n )}\n {...(index === currentStep && { 'aria-current': 'step' })}\n >\n <div className=\"flex items-center w-full\">\n {index > 0 && (\n <div\n className={cn(\n 'stepper_connector',\n 'flex-1',\n connectorVariants({ size }),\n getConnectorClasses(\n variant,\n prevState === 'finish',\n ),\n classNames?.connector,\n )}\n />\n )}\n <div\n {...(isClickable && {\n role: 'button',\n tabIndex: 0,\n onKeyDown: (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleStepClick(index, step.disabled)\n }\n },\n })}\n className={cn(\n 'stepper_icon',\n stepCircleVariants({ size }),\n getStepCircleClasses(variant, state),\n isClickable && 'cursor-pointer hover:scale-105 transition-transform duration-150',\n step.disabled && 'opacity-50 cursor-not-allowed',\n 'flex-shrink-0',\n classNames?.icon,\n )}\n onClick={() => handleStepClick(index, step.disabled)}\n >\n {step.icon || index + 1}\n </div>\n {index < steps.length - 1 && (\n <div\n className={cn(\n 'stepper_connector',\n 'flex-1',\n connectorVariants({ size }),\n getConnectorClasses(variant, state === 'finish'),\n classNames?.connector,\n )}\n />\n )}\n </div>\n <div\n className={cn(\n 'mt-2 px-2',\n index === 0 && 'text-left',\n index === steps.length - 1 && 'text-right',\n index > 0 && index < steps.length - 1 && 'text-center',\n )}\n >\n <div\n className={cn(\n 'stepper_label',\n stepLabelVariants({ size }),\n state === 'wait'\n ? 'text-text-secondary'\n : 'text-text-primary',\n state === 'error' && 'text-error',\n classNames?.label,\n )}\n >\n {step.label}\n </div>\n {step.description && (\n <div\n className={cn(\n 'stepper_description',\n stepDescriptionVariants({ size }),\n 'mt-1',\n classNames?.description,\n )}\n >\n {step.description}\n </div>\n )}\n </div>\n </div>\n </React.Fragment>\n )\n })}\n </div>\n )\n },\n)\n\nStepper.displayName = 'Stepper'\n\nexport type * from './types'\nexport default Stepper\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/tag/index.tsx"],"names":[],"mappings":";;;;;;;AAcA,IAAM,WAAA,GAAc,IAAI,0FAAA,EAA4F;AAAA,EAClH,QAAA,EAAU;AAAA,IACR,OAAA,EAAS;AAAA,MACP,OAAA,EAAS,yCAAA;AAAA,MACT,KAAA,EAAO,0DAAA;AAAA,MACP,OAAA,EAAS,+CAAA;AAAA,MACT,IAAA,EAAM;AAAA,KACR;AAAA,IACA,KAAA,EAAO,SAAA;AAAA,IACP,IAAA,EAAM;AAAA,MACJ,EAAA,EAAI,2BAAA;AAAA,MACJ,EAAA,EAAI,mBAAA;AAAA,MACJ,EAAA,EAAI,qBAAA;AAAA,MACJ,EAAA,EAAI;AAAA;AACN,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,OAAA,EAAS,OAAA;AAAA,IACT,KAAA,EAAO,SAAA;AAAA,IACP,IAAA,EAAM;AAAA;AAEV,CAAC,CAAA;AAKD,IAAM,eAAA,GAAkB;AAAA,EACtB,EAAA,EAAI,UAAA;AAAA,EACJ,EAAA,EAAI,QAAA;AAAA,EACJ,EAAA,EAAI,UAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AA6CA,IAAM,GAAA,GAAM,KAAA,CAAM,IAAA,CAAe,CAAC;AAAA,EAChC,QAAA;AAAA,EACA,KAAA,GAAQ,SAAA;AAAA,EACR,OAAA,GAAU,OAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,QAAA,GAAW,KAAA;AAAA,EACX,OAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,sBAAA,GAAyB,KAAA;AAAA,EACzB,GAAG;AACL,CAAA,KAAM;AAOF,EAAA,MAAM,WAAA,GAAc,CAAC,CAAA,KAA2C;AAC9D,IAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,IAAA,OAAA,GAAU,CAAC,CAAA;AAAA,EACb,CAAA;AAQA,EAAA,MAAM,kBAAA,GAAqB,CAAC,CAAA,KAA8C;AAExE,IAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAA,CAAE,QAAQ,GAAA,EAAK;AACtC,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,OAAA,GAAU,CAAmD,CAAA;AAAA,IAC/D;AAAA,EACF,CAAA;AASA,EAAA,MAAM,gBAAA,GAAmB,CAAC,CAAA,KAA4C;AAEpE,IAAA,IAAI,CAAC,0BAA0B,QAAA,KAAa,CAAA,CAAE,QAAQ,QAAA,IAAY,CAAA,CAAE,QAAQ,WAAA,CAAA,EAAc;AACxF,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,OAAA,GAAU,CAAmD,CAAA;AAC7D,MAAA;AAAA,IACF;AAGA,IAAA,IAAI,YAAY,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAA,CAAE,QAAQ,GAAA,CAAA,EAAM;AACnD,MAAA,CAAA,CAAE,cAAA,EAAe;AACjB,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,OAAA,CAAQ,CAAiD,CAAA;AAAA,IAC3D;AAAA,EACF,CAAA;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,UAAA;AAAA,QACA,WAAA,CAAY,EAAE,OAAA,EAAS,KAAA,EAAO,MAAM,CAAA;AAAA,QAAA,CACnC,WAAW,QAAA,KAAa,gBAAA;AAAA,QAAA,CACxB,OAAA,IAAY,CAAC,sBAAA,IAA0B,QAAA,KACtC,uHAAA;AAAA,QACF,UAAA,EAAY,IAAA;AAAA,QACZ;AAAA,OACF;AAAA,MACA,OAAA;AAAA,MACA,SAAA,EAAW,OAAA,IAAY,CAAC,sBAAA,IAA0B,WAAY,gBAAA,GAAmB,MAAA;AAAA,MACjF,IAAA,EAAM,OAAA,IAAY,CAAC,sBAAA,IAA0B,WAAY,QAAA,GAAW,MAAA;AAAA,MACpE,QAAA,EAAU,OAAA,IAAY,CAAC,sBAAA,IAA0B,WAAY,CAAA,GAAI,MAAA;AAAA,MACjE,YAAA,EAAA,CACG,WAAY,CAAC,sBAAA,IAA0B,aAAc,OAAO,QAAA,KAAa,WAAW,QAAA,GAAW,MAAA;AAAA,MAElG,WAAA,EAAU,MAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA,oBACC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,EAAA,CAAG,yDAAyD,eAAA,CAAgB,IAAI,CAAC,CAAA,EAC/F,gBAAM,cAAA,CAAe,IAAI,CAAA,GACtB,KAAA,CAAM,aAAa,IAAA,EAAM;AAAA,UACvB,SAAA,EAAW,EAAA,CAAG,eAAA,EAAkB,IAAA,CAAK,MAAiC,SAAS;AAAA,SAC3C,IACtC,IAAA,EACN,CAAA;AAAA,wBAEF,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,EAAA,CAAG,aAAA,EAAe,UAAA,EAAY,OAAO,CAAA;AAAA,YAChD,WAAA,EAAU,SAAA;AAAA,YAET;AAAA;AAAA,SACH;AAAA,QACC,QAAA,oBACC,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,WAAA;AAAA,YACT,SAAA,EAAW,kBAAA;AAAA,YACX,SAAA,EAAW,EAAA;AAAA,cACT,iBAAA;AAAA,cACA,wMAAA;AAAA,cACA,gBAAgB,IAAI,CAAA;AAAA,cACpB,UAAA,EAAY;AAAA,aACd;AAAA,YACA,cAAY,OAAO,QAAA,KAAa,QAAA,GAAW,CAAA,OAAA,EAAU,QAAQ,CAAA,CAAA,GAAK,YAAA;AAAA,YAClE,QAAA,EAAU,yBAAyB,CAAA,GAAI,EAAA;AAAA,YACvC,WAAA,EAAU,aAAA;AAAA,YAEV,QAAA,kBAAA,GAAA,CAAC,CAAA,EAAA,EAAE,SAAA,EAAU,eAAA,EAAgB;AAAA;AAAA;AAC/B;AAAA;AAAA,GAEJ;AAEN,CAAC,CAAA;AAED,GAAA,CAAI,WAAA,GAAc,KAAA;AAGlB,IAAO,WAAA,GAAQ","file":"chunk-W5L7C7WS.js","sourcesContent":["'use client'\n\nimport { cva } from 'class-variance-authority';\nimport { X } from 'lucide-react';\nimport React from 'react';\n\nimport { cn } from '../utils';\nimport { colorVars } from '../variants';\nimport type { TagProps } from './types';\n\n/**\n * Class variance authority configuration for the Tag component\n * Defines style variants for color, variant, and size\n */\nconst tagVariants = cva('inline-flex items-center gap-1.5 whitespace-nowrap rounded font-medium transition-colors', {\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-[10px] px-1.5 py-0.5',\n sm: 'text-xs px-2 py-1',\n md: 'text-sm px-2.5 py-1',\n lg: 'text-base px-3 py-1.5',\n },\n },\n defaultVariants: {\n variant: 'solid',\n color: 'primary',\n size: 'sm',\n },\n});\n\n/**\n * Icon and close button size variants for different tag sizes\n */\nconst iconSizeClasses = {\n xs: 'size-2.5',\n sm: 'size-3',\n md: 'size-3.5',\n lg: 'size-4',\n};\n\n/**\n * Tag Component\n *\n * An interactive badge variant that can be used for labels, categories, or removable items.\n * Supports multiple variants, colors, sizes, icons, and close functionality.\n *\n * @component\n * @example\n * // Basic tag\n * <Tag>Label</Tag>\n *\n * @example\n * // Tag with close button\n * <Tag closable onClose={(e) => console.log('Tag removed')}>\n * Removable Tag\n * </Tag>\n *\n * @example\n * // Tag with icon\n * <Tag icon={<Star />} color=\"warning\">\n * Featured\n * </Tag>\n *\n * @example\n * // Different variants\n * <Tag variant=\"outline\" color=\"success\">Outline Tag</Tag>\n * <Tag variant=\"soft\" color=\"info\">Soft Tag</Tag>\n *\n * @example\n * // Disable keyboard removal (Backspace/Delete on tag)\n * <Tag closable disableKeyboardRemoval onClose={(e) => console.log('Tag removed')}>\n * No keyboard removal\n * </Tag>\n *\n * @example\n * // Tag with keyboard removal enabled (focus on tag and press Delete/Backspace)\n * <Tag closable onClose={(e) => console.log('Tag removed')}>\n * Press Delete or Backspace to remove\n * </Tag>\n *\n * @param {TagProps} props - Component props\n * @returns {JSX.Element} Rendered tag component\n */\nconst Tag = React.memo<TagProps>(({\n children,\n color = 'primary',\n variant = 'solid',\n size = 'sm',\n closable = false,\n onClose,\n icon,\n className,\n classNames,\n onClick,\n disableKeyboardRemoval = false,\n ...props\n}) => {\n /**\n * Handles the close button click event\n * Stops event propagation to prevent triggering parent onClick handlers\n *\n * @param {React.MouseEvent<HTMLButtonElement>} e - Mouse event\n */\n const handleClose = (e: React.MouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n onClose?.(e);\n };\n\n /**\n * Handles keyboard events for the close button\n * Always responds to Enter/Space for activation (accessibility requirement)\n *\n * @param {React.KeyboardEvent<HTMLButtonElement>} e - Keyboard event\n */\n const handleCloseKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n // Always allow Enter/Space for activation (accessibility requirement)\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n e.stopPropagation();\n onClose?.(e as unknown as React.MouseEvent<HTMLButtonElement>);\n }\n };\n\n /**\n * Handles keyboard events for the tag\n * Removes tag when Delete or Backspace is pressed (takes priority)\n * Activates onClick when Enter or Space is pressed\n *\n * @param {React.KeyboardEvent<HTMLSpanElement>} e - Keyboard event\n */\n const handleTagKeyDown = (e: React.KeyboardEvent<HTMLSpanElement>) => {\n // Handle deletion for closable tags (takes priority over onClick)\n if (!disableKeyboardRemoval && closable && (e.key === 'Delete' || e.key === 'Backspace')) {\n e.preventDefault();\n e.stopPropagation();\n onClose?.(e as unknown as React.MouseEvent<HTMLButtonElement>);\n return;\n }\n\n // Handle activation for clickable tags\n if (onClick && (e.key === 'Enter' || e.key === ' ')) {\n e.preventDefault();\n e.stopPropagation();\n onClick(e as unknown as React.MouseEvent<HTMLSpanElement>);\n }\n };\n\n return (\n <span\n className={cn(\n 'tag_root',\n tagVariants({ variant, color, size }),\n (onClick || closable) && 'cursor-pointer',\n (onClick || (!disableKeyboardRemoval && closable)) &&\n 'focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-primary ring-offset-background',\n classNames?.root,\n className\n )}\n onClick={onClick}\n onKeyDown={onClick || (!disableKeyboardRemoval && closable) ? handleTagKeyDown : undefined}\n role={onClick || (!disableKeyboardRemoval && closable) ? 'button' : undefined}\n tabIndex={onClick || (!disableKeyboardRemoval && closable) ? 0 : undefined}\n aria-label={\n (onClick || (!disableKeyboardRemoval && closable)) && typeof children === 'string' ? children : undefined\n }\n data-slot='root'\n {...props}\n >\n {icon && (\n <span className={cn('inline-flex items-center justify-center flex-shrink-0', iconSizeClasses[size])}>\n {React.isValidElement(icon)\n ? React.cloneElement(icon, {\n className: cn('w-full h-full', (icon.props as { className?: string }).className),\n } as React.HTMLAttributes<HTMLElement>)\n : icon}\n </span>\n )}\n <span\n className={cn('tag_content', classNames?.content)}\n data-slot='content'\n >\n {children}\n </span>\n {closable && (\n <button\n type='button'\n onClick={handleClose}\n onKeyDown={handleCloseKeyDown}\n className={cn(\n 'tag_closeButton',\n 'inline-flex items-center justify-center flex-shrink-0 cursor-pointer rounded-sm opacity-70 hover:opacity-100 transition-opacity focus:outline-none focus:ring-2 focus:ring-current focus:ring-offset-1',\n iconSizeClasses[size],\n classNames?.closeButton\n )}\n aria-label={typeof children === 'string' ? `Remove ${children}` : 'Remove tag'}\n tabIndex={disableKeyboardRemoval ? 0 : -1}\n data-slot='closeButton'\n >\n <X className='w-full h-full' />\n </button>\n )}\n </span>\n );\n});\n\nTag.displayName = 'Tag';\n\nexport type * from './types';\nexport default Tag;\n"]}