@zentauri-ui/zentauri-components 1.5.22 → 1.6.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 (394) hide show
  1. package/README.md +136 -70
  2. package/cli/registry.json +2 -0
  3. package/dist/charts/area.js.map +1 -1
  4. package/dist/charts/area.mjs.map +1 -1
  5. package/dist/charts/bubble/Bubble.d.ts.map +1 -1
  6. package/dist/charts/bubble.js.map +1 -1
  7. package/dist/charts/bubble.mjs.map +1 -1
  8. package/dist/charts/pie/Pie.d.ts.map +1 -1
  9. package/dist/charts/pie.js +20 -2
  10. package/dist/charts/pie.js.map +1 -1
  11. package/dist/charts/pie.mjs +20 -2
  12. package/dist/charts/pie.mjs.map +1 -1
  13. package/dist/charts/shared/types.d.ts.map +1 -1
  14. package/dist/{chunk-G3LEYBRV.mjs → chunk-25EAVVGS.mjs} +61 -58
  15. package/dist/chunk-25EAVVGS.mjs.map +1 -0
  16. package/dist/{chunk-BCZIYH53.js → chunk-3OXIZ4ZO.js} +28 -28
  17. package/dist/chunk-3OXIZ4ZO.js.map +1 -0
  18. package/dist/chunk-3PC7XLJX.js +102 -0
  19. package/dist/chunk-3PC7XLJX.js.map +1 -0
  20. package/dist/chunk-4ECCMHAX.mjs +323 -0
  21. package/dist/chunk-4ECCMHAX.mjs.map +1 -0
  22. package/dist/chunk-4MPNRGUA.mjs +65 -0
  23. package/dist/chunk-4MPNRGUA.mjs.map +1 -0
  24. package/dist/{chunk-Y745GQR2.js → chunk-4PZIDDC6.js} +45 -45
  25. package/dist/chunk-4PZIDDC6.js.map +1 -0
  26. package/dist/{chunk-PWL5WD34.js → chunk-662PJBZD.js} +27 -26
  27. package/dist/chunk-662PJBZD.js.map +1 -0
  28. package/dist/{chunk-TINHLHCN.mjs → chunk-73RHHGIA.mjs} +39 -36
  29. package/dist/chunk-73RHHGIA.mjs.map +1 -0
  30. package/dist/{chunk-OLEMP2HL.js → chunk-746CV3AN.js} +29 -36
  31. package/dist/chunk-746CV3AN.js.map +1 -0
  32. package/dist/{chunk-AUGLZ3AN.js → chunk-BMFPUQZC.js} +50 -50
  33. package/dist/chunk-BMFPUQZC.js.map +1 -0
  34. package/dist/chunk-CFTDAGKD.js +130 -0
  35. package/dist/chunk-CFTDAGKD.js.map +1 -0
  36. package/dist/{chunk-N2OAI2HN.js → chunk-D55YIHBN.js} +15 -15
  37. package/dist/chunk-D55YIHBN.js.map +1 -0
  38. package/dist/chunk-DO2LEXUY.js +62 -0
  39. package/dist/chunk-DO2LEXUY.js.map +1 -0
  40. package/dist/chunk-EU63V22F.mjs +126 -0
  41. package/dist/chunk-EU63V22F.mjs.map +1 -0
  42. package/dist/chunk-EZS47EZW.mjs +70 -0
  43. package/dist/chunk-EZS47EZW.mjs.map +1 -0
  44. package/dist/{chunk-E4FZY7O2.js → chunk-GHJN3Z3V.js} +48 -48
  45. package/dist/chunk-GHJN3Z3V.js.map +1 -0
  46. package/dist/{chunk-MTLLJFUI.mjs → chunk-GIC3J6HR.mjs} +28 -28
  47. package/dist/chunk-GIC3J6HR.mjs.map +1 -0
  48. package/dist/{chunk-C5L465FW.mjs → chunk-HARD4NMB.mjs} +45 -45
  49. package/dist/chunk-HARD4NMB.mjs.map +1 -0
  50. package/dist/{chunk-2VQJ6OIL.js → chunk-HPN7H5ZM.js} +2 -2
  51. package/dist/{chunk-2VQJ6OIL.js.map → chunk-HPN7H5ZM.js.map} +1 -1
  52. package/dist/{chunk-YTRGRHEB.js → chunk-HV7LVRK3.js} +61 -58
  53. package/dist/chunk-HV7LVRK3.js.map +1 -0
  54. package/dist/{chunk-Q5B44QW7.js → chunk-J4LG43O2.js} +51 -51
  55. package/dist/chunk-J4LG43O2.js.map +1 -0
  56. package/dist/{chunk-ZYZJ74XB.mjs → chunk-J5QJEKY2.mjs} +28 -28
  57. package/dist/chunk-J5QJEKY2.mjs.map +1 -0
  58. package/dist/{chunk-7TLKLMBM.js → chunk-JOMSI4WH.js} +18 -15
  59. package/dist/chunk-JOMSI4WH.js.map +1 -0
  60. package/dist/{chunk-ZBBFOMSJ.mjs → chunk-M6FS7X54.mjs} +22 -22
  61. package/dist/chunk-M6FS7X54.mjs.map +1 -0
  62. package/dist/{chunk-JUDMPOCI.js → chunk-MM3P52WS.js} +22 -22
  63. package/dist/chunk-MM3P52WS.js.map +1 -0
  64. package/dist/chunk-N6B35KWW.mjs +3 -0
  65. package/dist/chunk-N6B35KWW.mjs.map +1 -0
  66. package/dist/{chunk-73VCO5TE.mjs → chunk-NWOE2TZN.mjs} +2 -2
  67. package/dist/{chunk-73VCO5TE.mjs.map → chunk-NWOE2TZN.mjs.map} +1 -1
  68. package/dist/{chunk-UWA23DUC.js → chunk-OB6TYS5Q.js} +28 -28
  69. package/dist/chunk-OB6TYS5Q.js.map +1 -0
  70. package/dist/{chunk-QZTEFGZF.mjs → chunk-OVTWPGMW.mjs} +18 -15
  71. package/dist/chunk-OVTWPGMW.mjs.map +1 -0
  72. package/dist/chunk-PPVJ4INP.mjs +60 -0
  73. package/dist/chunk-PPVJ4INP.mjs.map +1 -0
  74. package/dist/{chunk-LN77JJTY.mjs → chunk-PSIAOIXJ.mjs} +48 -48
  75. package/dist/chunk-PSIAOIXJ.mjs.map +1 -0
  76. package/dist/chunk-QNF4JPFP.js +339 -0
  77. package/dist/chunk-QNF4JPFP.js.map +1 -0
  78. package/dist/{chunk-A6KMZ5ZS.mjs → chunk-QSIJKHC5.mjs} +15 -15
  79. package/dist/chunk-QSIJKHC5.mjs.map +1 -0
  80. package/dist/chunk-RFFGQYDQ.mjs +337 -0
  81. package/dist/chunk-RFFGQYDQ.mjs.map +1 -0
  82. package/dist/chunk-RGOMHX4G.js +4 -0
  83. package/dist/chunk-RGOMHX4G.js.map +1 -0
  84. package/dist/{chunk-INMNX3HQ.mjs → chunk-S5H2OMTZ.mjs} +29 -36
  85. package/dist/chunk-S5H2OMTZ.mjs.map +1 -0
  86. package/dist/{chunk-JBAUEGYD.mjs → chunk-TFWKF3DR.mjs} +51 -51
  87. package/dist/chunk-TFWKF3DR.mjs.map +1 -0
  88. package/dist/chunk-VGWA26BN.js +72 -0
  89. package/dist/chunk-VGWA26BN.js.map +1 -0
  90. package/dist/chunk-VMCOX3Z2.js +67 -0
  91. package/dist/chunk-VMCOX3Z2.js.map +1 -0
  92. package/dist/chunk-Y3AHRRNM.mjs +99 -0
  93. package/dist/chunk-Y3AHRRNM.mjs.map +1 -0
  94. package/dist/{chunk-TJUNN2PT.mjs → chunk-YD3LVW7V.mjs} +27 -26
  95. package/dist/chunk-YD3LVW7V.mjs.map +1 -0
  96. package/dist/{chunk-AD2LA3XN.js → chunk-YIO7DFUA.js} +39 -36
  97. package/dist/chunk-YIO7DFUA.js.map +1 -0
  98. package/dist/chunk-YRTGORVB.js +232 -0
  99. package/dist/chunk-YRTGORVB.js.map +1 -0
  100. package/dist/chunk-Z7QK472J.mjs +220 -0
  101. package/dist/chunk-Z7QK472J.mjs.map +1 -0
  102. package/dist/hooks/useControllableState.js +3 -2
  103. package/dist/hooks/useControllableState.mjs +2 -1
  104. package/dist/hooks/useDisclosure.js +3 -2
  105. package/dist/hooks/useDisclosure.js.map +1 -1
  106. package/dist/hooks/useDisclosure.mjs +2 -1
  107. package/dist/hooks/useDisclosure.mjs.map +1 -1
  108. package/dist/hooks/useDynamicStepper/index.d.ts +2 -0
  109. package/dist/hooks/useDynamicStepper/index.d.ts.map +1 -0
  110. package/dist/hooks/useDynamicStepper/useDynamicStepper.d.ts +9 -0
  111. package/dist/hooks/useDynamicStepper/useDynamicStepper.d.ts.map +1 -0
  112. package/dist/hooks/useDynamicStepper.js +14 -0
  113. package/dist/hooks/useDynamicStepper.js.map +1 -0
  114. package/dist/hooks/useDynamicStepper.mjs +5 -0
  115. package/dist/hooks/useDynamicStepper.mjs.map +1 -0
  116. package/dist/ui/accordion/animated.js +7 -7
  117. package/dist/ui/accordion/animated.mjs +2 -2
  118. package/dist/ui/accordion/variants.d.ts.map +1 -1
  119. package/dist/ui/accordion.js +9 -9
  120. package/dist/ui/accordion.mjs +2 -2
  121. package/dist/ui/alert/animated.js +2 -2
  122. package/dist/ui/alert/animated.mjs +1 -1
  123. package/dist/ui/alert/variants.d.ts.map +1 -1
  124. package/dist/ui/alert.js +10 -10
  125. package/dist/ui/alert.mjs +2 -2
  126. package/dist/ui/avatar/animated.js +5 -5
  127. package/dist/ui/avatar/animated.mjs +2 -2
  128. package/dist/ui/avatar/variants.d.ts.map +1 -1
  129. package/dist/ui/avatar.js +9 -9
  130. package/dist/ui/avatar.mjs +2 -2
  131. package/dist/ui/badge/animated.js +2 -2
  132. package/dist/ui/badge/animated.mjs +1 -1
  133. package/dist/ui/badge/variants.d.ts +24 -24
  134. package/dist/ui/badge/variants.d.ts.map +1 -1
  135. package/dist/ui/badge.js +4 -4
  136. package/dist/ui/badge.mjs +2 -2
  137. package/dist/ui/breadcrumb/variants.d.ts.map +1 -1
  138. package/dist/ui/breadcrumb.js +30 -25
  139. package/dist/ui/breadcrumb.js.map +1 -1
  140. package/dist/ui/breadcrumb.mjs +30 -25
  141. package/dist/ui/breadcrumb.mjs.map +1 -1
  142. package/dist/ui/buttons/animated.js +3 -3
  143. package/dist/ui/buttons/animated.mjs +1 -1
  144. package/dist/ui/buttons/variants.d.ts.map +1 -1
  145. package/dist/ui/buttons.js +9 -57
  146. package/dist/ui/buttons.js.map +1 -1
  147. package/dist/ui/buttons.mjs +3 -59
  148. package/dist/ui/buttons.mjs.map +1 -1
  149. package/dist/ui/card/animated.js +7 -7
  150. package/dist/ui/card/animated.mjs +2 -2
  151. package/dist/ui/card/variants.d.ts.map +1 -1
  152. package/dist/ui/card.js +12 -12
  153. package/dist/ui/card.mjs +2 -2
  154. package/dist/ui/divider/animated.js +2 -2
  155. package/dist/ui/divider/animated.mjs +1 -1
  156. package/dist/ui/divider.js +6 -6
  157. package/dist/ui/divider.mjs +2 -2
  158. package/dist/ui/drawer/animated.js +11 -11
  159. package/dist/ui/drawer/animated.mjs +2 -2
  160. package/dist/ui/drawer/variants.d.ts.map +1 -1
  161. package/dist/ui/drawer.js +11 -11
  162. package/dist/ui/drawer.mjs +1 -1
  163. package/dist/ui/dropdown/variants.d.ts.map +1 -1
  164. package/dist/ui/dropdown.js +52 -52
  165. package/dist/ui/dropdown.js.map +1 -1
  166. package/dist/ui/dropdown.mjs +52 -52
  167. package/dist/ui/dropdown.mjs.map +1 -1
  168. package/dist/ui/dynamic-stepper/dynamic-stepper.d.ts +6 -0
  169. package/dist/ui/dynamic-stepper/dynamic-stepper.d.ts.map +1 -0
  170. package/dist/ui/dynamic-stepper/index.d.ts +5 -0
  171. package/dist/ui/dynamic-stepper/index.d.ts.map +1 -0
  172. package/dist/ui/dynamic-stepper/types.d.ts +61 -0
  173. package/dist/ui/dynamic-stepper/types.d.ts.map +1 -0
  174. package/dist/ui/dynamic-stepper/variants.d.ts +21 -0
  175. package/dist/ui/dynamic-stepper/variants.d.ts.map +1 -0
  176. package/dist/ui/dynamic-stepper.js +315 -0
  177. package/dist/ui/dynamic-stepper.js.map +1 -0
  178. package/dist/ui/dynamic-stepper.mjs +308 -0
  179. package/dist/ui/dynamic-stepper.mjs.map +1 -0
  180. package/dist/ui/empty-state/animated.js +2 -2
  181. package/dist/ui/empty-state/animated.mjs +1 -1
  182. package/dist/ui/empty-state/variants.d.ts.map +1 -1
  183. package/dist/ui/empty-state.js +10 -10
  184. package/dist/ui/empty-state.mjs +2 -2
  185. package/dist/ui/file-upload/file-upload.d.ts.map +1 -1
  186. package/dist/ui/file-upload/variants.d.ts.map +1 -1
  187. package/dist/ui/file-upload.js +18 -18
  188. package/dist/ui/file-upload.js.map +1 -1
  189. package/dist/ui/file-upload.mjs +18 -18
  190. package/dist/ui/file-upload.mjs.map +1 -1
  191. package/dist/ui/inputs/animated.js +3 -3
  192. package/dist/ui/inputs/animated.mjs +1 -1
  193. package/dist/ui/inputs/types.d.ts +1 -1
  194. package/dist/ui/inputs/types.d.ts.map +1 -1
  195. package/dist/ui/inputs/variants.d.ts +1 -1
  196. package/dist/ui/inputs/variants.d.ts.map +1 -1
  197. package/dist/ui/inputs.js +4 -4
  198. package/dist/ui/inputs.mjs +2 -2
  199. package/dist/ui/modal/animated.js +4 -4
  200. package/dist/ui/modal/animated.mjs +1 -1
  201. package/dist/ui/modal/variants.d.ts.map +1 -1
  202. package/dist/ui/modal.js +12 -12
  203. package/dist/ui/modal.mjs +2 -2
  204. package/dist/ui/pagination/pagination.d.ts +5 -16
  205. package/dist/ui/pagination/pagination.d.ts.map +1 -1
  206. package/dist/ui/pagination/types.d.ts +2 -2
  207. package/dist/ui/pagination/types.d.ts.map +1 -1
  208. package/dist/ui/pagination/variants.d.ts.map +1 -1
  209. package/dist/ui/pagination.js +200 -209
  210. package/dist/ui/pagination.js.map +1 -1
  211. package/dist/ui/pagination.mjs +201 -210
  212. package/dist/ui/pagination.mjs.map +1 -1
  213. package/dist/ui/progress/animated.js +8 -8
  214. package/dist/ui/progress/animated.mjs +2 -2
  215. package/dist/ui/progress/variants.d.ts.map +1 -1
  216. package/dist/ui/progress.js +9 -9
  217. package/dist/ui/progress.mjs +2 -2
  218. package/dist/ui/search/search-bar.d.ts.map +1 -1
  219. package/dist/ui/search/search-suggestion-list.d.ts.map +1 -1
  220. package/dist/ui/search.js +10 -9
  221. package/dist/ui/search.js.map +1 -1
  222. package/dist/ui/search.mjs +9 -8
  223. package/dist/ui/search.mjs.map +1 -1
  224. package/dist/ui/select/variants.d.ts.map +1 -1
  225. package/dist/ui/select.js +66 -66
  226. package/dist/ui/select.js.map +1 -1
  227. package/dist/ui/select.mjs +66 -66
  228. package/dist/ui/select.mjs.map +1 -1
  229. package/dist/ui/skeleton/animated.js +8 -8
  230. package/dist/ui/skeleton/animated.mjs +1 -1
  231. package/dist/ui/skeleton/variants.d.ts.map +1 -1
  232. package/dist/ui/skeleton.js +9 -9
  233. package/dist/ui/skeleton.mjs +1 -1
  234. package/dist/ui/slider.js +25 -25
  235. package/dist/ui/slider.js.map +1 -1
  236. package/dist/ui/slider.mjs +25 -25
  237. package/dist/ui/slider.mjs.map +1 -1
  238. package/dist/ui/spinner/animated.js +22 -22
  239. package/dist/ui/spinner/animated.js.map +1 -1
  240. package/dist/ui/spinner/animated.mjs +22 -22
  241. package/dist/ui/spinner/animated.mjs.map +1 -1
  242. package/dist/ui/stepper/stepper.d.ts.map +1 -1
  243. package/dist/ui/stepper/variants.d.ts.map +1 -1
  244. package/dist/ui/stepper.js +29 -26
  245. package/dist/ui/stepper.js.map +1 -1
  246. package/dist/ui/stepper.mjs +29 -26
  247. package/dist/ui/stepper.mjs.map +1 -1
  248. package/dist/ui/table/animated.js +8 -8
  249. package/dist/ui/table/animated.mjs +2 -2
  250. package/dist/ui/table/variants.d.ts.map +1 -1
  251. package/dist/ui/table.js +14 -14
  252. package/dist/ui/table.mjs +1 -1
  253. package/dist/ui/tabs/animated.js +2 -2
  254. package/dist/ui/tabs/animated.mjs +1 -1
  255. package/dist/ui/tabs/variants.d.ts.map +1 -1
  256. package/dist/ui/tabs.js +9 -9
  257. package/dist/ui/tabs.mjs +1 -1
  258. package/dist/ui/toast/animated.js +7 -7
  259. package/dist/ui/toast/animated.mjs +1 -1
  260. package/dist/ui/toast/toast-base.d.ts.map +1 -1
  261. package/dist/ui/toast/variants.d.ts.map +1 -1
  262. package/dist/ui/toast.js +12 -12
  263. package/dist/ui/toast.mjs +1 -1
  264. package/dist/ui/toggle/animated/toggle-animated.d.ts.map +1 -1
  265. package/dist/ui/toggle/animated.js +5 -4
  266. package/dist/ui/toggle/animated.js.map +1 -1
  267. package/dist/ui/toggle/animated.mjs +4 -3
  268. package/dist/ui/toggle/animated.mjs.map +1 -1
  269. package/dist/ui/toggle/toggle-base.d.ts.map +1 -1
  270. package/dist/ui/toggle/variants.d.ts +1 -0
  271. package/dist/ui/toggle/variants.d.ts.map +1 -1
  272. package/dist/ui/toggle.js +8 -7
  273. package/dist/ui/toggle.js.map +1 -1
  274. package/dist/ui/toggle.mjs +6 -5
  275. package/dist/ui/toggle.mjs.map +1 -1
  276. package/dist/ui/tooltip/animated.js +3 -3
  277. package/dist/ui/tooltip/animated.mjs +1 -1
  278. package/dist/ui/tooltip/variants.d.ts.map +1 -1
  279. package/dist/ui/tooltip.js +7 -7
  280. package/dist/ui/tooltip.mjs +1 -1
  281. package/dist/ui/typography/blockquote-base.d.ts.map +1 -1
  282. package/dist/ui/typography/code-block-base.d.ts.map +1 -1
  283. package/dist/ui/typography/heading-base.d.ts.map +1 -1
  284. package/dist/ui/typography/inline-code-base.d.ts.map +1 -1
  285. package/dist/ui/typography/variants.d.ts.map +1 -1
  286. package/dist/ui/typography.js +19 -19
  287. package/dist/ui/typography.js.map +1 -1
  288. package/dist/ui/typography.mjs +19 -19
  289. package/dist/ui/typography.mjs.map +1 -1
  290. package/package.json +4 -3
  291. package/src/charts/area/Area.tsx +1 -1
  292. package/src/charts/bubble/Bubble.tsx +10 -2
  293. package/src/charts/pie/Pie.tsx +22 -3
  294. package/src/charts/shared/types.ts +1 -1
  295. package/src/hooks/useDynamicStepper/index.ts +1 -0
  296. package/src/hooks/useDynamicStepper/useDynamicStepper.test.ts +107 -0
  297. package/src/hooks/useDynamicStepper/useDynamicStepper.ts +85 -0
  298. package/src/ui/accordion/variants.ts +55 -43
  299. package/src/ui/alert/variants.ts +45 -32
  300. package/src/ui/avatar/variants.ts +34 -26
  301. package/src/ui/badge/variants.ts +42 -29
  302. package/src/ui/breadcrumb/variants.ts +30 -25
  303. package/src/ui/buttons/variants.ts +40 -30
  304. package/src/ui/card/variants.ts +49 -39
  305. package/src/ui/divider/variants.ts +26 -26
  306. package/src/ui/drawer/drawer-base.tsx +1 -1
  307. package/src/ui/drawer/variants.ts +64 -48
  308. package/src/ui/dropdown/dropdown.tsx +1 -1
  309. package/src/ui/dropdown/variants.ts +63 -52
  310. package/src/ui/dynamic-stepper/dynamic-stepper.test.tsx +113 -0
  311. package/src/ui/dynamic-stepper/dynamic-stepper.tsx +173 -0
  312. package/src/ui/dynamic-stepper/index.ts +22 -0
  313. package/src/ui/dynamic-stepper/types.ts +85 -0
  314. package/src/ui/dynamic-stepper/variants.ts +247 -0
  315. package/src/ui/empty-state/variants.ts +14 -11
  316. package/src/ui/file-upload/file-upload.tsx +5 -3
  317. package/src/ui/file-upload/variants.ts +16 -15
  318. package/src/ui/inputs/types.ts +1 -1
  319. package/src/ui/inputs/variants.ts +106 -47
  320. package/src/ui/modal/modal-base.tsx +1 -1
  321. package/src/ui/modal/variants.ts +64 -47
  322. package/src/ui/pagination/pagination.tsx +186 -197
  323. package/src/ui/pagination/types.ts +2 -5
  324. package/src/ui/pagination/variants.ts +31 -28
  325. package/src/ui/progress/variants.ts +79 -65
  326. package/src/ui/search/search-bar.tsx +2 -1
  327. package/src/ui/search/search-suggestion-list.tsx +7 -5
  328. package/src/ui/select/variants.ts +72 -66
  329. package/src/ui/skeleton/variants.ts +22 -13
  330. package/src/ui/slider/variants.ts +25 -25
  331. package/src/ui/spinner/animated/variants.ts +22 -22
  332. package/src/ui/stepper/stepper.tsx +5 -2
  333. package/src/ui/stepper/variants.ts +25 -24
  334. package/src/ui/table/table-base.tsx +1 -1
  335. package/src/ui/table/variants.ts +53 -45
  336. package/src/ui/tabs/variants.ts +38 -23
  337. package/src/ui/toast/toast-base.tsx +1 -4
  338. package/src/ui/toast/variants.ts +33 -26
  339. package/src/ui/toggle/animated/toggle-animated.tsx +3 -2
  340. package/src/ui/toggle/toggle-base.tsx +4 -3
  341. package/src/ui/toggle/variants.ts +60 -28
  342. package/src/ui/tooltip/variants.ts +21 -20
  343. package/src/ui/typography/blockquote-base.tsx +0 -2
  344. package/src/ui/typography/code-block-base.tsx +1 -3
  345. package/src/ui/typography/heading-base.tsx +0 -2
  346. package/src/ui/typography/inline-code-base.tsx +0 -2
  347. package/src/ui/typography/variants.ts +21 -18
  348. package/dist/chunk-2BAMNRAL.mjs +0 -323
  349. package/dist/chunk-2BAMNRAL.mjs.map +0 -1
  350. package/dist/chunk-5TV7EL3H.mjs +0 -70
  351. package/dist/chunk-5TV7EL3H.mjs.map +0 -1
  352. package/dist/chunk-7TLKLMBM.js.map +0 -1
  353. package/dist/chunk-A6KMZ5ZS.mjs.map +0 -1
  354. package/dist/chunk-AD2LA3XN.js.map +0 -1
  355. package/dist/chunk-AOEI4V3W.mjs +0 -286
  356. package/dist/chunk-AOEI4V3W.mjs.map +0 -1
  357. package/dist/chunk-AUGLZ3AN.js.map +0 -1
  358. package/dist/chunk-BCZIYH53.js.map +0 -1
  359. package/dist/chunk-C5L465FW.mjs.map +0 -1
  360. package/dist/chunk-E4FZY7O2.js.map +0 -1
  361. package/dist/chunk-FQBMIZH2.mjs +0 -217
  362. package/dist/chunk-FQBMIZH2.mjs.map +0 -1
  363. package/dist/chunk-G3LEYBRV.mjs.map +0 -1
  364. package/dist/chunk-I6GR234Z.mjs +0 -126
  365. package/dist/chunk-I6GR234Z.mjs.map +0 -1
  366. package/dist/chunk-INMNX3HQ.mjs.map +0 -1
  367. package/dist/chunk-JBAUEGYD.mjs.map +0 -1
  368. package/dist/chunk-JQ5TIJ4F.mjs +0 -68
  369. package/dist/chunk-JQ5TIJ4F.mjs.map +0 -1
  370. package/dist/chunk-JUDMPOCI.js.map +0 -1
  371. package/dist/chunk-LN77JJTY.mjs.map +0 -1
  372. package/dist/chunk-MCOQHXRW.js +0 -130
  373. package/dist/chunk-MCOQHXRW.js.map +0 -1
  374. package/dist/chunk-MTLLJFUI.mjs.map +0 -1
  375. package/dist/chunk-N2OAI2HN.js.map +0 -1
  376. package/dist/chunk-OB4KJZK2.js +0 -72
  377. package/dist/chunk-OB4KJZK2.js.map +0 -1
  378. package/dist/chunk-OLEMP2HL.js.map +0 -1
  379. package/dist/chunk-PWL5WD34.js.map +0 -1
  380. package/dist/chunk-Q5B44QW7.js.map +0 -1
  381. package/dist/chunk-QZKMFSH5.js +0 -288
  382. package/dist/chunk-QZKMFSH5.js.map +0 -1
  383. package/dist/chunk-QZTEFGZF.mjs.map +0 -1
  384. package/dist/chunk-S7WKFNPT.js +0 -229
  385. package/dist/chunk-S7WKFNPT.js.map +0 -1
  386. package/dist/chunk-TINHLHCN.mjs.map +0 -1
  387. package/dist/chunk-TJUNN2PT.mjs.map +0 -1
  388. package/dist/chunk-UWA23DUC.js.map +0 -1
  389. package/dist/chunk-X22LLJL6.js +0 -71
  390. package/dist/chunk-X22LLJL6.js.map +0 -1
  391. package/dist/chunk-Y745GQR2.js.map +0 -1
  392. package/dist/chunk-YTRGRHEB.js.map +0 -1
  393. package/dist/chunk-ZBBFOMSJ.mjs.map +0 -1
  394. package/dist/chunk-ZYZJ74XB.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { forwardRef, useCallback, useId, type KeyboardEvent } from "react";
