@primereact/mcp 11.0.0-rc.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 (546) hide show
  1. package/LICENSE.md +45 -0
  2. package/README.md +94 -0
  3. package/data/llms/headless/add-ons/introduction.md +16 -0
  4. package/data/llms/headless/components/accordion/api.json +252 -0
  5. package/data/llms/headless/components/accordion.md +196 -0
  6. package/data/llms/headless/components/animateonscroll/api.json +88 -0
  7. package/data/llms/headless/components/animateonscroll.md +141 -0
  8. package/data/llms/headless/components/autocomplete/api.json +787 -0
  9. package/data/llms/headless/components/autocomplete.md +249 -0
  10. package/data/llms/headless/components/avatar/api.json +154 -0
  11. package/data/llms/headless/components/avatar.md +149 -0
  12. package/data/llms/headless/components/badge/api.json +68 -0
  13. package/data/llms/headless/components/badge.md +150 -0
  14. package/data/llms/headless/components/breadcrumb/api.json +142 -0
  15. package/data/llms/headless/components/breadcrumb.md +149 -0
  16. package/data/llms/headless/components/button/api.json +62 -0
  17. package/data/llms/headless/components/button.md +73 -0
  18. package/data/llms/headless/components/card/api.json +36 -0
  19. package/data/llms/headless/components/card.md +96 -0
  20. package/data/llms/headless/components/carousel/api.json +793 -0
  21. package/data/llms/headless/components/carousel.md +196 -0
  22. package/data/llms/headless/components/checkbox/api.json +593 -0
  23. package/data/llms/headless/components/checkbox.md +184 -0
  24. package/data/llms/headless/components/chip/api.json +107 -0
  25. package/data/llms/headless/components/chip.md +141 -0
  26. package/data/llms/headless/components/collapsible/api.json +301 -0
  27. package/data/llms/headless/components/collapsible.md +136 -0
  28. package/data/llms/headless/components/compare/api.json +533 -0
  29. package/data/llms/headless/components/compare.md +142 -0
  30. package/data/llms/headless/components/contextmenu/api.json +495 -0
  31. package/data/llms/headless/components/contextmenu.md +282 -0
  32. package/data/llms/headless/components/datatable/api.json +1680 -0
  33. package/data/llms/headless/components/datatable.md +258 -0
  34. package/data/llms/headless/components/dataview/api.json +199 -0
  35. package/data/llms/headless/components/dataview.md +147 -0
  36. package/data/llms/headless/components/datepicker/api.json +2796 -0
  37. package/data/llms/headless/components/datepicker.md +456 -0
  38. package/data/llms/headless/components/dialog/api.json +626 -0
  39. package/data/llms/headless/components/dialog.md +280 -0
  40. package/data/llms/headless/components/divider/api.json +130 -0
  41. package/data/llms/headless/components/divider.md +92 -0
  42. package/data/llms/headless/components/drawer/api.json +425 -0
  43. package/data/llms/headless/components/drawer.md +220 -0
  44. package/data/llms/headless/components/fieldset/api.json +195 -0
  45. package/data/llms/headless/components/fieldset.md +154 -0
  46. package/data/llms/headless/components/fileupload/api.json +905 -0
  47. package/data/llms/headless/components/fileupload.md +323 -0
  48. package/data/llms/headless/components/floatlabel/api.json +36 -0
  49. package/data/llms/headless/components/floatlabel.md +19 -0
  50. package/data/llms/headless/components/fluid/api.json +36 -0
  51. package/data/llms/headless/components/fluid.md +19 -0
  52. package/data/llms/headless/components/focustrap/api.json +135 -0
  53. package/data/llms/headless/components/focustrap.md +125 -0
  54. package/data/llms/headless/components/gallery/api.json +1349 -0
  55. package/data/llms/headless/components/gallery.md +355 -0
  56. package/data/llms/headless/components/iconfield/api.json +62 -0
  57. package/data/llms/headless/components/iconfield.md +19 -0
  58. package/data/llms/headless/components/iftalabel/api.json +62 -0
  59. package/data/llms/headless/components/iftalabel.md +19 -0
  60. package/data/llms/headless/components/inplace/api.json +340 -0
  61. package/data/llms/headless/components/inplace.md +153 -0
  62. package/data/llms/headless/components/inputcolor/api.json +469 -0
  63. package/data/llms/headless/components/inputcolor.md +253 -0
  64. package/data/llms/headless/components/inputgroup/api.json +62 -0
  65. package/data/llms/headless/components/inputgroup.md +19 -0
  66. package/data/llms/headless/components/inputnumber/api.json +554 -0
  67. package/data/llms/headless/components/inputnumber.md +167 -0
  68. package/data/llms/headless/components/inputotp/api.json +276 -0
  69. package/data/llms/headless/components/inputotp.md +130 -0
  70. package/data/llms/headless/components/inputpassword/api.json +180 -0
  71. package/data/llms/headless/components/inputpassword.md +117 -0
  72. package/data/llms/headless/components/inputtags/api.json +497 -0
  73. package/data/llms/headless/components/inputtags.md +298 -0
  74. package/data/llms/headless/components/inputtext/api.json +81 -0
  75. package/data/llms/headless/components/inputtext.md +109 -0
  76. package/data/llms/headless/components/knob/api.json +429 -0
  77. package/data/llms/headless/components/knob.md +151 -0
  78. package/data/llms/headless/components/label/api.json +62 -0
  79. package/data/llms/headless/components/label.md +19 -0
  80. package/data/llms/headless/components/listbox/api.json +814 -0
  81. package/data/llms/headless/components/listbox.md +194 -0
  82. package/data/llms/headless/components/menu/api.json +1247 -0
  83. package/data/llms/headless/components/menu.md +283 -0
  84. package/data/llms/headless/components/message/api.json +131 -0
  85. package/data/llms/headless/components/message.md +143 -0
  86. package/data/llms/headless/components/metergroup/api.json +266 -0
  87. package/data/llms/headless/components/metergroup.md +129 -0
  88. package/data/llms/headless/components/motion/api.json +237 -0
  89. package/data/llms/headless/components/motion.md +160 -0
  90. package/data/llms/headless/components/navigationmenu/api.json +220 -0
  91. package/data/llms/headless/components/navigationmenu.md +166 -0
  92. package/data/llms/headless/components/orderlist/api.json +196 -0
  93. package/data/llms/headless/components/orderlist.md +221 -0
  94. package/data/llms/headless/components/organizationchart/api.json +372 -0
  95. package/data/llms/headless/components/organizationchart.md +254 -0
  96. package/data/llms/headless/components/paginator/api.json +311 -0
  97. package/data/llms/headless/components/paginator.md +187 -0
  98. package/data/llms/headless/components/panel/api.json +195 -0
  99. package/data/llms/headless/components/panel.md +150 -0
  100. package/data/llms/headless/components/picklist/api.json +293 -0
  101. package/data/llms/headless/components/picklist.md +270 -0
  102. package/data/llms/headless/components/popover/api.json +405 -0
  103. package/data/llms/headless/components/popover.md +301 -0
  104. package/data/llms/headless/components/portal/api.json +56 -0
  105. package/data/llms/headless/components/portal.md +102 -0
  106. package/data/llms/headless/components/positioner/api.json +165 -0
  107. package/data/llms/headless/components/positioner.md +181 -0
  108. package/data/llms/headless/components/progressbar/api.json +87 -0
  109. package/data/llms/headless/components/progressbar.md +122 -0
  110. package/data/llms/headless/components/progressspinner/api.json +337 -0
  111. package/data/llms/headless/components/progressspinner.md +128 -0
  112. package/data/llms/headless/components/radiobutton/api.json +569 -0
  113. package/data/llms/headless/components/radiobutton.md +195 -0
  114. package/data/llms/headless/components/rating/api.json +347 -0
  115. package/data/llms/headless/components/rating.md +181 -0
  116. package/data/llms/headless/components/scrollarea/api.json +730 -0
  117. package/data/llms/headless/components/scrollarea.md +232 -0
  118. package/data/llms/headless/components/select/api.json +829 -0
  119. package/data/llms/headless/components/select.md +262 -0
  120. package/data/llms/headless/components/sidebar/api.json +433 -0
  121. package/data/llms/headless/components/sidebar.md +266 -0
  122. package/data/llms/headless/components/skeleton/api.json +68 -0
  123. package/data/llms/headless/components/skeleton.md +95 -0
  124. package/data/llms/headless/components/slider/api.json +559 -0
  125. package/data/llms/headless/components/slider.md +158 -0
  126. package/data/llms/headless/components/speeddial/api.json +459 -0
  127. package/data/llms/headless/components/speeddial.md +181 -0
  128. package/data/llms/headless/components/splitter/api.json +582 -0
  129. package/data/llms/headless/components/splitter.md +159 -0
  130. package/data/llms/headless/components/stepper/api.json +385 -0
  131. package/data/llms/headless/components/stepper.md +183 -0
  132. package/data/llms/headless/components/styleclass/api.json +134 -0
  133. package/data/llms/headless/components/styleclass.md +129 -0
  134. package/data/llms/headless/components/tabs/api.json +336 -0
  135. package/data/llms/headless/components/tabs.md +158 -0
  136. package/data/llms/headless/components/tag/api.json +62 -0
  137. package/data/llms/headless/components/tag.md +121 -0
  138. package/data/llms/headless/components/terminal/api.json +117 -0
  139. package/data/llms/headless/components/terminal.md +183 -0
  140. package/data/llms/headless/components/textarea/api.json +81 -0
  141. package/data/llms/headless/components/textarea.md +110 -0
  142. package/data/llms/headless/components/timeline/api.json +270 -0
  143. package/data/llms/headless/components/timeline.md +117 -0
  144. package/data/llms/headless/components/toast/api.json +455 -0
  145. package/data/llms/headless/components/toast.md +277 -0
  146. package/data/llms/headless/components/togglebutton/api.json +357 -0
  147. package/data/llms/headless/components/togglebutton.md +183 -0
  148. package/data/llms/headless/components/toggleswitch/api.json +326 -0
  149. package/data/llms/headless/components/toggleswitch.md +164 -0
  150. package/data/llms/headless/components/toolbar/api.json +68 -0
  151. package/data/llms/headless/components/toolbar.md +96 -0
  152. package/data/llms/headless/components/tooltip/api.json +478 -0
  153. package/data/llms/headless/components/tooltip.md +233 -0
  154. package/data/llms/headless/components/tree/api.json +1297 -0
  155. package/data/llms/headless/components/tree.md +297 -0
  156. package/data/llms/headless/components/treetable/api.json +1680 -0
  157. package/data/llms/headless/components/treetable.md +177 -0
  158. package/data/llms/headless/guides/ai/llms.md +25 -0
  159. package/data/llms/headless/guides/installation.md +126 -0
  160. package/data/llms/headless/guides/introduction.md +20 -0
  161. package/data/llms/headless/guides/misc/accessibility.md +228 -0
  162. package/data/llms/headless/llms.md +25 -0
  163. package/data/llms/headless/resources/introduction.md +15 -0
  164. package/data/llms/hooks/gettingstarted/introduction.md +34 -0
  165. package/data/llms/hooks/gettingstarted/setup.md +54 -0
  166. package/data/llms/hooks/use-attr-selector.md +25 -0
  167. package/data/llms/hooks/use-controlled-state.md +31 -0
  168. package/data/llms/hooks/use-event-listener.md +37 -0
  169. package/data/llms/hooks/use-filter.md +312 -0
  170. package/data/llms/hooks/use-hot-key.md +40 -0
  171. package/data/llms/hooks/use-id.md +24 -0
  172. package/data/llms/hooks/use-intersection-observer.md +42 -0
  173. package/data/llms/hooks/use-is-mobile.md +24 -0
  174. package/data/llms/hooks/use-key-filter.md +139 -0
  175. package/data/llms/hooks/use-local-storage.md +28 -0
  176. package/data/llms/hooks/use-mask.md +53 -0
  177. package/data/llms/hooks/use-match-media.md +28 -0
  178. package/data/llms/hooks/use-mount-effect.md +25 -0
  179. package/data/llms/hooks/use-mounted.md +36 -0
  180. package/data/llms/hooks/use-number-formatter.md +48 -0
  181. package/data/llms/hooks/use-presence.md +44 -0
  182. package/data/llms/hooks/use-previous.md +28 -0
  183. package/data/llms/hooks/use-props.md +37 -0
  184. package/data/llms/hooks/use-queue-task.md +29 -0
  185. package/data/llms/hooks/use-scrolltop.md +87 -0
  186. package/data/llms/hooks/use-sortable-list.md +226 -0
  187. package/data/llms/hooks/use-tree-filter.md +216 -0
  188. package/data/llms/hooks/use-unmount-effect.md +23 -0
  189. package/data/llms/hooks/use-update-effect.md +27 -0
  190. package/data/llms/hooks/use-view-transition.md +31 -0
  191. package/data/llms/hooks/use-visibility-change.md +30 -0
  192. package/data/llms/llms-full.txt +125291 -0
  193. package/data/llms/llms.txt +379 -0
  194. package/data/llms/manifest.json +12409 -0
  195. package/data/llms/mcp-data.json +14481 -0
  196. package/data/llms/primitive/add-ons/introduction.md +16 -0
  197. package/data/llms/primitive/components/accordion/api.json +1411 -0
  198. package/data/llms/primitive/components/accordion.md +231 -0
  199. package/data/llms/primitive/components/animateonscroll/api.json +193 -0
  200. package/data/llms/primitive/components/animateonscroll.md +91 -0
  201. package/data/llms/primitive/components/autocomplete/api.json +3167 -0
  202. package/data/llms/primitive/components/autocomplete.md +344 -0
  203. package/data/llms/primitive/components/avatar/api.json +703 -0
  204. package/data/llms/primitive/components/avatar.md +134 -0
  205. package/data/llms/primitive/components/badge/api.json +363 -0
  206. package/data/llms/primitive/components/badge.md +118 -0
  207. package/data/llms/primitive/components/breadcrumb/api.json +1162 -0
  208. package/data/llms/primitive/components/breadcrumb.md +196 -0
  209. package/data/llms/primitive/components/button/api.json +246 -0
  210. package/data/llms/primitive/components/button.md +114 -0
  211. package/data/llms/primitive/components/buttongroup/api.json +168 -0
  212. package/data/llms/primitive/components/buttongroup.md +43 -0
  213. package/data/llms/primitive/components/card/api.json +1252 -0
  214. package/data/llms/primitive/components/card.md +159 -0
  215. package/data/llms/primitive/components/carousel/api.json +1374 -0
  216. package/data/llms/primitive/components/carousel.md +220 -0
  217. package/data/llms/primitive/components/checkbox/api.json +697 -0
  218. package/data/llms/primitive/components/checkbox.md +160 -0
  219. package/data/llms/primitive/components/checkboxgroup/api.json +252 -0
  220. package/data/llms/primitive/components/checkboxgroup.md +58 -0
  221. package/data/llms/primitive/components/chip/api.json +853 -0
  222. package/data/llms/primitive/components/chip.md +135 -0
  223. package/data/llms/primitive/components/collapsible/api.json +581 -0
  224. package/data/llms/primitive/components/collapsible.md +133 -0
  225. package/data/llms/primitive/components/compare/api.json +909 -0
  226. package/data/llms/primitive/components/compare.md +156 -0
  227. package/data/llms/primitive/components/contextmenu/api.json +3454 -0
  228. package/data/llms/primitive/components/contextmenu.md +483 -0
  229. package/data/llms/primitive/components/datatable/api.json +7832 -0
  230. package/data/llms/primitive/components/datatable.md +561 -0
  231. package/data/llms/primitive/components/dataview/api.json +819 -0
  232. package/data/llms/primitive/components/dataview.md +163 -0
  233. package/data/llms/primitive/components/datepicker/api.json +9055 -0
  234. package/data/llms/primitive/components/datepicker.md +760 -0
  235. package/data/llms/primitive/components/dialog/api.json +2491 -0
  236. package/data/llms/primitive/components/dialog.md +276 -0
  237. package/data/llms/primitive/components/divider/api.json +214 -0
  238. package/data/llms/primitive/components/divider.md +96 -0
  239. package/data/llms/primitive/components/drawer/api.json +1879 -0
  240. package/data/llms/primitive/components/drawer.md +220 -0
  241. package/data/llms/primitive/components/fieldset/api.json +1116 -0
  242. package/data/llms/primitive/components/fieldset.md +183 -0
  243. package/data/llms/primitive/components/fileupload/api.json +2445 -0
  244. package/data/llms/primitive/components/fileupload.md +282 -0
  245. package/data/llms/primitive/components/floatlabel/api.json +176 -0
  246. package/data/llms/primitive/components/floatlabel.md +47 -0
  247. package/data/llms/primitive/components/focustrap/api.json +241 -0
  248. package/data/llms/primitive/components/focustrap.md +93 -0
  249. package/data/llms/primitive/components/gallery/api.json +3622 -0
  250. package/data/llms/primitive/components/gallery.md +387 -0
  251. package/data/llms/primitive/components/iconfield/api.json +322 -0
  252. package/data/llms/primitive/components/iconfield.md +53 -0
  253. package/data/llms/primitive/components/iftalabel/api.json +177 -0
  254. package/data/llms/primitive/components/iftalabel.md +47 -0
  255. package/data/llms/primitive/components/inplace/api.json +783 -0
  256. package/data/llms/primitive/components/inplace.md +141 -0
  257. package/data/llms/primitive/components/inputcolor/api.json +2211 -0
  258. package/data/llms/primitive/components/inputcolor.md +295 -0
  259. package/data/llms/primitive/components/inputnumber/api.json +469 -0
  260. package/data/llms/primitive/components/inputnumber.md +99 -0
  261. package/data/llms/primitive/components/inputotp/api.json +469 -0
  262. package/data/llms/primitive/components/inputotp.md +121 -0
  263. package/data/llms/primitive/components/inputpassword/api.json +278 -0
  264. package/data/llms/primitive/components/inputpassword.md +84 -0
  265. package/data/llms/primitive/components/inputtags/api.json +407 -0
  266. package/data/llms/primitive/components/inputtags.md +243 -0
  267. package/data/llms/primitive/components/inputtext/api.json +207 -0
  268. package/data/llms/primitive/components/inputtext.md +81 -0
  269. package/data/llms/primitive/components/knob/api.json +841 -0
  270. package/data/llms/primitive/components/knob.md +148 -0
  271. package/data/llms/primitive/components/label/api.json +177 -0
  272. package/data/llms/primitive/components/label.md +44 -0
  273. package/data/llms/primitive/components/listbox/api.json +1741 -0
  274. package/data/llms/primitive/components/listbox.md +206 -0
  275. package/data/llms/primitive/components/menu/api.json +3836 -0
  276. package/data/llms/primitive/components/menu.md +479 -0
  277. package/data/llms/primitive/components/message/api.json +863 -0
  278. package/data/llms/primitive/components/message.md +151 -0
  279. package/data/llms/primitive/components/metergroup/api.json +1222 -0
  280. package/data/llms/primitive/components/metergroup.md +209 -0
  281. package/data/llms/primitive/components/motion.md +112 -0
  282. package/data/llms/primitive/components/navigationmenu/api.json +298 -0
  283. package/data/llms/primitive/components/navigationmenu.md +184 -0
  284. package/data/llms/primitive/components/organizationchart.md +133 -0
  285. package/data/llms/primitive/components/paginator/api.json +1637 -0
  286. package/data/llms/primitive/components/paginator.md +223 -0
  287. package/data/llms/primitive/components/panel/api.json +1270 -0
  288. package/data/llms/primitive/components/panel.md +186 -0
  289. package/data/llms/primitive/components/popover/api.json +2281 -0
  290. package/data/llms/primitive/components/popover.md +277 -0
  291. package/data/llms/primitive/components/portal/api.json +176 -0
  292. package/data/llms/primitive/components/portal.md +79 -0
  293. package/data/llms/primitive/components/progressbar/api.json +857 -0
  294. package/data/llms/primitive/components/progressbar.md +153 -0
  295. package/data/llms/primitive/components/progressspinner/api.json +725 -0
  296. package/data/llms/primitive/components/progressspinner.md +133 -0
  297. package/data/llms/primitive/components/radiobutton/api.json +929 -0
  298. package/data/llms/primitive/components/radiobutton.md +201 -0
  299. package/data/llms/primitive/components/rating/api.json +878 -0
  300. package/data/llms/primitive/components/rating.md +160 -0
  301. package/data/llms/primitive/components/scrollarea/api.json +1187 -0
  302. package/data/llms/primitive/components/scrollarea.md +255 -0
  303. package/data/llms/primitive/components/select/api.json +3167 -0
  304. package/data/llms/primitive/components/select.md +351 -0
  305. package/data/llms/primitive/components/sidebar/api.json +3699 -0
  306. package/data/llms/primitive/components/sidebar.md +444 -0
  307. package/data/llms/primitive/components/skeleton/api.json +213 -0
  308. package/data/llms/primitive/components/skeleton.md +80 -0
  309. package/data/llms/primitive/components/slider/api.json +1066 -0
  310. package/data/llms/primitive/components/slider.md +161 -0
  311. package/data/llms/primitive/components/speeddial/api.json +1002 -0
  312. package/data/llms/primitive/components/speeddial.md +197 -0
  313. package/data/llms/primitive/components/splitter/api.json +901 -0
  314. package/data/llms/primitive/components/splitter.md +137 -0
  315. package/data/llms/primitive/components/stepper/api.json +2102 -0
  316. package/data/llms/primitive/components/stepper.md +253 -0
  317. package/data/llms/primitive/components/styleclass.md +399 -0
  318. package/data/llms/primitive/components/tabs/api.json +1705 -0
  319. package/data/llms/primitive/components/tabs.md +200 -0
  320. package/data/llms/primitive/components/tag/api.json +189 -0
  321. package/data/llms/primitive/components/tag.md +100 -0
  322. package/data/llms/primitive/components/terminal/api.json +1709 -0
  323. package/data/llms/primitive/components/terminal.md +227 -0
  324. package/data/llms/primitive/components/textarea/api.json +213 -0
  325. package/data/llms/primitive/components/textarea.md +83 -0
  326. package/data/llms/primitive/components/timeline/api.json +1180 -0
  327. package/data/llms/primitive/components/timeline.md +185 -0
  328. package/data/llms/primitive/components/toast/api.json +2102 -0
  329. package/data/llms/primitive/components/toast.md +291 -0
  330. package/data/llms/primitive/components/togglebutton/api.json +433 -0
  331. package/data/llms/primitive/components/togglebutton.md +161 -0
  332. package/data/llms/primitive/components/togglebuttongroup/api.json +276 -0
  333. package/data/llms/primitive/components/togglebuttongroup.md +61 -0
  334. package/data/llms/primitive/components/toggleswitch/api.json +681 -0
  335. package/data/llms/primitive/components/toggleswitch.md +149 -0
  336. package/data/llms/primitive/components/toolbar/api.json +646 -0
  337. package/data/llms/primitive/components/toolbar.md +126 -0
  338. package/data/llms/primitive/components/tooltip/api.json +1534 -0
  339. package/data/llms/primitive/components/tooltip.md +202 -0
  340. package/data/llms/primitive/components/tree/api.json +2952 -0
  341. package/data/llms/primitive/components/tree.md +292 -0
  342. package/data/llms/primitive/components/treetable.md +187 -0
  343. package/data/llms/primitive/components/visuallyhidden/api.json +186 -0
  344. package/data/llms/primitive/components/visuallyhidden.md +87 -0
  345. package/data/llms/primitive/guides/ai/llms.md +25 -0
  346. package/data/llms/primitive/guides/icons/customicons.md +47 -0
  347. package/data/llms/primitive/guides/icons/primeicons.md +112 -0
  348. package/data/llms/primitive/guides/installation.md +115 -0
  349. package/data/llms/primitive/guides/introduction.md +20 -0
  350. package/data/llms/primitive/guides/misc/accessibility.md +215 -0
  351. package/data/llms/primitive/guides/misc/passthrough.md +95 -0
  352. package/data/llms/primitive/guides/misc/rtl.md +27 -0
  353. package/data/llms/primitive/llms.md +25 -0
  354. package/data/llms/primitive/resources/introduction.md +15 -0
  355. package/data/llms/styled/add-ons/introduction.md +16 -0
  356. package/data/llms/styled/components/accordion.md +735 -0
  357. package/data/llms/styled/components/animateonscroll.md +264 -0
  358. package/data/llms/styled/components/autocomplete.md +1597 -0
  359. package/data/llms/styled/components/avatar.md +313 -0
  360. package/data/llms/styled/components/badge.md +213 -0
  361. package/data/llms/styled/components/breadcrumb.md +461 -0
  362. package/data/llms/styled/components/button/api.json +246 -0
  363. package/data/llms/styled/components/button.md +641 -0
  364. package/data/llms/styled/components/buttongroup.md +614 -0
  365. package/data/llms/styled/components/card.md +228 -0
  366. package/data/llms/styled/components/carousel.md +388 -0
  367. package/data/llms/styled/components/checkbox.md +329 -0
  368. package/data/llms/styled/components/checkboxgroup.md +619 -0
  369. package/data/llms/styled/components/chip.md +300 -0
  370. package/data/llms/styled/components/compare.md +271 -0
  371. package/data/llms/styled/components/contextmenu.md +550 -0
  372. package/data/llms/styled/components/datatable.md +8259 -0
  373. package/data/llms/styled/components/dataview.md +907 -0
  374. package/data/llms/styled/components/datepicker.md +2807 -0
  375. package/data/llms/styled/components/dialog.md +1047 -0
  376. package/data/llms/styled/components/divider.md +207 -0
  377. package/data/llms/styled/components/drawer.md +470 -0
  378. package/data/llms/styled/components/fieldset.md +334 -0
  379. package/data/llms/styled/components/fileupload.md +747 -0
  380. package/data/llms/styled/components/floatlabel/api.json +210 -0
  381. package/data/llms/styled/components/floatlabel.md +231 -0
  382. package/data/llms/styled/components/fluid/api.json +204 -0
  383. package/data/llms/styled/components/fluid.md +177 -0
  384. package/data/llms/styled/components/focustrap.md +203 -0
  385. package/data/llms/styled/components/gallery.md +553 -0
  386. package/data/llms/styled/components/iconfield/api.json +382 -0
  387. package/data/llms/styled/components/iconfield.md +385 -0
  388. package/data/llms/styled/components/iftalabel/api.json +237 -0
  389. package/data/llms/styled/components/iftalabel.md +158 -0
  390. package/data/llms/styled/components/inplace.md +312 -0
  391. package/data/llms/styled/components/inputcolor.md +674 -0
  392. package/data/llms/styled/components/inputgroup/api.json +399 -0
  393. package/data/llms/styled/components/inputgroup.md +604 -0
  394. package/data/llms/styled/components/inputmask.md +282 -0
  395. package/data/llms/styled/components/inputnumber.md +563 -0
  396. package/data/llms/styled/components/inputotp.md +335 -0
  397. package/data/llms/styled/components/inputpassword.md +630 -0
  398. package/data/llms/styled/components/inputtags.md +727 -0
  399. package/data/llms/styled/components/inputtext.md +190 -0
  400. package/data/llms/styled/components/keyfilter.md +289 -0
  401. package/data/llms/styled/components/knob.md +305 -0
  402. package/data/llms/styled/components/label/api.json +237 -0
  403. package/data/llms/styled/components/label.md +224 -0
  404. package/data/llms/styled/components/listbox.md +807 -0
  405. package/data/llms/styled/components/menu.md +1175 -0
  406. package/data/llms/styled/components/message.md +570 -0
  407. package/data/llms/styled/components/metergroup.md +449 -0
  408. package/data/llms/styled/components/navigationmenu.md +926 -0
  409. package/data/llms/styled/components/orderlist.md +519 -0
  410. package/data/llms/styled/components/organizationchart/api.json +1457 -0
  411. package/data/llms/styled/components/organizationchart.md +791 -0
  412. package/data/llms/styled/components/overlaymanager.md +519 -0
  413. package/data/llms/styled/components/paginator.md +506 -0
  414. package/data/llms/styled/components/panel.md +394 -0
  415. package/data/llms/styled/components/picklist.md +1004 -0
  416. package/data/llms/styled/components/popover.md +372 -0
  417. package/data/llms/styled/components/progressbar.md +438 -0
  418. package/data/llms/styled/components/progressspinner.md +128 -0
  419. package/data/llms/styled/components/radiobutton.md +488 -0
  420. package/data/llms/styled/components/rating/api.json +766 -0
  421. package/data/llms/styled/components/rating.md +518 -0
  422. package/data/llms/styled/components/scrollarea.md +627 -0
  423. package/data/llms/styled/components/select.md +2122 -0
  424. package/data/llms/styled/components/sidebar.md +1587 -0
  425. package/data/llms/styled/components/skeleton.md +226 -0
  426. package/data/llms/styled/components/slider.md +453 -0
  427. package/data/llms/styled/components/speeddial.md +723 -0
  428. package/data/llms/styled/components/splitter.md +536 -0
  429. package/data/llms/styled/components/stepper.md +614 -0
  430. package/data/llms/styled/components/tabs.md +543 -0
  431. package/data/llms/styled/components/tag.md +263 -0
  432. package/data/llms/styled/components/terminal.md +543 -0
  433. package/data/llms/styled/components/textarea.md +257 -0
  434. package/data/llms/styled/components/timeline.md +620 -0
  435. package/data/llms/styled/components/toast.md +1013 -0
  436. package/data/llms/styled/components/togglebutton.md +287 -0
  437. package/data/llms/styled/components/togglebuttongroup.md +328 -0
  438. package/data/llms/styled/components/toggleswitch.md +262 -0
  439. package/data/llms/styled/components/toolbar.md +187 -0
  440. package/data/llms/styled/components/tooltip.md +430 -0
  441. package/data/llms/styled/components/tree.md +1386 -0
  442. package/data/llms/styled/components/treetable.md +6842 -0
  443. package/data/llms/styled/guides/ai/llms.md +25 -0
  444. package/data/llms/styled/guides/configuration.md +151 -0
  445. package/data/llms/styled/guides/icons/customicons.md +47 -0
  446. package/data/llms/styled/guides/icons/primeicons.md +112 -0
  447. package/data/llms/styled/guides/installation/astro.md +97 -0
  448. package/data/llms/styled/guides/installation/manual.md +3 -0
  449. package/data/llms/styled/guides/installation/nextjs.md +129 -0
  450. package/data/llms/styled/guides/installation/react-router.md +88 -0
  451. package/data/llms/styled/guides/installation/tanstack.md +92 -0
  452. package/data/llms/styled/guides/installation/vite.md +91 -0
  453. package/data/llms/styled/guides/installation.md +42 -0
  454. package/data/llms/styled/guides/introduction.md +20 -0
  455. package/data/llms/styled/guides/misc/accessibility.md +211 -0
  456. package/data/llms/styled/guides/misc/animations.md +389 -0
  457. package/data/llms/styled/guides/misc/passthrough.md +95 -0
  458. package/data/llms/styled/guides/misc/rtl.md +27 -0
  459. package/data/llms/styled/guides/theming/styled.md +779 -0
  460. package/data/llms/styled/guides/theming/tailwind.md +473 -0
  461. package/data/llms/styled/guides/theming/unstyled.md +115 -0
  462. package/data/llms/styled/resources/introduction.md +15 -0
  463. package/data/llms/tailwind/add-ons/introduction.md +16 -0
  464. package/data/llms/tailwind/components/accordion.md +383 -0
  465. package/data/llms/tailwind/components/autocomplete.md +1346 -0
  466. package/data/llms/tailwind/components/avatar.md +305 -0
  467. package/data/llms/tailwind/components/badge.md +207 -0
  468. package/data/llms/tailwind/components/breadcrumb.md +387 -0
  469. package/data/llms/tailwind/components/button/api.json +246 -0
  470. package/data/llms/tailwind/components/button.md +617 -0
  471. package/data/llms/tailwind/components/buttongroup.md +599 -0
  472. package/data/llms/tailwind/components/card.md +224 -0
  473. package/data/llms/tailwind/components/carousel.md +329 -0
  474. package/data/llms/tailwind/components/checkbox.md +179 -0
  475. package/data/llms/tailwind/components/checkboxgroup.md +279 -0
  476. package/data/llms/tailwind/components/chip.md +304 -0
  477. package/data/llms/tailwind/components/compare.md +295 -0
  478. package/data/llms/tailwind/components/contextmenu.md +415 -0
  479. package/data/llms/tailwind/components/datatable.md +4062 -0
  480. package/data/llms/tailwind/components/dataview.md +864 -0
  481. package/data/llms/tailwind/components/datepicker.md +823 -0
  482. package/data/llms/tailwind/components/dialog.md +1216 -0
  483. package/data/llms/tailwind/components/divider.md +205 -0
  484. package/data/llms/tailwind/components/drawer.md +500 -0
  485. package/data/llms/tailwind/components/fieldset.md +326 -0
  486. package/data/llms/tailwind/components/fluid.md +117 -0
  487. package/data/llms/tailwind/components/iconfield.md +197 -0
  488. package/data/llms/tailwind/components/inplace.md +324 -0
  489. package/data/llms/tailwind/components/inputcolor.md +493 -0
  490. package/data/llms/tailwind/components/inputgroup.md +375 -0
  491. package/data/llms/tailwind/components/inputnumber.md +463 -0
  492. package/data/llms/tailwind/components/inputotp.md +255 -0
  493. package/data/llms/tailwind/components/inputpassword.md +543 -0
  494. package/data/llms/tailwind/components/inputtext.md +141 -0
  495. package/data/llms/tailwind/components/label.md +100 -0
  496. package/data/llms/tailwind/components/listbox.md +886 -0
  497. package/data/llms/tailwind/components/menu.md +1049 -0
  498. package/data/llms/tailwind/components/message.md +575 -0
  499. package/data/llms/tailwind/components/metergroup.md +510 -0
  500. package/data/llms/tailwind/components/navigationmenu.md +528 -0
  501. package/data/llms/tailwind/components/overlaymanager.md +567 -0
  502. package/data/llms/tailwind/components/paginator.md +306 -0
  503. package/data/llms/tailwind/components/panel.md +395 -0
  504. package/data/llms/tailwind/components/popover.md +424 -0
  505. package/data/llms/tailwind/components/progressbar.md +313 -0
  506. package/data/llms/tailwind/components/radiobutton.md +366 -0
  507. package/data/llms/tailwind/components/rating.md +300 -0
  508. package/data/llms/tailwind/components/scrollarea.md +638 -0
  509. package/data/llms/tailwind/components/select.md +1220 -0
  510. package/data/llms/tailwind/components/sidebar.md +1511 -0
  511. package/data/llms/tailwind/components/skeleton.md +236 -0
  512. package/data/llms/tailwind/components/slider.md +291 -0
  513. package/data/llms/tailwind/components/splitter.md +546 -0
  514. package/data/llms/tailwind/components/tabs.md +462 -0
  515. package/data/llms/tailwind/components/tag.md +255 -0
  516. package/data/llms/tailwind/components/textarea.md +170 -0
  517. package/data/llms/tailwind/components/timeline.md +656 -0
  518. package/data/llms/tailwind/components/toast.md +246 -0
  519. package/data/llms/tailwind/components/togglebutton.md +264 -0
  520. package/data/llms/tailwind/components/togglebuttongroup.md +262 -0
  521. package/data/llms/tailwind/components/toggleswitch.md +203 -0
  522. package/data/llms/tailwind/components/toolbar.md +192 -0
  523. package/data/llms/tailwind/components/tooltip.md +449 -0
  524. package/data/llms/tailwind/guides/ai/llms.md +25 -0
  525. package/data/llms/tailwind/guides/icons/customicons.md +47 -0
  526. package/data/llms/tailwind/guides/icons/primeicons.md +112 -0
  527. package/data/llms/tailwind/guides/installation/astro.md +165 -0
  528. package/data/llms/tailwind/guides/installation/manual.md +3 -0
  529. package/data/llms/tailwind/guides/installation/nextjs.md +169 -0
  530. package/data/llms/tailwind/guides/installation/react-router.md +157 -0
  531. package/data/llms/tailwind/guides/installation/tanstack.md +161 -0
  532. package/data/llms/tailwind/guides/installation/vite.md +160 -0
  533. package/data/llms/tailwind/guides/installation.md +42 -0
  534. package/data/llms/tailwind/guides/introduction.md +20 -0
  535. package/data/llms/tailwind/guides/misc/accessibility.md +205 -0
  536. package/data/llms/tailwind/guides/misc/passthrough.md +95 -0
  537. package/data/llms/tailwind/guides/misc/rtl.md +27 -0
  538. package/data/llms/tailwind/guides/theming/guide.md +179 -0
  539. package/data/llms/tailwind/guides/theming.md +191 -0
  540. package/data/llms/tailwind/llms.md +25 -0
  541. package/data/llms/tailwind/resources/introduction.md +15 -0
  542. package/data/manifest.json +12409 -0
  543. package/data/mcp-data.json +14481 -0
  544. package/dist/index.d.ts +9 -0
  545. package/dist/index.js +2 -0
  546. package/package.json +61 -0
