@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,791 @@
1
+ # OrganizationChart
2
+
3
+ OrganizationChart visualizes hierarchical organization data.
4
+
5
+ ```tsx
6
+ 'use client';
7
+ import type { TreeNode } from '@primereact/ui/organizationchart';
8
+ import { Avatar } from '@primereact/ui/avatar';
9
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
10
+
11
+ interface PersonNode extends TreeNode {
12
+ name: string;
13
+ role: string;
14
+ avatar: string;
15
+ children?: PersonNode[];
16
+ }
17
+
18
+ const data: PersonNode[] = [
19
+ {
20
+ key: '0',
21
+ name: 'Amy Elsner',
22
+ role: 'Founder & CEO',
23
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/amyelsner.png',
24
+ children: [
25
+ {
26
+ key: '0-0',
27
+ name: 'Asiya Javayant',
28
+ role: 'Product Lead',
29
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/asiyajavayant.png',
30
+ children: [
31
+ {
32
+ key: '0-0-0',
33
+ name: 'Anna Fali',
34
+ role: 'UX Designer',
35
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/annafali.png'
36
+ },
37
+ {
38
+ key: '0-0-1',
39
+ name: 'Bernardo Dominic',
40
+ role: 'Product Manager',
41
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/bernardodominic.png'
42
+ }
43
+ ]
44
+ },
45
+ {
46
+ key: '0-1',
47
+ name: 'Onyama Limba',
48
+ role: 'Engineering Lead',
49
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/onyamalimba.png',
50
+ children: [
51
+ {
52
+ key: '0-1-0',
53
+ name: 'Elwin Sharvill',
54
+ role: 'Frontend Engineer',
55
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/elwinsharvill.png'
56
+ },
57
+ {
58
+ key: '0-1-1',
59
+ name: 'Stephen Shaw',
60
+ role: 'Backend Engineer',
61
+ avatar: 'https://primefaces.org/cdn/primevue/images/avatar/stephenshaw.png'
62
+ }
63
+ ]
64
+ }
65
+ ]
66
+ }
67
+ ];
68
+
69
+ export default function Preview() {
70
+ return (
71
+ <div className="flex items-center justify-center">
72
+ <OrganizationChart.Root value={data}>
73
+ <OrganizationChart.Nodes>
74
+ {({ node }: OrganizationChartNodeRow) => {
75
+ const item = node as PersonNode;
76
+
77
+ return (
78
+ <OrganizationChart.Node uKey={node.key}>
79
+ <OrganizationChart.Content>
80
+ <div className="flex items-center gap-2">
81
+ <Avatar.Root shape="circle" size="normal">
82
+ <Avatar.Image src={item.avatar} alt={item.name} />
83
+ <Avatar.Fallback>
84
+ {item.name
85
+ .split(' ')
86
+ .map((n) => n[0])
87
+ .join('')}
88
+ </Avatar.Fallback>
89
+ </Avatar.Root>
90
+ <div className="flex flex-col items-start gap-0.5">
91
+ <div className="text-sm font-semibold leading-none">{item.name}</div>
92
+ <div className="text-xs leading-none opacity-75">{item.role}</div>
93
+ </div>
94
+ </div>
95
+ </OrganizationChart.Content>
96
+ </OrganizationChart.Node>
97
+ );
98
+ }}
99
+ </OrganizationChart.Nodes>
100
+ </OrganizationChart.Root>
101
+ </div>
102
+ );
103
+ }
104
+ ```
105
+
106
+ ## Usage
107
+
108
+ ```tsx
109
+ import { OrganizationChart } from '@primereact/ui/organizationchart';
110
+ ```
111
+
112
+ _OrganizationChart.Nodes_ calls its render function once per node and builds the connectors and nesting for you, no recursion in your code. Each node is identified by _uKey_.
113
+
114
+ ```tsx
115
+ <OrganizationChart.Root value={data}>
116
+ <OrganizationChart.Nodes>
117
+ {({ node }) => (
118
+ <OrganizationChart.Node uKey={node.key}>
119
+ <OrganizationChart.Content>
120
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
121
+ </OrganizationChart.Content>
122
+ </OrganizationChart.Node>
123
+ )}
124
+ </OrganizationChart.Nodes>
125
+ </OrganizationChart.Root>
126
+ ```
127
+
128
+ ## Examples
129
+
130
+ ### Basic
131
+
132
+ A basic chart renders a collection of nodes from the _value_.
133
+
134
+ ```tsx
135
+ 'use client';
136
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
137
+
138
+ const data = [
139
+ {
140
+ key: '0',
141
+ label: 'Founder',
142
+ children: [
143
+ {
144
+ key: '0-0',
145
+ label: 'Product Lead',
146
+ children: [
147
+ { key: '0-0-0', label: 'UX/UI Designer' },
148
+ { key: '0-0-1', label: 'Product Manager' }
149
+ ]
150
+ },
151
+ {
152
+ key: '0-1',
153
+ label: 'Engineering Lead',
154
+ children: [
155
+ { key: '0-1-0', label: 'Frontend Developer' },
156
+ { key: '0-1-1', label: 'Backend Developer' }
157
+ ]
158
+ }
159
+ ]
160
+ }
161
+ ];
162
+
163
+ export default function BasicDemo() {
164
+ return (
165
+ <div className="flex items-center justify-center">
166
+ <OrganizationChart.Root value={data}>
167
+ <OrganizationChart.Nodes>
168
+ {({ node }: OrganizationChartNodeRow) => (
169
+ <OrganizationChart.Node uKey={node.key}>
170
+ <OrganizationChart.Content>
171
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
172
+ </OrganizationChart.Content>
173
+ </OrganizationChart.Node>
174
+ )}
175
+ </OrganizationChart.Nodes>
176
+ </OrganizationChart.Root>
177
+ </div>
178
+ );
179
+ }
180
+ ```
181
+
182
+ ### Collapsible
183
+
184
+ Add _OrganizationChart.Toggle_ with _OrganizationChart.ToggleIndicator_ and its _match_ property of _expanded_ or _collapsed_ to let a node collapse its subtree. A node is collapsible when it has children.
185
+
186
+ ```tsx
187
+ 'use client';
188
+ import { Minus } from '@primeicons/react/minus';
189
+ import { Plus } from '@primeicons/react/plus';
190
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
191
+
192
+ const data = [
193
+ {
194
+ key: '0',
195
+ label: 'Founder',
196
+ children: [
197
+ {
198
+ key: '0-0',
199
+ label: 'Product Lead',
200
+ children: [
201
+ { key: '0-0-0', label: 'UX/UI Designer' },
202
+ { key: '0-0-1', label: 'Product Manager' }
203
+ ]
204
+ },
205
+ {
206
+ key: '0-1',
207
+ label: 'Engineering Lead',
208
+ children: [
209
+ { key: '0-1-0', label: 'Frontend Developer' },
210
+ { key: '0-1-1', label: 'Backend Developer' }
211
+ ]
212
+ }
213
+ ]
214
+ }
215
+ ];
216
+
217
+ export default function CollapsibleDemo() {
218
+ return (
219
+ <div className="flex items-center justify-center">
220
+ <OrganizationChart.Root value={data}>
221
+ <OrganizationChart.Nodes>
222
+ {({ node }: OrganizationChartNodeRow) => (
223
+ <OrganizationChart.Node uKey={node.key}>
224
+ <OrganizationChart.Content>
225
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
226
+ <OrganizationChart.Toggle>
227
+ <OrganizationChart.ToggleIndicator match="expanded">
228
+ <Minus />
229
+ </OrganizationChart.ToggleIndicator>
230
+ <OrganizationChart.ToggleIndicator match="collapsed">
231
+ <Plus />
232
+ </OrganizationChart.ToggleIndicator>
233
+ </OrganizationChart.Toggle>
234
+ </OrganizationChart.Content>
235
+ </OrganizationChart.Node>
236
+ )}
237
+ </OrganizationChart.Nodes>
238
+ </OrganizationChart.Root>
239
+ </div>
240
+ );
241
+ }
242
+ ```
243
+
244
+ ### Controlled
245
+
246
+ Drive expansion programmatically with the _collapsedKeys_ and _onCollapsedChange_ properties. A key present with _true_ is collapsed; absent keys stay expanded.
247
+
248
+ ```tsx
249
+ 'use client';
250
+ import { Minus } from '@primeicons/react/minus';
251
+ import { Plus } from '@primeicons/react/plus';
252
+ import type { OrganizationChartCollapsedKeys, OrganizationChartCollapsedChangeEvent } from '@primereact/ui/organizationchart';
253
+ import { Button } from '@primereact/ui/button';
254
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
255
+ import * as React from 'react';
256
+
257
+ const data = [
258
+ {
259
+ key: '0',
260
+ label: 'Founder',
261
+ children: [
262
+ {
263
+ key: '0-0',
264
+ label: 'Product Lead',
265
+ children: [
266
+ { key: '0-0-0', label: 'UX/UI Designer' },
267
+ { key: '0-0-1', label: 'Product Manager' }
268
+ ]
269
+ },
270
+ {
271
+ key: '0-1',
272
+ label: 'Engineering Lead',
273
+ children: [
274
+ { key: '0-1-0', label: 'Frontend Developer' },
275
+ { key: '0-1-1', label: 'Backend Developer' }
276
+ ]
277
+ }
278
+ ]
279
+ }
280
+ ];
281
+
282
+ export default function ControlledDemo() {
283
+ const [collapsedKeys, setCollapsedKeys] = React.useState<OrganizationChartCollapsedKeys>({});
284
+
285
+ return (
286
+ <div className="flex flex-col items-center gap-4">
287
+ <div className="flex gap-2">
288
+ <Button size="small" severity="secondary" onClick={() => setCollapsedKeys({})}>
289
+ Expand all
290
+ </Button>
291
+ <Button size="small" severity="secondary" onClick={() => setCollapsedKeys({ '0': true })}>
292
+ Collapse all
293
+ </Button>
294
+ </div>
295
+ <OrganizationChart.Root
296
+ value={data}
297
+ collapsedKeys={collapsedKeys}
298
+ onCollapsedChange={(e: OrganizationChartCollapsedChangeEvent) => setCollapsedKeys(e.value)}
299
+ >
300
+ <OrganizationChart.Nodes>
301
+ {({ node }: OrganizationChartNodeRow) => (
302
+ <OrganizationChart.Node uKey={node.key}>
303
+ <OrganizationChart.Content>
304
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
305
+ <OrganizationChart.Toggle>
306
+ <OrganizationChart.ToggleIndicator match="expanded">
307
+ <Minus />
308
+ </OrganizationChart.ToggleIndicator>
309
+ <OrganizationChart.ToggleIndicator match="collapsed">
310
+ <Plus />
311
+ </OrganizationChart.ToggleIndicator>
312
+ </OrganizationChart.Toggle>
313
+ </OrganizationChart.Content>
314
+ </OrganizationChart.Node>
315
+ )}
316
+ </OrganizationChart.Nodes>
317
+ </OrganizationChart.Root>
318
+ </div>
319
+ );
320
+ }
321
+ ```
322
+
323
+ ### Content
324
+
325
+ Render anything inside _OrganizationChart.Content_; the node payload carries your own data fields.
326
+
327
+ ```tsx
328
+ 'use client';
329
+ import { Bolt } from '@primeicons/react/bolt';
330
+ import { Box } from '@primeicons/react/box';
331
+ import { Cloud } from '@primeicons/react/cloud';
332
+ import { Database } from '@primeicons/react/database';
333
+ import { Globe } from '@primeicons/react/globe';
334
+ import { Minus } from '@primeicons/react/minus';
335
+ import { Plus } from '@primeicons/react/plus';
336
+ import { Server } from '@primeicons/react/server';
337
+ import { Shield } from '@primeicons/react/shield';
338
+ import type { TreeNode } from '@primereact/ui/organizationchart';
339
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
340
+ import * as React from 'react';
341
+
342
+ interface ServiceNode extends TreeNode {
343
+ label: string;
344
+ description: string;
345
+ icon: React.ComponentType<{ className?: string }>;
346
+ accent: string;
347
+ children?: ServiceNode[];
348
+ }
349
+
350
+ const data: ServiceNode[] = [
351
+ {
352
+ key: '0',
353
+ label: 'AWS Cloud',
354
+ description: 'us-east-1',
355
+ icon: Cloud,
356
+ accent: 'bg-orange-500/10 text-orange-500',
357
+ children: [
358
+ {
359
+ key: '0_0',
360
+ label: 'Compute',
361
+ description: 'Workloads & runtime',
362
+ icon: Server,
363
+ accent: 'bg-sky-500/10 text-sky-500',
364
+ children: [
365
+ { key: '0_0_0', label: 'EC2', description: 'Virtual servers', icon: Server, accent: 'bg-sky-500/10 text-sky-500' },
366
+ { key: '0_0_1', label: 'Lambda', description: 'Serverless functions', icon: Bolt, accent: 'bg-sky-500/10 text-sky-500' }
367
+ ]
368
+ },
369
+ {
370
+ key: '0_1',
371
+ label: 'Storage',
372
+ description: 'Data persistence',
373
+ icon: Database,
374
+ accent: 'bg-emerald-500/10 text-emerald-500',
375
+ children: [
376
+ { key: '0_1_0', label: 'S3', description: 'Object storage', icon: Box, accent: 'bg-emerald-500/10 text-emerald-500' },
377
+ { key: '0_1_1', label: 'RDS', description: 'Managed databases', icon: Database, accent: 'bg-emerald-500/10 text-emerald-500' }
378
+ ]
379
+ },
380
+ {
381
+ key: '0_2',
382
+ label: 'Networking',
383
+ description: 'Edge & access',
384
+ icon: Globe,
385
+ accent: 'bg-violet-500/10 text-violet-500',
386
+ children: [
387
+ { key: '0_2_0', label: 'CloudFront', description: 'Global CDN', icon: Globe, accent: 'bg-violet-500/10 text-violet-500' },
388
+ { key: '0_2_1', label: 'IAM', description: 'Access policies', icon: Shield, accent: 'bg-violet-500/10 text-violet-500' }
389
+ ]
390
+ }
391
+ ]
392
+ }
393
+ ];
394
+
395
+ export default function ContentDemo() {
396
+ return (
397
+ <div className="flex items-center justify-center">
398
+ <OrganizationChart.Root value={data}>
399
+ <OrganizationChart.Nodes>
400
+ {({ node }: OrganizationChartNodeRow) => {
401
+ const item = node as ServiceNode;
402
+ const Icon = item.icon;
403
+
404
+ return (
405
+ <OrganizationChart.Node uKey={node.key}>
406
+ <OrganizationChart.Content>
407
+ <div className="flex items-center gap-2">
408
+ <div className={`size-9 rounded-md flex items-center justify-center shrink-0 ${item.accent}`}>
409
+ <Icon className="size-4!" />
410
+ </div>
411
+ <div className="flex flex-col items-start gap-0.5">
412
+ <div className="text-sm font-semibold leading-none">{item.label}</div>
413
+ <div className="text-xs leading-none opacity-75">{item.description}</div>
414
+ </div>
415
+ </div>
416
+ <OrganizationChart.Toggle>
417
+ <OrganizationChart.ToggleIndicator match="expanded">
418
+ <Minus />
419
+ </OrganizationChart.ToggleIndicator>
420
+ <OrganizationChart.ToggleIndicator match="collapsed">
421
+ <Plus />
422
+ </OrganizationChart.ToggleIndicator>
423
+ </OrganizationChart.Toggle>
424
+ </OrganizationChart.Content>
425
+ </OrganizationChart.Node>
426
+ );
427
+ }}
428
+ </OrganizationChart.Nodes>
429
+ </OrganizationChart.Root>
430
+ </div>
431
+ );
432
+ }
433
+ ```
434
+
435
+ ### Selection
436
+
437
+ #### Single
438
+
439
+ Set _selectionMode_ to _single_ to keep at most one node selected. Bind the selection with _selectionKeys_ and _onSelectionChange_.
440
+
441
+ ```tsx
442
+ 'use client';
443
+ import type { OrganizationChartSelectionKeys, OrganizationChartSelectionChangeEvent } from '@primereact/ui/organizationchart';
444
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
445
+ import * as React from 'react';
446
+
447
+ const data = [
448
+ {
449
+ key: '0',
450
+ label: 'Founder',
451
+ children: [
452
+ {
453
+ key: '0-0',
454
+ label: 'Product Lead',
455
+ children: [
456
+ { key: '0-0-0', label: 'UX/UI Designer' },
457
+ { key: '0-0-1', label: 'Product Manager' }
458
+ ]
459
+ },
460
+ {
461
+ key: '0-1',
462
+ label: 'Engineering Lead',
463
+ children: [
464
+ { key: '0-1-0', label: 'Frontend Developer' },
465
+ { key: '0-1-1', label: 'Backend Developer' }
466
+ ]
467
+ }
468
+ ]
469
+ }
470
+ ];
471
+
472
+ export default function SingleSelectionDemo() {
473
+ const [selectionKeys, setSelectionKeys] = React.useState<OrganizationChartSelectionKeys>({});
474
+
475
+ const selected = Object.keys(selectionKeys).filter((k) => selectionKeys[k]);
476
+
477
+ return (
478
+ <div className="flex flex-col items-center gap-4">
479
+ <span className="text-sm text-muted-color">
480
+ Selected: <span className="font-mono">{selected.length ? selected.join(', ') : '—'}</span>
481
+ </span>
482
+ <OrganizationChart.Root
483
+ value={data}
484
+ selectionMode="single"
485
+ selectionKeys={selectionKeys}
486
+ onSelectionChange={(e: OrganizationChartSelectionChangeEvent) => setSelectionKeys(e.value)}
487
+ >
488
+ <OrganizationChart.Nodes>
489
+ {({ node }: OrganizationChartNodeRow) => (
490
+ <OrganizationChart.Node uKey={node.key}>
491
+ <OrganizationChart.Content>
492
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
493
+ </OrganizationChart.Content>
494
+ </OrganizationChart.Node>
495
+ )}
496
+ </OrganizationChart.Nodes>
497
+ </OrganizationChart.Root>
498
+ </div>
499
+ );
500
+ }
501
+ ```
502
+
503
+ #### Multiple
504
+
505
+ With _multiple_, each node toggles independently.
506
+
507
+ ```tsx
508
+ 'use client';
509
+ import type { OrganizationChartSelectionKeys, OrganizationChartSelectionChangeEvent } from '@primereact/ui/organizationchart';
510
+ import { OrganizationChart, type OrganizationChartNodeRow } from '@primereact/ui/organizationchart';
511
+ import * as React from 'react';
512
+
513
+ const data = [
514
+ {
515
+ key: '0',
516
+ label: 'Founder',
517
+ children: [
518
+ {
519
+ key: '0-0',
520
+ label: 'Product Lead',
521
+ children: [
522
+ { key: '0-0-0', label: 'UX/UI Designer' },
523
+ { key: '0-0-1', label: 'Product Manager' }
524
+ ]
525
+ },
526
+ {
527
+ key: '0-1',
528
+ label: 'Engineering Lead',
529
+ children: [
530
+ { key: '0-1-0', label: 'Frontend Developer' },
531
+ { key: '0-1-1', label: 'Backend Developer' }
532
+ ]
533
+ }
534
+ ]
535
+ }
536
+ ];
537
+
538
+ export default function MultipleSelectionDemo() {
539
+ const [selectionKeys, setSelectionKeys] = React.useState<OrganizationChartSelectionKeys>({});
540
+
541
+ const selected = Object.keys(selectionKeys).filter((k) => selectionKeys[k]);
542
+
543
+ return (
544
+ <div className="flex flex-col items-center gap-4">
545
+ <span className="text-sm text-muted-color">
546
+ Selected: <span className="font-mono">{selected.length ? selected.join(', ') : '—'}</span>
547
+ </span>
548
+ <OrganizationChart.Root
549
+ value={data}
550
+ selectionMode="multiple"
551
+ selectionKeys={selectionKeys}
552
+ onSelectionChange={(e: OrganizationChartSelectionChangeEvent) => setSelectionKeys(e.value)}
553
+ >
554
+ <OrganizationChart.Nodes>
555
+ {({ node }: OrganizationChartNodeRow) => (
556
+ <OrganizationChart.Node uKey={node.key}>
557
+ <OrganizationChart.Content>
558
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
559
+ </OrganizationChart.Content>
560
+ </OrganizationChart.Node>
561
+ )}
562
+ </OrganizationChart.Nodes>
563
+ </OrganizationChart.Root>
564
+ </div>
565
+ );
566
+ }
567
+ ```
568
+
569
+ #### Checkbox
570
+
571
+ In _checkbox_ mode, _OrganizationChart.Selection_ exposes _isSelected_, _isPartiallySelected_ and _toggle_. Selecting a node cascades to its descendants and reflects a partial state on its ancestors.
572
+
573
+ ```tsx
574
+ 'use client';
575
+ import { Check } from '@primeicons/react/check';
576
+ import { Minus } from '@primeicons/react/minus';
577
+ import { Checkbox, type CheckboxRootChangeEvent } from '@primereact/ui/checkbox';
578
+ import { OrganizationChart, type OrganizationChartNodeRow, type OrganizationChartSelectionInstance } from '@primereact/ui/organizationchart';
579
+
580
+ const data = [
581
+ {
582
+ key: '0',
583
+ label: 'Founder',
584
+ children: [
585
+ {
586
+ key: '0-0',
587
+ label: 'Product Lead',
588
+ children: [
589
+ { key: '0-0-0', label: 'UX/UI Designer' },
590
+ { key: '0-0-1', label: 'Product Manager' }
591
+ ]
592
+ },
593
+ {
594
+ key: '0-1',
595
+ label: 'Engineering Lead',
596
+ children: [
597
+ { key: '0-1-0', label: 'Frontend Developer' },
598
+ { key: '0-1-1', label: 'Backend Developer' }
599
+ ]
600
+ }
601
+ ]
602
+ }
603
+ ];
604
+
605
+ export default function CheckboxSelectionDemo() {
606
+ return (
607
+ <div className="flex items-center justify-center">
608
+ <OrganizationChart.Root value={data} selectionMode="checkbox">
609
+ <OrganizationChart.Nodes>
610
+ {({ node }: OrganizationChartNodeRow) => (
611
+ <OrganizationChart.Node uKey={node.key}>
612
+ <OrganizationChart.Content className="flex items-center gap-2">
613
+ <OrganizationChart.Selection>
614
+ {({ isSelected, isPartiallySelected, toggle }: OrganizationChartSelectionInstance) => (
615
+ <Checkbox.Root
616
+ checked={isSelected}
617
+ indeterminate={isPartiallySelected}
618
+ onCheckedChange={(e: CheckboxRootChangeEvent) => toggle(e.originalEvent)}
619
+ size="small"
620
+ >
621
+ <Checkbox.Box>
622
+ <Checkbox.Indicator match="checked">
623
+ <Check />
624
+ </Checkbox.Indicator>
625
+ <Checkbox.Indicator match="indeterminate">
626
+ <Minus />
627
+ </Checkbox.Indicator>
628
+ </Checkbox.Box>
629
+ </Checkbox.Root>
630
+ )}
631
+ </OrganizationChart.Selection>
632
+ <OrganizationChart.Label>{node.label}</OrganizationChart.Label>
633
+ </OrganizationChart.Content>
634
+ </OrganizationChart.Node>
635
+ )}
636
+ </OrganizationChart.Nodes>
637
+ </OrganizationChart.Root>
638
+ </div>
639
+ );
640
+ }
641
+ ```
642
+
643
+ ## Related
644
+
645
+ ### Sub-Components
646
+
647
+ See the [Primitive API](/docs/primitive/components/organizationchart#api) for _OrganizationChart.Root_, _OrganizationChart.Nodes_, _OrganizationChart.Node_, _OrganizationChart.Content_, _OrganizationChart.Label_, _OrganizationChart.Toggle_, _OrganizationChart.ToggleIndicator_ and _OrganizationChart.Selection_.
648
+
649
+ ### Hooks
650
+
651
+ See the [Headless API](/docs/headless/components/organizationchart#api) for _useOrganizationChart_.
652
+
653
+ ### Accessibility
654
+
655
+ See [OrganizationChart Primitive](/docs/primitive/components/organizationchart#accessibility) for WAI-ARIA compliance details and keyboard support.
656
+
657
+
658
+ # OrganizationChart API
659
+
660
+ API documentation for OrganizationChart component
661
+
662
+ ## OrganizationChartRoot
663
+
664
+ ### Props
665
+
666
+ <DocTable name="OrganizationChartRoot" category="api" type="props" />
667
+
668
+ ### State
669
+
670
+ <DocTable name="OrganizationChartRoot" category="api" type="state" />
671
+
672
+ ### Exposes
673
+
674
+ <DocTable name="OrganizationChartRoot" category="api" type="exposes" />
675
+
676
+ ### Interfaces
677
+
678
+ <DocTable name="OrganizationChartRoot" category="api" type="interfaces" />
679
+
680
+ ### Types
681
+
682
+ <DocTable name="OrganizationChartRoot" category="api" type="types" />
683
+
684
+ ## OrganizationChartNodes
685
+
686
+ ### Props
687
+
688
+ <DocTable name="OrganizationChartNodes" category="api" type="props" />
689
+
690
+ ### Interfaces
691
+
692
+ <DocTable name="OrganizationChartNodes" category="api" type="interfaces" />
693
+
694
+ ### Types
695
+
696
+ <DocTable name="OrganizationChartNodes" category="api" type="types" />
697
+
698
+ ## OrganizationChartNode
699
+
700
+ ### Props
701
+
702
+ <DocTable name="OrganizationChartNode" category="api" type="props" />
703
+
704
+ ### Exposes
705
+
706
+ <DocTable name="OrganizationChartNode" category="api" type="exposes" />
707
+
708
+ ### Interfaces
709
+
710
+ <DocTable name="OrganizationChartNode" category="api" type="interfaces" />
711
+
712
+ ### Types
713
+
714
+ <DocTable name="OrganizationChartNode" category="api" type="types" />
715
+
716
+ ## OrganizationChartContent
717
+
718
+ ### Props
719
+
720
+ <DocTable name="OrganizationChartContent" category="api" type="props" />
721
+
722
+ ### Interfaces
723
+
724
+ <DocTable name="OrganizationChartContent" category="api" type="interfaces" />
725
+
726
+ ## OrganizationChartLabel
727
+
728
+ ### Props
729
+
730
+ <DocTable name="OrganizationChartLabel" category="api" type="props" />
731
+
732
+ ### Interfaces
733
+
734
+ <DocTable name="OrganizationChartLabel" category="api" type="interfaces" />
735
+
736
+ ## OrganizationChartToggle
737
+
738
+ ### Props
739
+
740
+ <DocTable name="OrganizationChartToggle" category="api" type="props" />
741
+
742
+ ### Exposes
743
+
744
+ <DocTable name="OrganizationChartToggle" category="api" type="exposes" />
745
+
746
+ ### Interfaces
747
+
748
+ <DocTable name="OrganizationChartToggle" category="api" type="interfaces" />
749
+
750
+ ## OrganizationChartToggleIndicator
751
+
752
+ ### Props
753
+
754
+ <DocTable name="OrganizationChartToggleIndicator" category="api" type="props" />
755
+
756
+ ### Interfaces
757
+
758
+ <DocTable name="OrganizationChartToggleIndicator" category="api" type="interfaces" />
759
+
760
+ ### Types
761
+
762
+ <DocTable name="OrganizationChartToggleIndicator" category="api" type="types" />
763
+
764
+ ## OrganizationChartSelection
765
+
766
+ ### Props
767
+
768
+ <DocTable name="OrganizationChartSelection" category="api" type="props" />
769
+
770
+ ### Exposes
771
+
772
+ <DocTable name="OrganizationChartSelection" category="api" type="exposes" />
773
+
774
+ ### Interfaces
775
+
776
+ <DocTable name="OrganizationChartSelection" category="api" type="interfaces" />
777
+
778
+
779
+ ## Theming
780
+
781
+ ### CSS Classes
782
+
783
+ List of class names used in the styled mode.
784
+
785
+ <DocTable name="OrganizationChart" category="style" />
786
+
787
+ ### Design Tokens
788
+
789
+ List of design tokens.
790
+
791
+ <DocTable name="OrganizationChart" category="token" />