@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,462 @@
1
+ # Tabs
2
+
3
+ Tabs is a component that displays a list of tabs and allows the user to select one.
4
+
5
+ ```tsx
6
+ import { Code, CodeBranch, Cog, InfoCircle } from '@primeicons/react';
7
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
8
+
9
+ export default function Preview() {
10
+ return (
11
+ <Tabs defaultValue="tab1">
12
+ <TabsList>
13
+ <TabsTab value="tab1" className="flex items-center gap-2">
14
+ <Code />
15
+ Code
16
+ </TabsTab>
17
+ <TabsTab value="tab2" className="flex items-center gap-2">
18
+ <InfoCircle />
19
+ Issues
20
+ </TabsTab>
21
+ <TabsTab value="tab3" className="flex items-center gap-2">
22
+ <CodeBranch />
23
+ Pull Requests
24
+ </TabsTab>
25
+ <TabsTab value="tab4" className="flex items-center gap-2">
26
+ <Cog />
27
+ Settings
28
+ </TabsTab>
29
+ </TabsList>
30
+ <TabsPanels>
31
+ <TabsPanel value="tab1">
32
+ <h2 className="text-lg font-bold">Code</h2>
33
+ <p className="text-surface-500 mt-1">
34
+ Browse the source files, review the latest commits, and clone the repository to get started.
35
+ </p>
36
+ </TabsPanel>
37
+ <TabsPanel value="tab2">
38
+ <h2 className="text-lg font-bold">Issues</h2>
39
+ <p className="text-surface-500 mt-1">Track open bugs, feature requests, and ongoing discussions reported by the community.</p>
40
+ </TabsPanel>
41
+ <TabsPanel value="tab3">
42
+ <h2 className="text-lg font-bold">Pull Requests</h2>
43
+ <p className="text-surface-500 mt-1">Review proposed changes, leave feedback, and merge contributions into the main branch.</p>
44
+ </TabsPanel>
45
+ <TabsPanel value="tab4">
46
+ <h2 className="text-lg font-bold">Settings</h2>
47
+ <p className="text-surface-500 mt-1">
48
+ Manage repository access, configure integrations, and adjust visibility and collaboration rules.
49
+ </p>
50
+ </TabsPanel>
51
+ </TabsPanels>
52
+ </Tabs>
53
+ );
54
+ }
55
+ ```
56
+
57
+ ## Installation
58
+
59
+ <DocTabs value="CLI">
60
+ <DocTabsList>
61
+ <DocTabsTab value="CLI">Shadcn CLI</DocTabsTab>
62
+ <DocTabsTab value="Manual">Manual</DocTabsTab>
63
+ </DocTabsList>
64
+ <DocTabsPanel value="CLI">
65
+ ```bash
66
+ npx shadcn@latest add https://primereact.dev/r/tabs.json
67
+ ```
68
+ </DocTabsPanel>
69
+ <DocTabsPanel value="Manual">
70
+ <DocStepper>
71
+ <DocStep>
72
+ Copy and paste the following code into your project
73
+ <DocSourceViewer name="components/ui/tabs" />
74
+ </DocStep>
75
+ <DocStep>
76
+ Update the import paths to match your project setup.
77
+ </DocStep>
78
+ </DocStepper>
79
+ </DocTabsPanel>
80
+ </DocTabs>
81
+
82
+ ## Usage
83
+
84
+ ```tsx
85
+ import { Tabs, TabsList, TabsTab, TabsPanels, TabsPanel } from '@/components/ui/tabs';
86
+ ```
87
+
88
+ ```tsx
89
+ <Tabs>
90
+ <TabsList>
91
+ <TabsTab />
92
+ </TabsList>
93
+ <TabsPanels>
94
+ <TabsPanel />
95
+ </TabsPanels>
96
+ </Tabs>
97
+ ```
98
+
99
+ ## Examples
100
+
101
+ ### Basic
102
+
103
+ ```tsx
104
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
105
+
106
+ export default function BasicDemo() {
107
+ return (
108
+ <Tabs defaultValue="tab1">
109
+ <TabsList>
110
+ <TabsTab value="tab1">Account Info</TabsTab>
111
+ <TabsTab value="tab2">Payment</TabsTab>
112
+ <TabsTab value="tab3">Preferences</TabsTab>
113
+ </TabsList>
114
+ <TabsPanels>
115
+ <TabsPanel value="tab1">
116
+ <h2 className="text-lg font-bold">Account Info</h2>
117
+ <p className="text-surface-500 mt-1">Update your personal information such as name, email address, and profile picture.</p>
118
+ </TabsPanel>
119
+ <TabsPanel value="tab2">
120
+ <h2 className="text-lg font-bold">Payment</h2>
121
+ <p className="text-surface-500 mt-1">Manage your subscription plan, view invoices, and update your payment method.</p>
122
+ </TabsPanel>
123
+ <TabsPanel value="tab3">
124
+ <h2 className="text-lg font-bold">Preferences</h2>
125
+ <p className="text-surface-500 mt-1">Customize how the application looks and behaves to match your personal preferences.</p>
126
+ </TabsPanel>
127
+ </TabsPanels>
128
+ </Tabs>
129
+ );
130
+ }
131
+ ```
132
+
133
+ ### Dynamic
134
+
135
+ Create tabs from an array to keep labels and panel content in sync.
136
+
137
+ ```tsx
138
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
139
+
140
+ const tabs = [
141
+ { id: 'tab1', title: 'Account Info', content: 'Update your personal information such as name, email address, and profile picture.' },
142
+ { id: 'tab2', title: 'Payment', content: 'Manage your subscription plan, view invoices, and update your payment method.' },
143
+ { id: 'tab3', title: 'Preferences', content: 'Customize how the application looks and behaves to match your personal preferences.' }
144
+ ];
145
+
146
+ export default function DynamicDemo() {
147
+ return (
148
+ <Tabs defaultValue="tab1">
149
+ <TabsList>
150
+ {tabs.map((tab) => (
151
+ <TabsTab key={tab.id} value={tab.id}>
152
+ {tab.title}
153
+ </TabsTab>
154
+ ))}
155
+ </TabsList>
156
+ <TabsPanels>
157
+ {tabs.map((tab) => (
158
+ <TabsPanel key={tab.id} value={tab.id}>
159
+ <h2 className="text-lg font-bold">{tab.title}</h2>
160
+ <p className="text-surface-500 mt-1">{tab.content}</p>
161
+ </TabsPanel>
162
+ ))}
163
+ </TabsPanels>
164
+ </Tabs>
165
+ );
166
+ }
167
+ ```
168
+
169
+ ### Controlled
170
+
171
+ Control the active tab with `value` and `onValueChange`.
172
+
173
+ ```tsx
174
+ 'use client';
175
+ import type { TabsRootChangeEvent, TabsRootProps } from 'primereact/tabs';
176
+ import { Button } from '@/components/ui/button';
177
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
178
+ import * as React from 'react';
179
+
180
+ const tabs = [
181
+ { id: 'tab1', title: 'Account Info', content: 'Update your personal information such as name, email address, and profile picture.' },
182
+ { id: 'tab2', title: 'Payment', content: 'Manage your subscription plan, view invoices, and update your payment method.' },
183
+ { id: 'tab3', title: 'Preferences', content: 'Customize how the application looks and behaves to match your personal preferences.' }
184
+ ];
185
+
186
+ export default function ControlledDemo() {
187
+ const [activeTab, setActiveTab] = React.useState<TabsRootProps['value']>('tab1');
188
+
189
+ return (
190
+ <div className="space-y-4">
191
+ <Button onClick={() => setActiveTab('tab2')}>Go to Payment</Button>
192
+ <Tabs value={activeTab} onValueChange={(e: TabsRootChangeEvent) => setActiveTab(e.value)}>
193
+ <TabsList>
194
+ {tabs.map((tab) => (
195
+ <TabsTab key={tab.id} value={tab.id}>
196
+ {tab.title}
197
+ </TabsTab>
198
+ ))}
199
+ </TabsList>
200
+ <TabsPanels>
201
+ {tabs.map((tab) => (
202
+ <TabsPanel key={tab.id} value={tab.id}>
203
+ <h2 className="text-lg font-bold">{tab.title}</h2>
204
+ <p className="text-surface-500 mt-1">{tab.content}</p>
205
+ </TabsPanel>
206
+ ))}
207
+ </TabsPanels>
208
+ </Tabs>
209
+ </div>
210
+ );
211
+ }
212
+ ```
213
+
214
+ ### Scrollable
215
+
216
+ Enable `scrollable` to navigate long tab lists with previous and next buttons.
217
+
218
+ ```tsx
219
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
220
+
221
+ export default function ScrollableDemo() {
222
+ return (
223
+ <Tabs defaultValue={'0'}>
224
+ <TabsList>
225
+ {scrollableTabs.map((tab) => (
226
+ <TabsTab key={tab.value} value={tab.value}>
227
+ {tab.title}
228
+ </TabsTab>
229
+ ))}
230
+ </TabsList>
231
+ <TabsPanels>
232
+ {scrollableTabs.map((tab) => (
233
+ <TabsPanel key={tab.value} value={tab.value}>
234
+ <h2 className="text-lg font-bold">{tab.title}</h2>
235
+ <p className="text-surface-500 mt-1">{tab.content}</p>
236
+ </TabsPanel>
237
+ ))}
238
+ </TabsPanels>
239
+ </Tabs>
240
+ );
241
+ }
242
+
243
+ const sentences = [
244
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
245
+ 'Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
246
+ 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris.',
247
+ 'Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore.',
248
+ 'Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia.',
249
+ 'Curabitur pretium tincidunt lacus, nec viverra velit semper at.',
250
+ 'Fusce condimentum nunc ac nisi vulputate fringilla.',
251
+ 'Donec fermentum porttitor nunc, vitae pellentesque tortor.',
252
+ 'Pellentesque habitant morbi tristique senectus et netus et malesuada fames.',
253
+ 'Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia.'
254
+ ];
255
+
256
+ const scrollableTabs = Array.from({ length: 50 }, (_, i) => {
257
+ const start = i % sentences.length;
258
+ const content = Array.from({ length: 4 }, (_, j) => sentences[(start + j) % sentences.length]).join(' ');
259
+
260
+ return { title: `Tab ${i + 1}`, value: `${i}`, content };
261
+ });
262
+ ```
263
+
264
+ ### Select on Focus
265
+
266
+ Set `selectOnFocus` to activate tabs on focus.
267
+
268
+ ```tsx
269
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
270
+
271
+ const tabs = [
272
+ { id: 'tab1', title: 'Account Info', content: 'Update your personal information such as name, email address, and profile picture.' },
273
+ { id: 'tab2', title: 'Payment', content: 'Manage your subscription plan, view invoices, and update your payment method.' },
274
+ { id: 'tab3', title: 'Preferences', content: 'Customize how the application looks and behaves to match your personal preferences.' }
275
+ ];
276
+
277
+ export default function FocusSelectionDemo() {
278
+ return (
279
+ <Tabs defaultValue="tab1" selectOnFocus>
280
+ <TabsList>
281
+ {tabs.map((tab) => (
282
+ <TabsTab key={tab.id} value={tab.id}>
283
+ {tab.title}
284
+ </TabsTab>
285
+ ))}
286
+ </TabsList>
287
+ <TabsPanels>
288
+ {tabs.map((tab) => (
289
+ <TabsPanel key={tab.id} value={tab.id}>
290
+ <h2 className="text-lg font-bold">{tab.title}</h2>
291
+ <p className="text-surface-500 mt-1">{tab.content}</p>
292
+ </TabsPanel>
293
+ ))}
294
+ </TabsPanels>
295
+ </Tabs>
296
+ );
297
+ }
298
+ ```
299
+
300
+ ### Disabled
301
+
302
+ Set `disabled` on `TabsTab` to prevent selection.
303
+
304
+ ```tsx
305
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
306
+
307
+ export default function DisabledDemo() {
308
+ return (
309
+ <Tabs defaultValue="tab1">
310
+ <TabsList>
311
+ <TabsTab value="tab1">Account Info</TabsTab>
312
+ <TabsTab value="tab2" disabled>
313
+ Payment
314
+ </TabsTab>
315
+ <TabsTab value="tab3">Preferences</TabsTab>
316
+ </TabsList>
317
+ <TabsPanels>
318
+ <TabsPanel value="tab1">
319
+ <h2 className="text-lg font-bold">Account Info</h2>
320
+ <p className="text-surface-500 mt-1">Update your personal information such as name, email address, and profile picture.</p>
321
+ </TabsPanel>
322
+ <TabsPanel value="tab2">
323
+ <h2 className="text-lg font-bold">Payment</h2>
324
+ <p className="text-surface-500 mt-1">Manage your subscription plan, view invoices, and update your payment method.</p>
325
+ </TabsPanel>
326
+ <TabsPanel value="tab3">
327
+ <h2 className="text-lg font-bold">Preferences</h2>
328
+ <p className="text-surface-500 mt-1">Customize how the application looks and behaves to match your personal preferences.</p>
329
+ </TabsPanel>
330
+ </TabsPanels>
331
+ </Tabs>
332
+ );
333
+ }
334
+ ```
335
+
336
+ ### Template
337
+
338
+ Use custom markup inside `TabsTab` and `TabsPanel` to build richer tab content.
339
+
340
+ ```tsx
341
+ import { Badge } from '@/components/ui/badge';
342
+ import { Button } from '@/components/ui/button';
343
+ import { InputText } from '@/components/ui/inputtext';
344
+ import { Label } from '@/components/ui/label';
345
+ import { ToggleSwitch } from '@/components/ui/toggleswitch';
346
+ import { Tabs, TabsList, TabsPanel, TabsPanels, TabsTab } from '@/components/ui/tabs';
347
+ import { Cog, CreditCard, User } from '@primeicons/react';
348
+
349
+ const tabs = [
350
+ {
351
+ id: 'tab1',
352
+ title: 'Account Info',
353
+ icon: User,
354
+ content: 'Update your personal information such as name, email address, and profile picture.'
355
+ },
356
+ {
357
+ id: 'tab2',
358
+ title: 'Payment',
359
+ icon: CreditCard,
360
+ badge: 'New',
361
+ content: 'Manage your subscription plan, view invoices, and update your payment method.'
362
+ },
363
+ {
364
+ id: 'tab3',
365
+ title: 'Preferences',
366
+ icon: Cog,
367
+ content: 'Customize how the application looks and behaves to match your personal preferences.'
368
+ }
369
+ ];
370
+
371
+ export default function TemplateDemo() {
372
+ return (
373
+ <Tabs defaultValue="tab1" className="max-w-md mx-auto">
374
+ <TabsList>
375
+ {tabs.map((tab) => (
376
+ <TabsTab key={tab.id} value={tab.id} className="flex items-center gap-2">
377
+ <tab.icon />
378
+ {tab.title}
379
+ {tab.badge && <Badge size="small">{tab.badge}</Badge>}
380
+ </TabsTab>
381
+ ))}
382
+ </TabsList>
383
+ <TabsPanels>
384
+ <TabsPanel value="tab1">
385
+ <p className="mt-2 mb-8 text-surface-500">Update your personal information such as name, email address, and profile picture.</p>
386
+ <form>
387
+ <div className="space-y-4">
388
+ <div className="flex flex-col gap-1">
389
+ <Label htmlFor="username">Username</Label>
390
+ <InputText id="username" placeholder="john.doe" />
391
+ </div>
392
+ <div className="flex flex-col gap-1">
393
+ <Label htmlFor="email">Email</Label>
394
+ <InputText id="email" placeholder="john.doe@example.com" />
395
+ </div>
396
+ </div>
397
+ <Button className="mt-8 w-fit">Save Changes</Button>
398
+ </form>
399
+ </TabsPanel>
400
+ <TabsPanel value="tab2">
401
+ <p className="mt-2 mb-8 text-surface-500">Manage your subscription plan, view invoices, and update your payment method.</p>
402
+ <form>
403
+ <div className="space-y-4">
404
+ <div className="flex flex-col gap-1">
405
+ <Label htmlFor="cardName">Cardholder Name</Label>
406
+ <InputText id="cardName" placeholder="John Doe" />
407
+ </div>
408
+ <div className="flex flex-col gap-1">
409
+ <Label htmlFor="cardNumber">Card Number</Label>
410
+ <InputText id="cardNumber" placeholder="0000 0000 0000 0000" />
411
+ </div>
412
+ <div className="flex flex-col gap-1">
413
+ <Label htmlFor="expiryDate">Expiry Date</Label>
414
+ <InputText id="expiryDate" placeholder="MM/YY" />
415
+ </div>
416
+ </div>
417
+ <Button className="mt-8 w-fit">Update Payment</Button>
418
+ </form>
419
+ </TabsPanel>
420
+ <TabsPanel value="tab3">
421
+ <p className="mt-2 mb-8 text-surface-500">Customize how the application looks and behaves to match your personal preferences.</p>
422
+ <form>
423
+ <div className="space-y-4">
424
+ <div className="flex items-center justify-between">
425
+ <Label htmlFor="darkMode">Dark Mode</Label>
426
+ <ToggleSwitch inputId="darkMode" />
427
+ </div>
428
+ <div className="flex items-center justify-between">
429
+ <Label htmlFor="emailNotifications">Email Notifications</Label>
430
+ <ToggleSwitch inputId="emailNotifications" defaultChecked />
431
+ </div>
432
+ <div className="flex items-center justify-between">
433
+ <Label htmlFor="desktopNotifications">Desktop Notifications</Label>
434
+ <ToggleSwitch inputId="desktopNotifications" />
435
+ </div>
436
+ </div>
437
+ <Button className="w-fit mt-8 ml-auto mr-0">Save Preferences</Button>
438
+ </form>
439
+ </TabsPanel>
440
+ </TabsPanels>
441
+ </Tabs>
442
+ );
443
+ }
444
+ ```
445
+
446
+ ## Accessibility
447
+
448
+ ### Screen Reader
449
+
450
+ `TabsTab` elements use the `tab` role and expose selected and disabled state via ARIA attributes. `TabsPanel` uses the `tabpanel` role and links back to its related tab with `aria-labelledby`.
451
+
452
+ ### Tab Keyboard Support
453
+
454
+ | Key | Function |
455
+ | ------------- | ---------------------------------------------------------------------------------------------------- |
456
+ | `tab` | Moves focus to the active tab and then proceeds to the next focusable element. |
457
+ | `enter` | Activates the focused tab header. |
458
+ | `space` | Activates the focused tab header. |
459
+ | `right arrow` | Moves focus to the next header. If focus is on the last header, moves focus to the first header. |
460
+ | `left arrow` | Moves focus to the previous header. If focus is on the first header, moves focus to the last header. |
461
+ | `home` | Moves focus to the first header. |
462
+ | `end` | Moves focus to the last header. |