@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,1047 @@
1
+ # Dialog
2
+
3
+ Dialog is a container to display content in an overlay window.
4
+
5
+ ```tsx
6
+ 'use client';
7
+ import { Times } from '@primeicons/react/times';
8
+ import { Avatar } from '@primereact/ui/avatar';
9
+ import { Button } from '@primereact/ui/button';
10
+ import { Dialog } from '@primereact/ui/dialog';
11
+ import { InputText } from '@primereact/ui/inputtext';
12
+ import { Label } from '@primereact/ui/label';
13
+
14
+ export default function Preview() {
15
+ return (
16
+ <div className="flex justify-center">
17
+ <Dialog.Root>
18
+ <Dialog.Trigger as={Button}>Edit Profile</Dialog.Trigger>
19
+ <Dialog.Portal>
20
+ <Dialog.Positioner>
21
+ <Dialog.Popup style={{ width: '28rem' }}>
22
+ <Dialog.Header>
23
+ <Dialog.Title>Edit Profile</Dialog.Title>
24
+ <Dialog.HeaderActions>
25
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
26
+ <Times />
27
+ </Dialog.Close>
28
+ </Dialog.HeaderActions>
29
+ </Dialog.Header>
30
+ <Dialog.Content>
31
+ <div className="flex flex-col gap-6">
32
+ <div className="flex items-center gap-4">
33
+ <Avatar.Root shape="circle" size="xlarge">
34
+ <Avatar.Image src="https://primefaces.org/cdn/primevue/images/avatar/asiyajavayant.png" />
35
+ <Avatar.Fallback>AM</Avatar.Fallback>
36
+ </Avatar.Root>
37
+ <div>
38
+ <p className="font-semibold text-lg mt-0 mb-1">Amanda Miller</p>
39
+ <p className="text-surface-500 dark:text-surface-400 mt-0 mb-0 text-sm">amanda@example.com</p>
40
+ </div>
41
+ </div>
42
+ <div className="flex flex-col gap-1">
43
+ <Label htmlFor="name" className="text-sm font-semibold">
44
+ Name
45
+ </Label>
46
+ <InputText id="name" defaultValue="Amanda Miller" />
47
+ </div>
48
+ <div className="flex flex-col gap-1">
49
+ <Label htmlFor="username" className="text-sm font-semibold">
50
+ Username
51
+ </Label>
52
+ <InputText id="username" defaultValue="@amandamiller" />
53
+ </div>
54
+ <div className="flex flex-col gap-1">
55
+ <Label htmlFor="email" className="text-sm font-semibold">
56
+ Email
57
+ </Label>
58
+ <InputText id="email" defaultValue="amanda@example.com" />
59
+ </div>
60
+ <div className="flex justify-end gap-2">
61
+ <Dialog.Close as={Button} severity="secondary">
62
+ Cancel
63
+ </Dialog.Close>
64
+ <Dialog.Close as={Button}>Save Changes</Dialog.Close>
65
+ </div>
66
+ </div>
67
+ </Dialog.Content>
68
+ </Dialog.Popup>
69
+ </Dialog.Positioner>
70
+ </Dialog.Portal>
71
+ </Dialog.Root>
72
+ </div>
73
+ );
74
+ }
75
+ ```
76
+
77
+ ## Usage
78
+
79
+ ```tsx
80
+ import { Dialog } from '@primereact/ui/dialog';
81
+ ```
82
+
83
+ ```tsx
84
+ <Dialog.Root>
85
+ <Dialog.Trigger />
86
+ <Dialog.Portal>
87
+ <Dialog.Backdrop />
88
+ <Dialog.Positioner>
89
+ <Dialog.Popup>
90
+ <Dialog.Header>
91
+ <Dialog.Title />
92
+ <Dialog.HeaderActions>
93
+ <Dialog.Maximizable />
94
+ <Dialog.Close />
95
+ </Dialog.HeaderActions>
96
+ </Dialog.Header>
97
+ <Dialog.Content />
98
+ <Dialog.Footer />
99
+ </Dialog.Popup>
100
+ </Dialog.Positioner>
101
+ </Dialog.Portal>
102
+ </Dialog.Root>
103
+ ```
104
+
105
+ ## Examples
106
+
107
+ ### Basic
108
+
109
+ A modal with a header, scrollable content, and footer actions.
110
+
111
+ ```tsx
112
+ 'use client';
113
+ import { Times } from '@primeicons/react/times';
114
+ import { Button } from '@primereact/ui/button';
115
+ import { Dialog } from '@primereact/ui/dialog';
116
+ import { InputText } from '@primereact/ui/inputtext';
117
+ import { Label } from '@primereact/ui/label';
118
+
119
+ export default function BasicDemo() {
120
+ return (
121
+ <div className="flex justify-center">
122
+ <Dialog.Root>
123
+ <Dialog.Trigger as={Button}>Edit Profile</Dialog.Trigger>
124
+ <Dialog.Portal>
125
+ <Dialog.Backdrop />
126
+ <Dialog.Positioner>
127
+ <Dialog.Popup style={{ width: '24rem' }}>
128
+ <Dialog.Header>
129
+ <Dialog.Title>Edit Profile</Dialog.Title>
130
+ <Dialog.HeaderActions>
131
+ <Dialog.Close as={Button} rounded variant="text" iconOnly>
132
+ <Times />
133
+ </Dialog.Close>
134
+ </Dialog.HeaderActions>
135
+ </Dialog.Header>
136
+ <Dialog.Content>
137
+ <div className="flex flex-col gap-4">
138
+ <div className="flex flex-col gap-1.5">
139
+ <Label htmlFor="name">Name</Label>
140
+ <InputText id="name" defaultValue="Amanda Miller" />
141
+ </div>
142
+ <div className="flex flex-col gap-1.5">
143
+ <Label htmlFor="email">Email</Label>
144
+ <InputText id="email" defaultValue="amanda@example.com" />
145
+ </div>
146
+ </div>
147
+ </Dialog.Content>
148
+ <Dialog.Footer>
149
+ <Dialog.Close as={Button} severity="secondary" variant="outlined">
150
+ Cancel
151
+ </Dialog.Close>
152
+ <Dialog.Close as={Button}>Save</Dialog.Close>
153
+ </Dialog.Footer>
154
+ </Dialog.Popup>
155
+ </Dialog.Positioner>
156
+ </Dialog.Portal>
157
+ </Dialog.Root>
158
+ </div>
159
+ );
160
+ }
161
+ ```
162
+
163
+ ### Draggable
164
+
165
+ A dialog can be repositioned by dragging its header when the `draggable` prop is enabled.
166
+
167
+ ```tsx
168
+ 'use client';
169
+ import { Times } from '@primeicons/react/times';
170
+ import { Button } from '@primereact/ui/button';
171
+ import { Dialog } from '@primereact/ui/dialog';
172
+
173
+ export default function DraggableDemo() {
174
+ return (
175
+ <div className="flex justify-center">
176
+ <Dialog.Root draggable>
177
+ <Dialog.Trigger as={Button}>Open Note</Dialog.Trigger>
178
+ <Dialog.Portal>
179
+ <Dialog.Backdrop />
180
+ <Dialog.Positioner>
181
+ <Dialog.Popup style={{ width: '24rem' }}>
182
+ <Dialog.Header>
183
+ <Dialog.Title>Quick Note</Dialog.Title>
184
+ <Dialog.HeaderActions>
185
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
186
+ <Times />
187
+ </Dialog.Close>
188
+ </Dialog.HeaderActions>
189
+ </Dialog.Header>
190
+ <Dialog.Content>
191
+ <div className="flex flex-col gap-4">
192
+ <p className="text-sm text-surface-500 dark:text-surface-400 mt-0 mb-0">
193
+ Drag this dialog by its header to reposition it anywhere on the screen.
194
+ </p>
195
+ <textarea
196
+ className="w-full h-32 p-3 rounded-md border border-surface-200 dark:border-surface-700 bg-surface-0 dark:bg-surface-900 text-surface-700 dark:text-surface-0 text-sm resize-none focus:outline-none focus:ring-2 focus:ring-primary-500"
197
+ placeholder="Type your note here..."
198
+ defaultValue="Remember to review the design specs for the new dashboard layout before the meeting tomorrow."
199
+ />
200
+ </div>
201
+ </Dialog.Content>
202
+ <Dialog.Footer>
203
+ <Dialog.Close as={Button} severity="secondary">
204
+ Discard
205
+ </Dialog.Close>
206
+ <Dialog.Close as={Button}>Save Note</Dialog.Close>
207
+ </Dialog.Footer>
208
+ </Dialog.Popup>
209
+ </Dialog.Positioner>
210
+ </Dialog.Portal>
211
+ </Dialog.Root>
212
+ </div>
213
+ );
214
+ }
215
+ ```
216
+
217
+ ### Position
218
+
219
+ The position of the dialog can be customized with the `position` property. The available values are `top`, `top-left`, `top-right`, `bottom`, `bottom-left`, `bottom-right`, `left`, `right`, and `center`.
220
+
221
+ ```tsx
222
+ 'use client';
223
+ import { ArrowDown, ArrowDownLeft, ArrowDownRight, ArrowLeft, ArrowRight, ArrowUp, ArrowUpLeft, ArrowUpRight } from '@primeicons/react';
224
+ import { Times } from '@primeicons/react/times';
225
+ import { DialogRootChangeEvent, DialogRootProps } from '@primereact/ui/dialog';
226
+ import { Button } from '@primereact/ui/button';
227
+ import { Dialog } from '@primereact/ui/dialog';
228
+ import { InputText } from '@primereact/ui/inputtext';
229
+ import { Label } from '@primereact/ui/label';
230
+ import * as React from 'react';
231
+
232
+ export default function PositionDemo() {
233
+ const [open, setOpen] = React.useState<boolean>(false);
234
+ const [position, setPosition] = React.useState<DialogRootProps['position']>('center');
235
+
236
+ const openPosition = (position: DialogRootProps['position']) => {
237
+ setOpen(true);
238
+ setPosition(position);
239
+ };
240
+
241
+ return (
242
+ <div>
243
+ <div className="flex flex-wrap justify-center gap-2 mb-2">
244
+ <Button onClick={() => openPosition('left')} severity="secondary" style={{ minWidth: '10rem' }}>
245
+ Left
246
+ <ArrowLeft />
247
+ </Button>
248
+ <Button onClick={() => openPosition('right')} severity="secondary" style={{ minWidth: '10rem' }}>
249
+ Right
250
+ <ArrowRight />
251
+ </Button>
252
+ </div>
253
+ <div className="flex flex-wrap justify-center gap-2 mb-2">
254
+ <Button onClick={() => openPosition('topleft')} severity="secondary" style={{ minWidth: '10rem' }}>
255
+ TopLeft
256
+ <ArrowUpLeft />
257
+ </Button>
258
+ <Button onClick={() => openPosition('top')} severity="secondary" style={{ minWidth: '10rem' }}>
259
+ Top
260
+ <ArrowUp />
261
+ </Button>
262
+ <Button onClick={() => openPosition('topright')} severity="secondary" style={{ minWidth: '10rem' }}>
263
+ TopRight
264
+ <ArrowUpRight />
265
+ </Button>
266
+ </div>
267
+ <div className="flex flex-wrap justify-center gap-2">
268
+ <Button onClick={() => openPosition('bottomleft')} severity="secondary" style={{ minWidth: '10rem' }}>
269
+ BottomLeft
270
+ <ArrowDownLeft />
271
+ </Button>
272
+ <Button onClick={() => openPosition('bottom')} severity="secondary" style={{ minWidth: '10rem' }}>
273
+ Bottom
274
+ <ArrowDown />
275
+ </Button>
276
+ <Button onClick={() => openPosition('bottomright')} severity="secondary" style={{ minWidth: '10rem' }}>
277
+ BottomRight
278
+ <ArrowDownRight />
279
+ </Button>
280
+ </div>
281
+ <Dialog.Root open={open} onOpenChange={(e: DialogRootChangeEvent) => setOpen(e.value as boolean)} position={position} draggable={false}>
282
+ <Dialog.Portal>
283
+ <Dialog.Backdrop />
284
+ <Dialog.Positioner>
285
+ <Dialog.Popup style={{ width: '25rem' }}>
286
+ <Dialog.Header>
287
+ <Dialog.Title>Edit Profile</Dialog.Title>
288
+ <Dialog.HeaderActions>
289
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
290
+ <Times />
291
+ </Dialog.Close>
292
+ </Dialog.HeaderActions>
293
+ </Dialog.Header>
294
+ <Dialog.Content>
295
+ <div className="flex flex-col gap-6">
296
+ <span className="text-surface-500 dark:text-surface-400">Update your information.</span>
297
+ <div className="flex flex-col gap-1">
298
+ <Label htmlFor="username" className="font-semibold">
299
+ Username
300
+ </Label>
301
+ <InputText id="username" />
302
+ </div>
303
+ <div className="flex flex-col gap-1">
304
+ <Label htmlFor="email" className="font-semibold">
305
+ Email
306
+ </Label>
307
+ <InputText id="email" />
308
+ </div>
309
+ <div className="flex justify-end gap-2">
310
+ <Dialog.Close as={Button} severity="secondary">
311
+ Cancel
312
+ </Dialog.Close>
313
+ <Dialog.Close as={Button}>Save</Dialog.Close>
314
+ </div>
315
+ </div>
316
+ </Dialog.Content>
317
+ </Dialog.Popup>
318
+ </Dialog.Positioner>
319
+ </Dialog.Portal>
320
+ </Dialog.Root>
321
+ </div>
322
+ );
323
+ }
324
+ ```
325
+
326
+ ### Maximizable
327
+
328
+ A dialog can be maximized by clicking the _Dialog.Maximizable_ button.
329
+
330
+ ```tsx
331
+ import { Times } from '@primeicons/react/times';
332
+ import { WindowMaximize } from '@primeicons/react/window-maximize';
333
+ import { WindowMinimize } from '@primeicons/react/window-minimize';
334
+ import { Button } from '@primereact/ui/button';
335
+ import { Dialog } from '@primereact/ui/dialog';
336
+
337
+ export default function MaximizableDemo() {
338
+ return (
339
+ <div className="flex justify-center">
340
+ <Dialog.Root>
341
+ <Dialog.Trigger as={Button}>Show</Dialog.Trigger>
342
+ <Dialog.Portal>
343
+ <Dialog.Backdrop />
344
+ <Dialog.Positioner>
345
+ <Dialog.Popup style={{ width: '50rem' }}>
346
+ <Dialog.Header>
347
+ <Dialog.Title>Article Preview</Dialog.Title>
348
+ <Dialog.HeaderActions>
349
+ <Dialog.Maximizable as={Button} iconOnly variant="text" rounded severity="secondary">
350
+ <WindowMaximize className="in-data-maximized:hidden!" />
351
+ <WindowMinimize className="in-data-minimized:hidden!" />
352
+ </Dialog.Maximizable>
353
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
354
+ <Times />
355
+ </Dialog.Close>
356
+ </Dialog.HeaderActions>
357
+ </Dialog.Header>
358
+ <Dialog.Content>
359
+ <div className="flex flex-col gap-4">
360
+ <div className="flex items-center gap-2 text-sm text-surface-500 dark:text-surface-400">
361
+ <span>Published on Feb 1, 2026</span>
362
+ <span>·</span>
363
+ <span>5 min read</span>
364
+ </div>
365
+ <h2 className="text-xl font-bold mt-0 mb-0">Getting Started with Component-Driven Development</h2>
366
+ <p className="leading-relaxed mt-0 mb-0">
367
+ Component-driven development is an approach that focuses on building loosely coupled, independent components
368
+ that can be composed together to build complex user interfaces. This methodology promotes reusability,
369
+ testability, and maintainability.
370
+ </p>
371
+ <p className="leading-relaxed mt-0 mb-0">
372
+ By breaking down the UI into smaller, self-contained pieces, teams can work in parallel on different parts of
373
+ the application without stepping on each other&apos;s toes. Each component encapsulates its own logic, styles,
374
+ and behavior, making it easier to reason about and test in isolation.
375
+ </p>
376
+ <p className="leading-relaxed mt-0 mb-0">
377
+ Modern frameworks and libraries have embraced this pattern, providing tools and conventions that make it
378
+ straightforward to create, compose, and manage components at scale. The result is a more predictable,
379
+ scalable, and enjoyable development experience.
380
+ </p>
381
+ </div>
382
+ </Dialog.Content>
383
+ <Dialog.Footer>
384
+ <div className="flex items-center justify-between w-full text-sm text-surface-500 dark:text-surface-400">
385
+ <span>Last updated: Feb 1, 2026</span>
386
+ <span>Author: Jane Doe</span>
387
+ </div>
388
+ </Dialog.Footer>
389
+ </Dialog.Popup>
390
+ </Dialog.Positioner>
391
+ </Dialog.Portal>
392
+ </Dialog.Root>
393
+ </div>
394
+ );
395
+ }
396
+ ```
397
+
398
+ ### Full Screen
399
+
400
+ The `fullScreen` prop opens the dialog in maximized mode. Without a _Dialog.Maximizable_ button, the dialog remains full screen until closed.
401
+
402
+ ```tsx
403
+ import { Image as ImageIcon } from '@primeicons/react';
404
+ import { Times } from '@primeicons/react/times';
405
+ import { Button } from '@primereact/ui/button';
406
+ import { Dialog } from '@primereact/ui/dialog';
407
+
408
+ const photos = Array.from({ length: 18 }, (_, i) => i + 1);
409
+
410
+ export default function FullScreenDemo() {
411
+ return (
412
+ <div className="flex justify-center">
413
+ <Dialog.Root fullScreen>
414
+ <Dialog.Trigger as={Button}>View Gallery</Dialog.Trigger>
415
+ <Dialog.Portal>
416
+ <Dialog.Backdrop />
417
+ <Dialog.Positioner>
418
+ <Dialog.Popup>
419
+ <Dialog.Header>
420
+ <Dialog.Title>Photo Gallery</Dialog.Title>
421
+ <Dialog.HeaderActions>
422
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
423
+ <Times />
424
+ </Dialog.Close>
425
+ </Dialog.HeaderActions>
426
+ </Dialog.Header>
427
+ <Dialog.Content>
428
+ <div className="flex flex-col gap-4">
429
+ <div className="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-3">
430
+ {photos.map((i) => (
431
+ <div
432
+ key={i}
433
+ className="aspect-square rounded-lg bg-surface-100 dark:bg-surface-800 flex items-center justify-center"
434
+ >
435
+ <ImageIcon className="text-2xl text-surface-400" />
436
+ </div>
437
+ ))}
438
+ </div>
439
+ <p className="text-sm text-surface-500 dark:text-surface-400 mt-0 mb-0">Showing 18 of 64 photos</p>
440
+ </div>
441
+ </Dialog.Content>
442
+ </Dialog.Popup>
443
+ </Dialog.Positioner>
444
+ </Dialog.Portal>
445
+ </Dialog.Root>
446
+ </div>
447
+ );
448
+ }
449
+ ```
450
+
451
+ ### Modal
452
+
453
+ A modal dialog with a backdrop that blocks interaction with the page. When `modal` and `dismissable` are both enabled, clicking outside the dialog closes it.
454
+
455
+ ```tsx
456
+ 'use client';
457
+ import { Times } from '@primeicons/react/times';
458
+ import { Button } from '@primereact/ui/button';
459
+ import { Dialog } from '@primereact/ui/dialog';
460
+ import { InputText } from '@primereact/ui/inputtext';
461
+ import { Label } from '@primereact/ui/label';
462
+
463
+ export default function ModalDemo() {
464
+ return (
465
+ <div className="flex justify-center">
466
+ <Dialog.Root modal dismissable>
467
+ <Dialog.Trigger as={Button}>Edit Profile</Dialog.Trigger>
468
+ <Dialog.Portal>
469
+ <Dialog.Backdrop />
470
+ <Dialog.Positioner>
471
+ <Dialog.Popup style={{ width: '25rem' }}>
472
+ <Dialog.Header>
473
+ <Dialog.Title>Edit Profile</Dialog.Title>
474
+ <Dialog.HeaderActions>
475
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
476
+ <Times />
477
+ </Dialog.Close>
478
+ </Dialog.HeaderActions>
479
+ </Dialog.Header>
480
+ <Dialog.Content>
481
+ <div className="flex flex-col gap-6">
482
+ <span className="text-surface-500 dark:text-surface-400">
483
+ Update your information. Click outside the dialog to dismiss.
484
+ </span>
485
+ <div className="flex flex-col gap-1">
486
+ <Label htmlFor="username" className="font-semibold">
487
+ Username
488
+ </Label>
489
+ <InputText id="username" />
490
+ </div>
491
+ <div className="flex flex-col gap-1">
492
+ <Label htmlFor="email" className="font-semibold">
493
+ Email
494
+ </Label>
495
+ <InputText id="email" />
496
+ </div>
497
+ <div className="flex justify-end gap-2">
498
+ <Dialog.Close as={Button} severity="secondary">
499
+ Cancel
500
+ </Dialog.Close>
501
+ <Dialog.Close as={Button}>Save</Dialog.Close>
502
+ </div>
503
+ </div>
504
+ </Dialog.Content>
505
+ </Dialog.Popup>
506
+ </Dialog.Positioner>
507
+ </Dialog.Portal>
508
+ </Dialog.Root>
509
+ </div>
510
+ );
511
+ }
512
+ ```
513
+
514
+ ### Without Modal
515
+
516
+ A dialog without a modal layer. The page remains interactive behind the dialog.
517
+
518
+ ```tsx
519
+ 'use client';
520
+ import { Times } from '@primeicons/react/times';
521
+ import { Button } from '@primereact/ui/button';
522
+ import { Dialog } from '@primereact/ui/dialog';
523
+ import { InputText } from '@primereact/ui/inputtext';
524
+ import { Label } from '@primereact/ui/label';
525
+
526
+ export default function WithoutModalDemo() {
527
+ return (
528
+ <div className="flex justify-center">
529
+ <Dialog.Root>
530
+ <Dialog.Trigger as={Button}>Show</Dialog.Trigger>
531
+ <Dialog.Portal>
532
+ <Dialog.Positioner>
533
+ <Dialog.Popup style={{ width: '25rem' }}>
534
+ <Dialog.Header>
535
+ <Dialog.Title>Edit Profile</Dialog.Title>
536
+ <Dialog.HeaderActions>
537
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
538
+ <Times />
539
+ </Dialog.Close>
540
+ </Dialog.HeaderActions>
541
+ </Dialog.Header>
542
+ <Dialog.Content>
543
+ <div className="flex flex-col gap-6">
544
+ <span className="text-surface-500 dark:text-surface-400">Update your information.</span>
545
+ <div className="flex flex-col gap-1">
546
+ <Label htmlFor="username" className="font-semibold">
547
+ Username
548
+ </Label>
549
+ <InputText id="username" />
550
+ </div>
551
+ <div className="flex flex-col gap-1">
552
+ <Label htmlFor="email" className="font-semibold">
553
+ Email
554
+ </Label>
555
+ <InputText id="email" />
556
+ </div>
557
+ <div className="flex justify-end gap-2">
558
+ <Dialog.Close as={Button} severity="secondary">
559
+ Cancel
560
+ </Dialog.Close>
561
+ <Dialog.Close as={Button}>Save</Dialog.Close>
562
+ </div>
563
+ </div>
564
+ </Dialog.Content>
565
+ </Dialog.Popup>
566
+ </Dialog.Positioner>
567
+ </Dialog.Portal>
568
+ </Dialog.Root>
569
+ </div>
570
+ );
571
+ }
572
+ ```
573
+
574
+ ### Confirmation
575
+
576
+ A common pattern for confirmation dialogs with warning messages and action buttons.
577
+
578
+ ```tsx
579
+ 'use client';
580
+ import { Button } from '@primereact/ui/button';
581
+ import { Dialog } from '@primereact/ui/dialog';
582
+
583
+ export default function ConfirmationDemo() {
584
+ return (
585
+ <div className="flex justify-center">
586
+ <Dialog.Root>
587
+ <Dialog.Trigger as={Button} severity="danger">
588
+ Delete Account
589
+ </Dialog.Trigger>
590
+ <Dialog.Portal>
591
+ <Dialog.Backdrop />
592
+ <Dialog.Positioner>
593
+ <Dialog.Popup style={{ width: '26rem' }}>
594
+ <Dialog.Header>
595
+ <Dialog.Title>Delete your account.</Dialog.Title>
596
+ </Dialog.Header>
597
+ <Dialog.Content>
598
+ <div className="flex flex-col gap-4">
599
+ <p className="text-surface-500 dark:text-surface-400 text-sm mt-0 mb-0">
600
+ This action cannot be undone. All of your data, including projects, files, and settings will be permanently
601
+ removed.
602
+ </p>
603
+ <div className="flex justify-end gap-2">
604
+ <Dialog.Close as={Button} severity="secondary">
605
+ Cancel
606
+ </Dialog.Close>
607
+ <Dialog.Close as={Button} severity="danger">
608
+ Delete
609
+ </Dialog.Close>
610
+ </div>
611
+ </div>
612
+ </Dialog.Content>
613
+ </Dialog.Popup>
614
+ </Dialog.Positioner>
615
+ </Dialog.Portal>
616
+ </Dialog.Root>
617
+ </div>
618
+ );
619
+ }
620
+ ```
621
+
622
+ ### Inside Scroll
623
+
624
+ When `scrollBehavior` is set to `inside`, the dialog content area scrolls while the header and footer remain fixed.
625
+
626
+ ```tsx
627
+ 'use client';
628
+ import { Times } from '@primeicons/react/times';
629
+ import { Button } from '@primereact/ui/button';
630
+ import { Dialog } from '@primereact/ui/dialog';
631
+ import { Tag } from '@primereact/ui/tag';
632
+
633
+ export default function InsideScrollDemo() {
634
+ return (
635
+ <div className="flex justify-center">
636
+ <Dialog.Root scrollBehavior="inside">
637
+ <Dialog.Trigger as={Button}>Inside Scroll</Dialog.Trigger>
638
+ <Dialog.Portal>
639
+ <Dialog.Backdrop />
640
+ <Dialog.Positioner>
641
+ <Dialog.Popup style={{ width: '40rem' }}>
642
+ <Dialog.Header>
643
+ <Dialog.Title>Terms of Service</Dialog.Title>
644
+ <Dialog.HeaderActions>
645
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
646
+ <Times />
647
+ </Dialog.Close>
648
+ </Dialog.HeaderActions>
649
+ </Dialog.Header>
650
+ <Dialog.Content>
651
+ <div className="flex flex-col gap-4">
652
+ <div className="flex items-center gap-2">
653
+ <Tag severity="info">Updated</Tag>
654
+ <span className="text-sm text-surface-500 dark:text-surface-400">Last revised: January 1, 2026</span>
655
+ </div>
656
+
657
+ <div>
658
+ <h3 className="text-base font-semibold mt-0 mb-2">1. Acceptance of Terms</h3>
659
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
660
+ By accessing and using this service, you accept and agree to be bound by the terms and provision of this
661
+ agreement. If you do not agree to abide by the above, please do not use this service.
662
+ </p>
663
+ </div>
664
+
665
+ <div>
666
+ <h3 className="text-base font-semibold mt-0 mb-2">2. Use License</h3>
667
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
668
+ Permission is granted to temporarily download one copy of the materials on this service for personal,
669
+ non-commercial transitory viewing only. This is the grant of a license, not a transfer of title, and under
670
+ this license you may not modify or copy the materials, use the materials for any commercial purpose, or
671
+ attempt to decompile or reverse engineer any software contained on this service.
672
+ </p>
673
+ </div>
674
+
675
+ <div>
676
+ <h3 className="text-base font-semibold mt-0 mb-2">3. Disclaimer</h3>
677
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
678
+ The materials on this service are provided on an &apos;as is&apos; basis. We make no warranties, expressed
679
+ or implied, and hereby disclaim and negate all other warranties including, without limitation, implied
680
+ warranties or conditions of merchantability, fitness for a particular purpose, or non-infringement of
681
+ intellectual property or other violation of rights.
682
+ </p>
683
+ </div>
684
+
685
+ <div>
686
+ <h3 className="text-base font-semibold mt-0 mb-2">4. Limitations</h3>
687
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
688
+ In no event shall we or our suppliers be liable for any damages (including, without limitation, damages
689
+ for loss of data or profit, or due to business interruption) arising out of the use or inability to use
690
+ the materials on this service, even if we or an authorized representative has been notified orally or in
691
+ writing of the possibility of such damage.
692
+ </p>
693
+ </div>
694
+
695
+ <div>
696
+ <h3 className="text-base font-semibold mt-0 mb-2">5. Privacy Policy</h3>
697
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
698
+ Your privacy is important to us. Our Privacy Policy explains how we collect, use, and protect your
699
+ personal information when you use our service. By using our service, you agree to the collection and use
700
+ of information in accordance with our Privacy Policy. We are committed to ensuring that your information
701
+ is secure and handled responsibly.
702
+ </p>
703
+ </div>
704
+
705
+ <div>
706
+ <h3 className="text-base font-semibold mt-0 mb-2">6. User Accounts</h3>
707
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
708
+ When you create an account with us, you must provide information that is accurate, complete, and current
709
+ at all times. Failure to do so constitutes a breach of the Terms, which may result in immediate
710
+ termination of your account on our service. You are responsible for safeguarding the password that you use
711
+ to access the service and for any activities or actions under your password.
712
+ </p>
713
+ </div>
714
+
715
+ <div>
716
+ <h3 className="text-base font-semibold mt-0 mb-2">7. Intellectual Property</h3>
717
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
718
+ The service and its original content, features, and functionality are and will remain the exclusive
719
+ property of the company and its licensors. The service is protected by copyright, trademark, and other
720
+ laws of both domestic and foreign countries. Our trademarks and trade dress may not be used in connection
721
+ with any product or service without the prior written consent of the company.
722
+ </p>
723
+ </div>
724
+
725
+ <div>
726
+ <h3 className="text-base font-semibold mt-0 mb-2">8. Termination</h3>
727
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
728
+ We may terminate or suspend your account immediately, without prior notice or liability, for any reason
729
+ whatsoever, including without limitation if you breach the Terms. Upon termination, your right to use the
730
+ service will immediately cease. If you wish to terminate your account, you may simply discontinue using
731
+ the service or contact us to request account deletion.
732
+ </p>
733
+ </div>
734
+
735
+ <div>
736
+ <h3 className="text-base font-semibold mt-0 mb-2">9. Indemnification</h3>
737
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
738
+ You agree to defend, indemnify, and hold harmless the company and its licensee and licensors, and their
739
+ employees, contractors, agents, officers, and directors, from and against any and all claims, damages,
740
+ obligations, losses, liabilities, costs or debt, and expenses, including but not limited to
741
+ attorney&apos;s fees, resulting from or arising out of your use and access of the service, or a breach of
742
+ these Terms.
743
+ </p>
744
+ </div>
745
+
746
+ <div>
747
+ <h3 className="text-base font-semibold mt-0 mb-2">10. Governing Law</h3>
748
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
749
+ These terms and conditions are governed by and construed in accordance with applicable laws and you
750
+ irrevocably submit to the exclusive jurisdiction of the courts in that location. Any claim relating to
751
+ this service shall be governed by the laws without regard to its conflict of law provisions.
752
+ </p>
753
+ </div>
754
+
755
+ <div>
756
+ <h3 className="text-base font-semibold mt-0 mb-2">11. Changes to Terms</h3>
757
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
758
+ We reserve the right, at our sole discretion, to modify or replace these Terms at any time. If a revision
759
+ is material we will try to provide at least 30 days&apos; notice prior to any new terms taking effect.
760
+ What constitutes a material change will be determined at our sole discretion. By continuing to access or
761
+ use our service after those revisions become effective, you agree to be bound by the revised terms.
762
+ </p>
763
+ </div>
764
+ </div>
765
+ </Dialog.Content>
766
+ <Dialog.Footer>
767
+ <Dialog.Close as={Button} severity="secondary">
768
+ Decline
769
+ </Dialog.Close>
770
+ <Dialog.Close as={Button}>Accept</Dialog.Close>
771
+ </Dialog.Footer>
772
+ </Dialog.Popup>
773
+ </Dialog.Positioner>
774
+ </Dialog.Portal>
775
+ </Dialog.Root>
776
+ </div>
777
+ );
778
+ }
779
+ ```
780
+
781
+ ### Outside Scroll
782
+
783
+ When `scrollBehavior` is set to `outside`, the entire dialog scrolls within the positioner, allowing the full dialog to move as a single unit.
784
+
785
+ ```tsx
786
+ 'use client';
787
+ import { Times } from '@primeicons/react/times';
788
+ import { Button } from '@primereact/ui/button';
789
+ import { Dialog } from '@primereact/ui/dialog';
790
+ import { Tag } from '@primereact/ui/tag';
791
+
792
+ export default function OutsideScrollDemo() {
793
+ return (
794
+ <div className="flex justify-center">
795
+ <Dialog.Root scrollBehavior="outside" draggable keepInViewport={false}>
796
+ <Dialog.Trigger as={Button}>Outside Scroll</Dialog.Trigger>
797
+ <Dialog.Portal>
798
+ <Dialog.Backdrop />
799
+ <Dialog.Positioner>
800
+ <Dialog.Popup style={{ width: '40rem' }}>
801
+ <Dialog.Header>
802
+ <Dialog.Title>Terms of Service</Dialog.Title>
803
+ <Dialog.HeaderActions>
804
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
805
+ <Times />
806
+ </Dialog.Close>
807
+ </Dialog.HeaderActions>
808
+ </Dialog.Header>
809
+ <Dialog.Content>
810
+ <div className="flex flex-col gap-4">
811
+ <div className="flex items-center gap-2">
812
+ <Tag severity="info">Updated</Tag>
813
+ <span className="text-sm text-surface-500 dark:text-surface-400">Last revised: January 1, 2026</span>
814
+ </div>
815
+
816
+ <div>
817
+ <h3 className="text-base font-semibold mt-0 mb-2">1. Acceptance of Terms</h3>
818
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
819
+ By accessing and using this service, you accept and agree to be bound by the terms and provision of this
820
+ agreement. If you do not agree to abide by the above, please do not use this service.
821
+ </p>
822
+ </div>
823
+
824
+ <div>
825
+ <h3 className="text-base font-semibold mt-0 mb-2">2. Use License</h3>
826
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
827
+ Permission is granted to temporarily download one copy of the materials on this service for personal,
828
+ non-commercial transitory viewing only. This is the grant of a license, not a transfer of title, and under
829
+ this license you may not modify or copy the materials, use the materials for any commercial purpose, or
830
+ attempt to decompile or reverse engineer any software contained on this service.
831
+ </p>
832
+ </div>
833
+
834
+ <div>
835
+ <h3 className="text-base font-semibold mt-0 mb-2">3. Disclaimer</h3>
836
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
837
+ The materials on this service are provided on an &apos;as is&apos; basis. We make no warranties, expressed
838
+ or implied, and hereby disclaim and negate all other warranties including, without limitation, implied
839
+ warranties or conditions of merchantability, fitness for a particular purpose, or non-infringement of
840
+ intellectual property or other violation of rights.
841
+ </p>
842
+ </div>
843
+
844
+ <div>
845
+ <h3 className="text-base font-semibold mt-0 mb-2">4. Limitations</h3>
846
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
847
+ In no event shall we or our suppliers be liable for any damages (including, without limitation, damages
848
+ for loss of data or profit, or due to business interruption) arising out of the use or inability to use
849
+ the materials on this service, even if we or an authorized representative has been notified orally or in
850
+ writing of the possibility of such damage.
851
+ </p>
852
+ </div>
853
+
854
+ <div>
855
+ <h3 className="text-base font-semibold mt-0 mb-2">5. Privacy Policy</h3>
856
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
857
+ Your privacy is important to us. Our Privacy Policy explains how we collect, use, and protect your
858
+ personal information when you use our service. By using our service, you agree to the collection and use
859
+ of information in accordance with our Privacy Policy. We are committed to ensuring that your information
860
+ is secure and handled responsibly.
861
+ </p>
862
+ </div>
863
+
864
+ <div>
865
+ <h3 className="text-base font-semibold mt-0 mb-2">6. User Accounts</h3>
866
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
867
+ When you create an account with us, you must provide information that is accurate, complete, and current
868
+ at all times. Failure to do so constitutes a breach of the Terms, which may result in immediate
869
+ termination of your account on our service. You are responsible for safeguarding the password that you use
870
+ to access the service and for any activities or actions under your password.
871
+ </p>
872
+ </div>
873
+
874
+ <div>
875
+ <h3 className="text-base font-semibold mt-0 mb-2">7. Intellectual Property</h3>
876
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
877
+ The service and its original content, features, and functionality are and will remain the exclusive
878
+ property of the company and its licensors. The service is protected by copyright, trademark, and other
879
+ laws of both domestic and foreign countries. Our trademarks and trade dress may not be used in connection
880
+ with any product or service without the prior written consent of the company.
881
+ </p>
882
+ </div>
883
+
884
+ <div>
885
+ <h3 className="text-base font-semibold mt-0 mb-2">8. Termination</h3>
886
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
887
+ We may terminate or suspend your account immediately, without prior notice or liability, for any reason
888
+ whatsoever, including without limitation if you breach the Terms. Upon termination, your right to use the
889
+ service will immediately cease. If you wish to terminate your account, you may simply discontinue using
890
+ the service or contact us to request account deletion.
891
+ </p>
892
+ </div>
893
+
894
+ <div>
895
+ <h3 className="text-base font-semibold mt-0 mb-2">9. Indemnification</h3>
896
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
897
+ You agree to defend, indemnify, and hold harmless the company and its licensee and licensors, and their
898
+ employees, contractors, agents, officers, and directors, from and against any and all claims, damages,
899
+ obligations, losses, liabilities, costs or debt, and expenses, including but not limited to
900
+ attorney&apos;s fees, resulting from or arising out of your use and access of the service, or a breach of
901
+ these Terms.
902
+ </p>
903
+ </div>
904
+
905
+ <div>
906
+ <h3 className="text-base font-semibold mt-0 mb-2">10. Governing Law</h3>
907
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
908
+ These terms and conditions are governed by and construed in accordance with applicable laws and you
909
+ irrevocably submit to the exclusive jurisdiction of the courts in that location. Any claim relating to
910
+ this service shall be governed by the laws without regard to its conflict of law provisions.
911
+ </p>
912
+ </div>
913
+
914
+ <div>
915
+ <h3 className="text-base font-semibold mt-0 mb-2">11. Changes to Terms</h3>
916
+ <p className="text-sm leading-relaxed mt-0 mb-0 text-surface-600 dark:text-surface-300">
917
+ We reserve the right, at our sole discretion, to modify or replace these Terms at any time. If a revision
918
+ is material we will try to provide at least 30 days&apos; notice prior to any new terms taking effect.
919
+ What constitutes a material change will be determined at our sole discretion. By continuing to access or
920
+ use our service after those revisions become effective, you agree to be bound by the revised terms.
921
+ </p>
922
+ </div>
923
+ </div>
924
+ </Dialog.Content>
925
+ <Dialog.Footer>
926
+ <Dialog.Close as={Button} severity="secondary">
927
+ Decline
928
+ </Dialog.Close>
929
+ <Dialog.Close as={Button}>Accept</Dialog.Close>
930
+ </Dialog.Footer>
931
+ </Dialog.Popup>
932
+ </Dialog.Positioner>
933
+ </Dialog.Portal>
934
+ </Dialog.Root>
935
+ </div>
936
+ );
937
+ }
938
+ ```
939
+
940
+ ### Responsive
941
+
942
+ Dialog width adapts to different screen sizes using responsive CSS classes on the _Dialog.Popup_.
943
+
944
+ ```tsx
945
+ 'use client';
946
+ import { Times } from '@primeicons/react/times';
947
+ import { Button } from '@primereact/ui/button';
948
+ import { Dialog } from '@primereact/ui/dialog';
949
+ import { InputText } from '@primereact/ui/inputtext';
950
+ import { Label } from '@primereact/ui/label';
951
+
952
+ export default function ResponsiveDemo() {
953
+ return (
954
+ <div className="flex justify-center">
955
+ <Dialog.Root>
956
+ <Dialog.Trigger as={Button}>New Event</Dialog.Trigger>
957
+ <Dialog.Portal>
958
+ <Dialog.Backdrop />
959
+ <Dialog.Positioner>
960
+ <Dialog.Popup className="w-[90vw] md:w-[75vw] lg:w-[50vw]">
961
+ <Dialog.Header>
962
+ <Dialog.Title>Create Event</Dialog.Title>
963
+ <Dialog.HeaderActions>
964
+ <Dialog.Close as={Button} iconOnly variant="text" rounded severity="secondary">
965
+ <Times />
966
+ </Dialog.Close>
967
+ </Dialog.HeaderActions>
968
+ </Dialog.Header>
969
+ <Dialog.Content>
970
+ <div className="flex flex-col gap-4">
971
+ <div className="flex flex-col gap-1">
972
+ <Label htmlFor="eventName" className="text-sm font-semibold">
973
+ Event Name
974
+ </Label>
975
+ <InputText id="eventName" placeholder="e.g. Team Standup" />
976
+ </div>
977
+ <div className="flex flex-col md:flex-row gap-4">
978
+ <div className="flex flex-col gap-1 flex-1">
979
+ <Label htmlFor="organizer" className="text-sm font-semibold">
980
+ Organizer
981
+ </Label>
982
+ <InputText id="organizer" placeholder="Name" />
983
+ </div>
984
+ <div className="flex flex-col gap-1 flex-1">
985
+ <Label htmlFor="email" className="text-sm font-semibold">
986
+ Email
987
+ </Label>
988
+ <InputText id="email" placeholder="organizer@example.com" />
989
+ </div>
990
+ </div>
991
+ <div className="flex flex-col gap-1">
992
+ <Label htmlFor="location" className="text-sm font-semibold">
993
+ Location
994
+ </Label>
995
+ <InputText id="location" placeholder="Add a location or video link" />
996
+ </div>
997
+ <div className="flex flex-col gap-1">
998
+ <Label htmlFor="description" className="text-sm font-semibold">
999
+ Description
1000
+ </Label>
1001
+ <InputText id="description" placeholder="Event details" />
1002
+ </div>
1003
+ <div className="flex flex-col sm:flex-row justify-end gap-2 mt-2">
1004
+ <Dialog.Close as={Button} severity="secondary">
1005
+ Cancel
1006
+ </Dialog.Close>
1007
+ <Dialog.Close as={Button}>Create Event</Dialog.Close>
1008
+ </div>
1009
+ </div>
1010
+ </Dialog.Content>
1011
+ </Dialog.Popup>
1012
+ </Dialog.Positioner>
1013
+ </Dialog.Portal>
1014
+ </Dialog.Root>
1015
+ </div>
1016
+ );
1017
+ }
1018
+ ```
1019
+
1020
+ ## Related
1021
+
1022
+ ### Sub-Components
1023
+
1024
+ See [Primitive API](/docs/primitive/components/dialog#api) for `DialogRoot`, `DialogTrigger`, `DialogPortal`, `DialogBackdrop`, `DialogPositioner`, `DialogPopup`, `DialogHeader`, `DialogTitle`, `DialogHeaderActions`, `DialogMaximizable`, `DialogClose`, `DialogContent`, `DialogFooter` component documentation.
1025
+
1026
+ ### Hooks
1027
+
1028
+ See [Headless API](/docs/headless/components/dialog#api) for `useDialog` hook documentation.
1029
+
1030
+ ### Accessibility
1031
+
1032
+ See [Dialog Primitive](/docs/primitive/components/dialog#accessibility) for WAI-ARIA compliance details and keyboard support.
1033
+
1034
+
1035
+ ## Theming
1036
+
1037
+ ### CSS Classes
1038
+
1039
+ List of class names used in the styled mode.
1040
+
1041
+ <DocTable name="Dialog" category="style" />
1042
+
1043
+ ### Design Tokens
1044
+
1045
+ List of design tokens.
1046
+
1047
+ <DocTable name="Dialog" category="token" />