@primereact/headless 11.0.0-alpha.9 → 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 (617) hide show
  1. package/LICENSE.md +45 -0
  2. package/README.md +35 -0
  3. package/accordion/index.d.ts +3 -0
  4. package/accordion/index.mjs +1 -2
  5. package/accordion/useAccordion.d.ts +7 -6
  6. package/accordion/useAccordion.props.d.ts +2 -2
  7. package/accordion/useAccordionPanel.d.ts +46 -0
  8. package/accordion/useAccordionPanel.props.d.ts +2 -0
  9. package/animateonscroll/index.d.ts +1 -0
  10. package/animateonscroll/index.mjs +1 -2
  11. package/animateonscroll/useAnimateOnScroll.d.ts +6 -1
  12. package/animateonscroll/useAnimateOnScroll.props.d.ts +2 -2
  13. package/autocomplete/index.d.ts +3 -0
  14. package/autocomplete/index.mjs +1 -0
  15. package/autocomplete/useAutoComplete.d.ts +198 -0
  16. package/autocomplete/useAutoComplete.props.d.ts +2 -0
  17. package/avatar/index.d.ts +1 -0
  18. package/avatar/index.mjs +1 -2
  19. package/avatar/useAvatar.d.ts +5 -1
  20. package/avatar/useAvatar.props.d.ts +2 -2
  21. package/avatargroup/index.d.ts +3 -0
  22. package/avatargroup/index.mjs +1 -0
  23. package/avatargroup/useAvatarGroup.d.ts +6 -0
  24. package/avatargroup/useAvatarGroup.props.d.ts +2 -0
  25. package/badge/index.d.ts +1 -0
  26. package/badge/index.mjs +1 -2
  27. package/badge/useBadge.d.ts +7 -1
  28. package/badge/useBadge.props.d.ts +2 -2
  29. package/breadcrumb/index.d.ts +1 -0
  30. package/breadcrumb/index.mjs +1 -2
  31. package/breadcrumb/useBreadcrumb.d.ts +18 -2
  32. package/breadcrumb/useBreadcrumb.props.d.ts +2 -2
  33. package/button/index.d.ts +1 -0
  34. package/button/index.mjs +1 -2
  35. package/button/useButton.d.ts +6 -1
  36. package/button/useButton.props.d.ts +2 -2
  37. package/card/index.d.ts +1 -0
  38. package/card/index.mjs +1 -2
  39. package/card/useCard.d.ts +6 -1
  40. package/card/useCard.props.d.ts +2 -2
  41. package/carousel/index.d.ts +1 -0
  42. package/carousel/index.mjs +1 -2
  43. package/carousel/useCarousel.d.ts +117 -8
  44. package/carousel/useCarousel.props.d.ts +2 -2
  45. package/checkbox/index.d.ts +1 -0
  46. package/checkbox/index.mjs +1 -2
  47. package/checkbox/useCheckbox.d.ts +44 -3
  48. package/checkbox/useCheckbox.props.d.ts +2 -2
  49. package/checkboxgroup/index.d.ts +3 -0
  50. package/checkboxgroup/index.mjs +1 -0
  51. package/checkboxgroup/useCheckboxGroup.d.ts +11 -0
  52. package/checkboxgroup/useCheckboxGroup.props.d.ts +2 -0
  53. package/chip/index.d.ts +1 -0
  54. package/chip/index.mjs +1 -2
  55. package/chip/useChip.d.ts +9 -3
  56. package/chip/useChip.props.d.ts +2 -2
  57. package/collapsible/index.d.ts +3 -0
  58. package/collapsible/index.mjs +1 -0
  59. package/collapsible/useCollapsible.d.ts +33 -0
  60. package/collapsible/useCollapsible.props.d.ts +2 -0
  61. package/compare/index.d.ts +3 -0
  62. package/compare/index.mjs +1 -0
  63. package/compare/useCompare.d.ts +2 -0
  64. package/compare/useCompare.props.d.ts +2 -0
  65. package/contextmenu/index.d.ts +1 -0
  66. package/contextmenu/index.mjs +1 -2
  67. package/contextmenu/submenu/index.d.ts +2 -0
  68. package/contextmenu/submenu/index.mjs +1 -0
  69. package/contextmenu/submenu/useContextMenuSubmenu.d.ts +121 -0
  70. package/contextmenu/submenu/useContextMenuSubmenu.props.d.ts +2 -0
  71. package/contextmenu/useContextMenu.d.ts +413 -1
  72. package/contextmenu/useContextMenu.props.d.ts +2 -2
  73. package/datatable/features/index.d.ts +28 -0
  74. package/datatable/features/index.mjs +10 -0
  75. package/datatable/features/useDataTableColumnReorder.d.ts +52 -0
  76. package/datatable/features/useDataTableColumnResize.d.ts +20 -0
  77. package/datatable/features/useDataTableEditing.d.ts +69 -0
  78. package/datatable/features/useDataTableExpansion.d.ts +32 -0
  79. package/datatable/features/useDataTableExport.d.ts +43 -0
  80. package/datatable/features/useDataTableFilter.d.ts +95 -0
  81. package/datatable/features/useDataTableGrouping.d.ts +11 -0
  82. package/datatable/features/useDataTableKeyboard.d.ts +23 -0
  83. package/datatable/features/useDataTablePagination.d.ts +32 -0
  84. package/datatable/features/useDataTableRowReorder.d.ts +42 -0
  85. package/datatable/features/useDataTableSelection.d.ts +28 -0
  86. package/datatable/features/useDataTableSort.d.ts +51 -0
  87. package/datatable/features/useDataTableTree.d.ts +31 -0
  88. package/datatable/index.d.ts +7 -0
  89. package/datatable/index.mjs +10 -0
  90. package/datatable/useDataTable.d.ts +237 -0
  91. package/datatable/useDataTable.props.d.ts +2 -0
  92. package/datatable/useDataTableRow.d.ts +30 -0
  93. package/datatable/useDataTableRow.props.d.ts +2 -0
  94. package/datatable/utils/compareValues.d.ts +20 -0
  95. package/datatable/utils/index.d.ts +1 -0
  96. package/datatable/utils/index.mjs +1 -0
  97. package/dataview/index.d.ts +1 -0
  98. package/dataview/index.mjs +1 -2
  99. package/dataview/useDataView.d.ts +25 -1
  100. package/dataview/useDataView.props.d.ts +2 -2
  101. package/datepicker/index.d.ts +1 -0
  102. package/datepicker/index.mjs +1 -2
  103. package/datepicker/useDatePicker.d.ts +2 -114
  104. package/datepicker/useDatePicker.props.d.ts +2 -2
  105. package/dialog/index.d.ts +1 -0
  106. package/dialog/index.mjs +1 -2
  107. package/dialog/useDialog.d.ts +274 -24
  108. package/dialog/useDialog.props.d.ts +2 -2
  109. package/divider/index.d.ts +1 -0
  110. package/divider/index.mjs +1 -2
  111. package/divider/useDivider.d.ts +14 -1
  112. package/divider/useDivider.props.d.ts +2 -2
  113. package/dnd/index.d.ts +11 -0
  114. package/dnd/index.mjs +1 -0
  115. package/dnd/useDnd.d.ts +45 -0
  116. package/dnd/useDnd.props.d.ts +2 -0
  117. package/dnd/useDraggable.d.ts +14 -0
  118. package/dnd/useDraggable.props.d.ts +2 -0
  119. package/dnd/useDroppable.d.ts +11 -0
  120. package/dnd/useDroppable.props.d.ts +2 -0
  121. package/dnd/useSortable.d.ts +11 -0
  122. package/dnd/useSortable.props.d.ts +2 -0
  123. package/dnd/useSortableContainer.d.ts +24 -0
  124. package/dnd/useSortableContainer.props.d.ts +2 -0
  125. package/drawer/index.d.ts +1 -0
  126. package/drawer/index.mjs +1 -2
  127. package/drawer/useDrawer.d.ts +78 -16
  128. package/drawer/useDrawer.props.d.ts +2 -2
  129. package/fieldset/index.d.ts +1 -0
  130. package/fieldset/index.mjs +1 -2
  131. package/fieldset/useFieldset.d.ts +80 -1
  132. package/fieldset/useFieldset.props.d.ts +2 -2
  133. package/fileupload/index.d.ts +1 -0
  134. package/fileupload/index.mjs +1 -2
  135. package/fileupload/useFileUpload.d.ts +76 -4
  136. package/fileupload/useFileUpload.props.d.ts +2 -2
  137. package/floatlabel/index.d.ts +3 -0
  138. package/floatlabel/index.mjs +1 -0
  139. package/floatlabel/useFloatLabel.d.ts +6 -0
  140. package/floatlabel/useFloatLabel.props.d.ts +2 -0
  141. package/fluid/index.d.ts +1 -0
  142. package/fluid/index.mjs +1 -2
  143. package/fluid/useFluid.d.ts +6 -1
  144. package/fluid/useFluid.props.d.ts +2 -2
  145. package/focustrap/index.d.ts +1 -0
  146. package/focustrap/index.mjs +1 -2
  147. package/focustrap/useFocusTrap.d.ts +16 -3
  148. package/focustrap/useFocusTrap.props.d.ts +2 -2
  149. package/gallery/index.d.ts +1 -0
  150. package/gallery/index.mjs +1 -2
  151. package/gallery/item/index.mjs +1 -2
  152. package/gallery/item/useGalleryItem.d.ts +17 -7
  153. package/gallery/item/useGalleryItem.props.d.ts +2 -2
  154. package/gallery/useGallery.d.ts +159 -10
  155. package/gallery/useGallery.props.d.ts +2 -2
  156. package/iconfield/index.d.ts +1 -0
  157. package/iconfield/index.mjs +1 -2
  158. package/iconfield/useIconField.d.ts +6 -1
  159. package/iconfield/useIconField.props.d.ts +2 -2
  160. package/iftalabel/index.d.ts +3 -0
  161. package/iftalabel/index.mjs +1 -0
  162. package/iftalabel/useIftaLabel.d.ts +6 -0
  163. package/iftalabel/useIftaLabel.props.d.ts +2 -0
  164. package/inplace/index.d.ts +1 -0
  165. package/inplace/index.mjs +1 -2
  166. package/inplace/useInplace.d.ts +36 -5
  167. package/inplace/useInplace.props.d.ts +2 -2
  168. package/{colorpicker → inputcolor}/colorManager.d.ts +4 -3
  169. package/inputcolor/index.d.ts +4 -0
  170. package/inputcolor/index.mjs +1 -0
  171. package/inputcolor/useInputColor.d.ts +119 -0
  172. package/inputcolor/useInputColor.props.d.ts +2 -0
  173. package/inputgroup/index.d.ts +1 -0
  174. package/inputgroup/index.mjs +1 -2
  175. package/inputgroup/useInputGroup.d.ts +6 -1
  176. package/inputgroup/useInputGroup.props.d.ts +2 -2
  177. package/inputnumber/index.d.ts +1 -0
  178. package/inputnumber/index.mjs +1 -2
  179. package/inputnumber/useInputNumber.d.ts +55 -17
  180. package/inputnumber/useInputNumber.props.d.ts +2 -2
  181. package/inputotp/index.d.ts +1 -0
  182. package/inputotp/index.mjs +1 -2
  183. package/inputotp/useInputOtp.d.ts +25 -6
  184. package/inputotp/useInputOtp.props.d.ts +2 -2
  185. package/inputpassword/index.d.ts +3 -0
  186. package/inputpassword/index.mjs +1 -0
  187. package/inputpassword/useInputPassword.d.ts +15 -0
  188. package/inputpassword/useInputPassword.props.d.ts +2 -0
  189. package/inputtags/index.d.ts +1 -0
  190. package/inputtags/index.mjs +1 -2
  191. package/inputtags/useInputTags.d.ts +42 -12
  192. package/inputtags/useInputTags.props.d.ts +2 -2
  193. package/inputtext/index.d.ts +1 -0
  194. package/inputtext/index.mjs +1 -2
  195. package/inputtext/useInputText.d.ts +8 -1
  196. package/inputtext/useInputText.props.d.ts +2 -2
  197. package/knob/index.d.ts +1 -0
  198. package/knob/index.mjs +1 -2
  199. package/knob/useKnob.d.ts +51 -10
  200. package/knob/useKnob.props.d.ts +2 -2
  201. package/label/index.d.ts +1 -0
  202. package/label/index.mjs +1 -2
  203. package/label/useLabel.d.ts +6 -1
  204. package/label/useLabel.props.d.ts +2 -2
  205. package/listbox/index.d.ts +3 -0
  206. package/listbox/index.mjs +1 -2
  207. package/listbox/useListbox.d.ts +56 -18
  208. package/listbox/useListbox.props.d.ts +2 -2
  209. package/listbox/useListboxOption.d.ts +21 -0
  210. package/listbox/useListboxOption.props.d.ts +2 -0
  211. package/menu/checkboxitem/index.d.ts +2 -0
  212. package/menu/checkboxitem/index.mjs +1 -0
  213. package/menu/checkboxitem/useMenuCheckboxItem.d.ts +112 -0
  214. package/menu/checkboxitem/useMenuCheckboxItem.props.d.ts +2 -0
  215. package/menu/index.d.ts +1 -0
  216. package/menu/index.mjs +1 -2
  217. package/menu/radioitem/index.d.ts +2 -0
  218. package/menu/radioitem/index.mjs +1 -0
  219. package/menu/radioitem/useMenuRadioItem.d.ts +106 -0
  220. package/menu/radioitem/useMenuRadioItem.props.d.ts +2 -0
  221. package/menu/submenu/index.d.ts +2 -0
  222. package/menu/submenu/index.mjs +1 -0
  223. package/menu/submenu/useMenuSubmenu.d.ts +97 -0
  224. package/menu/submenu/useMenuSubmenu.props.d.ts +2 -0
  225. package/menu/useMenu.d.ts +215 -22
  226. package/menu/useMenu.props.d.ts +2 -2
  227. package/message/index.d.ts +1 -0
  228. package/message/index.mjs +1 -2
  229. package/message/useMessage.d.ts +13 -1
  230. package/message/useMessage.props.d.ts +2 -2
  231. package/metergroup/index.d.ts +1 -0
  232. package/metergroup/index.mjs +1 -2
  233. package/metergroup/useMeterGroup.d.ts +36 -5
  234. package/metergroup/useMeterGroup.props.d.ts +2 -2
  235. package/navigationmenu/index.d.ts +3 -0
  236. package/navigationmenu/index.mjs +1 -0
  237. package/navigationmenu/useNavigationMenu.d.ts +30 -0
  238. package/navigationmenu/useNavigationMenu.props.d.ts +2 -0
  239. package/orderlist/index.d.ts +3 -0
  240. package/orderlist/index.mjs +1 -0
  241. package/orderlist/useOrderList.d.ts +74 -0
  242. package/orderlist/useOrderList.props.d.ts +2 -0
  243. package/organizationchart/index.d.ts +3 -0
  244. package/organizationchart/index.mjs +1 -0
  245. package/organizationchart/useOrganizationChart.d.ts +69 -0
  246. package/organizationchart/useOrganizationChart.props.d.ts +2 -0
  247. package/overlaybadge/index.d.ts +3 -0
  248. package/overlaybadge/index.mjs +1 -0
  249. package/overlaybadge/useOverlayBadge.d.ts +1 -0
  250. package/overlaybadge/useOverlayBadge.props.d.ts +2 -0
  251. package/package.json +14 -15
  252. package/paginator/index.d.ts +1 -0
  253. package/paginator/index.mjs +1 -2
  254. package/paginator/usePaginator.d.ts +47 -1
  255. package/paginator/usePaginator.props.d.ts +2 -2
  256. package/panel/index.d.ts +1 -0
  257. package/panel/index.mjs +1 -2
  258. package/panel/usePanel.d.ts +76 -8
  259. package/panel/usePanel.props.d.ts +2 -2
  260. package/picklist/index.d.ts +3 -0
  261. package/picklist/index.mjs +1 -0
  262. package/picklist/usePickList.d.ts +153 -0
  263. package/picklist/usePickList.props.d.ts +2 -0
  264. package/popover/index.d.ts +1 -0
  265. package/popover/index.mjs +1 -8
  266. package/popover/usePopover.d.ts +65 -12
  267. package/popover/usePopover.props.d.ts +2 -2
  268. package/portal/index.d.ts +1 -0
  269. package/portal/index.mjs +1 -2
  270. package/portal/usePortal.d.ts +4 -2
  271. package/portal/usePortal.props.d.ts +2 -2
  272. package/positioner/index.d.ts +3 -0
  273. package/positioner/index.mjs +1 -0
  274. package/positioner/usePositioner.anchor.d.ts +7 -0
  275. package/positioner/usePositioner.d.ts +11 -0
  276. package/positioner/usePositioner.fallback.d.ts +13 -0
  277. package/positioner/usePositioner.props.d.ts +2 -0
  278. package/positioner/usePositioner.utils.d.ts +21 -0
  279. package/progressbar/index.d.ts +1 -0
  280. package/progressbar/index.mjs +1 -2
  281. package/progressbar/useProgressBar.d.ts +13 -1
  282. package/progressbar/useProgressBar.props.d.ts +2 -2
  283. package/progressspinner/index.d.ts +1 -0
  284. package/progressspinner/index.mjs +1 -2
  285. package/progressspinner/useProgressSpinner.d.ts +50 -1
  286. package/progressspinner/useProgressSpinner.props.d.ts +2 -2
  287. package/radiobutton/index.d.ts +1 -0
  288. package/radiobutton/index.mjs +1 -2
  289. package/radiobutton/useRadioButton.d.ts +41 -3
  290. package/radiobutton/useRadioButton.props.d.ts +2 -2
  291. package/radiobuttongroup/index.d.ts +3 -0
  292. package/radiobuttongroup/index.mjs +1 -0
  293. package/radiobuttongroup/useRadioButtonGroup.d.ts +11 -0
  294. package/radiobuttongroup/useRadioButtonGroup.props.d.ts +2 -0
  295. package/rating/index.d.ts +3 -0
  296. package/rating/index.mjs +1 -2
  297. package/rating/useRating.d.ts +46 -12
  298. package/rating/useRating.props.d.ts +2 -2
  299. package/rating/useRatingOption.d.ts +69 -0
  300. package/rating/useRatingOption.props.d.ts +2 -0
  301. package/scrollarea/index.d.ts +1 -0
  302. package/scrollarea/index.mjs +1 -2
  303. package/scrollarea/useScrollArea.d.ts +120 -15
  304. package/scrollarea/useScrollArea.props.d.ts +2 -2
  305. package/select/index.d.ts +3 -0
  306. package/select/index.mjs +1 -0
  307. package/select/useSelect.d.ts +190 -0
  308. package/select/useSelect.props.d.ts +2 -0
  309. package/sidebar/index.d.ts +7 -0
  310. package/sidebar/index.mjs +1 -0
  311. package/sidebar/useSidebar.d.ts +143 -0
  312. package/sidebar/useSidebar.props.d.ts +2 -0
  313. package/sidebar/useSidebarLayout.d.ts +24 -0
  314. package/sidebar/useSidebarLayout.props.d.ts +2 -0
  315. package/sidebar/useSidebarMenuItem.d.ts +10 -0
  316. package/sidebar/useSidebarMenuItem.props.d.ts +2 -0
  317. package/skeleton/index.d.ts +1 -0
  318. package/skeleton/index.mjs +1 -2
  319. package/skeleton/useSkeleton.d.ts +7 -1
  320. package/skeleton/useSkeleton.props.d.ts +2 -2
  321. package/slider/index.d.ts +1 -0
  322. package/slider/index.mjs +1 -2
  323. package/slider/useSlider.d.ts +81 -48
  324. package/slider/useSlider.props.d.ts +2 -2
  325. package/speeddial/index.d.ts +1 -0
  326. package/speeddial/index.mjs +1 -2
  327. package/speeddial/useSpeedDial.d.ts +89 -32
  328. package/speeddial/useSpeedDial.props.d.ts +2 -2
  329. package/splitter/index.d.ts +1 -0
  330. package/splitter/index.mjs +1 -2
  331. package/splitter/useSplitter.d.ts +57 -14
  332. package/splitter/useSplitter.props.d.ts +2 -2
  333. package/stepper/index.d.ts +1 -0
  334. package/stepper/index.mjs +1 -2
  335. package/stepper/useStepper.d.ts +47 -2
  336. package/stepper/useStepper.props.d.ts +2 -2
  337. package/styleclass/index.d.ts +1 -0
  338. package/styleclass/index.mjs +1 -2
  339. package/styleclass/useStyleClass.d.ts +5 -1
  340. package/styleclass/useStyleClass.props.d.ts +2 -2
  341. package/tabs/index.d.ts +1 -0
  342. package/tabs/index.mjs +1 -2
  343. package/tabs/useTabs.d.ts +42 -3
  344. package/tabs/useTabs.props.d.ts +2 -2
  345. package/tag/index.d.ts +1 -0
  346. package/tag/index.mjs +1 -2
  347. package/tag/useTag.d.ts +6 -1
  348. package/tag/useTag.props.d.ts +2 -2
  349. package/terminal/index.d.ts +1 -0
  350. package/terminal/index.mjs +1 -2
  351. package/terminal/useTerminal.d.ts +23 -2
  352. package/terminal/useTerminal.props.d.ts +2 -2
  353. package/textarea/index.d.ts +1 -0
  354. package/textarea/index.mjs +1 -2
  355. package/textarea/useTextarea.d.ts +9 -2
  356. package/textarea/useTextarea.props.d.ts +2 -2
  357. package/timeline/index.d.ts +1 -0
  358. package/timeline/index.mjs +1 -2
  359. package/timeline/useTimeline.d.ts +41 -1
  360. package/timeline/useTimeline.props.d.ts +2 -2
  361. package/toast/index.d.ts +1 -1
  362. package/toast/index.mjs +1 -2
  363. package/toast/useToast.d.ts +85 -23
  364. package/toast/useToast.props.d.ts +2 -2
  365. package/toaster/ToastManager.d.ts +14 -0
  366. package/toaster/index.d.ts +4 -0
  367. package/toaster/index.mjs +1 -0
  368. package/toaster/useToaster.d.ts +50 -0
  369. package/toaster/useToaster.props.d.ts +2 -0
  370. package/togglebutton/index.d.ts +1 -0
  371. package/togglebutton/index.mjs +1 -2
  372. package/togglebutton/useToggleButton.d.ts +5 -3
  373. package/togglebutton/useToggleButton.props.d.ts +2 -2
  374. package/togglebuttongroup/index.d.ts +3 -0
  375. package/togglebuttongroup/index.mjs +1 -0
  376. package/togglebuttongroup/useToggleButtonGroup.d.ts +17 -0
  377. package/togglebuttongroup/useToggleButtonGroup.props.d.ts +2 -0
  378. package/toggleswitch/index.d.ts +3 -0
  379. package/toggleswitch/index.mjs +1 -0
  380. package/toggleswitch/useToggleSwitch.d.ts +48 -0
  381. package/toggleswitch/useToggleSwitch.props.d.ts +2 -0
  382. package/toolbar/index.d.ts +1 -0
  383. package/toolbar/index.mjs +1 -2
  384. package/toolbar/useToolbar.d.ts +7 -1
  385. package/toolbar/useToolbar.props.d.ts +2 -2
  386. package/tooltip/index.d.ts +1 -0
  387. package/tooltip/index.mjs +1 -2
  388. package/tooltip/useTooltip.d.ts +43 -24
  389. package/tooltip/useTooltip.props.d.ts +2 -2
  390. package/tooltipmanager/index.d.ts +2 -0
  391. package/tooltipmanager/index.mjs +1 -0
  392. package/tooltipmanager/useTooltipManager.d.ts +12 -0
  393. package/tooltipmanager/useTooltipManager.props.d.ts +2 -0
  394. package/tree/TreeDragDropService.d.ts +13 -5
  395. package/tree/index.d.ts +7 -0
  396. package/tree/index.mjs +1 -2
  397. package/tree/useTree.d.ts +97 -17
  398. package/tree/useTree.props.d.ts +2 -2
  399. package/tree/useTreeDragDrop.d.ts +24 -0
  400. package/tree/useTreeFlatten.d.ts +13 -0
  401. package/tree/useTreeKeyboard.d.ts +18 -0
  402. package/tree/useTreeNode.d.ts +45 -0
  403. package/tree/useTreeNode.props.d.ts +2 -0
  404. package/tree/useTreeSelection.d.ts +31 -0
  405. package/utils/itemKey.d.ts +10 -0
  406. package/LICENSE +0 -21
  407. package/accordion/index.mjs.map +0 -1
  408. package/accordion/useAccordion.test.d.ts +0 -0
  409. package/animateonscroll/index.mjs.map +0 -1
  410. package/animateonscroll/useAnimateOnScroll.test.d.ts +0 -0
  411. package/avatar/index.mjs.map +0 -1
  412. package/avatar/useAvatar.test.d.ts +0 -0
  413. package/badge/index.mjs.map +0 -1
  414. package/badge/useBadge.test.d.ts +0 -0
  415. package/breadcrumb/index.mjs.map +0 -1
  416. package/breadcrumb/useBreadcrumb.test.d.ts +0 -0
  417. package/button/index.mjs.map +0 -1
  418. package/button/useButton.test.d.ts +0 -0
  419. package/card/index.mjs.map +0 -1
  420. package/card/useCard.test.d.ts +0 -0
  421. package/carousel/index.mjs.map +0 -1
  422. package/carousel/useCarousel.test.d.ts +0 -0
  423. package/checkbox/index.mjs.map +0 -1
  424. package/checkbox/useCheckbox.test.d.ts +0 -0
  425. package/chip/index.mjs.map +0 -1
  426. package/chip/useChip.test.d.ts +0 -0
  427. package/colorpicker/index.d.ts +0 -3
  428. package/colorpicker/index.mjs +0 -2
  429. package/colorpicker/index.mjs.map +0 -1
  430. package/colorpicker/input/index.d.ts +0 -2
  431. package/colorpicker/input/index.mjs +0 -2
  432. package/colorpicker/input/index.mjs.map +0 -1
  433. package/colorpicker/input/useColorPickerInput.d.ts +0 -11
  434. package/colorpicker/input/useColorPickerInput.props.d.ts +0 -2
  435. package/colorpicker/input/useColorPickerInput.test.d.ts +0 -0
  436. package/colorpicker/slider/index.d.ts +0 -2
  437. package/colorpicker/slider/index.mjs +0 -2
  438. package/colorpicker/slider/index.mjs.map +0 -1
  439. package/colorpicker/slider/useColorPickerSlider.d.ts +0 -13
  440. package/colorpicker/slider/useColorPickerSlider.props.d.ts +0 -2
  441. package/colorpicker/slider/useColorPickerSlider.test.d.ts +0 -0
  442. package/colorpicker/useColorPicker.d.ts +0 -26
  443. package/colorpicker/useColorPicker.props.d.ts +0 -2
  444. package/colorpicker/useColorPicker.test.d.ts +0 -0
  445. package/commandmenu/index.d.ts +0 -2
  446. package/commandmenu/index.mjs +0 -2
  447. package/commandmenu/index.mjs.map +0 -1
  448. package/commandmenu/useCommandMenu.d.ts +0 -11
  449. package/commandmenu/useCommandMenu.props.d.ts +0 -2
  450. package/commandmenu/useCommandMenu.test.d.ts +0 -0
  451. package/confirmdialog/index.d.ts +0 -2
  452. package/confirmdialog/index.mjs +0 -2
  453. package/confirmdialog/index.mjs.map +0 -1
  454. package/confirmdialog/useConfirmDialog.d.ts +0 -1
  455. package/confirmdialog/useConfirmDialog.props.d.ts +0 -2
  456. package/confirmdialog/useConfirmDialog.test.d.ts +0 -0
  457. package/confirmpopup/index.d.ts +0 -2
  458. package/confirmpopup/index.mjs +0 -2
  459. package/confirmpopup/index.mjs.map +0 -1
  460. package/confirmpopup/useConfirmPopup.d.ts +0 -25
  461. package/confirmpopup/useConfirmPopup.props.d.ts +0 -2
  462. package/confirmpopup/useConfirmPopup.test.d.ts +0 -0
  463. package/contextmenu/index.mjs.map +0 -1
  464. package/contextmenu/useContextMenu.test.d.ts +0 -0
  465. package/dataview/index.mjs.map +0 -1
  466. package/dataview/useDataView.test.d.ts +0 -0
  467. package/datepicker/index.mjs.map +0 -1
  468. package/datepicker/useDatePicker.test.d.ts +0 -0
  469. package/dialog/index.mjs.map +0 -1
  470. package/dialog/useDialog.test.d.ts +0 -0
  471. package/divider/index.mjs.map +0 -1
  472. package/divider/useDivider.test.d.ts +0 -0
  473. package/drawer/index.mjs.map +0 -1
  474. package/drawer/useDrawer.test.d.ts +0 -0
  475. package/fieldset/index.mjs.map +0 -1
  476. package/fieldset/useFieldset.test.d.ts +0 -0
  477. package/fileupload/index.mjs.map +0 -1
  478. package/fileupload/useFileUpload.test.d.ts +0 -0
  479. package/fluid/index.mjs.map +0 -1
  480. package/fluid/useFluid.test.d.ts +0 -0
  481. package/focustrap/index.mjs.map +0 -1
  482. package/focustrap/useFocusTrap.test.d.ts +0 -0
  483. package/gallery/index.mjs.map +0 -1
  484. package/gallery/item/index.mjs.map +0 -1
  485. package/gallery/useGallery.test.d.ts +0 -0
  486. package/iconfield/index.mjs.map +0 -1
  487. package/iconfield/useIconField.test.d.ts +0 -0
  488. package/imagecompare/index.d.ts +0 -2
  489. package/imagecompare/index.mjs +0 -2
  490. package/imagecompare/index.mjs.map +0 -1
  491. package/imagecompare/useImageCompare.d.ts +0 -8
  492. package/imagecompare/useImageCompare.props.d.ts +0 -2
  493. package/imagecompare/useImageCompare.test.d.ts +0 -0
  494. package/inplace/index.mjs.map +0 -1
  495. package/inplace/useInplace.test.d.ts +0 -0
  496. package/inputgroup/index.mjs.map +0 -1
  497. package/inputgroup/useInputGroup.test.d.ts +0 -0
  498. package/inputnumber/index.mjs.map +0 -1
  499. package/inputnumber/useInputNumber.test.d.ts +0 -0
  500. package/inputotp/index.mjs.map +0 -1
  501. package/inputotp/useInputOtp.test.d.ts +0 -0
  502. package/inputtags/index.mjs.map +0 -1
  503. package/inputtags/useInputTags.test.d.ts +0 -0
  504. package/inputtext/index.mjs.map +0 -1
  505. package/inputtext/useInputText.test.d.ts +0 -0
  506. package/knob/index.mjs.map +0 -1
  507. package/knob/useKnob.test.d.ts +0 -0
  508. package/label/index.mjs.map +0 -1
  509. package/label/useLabel.test.d.ts +0 -0
  510. package/listbox/index.mjs.map +0 -1
  511. package/listbox/useListbox.test.d.ts +0 -0
  512. package/menu/index.mjs.map +0 -1
  513. package/menu/sub/index.d.ts +0 -2
  514. package/menu/sub/index.mjs +0 -2
  515. package/menu/sub/index.mjs.map +0 -1
  516. package/menu/sub/useMenuSub.d.ts +0 -19
  517. package/menu/sub/useMenuSub.props.d.ts +0 -2
  518. package/menu/useMenu.test.d.ts +0 -0
  519. package/message/index.mjs.map +0 -1
  520. package/message/useMessage.test.d.ts +0 -0
  521. package/metergroup/index.mjs.map +0 -1
  522. package/metergroup/useMeterGroup.test.d.ts +0 -0
  523. package/orgchart/index.d.ts +0 -2
  524. package/orgchart/index.mjs +0 -2
  525. package/orgchart/index.mjs.map +0 -1
  526. package/orgchart/useOrgChart.d.ts +0 -20
  527. package/orgchart/useOrgChart.props.d.ts +0 -2
  528. package/orgchart/useOrgChart.test.d.ts +0 -0
  529. package/overlay/index.d.ts +0 -2
  530. package/overlay/index.mjs +0 -2
  531. package/overlay/index.mjs.map +0 -1
  532. package/overlay/useOverlay.d.ts +0 -16
  533. package/overlay/useOverlay.props.d.ts +0 -2
  534. package/overlay/useOverlay.test.d.ts +0 -0
  535. package/paginator/index.mjs.map +0 -1
  536. package/paginator/usePaginator.test.d.ts +0 -0
  537. package/panel/index.mjs.map +0 -1
  538. package/panel/usePanel.test.d.ts +0 -0
  539. package/password/index.d.ts +0 -2
  540. package/password/index.mjs +0 -2
  541. package/password/index.mjs.map +0 -1
  542. package/password/usePassword.d.ts +0 -35
  543. package/password/usePassword.props.d.ts +0 -2
  544. package/password/usePassword.test.d.ts +0 -0
  545. package/placer/index.d.ts +0 -2
  546. package/placer/index.mjs +0 -2
  547. package/placer/index.mjs.map +0 -1
  548. package/placer/usePlacer.d.ts +0 -12
  549. package/placer/usePlacer.props.d.ts +0 -2
  550. package/placer/usePlacer.test.d.ts +0 -0
  551. package/popover/index.mjs.map +0 -1
  552. package/popover/usePopover.test.d.ts +0 -0
  553. package/portal/index.mjs.map +0 -1
  554. package/portal/usePortal.test.d.ts +0 -0
  555. package/progressbar/index.mjs.map +0 -1
  556. package/progressbar/useProgressBar.test.d.ts +0 -0
  557. package/progressspinner/index.mjs.map +0 -1
  558. package/progressspinner/useProgressSpinner.test.d.ts +0 -0
  559. package/radiobutton/index.mjs.map +0 -1
  560. package/radiobutton/useRadioButton.test.d.ts +0 -0
  561. package/rating/index.mjs.map +0 -1
  562. package/rating/useRating.test.d.ts +0 -0
  563. package/scrollarea/index.mjs.map +0 -1
  564. package/scrollarea/useScrollArea.test.d.ts +0 -0
  565. package/skeleton/index.mjs.map +0 -1
  566. package/skeleton/useSkeleton.test.d.ts +0 -0
  567. package/slider/index.mjs.map +0 -1
  568. package/slider/useSlider.test.d.ts +0 -0
  569. package/speeddial/index.mjs.map +0 -1
  570. package/speeddial/useSpeedDial.test.d.ts +0 -0
  571. package/splitter/index.mjs.map +0 -1
  572. package/splitter/useSplitter.test.d.ts +0 -0
  573. package/stepper/index.mjs.map +0 -1
  574. package/stepper/useStepper.test.d.ts +0 -0
  575. package/styleclass/index.mjs.map +0 -1
  576. package/styleclass/useStyleClass.test.d.ts +0 -0
  577. package/switch/index.d.ts +0 -2
  578. package/switch/index.mjs +0 -2
  579. package/switch/index.mjs.map +0 -1
  580. package/switch/useSwitch.d.ts +0 -7
  581. package/switch/useSwitch.props.d.ts +0 -2
  582. package/switch/useSwitch.test.d.ts +0 -0
  583. package/tabs/index.mjs.map +0 -1
  584. package/tabs/useTabs.test.d.ts +0 -0
  585. package/tag/index.mjs.map +0 -1
  586. package/tag/useTag.test.d.ts +0 -0
  587. package/terminal/index.mjs.map +0 -1
  588. package/terminal/useTerminal.test.d.ts +0 -0
  589. package/textarea/index.mjs.map +0 -1
  590. package/textarea/useTextarea.test.d.ts +0 -0
  591. package/timeline/index.mjs.map +0 -1
  592. package/timeline/useTimeline.test.d.ts +0 -0
  593. package/toast/index.mjs.map +0 -1
  594. package/toast/item/index.css +0 -2
  595. package/toast/item/index.css.map +0 -1
  596. package/toast/item/index.d.ts +0 -2
  597. package/toast/item/index.mjs +0 -2
  598. package/toast/item/index.mjs.map +0 -1
  599. package/toast/item/useToastItem.d.ts +0 -25
  600. package/toast/item/useToastItem.props.d.ts +0 -2
  601. package/toast/item/useToastItem.test.d.ts +0 -0
  602. package/toast/toastStore.d.ts +0 -40
  603. package/toast/useToast.test.d.ts +0 -0
  604. package/togglebutton/index.mjs.map +0 -1
  605. package/togglebutton/useToggle.test.d.ts +0 -0
  606. package/toolbar/index.mjs.map +0 -1
  607. package/toolbar/useToolbar.test.d.ts +0 -0
  608. package/tooltip/group/index.d.ts +0 -2
  609. package/tooltip/group/index.mjs +0 -2
  610. package/tooltip/group/index.mjs.map +0 -1
  611. package/tooltip/group/useTooltipGroup.d.ts +0 -9
  612. package/tooltip/group/useTooltipGroup.props.d.ts +0 -2
  613. package/tooltip/group/useTooltipGroup.test.d.ts +0 -0
  614. package/tooltip/index.mjs.map +0 -1
  615. package/tooltip/useTooltip.test.d.ts +0 -0
  616. package/tree/index.mjs.map +0 -1
  617. package/tree/useTree.test.d.ts +0 -0