@@ -0,0 +1,311 @@
1
+ [
2
+ {
3
+ "name": "usePaginator",
4
+ "source": "apps/showcase/assets/apidoc/usepaginator.json",
5
+ "data": {
6
+ "description": "The usePaginator manages the state and functionality of a Paginator component.",
7
+ "interfaces": {
8
+ "UsePaginatorChangeEvent": {
9
+ "description": "Defines the change event object for usePaginator.",
10
+ "relatedProp": "",
11
+ "props": [
12
+ {
13
+ "name": "originalEvent",
14
+ "type": "SyntheticEvent<Element, Event>",
15
+ "default": "",
16
+ "description": "The original event that triggered the change."
17
+ },
18
+ {
19
+ "name": "value",
20
+ "type": "number",
21
+ "default": "",
22
+ "description": "The new page number."
23
+ }
24
+ ],
25
+ "methods": []
26
+ },
27
+ "UsePaginatorProps": {
28
+ "description": "Defines valid properties in usePaginator.",
29
+ "relatedProp": "",
30
+ "props": [
31
+ {
32
+ "name": "defaultPage",
33
+ "type": "number",
34
+ "default": "1",
35
+ "description": "Default page number."
36
+ },
37
+ {
38
+ "name": "page",
39
+ "type": "number",
40
+ "default": "",
41
+ "description": "Current page number (controlled)."
42
+ },
43
+ {
44
+ "name": "total",
45
+ "type": "number",
46
+ "default": "0",
47
+ "description": "Total number of items."
48
+ },
49
+ {
50
+ "name": "itemsPerPage",
51
+ "type": "number",
52
+ "default": "10",
53
+ "description": "Number of items per page."
54
+ },
55
+ {
56
+ "name": "onPageChange",
57
+ "type": "(event: UsePaginatorChangeEvent) => void",
58
+ "default": "",
59
+ "description": "Callback fired when the page changes."
60
+ },
61
+ {
62
+ "name": "siblings",
63
+ "type": "number",
64
+ "default": "2",
65
+ "description": "Number of sibling pages to show on each side of current page."
66
+ },
67
+ {
68
+ "name": "edges",
69
+ "type": "number",
70
+ "default": "1",
71
+ "description": "Number of edge pages to show at the beginning and end."
72
+ },
73
+ {
74
+ "name": "disabled",
75
+ "type": "boolean",
76
+ "default": "false",
77
+ "description": "Whether the paginator is disabled."
78
+ },
79
+ {
80
+ "name": "showEllipsis",
81
+ "type": "boolean",
82
+ "default": "true",
83
+ "description": "Whether to show ellipsis."
84
+ }
85
+ ],
86
+ "methods": []
87
+ },
88
+ "UsePaginatorState": {
89
+ "description": "Defines valid state in usePaginator.",
90
+ "relatedProp": "",
91
+ "props": [
92
+ {
93
+ "name": "activePage",
94
+ "type": "number",
95
+ "default": "",
96
+ "description": "Current active page number."
97
+ },
98
+ {
99
+ "name": "canPrev",
100
+ "type": "boolean",
101
+ "default": "",
102
+ "description": "Whether the previous page is available."
103
+ },
104
+ {
105
+ "name": "canNext",
106
+ "type": "boolean",
107
+ "default": "",
108
+ "description": "Whether the next page is available."
109
+ },
110
+ {
111
+ "name": "totalPages",
112
+ "type": "number",
113
+ "default": "",
114
+ "description": "Total number of pages."
115
+ }
116
+ ],
117
+ "methods": []
118
+ },
119
+ "UsePaginatorNavProps": {
120
+ "description": "Pre-built props for a paginator navigation button.",
121
+ "relatedProp": "",
122
+ "props": [
123
+ {
124
+ "name": "onClick",
125
+ "type": "() => void",
126
+ "default": "",
127
+ "description": "Click handler for the navigation button."
128
+ },
129
+ {
130
+ "name": "disabled",
131
+ "type": "boolean",
132
+ "default": "",
133
+ "description": "Whether the button is disabled."
134
+ },
135
+ {
136
+ "name": "aria-label",
137
+ "type": "string",
138
+ "default": "",
139
+ "description": "Accessible label for the navigation button."
140
+ },
141
+ {
142
+ "name": "data-disabled",
143
+ "type": "string",
144
+ "default": "",
145
+ "description": "Data attribute for disabled state."
146
+ }
147
+ ],
148
+ "methods": []
149
+ },
150
+ "UsePaginatorPagesProps": {
151
+ "description": "Pre-built props for the pages container element.",
152
+ "relatedProp": "",
153
+ "props": [
154
+ {
155
+ "name": "data-scope",
156
+ "type": "\"paginator\"",
157
+ "default": ""
158
+ },
159
+ {
160
+ "name": "data-part",
161
+ "type": "\"pages\"",
162
+ "default": ""
163
+ },
164
+ {
165
+ "name": "aria-label",
166
+ "type": "string",
167
+ "default": "",
168
+ "description": "Accessible label for the pages container."
169
+ }
170
+ ],
171
+ "methods": []
172
+ },
173
+ "UsePaginatorPageProps": {
174
+ "description": "Pre-built props for a paginator page button.",
175
+ "relatedProp": "",
176
+ "props": [
177
+ {
178
+ "name": "onClick",
179
+ "type": "() => void",
180
+ "default": "",
181
+ "description": "Click handler for the page button."
182
+ },
183
+ {
184
+ "name": "disabled",
185
+ "type": "boolean",
186
+ "default": "",
187
+ "description": "Whether the button is disabled."
188
+ },
189
+ {
190
+ "name": "aria-label",
191
+ "type": "string",
192
+ "default": "",
193
+ "description": "Accessible label for the page button."
194
+ },
195
+ {
196
+ "name": "aria-current",
197
+ "type": "\"page\"",
198
+ "default": "",
199
+ "description": "ARIA current page indicator."
200
+ },
201
+ {
202
+ "name": "data-active",
203
+ "type": "string",
204
+ "default": "",
205
+ "description": "Data attribute for active state."
206
+ },
207
+ {
208
+ "name": "data-disabled",
209
+ "type": "string",
210
+ "default": "",
211
+ "description": "Data attribute for disabled state."
212
+ }
213
+ ],
214
+ "methods": []
215
+ },
216
+ "UsePaginatorExposes": {
217
+ "description": "Defines the return type of usePaginator.",
218
+ "relatedProp": "",
219
+ "props": [
220
+ {
221
+ "name": "getAriaLabel",
222
+ "type": "(labelType: string) => string",
223
+ "default": "",
224
+ "description": "Returns the aria label for the given label type from locale config."
225
+ },
226
+ {
227
+ "name": "prev",
228
+ "type": "() => void",
229
+ "default": "",
230
+ "description": "Go to previous page."
231
+ },
232
+ {
233
+ "name": "next",
234
+ "type": "() => void",
235
+ "default": "",
236
+ "description": "Go to next page."
237
+ },
238
+ {
239
+ "name": "first",
240
+ "type": "() => void",
241
+ "default": "",
242
+ "description": "Go to first page."
243
+ },
244
+ {
245
+ "name": "last",
246
+ "type": "() => void",
247
+ "default": "",
248
+ "description": "Go to last page."
249
+ },
250
+ {
251
+ "name": "handlePage",
252
+ "type": "(page?: number) => void",
253
+ "default": "",
254
+ "description": "Set the current page."
255
+ },
256
+ {
257
+ "name": "pages",
258
+ "type": "PaginatorPageItem[]",
259
+ "default": "",
260
+ "description": "Pages array."
261
+ },
262
+ {
263
+ "name": "firstProps",
264
+ "type": "UsePaginatorNavProps",
265
+ "default": "",
266
+ "description": "Pre-built props for the first page button."
267
+ },
268
+ {
269
+ "name": "prevProps",
270
+ "type": "UsePaginatorNavProps",
271
+ "default": "",
272
+ "description": "Pre-built props for the previous page button."
273
+ },
274
+ {
275
+ "name": "nextProps",
276
+ "type": "UsePaginatorNavProps",
277
+ "default": "",
278
+ "description": "Pre-built props for the next page button."
279
+ },
280
+ {
281
+ "name": "lastProps",
282
+ "type": "UsePaginatorNavProps",
283
+ "default": "",
284
+ "description": "Pre-built props for the last page button."
285
+ },
286
+ {
287
+ "name": "pagesProps",
288
+ "type": "UsePaginatorPagesProps",
289
+ "default": "",
290
+ "description": "Pre-built props for the pages container."
291
+ },
292
+ {
293
+ "name": "getPageProps",
294
+ "type": "(value: number) => UsePaginatorPageProps",
295
+ "default": "",
296
+ "description": "Returns pre-built props for a specific page button."
297
+ }
298
+ ],
299
+ "methods": []
300
+ }
301
+ },
302
+ "types": {
303
+ "UsePaginatorInstance": {
304
+ "description": "Instance of usePaginator headless.",
305
+ "values": "HeadlessInstance<UsePaginatorProps, UsePaginatorState, UsePaginatorExposes>"
306
+ }
307
+ },
308
+ "variables": {}
309
+ }
310
+ }
311
+ ]
@@ -0,0 +1,187 @@
1
+ # usePaginator
2
+
3
+ Hook that manages pagination state, page calculations, and accessible navigation prop objects.
4
+
5
+ ```tsx
6
+ 'use client';
7
+
8
+ import { AngleDoubleLeft } from '@primeicons/react/angle-double-left';
9
+ import { AngleDoubleRight } from '@primeicons/react/angle-double-right';
10
+ import { AngleLeft } from '@primeicons/react/angle-left';
11
+ import { AngleRight } from '@primeicons/react/angle-right';
12
+ import { EllipsisH } from '@primeicons/react/ellipsis-h';
13
+ import { usePaginator } from '@primereact/headless/paginator';
14
+
15
+ export default function BasicDemo() {
16
+ const { rootProps, firstProps, prevProps, nextProps, lastProps, pagesProps, pages, getPageProps } = usePaginator({ total: 100, itemsPerPage: 5 });
17
+
18
+ return (
19
+ <nav {...rootProps} className="flex items-center justify-center gap-1">
20
+ <button
21
+ {...firstProps}
22
+ className="inline-flex items-center justify-center size-9 rounded-full border-0 bg-transparent text-surface-500 dark:text-surface-400 cursor-pointer select-none hover:bg-surface-100 dark:hover:bg-surface-800 disabled:opacity-60 disabled:pointer-events-none focus-visible:outline focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
23
+ >
24
+ <AngleDoubleLeft className="size-4" />
25
+ </button>
26
+ <button
27
+ {...prevProps}
28
+ className="inline-flex items-center justify-center size-9 rounded-full border-0 bg-transparent text-surface-500 dark:text-surface-400 cursor-pointer select-none hover:bg-surface-100 dark:hover:bg-surface-800 disabled:opacity-60 disabled:pointer-events-none focus-visible:outline focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
29
+ >
30
+ <AngleLeft className="size-4" />
31
+ </button>
32
+ <span {...pagesProps} className="flex items-center gap-1">
33
+ {pages.map((page, index) =>
34
+ page.type === 'page' ? (
35
+ <button
36
+ key={index}
37
+ {...getPageProps(page.value!)}
38
+ className="inline-flex items-center justify-center size-9 rounded-full border-0 bg-transparent text-surface-500 dark:text-surface-400 text-sm cursor-pointer select-none hover:bg-[var(--p-content-hover-background)] dark:hover:bg-surface-800 data-[active]:bg-[var(--p-highlight-background)] data-[active]:text-[var(--p-highlight-color)] data-[active]:hover:bg-[var(--p-highlight-background)] disabled:opacity-60 disabled:pointer-events-none focus-visible:outline focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
39
+ >
40
+ {page.value}
41
+ </button>
42
+ ) : (
43
+ <span key={index} className="inline-flex items-center justify-center size-9 text-surface-400 dark:text-surface-500">
44
+ <EllipsisH className="size-4" />
45
+ </span>
46
+ )
47
+ )}
48
+ </span>
49
+ <button
50
+ {...nextProps}
51
+ className="inline-flex items-center justify-center size-9 rounded-full border-0 bg-transparent text-surface-500 dark:text-surface-400 cursor-pointer select-none hover:bg-surface-100 dark:hover:bg-surface-800 disabled:opacity-60 disabled:pointer-events-none focus-visible:outline focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
52
+ >
53
+ <AngleRight className="size-4" />
54
+ </button>
55
+ <button
56
+ {...lastProps}
57
+ className="inline-flex items-center justify-center size-9 rounded-full border-0 bg-transparent text-surface-500 dark:text-surface-400 cursor-pointer select-none hover:bg-surface-100 dark:hover:bg-surface-800 disabled:opacity-60 disabled:pointer-events-none focus-visible:outline focus-visible:outline-1 focus-visible:outline-primary focus-visible:outline-offset-2"
58
+ >
59
+ <AngleDoubleRight className="size-4" />
60
+ </button>
61
+ </nav>
62
+ );
63
+ }
64
+ ```
65
+
66
+ ## Usage
67
+
68
+ ```tsx
69
+ import { usePaginator } from '@primereact/headless/paginator';
70
+ ```
71
+
72
+ ```tsx
73
+ const paginator = usePaginator({ total: 100, itemsPerPage: 10 });
74
+
75
+ <nav {...paginator.rootProps}>
76
+ <button {...paginator.firstProps}></button>
77
+ <button {...paginator.prevProps}></button>
78
+ <span {...paginator.pagesProps}>
79
+ {paginator.pages.map((page, i) => (
80
+ <button key={i} {...paginator.getPageProps(page.value!)}></button>
81
+ ```
82
+
83
+ `usePaginator` computes page ranges, ellipsis positions, and pre-built ARIA props for navigation buttons. See [Primitive](/docs/primitive/components/paginator) for a component-based API.
84
+
85
+ ## Features
86
+
87
+ - **Page range algorithm**, builds a compact list of buttons using `siblings`, `edges`, and automatic ellipsis insertion
88
+ - **Navigation prop objects**, `firstProps`, `prevProps`, `nextProps`, `lastProps`, and `getPageProps(page)` pre-wire clicks and disabled state
89
+ - **Controlled or uncontrolled**, use `page` / `onPageChange` for external state or `defaultPage` for internal state
90
+ - **Reactive state**, `state.activePage`, `state.totalPages`, `state.canPrev`, `state.canNext` for custom indicators and summaries
91
+ - **Iterable pages collection**, `pages` array with `type: 'page' | 'ellipsis'` entries for rendering any custom layout
92
+
93
+ ## Working with callbacks
94
+
95
+ ### onPageChange, controlled pagination
96
+
97
+ Pair `page` with `onPageChange` when pagination is driven by URL state, query params, or a parent store.
98
+
99
+ ```tsx
100
+ const [page, setPage] = React.useState(1);
101
+
102
+ const paginator = usePaginator({
103
+ page,
104
+ total: 100,
105
+ itemsPerPage: 10,
106
+ onPageChange: (e) => setPage(e.value)
107
+ });
108
+ ```
109
+
110
+ ### Tuning the page window
111
+
112
+ `siblings` controls how many buttons sit on either side of the active page; `edges` controls how many are pinned at the start and end. Disable `showEllipsis` to render all pages inline.
113
+
114
+ ```tsx
115
+ const paginator = usePaginator({
116
+ total: 100,
117
+ itemsPerPage: 5,
118
+ siblings: 2,
119
+ edges: 1
120
+ });
121
+ ```
122
+
123
+ ### Rendering pages with ellipsis gaps
124
+
125
+ Iterate `pages` and branch on `type` to render both page buttons and gap indicators.
126
+
127
+ ```tsx
128
+ paginator.pages.map((item, i) =>
129
+ item.type === 'page' ? (
130
+ <button key={i} {...paginator.getPageProps(item.value!)}>
131
+ {item.value}
132
+ </button>
133
+ ) : (
134
+ <span key={i}>...</span>
135
+ )
136
+ );
137
+ ```
138
+
139
+ ### Building a custom summary
140
+
141
+ Use reactive state to render text like "Page 3 of 10" or disable external controls in sync with the paginator.
142
+
143
+ ```tsx
144
+ const paginator = usePaginator({ total: 100, itemsPerPage: 10 });
145
+
146
+ <span>
147
+ Page {paginator.state.activePage} of {paginator.state.totalPages}
148
+ </span>;
149
+ ```
150
+
151
+ ### Syncing with a data source
152
+
153
+ Respond to page changes to fetch a new slice of data.
154
+
155
+ ```tsx
156
+ const paginator = usePaginator({
157
+ total,
158
+ itemsPerPage: 20,
159
+ onPageChange: (e) => fetchPage(e.value)
160
+ });
161
+ ```
162
+
163
+ ## Styling with data attributes
164
+
165
+ Prop objects include data attributes for styling active, disabled, and navigation states.
166
+
167
+ ```css
168
+ [data-active] {
169
+ background: var(--p-primary-color);
170
+ color: var(--p-primary-contrast-color);
171
+ }
172
+
173
+ [data-disabled] {
174
+ opacity: 0.5;
175
+ pointer-events: none;
176
+ }
177
+ ```
178
+
179
+ ## API
180
+
181
+ ### usePaginator
182
+
183
+ <DocTable name="usePaginator" category="api" />
184
+
185
+ ## Accessibility
186
+
187
+ Arrow keys move through page buttons, Home/End jump to first/last page, and Enter activates the focused page. See [Primitive](/docs/primitive/components/paginator#accessibility) for full WAI-ARIA compliance details.
@@ -0,0 +1,195 @@
1
+ [
2
+ {
3
+ "name": "usePanel",
4
+ "source": "apps/showcase/assets/apidoc/usepanel.json",
5
+ "data": {
6
+ "description": "The usePanel manages the state and functionality of a panel component.",
7
+ "interfaces": {
8
+ "UsePanelOpenChangeEvent": {
9
+ "description": "Event object for the onToggle callback.",
10
+ "relatedProp": "",
11
+ "extendedTypes": "UseCollapsibleOpenChangeEvent<E>",
12
+ "props": [
13
+ {
14
+ "name": "originalEvent",
15
+ "type": "E",
16
+ "default": "",
17
+ "description": "The original event that triggered the change."
18
+ },
19
+ {
20
+ "name": "value",
21
+ "type": "boolean",
22
+ "default": "",
23
+ "description": "The value of the collapsible."
24
+ }
25
+ ],
26
+ "methods": []
27
+ },
28
+ "UsePanelProps": {
29
+ "description": "Props for the usePanel hook.",
30
+ "relatedProp": "",
31
+ "extendedTypes": "Omit<UseCollapsibleProps, \"onOpenChange\">",
32
+ "props": [
33
+ {
34
+ "name": "open",
35
+ "type": "boolean",
36
+ "default": "false",
37
+ "description": "Controls the open state of the collapsible."
38
+ },
39
+ {
40
+ "name": "defaultOpen",
41
+ "type": "boolean",
42
+ "default": "false",
43
+ "description": "Defines the initial open state of the collapsible."
44
+ },
45
+ {
46
+ "name": "disabled",
47
+ "type": "boolean",
48
+ "default": "false",
49
+ "description": "When disabled, the component cannot be interacted with."
50
+ },
51
+ {
52
+ "name": "tabIndex",
53
+ "type": "number",
54
+ "default": "0",
55
+ "description": "Index of the element in tabbing order."
56
+ },
57
+ {
58
+ "name": "onOpen",
59
+ "type": "(event?: SyntheticEvent) => void",
60
+ "default": "",
61
+ "description": "Callback triggered when the content is opened."
62
+ },
63
+ {
64
+ "name": "onClose",
65
+ "type": "(event?: SyntheticEvent) => void",
66
+ "default": "",
67
+ "description": "Callback triggered when the content is closed."
68
+ },
69
+ {
70
+ "name": "onOpenChange",
71
+ "type": "(event: UsePanelOpenChangeEvent) => void",
72
+ "default": "",
73
+ "description": "Callback triggered when the content's toggle state changes."
74
+ }
75
+ ],
76
+ "methods": []
77
+ },
78
+ "UsePanelState": {
79
+ "description": "Defines valid state in usePanel.",
80
+ "relatedProp": "",
81
+ "extendedTypes": "UseCollapsibleState",
82
+ "props": [
83
+ {
84
+ "name": "open",
85
+ "type": "boolean",
86
+ "default": "",
87
+ "description": "Whether the collapsible content is open or not."
88
+ }
89
+ ],
90
+ "methods": []
91
+ },
92
+ "UsePanelIndicatorProps": {
93
+ "description": "Props for the panel indicator element.",
94
+ "relatedProp": "",
95
+ "props": [
96
+ {
97
+ "name": "data-scope",
98
+ "type": "string",
99
+ "default": "",
100
+ "description": "Component scope identifier."
101
+ },
102
+ {
103
+ "name": "data-part",
104
+ "type": "string",
105
+ "default": "",
106
+ "description": "Component part identifier."
107
+ },
108
+ {
109
+ "name": "data-open",
110
+ "type": "string",
111
+ "default": "",
112
+ "description": "Present when the panel is open."
113
+ },
114
+ {
115
+ "name": "data-closed",
116
+ "type": "string",
117
+ "default": "",
118
+ "description": "Present when the panel is closed."
119
+ }
120
+ ],
121
+ "methods": []
122
+ },
123
+ "UsePanelExposes": {
124
+ "description": "Defines the methods and properties exposed by usePanel.",
125
+ "relatedProp": "",
126
+ "extendedTypes": "Omit<UseCollapsibleExposes, \"state\">",
127
+ "props": [
128
+ {
129
+ "name": "open",
130
+ "type": "(event?: SyntheticEvent) => void",
131
+ "default": "",
132
+ "description": "The method to open the collapsible content."
133
+ },
134
+ {
135
+ "name": "close",
136
+ "type": "(event?: SyntheticEvent) => void",
137
+ "default": "",
138
+ "description": "The method to close the collapsible content."
139
+ },
140
+ {
141
+ "name": "toggle",
142
+ "type": "(event?: SyntheticEvent) => void",
143
+ "default": "",
144
+ "description": "The method to toggle the collapsible content."
145
+ },
146
+ {
147
+ "name": "rootProps",
148
+ "type": "UseCollapsibleRootProps",
149
+ "default": "",
150
+ "description": "Pre-built data attribute props for the root element.\nIncludes data-disabled, data-open/closed."
151
+ },
152
+ {
153
+ "name": "triggerProps",
154
+ "type": "UseCollapsibleTriggerProps",
155
+ "default": "",
156
+ "description": "Pre-built props for the trigger element.\nIncludes type, ARIA, data attributes, and onClick handler."
157
+ },
158
+ {
159
+ "name": "contentProps",
160
+ "type": "UseCollapsibleContentProps",
161
+ "default": "",
162
+ "description": "Pre-built props for the content element.\nIncludes id, role, ARIA, and data attributes."
163
+ },
164
+ {
165
+ "name": "state",
166
+ "type": "UsePanelState",
167
+ "default": "",
168
+ "description": "The state of the usePanel."
169
+ },
170
+ {
171
+ "name": "indicatorProps",
172
+ "type": "UsePanelIndicatorProps",
173
+ "default": "",
174
+ "description": "Pre-built props for the indicator element.\nIncludes data-open/closed attributes."
175
+ },
176
+ {
177
+ "name": "onTriggerClick",
178
+ "type": "(event?: SyntheticEvent) => void",
179
+ "default": "",
180
+ "description": "Callback to be invoked when the trigger is clicked."
181
+ }
182
+ ],
183
+ "methods": []
184
+ }
185
+ },
186
+ "types": {
187
+ "UsePanelInstance": {
188
+ "description": "Instance of usePanel headless.",
189
+ "values": "HeadlessInstance<UsePanelProps, UsePanelState, UsePanelExposes>"
190
+ }
191
+ },
192
+ "variables": {}
193
+ }
194
+ }
195
+ ]