@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.
- package/LICENSE.md +45 -0
- package/README.md +94 -0
- package/data/llms/headless/add-ons/introduction.md +16 -0
- package/data/llms/headless/components/accordion/api.json +252 -0
- package/data/llms/headless/components/accordion.md +196 -0
- package/data/llms/headless/components/animateonscroll/api.json +88 -0
- package/data/llms/headless/components/animateonscroll.md +141 -0
- package/data/llms/headless/components/autocomplete/api.json +787 -0
- package/data/llms/headless/components/autocomplete.md +249 -0
- package/data/llms/headless/components/avatar/api.json +154 -0
- package/data/llms/headless/components/avatar.md +149 -0
- package/data/llms/headless/components/badge/api.json +68 -0
- package/data/llms/headless/components/badge.md +150 -0
- package/data/llms/headless/components/breadcrumb/api.json +142 -0
- package/data/llms/headless/components/breadcrumb.md +149 -0
- package/data/llms/headless/components/button/api.json +62 -0
- package/data/llms/headless/components/button.md +73 -0
- package/data/llms/headless/components/card/api.json +36 -0
- package/data/llms/headless/components/card.md +96 -0
- package/data/llms/headless/components/carousel/api.json +793 -0
- package/data/llms/headless/components/carousel.md +196 -0
- package/data/llms/headless/components/checkbox/api.json +593 -0
- package/data/llms/headless/components/checkbox.md +184 -0
- package/data/llms/headless/components/chip/api.json +107 -0
- package/data/llms/headless/components/chip.md +141 -0
- package/data/llms/headless/components/collapsible/api.json +301 -0
- package/data/llms/headless/components/collapsible.md +136 -0
- package/data/llms/headless/components/compare/api.json +533 -0
- package/data/llms/headless/components/compare.md +142 -0
- package/data/llms/headless/components/contextmenu/api.json +495 -0
- package/data/llms/headless/components/contextmenu.md +282 -0
- package/data/llms/headless/components/datatable/api.json +1680 -0
- package/data/llms/headless/components/datatable.md +258 -0
- package/data/llms/headless/components/dataview/api.json +199 -0
- package/data/llms/headless/components/dataview.md +147 -0
- package/data/llms/headless/components/datepicker/api.json +2796 -0
- package/data/llms/headless/components/datepicker.md +456 -0
- package/data/llms/headless/components/dialog/api.json +626 -0
- package/data/llms/headless/components/dialog.md +280 -0
- package/data/llms/headless/components/divider/api.json +130 -0
- package/data/llms/headless/components/divider.md +92 -0
- package/data/llms/headless/components/drawer/api.json +425 -0
- package/data/llms/headless/components/drawer.md +220 -0
- package/data/llms/headless/components/fieldset/api.json +195 -0
- package/data/llms/headless/components/fieldset.md +154 -0
- package/data/llms/headless/components/fileupload/api.json +905 -0
- package/data/llms/headless/components/fileupload.md +323 -0
- package/data/llms/headless/components/floatlabel/api.json +36 -0
- package/data/llms/headless/components/floatlabel.md +19 -0
- package/data/llms/headless/components/fluid/api.json +36 -0
- package/data/llms/headless/components/fluid.md +19 -0
- package/data/llms/headless/components/focustrap/api.json +135 -0
- package/data/llms/headless/components/focustrap.md +125 -0
- package/data/llms/headless/components/gallery/api.json +1349 -0
- package/data/llms/headless/components/gallery.md +355 -0
- package/data/llms/headless/components/iconfield/api.json +62 -0
- package/data/llms/headless/components/iconfield.md +19 -0
- package/data/llms/headless/components/iftalabel/api.json +62 -0
- package/data/llms/headless/components/iftalabel.md +19 -0
- package/data/llms/headless/components/inplace/api.json +340 -0
- package/data/llms/headless/components/inplace.md +153 -0
- package/data/llms/headless/components/inputcolor/api.json +469 -0
- package/data/llms/headless/components/inputcolor.md +253 -0
- package/data/llms/headless/components/inputgroup/api.json +62 -0
- package/data/llms/headless/components/inputgroup.md +19 -0
- package/data/llms/headless/components/inputnumber/api.json +554 -0
- package/data/llms/headless/components/inputnumber.md +167 -0
- package/data/llms/headless/components/inputotp/api.json +276 -0
- package/data/llms/headless/components/inputotp.md +130 -0
- package/data/llms/headless/components/inputpassword/api.json +180 -0
- package/data/llms/headless/components/inputpassword.md +117 -0
- package/data/llms/headless/components/inputtags/api.json +497 -0
- package/data/llms/headless/components/inputtags.md +298 -0
- package/data/llms/headless/components/inputtext/api.json +81 -0
- package/data/llms/headless/components/inputtext.md +109 -0
- package/data/llms/headless/components/knob/api.json +429 -0
- package/data/llms/headless/components/knob.md +151 -0
- package/data/llms/headless/components/label/api.json +62 -0
- package/data/llms/headless/components/label.md +19 -0
- package/data/llms/headless/components/listbox/api.json +814 -0
- package/data/llms/headless/components/listbox.md +194 -0
- package/data/llms/headless/components/menu/api.json +1247 -0
- package/data/llms/headless/components/menu.md +283 -0
- package/data/llms/headless/components/message/api.json +131 -0
- package/data/llms/headless/components/message.md +143 -0
- package/data/llms/headless/components/metergroup/api.json +266 -0
- package/data/llms/headless/components/metergroup.md +129 -0
- package/data/llms/headless/components/motion/api.json +237 -0
- package/data/llms/headless/components/motion.md +160 -0
- package/data/llms/headless/components/navigationmenu/api.json +220 -0
- package/data/llms/headless/components/navigationmenu.md +166 -0
- package/data/llms/headless/components/orderlist/api.json +196 -0
- package/data/llms/headless/components/orderlist.md +221 -0
- package/data/llms/headless/components/organizationchart/api.json +372 -0
- package/data/llms/headless/components/organizationchart.md +254 -0
- package/data/llms/headless/components/paginator/api.json +311 -0
- package/data/llms/headless/components/paginator.md +187 -0
- package/data/llms/headless/components/panel/api.json +195 -0
- package/data/llms/headless/components/panel.md +150 -0
- package/data/llms/headless/components/picklist/api.json +293 -0
- package/data/llms/headless/components/picklist.md +270 -0
- package/data/llms/headless/components/popover/api.json +405 -0
- package/data/llms/headless/components/popover.md +301 -0
- package/data/llms/headless/components/portal/api.json +56 -0
- package/data/llms/headless/components/portal.md +102 -0
- package/data/llms/headless/components/positioner/api.json +165 -0
- package/data/llms/headless/components/positioner.md +181 -0
- package/data/llms/headless/components/progressbar/api.json +87 -0
- package/data/llms/headless/components/progressbar.md +122 -0
- package/data/llms/headless/components/progressspinner/api.json +337 -0
- package/data/llms/headless/components/progressspinner.md +128 -0
- package/data/llms/headless/components/radiobutton/api.json +569 -0
- package/data/llms/headless/components/radiobutton.md +195 -0
- package/data/llms/headless/components/rating/api.json +347 -0
- package/data/llms/headless/components/rating.md +181 -0
- package/data/llms/headless/components/scrollarea/api.json +730 -0
- package/data/llms/headless/components/scrollarea.md +232 -0
- package/data/llms/headless/components/select/api.json +829 -0
- package/data/llms/headless/components/select.md +262 -0
- package/data/llms/headless/components/sidebar/api.json +433 -0
- package/data/llms/headless/components/sidebar.md +266 -0
- package/data/llms/headless/components/skeleton/api.json +68 -0
- package/data/llms/headless/components/skeleton.md +95 -0
- package/data/llms/headless/components/slider/api.json +559 -0
- package/data/llms/headless/components/slider.md +158 -0
- package/data/llms/headless/components/speeddial/api.json +459 -0
- package/data/llms/headless/components/speeddial.md +181 -0
- package/data/llms/headless/components/splitter/api.json +582 -0
- package/data/llms/headless/components/splitter.md +159 -0
- package/data/llms/headless/components/stepper/api.json +385 -0
- package/data/llms/headless/components/stepper.md +183 -0
- package/data/llms/headless/components/styleclass/api.json +134 -0
- package/data/llms/headless/components/styleclass.md +129 -0
- package/data/llms/headless/components/tabs/api.json +336 -0
- package/data/llms/headless/components/tabs.md +158 -0
- package/data/llms/headless/components/tag/api.json +62 -0
- package/data/llms/headless/components/tag.md +121 -0
- package/data/llms/headless/components/terminal/api.json +117 -0
- package/data/llms/headless/components/terminal.md +183 -0
- package/data/llms/headless/components/textarea/api.json +81 -0
- package/data/llms/headless/components/textarea.md +110 -0
- package/data/llms/headless/components/timeline/api.json +270 -0
- package/data/llms/headless/components/timeline.md +117 -0
- package/data/llms/headless/components/toast/api.json +455 -0
- package/data/llms/headless/components/toast.md +277 -0
- package/data/llms/headless/components/togglebutton/api.json +357 -0
- package/data/llms/headless/components/togglebutton.md +183 -0
- package/data/llms/headless/components/toggleswitch/api.json +326 -0
- package/data/llms/headless/components/toggleswitch.md +164 -0
- package/data/llms/headless/components/toolbar/api.json +68 -0
- package/data/llms/headless/components/toolbar.md +96 -0
- package/data/llms/headless/components/tooltip/api.json +478 -0
- package/data/llms/headless/components/tooltip.md +233 -0
- package/data/llms/headless/components/tree/api.json +1297 -0
- package/data/llms/headless/components/tree.md +297 -0
- package/data/llms/headless/components/treetable/api.json +1680 -0
- package/data/llms/headless/components/treetable.md +177 -0
- package/data/llms/headless/guides/ai/llms.md +25 -0
- package/data/llms/headless/guides/installation.md +126 -0
- package/data/llms/headless/guides/introduction.md +20 -0
- package/data/llms/headless/guides/misc/accessibility.md +228 -0
- package/data/llms/headless/llms.md +25 -0
- package/data/llms/headless/resources/introduction.md +15 -0
- package/data/llms/hooks/gettingstarted/introduction.md +34 -0
- package/data/llms/hooks/gettingstarted/setup.md +54 -0
- package/data/llms/hooks/use-attr-selector.md +25 -0
- package/data/llms/hooks/use-controlled-state.md +31 -0
- package/data/llms/hooks/use-event-listener.md +37 -0
- package/data/llms/hooks/use-filter.md +312 -0
- package/data/llms/hooks/use-hot-key.md +40 -0
- package/data/llms/hooks/use-id.md +24 -0
- package/data/llms/hooks/use-intersection-observer.md +42 -0
- package/data/llms/hooks/use-is-mobile.md +24 -0
- package/data/llms/hooks/use-key-filter.md +139 -0
- package/data/llms/hooks/use-local-storage.md +28 -0
- package/data/llms/hooks/use-mask.md +53 -0
- package/data/llms/hooks/use-match-media.md +28 -0
- package/data/llms/hooks/use-mount-effect.md +25 -0
- package/data/llms/hooks/use-mounted.md +36 -0
- package/data/llms/hooks/use-number-formatter.md +48 -0
- package/data/llms/hooks/use-presence.md +44 -0
- package/data/llms/hooks/use-previous.md +28 -0
- package/data/llms/hooks/use-props.md +37 -0
- package/data/llms/hooks/use-queue-task.md +29 -0
- package/data/llms/hooks/use-scrolltop.md +87 -0
- package/data/llms/hooks/use-sortable-list.md +226 -0
- package/data/llms/hooks/use-tree-filter.md +216 -0
- package/data/llms/hooks/use-unmount-effect.md +23 -0
- package/data/llms/hooks/use-update-effect.md +27 -0
- package/data/llms/hooks/use-view-transition.md +31 -0
- package/data/llms/hooks/use-visibility-change.md +30 -0
- package/data/llms/llms-full.txt +125291 -0
- package/data/llms/llms.txt +379 -0
- package/data/llms/manifest.json +12409 -0
- package/data/llms/mcp-data.json +14481 -0
- package/data/llms/primitive/add-ons/introduction.md +16 -0
- package/data/llms/primitive/components/accordion/api.json +1411 -0
- package/data/llms/primitive/components/accordion.md +231 -0
- package/data/llms/primitive/components/animateonscroll/api.json +193 -0
- package/data/llms/primitive/components/animateonscroll.md +91 -0
- package/data/llms/primitive/components/autocomplete/api.json +3167 -0
- package/data/llms/primitive/components/autocomplete.md +344 -0
- package/data/llms/primitive/components/avatar/api.json +703 -0
- package/data/llms/primitive/components/avatar.md +134 -0
- package/data/llms/primitive/components/badge/api.json +363 -0
- package/data/llms/primitive/components/badge.md +118 -0
- package/data/llms/primitive/components/breadcrumb/api.json +1162 -0
- package/data/llms/primitive/components/breadcrumb.md +196 -0
- package/data/llms/primitive/components/button/api.json +246 -0
- package/data/llms/primitive/components/button.md +114 -0
- package/data/llms/primitive/components/buttongroup/api.json +168 -0
- package/data/llms/primitive/components/buttongroup.md +43 -0
- package/data/llms/primitive/components/card/api.json +1252 -0
- package/data/llms/primitive/components/card.md +159 -0
- package/data/llms/primitive/components/carousel/api.json +1374 -0
- package/data/llms/primitive/components/carousel.md +220 -0
- package/data/llms/primitive/components/checkbox/api.json +697 -0
- package/data/llms/primitive/components/checkbox.md +160 -0
- package/data/llms/primitive/components/checkboxgroup/api.json +252 -0
- package/data/llms/primitive/components/checkboxgroup.md +58 -0
- package/data/llms/primitive/components/chip/api.json +853 -0
- package/data/llms/primitive/components/chip.md +135 -0
- package/data/llms/primitive/components/collapsible/api.json +581 -0
- package/data/llms/primitive/components/collapsible.md +133 -0
- package/data/llms/primitive/components/compare/api.json +909 -0
- package/data/llms/primitive/components/compare.md +156 -0
- package/data/llms/primitive/components/contextmenu/api.json +3454 -0
- package/data/llms/primitive/components/contextmenu.md +483 -0
- package/data/llms/primitive/components/datatable/api.json +7832 -0
- package/data/llms/primitive/components/datatable.md +561 -0
- package/data/llms/primitive/components/dataview/api.json +819 -0
- package/data/llms/primitive/components/dataview.md +163 -0
- package/data/llms/primitive/components/datepicker/api.json +9055 -0
- package/data/llms/primitive/components/datepicker.md +760 -0
- package/data/llms/primitive/components/dialog/api.json +2491 -0
- package/data/llms/primitive/components/dialog.md +276 -0
- package/data/llms/primitive/components/divider/api.json +214 -0
- package/data/llms/primitive/components/divider.md +96 -0
- package/data/llms/primitive/components/drawer/api.json +1879 -0
- package/data/llms/primitive/components/drawer.md +220 -0
- package/data/llms/primitive/components/fieldset/api.json +1116 -0
- package/data/llms/primitive/components/fieldset.md +183 -0
- package/data/llms/primitive/components/fileupload/api.json +2445 -0
- package/data/llms/primitive/components/fileupload.md +282 -0
- package/data/llms/primitive/components/floatlabel/api.json +176 -0
- package/data/llms/primitive/components/floatlabel.md +47 -0
- package/data/llms/primitive/components/focustrap/api.json +241 -0
- package/data/llms/primitive/components/focustrap.md +93 -0
- package/data/llms/primitive/components/gallery/api.json +3622 -0
- package/data/llms/primitive/components/gallery.md +387 -0
- package/data/llms/primitive/components/iconfield/api.json +322 -0
- package/data/llms/primitive/components/iconfield.md +53 -0
- package/data/llms/primitive/components/iftalabel/api.json +177 -0
- package/data/llms/primitive/components/iftalabel.md +47 -0
- package/data/llms/primitive/components/inplace/api.json +783 -0
- package/data/llms/primitive/components/inplace.md +141 -0
- package/data/llms/primitive/components/inputcolor/api.json +2211 -0
- package/data/llms/primitive/components/inputcolor.md +295 -0
- package/data/llms/primitive/components/inputnumber/api.json +469 -0
- package/data/llms/primitive/components/inputnumber.md +99 -0
- package/data/llms/primitive/components/inputotp/api.json +469 -0
- package/data/llms/primitive/components/inputotp.md +121 -0
- package/data/llms/primitive/components/inputpassword/api.json +278 -0
- package/data/llms/primitive/components/inputpassword.md +84 -0
- package/data/llms/primitive/components/inputtags/api.json +407 -0
- package/data/llms/primitive/components/inputtags.md +243 -0
- package/data/llms/primitive/components/inputtext/api.json +207 -0
- package/data/llms/primitive/components/inputtext.md +81 -0
- package/data/llms/primitive/components/knob/api.json +841 -0
- package/data/llms/primitive/components/knob.md +148 -0
- package/data/llms/primitive/components/label/api.json +177 -0
- package/data/llms/primitive/components/label.md +44 -0
- package/data/llms/primitive/components/listbox/api.json +1741 -0
- package/data/llms/primitive/components/listbox.md +206 -0
- package/data/llms/primitive/components/menu/api.json +3836 -0
- package/data/llms/primitive/components/menu.md +479 -0
- package/data/llms/primitive/components/message/api.json +863 -0
- package/data/llms/primitive/components/message.md +151 -0
- package/data/llms/primitive/components/metergroup/api.json +1222 -0
- package/data/llms/primitive/components/metergroup.md +209 -0
- package/data/llms/primitive/components/motion.md +112 -0
- package/data/llms/primitive/components/navigationmenu/api.json +298 -0
- package/data/llms/primitive/components/navigationmenu.md +184 -0
- package/data/llms/primitive/components/organizationchart.md +133 -0
- package/data/llms/primitive/components/paginator/api.json +1637 -0
- package/data/llms/primitive/components/paginator.md +223 -0
- package/data/llms/primitive/components/panel/api.json +1270 -0
- package/data/llms/primitive/components/panel.md +186 -0
- package/data/llms/primitive/components/popover/api.json +2281 -0
- package/data/llms/primitive/components/popover.md +277 -0
- package/data/llms/primitive/components/portal/api.json +176 -0
- package/data/llms/primitive/components/portal.md +79 -0
- package/data/llms/primitive/components/progressbar/api.json +857 -0
- package/data/llms/primitive/components/progressbar.md +153 -0
- package/data/llms/primitive/components/progressspinner/api.json +725 -0
- package/data/llms/primitive/components/progressspinner.md +133 -0
- package/data/llms/primitive/components/radiobutton/api.json +929 -0
- package/data/llms/primitive/components/radiobutton.md +201 -0
- package/data/llms/primitive/components/rating/api.json +878 -0
- package/data/llms/primitive/components/rating.md +160 -0
- package/data/llms/primitive/components/scrollarea/api.json +1187 -0
- package/data/llms/primitive/components/scrollarea.md +255 -0
- package/data/llms/primitive/components/select/api.json +3167 -0
- package/data/llms/primitive/components/select.md +351 -0
- package/data/llms/primitive/components/sidebar/api.json +3699 -0
- package/data/llms/primitive/components/sidebar.md +444 -0
- package/data/llms/primitive/components/skeleton/api.json +213 -0
- package/data/llms/primitive/components/skeleton.md +80 -0
- package/data/llms/primitive/components/slider/api.json +1066 -0
- package/data/llms/primitive/components/slider.md +161 -0
- package/data/llms/primitive/components/speeddial/api.json +1002 -0
- package/data/llms/primitive/components/speeddial.md +197 -0
- package/data/llms/primitive/components/splitter/api.json +901 -0
- package/data/llms/primitive/components/splitter.md +137 -0
- package/data/llms/primitive/components/stepper/api.json +2102 -0
- package/data/llms/primitive/components/stepper.md +253 -0
- package/data/llms/primitive/components/styleclass.md +399 -0
- package/data/llms/primitive/components/tabs/api.json +1705 -0
- package/data/llms/primitive/components/tabs.md +200 -0
- package/data/llms/primitive/components/tag/api.json +189 -0
- package/data/llms/primitive/components/tag.md +100 -0
- package/data/llms/primitive/components/terminal/api.json +1709 -0
- package/data/llms/primitive/components/terminal.md +227 -0
- package/data/llms/primitive/components/textarea/api.json +213 -0
- package/data/llms/primitive/components/textarea.md +83 -0
- package/data/llms/primitive/components/timeline/api.json +1180 -0
- package/data/llms/primitive/components/timeline.md +185 -0
- package/data/llms/primitive/components/toast/api.json +2102 -0
- package/data/llms/primitive/components/toast.md +291 -0
- package/data/llms/primitive/components/togglebutton/api.json +433 -0
- package/data/llms/primitive/components/togglebutton.md +161 -0
- package/data/llms/primitive/components/togglebuttongroup/api.json +276 -0
- package/data/llms/primitive/components/togglebuttongroup.md +61 -0
- package/data/llms/primitive/components/toggleswitch/api.json +681 -0
- package/data/llms/primitive/components/toggleswitch.md +149 -0
- package/data/llms/primitive/components/toolbar/api.json +646 -0
- package/data/llms/primitive/components/toolbar.md +126 -0
- package/data/llms/primitive/components/tooltip/api.json +1534 -0
- package/data/llms/primitive/components/tooltip.md +202 -0
- package/data/llms/primitive/components/tree/api.json +2952 -0
- package/data/llms/primitive/components/tree.md +292 -0
- package/data/llms/primitive/components/treetable.md +187 -0
- package/data/llms/primitive/components/visuallyhidden/api.json +186 -0
- package/data/llms/primitive/components/visuallyhidden.md +87 -0
- package/data/llms/primitive/guides/ai/llms.md +25 -0
- package/data/llms/primitive/guides/icons/customicons.md +47 -0
- package/data/llms/primitive/guides/icons/primeicons.md +112 -0
- package/data/llms/primitive/guides/installation.md +115 -0
- package/data/llms/primitive/guides/introduction.md +20 -0
- package/data/llms/primitive/guides/misc/accessibility.md +215 -0
- package/data/llms/primitive/guides/misc/passthrough.md +95 -0
- package/data/llms/primitive/guides/misc/rtl.md +27 -0
- package/data/llms/primitive/llms.md +25 -0
- package/data/llms/primitive/resources/introduction.md +15 -0
- package/data/llms/styled/add-ons/introduction.md +16 -0
- package/data/llms/styled/components/accordion.md +735 -0
- package/data/llms/styled/components/animateonscroll.md +264 -0
- package/data/llms/styled/components/autocomplete.md +1597 -0
- package/data/llms/styled/components/avatar.md +313 -0
- package/data/llms/styled/components/badge.md +213 -0
- package/data/llms/styled/components/breadcrumb.md +461 -0
- package/data/llms/styled/components/button/api.json +246 -0
- package/data/llms/styled/components/button.md +641 -0
- package/data/llms/styled/components/buttongroup.md +614 -0
- package/data/llms/styled/components/card.md +228 -0
- package/data/llms/styled/components/carousel.md +388 -0
- package/data/llms/styled/components/checkbox.md +329 -0
- package/data/llms/styled/components/checkboxgroup.md +619 -0
- package/data/llms/styled/components/chip.md +300 -0
- package/data/llms/styled/components/compare.md +271 -0
- package/data/llms/styled/components/contextmenu.md +550 -0
- package/data/llms/styled/components/datatable.md +8259 -0
- package/data/llms/styled/components/dataview.md +907 -0
- package/data/llms/styled/components/datepicker.md +2807 -0
- package/data/llms/styled/components/dialog.md +1047 -0
- package/data/llms/styled/components/divider.md +207 -0
- package/data/llms/styled/components/drawer.md +470 -0
- package/data/llms/styled/components/fieldset.md +334 -0
- package/data/llms/styled/components/fileupload.md +747 -0
- package/data/llms/styled/components/floatlabel/api.json +210 -0
- package/data/llms/styled/components/floatlabel.md +231 -0
- package/data/llms/styled/components/fluid/api.json +204 -0
- package/data/llms/styled/components/fluid.md +177 -0
- package/data/llms/styled/components/focustrap.md +203 -0
- package/data/llms/styled/components/gallery.md +553 -0
- package/data/llms/styled/components/iconfield/api.json +382 -0
- package/data/llms/styled/components/iconfield.md +385 -0
- package/data/llms/styled/components/iftalabel/api.json +237 -0
- package/data/llms/styled/components/iftalabel.md +158 -0
- package/data/llms/styled/components/inplace.md +312 -0
- package/data/llms/styled/components/inputcolor.md +674 -0
- package/data/llms/styled/components/inputgroup/api.json +399 -0
- package/data/llms/styled/components/inputgroup.md +604 -0
- package/data/llms/styled/components/inputmask.md +282 -0
- package/data/llms/styled/components/inputnumber.md +563 -0
- package/data/llms/styled/components/inputotp.md +335 -0
- package/data/llms/styled/components/inputpassword.md +630 -0
- package/data/llms/styled/components/inputtags.md +727 -0
- package/data/llms/styled/components/inputtext.md +190 -0
- package/data/llms/styled/components/keyfilter.md +289 -0
- package/data/llms/styled/components/knob.md +305 -0
- package/data/llms/styled/components/label/api.json +237 -0
- package/data/llms/styled/components/label.md +224 -0
- package/data/llms/styled/components/listbox.md +807 -0
- package/data/llms/styled/components/menu.md +1175 -0
- package/data/llms/styled/components/message.md +570 -0
- package/data/llms/styled/components/metergroup.md +449 -0
- package/data/llms/styled/components/navigationmenu.md +926 -0
- package/data/llms/styled/components/orderlist.md +519 -0
- package/data/llms/styled/components/organizationchart/api.json +1457 -0
- package/data/llms/styled/components/organizationchart.md +791 -0
- package/data/llms/styled/components/overlaymanager.md +519 -0
- package/data/llms/styled/components/paginator.md +506 -0
- package/data/llms/styled/components/panel.md +394 -0
- package/data/llms/styled/components/picklist.md +1004 -0
- package/data/llms/styled/components/popover.md +372 -0
- package/data/llms/styled/components/progressbar.md +438 -0
- package/data/llms/styled/components/progressspinner.md +128 -0
- package/data/llms/styled/components/radiobutton.md +488 -0
- package/data/llms/styled/components/rating/api.json +766 -0
- package/data/llms/styled/components/rating.md +518 -0
- package/data/llms/styled/components/scrollarea.md +627 -0
- package/data/llms/styled/components/select.md +2122 -0
- package/data/llms/styled/components/sidebar.md +1587 -0
- package/data/llms/styled/components/skeleton.md +226 -0
- package/data/llms/styled/components/slider.md +453 -0
- package/data/llms/styled/components/speeddial.md +723 -0
- package/data/llms/styled/components/splitter.md +536 -0
- package/data/llms/styled/components/stepper.md +614 -0
- package/data/llms/styled/components/tabs.md +543 -0
- package/data/llms/styled/components/tag.md +263 -0
- package/data/llms/styled/components/terminal.md +543 -0
- package/data/llms/styled/components/textarea.md +257 -0
- package/data/llms/styled/components/timeline.md +620 -0
- package/data/llms/styled/components/toast.md +1013 -0
- package/data/llms/styled/components/togglebutton.md +287 -0
- package/data/llms/styled/components/togglebuttongroup.md +328 -0
- package/data/llms/styled/components/toggleswitch.md +262 -0
- package/data/llms/styled/components/toolbar.md +187 -0
- package/data/llms/styled/components/tooltip.md +430 -0
- package/data/llms/styled/components/tree.md +1386 -0
- package/data/llms/styled/components/treetable.md +6842 -0
- package/data/llms/styled/guides/ai/llms.md +25 -0
- package/data/llms/styled/guides/configuration.md +151 -0
- package/data/llms/styled/guides/icons/customicons.md +47 -0
- package/data/llms/styled/guides/icons/primeicons.md +112 -0
- package/data/llms/styled/guides/installation/astro.md +97 -0
- package/data/llms/styled/guides/installation/manual.md +3 -0
- package/data/llms/styled/guides/installation/nextjs.md +129 -0
- package/data/llms/styled/guides/installation/react-router.md +88 -0
- package/data/llms/styled/guides/installation/tanstack.md +92 -0
- package/data/llms/styled/guides/installation/vite.md +91 -0
- package/data/llms/styled/guides/installation.md +42 -0
- package/data/llms/styled/guides/introduction.md +20 -0
- package/data/llms/styled/guides/misc/accessibility.md +211 -0
- package/data/llms/styled/guides/misc/animations.md +389 -0
- package/data/llms/styled/guides/misc/passthrough.md +95 -0
- package/data/llms/styled/guides/misc/rtl.md +27 -0
- package/data/llms/styled/guides/theming/styled.md +779 -0
- package/data/llms/styled/guides/theming/tailwind.md +473 -0
- package/data/llms/styled/guides/theming/unstyled.md +115 -0
- package/data/llms/styled/resources/introduction.md +15 -0
- package/data/llms/tailwind/add-ons/introduction.md +16 -0
- package/data/llms/tailwind/components/accordion.md +383 -0
- package/data/llms/tailwind/components/autocomplete.md +1346 -0
- package/data/llms/tailwind/components/avatar.md +305 -0
- package/data/llms/tailwind/components/badge.md +207 -0
- package/data/llms/tailwind/components/breadcrumb.md +387 -0
- package/data/llms/tailwind/components/button/api.json +246 -0
- package/data/llms/tailwind/components/button.md +617 -0
- package/data/llms/tailwind/components/buttongroup.md +599 -0
- package/data/llms/tailwind/components/card.md +224 -0
- package/data/llms/tailwind/components/carousel.md +329 -0
- package/data/llms/tailwind/components/checkbox.md +179 -0
- package/data/llms/tailwind/components/checkboxgroup.md +279 -0
- package/data/llms/tailwind/components/chip.md +304 -0
- package/data/llms/tailwind/components/compare.md +295 -0
- package/data/llms/tailwind/components/contextmenu.md +415 -0
- package/data/llms/tailwind/components/datatable.md +4062 -0
- package/data/llms/tailwind/components/dataview.md +864 -0
- package/data/llms/tailwind/components/datepicker.md +823 -0
- package/data/llms/tailwind/components/dialog.md +1216 -0
- package/data/llms/tailwind/components/divider.md +205 -0
- package/data/llms/tailwind/components/drawer.md +500 -0
- package/data/llms/tailwind/components/fieldset.md +326 -0
- package/data/llms/tailwind/components/fluid.md +117 -0
- package/data/llms/tailwind/components/iconfield.md +197 -0
- package/data/llms/tailwind/components/inplace.md +324 -0
- package/data/llms/tailwind/components/inputcolor.md +493 -0
- package/data/llms/tailwind/components/inputgroup.md +375 -0
- package/data/llms/tailwind/components/inputnumber.md +463 -0
- package/data/llms/tailwind/components/inputotp.md +255 -0
- package/data/llms/tailwind/components/inputpassword.md +543 -0
- package/data/llms/tailwind/components/inputtext.md +141 -0
- package/data/llms/tailwind/components/label.md +100 -0
- package/data/llms/tailwind/components/listbox.md +886 -0
- package/data/llms/tailwind/components/menu.md +1049 -0
- package/data/llms/tailwind/components/message.md +575 -0
- package/data/llms/tailwind/components/metergroup.md +510 -0
- package/data/llms/tailwind/components/navigationmenu.md +528 -0
- package/data/llms/tailwind/components/overlaymanager.md +567 -0
- package/data/llms/tailwind/components/paginator.md +306 -0
- package/data/llms/tailwind/components/panel.md +395 -0
- package/data/llms/tailwind/components/popover.md +424 -0
- package/data/llms/tailwind/components/progressbar.md +313 -0
- package/data/llms/tailwind/components/radiobutton.md +366 -0
- package/data/llms/tailwind/components/rating.md +300 -0
- package/data/llms/tailwind/components/scrollarea.md +638 -0
- package/data/llms/tailwind/components/select.md +1220 -0
- package/data/llms/tailwind/components/sidebar.md +1511 -0
- package/data/llms/tailwind/components/skeleton.md +236 -0
- package/data/llms/tailwind/components/slider.md +291 -0
- package/data/llms/tailwind/components/splitter.md +546 -0
- package/data/llms/tailwind/components/tabs.md +462 -0
- package/data/llms/tailwind/components/tag.md +255 -0
- package/data/llms/tailwind/components/textarea.md +170 -0
- package/data/llms/tailwind/components/timeline.md +656 -0
- package/data/llms/tailwind/components/toast.md +246 -0
- package/data/llms/tailwind/components/togglebutton.md +264 -0
- package/data/llms/tailwind/components/togglebuttongroup.md +262 -0
- package/data/llms/tailwind/components/toggleswitch.md +203 -0
- package/data/llms/tailwind/components/toolbar.md +192 -0
- package/data/llms/tailwind/components/tooltip.md +449 -0
- package/data/llms/tailwind/guides/ai/llms.md +25 -0
- package/data/llms/tailwind/guides/icons/customicons.md +47 -0
- package/data/llms/tailwind/guides/icons/primeicons.md +112 -0
- package/data/llms/tailwind/guides/installation/astro.md +165 -0
- package/data/llms/tailwind/guides/installation/manual.md +3 -0
- package/data/llms/tailwind/guides/installation/nextjs.md +169 -0
- package/data/llms/tailwind/guides/installation/react-router.md +157 -0
- package/data/llms/tailwind/guides/installation/tanstack.md +161 -0
- package/data/llms/tailwind/guides/installation/vite.md +160 -0
- package/data/llms/tailwind/guides/installation.md +42 -0
- package/data/llms/tailwind/guides/introduction.md +20 -0
- package/data/llms/tailwind/guides/misc/accessibility.md +205 -0
- package/data/llms/tailwind/guides/misc/passthrough.md +95 -0
- package/data/llms/tailwind/guides/misc/rtl.md +27 -0
- package/data/llms/tailwind/guides/theming/guide.md +179 -0
- package/data/llms/tailwind/guides/theming.md +191 -0
- package/data/llms/tailwind/llms.md +25 -0
- package/data/llms/tailwind/resources/introduction.md +15 -0
- package/data/manifest.json +12409 -0
- package/data/mcp-data.json +14481 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +2 -0
- package/package.json +61 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# useBadge
|
|
2
|
+
|
|
3
|
+
Hook that provides data attributes and prop spreading for badge elements.
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
'use client';
|
|
7
|
+
import { Bell } from '@primeicons/react/bell';
|
|
8
|
+
import { useBadge } from '@primereact/headless/badge';
|
|
9
|
+
|
|
10
|
+
export default function BasicDemo() {
|
|
11
|
+
const standalone1 = useBadge();
|
|
12
|
+
const standalone2 = useBadge();
|
|
13
|
+
const standalone3 = useBadge();
|
|
14
|
+
const overlay = useBadge();
|
|
15
|
+
const dotBadge = useBadge();
|
|
16
|
+
|
|
17
|
+
return (
|
|
18
|
+
<div className="flex flex-col items-center justify-center gap-8">
|
|
19
|
+
<div className="flex items-center gap-3">
|
|
20
|
+
<span
|
|
21
|
+
{...standalone1.rootProps}
|
|
22
|
+
className="inline-flex items-center justify-center min-w-5 h-5 px-1.5 text-xs font-bold rounded-md bg-red-500 text-white"
|
|
23
|
+
>
|
|
24
|
+
5
|
|
25
|
+
</span>
|
|
26
|
+
<span
|
|
27
|
+
{...standalone2.rootProps}
|
|
28
|
+
className="inline-flex items-center justify-center min-w-5 h-5 px-1.5 text-xs font-bold rounded-md bg-green-500 text-white"
|
|
29
|
+
>
|
|
30
|
+
12
|
|
31
|
+
</span>
|
|
32
|
+
<span
|
|
33
|
+
{...standalone3.rootProps}
|
|
34
|
+
className="inline-flex items-center justify-center min-w-5 h-5 px-1.5 text-xs font-bold rounded-md bg-surface-100 dark:bg-surface-800 text-surface-600 dark:text-surface-300"
|
|
35
|
+
>
|
|
36
|
+
8
|
|
37
|
+
</span>
|
|
38
|
+
</div>
|
|
39
|
+
<div className="flex items-center gap-3">
|
|
40
|
+
<div className="relative inline-flex">
|
|
41
|
+
<Bell className="text-surface-700 dark:text-surface-200 w-6! h-6!" />
|
|
42
|
+
<span
|
|
43
|
+
{...overlay.rootProps}
|
|
44
|
+
className="absolute -top-2 -right-2 inline-flex items-center justify-center min-w-5 h-5 px-1 text-xs font-bold text-white bg-red-500 rounded-md"
|
|
45
|
+
>
|
|
46
|
+
3
|
|
47
|
+
</span>
|
|
48
|
+
</div>
|
|
49
|
+
<div className="relative inline-flex">
|
|
50
|
+
<Bell className="text-surface-700 dark:text-surface-200 w-6! h-6!" />
|
|
51
|
+
<span {...dotBadge.rootProps} className="absolute -top-0.5 -right-0.5 w-2.5 h-2.5 bg-green-500 rounded-full" />
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Usage
|
|
60
|
+
|
|
61
|
+
```tsx
|
|
62
|
+
import { useBadge } from '@primereact/headless/badge';
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
```tsx
|
|
66
|
+
const { rootProps } = useBadge();
|
|
67
|
+
|
|
68
|
+
return <span {...rootProps}></span>;
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
`useBadge` returns spread-ready `rootProps` with scoped data attributes so you can render inline counts, overlays, and status dots with your own CSS. See [Primitive](/docs/primitive/components/badge) for a component-based API.
|
|
72
|
+
|
|
73
|
+
## Features
|
|
74
|
+
|
|
75
|
+
- **Spread-ready root props**, a single object you can drop onto any element or custom component
|
|
76
|
+
- **Stateless**, no internal state or effects; all visual behavior lives in your CSS
|
|
77
|
+
- **Styling hooks**, `data-scope="badge"` and `data-part="root"` selectors let you branch styles on context
|
|
78
|
+
- **Markup-agnostic**, works with `span`, `div`, or any component that forwards standard props
|
|
79
|
+
|
|
80
|
+
## Working with callbacks
|
|
81
|
+
|
|
82
|
+
### Inline badge next to content
|
|
83
|
+
|
|
84
|
+
Render the badge alongside a label to show counts directly inside a button or link.
|
|
85
|
+
|
|
86
|
+
```tsx
|
|
87
|
+
const { rootProps } = useBadge();
|
|
88
|
+
|
|
89
|
+
<button>
|
|
90
|
+
Messages
|
|
91
|
+
<span {...rootProps}>8</span>
|
|
92
|
+
</button>;
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Overlay badge on an icon
|
|
96
|
+
|
|
97
|
+
Combine positioning styles with `rootProps` to place the badge on top of another element.
|
|
98
|
+
|
|
99
|
+
```tsx
|
|
100
|
+
const { rootProps } = useBadge();
|
|
101
|
+
|
|
102
|
+
<div style={{ position: 'relative', display: 'inline-flex' }}>
|
|
103
|
+
<BellIcon />
|
|
104
|
+
<span {...rootProps} style={{ position: 'absolute', top: '-0.5rem', right: '-0.5rem' }}>
|
|
105
|
+
3
|
|
106
|
+
</span>
|
|
107
|
+
</div>;
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Dot indicator
|
|
111
|
+
|
|
112
|
+
Leave the badge empty and rely on the `:empty` CSS selector to render a status dot.
|
|
113
|
+
|
|
114
|
+
```tsx
|
|
115
|
+
const { rootProps } = useBadge();
|
|
116
|
+
|
|
117
|
+
<span {...rootProps} />;
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Styling with data attributes
|
|
121
|
+
|
|
122
|
+
The prop object includes `data-scope="badge"` and `data-part="root"` for styling. Use the `:empty` pseudo-class to distinguish dot badges from count badges without extra props.
|
|
123
|
+
|
|
124
|
+
```css
|
|
125
|
+
[data-scope='badge'][data-part='root'] {
|
|
126
|
+
display: inline-flex;
|
|
127
|
+
align-items: center;
|
|
128
|
+
justify-content: center;
|
|
129
|
+
min-width: 1.25rem;
|
|
130
|
+
height: 1.25rem;
|
|
131
|
+
font-size: 0.75rem;
|
|
132
|
+
font-weight: 700;
|
|
133
|
+
border-radius: 9999px;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
[data-scope='badge'][data-part='root']:empty {
|
|
137
|
+
min-width: 0.5rem;
|
|
138
|
+
height: 0.5rem;
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## API
|
|
143
|
+
|
|
144
|
+
### useBadge
|
|
145
|
+
|
|
146
|
+
<DocTable name="useBadge" category="api" />
|
|
147
|
+
|
|
148
|
+
## Accessibility
|
|
149
|
+
|
|
150
|
+
Static visual element; screen readers receive the label via aria-label when provided. See [Primitive](/docs/primitive/components/badge#accessibility) for full WAI-ARIA compliance details.
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "useBreadcrumb",
|
|
4
|
+
"source": "apps/showcase/assets/apidoc/usebreadcrumb.json",
|
|
5
|
+
"data": {
|
|
6
|
+
"description": "The useBreadcrumb manages the state and functionality of a breadcrumb component.",
|
|
7
|
+
"interfaces": {
|
|
8
|
+
"UseBreadcrumbProps": {
|
|
9
|
+
"description": "Defines valid properties in useBreadcrumb.",
|
|
10
|
+
"relatedProp": "",
|
|
11
|
+
"props": [],
|
|
12
|
+
"methods": []
|
|
13
|
+
},
|
|
14
|
+
"UseBreadcrumbState": {
|
|
15
|
+
"description": "Defines valid state in useBreadcrumb.",
|
|
16
|
+
"relatedProp": "",
|
|
17
|
+
"props": [],
|
|
18
|
+
"methods": []
|
|
19
|
+
},
|
|
20
|
+
"UseBreadcrumbRootProps": {
|
|
21
|
+
"description": "Pre-built props for the Breadcrumb root element.",
|
|
22
|
+
"relatedProp": "",
|
|
23
|
+
"props": [
|
|
24
|
+
{
|
|
25
|
+
"name": "data-scope",
|
|
26
|
+
"type": "\"breadcrumb\"",
|
|
27
|
+
"default": "",
|
|
28
|
+
"description": "Component scope identifier."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "data-part",
|
|
32
|
+
"type": "\"root\"",
|
|
33
|
+
"default": "",
|
|
34
|
+
"description": "Component part identifier."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "aria-label",
|
|
38
|
+
"type": "string",
|
|
39
|
+
"default": "",
|
|
40
|
+
"description": "Accessible label for the breadcrumb navigation."
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"methods": []
|
|
44
|
+
},
|
|
45
|
+
"UseBreadcrumbEllipsisProps": {
|
|
46
|
+
"description": "Pre-built props for the Breadcrumb ellipsis element.",
|
|
47
|
+
"relatedProp": "",
|
|
48
|
+
"props": [
|
|
49
|
+
{
|
|
50
|
+
"name": "data-scope",
|
|
51
|
+
"type": "\"breadcrumb\"",
|
|
52
|
+
"default": "",
|
|
53
|
+
"description": "Component scope identifier."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "data-part",
|
|
57
|
+
"type": "\"ellipsis\"",
|
|
58
|
+
"default": "",
|
|
59
|
+
"description": "Component part identifier."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"name": "role",
|
|
63
|
+
"type": "\"presentation\"",
|
|
64
|
+
"default": "",
|
|
65
|
+
"description": "ARIA role indicating the element is presentational."
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "aria-hidden",
|
|
69
|
+
"type": "true",
|
|
70
|
+
"default": "",
|
|
71
|
+
"description": "Hidden from screen readers as it is decorative."
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
"methods": []
|
|
75
|
+
},
|
|
76
|
+
"UseBreadcrumbSeparatorProps": {
|
|
77
|
+
"description": "Pre-built props for the Breadcrumb separator element.",
|
|
78
|
+
"relatedProp": "",
|
|
79
|
+
"props": [
|
|
80
|
+
{
|
|
81
|
+
"name": "data-scope",
|
|
82
|
+
"type": "\"breadcrumb\"",
|
|
83
|
+
"default": "",
|
|
84
|
+
"description": "Component scope identifier."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"name": "data-part",
|
|
88
|
+
"type": "\"separator\"",
|
|
89
|
+
"default": "",
|
|
90
|
+
"description": "Component part identifier."
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "role",
|
|
94
|
+
"type": "\"presentation\"",
|
|
95
|
+
"default": "",
|
|
96
|
+
"description": "ARIA role indicating the element is presentational."
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"name": "aria-hidden",
|
|
100
|
+
"type": "true",
|
|
101
|
+
"default": "",
|
|
102
|
+
"description": "Hidden from screen readers as it is decorative."
|
|
103
|
+
}
|
|
104
|
+
],
|
|
105
|
+
"methods": []
|
|
106
|
+
},
|
|
107
|
+
"UseBreadcrumbExposes": {
|
|
108
|
+
"description": "Defines the methods and properties exposed by useBreadcrumb.",
|
|
109
|
+
"relatedProp": "",
|
|
110
|
+
"props": [
|
|
111
|
+
{
|
|
112
|
+
"name": "rootProps",
|
|
113
|
+
"type": "UseBreadcrumbRootProps",
|
|
114
|
+
"default": "",
|
|
115
|
+
"description": "Pre-built props for the root element.\nIncludes data attributes and accessible label."
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"name": "ellipsisProps",
|
|
119
|
+
"type": "UseBreadcrumbEllipsisProps",
|
|
120
|
+
"default": "",
|
|
121
|
+
"description": "Pre-built props for the ellipsis element.\nIncludes data attributes, presentational role, and aria-hidden."
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"name": "separatorProps",
|
|
125
|
+
"type": "UseBreadcrumbSeparatorProps",
|
|
126
|
+
"default": "",
|
|
127
|
+
"description": "Pre-built props for the separator element.\nIncludes data attributes, presentational role, and aria-hidden."
|
|
128
|
+
}
|
|
129
|
+
],
|
|
130
|
+
"methods": []
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
"types": {
|
|
134
|
+
"UseBreadcrumbInstance": {
|
|
135
|
+
"description": "Instance of useBreadcrumb headless.",
|
|
136
|
+
"values": "HeadlessInstance<UseBreadcrumbProps, UseBreadcrumbState, UseBreadcrumbExposes>"
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
"variables": {}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
]
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# useBreadcrumb
|
|
2
|
+
|
|
3
|
+
Hook that provides semantic ARIA attributes and data attributes for breadcrumb navigation.
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
'use client';
|
|
7
|
+
import { ChevronRight } from '@primeicons/react/chevron-right';
|
|
8
|
+
import { Home } from '@primeicons/react/home';
|
|
9
|
+
import { useBreadcrumb } from '@primereact/headless/breadcrumb';
|
|
10
|
+
|
|
11
|
+
export default function BasicDemo() {
|
|
12
|
+
const { rootProps, separatorProps } = useBreadcrumb();
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<div className="flex justify-center">
|
|
16
|
+
<nav {...rootProps} className="bg-surface-0 dark:bg-surface-900 py-3 px-4 rounded-lg overflow-x-auto">
|
|
17
|
+
<ol className="m-0 p-0 list-none flex items-center flex-nowrap gap-2">
|
|
18
|
+
<li className="flex items-center gap-2">
|
|
19
|
+
<a
|
|
20
|
+
href="/"
|
|
21
|
+
className="no-underline flex items-center gap-2 text-surface-500 dark:text-surface-400 hover:text-surface-700 dark:hover:text-surface-0 transition-colors rounded-md focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary"
|
|
22
|
+
>
|
|
23
|
+
<Home className="w-4 h-4" />
|
|
24
|
+
</a>
|
|
25
|
+
</li>
|
|
26
|
+
<li {...separatorProps} className="flex items-center text-surface-400 dark:text-surface-500">
|
|
27
|
+
<ChevronRight className="w-3 h-3" />
|
|
28
|
+
</li>
|
|
29
|
+
<li className="flex items-center gap-2">
|
|
30
|
+
<a
|
|
31
|
+
href="#"
|
|
32
|
+
className="no-underline text-sm text-surface-500 dark:text-surface-400 hover:text-surface-700 dark:hover:text-surface-0 transition-colors rounded-md focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary"
|
|
33
|
+
>
|
|
34
|
+
Products
|
|
35
|
+
</a>
|
|
36
|
+
</li>
|
|
37
|
+
<li {...separatorProps} className="flex items-center text-surface-400 dark:text-surface-500">
|
|
38
|
+
<ChevronRight className="w-3 h-3" />
|
|
39
|
+
</li>
|
|
40
|
+
<li className="flex items-center gap-2">
|
|
41
|
+
<a
|
|
42
|
+
href="#"
|
|
43
|
+
className="no-underline text-sm text-surface-500 dark:text-surface-400 hover:text-surface-700 dark:hover:text-surface-0 transition-colors rounded-md focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-primary"
|
|
44
|
+
>
|
|
45
|
+
Electronics
|
|
46
|
+
</a>
|
|
47
|
+
</li>
|
|
48
|
+
<li {...separatorProps} className="flex items-center text-surface-400 dark:text-surface-500">
|
|
49
|
+
<ChevronRight className="w-3 h-3" />
|
|
50
|
+
</li>
|
|
51
|
+
<li className="flex items-center gap-2">
|
|
52
|
+
<span className="text-sm text-surface-950 dark:text-surface-0" aria-current="page">
|
|
53
|
+
Laptops
|
|
54
|
+
</span>
|
|
55
|
+
</li>
|
|
56
|
+
</ol>
|
|
57
|
+
</nav>
|
|
58
|
+
</div>
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Usage
|
|
64
|
+
|
|
65
|
+
```tsx
|
|
66
|
+
import { useBreadcrumb } from '@primereact/headless/breadcrumb';
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
```tsx
|
|
70
|
+
const { rootProps, separatorProps, ellipsisProps } = useBreadcrumb();
|
|
71
|
+
|
|
72
|
+
<nav {...rootProps}>
|
|
73
|
+
<ol>
|
|
74
|
+
<li></li>
|
|
75
|
+
<li {...separatorProps}></li>
|
|
76
|
+
</ol>
|
|
77
|
+
</nav>;
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
`useBreadcrumb` provides semantic ARIA attributes for navigation, separators, and ellipsis elements, see [Primitive](/docs/primitive/components/breadcrumb) for a component-based API.
|
|
81
|
+
|
|
82
|
+
## Features
|
|
83
|
+
|
|
84
|
+
- **Navigation landmark**, `rootProps` labels the nav element with `aria-label="Breadcrumb"` so assistive tech announces it as a navigation region
|
|
85
|
+
- **Presentational separators**, `separatorProps` marks visual dividers with `role="presentation"` and `aria-hidden` so screen readers skip them
|
|
86
|
+
- **Collapsed items**, `ellipsisProps` hides overflow indicators from the accessibility tree while keeping them visible
|
|
87
|
+
- **Stateless and composable**, no internal state, spread the returned props on any element and handle links with native anchor semantics
|
|
88
|
+
|
|
89
|
+
## Working with callbacks
|
|
90
|
+
|
|
91
|
+
### Marking separators between items
|
|
92
|
+
|
|
93
|
+
Spread `separatorProps` on any visual divider element to keep it out of the accessibility tree.
|
|
94
|
+
|
|
95
|
+
```tsx
|
|
96
|
+
const { separatorProps } = useBreadcrumb();
|
|
97
|
+
|
|
98
|
+
<li {...separatorProps}>
|
|
99
|
+
<ChevronRight />
|
|
100
|
+
</li>;
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Rendering a collapsed overflow indicator
|
|
104
|
+
|
|
105
|
+
Use `ellipsisProps` on the element that represents collapsed breadcrumb items.
|
|
106
|
+
|
|
107
|
+
```tsx
|
|
108
|
+
const { ellipsisProps } = useBreadcrumb();
|
|
109
|
+
|
|
110
|
+
<span {...ellipsisProps}>...</span>;
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Marking the current page
|
|
114
|
+
|
|
115
|
+
The hook does not annotate the active item. Apply `aria-current="page"` yourself on the last crumb so assistive tech announces it as the current location.
|
|
116
|
+
|
|
117
|
+
```tsx
|
|
118
|
+
<span aria-current="page">Laptops</span>
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Styling with data attributes
|
|
122
|
+
|
|
123
|
+
Every prop object includes `data-scope="breadcrumb"` and a `data-part` attribute. Use them as CSS selectors instead of classNames.
|
|
124
|
+
|
|
125
|
+
| Scope | Part | Notes |
|
|
126
|
+
| ------------ | ----------- | ---------------------------- |
|
|
127
|
+
| `breadcrumb` | `root` | The nav element |
|
|
128
|
+
| `breadcrumb` | `separator` | Visual divider between items |
|
|
129
|
+
| `breadcrumb` | `ellipsis` | Collapsed overflow indicator |
|
|
130
|
+
|
|
131
|
+
```css
|
|
132
|
+
[data-scope='breadcrumb'][data-part='root'] {
|
|
133
|
+
padding: 0.75rem 1rem;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
[data-scope='breadcrumb'][data-part='separator'] {
|
|
137
|
+
color: rgba(0, 0, 0, 0.3);
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
## API
|
|
142
|
+
|
|
143
|
+
### useBreadcrumb
|
|
144
|
+
|
|
145
|
+
<DocTable name="useBreadcrumb" category="api" />
|
|
146
|
+
|
|
147
|
+
## Accessibility
|
|
148
|
+
|
|
149
|
+
Tab moves through links sequentially using native anchor semantics. See [Primitive](/docs/primitive/components/breadcrumb#accessibility) for full WAI-ARIA compliance details.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "useButton",
|
|
4
|
+
"source": "apps/showcase/assets/apidoc/usebutton.json",
|
|
5
|
+
"data": {
|
|
6
|
+
"description": "The useButton manages the state and functionality of a Button component.",
|
|
7
|
+
"interfaces": {
|
|
8
|
+
"UseButtonProps": {
|
|
9
|
+
"description": "Defines valid properties in useButton.",
|
|
10
|
+
"relatedProp": "",
|
|
11
|
+
"props": [],
|
|
12
|
+
"methods": []
|
|
13
|
+
},
|
|
14
|
+
"UseButtonState": {
|
|
15
|
+
"description": "Defines valid state in useButton.",
|
|
16
|
+
"relatedProp": "",
|
|
17
|
+
"props": [],
|
|
18
|
+
"methods": []
|
|
19
|
+
},
|
|
20
|
+
"UseButtonRootProps": {
|
|
21
|
+
"description": "Data attribute props for the Button root element.",
|
|
22
|
+
"relatedProp": "",
|
|
23
|
+
"props": [
|
|
24
|
+
{
|
|
25
|
+
"name": "data-scope",
|
|
26
|
+
"type": "string",
|
|
27
|
+
"default": "",
|
|
28
|
+
"description": "Component scope identifier."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "data-part",
|
|
32
|
+
"type": "string",
|
|
33
|
+
"default": "",
|
|
34
|
+
"description": "Component part identifier."
|
|
35
|
+
}
|
|
36
|
+
],
|
|
37
|
+
"methods": []
|
|
38
|
+
},
|
|
39
|
+
"UseButtonExposes": {
|
|
40
|
+
"description": "Defines the methods and properties exposed by useButton.",
|
|
41
|
+
"relatedProp": "",
|
|
42
|
+
"props": [
|
|
43
|
+
{
|
|
44
|
+
"name": "rootProps",
|
|
45
|
+
"type": "UseButtonRootProps",
|
|
46
|
+
"default": "",
|
|
47
|
+
"description": "Pre-built data attribute props for the root element."
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"methods": []
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"types": {
|
|
54
|
+
"UseButtonInstance": {
|
|
55
|
+
"description": "Instance of useButton headless.",
|
|
56
|
+
"values": "HeadlessInstance<UseButtonProps, UseButtonState, UseButtonExposes>"
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"variables": {}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
]
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# useButton
|
|
2
|
+
|
|
3
|
+
Hook that provides data attributes and prop spreading for button elements.
|
|
4
|
+
|
|
5
|
+
```tsx
|
|
6
|
+
'use client';
|
|
7
|
+
import { useButton } from '@primereact/headless/button';
|
|
8
|
+
|
|
9
|
+
export default function BasicDemo() {
|
|
10
|
+
const { rootProps } = useButton();
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<div className="flex justify-center">
|
|
14
|
+
<button
|
|
15
|
+
{...rootProps}
|
|
16
|
+
className="px-2.5 py-1.5 bg-primary text-primary-contrast text-sm rounded cursor-pointer hover:bg-primary/90 focus-visible:outline focus-visible:outline-primary focus-visible:outline-offset-2 transition"
|
|
17
|
+
>
|
|
18
|
+
Submit
|
|
19
|
+
</button>
|
|
20
|
+
</div>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
```tsx
|
|
28
|
+
import { useButton } from '@primereact/headless/button';
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
const { rootProps } = useButton();
|
|
33
|
+
|
|
34
|
+
return <button {...rootProps}></button>;
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
`useButton` returns spread-ready `rootProps` with data attributes for styling, see [Primitive](/docs/primitive/components/button) for a component-based API.
|
|
38
|
+
|
|
39
|
+
## Features
|
|
40
|
+
|
|
41
|
+
- **Spread-ready root props**, a single `rootProps` object with `data-scope` and `data-part` attributes ready to spread on any element
|
|
42
|
+
- **Stateless**, no internal state; native `<button>` semantics drive all behavior
|
|
43
|
+
- **Element agnostic**, works on `<button>`, `<a>`, or any custom component that accepts spread props
|
|
44
|
+
|
|
45
|
+
## Styling with data attributes
|
|
46
|
+
|
|
47
|
+
The prop object includes `data-scope="button"` and `data-part="root"`, which work as selectors for all button styling.
|
|
48
|
+
|
|
49
|
+
```css
|
|
50
|
+
[data-scope='button'][data-part='root'] {
|
|
51
|
+
font-weight: 600;
|
|
52
|
+
padding: 0.5rem 1rem;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
[data-scope='button'][data-part='root']:hover {
|
|
56
|
+
opacity: 0.9;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
[data-scope='button'][data-part='root']:disabled {
|
|
60
|
+
opacity: 0.5;
|
|
61
|
+
cursor: not-allowed;
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## API
|
|
66
|
+
|
|
67
|
+
### useButton
|
|
68
|
+
|
|
69
|
+
<DocTable name="useButton" category="api" />
|
|
70
|
+
|
|
71
|
+
## Accessibility
|
|
72
|
+
|
|
73
|
+
Space and Enter activate the button while focused, matching native button semantics. See [Primitive](/docs/primitive/components/button#accessibility) for full WAI-ARIA compliance details.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "useCard",
|
|
4
|
+
"source": "apps/showcase/assets/apidoc/usecard.json",
|
|
5
|
+
"data": {
|
|
6
|
+
"description": "The useCard manages the state and functionality of a Card component.",
|
|
7
|
+
"interfaces": {
|
|
8
|
+
"UseCardProps": {
|
|
9
|
+
"description": "Defines valid properties in useCard.",
|
|
10
|
+
"relatedProp": "",
|
|
11
|
+
"props": [],
|
|
12
|
+
"methods": []
|
|
13
|
+
},
|
|
14
|
+
"UseCardState": {
|
|
15
|
+
"description": "Defines valid state in useCard.",
|
|
16
|
+
"relatedProp": "",
|
|
17
|
+
"props": [],
|
|
18
|
+
"methods": []
|
|
19
|
+
},
|
|
20
|
+
"UseCardExposes": {
|
|
21
|
+
"description": "Defines the methods and properties exposed by useCard.",
|
|
22
|
+
"relatedProp": "",
|
|
23
|
+
"props": [],
|
|
24
|
+
"methods": []
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"types": {
|
|
28
|
+
"UseCardInstance": {
|
|
29
|
+
"description": "Instance of useCard headless.",
|
|
30
|
+
"values": "HeadlessInstance<UseCardProps, UseCardState, UseCardExposes>"
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"variables": {}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
]
|