package/knob/useKnob.d.ts CHANGED
@@ -1,17 +1,58 @@
1
- import { useKnobProps } from '@primereact/types/shared/knob';
2
1
  import * as React from 'react';
3
- export declare const useKnob: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<useKnobProps, unknown, {
2
+ export declare const useKnob: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/knob").UseKnobProps, unknown, {
4
3
  state: {
5
4
  value: number | null | undefined;
6
5
  };
7
6
  rangePath: string;
8
7
  valuePath: string;
9
- onClick: (event: React.MouseEvent) => void;
10
- onMouseDown: (event: React.MouseEvent) => void;
11
- onMouseUp: () => void;
12
- onTouchStart: () => void;
13
- onTouchEnd: () => void;
14
- onMouseMove: (event: React.MouseEvent) => void;
15
- onTouchMove: (event: React.TouchEvent) => void;
16
- onKeyDown: (event: React.KeyboardEvent) => void;
8
+ rootProps: {
9
+ 'data-readonly'?: string | undefined;
10
+ 'data-disabled'?: string | undefined;
11
+ 'data-scope': string;
12
+ 'data-part': string;
13
+ };
14
+ svgProps: {
15
+ onClick?: ((event: React.MouseEvent) => void) | undefined;
16
+ onKeyDown?: ((event: React.KeyboardEvent) => void) | undefined;
17
+ onMouseDown?: ((event: React.MouseEvent) => void) | undefined;
18
+ onMouseUp?: (() => void) | undefined;
19
+ onTouchStart?: (() => void) | undefined;
20
+ onTouchEnd?: (() => void) | undefined;
21
+ 'data-scope': string;
22
+ 'data-part': string;
23
+ viewBox: "0 0 100 100";
24
+ role: "slider";
25
+ width: number | undefined;
26
+ height: number | undefined;
27
+ tabIndex: number;
28
+ 'aria-valuemin': number | undefined;
29
+ 'aria-valuemax': number | undefined;
30
+ 'aria-valuenow': number | null | undefined;
31
+ 'aria-labelledby': string | undefined;
32
+ 'aria-label': string | undefined;
33
+ 'aria-disabled': true | undefined;
34
+ 'aria-readonly': true | undefined;
35
+ };
36
+ rangeProps: {
37
+ 'data-scope': string;
38
+ 'data-part': string;
39
+ d: string;
40
+ strokeWidth: number | undefined;
41
+ stroke: string | undefined;
42
+ };
43
+ valueProps: {
44
+ 'data-scope': string;
45
+ 'data-part': string;
46
+ d: string;
47
+ strokeWidth: number | undefined;
48
+ stroke: string | undefined;
49
+ };
50
+ textProps: {
51
+ 'data-scope': string;
52
+ 'data-part': string;
53
+ x: number;
54
+ y: number;
55
+ textAnchor: "middle";
56
+ fill: string | undefined;
57
+ };
17
58
  }>;
