@primereact/headless 11.0.0-alpha.9 → 11.0.0-rc.1

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 (592) 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 -1
  5. package/accordion/index.mjs.map +1 -1
  6. package/accordion/useAccordion.d.ts +7 -6
  7. package/accordion/useAccordion.props.d.ts +2 -2
  8. package/accordion/useAccordionPanel.d.ts +46 -0
  9. package/accordion/useAccordionPanel.props.d.ts +2 -0
  10. package/animateonscroll/index.d.ts +1 -0
  11. package/animateonscroll/index.mjs +1 -1
  12. package/animateonscroll/index.mjs.map +1 -1
  13. package/animateonscroll/useAnimateOnScroll.d.ts +6 -1
  14. package/animateonscroll/useAnimateOnScroll.props.d.ts +2 -2
  15. package/autocomplete/index.d.ts +3 -0
  16. package/autocomplete/index.mjs +2 -0
  17. package/autocomplete/index.mjs.map +1 -0
  18. package/autocomplete/useAutoComplete.d.ts +198 -0
  19. package/autocomplete/useAutoComplete.props.d.ts +2 -0
  20. package/avatar/index.d.ts +1 -0
  21. package/avatar/index.mjs +1 -1
  22. package/avatar/index.mjs.map +1 -1
  23. package/avatar/useAvatar.d.ts +5 -1
  24. package/avatar/useAvatar.props.d.ts +2 -2
  25. package/avatargroup/index.d.ts +3 -0
  26. package/avatargroup/index.mjs +2 -0
  27. package/avatargroup/index.mjs.map +1 -0
  28. package/avatargroup/useAvatarGroup.d.ts +6 -0
  29. package/avatargroup/useAvatarGroup.props.d.ts +2 -0
  30. package/badge/index.d.ts +1 -0
  31. package/badge/index.mjs +1 -1
  32. package/badge/index.mjs.map +1 -1
  33. package/badge/useBadge.d.ts +7 -1
  34. package/badge/useBadge.props.d.ts +2 -2
  35. package/breadcrumb/index.d.ts +1 -0
  36. package/breadcrumb/index.mjs +1 -1
  37. package/breadcrumb/index.mjs.map +1 -1
  38. package/breadcrumb/useBreadcrumb.d.ts +18 -2
  39. package/breadcrumb/useBreadcrumb.props.d.ts +2 -2
  40. package/button/index.d.ts +1 -0
  41. package/button/index.mjs +1 -1
  42. package/button/index.mjs.map +1 -1
  43. package/button/useButton.d.ts +6 -1
  44. package/button/useButton.props.d.ts +2 -2
  45. package/card/index.d.ts +1 -0
  46. package/card/index.mjs +1 -1
  47. package/card/index.mjs.map +1 -1
  48. package/card/useCard.d.ts +6 -1
  49. package/card/useCard.props.d.ts +2 -2
  50. package/carousel/index.d.ts +1 -0
  51. package/carousel/index.mjs +1 -1
  52. package/carousel/index.mjs.map +1 -1
  53. package/carousel/useCarousel.d.ts +101 -5
  54. package/carousel/useCarousel.props.d.ts +2 -2
  55. package/checkbox/index.d.ts +1 -0
  56. package/checkbox/index.mjs +1 -1
  57. package/checkbox/index.mjs.map +1 -1
  58. package/checkbox/useCheckbox.d.ts +44 -3
  59. package/checkbox/useCheckbox.props.d.ts +2 -2
  60. package/checkboxgroup/index.d.ts +3 -0
  61. package/checkboxgroup/index.mjs +2 -0
  62. package/checkboxgroup/index.mjs.map +1 -0
  63. package/checkboxgroup/useCheckboxGroup.d.ts +11 -0
  64. package/checkboxgroup/useCheckboxGroup.props.d.ts +2 -0
  65. package/chip/index.d.ts +1 -0
  66. package/chip/index.mjs +1 -1
  67. package/chip/index.mjs.map +1 -1
  68. package/chip/useChip.d.ts +9 -3
  69. package/chip/useChip.props.d.ts +2 -2
  70. package/collapsible/index.d.ts +3 -0
  71. package/collapsible/index.mjs +2 -0
  72. package/collapsible/index.mjs.map +1 -0
  73. package/collapsible/useCollapsible.d.ts +33 -0
  74. package/collapsible/useCollapsible.props.d.ts +2 -0
  75. package/compare/index.d.ts +3 -0
  76. package/compare/index.mjs +2 -0
  77. package/compare/index.mjs.map +1 -0
  78. package/compare/useCompare.d.ts +2 -0
  79. package/compare/useCompare.props.d.ts +2 -0
  80. package/contextmenu/index.d.ts +1 -0
  81. package/contextmenu/index.mjs +1 -1
  82. package/contextmenu/index.mjs.map +1 -1
  83. package/contextmenu/submenu/index.d.ts +2 -0
  84. package/contextmenu/submenu/index.mjs +2 -0
  85. package/contextmenu/submenu/index.mjs.map +1 -0
  86. package/contextmenu/submenu/useContextMenuSubmenu.d.ts +121 -0
  87. package/contextmenu/submenu/useContextMenuSubmenu.props.d.ts +2 -0
  88. package/contextmenu/useContextMenu.d.ts +413 -1
  89. package/contextmenu/useContextMenu.props.d.ts +2 -2
  90. package/datatable/features/index.d.ts +28 -0
  91. package/datatable/features/index.mjs +11 -0
  92. package/datatable/features/index.mjs.map +1 -0
  93. package/datatable/features/useDataTableColumnReorder.d.ts +52 -0
  94. package/datatable/features/useDataTableColumnResize.d.ts +20 -0
  95. package/datatable/features/useDataTableEditing.d.ts +69 -0
  96. package/datatable/features/useDataTableExpansion.d.ts +32 -0
  97. package/datatable/features/useDataTableExport.d.ts +43 -0
  98. package/datatable/features/useDataTableFilter.d.ts +95 -0
  99. package/datatable/features/useDataTableGrouping.d.ts +11 -0
  100. package/datatable/features/useDataTableKeyboard.d.ts +23 -0
  101. package/datatable/features/useDataTablePagination.d.ts +32 -0
  102. package/datatable/features/useDataTableRowReorder.d.ts +42 -0
  103. package/datatable/features/useDataTableSelection.d.ts +28 -0
  104. package/datatable/features/useDataTableSort.d.ts +51 -0
  105. package/datatable/features/useDataTableTree.d.ts +31 -0
  106. package/datatable/index.d.ts +7 -0
  107. package/datatable/index.mjs +11 -0
  108. package/datatable/index.mjs.map +1 -0
  109. package/datatable/useDataTable.d.ts +237 -0
  110. package/datatable/useDataTable.props.d.ts +2 -0
  111. package/datatable/useDataTableRow.d.ts +30 -0
  112. package/datatable/useDataTableRow.props.d.ts +2 -0
  113. package/datatable/utils/compareValues.d.ts +20 -0
  114. package/datatable/utils/index.d.ts +1 -0
  115. package/datatable/utils/index.mjs +2 -0
  116. package/datatable/utils/index.mjs.map +1 -0
  117. package/dataview/index.d.ts +1 -0
  118. package/dataview/index.mjs +1 -1
  119. package/dataview/index.mjs.map +1 -1
  120. package/dataview/useDataView.d.ts +25 -1
  121. package/dataview/useDataView.props.d.ts +2 -2
  122. package/datepicker/index.d.ts +1 -0
  123. package/datepicker/index.mjs +1 -1
  124. package/datepicker/index.mjs.map +1 -1
  125. package/datepicker/useDatePicker.d.ts +2 -114
  126. package/datepicker/useDatePicker.props.d.ts +2 -2
  127. package/dialog/index.d.ts +1 -0
  128. package/dialog/index.mjs +1 -1
  129. package/dialog/index.mjs.map +1 -1
  130. package/dialog/useDialog.d.ts +274 -24
  131. package/dialog/useDialog.props.d.ts +2 -2
  132. package/divider/index.d.ts +1 -0
  133. package/divider/index.mjs +1 -1
  134. package/divider/index.mjs.map +1 -1
  135. package/divider/useDivider.d.ts +14 -1
  136. package/divider/useDivider.props.d.ts +2 -2
  137. package/dnd/index.d.ts +11 -0
  138. package/dnd/index.mjs +2 -0
  139. package/dnd/index.mjs.map +1 -0
  140. package/dnd/useDnd.d.ts +45 -0
  141. package/dnd/useDnd.props.d.ts +2 -0
  142. package/dnd/useDraggable.d.ts +14 -0
  143. package/dnd/useDraggable.props.d.ts +2 -0
  144. package/dnd/useDroppable.d.ts +11 -0
  145. package/dnd/useDroppable.props.d.ts +2 -0
  146. package/dnd/useSortable.d.ts +11 -0
  147. package/dnd/useSortable.props.d.ts +2 -0
  148. package/dnd/useSortableContainer.d.ts +24 -0
  149. package/dnd/useSortableContainer.props.d.ts +2 -0
  150. package/drawer/index.d.ts +1 -0
  151. package/drawer/index.mjs +1 -1
  152. package/drawer/index.mjs.map +1 -1
  153. package/drawer/useDrawer.d.ts +78 -16
  154. package/drawer/useDrawer.props.d.ts +2 -2
  155. package/fieldset/index.d.ts +1 -0
  156. package/fieldset/index.mjs +1 -1
  157. package/fieldset/index.mjs.map +1 -1
  158. package/fieldset/useFieldset.d.ts +80 -1
  159. package/fieldset/useFieldset.props.d.ts +2 -2
  160. package/fileupload/index.d.ts +1 -0
  161. package/fileupload/index.mjs +1 -1
  162. package/fileupload/index.mjs.map +1 -1
  163. package/fileupload/useFileUpload.d.ts +73 -4
  164. package/fileupload/useFileUpload.props.d.ts +2 -2
  165. package/floatlabel/index.d.ts +3 -0
  166. package/floatlabel/index.mjs +2 -0
  167. package/floatlabel/index.mjs.map +1 -0
  168. package/floatlabel/useFloatLabel.d.ts +6 -0
  169. package/floatlabel/useFloatLabel.props.d.ts +2 -0
  170. package/fluid/index.d.ts +1 -0
  171. package/fluid/index.mjs +1 -1
  172. package/fluid/index.mjs.map +1 -1
  173. package/fluid/useFluid.d.ts +6 -1
  174. package/fluid/useFluid.props.d.ts +2 -2
  175. package/focustrap/index.d.ts +1 -0
  176. package/focustrap/index.mjs +1 -1
  177. package/focustrap/index.mjs.map +1 -1
  178. package/focustrap/useFocusTrap.d.ts +16 -3
  179. package/focustrap/useFocusTrap.props.d.ts +2 -2
  180. package/gallery/index.d.ts +1 -0
  181. package/gallery/index.mjs +1 -1
  182. package/gallery/index.mjs.map +1 -1
  183. package/gallery/item/index.mjs +1 -1
  184. package/gallery/item/index.mjs.map +1 -1
  185. package/gallery/item/useGalleryItem.d.ts +17 -7
  186. package/gallery/item/useGalleryItem.props.d.ts +2 -2
  187. package/gallery/useGallery.d.ts +147 -6
  188. package/gallery/useGallery.props.d.ts +2 -2
  189. package/iconfield/index.d.ts +1 -0
  190. package/iconfield/index.mjs +1 -1
  191. package/iconfield/index.mjs.map +1 -1
  192. package/iconfield/useIconField.d.ts +6 -1
  193. package/iconfield/useIconField.props.d.ts +2 -2
  194. package/iftalabel/index.d.ts +3 -0
  195. package/iftalabel/index.mjs +2 -0
  196. package/iftalabel/index.mjs.map +1 -0
  197. package/iftalabel/useIftaLabel.d.ts +6 -0
  198. package/iftalabel/useIftaLabel.props.d.ts +2 -0
  199. package/inplace/index.d.ts +1 -0
  200. package/inplace/index.mjs +1 -1
  201. package/inplace/index.mjs.map +1 -1
  202. package/inplace/useInplace.d.ts +21 -2
  203. package/inplace/useInplace.props.d.ts +2 -2
  204. package/{colorpicker → inputcolor}/colorManager.d.ts +3 -2
  205. package/inputcolor/index.d.ts +4 -0
  206. package/inputcolor/index.mjs +2 -0
  207. package/inputcolor/index.mjs.map +1 -0
  208. package/inputcolor/useInputColor.d.ts +119 -0
  209. package/inputcolor/useInputColor.props.d.ts +2 -0
  210. package/inputgroup/index.d.ts +1 -0
  211. package/inputgroup/index.mjs +1 -1
  212. package/inputgroup/index.mjs.map +1 -1
  213. package/inputgroup/useInputGroup.d.ts +6 -1
  214. package/inputgroup/useInputGroup.props.d.ts +2 -2
  215. package/inputnumber/index.d.ts +1 -0
  216. package/inputnumber/index.mjs +1 -1
  217. package/inputnumber/index.mjs.map +1 -1
  218. package/inputnumber/useInputNumber.d.ts +55 -17
  219. package/inputnumber/useInputNumber.props.d.ts +2 -2
  220. package/inputotp/index.d.ts +1 -0
  221. package/inputotp/index.mjs +1 -1
  222. package/inputotp/index.mjs.map +1 -1
  223. package/inputotp/useInputOtp.d.ts +25 -6
  224. package/inputotp/useInputOtp.props.d.ts +2 -2
  225. package/inputpassword/index.d.ts +3 -0
  226. package/inputpassword/index.mjs +2 -0
  227. package/inputpassword/index.mjs.map +1 -0
  228. package/inputpassword/useInputPassword.d.ts +15 -0
  229. package/inputpassword/useInputPassword.props.d.ts +2 -0
  230. package/inputtags/index.d.ts +1 -0
  231. package/inputtags/index.mjs +1 -1
  232. package/inputtags/index.mjs.map +1 -1
  233. package/inputtags/useInputTags.d.ts +42 -12
  234. package/inputtags/useInputTags.props.d.ts +2 -2
  235. package/inputtext/index.d.ts +1 -0
  236. package/inputtext/index.mjs +1 -1
  237. package/inputtext/index.mjs.map +1 -1
  238. package/inputtext/useInputText.d.ts +8 -1
  239. package/inputtext/useInputText.props.d.ts +2 -2
  240. package/knob/index.d.ts +1 -0
  241. package/knob/index.mjs +1 -1
  242. package/knob/index.mjs.map +1 -1
  243. package/knob/useKnob.d.ts +51 -10
  244. package/knob/useKnob.props.d.ts +2 -2
  245. package/label/index.d.ts +1 -0
  246. package/label/index.mjs +1 -1
  247. package/label/index.mjs.map +1 -1
  248. package/label/useLabel.d.ts +6 -1
  249. package/label/useLabel.props.d.ts +2 -2
  250. package/listbox/index.d.ts +3 -0
  251. package/listbox/index.mjs +1 -1
  252. package/listbox/index.mjs.map +1 -1
  253. package/listbox/useListbox.d.ts +56 -18
  254. package/listbox/useListbox.props.d.ts +2 -2
  255. package/listbox/useListboxOption.d.ts +21 -0
  256. package/listbox/useListboxOption.props.d.ts +2 -0
  257. package/menu/checkboxitem/index.d.ts +2 -0
  258. package/menu/checkboxitem/index.mjs +2 -0
  259. package/menu/checkboxitem/index.mjs.map +1 -0
  260. package/menu/checkboxitem/useMenuCheckboxItem.d.ts +112 -0
  261. package/menu/checkboxitem/useMenuCheckboxItem.props.d.ts +2 -0
  262. package/menu/index.d.ts +1 -0
  263. package/menu/index.mjs +1 -1
  264. package/menu/index.mjs.map +1 -1
  265. package/menu/radioitem/index.d.ts +2 -0
  266. package/menu/radioitem/index.mjs +2 -0
  267. package/menu/radioitem/index.mjs.map +1 -0
  268. package/menu/radioitem/useMenuRadioItem.d.ts +106 -0
  269. package/menu/radioitem/useMenuRadioItem.props.d.ts +2 -0
  270. package/menu/submenu/index.d.ts +2 -0
  271. package/menu/submenu/index.mjs +2 -0
  272. package/menu/submenu/index.mjs.map +1 -0
  273. package/menu/submenu/useMenuSubmenu.d.ts +97 -0
  274. package/menu/submenu/useMenuSubmenu.props.d.ts +2 -0
  275. package/menu/useMenu.d.ts +215 -22
  276. package/menu/useMenu.props.d.ts +2 -2
  277. package/message/index.d.ts +1 -0
  278. package/message/index.mjs +1 -1
  279. package/message/index.mjs.map +1 -1
  280. package/message/useMessage.d.ts +13 -1
  281. package/message/useMessage.props.d.ts +2 -2
  282. package/metergroup/index.d.ts +1 -0
  283. package/metergroup/index.mjs +1 -1
  284. package/metergroup/index.mjs.map +1 -1
  285. package/metergroup/useMeterGroup.d.ts +36 -5
  286. package/metergroup/useMeterGroup.props.d.ts +2 -2
  287. package/navigationmenu/index.d.ts +3 -0
  288. package/navigationmenu/index.mjs +2 -0
  289. package/navigationmenu/index.mjs.map +1 -0
  290. package/navigationmenu/useNavigationMenu.d.ts +30 -0
  291. package/navigationmenu/useNavigationMenu.props.d.ts +2 -0
  292. package/orderlist/index.d.ts +3 -0
  293. package/orderlist/index.mjs +2 -0
  294. package/orderlist/index.mjs.map +1 -0
  295. package/orderlist/useOrderList.d.ts +73 -0
  296. package/orderlist/useOrderList.props.d.ts +2 -0
  297. package/organizationchart/index.d.ts +3 -0
  298. package/organizationchart/index.mjs +2 -0
  299. package/organizationchart/index.mjs.map +1 -0
  300. package/organizationchart/useOrganizationChart.d.ts +69 -0
  301. package/organizationchart/useOrganizationChart.props.d.ts +2 -0
  302. package/overlaybadge/index.d.ts +3 -0
  303. package/overlaybadge/index.mjs +2 -0
  304. package/overlaybadge/index.mjs.map +1 -0
  305. package/overlaybadge/useOverlayBadge.d.ts +1 -0
  306. package/overlaybadge/useOverlayBadge.props.d.ts +2 -0
  307. package/package.json +12 -15
  308. package/paginator/index.d.ts +1 -0
  309. package/paginator/index.mjs +1 -1
  310. package/paginator/index.mjs.map +1 -1
  311. package/paginator/usePaginator.d.ts +47 -1
  312. package/paginator/usePaginator.props.d.ts +2 -2
  313. package/panel/index.d.ts +1 -0
  314. package/panel/index.mjs +1 -1
  315. package/panel/index.mjs.map +1 -1
  316. package/panel/usePanel.d.ts +76 -8
  317. package/panel/usePanel.props.d.ts +2 -2
  318. package/picklist/index.d.ts +3 -0
  319. package/picklist/index.mjs +2 -0
  320. package/picklist/index.mjs.map +1 -0
  321. package/picklist/usePickList.d.ts +153 -0
  322. package/picklist/usePickList.props.d.ts +2 -0
  323. package/popover/index.d.ts +1 -0
  324. package/popover/index.mjs +1 -7
  325. package/popover/index.mjs.map +1 -1
  326. package/popover/usePopover.d.ts +65 -12
  327. package/popover/usePopover.props.d.ts +2 -2
  328. package/portal/index.d.ts +1 -0
  329. package/portal/index.mjs +1 -1
  330. package/portal/index.mjs.map +1 -1
  331. package/portal/usePortal.d.ts +4 -2
  332. package/portal/usePortal.props.d.ts +2 -2
  333. package/positioner/index.d.ts +3 -0
  334. package/positioner/index.mjs +2 -0
  335. package/positioner/index.mjs.map +1 -0
  336. package/positioner/usePositioner.anchor.d.ts +7 -0
  337. package/positioner/usePositioner.d.ts +11 -0
  338. package/positioner/usePositioner.fallback.d.ts +13 -0
  339. package/positioner/usePositioner.props.d.ts +2 -0
  340. package/positioner/usePositioner.utils.d.ts +21 -0
  341. package/progressbar/index.d.ts +1 -0
  342. package/progressbar/index.mjs +1 -1
  343. package/progressbar/index.mjs.map +1 -1
  344. package/progressbar/useProgressBar.d.ts +13 -1
  345. package/progressbar/useProgressBar.props.d.ts +2 -2
  346. package/progressspinner/index.d.ts +1 -0
  347. package/progressspinner/index.mjs +1 -1
  348. package/progressspinner/index.mjs.map +1 -1
  349. package/progressspinner/useProgressSpinner.d.ts +50 -1
  350. package/progressspinner/useProgressSpinner.props.d.ts +2 -2
  351. package/radiobutton/index.d.ts +1 -0
  352. package/radiobutton/index.mjs +1 -1
  353. package/radiobutton/index.mjs.map +1 -1
  354. package/radiobutton/useRadioButton.d.ts +41 -3
  355. package/radiobutton/useRadioButton.props.d.ts +2 -2
  356. package/radiobuttongroup/index.d.ts +3 -0
  357. package/radiobuttongroup/index.mjs +2 -0
  358. package/radiobuttongroup/index.mjs.map +1 -0
  359. package/radiobuttongroup/useRadioButtonGroup.d.ts +11 -0
  360. package/radiobuttongroup/useRadioButtonGroup.props.d.ts +2 -0
  361. package/rating/index.d.ts +3 -0
  362. package/rating/index.mjs +1 -1
  363. package/rating/index.mjs.map +1 -1
  364. package/rating/useRating.d.ts +46 -12
  365. package/rating/useRating.props.d.ts +2 -2
  366. package/rating/useRatingOption.d.ts +69 -0
  367. package/rating/useRatingOption.props.d.ts +2 -0
  368. package/scrollarea/index.d.ts +1 -0
  369. package/scrollarea/index.mjs +1 -1
  370. package/scrollarea/index.mjs.map +1 -1
  371. package/scrollarea/useScrollArea.d.ts +120 -15
  372. package/scrollarea/useScrollArea.props.d.ts +2 -2
  373. package/select/index.d.ts +3 -0
  374. package/select/index.mjs +2 -0
  375. package/select/index.mjs.map +1 -0
  376. package/select/useSelect.d.ts +190 -0
  377. package/select/useSelect.props.d.ts +2 -0
  378. package/select/useSelect.test.d.ts +1 -0
  379. package/sidebar/index.d.ts +7 -0
  380. package/sidebar/index.mjs +2 -0
  381. package/sidebar/index.mjs.map +1 -0
  382. package/sidebar/useSidebar.d.ts +117 -0
  383. package/sidebar/useSidebar.props.d.ts +2 -0
  384. package/sidebar/useSidebarLayout.d.ts +24 -0
  385. package/sidebar/useSidebarLayout.props.d.ts +2 -0
  386. package/sidebar/useSidebarMenuItem.d.ts +11 -0
  387. package/sidebar/useSidebarMenuItem.props.d.ts +2 -0
  388. package/skeleton/index.d.ts +1 -0
  389. package/skeleton/index.mjs +1 -1
  390. package/skeleton/index.mjs.map +1 -1
  391. package/skeleton/useSkeleton.d.ts +7 -1
  392. package/skeleton/useSkeleton.props.d.ts +2 -2
  393. package/slider/index.d.ts +1 -0
  394. package/slider/index.mjs +1 -1
  395. package/slider/index.mjs.map +1 -1
  396. package/slider/useSlider.d.ts +81 -48
  397. package/slider/useSlider.props.d.ts +2 -2
  398. package/speeddial/index.d.ts +1 -0
  399. package/speeddial/index.mjs +1 -1
  400. package/speeddial/index.mjs.map +1 -1
  401. package/speeddial/useSpeedDial.d.ts +89 -32
  402. package/speeddial/useSpeedDial.props.d.ts +2 -2
  403. package/splitter/index.d.ts +1 -0
  404. package/splitter/index.mjs +1 -1
  405. package/splitter/index.mjs.map +1 -1
  406. package/splitter/useSplitter.d.ts +57 -14
  407. package/splitter/useSplitter.props.d.ts +2 -2
  408. package/stepper/index.d.ts +1 -0
  409. package/stepper/index.mjs +1 -1
  410. package/stepper/index.mjs.map +1 -1
  411. package/stepper/useStepper.d.ts +47 -2
  412. package/stepper/useStepper.props.d.ts +2 -2
  413. package/styleclass/index.d.ts +1 -0
  414. package/styleclass/index.mjs +1 -1
  415. package/styleclass/index.mjs.map +1 -1
  416. package/styleclass/useStyleClass.d.ts +5 -1
  417. package/styleclass/useStyleClass.props.d.ts +2 -2
  418. package/tabs/index.d.ts +1 -0
  419. package/tabs/index.mjs +1 -1
  420. package/tabs/index.mjs.map +1 -1
  421. package/tabs/useTabs.d.ts +42 -3
  422. package/tabs/useTabs.props.d.ts +2 -2
  423. package/tag/index.d.ts +1 -0
  424. package/tag/index.mjs +1 -1
  425. package/tag/index.mjs.map +1 -1
  426. package/tag/useTag.d.ts +6 -1
  427. package/tag/useTag.props.d.ts +2 -2
  428. package/terminal/index.d.ts +1 -0
  429. package/terminal/index.mjs +1 -1
  430. package/terminal/index.mjs.map +1 -1
  431. package/terminal/useTerminal.d.ts +23 -2
  432. package/terminal/useTerminal.props.d.ts +2 -2
  433. package/textarea/index.d.ts +1 -0
  434. package/textarea/index.mjs +1 -1
  435. package/textarea/index.mjs.map +1 -1
  436. package/textarea/useTextarea.d.ts +9 -2
  437. package/textarea/useTextarea.props.d.ts +2 -2
  438. package/timeline/index.d.ts +1 -0
  439. package/timeline/index.mjs +1 -1
  440. package/timeline/index.mjs.map +1 -1
  441. package/timeline/useTimeline.d.ts +41 -1
  442. package/timeline/useTimeline.props.d.ts +2 -2
  443. package/toast/index.d.ts +1 -1
  444. package/toast/index.mjs +1 -1
  445. package/toast/index.mjs.map +1 -1
  446. package/toast/useToast.d.ts +85 -23
  447. package/toast/useToast.props.d.ts +2 -2
  448. package/toaster/ToastManager.d.ts +14 -0
  449. package/toaster/index.d.ts +4 -0
  450. package/toaster/index.mjs +2 -0
  451. package/toaster/index.mjs.map +1 -0
  452. package/toaster/useToaster.d.ts +50 -0
  453. package/toaster/useToaster.props.d.ts +2 -0
  454. package/togglebutton/index.d.ts +1 -0
  455. package/togglebutton/index.mjs +1 -1
  456. package/togglebutton/index.mjs.map +1 -1
  457. package/togglebutton/useToggleButton.d.ts +5 -3
  458. package/togglebutton/useToggleButton.props.d.ts +2 -2
  459. package/togglebuttongroup/index.d.ts +3 -0
  460. package/togglebuttongroup/index.mjs +2 -0
  461. package/togglebuttongroup/index.mjs.map +1 -0
  462. package/togglebuttongroup/useToggleButtonGroup.d.ts +17 -0
  463. package/togglebuttongroup/useToggleButtonGroup.props.d.ts +2 -0
  464. package/toggleswitch/index.d.ts +3 -0
  465. package/toggleswitch/index.mjs +2 -0
  466. package/toggleswitch/index.mjs.map +1 -0
  467. package/toggleswitch/useToggleSwitch.d.ts +48 -0
  468. package/toggleswitch/useToggleSwitch.props.d.ts +2 -0
  469. package/toolbar/index.d.ts +1 -0
  470. package/toolbar/index.mjs +1 -1
  471. package/toolbar/index.mjs.map +1 -1
  472. package/toolbar/useToolbar.d.ts +7 -1
  473. package/toolbar/useToolbar.props.d.ts +2 -2
  474. package/tooltip/index.d.ts +1 -0
  475. package/tooltip/index.mjs +1 -1
  476. package/tooltip/index.mjs.map +1 -1
  477. package/tooltip/useTooltip.d.ts +43 -24
  478. package/tooltip/useTooltip.props.d.ts +2 -2
  479. package/tooltipmanager/index.d.ts +2 -0
  480. package/tooltipmanager/index.mjs +2 -0
  481. package/tooltipmanager/index.mjs.map +1 -0
  482. package/tooltipmanager/useTooltipManager.d.ts +12 -0
  483. package/tooltipmanager/useTooltipManager.props.d.ts +2 -0
  484. package/tooltipmanager/useTooltipManager.test.d.ts +0 -0
  485. package/tree/TreeDragDropService.d.ts +13 -5
  486. package/tree/index.d.ts +7 -0
  487. package/tree/index.mjs +1 -1
  488. package/tree/index.mjs.map +1 -1
  489. package/tree/useTree.d.ts +96 -16
  490. package/tree/useTree.props.d.ts +2 -2
  491. package/tree/useTreeDragDrop.d.ts +24 -0
  492. package/tree/useTreeFlatten.d.ts +13 -0
  493. package/tree/useTreeKeyboard.d.ts +18 -0
  494. package/tree/useTreeNode.d.ts +45 -0
  495. package/tree/useTreeNode.props.d.ts +2 -0
  496. package/tree/useTreeSelection.d.ts +31 -0
  497. package/utils/itemKey.d.ts +10 -0
  498. package/LICENSE +0 -21
  499. package/colorpicker/index.d.ts +0 -3
  500. package/colorpicker/index.mjs +0 -2
  501. package/colorpicker/index.mjs.map +0 -1
  502. package/colorpicker/input/index.d.ts +0 -2
  503. package/colorpicker/input/index.mjs +0 -2
  504. package/colorpicker/input/index.mjs.map +0 -1
  505. package/colorpicker/input/useColorPickerInput.d.ts +0 -11
  506. package/colorpicker/input/useColorPickerInput.props.d.ts +0 -2
  507. package/colorpicker/slider/index.d.ts +0 -2
  508. package/colorpicker/slider/index.mjs +0 -2
  509. package/colorpicker/slider/index.mjs.map +0 -1
  510. package/colorpicker/slider/useColorPickerSlider.d.ts +0 -13
  511. package/colorpicker/slider/useColorPickerSlider.props.d.ts +0 -2
  512. package/colorpicker/useColorPicker.d.ts +0 -26
  513. package/colorpicker/useColorPicker.props.d.ts +0 -2
  514. package/commandmenu/index.d.ts +0 -2
  515. package/commandmenu/index.mjs +0 -2
  516. package/commandmenu/index.mjs.map +0 -1
  517. package/commandmenu/useCommandMenu.d.ts +0 -11
  518. package/commandmenu/useCommandMenu.props.d.ts +0 -2
  519. package/confirmdialog/index.d.ts +0 -2
  520. package/confirmdialog/index.mjs +0 -2
  521. package/confirmdialog/index.mjs.map +0 -1
  522. package/confirmdialog/useConfirmDialog.d.ts +0 -1
  523. package/confirmdialog/useConfirmDialog.props.d.ts +0 -2
  524. package/confirmpopup/index.d.ts +0 -2
  525. package/confirmpopup/index.mjs +0 -2
  526. package/confirmpopup/index.mjs.map +0 -1
  527. package/confirmpopup/useConfirmPopup.d.ts +0 -25
  528. package/confirmpopup/useConfirmPopup.props.d.ts +0 -2
  529. package/imagecompare/index.d.ts +0 -2
  530. package/imagecompare/index.mjs +0 -2
  531. package/imagecompare/index.mjs.map +0 -1
  532. package/imagecompare/useImageCompare.d.ts +0 -8
  533. package/imagecompare/useImageCompare.props.d.ts +0 -2
  534. package/menu/sub/index.d.ts +0 -2
  535. package/menu/sub/index.mjs +0 -2
  536. package/menu/sub/index.mjs.map +0 -1
  537. package/menu/sub/useMenuSub.d.ts +0 -19
  538. package/menu/sub/useMenuSub.props.d.ts +0 -2
  539. package/orgchart/index.d.ts +0 -2
  540. package/orgchart/index.mjs +0 -2
  541. package/orgchart/index.mjs.map +0 -1
  542. package/orgchart/useOrgChart.d.ts +0 -20
  543. package/orgchart/useOrgChart.props.d.ts +0 -2
  544. package/overlay/index.d.ts +0 -2
  545. package/overlay/index.mjs +0 -2
  546. package/overlay/index.mjs.map +0 -1
  547. package/overlay/useOverlay.d.ts +0 -16
  548. package/overlay/useOverlay.props.d.ts +0 -2
  549. package/password/index.d.ts +0 -2
  550. package/password/index.mjs +0 -2
  551. package/password/index.mjs.map +0 -1
  552. package/password/usePassword.d.ts +0 -35
  553. package/password/usePassword.props.d.ts +0 -2
  554. package/placer/index.d.ts +0 -2
  555. package/placer/index.mjs +0 -2
  556. package/placer/index.mjs.map +0 -1
  557. package/placer/usePlacer.d.ts +0 -12
  558. package/placer/usePlacer.props.d.ts +0 -2
  559. package/switch/index.d.ts +0 -2
  560. package/switch/index.mjs +0 -2
  561. package/switch/index.mjs.map +0 -1
  562. package/switch/useSwitch.d.ts +0 -7
  563. package/switch/useSwitch.props.d.ts +0 -2
  564. package/toast/item/index.css +0 -2
  565. package/toast/item/index.css.map +0 -1
  566. package/toast/item/index.d.ts +0 -2
  567. package/toast/item/index.mjs +0 -2
  568. package/toast/item/index.mjs.map +0 -1
  569. package/toast/item/useToastItem.d.ts +0 -25
  570. package/toast/item/useToastItem.props.d.ts +0 -2
  571. package/toast/toastStore.d.ts +0 -40
  572. package/tooltip/group/index.d.ts +0 -2
  573. package/tooltip/group/index.mjs +0 -2
  574. package/tooltip/group/index.mjs.map +0 -1
  575. package/tooltip/group/useTooltipGroup.d.ts +0 -9
  576. package/tooltip/group/useTooltipGroup.props.d.ts +0 -2
  577. /package/{colorpicker/input/useColorPickerInput.test.d.ts → autocomplete/useAutoComplete.test.d.ts} +0 -0
  578. /package/{colorpicker/slider/useColorPickerSlider.test.d.ts → checkboxgroup/useCheckboxGroup.test.d.ts} +0 -0
  579. /package/{colorpicker/useColorPicker.test.d.ts → collapsible/useCollapsible.test.d.ts} +0 -0
  580. /package/{commandmenu/useCommandMenu.test.d.ts → compare/useCompare.test.d.ts} +0 -0
  581. /package/{confirmdialog/useConfirmDialog.test.d.ts → floatlabel/useFloatLabel.test.d.ts} +0 -0
  582. /package/{confirmpopup/useConfirmPopup.test.d.ts → iftalabel/useIftaLabel.test.d.ts} +0 -0
  583. /package/{imagecompare/useImageCompare.test.d.ts → inputcolor/useInputColor.test.d.ts} +0 -0
  584. /package/{orgchart/useOrgChart.test.d.ts → inputpassword/useInputPassword.test.d.ts} +0 -0
  585. /package/{overlay/useOverlay.test.d.ts → navigationmenu/useNavigationMenu.test.d.ts} +0 -0
  586. /package/{password/usePassword.test.d.ts → organizationchart/useOrganizationChart.test.d.ts} +0 -0
  587. /package/{placer/usePlacer.test.d.ts → overlaybadge/useOverlayBadge.test.d.ts} +0 -0
  588. /package/{progressspinner/useProgressSpinner.test.d.ts → positioner/usePositioner.test.d.ts} +0 -0
  589. /package/{rating/useRating.test.d.ts → radiobuttongroup/useRadioButtonGroup.test.d.ts} +0 -0
  590. /package/{switch/useSwitch.test.d.ts → toaster/useToaster.test.d.ts} +0 -0
  591. /package/{toast/item/useToastItem.test.d.ts → togglebuttongroup/useToggleButtonGroup.test.d.ts} +0 -0
  592. /package/{tooltip/group/useTooltipGroup.test.d.ts → toggleswitch/useToggleSwitch.test.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/colorpicker/slider/useColorPickerSlider.ts","../../../../primereact/src/colorpicker/ColorPicker.tsx","../../../../primereact/src/base/index.ts","../../../../primereact/src/colorpicker/ColorPicker.context.ts","../../../../primereact/src/colorpicker/ColorPicker.props.ts","../../../../primereact/src/colorpicker/area/ColorPickerArea.tsx","../../../../primereact/src/colorpicker/areabackground/ColorPickerAreaBackground.tsx","../../../../primereact/src/colorpicker/areabackground/ColorPickerAreaBackground.props.ts","../../../../primereact/src/colorpicker/areathumb/ColorPickerAreaThumb.tsx","../../../../primereact/src/colorpicker/areathumb/ColorPickerAreaThumb.props.ts","../../../../primereact/src/colorpicker/area/ColorPickerArea.props.ts","../../../../primereact/src/colorpicker/eyedropper/ColorPickerEyeDropper.tsx","../../../../primereact/src/button/Button.tsx","../../../../primereact/src/button/Button.context.ts","../../../../primereact/src/button/Button.props.ts","../../../../primereact/src/button/group/ButtonGroup.tsx","../../../../primereact/src/button/group/ButtonGroup.context.ts","../../../../primereact/src/button/group/ButtonGroup.props.ts","../../../../primereact/src/colorpicker/eyedropper/ColorPickerEyeDropper.props.ts","../../../../primereact/src/colorpicker/input/ColorPickerInput.tsx","../../../../primereact/src/inputtext/InputText.tsx","../../../../primereact/src/fluid/Fluid.tsx","../../../../primereact/src/fluid/Fluid.context.ts","../../../../primereact/src/fluid/Fluid.props.ts","../../../../primereact/src/inputtext/InputText.context.ts","../../../../primereact/src/inputtext/InputText.props.ts","../../../../primereact/src/colorpicker/input/ColorPickerInput.context.ts","../../../../primereact/src/colorpicker/input/ColorPickerInput.props.ts","../../../../primereact/src/colorpicker/slider/ColorPickerSlider.tsx","../../../../primereact/src/colorpicker/sliderthumb/ColorPickerSliderThumb.tsx","../../../../primereact/src/colorpicker/slider/ColorPickerSlider.context.ts","../../../../primereact/src/colorpicker/sliderthumb/ColorPickerSliderThumb.props.ts","../../../../primereact/src/colorpicker/slidertrack/ColorPickerSliderTrack.tsx","../../../../primereact/src/colorpicker/slidertrack/ColorPickerSliderTrack.props.ts","../../../../primereact/src/colorpicker/transparencygrid/ColorPickerTransparencyGrid.tsx","../../../../primereact/src/colorpicker/transparencygrid/ColorPickerTransparencyGrid.props.ts","../../../../primereact/src/colorpicker/slider/ColorPickerSlider.props.ts","../../../../primereact/src/colorpicker/swatch/ColorPickerSwatch.tsx","../../../../primereact/src/colorpicker/swatchbackground/ColorPickerSwatchBackground.tsx","../../../../primereact/src/colorpicker/swatchbackground/ColorPickerSwatchBackground.props.ts","../../../../primereact/src/colorpicker/swatch/ColorPickerSwatch.props.ts","../../../src/colorpicker/colorManager.ts","../../../src/colorpicker/slider/useColorPickerSlider.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useColorPickerContext } from 'primereact/colorpicker';\nimport * as React from 'react';\nimport { getChannelColor, getChannelGradient } from '../colorManager';\nimport { defaultProps } from './useColorPickerSlider.props';\n\nexport const useColorPickerSlider = withHeadless({\n name: 'useColorPickerSlider',\n defaultProps,\n setup({ props }) {\n const { channel = 'hue', orientation, disabled } = props;\n const colorpicker = useColorPickerContext();\n const [isSliderDragging, setIsSliderDragging] = React.useState(false);\n\n const state = {\n isSliderDragging\n };\n\n const workingValue =\n channel === 'alpha'\n ? colorpicker?.areaValue\n : colorpicker?.state.value?.getChannels().includes(channel)\n ? colorpicker?.state.value\n : colorpicker?.areaValue.getChannels().includes(channel)\n ? colorpicker?.areaValue\n : colorpicker?.state.value?.toFormat(colorpicker?.props.format || 'hsba');\n\n const moveSlider = (x: number, y: number, element: HTMLElement) => {\n if (!element || disabled || colorpicker?.props.disabled) return;\n\n const rect = element.getBoundingClientRect();\n const rel = orientation === 'horizontal' ? (x - rect.left) / rect.width : (y - rect.top) / rect.height;\n const clamped = Math.max(0, Math.min(1, rel));\n\n const channelRange = workingValue!.getChannelRange(channel);\n const targetValue = clamped * (channelRange.max - channelRange.min) + channelRange.min;\n\n const currentValue = workingValue!.getChannelValue(channel);\n const delta = targetValue - currentValue;\n\n const newColor = workingValue!.incChannelValue(channel, delta);\n\n colorpicker?.setValue([\n newColor,\n {\n color: newColor.toString(colorpicker?.props.format || 'css'),\n value: newColor\n }\n ]);\n\n colorpicker?.syncChannelInputs(newColor);\n };\n\n const handleSliderPointerDown = (event: PointerEvent) => {\n const element = event.currentTarget as HTMLElement;\n\n if (!element) return;\n\n element.setPointerCapture(event.pointerId);\n setIsSliderDragging(true);\n moveSlider(event.clientX, event.clientY, element);\n };\n\n const handleSliderPointerMove = (event: PointerEvent) => {\n if (!isSliderDragging) return;\n\n moveSlider(event.clientX, event.clientY, event.currentTarget as HTMLElement);\n };\n\n const handleSliderPointerUp = (event: PointerEvent) => {\n const element = event.currentTarget as HTMLElement;\n\n if (!element) return;\n\n element.releasePointerCapture(event.pointerId);\n setIsSliderDragging(false);\n };\n\n const handleSliderKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {\n if (disabled || colorpicker?.props.disabled) return;\n\n const key = event.key;\n const isVertical = orientation === 'vertical';\n const allowed = isVertical ? ['ArrowUp', 'ArrowDown'] : ['ArrowLeft', 'ArrowRight'];\n\n if (!allowed.includes(key)) return;\n\n event.preventDefault();\n\n const base = workingValue;\n\n if (!base) return;\n\n const { step } = base.getChannelRange(channel);\n\n let next = base;\n\n if (!isVertical) {\n if (key === 'ArrowRight') next = next.incChannelValue(channel, step);\n\n if (key === 'ArrowLeft') next = next.decChannelValue(channel, step);\n } else {\n if (key === 'ArrowDown') next = next.incChannelValue(channel, step);\n\n if (key === 'ArrowUp') next = next.decChannelValue(channel, step);\n }\n\n colorpicker?.setValue([\n next,\n {\n color: next.toString(colorpicker?.props.format || 'css'),\n value: next\n }\n ]);\n\n colorpicker?.syncChannelInputs(next);\n };\n\n const channelRange = workingValue!.getChannelRange(channel);\n const channelValue = workingValue!.getChannelValue(channel);\n\n const offset = (channelValue - channelRange.min) / (channelRange.max - channelRange.min);\n\n const sliderStyle = {\n '--slider-background': getChannelGradient(channel, workingValue!, orientation ?? 'horizontal'),\n '--thumb-position-left': orientation === 'horizontal' ? `${offset * 100}%` : '50%',\n '--thumb-position-top': orientation === 'vertical' ? `${offset * 100}%` : '50%',\n '--thumb-background': getChannelColor(workingValue!, channel).toString('css')\n } as React.CSSProperties;\n\n return {\n state,\n handleSliderPointerDown,\n handleSliderPointerMove,\n handleSliderPointerUp,\n handleSliderKeyDown,\n sliderStyle,\n channelValue,\n channelRange\n };\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useColorPicker } from '@primereact/headless/colorpicker';\nimport { styles } from '@primereact/styles/colorpicker';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { ColorPickerProvider } from './ColorPicker.context';\nimport { defaultProps } from './ColorPicker.props';\nimport { ColorPickerArea } from './area';\nimport { ColorPickerAreaBackground } from './areabackground';\nimport { ColorPickerAreaThumb } from './areathumb';\nimport { ColorPickerEyeDropper } from './eyedropper/ColorPickerEyeDropper';\nimport { ColorPickerInput } from './input/ColorPickerInput';\nimport { ColorPickerSlider } from './slider';\nimport { ColorPickerSliderThumb } from './sliderthumb';\nimport { ColorPickerSliderTrack } from './slidertrack';\nimport { ColorPickerSwatch } from './swatch';\nimport { ColorPickerSwatchBackground } from './swatchbackground';\nimport { ColorPickerTransparencyGrid } from './transparencygrid';\n\nexport const ColorPicker = withComponent({\n name: 'ColorPicker',\n defaultProps,\n styles,\n setup(instance) {\n const colorpicker = useColorPicker(instance.inProps);\n\n return colorpicker;\n },\n render(instance) {\n const { props, ptmi } = instance;\n\n const rootProps = mergeProps(ptmi('root'));\n\n return (\n <ColorPickerProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} as={React.Fragment} />\n </ColorPickerProvider>\n );\n },\n components: {\n Area: ColorPickerArea,\n AreaBackground: ColorPickerAreaBackground,\n AreaThumb: ColorPickerAreaThumb,\n Slider: ColorPickerSlider,\n SliderThumb: ColorPickerSliderThumb,\n SliderTrack: ColorPickerSliderTrack,\n TransparencyGrid: ColorPickerTransparencyGrid,\n Swatch: ColorPickerSwatch,\n SwatchBackground: ColorPickerSwatchBackground,\n EyeDropper: ColorPickerEyeDropper,\n Input: ColorPickerInput\n }\n});\n","import { withComponent as withComponentInCore } from '@primereact/core/component';\nimport { styles as baseStyles } from '@primereact/styles/base';\nimport type { withComponentOptions } from '@primereact/types/core';\nimport type { StylesOptions } from '@primereact/types/styles';\n\nexport const withComponent = <IProps, DProps, Exposes extends Record<PropertyKey, unknown> = Record<PropertyKey, unknown>, Styles = StylesOptions, CData = Record<string, unknown>>({\n name = 'UnknownComponent',\n defaultProps,\n styles = {\n ...baseStyles,\n name: 'global'\n } as Styles,\n components,\n setup,\n render\n}: withComponentOptions<IProps, DProps, Exposes, Styles, CData>) => {\n return withComponentInCore<IProps, DProps, Exposes, Styles, CData>({\n name,\n defaultProps,\n styles,\n components,\n setup,\n render\n });\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ColorPickerInstance } from '@primereact/types/shared/colorpicker';\n\nexport const [ColorPickerProvider, useColorPickerContext] = createOptionalContext<ColorPickerInstance>();\n","import * as HeadlessColorPicker from '@primereact/headless/colorpicker';\nimport type { ColorPickerProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultProps: ColorPickerProps = {\n ...HeadlessColorPicker.defaultProps\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { ColorPickerAreaBackground } from '../areabackground/ColorPickerAreaBackground';\nimport { ColorPickerAreaThumb } from '../areathumb/ColorPickerAreaThumb';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultAreaProps } from './ColorPickerArea.props';\n\nexport const ColorPickerArea = withComponent({\n name: 'ColorPickerArea',\n defaultProps: defaultAreaProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('area'),\n onPointerDown: colorpicker?.handleAreaPointerDown,\n onPointerMove: colorpicker?.handleAreaPointerMove,\n onPointerUp: colorpicker?.handleAreaPointerUp,\n style: { ...colorpicker?.areaStyles, ...colorpicker?.sx('area') }\n },\n colorpicker?.ptm('area'),\n ptmi('root')\n );\n\n return (\n <Component\n instance={instance}\n attrs={rootProps}\n children={\n props.children ?? (\n <>\n <ColorPickerAreaBackground />\n <ColorPickerAreaThumb />\n </>\n )\n }\n />\n );\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultAreaBackgroundProps } from './ColorPickerAreaBackground.props';\n\nexport const ColorPickerAreaBackground = withComponent({\n name: 'ColorPickerAreaBackground',\n defaultProps: defaultAreaBackgroundProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('areaBackground')\n },\n colorpicker?.ptm('areaBackground'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ColorPickerAreaBackgroundProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultAreaBackgroundProps: ColorPickerAreaBackgroundProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultAreaThumbProps } from './ColorPickerAreaThumb.props';\n\nexport const ColorPickerAreaThumb = withComponent({\n name: 'ColorPickerAreaThumb',\n defaultProps: defaultAreaThumbProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const disabled = colorpicker?.props.disabled;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('areaThumb', { disabled }),\n onKeyDown: colorpicker?.handleAreaKeyDown,\n role: 'slider',\n tabIndex: disabled ? -1 : 0,\n 'aria-disabled': disabled,\n 'aria-valuemin': 0,\n 'aria-valuemax': 100,\n 'aria-valuenow': colorpicker?.areaValue?.getChannelValue(colorpicker?.areaChannels.xChannel) ?? 0,\n 'aria-label': `${colorpicker?.areaChannels.xChannel} and ${colorpicker?.areaChannels.yChannel}`,\n 'aria-roledescription': '2d slider',\n 'aria-valuetext': `${colorpicker?.areaChannels.xChannel} ${colorpicker?.areaValue.getChannelValue(colorpicker?.areaChannels.xChannel)}, ${colorpicker?.areaChannels.yChannel} ${colorpicker?.areaValue.getChannelValue(colorpicker?.areaChannels.yChannel)}`\n },\n colorpicker?.ptm('areaThumb'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n\n// <div data-scope=\"color-picker\" data-part=\"area-thumb\" id=\"color-picker:_r_0_:area-thumb\" dir=\"ltr\" tabindex=\"0\" role=\"slider\" aria-valuemin=\"0\" aria-valuemax=\"100\" aria-valuenow=\"52\" aria-label=\"saturation and brightness\" aria-roledescription=\"2d slider\" aria-valuetext=\"saturation 52, brightness 10\" class=\"colorPicker__areaThumb css-u4jt6x\" style=\"position: absolute; left: 52%; top: 90%; transform: translate(-50%, -50%); touch-action: none; forced-color-adjust: none; --color: hsla(51.76, 35.14%, 7.4%, 1); background: rgb(26, 24, 12);\"></div>\n","import type { ColorPickerAreaThumbProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultAreaThumbProps: ColorPickerAreaThumbProps = {\n as: 'div'\n};\n","import type { ColorPickerAreaProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultAreaProps: ColorPickerAreaProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { EyeDropperIcon } from '@primereact/icons/eyedropper';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { Button } from 'primereact/button';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultEyeDropperProps } from './ColorPickerEyeDropper.props';\n\nexport const ColorPickerEyeDropper = withComponent({\n name: 'ColorPickerEyeDropper',\n defaultProps: defaultEyeDropperProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n type: 'button',\n className: colorpicker?.cx('eyeDropper'),\n onClick: colorpicker?.openEyeDropper,\n disabled: props.disabled || colorpicker?.props.disabled\n },\n colorpicker?.ptm('eyeDropper'),\n ptmi('root')\n );\n\n const createIconElement = () => {\n return <EyeDropperIcon pt={colorpicker?.ptm('eyeDropperIcon')} />;\n };\n\n const icon = createIconElement();\n\n // @ts-expect-error: Button expects a type prop, but we are using it as a close button.\n return <Component as={Button} instance={instance} attrs={{ ...props, ...rootProps }} pt={colorpicker?.ptm('eyeDropper')} children={props.children ?? icon} />;\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useButton } from '@primereact/headless/button';\nimport { styles } from '@primereact/styles/button';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { ButtonProvider } from './Button.context';\nimport { defaultProps } from './Button.props';\nimport { ButtonGroup } from './group';\n\nexport const Button = withComponent({\n name: 'Button',\n defaultProps,\n styles,\n setup(instance) {\n const button = useButton(instance.inProps);\n\n return button;\n },\n render(instance) {\n const { id, props, ptmi, cx } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n className: cx('root')\n },\n ptmi('root')\n );\n\n return (\n <ButtonProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </ButtonProvider>\n );\n },\n components: {\n Group: ButtonGroup\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ButtonInstance } from '@primereact/types/shared/button';\n\nexport const [ButtonProvider, useButtonContext] = createOptionalContext<ButtonInstance>();\n","import * as HeadlessButton from '@primereact/headless/button';\nimport type { ButtonProps } from '@primereact/types/shared/button';\n\nexport const defaultProps: ButtonProps = {\n ...HeadlessButton.defaultProps,\n as: 'button',\n size: undefined,\n severity: undefined,\n variant: undefined,\n plain: false,\n rounded: false,\n raised: false,\n iconOnly: false,\n fluid: false\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { groupStyles } from '@primereact/styles/button';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { ButtonGroupProvider } from './ButtonGroup.context';\nimport { defaultGroupProps } from './ButtonGroup.props';\n\nexport const ButtonGroup = withComponent({\n name: 'ButtonGroup',\n defaultProps: defaultGroupProps,\n styles: groupStyles,\n render(instance) {\n const { props, ptmi, cx } = instance;\n\n const rootProps = mergeProps(\n {\n className: cx('root')\n },\n ptmi('root')\n );\n\n return (\n <ButtonGroupProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </ButtonGroupProvider>\n );\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ButtonGroupInstance } from '@primereact/types/shared/button';\n\nexport const [ButtonGroupProvider, useButtonGroupContext] = createOptionalContext<ButtonGroupInstance>();\n","import type { ButtonGroupProps } from '@primereact/types/shared/button';\n\nexport const defaultGroupProps: ButtonGroupProps = {\n as: 'div'\n};\n","import { ColorPickerEyeDropperProps } from '@primereact/types/shared/colorpicker';\nimport * as Button from 'primereact/button';\n\nexport const defaultEyeDropperProps: ColorPickerEyeDropperProps = {\n ...(Button.defaultProps as ColorPickerEyeDropperProps),\n iconOnly: true,\n variant: 'outlined',\n severity: 'secondary'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useColorPickerInput } from '@primereact/headless/colorpicker/input';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { InputText } from 'primereact/inputtext';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { ColorPickerInputProvider } from './ColorPickerInput.context';\nimport { defaultInputProps } from './ColorPickerInput.props';\n\nexport const ColorPickerInput = withComponent({\n name: 'ColorPickerInput',\n defaultProps: defaultInputProps,\n setup(instance) {\n const colorpicker = useColorPickerContext();\n const colorpickerinput = useColorPickerInput(instance.inProps);\n\n return { colorpicker, ...colorpickerinput };\n },\n render(instance) {\n const { props, ptmi, colorpicker, type, channelRange, channelValue, handleBlur, handleKeyDown } = instance;\n\n const rootProps = mergeProps(\n {\n id: props.inputId,\n className: colorpicker?.cx('input'),\n type,\n spellCheck: false,\n autoComplete: 'off',\n defaultValue: channelValue,\n min: channelRange?.min,\n max: channelRange?.max,\n step: channelRange?.step,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n 'data-channel': props.channel,\n 'aria-label': props.channel,\n disabled: props.disabled || colorpicker?.props.disabled\n },\n colorpicker?.ptm('input'),\n ptmi('root')\n );\n\n return (\n <ColorPickerInputProvider value={instance}>\n {/* @ts-expect-error: InputText expects a type prop, but we are using it as a text input. */}\n <Component as={InputText} instance={instance} attrs={{ ...props, ...rootProps }} pt={colorpicker?.ptm('input')} children={props.children} ref={colorpicker?.registerInputEl} />\n </ColorPickerInputProvider>\n );\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useInputText } from '@primereact/headless/inputtext';\nimport { styles } from '@primereact/styles/inputtext';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { useFluidContext } from 'primereact/fluid';\nimport * as React from 'react';\nimport { InputTextProvider } from './InputText.context';\nimport { defaultProps } from './InputText.props';\n\nexport const InputText = withComponent({\n name: 'InputText',\n defaultProps,\n styles,\n setup(instance) {\n const inputtext = useInputText(instance?.inProps);\n const fluid = useFluidContext();\n\n return { ...inputtext, fluid };\n },\n render(instance) {\n const { id, props, ptmi, cx, fluid } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n type: 'text',\n className: cx('root', { $fluid: !!fluid })\n },\n ptmi('root')\n );\n\n return (\n <InputTextProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </InputTextProvider>\n );\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useFluid } from '@primereact/headless/fluid';\nimport { styles } from '@primereact/styles/fluid';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { FluidProvider } from './Fluid.context';\nimport { defaultProps } from './Fluid.props';\n\nexport const Fluid = withComponent({\n name: 'Fluid',\n defaultProps,\n styles,\n setup(instance) {\n const fluid = useFluid(instance.inProps);\n\n return fluid;\n },\n render(instance) {\n const { id, props, ptmi, cx } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n className: cx('root')\n },\n ptmi('root')\n );\n\n return (\n <FluidProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </FluidProvider>\n );\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { FluidInstance } from '@primereact/types/shared/fluid';\n\nexport const [FluidProvider, useFluidContext] = createOptionalContext<FluidInstance>();\n","import * as HeadlessFluid from '@primereact/headless/fluid';\nimport type { FluidProps } from '@primereact/types/shared/fluid';\n\nexport const defaultProps: FluidProps = {\n ...HeadlessFluid.defaultProps,\n as: 'div'\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { InputTextInstance } from '@primereact/types/shared/inputtext';\n\nexport const [InputTextProvider, useInputTextContext] = createOptionalContext<InputTextInstance>();\n","import * as HeadlessInputText from '@primereact/headless/inputtext';\nimport type { InputTextProps } from '@primereact/types/shared/inputtext';\n\nexport const defaultProps: InputTextProps = {\n ...HeadlessInputText.defaultProps,\n as: 'input',\n size: undefined,\n variant: undefined,\n fluid: undefined,\n invalid: false\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ColorPickerInputInstance } from '@primereact/types/shared/colorpicker';\n\nexport const [ColorPickerInputProvider, useColorPickerInputContext] = createOptionalContext<ColorPickerInputInstance>();\n","import * as HeadlessColorPickerInput from '@primereact/headless/colorpicker/input';\nimport { ColorPickerInputProps } from '@primereact/types/shared/colorpicker';\nimport * as InputText from 'primereact/inputtext';\n\nexport const defaultInputProps: ColorPickerInputProps = {\n ...(InputText.defaultProps as ColorPickerInputProps),\n ...HeadlessColorPickerInput.defaultProps\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useColorPickerSlider } from '@primereact/headless/colorpicker/slider';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { ColorPickerSliderThumb } from '../sliderthumb/ColorPickerSliderThumb';\nimport { ColorPickerSliderTrack } from '../slidertrack/ColorPickerSliderTrack';\nimport { ColorPickerTransparencyGrid } from '../transparencygrid';\nimport { ColorPickerSliderProvider } from './ColorPickerSlider.context';\nimport { defaultSliderProps } from './ColorPickerSlider.props';\n\nexport const ColorPickerSlider = withComponent({\n name: 'ColorPickerSlider',\n defaultProps: defaultSliderProps,\n setup(instance) {\n const colorpicker = useColorPickerContext();\n const colorpickerslider = useColorPickerSlider({ ...instance.inProps, context: colorpicker });\n\n return { ...colorpickerslider, colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker, handleSliderPointerDown, handleSliderPointerMove, handleSliderPointerUp, sliderStyle } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('slider', { orientation: props.orientation }),\n onPointerDown: handleSliderPointerDown,\n onPointerMove: handleSliderPointerMove,\n onPointerUp: handleSliderPointerUp,\n style: { ...sliderStyle, ...colorpicker?.sx('slider') },\n 'data-orientation': props.orientation,\n 'data-channel': props.channel\n },\n colorpicker?.ptm('slider'),\n ptmi('root')\n );\n\n return (\n <ColorPickerSliderProvider value={instance}>\n <Component\n instance={instance}\n attrs={rootProps}\n children={\n props.children ?? (\n <>\n <ColorPickerTransparencyGrid />\n <ColorPickerSliderTrack />\n <ColorPickerSliderThumb />\n </>\n )\n }\n />\n </ColorPickerSliderProvider>\n );\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { useColorPickerSliderContext } from '../slider/ColorPickerSlider.context';\nimport { defaultSliderThumbProps } from './ColorPickerSliderThumb.props';\n\nexport const ColorPickerSliderThumb = withComponent({\n name: 'ColorPickerSliderThumb',\n defaultProps: defaultSliderThumbProps,\n setup() {\n const colorpicker = useColorPickerContext();\n const colorpickerslider = useColorPickerSliderContext();\n\n return { colorpicker, colorpickerslider };\n },\n render(instance) {\n const { props, ptmi, colorpicker, colorpickerslider } = instance;\n\n const disabled = !!(colorpickerslider?.props.disabled || colorpicker?.props.disabled);\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('slider-thumb', { disabled: colorpickerslider?.props.disabled || colorpicker?.props.disabled }),\n role: 'slider',\n tabIndex: disabled ? -1 : 0,\n onKeyDown: colorpickerslider?.handleSliderKeyDown,\n 'data-orientation': colorpickerslider?.props.orientation,\n 'data-channel': colorpickerslider?.props.channel,\n 'aria-orientation': colorpickerslider?.props.orientation,\n 'aria-disabled': disabled,\n 'aria-label': `${colorpickerslider?.props.channel} slider`,\n 'aria-valuemin': colorpickerslider?.channelRange?.min ?? 0,\n 'aria-valuemax': colorpickerslider?.channelRange?.max ?? 100,\n 'aria-valuenow': colorpickerslider?.channelValue,\n 'aria-valuetext': `${colorpickerslider?.props.channel} ${colorpickerslider?.channelValue}`\n },\n colorpicker?.ptm('slider-thumb'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ColorPickerSliderInstance } from '@primereact/types/shared/colorpicker';\n\nexport const [ColorPickerSliderProvider, useColorPickerSliderContext] = createOptionalContext<ColorPickerSliderInstance>();\n","import type { ColorPickerSliderThumbProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultSliderThumbProps: ColorPickerSliderThumbProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { useColorPickerSliderContext } from '../slider/ColorPickerSlider.context';\nimport { defaultSliderTrackProps } from './ColorPickerSliderTrack.props';\n\nexport const ColorPickerSliderTrack = withComponent({\n name: 'ColorPickerSliderTrack',\n defaultProps: defaultSliderTrackProps,\n setup() {\n const colorpicker = useColorPickerContext();\n const colorpickerslider = useColorPickerSliderContext();\n\n return { colorpicker, colorpickerslider };\n },\n render(instance) {\n const { props, ptmi, colorpicker, colorpickerslider } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('slider-track'),\n 'data-orientation': colorpickerslider?.props.orientation,\n 'data-channel': colorpickerslider?.props.channel\n },\n colorpicker?.ptm('slider-track'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ColorPickerSliderTrackProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultSliderTrackProps: ColorPickerSliderTrackProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultTransparencyGridProps } from './ColorPickerTransparencyGrid.props';\n\nexport const ColorPickerTransparencyGrid = withComponent({\n name: 'ColorPickerTransparencyGrid',\n defaultProps: defaultTransparencyGridProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('transparency-grid')\n },\n colorpicker?.ptm('transparency-grid'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ColorPickerTransparencyGridProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultTransparencyGridProps: ColorPickerTransparencyGridProps = {\n as: 'div'\n};\n","import * as HeadlessColorPickerSlider from '@primereact/headless/colorpicker/slider';\nimport type { ColorPickerSliderProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultSliderProps: ColorPickerSliderProps = {\n ...HeadlessColorPickerSlider.defaultProps,\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { ColorPickerSwatchBackground } from '../swatchbackground';\nimport { ColorPickerTransparencyGrid } from '../transparencygrid';\nimport { defaultSwatchProps } from './ColorPickerSwatch.props';\n\nexport const ColorPickerSwatch = withComponent({\n name: 'ColorPickerSwatch',\n defaultProps: defaultSwatchProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('swatch'),\n style: { ...colorpicker?.swatchStyles, ...colorpicker?.sx('swatch') }\n },\n colorpicker?.ptm('swatch'),\n ptmi('root')\n );\n\n return (\n <Component\n instance={instance}\n attrs={rootProps}\n children={\n props.children ?? (\n <>\n <ColorPickerTransparencyGrid />\n <ColorPickerSwatchBackground />\n </>\n )\n }\n />\n );\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useColorPickerContext } from '../ColorPicker.context';\nimport { defaultSwatchBackgroundProps } from './ColorPickerSwatchBackground.props';\n\nexport const ColorPickerSwatchBackground = withComponent({\n name: 'ColorPickerSwatchBackground',\n defaultProps: defaultSwatchBackgroundProps,\n setup() {\n const colorpicker = useColorPickerContext();\n\n return { colorpicker };\n },\n render(instance) {\n const { props, ptmi, colorpicker } = instance;\n\n const rootProps = mergeProps(\n {\n className: colorpicker?.cx('swatchBackground')\n },\n colorpicker?.ptm('swatchBackground'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ColorPickerSwatchBackgroundProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultSwatchBackgroundProps: ColorPickerSwatchBackgroundProps = {\n as: 'div'\n};\n","import type { ColorPickerSwatchProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultSwatchProps: ColorPickerSwatchProps = {\n as: 'div'\n};\n","import type { Color2DAxes, Color3DAxes, ColorChannel, ColorChannelRange, ColorInputChannel, ColorInstance, ColorOutput, ColorSliderChannel, ColorSpace } from '@primereact/types/shared/colorpicker';\n\n// CONSTANTS\nconst HSB_REGEX = /hsb\\(([-+]?\\d+(?:.\\d+)?\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d+(?:.\\d+)?%)\\)|hsba\\(([-+]?\\d+(?:.\\d+)?\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d(.\\d+)?)\\)/;\nconst HSL_REGEX = /hsl\\(([-+]?\\d+(?:.\\d+)?\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d+(?:.\\d+)?%)\\)|hsla\\(([-+]?\\d+(?:.\\d+)?\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d+(?:.\\d+)?%\\s*,\\s*[-+]?\\d(.\\d+)?)\\)/;\nconst HEX_REGEX = /^#?([a-fA-F0-9]{3,8})$/;\nconst RGB_REGEX = /^rgba?\\(\\s*([^)]+)\\s*\\)$/;\nconst OKLCH_REGEX = /oklch\\(\\s*([\\d.]+)%?\\s+([\\d.]+)\\s+([\\d.]+)(deg)?(?:\\s*\\/\\s*([\\d.]+))?\\)/i;\n\n// UTILS\nfunction clamp(value: number, min: number, max: number) {\n return Math.min(Math.max(value, min), max);\n}\n\nexport const isEqual = (a: unknown, b: unknown) => JSON.stringify(a) === JSON.stringify(b);\n\nconst multiplyMatrices = (A: number[], B: number[]) => {\n return [A[0] * B[0] + A[1] * B[1] + A[2] * B[2], A[3] * B[0] + A[4] * B[1] + A[5] * B[2], A[6] * B[0] + A[7] * B[1] + A[8] * B[2]];\n};\n\n/**\n * Snaps a value to the nearest step increment within min/max bounds\n * @example snap(23.7, 0, 100, 5) => 25\n * @example snap(0.234, 0, 1, 0.01) => 0.23\n */\nfunction snap(value: number, min: number, max: number, step: number) {\n const clamped = clamp(value, min, max);\n\n const offset = clamped - min;\n const steps = Math.round(offset / step);\n\n const snapped = min + steps * step;\n\n const precision = (step.toString().split('.')[1] || '').length;\n\n return parseFloat(snapped.toFixed(precision));\n}\n\nabstract class Color {\n abstract clone(): ColorInstance;\n abstract toString(format: ColorOutput): string;\n abstract toFormat(format: ColorSpace): ColorInstance;\n abstract toJSON(): Record<string, number>;\n abstract getChannelRange(channel: ColorChannel): ColorChannelRange;\n abstract getFormat(): ColorSpace;\n abstract getChannels(): [ColorChannel, ColorChannel, ColorChannel];\n\n getChannelValue(channel: ColorChannel): number {\n if (channel in this) {\n return this[channel as keyof this] as number;\n }\n\n throw new Error(`Channel ${channel} not found`);\n }\n\n withChannelValue(channel: ColorChannel, value: number): ColorInstance {\n const { min, max } = this.getChannelRange(channel);\n\n if (channel in this) {\n const cloned = this.clone();\n\n // @ts-expect-error - channel\n cloned[channel] = clamp(value, min, max);\n\n return cloned;\n }\n\n throw new Error(`Channel ${channel} not found`);\n }\n\n getSpaceAxes(xyChannels: Color2DAxes): Color3DAxes {\n const { xChannel, yChannel } = xyChannels;\n\n if (xChannel === yChannel) {\n throw new Error('xChannel and yChannel cannot be the same');\n }\n\n const zChannel = this.getChannels().find((channel) => channel !== xChannel && channel !== yChannel);\n\n if (!zChannel) {\n throw new Error('zChannel not found');\n }\n\n return { xChannel, yChannel, zChannel };\n }\n\n incChannelValue(channel: ColorChannel, step: number): ColorInstance {\n const { min, max, step: availableStep } = this.getChannelRange(channel);\n\n const value = snap(clamp(this.getChannelValue(channel) + step, min, max), min, max, availableStep);\n\n return this.withChannelValue(channel, value);\n }\n\n decChannelValue(channel: ColorChannel, step: number): ColorInstance {\n return this.incChannelValue(channel, -step);\n }\n}\n\nexport class HSBColor extends Color {\n private hue: number;\n private saturation: number;\n private brightness: number;\n private alpha: number;\n\n constructor(hue: number, saturation: number, brightness: number, alpha: number) {\n super();\n this.hue = hue;\n this.saturation = saturation;\n this.brightness = brightness;\n this.alpha = alpha;\n }\n\n static parse(value: string): HSBColor | undefined {\n const match = value.match(HSB_REGEX);\n\n if (!match) return undefined;\n\n const [h, s, b, a] = (match[1] ?? match[2]).split(',').map((n) => Number(n.trim().replace('%', '')));\n\n return new HSBColor(h % 360, clamp(s, 0, 100), clamp(b, 0, 100), clamp(a ?? 1, 0, 1));\n }\n\n private toRGB(): RGBColor {\n const h = this.hue;\n const s = this.saturation / 100;\n const b = this.brightness / 100;\n\n function f(n: number) {\n const k = (n + h / 60) % 6;\n\n return b - b * s * Math.max(0, Math.min(k, 4 - k, 1));\n }\n\n const scale = 255;\n\n return new RGBColor(Math.round(f(5) * scale), Math.round(f(3) * scale), Math.round(f(1) * scale), Number(this.alpha.toFixed(2)));\n }\n\n private toHSL(): HSLColor {\n const h = this.hue;\n let s = this.saturation / 100;\n const b = this.brightness / 100;\n\n const l = b * (1 - s / 2);\n\n if (l === 0 || l === 1) {\n s = 0;\n } else {\n s = (b - l) / Math.min(l, 1 - l);\n }\n\n return new HSLColor(Number(h.toFixed(2)), Number((s * 100).toFixed(2)), Number((l * 100).toFixed(2)), Number(this.alpha.toFixed(2)));\n }\n\n toFormat(format: ColorSpace): ColorInstance {\n switch (format) {\n case 'hsba':\n return this;\n case 'rgba':\n return this.toRGB();\n case 'hsla':\n return this.toHSL();\n case 'oklcha':\n return this.toRGB().toFormat('oklcha');\n default:\n throw new Error(`Invalid format: ${format}`);\n }\n }\n\n toString(format: ColorOutput): string {\n switch (format) {\n case 'css':\n return this.toHSL().toString('css');\n case 'hex':\n return this.toRGB().toString('hex');\n case 'hexa':\n return this.toRGB().toString('hexa');\n case 'hsb':\n return `hsb(${this.hue}, ${this.saturation.toFixed(2)}%, ${this.brightness.toFixed(2)}%)`;\n case 'hsba':\n return `hsba(${this.hue}, ${this.saturation.toFixed(2)}%, ${this.brightness.toFixed(2)}%, ${this.alpha})`;\n case 'hsl':\n return this.toHSL().toString('hsl');\n case 'rgb':\n return this.toRGB().toString('rgb');\n case 'oklch':\n return this.toRGB().toFormat('oklcha').toString('oklch');\n default:\n return this.toFormat(format).toString(format);\n }\n }\n\n toJSON() {\n return {\n hue: this.hue,\n saturation: this.saturation,\n brightness: this.brightness,\n alpha: this.alpha\n };\n }\n\n clone(): ColorInstance {\n return new HSBColor(this.hue, this.saturation, this.brightness, this.alpha);\n }\n\n getChannelRange(channel: ColorChannel): ColorChannelRange {\n switch (channel) {\n case 'hue':\n return { min: 0, max: 360, step: 1 };\n case 'saturation':\n case 'brightness':\n return { min: 0, max: 100, step: 1 };\n case 'alpha':\n return { min: 0, max: 1, step: 0.01 };\n default:\n throw new Error('Unknown color channel: ' + channel);\n }\n }\n\n getFormat(): ColorSpace {\n return 'hsba';\n }\n\n getChannels(): [ColorChannel, ColorChannel, ColorChannel] {\n return ['hue', 'saturation', 'brightness'];\n }\n}\n\nexport class HSLColor extends Color {\n private hue: number;\n private saturation: number;\n private lightness: number;\n private alpha: number;\n\n constructor(hue: number, saturation: number, lightness: number, alpha: number) {\n super();\n this.hue = hue;\n this.saturation = saturation;\n this.lightness = lightness;\n this.alpha = alpha;\n }\n\n static parse(value: string): HSLColor | undefined {\n const match = value.match(HSL_REGEX);\n\n if (!match) return undefined;\n\n const [h, s, l, a] = (match[1] || match[2])?.split(',').map((n) => Number(n.trim().replace('%', ''))) ?? [];\n\n return new HSLColor(h % 360, clamp(s, 0, 100), clamp(l, 0, 100), clamp(a ?? 1, 0, 1));\n }\n\n private toRGB(): RGBColor {\n const h = this.hue;\n const s = this.saturation / 100;\n const l = this.lightness / 100;\n\n function f(n: number) {\n const k = (n + h / 30) % 12;\n const a = s * Math.min(l, 1 - l);\n\n return l - a * Math.max(-1, Math.min(k - 3, 9 - k, 1));\n }\n\n const scale = 255;\n\n return new RGBColor(Math.round(f(0) * scale), Math.round(f(8) * scale), Math.round(f(4) * scale), Number(this.alpha.toFixed(2)));\n }\n\n private toHSB(): HSBColor {\n const h = this.hue;\n let s = this.saturation / 100;\n const l = this.lightness / 100;\n\n const b = l + s * Math.min(l, 1 - l);\n\n if (b === 0) {\n s = 0;\n } else {\n s = 2 * (1 - l / b);\n }\n\n return new HSBColor(Number(h.toFixed(2)), Number((s * 100).toFixed(2)), Number((b * 100).toFixed(2)), Number(this.alpha.toFixed(2)));\n }\n\n toFormat(format: ColorSpace): ColorInstance {\n switch (format) {\n case 'hsla':\n return this;\n case 'rgba':\n return this.toRGB();\n case 'hsba':\n return this.toHSB();\n case 'oklcha':\n return this.toRGB().toFormat('oklcha');\n default:\n throw new Error(`Invalid format: ${format}`);\n }\n }\n\n toString(format: ColorOutput): string {\n switch (format) {\n case 'hex':\n return this.toRGB().toString('hex');\n case 'hexa':\n return this.toRGB().toString('hexa');\n case 'hsl':\n return `hsl(${this.hue}, ${this.saturation.toFixed(2)}%, ${this.lightness.toFixed(2)}%)`;\n case 'css':\n case 'hsla':\n return `hsla(${this.hue}, ${this.saturation.toFixed(2)}%, ${this.lightness.toFixed(2)}%, ${this.alpha})`;\n case 'rgb':\n return this.toRGB().toString('rgb');\n case 'hsb':\n return this.toHSB().toString('hsb');\n case 'oklch':\n return this.toRGB().toFormat('oklcha').toString('oklch');\n default:\n return this.toFormat(format).toString(format);\n }\n }\n\n toJSON(): Record<string, number> {\n return {\n hue: this.hue,\n saturation: this.saturation,\n lightness: this.lightness,\n alpha: this.alpha\n };\n }\n\n clone(): ColorInstance {\n return new HSLColor(this.hue, this.saturation, this.lightness, this.alpha);\n }\n\n getChannelRange(channel: ColorChannel): ColorChannelRange {\n switch (channel) {\n case 'hue':\n return { min: 0, max: 360, step: 1 };\n case 'saturation':\n case 'lightness':\n return { min: 0, max: 100, step: 1 };\n case 'alpha':\n return { min: 0, max: 1, step: 0.01 };\n default:\n throw new Error('Unknown color channel: ' + channel);\n }\n }\n\n getFormat(): ColorSpace {\n return 'hsla';\n }\n\n getChannels(): [ColorChannel, ColorChannel, ColorChannel] {\n return ['hue', 'saturation', 'lightness'];\n }\n}\n\nexport class RGBColor extends Color {\n private red: number;\n private green: number;\n private blue: number;\n private alpha: number;\n\n constructor(red: number, green: number, blue: number, alpha: number) {\n super();\n this.red = red;\n this.green = green;\n this.blue = blue;\n this.alpha = alpha;\n }\n\n static parse(value: string): RGBColor | undefined {\n if (!value) return undefined;\n\n const input = value.trim();\n\n return this.parseHexColor(input) ?? this.parseRgbFunction(input);\n }\n\n private static parseHexColor(input: string): RGBColor | undefined {\n const match = input.match(HEX_REGEX);\n\n if (!match) return undefined;\n\n let hex = match[1];\n\n // Expand shorthand (#abc -> #aabbcc)\n if (hex.length <= 4) {\n hex = hex\n .split('')\n .map((c) => c + c)\n .join('');\n }\n\n if (![6, 8].includes(hex.length)) return undefined;\n\n const r = parseInt(hex.slice(0, 2), 16);\n const g = parseInt(hex.slice(2, 4), 16);\n const b = parseInt(hex.slice(4, 6), 16);\n const a = hex.length === 8 ? parseInt(hex.slice(6, 8), 16) / 255 : 1;\n\n return new RGBColor(r, g, b, a);\n }\n\n private static parseRgbFunction(input: string): RGBColor | undefined {\n const match = input.match(RGB_REGEX);\n\n if (!match?.[1]) return undefined;\n\n const [rStr, gStr, bStr, aStr] = match[1].split(',').map((v) => v.trim());\n\n const r = clamp(Number(rStr), 0, 255);\n const g = clamp(Number(gStr), 0, 255);\n const b = clamp(Number(bStr), 0, 255);\n const a = aStr !== undefined ? clamp(Number(aStr), 0, 1) : 1;\n\n if ([r, g, b, a].some((v) => Number.isNaN(v))) return undefined;\n\n return new RGBColor(r, g, b, a);\n }\n\n private toHSB(): HSBColor {\n const scale = 255;\n const [r, g, b] = [this.red / scale, this.green / scale, this.blue / scale];\n\n const mmax = Math.max(r, g, b);\n const mmin = Math.min(r, g, b);\n\n const chroma = mmax - mmin;\n const brightness = mmax;\n\n const saturation = mmax === 0 ? 0 : chroma / mmax;\n\n let hue = 0;\n\n if (chroma !== 0) {\n switch (mmax) {\n case r:\n hue = ((g - b) / chroma) % 6;\n break;\n case g:\n hue = (b - r) / chroma + 2;\n break;\n case b:\n hue = (r - g) / chroma + 4;\n break;\n }\n\n hue *= 60;\n\n if (hue < 0) {\n hue += 360;\n }\n }\n\n return new HSBColor(Number(hue.toFixed(2)), Number((saturation * 100).toFixed(2)), Number((brightness * 100).toFixed(2)), Number(this.alpha.toFixed(2)));\n }\n\n private toHSL(): HSLColor {\n const scale = 255;\n const [r, g, b] = [this.red / scale, this.green / scale, this.blue / scale];\n\n const mmax = Math.max(r, g, b);\n const mmin = Math.min(r, g, b);\n\n const lightness = (mmax + mmin) / 2;\n const chroma = mmax - mmin;\n\n let hue = 0;\n let saturation = -1;\n\n if (chroma !== 0) {\n switch (mmax) {\n case r:\n hue = ((g - b) / chroma) % 6;\n break;\n case g:\n hue = (b - r) / chroma + 2;\n break;\n case b:\n hue = (r - g) / chroma + 4;\n break;\n }\n\n hue *= 60;\n\n if (hue < 0) {\n hue += 360;\n }\n }\n\n if (lightness === 0 || lightness === 1) {\n saturation = 0;\n } else {\n saturation = chroma / (1 - Math.abs(2 * mmax - chroma - 1));\n }\n\n return new HSLColor(Number(hue.toFixed(2)), Number((saturation * 100).toFixed(2)), Number((lightness * 100).toFixed(2)), Number(this.alpha.toFixed(2)));\n }\n\n private toOKLCH(): OKLCHColor {\n const rgb = [this.red / 255, this.green / 255, this.blue / 255];\n\n const rgbLinear = rgb.map((c) => (Math.abs(c) <= 0.04045 ? c / 12.92 : (c < 0 ? -1 : 1) * ((Math.abs(c) + 0.055) / 1.055) ** 2.4));\n\n const xyz = multiplyMatrices([0.41239079926595934, 0.357584339383878, 0.1804807884018343, 0.21263900587151027, 0.715168678767756, 0.07219231536073371, 0.01933081871559182, 0.11919477979462598, 0.9505321522496607], rgbLinear);\n\n const LMS = multiplyMatrices([0.819022437996703, 0.3619062600528904, -0.1288737815209879, 0.0329836539323885, 0.9292868615863434, 0.0361446663506424, 0.0481771893596242, 0.2642395317527308, 0.6335478284694309], xyz);\n\n const LMSg = LMS.map((val) => Math.cbrt(val));\n\n const [L, a, b] = multiplyMatrices([0.210454268309314, 0.7936177747023054, -0.0040720430116193, 1.9779985324311684, -2.4285922420485799, 0.450593709617411, 0.0259040424655478, 0.7827717124575296, -0.8086757549230774], LMSg);\n\n const C = Math.sqrt(a ** 2 + b ** 2);\n const H = Math.abs(a) < 0.0002 && Math.abs(b) < 0.0002 ? NaN : ((((Math.atan2(b, a) * 180) / Math.PI) % 360) + 360) % 360;\n\n const outL = Number(Math.min(1, Math.max(0, L)).toFixed(4));\n\n const outC = Number(C.toFixed(4));\n\n const outH = Number.isNaN(H) ? NaN : Number(H.toFixed(2));\n\n return new OKLCHColor(outL, outC, outH, Number(this.alpha.toFixed(2)));\n }\n\n toHexInt(): number {\n return (this.red << 16) | (this.green << 8) | this.blue;\n }\n\n toFormat(format: ColorSpace): ColorInstance {\n switch (format) {\n case 'rgba':\n return this;\n case 'hsla':\n return this.toHSL();\n case 'hsba':\n return this.toHSB();\n case 'oklcha':\n return this.toOKLCH();\n default:\n throw new Error(`Invalid format: ${format}`);\n }\n }\n\n toString(format: ColorOutput): string {\n switch (format) {\n case 'hex':\n return `#${this.red.toString(16).padStart(2, '0')}${this.green.toString(16).padStart(2, '0')}${this.blue.toString(16).padStart(2, '0')}`;\n case 'hexa':\n return `#${this.red.toString(16).padStart(2, '0')}${this.green.toString(16).padStart(2, '0')}${this.blue.toString(16).padStart(2, '0')}${Math.round(this.alpha * 255)\n .toString(16)\n .padStart(2, '0')}`;\n case 'rgb':\n return `rgb(${this.red}, ${this.green}, ${this.blue})`;\n case 'rgba':\n case 'css':\n return `rgba(${this.red}, ${this.green}, ${this.blue}, ${this.alpha})`;\n case 'hsl':\n return this.toHSL().toString('hsl');\n case 'hsb':\n return this.toHSB().toString('hsb');\n case 'oklch':\n return this.toOKLCH().toString('oklch');\n default:\n return this.toFormat(format).toString(format);\n }\n }\n\n toJSON(): Record<string, number> {\n return {\n red: this.red,\n green: this.green,\n blue: this.blue,\n alpha: this.alpha\n };\n }\n\n clone(): ColorInstance {\n return new RGBColor(this.red, this.green, this.blue, this.alpha);\n }\n\n getChannelRange(channel: ColorChannel): ColorChannelRange {\n switch (channel) {\n case 'red':\n case 'green':\n case 'blue':\n return { min: 0, max: 255, step: 1 };\n case 'alpha':\n return { min: 0, max: 1, step: 0.01 };\n default:\n throw new Error('Unknown color channel: ' + channel);\n }\n }\n\n getFormat(): ColorSpace {\n return 'rgba';\n }\n\n getChannels(): [ColorChannel, ColorChannel, ColorChannel] {\n return ['red', 'green', 'blue'];\n }\n}\n\nexport class OKLCHColor extends Color {\n private L: number; // 0–1\n private C: number; // ~0–0.4 typical usable range\n private H: number; // 0–360\n private alpha: number; // 0–1\n\n constructor(L: number, C: number, H: number, alpha: number) {\n super();\n this.L = L;\n this.C = C;\n this.H = H;\n this.alpha = alpha;\n }\n\n static parse(value: string): OKLCHColor | undefined {\n if (!value) return undefined;\n\n const m = value.trim().match(OKLCH_REGEX);\n\n if (!m) return;\n\n const l = Number(m[1]) / 100;\n const c = Number(m[2]);\n const h = Number(m[3]);\n const alpha = m[5] !== undefined ? Number(m[5]) : 1;\n\n return new OKLCHColor(l, c, h, alpha);\n }\n\n private toRGB(): RGBColor {\n const L = this.L;\n const a = Number.isNaN(this.H) ? 0 : this.C * Math.cos((this.H * Math.PI) / 180);\n const b = Number.isNaN(this.H) ? 0 : this.C * Math.sin((this.H * Math.PI) / 180);\n\n const LMSg = multiplyMatrices([1, 0.3963377774, 0.2158037573, 1, -0.1055613458, -0.0638541728, 1, -0.0894841775, -1.291485548], [L, a, b]);\n\n const LMS = LMSg.map((v) => v ** 3);\n\n const xyz = multiplyMatrices([1.2268798758, -0.5578149945, 0.2813910457, -0.0405757452, 1.1122868033, -0.0717110581, -0.0763729367, -0.4214933324, 1.5869240198], LMS);\n\n let [r, g, b2] = multiplyMatrices([3.240969942, -1.537383178, -0.49861076, -0.969243636, 1.875967502, 0.041555057, 0.05563008, -0.203976959, 1.056971514], xyz);\n\n [r, g, b2] = [r, g, b2].map((c) => (Math.abs(c) > 0.0031308 ? (c < 0 ? -1 : 1) * (1.055 * Math.abs(c) ** (1 / 2.4) - 0.055) : 12.92 * c));\n\n return new RGBColor(Math.round(clamp(r, 0, 1) * 255), Math.round(clamp(g, 0, 1) * 255), Math.round(clamp(b2, 0, 1) * 255), Number(this.alpha.toFixed(2)));\n }\n\n toJSON(): Record<string, number> {\n return {\n L: this.L,\n C: this.C,\n H: this.H,\n alpha: this.alpha\n };\n }\n\n clone(): ColorInstance {\n return new OKLCHColor(this.L, this.C, this.H, this.alpha);\n }\n\n toFormat(format: ColorSpace): ColorInstance {\n switch (format) {\n case 'oklcha':\n return this;\n case 'rgba':\n return this.toRGB();\n case 'hsla':\n return this.toRGB().toFormat('hsla');\n case 'hsba':\n return this.toRGB().toFormat('hsba');\n default:\n throw new Error(`Invalid format: ${format}`);\n }\n }\n\n toString(format: ColorOutput): string {\n switch (format) {\n case 'hex':\n return this.toRGB().toString('hex');\n case 'hexa':\n return this.toRGB().toString('hexa');\n\n case 'oklch': {\n const l = Number.isNaN(this.L) ? 0 : Number((this.L * 100).toFixed(2));\n const c = Number.isNaN(this.C) ? 0 : Number(this.C.toFixed(4));\n const h = Number.isNaN(this.H) ? 0 : Number(this.H.toFixed(2));\n\n return `oklch(${l}% ${c} ${h})`;\n }\n\n case 'oklcha':\n\n case 'css': {\n const l = Number.isNaN(this.L) ? 0 : Number((this.L * 100).toFixed(2));\n const c = Number.isNaN(this.C) ? 0 : Number(this.C.toFixed(4));\n const h = Number.isNaN(this.H) ? 0 : Number(this.H.toFixed(2));\n const a = Number.isNaN(this.alpha) ? 1 : Number(this.alpha.toFixed(2));\n\n return `oklch(${l}% ${c} ${h} / ${a})`;\n }\n\n case 'hsl':\n return this.toRGB().toString('hsl');\n case 'hsb':\n return this.toRGB().toString('hsb');\n case 'rgb':\n return this.toRGB().toString('rgb');\n default:\n return this.toFormat(format).toString(format);\n }\n }\n\n getChannelRange(channel: ColorChannel): ColorChannelRange {\n switch (channel) {\n case 'L':\n return { min: 0, max: 1, step: 0.01 };\n case 'C':\n return { min: 0, max: 0.4, step: 0.01 };\n case 'H':\n return { min: 0, max: 360, step: 1 };\n case 'alpha':\n return { min: 0, max: 1, step: 0.01 };\n default:\n throw new Error('Unknown color channel: ' + channel);\n }\n }\n\n getFormat(): ColorSpace {\n return 'oklcha';\n }\n\n getChannels(): [ColorChannel, ColorChannel, ColorChannel] {\n return ['L', 'C', 'H'];\n }\n}\n\nexport const parseColor = (color: string): ColorInstance => {\n const parsedColor = RGBColor.parse(color) ?? HSLColor.parse(color) ?? HSBColor.parse(color) ?? undefined;\n\n if (!parsedColor) {\n throw new Error(`Invalid color: ${color}`);\n }\n\n return parsedColor;\n};\n\nexport function getChannelGradient(channel: ColorSliderChannel, value: ColorInstance, orientation: 'horizontal' | 'vertical') {\n const { min, max } = value.getChannelRange(channel);\n\n const direction = orientation === 'horizontal' ? 'right' : 'bottom';\n\n switch (channel) {\n case 'hue':\n return `linear-gradient(to ${direction}, rgb(255, 0, 0) 0%, rgb(255, 255, 0) 17%, rgb(0, 255, 0) 33%, rgb(0, 255, 255) 50%, rgb(0, 0, 255) 67%, rgb(255, 0, 255) 83%, rgb(255, 0, 0) 100%)`;\n\n case 'lightness': {\n const start = value.withChannelValue(channel, min).toString('css');\n const middle = value.withChannelValue(channel, (max - min) / 2).toString('css');\n const end = value.withChannelValue(channel, max).toString('css');\n\n return `linear-gradient(to ${direction}, ${start}, ${middle}, ${end})`;\n }\n\n case 'red':\n case 'green':\n case 'blue':\n case 'saturation':\n case 'brightness':\n\n case 'alpha': {\n const start = value.withChannelValue(channel, min).toString('css');\n const end = value.withChannelValue(channel, max).toString('css');\n\n return `linear-gradient(to ${direction}, ${start}, ${end})`;\n }\n\n default:\n throw new Error(`Unknown color channel: ${channel}`);\n }\n}\n\nexport function getChannelColor(color: ColorInstance, channel: ColorChannel) {\n switch (channel) {\n case 'hue':\n return parseColor(`hsl(${color.getChannelValue('hue')}, 100%, 50%)`);\n\n case 'red':\n case 'green':\n case 'blue':\n case 'lightness':\n case 'brightness':\n case 'saturation':\n return color.withChannelValue('alpha', 1);\n\n case 'alpha': {\n return color;\n }\n\n default:\n throw new Error('Unknown color channel: ' + channel);\n }\n}\n\nconst channelGenerators = {\n hue: (color: ColorInstance) => [0, 60, 120, 180, 240, 300, 360].map((h) => color.withChannelValue('hue', h).toString('css')).join(', '),\n\n saturation: (color: ColorInstance) => `${color.withChannelValue('saturation', 0).toString('css')}, transparent`,\n\n lightness: () => 'black, transparent, white',\n brightness: () => 'black, transparent'\n};\n\nexport function getAreaGradient(color: ColorInstance, axes: Color2DAxes) {\n const { xChannel, zChannel } = color.getSpaceAxes(axes);\n const zValue = color.getChannelValue(zChannel);\n const baseFormat = color.getFormat();\n\n const format = baseFormat === 'rgba' || baseFormat === 'oklcha' ? 'hsba' : baseFormat;\n\n const base = (format === 'hsla' ? parseColor('hsl(0, 100%, 50%)') : parseColor('hsb(0, 100%, 100%)')).withChannelValue(zChannel, zValue);\n\n const channels = color.getChannels();\n\n const direction = (c: string) => (c === xChannel ? 'right' : 'top');\n\n const layers = channels\n .filter((c) => c !== zChannel)\n .map((c) => `linear-gradient(to ${direction(c)}, ${channelGenerators[c as keyof typeof channelGenerators](base)})`)\n .reverse();\n\n if (zChannel === 'hue') {\n layers.push(base.toString('css'));\n }\n\n return {\n '--area-gradient': layers.join(', ')\n };\n}\n\nexport function getInputChannelValue(color: ColorInstance, channel: ColorInputChannel, format: ColorSpace = 'hsba') {\n const isHSL = color.getFormat() === 'hsla';\n\n switch (channel) {\n case 'hex': {\n if (color.getChannelValue('alpha') < color.getChannelRange('alpha').max) {\n return color.toString('hexa');\n }\n\n return color.toString('hex');\n }\n\n case 'css':\n return color.toFormat(format).toString('css');\n\n case 'red':\n case 'green':\n case 'blue':\n return color.toFormat('rgba').getChannelValue(channel).toString();\n\n case 'hue':\n return color\n .toFormat(isHSL ? 'hsla' : 'hsba')\n .getChannelValue('hue')\n .toString();\n\n case 'saturation':\n return color\n .toFormat(isHSL ? 'hsla' : 'hsba')\n .getChannelValue('saturation')\n .toString();\n\n case 'lightness':\n return color.toFormat('hsla').getChannelValue('lightness').toString();\n\n case 'brightness':\n return color.toFormat('hsba').getChannelValue('brightness').toString();\n\n case 'C':\n return color.toFormat('oklcha').getChannelValue('C').toString();\n case 'H':\n return color.toFormat('oklcha').getChannelValue('H').toString();\n case 'L':\n return color.toFormat('oklcha').getChannelValue('L').toString();\n default:\n return color.getChannelValue(channel).toString();\n }\n}\n\nexport function getInputChannelRange(color: ColorInstance, channel: ColorInputChannel = 'hex'): ColorChannelRange | undefined {\n switch (channel) {\n case 'hex': {\n return {\n min: (parseColor('#000000') as RGBColor).toHexInt(),\n max: (parseColor('#FFFFFF') as RGBColor).toHexInt(),\n step: 1\n };\n }\n\n case 'css':\n return undefined;\n\n case 'red':\n case 'green':\n case 'blue':\n return color.toFormat('rgba').getChannelRange(channel);\n\n case 'hue':\n case 'lightness':\n case 'saturation':\n return color.toFormat('hsla').getChannelRange(channel);\n\n case 'brightness':\n return color.toFormat('hsba').getChannelRange(channel);\n\n case 'L':\n case 'C':\n case 'H':\n return color.toFormat('oklcha').getChannelRange(channel);\n\n default:\n return color.getChannelRange(channel);\n }\n}\n","import type { useColorPickerSliderProps } from '@primereact/types/shared/colorpicker';\n\nexport const defaultProps: useColorPickerSliderProps = {\n channel: 'hue',\n orientation: 'horizontal',\n disabled: false\n};\n"],"mappings":"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","names":["withHeadless","Component","useColorPicker","styles","mergeProps","withComponentInCore","baseStyles","withComponent","name","defaultProps","styles","__spreadProps","__spreadValues","baseStyles","components","setup","render","withComponentInCore","React","createOptionalContext","ColorPickerProvider","useColorPickerContext","HeadlessColorPicker","defaultProps","__spreadValues","Component","mergeProps","React","Component","mergeProps","React","defaultAreaBackgroundProps","ColorPickerAreaBackground","withComponent","defaultAreaBackgroundProps","useColorPickerContext","instance","props","ptmi","colorpicker","rootProps","mergeProps","Component","Component","mergeProps","React","defaultAreaThumbProps","ColorPickerAreaThumb","withComponent","defaultAreaThumbProps","useColorPickerContext","instance","_a","_b","props","ptmi","colorpicker","disabled","rootProps","mergeProps","Component","defaultAreaProps","ColorPickerArea","withComponent","defaultAreaProps","useColorPickerContext","instance","_a","props","ptmi","colorpicker","rootProps","mergeProps","__spreadValues","Component","ColorPickerAreaBackground","ColorPickerAreaThumb","Component","EyeDropperIcon","mergeProps","Component","useButton","styles","mergeProps","React","createOptionalContext","ButtonProvider","useButtonContext","HeadlessButton","defaultProps","__spreadProps","__spreadValues","Component","groupStyles","mergeProps","React","createOptionalContext","ButtonGroupProvider","useButtonGroupContext","defaultGroupProps","ButtonGroup","withComponent","defaultGroupProps","groupStyles","instance","props","ptmi","cx","rootProps","mergeProps","ButtonGroupProvider","Component","Button","withComponent","defaultProps","styles","instance","useButton","id","props","ptmi","cx","rootProps","mergeProps","ButtonProvider","Component","ButtonGroup","React","defaultEyeDropperProps","__spreadProps","__spreadValues","defaultProps","ColorPickerEyeDropper","withComponent","defaultEyeDropperProps","useColorPickerContext","instance","_a","props","ptmi","colorpicker","rootProps","mergeProps","icon","EyeDropperIcon","Component","Button","__spreadValues","Component","useColorPickerInput","mergeProps","Component","useInputText","styles","mergeProps","Component","useFluid","styles","mergeProps","React","createOptionalContext","FluidProvider","useFluidContext","HeadlessFluid","defaultProps","__spreadProps","__spreadValues","Fluid","withComponent","defaultProps","styles","instance","useFluid","id","props","ptmi","cx","rootProps","mergeProps","FluidProvider","Component","React","createOptionalContext","InputTextProvider","useInputTextContext","HeadlessInputText","defaultProps","__spreadProps","__spreadValues","InputText","withComponent","defaultProps","styles","instance","inputtext","useInputText","fluid","useFluidContext","__spreadProps","__spreadValues","id","props","ptmi","cx","rootProps","mergeProps","InputTextProvider","Component","React","createOptionalContext","ColorPickerInputProvider","useColorPickerInputContext","HeadlessColorPickerInput","defaultInputProps","__spreadValues","defaultProps","ColorPickerInput","withComponent","defaultInputProps","instance","colorpicker","useColorPickerContext","colorpickerinput","useColorPickerInput","__spreadValues","props","ptmi","type","channelRange","channelValue","handleBlur","handleKeyDown","rootProps","mergeProps","ColorPickerInputProvider","Component","InputText","Component","useColorPickerSlider","mergeProps","React","Component","mergeProps","React","createOptionalContext","ColorPickerSliderProvider","useColorPickerSliderContext","defaultSliderThumbProps","ColorPickerSliderThumb","withComponent","defaultSliderThumbProps","colorpicker","useColorPickerContext","colorpickerslider","useColorPickerSliderContext","instance","_a","_b","_c","_d","props","ptmi","disabled","rootProps","mergeProps","Component","Component","mergeProps","React","defaultSliderTrackProps","ColorPickerSliderTrack","withComponent","defaultSliderTrackProps","colorpicker","useColorPickerContext","colorpickerslider","useColorPickerSliderContext","instance","props","ptmi","rootProps","mergeProps","Component","Component","mergeProps","React","defaultTransparencyGridProps","ColorPickerTransparencyGrid","withComponent","defaultTransparencyGridProps","useColorPickerContext","instance","props","ptmi","colorpicker","rootProps","mergeProps","Component","HeadlessColorPickerSlider","defaultSliderProps","__spreadProps","__spreadValues","ColorPickerSlider","withComponent","defaultSliderProps","instance","colorpicker","useColorPickerContext","colorpickerslider","useColorPickerSlider","__spreadProps","__spreadValues","_a","props","ptmi","handleSliderPointerDown","handleSliderPointerMove","handleSliderPointerUp","sliderStyle","rootProps","mergeProps","ColorPickerSliderProvider","Component","ColorPickerTransparencyGrid","ColorPickerSliderTrack","ColorPickerSliderThumb","Component","mergeProps","React","Component","mergeProps","React","defaultSwatchBackgroundProps","ColorPickerSwatchBackground","withComponent","defaultSwatchBackgroundProps","useColorPickerContext","instance","props","ptmi","colorpicker","rootProps","mergeProps","Component","defaultSwatchProps","ColorPickerSwatch","withComponent","defaultSwatchProps","useColorPickerContext","instance","_a","props","ptmi","colorpicker","rootProps","mergeProps","__spreadValues","Component","ColorPickerTransparencyGrid","ColorPickerSwatchBackground","ColorPicker","withComponent","defaultProps","styles","instance","useColorPicker","props","ptmi","rootProps","mergeProps","ColorPickerProvider","Component","ColorPickerArea","ColorPickerAreaBackground","ColorPickerAreaThumb","ColorPickerSlider","ColorPickerSliderThumb","ColorPickerSliderTrack","ColorPickerTransparencyGrid","ColorPickerSwatch","ColorPickerSwatchBackground","ColorPickerEyeDropper","ColorPickerInput","React","HSB_REGEX","HSL_REGEX","HEX_REGEX","RGB_REGEX","OKLCH_REGEX","clamp","value","min","max","multiplyMatrices","A","B","snap","value","min","max","step","offset","clamp","steps","snapped","precision","Color","channel","cloned","xyChannels","xChannel","yChannel","zChannel","availableStep","HSBColor","_HSBColor","hue","saturation","brightness","alpha","_a","match","HSB_REGEX","h","s","b","a","n","f","k","scale","RGBColor","l","HSLColor","format","_HSLColor","lightness","_b","HSL_REGEX","_RGBColor","red","green","blue","input","HEX_REGEX","hex","c","g","RGB_REGEX","rStr","gStr","bStr","aStr","v","r","mmax","mmin","chroma","rgbLinear","xyz","LMSg","val","L","C","H","outL","outC","outH","OKLCHColor","_OKLCHColor","m","OKLCH_REGEX","LMS","b2","parseColor","color","_c","parsedColor","getChannelGradient","orientation","direction","start","middle","end","getChannelColor","defaultProps","useColorPickerSlider","withHeadless","defaultProps","props","_a","_b","channel","orientation","disabled","colorpicker","useColorPickerContext","isSliderDragging","setIsSliderDragging","state","workingValue","moveSlider","x","y","element","rect","rel","clamped","channelRange","targetValue","currentValue","delta","newColor","handleSliderPointerDown","event","handleSliderPointerMove","handleSliderPointerUp","handleSliderKeyDown","key","isVertical","base","step","next","channelValue","offset","sliderStyle","getChannelGradient","getChannelColor"]}
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- export declare const useColorPickerSlider: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/colorpicker").useColorPickerSliderProps, unknown, {
3
- state: {
4
- isSliderDragging: boolean;
5
- };
6
- handleSliderPointerDown: (event: PointerEvent) => void;
7
- handleSliderPointerMove: (event: PointerEvent) => void;
8
- handleSliderPointerUp: (event: PointerEvent) => void;
9
- handleSliderKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;
10
- sliderStyle: React.CSSProperties;
11
- channelValue: number;
12
- channelRange: import("@primereact/types/shared/colorpicker").ColorChannelRange;
13
- }>;
@@ -1,2 +0,0 @@
1
- import type { useColorPickerSliderProps } from '@primereact/types/shared/colorpicker';
2
- export declare const defaultProps: useColorPickerSliderProps;
@@ -1,26 +0,0 @@
1
- import type { ColorInstance } from '@primereact/types/shared/colorpicker';
2
- import * as React from 'react';
3
- export declare const useColorPicker: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/colorpicker").useColorPickerProps, unknown, {
4
- state: {
5
- value: ColorInstance;
6
- isAreaDragging: boolean;
7
- };
8
- value: ColorInstance | undefined;
9
- areaValue: ColorInstance;
10
- areaChannels: {
11
- xChannel: import("@primereact/types/shared/colorpicker").ColorChannel;
12
- yChannel: import("@primereact/types/shared/colorpicker").ColorChannel;
13
- };
14
- setValue: (inValue: unknown | ((prev?: ColorInstance | undefined) => unknown)) => void;
15
- handleAreaPointerDown: (event: PointerEvent) => void;
16
- handleAreaPointerMove: (event: PointerEvent) => void;
17
- handleAreaPointerUp: (event: PointerEvent) => void;
18
- handleAreaKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;
19
- areaStyles: React.CSSProperties;
20
- swatchStyles: React.CSSProperties;
21
- openEyeDropper: () => void;
22
- syncChannelInputs: (color?: ColorInstance) => void;
23
- registerInputEl: (el: {
24
- elementRef: React.RefObject<HTMLInputElement>;
25
- }) => void;
26
- }>;
@@ -1,2 +0,0 @@
1
- import type { useColorPickerProps } from '@primereact/types/shared/colorpicker';
2
- export declare const defaultProps: useColorPickerProps;
@@ -1,2 +0,0 @@
1
- export * from './useCommandMenu';
2
- export * from './useCommandMenu.props';
@@ -1,2 +0,0 @@
1
- import{withHeadless as F}from"@primereact/core/headless";import{useQueueTask as z}from"@primereact/hooks/use-queue-task";import{getNextElementSibling as N,getPreviousElementSibling as Q,shallowEquals as J}from"@primeuix/utils";import*as g from"react";var k={selected:void 0,defaultSelected:"",onSelectedChange:void 0,selectOnHover:!0,filter:void 0,loop:!1,jump:5};var K="[data-item]",j=`${K}:not([aria-disabled='true'])`,x="[data-group]",q="data-value",ne=F({name:"useCommandMenu",defaultProps:k,setup({props:p}){let b=g.useRef(null),a=g.useRef(p);a.current=p;let M=z(),o=g.useMemo(()=>{var v,R;let e={search:"",selected:(R=(v=a.current.selected)!=null?v:a.current.defaultSelected)!=null?R:"",filtered:{count:0,items:new Map,groups:new Set}},n=new Map,r=new Set,s=new Map,d=new Map,h=new Set;return{subscribe:t=>(h.add(t),()=>h.delete(t)),emit:()=>{h.forEach(t=>t())},snapshot:()=>e,setSearch:t=>{e.search!==t&&(e.search=t,o.filter(),o.sort(),M("searchChange",y),o.emit())},setSelected:t=>{var c,u;if(e.selected!==t){if(e.selected=t,a.current.selected!==void 0){let l=t!=null?t:"";(u=(c=a.current).onSelectedChange)==null||u.call(c,l);return}o.emit()}},registerValue:(t,c,u)=>{var l,L;c&&(c!==((l=n.get(t))==null?void 0:l.value)||!J(u,(L=n.get(t))==null?void 0:L.keywords))&&(n.set(t,{value:c,keywords:u}),e.filtered.items.set(t,A(c,e.search,u)),M("registerValue",()=>{o.sort(),o.emit()}))},registerItem:(t,c)=>{var u;return r.add(t),c&&(d.set(t,c),s.has(c)?(u=s.get(c))==null||u.add(t):s.set(c,new Set([t]))),M("registerItem",()=>{o.filter(),o.sort(),e.selected||y({scroll:!1}),o.emit()}),()=>{n.delete(t),r.delete(t),d.delete(t),e.filtered.items.delete(t);let l=C();M("unregisterItem",()=>{o.filter(),(l==null?void 0:l.getAttribute("id"))===t&&y(),o.emit()})}},registerGroup:t=>(s.has(t)||s.set(t,new Set),()=>{n.delete(t),s.delete(t)}),filter:()=>{let t=e.search.trim();if(!t){e.filtered.count=r.size;return}e.filtered.groups=new Set;let c=0;r.forEach(u=>{var i,f;let l=n.get(u),L=A((i=l==null?void 0:l.value)!=null?i:"",t,(f=l==null?void 0:l.keywords)!=null?f:[]);if(e.filtered.items.set(u,L),L>0){c++;let m=d.get(u);m&&e.filtered.groups.add(m)}}),e.filtered.count=c},sort:()=>{if(!e.search.trim())return;let c=e.filtered.items,u=Array.from(e.filtered.groups,i=>{let m=[...s.get(i)||new Set].reduce((S,H)=>{var w;return Math.max(S,(w=c.get(H))!=null?w:0)},0);return[i,m]}),l=b.current;T().sort((i,f)=>{var m,S;return((m=c.get(f.getAttribute("id")))!=null?m:0)-((S=c.get(i.getAttribute("id")))!=null?S:0)}).forEach(i=>{var H,w;let f=i.parentElement,m=i,S=(H=i.closest(x))!=null?H:l;f!==S&&(m=(w=i.closest(`${x} > *`))!=null?w:i),S&&m&&S.appendChild(m)}),u.sort((i,f)=>f[1]-i[1]).forEach(i=>{var m;let f=l==null?void 0:l.querySelector(`${x}[${q}="${encodeURIComponent(i[0])}"]`);(m=f==null?void 0:f.parentElement)==null||m.appendChild(f)})}}},[]),A=(e,n,r)=>{var d;let s=(d=a.current.filter)!=null?d:W;return e?s(e,n,r):0},$=e=>g.useSyncExternalStore(o.subscribe,()=>e(o.snapshot()),()=>e(o.snapshot()));function T(){let e=b.current;return e?Array.from(e.querySelectorAll(j)):[]}function C(){let e=b.current;return e?e.querySelector(`${K}[aria-selected="true"]`):null}function E(e,n={}){var s;if(!e)return;let r=e.getAttribute(q);r&&(o.setSelected(r),((s=n.scroll)==null||s)&&e.scrollIntoView({block:"nearest",behavior:"instant"}))}function y(e={}){E(T()[0],e)}function G(e={}){E(T()[T().length-1],e)}function D(e,n,r){return Math.max(n,Math.min(e,r))}function O(e,n){return(e%n+n)%n}function P(e){var R;let n=T(),r=C(),s=n.length,d=((R=a.current.jump)!=null?R:5)*e;if(!s||!r)return;let h=n.indexOf(r),v=a.current.loop?O(h+d,s):D(h+d,0,s-1);E(n[v])}function I(e){let n=T(),r=C(),s=n.length;if(!s||!r)return;let d=n.indexOf(r),h=a.current.loop?O(d+e,s):D(d+e,0,s-1);E(n[h])}function V(e){let n=C(),r=n==null?void 0:n.closest(x),s=null;for(;r&&!s;)r=e===1?N(r,x):Q(r,x),s=r==null?void 0:r.querySelector(j);s?E(s):I(e)}function _(e){if(!(e.defaultPrevented||e.nativeEvent.isComposing))switch(e.key){case"ArrowDown":{e.preventDefault(),e.metaKey?V(1):e.altKey?P(1):I(1);break}case"ArrowUp":{e.preventDefault(),e.metaKey?V(-1):e.altKey?P(-1):I(-1);break}case"Home":{e.preventDefault(),y();break}case"End":{e.preventDefault(),G();break}case"Enter":{e.preventDefault();let n=C();if(!n||n.dataset.disabled==="true")return;n.click();break}}}function U(e){let{disabled:n}=e.currentTarget.dataset;n==="true"||!a.current.selectOnHover||E(e.currentTarget,{scroll:!1})}function B(e){let{disabled:n}=e.currentTarget.dataset;n!=="true"&&E(e.currentTarget,{scroll:!1})}return g.useLayoutEffect(()=>{p.selected!==void 0&&(Object.is(p.selected,o.snapshot().selected)||(o.setSelected(p.selected),o.emit()))},[p.selected]),g.useLayoutEffect(()=>{M("mount",()=>{E(C(),{scroll:!1})})},[]),{store:o,listRef:b,useCommandMenuStore:$,handleKeyDown:_,handleItemPointerMove:U,handleItemClick:B}}}),W=(p,b,a)=>{var o;return(p+" "+((o=a==null?void 0:a.join(" "))!=null?o:"")).includes(b)?1:0};export{W as defaultFilter,k as defaultProps,ne as useCommandMenu};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/commandmenu/useCommandMenu.ts","../../src/commandmenu/useCommandMenu.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useQueueTask } from '@primereact/hooks/use-queue-task';\nimport { useCommandMenuStore, useCommandMenuStoreState } from '@primereact/types/shared/commandmenu';\nimport { getNextElementSibling, getPreviousElementSibling, shallowEquals } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './useCommandMenu.props';\n\nconst ITEM_SELECTOR = `[data-item]`;\nconst VALID_ITEM_SELECTOR = `${ITEM_SELECTOR}:not([aria-disabled='true'])`;\nconst GROUP_SELECTOR = `[data-group]`;\nconst VALUE_SELECTOR = `data-value`;\n\nexport const useCommandMenu = withHeadless({\n name: 'useCommandMenu',\n defaultProps,\n setup({ props }) {\n const listRef = React.useRef<HTMLDivElement | null>(null);\n const propsRef = React.useRef(props);\n\n propsRef.current = props;\n\n const queue = useQueueTask();\n\n const store = React.useMemo<useCommandMenuStore>(() => {\n const state = {\n search: '',\n selected: propsRef.current.selected ?? propsRef.current.defaultSelected ?? '',\n filtered: {\n count: 0,\n items: new Map<string, number>(),\n groups: new Set<string>()\n }\n };\n\n const ids = new Map<string, { value?: string; keywords?: string[] }>(); // id to value and keywords\n const items = new Set<string>(); // item ids\n const groups = new Map<string, Set<string>>(); // group id to item ids\n const itemToGroup = new Map<string, string>(); // item id to group id\n\n const listeners = new Set<() => void>();\n\n return {\n subscribe: (listener: () => void) => {\n listeners.add(listener);\n\n return () => listeners.delete(listener);\n },\n emit: () => {\n listeners.forEach((l) => l());\n },\n snapshot: () => state,\n setSearch: (search: string) => {\n if (state.search !== search) {\n state.search = search;\n store.filter();\n store.sort();\n\n queue('searchChange', selectFirstItem);\n store.emit();\n }\n },\n setSelected: (value: string) => {\n if (state.selected !== value) {\n state.selected = value;\n\n if (propsRef.current.selected !== undefined) {\n const newValue = (value ?? '') as string;\n\n propsRef.current.onSelectedChange?.(newValue);\n\n return;\n }\n\n store.emit();\n }\n },\n registerValue: (id: string, value?: string, keywords?: string[]) => {\n if (!value) return;\n\n if (value !== ids.get(id)?.value || !shallowEquals(keywords, ids.get(id)?.keywords)) {\n ids.set(id, { value, keywords });\n state.filtered.items.set(id, score(value, state.search, keywords));\n\n queue('registerValue', () => {\n store.sort();\n store.emit();\n });\n }\n },\n registerItem: (id: string, groupId?: string) => {\n items.add(id);\n\n if (groupId) {\n itemToGroup.set(id, groupId);\n\n if (!groups.has(groupId)) {\n groups.set(groupId, new Set([id]));\n } else {\n groups.get(groupId)?.add(id);\n }\n }\n\n queue('registerItem', () => {\n store.filter();\n store.sort();\n\n if (!state.selected) selectFirstItem({ scroll: false });\n\n store.emit();\n });\n\n return () => {\n ids.delete(id);\n items.delete(id);\n itemToGroup.delete(id);\n state.filtered.items.delete(id);\n const selectedItem = getSelectedItem();\n\n queue('unregisterItem', () => {\n store.filter();\n if (selectedItem?.getAttribute('id') === id) selectFirstItem();\n\n store.emit();\n });\n };\n },\n registerGroup: (id: string) => {\n if (!groups.has(id)) {\n groups.set(id, new Set());\n }\n\n return () => {\n ids.delete(id);\n groups.delete(id);\n };\n },\n filter: () => {\n const search = state.search.trim();\n\n if (!search) {\n state.filtered.count = items.size;\n\n return;\n }\n\n state.filtered.groups = new Set();\n let counter = 0;\n\n items.forEach((id) => {\n const item = ids.get(id);\n const rank = score(item?.value ?? '', search, item?.keywords ?? []);\n\n state.filtered.items.set(id, rank);\n\n if (rank > 0) {\n counter++;\n const groupId = itemToGroup.get(id);\n\n if (groupId) {\n state.filtered.groups.add(groupId);\n }\n }\n });\n\n state.filtered.count = counter;\n },\n sort: () => {\n const search = state.search.trim();\n\n if (!search) return;\n\n const scores = state.filtered.items;\n\n const sortedGroups = Array.from(state.filtered.groups, (groupId) => {\n const itemIds = groups.get(groupId) || new Set();\n\n const maxScore = [...itemIds].reduce((max, id) => Math.max(max, scores.get(id) ?? 0), 0);\n\n return [groupId, maxScore] as [string, number];\n });\n\n const list = listRef.current;\n\n const items = getValidItems();\n\n items\n .sort((a, b) => (scores.get(b.getAttribute('id')!) ?? 0) - (scores.get(a.getAttribute('id')!) ?? 0))\n .forEach((item) => {\n const parent = item.parentElement;\n\n let itemToAppend = item;\n const appendTo = item.closest(GROUP_SELECTOR) ?? list;\n\n if (parent !== appendTo) itemToAppend = item.closest(`${GROUP_SELECTOR} > *`) ?? item;\n\n if (appendTo && itemToAppend) {\n appendTo.appendChild(itemToAppend);\n }\n });\n\n sortedGroups\n .sort((a, b) => b[1] - a[1])\n .forEach((group) => {\n const element = list?.querySelector(`${GROUP_SELECTOR}[${VALUE_SELECTOR}=\"${encodeURIComponent(group[0])}\"]`);\n\n element?.parentElement?.appendChild(element);\n });\n }\n };\n }, []);\n\n const score = (value: string, search: string, keywords?: string[]) => {\n const filterFn = propsRef.current.filter ?? defaultFilter;\n\n return value ? filterFn(value, search, keywords) : 0;\n };\n\n const useCommandMenuStore = <T>(selector: (state: useCommandMenuStoreState) => T) =>\n React.useSyncExternalStore(\n store.subscribe,\n () => selector(store.snapshot()),\n () => selector(store.snapshot())\n );\n\n function getValidItems(): HTMLElement[] {\n const list = listRef.current;\n\n if (!list) return [];\n\n return Array.from(list.querySelectorAll<HTMLElement>(VALID_ITEM_SELECTOR));\n }\n\n function getSelectedItem(): HTMLElement | null {\n const list = listRef.current;\n\n if (!list) return null;\n\n return list.querySelector<HTMLElement>(`${ITEM_SELECTOR}[aria-selected=\"true\"]`);\n }\n\n function selectItem(element: HTMLElement | null, options: { scroll?: boolean } = {}) {\n if (!element) return;\n\n const value = element.getAttribute(VALUE_SELECTOR);\n\n if (!value) return;\n\n store.setSelected(value);\n\n if (options.scroll ?? true) {\n element.scrollIntoView({ block: 'nearest', behavior: 'instant' });\n }\n }\n\n function selectFirstItem(options: { scroll?: boolean } = {}) {\n selectItem(getValidItems()[0], options);\n }\n\n function selectLastItem(options: { scroll?: boolean } = {}) {\n selectItem(getValidItems()[getValidItems().length - 1], options);\n }\n\n function clamp(value: number, min: number, max: number) {\n return Math.max(min, Math.min(value, max));\n }\n\n function loop(value: number, length: number) {\n return ((value % length) + length) % length;\n }\n\n function jumpBy(direction: 1 | -1) {\n const items = getValidItems();\n const current = getSelectedItem();\n const length = items.length;\n const amount = (propsRef.current.jump ?? 5) * direction;\n\n if (!length || !current) return;\n\n const index = items.indexOf(current);\n const nextIndex = propsRef.current.loop ? loop(index + amount, length) : clamp(index + amount, 0, length - 1);\n\n selectItem(items[nextIndex]);\n }\n\n function jumpByItem(direction: 1 | -1) {\n const items = getValidItems();\n const current = getSelectedItem();\n const length = items.length;\n\n if (!length || !current) return;\n\n const index = items.indexOf(current);\n const nextIndex = propsRef.current.loop ? loop(index + direction, length) : clamp(index + direction, 0, length - 1);\n\n selectItem(items[nextIndex]);\n }\n\n function jumpByGroup(direction: 1 | -1) {\n const current = getSelectedItem();\n let group = current?.closest(GROUP_SELECTOR);\n let item: HTMLElement | null = null;\n\n while (group && !item) {\n group = direction === 1 ? getNextElementSibling(group, GROUP_SELECTOR) : getPreviousElementSibling(group, GROUP_SELECTOR);\n item = group?.querySelector(VALID_ITEM_SELECTOR) as HTMLElement;\n }\n\n if (item) {\n selectItem(item);\n } else {\n jumpByItem(direction);\n }\n }\n\n function handleKeyDown(e: React.KeyboardEvent) {\n if (e.defaultPrevented || e.nativeEvent.isComposing) return;\n\n switch (e.key) {\n case 'ArrowDown': {\n e.preventDefault();\n\n if (e.metaKey) jumpByGroup(1);\n else if (e.altKey) jumpBy(1);\n else jumpByItem(1);\n\n break;\n }\n\n case 'ArrowUp': {\n e.preventDefault();\n\n if (e.metaKey) jumpByGroup(-1);\n else if (e.altKey) jumpBy(-1);\n else jumpByItem(-1);\n\n break;\n }\n\n case 'Home': {\n e.preventDefault();\n selectFirstItem();\n break;\n }\n\n case 'End': {\n e.preventDefault();\n selectLastItem();\n break;\n }\n\n case 'Enter': {\n e.preventDefault();\n const selected = getSelectedItem();\n\n if (!selected || selected.dataset.disabled === 'true') return;\n\n selected.click();\n break;\n }\n }\n }\n\n function handleItemPointerMove(e: React.PointerEvent<HTMLDivElement>) {\n const { disabled } = e.currentTarget.dataset;\n\n if (disabled === 'true' || !propsRef.current.selectOnHover) return;\n\n selectItem(e.currentTarget as HTMLElement, { scroll: false });\n }\n\n function handleItemClick(e: React.MouseEvent<HTMLDivElement>) {\n const { disabled } = e.currentTarget.dataset;\n\n if (disabled === 'true') return;\n\n selectItem(e.currentTarget as HTMLElement, { scroll: false });\n }\n\n React.useLayoutEffect(() => {\n if (props.selected === undefined) return;\n\n if (!Object.is(props.selected, store.snapshot().selected)) {\n store.setSelected(props.selected);\n store.emit();\n }\n }, [props.selected]);\n\n React.useLayoutEffect(() => {\n queue('mount', () => {\n selectItem(getSelectedItem(), { scroll: false });\n });\n }, []);\n\n return {\n store,\n listRef,\n useCommandMenuStore,\n handleKeyDown,\n handleItemPointerMove,\n handleItemClick\n };\n }\n});\n\nexport const defaultFilter = (value: string, search: string, keywords?: string[]) => {\n const extendValue = value + ' ' + (keywords?.join(' ') ?? '');\n\n if (extendValue.includes(search)) return 1;\n\n return 0;\n};\n","import type { useCommandMenuProps } from '@primereact/types/shared/commandmenu';\n\nexport const defaultProps: useCommandMenuProps = {\n selected: undefined,\n defaultSelected: '',\n onSelectedChange: undefined,\n selectOnHover: true,\n filter: undefined,\n loop: false,\n jump: 5\n};\n"],"mappings":"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","names":["withHeadless","useQueueTask","getNextElementSibling","getPreviousElementSibling","shallowEquals","React","defaultProps","ITEM_SELECTOR","VALID_ITEM_SELECTOR","GROUP_SELECTOR","VALUE_SELECTOR","useCommandMenu","withHeadless","defaultProps","props","listRef","propsRef","queue","useQueueTask","store","_a","_b","state","ids","items","groups","itemToGroup","listeners","listener","l","search","selectFirstItem","value","newValue","id","keywords","shallowEquals","score","groupId","selectedItem","getSelectedItem","counter","item","rank","scores","sortedGroups","maxScore","max","list","getValidItems","a","b","parent","itemToAppend","appendTo","group","element","filterFn","defaultFilter","useCommandMenuStore","selector","selectItem","options","selectLastItem","clamp","min","loop","length","jumpBy","direction","current","amount","index","nextIndex","jumpByItem","jumpByGroup","getNextElementSibling","getPreviousElementSibling","handleKeyDown","selected","handleItemPointerMove","disabled","handleItemClick"]}
@@ -1,11 +0,0 @@
1
- import { useCommandMenuStore, useCommandMenuStoreState } from '@primereact/types/shared/commandmenu';
2
- import * as React from 'react';
3
- export declare const useCommandMenu: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/commandmenu").useCommandMenuProps, unknown, {
4
- store: useCommandMenuStore;
5
- listRef: React.RefObject<HTMLDivElement | null>;
6
- useCommandMenuStore: <T>(selector: (state: useCommandMenuStoreState) => T) => T;
7
- handleKeyDown: (e: React.KeyboardEvent) => void;
8
- handleItemPointerMove: (e: React.PointerEvent<HTMLDivElement>) => void;
9
- handleItemClick: (e: React.MouseEvent<HTMLDivElement>) => void;
10
- }>;
11
- export declare const defaultFilter: (value: string, search: string, keywords?: string[]) => 1 | 0;
@@ -1,2 +0,0 @@
1
- import type { useCommandMenuProps } from '@primereact/types/shared/commandmenu';
2
- export declare const defaultProps: useCommandMenuProps;
@@ -1,2 +0,0 @@
1
- export * from './useConfirmDialog';
2
- export * from './useConfirmDialog.props';
@@ -1,2 +0,0 @@
1
- import{withHeadless as o}from"@primereact/core/headless";var e={open:!1,defaultOpen:!1,draggable:!0,keepInViewport:!0,modal:!0,dismissableMask:!1,closeOnEscape:!0,blockScroll:!1,baseZIndex:0,autoZIndex:!0,appendTo:"body",onOpenChange:void 0};var t=o({name:"useConfirmDialog",defaultProps:e});export{e as defaultProps,t as useConfirmDialog};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/confirmdialog/useConfirmDialog.ts","../../src/confirmdialog/useConfirmDialog.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { defaultProps } from './useConfirmDialog.props';\n\nexport const useConfirmDialog = withHeadless({\n name: 'useConfirmDialog',\n defaultProps\n});\n","import type { useConfirmDialogProps } from '@primereact/types/shared/confirmdialog';\n\nexport const defaultProps: useConfirmDialogProps = {\n open: false,\n defaultOpen: false,\n draggable: true,\n keepInViewport: true,\n modal: true,\n dismissableMask: false,\n closeOnEscape: true,\n blockScroll: false,\n baseZIndex: 0,\n autoZIndex: true,\n appendTo: 'body',\n onOpenChange: undefined\n};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BCEtB,IAAMC,EAAsC,CAC/C,KAAM,GACN,YAAa,GACb,UAAW,GACX,eAAgB,GAChB,MAAO,GACP,gBAAiB,GACjB,cAAe,GACf,YAAa,GACb,WAAY,EACZ,WAAY,GACZ,SAAU,OACV,aAAc,MAClB,EDZO,IAAMC,EAAmBC,EAAa,CACzC,KAAM,mBACN,aAAAC,CACJ,CAAC","names":["withHeadless","defaultProps","useConfirmDialog","withHeadless","defaultProps"]}
@@ -1 +0,0 @@
1
- export declare const useConfirmDialog: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/confirmdialog").useConfirmDialogProps, unknown, Record<PropertyKey, unknown>>;
@@ -1,2 +0,0 @@
1
- import type { useConfirmDialogProps } from '@primereact/types/shared/confirmdialog';
2
- export declare const defaultProps: useConfirmDialogProps;
@@ -1,2 +0,0 @@
1
- export * from './useConfirmPopup';
2
- export * from './useConfirmPopup.props';
@@ -1,2 +0,0 @@
1
- import{withHeadless as Z}from"@primereact/core/headless";import{ConnectedOverlayScrollHandler as G}from"@primereact/core/utils";import{useEventListener as m,useUnmountEffect as J}from"@primereact/hooks";import{$dt as K}from"@primeuix/styled";import{absolutePosition as Q,addClass as V,focus as d,getOffset as T,isTouchDevice as W,ZIndex as R}from"@primeuix/utils";import*as r from"react";var v={open:!1,defaultOpen:!1,defaultFocus:void 0,onOpenChange:void 0};var le=Z({name:"useConfirmPopup",defaultProps:v,setup:({props:t,$primereact:y})=>{var b,C;let[a,o]=r.useState((C=(b=t.open)!=null?b:t.defaultOpen)!=null?C:!1),u=r.useRef(null),f=r.useRef(null),E=r.useRef(null),O=r.useRef(null),s=r.useRef(null),L={opened:a};r.useEffect(()=>{t.defaultOpen&&S()},[t.defaultOpen]),J(()=>{var e;R.clear((e=u.current)==null?void 0:e.elementRef.current)});let S=()=>{var e;o(!0),(e=t==null?void 0:t.onOpenChange)==null||e.call(t,{value:!0})},h=()=>{var e,n;o(!1),(e=t==null?void 0:t.onOpenChange)==null||e.call(t,{value:!1}),d((n=f.current)==null?void 0:n.elementRef.current)},P=()=>{var n;let e=!a;o(e),(n=t==null?void 0:t.onOpenChange)==null||n.call(t,{value:e})},x=()=>{var e;(e=t==null?void 0:t.onOpenChange)==null||e.call(t,{value:L.opened})},B=()=>{var e,n,l,c;D(),z(),I(),R.set("overlay",(e=u.current)==null?void 0:e.elementRef.current,(c=(l=(n=y.config)==null?void 0:n.zIndex)==null?void 0:l.modal)!=null?c:1100)},j=()=>{g(),$()},F=()=>{var e;d((e=f.current)==null?void 0:e.elementRef.current),k(),A(),N()},w=()=>{var e;R.clear((e=u.current)==null?void 0:e.elementRef.current)},g=()=>{var H,M;let e=(H=u.current)==null?void 0:H.elementRef.current,n=(M=f.current)==null?void 0:M.elementRef.current;if(!e||!n)return;Q(e,n,!1);let l=T(e),c=T(n),i=0;l.left<c.left&&(i=c.left-l.left),e.style.setProperty(K("confirmpopup.arrow.left").name,`${i}px`),l.top<c.top&&(e.setAttribute("data-p-confirmpopup-flipped","true"),V(e,"p-confirmpopup-flipped"))},[D,k]=m({type:"click",listener:e=>{var l;let n=(l=u.current)==null?void 0:l.elementRef.current;a&&n&&!n.contains(e.target)&&!U(e)?o(!1):g()}}),[z,A]=m({type:"scroll",listener:()=>{var e;s.current||(s.current=new G((e=f.current)==null?void 0:e.elementRef.current,()=>{a&&o(!1)})),s.current.bindScrollListener()}}),[I,N]=m({type:"resize",listener:()=>{a&&!W()&&o(!1)}}),$=()=>{var n,l,c,i;let e;t.defaultFocus===void 0||t.defaultFocus==="accept"?e=(n=E.current)==null?void 0:n.elementRef.current:t.defaultFocus==="reject"&&(e=(l=O.current)==null?void 0:l.elementRef.current),e||(e=q((i=(c=u.current)==null?void 0:c.elementRef.current)!=null?i:null)),e&&d(e)},q=e=>e&&e.querySelector("[autoFocus]"),U=e=>{var l;if(!f.current)return!1;let n=(l=f.current)==null?void 0:l.elementRef.current;return n===e.target||n.contains(e.target)};return{state:L,motionRef:u,triggerRef:f,acceptRef:E,rejectRef:O,close:h,onOpenStateChange:P,onOpenChange:x,onMotionEnter:B,onMotionAfterEnter:j,onMotionLeave:F,onMotionAfterLeave:w}}});export{v as defaultProps,le as useConfirmPopup};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/confirmpopup/useConfirmPopup.ts","../../src/confirmpopup/useConfirmPopup.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { ConnectedOverlayScrollHandler } from '@primereact/core/utils';\nimport { useEventListener, useUnmountEffect } from '@primereact/hooks';\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, focus, getOffset, isTouchDevice, ZIndex } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './useConfirmPopup.props';\n\nexport const useConfirmPopup = withHeadless({\n name: 'useConfirmPopup',\n defaultProps,\n setup: ({ props, $primereact }) => {\n const [openState, setOpenState] = React.useState<boolean>(props.open ?? props.defaultOpen ?? false);\n const motionRef = React.useRef<{ elementRef: React.RefObject<HTMLDivElement> } | null>(null);\n const triggerRef = React.useRef<{ elementRef: React.RefObject<HTMLButtonElement> } | null>(null);\n const acceptRef = React.useRef<{ elementRef: React.RefObject<HTMLButtonElement> } | null>(null);\n const rejectRef = React.useRef<{ elementRef: React.RefObject<HTMLButtonElement> } | null>(null);\n const scrollHandler = React.useRef<ConnectedOverlayScrollHandler | null>(null);\n\n const state = {\n opened: openState\n };\n\n React.useEffect(() => {\n if (props.defaultOpen) {\n open();\n }\n }, [props.defaultOpen]);\n\n useUnmountEffect(() => {\n ZIndex.clear(motionRef.current?.elementRef.current as HTMLDivElement);\n });\n\n //methods\n const open = () => {\n setOpenState(true);\n\n props?.onOpenChange?.({\n value: true\n });\n };\n\n const close = () => {\n setOpenState(false);\n\n props?.onOpenChange?.({\n value: false\n });\n\n focus(triggerRef.current?.elementRef.current as HTMLButtonElement);\n };\n\n const onOpenStateChange = () => {\n const newOpenState = !openState;\n\n setOpenState(newOpenState);\n\n props?.onOpenChange?.({\n value: newOpenState\n });\n };\n\n const onOpenChange = () => {\n props?.onOpenChange?.({\n value: state.opened\n });\n };\n\n const onMotionEnter = () => {\n bindOutsideClickListener();\n bindScrollListener();\n bindResizeListener();\n\n ZIndex.set('overlay', motionRef.current?.elementRef.current as HTMLDivElement, $primereact.config?.zIndex?.modal ?? 1100);\n };\n\n const onMotionAfterEnter = () => {\n alignOverlay();\n focusElement();\n };\n\n const onMotionLeave = () => {\n focus(triggerRef.current?.elementRef.current as HTMLButtonElement);\n\n unbindOutsideClickListener();\n unbindScrollListener();\n unbindResizeListener();\n };\n\n const onMotionAfterLeave = () => {\n ZIndex.clear(motionRef.current?.elementRef.current as HTMLDivElement);\n };\n\n const alignOverlay = () => {\n const motionElement = motionRef.current?.elementRef.current;\n const triggerElement = triggerRef.current?.elementRef.current;\n\n if (!motionElement || !triggerElement) return;\n\n absolutePosition(motionElement, triggerElement, false);\n\n const containerOffset = getOffset(motionElement);\n const targetOffset = getOffset(triggerElement);\n let arrowLeft = 0;\n\n if (containerOffset.left < targetOffset.left) {\n arrowLeft = (targetOffset.left as number) - (containerOffset.left as number);\n }\n\n motionElement.style.setProperty($dt('confirmpopup.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n motionElement.setAttribute('data-p-confirmpopup-flipped', 'true');\n // !isUnstyled &&\n addClass(motionElement, 'p-confirmpopup-flipped');\n }\n };\n\n const [bindOutsideClickListener, unbindOutsideClickListener] = useEventListener({\n type: 'click',\n listener: (event: Event) => {\n const motionElement = motionRef.current?.elementRef.current;\n\n if (openState && motionElement && !motionElement.contains(event.target as Node) && !isTargetClicked(event)) {\n setOpenState(false);\n } else {\n alignOverlay();\n }\n }\n });\n\n const [bindScrollListener, unbindScrollListener] = useEventListener({\n type: 'scroll',\n listener: () => {\n if (!scrollHandler.current) {\n scrollHandler.current = new ConnectedOverlayScrollHandler(triggerRef.current?.elementRef.current as HTMLButtonElement, () => {\n if (openState) {\n setOpenState(false);\n }\n });\n }\n\n scrollHandler.current.bindScrollListener();\n }\n });\n\n const [bindResizeListener, unbindResizeListener] = useEventListener({\n type: 'resize',\n listener: () => {\n if (openState && !isTouchDevice()) {\n setOpenState(false);\n }\n }\n });\n\n const focusElement = () => {\n let focusTarget;\n\n if (props.defaultFocus === undefined || props.defaultFocus === 'accept') {\n focusTarget = acceptRef.current?.elementRef.current;\n } else if (props.defaultFocus === 'reject') {\n focusTarget = rejectRef.current?.elementRef.current;\n }\n\n if (!focusTarget) {\n focusTarget = findFocusableElement(motionRef.current?.elementRef.current ?? null);\n }\n\n if (focusTarget) {\n focus(focusTarget as HTMLElement);\n }\n };\n\n const findFocusableElement = (container: HTMLElement | null) => {\n return container && container.querySelector('[autoFocus]');\n };\n\n const isTargetClicked = (event: Event) => {\n if (!triggerRef.current) return false;\n\n const triggerElement = triggerRef.current?.elementRef.current as HTMLButtonElement;\n\n return triggerElement === event.target || triggerElement.contains(event.target as Node);\n };\n\n return {\n state,\n // refs\n motionRef,\n triggerRef,\n acceptRef,\n rejectRef,\n // methods\n close,\n onOpenStateChange,\n onOpenChange,\n onMotionEnter,\n onMotionAfterEnter,\n onMotionLeave,\n onMotionAfterLeave\n };\n }\n});\n","import type { useConfirmPopupProps } from '@primereact/types/shared/confirmpopup';\n\nexport const defaultProps: useConfirmPopupProps = {\n open: false,\n defaultOpen: false,\n defaultFocus: undefined,\n onOpenChange: undefined\n};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BAC7B,OAAS,iCAAAC,MAAqC,yBAC9C,OAAS,oBAAAC,EAAkB,oBAAAC,MAAwB,oBACnD,OAAS,OAAAC,MAAW,mBACpB,OAAS,oBAAAC,EAAkB,YAAAC,EAAU,SAAAC,EAAO,aAAAC,EAAW,iBAAAC,EAAe,UAAAC,MAAc,kBACpF,UAAYC,MAAW,QCHhB,IAAMC,EAAqC,CAC9C,KAAM,GACN,YAAa,GACb,aAAc,OACd,aAAc,MAClB,EDCO,IAAMC,GAAkBC,EAAa,CACxC,KAAM,kBACN,aAAAC,EACA,MAAO,CAAC,CAAE,MAAAC,EAAO,YAAAC,CAAY,IAAM,CAXvC,IAAAC,EAAAC,EAYQ,GAAM,CAACC,EAAWC,CAAY,EAAU,YAAkBF,GAAAD,EAAAF,EAAM,OAAN,KAAAE,EAAcF,EAAM,cAApB,KAAAG,EAAmC,EAAK,EAC5FG,EAAkB,SAA+D,IAAI,EACrFC,EAAmB,SAAkE,IAAI,EACzFC,EAAkB,SAAkE,IAAI,EACxFC,EAAkB,SAAkE,IAAI,EACxFC,EAAsB,SAA6C,IAAI,EAEvEC,EAAQ,CACV,OAAQP,CACZ,EAEM,YAAU,IAAM,CACdJ,EAAM,aACNY,EAAK,CAEb,EAAG,CAACZ,EAAM,WAAW,CAAC,EAEtBa,EAAiB,IAAM,CA7B/B,IAAAX,EA8BYY,EAAO,OAAMZ,EAAAI,EAAU,UAAV,YAAAJ,EAAmB,WAAW,OAAyB,CACxE,CAAC,EAGD,IAAMU,EAAO,IAAM,CAlC3B,IAAAV,EAmCYG,EAAa,EAAI,GAEjBH,EAAAF,GAAA,YAAAA,EAAO,eAAP,MAAAE,EAAA,KAAAF,EAAsB,CAClB,MAAO,EACX,EACJ,EAEMe,EAAQ,IAAM,CA1C5B,IAAAb,EAAAC,EA2CYE,EAAa,EAAK,GAElBH,EAAAF,GAAA,YAAAA,EAAO,eAAP,MAAAE,EAAA,KAAAF,EAAsB,CAClB,MAAO,EACX,GAEAgB,GAAMb,EAAAI,EAAW,UAAX,YAAAJ,EAAoB,WAAW,OAA4B,CACrE,EAEMc,EAAoB,IAAM,CApDxC,IAAAf,EAqDY,IAAMgB,EAAe,CAACd,EAEtBC,EAAaa,CAAY,GAEzBhB,EAAAF,GAAA,YAAAA,EAAO,eAAP,MAAAE,EAAA,KAAAF,EAAsB,CAClB,MAAOkB,CACX,EACJ,EAEMC,EAAe,IAAM,CA9DnC,IAAAjB,GA+DYA,EAAAF,GAAA,YAAAA,EAAO,eAAP,MAAAE,EAAA,KAAAF,EAAsB,CAClB,MAAOW,EAAM,MACjB,EACJ,EAEMS,EAAgB,IAAM,CApEpC,IAAAlB,EAAAC,EAAAkB,EAAAC,EAqEYC,EAAyB,EACzBC,EAAmB,EACnBC,EAAmB,EAEnBX,EAAO,IAAI,WAAWZ,EAAAI,EAAU,UAAV,YAAAJ,EAAmB,WAAW,SAA2BoB,GAAAD,GAAAlB,EAAAF,EAAY,SAAZ,YAAAE,EAAoB,SAApB,YAAAkB,EAA4B,QAA5B,KAAAC,EAAqC,IAAI,CAC5H,EAEMI,EAAqB,IAAM,CAC7BC,EAAa,EACbC,EAAa,CACjB,EAEMC,EAAgB,IAAM,CAjFpC,IAAA3B,EAkFYc,GAAMd,EAAAK,EAAW,UAAX,YAAAL,EAAoB,WAAW,OAA4B,EAEjE4B,EAA2B,EAC3BC,EAAqB,EACrBC,EAAqB,CACzB,EAEMC,EAAqB,IAAM,CAzFzC,IAAA/B,EA0FYY,EAAO,OAAMZ,EAAAI,EAAU,UAAV,YAAAJ,EAAmB,WAAW,OAAyB,CACxE,EAEMyB,EAAe,IAAM,CA7FnC,IAAAzB,EAAAC,EA8FY,IAAM+B,GAAgBhC,EAAAI,EAAU,UAAV,YAAAJ,EAAmB,WAAW,QAC9CiC,GAAiBhC,EAAAI,EAAW,UAAX,YAAAJ,EAAoB,WAAW,QAEtD,GAAI,CAAC+B,GAAiB,CAACC,EAAgB,OAEvCC,EAAiBF,EAAeC,EAAgB,EAAK,EAErD,IAAME,EAAkBC,EAAUJ,CAAa,EACzCK,EAAeD,EAAUH,CAAc,EACzCK,EAAY,EAEZH,EAAgB,KAAOE,EAAa,OACpCC,EAAaD,EAAa,KAAmBF,EAAgB,MAGjEH,EAAc,MAAM,YAAYO,EAAI,yBAAyB,EAAE,KAAM,GAAGD,CAAS,IAAI,EAEjFH,EAAgB,IAAME,EAAa,MACnCL,EAAc,aAAa,8BAA+B,MAAM,EAEhEQ,EAASR,EAAe,wBAAwB,EAExD,EAEM,CAACX,EAA0BO,CAA0B,EAAIa,EAAiB,CAC5E,KAAM,QACN,SAAWC,GAAiB,CAxHxC,IAAA1C,EAyHgB,IAAMgC,GAAgBhC,EAAAI,EAAU,UAAV,YAAAJ,EAAmB,WAAW,QAEhDE,GAAa8B,GAAiB,CAACA,EAAc,SAASU,EAAM,MAAc,GAAK,CAACC,EAAgBD,CAAK,EACrGvC,EAAa,EAAK,EAElBsB,EAAa,CAErB,CACJ,CAAC,EAEK,CAACH,EAAoBO,CAAoB,EAAIY,EAAiB,CAChE,KAAM,SACN,SAAU,IAAM,CArI5B,IAAAzC,EAsIqBQ,EAAc,UACfA,EAAc,QAAU,IAAIoC,GAA8B5C,EAAAK,EAAW,UAAX,YAAAL,EAAoB,WAAW,QAA8B,IAAM,CACrHE,GACAC,EAAa,EAAK,CAE1B,CAAC,GAGLK,EAAc,QAAQ,mBAAmB,CAC7C,CACJ,CAAC,EAEK,CAACe,EAAoBO,CAAoB,EAAIW,EAAiB,CAChE,KAAM,SACN,SAAU,IAAM,CACRvC,GAAa,CAAC2C,EAAc,GAC5B1C,EAAa,EAAK,CAE1B,CACJ,CAAC,EAEKuB,EAAe,IAAM,CA3JnC,IAAA1B,EAAAC,EAAAkB,EAAAC,EA4JY,IAAI0B,EAEAhD,EAAM,eAAiB,QAAaA,EAAM,eAAiB,SAC3DgD,GAAc9C,EAAAM,EAAU,UAAV,YAAAN,EAAmB,WAAW,QACrCF,EAAM,eAAiB,WAC9BgD,GAAc7C,EAAAM,EAAU,UAAV,YAAAN,EAAmB,WAAW,SAG3C6C,IACDA,EAAcC,GAAqB3B,GAAAD,EAAAf,EAAU,UAAV,YAAAe,EAAmB,WAAW,UAA9B,KAAAC,EAAyC,IAAI,GAGhF0B,GACAhC,EAAMgC,CAA0B,CAExC,EAEMC,EAAwBC,GACnBA,GAAaA,EAAU,cAAc,aAAa,EAGvDL,EAAmBD,GAAiB,CAjLlD,IAAA1C,EAkLY,GAAI,CAACK,EAAW,QAAS,MAAO,GAEhC,IAAM4B,GAAiBjC,EAAAK,EAAW,UAAX,YAAAL,EAAoB,WAAW,QAEtD,OAAOiC,IAAmBS,EAAM,QAAUT,EAAe,SAASS,EAAM,MAAc,CAC1F,EAEA,MAAO,CACH,MAAAjC,EAEA,UAAAL,EACA,WAAAC,EACA,UAAAC,EACA,UAAAC,EAEA,MAAAM,EACA,kBAAAE,EACA,aAAAE,EACA,cAAAC,EACA,mBAAAM,EACA,cAAAG,EACA,mBAAAI,CACJ,CACJ,CACJ,CAAC","names":["withHeadless","ConnectedOverlayScrollHandler","useEventListener","useUnmountEffect","$dt","absolutePosition","addClass","focus","getOffset","isTouchDevice","ZIndex","React","defaultProps","useConfirmPopup","withHeadless","defaultProps","props","$primereact","_a","_b","openState","setOpenState","motionRef","triggerRef","acceptRef","rejectRef","scrollHandler","state","open","useUnmountEffect","ZIndex","close","focus","onOpenStateChange","newOpenState","onOpenChange","onMotionEnter","_c","_d","bindOutsideClickListener","bindScrollListener","bindResizeListener","onMotionAfterEnter","alignOverlay","focusElement","onMotionLeave","unbindOutsideClickListener","unbindScrollListener","unbindResizeListener","onMotionAfterLeave","motionElement","triggerElement","absolutePosition","containerOffset","getOffset","targetOffset","arrowLeft","$dt","addClass","useEventListener","event","isTargetClicked","ConnectedOverlayScrollHandler","isTouchDevice","focusTarget","findFocusableElement","container"]}
@@ -1,25 +0,0 @@
1
- import * as React from 'react';
2
- export declare const useConfirmPopup: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/confirmpopup").useConfirmPopupProps, unknown, {
3
- state: {
4
- opened: boolean;
5
- };
6
- motionRef: React.RefObject<{
7
- elementRef: React.RefObject<HTMLDivElement>;
8
- } | null>;
9
- triggerRef: React.RefObject<{
10
- elementRef: React.RefObject<HTMLButtonElement>;
11
- } | null>;
12
- acceptRef: React.RefObject<{
13
- elementRef: React.RefObject<HTMLButtonElement>;
14
- } | null>;
15
- rejectRef: React.RefObject<{
16
- elementRef: React.RefObject<HTMLButtonElement>;
17
- } | null>;
18
- close: () => void;
19
- onOpenStateChange: () => void;
20
- onOpenChange: () => void;
21
- onMotionEnter: () => void;
22
- onMotionAfterEnter: () => void;
23
- onMotionLeave: () => void;
24
- onMotionAfterLeave: () => void;
25
- }>;
@@ -1,2 +0,0 @@
1
- import type { useConfirmPopupProps } from '@primereact/types/shared/confirmpopup';
2
- export declare const defaultProps: useConfirmPopupProps;
@@ -1,2 +0,0 @@
1
- export * from './useImageCompare';
2
- export * from './useImageCompare.props';
@@ -1,2 +0,0 @@
1
- import{withHeadless as n}from"@primereact/core/headless";import{$dt as p}from"@primeuix/styled";import{setCSSProperty as i}from"@primeuix/utils";import*as e from"react";var o={};var C=n({name:"useImageCompare",defaultProps:o,setup:()=>{let[m,s]=e.useState("50"),t=e.useRef(null);return{state:{slideValue:m},onSlideChange:r=>{if(!t.current)return;let a=r.target.value;s(a),i(t.current,p("imagecompare.scope.x").name,`${a}%`)},registerRightImage:r=>{t.current=r}}}});export{o as defaultProps,C as useImageCompare};
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/imagecompare/useImageCompare.ts","../../src/imagecompare/useImageCompare.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { $dt } from '@primeuix/styled';\nimport { setCSSProperty } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './useImageCompare.props';\n\nexport const useImageCompare = withHeadless({\n name: 'useImageCompare',\n defaultProps,\n setup: () => {\n const [slideValueState, setSlideValueState] = React.useState<string | undefined>('50');\n const rightImageRef = React.useRef<HTMLImageElement>(null);\n\n const state = {\n slideValue: slideValueState\n };\n\n // methods\n const onSlideChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!rightImageRef.current) return;\n\n const value = event.target.value;\n\n setSlideValueState(value);\n setCSSProperty(rightImageRef.current, $dt('imagecompare.scope.x').name, `${value}%`);\n };\n\n const registerRightImage = (element: HTMLImageElement) => {\n rightImageRef.current = element;\n };\n\n return {\n state,\n onSlideChange,\n registerRightImage\n };\n }\n});\n","import type { useImageCompareProps } from '@primereact/types/shared/imagecompare';\n\nexport const defaultProps: useImageCompareProps = {};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BAC7B,OAAS,OAAAC,MAAW,mBACpB,OAAS,kBAAAC,MAAsB,kBAC/B,UAAYC,MAAW,QCDhB,IAAMC,EAAqC,CAAC,EDI5C,IAAMC,EAAkBC,EAAa,CACxC,KAAM,kBACN,aAAAC,EACA,MAAO,IAAM,CACT,GAAM,CAACC,EAAiBC,CAAkB,EAAU,WAA6B,IAAI,EAC/EC,EAAsB,SAAyB,IAAI,EAoBzD,MAAO,CACH,MAnBU,CACV,WAAYF,CAChB,EAkBI,cAfmBG,GAA+C,CAClE,GAAI,CAACD,EAAc,QAAS,OAE5B,IAAME,EAAQD,EAAM,OAAO,MAE3BF,EAAmBG,CAAK,EACxBC,EAAeH,EAAc,QAASI,EAAI,sBAAsB,EAAE,KAAM,GAAGF,CAAK,GAAG,CACvF,EASI,mBAPwBG,GAA8B,CACtDL,EAAc,QAAUK,CAC5B,CAMA,CACJ,CACJ,CAAC","names":["withHeadless","$dt","setCSSProperty","React","defaultProps","useImageCompare","withHeadless","defaultProps","slideValueState","setSlideValueState","rightImageRef","event","value","setCSSProperty","$dt","element"]}
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- export declare const useImageCompare: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/imagecompare").useImageCompareProps, unknown, {
3
- state: {
4
- slideValue: string | undefined;
5
- };
6
- onSlideChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
7
- registerRightImage: (element: HTMLImageElement) => void;
8
- }>;
@@ -1,2 +0,0 @@
1
- import type { useImageCompareProps } from '@primereact/types/shared/imagecompare';
2
- export declare const defaultProps: useImageCompareProps;
@@ -1,2 +0,0 @@
1
- export * from './useMenuSub';
2
- export * from './useMenuSub.props';
@@ -1,2 +0,0 @@
1
- import{withHeadless as m}from"@primereact/core/headless";import*as t from"react";var f={open:void 0,defaultOpen:void 0,onOpenChange:void 0};var O=m({name:"useMenuSub",defaultProps:f,setup({props:e}){var s;let[u,o]=t.useState(e.open!==void 0?e.open:(s=e.defaultOpen)!=null?s:!1),c=t.useRef(null),i=t.useRef(null),d=t.useRef(null),r={opened:u},a=n=>{e.onOpenChange&&e.onOpenChange({value:n})};t.useEffect(()=>{e.open!==void 0&&o(e.open)},[e.open]);let l=()=>{if(!e.disabled){let n=!u;o(n),a(n)}};return{state:r,portalRef:c,triggerRef:i,listRef:d,toggle:l,open:()=>{e.disabled||(o(!0),a(!0))},close:()=>{e.disabled||(o(!1),a(!1))},onTriggerClick:()=>{e.disabled||l()}}}});export{f as defaultProps,O as useMenuSub};
2
- //# sourceMappingURL=index.mjs.map