3
+ import { useCallback, useId, type KeyboardEvent } from "react";
4
4
 
5
5
  import { cn, clampPage } from "../../lib/utils";
6
6
  import { buttonVariants } from "../buttons/variants";
@@ -13,40 +13,30 @@ const defaultPrevLabel = "Previous page";
13
13
  const defaultNextLabel = "Next page";
14
14
  const defaultEllipsisLabel = "More pages";
15
15
 
16
- export const Pagination = forwardRef<HTMLElement, PaginationProps>(
17
- function Pagination(
18
- {
19
- className,
20
- appearance = "default",
21
- size = "md",
22
- pageCount,
23
- page,
24
- defaultPage = 1,
25
- onPageChange,
26
- siblingCount = 1,
27
- boundaryCount = 1,
28
- showPrevNext = true,
29
- prevLabel = defaultPrevLabel,
30
- nextLabel = defaultNextLabel,
31
- ellipsisLabel = defaultEllipsisLabel,
32
- getPageHref,
33
- "aria-label": ariaLabel = "Pagination",
34
- ...rest
35
- },
36
- ref,
37
- ) {
38
- const id = useId();
39
- const listId = `${id}-list`;
40
-
41
- const {
42
- currentPage,
43
- items,
44
- setPage,
45
- goPrev,
46
- goNext,
47
- canGoPrev,
48
- canGoNext,
49
- } = usePagination({
16
+ export const Pagination = ({
17
+ className,
18
+ appearance = "default",
19
+ size = "md",
20
+ pageCount,
21
+ page,
22
+ defaultPage = 1,
23
+ onPageChange,
24
+ siblingCount = 1,
25
+ boundaryCount = 1,
26
+ showPrevNext = true,
27
+ prevLabel = defaultPrevLabel,
28
+ nextLabel = defaultNextLabel,
29
+ ellipsisLabel = defaultEllipsisLabel,
30
+ getPageHref,
31
+ "aria-label": ariaLabel = "Pagination",
32
+ ref,
33
+ ...rest
34
+ }: PaginationProps) => {
35
+ const id = useId();
36
+ const listId = `${id}-list`;
37
+
38
+ const { currentPage, items, setPage, goPrev, goNext, canGoPrev, canGoNext } =
39
+ usePagination({
50
40
  pageCount,
51
41
  page,
52
42
  defaultPage,
@@ -55,183 +45,182 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
55
45
  onPageChange,
56
46
  });
57
47
 
58
- const handleKeyDown = useCallback(
59
- (event: KeyboardEvent<HTMLElement>) => {
60
- if (pageCount <= 0) {
61
- return;
48
+ const handleKeyDown = useCallback(
49
+ (event: KeyboardEvent<HTMLElement>) => {
50
+ if (pageCount <= 0) {
51
+ return;
52
+ }
53
+ if (event.key === "ArrowRight" || event.key === "ArrowDown") {
54
+ event.preventDefault();
55
+ if (canGoNext) {
56
+ setPage(currentPage + 1);
62
57
  }
63
- if (event.key === "ArrowRight" || event.key === "ArrowDown") {
64
- event.preventDefault();
65
- if (canGoNext) {
66
- setPage(currentPage + 1);
67
- }
68
- } else if (event.key === "ArrowLeft" || event.key === "ArrowUp") {
69
- event.preventDefault();
70
- if (canGoPrev) {
71
- setPage(currentPage - 1);
72
- }
73
- } else if (event.key === "Home") {
74
- event.preventDefault();
75
- setPage(1);
76
- } else if (event.key === "End") {
77
- event.preventDefault();
78
- setPage(pageCount);
58
+ } else if (event.key === "ArrowLeft" || event.key === "ArrowUp") {
59
+ event.preventDefault();
60
+ if (canGoPrev) {
61
+ setPage(currentPage - 1);
79
62
  }
80
- },
81
- [canGoNext, canGoPrev, currentPage, pageCount, setPage],
82
- );
83
-
84
- if (pageCount <= 0) {
85
- return null;
86
- }
87
-
88
- const inactiveTriggerClass = cn(
89
- buttonVariants({ appearance: "ghost", size }),
90
- "bg-white/[0.04] text-slate-200 hover:bg-white/10",
91
- );
92
-
93
- const currentTriggerClass = buttonVariants({ appearance, size });
94
-
95
- const triggerFocusRing =
96
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950";
97
-
98
- const renderPageControl = (pageNumber: number) => {
99
- const isCurrent = pageNumber === currentPage;
100
- const href = getPageHref?.(pageNumber);
101
- const shared = cn(
102
- isCurrent ? currentTriggerClass : inactiveTriggerClass,
103
- "min-w-[2.25ch] shrink-0",
104
- triggerFocusRing,
105
- );
106
-
107
- if (href) {
108
- return (
109
- <a
110
- data-slot="pagination-trigger"
111
- href={href}
112
- aria-label={`Page ${pageNumber}`}
113
- aria-current={isCurrent ? "page" : undefined}
114
- className={shared}
115
- >
116
- {pageNumber}
117
- </a>
118
- );
63
+ } else if (event.key === "Home") {
64
+ event.preventDefault();
65
+ setPage(1);
66
+ } else if (event.key === "End") {
67
+ event.preventDefault();
68
+ setPage(pageCount);
119
69
  }
70
+ },
71
+ [canGoNext, canGoPrev, currentPage, pageCount, setPage],
72
+ );
73
+
74
+ if (pageCount <= 0) {
75
+ return null;
76
+ }
77
+
78
+ const inactiveTriggerClass = cn(
79
+ buttonVariants({ appearance: "ghost", size }),
80
+ "bg-white/[0.04] text-slate-900 dark:text-slate-200 hover:bg-white/10",
81
+ );
82
+
83
+ const currentTriggerClass = buttonVariants({ appearance, size });
84
+
85
+ const triggerFocusRing =
86
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-300 focus-visible:ring-offset-2 focus-visible:ring-offset-slate-950";
87
+
88
+ const renderPageControl = (pageNumber: number) => {
89
+ const isCurrent = pageNumber === currentPage;
90
+ const href = getPageHref?.(pageNumber);
91
+ const shared = cn(
92
+ isCurrent ? currentTriggerClass : inactiveTriggerClass,
93
+ "min-w-[2.25ch] shrink-0",
94
+ triggerFocusRing,
95
+ );
120
96
 
97
+ if (href) {
121
98
  return (
122
- <button
123
- type="button"
99
+ <a
124
100
  data-slot="pagination-trigger"
101
+ href={href}
125
102
  aria-label={`Page ${pageNumber}`}
126
103
  aria-current={isCurrent ? "page" : undefined}
127
104
  className={shared}
128
- onClick={() => {
129
- if (!isCurrent) {
130
- setPage(pageNumber);
131
- }
132
- }}
133
105
  >
134
106
  {pageNumber}
135
- </button>
107
+ </a>
136
108
  );
137
- };
138
-
139
- const prevHref = getPageHref?.(clampPage(currentPage - 1, pageCount));
140
- const nextHref = getPageHref?.(clampPage(currentPage + 1, pageCount));
141
-
142
- const navTriggerClass = cn(
143
- buttonVariants({ appearance: "outline", size }),
144
- "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",
145
- );
109
+ }
146
110
 
147
111
  return (
148
- <nav
149
- ref={ref}
150
- data-slot="pagination"
151
- aria-label={ariaLabel}
152
- className={cn("w-full", className)}
153
- onKeyDown={handleKeyDown}
154
- {...rest}
112
+ <button
113
+ type="button"
114
+ data-slot="pagination-trigger"
115
+ aria-label={`Page ${pageNumber}`}
116
+ aria-current={isCurrent ? "page" : undefined}
117
+ className={shared}
118
+ onClick={() => {
119
+ if (!isCurrent) {
120
+ setPage(pageNumber);
121
+ }
122
+ }}
155
123
  >
156
- <div className="flex flex-wrap items-center gap-2">
157
- {showPrevNext ? (
158
- getPageHref && prevHref && canGoPrev ? (
159
- <a
160
- data-slot="pagination-prev"
161
- aria-label={prevLabel}
162
- href={prevHref}
163
- className={navTriggerClass}
164
- >
165
- Prev
166
- </a>
167
- ) : (
168
- <button
169
- type="button"
170
- data-slot="pagination-prev"
171
- aria-label={prevLabel}
172
- disabled={!canGoPrev}
173
- className={navTriggerClass}
174
- onClick={goPrev}
175
- >
176
- Prev
177
- </button>
178
- )
179
- ) : null}
180
-
181
- <ul
182
- id={listId}
183
- data-slot="pagination-list"
184
- className={paginationListVariants({ appearance, size })}
185
- >
186
- {items.map((item) => (
187
- <li
188
- key={item.type === "page" ? `page-${item.value}` : item.key}
189
- data-slot="pagination-item"
190
- className="inline-flex items-center"
191
- >
192
- {item.type === "ellipsis" ? (
193
- <span
194
- data-slot="pagination-ellipsis"
195
- className={paginationEllipsisVariants({ size })}
196
- role="img"
197
- aria-label={ellipsisLabel}
198
- >
199
-
200
- </span>
201
- ) : (
202
- renderPageControl(item.value)
203
- )}
204
- </li>
205
- ))}
206
- </ul>
207
-
208
- {showPrevNext ? (
209
- getPageHref && nextHref && canGoNext ? (
210
- <a
211
- data-slot="pagination-next"
212
- aria-label={nextLabel}
213
- href={nextHref}
214
- className={navTriggerClass}
215
- >
216
- Next
217
- </a>
218
- ) : (
219
- <button
220
- type="button"
221
- data-slot="pagination-next"
222
- aria-label={nextLabel}
223
- disabled={!canGoNext}
224
- className={navTriggerClass}
225
- onClick={goNext}
226
- >
227
- Next
228
- </button>
229
- )
230
- ) : null}
231
- </div>
232
- </nav>
124
+ {pageNumber}
125
+ </button>
233
126
  );
234
- },
235
- );
127
+ };
128
+
129
+ const prevHref = getPageHref?.(clampPage(currentPage - 1, pageCount));
130
+ const nextHref = getPageHref?.(clampPage(currentPage + 1, pageCount));
131
+
132
+ const navTriggerClass = cn(
133
+ buttonVariants({ appearance: "outline", size }),
134
+ "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",
135
+ );
136
+
137
+ return (
138
+ <nav
139
+ ref={ref}
140
+ data-slot="pagination"
141
+ aria-label={ariaLabel}
142
+ className={cn("w-full", className)}
143
+ onKeyDown={handleKeyDown}
144
+ {...rest}
145
+ >
146
+ <div className="flex flex-wrap items-center gap-2">
147
+ {showPrevNext ? (
148
+ getPageHref && prevHref && canGoPrev ? (
149
+ <a
150
+ data-slot="pagination-prev"
151
+ aria-label={prevLabel}
152
+ href={prevHref}
153
+ className={navTriggerClass}
154
+ >
155
+ Prev
156
+ </a>
157
+ ) : (
158
+ <button
159
+ type="button"
160
+ data-slot="pagination-prev"
161
+ aria-label={prevLabel}
162
+ disabled={!canGoPrev}
163
+ className={navTriggerClass}
164
+ onClick={goPrev}
165
+ >
166
+ Prev
167
+ </button>
168
+ )
169
+ ) : null}
170
+
171
+ <ul
172
+ id={listId}
173
+ data-slot="pagination-list"
174
+ className={paginationListVariants({ appearance, size })}
175
+ >
176
+ {items.map((item) => (
177
+ <li
178
+ key={item.type === "page" ? `page-${item.value}` : item.key}
179
+ data-slot="pagination-item"
180
+ className="inline-flex items-center"
181
+ >
182
+ {item.type === "ellipsis" ? (
183
+ <span
184
+ data-slot="pagination-ellipsis"
185
+ className={paginationEllipsisVariants({ size })}
186
+ role="img"
187
+ aria-label={ellipsisLabel}
188
+ >
189
+
190
+ </span>
191
+ ) : (
192
+ renderPageControl(item.value)
193
+ )}
194
+ </li>
195
+ ))}
196
+ </ul>
197
+
198
+ {showPrevNext ? (
199
+ getPageHref && nextHref && canGoNext ? (
200
+ <a
201
+ data-slot="pagination-next"
202
+ aria-label={nextLabel}
203
+ href={nextHref}
204
+ className={navTriggerClass}
205
+ >
206
+ Next
207
+ </a>
208
+ ) : (
209
+ <button
210
+ type="button"
211
+ data-slot="pagination-next"
212
+ aria-label={nextLabel}
213
+ disabled={!canGoNext}
214
+ className={navTriggerClass}
215
+ onClick={goNext}
216
+ >
217
+ Next
218
+ </button>
219
+ )
220
+ ) : null}
221
+ </div>
222
+ </nav>
223
+ );
224
+ };
236
225
 
237
226
  Pagination.displayName = "Pagination";
@@ -1,5 +1,5 @@
1
1
  import type { VariantProps } from "class-variance-authority";
2
- import type { ComponentPropsWithoutRef } from "react";
2
+ import type { ComponentPropsWithRef } from "react";
3
3
 
4
4
  import type { buttonVariants } from "../buttons/variants";
5
5
 
@@ -36,10 +36,7 @@ export type UsePaginationResult = {
36
36
  canGoNext: boolean;
37
37
  };
38
38
 
39
- export type PaginationProps = Omit<
40
- ComponentPropsWithoutRef<"nav">,
41
- "onChange"
42
- > &
39
+ export type PaginationProps = Omit<ComponentPropsWithRef<"nav">, "onChange"> &
43
40
  VariantProps<typeof buttonVariants> & {
44
41
  pageCount: number;
45
42
  page?: number;
@@ -5,47 +5,50 @@ import { cva } from "class-variance-authority";
5
5
  * `components/ui/buttons/variants.ts` for consistent design-system tokens.
6
6
  */
7
7
  export const paginationListVariants = cva(
8
- "inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-950",
8
+ "inline-flex flex-wrap items-center rounded-xl border p-1 ring-offset-slate-50 dark:ring-offset-slate-950",
9
9
  {
10
10
  variants: {
11
11
  appearance: {
12
- default: "border-white/10 bg-white/[0.03]",
13
- secondary: "border-white/10 bg-slate-900/40",
14
- destructive: "border-rose-500/25 bg-rose-950/20",
15
- outline: "border-white/15 bg-transparent",
12
+ default:
13
+ "border-black/10 dark:border-white/10 bg-black/[0.03] dark:bg-white/[0.03]",
14
+ secondary:
15
+ "border-black/10 dark:border-white/10 bg-slate-100/40 dark:bg-slate-900/40",
16
+ destructive: "border-rose-500/25 bg-rose-50 dark:bg-rose-950/20",
17
+ outline: "border-black/15 dark:border-white/15 bg-transparent",
16
18
  ghost: "border-transparent bg-transparent",
17
19
  link: "border-transparent bg-transparent",
18
- glass: "border-white/15 bg-white/5 backdrop-blur-md",
19
- emerald: "border-emerald-500/25 bg-emerald-950/20",
20
- indigo: "border-indigo-500/25 bg-indigo-950/20",
21
- purple: "border-purple-500/25 bg-purple-950/20",
22
- pink: "border-pink-500/25 bg-pink-950/20",
23
- rose: "border-rose-500/25 bg-rose-950/20",
24
- sky: "border-sky-500/25 bg-sky-950/20",
25
- teal: "border-teal-500/25 bg-teal-950/20",
26
- yellow: "border-yellow-500/25 bg-yellow-950/20",
27
- orange: "border-orange-500/25 bg-orange-950/20",
28
- gray: "border-gray-500/25 bg-gray-950/20",
29
- amber: "border-amber-500/25 bg-amber-950/20",
30
- violet: "border-violet-500/25 bg-violet-950/20",
20
+ glass:
21
+ "border-black/15 dark:border-white/15 bg-black/5 dark:bg-white/5 backdrop-blur-md",
22
+ emerald: "border-emerald-500/25 bg-emerald-50 dark:bg-emerald-950/20",
23
+ indigo: "border-indigo-500/25 bg-indigo-50 dark:bg-indigo-950/20",
24
+ purple: "border-purple-500/25 bg-purple-50 dark:bg-purple-950/20",
25
+ pink: "border-pink-500/25 bg-pink-50 dark:bg-pink-950/20",
26
+ rose: "border-rose-500/25 bg-rose-50 dark:bg-rose-950/20",
27
+ sky: "border-sky-500/25 bg-sky-50 dark:bg-sky-950/20",
28
+ teal: "border-teal-500/25 bg-teal-50 dark:bg-teal-950/20",
29
+ yellow: "border-yellow-500/25 bg-yellow-50 dark:bg-yellow-950/20",
30
+ orange: "border-orange-500/25 bg-orange-50 dark:bg-orange-950/20",
31
+ gray: "border-gray-500/25 bg-gray-50 dark:bg-gray-950/20",
32
+ amber: "border-amber-500/25 bg-amber-50 dark:bg-amber-950/20",
33
+ violet: "border-violet-500/25 bg-violet-50 dark:bg-violet-950/20",
31
34
  "gradient-blue":
32
- "border-blue-500/30 bg-linear-to-r from-blue-950/30 to-purple-950/30",
35
+ "border-blue-500/30 bg-linear-to-r from-blue-50 dark:from-blue-950/30 to-purple-50 dark:to-purple-950/30",
33
36
  "gradient-green":
34
- "border-lime-500/30 bg-linear-to-r from-green-950/30 to-lime-950/30",
37
+ "border-lime-500/30 bg-linear-to-r from-green-50 dark:from-green-950/30 to-lime-50 dark:to-lime-950/30",
35
38
  "gradient-red":
36
- "border-pink-500/30 bg-linear-to-r from-red-950/30 to-pink-950/30",
39
+ "border-pink-500/30 bg-linear-to-r from-red-50 dark:from-red-950/30 to-pink-50 dark:to-pink-950/30",
37
40
  "gradient-yellow":
38
- "border-orange-500/30 bg-linear-to-r from-yellow-950/30 to-orange-950/30",
41
+ "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
42
  "gradient-purple":
40
- "border-pink-500/30 bg-linear-to-r from-purple-950/30 to-pink-950/30",
43
+ "border-pink-500/30 bg-linear-to-r from-purple-50 dark:from-purple-950/30 to-pink-50 dark:to-pink-950/30",
41
44
  "gradient-teal":
42
- "border-cyan-500/30 bg-linear-to-r from-teal-950/30 to-cyan-950/30",
45
+ "border-cyan-500/30 bg-linear-to-r from-teal-50 dark:from-teal-950/30 to-cyan-50 dark:to-cyan-950/30",
43
46
  "gradient-indigo":
44
- "border-purple-500/30 bg-linear-to-r from-indigo-950/30 to-purple-950/30",
47
+ "border-purple-500/30 bg-linear-to-r from-indigo-50 dark:from-indigo-950/30 to-purple-50 dark:to-purple-950/30",
45
48
  "gradient-pink":
46
- "border-rose-500/30 bg-linear-to-r from-pink-950/30 to-rose-950/30",
49
+ "border-rose-500/30 bg-linear-to-r from-pink-50 dark:from-pink-950/30 to-rose-50 dark:to-rose-950/30",
47
50
  "gradient-orange":
48
- "border-orange-500/30 bg-linear-to-r from-orange-950/30 to-red-950/30",
51
+ "border-orange-500/30 bg-linear-to-r from-orange-50 dark:from-orange-950/30 to-red-50 dark:to-red-950/30",
49
52
  },
50
53
  size: {
51
54
  sm: "gap-0.5",
@@ -72,7 +75,7 @@ export const paginationListVariants = cva(
72
75
  );
73
76
 
74
77
  export const paginationEllipsisVariants = cva(
75
- "inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-400",
78
+ "inline-flex min-w-[2ch] select-none items-center justify-center px-1 font-medium text-slate-500 dark:text-slate-400",
76
79
  {
77
80
  variants: {
78
81
  size: {