@@ -1,2 +1,2 @@
1
- import type { useKnobProps } from '@primereact/types/shared/knob';
2
- export declare const defaultProps: useKnobProps;
1
+ import type { UseKnobProps } from '@primereact/types/headless/knob';
2
+ export declare const defaultProps: UseKnobProps;
package/label/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './useLabel';
2
2
  export * from './useLabel.props';
3
+ export type * from '@primereact/types/headless/label';
package/label/index.mjs CHANGED
@@ -1,2 +1 @@
1
- import{withHeadless as r}from"@primereact/core/headless";var e={};var s=r({name:"useLabel",defaultProps:e});export{e as defaultProps,s as useLabel};
2
- //# sourceMappingURL=index.mjs.map
1
+ import{withHeadless as o}from"@primereact/core/headless";var e={};var a=o({name:"useLabel",defaultProps:e,setup(){return{rootProps:{"data-scope":"label","data-part":"root"}}}});export{e as defaultProps,a as useLabel};
@@ -1 +1,6 @@
1
- export declare const useLabel: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/label").useLabelProps, unknown, Record<PropertyKey, unknown>>;
1
+ export declare const useLabel: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/label").UseLabelProps, unknown, {
2
+ rootProps: {
3
+ 'data-scope': string;
4
+ 'data-part': string;
5
+ };
6
+ }>;
@@ -1,2 +1,2 @@
1
- import type { useLabelProps } from '@primereact/types/shared/label';
2
- export declare const defaultProps: useLabelProps;
1
+ import type { UseLabelProps } from '@primereact/types/headless/label';
2
+ export declare const defaultProps: UseLabelProps;
@@ -1,2 +1,5 @@
1
1
  export * from './useListbox';
2
2
  export * from './useListbox.props';
