@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,561 @@
1
+ # DataTable
2
+
3
+ An unstyled data table with sort, filter, pagination, selection, expansion, editing, column reorder/resize, row reorder, grouping, frozen sections, CSV export, and tree mode.
4
+
5
+ <DocPrimitiveIntro description="Compose a fully custom table with complete control over markup, layout, and styling. Every feature is opt-in and driven by data attributes." />
6
+
7
+ ```tsx
8
+ 'use client';
9
+ import { ProductService, type Product } from '@/shared/services/product.service';
10
+ import { DataTable } from 'primereact/datatable';
11
+ import * as React from 'react';
12
+
13
+ const cellStyle: React.CSSProperties = { padding: '0.5rem 0.75rem' };
14
+ const headStyle: React.CSSProperties = { ...cellStyle, textAlign: 'left', fontWeight: 600, borderBottom: '1px solid var(--p-content-border-color)' };
15
+ const rowStyle: React.CSSProperties = { borderBottom: '1px solid var(--p-content-border-color)' };
16
+
17
+ export default function BasicDemo() {
18
+ const [products, setProducts] = React.useState<Product[]>([]);
19
+
20
+ React.useEffect(() => {
21
+ setProducts(ProductService.getProductsData().slice(0, 6));
22
+ }, []);
23
+
24
+ return (
25
+ <div style={{ width: '100%' }}>
26
+ <DataTable.Root data={products} dataKey="id">
27
+ <DataTable.TableContainer>
28
+ <DataTable.Table style={{ width: '100%', borderCollapse: 'collapse' }}>
29
+ <DataTable.THead>
30
+ <DataTable.THeadRow>
31
+ <DataTable.THeadCell style={headStyle}>Code</DataTable.THeadCell>
32
+ <DataTable.THeadCell style={headStyle}>Name</DataTable.THeadCell>
33
+ <DataTable.THeadCell style={headStyle}>Category</DataTable.THeadCell>
34
+ <DataTable.THeadCell style={headStyle}>Price</DataTable.THeadCell>
35
+ </DataTable.THeadRow>
36
+ </DataTable.THead>
37
+ <DataTable.TBody>
38
+ {({ item }: { item: Record<string, unknown> }) => (
39
+ <DataTable.Row style={rowStyle}>
40
+ <DataTable.Cell style={cellStyle}>{String(item.code)}</DataTable.Cell>
41
+ <DataTable.Cell style={cellStyle}>{String(item.name)}</DataTable.Cell>
42
+ <DataTable.Cell style={cellStyle}>{String(item.category)}</DataTable.Cell>
43
+ <DataTable.Cell style={cellStyle}>${String(item.price)}</DataTable.Cell>
44
+ </DataTable.Row>
45
+ )}
46
+ </DataTable.TBody>
47
+ </DataTable.Table>
48
+ </DataTable.TableContainer>
49
+ </DataTable.Root>
50
+ </div>
51
+ );
52
+ }
53
+ ```
54
+
55
+ <DocPrimitiveLinks name="DataTable" />
56
+
57
+ ## Features
58
+
59
+ - Compound component API with sub-components: `Root`, `Header`, `TableContainer`, `Table`, `THead`, `THeadRow`, `THeadCell`, `TBody`, `FrozenTBody`, `Row`, `Cell`, `TFoot`, `TFootRow`, `TFootCell`, `Footer`, `Sort`, `SortIndicator`, `SortOrder`, `Filter`, `Pagination`, `Selection`, `RowToggle`, `RowToggleIndicator`, `RowExpansion`, `RowGroupHeader`, `RowGroupFooter`, `CellEditor`, `CellEditorDisplay`, `CellEditorContent`, `RowEditor`, `RowEditorInit`, `RowEditorSave`, `RowEditorCancel`, `ColumnToggle`, `ColumnReorder`, `ColumnReorderTarget`, `ColumnResizer`, `ColumnResizeIndicator`, `RowReorder`, `Export`, `Loading`, `EmptyTBody`
60
+ - Sort (single, multi, removable), row and menu filters per column, plus a global filter across selected fields
61
+ - Pagination with built-in slicing or lazy mode
62
+ - Selection in single, multiple checkbox, multiple row, or radio modes; Shift for range, Ctrl/Meta to add or remove
63
+ - Cell or row editing with Tab traversal, outside-click commit, and Escape cancel
64
+ - Column reorder, column resize (`fit` or `expand`), and row reorder via drag handles
65
+ - Frozen left and right columns via the `frozen` prop on `Cell` and `THeadCell`
66
+ - Tree mode reuses the same components; flip `treeMode` on `Root` and feed it `{ key, data, children? }` nodes
67
+ - CSV export with custom fields and headers
68
+
69
+ ## Usage
70
+
71
+ ```tsx
72
+ import { DataTable } from 'primereact/datatable';
73
+ ```
74
+
75
+ ```tsx
76
+ <DataTable.Root data={products} dataKey="id">
77
+ <DataTable.TableContainer>
78
+ <DataTable.Table>
79
+ <DataTable.THead>
80
+ <DataTable.THeadRow>
81
+ <DataTable.THeadCell>Name</DataTable.THeadCell>
82
+ <DataTable.THeadCell>Category</DataTable.THeadCell>
83
+ </DataTable.THeadRow>
84
+ </DataTable.THead>
85
+ <DataTable.TBody>
86
+ {({ item }) => (
87
+ <DataTable.Row>
88
+ <DataTable.Cell>{item.name}</DataTable.Cell>
89
+ <DataTable.Cell>{item.category}</DataTable.Cell>
90
+ </DataTable.Row>
91
+ )}
92
+ </DataTable.TBody>
93
+ </DataTable.Table>
94
+ </DataTable.TableContainer>
95
+ </DataTable.Root>
96
+ ```
97
+
98
+ ## Behavior
99
+
100
+ ### Render Function Children
101
+
102
+ `DataTable.TBody` accepts a render function that receives `{ item, index, groupMeta }` for each row. Stateful sub-components (`Selection`, `Pagination`, `Filter`, `Sort`, `RowToggle`, `CellEditor`) also expose render-prop slot context so you can read live state and call exposed methods.
103
+
104
+ ```tsx
105
+ <DataTable.Sort field="price">{({ isSorted, sortOrder }) => <span>Price {isSorted ? (sortOrder === 1 ? '↑' : '↓') : ''}</span>}</DataTable.Sort>
106
+ ```
107
+
108
+ ### Polymorphic Rendering
109
+
110
+ Use `as` on any sub-component to swap the underlying element or render through another component (e.g. a styled `Button` for `Sort` triggers).
111
+
112
+ ```tsx
113
+ <DataTable.RowEditorInit as={Button} variant="text" />
114
+ ```
115
+
116
+ ### Sort
117
+
118
+ Wrap header content in `DataTable.Sort` and provide `field`. Hold Ctrl / Cmd while clicking to multi-sort. Enable `removableSort` on `Root` for tri-state click cycles.
119
+
120
+ ```tsx
121
+ <DataTable.THeadCell>
122
+ <DataTable.Sort field="price">
123
+ Price <DataTable.SortIndicator match="asc">↑</DataTable.SortIndicator>
124
+ </DataTable.Sort>
125
+ </DataTable.THeadCell>
126
+ ```
127
+
128
+ ### Filter
129
+
130
+ Render `DataTable.Filter` for each filterable column and a separate keyword input bound to `globalFilter`. Use `display="row"` for inline filters that apply on every change, or `display="menu"` for an overlay with multiple constraints, AND/OR operators, and explicit Apply / Clear.
131
+
132
+ ```tsx
133
+ <DataTable.Filter field="name" display="row" dataType="text">
134
+ {({ value, onChange }) => <input value={value ?? ''} onChange={(e) => onChange(e, e.target.value)} />}
135
+ </DataTable.Filter>
136
+ ```
137
+
138
+ ### Selection
139
+
140
+ Set `selectionMode` on `Root` to `'single'` or `'multiple'` and wrap each cell or header trigger in `DataTable.Selection`. The slot context exposes `isSelected` / `toggle` for rows and `isAllSelected` / `isSomeSelected` / `toggleAll` for headers.
141
+
142
+ ```tsx
143
+ <DataTable.Selection>{({ isSelected, toggle }) => <Checkbox checked={isSelected} onCheckedChange={toggle} />}</DataTable.Selection>
144
+ ```
145
+
146
+ ### Expansion & Tree Mode
147
+
148
+ `DataTable.RowToggle` reads expansion state automatically and renders a leaf-spacer in tree mode when a row has no children, so indentation stays aligned. Setting `treeMode` on `Root` flips the table to `role="treegrid"` and stamps tree ARIA on every row.
149
+
150
+ ```tsx
151
+ <DataTable.Root treeMode dataKey="key" data={nodes}>
152
+ {/* same Table / THead / TBody markup; rows now indent automatically */}
153
+ </DataTable.Root>
154
+ ```
155
+
156
+ ### Cell and Row Editing
157
+
158
+ Wrap each editable cell in `DataTable.CellEditor` with `field` / `rowIndex` / `rowData`, and supply two slots: `Display` (read mode) and `Content` (edit mode). When `editMode="row"`, replace the per-cell switch with `RowEditor.Init` / `Save` / `Cancel` triggers in a dedicated cell.
159
+
160
+ ```tsx
161
+ <DataTable.CellEditor field="price" rowIndex={index} rowData={item}>
162
+ <DataTable.CellEditorDisplay>{item.price}</DataTable.CellEditorDisplay>
163
+ <DataTable.CellEditorContent>
164
+ <input defaultValue={item.price} />
165
+ </DataTable.CellEditorContent>
166
+ </DataTable.CellEditor>
167
+ ```
168
+
169
+ ### Column Reorder & Resize
170
+
171
+ Set `reorderableColumns` on `Root` and add a `DataTable.ColumnReorder` handle inside each `THeadCell`. For resizing, set `resizableColumns` and drop a `DataTable.ColumnResizer` inside the header, pair it with `ColumnResizeIndicator` for a live drag line.
172
+
173
+ ### Row Reorder
174
+
175
+ Set `reorderableRows` on `Root` and add a `DataTable.RowReorder` handle in a row cell. The hook arms the surrounding `<tr>` as the drag source on pointer-down and emits `onRowReorder` with the new array.
176
+
177
+ ### Pagination
178
+
179
+ Render `DataTable.Pagination` anywhere below the table; it acts as a render-prop wrapper that exposes `page`, `pageCount`, `rows`, `totalRecords`, `first`, `canPrev`, `canNext`, `onPageChange`, and `onRowsChange`.
180
+
181
+ ```tsx
182
+ <DataTable.Pagination>{({ page, pageCount, onPageChange }) => <div>{/* custom paginator UI */}</div>}</DataTable.Pagination>
183
+ ```
184
+
185
+ ## Pass Through
186
+
187
+ <DocPTViewer name="datatable-pt" components={['DataTableRoot']} />
188
+
189
+ ## API
190
+
191
+ ### DataTableRoot
192
+
193
+ <DocTable name="DataTableRoot" category="api" />
194
+
195
+ | Attribute | Value |
196
+ | -------------------------- | ------------------------------------------- |
197
+ | `data-scope` | `"datatable"` |
198
+ | `data-part` | `"root"` |
199
+ | `data-loading` | Present while loading |
200
+ | `data-row-hover` | Present when `rowHover` is true |
201
+ | `data-highlight-on-select` | Present when selected rows should highlight |
202
+ | `data-selection-mode` | `"single"` \| `"multiple"` |
203
+ | `data-size` | `"small"` \| `"large"` |
204
+ | `data-striped-rows` | Present when `stripedRows` is true |
205
+ | `data-show-gridlines` | Present when `showGridlines` is true |
206
+
207
+ <DocTable name="DataTableRoot" category="pt" />
208
+
209
+ ### DataTableHeader
210
+
211
+ <DocTable name="DataTableHeader" category="api" />
212
+
213
+ <DocTable name="DataTableHeader" category="pt" />
214
+
215
+ ### DataTableTableContainer
216
+
217
+ <DocTable name="DataTableTableContainer" category="api" />
218
+
219
+ | Attribute | Value |
220
+ | ------------ | ------------------- |
221
+ | `data-scope` | `"datatable"` |
222
+ | `data-part` | `"table-container"` |
223
+
224
+ <DocTable name="DataTableTableContainer" category="pt" />
225
+
226
+ ### DataTableTable
227
+
228
+ <DocTable name="DataTableTable" category="api" />
229
+
230
+ | Attribute | Value |
231
+ | ------------ | ------------------------- |
232
+ | `data-scope` | `"datatable"` |
233
+ | `data-part` | `"table"` |
234
+ | `role` | `"table"` or `"treegrid"` |
235
+
236
+ <DocTable name="DataTableTable" category="pt" />
237
+
238
+ ### DataTableTHead
239
+
240
+ <DocTable name="DataTableTHead" category="api" />
241
+
242
+ <DocTable name="DataTableTHead" category="pt" />
243
+
244
+ ### DataTableTHeadRow
245
+
246
+ <DocTable name="DataTableTHeadRow" category="api" />
247
+
248
+ <DocTable name="DataTableTHeadRow" category="pt" />
249
+
250
+ ### DataTableTHeadCell
251
+
252
+ <DocTable name="DataTableTHeadCell" category="api" />
253
+
254
+ | Attribute | Value |
255
+ | ------------------- | ------------------------------- |
256
+ | `data-frozen` | Present when the cell is frozen |
257
+ | `data-align-frozen` | `"left"` \| `"right"` |
258
+
259
+ <DocTable name="DataTableTHeadCell" category="pt" />
260
+
261
+ ### DataTableTBody
262
+
263
+ <DocTable name="DataTableTBody" category="api" />
264
+
265
+ <DocTable name="DataTableTBody" category="pt" />
266
+
267
+ ### DataTableFrozenTBody
268
+
269
+ <DocTable name="DataTableFrozenTBody" category="api" />
270
+
271
+ <DocTable name="DataTableFrozenTBody" category="pt" />
272
+
273
+ ### DataTableRow
274
+
275
+ <DocTable name="DataTableRow" category="api" />
276
+
277
+ | Attribute | Value |
278
+ | ----------------------- | ------------------------------------------------------ |
279
+ | `data-scope` | `"datatable"` |
280
+ | `data-part` | `"row"` |
281
+ | `data-index` | Zero-based row index in the rendered slice |
282
+ | `data-selected` | Present when the row is selected |
283
+ | `aria-selected` | Reflects selection state when selection mode is active |
284
+ | `aria-level` | Tree depth (one-based) in tree mode |
285
+ | `aria-expanded` | Reflects expansion when the row has children |
286
+ | `aria-posinset` | One-based position among siblings (tree mode) |
287
+ | `aria-setsize` | Total siblings at the same depth (tree mode) |
288
+ | `data-drag-source` | Present while dragging this row |
289
+ | `data-dragpoint-top` | Present when drop indicator targets the top edge |
290
+ | `data-dragpoint-bottom` | Present when drop indicator targets the bottom edge |
291
+
292
+ <DocTable name="DataTableRow" category="pt" />
293
+
294
+ ### DataTableCell
295
+
296
+ <DocTable name="DataTableCell" category="api" />
297
+
298
+ | Attribute | Value |
299
+ | -------------------- | -------------------------------------- |
300
+ | `data-scope` | `"datatable"` |
301
+ | `data-part` | `"cell"` |
302
+ | `role` | `"gridcell"` |
303
+ | `data-frozen` | Present when the cell is frozen |
304
+ | `data-align-frozen` | `"left"` \| `"right"` |
305
+ | `data-editable-cell` | Present when wrapped by a `CellEditor` |
306
+
307
+ <DocTable name="DataTableCell" category="pt" />
308
+
309
+ ### DataTableTFoot
310
+
311
+ <DocTable name="DataTableTFoot" category="api" />
312
+
313
+ <DocTable name="DataTableTFoot" category="pt" />
314
+
315
+ ### DataTableTFootRow
316
+
317
+ <DocTable name="DataTableTFootRow" category="api" />
318
+
319
+ <DocTable name="DataTableTFootRow" category="pt" />
320
+
321
+ ### DataTableTFootCell
322
+
323
+ <DocTable name="DataTableTFootCell" category="api" />
324
+
325
+ <DocTable name="DataTableTFootCell" category="pt" />
326
+
327
+ ### DataTableFooter
328
+
329
+ <DocTable name="DataTableFooter" category="api" />
330
+
331
+ <DocTable name="DataTableFooter" category="pt" />
332
+
333
+ ### DataTableSort
334
+
335
+ <DocTable name="DataTableSort" category="api" />
336
+
337
+ | Attribute | Value |
338
+ | ----------------- | --------------------------------------------------- |
339
+ | `data-scope` | `"datatable"` |
340
+ | `data-part` | `"sort"` |
341
+ | `role` | `"button"` |
342
+ | `data-sorted` | Present when this column is part of the active sort |
343
+ | `data-unsorted` | Present when this column is not part of the sort |
344
+ | `data-sort-order` | `"asc"` \| `"desc"` when sorted |
345
+ | `aria-sort` | `"ascending"` \| `"descending"` \| `"none"` |
346
+
347
+ <DocTable name="DataTableSort" category="pt" />
348
+
349
+ ### DataTableSortIndicator
350
+
351
+ <DocTable name="DataTableSortIndicator" category="api" />
352
+
353
+ <DocTable name="DataTableSortIndicator" category="pt" />
354
+
355
+ ### DataTableSortOrder
356
+
357
+ <DocTable name="DataTableSortOrder" category="api" />
358
+
359
+ <DocTable name="DataTableSortOrder" category="pt" />
360
+
361
+ ### DataTableFilter
362
+
363
+ <DocTable name="DataTableFilter" category="api" />
364
+
365
+ | Attribute | Value |
366
+ | -------------- | -------------------------------------------- |
367
+ | `data-scope` | `"datatable"` |
368
+ | `data-part` | `"filter"` |
369
+ | `data-display` | `"row"` \| `"menu"` |
370
+ | `data-active` | Present when the column has an active filter |
371
+
372
+ <DocTable name="DataTableFilter" category="pt" />
373
+
374
+ ### DataTablePagination
375
+
376
+ <DocTable name="DataTablePagination" category="api" />
377
+
378
+ <DocTable name="DataTablePagination" category="pt" />
379
+
380
+ ### DataTableSelection
381
+
382
+ <DocTable name="DataTableSelection" category="api" />
383
+
384
+ <DocTable name="DataTableSelection" category="pt" />
385
+
386
+ ### DataTableRowToggle
387
+
388
+ <DocTable name="DataTableRowToggle" category="api" />
389
+
390
+ | Attribute | Value |
391
+ | ----------------- | ------------------------------------------------ |
392
+ | `data-scope` | `"datatable"` |
393
+ | `data-part` | `"row-toggle"` (button) or `"row-toggle-spacer"` |
394
+ | `data-tree-level` | Zero-based tree depth (tree mode only) |
395
+ | `aria-expanded` | Reflects current expansion state |
396
+
397
+ <DocTable name="DataTableRowToggle" category="pt" />
398
+
399
+ ### DataTableRowToggleIndicator
400
+
401
+ <DocTable name="DataTableRowToggleIndicator" category="api" />
402
+
403
+ <DocTable name="DataTableRowToggleIndicator" category="pt" />
404
+
405
+ ### DataTableRowExpansion
406
+
407
+ <DocTable name="DataTableRowExpansion" category="api" />
408
+
409
+ <DocTable name="DataTableRowExpansion" category="pt" />
410
+
411
+ ### DataTableRowGroupHeader / DataTableRowGroupFooter
412
+
413
+ `<DataTable.RowGroupHeader>` and `<DataTable.RowGroupFooter>` render header / footer rows for grouped data when `groupField` is set on `Root`. They forward all props to a `<tr>` element and render the row only at the start (header) / end (footer) of each group as reported by the headless grouping metadata.
414
+
415
+ ```tsx
416
+ <DataTable.TBody>
417
+ {({ item, index, groupMeta }) => (
418
+ <>
419
+ {groupMeta?.isGroupStart && (
420
+ <DataTable.RowGroupHeader>
421
+ <DataTable.Cell colSpan={3}>{String(groupMeta.groupValue)}</DataTable.Cell>
422
+ </DataTable.RowGroupHeader>
423
+ )}
424
+ <DataTable.Row>{/* … */}</DataTable.Row>
425
+ {groupMeta?.isGroupEnd && (
426
+ <DataTable.RowGroupFooter>
427
+ <DataTable.Cell colSpan={3}>Total: {groupMeta.groupCount}</DataTable.Cell>
428
+ </DataTable.RowGroupFooter>
429
+ )}
430
+ </>
431
+ )}
432
+ </DataTable.TBody>
433
+ ```
434
+
435
+ ### DataTableCellEditor
436
+
437
+ <DocTable name="DataTableCellEditor" category="api" />
438
+
439
+ | Attribute | Value |
440
+ | ---------------- | --------------------------------------------- |
441
+ | `data-scope` | `"datatable"` |
442
+ | `data-part` | `"cell-editor"` |
443
+ | `data-row-index` | The row index (used by Tab traversal) |
444
+ | `data-field` | The field name (used by Tab traversal) |
445
+ | `data-row-key` | The row key (used to track edits across sort) |
446
+ | `data-editing` | Present while the cell is in edit mode |
447
+
448
+ <DocTable name="DataTableCellEditor" category="pt" />
449
+
450
+ ### DataTableCellEditorDisplay
451
+
452
+ <DocTable name="DataTableCellEditorDisplay" category="api" />
453
+
454
+ <DocTable name="DataTableCellEditorDisplay" category="pt" />
455
+
456
+ ### DataTableCellEditorContent
457
+
458
+ <DocTable name="DataTableCellEditorContent" category="api" />
459
+
460
+ <DocTable name="DataTableCellEditorContent" category="pt" />
461
+
462
+ ### DataTableRowEditor
463
+
464
+ <DocTable name="DataTableRowEditor" category="api" />
465
+
466
+ <DocTable name="DataTableRowEditor" category="pt" />
467
+
468
+ ### DataTableRowEditorInit
469
+
470
+ <DocTable name="DataTableRowEditorInit" category="api" />
471
+
472
+ <DocTable name="DataTableRowEditorInit" category="pt" />
473
+
474
+ ### DataTableRowEditorSave
475
+
476
+ <DocTable name="DataTableRowEditorSave" category="api" />
477
+
478
+ <DocTable name="DataTableRowEditorSave" category="pt" />
479
+
480
+ ### DataTableRowEditorCancel
481
+
482
+ <DocTable name="DataTableRowEditorCancel" category="api" />
483
+
484
+ <DocTable name="DataTableRowEditorCancel" category="pt" />
485
+
486
+ ### DataTableColumnToggle
487
+
488
+ <DocTable name="DataTableColumnToggle" category="api" />
489
+
490
+ <DocTable name="DataTableColumnToggle" category="pt" />
491
+
492
+ ### DataTableColumnReorder
493
+
494
+ <DocTable name="DataTableColumnReorder" category="api" />
495
+
496
+ <DocTable name="DataTableColumnReorder" category="pt" />
497
+
498
+ ### DataTableColumnReorderTarget
499
+
500
+ <DocTable name="DataTableColumnReorderTarget" category="api" />
501
+
502
+ <DocTable name="DataTableColumnReorderTarget" category="pt" />
503
+
504
+ ### DataTableColumnResizer
505
+
506
+ <DocTable name="DataTableColumnResizer" category="api" />
507
+
508
+ <DocTable name="DataTableColumnResizer" category="pt" />
509
+
510
+ ### DataTableColumnResizeIndicator
511
+
512
+ <DocTable name="DataTableColumnResizeIndicator" category="api" />
513
+
514
+ <DocTable name="DataTableColumnResizeIndicator" category="pt" />
515
+
516
+ ### DataTableRowReorder
517
+
518
+ <DocTable name="DataTableRowReorder" category="api" />
519
+
520
+ <DocTable name="DataTableRowReorder" category="pt" />
521
+
522
+ ### DataTableExport
523
+
524
+ <DocTable name="DataTableExport" category="api" />
525
+
526
+ <DocTable name="DataTableExport" category="pt" />
527
+
528
+ ### DataTableLoading
529
+
530
+ <DocTable name="DataTableLoading" category="api" />
531
+
532
+ <DocTable name="DataTableLoading" category="pt" />
533
+
534
+ ### DataTableEmptyTBody
535
+
536
+ <DocTable name="DataTableEmptyTBody" category="api" />
537
+
538
+ <DocTable name="DataTableEmptyTBody" category="pt" />
539
+
540
+ ## Accessibility
541
+
542
+ ### Screen Reader
543
+
544
+ `DataTable.Table` applies `role="table"` for flat data and `role="treegrid"` when `treeMode` is enabled. Each row exposes `role="row"` plus `aria-rowindex` (1-based) and, in tree mode, `aria-level`, `aria-expanded`, `aria-posinset`, and `aria-setsize`. Cells use `role="gridcell"`. Sort triggers expose `role="button"`, `aria-sort`, and a descriptive `aria-label`. Selection wrappers forward checkbox/radio semantics from the underlying input. Provide an accessible name on `Root` via `aria-label` or `aria-labelledby` when the table has no visible heading.
545
+
546
+ ### Keyboard Support
547
+
548
+ | Key | Function |
549
+ | --------------------------------- | --------------------------------------------------------------------------------------------- |
550
+ | `tab` | Moves focus through interactive elements (sort triggers, filter inputs, rows). |
551
+ | `arrow up` / `arrow down` | Moves focus between rows when a row is focused. |
552
+ | `shift + arrow up` / `arrow down` | Extends row selection while moving focus. |
553
+ | `arrow left` | In tree mode, collapses the focused row, or moves focus to its parent if already collapsed. |
554
+ | `arrow right` | In tree mode, expands the focused row, or moves focus to its first child if already expanded. |
555
+ | `home` / `end` | Moves focus to the first / last row. |
556
+ | `space` | Toggles selection on the focused row. |
557
+ | `enter` | Toggles selection on the focused row, or opens the first editable cell in `cell` edit mode. |
558
+ | `escape` | Cancels the active cell edit and returns focus to the row. |
559
+ | `tab` (in cell edit) | Commits the edit and moves to the next editable cell, wrapping across rows. |
560
+ | `shift + tab` (in cell edit) | Commits the edit and moves to the previous editable cell. |
561
+ | `enter` (in cell edit) | Commits the edit and stays in place. |