@zentauri-ui/zentauri-components 1.5.31 → 1.6.2

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 (360) hide show
  1. package/README.md +78 -69
  2. package/dist/charts/area.js.map +1 -1
  3. package/dist/charts/area.mjs.map +1 -1
  4. package/dist/charts/bubble/Bubble.d.ts.map +1 -1
  5. package/dist/charts/bubble.js.map +1 -1
  6. package/dist/charts/bubble.mjs.map +1 -1
  7. package/dist/charts/pie/Pie.d.ts.map +1 -1
  8. package/dist/charts/pie.js +20 -2
  9. package/dist/charts/pie.js.map +1 -1
  10. package/dist/charts/pie.mjs +20 -2
  11. package/dist/charts/pie.mjs.map +1 -1
  12. package/dist/charts/shared/types.d.ts.map +1 -1
  13. package/dist/{chunk-G3LEYBRV.mjs → chunk-25EAVVGS.mjs} +61 -58
  14. package/dist/chunk-25EAVVGS.mjs.map +1 -0
  15. package/dist/{chunk-BCZIYH53.js → chunk-3OXIZ4ZO.js} +28 -28
  16. package/dist/chunk-3OXIZ4ZO.js.map +1 -0
  17. package/dist/{chunk-PWL5WD34.js → chunk-3Z73M5TW.js} +27 -26
  18. package/dist/chunk-3Z73M5TW.js.map +1 -0
  19. package/dist/{chunk-AUGLZ3AN.js → chunk-4F56BLZQ.js} +51 -51
  20. package/dist/chunk-4F56BLZQ.js.map +1 -0
  21. package/dist/{chunk-JJDANNNL.mjs → chunk-4MPNRGUA.mjs} +3 -9
  22. package/dist/chunk-4MPNRGUA.mjs.map +1 -0
  23. package/dist/{chunk-Y745GQR2.js → chunk-4PZIDDC6.js} +45 -45
  24. package/dist/chunk-4PZIDDC6.js.map +1 -0
  25. package/dist/{chunk-TINHLHCN.mjs → chunk-73RHHGIA.mjs} +39 -36
  26. package/dist/chunk-73RHHGIA.mjs.map +1 -0
  27. package/dist/{chunk-OLEMP2HL.js → chunk-746CV3AN.js} +29 -36
  28. package/dist/chunk-746CV3AN.js.map +1 -0
  29. package/dist/chunk-CFTDAGKD.js +130 -0
  30. package/dist/chunk-CFTDAGKD.js.map +1 -0
  31. package/dist/{chunk-N2OAI2HN.js → chunk-D55YIHBN.js} +15 -15
  32. package/dist/chunk-D55YIHBN.js.map +1 -0
  33. package/dist/{chunk-KXUG4WVW.js → chunk-DO2LEXUY.js} +5 -5
  34. package/dist/{chunk-KXUG4WVW.js.map → chunk-DO2LEXUY.js.map} +1 -1
  35. package/dist/chunk-EU63V22F.mjs +126 -0
  36. package/dist/chunk-EU63V22F.mjs.map +1 -0
  37. package/dist/chunk-EZS47EZW.mjs +70 -0
  38. package/dist/chunk-EZS47EZW.mjs.map +1 -0
  39. package/dist/{chunk-E4FZY7O2.js → chunk-GHJN3Z3V.js} +48 -48
  40. package/dist/chunk-GHJN3Z3V.js.map +1 -0
  41. package/dist/{chunk-MTLLJFUI.mjs → chunk-GIC3J6HR.mjs} +28 -28
  42. package/dist/chunk-GIC3J6HR.mjs.map +1 -0
  43. package/dist/chunk-GPAUYUM3.js +232 -0
  44. package/dist/chunk-GPAUYUM3.js.map +1 -0
  45. package/dist/{chunk-C5L465FW.mjs → chunk-HARD4NMB.mjs} +45 -45
  46. package/dist/chunk-HARD4NMB.mjs.map +1 -0
  47. package/dist/{chunk-YTRGRHEB.js → chunk-HV7LVRK3.js} +61 -58
  48. package/dist/chunk-HV7LVRK3.js.map +1 -0
  49. package/dist/{chunk-ZYZJ74XB.mjs → chunk-J5QJEKY2.mjs} +28 -28
  50. package/dist/chunk-J5QJEKY2.mjs.map +1 -0
  51. package/dist/chunk-JE6B3DHW.mjs +220 -0
  52. package/dist/chunk-JE6B3DHW.mjs.map +1 -0
  53. package/dist/{chunk-7TLKLMBM.js → chunk-JOMSI4WH.js} +18 -15
  54. package/dist/chunk-JOMSI4WH.js.map +1 -0
  55. package/dist/{chunk-Q5B44QW7.js → chunk-KA5MORDC.js} +52 -52
  56. package/dist/chunk-KA5MORDC.js.map +1 -0
  57. package/dist/{chunk-TJUNN2PT.mjs → chunk-LPL6NJ5Q.mjs} +27 -26
  58. package/dist/chunk-LPL6NJ5Q.mjs.map +1 -0
  59. package/dist/{chunk-ZBBFOMSJ.mjs → chunk-M6FS7X54.mjs} +22 -22
  60. package/dist/chunk-M6FS7X54.mjs.map +1 -0
  61. package/dist/{chunk-JUDMPOCI.js → chunk-MM3P52WS.js} +22 -22
  62. package/dist/chunk-MM3P52WS.js.map +1 -0
  63. package/dist/{chunk-UWA23DUC.js → chunk-OB6TYS5Q.js} +28 -28
  64. package/dist/chunk-OB6TYS5Q.js.map +1 -0
  65. package/dist/chunk-OHST7AHC.mjs +99 -0
  66. package/dist/chunk-OHST7AHC.mjs.map +1 -0
  67. package/dist/{chunk-QZTEFGZF.mjs → chunk-OVTWPGMW.mjs} +18 -15
  68. package/dist/chunk-OVTWPGMW.mjs.map +1 -0
  69. package/dist/{chunk-7OHC4ERB.mjs → chunk-PPVJ4INP.mjs} +3 -3
  70. package/dist/{chunk-7OHC4ERB.mjs.map → chunk-PPVJ4INP.mjs.map} +1 -1
  71. package/dist/{chunk-LN77JJTY.mjs → chunk-PSIAOIXJ.mjs} +48 -48
  72. package/dist/chunk-PSIAOIXJ.mjs.map +1 -0
  73. package/dist/chunk-QNF4JPFP.js +339 -0
  74. package/dist/chunk-QNF4JPFP.js.map +1 -0
  75. package/dist/{chunk-A6KMZ5ZS.mjs → chunk-QSIJKHC5.mjs} +15 -15
  76. package/dist/chunk-QSIJKHC5.mjs.map +1 -0
  77. package/dist/chunk-RFFGQYDQ.mjs +337 -0
  78. package/dist/chunk-RFFGQYDQ.mjs.map +1 -0
  79. package/dist/{chunk-INMNX3HQ.mjs → chunk-S5H2OMTZ.mjs} +29 -36
  80. package/dist/chunk-S5H2OMTZ.mjs.map +1 -0
  81. package/dist/chunk-TIPNRH26.js +102 -0
  82. package/dist/chunk-TIPNRH26.js.map +1 -0
  83. package/dist/chunk-V2PEOBAT.mjs +324 -0
  84. package/dist/chunk-V2PEOBAT.mjs.map +1 -0
  85. package/dist/chunk-VGWA26BN.js +72 -0
  86. package/dist/chunk-VGWA26BN.js.map +1 -0
  87. package/dist/{chunk-MEJMX4QI.js → chunk-VMCOX3Z2.js} +3 -9
  88. package/dist/chunk-VMCOX3Z2.js.map +1 -0
  89. package/dist/chunk-WNLDXBS6.mjs +323 -0
  90. package/dist/chunk-WNLDXBS6.mjs.map +1 -0
  91. package/dist/{chunk-AD2LA3XN.js → chunk-YIO7DFUA.js} +39 -36
  92. package/dist/chunk-YIO7DFUA.js.map +1 -0
  93. package/dist/hooks/useDynamicStepper/index.d.ts +1 -1
  94. package/dist/hooks/useDynamicStepper/index.d.ts.map +1 -1
  95. package/dist/hooks/useDynamicStepper/useDynamicStepper.d.ts.map +1 -1
  96. package/dist/hooks/useDynamicStepper.js +2 -2
  97. package/dist/hooks/useDynamicStepper.mjs +1 -1
  98. package/dist/ui/accordion/animated.js +7 -7
  99. package/dist/ui/accordion/animated.mjs +2 -2
  100. package/dist/ui/accordion/variants.d.ts.map +1 -1
  101. package/dist/ui/accordion.js +9 -9
  102. package/dist/ui/accordion.mjs +2 -2
  103. package/dist/ui/alert/animated.js +2 -2
  104. package/dist/ui/alert/animated.mjs +1 -1
  105. package/dist/ui/alert/variants.d.ts.map +1 -1
  106. package/dist/ui/alert.js +10 -10
  107. package/dist/ui/alert.mjs +2 -2
  108. package/dist/ui/avatar/animated.js +5 -5
  109. package/dist/ui/avatar/animated.mjs +2 -2
  110. package/dist/ui/avatar/variants.d.ts.map +1 -1
  111. package/dist/ui/avatar.js +9 -9
  112. package/dist/ui/avatar.mjs +2 -2
  113. package/dist/ui/badge/animated.js +2 -2
  114. package/dist/ui/badge/animated.mjs +1 -1
  115. package/dist/ui/badge/variants.d.ts +24 -24
  116. package/dist/ui/badge/variants.d.ts.map +1 -1
  117. package/dist/ui/badge.js +4 -4
  118. package/dist/ui/badge.mjs +2 -2
  119. package/dist/ui/breadcrumb/variants.d.ts.map +1 -1
  120. package/dist/ui/breadcrumb.js +30 -25
  121. package/dist/ui/breadcrumb.js.map +1 -1
  122. package/dist/ui/breadcrumb.mjs +30 -25
  123. package/dist/ui/breadcrumb.mjs.map +1 -1
  124. package/dist/ui/buttons/animated.js +3 -3
  125. package/dist/ui/buttons/animated.mjs +1 -1
  126. package/dist/ui/buttons/variants.d.ts.map +1 -1
  127. package/dist/ui/buttons.js +4 -4
  128. package/dist/ui/buttons.mjs +2 -2
  129. package/dist/ui/card/animated.js +7 -7
  130. package/dist/ui/card/animated.mjs +2 -2
  131. package/dist/ui/card/variants.d.ts.map +1 -1
  132. package/dist/ui/card.js +12 -12
  133. package/dist/ui/card.mjs +2 -2
  134. package/dist/ui/divider/animated.js +2 -2
  135. package/dist/ui/divider/animated.mjs +1 -1
  136. package/dist/ui/divider.js +6 -6
  137. package/dist/ui/divider.mjs +2 -2
  138. package/dist/ui/drawer/animated.js +11 -11
  139. package/dist/ui/drawer/animated.mjs +2 -2
  140. package/dist/ui/drawer/variants.d.ts.map +1 -1
  141. package/dist/ui/drawer.js +11 -11
  142. package/dist/ui/drawer.mjs +1 -1
  143. package/dist/ui/dropdown/variants.d.ts.map +1 -1
  144. package/dist/ui/dropdown.js +52 -52
  145. package/dist/ui/dropdown.js.map +1 -1
  146. package/dist/ui/dropdown.mjs +52 -52
  147. package/dist/ui/dropdown.mjs.map +1 -1
  148. package/dist/ui/dynamic-stepper/index.d.ts +1 -1
  149. package/dist/ui/dynamic-stepper/index.d.ts.map +1 -1
  150. package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -1
  151. package/dist/ui/dynamic-stepper.js +75 -72
  152. package/dist/ui/dynamic-stepper.js.map +1 -1
  153. package/dist/ui/dynamic-stepper.mjs +72 -69
  154. package/dist/ui/dynamic-stepper.mjs.map +1 -1
  155. package/dist/ui/empty-state/animated.js +2 -2
  156. package/dist/ui/empty-state/animated.mjs +1 -1
  157. package/dist/ui/empty-state/variants.d.ts.map +1 -1
  158. package/dist/ui/empty-state.js +10 -10
  159. package/dist/ui/empty-state.mjs +2 -2
  160. package/dist/ui/file-upload/file-upload.d.ts.map +1 -1
  161. package/dist/ui/file-upload/variants.d.ts.map +1 -1
  162. package/dist/ui/file-upload.js +18 -18
  163. package/dist/ui/file-upload.js.map +1 -1
  164. package/dist/ui/file-upload.mjs +18 -18
  165. package/dist/ui/file-upload.mjs.map +1 -1
  166. package/dist/ui/inputs/animated.js +3 -3
  167. package/dist/ui/inputs/animated.mjs +1 -1
  168. package/dist/ui/inputs/types.d.ts +1 -1
  169. package/dist/ui/inputs/types.d.ts.map +1 -1
  170. package/dist/ui/inputs/variants.d.ts +1 -1
  171. package/dist/ui/inputs/variants.d.ts.map +1 -1
  172. package/dist/ui/inputs.js +4 -4
  173. package/dist/ui/inputs.mjs +2 -2
  174. package/dist/ui/modal/animated.js +4 -4
  175. package/dist/ui/modal/animated.mjs +1 -1
  176. package/dist/ui/modal/variants.d.ts.map +1 -1
  177. package/dist/ui/modal.js +12 -12
  178. package/dist/ui/modal.mjs +2 -2
  179. package/dist/ui/pagination/types.d.ts.map +1 -1
  180. package/dist/ui/pagination/variants.d.ts.map +1 -1
  181. package/dist/ui/pagination.js +33 -33
  182. package/dist/ui/pagination.js.map +1 -1
  183. package/dist/ui/pagination.mjs +30 -30
  184. package/dist/ui/pagination.mjs.map +1 -1
  185. package/dist/ui/progress/animated.js +8 -8
  186. package/dist/ui/progress/animated.mjs +2 -2
  187. package/dist/ui/progress/variants.d.ts.map +1 -1
  188. package/dist/ui/progress.js +9 -9
  189. package/dist/ui/progress.mjs +2 -2
  190. package/dist/ui/search/search-bar.d.ts.map +1 -1
  191. package/dist/ui/search/search-suggestion-list.d.ts.map +1 -1
  192. package/dist/ui/search.js +10 -9
  193. package/dist/ui/search.js.map +1 -1
  194. package/dist/ui/search.mjs +9 -8
  195. package/dist/ui/search.mjs.map +1 -1
  196. package/dist/ui/select/variants.d.ts.map +1 -1
  197. package/dist/ui/select.js +67 -67
  198. package/dist/ui/select.js.map +1 -1
  199. package/dist/ui/select.mjs +67 -67
  200. package/dist/ui/select.mjs.map +1 -1
  201. package/dist/ui/skeleton/animated.js +8 -8
  202. package/dist/ui/skeleton/animated.mjs +1 -1
  203. package/dist/ui/skeleton/variants.d.ts.map +1 -1
  204. package/dist/ui/skeleton.js +9 -9
  205. package/dist/ui/skeleton.mjs +1 -1
  206. package/dist/ui/slider.js +25 -25
  207. package/dist/ui/slider.js.map +1 -1
  208. package/dist/ui/slider.mjs +25 -25
  209. package/dist/ui/slider.mjs.map +1 -1
  210. package/dist/ui/spinner/animated.js +22 -22
  211. package/dist/ui/spinner/animated.js.map +1 -1
  212. package/dist/ui/spinner/animated.mjs +22 -22
  213. package/dist/ui/spinner/animated.mjs.map +1 -1
  214. package/dist/ui/stepper/stepper.d.ts.map +1 -1
  215. package/dist/ui/stepper/variants.d.ts.map +1 -1
  216. package/dist/ui/stepper.js +29 -26
  217. package/dist/ui/stepper.js.map +1 -1
  218. package/dist/ui/stepper.mjs +29 -26
  219. package/dist/ui/stepper.mjs.map +1 -1
  220. package/dist/ui/table/animated.js +8 -8
  221. package/dist/ui/table/animated.mjs +2 -2
  222. package/dist/ui/table/variants.d.ts.map +1 -1
  223. package/dist/ui/table.js +14 -14
  224. package/dist/ui/table.mjs +1 -1
  225. package/dist/ui/tabs/animated.js +2 -2
  226. package/dist/ui/tabs/animated.mjs +1 -1
  227. package/dist/ui/tabs/variants.d.ts.map +1 -1
  228. package/dist/ui/tabs.js +9 -9
  229. package/dist/ui/tabs.mjs +1 -1
  230. package/dist/ui/toast/animated.js +7 -7
  231. package/dist/ui/toast/animated.mjs +1 -1
  232. package/dist/ui/toast/toast-base.d.ts.map +1 -1
  233. package/dist/ui/toast/variants.d.ts.map +1 -1
  234. package/dist/ui/toast.js +12 -12
  235. package/dist/ui/toast.mjs +1 -1
  236. package/dist/ui/toggle/animated/toggle-animated.d.ts.map +1 -1
  237. package/dist/ui/toggle/animated.js +5 -4
  238. package/dist/ui/toggle/animated.js.map +1 -1
  239. package/dist/ui/toggle/animated.mjs +4 -3
  240. package/dist/ui/toggle/animated.mjs.map +1 -1
  241. package/dist/ui/toggle/toggle-base.d.ts.map +1 -1
  242. package/dist/ui/toggle/variants.d.ts +1 -0
  243. package/dist/ui/toggle/variants.d.ts.map +1 -1
  244. package/dist/ui/toggle.js +8 -7
  245. package/dist/ui/toggle.js.map +1 -1
  246. package/dist/ui/toggle.mjs +6 -5
  247. package/dist/ui/toggle.mjs.map +1 -1
  248. package/dist/ui/tooltip/animated.js +3 -3
  249. package/dist/ui/tooltip/animated.mjs +1 -1
  250. package/dist/ui/tooltip/variants.d.ts.map +1 -1
  251. package/dist/ui/tooltip.js +7 -7
  252. package/dist/ui/tooltip.mjs +1 -1
  253. package/dist/ui/typography/variants.d.ts.map +1 -1
  254. package/dist/ui/typography.js +19 -19
  255. package/dist/ui/typography.js.map +1 -1
  256. package/dist/ui/typography.mjs +19 -19
  257. package/dist/ui/typography.mjs.map +1 -1
  258. package/package.json +4 -3
  259. package/src/charts/area/Area.tsx +1 -1
  260. package/src/charts/bubble/Bubble.tsx +10 -2
  261. package/src/charts/pie/Pie.tsx +22 -3
  262. package/src/charts/shared/types.ts +1 -1
  263. package/src/hooks/useDynamicStepper/index.ts +1 -3
  264. package/src/hooks/useDynamicStepper/useDynamicStepper.ts +1 -7
  265. package/src/ui/accordion/variants.ts +55 -43
  266. package/src/ui/alert/variants.ts +45 -32
  267. package/src/ui/avatar/variants.ts +34 -26
  268. package/src/ui/badge/variants.ts +42 -29
  269. package/src/ui/breadcrumb/variants.ts +30 -25
  270. package/src/ui/buttons/variants.ts +40 -30
  271. package/src/ui/card/variants.ts +49 -39
  272. package/src/ui/divider/variants.ts +26 -26
  273. package/src/ui/drawer/drawer-base.tsx +2 -2
  274. package/src/ui/drawer/variants.ts +64 -48
  275. package/src/ui/dropdown/dropdown.tsx +1 -1
  276. package/src/ui/dropdown/variants.ts +63 -52
  277. package/src/ui/dynamic-stepper/dynamic-stepper.test.tsx +6 -2
  278. package/src/ui/dynamic-stepper/dynamic-stepper.tsx +2 -2
  279. package/src/ui/dynamic-stepper/index.ts +1 -3
  280. package/src/ui/dynamic-stepper/variants.ts +73 -64
  281. package/src/ui/empty-state/variants.ts +14 -11
  282. package/src/ui/file-upload/file-upload.tsx +5 -3
  283. package/src/ui/file-upload/variants.ts +16 -15
  284. package/src/ui/inputs/types.ts +1 -1
  285. package/src/ui/inputs/variants.ts +106 -47
  286. package/src/ui/modal/modal-base.tsx +2 -2
  287. package/src/ui/modal/variants.ts +64 -47
  288. package/src/ui/pagination/pagination.tsx +1 -1
  289. package/src/ui/pagination/types.ts +1 -4
  290. package/src/ui/pagination/variants.ts +31 -28
  291. package/src/ui/progress/variants.ts +79 -65
  292. package/src/ui/search/search-bar.tsx +2 -1
  293. package/src/ui/search/search-suggestion-list.tsx +7 -5
  294. package/src/ui/select/variants.ts +73 -67
  295. package/src/ui/skeleton/variants.ts +22 -13
  296. package/src/ui/slider/variants.ts +25 -25
  297. package/src/ui/spinner/animated/variants.ts +22 -22
  298. package/src/ui/stepper/stepper.tsx +5 -2
  299. package/src/ui/stepper/variants.ts +25 -24
  300. package/src/ui/table/table-base.tsx +1 -1
  301. package/src/ui/table/variants.ts +53 -45
  302. package/src/ui/tabs/variants.ts +38 -23
  303. package/src/ui/toast/toast-base.tsx +1 -4
  304. package/src/ui/toast/variants.ts +33 -26
  305. package/src/ui/toggle/animated/toggle-animated.tsx +3 -2
  306. package/src/ui/toggle/toggle-base.tsx +4 -3
  307. package/src/ui/toggle/variants.ts +61 -29
  308. package/src/ui/tooltip/variants.ts +21 -20
  309. package/src/ui/typography/code-block-base.tsx +1 -1
  310. package/src/ui/typography/variants.ts +21 -18
  311. package/dist/chunk-2BAMNRAL.mjs +0 -323
  312. package/dist/chunk-2BAMNRAL.mjs.map +0 -1
  313. package/dist/chunk-5TV7EL3H.mjs +0 -70
  314. package/dist/chunk-5TV7EL3H.mjs.map +0 -1
  315. package/dist/chunk-7TLKLMBM.js.map +0 -1
  316. package/dist/chunk-A6KMZ5ZS.mjs.map +0 -1
  317. package/dist/chunk-AD2LA3XN.js.map +0 -1
  318. package/dist/chunk-AOEI4V3W.mjs +0 -286
  319. package/dist/chunk-AOEI4V3W.mjs.map +0 -1
  320. package/dist/chunk-AUGLZ3AN.js.map +0 -1
  321. package/dist/chunk-BCZIYH53.js.map +0 -1
  322. package/dist/chunk-C5L465FW.mjs.map +0 -1
  323. package/dist/chunk-E4FZY7O2.js.map +0 -1
  324. package/dist/chunk-FQBMIZH2.mjs +0 -217
  325. package/dist/chunk-FQBMIZH2.mjs.map +0 -1
  326. package/dist/chunk-G3LEYBRV.mjs.map +0 -1
  327. package/dist/chunk-I6GR234Z.mjs +0 -126
  328. package/dist/chunk-I6GR234Z.mjs.map +0 -1
  329. package/dist/chunk-INMNX3HQ.mjs.map +0 -1
  330. package/dist/chunk-JBAUEGYD.mjs +0 -324
  331. package/dist/chunk-JBAUEGYD.mjs.map +0 -1
  332. package/dist/chunk-JJDANNNL.mjs.map +0 -1
  333. package/dist/chunk-JQ5TIJ4F.mjs +0 -68
  334. package/dist/chunk-JQ5TIJ4F.mjs.map +0 -1
  335. package/dist/chunk-JUDMPOCI.js.map +0 -1
  336. package/dist/chunk-LN77JJTY.mjs.map +0 -1
  337. package/dist/chunk-MCOQHXRW.js +0 -130
  338. package/dist/chunk-MCOQHXRW.js.map +0 -1
  339. package/dist/chunk-MEJMX4QI.js.map +0 -1
  340. package/dist/chunk-MTLLJFUI.mjs.map +0 -1
  341. package/dist/chunk-N2OAI2HN.js.map +0 -1
  342. package/dist/chunk-OB4KJZK2.js +0 -72
  343. package/dist/chunk-OB4KJZK2.js.map +0 -1
  344. package/dist/chunk-OLEMP2HL.js.map +0 -1
  345. package/dist/chunk-PWL5WD34.js.map +0 -1
  346. package/dist/chunk-Q5B44QW7.js.map +0 -1
  347. package/dist/chunk-QZKMFSH5.js +0 -288
  348. package/dist/chunk-QZKMFSH5.js.map +0 -1
  349. package/dist/chunk-QZTEFGZF.mjs.map +0 -1
  350. package/dist/chunk-S7WKFNPT.js +0 -229
  351. package/dist/chunk-S7WKFNPT.js.map +0 -1
  352. package/dist/chunk-TINHLHCN.mjs.map +0 -1
  353. package/dist/chunk-TJUNN2PT.mjs.map +0 -1
  354. package/dist/chunk-UWA23DUC.js.map +0 -1
  355. package/dist/chunk-X22LLJL6.js +0 -71
  356. package/dist/chunk-X22LLJL6.js.map +0 -1
  357. package/dist/chunk-Y745GQR2.js.map +0 -1
  358. package/dist/chunk-YTRGRHEB.js.map +0 -1
  359. package/dist/chunk-ZBBFOMSJ.mjs.map +0 -1
  360. package/dist/chunk-ZYZJ74XB.mjs.map +0 -1