3
+ export * from './useListboxOption';
4
+ export * from './useListboxOption.props';
5
+ export type * from '@primereact/types/headless/listbox';
package/listbox/index.mjs CHANGED
@@ -1,2 +1 @@
1
- import{withHeadless as Be}from"@primereact/core/headless";import{useControlledState as ze}from"@primereact/hooks/use-controlled-state";import{equals as Je,findLastIndex as C,findSingle as We,focus as U,getFirstFocusableElement as se,isElement as _e,isNotEmpty as q,isPrintableCharacter as je,isString as ie,resolveFieldData as x}from"@primeuix/utils";import*as s from"react";var ue={value:void 0,defaultValue:void 0,options:[],optionKey:void 0,optionLabel:void 0,optionValue:void 0,optionDisabled:void 0,optionGroupLabel:void 0,optionGroupChildren:void 0,disabled:!1,locale:void 0,multiple:!1,metaKeySelection:!1,autoOptionFocus:!0,selectOnFocus:!1,focusOnHover:!0,onValueChange:void 0};var nn=Be({name:"useListbox",defaultProps:ue,setup({id:le,props:o,elementRef:p}){var ae;let[P,$]=s.useState(!1),[a,d]=s.useState(-1),[i,de]=ze({value:o.value,defaultValue:(ae=o.defaultValue)!=null?ae:null,onChange:o.onValueChange}),fe={value:i,focused:P,focusedOptionIndex:a},L=s.useRef(null),b=s.useRef(null),k=s.useRef(null),F=s.useRef(!1),y=s.useRef(-1),K=s.useRef(null),O=s.useRef(""),c=()=>$e||[],v=e=>`${le}_${e}`,B=e=>o.optionLabel?x(e,o.optionLabel):ie(e)?e:null,l=e=>o.optionValue?x(e,o.optionValue):e,G=e=>o.optionDisabled?x(e,o.optionDisabled):!1,M=e=>!!(o.optionGroupLabel&&(e!=null&&e.optionGroup)&&(e!=null&&e.group)),me=e=>o.optionGroupLabel?x(e,o.optionGroupLabel):ie(e)?e:null,z=e=>o.optionGroupChildren?x(e,o.optionGroupChildren):null,J=()=>a!==-1?v(a):null,be=()=>c().filter(e=>!M(e)).length,ye=e=>(o.optionGroupLabel?e-(c().slice(0,e).filter(t=>M(t)).length||0):e)+1,he=()=>{U(L.current);let e=se(p.current,':not([data-p-hidden-focusable="true"])');k.current&&(k.current.tabIndex=_e(e)?0:-1),b.current&&(b.current.tabIndex=-1)},we=e=>{if(e.relatedTarget===L.current){let n=se(p.current,':not([data-p-hidden-focusable="true"])');n instanceof HTMLElement&&U(n),b.current&&(b.current.tabIndex=0)}else U(b.current);k.current&&(k.current.tabIndex=-1)},ke=e=>{!(p.current instanceof HTMLElement&&p.current.contains(e.relatedTarget))&&k.current&&b.current&&(k.current.tabIndex=0,b.current.tabIndex=0)},Ke=()=>{let e=a!==-1?a:o.autoOptionFocus?H():Ce();$(!0),d(e),N(),g(e)},Re=()=>{$(!1),d(-1),y.current=-1,O.current=""},Oe=e=>{let t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":W(e);break;case"ArrowUp":_(e);break;case"Home":j(e);break;case"End":Q(e);break;case"PageDown":De(e);break;case"PageUp":Ae(e);break;case"Enter":case"NumpadEnter":case"Space":Te(e);break;case"Tab":break;case"ShiftLeft":case"ShiftRight":Y();break;default:if(o.multiple&&e.code==="KeyA"&&t){let n=c().filter(r=>f(r)).map(r=>l(r));E(e,n),e.preventDefault();break}!t&&je(e.key)&&(Ne(e,e.key),e.preventDefault());break}},A=(e,t,n=-1)=>{o.disabled||G(t)||(o.multiple?xe(e,t):Se(e,t),F.current=!1,n!==-1&&d(n))},Ie=(e,t)=>{h(e,t)},ge=(e,t)=>{o.focusOnHover&&P&&h(e,t)},Ee=()=>{o.disabled||(F.current=!0)},Se=(e,t)=>{let n=V(t),r=F.current?!1:o.metaKeySelection,u=!1,m=null;if(r){let S=e&&(e.metaKey||e.ctrlKey);n?S&&(m=null,u=!0):(m=l(t),u=!0)}else m=n?null:l(t),u=!0;u&&E(e,m)},xe=(e,t)=>{let n=V(t),r=F.current?!1:o.metaKeySelection,u=null;if(r){let m=e.metaKey||e.ctrlKey;n?u=m?re(t):[l(t)]:(u=m?Array.isArray(i)?i:[]:[],u=[...u,l(t)])}else u=n?re(t):[...Array.isArray(i)?i:[],l(t)];E(e,u)},I=(e,t=-1,n=-1)=>{if(t=t===-1?oe(n,!0):t,n=n===-1?oe(t):n,t!==-1&&n!==-1){let r=Math.min(t,n),u=Math.max(t,n),m=c().slice(r,u+1).filter(S=>f(S)).map(S=>l(S));E(e,m)}},pe=()=>{d(-1),y.current=-1},Le=()=>{d(-1),y.current=-1},Fe=e=>{switch(e.code){case"ArrowDown":W(e);break;case"ArrowUp":_(e);break;case"ArrowLeft":case"ArrowRight":Me(e,!0);break;case"Home":j(e,!0);break;case"End":Q(e,!0);break;case"Enter":case"NumpadEnter":X(e);break;case"ShiftLeft":case"ShiftRight":Y();break;default:break}},W=e=>{let t=a!==-1?Ve(a):H();o.multiple&&e.shiftKey&&I(e,y.current,t),h(e,t),e.preventDefault()},_=e=>{let t=a!==-1?He(a):Ge();o.multiple&&e.shiftKey&&I(e,t,y.current),h(e,t),e.preventDefault()},Me=(e,t=!1)=>{t&&d(-1)},j=(e,t=!1)=>{if(t){let n=e.currentTarget;e.shiftKey?n==null||n.setSelectionRange(0,n.selectionStart):(n==null||n.setSelectionRange(0,0),d(-1))}else{let n=e.metaKey||e.ctrlKey,r=Z();o.multiple&&e.shiftKey&&n&&I(e,r,y.current),h(e,r)}e.preventDefault()},Q=(e,t=!1)=>{if(t){let n=e.currentTarget,r=n.value.length;e.shiftKey?n.setSelectionRange(n.selectionStart,r):(n.setSelectionRange(r,r),d(-1))}else{let n=e.metaKey||e.ctrlKey,r=ee();o.multiple&&e.shiftKey&&n&&I(e,y.current,r),h(e,r)}e.preventDefault()},Ae=e=>{g(0),e.preventDefault()},De=e=>{g(c().length-1),e.preventDefault()},X=e=>{a!==-1&&(o.multiple&&e.shiftKey?I(e,a):A(e,c()[a]))},Te=e=>{e.preventDefault(),X(e)},Y=()=>{y.current=a},D=e=>{var t,n;return f(e)&&((n=B(e))==null?void 0:n.toLocaleLowerCase(o.locale).startsWith((t=O.current)==null?void 0:t.toLocaleLowerCase(o.locale)))},f=e=>q(e)&&!G(e)&&!M(e),R=e=>f(e)&&V(e),T=(e,t)=>Je(e,t,ce),V=e=>{let t=l(e);return o.multiple?Array.isArray(i)&&i.some(n=>T(n,t)):T(i,t)},Z=()=>c().findIndex(e=>f(e)),ee=()=>C(c(),e=>f(e)),Ve=e=>{let t=e<c().length-1?c().slice(e+1).findIndex(n=>f(n)):-1;return t>-1?t+e+1:e},He=e=>{let t=e>0?C(c().slice(0,e),n=>f(n)):-1;return t>-1?t:e},Ce=()=>{if(w())if(o.multiple&&Array.isArray(i))for(let e=i.length-1;e>=0;e--){let t=i[e],n=c().findIndex(r=>R(r)&&T(t,l(r)));if(n>-1)return n}else return c().findIndex(e=>R(e));return-1},Pe=()=>w()?c().findIndex(e=>R(e)):-1,ve=()=>w()?C(c(),e=>R(e)):-1,ne=e=>{let t=w()&&e<c().length-1?c().slice(e+1).findIndex(n=>R(n)):-1;return t>-1?t+e+1:-1},te=e=>{let t=w()&&e>0?C(c().slice(0,e),n=>R(n)):-1;return t>-1?t:-1},oe=(e,t=!1)=>{let n=-1;return w()&&(t?(n=te(e),n=n===-1?ne(e):n):(n=ne(e),n=n===-1?te(e):n)),n>-1?n:e},H=()=>{let e=Pe();return e<0?Z():e},Ge=()=>{let e=ve();return e<0?ee():e},Ne=(e,t)=>{var r;O.current=(O.current||"")+t;let n=-1;q(O.current)&&(a!==-1?(n=c().slice(a).findIndex(u=>D(u)),n=n===-1?c().slice(0,a).findIndex(u=>D(u)):n+a):n=c().findIndex(u=>D(u)),n===-1&&a===-1&&(n=(r=H())!=null?r:-1),n!==-1&&h(e,n)),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{O.current="",K.current=null},500)},re=e=>Array.isArray(i)?i.filter(t=>!T(t,l(e))):[],h=(e,t=-1)=>{a!==t&&(d(t),g(),o.selectOnFocus&&!o.multiple&&A(e,c()[t]))},Ue=()=>new Promise(e=>{requestAnimationFrame(()=>{requestAnimationFrame(e)})}),g=(e=-1)=>{Ue().then(()=>{var r;let t=e!==-1?v(e):J(),n=We(L.current,`[id="${t}"]`);(r=n==null?void 0:n.scrollIntoView)==null||r.call(n,{block:"nearest",inline:"nearest",behavior:"smooth"})})},N=()=>{if(o.selectOnFocus&&o.autoOptionFocus&&!w()&&!o.multiple&&P){let e=H();d(e),A(null,c()[e])}},E=(e,t)=>{de([t,{originalEvent:e,value:t}])},w=()=>q(i);s.useEffect(()=>(N(),()=>{K.current&&(clearTimeout(K.current),K.current=null)}),[]);let qe=s.useMemo(()=>{let e=[];return(o.options||[]).forEach(t=>{let n=z(t)||[];n!=null&&n.length&&e.push({optionGroup:t,group:!0},...n)}),e},[o.options]),$e=o.optionGroupLabel?qe:o.options,ce=o.optionValue?void 0:o.optionKey;return{state:fe,listRef:L,firstHiddenFocusableRef:b,lastHiddenFocusableRef:k,getOptions:c,getOptionId:v,getOptionLabel:B,getOptionValue:l,isOptionDisabled:G,isOptionGroup:M,getOptionGroupLabel:me,getOptionGroupChildren:z,getFocusedOptionId:J,getAriaSetSize:be,getAriaPosInset:ye,onFirstHiddenFocus:he,onLastHiddenFocus:we,onFocusOut:ke,onListFocus:Ke,onListBlur:Re,onListKeyDown:Oe,onOptionSelect:A,onOptionMouseDown:Ie,onOptionMouseMove:ge,onOptionTouchEnd:Ee,onFilterChange:pe,onFilterBlur:Le,onFilterKeyDown:Fe,isOptionMatched:D,isValidOption:f,isValidSelectedOption:R,isSelected:V,changeFocusedOptionIndex:h,scrollInView:g,updateModel:E,autoUpdateModel:N,equalityKey:ce,hasValue:w}}});export{ue as defaultProps,nn as useListbox};
2
- //# sourceMappingURL=index.mjs.map
1
+ import{withHeadless as Je}from"@primereact/core/headless";import{useControlledState as We}from"@primereact/hooks/use-controlled-state";import{equals as je,findLastIndex as B,findSingle as Qe,focus as J,getFirstFocusableElement as fe,isElement as Xe,isNotEmpty as W,isNumber as Ye,isPrintableCharacter as Ze,isString as pe,nextFrame as et,resolveFieldData as v,toElement as K}from"@primeuix/utils";import*as u from"react";var de={value:void 0,defaultValue:void 0,options:[],optionKey:void 0,optionLabel:void 0,optionValue:void 0,optionDisabled:void 0,optionGroupLabel:void 0,optionGroupChildren:void 0,disabled:!1,invalid:!1,locale:void 0,multiple:!1,metaKeySelection:!1,autoOptionFocus:!0,selectOnFocus:!1,focusOnHover:!0,tabIndex:void 0,onValueChange:void 0};var ct=Je({name:"useListbox",defaultProps:de,setup({id:p,props:o,elementRef:y}){let[d,S]=u.useState(!1),[a,l]=u.useState(-1),[c,$]=We({value:o.value,defaultValue:o.defaultValue??null,onChange:o.onValueChange}),q={value:c,focused:d,focusedOptionIndex:a},R=u.useRef(null),O=u.useRef(null),g=u.useRef(null),L=u.useRef(!1),m=u.useRef(-1),h=u.useRef(null),w=u.useRef(""),r=()=>Ne||[],H=e=>`${p}_${e}`,f=e=>o.optionLabel?v(e,o.optionLabel):pe(e)||Ye(e)?e:null,b=e=>o.optionValue?v(e,o.optionValue):e,_=e=>o.optionDisabled?v(e,o.optionDisabled):!1,j=e=>!!(o.optionGroupLabel&&e?.optionGroup&&e?.group),ye=e=>o.optionGroupLabel?v(e,o.optionGroupLabel):pe(e)?e:null,Q=e=>o.optionGroupChildren?v(e,o.optionGroupChildren):null,V=()=>a!==-1?H(a):void 0,he=()=>{J(R.current);let e=fe(y.current,":not([data-focus-guard])"),t=K(g);t&&(t.tabIndex=Xe(e)?0:-1);let n=K(O);n&&(n.tabIndex=-1)},xe=e=>{if(e.relatedTarget===R.current){let s=fe(y.current,":not([data-focus-guard])");s instanceof HTMLElement&&J(s);let i=K(O);i&&(i.tabIndex=0)}else J(K(O));let n=K(g);n&&(n.tabIndex=-1)},Ee=e=>{let t=y.current instanceof HTMLElement&&y.current.contains(e.relatedTarget),n=K(g),s=K(O);!t&&n&&s&&(n.tabIndex=0,s.tabIndex=0)},Oe=e=>{let t=e?.currentTarget?.dataset?.dndFocusIndex,n=t!==void 0?parseInt(t,10):a!==-1?a:o.autoOptionFocus?T():ae();S(!0),l(n),z(),C(n)},ge=()=>{S(!1),l(-1),m.current=-1,w.current=""},we=e=>{let t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":X(e);break;case"ArrowUp":Y(e);break;case"Home":Z(e);break;case"End":ee(e);break;case"PageDown":Pe(e);break;case"PageUp":He(e);break;case"Enter":case"NumpadEnter":case"Space":De(e);break;case"Tab":break;case"ShiftLeft":case"ShiftRight":ne();break;default:if(o.multiple&&e.code==="KeyA"&&t){let n=r().filter(s=>x(s)).map(s=>b(s));M(e,n),e.preventDefault();break}!t&&Ze(e.key)&&(Ge(e,e.key),e.preventDefault());break}},G=(e,t,n=-1)=>{o.disabled||_(t)||(o.multiple?ke(e,t):Re(e,t),L.current=!1,n!==-1&&l(n))},Ie=()=>{o.disabled||(L.current=!0)},Re=(e,t)=>{let n=N(t),s=L.current?!1:o.metaKeySelection,i=!1,E=null;if(s){let A=e&&(e.metaKey||e.ctrlKey);n?A&&(E=null,i=!0):(E=b(t),i=!0)}else E=n?null:b(t),i=!0;i&&M(e,E)},ke=(e,t)=>{let n=N(t),s=L.current?!1:o.metaKeySelection,i=null;if(s){let E=e.metaKey||e.ctrlKey;n?i=E?ue(t):[b(t)]:(i=E?Array.isArray(c)?c:[]:[],i=[...i,b(t)])}else i=n?ue(t):[...Array.isArray(c)?c:[],b(t)];M(e,i)},P=(e,t=-1,n=-1)=>{if(t=t===-1?ie(n,!0):t,n=n===-1?ie(t):n,t!==-1&&n!==-1){let s=Math.min(t,n),i=Math.max(t,n),E=r().slice(s,i+1).filter(A=>x(A)).map(A=>b(A));M(e,E)}},Ke=()=>{l(-1),m.current=-1},Se=()=>{l(-1),m.current=-1},Le=e=>{switch(e.code){case"ArrowDown":X(e);break;case"ArrowUp":Y(e);break;case"ArrowLeft":case"ArrowRight":Me(e,!0);break;case"Home":Z(e,!0);break;case"End":ee(e,!0);break;case"Enter":case"NumpadEnter":te(e);break;case"ShiftLeft":case"ShiftRight":ne();break;default:break}},Fe=e=>{o.disabled||M(e,o.multiple?[]:null)},X=e=>{let t=a!==-1?Te(a):T();o.multiple&&e.shiftKey&&P(e,m.current,t),F(e,t),e.preventDefault()},Y=e=>{let t=a!==-1?Ce(a):Ve();o.multiple&&e.shiftKey&&P(e,t,m.current),F(e,t),e.preventDefault()},Me=(e,t=!1)=>{t&&l(-1)},Z=(e,t=!1)=>{if(t){let n=e.currentTarget;e.shiftKey?n?.setSelectionRange(0,n.selectionStart):(n?.setSelectionRange(0,0),l(-1))}else{let n=e.metaKey||e.ctrlKey,s=oe();o.multiple&&e.shiftKey&&n&&P(e,s,m.current),F(e,s)}e.preventDefault()},ee=(e,t=!1)=>{if(t){let n=e.currentTarget,s=n.value.length;e.shiftKey?n.setSelectionRange(n.selectionStart,s):(n.setSelectionRange(s,s),l(-1))}else{let n=e.metaKey||e.ctrlKey,s=se();o.multiple&&e.shiftKey&&n&&P(e,m.current,s),F(e,s)}e.preventDefault()},He=e=>{C(0),e.preventDefault()},Pe=e=>{C(r().length-1),e.preventDefault()},te=e=>{a!==-1&&(o.multiple&&e.shiftKey?P(e,a):G(e,r()[a]))},De=e=>{e.preventDefault(),te(e)},ne=()=>{m.current=a},U=e=>x(e)&&f(e)?.toLocaleLowerCase(o.locale).startsWith(w.current?.toLocaleLowerCase(o.locale)),x=e=>W(e)&&!_(e)&&!j(e),k=e=>x(e)&&N(e),D=(e,t)=>je(e,t,le),N=e=>{let t=b(e);return o.multiple?Array.isArray(c)&&c.some(n=>D(n,t)):D(c,t)},oe=()=>r().findIndex(e=>x(e)),se=()=>B(r(),e=>x(e)),Te=e=>{let t=e<r().length-1?r().slice(e+1).findIndex(n=>x(n)):-1;return t>-1?t+e+1:e},Ce=e=>{let t=e>0?B(r().slice(0,e),n=>x(n)):-1;return t>-1?t:e},ae=()=>{if(I())if(o.multiple&&Array.isArray(c))for(let e=c.length-1;e>=0;e--){let t=c[e],n=r().findIndex(s=>k(s)&&D(t,b(s)));if(n>-1)return n}else return r().findIndex(e=>k(e));return-1},Ae=()=>I()?r().findIndex(e=>k(e)):-1,ve=()=>I()?B(r(),e=>k(e)):-1,re=e=>{let t=I()&&e<r().length-1?r().slice(e+1).findIndex(n=>k(n)):-1;return t>-1?t+e+1:-1},ce=e=>{let t=I()&&e>0?B(r().slice(0,e),n=>k(n)):-1;return t>-1?t:-1},ie=(e,t=!1)=>{let n=-1;return I()&&(t?(n=ce(e),n=n===-1?re(e):n):(n=re(e),n=n===-1?ce(e):n)),n>-1?n:e},T=()=>{let e=Ae();return e<0?oe():e},Ve=()=>{let e=ve();return e<0?se():e},Ge=(e,t)=>{w.current=(w.current||"")+t;let n=-1;W(w.current)&&(a!==-1?(n=r().slice(a).findIndex(s=>U(s)),n=n===-1?r().slice(0,a).findIndex(s=>U(s)):n+a):n=r().findIndex(s=>U(s)),n===-1&&a===-1&&(n=T()??-1),n!==-1&&F(e,n)),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>{w.current="",h.current=null},500)},ue=e=>Array.isArray(c)?c.filter(t=>!D(t,b(e))):[],F=(e,t=-1)=>{a!==t&&(l(t),C(t),o.selectOnFocus&&!o.multiple&&t!==-1&&G(e,r()[t]))},C=(e=-1)=>{et().then(()=>{let t=e!==-1?H(e):V();Qe(R.current,`[id="${t}"]`)?.scrollIntoView?.({block:"nearest",inline:"nearest",behavior:"smooth"})})},z=()=>{if(o.selectOnFocus&&o.autoOptionFocus&&!I()&&!o.multiple&&d){let e=T();l(e),G(null,r()[e])}},M=(e,t)=>{$([t,{originalEvent:e,value:t}])},I=()=>W(c);u.useEffect(()=>(z(),()=>{h.current&&(clearTimeout(h.current),h.current=null)}),[]);let Ue=u.useMemo(()=>{let e=[];return(o.options||[]).forEach(t=>{let n=Q(t)||[];n?.length&&e.push({optionGroup:t,group:!0},...n)}),e},[o.options]),Ne=o.optionGroupLabel?Ue:o.options,le=o.optionValue?void 0:o.optionKey,Be={role:"presentation",ref:g,"aria-hidden":!0,"data-focus-guard":"",onFocus:xe},$e={role:"presentation",ref:O,"aria-hidden":!0,"data-focus-guard":"",onFocus:he},qe={role:"searchbox",autoComplete:"off",disabled:o.disabled,tabIndex:void 0,"aria-owns":p?`${p}_list`:void 0,"aria-activedescendant":V(),"data-scope":"listbox","data-part":"filter",onBlur:Se,onChange:Ke,onKeyDown:Le},_e={id:`${p}_list`,role:"listbox",ref:R,tabIndex:-1,"aria-activedescendant":d?V():void 0,"data-scope":"listbox","data-part":"list",onFocus:Oe,onBlur:ge,onKeyDown:we},ze={id:p,"data-scope":"listbox","data-part":"root","data-disabled":o.disabled||void 0,"data-invalid":o.invalid||void 0,onBlur:Ee};return{state:q,listRef:R,firstHiddenElementRef:O,lastHiddenElementRef:g,rootProps:ze,listProps:_e,filterProps:qe,firstHiddenProps:$e,lastHiddenProps:Be,getOptions:r,getOptionId:H,getOptionLabel:f,getOptionValue:b,isOptionDisabled:_,isOptionGroup:j,getOptionGroupLabel:ye,getOptionGroupChildren:Q,getFocusedOptionId:V,onOptionSelect:G,onOptionTouchEnd:Ie,onClearClick:Fe,isOptionMatched:U,isValidOption:x,isValidSelectedOption:k,isSelected:N,changeFocusedOptionIndex:F,findSelectedOptionIndex:ae,findFirstFocusedOptionIndex:T,scrollInView:C,updateModel:M,autoUpdateModel:z,equalityKey:le,hasValue:I,isEquals:D}}});import{withHeadless as tt}from"@primereact/core/headless";import*as me from"react";var be={option:void 0,index:void 0,group:!1,disabled:void 0,context:void 0};var ft=tt({name:"useListboxOption",defaultProps:be,setup({props:p}){let o=p.context,y=p.option,d=p.index??-1,S=p.group??!1,a=o?.isSelected(y)??!1,l=o?.state?.focusedOptionIndex===d,c=p.disabled??o?.isOptionDisabled(y)??!1,$={selected:a,focused:l,disabled:c,group:S},q=me.useMemo(()=>{if(S)return{};let g=o?.getOptions()??[],L=g.filter(f=>!o?.isOptionGroup(f)).length,m=(o?.props?.optionGroupLabel?d-(g.slice(0,d).filter(f=>o?.isOptionGroup(f)).length||0):d)+1,h=f=>o?.onOptionSelect(f,y,d),w=f=>{o?.changeFocusedOptionIndex(f,d)},r=f=>{o?.props?.focusOnHover&&o?.state?.focused&&o?.changeFocusedOptionIndex(f,d)},H=()=>o?.onOptionTouchEnd();return{id:o?.getOptionId(d)??"",role:"option","aria-selected":a,"aria-disabled":c,"aria-setsize":L,"aria-posinset":m,[a?"data-selected":"data-unselected"]:"",...c&&{"data-disabled":""},...l&&{"data-focused":""},"data-scope":"listbox","data-part":"option",onClick:h,onMouseDown:w,onMouseMove:r,onTouchEnd:H}},[o,y,d,a,c,l,S]),R={role:"presentation","data-scope":"listbox","data-part":"optionGroup"},O={"aria-hidden":!0,"data-scope":"listbox","data-part":"optionindicator",[a?"data-selected":"data-unselected"]:""};return{state:$,optionProps:q,groupProps:R,optionIndicatorProps:O}}});export{be as defaultOptionProps,de as defaultProps,ct as useListbox,ft as useListboxOption};
@@ -1,13 +1,60 @@
1
1
  import * as React from 'react';
2
- export declare const useListbox: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/listbox").useListboxProps, unknown, {
2
+ export declare const useListbox: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/listbox").UseListboxProps<unknown>, unknown, {
3
3
  state: {
4
4
  value: unknown;
5
5
  focused: boolean;
6
6
  focusedOptionIndex: number;
7
7
  };
8
- listRef: React.RefObject<HTMLElement | null>;
9
- firstHiddenFocusableRef: React.RefObject<HTMLElement | null>;
10
- lastHiddenFocusableRef: React.RefObject<HTMLElement | null>;
8
+ listRef: React.RefObject<HTMLUListElement | null>;
9
+ firstHiddenElementRef: React.RefObject<HTMLElement | null>;
10
+ lastHiddenElementRef: React.RefObject<HTMLElement | null>;
11
+ rootProps: {
12
+ id: string | undefined;
13
+ 'data-scope': string;
14
+ 'data-part': string;
15
+ 'data-disabled': true | undefined;
16
+ 'data-invalid': true | undefined;
17
+ onBlur: (event: React.FocusEvent) => void;
18
+ };
19
+ listProps: {
20
+ id: string;
21
+ role: "listbox";
22
+ ref: React.RefObject<HTMLUListElement | null>;
23
+ tabIndex: number;
24
+ 'aria-activedescendant': string | undefined;
25
+ 'data-scope': string;
26
+ 'data-part': string;
27
+ onFocus: (event?: React.FocusEvent) => void;
28
+ onBlur: () => void;
29
+ onKeyDown: (event: React.KeyboardEvent) => void;
30
+ };
31
+ filterProps: {
32
+ role: "searchbox";
33
+ autoComplete: "off";
34
+ disabled: boolean | undefined;
35
+ tabIndex: number | undefined;
36
+ 'aria-owns': string | undefined;
37
+ 'aria-activedescendant': string | undefined;
38
+ 'data-scope': string;
39
+ 'data-part': string;
40
+ onBlur: () => void;
41
+ onChange: () => void;
42
+ onKeyDown: (event: React.KeyboardEvent) => void;
43
+ };
44
+ firstHiddenProps: {
45
+ role: "presentation";
46
+ ref: React.RefObject<HTMLElement | null>;
47
+ 'aria-hidden': true;
48
+ 'data-focus-guard': "";
49
+ onFocus: () => void;
50
+ };
51
+ lastHiddenProps: {
52
+ role: "presentation";
53
+ ref: React.RefObject<HTMLElement | null>;
54
+ 'aria-hidden': true;
55
+ 'data-focus-guard': "";
56
+ onFocus: (event: React.FocusEvent) => void;
57
+ };
11
58
  getOptions: () => unknown[];
12
59
  getOptionId: (index: number) => string;
13
60
  getOptionLabel: (option: unknown) => any;
@@ -16,30 +63,21 @@ export declare const useListbox: (inProps?: unknown) => import("@primereact/type
16
63
  isOptionGroup: (option: unknown) => boolean;
17
64
  getOptionGroupLabel: (optionGroup: unknown) => any;
18
65
  getOptionGroupChildren: (optionGroup: unknown) => any;
19
- getFocusedOptionId: () => string | null;
20
- getAriaSetSize: () => number;
21
- getAriaPosInset: (index: number) => number;
22
- onFirstHiddenFocus: () => void;
23
- onLastHiddenFocus: (event: React.FocusEvent) => void;
24
- onFocusOut: (event: React.FocusEvent) => void;
25
- onListFocus: () => void;
26
- onListBlur: () => void;
27
- onListKeyDown: (event: React.KeyboardEvent) => void;
66
+ getFocusedOptionId: () => string | undefined;
28
67
  onOptionSelect: (event: React.MouseEvent | React.KeyboardEvent, option: unknown, index?: number) => void;
29
- onOptionMouseDown: (event: React.MouseEvent, index: number) => void;
30
- onOptionMouseMove: (event: React.MouseEvent, index: number) => void;
31
68
  onOptionTouchEnd: () => void;
32
- onFilterChange: () => void;
33
- onFilterBlur: () => void;
34
- onFilterKeyDown: (event: React.KeyboardEvent) => void;
69
+ onClearClick: (event: React.MouseEvent) => void;
35
70
  isOptionMatched: (option: unknown) => any;
36
71
  isValidOption: (option: unknown) => boolean;
37
72
  isValidSelectedOption: (option: unknown) => boolean;
38
73
  isSelected: (option: unknown) => boolean;
39
74
  changeFocusedOptionIndex: (event: React.MouseEvent | React.KeyboardEvent, index?: number) => void;
75
+ findSelectedOptionIndex: () => number;
76
+ findFirstFocusedOptionIndex: () => number;
40
77
  scrollInView: (index?: number) => void;
41
78
  updateModel: (event: React.SyntheticEvent, value: unknown) => void;
42
79
  autoUpdateModel: () => void;
43
80
  equalityKey: string | undefined;
44
81
  hasValue: () => boolean;
82
+ isEquals: (value1: unknown, value2: unknown) => boolean;
45
83
  }>;
@@ -1,2 +1,2 @@
1
- import type { useListboxProps } from '@primereact/types/shared/listbox';
2
- export declare const defaultProps: useListboxProps;
1
+ import type { UseListboxProps } from '@primereact/types/headless/listbox';
2
+ export declare const defaultProps: UseListboxProps;
@@ -0,0 +1,21 @@
1
+ import type { UseListboxOptionElementProps } from '@primereact/types/headless/listbox';
2
+ export declare const useListboxOption: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/listbox").UseListboxOptionProps, unknown, {
3
+ state: {
4
+ selected: boolean;
5
+ focused: boolean;
6
+ disabled: boolean;
7
+ group: boolean;
8
+ };
9
+ optionProps: UseListboxOptionElementProps;
10
+ groupProps: {
11
+ role: "presentation";
12
+ 'data-scope': string;
13
+ 'data-part': string;
14
+ };
15
+ optionIndicatorProps: {
16
+ [x: string]: string | true;
17
+ 'aria-hidden': true;
18
+ 'data-scope': string;
19
+ 'data-part': string;
20
+ };
21
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { UseListboxOptionProps } from '@primereact/types/headless/listbox';
2
+ export declare const defaultOptionProps: UseListboxOptionProps;
@@ -0,0 +1,2 @@
1
+ export * from './useMenuCheckboxItem';
2
+ export * from './useMenuCheckboxItem.props';
@@ -0,0 +1 @@
1
+ import{withHeadless as l}from"@primereact/core/headless";import{useCheckbox as h}from"@primereact/headless/checkbox";import*as d from"react";var a={checked:void 0,defaultChecked:void 0,indeterminate:!1,trueValue:!0,falseValue:!1,inputId:void 0,name:void 0,value:void 0,disabled:void 0,closeOnSelect:!1,onSelect:void 0,onCheckedChange:void 0};var C=l({name:"useMenuCheckboxItem",defaultProps:a,setup({props:e}){let n=h({...e,onCheckedChange:e.onCheckedChange?c=>e.onCheckedChange(c):void 0}),t=!!n.state.checked,o=!!e.disabled,s=e.closeOnSelect??!1,u=d.useCallback(c=>{o||(n.onChange({target:{checked:!t}}),e.onSelect?.(c))},[n,t,o,e.onSelect]);return{...n,state:{...n.state,checked:t},closeOnSelect:s,onSelect:u}}});export{a as defaultProps,C as useMenuCheckboxItem};
@@ -0,0 +1,112 @@
1
+ import type { UseMenuItemSelectEvent } from '@primereact/types/headless/menu';
2
+ import * as React from 'react';
3
+ export declare const useMenuCheckboxItem: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/menu").UseMenuCheckboxItemProps, unknown, {
4
+ state: {
5
+ checked: boolean;
6
+ indeterminate: boolean | undefined;
7
+ };
8
+ closeOnSelect: boolean;
9
+ onSelect: (event: UseMenuItemSelectEvent) => void;
10
+ ref: React.Ref<unknown>;
11
+ elementRef: React.RefObject<HTMLElement | undefined>;
12
+ id?: string | undefined;
13
+ name?: string | undefined;
14
+ type?: import("@primereact/types/core").Types | undefined;
15
+ scope?: string | undefined;
16
+ part?: string | undefined;
17
+ inProps?: import("@primereact/types").SafeRecord<import("@primereact/headless/checkbox").UseCheckboxProps> | undefined;
18
+ $attrSelector?: string | undefined;
19
+ $primereact: import("@primereact/types/core").Contexts;
20
+ props: import("@primereact/types").SafeRecord<import("@primereact/headless/checkbox").UseCheckboxProps>;
21
+ attrs: Omit<import("@primereact/types").SafeRecord<import("@primereact/headless/checkbox").UseCheckboxProps>, keyof import("@primereact/headless/checkbox").UseCheckboxProps> & Record<PropertyKey, unknown>;
22
+ $computedSetup: {
23
+ state: {
24
+ checked: boolean;
25
+ indeterminate: boolean | undefined;
26
+ };
27
+ rootProps: {
28
+ 'data-indeterminate'?: string | undefined;
29
+ 'data-invalid'?: string | undefined;
30
+ 'data-disabled'?: string | undefined;
31
+ 'data-scope': string;
32
+ 'data-part': string;
33
+ };
34
+ inputProps: {
35
+ 'data-scope': string;
36
+ 'data-part': string;
37
+ id: string | undefined;
38
+ type: "checkbox";
39
+ value: unknown;
40
+ name: string | undefined;
41
+ checked: boolean;
42
+ tabIndex: number | undefined;
43
+ disabled: boolean | undefined;
44
+ readOnly: boolean | undefined;
45
+ required: boolean | undefined;
46
+ 'aria-labelledby': string | undefined;
47
+ 'aria-label': string | undefined;
48
+ 'aria-invalid': true | undefined;
49
+ 'aria-checked': "mixed" | undefined;
50
+ onFocus: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
51
+ onBlur: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
52
+ onChange: ((event: React.ChangeEvent<HTMLInputElement>) => void) | undefined;
53
+ };
54
+ boxProps: {
55
+ 'data-indeterminate'?: string | undefined;
56
+ 'data-invalid'?: string | undefined;
57
+ 'data-disabled'?: string | undefined;
58
+ 'data-scope': string;
59
+ 'data-part': string;
60
+ };
61
+ indicatorProps: {
62
+ 'data-invalid'?: string | undefined;
63
+ 'data-disabled'?: string | undefined;
64
+ 'data-indeterminate'?: string | undefined;
65
+ 'data-scope': string;
66
+ 'data-part': string;
67
+ };
68
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
69
+ };
70
+ rootProps: {
71
+ 'data-indeterminate'?: string | undefined;
72
+ 'data-invalid'?: string | undefined;
73
+ 'data-disabled'?: string | undefined;
74
+ 'data-scope': string;
75
+ 'data-part': string;
76
+ };
77
+ inputProps: {
78
+ 'data-scope': string;
79
+ 'data-part': string;
80
+ id: string | undefined;
81
+ type: "checkbox";
82
+ value: unknown;
83
+ name: string | undefined;
84
+ checked: boolean;
85
+ tabIndex: number | undefined;
86
+ disabled: boolean | undefined;
87
+ readOnly: boolean | undefined;
88
+ required: boolean | undefined;
89
+ 'aria-labelledby': string | undefined;
90
+ 'aria-label': string | undefined;
91
+ 'aria-invalid': true | undefined;
92
+ 'aria-checked': "mixed" | undefined;
93
+ onFocus: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
94
+ onBlur: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
95
+ onChange: ((event: React.ChangeEvent<HTMLInputElement>) => void) | undefined;
96
+ };
97
+ boxProps: {
98
+ 'data-indeterminate'?: string | undefined;
99
+ 'data-invalid'?: string | undefined;
100
+ 'data-disabled'?: string | undefined;
101
+ 'data-scope': string;
102
+ 'data-part': string;
103
+ };
104
+ indicatorProps: {
105
+ 'data-invalid'?: string | undefined;
106
+ 'data-disabled'?: string | undefined;
107
+ 'data-indeterminate'?: string | undefined;
108
+ 'data-scope': string;
109
+ 'data-part': string;
110
+ };
111
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
112
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { UseMenuCheckboxItemProps } from '@primereact/types/headless/menu';
2
+ export declare const defaultProps: UseMenuCheckboxItemProps;
package/menu/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './useMenu';
2
2
  export * from './useMenu.props';
3
+ export type * from '@primereact/types/headless/menu';
package/menu/index.mjs CHANGED
@@ -1,2 +1 @@
1
- import{withHeadless as N}from"@primereact/core/headless";import{findSingle as Q,focus as A,isPrintableCharacter as ee}from"@primeuix/utils";import*as u from"react";var F={open:void 0,defaultOpen:void 0,composite:!1,appendTo:"body",baseZIndex:0,autoZIndex:!0,tabIndex:0,onOpenChange:void 0};var ae=N({name:"useMenu",defaultProps:F,setup({props:r}){var C;let[L,h]=u.useState(r.open!==void 0?r.open:(C=r.defaultOpen)!=null?C:!1),[S,M]=u.useState(!1),[d,a]=u.useState(r.composite?[]:""),[K,R]=u.useState(null),v=u.useRef(!1),O=u.useRef(null),I=u.useRef(null),f=u.useRef(null),p=u.useRef(new Map),P={opened:L,focused:S,focusedOptionId:d,contextMenuTarget:K},H=u.useCallback((e,t)=>{p.current.set(e,t)},[]),_=u.useCallback(e=>{p.current.delete(e)},[]),w=e=>{r.onOpenChange&&r.onOpenChange({value:e})};u.useEffect(()=>{r.open!==void 0&&h(r.open)},[r.open]);let j=e=>{h(e),w(e)},g=u.useCallback(()=>{let e=[];return p.current.forEach((t,n)=>{if(t.getAttribute("data-p-disabled")==="true")return;let s=t,l=!0;for(;s&&s!==f.current;){let c=s.closest('[data-pc-name="menulist"]');if(!c||c===f.current)break;let i=c.previousElementSibling;if(i&&i.getAttribute("aria-expanded")==="false"){l=!1;break}s=c.parentElement}l&&e.push({id:n,element:t})}),e},[]),y=u.useCallback(()=>{let e=g();if(e.length===0)return[];let t=Math.min(...e.map(c=>c.id.split("_").length));if(d.length===0)return e.filter(i=>i.id.split("_").length===t);let o=d[d.length-1].split("_"),s=o.length;return e.filter(c=>{let i=c.id.split("_");if(i.length!==s)return!1;if(s===t)return i.length===t;let b=o.slice(0,-1).join("_"),x=i.slice(0,-1).join("_");return b===x})},[r.composite,d,g]),m=e=>{v.current=!0,r.composite?a(t=>{let n=Array.isArray(t)?t:[];if(n.length===0)return[e];if(n.includes(e)){let o=e.length,s=n.findIndex(l=>l.length===o);return s!==-1?[...n.slice(0,s),e]:n}else if(n[n.length-1].length===e.length)return[...n.slice(0,-1),e];return[...n,e]}):a(e)},E=()=>r.composite&&Array.isArray(d)?d[d.length-1]||"":typeof d=="string"?d:"",B=e=>{var l,c;let t=r.composite?y():g();if(t.length===0)return;let n=E(),o=n?t.findIndex(i=>i.id===n)+1:0,s=e.toLowerCase();for(let i=o;i<t.length;i++){let b=t[i];if((((l=b.element.textContent)==null?void 0:l.trim().toLowerCase())||"").startsWith(s)){r.composite?m(b.id):a(b.id);return}}for(let i=0;i<o;i++){let b=t[i];if((((c=b.element.textContent)==null?void 0:c.trim().toLowerCase())||"").startsWith(s)){r.composite?m(b.id):a(b.id);return}}},U=e=>{e.preventDefault();let t=r.composite?y():g();if(t.length===0)return;let n=E();if(!n){r.composite?m(t[0].id):a(t[0].id);return}let o=t.findIndex(l=>l.id===n),s=o<t.length-1?o+1:0;r.composite?m(t[s].id):a(t[s].id)},W=e=>{if(e.preventDefault(),e.altKey&&I.current){D();return}let t=r.composite?y():g();if(t.length===0)return;let n=E();if(!n){r.composite?m(t[t.length-1].id):a(t[t.length-1].id);return}let o=t.findIndex(l=>l.id===n),s=o>0?o-1:t.length-1;r.composite?m(t[s].id):a(t[s].id)},X=e=>{if(!r.composite)return;e.preventDefault();let t=E();if(!t)return;let n=p.current.get(t);if(!n)return;let o=n.getAttribute("aria-expanded");if(o!==null){if(o==="false"){let s=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});n.dispatchEvent(s)}setTimeout(()=>{let l=g().filter(c=>c.id.startsWith(t+"_")&&c.id.split("_").length===t.split("_").length+1);l.length>0&&a(c=>[...Array.isArray(c)?c:[],l[0].id])},10)}},Y=e=>{if(!(!r.composite||(e.preventDefault(),!E()||!Array.isArray(d)))&&d.length>1){let n=d[d.length-2],o=p.current.get(n);if(o&&o.getAttribute("aria-expanded")==="true"){let s=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});o.dispatchEvent(s)}}},Z=e=>{e.preventDefault();let t=r.composite?y():g();t.length!==0&&(r.composite?m(t[0].id):a(t[0].id))},V=e=>{e.preventDefault();let t=r.composite?y():g();t.length!==0&&(r.composite?m(t[t.length-1].id):a(t[t.length-1].id))},$=e=>{if(r.composite&&T(),f!=null&&f.current){let t=E(),n=Q(f==null?void 0:f.current,`[id="${t}"]`);if(n){let o=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});n.dispatchEvent(o)}}e.preventDefault()},T=()=>{k(),setTimeout(()=>{I.current&&A(I.current.elementRef.current)},10)},q=e=>{let t=e.metaKey||e.ctrlKey;switch(e.key){case"ArrowDown":U(e);break;case"ArrowUp":W(e);break;case"ArrowRight":r.composite&&X(e);break;case"ArrowLeft":r.composite&&Y(e);break;case"Home":Z(e);break;case"End":V(e);break;case"Enter":case" ":$(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;case"Escape":T();break;default:!t&&ee(e.key)&&B(e.key);break}},z=()=>{if(M(!0),E()===""&&!v.current){let t=r.composite?y():g();t.length>0&&(r.composite?m(t[0].id):a(t[0].id))}v.current=!1},G=()=>{M(!1),r.composite?k():a("")},k=()=>{r.composite?(p.current.forEach(e=>{if(e.getAttribute("aria-expanded")==="true"){let n=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});e.dispatchEvent(n)}}),a([])):a("")},J=e=>{if(!r.composite||!Array.isArray(d))return;let t=e.split("_").length-1;p.current.forEach((n,o)=>{let s=o.split("_").length-1;if(n.getAttribute("aria-expanded")==="true"&&s>=t){let c=new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window});n.dispatchEvent(c)}}),a(n=>(Array.isArray(n)?n:[]).filter(s=>s.split("_").length-1<t))},D=()=>{h(!1),w(!1),r.composite?a([]):a(""),setTimeout(()=>{I.current&&A(I.current.elementRef.current)},10)};return{state:P,portalRef:O,triggerRef:I,listRef:f,registerItem:H,unregisterItem:_,changeVisibleState:j,changeFocusedOptionId:m,hideSubmenusAfterLevel:J,onListKeyDown:q,onListFocus:z,onListBlur:G,onOverlayEnter:()=>{f.current&&A(f.current)},onTriggerClick:e=>{if(e&&e.type==="contextmenu"){e.preventDefault(),e.stopPropagation();let t={pageX:e.pageX,pageY:e.pageY};L?(w(!1),h(!1),setTimeout(()=>{R(t),w(!0),h(!0)},0)):(R(t),h(!0),w(!0))}else R(null),h(!0),w(!0)},onItemClick:e=>{e.preventDefault(),D()}}}});export{F as defaultProps,ae as useMenu};
2
- //# sourceMappingURL=index.mjs.map
1
+ import{withHeadless as rt}from"@primereact/core/headless";import{usePopover as ot}from"@primereact/headless/popover";import{focus as V,isPrintableCharacter as st,toElement as A}from"@primeuix/utils";import*as i from"react";var Re={open:void 0,defaultOpen:void 0,composite:!0,appendTo:"body",baseZIndex:0,autoZIndex:!0,tabIndex:0,openDelay:100,closeDelay:0,openOnHover:!1,onOpenChange:void 0,context:void 0,navigationmenu:void 0,navigationmenuMenuId:void 0};var B=(o,O)=>{let N=o.compareDocumentPosition(O);return N&Node.DOCUMENT_POSITION_FOLLOWING?-1:N&Node.DOCUMENT_POSITION_PRECEDING?1:0},ft=rt({name:"useMenu",defaultProps:Re,setup({props:o,id:O}){let N=!!(o.navigationmenu&&o.navigationmenuMenuId),ye=N?o.navigationmenu.isMenuOpen(o.navigationmenuMenuId):o.open,ne=o.onOpenChange,Le=N?t=>{ne?.(t),o.navigationmenu.onMenuOpenChange(o.navigationmenuMenuId,!!t.value)}:ne,Ie=ot({open:ye,defaultOpen:o.defaultOpen,onOpenChange:Le}),u=o.context?.popover??Ie,[Te,re]=i.useState(!1),[d,f]=i.useState(o.composite?[]:""),[w,oe]=i.useState(void 0),se=i.useRef(!1),ae=i.useRef(!0),x=i.useRef(new Map),k=i.useRef(new Map),R=(t,e)=>{let n=t.current.get(e);n!==void 0&&(window.clearTimeout(n),t.current.delete(e))},_=(t,e,n,r)=>{let s=e==="open"?x:k;if(R(e==="open"?k:x,t),R(s,t),n<=0){r();return}let c=window.setTimeout(()=>{s.current.delete(t),r()},n);s.current.set(t,c)};i.useEffect(()=>{let t=x.current,e=k.current;return()=>{t.forEach(n=>window.clearTimeout(n)),e.forEach(n=>window.clearTimeout(n)),t.clear(),e.clear()}},[]);let g=i.useRef(new Map),h=i.useRef(new Map),H=i.useRef(new Map),W=i.useRef(new Map),ce=i.useRef(new Map),v=i.useRef(null),Ae=i.useCallback(t=>{v.current=A(t)},[]),y={open:!!u.state.open,focused:Te,focusedOptionId:d,anchorElement:u.state.anchorElement,positionerElement:u.state.positionerElement,popupElement:u.state.popupElement,arrowElement:u.state.arrowElement},q=i.useCallback(t=>`${O}_item_${t}`,[O]),z=i.useCallback(t=>t?`${O}_list_${t}`:`${O}_list`,[O]),L=i.useCallback(t=>{let e=0,n=t.parentElement;for(;n&&(n.getAttribute("role")==="menu"&&e++,n!==v.current);)n=n.parentElement;if(n!==v.current){let r=t.closest('[role="menu"]');if(r){for(let[s,a]of H.current.entries())if(a.current===r){let c=g.current.get(s);if(c)return L(c)+1}}}return Math.max(0,e-1)},[]),ie=i.useCallback(t=>{let e=t.closest('[role="menu"]');if(!e)return[];let n=[];return g.current.forEach((r,s)=>{r.closest('[role="menu"]')===e&&!r.hasAttribute("data-disabled")&&n.push({id:s,element:r})}),n.sort((r,s)=>B(r.element,s.element)),n},[]),Z=i.useCallback(()=>{if(!v.current)return[];let t=[];return g.current.forEach((e,n)=>{e.closest('[role="menu"]')===v.current&&!e.hasAttribute("data-disabled")&&t.push({id:n,element:e})}),t.sort((e,n)=>B(e.element,n.element)),t},[]),ue=i.useCallback(t=>{let e=H.current.get(t)?.current;if(!e){let r=g.current.get(t);if(!r)return[];let s=r.closest('[data-scope="menu"][data-part="submenu"]')||r.parentElement;if(!s)return[];if(e=s.querySelector('[role="menu"]'),!e)return[]}let n=[];return g.current.forEach((r,s)=>{r.closest('[role="menu"]')===e&&!r.hasAttribute("data-disabled")&&n.push({id:s,element:r})}),n.sort((r,s)=>B(r.element,s.element)),n},[]),J=i.useCallback(t=>{if(!t)return;let e=L(t)+1;t.setAttribute("aria-level",String(e));let n=t.closest('[role="menu"]');if(n){let r=[];g.current.forEach(a=>{a.closest('[role="menu"]')===n&&r.push(a)}),r.sort(B);let s=String(r.length);r.forEach((a,c)=>{a.setAttribute("aria-posinset",String(c+1)),a.setAttribute("aria-setsize",s)})}},[L]),le=i.useRef(J);le.current=J;let de=i.useCallback(t=>(W.current.has(t)||W.current.set(t,e=>{A(e)?(g.current.set(t,A(e)),le.current(A(e))):(g.current.delete(t),W.current.delete(t))}),W.current.get(t)),[]),Q=t=>{t||h.current.forEach(e=>{e.close()}),u.setOpen?.(t)},U=i.useCallback(t=>d?Array.isArray(d)?d.includes(t):d===t:!1,[d]),C=i.useCallback(()=>{let t=[];return g.current.forEach((e,n)=>{if(e.hasAttribute("data-disabled"))return;let s=e,a=!0;for(;s&&s!==v.current;){let c=s.closest('[data-part="list"]');if(!c||c===v.current)break;let b=c.previousElementSibling;if(b&&b.getAttribute("aria-expanded")==="false"){a=!1;break}s=c.parentElement}a&&t.push({id:n,element:e})}),t.sort((e,n)=>B(e.element,n.element)),t},[]),D=i.useCallback(()=>{let t=T();if(!t)return Z();let e=g.current.get(t);return e?ie(e):Z()},[d,ie,Z]),E=t=>{se.current=t},p=t=>{E(!0),o.composite?f(e=>{let n=Array.isArray(e)?e:[];if(n.length===0)return[t];let r=g.current.get(t);if(!r)return[t];let s=L(r),a=n.findIndex(b=>{let l=g.current.get(b);return l&&L(l)===s});return a!==-1?[...n.slice(0,a),t]:[...n.filter(b=>{let l=g.current.get(b);return l&&L(l)<s}),t]}):f(t)},T=()=>o.composite&&Array.isArray(d)?d[d.length-1]||"":typeof d=="string"?d:"",Oe=t=>{let e=o.composite?D():C();if(e.length===0)return;let n=T(),r=n?e.findIndex(a=>a.id===n)+1:0,s=t.toLowerCase();for(let a=r;a<e.length;a++){let c=e[a];if((c.element.textContent?.trim().toLowerCase()||"").startsWith(s)){o.composite?p(c.id):f(c.id);return}}for(let a=0;a<r;a++){let c=e[a];if((c.element.textContent?.trim().toLowerCase()||"").startsWith(s)){o.composite?p(c.id):f(c.id);return}}},fe=()=>{if(!o.composite||!Array.isArray(d))return;let t=d[d.length-1];if(!t)return;let e=h.current.get(t);if(e){let n=g.current.get(t);n&&n.getAttribute("aria-expanded")==="true"&&e.close()}},G=()=>{o.composite?(h.current.forEach(t=>{t.close()}),f([])):f("")},X=t=>{if(!o.composite||!Array.isArray(d))return;let e=g.current.get(t);if(!e)return;let n=L(e);h.current.forEach((r,s)=>{let a=g.current.get(s);if(!a)return;L(a)>=n&&a.getAttribute("aria-expanded")==="true"&&r.close()}),f(r=>(Array.isArray(r)?r:[]).filter(a=>{let c=g.current.get(a);return c&&L(c)<n}))},ke=t=>{t.preventDefault();let e=o.composite?D():C();if(e.length===0)return;let n=T();if(!n){o.composite?p(e[0].id):f(e[0].id);return}let r=e.findIndex(a=>a.id===n),s=r<e.length-1?r+1:0;o.composite?(fe(),p(e[s].id)):f(e[s].id)},Pe=t=>{if(t.preventDefault(),t.altKey){pe();return}let e=o.composite?D():C();if(e.length===0)return;let n=T();if(!n){o.composite?p(e[e.length-1].id):f(e[e.length-1].id);return}let r=e.findIndex(a=>a.id===n),s=r>0?r-1:e.length-1;o.composite?(fe(),p(e[s].id)):f(e[s].id)},we=t=>{if(!o.composite&&!o.navigationmenu)return;t.preventDefault();let e=T(),r=(e?g.current.get(e):null)?.getAttribute("aria-expanded")??null;if(e&&r!==null){if(r==="false"){let c=h.current.get(e);c&&c.open()}let s=0,a=()=>{let c=ue(e);if(c.length>0){o.composite?f(b=>[...Array.isArray(b)?b:[],c[0].id]):f(c[0].id);return}s++<5&&requestAnimationFrame(a)};requestAnimationFrame(a);return}o.navigationmenu&&o.navigationmenuMenuId&&o.navigationmenu.focusSibling(o.navigationmenuMenuId,"next")},He=t=>{if(!(!o.composite&&!o.navigationmenu)){if(t.preventDefault(),o.composite&&Array.isArray(d)&&d.length>1){let e=d[d.length-2];h.current.get(e)?.close(),f(n=>(Array.isArray(n)?n:[]).slice(0,-1));return}if(o.navigationmenu&&o.navigationmenuMenuId&&!o.composite){let e=T(),r=(e?g.current.get(e):null)?.closest('[role="menu"]');if(!!r&&r!==v.current){let a;H.current.forEach((c,b)=>{c.current===r&&(a=b)}),a&&(h.current.get(a)?.close(),f(a));return}}o.navigationmenu&&o.navigationmenuMenuId&&o.navigationmenu.focusSibling(o.navigationmenuMenuId,"previous")}},xe=t=>{t.preventDefault();let e=o.composite?D():C();e.length!==0&&(o.composite?p(e[0].id):f(e[0].id))},Ce=t=>{t.preventDefault();let e=o.composite?D():C();e.length!==0&&(o.composite?p(e[e.length-1].id):f(e[e.length-1].id))},De=t=>{let e=T();if(!e)return;let n=h.current.get(e);if(n){n.toggle(),t.preventDefault();return}if(v.current){if(!g.current.get(e))return;let a=ce.current.get(e);(!a||a(t))&&$(t,!1,!!u.state.open)}t.preventDefault()},Se=()=>{G(),requestAnimationFrame(()=>{u.state.anchorElement&&V(u.state.anchorElement)})},Fe=()=>{E(!1),y.open&&Q(!1)},me=t=>{let e=t.metaKey||t.ctrlKey;switch(t.key){case"ArrowDown":ke(t);break;case"ArrowUp":Pe(t);break;case"ArrowRight":(o.composite||o.navigationmenu)&&we(t);break;case"ArrowLeft":(o.composite||o.navigationmenu)&&He(t);break;case"Home":xe(t);break;case"End":Ce(t);break;case"Enter":case" ":De(t);break;case"Escape":Se();break;case"Tab":Fe();break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!e&&st(t.key)&&Oe(t.key);break}},ge=()=>{if(re(!0),T()===""&&ae.current){let e=o.composite?D():C(),n=[],r=e;for(;r.length>0;){let s=r.find(c=>h.current.get(c.id)?.isOpen?.());if(!s)break;n.push(s.id);let a=ue(s.id);if(a.length===0)break;r=a}if(n.length>0&&r.length>0){let s=r[0].id;o.composite?f([...n,s]):f(s),E(!1);return}if(se.current){E(!1);return}if(e.length>0)if(o.navigationmenu){let s=o.navigationmenu.consumePendingFocus?.()??null;if(s){let a=s==="last"?e[e.length-1]:e[0];f(a.id)}}else o.composite?p(e[0].id):f(e[0].id)}E(!1)},be=()=>{re(!1),o.composite?u.state.open&&G():f("")},pe=()=>{h.current.forEach(t=>{t.close()}),u.setOpen?.(!1),o.composite?f([]):f(""),requestAnimationFrame(()=>{u.state.anchorElement&&V(u.state.anchorElement)})},ve=(t=!0)=>{ae.current=t,requestAnimationFrame(()=>{requestAnimationFrame(()=>{A(v.current)&&V(A(v.current))})})},he=()=>{R(x,"trigger"),R(k,"trigger"),E(!0),u.setOpen?.(!u?.state.open)},Ke=()=>{if(!o.openOnHover)return;let t=o.openDelay??100;_("trigger","open",t,()=>{u.state.open||(E(!0),u.setOpen?.(!0))})},Ne=()=>{if(!o.openOnHover)return;let t=Math.max(o.closeDelay??0,150);_("trigger","close",t,()=>{u.state.open&&u.setOpen?.(!1)});let e=u.state.positionerElement??u.state.popupElement??null;if(e){let n=()=>{R(k,"trigger"),e.removeEventListener("mouseenter",n),e.removeEventListener("pointerenter",n),r!==null&&window.clearTimeout(r)};e.addEventListener("mouseenter",n),e.addEventListener("pointerenter",n);let r=window.setTimeout(()=>{e.removeEventListener("mouseenter",n),e.removeEventListener("pointerenter",n)},t+50)}},$=(t,e=!1,n=!1)=>{if(t.preventDefault(),o.composite&&!n){let r=Array.isArray(d)&&d.length>0?d[0]:null;G(),r&&f([r])}else n&&pe();v.current&&e&&!n&&(v.current.blur(),Q(!1))},_e=i.useCallback(t=>{let{value:e,disabled:n,type:r="item",checked:s,inPortal:a,closeOnSelect:c=!0,onSelect:b}=t,l=q(e),S=U(l),Y=r==="checkbox"?"menuitemcheckbox":r==="radio"?"menuitemradio":"menuitem",m=M=>{if(n)return!1;let F=!1;return b?.({originalEvent:M,value:e,preventDefault:()=>{F=!0},get defaultPrevented(){return F}}),!F&&c};return ce.current.set(l,m),{ref:de(l),id:l,role:Y,tabIndex:-1,"aria-disabled":n||void 0,"aria-checked":r!=="item"?s:void 0,"data-scope":"menu","data-part":"item","data-value":e,...S&&{"data-focused":""},...r!=="item"&&(s?{"data-checked":""}:{"data-unchecked":""}),...n&&{"data-disabled":""},onMouseDown:M=>{if(n)return;if(!m(M)){E(!0),p(l);return}if(o.composite&&!a&&M.detail>0){$(M,!1,a);return}E(!0);let j=g.current.get(l);M.detail===0&&j&&j.click(),a?(o.composite&&M.detail>0||!o.composite)&&$(M,!1,a):setTimeout(()=>{$(M,!0,a)},0)},onMouseMove:()=>{!n&&y.focused&&p(l)},onMouseEnter:o.composite?()=>{!n&&y.focused&&(X(l),p(l))}:void 0}},[d,o.composite,y.focused,y.open,U,L,q]),qe=i.useCallback(t=>{let{value:e,disabled:n,sub:r}=t,s=r?.state.open,a=r?.openDelay??100,c=r?.closeDelay??0,b=r?.openOnHover??!0,l=r?{open:r.open,close:r.close,toggle:r.toggle,isOpen:()=>!!r.state.open}:void 0,S=r?.listRef,Y=r?.subtriggerProps?.ref,m=q(e),M=U(m),F=de(m),j=P=>{F(P),Y?.(P),P?(l&&h.current.set(m,l),S&&H.current.set(m,S)):(h.current.delete(m),H.current.delete(m))};return l&&h.current.set(m,l),S&&H.current.set(m,S),{ref:j,id:m,role:"menuitem",tabIndex:-1,"aria-expanded":s,"aria-disabled":n||void 0,"data-scope":"menu","data-part":"subtrigger","data-value":e,...M&&{"data-focused":""},...n&&{"data-disabled":""},...s&&{"data-open":""},onMouseDown:P=>{P.preventDefault(),R(x,m),R(k,m),!n&&P.detail>0&&(p(m),l?.toggle()),!n&&A(v.current)&&V(A(v.current))},onMouseMove:()=>{E(!0),!n&&y.focused&&p(m)},onMouseEnter:()=>{b&&o.composite&&!n&&y.focused&&(s?p(m):(X(m),p(m),l&&_(m,"open",a,()=>{r?.state.open||l.open()})))},onMouseLeave:P=>{if(b&&(R(x,m),o.composite&&s&&l)){let ee=H.current.get(m)?.current??null,nt=ee?.closest('[data-part="popup"]')??null,I=ee?.closest('[data-part="positioner"]')??null??nt??ee,te=A(P.relatedTarget);if(te&&I&&(I===te||I.contains(te)))return;let Ee=Math.max(c,150);if(_(m,"close",Ee,()=>{l.close()}),I){let K=()=>{R(k,m),I.removeEventListener("mouseenter",K),I.removeEventListener("pointerenter",K),Me!==null&&window.clearTimeout(Me)};I.addEventListener("mouseenter",K),I.addEventListener("pointerenter",K);let Me=window.setTimeout(()=>{I.removeEventListener("mouseenter",K),I.removeEventListener("pointerenter",K)},Ee+50)}}}}},[d,o.composite,y.focused,y.open,U,q]),Ue=i.useCallback(t=>{let{type:e,checked:n,submenuOpen:r,match:s}=t,a=e==="checkbox"?"checkbox":e==="radio"?"radio":r!==void 0?"submenu":null,c=e==="checkbox"||e==="radio"?n??!1:r!==void 0?r:!1;return{matchVisible:s?c===(s==="open"||s==="checked"):!0,[a==="submenu"?c?"data-open":"data-closed":c?"data-checked":"data-unchecked"]:"","data-scope":"menu","data-part":"indicator"}},[]),$e={"data-scope":"menu","data-part":"indicator"},je={"data-scope":"menu","data-part":"indicator"},Be={"data-scope":"menu","data-part":"indicator"},We=i.useCallback((t={})=>{let{value:e,sub:n}=t,r=!!n,s=n?.listProps?.ref,a=z(e),c=T()||void 0;return{...!r&&{ref:Ae},...r&&s&&{ref:s},id:a,role:"menu","aria-activedescendant":r?void 0:c,tabIndex:r?-1:o.tabIndex??0,"data-scope":"menu","data-part":"list",...r&&o.composite&&{"data-composite":""},onKeyDown:me,...r?{}:{onFocus:ge,onBlur:be}}},[d,o.tabIndex,z]),Ge={...u.triggerProps,"aria-haspopup":"true","aria-expanded":!!u.state.open,"data-scope":"menu","data-part":"trigger",...u.state.open&&{"data-open":""},...u.state.open&&{"data-expanded":""},onClick:he,...o.openOnHover&&{onPointerEnter:Ke,onPointerLeave:Ne}},Ve={...u.arrowProps,...w&&{"data-instant":w}},ze=()=>{o.openOnHover&&R(k,"trigger")},Ze=()=>{if(!o.openOnHover)return;let t=Math.max(o.closeDelay??0,150);_("trigger","close",t,()=>{u.state.open&&u.setOpen?.(!1)})},Je={...u.popupProps,...w&&{"data-instant":""},...w&&{"data-instant-type":w},...o.openOnHover&&{onPointerEnter:ze,onPointerLeave:Ze}},Qe={...u.positionerProps},Xe={role:"none","data-scope":"menu","data-part":"label"},Ye={role:"separator","data-scope":"menu","data-part":"separator"},et={role:"group","data-scope":"menu","data-part":"radiogroup"},tt={id:O,"data-scope":"menu","data-part":"root"};return i.useEffect(()=>{u.state.rendered&&ve()},[u.state.rendered]),i.useEffect(()=>{u.state.open||h.current.forEach(t=>{t.close()})},[u.state.open]),i.useEffect(()=>!o.navigationmenu||!o.navigationmenuMenuId?void 0:o.navigationmenu.registerInstantSignal(o.navigationmenuMenuId,()=>{oe("switch")}),[o.navigationmenu,o.navigationmenuMenuId]),i.useEffect(()=>{if(w===void 0)return;let t=window.setTimeout(()=>oe(void 0),50);return()=>window.clearTimeout(t)},[w,u.state.open]),{state:y,popover:u,rootProps:tt,triggerProps:Ge,arrowProps:Ve,popupProps:Je,positionerProps:Qe,labelProps:Xe,separatorProps:Ye,radioGroupProps:et,getItemProps:_e,getSubTriggerProps:qe,getListProps:We,getIndicatorProps:Ue,checkboxItemIndicatorProps:$e,radioItemIndicatorProps:je,submenuIndicatorProps:Be,updateItemAria:J,isFocused:U,getItemId:q,getListId:z,changeVisibleState:Q,markMouseInteraction:E,changeFocusedOptionId:p,hideSubmenusAfterLevel:X,hideAllSubmenus:G,onListKeyDown:me,onListFocus:ge,onListBlur:be,onOverlayEnter:ve,onTriggerClick:he,onItemClick:$}}});export{Re as defaultProps,ft as useMenu};
@@ -0,0 +1,2 @@
1
+ export * from './useMenuRadioItem';
2
+ export * from './useMenuRadioItem.props';
@@ -0,0 +1 @@
1
+ import{withHeadless as h}from"@primereact/core/headless";import{useRadioButton as f}from"@primereact/headless/radiobutton";import{equals as c}from"@primeuix/utils";import*as o from"react";var l={checked:void 0,defaultChecked:void 0,inputId:void 0,name:void 0,value:void 0,disabled:void 0,closeOnSelect:!1,group:null,onSelect:void 0,onCheckedChange:void 0};var I=h({name:"useMenuRadioItem",defaultProps:l,setup({props:e}){let t=e.group??null,i=t?{...e,checked:c(t.value,e.value),defaultChecked:c(t.defaultValue,e.value),name:e.name??t.name,disabled:e.disabled,value:e.value,onCheckedChange:n=>{t.updateChange({...n,value:e.value}),e.onCheckedChange?.({...n,value:e.value})}}:{...e,value:e.value,onCheckedChange:n=>e.onCheckedChange?.({...n,value:e.value})},a=f(i),d=!!a.state.checked,u=!!e.disabled,m=e.closeOnSelect??!1,s=o.useCallback(n=>{u||(d||a.onChange({target:{checked:!0}}),e.onSelect?.(n))},[a,d,u,e.onSelect]);return{...a,state:{...a.state,checked:d},closeOnSelect:m,onSelect:s}}});export{l as defaultProps,I as useMenuRadioItem};
@@ -0,0 +1,106 @@
1
+ import type { UseMenuItemSelectEvent } from '@primereact/types/headless/menu';
2
+ import * as React from 'react';
3
+ export declare const useMenuRadioItem: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/menu").UseMenuRadioItemProps, unknown, {
4
+ state: {
5
+ checked: boolean;
6
+ };
7
+ closeOnSelect: boolean;
8
+ onSelect: (event: UseMenuItemSelectEvent) => void;
9
+ ref: React.Ref<unknown>;
10
+ elementRef: React.RefObject<HTMLElement | undefined>;
11
+ id?: string | undefined;
12
+ name?: string | undefined;
13
+ type?: import("@primereact/types/core").Types | undefined;
14
+ scope?: string | undefined;
15
+ part?: string | undefined;
16
+ inProps?: import("@primereact/types").SafeRecord<import("@primereact/headless/radiobutton").UseRadioButtonProps> | undefined;
17
+ $attrSelector?: string | undefined;
18
+ $primereact: import("@primereact/types/core").Contexts;
19
+ props: import("@primereact/types").SafeRecord<import("@primereact/headless/radiobutton").UseRadioButtonProps>;
20
+ attrs: Omit<import("@primereact/types").SafeRecord<import("@primereact/headless/radiobutton").UseRadioButtonProps>, keyof import("@primereact/headless/radiobutton").UseRadioButtonProps> & Record<PropertyKey, unknown>;
21
+ $computedSetup: {
22
+ state: {
23
+ checked: boolean | undefined;
24
+ };
25
+ rootProps: {
26
+ 'data-invalid'?: string | undefined;
27
+ 'data-disabled'?: string | undefined;
28
+ 'data-scope': string;
29
+ 'data-part': string;
30
+ };
31
+ inputProps: {
32
+ onFocus: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
33
+ onBlur: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
34
+ onChange: ((event: React.ChangeEvent<HTMLInputElement>) => void) | undefined;
35
+ 'data-invalid'?: string | undefined;
36
+ 'data-disabled'?: string | undefined;
37
+ 'data-scope': string;
38
+ 'data-part': string;
39
+ id: string | undefined;
40
+ type: "radio";
41
+ value: unknown;
42
+ name: string | undefined;
43
+ checked: boolean | undefined;
44
+ tabIndex: number | undefined;
45
+ disabled: boolean | undefined;
46
+ readOnly: boolean | undefined;
47
+ required: boolean | undefined;
48
+ 'aria-labelledby': string | undefined;
49
+ 'aria-label': string | undefined;
50
+ 'aria-invalid': true | undefined;
51
+ };
52
+ boxProps: {
53
+ 'data-invalid'?: string | undefined;
54
+ 'data-disabled'?: string | undefined;
55
+ 'data-scope': string;
56
+ 'data-part': string;
57
+ };
58
+ indicatorProps: {
59
+ 'data-invalid'?: string | undefined;
60
+ 'data-disabled'?: string | undefined;
61
+ 'data-scope': string;
62
+ 'data-part': string;
63
+ };
64
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
65
+ };
66
+ rootProps: {
67
+ 'data-invalid'?: string | undefined;
68
+ 'data-disabled'?: string | undefined;
69
+ 'data-scope': string;
70
+ 'data-part': string;
71
+ };
72
+ inputProps: {
73
+ onFocus: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
74
+ onBlur: ((event: React.FocusEvent<HTMLInputElement>) => void) | undefined;
75
+ onChange: ((event: React.ChangeEvent<HTMLInputElement>) => void) | undefined;
76
+ 'data-invalid'?: string | undefined;
77
+ 'data-disabled'?: string | undefined;
78
+ 'data-scope': string;
79
+ 'data-part': string;
80
+ id: string | undefined;
81
+ type: "radio";
82
+ value: unknown;
83
+ name: string | undefined;
84
+ checked: boolean | undefined;
85
+ tabIndex: number | undefined;
86
+ disabled: boolean | undefined;
87
+ readOnly: boolean | undefined;
88
+ required: boolean | undefined;
89
+ 'aria-labelledby': string | undefined;
90
+ 'aria-label': string | undefined;
91
+ 'aria-invalid': true | undefined;
92
+ };
93
+ boxProps: {
94
+ 'data-invalid'?: string | undefined;
95
+ 'data-disabled'?: string | undefined;
96
+ 'data-scope': string;
97
+ 'data-part': string;
98
+ };
99
+ indicatorProps: {
100
+ 'data-invalid'?: string | undefined;
101
+ 'data-disabled'?: string | undefined;
102
+ 'data-scope': string;
103
+ 'data-part': string;
104
+ };
105
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
106
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { UseMenuRadioItemProps } from '@primereact/types/headless/menu';
2
+ export declare const defaultProps: UseMenuRadioItemProps;
@@ -0,0 +1,2 @@
1
+ export * from './useMenuSubmenu';
2
+ export * from './useMenuSubmenu.props';