@mdigital_ui/ui 0.3.9 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/package.json +1 -1
  2. package/dist/accordion/index.d.ts +0 -6
  3. package/dist/accordion/index.d.ts.map +0 -1
  4. package/dist/accordion/index.js +0 -5
  5. package/dist/accordion/index.js.map +0 -1
  6. package/dist/accordion/types.d.ts +0 -125
  7. package/dist/accordion/types.d.ts.map +0 -1
  8. package/dist/avatar/index.d.ts +0 -14
  9. package/dist/avatar/index.d.ts.map +0 -1
  10. package/dist/avatar/index.js +0 -4
  11. package/dist/avatar/index.js.map +0 -1
  12. package/dist/avatar/types.d.ts +0 -147
  13. package/dist/avatar/types.d.ts.map +0 -1
  14. package/dist/badge/index.d.ts +0 -28
  15. package/dist/badge/index.d.ts.map +0 -1
  16. package/dist/badge/index.js +0 -5
  17. package/dist/badge/index.js.map +0 -1
  18. package/dist/badge/types.d.ts +0 -97
  19. package/dist/badge/types.d.ts.map +0 -1
  20. package/dist/breadcrumbs/index.d.ts +0 -13
  21. package/dist/breadcrumbs/index.d.ts.map +0 -1
  22. package/dist/breadcrumbs/index.js +0 -8
  23. package/dist/breadcrumbs/index.js.map +0 -1
  24. package/dist/breadcrumbs/types.d.ts +0 -118
  25. package/dist/breadcrumbs/types.d.ts.map +0 -1
  26. package/dist/button/index.d.ts +0 -15
  27. package/dist/button/index.d.ts.map +0 -1
  28. package/dist/button/index.js +0 -7
  29. package/dist/button/index.js.map +0 -1
  30. package/dist/button/types.d.ts +0 -103
  31. package/dist/button/types.d.ts.map +0 -1
  32. package/dist/button-group/index.d.ts +0 -34
  33. package/dist/button-group/index.d.ts.map +0 -1
  34. package/dist/button-group/index.js +0 -4
  35. package/dist/button-group/index.js.map +0 -1
  36. package/dist/button-group/types.d.ts +0 -75
  37. package/dist/button-group/types.d.ts.map +0 -1
  38. package/dist/card/index.d.ts +0 -71
  39. package/dist/card/index.d.ts.map +0 -1
  40. package/dist/card/index.js +0 -5
  41. package/dist/card/index.js.map +0 -1
  42. package/dist/card/types.d.ts +0 -136
  43. package/dist/card/types.d.ts.map +0 -1
  44. package/dist/carousel/carousel-navigation.d.ts +0 -9
  45. package/dist/carousel/carousel-navigation.d.ts.map +0 -1
  46. package/dist/carousel/index.d.ts +0 -50
  47. package/dist/carousel/index.d.ts.map +0 -1
  48. package/dist/carousel/index.js +0 -4
  49. package/dist/carousel/index.js.map +0 -1
  50. package/dist/cascader/index.d.ts +0 -27
  51. package/dist/cascader/index.d.ts.map +0 -1
  52. package/dist/cascader/index.js +0 -5
  53. package/dist/cascader/index.js.map +0 -1
  54. package/dist/cascader/types.d.ts +0 -220
  55. package/dist/cascader/types.d.ts.map +0 -1
  56. package/dist/checkbox/index.d.ts +0 -6
  57. package/dist/checkbox/index.d.ts.map +0 -1
  58. package/dist/checkbox/index.js +0 -5
  59. package/dist/checkbox/index.js.map +0 -1
  60. package/dist/checkbox/types.d.ts +0 -21
  61. package/dist/checkbox/types.d.ts.map +0 -1
  62. package/dist/checkbox-group/index.d.ts +0 -6
  63. package/dist/checkbox-group/index.d.ts.map +0 -1
  64. package/dist/checkbox-group/index.js +0 -4
  65. package/dist/checkbox-group/index.js.map +0 -1
  66. package/dist/checkbox-group/types.d.ts +0 -43
  67. package/dist/checkbox-group/types.d.ts.map +0 -1
  68. package/dist/chunk-2F5MMMVP.js +0 -272
  69. package/dist/chunk-2F5MMMVP.js.map +0 -1
  70. package/dist/chunk-2PNLIQYM.js +0 -76
  71. package/dist/chunk-2PNLIQYM.js.map +0 -1
  72. package/dist/chunk-2TLOWZE4.js +0 -689
  73. package/dist/chunk-2TLOWZE4.js.map +0 -1
  74. package/dist/chunk-2WZVD7P3.js +0 -145
  75. package/dist/chunk-2WZVD7P3.js.map +0 -1
  76. package/dist/chunk-3BZE6BBJ.js +0 -758
  77. package/dist/chunk-3BZE6BBJ.js.map +0 -1
  78. package/dist/chunk-3PWILVOE.js +0 -182
  79. package/dist/chunk-3PWILVOE.js.map +0 -1
  80. package/dist/chunk-4F7U5UPY.js +0 -429
  81. package/dist/chunk-4F7U5UPY.js.map +0 -1
  82. package/dist/chunk-4FFVNUTK.js +0 -35
  83. package/dist/chunk-4FFVNUTK.js.map +0 -1
  84. package/dist/chunk-5PUATOLR.js +0 -127
  85. package/dist/chunk-5PUATOLR.js.map +0 -1
  86. package/dist/chunk-5QQH5LYU.js +0 -345
  87. package/dist/chunk-5QQH5LYU.js.map +0 -1
  88. package/dist/chunk-6BAP6QUT.js +0 -72
  89. package/dist/chunk-6BAP6QUT.js.map +0 -1
  90. package/dist/chunk-6G3BMY4N.js +0 -349
  91. package/dist/chunk-6G3BMY4N.js.map +0 -1
  92. package/dist/chunk-6HGUDHHE.js +0 -86
  93. package/dist/chunk-6HGUDHHE.js.map +0 -1
  94. package/dist/chunk-6JGNJI5T.js +0 -174
  95. package/dist/chunk-6JGNJI5T.js.map +0 -1
  96. package/dist/chunk-6LYRMQOI.js +0 -328
  97. package/dist/chunk-6LYRMQOI.js.map +0 -1
  98. package/dist/chunk-6YOOKE6C.js +0 -138
  99. package/dist/chunk-6YOOKE6C.js.map +0 -1
  100. package/dist/chunk-764UKE6X.js +0 -359
  101. package/dist/chunk-764UKE6X.js.map +0 -1
  102. package/dist/chunk-7UCNBMCV.js +0 -261
  103. package/dist/chunk-7UCNBMCV.js.map +0 -1
  104. package/dist/chunk-BVO2BNFG.js +0 -437
  105. package/dist/chunk-BVO2BNFG.js.map +0 -1
  106. package/dist/chunk-C4SHFLFR.js +0 -75
  107. package/dist/chunk-C4SHFLFR.js.map +0 -1
  108. package/dist/chunk-C5IGZLIT.js +0 -107
  109. package/dist/chunk-C5IGZLIT.js.map +0 -1
  110. package/dist/chunk-CH3YMDCF.js +0 -334
  111. package/dist/chunk-CH3YMDCF.js.map +0 -1
  112. package/dist/chunk-DUIL5BYS.js +0 -293
  113. package/dist/chunk-DUIL5BYS.js.map +0 -1
  114. package/dist/chunk-EHWXPH76.js +0 -42
  115. package/dist/chunk-EHWXPH76.js.map +0 -1
  116. package/dist/chunk-EPE3OODP.js +0 -332
  117. package/dist/chunk-EPE3OODP.js.map +0 -1
  118. package/dist/chunk-ERRZ2CSG.js +0 -192
  119. package/dist/chunk-ERRZ2CSG.js.map +0 -1
  120. package/dist/chunk-FAD45WRP.js +0 -378
  121. package/dist/chunk-FAD45WRP.js.map +0 -1
  122. package/dist/chunk-FZSCLZF6.js +0 -552
  123. package/dist/chunk-FZSCLZF6.js.map +0 -1
  124. package/dist/chunk-GJPZOMFE.js +0 -407
  125. package/dist/chunk-GJPZOMFE.js.map +0 -1
  126. package/dist/chunk-GOLARX5K.js +0 -310
  127. package/dist/chunk-GOLARX5K.js.map +0 -1
  128. package/dist/chunk-GVVP5TZM.js +0 -506
  129. package/dist/chunk-GVVP5TZM.js.map +0 -1
  130. package/dist/chunk-H6G4BUPA.js +0 -586
  131. package/dist/chunk-H6G4BUPA.js.map +0 -1
  132. package/dist/chunk-HCOTO5WX.js +0 -77
  133. package/dist/chunk-HCOTO5WX.js.map +0 -1
  134. package/dist/chunk-HECAAILV.js +0 -94
  135. package/dist/chunk-HECAAILV.js.map +0 -1
  136. package/dist/chunk-HK3NJMSY.js +0 -383
  137. package/dist/chunk-HK3NJMSY.js.map +0 -1
  138. package/dist/chunk-HQLHE5RX.js +0 -297
  139. package/dist/chunk-HQLHE5RX.js.map +0 -1
  140. package/dist/chunk-I32ZQUYY.js +0 -184
  141. package/dist/chunk-I32ZQUYY.js.map +0 -1
  142. package/dist/chunk-JWTWPZ32.js +0 -355
  143. package/dist/chunk-JWTWPZ32.js.map +0 -1
  144. package/dist/chunk-KH577UDI.js +0 -218
  145. package/dist/chunk-KH577UDI.js.map +0 -1
  146. package/dist/chunk-KJTMZJ7V.js +0 -239
  147. package/dist/chunk-KJTMZJ7V.js.map +0 -1
  148. package/dist/chunk-L5UYN5LX.js +0 -787
  149. package/dist/chunk-L5UYN5LX.js.map +0 -1
  150. package/dist/chunk-LX4FDH4J.js +0 -299
  151. package/dist/chunk-LX4FDH4J.js.map +0 -1
  152. package/dist/chunk-N2WHJ3FI.js +0 -130
  153. package/dist/chunk-N2WHJ3FI.js.map +0 -1
  154. package/dist/chunk-NGYLRX6F.js +0 -42
  155. package/dist/chunk-NGYLRX6F.js.map +0 -1
  156. package/dist/chunk-O3V3BTIJ.js +0 -419
  157. package/dist/chunk-O3V3BTIJ.js.map +0 -1
  158. package/dist/chunk-OFUPJH35.js +0 -74
  159. package/dist/chunk-OFUPJH35.js.map +0 -1
  160. package/dist/chunk-OLTQAMV2.js +0 -210
  161. package/dist/chunk-OLTQAMV2.js.map +0 -1
  162. package/dist/chunk-ONGJXAYQ.js +0 -144
  163. package/dist/chunk-ONGJXAYQ.js.map +0 -1
  164. package/dist/chunk-OQFYIKWR.js +0 -1264
  165. package/dist/chunk-OQFYIKWR.js.map +0 -1
  166. package/dist/chunk-PMA4VCAH.js +0 -253
  167. package/dist/chunk-PMA4VCAH.js.map +0 -1
  168. package/dist/chunk-POLVJ36Y.js +0 -210
  169. package/dist/chunk-POLVJ36Y.js.map +0 -1
  170. package/dist/chunk-POXI7JJ4.js +0 -351
  171. package/dist/chunk-POXI7JJ4.js.map +0 -1
  172. package/dist/chunk-R3TLU26W.js +0 -110
  173. package/dist/chunk-R3TLU26W.js.map +0 -1
  174. package/dist/chunk-RFHTC6AH.js +0 -250
  175. package/dist/chunk-RFHTC6AH.js.map +0 -1
  176. package/dist/chunk-ROA7BYGB.js +0 -123
  177. package/dist/chunk-ROA7BYGB.js.map +0 -1
  178. package/dist/chunk-RPWYIGD3.js +0 -1026
  179. package/dist/chunk-RPWYIGD3.js.map +0 -1
  180. package/dist/chunk-SGRACNBP.js +0 -60
  181. package/dist/chunk-SGRACNBP.js.map +0 -1
  182. package/dist/chunk-T7RWQLUB.js +0 -347
  183. package/dist/chunk-T7RWQLUB.js.map +0 -1
  184. package/dist/chunk-UN3EW2PL.js +0 -381
  185. package/dist/chunk-UN3EW2PL.js.map +0 -1
  186. package/dist/chunk-VOODO2ZE.js +0 -180
  187. package/dist/chunk-VOODO2ZE.js.map +0 -1
  188. package/dist/chunk-WRSG7WU5.js +0 -278
  189. package/dist/chunk-WRSG7WU5.js.map +0 -1
  190. package/dist/chunk-X3YNHX77.js +0 -109
  191. package/dist/chunk-X3YNHX77.js.map +0 -1
  192. package/dist/chunk-XWEI3MES.js +0 -414
  193. package/dist/chunk-XWEI3MES.js.map +0 -1
  194. package/dist/chunk-Y4XAXZHB.js +0 -42
  195. package/dist/chunk-Y4XAXZHB.js.map +0 -1
  196. package/dist/chunk-YJOLLSHH.js +0 -132
  197. package/dist/chunk-YJOLLSHH.js.map +0 -1
  198. package/dist/chunk-YS5AIY4A.js +0 -43
  199. package/dist/chunk-YS5AIY4A.js.map +0 -1
  200. package/dist/chunk-ZIYA7TGX.js +0 -141
  201. package/dist/chunk-ZIYA7TGX.js.map +0 -1
  202. package/dist/chunk-ZKEDJ536.js +0 -503
  203. package/dist/chunk-ZKEDJ536.js.map +0 -1
  204. package/dist/clipboard/index.d.ts +0 -6
  205. package/dist/clipboard/index.d.ts.map +0 -1
  206. package/dist/clipboard/index.js +0 -6
  207. package/dist/clipboard/index.js.map +0 -1
  208. package/dist/clipboard/types.d.ts +0 -65
  209. package/dist/clipboard/types.d.ts.map +0 -1
  210. package/dist/collapse/index.d.ts +0 -6
  211. package/dist/collapse/index.d.ts.map +0 -1
  212. package/dist/collapse/index.js +0 -5
  213. package/dist/collapse/index.js.map +0 -1
  214. package/dist/collapse/types.d.ts +0 -60
  215. package/dist/collapse/types.d.ts.map +0 -1
  216. package/dist/command/index.d.ts +0 -74
  217. package/dist/command/index.d.ts.map +0 -1
  218. package/dist/command/index.js +0 -5
  219. package/dist/command/index.js.map +0 -1
  220. package/dist/command/types.d.ts +0 -24
  221. package/dist/command/types.d.ts.map +0 -1
  222. package/dist/context-menu/index.d.ts +0 -63
  223. package/dist/context-menu/index.d.ts.map +0 -1
  224. package/dist/context-menu/index.js +0 -5
  225. package/dist/context-menu/index.js.map +0 -1
  226. package/dist/context-menu/types.d.ts +0 -109
  227. package/dist/context-menu/types.d.ts.map +0 -1
  228. package/dist/date-picker/index.d.ts +0 -12
  229. package/dist/date-picker/index.d.ts.map +0 -1
  230. package/dist/date-picker/index.js +0 -6
  231. package/dist/date-picker/index.js.map +0 -1
  232. package/dist/date-picker/types.d.ts +0 -64
  233. package/dist/date-picker/types.d.ts.map +0 -1
  234. package/dist/date-picker/utils.d.ts +0 -10
  235. package/dist/date-picker/utils.d.ts.map +0 -1
  236. package/dist/descriptions/index.d.ts +0 -6
  237. package/dist/descriptions/index.d.ts.map +0 -1
  238. package/dist/descriptions/index.js +0 -4
  239. package/dist/descriptions/index.js.map +0 -1
  240. package/dist/descriptions/types.d.ts +0 -34
  241. package/dist/descriptions/types.d.ts.map +0 -1
  242. package/dist/divider/index.d.ts +0 -39
  243. package/dist/divider/index.d.ts.map +0 -1
  244. package/dist/divider/index.js +0 -4
  245. package/dist/divider/index.js.map +0 -1
  246. package/dist/divider/types.d.ts +0 -63
  247. package/dist/divider/types.d.ts.map +0 -1
  248. package/dist/drawer/index.d.ts +0 -23
  249. package/dist/drawer/index.d.ts.map +0 -1
  250. package/dist/drawer/index.js +0 -4
  251. package/dist/drawer/index.js.map +0 -1
  252. package/dist/drawer/types.d.ts +0 -309
  253. package/dist/drawer/types.d.ts.map +0 -1
  254. package/dist/dropdown/index.d.ts +0 -6
  255. package/dist/dropdown/index.d.ts.map +0 -1
  256. package/dist/dropdown/index.js +0 -7
  257. package/dist/dropdown/index.js.map +0 -1
  258. package/dist/dropdown/types.d.ts +0 -116
  259. package/dist/dropdown/types.d.ts.map +0 -1
  260. package/dist/empty/index.d.ts +0 -6
  261. package/dist/empty/index.d.ts.map +0 -1
  262. package/dist/empty/index.js +0 -4
  263. package/dist/empty/index.js.map +0 -1
  264. package/dist/empty/types.d.ts +0 -62
  265. package/dist/empty/types.d.ts.map +0 -1
  266. package/dist/fetching-overlay/index.d.ts +0 -10
  267. package/dist/fetching-overlay/index.d.ts.map +0 -1
  268. package/dist/fetching-overlay/index.js +0 -6
  269. package/dist/fetching-overlay/index.js.map +0 -1
  270. package/dist/float-input/index.d.ts +0 -6
  271. package/dist/float-input/index.d.ts.map +0 -1
  272. package/dist/float-input/index.js +0 -6
  273. package/dist/float-input/index.js.map +0 -1
  274. package/dist/float-input/types.d.ts +0 -23
  275. package/dist/float-input/types.d.ts.map +0 -1
  276. package/dist/grid/index.d.ts +0 -6
  277. package/dist/grid/index.d.ts.map +0 -1
  278. package/dist/grid/index.js +0 -4
  279. package/dist/grid/index.js.map +0 -1
  280. package/dist/grid/types.d.ts +0 -21
  281. package/dist/grid/types.d.ts.map +0 -1
  282. package/dist/hooks/index.d.ts +0 -6
  283. package/dist/hooks/index.d.ts.map +0 -1
  284. package/dist/hooks/useControllable.d.ts +0 -6
  285. package/dist/hooks/useControllable.d.ts.map +0 -1
  286. package/dist/hooks/useDebounce.d.ts +0 -2
  287. package/dist/hooks/useDebounce.d.ts.map +0 -1
  288. package/dist/hooks/useMediaQuery.d.ts +0 -2
  289. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  290. package/dist/hooks/useRipple.d.ts +0 -29
  291. package/dist/hooks/useRipple.d.ts.map +0 -1
  292. package/dist/hooks/useThrottle.d.ts +0 -2
  293. package/dist/hooks/useThrottle.d.ts.map +0 -1
  294. package/dist/image/index.d.ts +0 -6
  295. package/dist/image/index.d.ts.map +0 -1
  296. package/dist/image/index.js +0 -4
  297. package/dist/image/index.js.map +0 -1
  298. package/dist/image/types.d.ts +0 -57
  299. package/dist/image/types.d.ts.map +0 -1
  300. package/dist/index.d.ts +0 -142
  301. package/dist/index.d.ts.map +0 -1
  302. package/dist/index.js +0 -133
  303. package/dist/index.js.map +0 -1
  304. package/dist/input/index.d.ts +0 -6
  305. package/dist/input/index.d.ts.map +0 -1
  306. package/dist/input/index.js +0 -6
  307. package/dist/input/index.js.map +0 -1
  308. package/dist/input/types.d.ts +0 -28
  309. package/dist/input/types.d.ts.map +0 -1
  310. package/dist/input-group/index.d.ts +0 -9
  311. package/dist/input-group/index.d.ts.map +0 -1
  312. package/dist/input-group/index.js +0 -4
  313. package/dist/input-group/index.js.map +0 -1
  314. package/dist/input-group/types.d.ts +0 -68
  315. package/dist/input-group/types.d.ts.map +0 -1
  316. package/dist/input-otp/index.d.ts +0 -7
  317. package/dist/input-otp/index.d.ts.map +0 -1
  318. package/dist/input-otp/index.js +0 -4
  319. package/dist/input-otp/index.js.map +0 -1
  320. package/dist/input-otp/types.d.ts +0 -111
  321. package/dist/input-otp/types.d.ts.map +0 -1
  322. package/dist/input-password/index.d.ts +0 -6
  323. package/dist/input-password/index.d.ts.map +0 -1
  324. package/dist/input-password/index.js +0 -7
  325. package/dist/input-password/index.js.map +0 -1
  326. package/dist/input-password/types.d.ts +0 -16
  327. package/dist/input-password/types.d.ts.map +0 -1
  328. package/dist/kbd/index.d.ts +0 -6
  329. package/dist/kbd/index.d.ts.map +0 -1
  330. package/dist/kbd/index.js +0 -5
  331. package/dist/kbd/index.js.map +0 -1
  332. package/dist/kbd/types.d.ts +0 -26
  333. package/dist/kbd/types.d.ts.map +0 -1
  334. package/dist/link/index.d.ts +0 -9
  335. package/dist/link/index.d.ts.map +0 -1
  336. package/dist/link/index.js +0 -4
  337. package/dist/link/index.js.map +0 -1
  338. package/dist/link/types.d.ts +0 -30
  339. package/dist/link/types.d.ts.map +0 -1
  340. package/dist/menubar/index.d.ts +0 -6
  341. package/dist/menubar/index.d.ts.map +0 -1
  342. package/dist/menubar/index.js +0 -6
  343. package/dist/menubar/index.js.map +0 -1
  344. package/dist/menubar/types.d.ts +0 -40
  345. package/dist/menubar/types.d.ts.map +0 -1
  346. package/dist/modal/index.d.ts +0 -39
  347. package/dist/modal/index.d.ts.map +0 -1
  348. package/dist/modal/index.js +0 -4
  349. package/dist/modal/index.js.map +0 -1
  350. package/dist/modal/types.d.ts +0 -77
  351. package/dist/modal/types.d.ts.map +0 -1
  352. package/dist/multi-select/index.d.ts +0 -6
  353. package/dist/multi-select/index.d.ts.map +0 -1
  354. package/dist/multi-select/index.js +0 -8
  355. package/dist/multi-select/index.js.map +0 -1
  356. package/dist/multi-select/types.d.ts +0 -81
  357. package/dist/multi-select/types.d.ts.map +0 -1
  358. package/dist/multi-select/utils.d.ts +0 -12
  359. package/dist/multi-select/utils.d.ts.map +0 -1
  360. package/dist/navigation-menu/index.d.ts +0 -5
  361. package/dist/navigation-menu/index.d.ts.map +0 -1
  362. package/dist/navigation-menu/index.js +0 -4
  363. package/dist/navigation-menu/index.js.map +0 -1
  364. package/dist/navigation-menu/types.d.ts +0 -37
  365. package/dist/navigation-menu/types.d.ts.map +0 -1
  366. package/dist/notification/index.d.ts +0 -6
  367. package/dist/notification/index.d.ts.map +0 -1
  368. package/dist/notification/index.js +0 -5
  369. package/dist/notification/index.js.map +0 -1
  370. package/dist/notification/types.d.ts +0 -90
  371. package/dist/notification/types.d.ts.map +0 -1
  372. package/dist/number-input/index.d.ts +0 -6
  373. package/dist/number-input/index.d.ts.map +0 -1
  374. package/dist/number-input/index.js +0 -7
  375. package/dist/number-input/index.js.map +0 -1
  376. package/dist/number-input/types.d.ts +0 -28
  377. package/dist/number-input/types.d.ts.map +0 -1
  378. package/dist/pagination/index.d.ts +0 -6
  379. package/dist/pagination/index.d.ts.map +0 -1
  380. package/dist/pagination/index.js +0 -5
  381. package/dist/pagination/index.js.map +0 -1
  382. package/dist/pagination/types.d.ts +0 -87
  383. package/dist/pagination/types.d.ts.map +0 -1
  384. package/dist/popover/index.d.ts +0 -19
  385. package/dist/popover/index.d.ts.map +0 -1
  386. package/dist/popover/index.js +0 -5
  387. package/dist/popover/index.js.map +0 -1
  388. package/dist/popover/types.d.ts +0 -31
  389. package/dist/popover/types.d.ts.map +0 -1
  390. package/dist/progress/index.d.ts +0 -6
  391. package/dist/progress/index.d.ts.map +0 -1
  392. package/dist/progress/index.js +0 -4
  393. package/dist/progress/index.js.map +0 -1
  394. package/dist/progress/styles.d.ts +0 -39
  395. package/dist/progress/styles.d.ts.map +0 -1
  396. package/dist/progress/types.d.ts +0 -100
  397. package/dist/progress/types.d.ts.map +0 -1
  398. package/dist/radio/index.d.ts +0 -6
  399. package/dist/radio/index.d.ts.map +0 -1
  400. package/dist/radio/index.js +0 -5
  401. package/dist/radio/index.js.map +0 -1
  402. package/dist/radio/types.d.ts +0 -20
  403. package/dist/radio/types.d.ts.map +0 -1
  404. package/dist/radio-group/index.d.ts +0 -6
  405. package/dist/radio-group/index.d.ts.map +0 -1
  406. package/dist/radio-group/index.js +0 -4
  407. package/dist/radio-group/index.js.map +0 -1
  408. package/dist/radio-group/types.d.ts +0 -43
  409. package/dist/radio-group/types.d.ts.map +0 -1
  410. package/dist/rating/index.d.ts +0 -6
  411. package/dist/rating/index.d.ts.map +0 -1
  412. package/dist/rating/index.js +0 -4
  413. package/dist/rating/index.js.map +0 -1
  414. package/dist/rating/types.d.ts +0 -64
  415. package/dist/rating/types.d.ts.map +0 -1
  416. package/dist/scroll-area/index.d.ts +0 -10
  417. package/dist/scroll-area/index.d.ts.map +0 -1
  418. package/dist/scroll-area/index.js +0 -4
  419. package/dist/scroll-area/index.js.map +0 -1
  420. package/dist/scroll-area/types.d.ts +0 -24
  421. package/dist/scroll-area/types.d.ts.map +0 -1
  422. package/dist/select/index.d.ts +0 -6
  423. package/dist/select/index.d.ts.map +0 -1
  424. package/dist/select/index.js +0 -8
  425. package/dist/select/index.js.map +0 -1
  426. package/dist/select/types.d.ts +0 -34
  427. package/dist/select/types.d.ts.map +0 -1
  428. package/dist/shared/useSelectBase.d.ts +0 -56
  429. package/dist/shared/useSelectBase.d.ts.map +0 -1
  430. package/dist/skeleton/index.d.ts +0 -6
  431. package/dist/skeleton/index.d.ts.map +0 -1
  432. package/dist/skeleton/index.js +0 -5
  433. package/dist/skeleton/index.js.map +0 -1
  434. package/dist/skeleton/types.d.ts +0 -10
  435. package/dist/skeleton/types.d.ts.map +0 -1
  436. package/dist/slider/index.d.ts +0 -6
  437. package/dist/slider/index.d.ts.map +0 -1
  438. package/dist/slider/index.js +0 -4
  439. package/dist/slider/index.js.map +0 -1
  440. package/dist/slider/types.d.ts +0 -70
  441. package/dist/slider/types.d.ts.map +0 -1
  442. package/dist/spinner/index.d.ts +0 -6
  443. package/dist/spinner/index.d.ts.map +0 -1
  444. package/dist/spinner/index.js +0 -5
  445. package/dist/spinner/index.js.map +0 -1
  446. package/dist/spinner/types.d.ts +0 -10
  447. package/dist/spinner/types.d.ts.map +0 -1
  448. package/dist/stepper/index.d.ts +0 -6
  449. package/dist/stepper/index.d.ts.map +0 -1
  450. package/dist/stepper/index.js +0 -4
  451. package/dist/stepper/index.js.map +0 -1
  452. package/dist/stepper/types.d.ts +0 -86
  453. package/dist/stepper/types.d.ts.map +0 -1
  454. package/dist/styles/themes/index.d.ts +0 -9
  455. package/dist/styles/themes/index.d.ts.map +0 -1
  456. package/dist/styles/themes/presets/index.d.ts +0 -21
  457. package/dist/styles/themes/presets/index.d.ts.map +0 -1
  458. package/dist/styles/tokens.d.ts +0 -428
  459. package/dist/styles/tokens.d.ts.map +0 -1
  460. package/dist/switch/index.d.ts +0 -6
  461. package/dist/switch/index.d.ts.map +0 -1
  462. package/dist/switch/index.js +0 -5
  463. package/dist/switch/index.js.map +0 -1
  464. package/dist/switch/types.d.ts +0 -80
  465. package/dist/switch/types.d.ts.map +0 -1
  466. package/dist/table/EditableCell.d.ts +0 -13
  467. package/dist/table/EditableCell.d.ts.map +0 -1
  468. package/dist/table/TableActions.d.ts +0 -21
  469. package/dist/table/TableActions.d.ts.map +0 -1
  470. package/dist/table/TableCell.d.ts +0 -12
  471. package/dist/table/TableCell.d.ts.map +0 -1
  472. package/dist/table/TableHeaderCell.d.ts +0 -16
  473. package/dist/table/TableHeaderCell.d.ts.map +0 -1
  474. package/dist/table/TableRow.d.ts +0 -16
  475. package/dist/table/TableRow.d.ts.map +0 -1
  476. package/dist/table/TableSkeleton.d.ts +0 -13
  477. package/dist/table/TableSkeleton.d.ts.map +0 -1
  478. package/dist/table/index.d.ts +0 -15
  479. package/dist/table/index.d.ts.map +0 -1
  480. package/dist/table/index.js +0 -13
  481. package/dist/table/index.js.map +0 -1
  482. package/dist/table/types.d.ts +0 -110
  483. package/dist/table/types.d.ts.map +0 -1
  484. package/dist/table/variants.d.ts +0 -4
  485. package/dist/table/variants.d.ts.map +0 -1
  486. package/dist/tabs/index.d.ts +0 -7
  487. package/dist/tabs/index.d.ts.map +0 -1
  488. package/dist/tabs/index.js +0 -5
  489. package/dist/tabs/index.js.map +0 -1
  490. package/dist/tabs/types.d.ts +0 -90
  491. package/dist/tabs/types.d.ts.map +0 -1
  492. package/dist/tag/index.d.ts +0 -49
  493. package/dist/tag/index.d.ts.map +0 -1
  494. package/dist/tag/index.js +0 -5
  495. package/dist/tag/index.js.map +0 -1
  496. package/dist/tag/types.d.ts +0 -23
  497. package/dist/tag/types.d.ts.map +0 -1
  498. package/dist/textarea/index.d.ts +0 -6
  499. package/dist/textarea/index.d.ts.map +0 -1
  500. package/dist/textarea/index.js +0 -4
  501. package/dist/textarea/index.js.map +0 -1
  502. package/dist/textarea/types.d.ts +0 -84
  503. package/dist/textarea/types.d.ts.map +0 -1
  504. package/dist/theme/ThemeProvider.d.ts +0 -44
  505. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  506. package/dist/theme/index.d.ts +0 -7
  507. package/dist/theme/index.d.ts.map +0 -1
  508. package/dist/theme/index.js +0 -3
  509. package/dist/theme/index.js.map +0 -1
  510. package/dist/theme/types.d.ts +0 -47
  511. package/dist/theme/types.d.ts.map +0 -1
  512. package/dist/timeline/index.d.ts +0 -13
  513. package/dist/timeline/index.d.ts.map +0 -1
  514. package/dist/timeline/index.js +0 -4
  515. package/dist/timeline/index.js.map +0 -1
  516. package/dist/timeline/types.d.ts +0 -25
  517. package/dist/timeline/types.d.ts.map +0 -1
  518. package/dist/toast/index.d.ts +0 -12
  519. package/dist/toast/index.d.ts.map +0 -1
  520. package/dist/toast/index.js +0 -5
  521. package/dist/toast/index.js.map +0 -1
  522. package/dist/toast/types.d.ts +0 -49
  523. package/dist/toast/types.d.ts.map +0 -1
  524. package/dist/toggle/index.d.ts +0 -6
  525. package/dist/toggle/index.d.ts.map +0 -1
  526. package/dist/toggle/index.js +0 -5
  527. package/dist/toggle/index.js.map +0 -1
  528. package/dist/toggle/types.d.ts +0 -57
  529. package/dist/toggle/types.d.ts.map +0 -1
  530. package/dist/toggle-group/index.d.ts +0 -6
  531. package/dist/toggle-group/index.d.ts.map +0 -1
  532. package/dist/toggle-group/index.js +0 -5
  533. package/dist/toggle-group/index.js.map +0 -1
  534. package/dist/toggle-group/types.d.ts +0 -80
  535. package/dist/toggle-group/types.d.ts.map +0 -1
  536. package/dist/tooltip/index.d.ts +0 -9
  537. package/dist/tooltip/index.d.ts.map +0 -1
  538. package/dist/tooltip/index.js +0 -5
  539. package/dist/tooltip/index.js.map +0 -1
  540. package/dist/tooltip/types.d.ts +0 -72
  541. package/dist/tooltip/types.d.ts.map +0 -1
  542. package/dist/transfer/index.d.ts +0 -5
  543. package/dist/transfer/index.d.ts.map +0 -1
  544. package/dist/transfer/index.js +0 -6
  545. package/dist/transfer/index.js.map +0 -1
  546. package/dist/transfer/types.d.ts +0 -83
  547. package/dist/transfer/types.d.ts.map +0 -1
  548. package/dist/transfer/utils.d.ts +0 -13
  549. package/dist/transfer/utils.d.ts.map +0 -1
  550. package/dist/tree/index.d.ts +0 -6
  551. package/dist/tree/index.d.ts.map +0 -1
  552. package/dist/tree/index.js +0 -4
  553. package/dist/tree/index.js.map +0 -1
  554. package/dist/tree/types.d.ts +0 -143
  555. package/dist/tree/types.d.ts.map +0 -1
  556. package/dist/tree-select/index.d.ts +0 -6
  557. package/dist/tree-select/index.d.ts.map +0 -1
  558. package/dist/tree-select/index.js +0 -7
  559. package/dist/tree-select/index.js.map +0 -1
  560. package/dist/tree-select/types.d.ts +0 -147
  561. package/dist/tree-select/types.d.ts.map +0 -1
  562. package/dist/types.d.ts +0 -53
  563. package/dist/types.d.ts.map +0 -1
  564. package/dist/upload/index.d.ts +0 -7
  565. package/dist/upload/index.d.ts.map +0 -1
  566. package/dist/upload/index.js +0 -5
  567. package/dist/upload/index.js.map +0 -1
  568. package/dist/upload/types.d.ts +0 -94
  569. package/dist/upload/types.d.ts.map +0 -1
  570. package/dist/upload/utils.d.ts +0 -26
  571. package/dist/upload/utils.d.ts.map +0 -1
  572. package/dist/utils.d.ts +0 -63
  573. package/dist/utils.d.ts.map +0 -1
  574. package/dist/variants.d.ts +0 -315
  575. package/dist/variants.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cascader/index.tsx"],"names":["selectedPath","label"],"mappings":"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","file":"chunk-L5UYN5LX.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 { focusRingColorClasses, textColorClasses } 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\n/**\n * Tag size classes for multiple mode\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\n/**\n * Color-aware accent classes for selected items, tags, and checkboxes\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\n/**\n * Cascader Component\n *\n * A hierarchical selection component for selecting from nested options.\n *\n * @example\n * // Basic usage\n * <Cascader\n * options={options}\n * placeholder=\"Select location\"\n * onChange={(value, options) => console.log(value)}\n * />\n *\n * @example\n * // Multiple selection\n * <Cascader\n * options={options}\n * multiple\n * placeholder=\"Select categories\"\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 // Normalize value to always be string[][]\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 // Determine status for styling\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 // Handle open state changes\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 // Reset state when opening\n setActiveMenus([options]);\n setHoveredPath([]);\n setFocusedIndex(null);\n\n if (normalizedValue.length > 0 && !multiple) {\n setSelectedPath(normalizedValue[0] || []);\n // Expand to show current selection\n expandToPath(normalizedValue[0] || []);\n } else {\n setSelectedPath([]);\n }\n }\n },\n [disabled, loading, options, normalizedValue, multiple, onOpenChange],\n );\n\n // Expand menus to show a specific path\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 // Get selected options for a path\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 // Check if a path is selected\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 // Get all leaf paths from an option\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 // Get selection state for a node (for multiple mode checkboxes)\n const getNodeSelectionState = React.useCallback(\n (\n option: CascaderOption,\n currentPath: string[],\n ): { checked: boolean; indeterminate: boolean } => {\n if (!option.children || option.children.length === 0) {\n const fullPath = [...currentPath, option.value];\n return { checked: isPathSelected(fullPath), indeterminate: false };\n }\n\n const leafPaths = getAllLeafPaths(option, currentPath);\n const selectedCount = leafPaths.filter((path) =>\n isPathSelected(path),\n ).length;\n\n return {\n checked: selectedCount === leafPaths.length && leafPaths.length > 0,\n indeterminate: selectedCount > 0 && selectedCount < leafPaths.length,\n };\n },\n [isPathSelected, getAllLeafPaths],\n );\n\n // Handle item click\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 // Handle async loading\n if (loadData && !option.children && !option.isLeaf && !option.loading) {\n const selectedOpts = getSelectedOptions(newPath);\n await loadData(selectedOpts);\n return;\n }\n\n const hasChildren = option.children && option.children.length > 0;\n const isLeaf = !hasChildren;\n\n if (hasChildren && !multiple) {\n // Single mode with children - just expand\n setActiveMenus((prev) => [\n ...prev.slice(0, level + 1),\n option.children!,\n ]);\n\n // changeOnSelect allows selecting parent nodes\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 // Multiple mode with children - toggle all leaves\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 // Also expand\n setActiveMenus((prev) => [\n ...prev.slice(0, level + 1),\n option.children!,\n ]);\n } else if (isLeaf) {\n // Leaf node\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 // Single mode - select and close\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 // Handle item hover (for expand on hover)\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 // Track value-path so handleItemClick can build correct paths\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 // Handle clear\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 // Remove a selection in multiple mode\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 // Handle keyboard navigation\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 // Preserve parent level's active index from hoveredPath or selectedPath\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 // Display value computation\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 // Render cascader menus\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\n ? getNodeSelectionState(option, currentPath)\n : null;\n const isLeafSelected =\n !multiple &&\n isPathSelected(fullPath) &&\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], textColorClasses[color])}\n />\n )}\n </span>\n </div>\n );\n })\n )}\n </div>\n ))}\n </div>\n );\n };\n\n // Render trigger content\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 tagRender({\n label,\n value: path,\n closable: !disabled,\n onClose: () =>\n removeSelection(path, {\n stopPropagation: () => {},\n } as React.MouseEvent),\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 // Popover placement mapping\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 focusRingColorClasses[color],\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,299 +0,0 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
2
- import { cva } from 'class-variance-authority';
3
- import React, { useState, useEffect } from 'react';
4
- import { jsxs, jsx } from 'react/jsx-runtime';
5
-
6
- var avatarVariants = cva(
7
- "relative inline-flex items-center justify-center font-medium select-none shrink-0",
8
- {
9
- variants: {
10
- size: {
11
- xs: "size-6 text-xs",
12
- sm: "size-8 text-sm",
13
- md: "size-10 text-base",
14
- lg: "size-12 text-lg"
15
- },
16
- shape: {
17
- circle: "rounded-full",
18
- square: "rounded-lg"
19
- },
20
- color: {
21
- default: "bg-surface text-text-primary",
22
- primary: "bg-primary/10 text-primary",
23
- secondary: "bg-secondary/10 text-secondary",
24
- accent: "bg-accent/10 text-accent",
25
- success: "bg-success/10 text-success",
26
- error: "bg-error/10 text-error",
27
- warning: "bg-warning/10 text-warning",
28
- info: "bg-info/10 text-info"
29
- },
30
- bordered: {
31
- true: "ring-2 ring-background",
32
- false: ""
33
- },
34
- disabled: {
35
- true: "opacity-50 cursor-not-allowed",
36
- false: ""
37
- }
38
- },
39
- defaultVariants: {
40
- size: "md",
41
- shape: "circle",
42
- color: "default",
43
- bordered: false,
44
- disabled: false
45
- }
46
- }
47
- );
48
- var statusSizeClasses = {
49
- xs: "size-1.5",
50
- sm: "size-2",
51
- md: "size-2.5",
52
- lg: "size-3"
53
- };
54
- var statusColorClasses = {
55
- online: "bg-success",
56
- offline: "bg-border",
57
- away: "bg-warning",
58
- busy: "bg-error"
59
- };
60
- var badgeSizeClasses = {
61
- xs: "min-w-3 h-3 text-[8px]",
62
- sm: "min-w-4 h-4 text-[10px]",
63
- md: "min-w-5 h-5 text-xs",
64
- lg: "min-w-6 h-6 text-xs"
65
- };
66
- var overlapClasses = {
67
- xs: "-space-x-1",
68
- sm: "-space-x-1.5",
69
- md: "-space-x-2",
70
- lg: "-space-x-2.5"
71
- };
72
- function getInitialsFromName(name) {
73
- const words = name.trim().split(/\s+/).filter(Boolean);
74
- if (words.length === 0) return "";
75
- const firstWord = words[0];
76
- if (words.length === 1 && firstWord) {
77
- return firstWord.slice(0, 2).toUpperCase();
78
- }
79
- const lastWord = words[words.length - 1];
80
- const firstInitial = firstWord?.[0] ?? "";
81
- const lastInitial = lastWord?.[0] ?? "";
82
- return (firstInitial + lastInitial).toUpperCase();
83
- }
84
- var DefaultUserIcon = () => /* @__PURE__ */ jsx(
85
- "svg",
86
- {
87
- className: "size-[60%] text-text-secondary",
88
- fill: "currentColor",
89
- viewBox: "0 0 24 24",
90
- role: "img",
91
- "aria-hidden": "true",
92
- children: /* @__PURE__ */ jsx("path", { d: "M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z" })
93
- }
94
- );
95
- var Avatar = React.memo(
96
- ({
97
- src,
98
- alt = "",
99
- fallback,
100
- name,
101
- size = "md",
102
- shape = "circle",
103
- status,
104
- color = "default",
105
- bordered = false,
106
- icon,
107
- badge,
108
- disabled = false,
109
- className,
110
- classNames,
111
- onError,
112
- ref,
113
- ...props
114
- }) => {
115
- const [imageError, setImageError] = useState(false);
116
- useEffect(() => {
117
- setImageError(false);
118
- }, [src]);
119
- const handleImageError = (e) => {
120
- setImageError(true);
121
- onError?.(e);
122
- };
123
- const getInitials = () => {
124
- if (fallback) return fallback.slice(0, 2).toUpperCase();
125
- if (name) return getInitialsFromName(name);
126
- return "";
127
- };
128
- const showImage = src && !imageError;
129
- const initials = getInitials();
130
- const showFallback = !showImage && (initials || icon);
131
- const showDefaultIcon = !showImage && !showFallback;
132
- return /* @__PURE__ */ jsxs(
133
- "div",
134
- {
135
- ref,
136
- className: cn(
137
- "avatar_root",
138
- avatarVariants({
139
- size,
140
- shape,
141
- color: showImage ? "default" : color,
142
- bordered,
143
- disabled
144
- }),
145
- // Apply overflow-hidden only when no badge/status to prevent clipping
146
- !badge && !status && "overflow-hidden",
147
- classNames?.root,
148
- className
149
- ),
150
- "aria-disabled": disabled || void 0,
151
- "data-slot": "root",
152
- ...props,
153
- children: [
154
- showImage && /* @__PURE__ */ jsx(
155
- "img",
156
- {
157
- src,
158
- alt: alt || name || "User avatar",
159
- onError: handleImageError,
160
- className: cn(
161
- "avatar_image",
162
- "size-full object-cover",
163
- shape === "circle" ? "rounded-full" : "rounded-lg",
164
- classNames?.image
165
- ),
166
- loading: "lazy",
167
- "data-slot": "image"
168
- }
169
- ),
170
- showFallback && (icon ? /* @__PURE__ */ jsx(
171
- "span",
172
- {
173
- className: cn(
174
- "avatar_fallback",
175
- "flex items-center justify-center size-[60%]",
176
- classNames?.fallback
177
- ),
178
- "data-slot": "fallback",
179
- children: icon
180
- }
181
- ) : /* @__PURE__ */ jsx(
182
- "span",
183
- {
184
- className: cn("avatar_fallback", classNames?.fallback),
185
- "aria-label": `Avatar for ${name || initials}`,
186
- "data-slot": "fallback",
187
- children: initials
188
- }
189
- )),
190
- showDefaultIcon && /* @__PURE__ */ jsx(DefaultUserIcon, {}),
191
- status && /* @__PURE__ */ jsx(
192
- "span",
193
- {
194
- className: cn(
195
- "avatar_status",
196
- "absolute bottom-0 right-0 rounded-full ring-2 ring-background",
197
- statusSizeClasses[size],
198
- statusColorClasses[status],
199
- classNames?.status
200
- ),
201
- "aria-label": `Status: ${status}`,
202
- "data-slot": "status"
203
- }
204
- ),
205
- badge && /* @__PURE__ */ jsx(
206
- "span",
207
- {
208
- className: cn(
209
- "absolute -top-1 -right-1 flex items-center justify-center rounded-full bg-error text-white font-medium px-1",
210
- badgeSizeClasses[size]
211
- ),
212
- "aria-label": typeof badge === "number" ? `${badge} notifications` : void 0,
213
- role: typeof badge === "number" ? "status" : void 0,
214
- children: badge
215
- }
216
- )
217
- ]
218
- }
219
- );
220
- }
221
- );
222
- Avatar.displayName = "Avatar";
223
- var AvatarGroup = React.memo(
224
- ({
225
- children,
226
- max,
227
- size = "md",
228
- shape = "circle",
229
- showTotal = false,
230
- renderSurplus,
231
- bordered = false,
232
- className,
233
- classNames,
234
- ref,
235
- ...props
236
- }) => {
237
- const childrenArray = React.Children.toArray(children);
238
- const total = childrenArray.length;
239
- const visibleChildren = max ? childrenArray.slice(0, max) : childrenArray;
240
- const remainingCount = max && total > max ? total - max : 0;
241
- const surplusDisplay = showTotal ? total : remainingCount;
242
- return /* @__PURE__ */ jsxs(
243
- "div",
244
- {
245
- ref,
246
- className: cn(
247
- "avatarGroup_root",
248
- "flex items-center",
249
- overlapClasses[size],
250
- classNames?.root,
251
- className
252
- ),
253
- role: "group",
254
- "aria-label": `Avatar group with ${total} members`,
255
- "data-slot": "root",
256
- ...props,
257
- children: [
258
- visibleChildren.map((child, index) => {
259
- if (React.isValidElement(child)) {
260
- return React.cloneElement(child, {
261
- key: child.key ?? index,
262
- size: child.props.size ?? size,
263
- shape: child.props.shape ?? shape,
264
- bordered: child.props.bordered ?? bordered ?? true,
265
- className: cn(child.props.className)
266
- });
267
- }
268
- return child;
269
- }),
270
- remainingCount > 0 && (renderSurplus ? renderSurplus(surplusDisplay) : /* @__PURE__ */ jsx(
271
- "div",
272
- {
273
- className: cn(
274
- "avatarGroup_overflow",
275
- avatarVariants({
276
- size,
277
- shape,
278
- color: "default",
279
- bordered: true
280
- }),
281
- "bg-surface/80 backdrop-blur-sm overflow-hidden",
282
- classNames?.overflow
283
- ),
284
- "aria-label": showTotal ? `${total} total members` : `${remainingCount} more members`,
285
- "data-slot": "overflow",
286
- children: /* @__PURE__ */ jsx("span", { className: "text-text-secondary font-medium", children: showTotal ? total : `+${remainingCount}` })
287
- }
288
- ))
289
- ]
290
- }
291
- );
292
- }
293
- );
294
- AvatarGroup.displayName = "AvatarGroup";
295
- var avatar_default = Avatar;
296
-
297
- export { Avatar, AvatarGroup, avatar_default };
298
- //# sourceMappingURL=chunk-LX4FDH4J.js.map
299
- //# sourceMappingURL=chunk-LX4FDH4J.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/avatar/index.tsx"],"names":[],"mappings":";;;;;AAWA,IAAM,cAAA,GAAiB,GAAA;AAAA,EACrB,mFAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,gBAAA;AAAA,QACJ,EAAA,EAAI,gBAAA;AAAA,QACJ,EAAA,EAAI,mBAAA;AAAA,QACJ,EAAA,EAAI;AAAA,OACN;AAAA,MACA,KAAA,EAAO;AAAA,QACL,MAAA,EAAQ,cAAA;AAAA,QACR,MAAA,EAAQ;AAAA,OACV;AAAA,MACA,KAAA,EAAO;AAAA,QACL,OAAA,EAAS,8BAAA;AAAA,QACT,OAAA,EAAS,4BAAA;AAAA,QACT,SAAA,EAAW,gCAAA;AAAA,QACX,MAAA,EAAQ,0BAAA;AAAA,QACR,OAAA,EAAS,4BAAA;AAAA,QACT,KAAA,EAAO,wBAAA;AAAA,QACP,OAAA,EAAS,4BAAA;AAAA,QACT,IAAA,EAAM;AAAA,OACR;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,wBAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,+BAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,IAAA;AAAA,MACN,KAAA,EAAO,QAAA;AAAA,MACP,KAAA,EAAO,SAAA;AAAA,MACP,QAAA,EAAU,KAAA;AAAA,MACV,QAAA,EAAU;AAAA;AACZ;AAEJ,CAAA;AAKA,IAAM,iBAAA,GAAgD;AAAA,EACpD,EAAA,EAAI,UAAA;AAAA,EACJ,EAAA,EAAI,QAAA;AAAA,EACJ,EAAA,EAAI,UAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAKA,IAAM,kBAAA,GAAqB;AAAA,EACzB,MAAA,EAAQ,YAAA;AAAA,EACR,OAAA,EAAS,WAAA;AAAA,EACT,IAAA,EAAM,YAAA;AAAA,EACN,IAAA,EAAM;AACR,CAAA;AAKA,IAAM,gBAAA,GAA+C;AAAA,EACnD,EAAA,EAAI,wBAAA;AAAA,EACJ,EAAA,EAAI,yBAAA;AAAA,EACJ,EAAA,EAAI,qBAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAKA,IAAM,cAAA,GAA6C;AAAA,EACjD,EAAA,EAAI,YAAA;AAAA,EACJ,EAAA,EAAI,cAAA;AAAA,EACJ,EAAA,EAAI,YAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAKA,SAAS,oBAAoB,IAAA,EAAsB;AACjD,EAAA,MAAM,KAAA,GAAQ,KAAK,IAAA,EAAK,CAAE,MAAM,KAAK,CAAA,CAAE,OAAO,OAAO,CAAA;AACrD,EAAA,IAAI,KAAA,CAAM,MAAA,KAAW,CAAA,EAAG,OAAO,EAAA;AAE/B,EAAA,MAAM,SAAA,GAAY,MAAM,CAAC,CAAA;AACzB,EAAA,IAAI,KAAA,CAAM,MAAA,KAAW,CAAA,IAAK,SAAA,EAAW;AACnC,IAAA,OAAO,SAAA,CAAU,KAAA,CAAM,CAAA,EAAG,CAAC,EAAE,WAAA,EAAY;AAAA,EAC3C;AAEA,EAAA,MAAM,QAAA,GAAW,KAAA,CAAM,KAAA,CAAM,MAAA,GAAS,CAAC,CAAA;AACvC,EAAA,MAAM,YAAA,GAAe,SAAA,GAAY,CAAC,CAAA,IAAK,EAAA;AACvC,EAAA,MAAM,WAAA,GAAc,QAAA,GAAW,CAAC,CAAA,IAAK,EAAA;AACrC,EAAA,OAAA,CAAQ,YAAA,GAAe,aAAa,WAAA,EAAY;AAClD;AAKA,IAAM,kBAAkB,sBACtB,GAAA;AAAA,EAAC,KAAA;AAAA,EAAA;AAAA,IACC,SAAA,EAAU,gCAAA;AAAA,IACV,IAAA,EAAK,cAAA;AAAA,IACL,OAAA,EAAQ,WAAA;AAAA,IACR,IAAA,EAAK,KAAA;AAAA,IACL,aAAA,EAAY,MAAA;AAAA,IAEZ,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,+GAAA,EAAgH;AAAA;AAC1H,CAAA;AAMF,IAAM,SAAS,KAAA,CAAM,IAAA;AAAA,EACnB,CAAC;AAAA,IACC,GAAA;AAAA,IACA,GAAA,GAAM,EAAA;AAAA,IACN,QAAA;AAAA,IACA,IAAA;AAAA,IACA,IAAA,GAAO,IAAA;AAAA,IACP,KAAA,GAAQ,QAAA;AAAA,IACR,MAAA;AAAA,IACA,KAAA,GAAQ,SAAA;AAAA,IACR,QAAA,GAAW,KAAA;AAAA,IACX,IAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,SAAA;AAAA,IACA,UAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAS,KAAK,CAAA;AAGlD,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,aAAA,CAAc,KAAK,CAAA;AAAA,IACrB,CAAA,EAAG,CAAC,GAAG,CAAC,CAAA;AAER,IAAA,MAAM,gBAAA,GAAmB,CAAC,CAAA,KAA8C;AACtE,MAAA,aAAA,CAAc,IAAI,CAAA;AAClB,MAAA,OAAA,GAAU,CAAC,CAAA;AAAA,IACb,CAAA;AAGA,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,IAAI,UAAU,OAAO,QAAA,CAAS,MAAM,CAAA,EAAG,CAAC,EAAE,WAAA,EAAY;AACtD,MAAA,IAAI,IAAA,EAAM,OAAO,mBAAA,CAAoB,IAAI,CAAA;AACzC,MAAA,OAAO,EAAA;AAAA,IACT,CAAA;AAEA,IAAA,MAAM,SAAA,GAAY,OAAO,CAAC,UAAA;AAC1B,IAAA,MAAM,WAAW,WAAA,EAAY;AAC7B,IAAA,MAAM,YAAA,GAAe,CAAC,SAAA,KAAc,QAAA,IAAY,IAAA,CAAA;AAChD,IAAA,MAAM,eAAA,GAAkB,CAAC,SAAA,IAAa,CAAC,YAAA;AAEvC,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,aAAA;AAAA,UACA,cAAA,CAAe;AAAA,YACb,IAAA;AAAA,YACA,KAAA;AAAA,YACA,KAAA,EAAO,YAAY,SAAA,GAAY,KAAA;AAAA,YAC/B,QAAA;AAAA,YACA;AAAA,WACD,CAAA;AAAA;AAAA,UAED,CAAC,KAAA,IAAS,CAAC,MAAA,IAAU,iBAAA;AAAA,UACrB,UAAA,EAAY,IAAA;AAAA,UACZ;AAAA,SACF;AAAA,QACA,iBAAe,QAAA,IAAY,MAAA;AAAA,QAC3B,WAAA,EAAU,MAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAGH,QAAA,EAAA;AAAA,UAAA,SAAA,oBACC,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,GAAA;AAAA,cACA,GAAA,EAAK,OAAO,IAAA,IAAQ,aAAA;AAAA,cACpB,OAAA,EAAS,gBAAA;AAAA,cACT,SAAA,EAAW,EAAA;AAAA,gBACT,cAAA;AAAA,gBACA,wBAAA;AAAA,gBACA,KAAA,KAAU,WAAW,cAAA,GAAiB,YAAA;AAAA,gBACtC,UAAA,EAAY;AAAA,eACd;AAAA,cACA,OAAA,EAAQ,MAAA;AAAA,cACR,WAAA,EAAU;AAAA;AAAA,WACZ;AAAA,UAID,iBACE,IAAA,mBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,iBAAA;AAAA,gBACA,6CAAA;AAAA,gBACA,UAAA,EAAY;AAAA,eACd;AAAA,cACA,WAAA,EAAU,UAAA;AAAA,cAET,QAAA,EAAA;AAAA;AAAA,WACH,mBAEA,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA,CAAG,iBAAA,EAAmB,UAAA,EAAY,QAAQ,CAAA;AAAA,cACrD,YAAA,EAAY,CAAA,WAAA,EAAc,IAAA,IAAQ,QAAQ,CAAA,CAAA;AAAA,cAC1C,WAAA,EAAU,UAAA;AAAA,cAET,QAAA,EAAA;AAAA;AAAA,WACH,CAAA;AAAA,UAIH,eAAA,wBAAoB,eAAA,EAAA,EAAgB,CAAA;AAAA,UAGpC,MAAA,oBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,eAAA;AAAA,gBACA,+DAAA;AAAA,gBACA,kBAAkB,IAAI,CAAA;AAAA,gBACtB,mBAAmB,MAAM,CAAA;AAAA,gBACzB,UAAA,EAAY;AAAA,eACd;AAAA,cACA,YAAA,EAAY,WAAW,MAAM,CAAA,CAAA;AAAA,cAC7B,WAAA,EAAU;AAAA;AAAA,WACZ;AAAA,UAID,KAAA,oBACC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,6GAAA;AAAA,gBACA,iBAAiB,IAAI;AAAA,eACvB;AAAA,cACA,cAAY,OAAO,KAAA,KAAU,QAAA,GAAW,CAAA,EAAG,KAAK,CAAA,cAAA,CAAA,GAAmB,MAAA;AAAA,cACnE,IAAA,EAAM,OAAO,KAAA,KAAU,QAAA,GAAW,QAAA,GAAW,MAAA;AAAA,cAE5C,QAAA,EAAA;AAAA;AAAA;AACH;AAAA;AAAA,KAEJ;AAAA,EAEJ;AACF;AAEA,MAAA,CAAO,WAAA,GAAc,QAAA;AAKrB,IAAM,cAAc,KAAA,CAAM,IAAA;AAAA,EACxB,CAAC;AAAA,IACC,QAAA;AAAA,IACA,GAAA;AAAA,IACA,IAAA,GAAO,IAAA;AAAA,IACP,KAAA,GAAQ,QAAA;AAAA,IACR,SAAA,GAAY,KAAA;AAAA,IACZ,aAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,SAAA;AAAA,IACA,UAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AACJ,IAAA,MAAM,aAAA,GAAgB,KAAA,CAAM,QAAA,CAAS,OAAA,CAAQ,QAAQ,CAAA;AACrD,IAAA,MAAM,QAAQ,aAAA,CAAc,MAAA;AAC5B,IAAA,MAAM,kBAAkB,GAAA,GAAM,aAAA,CAAc,KAAA,CAAM,CAAA,EAAG,GAAG,CAAA,GAAI,aAAA;AAC5D,IAAA,MAAM,cAAA,GAAiB,GAAA,IAAO,KAAA,GAAQ,GAAA,GAAM,QAAQ,GAAA,GAAM,CAAA;AAC1D,IAAA,MAAM,cAAA,GAAiB,YAAY,KAAA,GAAQ,cAAA;AAE3C,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,kBAAA;AAAA,UACA,mBAAA;AAAA,UACA,eAAe,IAAI,CAAA;AAAA,UACnB,UAAA,EAAY,IAAA;AAAA,UACZ;AAAA,SACF;AAAA,QACA,IAAA,EAAK,OAAA;AAAA,QACL,YAAA,EAAY,qBAAqB,KAAK,CAAA,QAAA,CAAA;AAAA,QACtC,WAAA,EAAU,MAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,eAAA,CAAgB,GAAA,CAAI,CAAC,KAAA,EAAO,KAAA,KAAU;AACrC,YAAA,IAAI,KAAA,CAAM,cAAA,CAA4B,KAAK,CAAA,EAAG;AAC5C,cAAA,OAAO,KAAA,CAAM,aAAa,KAAA,EAAO;AAAA,gBAC/B,GAAA,EAAK,MAAM,GAAA,IAAO,KAAA;AAAA,gBAClB,IAAA,EAAM,KAAA,CAAM,KAAA,CAAM,IAAA,IAAQ,IAAA;AAAA,gBAC1B,KAAA,EAAO,KAAA,CAAM,KAAA,CAAM,KAAA,IAAS,KAAA;AAAA,gBAC5B,QAAA,EAAU,KAAA,CAAM,KAAA,CAAM,QAAA,IAAY,QAAA,IAAY,IAAA;AAAA,gBAC9C,SAAA,EAAW,EAAA,CAAG,KAAA,CAAM,KAAA,CAAM,SAAS;AAAA,eACpC,CAAA;AAAA,YACH;AACA,YAAA,OAAO,KAAA;AAAA,UACT,CAAC,CAAA;AAAA,UAEA,cAAA,GAAiB,CAAA,KACf,aAAA,GACC,aAAA,CAAc,cAAc,CAAA,mBAE5B,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAW,EAAA;AAAA,gBACT,sBAAA;AAAA,gBACA,cAAA,CAAe;AAAA,kBACb,IAAA;AAAA,kBACA,KAAA;AAAA,kBACA,KAAA,EAAO,SAAA;AAAA,kBACP,QAAA,EAAU;AAAA,iBACX,CAAA;AAAA,gBACD,gDAAA;AAAA,gBACA,UAAA,EAAY;AAAA,eACd;AAAA,cACA,cACE,SAAA,GACI,CAAA,EAAG,KAAK,CAAA,cAAA,CAAA,GACR,GAAG,cAAc,CAAA,aAAA,CAAA;AAAA,cAEvB,WAAA,EAAU,UAAA;AAAA,cAEV,QAAA,kBAAA,GAAA,CAAC,UAAK,SAAA,EAAU,iCAAA,EACb,sBAAY,KAAA,GAAQ,CAAA,CAAA,EAAI,cAAc,CAAA,CAAA,EACzC;AAAA;AAAA,WACF;AAAA;AAAA;AAAA,KAEN;AAAA,EAEJ;AACF;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA;AAI1B,IAAO,cAAA,GAAQ","file":"chunk-LX4FDH4J.js","sourcesContent":["'use client'\n\nimport { cva } from \"class-variance-authority\";\nimport React, { useState, useEffect } from \"react\";\n\nimport { cn } from \"../utils\";\nimport type { AvatarGroupProps, AvatarProps, AvatarSize } from \"./types\";\n\n/**\n * Avatar size variants\n */\nconst avatarVariants = cva(\n \"relative inline-flex items-center justify-center font-medium select-none shrink-0\",\n {\n variants: {\n size: {\n xs: \"size-6 text-xs\",\n sm: \"size-8 text-sm\",\n md: \"size-10 text-base\",\n lg: \"size-12 text-lg\",\n },\n shape: {\n circle: \"rounded-full\",\n square: \"rounded-lg\",\n },\n color: {\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 bordered: {\n true: \"ring-2 ring-background\",\n false: \"\",\n },\n disabled: {\n true: \"opacity-50 cursor-not-allowed\",\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n shape: \"circle\",\n color: \"default\",\n bordered: false,\n disabled: false,\n },\n },\n);\n\n/**\n * Status indicator size classes\n */\nconst statusSizeClasses: Record<AvatarSize, string> = {\n xs: \"size-1.5\",\n sm: \"size-2\",\n md: \"size-2.5\",\n lg: \"size-3\",\n};\n\n/**\n * Status indicator color classes\n */\nconst statusColorClasses = {\n online: \"bg-success\",\n offline: \"bg-border\",\n away: \"bg-warning\",\n busy: \"bg-error\",\n};\n\n/**\n * Badge size classes\n */\nconst badgeSizeClasses: Record<AvatarSize, string> = {\n xs: \"min-w-3 h-3 text-[8px]\",\n sm: \"min-w-4 h-4 text-[10px]\",\n md: \"min-w-5 h-5 text-xs\",\n lg: \"min-w-6 h-6 text-xs\",\n};\n\n/**\n * Overlap spacing classes for AvatarGroup\n */\nconst overlapClasses: Record<AvatarSize, string> = {\n xs: \"-space-x-1\",\n sm: \"-space-x-1.5\",\n md: \"-space-x-2\",\n lg: \"-space-x-2.5\",\n};\n\n/**\n * Generate initials from a name\n */\nfunction getInitialsFromName(name: string): string {\n const words = name.trim().split(/\\s+/).filter(Boolean);\n if (words.length === 0) return \"\";\n\n const firstWord = words[0];\n if (words.length === 1 && firstWord) {\n return firstWord.slice(0, 2).toUpperCase();\n }\n\n const lastWord = words[words.length - 1];\n const firstInitial = firstWord?.[0] ?? \"\";\n const lastInitial = lastWord?.[0] ?? \"\";\n return (firstInitial + lastInitial).toUpperCase();\n}\n\n/**\n * Default user icon SVG\n */\nconst DefaultUserIcon = () => (\n <svg\n className=\"size-[60%] text-text-secondary\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n role=\"img\"\n aria-hidden=\"true\"\n >\n <path d=\"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z\" />\n </svg>\n);\n\n/**\n * Avatar Component\n */\nconst Avatar = React.memo<AvatarProps>(\n ({\n src,\n alt = \"\",\n fallback,\n name,\n size = \"md\",\n shape = \"circle\",\n status,\n color = \"default\",\n bordered = false,\n icon,\n badge,\n disabled = false,\n className,\n classNames,\n onError,\n ref,\n ...props\n }) => {\n const [imageError, setImageError] = useState(false);\n\n // Reset image error state when src changes\n useEffect(() => {\n setImageError(false);\n }, [src]);\n\n const handleImageError = (e: React.SyntheticEvent<HTMLImageElement>) => {\n setImageError(true);\n onError?.(e);\n };\n\n // Get initials from fallback or name\n const getInitials = () => {\n if (fallback) return fallback.slice(0, 2).toUpperCase();\n if (name) return getInitialsFromName(name);\n return \"\";\n };\n\n const showImage = src && !imageError;\n const initials = getInitials();\n const showFallback = !showImage && (initials || icon);\n const showDefaultIcon = !showImage && !showFallback;\n\n return (\n <div\n ref={ref}\n className={cn(\n \"avatar_root\",\n avatarVariants({\n size,\n shape,\n color: showImage ? \"default\" : color,\n bordered,\n disabled,\n }),\n // Apply overflow-hidden only when no badge/status to prevent clipping\n !badge && !status && \"overflow-hidden\",\n classNames?.root,\n className,\n )}\n aria-disabled={disabled || undefined}\n data-slot=\"root\"\n {...props}\n >\n {/* Image */}\n {showImage && (\n <img\n src={src}\n alt={alt || name || \"User avatar\"}\n onError={handleImageError}\n className={cn(\n \"avatar_image\",\n \"size-full object-cover\",\n shape === \"circle\" ? \"rounded-full\" : \"rounded-lg\",\n classNames?.image,\n )}\n loading=\"lazy\"\n data-slot=\"image\"\n />\n )}\n\n {/* Fallback: Icon or Initials */}\n {showFallback &&\n (icon ? (\n <span\n className={cn(\n \"avatar_fallback\",\n \"flex items-center justify-center size-[60%]\",\n classNames?.fallback,\n )}\n data-slot=\"fallback\"\n >\n {icon}\n </span>\n ) : (\n <span\n className={cn(\"avatar_fallback\", classNames?.fallback)}\n aria-label={`Avatar for ${name || initials}`}\n data-slot=\"fallback\"\n >\n {initials}\n </span>\n ))}\n\n {/* Default user icon */}\n {showDefaultIcon && <DefaultUserIcon />}\n\n {/* Status indicator */}\n {status && (\n <span\n className={cn(\n \"avatar_status\",\n \"absolute bottom-0 right-0 rounded-full ring-2 ring-background\",\n statusSizeClasses[size],\n statusColorClasses[status],\n classNames?.status,\n )}\n aria-label={`Status: ${status}`}\n data-slot=\"status\"\n />\n )}\n\n {/* Badge */}\n {badge && (\n <span\n className={cn(\n \"absolute -top-1 -right-1 flex items-center justify-center rounded-full bg-error text-white font-medium px-1\",\n badgeSizeClasses[size],\n )}\n aria-label={typeof badge === \"number\" ? `${badge} notifications` : undefined}\n role={typeof badge === \"number\" ? \"status\" : undefined}\n >\n {badge}\n </span>\n )}\n </div>\n );\n },\n);\n\nAvatar.displayName = \"Avatar\";\n\n/**\n * AvatarGroup Component\n */\nconst AvatarGroup = React.memo<AvatarGroupProps>(\n ({\n children,\n max,\n size = \"md\",\n shape = \"circle\",\n showTotal = false,\n renderSurplus,\n bordered = false,\n className,\n classNames,\n ref,\n ...props\n }) => {\n const childrenArray = React.Children.toArray(children);\n const total = childrenArray.length;\n const visibleChildren = max ? childrenArray.slice(0, max) : childrenArray;\n const remainingCount = max && total > max ? total - max : 0;\n const surplusDisplay = showTotal ? total : remainingCount;\n\n return (\n <div\n ref={ref}\n className={cn(\n \"avatarGroup_root\",\n \"flex items-center\",\n overlapClasses[size],\n classNames?.root,\n className,\n )}\n role=\"group\"\n aria-label={`Avatar group with ${total} members`}\n data-slot=\"root\"\n {...props}\n >\n {visibleChildren.map((child, index) => {\n if (React.isValidElement<AvatarProps>(child)) {\n return React.cloneElement(child, {\n key: child.key ?? index,\n size: child.props.size ?? size,\n shape: child.props.shape ?? shape,\n bordered: child.props.bordered ?? bordered ?? true,\n className: cn(child.props.className),\n });\n }\n return child;\n })}\n\n {remainingCount > 0 &&\n (renderSurplus ? (\n renderSurplus(surplusDisplay)\n ) : (\n <div\n className={cn(\n \"avatarGroup_overflow\",\n avatarVariants({\n size,\n shape,\n color: \"default\",\n bordered: true,\n }),\n \"bg-surface/80 backdrop-blur-sm overflow-hidden\",\n classNames?.overflow,\n )}\n aria-label={\n showTotal\n ? `${total} total members`\n : `${remainingCount} more members`\n }\n data-slot=\"overflow\"\n >\n <span className=\"text-text-secondary font-medium\">\n {showTotal ? total : `+${remainingCount}`}\n </span>\n </div>\n ))}\n </div>\n );\n },\n);\n\nAvatarGroup.displayName = \"AvatarGroup\";\n\nexport type * from \"./types\";\nexport { Avatar, AvatarGroup };\nexport default Avatar;\n"]}
@@ -1,130 +0,0 @@
1
- import { cn } from './chunk-NGYLRX6F.js';
2
- import React, { useRef, useState, useEffect } from 'react';
3
- import { Pagination } from 'swiper/modules';
4
- import { Swiper } from 'swiper/react';
5
- import 'swiper/css';
6
- import 'swiper/css/pagination';
7
- import { ChevronRight, ChevronLeft } from 'lucide-react';
8
- import { jsxs, jsx } from 'react/jsx-runtime';
9
-
10
- function CarouselNavigation({ type, swiper, className }) {
11
- const [slideConfig, setSlideConfig] = useState({
12
- isBeginning: true,
13
- isEnd: false
14
- });
15
- useEffect(() => {
16
- if (!swiper) return;
17
- const updateSlideState = () => {
18
- setSlideConfig({ isBeginning: swiper.isBeginning, isEnd: swiper.isEnd });
19
- };
20
- swiper.on("slideChange", updateSlideState);
21
- return () => {
22
- swiper.off("slideChange", updateSlideState);
23
- };
24
- }, [swiper]);
25
- if (!swiper) return null;
26
- if (slideConfig.isBeginning && type === "prev") return null;
27
- if (slideConfig.isEnd && type === "next") return null;
28
- return /* @__PURE__ */ jsx(
29
- "button",
30
- {
31
- type: "button",
32
- "aria-label": type === "next" ? "Next slide" : "Previous slide",
33
- onClick: (e) => {
34
- e.stopPropagation();
35
- if (type === "next") {
36
- swiper?.slideNext();
37
- } else {
38
- swiper?.slidePrev();
39
- }
40
- },
41
- className: cn(
42
- "flex items-center justify-center w-9 h-9 rounded-full border border-border bg-background shadow-sm hover:bg-surface transition cursor-pointer focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 outline-none",
43
- className
44
- ),
45
- children: type === "next" ? /* @__PURE__ */ jsx(ChevronRight, { size: 18, "aria-hidden": "true" }) : /* @__PURE__ */ jsx(ChevronLeft, { size: 18, "aria-hidden": "true" })
46
- }
47
- );
48
- }
49
- var pagination = {
50
- clickable: true,
51
- horizontalClass: "pagination",
52
- bulletActiveClass: "bg-text-primary",
53
- bulletClass: "inline-flex w-2.5 h-2.5 mx-1 rounded-full bg-border opacity-70 transition-[opacity,colors] duration-300 cursor-pointer hover:opacity-100"
54
- };
55
- var Carousel = React.memo(
56
- ({
57
- withArrows = false,
58
- withPagination = false,
59
- children,
60
- loop = false,
61
- className,
62
- classNames,
63
- modules,
64
- ...props
65
- }) => {
66
- const swiperRef = useRef(null);
67
- const [, setRenderTrigger] = useState(0);
68
- return /* @__PURE__ */ jsxs(
69
- "div",
70
- {
71
- className: cn(
72
- "carousel_root",
73
- "relative h-full group",
74
- classNames?.root,
75
- className
76
- ),
77
- role: "region",
78
- "aria-roledescription": "carousel",
79
- "aria-label": "Image carousel",
80
- children: [
81
- withArrows && /* @__PURE__ */ jsx("div", { className: cn(
82
- "carousel_navigation",
83
- "absolute -translate-y-1/2 top-1/2 left-0 flex px-1 z-10 opacity-0 group-hover:opacity-100 transition-[opacity,colors] duration-200",
84
- classNames?.navigation
85
- ), children: /* @__PURE__ */ jsx(
86
- CarouselNavigation,
87
- {
88
- type: "prev",
89
- swiper: swiperRef.current,
90
- className: cn("carousel_navButton", classNames?.navButton)
91
- }
92
- ) }),
93
- /* @__PURE__ */ jsx(
94
- Swiper,
95
- {
96
- loop,
97
- ...props,
98
- modules: [Pagination, ...modules || []],
99
- pagination: withPagination ? pagination : false,
100
- className: cn("carousel_wrapper", "relative", classNames?.wrapper),
101
- onBeforeInit: (swiper) => {
102
- swiperRef.current = swiper;
103
- setRenderTrigger((x) => x + 1);
104
- },
105
- children
106
- }
107
- ),
108
- withArrows && /* @__PURE__ */ jsx("div", { className: cn(
109
- "carousel_navigation",
110
- "absolute -translate-y-1/2 top-1/2 right-0 flex px-1 z-10 opacity-0 group-hover:opacity-100 transition-[opacity,colors] duration-200",
111
- classNames?.navigation
112
- ), children: /* @__PURE__ */ jsx(
113
- CarouselNavigation,
114
- {
115
- type: "next",
116
- swiper: swiperRef.current,
117
- className: cn("carousel_navButton", classNames?.navButton)
118
- }
119
- ) })
120
- ]
121
- }
122
- );
123
- }
124
- );
125
- Carousel.displayName = "Carousel";
126
- var carousel_default = Carousel;
127
-
128
- export { carousel_default };
129
- //# sourceMappingURL=chunk-N2WHJ3FI.js.map
130
- //# sourceMappingURL=chunk-N2WHJ3FI.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/carousel/carousel-navigation.tsx","../src/carousel/index.tsx"],"names":["useState","jsx"],"mappings":"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","file":"chunk-N2WHJ3FI.js","sourcesContent":["'use client'\n\nimport { ChevronLeft, ChevronRight } from 'lucide-react'\nimport { Swiper as SwiperType } from 'swiper/types'\nimport { useEffect, useState } from 'react'\nimport { cn } from '../utils'\n\ninterface CarouselNavigationProps {\n type: 'next' | 'prev'\n swiper: SwiperType | null\n className?: string\n}\n\nexport function CarouselNavigation({ type, swiper, className }: CarouselNavigationProps) {\n const [slideConfig, setSlideConfig] = useState({\n isBeginning: true,\n isEnd: false,\n })\n\n useEffect(() => {\n if (!swiper) return\n\n const updateSlideState = () => {\n setSlideConfig({ isBeginning: swiper.isBeginning, isEnd: swiper.isEnd })\n }\n\n swiper.on('slideChange', updateSlideState)\n\n return () => {\n swiper.off('slideChange', updateSlideState)\n }\n }, [swiper])\n\n if (!swiper) return null\n if (slideConfig.isBeginning && type === 'prev') return null\n if (slideConfig.isEnd && type === 'next') return null\n\n return (\n <button\n type=\"button\"\n aria-label={type === 'next' ? 'Next slide' : 'Previous slide'}\n onClick={(e) => {\n e.stopPropagation()\n if (type === 'next') {\n swiper?.slideNext()\n } else {\n swiper?.slidePrev()\n }\n }}\n className={cn(\n 'flex items-center justify-center w-9 h-9 rounded-full border border-border bg-background shadow-sm hover:bg-surface transition cursor-pointer focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 outline-none',\n className\n )}\n >\n {type === 'next' ? <ChevronRight size={18} aria-hidden=\"true\" /> : <ChevronLeft size={18} aria-hidden=\"true\" />}\n </button>\n )\n}\n","'use client'\n\nimport React, { useRef, useState } from 'react'\nimport { Pagination } from 'swiper/modules'\nimport { Swiper, SwiperProps } from 'swiper/react'\nimport { PaginationOptions, Swiper as SwiperType } from 'swiper/types'\n\n// Swiper core styles - required for carousel to render correctly\nimport 'swiper/css'\nimport 'swiper/css/pagination'\n\nimport { cn } from '../utils'\nimport { CarouselNavigation } from './carousel-navigation'\n\nexport interface CarouselClassNames {\n /**\n * Class name for the root container\n */\n root?: string\n\n /**\n * Class name for the wrapper element\n */\n wrapper?: string\n\n /**\n * Class name for individual slides\n */\n slide?: string\n\n /**\n * Class name for the navigation container\n */\n navigation?: string\n\n /**\n * Class name for navigation buttons\n */\n navButton?: string\n\n /**\n * Class name for the pagination container\n */\n pagination?: string\n\n /**\n * Class name for pagination dots\n */\n dot?: string\n\n /**\n * Class name for active pagination dot\n */\n dotActive?: string\n}\n\nexport interface CarouselProps extends SwiperProps {\n withArrows?: boolean\n withPagination?: boolean\n children: React.ReactNode\n /**\n * ClassNames for component parts\n */\n classNames?: CarouselClassNames\n}\n\nconst pagination: PaginationOptions = {\n clickable: true,\n horizontalClass: 'pagination',\n bulletActiveClass: 'bg-text-primary',\n bulletClass:\n 'inline-flex w-2.5 h-2.5 mx-1 rounded-full bg-border opacity-70 transition-[opacity,colors] duration-300 cursor-pointer hover:opacity-100',\n}\n\nconst Carousel = React.memo<CarouselProps>(\n ({\n withArrows = false,\n withPagination = false,\n children,\n loop = false,\n className,\n classNames,\n modules,\n ...props\n }) => {\n const swiperRef = useRef<SwiperType | null>(null)\n const [, setRenderTrigger] = useState(0)\n\n return (\n <div\n className={cn(\n 'carousel_root',\n 'relative h-full group',\n classNames?.root,\n className\n )}\n role=\"region\"\n aria-roledescription=\"carousel\"\n aria-label=\"Image carousel\"\n >\n {withArrows && (\n <div className={cn(\n 'carousel_navigation',\n 'absolute -translate-y-1/2 top-1/2 left-0 flex px-1 z-10 opacity-0 group-hover:opacity-100 transition-[opacity,colors] duration-200',\n classNames?.navigation\n )}>\n <CarouselNavigation\n type=\"prev\"\n swiper={swiperRef.current}\n className={cn('carousel_navButton', classNames?.navButton)}\n />\n </div>\n )}\n\n <Swiper\n loop={loop}\n {...props}\n modules={[Pagination, ...(modules || [])]}\n pagination={withPagination ? pagination : false}\n className={cn('carousel_wrapper', 'relative', classNames?.wrapper)}\n onBeforeInit={(swiper) => {\n swiperRef.current = swiper\n setRenderTrigger((x) => x + 1) // Trigger re-render to update navigation refs\n }}\n >\n {children}\n </Swiper>\n\n {withArrows && (\n <div className={cn(\n 'carousel_navigation',\n 'absolute -translate-y-1/2 top-1/2 right-0 flex px-1 z-10 opacity-0 group-hover:opacity-100 transition-[opacity,colors] duration-200',\n classNames?.navigation\n )}>\n <CarouselNavigation\n type=\"next\"\n swiper={swiperRef.current}\n className={cn('carousel_navButton', classNames?.navButton)}\n />\n </div>\n )}\n </div>\n )\n },\n)\n\nCarousel.displayName = 'Carousel'\n\nexport default Carousel\n"]}