@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,280 @@
1
+ # useDialog
2
+
3
+ Hook that manages dialog open/close state, focus trapping, dragging, scroll lock, and z-index layering.
4
+
5
+ ```tsx
6
+ 'use client';
7
+ import { Times } from '@primeicons/react/times';
8
+ import { useMotion } from '@primereact/core/motion';
9
+ import { useDialog } from '@primereact/headless/dialog';
10
+ import { usePortal } from '@primereact/headless/portal';
11
+ import * as React from 'react';
12
+ import { createPortal } from 'react-dom';
13
+
14
+ export default function BasicDemo() {
15
+ const { triggerProps, backdropProps, positionerProps, popupProps, closeProps, headerProps, contentProps, rootProps, state } = useDialog();
16
+ const portal = usePortal();
17
+
18
+ const popupRef = React.useRef<HTMLDivElement>(null);
19
+ const popupMotion = useMotion({
20
+ name: 'p-dialog',
21
+ appear: true,
22
+ elementRef: popupRef,
23
+ visible: state.open,
24
+ enterFromClassName: 'opacity-0 scale-75',
25
+ enterActiveClassName: 'transition-[opacity,transform] duration-150 ease-out',
26
+ enterToClassName: 'opacity-100 scale-100',
27
+ leaveFromClassName: 'opacity-100 scale-100',
28
+ leaveActiveClassName: 'transition-[opacity,transform] duration-150 ease-out',
29
+ leaveToClassName: 'opacity-0 scale-75'
30
+ });
31
+
32
+ const backdropRef = React.useRef<HTMLDivElement>(null);
33
+ const backdropMotion = useMotion({
34
+ elementRef: backdropRef,
35
+ visible: state.open,
36
+ enterFromClassName: 'opacity-0',
37
+ enterActiveClassName: 'transition-opacity duration-150',
38
+ enterToClassName: 'opacity-100',
39
+ leaveFromClassName: 'opacity-100',
40
+ leaveActiveClassName: 'transition-opacity duration-150',
41
+ leaveToClassName: 'opacity-0'
42
+ });
43
+
44
+ return (
45
+ <div {...rootProps} className="flex justify-center">
46
+ <button
47
+ {...triggerProps}
48
+ className="px-4 py-2 bg-primary text-primary-contrast rounded-lg cursor-pointer font-medium text-sm focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary transition hover:bg-primary-emphasis"
49
+ >
50
+ Edit Profile
51
+ </button>
52
+
53
+ {portal.state.mounted &&
54
+ popupMotion.state.rendered &&
55
+ createPortal(
56
+ <div className="fixed inset-0 z-1100">
57
+ {backdropMotion.state.rendered && <div {...backdropProps} ref={backdropRef} className="fixed inset-0 bg-black/50" />}
58
+ <div {...positionerProps} className="fixed inset-0 flex items-center justify-center p-8 pointer-events-none">
59
+ {popupMotion.state.rendered && (
60
+ <div
61
+ {...popupProps}
62
+ ref={popupRef}
63
+ className="w-[28rem] max-w-[90vw] max-h-full bg-surface-0 dark:bg-surface-900 rounded-xl shadow-2xl flex flex-col border border-surface-200 dark:border-surface-700 pointer-events-auto"
64
+ >
65
+ <div {...headerProps} className="flex items-center justify-between p-5">
66
+ <span className="text-lg font-semibold">Edit Profile</span>
67
+ <button
68
+ {...closeProps}
69
+ className="inline-flex items-center justify-center w-8 h-8 rounded-full cursor-pointer hover:bg-surface-100 dark:hover:bg-surface-800 focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary transition"
70
+ >
71
+ <Times />
72
+ </button>
73
+ </div>
74
+ <div {...contentProps} className="px-5 pb-5 flex flex-col gap-4 overflow-y-auto">
75
+ <div className="flex flex-col gap-1">
76
+ <label htmlFor="name" className="text-sm font-semibold">
77
+ Name
78
+ </label>
79
+ <input
80
+ id="name"
81
+ defaultValue="Amanda Miller"
82
+ className="w-full px-3 py-2 border border-surface-200 dark:border-surface-700 rounded-lg bg-transparent text-sm focus:outline focus:outline-1 focus:outline-primary"
83
+ />
84
+ </div>
85
+ <div className="flex flex-col gap-1">
86
+ <label htmlFor="username" className="text-sm font-semibold">
87
+ Username
88
+ </label>
89
+ <input
90
+ id="username"
91
+ defaultValue="@amandamiller"
92
+ className="w-full px-3 py-2 border border-surface-200 dark:border-surface-700 rounded-lg bg-transparent text-sm focus:outline focus:outline-1 focus:outline-primary"
93
+ />
94
+ </div>
95
+ <div className="flex flex-col gap-1">
96
+ <label htmlFor="email" className="text-sm font-semibold">
97
+ Email
98
+ </label>
99
+ <input
100
+ id="email"
101
+ defaultValue="amanda@example.com"
102
+ className="w-full px-3 py-2 border border-surface-200 dark:border-surface-700 rounded-lg bg-transparent text-sm focus:outline focus:outline-1 focus:outline-primary"
103
+ />
104
+ </div>
105
+ <div className="flex justify-end gap-2 mt-2">
106
+ <button
107
+ {...closeProps}
108
+ className="px-4 py-2 rounded-lg border border-surface-200 dark:border-surface-700 bg-transparent text-sm font-medium cursor-pointer hover:bg-surface-50 dark:hover:bg-surface-800 focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary transition"
109
+ >
110
+ Cancel
111
+ </button>
112
+ <button
113
+ {...closeProps}
114
+ className="px-4 py-2 rounded-lg bg-primary text-primary-contrast text-sm font-medium cursor-pointer hover:bg-primary-emphasis focus-visible:outline focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary transition"
115
+ >
116
+ Save Changes
117
+ </button>
118
+ </div>
119
+ </div>
120
+ </div>
121
+ )}
122
+ </div>
123
+ </div>,
124
+ document.body
125
+ )}
126
+ </div>
127
+ );
128
+ }
129
+ ```
130
+
131
+ ## Usage
132
+
133
+ ```tsx
134
+ import { useMotion } from '@primereact/core/motion';
135
+ import { useDialog } from '@primereact/headless/dialog';
136
+ import { usePortal } from '@primereact/headless/portal';
137
+ import * as React from 'react';
138
+ import { createPortal } from 'react-dom';
139
+ ```
140
+
141
+ ```tsx
142
+ const { rootProps, triggerProps, backdropProps, positionerProps, popupProps, closeProps, headerProps, contentProps, maximizableProps, state } = useDialog();
143
+ const portal = usePortal();
144
+
145
+ <div {...rootProps}>
146
+ <button {...triggerProps}></button>
147
+ {portal.state.mounted &&
148
+ createPortal(
149
+ <>
150
+ <div {...backdropProps} />
151
+ <div {...positionerProps}>
152
+ <div {...popupProps}>
153
+ <div {...headerProps}>
154
+ <button {...maximizableProps}></button>
155
+ <button {...closeProps}></button>
156
+ </div>
157
+ <div {...contentProps}></div>
158
+ </div>
159
+ </div>
160
+ </>,
161
+ document.body
162
+ ```
163
+
164
+ `useDialog` manages open/close state, focus trapping, dragging, scroll locking, and z-index layering. See [Primitive](/docs/primitive/components/dialog) for a component-based API.
165
+
166
+ ## Features
167
+
168
+ - **Open/close lifecycle**, controlled or uncontrolled visibility with backdrop dismissal, escape handling, and return-focus on close
169
+ - **Focus management**, automatic focus trap that moves focus into the dialog on open and restores it to the trigger on close
170
+ - **Positioning and layout**, nine preset positions, `inside`/`outside` scroll behavior, and full-screen/maximizable rendering
171
+ - **Dragging**, opt-in drag support wired through the header element for repositioning the popup
172
+ - **Scroll and layering**, body scroll lock plus `baseZIndex`/`autoZIndex` coordination with other overlays
173
+ - **Imperative controls**, `close()` and `toggleMaximized()` for programmatic control alongside `state.open` and `state.maximized`
174
+
175
+ ## Working with callbacks
176
+
177
+ ### Controlled open state
178
+
179
+ Pass `open` and `onOpenChange` to drive visibility from external state.
180
+
181
+ ```tsx
182
+ const [isOpen, setIsOpen] = React.useState(false);
183
+
184
+ const dialog = useDialog({
185
+ open: isOpen,
186
+ onOpenChange: (e) => setIsOpen(e.value)
187
+ });
188
+ ```
189
+
190
+ ### Draggable header
191
+
192
+ Enable drag support and spread `headerProps` on the element that should initiate the drag.
193
+
194
+ ```tsx
195
+ const dialog = useDialog({ draggable: true });
196
+
197
+ <div {...dialog.popupProps}>
198
+ <div {...dialog.headerProps}>Drag me</div>
199
+ </div>;
200
+ ```
201
+
202
+ ### Outside vs inside scrolling
203
+
204
+ Switch `scrollBehavior` to `outside` when the entire dialog should scroll as one unit instead of only the content region.
205
+
206
+ ```tsx
207
+ const dialog = useDialog({ scrollBehavior: 'outside' });
208
+ ```
209
+
210
+ ### Maximizable toggle
211
+
212
+ `toggleMaximized()` switches between normal and full-screen. Pair it with `state.maximized` to swap icons on the maximize button.
213
+
214
+ ```tsx
215
+ const dialog = useDialog({ fullScreen: false });
216
+
217
+ <button {...dialog.maximizableProps} onClick={dialog.toggleMaximized}>
218
+ {dialog.state.maximized ? <MinimizeIcon /> : <MaximizeIcon />}
219
+ </button>;
220
+ ```
221
+
222
+ ### Overlay layering
223
+
224
+ Combine `baseZIndex` with `autoZIndex` when stacking dialogs on top of other overlays so each new dialog renders above the previous one.
225
+
226
+ ```tsx
227
+ const dialog = useDialog({ baseZIndex: 1000, autoZIndex: true });
228
+ ```
229
+
230
+ ## Styling with data attributes
231
+
232
+ The hook exposes state through `data-*` attributes on each part. Use them as CSS selectors, no className juggling.
233
+
234
+ | Scope | Part | States |
235
+ | -------- | ------------- | -------------------------------------------- |
236
+ | `dialog` | `root` | `data-open`, `data-closed` |
237
+ | `dialog` | `popup` | `data-open`, `data-closed`, `data-maximized` |
238
+ | `dialog` | `positioner` | `data-position`, `data-scroll-behavior` |
239
+ | `dialog` | `maximizable` | `data-maximized`, `data-minimized` |
240
+
241
+ ```css
242
+ [data-scope='dialog'][data-part='positioner'] {
243
+ position: fixed;
244
+ inset: 0;
245
+ display: flex;
246
+ align-items: center;
247
+ justify-content: center;
248
+ }
249
+
250
+ [data-scope='dialog'][data-part='positioner'][data-position='top'] {
251
+ align-items: flex-start;
252
+ }
253
+
254
+ [data-scope='dialog'][data-part='positioner'][data-scroll-behavior='outside'] {
255
+ overflow: auto;
256
+ align-items: flex-start;
257
+ }
258
+
259
+ [data-scope='dialog'][data-part='popup'][data-maximized] {
260
+ width: 100vw;
261
+ height: 100vh;
262
+ }
263
+
264
+ [data-scope='dialog'][data-part='maximizable'][data-maximized] .maximize-icon {
265
+ display: none;
266
+ }
267
+ [data-scope='dialog'][data-part='maximizable'][data-minimized] .minimize-icon {
268
+ display: none;
269
+ }
270
+ ```
271
+
272
+ ## API
273
+
274
+ ### useDialog
275
+
276
+ <DocTable name="useDialog" category="api" />
277
+
278
+ ## Accessibility
279
+
280
+ Escape closes the dialog when closeOnEscape is enabled, Tab cycles focus inside the dialog via focus trap, and focus returns to the trigger on close. See [Primitive](/docs/primitive/components/dialog#accessibility) for full WAI-ARIA compliance details.
@@ -0,0 +1,130 @@
1
+ [
2
+ {
3
+ "name": "useDivider",
4
+ "source": "apps/showcase/assets/apidoc/usedivider.json",
5
+ "data": {
6
+ "description": "The useDivider manages the state and functionality of a divider component.",
7
+ "interfaces": {
8
+ "UseDividerProps": {
9
+ "description": "Defines valid properties in useDivider.",
10
+ "relatedProp": "",
11
+ "props": [
12
+ {
13
+ "name": "align",
14
+ "type": "\"center\" | \"top\" | \"bottom\" | \"left\" | \"right\"",
15
+ "default": "",
16
+ "description": "Alignment of the content."
17
+ },
18
+ {
19
+ "name": "orientation",
20
+ "type": "\"horizontal\" | \"vertical\"",
21
+ "default": "horizontal",
22
+ "description": "Specifies the orientation, valid values are 'horizontal' and 'vertical'."
23
+ },
24
+ {
25
+ "name": "type",
26
+ "type": "\"solid\" | \"dashed\" | \"dotted\"",
27
+ "default": "solid",
28
+ "description": "Border style type."
29
+ }
30
+ ],
31
+ "methods": []
32
+ },
33
+ "UseDividerState": {
34
+ "description": "Defines valid state in useDivider.",
35
+ "relatedProp": "",
36
+ "props": [],
37
+ "methods": []
38
+ },
39
+ "UseDividerRootProps": {
40
+ "description": "Data attribute props for the Divider root element.",
41
+ "relatedProp": "",
42
+ "props": [
43
+ {
44
+ "name": "data-scope",
45
+ "type": "string",
46
+ "default": "",
47
+ "description": "Component scope identifier."
48
+ },
49
+ {
50
+ "name": "data-part",
51
+ "type": "string",
52
+ "default": "",
53
+ "description": "Component part identifier."
54
+ },
55
+ {
56
+ "name": "role",
57
+ "type": "\"separator\"",
58
+ "default": "",
59
+ "description": "ARIA separator role."
60
+ },
61
+ {
62
+ "name": "aria-orientation",
63
+ "type": "\"horizontal\" | \"vertical\"",
64
+ "default": "",
65
+ "description": "ARIA orientation reflecting the `orientation` prop."
66
+ },
67
+ {
68
+ "name": "data-orientation",
69
+ "type": "\"horizontal\" | \"vertical\"",
70
+ "default": "",
71
+ "description": "Reflects the `orientation` prop for CSS targeting."
72
+ },
73
+ {
74
+ "name": "data-align",
75
+ "type": "\"center\" | \"top\" | \"bottom\" | \"left\" | \"right\"",
76
+ "default": "",
77
+ "description": "Reflects the `align` prop for CSS targeting."
78
+ }
79
+ ],
80
+ "methods": []
81
+ },
82
+ "UseDividerContentProps": {
83
+ "description": "Data attribute props for the Divider content element.",
84
+ "relatedProp": "",
85
+ "props": [
86
+ {
87
+ "name": "data-scope",
88
+ "type": "string",
89
+ "default": "",
90
+ "description": "Component scope identifier."
91
+ },
92
+ {
93
+ "name": "data-part",
94
+ "type": "string",
95
+ "default": "",
96
+ "description": "Component part identifier."
97
+ }
98
+ ],
99
+ "methods": []
100
+ },
101
+ "UseDividerExposes": {
102
+ "description": "Defines the methods and properties exposed by useDivider.",
103
+ "relatedProp": "",
104
+ "props": [
105
+ {
106
+ "name": "rootProps",
107
+ "type": "UseDividerRootProps",
108
+ "default": "",
109
+ "description": "Pre-built data attribute props for the root element.\nIncludes role, aria-orientation, data-orientation, data-align."
110
+ },
111
+ {
112
+ "name": "contentProps",
113
+ "type": "UseDividerContentProps",
114
+ "default": "",
115
+ "description": "Pre-built data attribute props for the content element.\nRendered only when the consumer passes children."
116
+ }
117
+ ],
118
+ "methods": []
119
+ }
120
+ },
121
+ "types": {
122
+ "UseDividerInstance": {
123
+ "description": "Instance of useDivider headless.",
124
+ "values": "HeadlessInstance<UseDividerProps, UseDividerState, UseDividerExposes>"
125
+ }
126
+ },
127
+ "variables": {}
128
+ }
129
+ }
130
+ ]
@@ -0,0 +1,92 @@
1
+ # useDivider
2
+
3
+ Headless hook for building content separators with custom markup.
4
+
5
+ ```tsx
6
+ 'use client';
7
+ import { useDivider } from '@primereact/headless/divider';
8
+
9
+ export default function BasicDemo() {
10
+ const { rootProps } = useDivider();
11
+
12
+ return (
13
+ <div className="max-w-md mx-auto space-y-4">
14
+ <p className="text-sm mb-4!">Fast setup, no credit card required.</p>
15
+ <div {...rootProps} role="separator" className="border-t border-surface-200 dark:border-surface-700" />
16
+ <p className="text-sm">Cancel anytime from your account.</p>
17
+ </div>
18
+ );
19
+ }
20
+ ```
21
+
22
+ ## Usage
23
+
24
+ ```tsx
25
+ import { useDivider } from '@primereact/headless/divider';
26
+ ```
27
+
28
+ ```tsx
29
+ const { rootProps } = useDivider({ orientation: 'horizontal' });
30
+
31
+ return <div {...rootProps} role="separator" />;
32
+ ```
33
+
34
+ `useDivider` returns spread-ready `rootProps` with orientation and alignment data attributes so you can style horizontal and vertical separators with pure CSS. See [Primitive](/docs/primitive/components/divider) for a component-based API.
35
+
36
+ ## Features
37
+
38
+ - **Orientation awareness**, `orientation` drives both `aria-orientation` and `data-orientation` on the root
39
+ - **Alignment data**, `align` writes a `data-align` attribute you can target from CSS for content placement
40
+ - **Stateless**, no internal state or effects; markup and styling are entirely yours
41
+ - **Markup-agnostic**, works with any block element that accepts standard props
42
+
43
+ ## Working with callbacks
44
+
45
+ ### Vertical separator
46
+
47
+ Switch `orientation` to `"vertical"` when separating inline content such as toolbar items.
48
+
49
+ ```tsx
50
+ const { rootProps } = useDivider({ orientation: 'vertical' });
51
+
52
+ <div {...rootProps} role="separator" />;
53
+ ```
54
+
55
+ ### Divider with label
56
+
57
+ Provide `align` to position label content inside the divider, then render the text as a child.
58
+
59
+ ```tsx
60
+ const { rootProps } = useDivider({ align: 'center' });
61
+
62
+ <div {...rootProps} role="separator">
63
+ <span>OR</span>
64
+ </div>;
65
+ ```
66
+
67
+ ## Styling with data attributes
68
+
69
+ Use `data-orientation` and `data-align` to branch styles without conditional class logic.
70
+
71
+ ```css
72
+ [data-scope='divider'][data-part='root'] {
73
+ border-top: 1px solid #e5e7eb;
74
+ }
75
+ [data-scope='divider'][data-orientation='vertical'] {
76
+ width: 1px;
77
+ align-self: stretch;
78
+ }
79
+ [data-scope='divider'][data-align='center'] {
80
+ text-align: center;
81
+ }
82
+ ```
83
+
84
+ ## API
85
+
86
+ ### useDivider
87
+
88
+ <DocTable name="useDivider" category="api" />
89
+
90
+ ## Accessibility
91
+
92
+ Announced as a separator via the ARIA role, otherwise non-interactive. See [Primitive](/docs/primitive/components/divider#accessibility) for full WAI-ARIA compliance details.