@@ -5,25 +5,25 @@ import { cva } from 'class-variance-authority';
5
5
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
6
6
 
7
7
  var fileUploadVariants = cva(
8
- "relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950",
8
+ "relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-50 dark:focus-visible:ring-offset-slate-950",
9
9
  {
10
10
  variants: {
11
11
  appearance: {
12
- idle: "border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]",
13
- active: "border-violet-400/70 bg-violet-500/10 text-white",
12
+ idle: "border-black/15 dark:border-white/15 bg-black/5 dark:bg-white/5 text-slate-600 dark:text-slate-300 hover:border-black/25 dark:hover:border-white/25 hover:bg-black/[0.07] dark:bg-white/[0.07]",
13
+ active: "border-violet-400/70 bg-violet-500/10 text-slate-900 dark:text-white",
14
14
  disabled: "cursor-not-allowed opacity-50",
15
- error: "border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15",
16
- success: "border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15",
17
- warning: "border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15",
18
- info: "border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15",
19
- neutral: "border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15",
20
- purple: "border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15",
21
- indigo: "border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15",
22
- emerald: "border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15",
23
- amber: "border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15",
24
- pink: "border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15",
25
- orange: "border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15",
26
- teal: "border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15"
15
+ error: "border-red-400/70 bg-red-500/10 text-red-600 dark:text-red-400 hover:border-red-400/80 hover:bg-red-500/15",
16
+ success: "border-green-400/70 bg-green-500/10 text-green-600 dark:text-green-400 hover:border-green-400/80 hover:bg-green-500/15",
17
+ warning: "border-yellow-400/70 bg-yellow-500/10 text-yellow-600 dark:text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15",
18
+ info: "border-blue-400/70 bg-blue-500/10 text-blue-600 dark:text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15",
19
+ neutral: "border-gray-400/70 bg-gray-500/10 text-gray-600 dark:text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15",
20
+ purple: "border-purple-400/70 bg-purple-500/10 text-purple-600 dark:text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15",
21
+ indigo: "border-indigo-400/70 bg-indigo-500/10 text-indigo-600 dark:text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15",
22
+ emerald: "border-emerald-400/70 bg-emerald-500/10 text-emerald-600 dark:text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15",
23
+ amber: "border-amber-400/70 bg-amber-500/10 text-amber-600 dark:text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15",
24
+ pink: "border-pink-400/70 bg-pink-500/10 text-pink-600 dark:text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15",
25
+ orange: "border-orange-400/70 bg-orange-500/10 text-orange-600 dark:text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15",
26
+ teal: "border-teal-400/70 bg-teal-500/10 text-teal-600 dark:text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15"
27
27
  }
28
28
  },
29
29
  defaultVariants: {
@@ -119,10 +119,10 @@ function FileUpload({
119
119
  onDrop: handleDrop,
120
120
  children: [
121
121
  children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
122
- /* @__PURE__ */ jsx("span", { className: "text-base font-semibold text-slate-100", children: "Drop files here" }),
123
- /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-400", children: "or click to browse from your device" })
122
+ /* @__PURE__ */ jsx("span", { className: "text-base font-semibold text-slate-900 dark:text-slate-100", children: "Drop files here" }),
123
+ /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-600 dark:text-slate-400", children: "or click to browse from your device" })
124
124
  ] }),
125
- dragOver && /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-400", children: "Drop files here" })
125
+ dragOver && /* @__PURE__ */ jsx("span", { className: "text-xs text-slate-600 dark:text-slate-400", children: "Drop files here" })
126
126
  ]
127
127
  }
128
128
  )
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/file-upload/variants.ts","../../src/ui/file-upload/file-upload.tsx"],"names":[],"mappings":"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","file":"file-upload.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const fileUploadVariants = cva(\n \"relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n idle: \"border-white/15 bg-white/5 text-slate-300 hover:border-white/25 hover:bg-white/[0.07]\",\n active: \"border-violet-400/70 bg-violet-500/10 text-white\",\n disabled: \"cursor-not-allowed opacity-50\",\n error:\n \"border-red-400/70 bg-red-500/10 text-red-400 hover:border-red-400/80 hover:bg-red-500/15\",\n success:\n \"border-green-400/70 bg-green-500/10 text-green-400 hover:border-green-400/80 hover:bg-green-500/15\",\n warning:\n \"border-yellow-400/70 bg-yellow-500/10 text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15\",\n info: \"border-blue-400/70 bg-blue-500/10 text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15\",\n neutral:\n \"border-gray-400/70 bg-gray-500/10 text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15\",\n purple:\n \"border-purple-400/70 bg-purple-500/10 text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15\",\n indigo:\n \"border-indigo-400/70 bg-indigo-500/10 text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15\",\n emerald:\n \"border-emerald-400/70 bg-emerald-500/10 text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15\",\n amber:\n \"border-amber-400/70 bg-amber-500/10 text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15\",\n pink: \"border-pink-400/70 bg-pink-500/10 text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15\",\n orange:\n \"border-orange-400/70 bg-orange-500/10 text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15\",\n teal: \"border-teal-400/70 bg-teal-500/10 text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15\",\n },\n },\n defaultVariants: {\n appearance: \"idle\",\n },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { FileUploadProps } from \"./types\";\nimport { fileUploadVariants } from \"./variants\";\n\nexport function FileUpload({\n className,\n onFiles,\n accept,\n multiple = false,\n disabled = false,\n name,\n children,\n onChange,\n ref,\n appearance = \"idle\",\n ...rest\n}: FileUploadProps & { ref?: React.Ref<HTMLDivElement> }) {\n const inputId = useId();\n const [dragOver, setDragOver] = useState(false);\n\n const emitFiles = useCallback(\n (fileList: FileList | null) => {\n if (!fileList?.length) {\n return;\n }\n onFiles?.(Array.from(fileList));\n },\n [onFiles],\n );\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n emitFiles(event.target.files);\n event.target.value = \"\";\n },\n [emitFiles, onChange],\n );\n\n const handleDrop = useCallback(\n (event: React.DragEvent<HTMLLabelElement>) => {\n event.preventDefault();\n setDragOver(false);\n if (disabled) {\n return;\n }\n emitFiles(event.dataTransfer.files);\n },\n [disabled, emitFiles],\n );\n\n return (\n <div\n ref={ref}\n data-slot=\"file-upload\"\n className={cn(fileUploadVariants({ appearance }), className)}\n {...rest}\n >\n <input\n id={inputId}\n name={name}\n type=\"file\"\n className=\"sr-only\"\n accept={accept}\n multiple={multiple}\n disabled={disabled}\n onChange={handleChange}\n />\n <label\n htmlFor={inputId}\n className={cn(\n \"flex w-full cursor-pointer flex-col items-center gap-2\",\n disabled && \"cursor-not-allowed\",\n )}\n onDragEnter={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragOver={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragLeave={() => setDragOver(false)}\n onDrop={handleDrop}\n >\n {children ?? (\n <>\n <span className=\"text-base font-semibold text-slate-100\">\n Drop files here\n </span>\n <span className=\"text-xs text-slate-400\">\n or click to browse from your device\n </span>\n </>\n )}\n {dragOver && (\n <span className=\"text-xs text-slate-400\">Drop files here</span>\n )}\n </label>\n </div>\n );\n}\n\nFileUpload.displayName = \"FileUpload\";\n"]}
1
+ {"version":3,"sources":["../../src/ui/file-upload/variants.ts","../../src/ui/file-upload/file-upload.tsx"],"names":[],"mappings":"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","file":"file-upload.mjs","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const fileUploadVariants = cva(\n \"relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-2xl border border-dashed px-6 py-10 text-center text-sm transition-colors outline-none focus-visible:ring-2 focus-visible:ring-violet-400/60 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-50 dark:focus-visible:ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n idle: \"border-black/15 dark:border-white/15 bg-black/5 dark:bg-white/5 text-slate-600 dark:text-slate-300 hover:border-black/25 dark:hover:border-white/25 hover:bg-black/[0.07] dark:bg-white/[0.07]\",\n active:\n \"border-violet-400/70 bg-violet-500/10 text-slate-900 dark:text-white\",\n disabled: \"cursor-not-allowed opacity-50\",\n error:\n \"border-red-400/70 bg-red-500/10 text-red-600 dark:text-red-400 hover:border-red-400/80 hover:bg-red-500/15\",\n success:\n \"border-green-400/70 bg-green-500/10 text-green-600 dark:text-green-400 hover:border-green-400/80 hover:bg-green-500/15\",\n warning:\n \"border-yellow-400/70 bg-yellow-500/10 text-yellow-600 dark:text-yellow-400 hover:border-yellow-400/80 hover:bg-yellow-500/15\",\n info: \"border-blue-400/70 bg-blue-500/10 text-blue-600 dark:text-blue-400 hover:border-blue-400/80 hover:bg-blue-500/15\",\n neutral:\n \"border-gray-400/70 bg-gray-500/10 text-gray-600 dark:text-gray-400 hover:border-gray-400/80 hover:bg-gray-500/15\",\n purple:\n \"border-purple-400/70 bg-purple-500/10 text-purple-600 dark:text-purple-400 hover:border-purple-400/80 hover:bg-purple-500/15\",\n indigo:\n \"border-indigo-400/70 bg-indigo-500/10 text-indigo-600 dark:text-indigo-400 hover:border-indigo-400/80 hover:bg-indigo-500/15\",\n emerald:\n \"border-emerald-400/70 bg-emerald-500/10 text-emerald-600 dark:text-emerald-400 hover:border-emerald-400/80 hover:bg-emerald-500/15\",\n amber:\n \"border-amber-400/70 bg-amber-500/10 text-amber-600 dark:text-amber-400 hover:border-amber-400/80 hover:bg-amber-500/15\",\n pink: \"border-pink-400/70 bg-pink-500/10 text-pink-600 dark:text-pink-400 hover:border-pink-400/80 hover:bg-pink-500/15\",\n orange:\n \"border-orange-400/70 bg-orange-500/10 text-orange-600 dark:text-orange-400 hover:border-orange-400/80 hover:bg-orange-500/15\",\n teal: \"border-teal-400/70 bg-teal-500/10 text-teal-600 dark:text-teal-400 hover:border-teal-400/80 hover:bg-teal-500/15\",\n },\n },\n defaultVariants: {\n appearance: \"idle\",\n },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, useState } from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport type { FileUploadProps } from \"./types\";\nimport { fileUploadVariants } from \"./variants\";\n\nexport function FileUpload({\n className,\n onFiles,\n accept,\n multiple = false,\n disabled = false,\n name,\n children,\n onChange,\n ref,\n appearance = \"idle\",\n ...rest\n}: FileUploadProps & { ref?: React.Ref<HTMLDivElement> }) {\n const inputId = useId();\n const [dragOver, setDragOver] = useState(false);\n\n const emitFiles = useCallback(\n (fileList: FileList | null) => {\n if (!fileList?.length) {\n return;\n }\n onFiles?.(Array.from(fileList));\n },\n [onFiles],\n );\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n emitFiles(event.target.files);\n event.target.value = \"\";\n },\n [emitFiles, onChange],\n );\n\n const handleDrop = useCallback(\n (event: React.DragEvent<HTMLLabelElement>) => {\n event.preventDefault();\n setDragOver(false);\n if (disabled) {\n return;\n }\n emitFiles(event.dataTransfer.files);\n },\n [disabled, emitFiles],\n );\n\n return (\n <div\n ref={ref}\n data-slot=\"file-upload\"\n className={cn(fileUploadVariants({ appearance }), className)}\n {...rest}\n >\n <input\n id={inputId}\n name={name}\n type=\"file\"\n className=\"sr-only\"\n accept={accept}\n multiple={multiple}\n disabled={disabled}\n onChange={handleChange}\n />\n <label\n htmlFor={inputId}\n className={cn(\n \"flex w-full cursor-pointer flex-col items-center gap-2\",\n disabled && \"cursor-not-allowed\",\n )}\n onDragEnter={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragOver={(e) => {\n e.preventDefault();\n if (!disabled) {\n setDragOver(true);\n }\n }}\n onDragLeave={() => setDragOver(false)}\n onDrop={handleDrop}\n >\n {children ?? (\n <>\n <span className=\"text-base font-semibold text-slate-900 dark:text-slate-100\">\n Drop files here\n </span>\n <span className=\"text-xs text-slate-600 dark:text-slate-400\">\n or click to browse from your device\n </span>\n </>\n )}\n {dragOver && (\n <span className=\"text-xs text-slate-600 dark:text-slate-400\">\n Drop files here\n </span>\n )}\n </label>\n </div>\n );\n}\n\nFileUpload.displayName = \"FileUpload\";\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkQZKMFSH5_js = require('../../chunk-QZKMFSH5.js');
4
+ var chunkQNF4JPFP_js = require('../../chunk-QNF4JPFP.js');
5
5
  var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
6
6
  var react = require('react');
7
7
  var framerMotion = require('framer-motion');
@@ -68,7 +68,7 @@ var InputAnimated = (props) => {
68
68
  id: controlId2,
69
69
  "data-slot": "input",
70
70
  className: chunkZS5756ZC_js.cn(
71
- chunkQZKMFSH5_js.inputVariants({ appearance: appearance2, size: size2, ring: ring2, as: as2 }),
71
+ chunkQNF4JPFP_js.inputVariants({ appearance: appearance2, size: size2, ring: ring2, as: as2 }),
72
72
  className2
73
73
  ),
74
74
  initial: false,
@@ -113,7 +113,7 @@ var InputAnimated = (props) => {
113
113
  id: controlId,
114
114
  "data-slot": "input",
115
115
  className: chunkZS5756ZC_js.cn(
116
- chunkQZKMFSH5_js.inputVariants({ appearance, size, ring, as: as ?? "input" }),
116
+ chunkQNF4JPFP_js.inputVariants({ appearance, size, ring, as: as ?? "input" }),
117
117
  className
118
118
  ),
119
119
  initial: false,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { inputVariants } from '../../chunk-AOEI4V3W.mjs';
2
+ import { inputVariants } from '../../chunk-RFFGQYDQ.mjs';
3
3
  import { cn } from '../../chunk-4D54YOL6.mjs';
4
4
  import { useId } from 'react';
5
5
  import { motion } from 'framer-motion';
@@ -7,7 +7,7 @@ export type InputSharedProps = Omit<VariantProps<typeof inputVariants>, "as"> &
7
7
  label?: ReactNode;
8
8
  };
9
9
  export type InputProps = (InputSharedProps & Omit<ComponentPropsWithRef<"input">, "size" | "as"> & {
10
- as?: "input" | "file" | "checkbox" | "radio";
10
+ as?: "input" | "file" | "checkbox" | "radio" | "date";
11
11
  }) | (InputSharedProps & Omit<ComponentPropsWithRef<"textarea">, "size" | "as"> & {
12
12
  as: "textarea";
13
13
  });
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/inputs/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,YAAY,CAAC,OAAO,aAAa,CAAC,EAClC,IAAI,CACL,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,CAAC,gBAAgB,GACf,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IACpD,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;CAC9C,CAAC,GACJ,CAAC,gBAAgB,GACf,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IACvD,EAAE,EAAE,UAAU,CAAC;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/inputs/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,YAAY,CAAC,OAAO,aAAa,CAAC,EAClC,IAAI,CACL,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,CAAC,gBAAgB,GACf,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IACpD,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;CACvD,CAAC,GACJ,CAAC,gBAAgB,GACf,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IACvD,EAAE,EAAE,UAAU,CAAC;CAChB,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export declare const inputVariants: (props?: ({
2
- as?: "checkbox" | "radio" | "textarea" | "input" | "file" | null | undefined;
2
+ as?: "checkbox" | "radio" | "textarea" | "date" | "input" | "file" | null | undefined;
3
3
  appearance?: "default" | "violet" | "amber" | "indigo" | "orange" | "pink" | "error" | "success" | "warning" | "info" | null | undefined;
4
4
  size?: "sm" | "md" | "lg" | null | undefined;
5
5
  ring?: boolean | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/inputs/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;8EAyTzB,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/inputs/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;8EAoXzB,CAAC"}
package/dist/ui/inputs.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkQZKMFSH5_js = require('../chunk-QZKMFSH5.js');
4
+ var chunkQNF4JPFP_js = require('../chunk-QNF4JPFP.js');
5
5
  var chunkZS5756ZC_js = require('../chunk-ZS5756ZC.js');
6
6
  var react = require('react');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -58,7 +58,7 @@ var InputBase = (props) => {
58
58
  id: controlId2,
59
59
  "data-slot": "input",
60
60
  className: chunkZS5756ZC_js.cn(
61
- chunkQZKMFSH5_js.inputVariants({ appearance: appearance2, size: size2, ring: ring2, as: as2 }),
61
+ chunkQNF4JPFP_js.inputVariants({ appearance: appearance2, size: size2, ring: ring2, as: as2 }),
62
62
  className2
63
63
  ),
64
64
  "aria-invalid": ariaInvalid2,
@@ -117,7 +117,7 @@ var InputBase = (props) => {
117
117
  id: controlId,
118
118
  "data-slot": "input",
119
119
  className: chunkZS5756ZC_js.cn(
120
- chunkQZKMFSH5_js.inputVariants({ appearance, size, ring, as: as ?? "input" }),
120
+ chunkQNF4JPFP_js.inputVariants({ appearance, size, ring, as: as ?? "input" }),
121
121
  className
122
122
  ),
123
123
  "aria-invalid": ariaInvalid,
@@ -143,7 +143,7 @@ Input.displayName = "Input";
143
143
 
144
144
  Object.defineProperty(exports, "inputVariants", {
145
145
  enumerable: true,
146
- get: function () { return chunkQZKMFSH5_js.inputVariants; }
146
+ get: function () { return chunkQNF4JPFP_js.inputVariants; }
147
147
  });
148
148
  exports.Input = Input;
149
149
  //# sourceMappingURL=inputs.js.map
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { inputVariants } from '../chunk-AOEI4V3W.mjs';
3
- export { inputVariants } from '../chunk-AOEI4V3W.mjs';
2
+ import { inputVariants } from '../chunk-RFFGQYDQ.mjs';
3
+ export { inputVariants } from '../chunk-RFFGQYDQ.mjs';
4
4
  import { cn } from '../chunk-4D54YOL6.mjs';
5
5
  import { useId } from 'react';
6
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkAUGLZ3AN_js = require('../../chunk-AUGLZ3AN.js');
4
+ var chunk4F56BLZQ_js = require('../../chunk-4F56BLZQ.js');
5
5
  var chunkGBWGVNDA_js = require('../../chunk-GBWGVNDA.js');
6
6
  require('../../chunk-UIYFEP3I.js');
7
7
  var chunkZS5756ZC_js = require('../../chunk-ZS5756ZC.js');
@@ -48,7 +48,7 @@ function ModalContentAnimated({
48
48
  id,
49
49
  style
50
50
  }) {
51
- const { open, setOpen, titleId, descriptionId, contentRef, triggerRef } = chunkAUGLZ3AN_js.useModalContext("ModalContent");
51
+ const { open, setOpen, titleId, descriptionId, contentRef, triggerRef } = chunk4F56BLZQ_js.useModalContext("ModalContent");
52
52
  const reduceMotion = framerMotion.useReducedMotion();
53
53
  const overlayMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
54
54
  const panelMotion = modalOverlayAnimationPresets[reduceMotion ? "fade" : animation];
@@ -69,7 +69,7 @@ function ModalContentAnimated({
69
69
  {
70
70
  role: "presentation",
71
71
  "data-slot": "modal-overlay",
72
- className: chunkAUGLZ3AN_js.modalOverlayVariants(),
72
+ className: chunk4F56BLZQ_js.modalOverlayVariants(),
73
73
  onClick: () => setOpen(false),
74
74
  initial: animation === "none" ? false : overlayMotion.initial,
75
75
  animate: animation === "none" ? void 0 : overlayMotion.animate,
@@ -95,7 +95,7 @@ function ModalContentAnimated({
95
95
  "data-slot": "modal-content",
96
96
  tabIndex: -1,
97
97
  className: chunkZS5756ZC_js.cn(
98
- chunkAUGLZ3AN_js.modalContentVariants({ size, position, appearance }),
98
+ chunk4F56BLZQ_js.modalContentVariants({ size, position, appearance }),
99
99
  className
100
100
  ),
101
101
  initial: animation === "none" ? false : panelMotion.initial,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { useModalContext, modalOverlayVariants, modalContentVariants } from '../../chunk-2BAMNRAL.mjs';
2
+ import { useModalContext, modalOverlayVariants, modalContentVariants } from '../../chunk-WNLDXBS6.mjs';
3
3
  import { useFocusManagement } from '../../chunk-K6YI4FJO.mjs';
4
4
  import '../../chunk-PMAF6FBF.mjs';
5
5
  import { cn } from '../../chunk-4D54YOL6.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/modal/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,oFAEhC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;8EA2ChC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;8EAyDhC,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/modal/variants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,oFAEhC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;8EAoDhC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;8EAiEhC,CAAC"}
package/dist/ui/modal.js CHANGED
@@ -1,56 +1,56 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkAUGLZ3AN_js = require('../chunk-AUGLZ3AN.js');
4
+ var chunk4F56BLZQ_js = require('../chunk-4F56BLZQ.js');
5
5
  require('../chunk-GBWGVNDA.js');
6
6
  require('../chunk-UIYFEP3I.js');
7
7
  require('../chunk-ZS5756ZC.js');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
 
10
10
  var Modal2 = (props) => {
11
- return /* @__PURE__ */ jsxRuntime.jsx(chunkAUGLZ3AN_js.Modal, { ...props });
11
+ return /* @__PURE__ */ jsxRuntime.jsx(chunk4F56BLZQ_js.Modal, { ...props });
12
12
  };
13
13
  Modal2.displayName = "Modal";
14
14
 
15
15
  Object.defineProperty(exports, "ModalBody", {
16
16
  enumerable: true,
17
- get: function () { return chunkAUGLZ3AN_js.ModalBody; }
17
+ get: function () { return chunk4F56BLZQ_js.ModalBody; }
18
18
  });
19
19
  Object.defineProperty(exports, "ModalClose", {
20
20
  enumerable: true,
21
- get: function () { return chunkAUGLZ3AN_js.ModalClose; }
21
+ get: function () { return chunk4F56BLZQ_js.ModalClose; }
22
22
  });
23
23
  Object.defineProperty(exports, "ModalContent", {
24
24
  enumerable: true,
25
- get: function () { return chunkAUGLZ3AN_js.ModalContent; }
25
+ get: function () { return chunk4F56BLZQ_js.ModalContent; }
26
26
  });
27
27
  Object.defineProperty(exports, "ModalDescription", {
28
28
  enumerable: true,
29
- get: function () { return chunkAUGLZ3AN_js.ModalDescription; }
29
+ get: function () { return chunk4F56BLZQ_js.ModalDescription; }
30
30
  });
31
31
  Object.defineProperty(exports, "ModalFooter", {
32
32
  enumerable: true,
33
- get: function () { return chunkAUGLZ3AN_js.ModalFooter; }
33
+ get: function () { return chunk4F56BLZQ_js.ModalFooter; }
34
34
  });
35
35
  Object.defineProperty(exports, "ModalHeader", {
36
36
  enumerable: true,
37
- get: function () { return chunkAUGLZ3AN_js.ModalHeader; }
37
+ get: function () { return chunk4F56BLZQ_js.ModalHeader; }
38
38
  });
39
39
  Object.defineProperty(exports, "ModalTitle", {
40
40
  enumerable: true,
41
- get: function () { return chunkAUGLZ3AN_js.ModalTitle; }
41
+ get: function () { return chunk4F56BLZQ_js.ModalTitle; }
42
42
  });
43
43
  Object.defineProperty(exports, "ModalTrigger", {
44
44
  enumerable: true,
45
- get: function () { return chunkAUGLZ3AN_js.ModalTrigger; }
45
+ get: function () { return chunk4F56BLZQ_js.ModalTrigger; }
46
46
  });
47
47
  Object.defineProperty(exports, "modalContentVariants", {
48
48
  enumerable: true,
49
- get: function () { return chunkAUGLZ3AN_js.modalContentVariants; }
49
+ get: function () { return chunk4F56BLZQ_js.modalContentVariants; }
50
50
  });
51
51
  Object.defineProperty(exports, "modalOverlayVariants", {
52
52
  enumerable: true,
53
- get: function () { return chunkAUGLZ3AN_js.modalOverlayVariants; }
53
+ get: function () { return chunk4F56BLZQ_js.modalOverlayVariants; }
54
54
  });
55
55
  exports.Modal = Modal2;
56
56
  //# sourceMappingURL=modal.js.map
package/dist/ui/modal.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { Modal } from '../chunk-2BAMNRAL.mjs';
3
- export { ModalBody, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalTitle, ModalTrigger, modalContentVariants, modalOverlayVariants } from '../chunk-2BAMNRAL.mjs';
2
+ import { Modal } from '../chunk-WNLDXBS6.mjs';
3
+ export { ModalBody, ModalClose, ModalContent, ModalDescription, ModalFooter, ModalHeader, ModalTitle, ModalTrigger, modalContentVariants, modalOverlayVariants } from '../chunk-WNLDXBS6.mjs';
4
4
  import '../chunk-K6YI4FJO.mjs';
5
5
  import '../chunk-PMAF6FBF.mjs';
6
6
  import '../chunk-4D54YOL6.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/pagination/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAC5C,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,YAAY,CAAC,CAClD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,WAAW,CACtC,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAC5C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,qBAAqB,CAAC,KAAK,CAAC,EAC5B,UAAU,CACX,GACC,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CACpD,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ui/pagination/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAC5C,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,YAAY,CAAC,CAClD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,WAAW,CACtC,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAC5C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAC1E,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/pagination/variants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;8EAiElC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;8EAuBtC,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/ui/pagination/variants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;8EAoElC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;8EAuBtC,CAAC"}
@@ -2,45 +2,45 @@
2
2
  'use strict';
3
3
 
4
4
  var chunk2VUMVDR3_js = require('../chunk-2VUMVDR3.js');
5
- var chunkOB4KJZK2_js = require('../chunk-OB4KJZK2.js');
5
+ var chunkVGWA26BN_js = require('../chunk-VGWA26BN.js');
6
6
  var chunkZS5756ZC_js = require('../chunk-ZS5756ZC.js');
7
7
  var react = require('react');
8
8
  var classVarianceAuthority = require('class-variance-authority');
9
9
  var jsxRuntime = require('react/jsx-runtime');
10
10
 
11
11
  var paginationListVariants = classVarianceAuthority.cva(
12
- "inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-950",
12
+ "inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-50 dark:ring-offset-slate-950",
13
13
  {
14
14
  variants: {
15
15
  appearance: {
16
- default: "border-white/10 bg-white/[0.03]",
17
- secondary: "border-white/10 bg-slate-900/40",
18
- destructive: "border-rose-500/25 bg-rose-950/20",
19
- outline: "border-white/15 bg-transparent",
16
+ default: "border-black/10 dark:border-white/10 bg-black/[0.03] dark:bg-white/[0.03]",
17
+ secondary: "border-black/10 dark:border-white/10 bg-slate-100/40 dark:bg-slate-900/40",
18
+ destructive: "border-rose-500/25 bg-rose-50 dark:bg-rose-950/20",
19
+ outline: "border-black/15 dark:border-white/15 bg-transparent",
20
20
  ghost: "border-transparent bg-transparent",
21
21
  link: "border-transparent bg-transparent",
22
- glass: "border-white/15 bg-white/5 backdrop-blur-md",
23
- emerald: "border-emerald-500/25 bg-emerald-950/20",
24
- indigo: "border-indigo-500/25 bg-indigo-950/20",
25
- purple: "border-purple-500/25 bg-purple-950/20",
26
- pink: "border-pink-500/25 bg-pink-950/20",
27
- rose: "border-rose-500/25 bg-rose-950/20",
28
- sky: "border-sky-500/25 bg-sky-950/20",
29
- teal: "border-teal-500/25 bg-teal-950/20",
30
- yellow: "border-yellow-500/25 bg-yellow-950/20",
31
- orange: "border-orange-500/25 bg-orange-950/20",
32
- gray: "border-gray-500/25 bg-gray-950/20",
33
- amber: "border-amber-500/25 bg-amber-950/20",
34
- violet: "border-violet-500/25 bg-violet-950/20",
35
- "gradient-blue": "border-blue-500/30 bg-linear-to-r from-blue-950/30 to-purple-950/30",
36
- "gradient-green": "border-lime-500/30 bg-linear-to-r from-green-950/30 to-lime-950/30",
37
- "gradient-red": "border-pink-500/30 bg-linear-to-r from-red-950/30 to-pink-950/30",
38
- "gradient-yellow": "border-orange-500/30 bg-linear-to-r from-yellow-950/30 to-orange-950/30",
39
- "gradient-purple": "border-pink-500/30 bg-linear-to-r from-purple-950/30 to-pink-950/30",
40
- "gradient-teal": "border-cyan-500/30 bg-linear-to-r from-teal-950/30 to-cyan-950/30",
41
- "gradient-indigo": "border-purple-500/30 bg-linear-to-r from-indigo-950/30 to-purple-950/30",
42
- "gradient-pink": "border-rose-500/30 bg-linear-to-r from-pink-950/30 to-rose-950/30",
43
- "gradient-orange": "border-orange-500/30 bg-linear-to-r from-orange-950/30 to-red-950/30"
22
+ glass: "border-black/15 dark:border-white/15 bg-black/5 dark:bg-white/5 backdrop-blur-md",
23
+ emerald: "border-emerald-500/25 bg-emerald-50 dark:bg-emerald-950/20",
24
+ indigo: "border-indigo-500/25 bg-indigo-50 dark:bg-indigo-950/20",
25
+ purple: "border-purple-500/25 bg-purple-50 dark:bg-purple-950/20",
26
+ pink: "border-pink-500/25 bg-pink-50 dark:bg-pink-950/20",
27
+ rose: "border-rose-500/25 bg-rose-50 dark:bg-rose-950/20",
28
+ sky: "border-sky-500/25 bg-sky-50 dark:bg-sky-950/20",
29
+ teal: "border-teal-500/25 bg-teal-50 dark:bg-teal-950/20",
30
+ yellow: "border-yellow-500/25 bg-yellow-50 dark:bg-yellow-950/20",
31
+ orange: "border-orange-500/25 bg-orange-50 dark:bg-orange-950/20",
32
+ gray: "border-gray-500/25 bg-gray-50 dark:bg-gray-950/20",
33
+ amber: "border-amber-500/25 bg-amber-50 dark:bg-amber-950/20",
34
+ violet: "border-violet-500/25 bg-violet-50 dark:bg-violet-950/20",
35
+ "gradient-blue": "border-blue-500/30 bg-linear-to-r from-blue-50 dark:from-blue-950/30 to-purple-50 dark:to-purple-950/30",
36
+ "gradient-green": "border-lime-500/30 bg-linear-to-r from-green-50 dark:from-green-950/30 to-lime-50 dark:to-lime-950/30",
37
+ "gradient-red": "border-pink-500/30 bg-linear-to-r from-red-50 dark:from-red-950/30 to-pink-50 dark:to-pink-950/30",
38
+ "gradient-yellow": "border-orange-500/30 bg-linear-to-r from-yellow-50 dark:from-yellow-950/30 to-orange-50 dark:to-orange-950/30",
39
+ "gradient-purple": "border-pink-500/30 bg-linear-to-r from-purple-50 dark:from-purple-950/30 to-pink-50 dark:to-pink-950/30",
40
+ "gradient-teal": "border-cyan-500/30 bg-linear-to-r from-teal-50 dark:from-teal-950/30 to-cyan-50 dark:to-cyan-950/30",
41
+ "gradient-indigo": "border-purple-500/30 bg-linear-to-r from-indigo-50 dark:from-indigo-950/30 to-purple-50 dark:to-purple-950/30",
42
+ "gradient-pink": "border-rose-500/30 bg-linear-to-r from-pink-50 dark:from-pink-950/30 to-rose-50 dark:to-rose-950/30",
43
+ "gradient-orange": "border-orange-500/30 bg-linear-to-r from-orange-50 dark:from-orange-950/30 to-red-50 dark:to-red-950/30"
44
44
  },
45
45
  size: {
46
46
  sm: "gap-0.5",
@@ -66,7 +66,7 @@ var paginationListVariants = classVarianceAuthority.cva(
66
66
  }
67
67
  );
68
68
  var paginationEllipsisVariants = classVarianceAuthority.cva(
69
- "inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-400",
69
+ "inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-500 dark:text-slate-400",
70
70
  {
71
71
  variants: {
72
72
  size: {
@@ -150,10 +150,10 @@ var Pagination = ({
150
150
  return null;
151
151
  }
152
152
  const inactiveTriggerClass = chunkZS5756ZC_js.cn(
153
- chunkOB4KJZK2_js.buttonVariants({ appearance: "ghost", size }),
154
- "bg-white/[0.04] text-slate-200 hover:bg-white/10"
153
+ chunkVGWA26BN_js.buttonVariants({ appearance: "ghost", size }),
154
+ "bg-white/[0.04] text-slate-900 dark:text-slate-200 hover:bg-white/10"
155
155
  );
156
- const currentTriggerClass = chunkOB4KJZK2_js.buttonVariants({ appearance, size });
156
+ const currentTriggerClass = chunkVGWA26BN_js.buttonVariants({ appearance, size });
157
157
  const triggerFocusRing = "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950";
158
158
  const renderPageControl = (pageNumber) => {
159
159
  const isCurrent = pageNumber === currentPage;
@@ -196,7 +196,7 @@ var Pagination = ({
196
196
  const prevHref = getPageHref?.(chunkZS5756ZC_js.clampPage(currentPage - 1, pageCount));
197
197
  const nextHref = getPageHref?.(chunkZS5756ZC_js.clampPage(currentPage + 1, pageCount));
198
198
  const navTriggerClass = chunkZS5756ZC_js.cn(
199
- chunkOB4KJZK2_js.buttonVariants({ appearance: "outline", size }),
199
+ chunkVGWA26BN_js.buttonVariants({ appearance: "outline", size }),
200
200
  "shrink-0 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950"
201
201
  );
202
202
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ui/pagination/variants.ts","../../src/ui/pagination/pagination.tsx"],"names":["cva","useId","usePagination","useCallback","cn","buttonVariants","jsx","clampPage","jsxs"],"mappings":"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","file":"pagination.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * Layout and chrome for the page list cluster. Appearance and size keys align with\n * `components/ui/buttons/variants.ts` for consistent design-system tokens.\n */\nexport const paginationListVariants = cva(\n \"inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n default: \"border-white/10 bg-white/[0.03]\",\n secondary: \"border-white/10 bg-slate-900/40\",\n destructive: \"border-rose-500/25 bg-rose-950/20\",\n outline: \"border-white/15 bg-transparent\",\n ghost: \"border-transparent bg-transparent\",\n link: \"border-transparent bg-transparent\",\n glass: \"border-white/15 bg-white/5 backdrop-blur-md\",\n emerald: \"border-emerald-500/25 bg-emerald-950/20\",\n indigo: \"border-indigo-500/25 bg-indigo-950/20\",\n purple: \"border-purple-500/25 bg-purple-950/20\",\n pink: \"border-pink-500/25 bg-pink-950/20\",\n rose: \"border-rose-500/25 bg-rose-950/20\",\n sky: \"border-sky-500/25 bg-sky-950/20\",\n teal: \"border-teal-500/25 bg-teal-950/20\",\n yellow: \"border-yellow-500/25 bg-yellow-950/20\",\n orange: \"border-orange-500/25 bg-orange-950/20\",\n gray: \"border-gray-500/25 bg-gray-950/20\",\n amber: \"border-amber-500/25 bg-amber-950/20\",\n violet: \"border-violet-500/25 bg-violet-950/20\",\n \"gradient-blue\":\n \"border-blue-500/30 bg-linear-to-r from-blue-950/30 to-purple-950/30\",\n \"gradient-green\":\n \"border-lime-500/30 bg-linear-to-r from-green-950/30 to-lime-950/30\",\n \"gradient-red\":\n \"border-pink-500/30 bg-linear-to-r from-red-950/30 to-pink-950/30\",\n \"gradient-yellow\":\n \"border-orange-500/30 bg-linear-to-r from-yellow-950/30 to-orange-950/30\",\n \"gradient-purple\":\n \"border-pink-500/30 bg-linear-to-r from-purple-950/30 to-pink-950/30\",\n \"gradient-teal\":\n \"border-cyan-500/30 bg-linear-to-r from-teal-950/30 to-cyan-950/30\",\n \"gradient-indigo\":\n \"border-purple-500/30 bg-linear-to-r from-indigo-950/30 to-purple-950/30\",\n \"gradient-pink\":\n \"border-rose-500/30 bg-linear-to-r from-pink-950/30 to-rose-950/30\",\n \"gradient-orange\":\n \"border-orange-500/30 bg-linear-to-r from-orange-950/30 to-red-950/30\",\n },\n size: {\n sm: \"gap-0.5\",\n md: \"gap-1\",\n lg: \"gap-1\",\n xl: \"gap-1.5\",\n \"2xl\": \"gap-1.5\",\n \"3xl\": \"gap-2\",\n \"4xl\": \"gap-2\",\n \"5xl\": \"gap-2\",\n \"6xl\": \"gap-2\",\n \"7xl\": \"gap-2.5\",\n \"8xl\": \"gap-2.5\",\n \"9xl\": \"gap-2.5\",\n \"10xl\": \"gap-3\",\n icon: \"gap-1\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const paginationEllipsisVariants = cva(\n \"inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-400\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-base\",\n xl: \"text-base\",\n \"2xl\": \"text-lg\",\n \"3xl\": \"text-lg\",\n \"4xl\": \"text-xl\",\n \"5xl\": \"text-xl\",\n \"6xl\": \"text-xl\",\n \"7xl\": \"text-2xl\",\n \"8xl\": \"text-2xl\",\n \"9xl\": \"text-2xl\",\n \"10xl\": \"text-2xl\",\n icon: \"text-sm\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, type KeyboardEvent } from \"react\";\n\nimport { cn, clampPage } from \"../../lib/utils\";\nimport { buttonVariants } from \"../buttons/variants\";\n\nimport type { PaginationProps } from \"./types\";\nimport { usePagination } from \"../../hooks/usePagination\";\nimport { paginationEllipsisVariants, paginationListVariants } from \"./variants\";\n\nconst defaultPrevLabel = \"Previous page\";\nconst defaultNextLabel = \"Next page\";\nconst defaultEllipsisLabel = \"More pages\";\n\nexport const Pagination = ({\n className,\n appearance = \"default\",\n size = \"md\",\n pageCount,\n page,\n defaultPage = 1,\n onPageChange,\n siblingCount = 1,\n boundaryCount = 1,\n showPrevNext = true,\n prevLabel = defaultPrevLabel,\n nextLabel = defaultNextLabel,\n ellipsisLabel = defaultEllipsisLabel,\n getPageHref,\n \"aria-label\": ariaLabel = \"Pagination\",\n ref,\n ...rest\n}: PaginationProps) => {\n const id = useId();\n const listId = `${id}-list`;\n\n const { currentPage, items, setPage, goPrev, goNext, canGoPrev, canGoNext } =\n usePagination({\n pageCount,\n page,\n defaultPage,\n siblingCount,\n boundaryCount,\n onPageChange,\n });\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n if (pageCount <= 0) {\n return;\n }\n if (event.key === \"ArrowRight\" || event.key === \"ArrowDown\") {\n event.preventDefault();\n if (canGoNext) {\n setPage(currentPage + 1);\n }\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowUp\") {\n event.preventDefault();\n if (canGoPrev) {\n setPage(currentPage - 1);\n }\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setPage(1);\n } else if (event.key === \"End\") {\n event.preventDefault();\n setPage(pageCount);\n }\n },\n [canGoNext, canGoPrev, currentPage, pageCount, setPage],\n );\n\n if (pageCount <= 0) {\n return null;\n }\n\n const inactiveTriggerClass = cn(\n buttonVariants({ appearance: \"ghost\", size }),\n \"bg-white/[0.04] text-slate-200 hover:bg-white/10\",\n );\n\n const currentTriggerClass = buttonVariants({ appearance, size });\n\n const triggerFocusRing =\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\";\n\n const renderPageControl = (pageNumber: number) => {\n const isCurrent = pageNumber === currentPage;\n const href = getPageHref?.(pageNumber);\n const shared = cn(\n isCurrent ? currentTriggerClass : inactiveTriggerClass,\n \"min-w-[2.25ch] shrink-0\",\n triggerFocusRing,\n );\n\n if (href) {\n return (\n <a\n data-slot=\"pagination-trigger\"\n href={href}\n aria-label={`Page ${pageNumber}`}\n aria-current={isCurrent ? \"page\" : undefined}\n className={shared}\n >\n {pageNumber}\n </a>\n );\n }\n\n return (\n <button\n type=\"button\"\n data-slot=\"pagination-trigger\"\n aria-label={`Page ${pageNumber}`}\n aria-current={isCurrent ? \"page\" : undefined}\n className={shared}\n onClick={() => {\n if (!isCurrent) {\n setPage(pageNumber);\n }\n }}\n >\n {pageNumber}\n </button>\n );\n };\n\n const prevHref = getPageHref?.(clampPage(currentPage - 1, pageCount));\n const nextHref = getPageHref?.(clampPage(currentPage + 1, pageCount));\n\n const navTriggerClass = cn(\n buttonVariants({ appearance: \"outline\", size }),\n \"shrink-0 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n );\n\n return (\n <nav\n ref={ref}\n data-slot=\"pagination\"\n aria-label={ariaLabel}\n className={cn(\"w-full\", className)}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n <div className=\"flex flex-wrap items-center gap-2\">\n {showPrevNext ? (\n getPageHref && prevHref && canGoPrev ? (\n <a\n data-slot=\"pagination-prev\"\n aria-label={prevLabel}\n href={prevHref}\n className={navTriggerClass}\n >\n Prev\n </a>\n ) : (\n <button\n type=\"button\"\n data-slot=\"pagination-prev\"\n aria-label={prevLabel}\n disabled={!canGoPrev}\n className={navTriggerClass}\n onClick={goPrev}\n >\n Prev\n </button>\n )\n ) : null}\n\n <ul\n id={listId}\n data-slot=\"pagination-list\"\n className={paginationListVariants({ appearance, size })}\n >\n {items.map((item) => (\n <li\n key={item.type === \"page\" ? `page-${item.value}` : item.key}\n data-slot=\"pagination-item\"\n className=\"inline-flex items-center\"\n >\n {item.type === \"ellipsis\" ? (\n <span\n data-slot=\"pagination-ellipsis\"\n className={paginationEllipsisVariants({ size })}\n role=\"img\"\n aria-label={ellipsisLabel}\n >\n …\n </span>\n ) : (\n renderPageControl(item.value)\n )}\n </li>\n ))}\n </ul>\n\n {showPrevNext ? (\n getPageHref && nextHref && canGoNext ? (\n <a\n data-slot=\"pagination-next\"\n aria-label={nextLabel}\n href={nextHref}\n className={navTriggerClass}\n >\n Next\n </a>\n ) : (\n <button\n type=\"button\"\n data-slot=\"pagination-next\"\n aria-label={nextLabel}\n disabled={!canGoNext}\n className={navTriggerClass}\n onClick={goNext}\n >\n Next\n </button>\n )\n ) : null}\n </div>\n </nav>\n );\n};\n\nPagination.displayName = \"Pagination\";\n"]}
1
+ {"version":3,"sources":["../../src/ui/pagination/variants.ts","../../src/ui/pagination/pagination.tsx"],"names":["cva","useId","usePagination","useCallback","cn","buttonVariants","jsx","clampPage","jsxs"],"mappings":";;;;;;;;;AAMO,IAAM,sBAAA,GAAyBA,0BAAA;AAAA,EACpC,0GAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,UAAA,EAAY;AAAA,QACV,OAAA,EACE,2EAAA;AAAA,QACF,SAAA,EACE,2EAAA;AAAA,QACF,WAAA,EAAa,mDAAA;AAAA,QACb,OAAA,EAAS,qDAAA;AAAA,QACT,KAAA,EAAO,mCAAA;AAAA,QACP,IAAA,EAAM,mCAAA;AAAA,QACN,KAAA,EACE,kFAAA;AAAA,QACF,OAAA,EAAS,4DAAA;AAAA,QACT,MAAA,EAAQ,yDAAA;AAAA,QACR,MAAA,EAAQ,yDAAA;AAAA,QACR,IAAA,EAAM,mDAAA;AAAA,QACN,IAAA,EAAM,mDAAA;AAAA,QACN,GAAA,EAAK,gDAAA;AAAA,QACL,IAAA,EAAM,mDAAA;AAAA,QACN,MAAA,EAAQ,yDAAA;AAAA,QACR,MAAA,EAAQ,yDAAA;AAAA,QACR,IAAA,EAAM,mDAAA;AAAA,QACN,KAAA,EAAO,sDAAA;AAAA,QACP,MAAA,EAAQ,yDAAA;AAAA,QACR,eAAA,EACE,yGAAA;AAAA,QACF,gBAAA,EACE,uGAAA;AAAA,QACF,cAAA,EACE,mGAAA;AAAA,QACF,iBAAA,EACE,+GAAA;AAAA,QACF,iBAAA,EACE,yGAAA;AAAA,QACF,eAAA,EACE,qGAAA;AAAA,QACF,iBAAA,EACE,+GAAA;AAAA,QACF,eAAA,EACE,qGAAA;AAAA,QACF,iBAAA,EACE;AAAA,OACJ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,OAAA;AAAA,QACJ,EAAA,EAAI,OAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,MAAA,EAAQ,OAAA;AAAA,QACR,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,UAAA,EAAY,SAAA;AAAA,MACZ,IAAA,EAAM;AAAA;AACR;AAEJ;AAEO,IAAM,0BAAA,GAA6BA,0BAAA;AAAA,EACxC,qHAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,IAAA,EAAM;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,SAAA;AAAA,QACJ,EAAA,EAAI,WAAA;AAAA,QACJ,EAAA,EAAI,WAAA;AAAA,QACJ,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,SAAA;AAAA,QACP,KAAA,EAAO,UAAA;AAAA,QACP,KAAA,EAAO,UAAA;AAAA,QACP,KAAA,EAAO,UAAA;AAAA,QACP,MAAA,EAAQ,UAAA;AAAA,QACR,IAAA,EAAM;AAAA;AACR,KACF;AAAA,IACA,eAAA,EAAiB,EAAE,IAAA,EAAM,IAAA;AAAK;AAElC;ACxFA,IAAM,gBAAA,GAAmB,eAAA;AACzB,IAAM,gBAAA,GAAmB,WAAA;AACzB,IAAM,oBAAA,GAAuB,YAAA;AAEtB,IAAM,aAAa,CAAC;AAAA,EACzB,SAAA;AAAA,EACA,UAAA,GAAa,SAAA;AAAA,EACb,IAAA,GAAO,IAAA;AAAA,EACP,SAAA;AAAA,EACA,IAAA;AAAA,EACA,WAAA,GAAc,CAAA;AAAA,EACd,YAAA;AAAA,EACA,YAAA,GAAe,CAAA;AAAA,EACf,aAAA,GAAgB,CAAA;AAAA,EAChB,YAAA,GAAe,IAAA;AAAA,EACf,SAAA,GAAY,gBAAA;AAAA,EACZ,SAAA,GAAY,gBAAA;AAAA,EACZ,aAAA,GAAgB,oBAAA;AAAA,EAChB,WAAA;AAAA,EACA,cAAc,SAAA,GAAY,YAAA;AAAA,EAC1B,GAAA;AAAA,EACA,GAAG;AACL,CAAA,KAAuB;AACrB,EAAA,MAAM,KAAKC,WAAA,EAAM;AACjB,EAAA,MAAM,MAAA,GAAS,GAAG,EAAE,CAAA,KAAA,CAAA;AAEpB,EAAA,MAAM,EAAE,aAAa,KAAA,EAAO,OAAA,EAAS,QAAQ,MAAA,EAAQ,SAAA,EAAW,SAAA,EAAU,GACxEC,8BAAA,CAAc;AAAA,IACZ,SAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,YAAA;AAAA,IACA,aAAA;AAAA,IACA;AAAA,GACD,CAAA;AAEH,EAAA,MAAM,aAAA,GAAgBC,iBAAA;AAAA,IACpB,CAAC,KAAA,KAAsC;AACrC,MAAA,IAAI,aAAa,CAAA,EAAG;AAClB,QAAA;AAAA,MACF;AACA,MAAA,IAAI,KAAA,CAAM,GAAA,KAAQ,YAAA,IAAgB,KAAA,CAAM,QAAQ,WAAA,EAAa;AAC3D,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,IAAI,SAAA,EAAW;AACb,UAAA,OAAA,CAAQ,cAAc,CAAC,CAAA;AAAA,QACzB;AAAA,MACF,WAAW,KAAA,CAAM,GAAA,KAAQ,WAAA,IAAe,KAAA,CAAM,QAAQ,SAAA,EAAW;AAC/D,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,IAAI,SAAA,EAAW;AACb,UAAA,OAAA,CAAQ,cAAc,CAAC,CAAA;AAAA,QACzB;AAAA,MACF,CAAA,MAAA,IAAW,KAAA,CAAM,GAAA,KAAQ,MAAA,EAAQ;AAC/B,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,MACX,CAAA,MAAA,IAAW,KAAA,CAAM,GAAA,KAAQ,KAAA,EAAO;AAC9B,QAAA,KAAA,CAAM,cAAA,EAAe;AACrB,QAAA,OAAA,CAAQ,SAAS,CAAA;AAAA,MACnB;AAAA,IACF,CAAA;AAAA,IACA,CAAC,SAAA,EAAW,SAAA,EAAW,WAAA,EAAa,WAAW,OAAO;AAAA,GACxD;AAEA,EAAA,IAAI,aAAa,CAAA,EAAG;AAClB,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,MAAM,oBAAA,GAAuBC,mBAAA;AAAA,IAC3BC,+BAAA,CAAe,EAAE,UAAA,EAAY,OAAA,EAAS,MAAM,CAAA;AAAA,IAC5C;AAAA,GACF;AAEA,EAAA,MAAM,mBAAA,GAAsBA,+BAAA,CAAe,EAAE,UAAA,EAAY,MAAM,CAAA;AAE/D,EAAA,MAAM,gBAAA,GACJ,8IAAA;AAEF,EAAA,MAAM,iBAAA,GAAoB,CAAC,UAAA,KAAuB;AAChD,IAAA,MAAM,YAAY,UAAA,KAAe,WAAA;AACjC,IAAA,MAAM,IAAA,GAAO,cAAc,UAAU,CAAA;AACrC,IAAA,MAAM,MAAA,GAASD,mBAAA;AAAA,MACb,YAAY,mBAAA,GAAsB,oBAAA;AAAA,MAClC,yBAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,IAAI,IAAA,EAAM;AACR,MAAA,uBACEE,cAAA;AAAA,QAAC,GAAA;AAAA,QAAA;AAAA,UACC,WAAA,EAAU,oBAAA;AAAA,UACV,IAAA;AAAA,UACA,YAAA,EAAY,QAAQ,UAAU,CAAA,CAAA;AAAA,UAC9B,cAAA,EAAc,YAAY,MAAA,GAAS,MAAA;AAAA,UACnC,SAAA,EAAW,MAAA;AAAA,UAEV,QAAA,EAAA;AAAA;AAAA,OACH;AAAA,IAEJ;AAEA,IAAA,uBACEA,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,IAAA,EAAK,QAAA;AAAA,QACL,WAAA,EAAU,oBAAA;AAAA,QACV,YAAA,EAAY,QAAQ,UAAU,CAAA,CAAA;AAAA,QAC9B,cAAA,EAAc,YAAY,MAAA,GAAS,MAAA;AAAA,QACnC,SAAA,EAAW,MAAA;AAAA,QACX,SAAS,MAAM;AACb,UAAA,IAAI,CAAC,SAAA,EAAW;AACd,YAAA,OAAA,CAAQ,UAAU,CAAA;AAAA,UACpB;AAAA,QACF,CAAA;AAAA,QAEC,QAAA,EAAA;AAAA;AAAA,KACH;AAAA,EAEJ,CAAA;AAEA,EAAA,MAAM,WAAW,WAAA,GAAcC,0BAAA,CAAU,WAAA,GAAc,CAAA,EAAG,SAAS,CAAC,CAAA;AACpE,EAAA,MAAM,WAAW,WAAA,GAAcA,0BAAA,CAAU,WAAA,GAAc,CAAA,EAAG,SAAS,CAAC,CAAA;AAEpE,EAAA,MAAM,eAAA,GAAkBH,mBAAA;AAAA,IACtBC,+BAAA,CAAe,EAAE,UAAA,EAAY,SAAA,EAAW,MAAM,CAAA;AAAA,IAC9C;AAAA,GACF;AAEA,EAAA,uBACEC,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,WAAA,EAAU,YAAA;AAAA,MACV,YAAA,EAAY,SAAA;AAAA,MACZ,SAAA,EAAWF,mBAAA,CAAG,QAAA,EAAU,SAAS,CAAA;AAAA,MACjC,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,IAAA;AAAA,MAEJ,QAAA,kBAAAI,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,mCAAA,EACZ,QAAA,EAAA;AAAA,QAAA,YAAA,GACC,WAAA,IAAe,YAAY,SAAA,mBACzBF,cAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,WAAA,EAAU,iBAAA;AAAA,YACV,YAAA,EAAY,SAAA;AAAA,YACZ,IAAA,EAAM,QAAA;AAAA,YACN,SAAA,EAAW,eAAA;AAAA,YACZ,QAAA,EAAA;AAAA;AAAA,SAED,mBAEAA,cAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,QAAA;AAAA,YACL,WAAA,EAAU,iBAAA;AAAA,YACV,YAAA,EAAY,SAAA;AAAA,YACZ,UAAU,CAAC,SAAA;AAAA,YACX,SAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA;AAAA,YACV,QAAA,EAAA;AAAA;AAAA,SAED,GAEA,IAAA;AAAA,wBAEJA,cAAA;AAAA,UAAC,IAAA;AAAA,UAAA;AAAA,YACC,EAAA,EAAI,MAAA;AAAA,YACJ,WAAA,EAAU,iBAAA;AAAA,YACV,SAAA,EAAW,sBAAA,CAAuB,EAAE,UAAA,EAAY,MAAM,CAAA;AAAA,YAErD,QAAA,EAAA,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,qBACVA,cAAA;AAAA,cAAC,IAAA;AAAA,cAAA;AAAA,gBAEC,WAAA,EAAU,iBAAA;AAAA,gBACV,SAAA,EAAU,0BAAA;AAAA,gBAET,QAAA,EAAA,IAAA,CAAK,SAAS,UAAA,mBACbA,cAAA;AAAA,kBAAC,MAAA;AAAA,kBAAA;AAAA,oBACC,WAAA,EAAU,qBAAA;AAAA,oBACV,SAAA,EAAW,0BAAA,CAA2B,EAAE,IAAA,EAAM,CAAA;AAAA,oBAC9C,IAAA,EAAK,KAAA;AAAA,oBACL,YAAA,EAAY,aAAA;AAAA,oBACb,QAAA,EAAA;AAAA;AAAA,iBAED,GAEA,iBAAA,CAAkB,IAAA,CAAK,KAAK;AAAA,eAAA;AAAA,cAdzB,KAAK,IAAA,KAAS,MAAA,GAAS,QAAQ,IAAA,CAAK,KAAK,KAAK,IAAA,CAAK;AAAA,aAiB3D;AAAA;AAAA,SACH;AAAA,QAEC,YAAA,GACC,WAAA,IAAe,QAAA,IAAY,SAAA,mBACzBA,cAAA;AAAA,UAAC,GAAA;AAAA,UAAA;AAAA,YACC,WAAA,EAAU,iBAAA;AAAA,YACV,YAAA,EAAY,SAAA;AAAA,YACZ,IAAA,EAAM,QAAA;AAAA,YACN,SAAA,EAAW,eAAA;AAAA,YACZ,QAAA,EAAA;AAAA;AAAA,SAED,mBAEAA,cAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAK,QAAA;AAAA,YACL,WAAA,EAAU,iBAAA;AAAA,YACV,YAAA,EAAY,SAAA;AAAA,YACZ,UAAU,CAAC,SAAA;AAAA,YACX,SAAA,EAAW,eAAA;AAAA,YACX,OAAA,EAAS,MAAA;AAAA,YACV,QAAA,EAAA;AAAA;AAAA,SAED,GAEA;AAAA,OAAA,EACN;AAAA;AAAA,GACF;AAEJ;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA","file":"pagination.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * Layout and chrome for the page list cluster. Appearance and size keys align with\n * `components/ui/buttons/variants.ts` for consistent design-system tokens.\n */\nexport const paginationListVariants = cva(\n \"inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-50 dark:ring-offset-slate-950\",\n {\n variants: {\n appearance: {\n default:\n \"border-black/10 dark:border-white/10 bg-black/[0.03] dark:bg-white/[0.03]\",\n secondary:\n \"border-black/10 dark:border-white/10 bg-slate-100/40 dark:bg-slate-900/40\",\n destructive: \"border-rose-500/25 bg-rose-50 dark:bg-rose-950/20\",\n outline: \"border-black/15 dark:border-white/15 bg-transparent\",\n ghost: \"border-transparent bg-transparent\",\n link: \"border-transparent bg-transparent\",\n glass:\n \"border-black/15 dark:border-white/15 bg-black/5 dark:bg-white/5 backdrop-blur-md\",\n emerald: \"border-emerald-500/25 bg-emerald-50 dark:bg-emerald-950/20\",\n indigo: \"border-indigo-500/25 bg-indigo-50 dark:bg-indigo-950/20\",\n purple: \"border-purple-500/25 bg-purple-50 dark:bg-purple-950/20\",\n pink: \"border-pink-500/25 bg-pink-50 dark:bg-pink-950/20\",\n rose: \"border-rose-500/25 bg-rose-50 dark:bg-rose-950/20\",\n sky: \"border-sky-500/25 bg-sky-50 dark:bg-sky-950/20\",\n teal: \"border-teal-500/25 bg-teal-50 dark:bg-teal-950/20\",\n yellow: \"border-yellow-500/25 bg-yellow-50 dark:bg-yellow-950/20\",\n orange: \"border-orange-500/25 bg-orange-50 dark:bg-orange-950/20\",\n gray: \"border-gray-500/25 bg-gray-50 dark:bg-gray-950/20\",\n amber: \"border-amber-500/25 bg-amber-50 dark:bg-amber-950/20\",\n violet: \"border-violet-500/25 bg-violet-50 dark:bg-violet-950/20\",\n \"gradient-blue\":\n \"border-blue-500/30 bg-linear-to-r from-blue-50 dark:from-blue-950/30 to-purple-50 dark:to-purple-950/30\",\n \"gradient-green\":\n \"border-lime-500/30 bg-linear-to-r from-green-50 dark:from-green-950/30 to-lime-50 dark:to-lime-950/30\",\n \"gradient-red\":\n \"border-pink-500/30 bg-linear-to-r from-red-50 dark:from-red-950/30 to-pink-50 dark:to-pink-950/30\",\n \"gradient-yellow\":\n \"border-orange-500/30 bg-linear-to-r from-yellow-50 dark:from-yellow-950/30 to-orange-50 dark:to-orange-950/30\",\n \"gradient-purple\":\n \"border-pink-500/30 bg-linear-to-r from-purple-50 dark:from-purple-950/30 to-pink-50 dark:to-pink-950/30\",\n \"gradient-teal\":\n \"border-cyan-500/30 bg-linear-to-r from-teal-50 dark:from-teal-950/30 to-cyan-50 dark:to-cyan-950/30\",\n \"gradient-indigo\":\n \"border-purple-500/30 bg-linear-to-r from-indigo-50 dark:from-indigo-950/30 to-purple-50 dark:to-purple-950/30\",\n \"gradient-pink\":\n \"border-rose-500/30 bg-linear-to-r from-pink-50 dark:from-pink-950/30 to-rose-50 dark:to-rose-950/30\",\n \"gradient-orange\":\n \"border-orange-500/30 bg-linear-to-r from-orange-50 dark:from-orange-950/30 to-red-50 dark:to-red-950/30\",\n },\n size: {\n sm: \"gap-0.5\",\n md: \"gap-1\",\n lg: \"gap-1\",\n xl: \"gap-1.5\",\n \"2xl\": \"gap-1.5\",\n \"3xl\": \"gap-2\",\n \"4xl\": \"gap-2\",\n \"5xl\": \"gap-2\",\n \"6xl\": \"gap-2\",\n \"7xl\": \"gap-2.5\",\n \"8xl\": \"gap-2.5\",\n \"9xl\": \"gap-2.5\",\n \"10xl\": \"gap-3\",\n icon: \"gap-1\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const paginationEllipsisVariants = cva(\n \"inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-500 dark:text-slate-400\",\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n lg: \"text-base\",\n xl: \"text-base\",\n \"2xl\": \"text-lg\",\n \"3xl\": \"text-lg\",\n \"4xl\": \"text-xl\",\n \"5xl\": \"text-xl\",\n \"6xl\": \"text-xl\",\n \"7xl\": \"text-2xl\",\n \"8xl\": \"text-2xl\",\n \"9xl\": \"text-2xl\",\n \"10xl\": \"text-2xl\",\n icon: \"text-sm\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n","\"use client\";\n\nimport { useCallback, useId, type KeyboardEvent } from \"react\";\n\nimport { cn, clampPage } from \"../../lib/utils\";\nimport { buttonVariants } from \"../buttons/variants\";\n\nimport type { PaginationProps } from \"./types\";\nimport { usePagination } from \"../../hooks/usePagination\";\nimport { paginationEllipsisVariants, paginationListVariants } from \"./variants\";\n\nconst defaultPrevLabel = \"Previous page\";\nconst defaultNextLabel = \"Next page\";\nconst defaultEllipsisLabel = \"More pages\";\n\nexport const Pagination = ({\n className,\n appearance = \"default\",\n size = \"md\",\n pageCount,\n page,\n defaultPage = 1,\n onPageChange,\n siblingCount = 1,\n boundaryCount = 1,\n showPrevNext = true,\n prevLabel = defaultPrevLabel,\n nextLabel = defaultNextLabel,\n ellipsisLabel = defaultEllipsisLabel,\n getPageHref,\n \"aria-label\": ariaLabel = \"Pagination\",\n ref,\n ...rest\n}: PaginationProps) => {\n const id = useId();\n const listId = `${id}-list`;\n\n const { currentPage, items, setPage, goPrev, goNext, canGoPrev, canGoNext } =\n usePagination({\n pageCount,\n page,\n defaultPage,\n siblingCount,\n boundaryCount,\n onPageChange,\n });\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n if (pageCount <= 0) {\n return;\n }\n if (event.key === \"ArrowRight\" || event.key === \"ArrowDown\") {\n event.preventDefault();\n if (canGoNext) {\n setPage(currentPage + 1);\n }\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowUp\") {\n event.preventDefault();\n if (canGoPrev) {\n setPage(currentPage - 1);\n }\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setPage(1);\n } else if (event.key === \"End\") {\n event.preventDefault();\n setPage(pageCount);\n }\n },\n [canGoNext, canGoPrev, currentPage, pageCount, setPage],\n );\n\n if (pageCount <= 0) {\n return null;\n }\n\n const inactiveTriggerClass = cn(\n buttonVariants({ appearance: \"ghost\", size }),\n \"bg-white/[0.04] text-slate-900 dark:text-slate-200 hover:bg-white/10\",\n );\n\n const currentTriggerClass = buttonVariants({ appearance, size });\n\n const triggerFocusRing =\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\";\n\n const renderPageControl = (pageNumber: number) => {\n const isCurrent = pageNumber === currentPage;\n const href = getPageHref?.(pageNumber);\n const shared = cn(\n isCurrent ? currentTriggerClass : inactiveTriggerClass,\n \"min-w-[2.25ch] shrink-0\",\n triggerFocusRing,\n );\n\n if (href) {\n return (\n <a\n data-slot=\"pagination-trigger\"\n href={href}\n aria-label={`Page ${pageNumber}`}\n aria-current={isCurrent ? \"page\" : undefined}\n className={shared}\n >\n {pageNumber}\n </a>\n );\n }\n\n return (\n <button\n type=\"button\"\n data-slot=\"pagination-trigger\"\n aria-label={`Page ${pageNumber}`}\n aria-current={isCurrent ? \"page\" : undefined}\n className={shared}\n onClick={() => {\n if (!isCurrent) {\n setPage(pageNumber);\n }\n }}\n >\n {pageNumber}\n </button>\n );\n };\n\n const prevHref = getPageHref?.(clampPage(currentPage - 1, pageCount));\n const nextHref = getPageHref?.(clampPage(currentPage + 1, pageCount));\n\n const navTriggerClass = cn(\n buttonVariants({ appearance: \"outline\", size }),\n \"shrink-0 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950\",\n );\n\n return (\n <nav\n ref={ref}\n data-slot=\"pagination\"\n aria-label={ariaLabel}\n className={cn(\"w-full\", className)}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n <div className=\"flex flex-wrap items-center gap-2\">\n {showPrevNext ? (\n getPageHref && prevHref && canGoPrev ? (\n <a\n data-slot=\"pagination-prev\"\n aria-label={prevLabel}\n href={prevHref}\n className={navTriggerClass}\n >\n Prev\n </a>\n ) : (\n <button\n type=\"button\"\n data-slot=\"pagination-prev\"\n aria-label={prevLabel}\n disabled={!canGoPrev}\n className={navTriggerClass}\n onClick={goPrev}\n >\n Prev\n </button>\n )\n ) : null}\n\n <ul\n id={listId}\n data-slot=\"pagination-list\"\n className={paginationListVariants({ appearance, size })}\n >\n {items.map((item) => (\n <li\n key={item.type === \"page\" ? `page-${item.value}` : item.key}\n data-slot=\"pagination-item\"\n className=\"inline-flex items-center\"\n >\n {item.type === \"ellipsis\" ? (\n <span\n data-slot=\"pagination-ellipsis\"\n className={paginationEllipsisVariants({ size })}\n role=\"img\"\n aria-label={ellipsisLabel}\n >\n …\n </span>\n ) : (\n renderPageControl(item.value)\n )}\n </li>\n ))}\n </ul>\n\n {showPrevNext ? (\n getPageHref && nextHref && canGoNext ? (\n <a\n data-slot=\"pagination-next\"\n aria-label={nextLabel}\n href={nextHref}\n className={navTriggerClass}\n >\n Next\n </a>\n ) : (\n <button\n type=\"button\"\n data-slot=\"pagination-next\"\n aria-label={nextLabel}\n disabled={!canGoNext}\n className={navTriggerClass}\n onClick={goNext}\n >\n Next\n </button>\n )\n ) : null}\n </div>\n </nav>\n );\n};\n\nPagination.displayName = \"Pagination\";\n"]}