@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,277 @@
1
+ # Popover
2
+
3
+ An unstyled popover component with positioning, focus management, and outside click dismissal.
4
+
5
+ <DocPrimitiveIntro description="Build fully custom popover overlays with complete control over layout and styling." />
6
+
7
+ ```tsx
8
+ 'use client';
9
+ import { Check } from '@primeicons/react/check';
10
+ import { Times } from '@primeicons/react/times';
11
+ import { Popover } from 'primereact/popover';
12
+ import * as React from 'react';
13
+ import styles from './basic-demo.module.css';
14
+
15
+ const team = [
16
+ { initials: 'AK', name: 'Alex Kim' },
17
+ { initials: 'MR', name: 'Maya Ross' },
18
+ { initials: 'SL', name: 'Sam Lee' }
19
+ ];
20
+
21
+ export default function BasicDemo() {
22
+ const [copied, setCopied] = React.useState(false);
23
+
24
+ const handleCopy = () => {
25
+ navigator.clipboard.writeText('https://acme.io/project/design-system');
26
+ setCopied(true);
27
+ setTimeout(() => setCopied(false), 2000);
28
+ };
29
+
30
+ return (
31
+ <div className={styles.wrapper}>
32
+ <Popover.Root>
33
+ <Popover.Trigger className={styles.trigger}>Share</Popover.Trigger>
34
+ <Popover.Portal>
35
+ <Popover.Positioner sideOffset={12} side="bottom">
36
+ <Popover.Popup className={styles.popup}>
37
+ <Popover.Arrow className={styles.arrow} />
38
+ <Popover.Header className={styles.header}>
39
+ <Popover.Title className={styles.title}>Share Project</Popover.Title>
40
+ <Popover.Close as="button" className={styles.close}>
41
+ <Times />
42
+ </Popover.Close>
43
+ </Popover.Header>
44
+ <Popover.Content className={styles.content}>
45
+ <div className={styles.linkRow}>
46
+ <input type="text" readOnly value="https://acme.io/project/design-system" className={styles.input} />
47
+ <button onClick={handleCopy} className={styles.copyButton}>
48
+ {copied ? (
49
+ <>
50
+ <Check className={styles.copyIcon} /> Copied!
51
+ </>
52
+ ) : (
53
+ 'Copy'
54
+ )}
55
+ </button>
56
+ </div>
57
+ <p className={styles.sectionLabel}>Team Members</p>
58
+ <div className={styles.teamRow}>
59
+ {team.map((member) => (
60
+ <div key={member.initials} title={member.name} className={styles.avatar}>
61
+ {member.initials}
62
+ </div>
63
+ ))}
64
+ <button className={styles.addButton}>+</button>
65
+ </div>
66
+ </Popover.Content>
67
+ <Popover.Footer className={styles.footer}>
68
+ <span className={styles.footerText}>Anyone with the link can view this project.</span>
69
+ </Popover.Footer>
70
+ </Popover.Popup>
71
+ </Popover.Positioner>
72
+ </Popover.Portal>
73
+ </Popover.Root>
74
+ </div>
75
+ );
76
+ }
77
+ ```
78
+
79
+ <DocPrimitiveLinks name="Popover" />
80
+
81
+ ## Features
82
+
83
+ - Compound component API with sub-components: `Root`, `Trigger`, `Portal`, `Positioner`, `Popup`, `Arrow`, `Header`, `Title`, `Close`, `Content`, `Description`, `Footer`
84
+ - Automatic positioning relative to trigger with configurable `side`, `align`, and offset options
85
+ - Outside click and escape key dismissal with optional focus trapping
86
+ - Arrow element support for visual connection to the trigger
87
+
88
+ ## Usage
89
+
90
+ ```tsx
91
+ import { Popover } from 'primereact/popover';
92
+ ```
93
+
94
+ ```tsx
95
+ <Popover.Root>
96
+ <Popover.Trigger></Popover.Trigger>
97
+ <Popover.Portal>
98
+ <Popover.Positioner side="bottom" sideOffset={8}>
99
+ <Popover.Popup>
100
+ <Popover.Arrow />
101
+ <Popover.Header>
102
+ <Popover.Title></Popover.Title>
103
+ <Popover.Close></Popover.Close>
104
+ </Popover.Header>
105
+ <Popover.Content>
106
+ <Popover.Description></Popover.Description>
107
+ </Popover.Content>
108
+ <Popover.Footer></Popover.Footer>
109
+ </Popover.Popup>
110
+ </Popover.Positioner>
111
+ </Popover.Portal>
112
+ </Popover.Root>
113
+ ```
114
+
115
+ ## Behavior
116
+
117
+ ### Motion Animation
118
+
119
+ ```tsx
120
+ <Popover.Popup motionProps={{ name: 'p-popover' }}>...</Popover.Popup>
121
+ ```
122
+
123
+ See [Motion](/docs/primitive/components/motion) for animation phases, CSS variables, and hide strategies.
124
+
125
+ ### Polymorphic Rendering
126
+
127
+ Use `as` on any sub-component to change the rendered HTML element.
128
+
129
+ ```tsx
130
+ <Popover.Trigger as="div">...</Popover.Trigger>
131
+ ```
132
+
133
+ ### Render Function Children
134
+
135
+ Sub-components accept a render function as children, providing access to the component instance.
136
+
137
+ ```tsx
138
+ <Popover.Trigger>{(instance) => <span>{instance.popover?.state.open ? 'Close' : 'Open'}</span>}</Popover.Trigger>
139
+ ```
140
+
141
+ ## Pass Through
142
+
143
+ <DocPTViewer name="popover-pt" components={['PopoverRoot']} />
144
+
145
+ ## API
146
+
147
+ ### PopoverRoot
148
+
149
+ <DocTable name="PopoverRoot" category="api" />
150
+
151
+ <DocTable name="PopoverRoot" category="pt" />
152
+
153
+ ### PopoverTrigger
154
+
155
+ <DocTable name="PopoverTrigger" category="api" />
156
+
157
+ | Attribute | Value |
158
+ | ---------------------- | ---------------------------- |
159
+ | `data-positioner-open` | Present when popover is open |
160
+
161
+ <DocTable name="PopoverTrigger" category="pt" />
162
+
163
+ ### PopoverPortal
164
+
165
+ <DocTable name="PopoverPortal" category="api" />
166
+
167
+ <DocTable name="PopoverPortal" category="pt" />
168
+
169
+ ### PopoverPositioner
170
+
171
+ <DocTable name="PopoverPositioner" category="api" />
172
+
173
+ | Attribute | Value |
174
+ | ------------ | --------------------------------------------------------- |
175
+ | `data-side` | `"top"` \| `"bottom"` \| `"left"` \| `"right"`, placement |
176
+ | `data-align` | `"start"` \| `"center"` \| `"end"`, alignment |
177
+
178
+ **CSS Custom Properties**
179
+
180
+ The positioner element exposes CSS custom properties for layout and transform control.
181
+
182
+ | CSS Variable | Description |
183
+ | --------------------------- | ---------------------------------------- |
184
+ | `--available-height` | Available vertical space in pixels |
185
+ | `--available-width` | Available horizontal space in pixels |
186
+ | `--transform-origin` | Computed transform origin for animations |
187
+ | `--positioner-anchor-width` | Width of the anchor/trigger element |
188
+
189
+ <DocTable name="PopoverPositioner" category="pt" />
190
+
191
+ ### PopoverPopup
192
+
193
+ <DocTable name="PopoverPopup" category="api" />
194
+
195
+ | Attribute | Value |
196
+ | ----------- | ---------------------------- |
197
+ | `data-open` | Present when popover is open |
198
+
199
+ <DocTable name="PopoverPopup" category="pt" />
200
+
201
+ ### PopoverArrow
202
+
203
+ <DocTable name="PopoverArrow" category="api" />
204
+
205
+ | Attribute | Value |
206
+ | ------------ | --------------------------------------------------------- |
207
+ | `data-side` | `"top"` \| `"bottom"` \| `"left"` \| `"right"`, placement |
208
+ | `data-align` | `"start"` \| `"center"` \| `"end"`, alignment |
209
+
210
+ **CSS Custom Properties**
211
+
212
+ The arrow element exposes CSS custom properties for dynamic positioning:
213
+
214
+ | CSS Variable | Description |
215
+ | --------------------- | ------------------------------ |
216
+ | `--placer-arrow-x` | Horizontal offset of arrow |
217
+ | `--placer-arrow-y` | Vertical offset of arrow |
218
+ | `--placer-arrow-left` | Left position of arrow element |
219
+ | `--placer-arrow-top` | Top position of arrow element |
220
+
221
+ <DocTable name="PopoverArrow" category="pt" />
222
+
223
+ ### PopoverHeader
224
+
225
+ <DocTable name="PopoverHeader" category="api" />
226
+
227
+ <DocTable name="PopoverHeader" category="pt" />
228
+
229
+ ### PopoverTitle
230
+
231
+ <DocTable name="PopoverTitle" category="api" />
232
+
233
+ <DocTable name="PopoverTitle" category="pt" />
234
+
235
+ ### PopoverClose
236
+
237
+ <DocTable name="PopoverClose" category="api" />
238
+
239
+ <DocTable name="PopoverClose" category="pt" />
240
+
241
+ ### PopoverContent
242
+
243
+ <DocTable name="PopoverContent" category="api" />
244
+
245
+ <DocTable name="PopoverContent" category="pt" />
246
+
247
+ ### PopoverDescription
248
+
249
+ <DocTable name="PopoverDescription" category="api" />
250
+
251
+ <DocTable name="PopoverDescription" category="pt" />
252
+
253
+ ### PopoverFooter
254
+
255
+ <DocTable name="PopoverFooter" category="api" />
256
+
257
+ <DocTable name="PopoverFooter" category="pt" />
258
+
259
+ ## Accessibility
260
+
261
+ ### Screen Reader
262
+
263
+ Use a clear label for the trigger content so screen readers can identify the action.
264
+
265
+ Use `Popover.Title` and optional `Popover.Description` to provide semantic structure inside the popup.
266
+
267
+ The trigger communicates popup state using ARIA attributes such as `aria-expanded`, `aria-controls`, and `aria-haspopup`.
268
+
269
+ ### Keyboard Support
270
+
271
+ | Key | Function |
272
+ | ------------- | --------------------------------------------------- |
273
+ | `enter` | Activates the trigger button. |
274
+ | `space` | Activates the trigger button. |
275
+ | `escape` | Closes the popover when `closeOnEscape` is enabled. |
276
+ | `tab` | Moves focus to the next focusable element. |
277
+ | `shift + tab` | Moves focus to the previous focusable element. |
@@ -0,0 +1,176 @@
1
+ [
2
+ {
3
+ "name": "Portal",
4
+ "source": "apps/showcase/assets/apidoc/portal.json",
5
+ "data": {
6
+ "description": "Portal component renders its children into a DOM node that exists outside the component's DOM hierarchy.",
7
+ "interfaces": {
8
+ "PortalPassThrough": {
9
+ "description": "Defines passthrough(pt) options of Portal component.",
10
+ "relatedProp": "",
11
+ "props": [],
12
+ "methods": []
13
+ },
14
+ "PortalProps": {
15
+ "description": "Defines valid properties in Portal component.",
16
+ "relatedProp": "",
17
+ "extendedTypes": "BaseComponentProps<PortalInstance, UsePortalProps, PortalPassThrough>",
18
+ "props": [
19
+ {
20
+ "name": "ref",
21
+ "type": "Ref<unknown>",
22
+ "default": "",
23
+ "description": "The reference to the component instance."
24
+ },
25
+ {
26
+ "name": "pIf",
27
+ "type": "boolean",
28
+ "default": "true",
29
+ "description": "Whether the component should be rendered."
30
+ },
31
+ {
32
+ "name": "style",
33
+ "type": "CSSProperties | ((instance?: PortalInstance) => CSSProperties)",
34
+ "default": "",
35
+ "description": "The style to apply to the component."
36
+ },
37
+ {
38
+ "name": "className",
39
+ "type": "string | ((instance?: PortalInstance) => string)",
40
+ "default": "",
41
+ "description": "The class name to apply to the component."
42
+ },
43
+ {
44
+ "name": "as",
45
+ "type": "string | number | bigint | boolean | ComponentClass<any, any> | FunctionComponent<any> | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode, any, any> | ReactPortal | Promise<AwaitedReactNode>",
46
+ "default": "",
47
+ "description": "The component type to render."
48
+ },
49
+ {
50
+ "name": "asChild",
51
+ "type": "boolean",
52
+ "default": "false",
53
+ "description": "Whether the component should be rendered as a child component."
54
+ },
55
+ {
56
+ "name": "instance",
57
+ "type": "PortalInstance",
58
+ "default": "",
59
+ "description": "The instance to pass to the component."
60
+ },
61
+ {
62
+ "name": "pt",
63
+ "type": "SafeRecord<PortalPassThrough>",
64
+ "default": "",
65
+ "description": "The pass-through props to pass to the component."
66
+ },
67
+ {
68
+ "name": "ptOptions",
69
+ "type": "PassThroughOptions",
70
+ "default": "",
71
+ "description": "The pass-through options to pass to the component."
72
+ },
73
+ {
74
+ "name": "unstyled",
75
+ "type": "boolean",
76
+ "default": "",
77
+ "description": "Whether the component should be rendered without classes."
78
+ },
79
+ {
80
+ "name": "dt",
81
+ "type": "unknown",
82
+ "default": "",
83
+ "description": "The design token to use for the component."
84
+ },
85
+ {
86
+ "name": "styles",
87
+ "type": "StylesOptions<ComponentInstance>",
88
+ "default": "",
89
+ "description": "The styles to use for the component."
90
+ },
91
+ {
92
+ "name": "render",
93
+ "type": "(instance: PortalInstance) => ReactNode",
94
+ "default": "",
95
+ "description": "The render function to render the component with instance access."
96
+ },
97
+ {
98
+ "name": "children",
99
+ "type": "any",
100
+ "default": "",
101
+ "description": "The children to render.\n\nAccepts `React.ReactNode` for static content or a render function `(instance: I) => React.ReactNode` for instance access.\nTyped as `any` to avoid JSX type errors when used directly in templates."
102
+ },
103
+ {
104
+ "name": "onMounted",
105
+ "type": "() => void",
106
+ "default": "",
107
+ "description": "Callback function to invoke when the portal is mounted."
108
+ },
109
+ {
110
+ "name": "onUnmounted",
111
+ "type": "() => void",
112
+ "default": "",
113
+ "description": "Callback function to invoke when the portal is unmounted."
114
+ },
115
+ {
116
+ "name": "element",
117
+ "type": "HTMLElement | ReactNode",
118
+ "default": "",
119
+ "description": "The element to be rendered as the portal."
120
+ },
121
+ {
122
+ "name": "elementRef",
123
+ "type": "RefObject<HTMLElement>",
124
+ "default": "",
125
+ "description": "The element reference to be rendered as the portal."
126
+ },
127
+ {
128
+ "name": "appendTo",
129
+ "type": "string | HTMLElement | ((instance: PortalInstance) => HTMLElement)",
130
+ "default": "'body'",
131
+ "description": "The DOM element where the portal should be appended to."
132
+ },
133
+ {
134
+ "name": "[key: string]",
135
+ "type": "any",
136
+ "description": ""
137
+ }
138
+ ],
139
+ "methods": []
140
+ },
141
+ "PortalState": {
142
+ "description": "Defines valid state in Portal component.",
143
+ "relatedProp": "",
144
+ "extendedTypes": "UsePortalState",
145
+ "props": [
146
+ {
147
+ "name": "mounted",
148
+ "type": "boolean",
149
+ "default": "",
150
+ "description": "Current mount of the portal."
151
+ }
152
+ ],
153
+ "methods": []
154
+ },
155
+ "PortalExposes": {
156
+ "description": "Defines the methods and properties exposed by Portal component.",
157
+ "relatedProp": "",
158
+ "extendedTypes": "UsePortalExposes",
159
+ "props": [],
160
+ "methods": []
161
+ }
162
+ },
163
+ "types": {
164
+ "PortalPassThroughType": {
165
+ "description": "Defines passthrough(pt) options type in Portal component.",
166
+ "values": "PassThroughType<PortalInstance, E>"
167
+ },
168
+ "PortalInstance": {
169
+ "description": "Instance of Portal component.",
170
+ "values": "ComponentInstance<PortalProps, PortalState, PortalExposes>"
171
+ }
172
+ },
173
+ "variables": {}
174
+ }
175
+ }
176
+ ]
@@ -0,0 +1,79 @@
1
+ # Portal
2
+
3
+ An unstyled utility component that renders content into a DOM node outside the component hierarchy.
4
+
5
+ <DocPrimitiveIntro description="Build fully custom overlay containers with SSR-safe portal rendering." />
6
+
7
+ ```tsx
8
+ 'use client';
9
+ import { Portal } from 'primereact/portal';
10
+ import * as React from 'react';
11
+ import styles from './basic-demo.module.css';
12
+
13
+ export default function BasicDemo() {
14
+ const targetRef = React.useRef<HTMLDivElement>(null);
15
+ const [ready, setReady] = React.useState(false);
16
+
17
+ React.useEffect(() => {
18
+ setReady(true);
19
+ }, []);
20
+
21
+ return (
22
+ <div className={styles.root}>
23
+ <div className={styles.target}>
24
+ <p className={styles.targetLabel}>Portal Target</p>
25
+ <div ref={targetRef} className={styles.targetContainer} />
26
+ </div>
27
+ {ready && targetRef.current && (
28
+ <Portal appendTo={targetRef.current}>
29
+ <p className={styles.portalContent}>This content is rendered inside the target container via a portal.</p>
30
+ </Portal>
31
+ )}
32
+ </div>
33
+ );
34
+ }
35
+ ```
36
+
37
+ For hook-based usage without components, see the [usePortal](/docs/headless/components/portal) hook.
38
+
39
+ ## Features
40
+
41
+ - SSR-safe rendering that waits for client-side mount before creating portals
42
+ - Flexible `appendTo` targeting: `'body'`, `'self'`, HTMLElement, CSS selector, or a function
43
+ - Accepts children, `element` prop, or `elementRef` as content source
44
+
45
+ ## Usage
46
+
47
+ ```tsx
48
+ import { Portal } from 'primereact/portal';
49
+ ```
50
+
51
+ ```tsx
52
+ <Portal>
53
+ <div></div>
54
+ </Portal>
55
+ ```
56
+
57
+ ## Behavior
58
+
59
+ ### Polymorphic Rendering
60
+
61
+ Portal does not render a wrapper element. Content is portaled directly into the target container.
62
+
63
+ ### Render Function Children
64
+
65
+ Portal accepts a render function as children, providing access to the component instance.
66
+
67
+ ```tsx
68
+ <Portal>{(instance) => <div>{instance.state.mounted ? 'Mounted' : 'Pending'}</div>}</Portal>
69
+ ```
70
+
71
+ ## API
72
+
73
+ ### Portal
74
+
75
+ <DocTable name="Portal" category="api" />
76
+
77
+ ## Accessibility
78
+
79
+ Portal is a structural utility that renders content into a different DOM location. It does not introduce any ARIA roles or keyboard interactions. Accessibility concerns are handled by the content rendered inside the portal (e.g., `Popover.Popup`, `Drawer.Portal`).