@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 +1 @@
1
- {"version":3,"sources":["../../../src/gallery/item/useGalleryItem.tsx","../../../../primereact/src/gallery/Gallery.tsx","../../../../primereact/src/base/index.ts","../../../../primereact/src/gallery/Gallery.context.ts","../../../../primereact/src/gallery/Gallery.props.ts","../../../../primereact/src/gallery/backdrop/GalleryBackdrop.tsx","../../../../primereact/src/gallery/backdrop/GalleryBackdrop.props.ts","../../../../primereact/src/gallery/content/GalleryContent.tsx","../../../../primereact/src/gallery/content/GalleryContent.props.ts","../../../../primereact/src/gallery/item/GalleryItem.tsx","../../../../primereact/src/gallery/item/GalleryItem.context.ts","../../../../primereact/src/gallery/item/GalleryItem.props.ts","../../../../primereact/src/gallery/next/GalleryNext.tsx","../../../../primereact/src/gallery/next/GalleryNext.props.ts","../../../../primereact/src/gallery/prev/GalleryPrev.tsx","../../../../primereact/src/gallery/prev/GalleryPrev.props.ts","../../../../primereact/src/gallery/thumbnail/GalleryThumbnail.tsx","../../../../primereact/src/carousel/Carousel.tsx","../../../../primereact/src/carousel/Carousel.context.ts","../../../../primereact/src/carousel/Carousel.props.ts","../../../../primereact/src/carousel/content/CarouselContent.tsx","../../../../primereact/src/carousel/content/CarouselContent.props.ts","../../../../primereact/src/carousel/indicator/CarouselIndicator.tsx","../../../../primereact/src/carousel/indicator/CarouselIndicator.props.ts","../../../../primereact/src/carousel/indicators/CarouselIndicators.tsx","../../../../primereact/src/carousel/indicators/CarouselIndicators.props.ts","../../../../primereact/src/carousel/item/CarouselItem.tsx","../../../../primereact/src/carousel/item/CarouselItem.props.ts","../../../../primereact/src/carousel/next/CarouselNext.tsx","../../../../primereact/src/carousel/next/CarouselNext.props.ts","../../../../primereact/src/carousel/prev/CarouselPrev.tsx","../../../../primereact/src/carousel/prev/CarouselPrev.props.ts","../../../../primereact/src/gallery/thumbnail/GalleryThumbnail.props.ts","../../../../primereact/src/gallery/thumbnailcontent/GalleryThumbnailContent.tsx","../../../../primereact/src/gallery/thumbnailcontent/GalleryThumbnailContent.props.ts","../../../../primereact/src/gallery/thumbnailitem/GalleryThumbnailItem.tsx","../../../../primereact/src/gallery/thumbnailitem/GalleryThumbnailItem.props.ts","../../../../primereact/src/gallery/toolbar/GalleryToolbar.tsx","../../../../primereact/src/gallery/toolbar/GalleryToolbar.props.ts","../../../../primereact/src/gallery/toolbaritem/GalleryToolbarItem.tsx","../../../../primereact/src/gallery/toolbaritem/GalleryToolbarItem.props.ts","../../../src/gallery/item/useGalleryItem.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useGalleryContext } from 'primereact/gallery';\nimport * as React from 'react';\nimport { defaultItemProps } from './useGalleryItem.props';\n\nexport const useGalleryItem = withHeadless({\n name: 'useGalleryItem',\n defaultProps: defaultItemProps,\n setup: ({ props, elementRef }) => {\n const { normalScale = 1, zoomedScale = 3 } = props;\n\n const gallery = useGalleryContext();\n const [index, setIndex] = React.useState(-1);\n const [isActive, setIsActive] = React.useState(false);\n const [position, setPosition] = React.useState({ x: 0, y: 0 });\n const [scale, setScale] = React.useState(1);\n const [rotation, setRotation] = React.useState(0);\n const [flip, setFlip] = React.useState({ x: 1, y: 1 });\n\n const [isDragging, setIsDragging] = React.useState(false);\n const [dragStart, setDragStart] = React.useState({ x: 0, y: 0 });\n const [hasDragged, setHasDragged] = React.useState(false);\n\n const pointerDataRef = React.useRef<Map<number, { x: number; y: number }>>(new Map());\n const lastDistanceRef = React.useRef(0);\n\n const calculateItemSize = React.useCallback(() => {\n if (!gallery?.contentRef.current || !elementRef.current) return;\n\n const contentRect = gallery?.contentRef.current.getBoundingClientRect();\n\n const imageElement = elementRef.current.firstElementChild as HTMLImageElement;\n\n if (!imageElement) return;\n\n let naturalWidth = imageElement.naturalWidth || imageElement.offsetWidth;\n let naturalHeight = imageElement.naturalHeight || imageElement.offsetHeight;\n\n if (naturalWidth === 0 || naturalHeight === 0) return;\n\n const isRotated = Math.abs(rotation) % 180 === 90;\n\n if (isRotated) {\n [naturalWidth, naturalHeight] = [naturalHeight, naturalWidth];\n }\n\n const naturalAspectRatio = naturalWidth / naturalHeight;\n const contentAspectRatio = contentRect.width / contentRect.height;\n\n let targetWidth, targetHeight;\n\n if (naturalAspectRatio > contentAspectRatio) {\n targetWidth = Math.min(contentRect.width * 0.99, naturalWidth);\n targetHeight = targetWidth / naturalAspectRatio;\n } else {\n targetHeight = Math.min(contentRect.height * 0.99, naturalHeight);\n targetWidth = targetHeight * naturalAspectRatio;\n }\n\n if (isRotated) {\n imageElement.style.width = `${targetHeight}px`;\n imageElement.style.height = `${targetWidth}px`;\n elementRef.current.style.width = `${targetHeight > 0 ? targetHeight : 'auto'}px`;\n elementRef.current.style.height = `${targetWidth > 0 ? targetWidth : 'auto'}px`;\n } else {\n imageElement.style.width = `${targetWidth}px`;\n imageElement.style.height = `${targetHeight}px`;\n elementRef.current.style.width = `${targetWidth > 0 ? targetWidth : 'auto'}px`;\n elementRef.current.style.height = `${targetHeight > 0 ? targetHeight : 'auto'}px`;\n }\n\n elementRef.current.style.aspectRatio = `${naturalWidth / naturalHeight}`;\n }, [gallery?.contentRef, rotation]);\n\n const calculateConstraints = React.useCallback(\n (targetScale?: number) => {\n if (!gallery?.contentRef.current || !elementRef.current) return { minX: 0, maxX: 0, minY: 0, maxY: 0 };\n\n const contentRect = gallery?.contentRef.current.getBoundingClientRect();\n const scaleToUse = targetScale !== undefined ? targetScale : scale;\n\n const itemElement = elementRef.current.firstElementChild as HTMLElement;\n\n if (!itemElement) return { minX: 0, maxX: 0, minY: 0, maxY: 0 };\n\n let originalWidth = itemElement.offsetWidth;\n let originalHeight = itemElement.offsetHeight;\n\n const isRotated = Math.abs(rotation) % 180 === 90;\n\n if (isRotated) {\n [originalWidth, originalHeight] = [originalHeight, originalWidth];\n }\n\n const scaledWidth = originalWidth * scaleToUse;\n const scaledHeight = originalHeight * scaleToUse;\n\n const contentCenterX = contentRect.width / 2;\n const contentCenterY = contentRect.height / 2;\n\n const halfScaledWidth = scaledWidth / 2;\n const halfScaledHeight = scaledHeight / 2;\n\n const maxX = halfScaledWidth > contentCenterX ? halfScaledWidth - contentCenterX : 0;\n const minX = halfScaledWidth > contentCenterX ? -(halfScaledWidth - contentCenterX) : 0;\n\n const maxY = halfScaledHeight > contentCenterY ? halfScaledHeight - contentCenterY : 0;\n const minY = halfScaledHeight > contentCenterY ? -(halfScaledHeight - contentCenterY) : 0;\n\n return { minX, maxX, minY, maxY };\n },\n [gallery?.contentRef, scale, rotation]\n );\n\n const zoomIn = React.useCallback(() => {\n setScale(zoomedScale);\n\n const hiddenStyles = {\n visibility: 'hidden',\n opacity: 0,\n pointerEvents: 'none',\n userSelect: 'none',\n touchAction: 'none'\n };\n\n if (gallery?.toolbarRef.current) {\n Object.assign(gallery?.toolbarRef.current.style, hiddenStyles);\n }\n\n if (gallery?.thumbnailRef.current) {\n // @ts-expect-error - thumbnailRef may not have elementRef property\n Object.assign(gallery?.thumbnailRef.current.elementRef.current.style, hiddenStyles);\n }\n\n if (gallery?.prevRef.current) {\n Object.assign(gallery.prevRef.current.style, hiddenStyles);\n }\n\n if (gallery?.nextRef.current) {\n Object.assign(gallery.nextRef.current.style, hiddenStyles);\n }\n\n if (elementRef.current) {\n elementRef.current.style.cursor = 'zoom-out';\n elementRef.current.style.pointerEvents = 'auto';\n }\n }, [zoomedScale, gallery?.toolbarRef, gallery?.thumbnailRef, gallery?.prevRef, gallery?.nextRef]);\n\n const zoomOut = React.useCallback(() => {\n setScale(normalScale);\n setPosition({ x: 0, y: 0 });\n\n const resetStyles = {\n visibility: '',\n opacity: '',\n pointerEvents: '',\n userSelect: '',\n touchAction: ''\n };\n\n if (gallery?.toolbarRef.current) {\n Object.assign(gallery.toolbarRef.current.style, resetStyles);\n }\n\n if (gallery?.thumbnailRef.current) {\n // @ts-expect-error - thumbnailRef may not have elementRef property\n Object.assign(gallery.thumbnailRef.current.elementRef.current.style, resetStyles);\n }\n\n if (gallery?.prevRef.current) {\n Object.assign(gallery.prevRef.current.style, resetStyles);\n }\n\n if (gallery?.nextRef.current) {\n Object.assign(gallery.nextRef.current.style, resetStyles);\n }\n\n if (elementRef.current) {\n elementRef.current.style.cursor = 'zoom-in';\n elementRef.current.style.pointerEvents = 'auto';\n }\n }, [normalScale, gallery?.toolbarRef, gallery?.thumbnailRef, gallery?.prevRef, gallery?.nextRef]);\n\n const rotateLeft = () => {\n if (!elementRef.current) return;\n\n elementRef.current.style.transition = 'none';\n setRotation((prev) => prev - 90);\n setTimeout(() => {\n if (elementRef.current) {\n elementRef.current.style.transition = '';\n }\n }, 0);\n };\n\n const rotateRight = () => {\n if (!elementRef.current) return;\n\n elementRef.current.style.transition = 'none';\n setRotation((prev) => prev + 90);\n setTimeout(() => {\n if (elementRef.current) {\n elementRef.current.style.transition = '';\n }\n }, 0);\n };\n\n const flipX = () => {\n setFlip((prev) => ({ ...prev, x: Math.sign(prev.x) * -1 }));\n };\n\n const flipY = () => {\n setFlip((prev) => ({ ...prev, y: Math.sign(prev.y) * -1 }));\n };\n\n const download = () => {\n if (!elementRef.current) return;\n\n const imageElement = elementRef.current.querySelector('img') as HTMLImageElement;\n\n if (!imageElement || !imageElement.src) return;\n\n const link = document.createElement('a');\n\n link.href = imageElement.src;\n\n const urlParts = imageElement.src.split('/');\n const filename = urlParts[urlParts.length - 1] || 'image.jpg';\n\n link.download = filename;\n link.target = '_blank';\n\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n };\n\n const handleClick = React.useCallback(\n (e: React.MouseEvent) => {\n if (hasDragged) {\n setHasDragged(false);\n\n return;\n }\n\n if (scale === normalScale) {\n if (elementRef.current) {\n const itemRect = elementRef.current.getBoundingClientRect();\n\n const itemCenterX = itemRect.width / 2;\n const itemCenterY = itemRect.height / 2;\n\n const clickX = e.clientX - itemRect.left;\n const clickY = e.clientY - itemRect.top;\n\n const offsetX = itemCenterX - clickX;\n const offsetY = itemCenterY - clickY;\n\n const zoomOffsetX = offsetX * (zoomedScale - 1);\n const zoomOffsetY = offsetY * (zoomedScale - 1);\n\n const constraints = calculateConstraints(zoomedScale);\n const constrainedX = Math.max(constraints.minX, Math.min(constraints.maxX, zoomOffsetX));\n const constrainedY = Math.max(constraints.minY, Math.min(constraints.maxY, zoomOffsetY));\n\n setPosition({ x: constrainedX, y: constrainedY });\n }\n\n zoomIn();\n } else {\n zoomOut();\n }\n },\n [hasDragged, normalScale, zoomedScale, calculateConstraints, scale, zoomIn, zoomOut]\n );\n const handleDragStart = React.useCallback((e: React.DragEvent<HTMLDivElement>) => {\n e.preventDefault();\n }, []);\n\n const handlePointerDown = React.useCallback(\n (e: React.PointerEvent) => {\n e.currentTarget.setPointerCapture(e.pointerId);\n pointerDataRef.current.set(e.pointerId, { x: e.clientX, y: e.clientY });\n\n if (scale > 1) {\n if (e.pointerType === 'mouse') {\n setIsDragging(true);\n setDragStart({ x: e.clientX - position.x, y: e.clientY - position.y });\n setHasDragged(false);\n } else if (e.pointerType === 'touch' && pointerDataRef.current.size === 1) {\n setIsDragging(true);\n setDragStart({ x: e.clientX - position.x, y: e.clientY - position.y });\n setHasDragged(false);\n lastDistanceRef.current = 0;\n }\n }\n\n if (e.pointerType === 'touch' && pointerDataRef.current.size === 1) {\n lastDistanceRef.current = 0;\n }\n },\n [scale, position]\n );\n\n const handlePointerMove = React.useCallback(\n (e: React.PointerEvent) => {\n if (!pointerDataRef.current.has(e.pointerId) || !elementRef.current) return;\n\n elementRef.current.style.transition = 'none';\n\n // Preserve cursor during move\n const currentCursor = elementRef.current.style.cursor;\n\n if (!currentCursor) {\n elementRef.current.style.cursor = scale > normalScale ? 'zoom-out' : 'zoom-in';\n }\n\n pointerDataRef.current.set(e.pointerId, { x: e.clientX, y: e.clientY });\n\n const pointers = Array.from(pointerDataRef.current.values());\n\n if (pointers.length === 2) {\n const [p1, p2] = pointers;\n const distance = Math.hypot(p2.x - p1.x, p2.y - p1.y);\n\n if (lastDistanceRef.current > 0) {\n const delta = (distance - lastDistanceRef.current) * 0.01;\n\n if (Math.abs(delta) > 0.01) {\n const newScale = scale === normalScale ? zoomedScale : normalScale;\n\n const constraints = calculateConstraints(newScale);\n const constrainedX = Math.max(constraints.minX, Math.min(constraints.maxX, position.x));\n const constrainedY = Math.max(constraints.minY, Math.min(constraints.maxY, position.y));\n\n setPosition({ x: constrainedX, y: constrainedY });\n\n setScale(newScale);\n }\n }\n\n lastDistanceRef.current = distance;\n } else if (pointers.length === 1 && isDragging) {\n const pointer = pointers[0];\n const newX = pointer.x - dragStart.x;\n const newY = pointer.y - dragStart.y;\n const constraints = calculateConstraints();\n\n const computedX = Math.max(constraints.minX, Math.min(constraints.maxX, newX));\n const computedY = Math.max(constraints.minY, Math.min(constraints.maxY, newY));\n\n setPosition({\n x: computedX,\n y: computedY\n });\n setHasDragged(true);\n }\n },\n [isDragging, dragStart, scale, normalScale, zoomedScale, position, calculateConstraints]\n );\n\n const handlePointerUp = React.useCallback((e: React.PointerEvent) => {\n if (!elementRef.current) return;\n\n elementRef.current.style.transition = '';\n // Restore proper cursor after interaction\n elementRef.current.style.cursor = scale > normalScale ? 'zoom-out' : 'zoom-in';\n e.currentTarget.releasePointerCapture(e.pointerId);\n pointerDataRef.current.delete(e.pointerId);\n\n if (pointerDataRef.current.size < 2) lastDistanceRef.current = 0;\n\n if (pointerDataRef.current.size === 0) {\n setIsDragging(false);\n }\n }, []);\n\n React.useEffect(() => {\n if (scale <= 1) {\n setPosition({ x: 0, y: 0 });\n }\n }, [scale]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index && document.readyState === 'complete') {\n calculateItemSize();\n }\n }, [gallery?.state.activeIndex, index, calculateItemSize]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index) {\n calculateItemSize();\n }\n }, [rotation, calculateItemSize, gallery?.state.activeIndex, index]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index && gallery?.state.isFullscreen !== undefined) {\n calculateItemSize();\n }\n }, [gallery?.state.isFullscreen, calculateItemSize, gallery?.state.activeIndex, index]);\n\n React.useEffect(() => {\n const handleResize = () => {\n if (gallery?.state.activeIndex === index) {\n calculateItemSize();\n }\n };\n\n window.addEventListener('resize', handleResize);\n\n return () => window.removeEventListener('resize', handleResize);\n }, [gallery?.state.activeIndex, index, calculateItemSize]);\n\n React.useEffect(() => {\n if (gallery && elementRef.current) {\n const index = gallery.registerItem(elementRef.current as HTMLDivElement);\n\n setIndex(index);\n }\n }, [gallery]);\n\n React.useEffect(() => {\n const handleCustomEvent = (e: CustomEvent) => {\n if (e.detail?.action === 'zoom-in') {\n zoomIn();\n } else if (e.detail?.action === 'zoom-out') {\n zoomOut();\n } else if (e.detail?.action === 'rotate-left') {\n rotateLeft();\n } else if (e.detail?.action === 'rotate-right') {\n rotateRight();\n } else if (e.detail?.action === 'flip-x') {\n flipX();\n } else if (e.detail?.action === 'flip-y') {\n flipY();\n } else if (e.detail?.action === 'download') {\n download();\n }\n };\n\n const itemElement = elementRef.current;\n\n if (itemElement) {\n itemElement.addEventListener('gallery-zoom-in', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-zoom-out', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-rotate-left', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-rotate-right', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-flip-x', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-flip-y', handleCustomEvent as EventListener);\n itemElement.addEventListener('gallery-download', handleCustomEvent as EventListener);\n }\n\n return () => {\n if (itemElement) {\n itemElement.removeEventListener('gallery-zoom-in', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-zoom-out', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-rotate-left', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-rotate-right', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-flip-x', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-flip-y', handleCustomEvent as EventListener);\n itemElement.removeEventListener('gallery-download', handleCustomEvent as EventListener);\n }\n };\n }, [normalScale, zoomedScale]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index) {\n setIsActive(true);\n } else {\n setIsActive(false);\n }\n }, [gallery?.state.activeIndex, index]);\n\n const attributes = React.useMemo(() => {\n return {\n 'data-active': isActive\n };\n }, [isActive]);\n\n const CSSVariables = React.useMemo(() => {\n return {\n '--position-x': `${position.x}px`,\n '--position-y': `${position.y}px`,\n '--scale': `${scale}`,\n '--rotation': `${rotation}deg`,\n '--flip-x': flip.x,\n '--flip-y': flip.y\n } as React.CSSProperties;\n }, [position, scale, rotation, flip]);\n\n const state = {\n index,\n position,\n scale,\n rotation,\n flip,\n isActive,\n dragStart,\n hasDragged\n };\n\n return {\n state,\n attributes,\n CSSVariables,\n handlePointerUp,\n handlePointerMove,\n handlePointerDown,\n handleClick,\n handleDragStart,\n zoomIn,\n zoomOut,\n rotateLeft,\n rotateRight,\n flipX,\n flipY,\n download,\n calculateConstraints,\n calculateItemSize\n };\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useGallery } from '@primereact/headless/gallery';\nimport { styles } from '@primereact/styles/gallery';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { GalleryProvider } from './Gallery.context';\nimport { defaultProps } from './Gallery.props';\nimport { GalleryBackdrop } from './backdrop/GalleryBackdrop';\nimport { GalleryContent } from './content/GalleryContent';\nimport { GalleryItem } from './item/GalleryItem';\nimport { GalleryNext } from './next/GalleryNext';\nimport { GalleryPrev } from './prev/GalleryPrev';\nimport { GalleryThumbnail } from './thumbnail/GalleryThumbnail';\nimport { GalleryThumbnailContent } from './thumbnailcontent/GalleryThumbnailContent';\nimport { GalleryThumbnailItem } from './thumbnailitem/GalleryThumbnailItem';\nimport { GalleryToolbar } from './toolbar/GalleryToolbar';\nimport { GalleryToolbarItem } from './toolbaritem/GalleryToolbarItem';\n\nexport const Gallery = withComponent({\n name: 'Gallery',\n defaultProps,\n styles,\n setup(instance) {\n const gallery = useGallery(instance.inProps);\n\n return gallery;\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 <GalleryProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </GalleryProvider>\n );\n },\n components: {\n Backdrop: GalleryBackdrop,\n Content: GalleryContent,\n Item: GalleryItem,\n Next: GalleryNext,\n Prev: GalleryPrev,\n Toolbar: GalleryToolbar,\n ToolbarItem: GalleryToolbarItem,\n Thumbnail: GalleryThumbnail,\n ThumbnailContent: GalleryThumbnailContent,\n ThumbnailItem: GalleryThumbnailItem\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 { GalleryInstance } from '@primereact/types/shared/gallery';\n\nexport const [GalleryProvider, useGalleryContext] = createOptionalContext<GalleryInstance>();\n","import * as HeadlessGallery from '@primereact/headless/gallery';\nimport type { GalleryProps } from '@primereact/types/shared/gallery';\n\nexport const defaultProps: GalleryProps = {\n ...HeadlessGallery.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 { useGalleryContext } from '../Gallery.context';\nimport { defaultCloseProps } from './GalleryBackdrop.props';\n\nexport const GalleryBackdrop = withComponent({\n name: 'GalleryBackdrop',\n defaultProps: defaultCloseProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('backdrop')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryBackdropProps } from '@primereact/types/shared/gallery';\n\nexport const defaultCloseProps: GalleryBackdropProps = {\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 { useGalleryContext } from '../Gallery.context';\nimport { defaultContentProps } from './GalleryContent.props';\n\nexport const GalleryContent = withComponent({\n name: 'GalleryContent',\n defaultProps: defaultContentProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('content')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.contentRef} />;\n }\n});\n","import { GalleryContentProps } from '@primereact/types/shared/gallery';\n\nexport const defaultContentProps: GalleryContentProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useGalleryItem } from '@primereact/headless/gallery/item';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { GalleryItemProvider } from './GalleryItem.context';\nimport { defaultProps } from './GalleryItem.props';\n\nexport const GalleryItem = withComponent({\n name: 'GalleryItem',\n defaultProps,\n setup(instance) {\n const gallery = useGalleryContext();\n const galleryItem = useGalleryItem(instance.inProps);\n\n return { ...galleryItem, gallery };\n },\n render(instance) {\n const { id, props, ptmi, gallery, handleClick, handlePointerDown, handlePointerMove, handlePointerUp, handleDragStart, CSSVariables, attributes } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n className: gallery?.cx('item'),\n onClick: handleClick,\n onPointerDown: handlePointerDown,\n onPointerMove: handlePointerMove,\n onPointerUp: handlePointerUp,\n onDragStart: handleDragStart,\n style: CSSVariables,\n ...attributes\n },\n ptmi('root'),\n gallery?.ptm('item')\n );\n\n return (\n <GalleryItemProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </GalleryItemProvider>\n );\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { GalleryItemInstance } from '@primereact/types/shared/gallery';\n\nexport const [GalleryItemProvider, useGalleryItemContext] = createOptionalContext<GalleryItemInstance>();\n","import * as HeadlessGallery from '@primereact/headless/gallery';\nimport type { GalleryItemProps } from '@primereact/types/shared/gallery';\n\nexport const defaultProps: GalleryItemProps = {\n ...HeadlessGallery.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 { useGalleryContext } from '../Gallery.context';\nimport { defaultNextProps } from './GalleryNext.props';\n\nexport const GalleryNext = withComponent({\n name: 'GalleryNext',\n defaultProps: defaultNextProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('next'),\n onClick: gallery?.actions?.next\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.nextRef} />;\n }\n});\n","import { GalleryNextProps } from '@primereact/types/shared/gallery';\n\nexport const defaultNextProps: GalleryNextProps = {\n as: 'button'\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 { useGalleryContext } from '../Gallery.context';\nimport { defaultPrevProps } from './GalleryPrev.props';\n\nexport const GalleryPrev = withComponent({\n name: 'GalleryPrev',\n defaultProps: defaultPrevProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('prev'),\n onClick: gallery?.actions?.prev\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.prevRef} />;\n }\n});\n","import { GalleryPrevProps } from '@primereact/types/shared/gallery';\n\nexport const defaultPrevProps: GalleryPrevProps = {\n as: 'button'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { Carousel } from 'primereact/carousel';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailProps } from './GalleryThumbnail.props';\n\nexport const GalleryThumbnail = withComponent({\n name: 'GalleryThumbnail',\n defaultProps: defaultThumbnailProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('thumbnail')\n },\n ptmi('root')\n );\n\n return <Component as={Carousel} instance={instance} attrs={rootProps} children={props.children} ref={gallery?.thumbnailRef} />;\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useCarousel } from '@primereact/headless/carousel';\nimport { styles } from '@primereact/styles/carousel';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { CarouselProvider } from './Carousel.context';\nimport { defaultProps } from './Carousel.props';\nimport { CarouselContent } from './content';\nimport { CarouselIndicator } from './indicator';\nimport { CarouselIndicators } from './indicators';\nimport { CarouselItem } from './item';\nimport { CarouselNext } from './next';\nimport { CarouselPrev } from './prev';\n\nexport const Carousel = withComponent({\n name: 'Carousel',\n defaultProps,\n styles,\n setup(instance) {\n const carousel = useCarousel(instance.inProps);\n\n return carousel;\n },\n render(instance) {\n const { id, props, state, ptmi, cx } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n className: cx('root'),\n 'data-swiping': state.swiping\n },\n ptmi('root')\n );\n\n return (\n <CarouselProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </CarouselProvider>\n );\n },\n components: {\n Content: CarouselContent,\n Item: CarouselItem,\n Next: CarouselNext,\n Prev: CarouselPrev,\n Indicators: CarouselIndicators,\n Indicator: CarouselIndicator\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { CarouselInstance } from '@primereact/types/shared/carousel';\n\nexport const [CarouselProvider, useCarouselContext] = createOptionalContext<CarouselInstance>();\n","import * as HeadlessCarousel from '@primereact/headless/carousel';\nimport type { CarouselProps } from '@primereact/types/shared/carousel';\n\nexport const defaultProps: CarouselProps = {\n ...HeadlessCarousel.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 { useCarouselContext } from '../Carousel.context';\nimport { defaultContentProps } from './CarouselContent.props';\n\nexport const CarouselContent = withComponent({\n name: 'CarouselContent',\n defaultProps: defaultContentProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const contentProps = mergeProps(\n {\n className: carousel?.cx('content'),\n style: { ...carousel?.contentStyles, ...carousel?.sx('content') },\n onPointerDown: carousel?.onContentPointerDown,\n onPointerMove: carousel?.onContentPointerMove,\n onPointerUp: carousel?.onContentPointerUp,\n onWheel: carousel?.onContentWheel\n },\n carousel?.ptm('content'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={contentProps} children={props.children} ref={carousel?.contentRef} />;\n }\n});\n","import type { CarouselContentProps } from '@primereact/types/shared/carousel';\n\nexport const defaultContentProps: CarouselContentProps = {\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 { useCarouselContext } from '../Carousel.context';\nimport { defaultIndicatorProps } from './CarouselIndicator.props';\n\nexport const CarouselIndicator = withComponent({\n name: 'CarouselIndicator',\n defaultProps: defaultIndicatorProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const isActive = carousel?.state.page === props.page;\n\n const contentProps = mergeProps(\n {\n className: carousel?.cx('indicator', { active: isActive }),\n onClick: () => carousel?.scrollToPage(props.page),\n 'data-active': isActive\n },\n carousel?.ptm('indicator'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={contentProps} children={props.children} />;\n }\n});\n","import type { CarouselIndicatorProps } from '@primereact/types/shared/carousel';\n\nexport const defaultIndicatorProps: CarouselIndicatorProps = {\n as: 'button',\n page: undefined\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 { useCarouselContext } from '../Carousel.context';\nimport { CarouselIndicator } from '../indicator/CarouselIndicator';\nimport { defaultIndicatorsProps } from './CarouselIndicators.props';\n\nexport const CarouselIndicators = withComponent({\n name: 'CarouselIndicators',\n defaultProps: defaultIndicatorsProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const contentProps = mergeProps(\n {\n className: carousel?.cx('indicators')\n },\n carousel?.ptm('indicators'),\n ptmi('root')\n );\n\n return (\n <Component\n instance={instance}\n attrs={contentProps}\n children={\n props.children ?? (\n <>\n {Array.from(carousel?.state.snapPoints ?? []).map((_, i) => (\n <CarouselIndicator key={i} page={i} />\n ))}\n </>\n )\n }\n />\n );\n }\n});\n","import type { CarouselIndicatorsProps } from '@primereact/types/shared/carousel';\n\nexport const defaultIndicatorsProps: CarouselIndicatorsProps = {\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 { useCarouselContext } from '../Carousel.context';\nimport { defaultItemProps } from './CarouselItem.props';\n\nexport const CarouselItem = withComponent({\n name: 'CarouselItem',\n defaultProps: defaultItemProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { id, props, ptmi, carousel } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n className: carousel?.cx('item'),\n style: {\n ...(carousel?.itemStyles || {}),\n ...(carousel?.sx('item') || {})\n },\n 'data-value': props.value,\n 'data-item': '',\n 'data-inview': 'false'\n },\n carousel?.ptm('item'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselItemProps } from '@primereact/types/shared/carousel';\n\nexport const defaultItemProps: CarouselItemProps = {\n as: 'div',\n value: undefined\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 { useCarouselContext } from '../Carousel.context';\nimport { defaultNextProps } from './CarouselNext.props';\n\nexport const CarouselNext = withComponent({\n name: 'CarouselNext',\n defaultProps: defaultNextProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const disabled = carousel?.state.isNextDisabled || props.disabled;\n const rootProps = mergeProps(\n {\n className: carousel?.cx('next', { disabled }),\n onClick: carousel?.next,\n disabled\n },\n carousel?.ptm('prev'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselNextProps } from '@primereact/types/shared/carousel';\n\nexport const defaultNextProps: CarouselNextProps = {\n as: 'button'\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 { useCarouselContext } from '../Carousel.context';\nimport { defaultPrevProps } from './CarouselPrev.props';\n\nexport const CarouselPrev = withComponent({\n name: 'CarouselPrev',\n defaultProps: defaultPrevProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const disabled = carousel?.state.isPrevDisabled || props.disabled;\n const rootProps = mergeProps(\n {\n className: carousel?.cx('prev', { disabled }),\n onClick: carousel?.prev,\n disabled\n },\n carousel?.ptm('prev'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselPrevProps } from '@primereact/types/shared/carousel';\n\nexport const defaultPrevProps: CarouselPrevProps = {\n as: 'button'\n};\n","import { GalleryThumbnailProps } from '@primereact/types/shared/gallery';\n\nexport const defaultThumbnailProps: GalleryThumbnailProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { Carousel } from 'primereact/carousel';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailContentProps } from './GalleryThumbnailContent.props';\n\nexport const GalleryThumbnailContent = withComponent({\n name: 'GalleryThumbnailContent',\n defaultProps: defaultThumbnailContentProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('thumbnailContent')\n },\n ptmi('root')\n );\n\n return <Component as={Carousel.Content} instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryThumbnailContentProps } from '@primereact/types/shared/gallery';\n\nexport const defaultThumbnailContentProps: GalleryThumbnailContentProps = {};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { Carousel } from 'primereact/carousel';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailItemProps } from './GalleryThumbnailItem.props';\n\nexport const GalleryThumbnailItem = withComponent({\n name: 'GalleryThumbnailItem',\n defaultProps: defaultThumbnailItemProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('thumbnailItem')\n },\n ptmi('root')\n );\n\n return <Component as={Carousel.Item} instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryThumbnailItemProps } from '@primereact/types/shared/gallery';\n\nexport const defaultThumbnailItemProps: GalleryThumbnailItemProps = {};\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 { useGalleryContext } from '../Gallery.context';\nimport { defaultToolbarProps } from './GalleryToolbar.props';\n\nexport const GalleryToolbar = withComponent({\n name: 'GalleryToolbar',\n defaultProps: defaultToolbarProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('toolbar')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.toolbarRef} />;\n }\n});\n","import { GalleryToolbarProps } from '@primereact/types/shared/gallery';\n\nexport const defaultToolbarProps: GalleryToolbarProps = {\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 { useGalleryContext } from '../Gallery.context';\nimport { defaultToolbarItemProps } from './GalleryToolbarItem.props';\n\nexport const GalleryToolbarItem = withComponent({\n name: 'GalleryToolbarItem',\n defaultProps: defaultToolbarItemProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n {\n className: gallery?.cx('toolbarItem'),\n onClick: () => {\n gallery?.handleClickAction(props?.action);\n props?.onClick?.();\n }\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryToolbarItemProps } from '@primereact/types/shared/gallery';\n\nexport const defaultToolbarItemProps: GalleryToolbarItemProps = {\n as: 'div',\n action: undefined,\n onClick: undefined\n};\n","import type { useGalleryItemProps } from '@primereact/types/shared/gallery';\n\nexport const defaultItemProps: useGalleryItemProps = {\n normalScale: 1,\n zoomedScale: 3\n};\n"],"mappings":"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","names":["withHeadless","Component","useGallery","styles","mergeProps","withComponentInCore","baseStyles","withComponent","name","defaultProps","styles","__spreadProps","__spreadValues","baseStyles","components","setup","render","withComponentInCore","React","createOptionalContext","GalleryProvider","useGalleryContext","HeadlessGallery","defaultProps","__spreadProps","__spreadValues","Component","mergeProps","React","defaultCloseProps","GalleryBackdrop","withComponent","defaultCloseProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","mergeProps","React","defaultContentProps","GalleryContent","withComponent","defaultContentProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","useGalleryItem","mergeProps","React","createOptionalContext","GalleryItemProvider","useGalleryItemContext","HeadlessGallery","defaultProps","__spreadProps","__spreadValues","GalleryItem","withComponent","defaultProps","instance","gallery","useGalleryContext","galleryItem","useGalleryItem","__spreadProps","__spreadValues","id","props","ptmi","handleClick","handlePointerDown","handlePointerMove","handlePointerUp","handleDragStart","CSSVariables","attributes","rootProps","mergeProps","GalleryItemProvider","Component","Component","mergeProps","React","defaultNextProps","GalleryNext","withComponent","defaultNextProps","useGalleryContext","instance","_a","props","ptmi","gallery","rootProps","mergeProps","Component","Component","mergeProps","React","defaultPrevProps","GalleryPrev","withComponent","defaultPrevProps","useGalleryContext","instance","_a","props","ptmi","gallery","rootProps","mergeProps","Component","Component","mergeProps","Component","useCarousel","styles","mergeProps","React","createOptionalContext","CarouselProvider","useCarouselContext","HeadlessCarousel","defaultProps","__spreadProps","__spreadValues","Component","mergeProps","React","defaultContentProps","CarouselContent","withComponent","defaultContentProps","useCarouselContext","instance","props","ptmi","carousel","contentProps","mergeProps","__spreadValues","Component","Component","mergeProps","React","defaultIndicatorProps","CarouselIndicator","withComponent","defaultIndicatorProps","useCarouselContext","instance","props","ptmi","carousel","isActive","contentProps","mergeProps","Component","Component","mergeProps","React","defaultIndicatorsProps","CarouselIndicators","withComponent","defaultIndicatorsProps","useCarouselContext","instance","_a","_b","props","ptmi","carousel","contentProps","mergeProps","Component","_","i","CarouselIndicator","Component","mergeProps","React","defaultItemProps","CarouselItem","withComponent","defaultItemProps","useCarouselContext","instance","id","props","ptmi","carousel","rootProps","mergeProps","__spreadValues","Component","Component","mergeProps","React","defaultNextProps","CarouselNext","withComponent","defaultNextProps","useCarouselContext","instance","props","ptmi","carousel","disabled","rootProps","mergeProps","Component","Component","mergeProps","React","defaultPrevProps","CarouselPrev","withComponent","defaultPrevProps","useCarouselContext","instance","props","ptmi","carousel","disabled","rootProps","mergeProps","Component","Carousel","withComponent","defaultProps","styles","instance","useCarousel","id","props","state","ptmi","cx","rootProps","mergeProps","CarouselProvider","Component","CarouselContent","CarouselItem","CarouselNext","CarouselPrev","CarouselIndicators","CarouselIndicator","React","defaultThumbnailProps","GalleryThumbnail","withComponent","defaultThumbnailProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Carousel","Component","mergeProps","React","defaultThumbnailContentProps","GalleryThumbnailContent","withComponent","defaultThumbnailContentProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Carousel","Component","mergeProps","React","defaultThumbnailItemProps","GalleryThumbnailItem","withComponent","defaultThumbnailItemProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Carousel","Component","mergeProps","React","defaultToolbarProps","GalleryToolbar","withComponent","defaultToolbarProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","mergeProps","React","defaultToolbarItemProps","GalleryToolbarItem","withComponent","defaultToolbarItemProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","_a","Component","Gallery","withComponent","defaultProps","styles","instance","useGallery","id","props","ptmi","cx","rootProps","mergeProps","GalleryProvider","Component","GalleryBackdrop","GalleryContent","GalleryItem","GalleryNext","GalleryPrev","GalleryToolbar","GalleryToolbarItem","GalleryThumbnail","GalleryThumbnailContent","GalleryThumbnailItem","React","defaultItemProps","useGalleryItem","withHeadless","defaultItemProps","props","elementRef","normalScale","zoomedScale","gallery","useGalleryContext","index","setIndex","isActive","setIsActive","position","setPosition","scale","setScale","rotation","setRotation","flip","setFlip","isDragging","setIsDragging","dragStart","setDragStart","hasDragged","setHasDragged","pointerDataRef","lastDistanceRef","calculateItemSize","contentRect","imageElement","naturalWidth","naturalHeight","isRotated","naturalAspectRatio","contentAspectRatio","targetWidth","targetHeight","calculateConstraints","targetScale","scaleToUse","itemElement","originalWidth","originalHeight","scaledWidth","scaledHeight","contentCenterX","contentCenterY","halfScaledWidth","halfScaledHeight","maxX","minX","maxY","minY","zoomIn","hiddenStyles","zoomOut","resetStyles","rotateLeft","prev","rotateRight","flipX","__spreadProps","__spreadValues","flipY","download","link","urlParts","filename","handleClick","e","itemRect","itemCenterX","itemCenterY","clickX","clickY","offsetX","offsetY","zoomOffsetX","zoomOffsetY","constraints","constrainedX","constrainedY","handleDragStart","handlePointerDown","handlePointerMove","pointers","p1","p2","distance","delta","newScale","pointer","newX","newY","computedX","computedY","handlePointerUp","handleResize","handleCustomEvent","_a","_b","_c","_d","_e","_f","_g","attributes","CSSVariables"]}
1
+ {"version":3,"sources":["../../../src/gallery/item/useGalleryItem.ts","../../../../../primereact/src/gallery/Gallery.context.ts","../../../../../primereact/src/gallery/Gallery.parts.ts","../../../../../primereact/src/gallery/backdrop/GalleryBackdrop.tsx","../../../../../primereact/src/gallery/backdrop/GalleryBackdrop.props.ts","../../../../../primereact/src/gallery/content/GalleryContent.tsx","../../../../../primereact/src/gallery/content/GalleryContent.props.ts","../../../../../primereact/src/gallery/download/GalleryDownload.tsx","../../../../../primereact/src/gallery/download/GalleryDownload.props.ts","../../../../../primereact/src/gallery/flipx/GalleryFlipX.tsx","../../../../../primereact/src/gallery/flipx/GalleryFlipX.props.ts","../../../../../primereact/src/gallery/flipy/GalleryFlipY.tsx","../../../../../primereact/src/gallery/flipy/GalleryFlipY.props.ts","../../../../../primereact/src/gallery/footer/GalleryFooter.tsx","../../../../../primereact/src/gallery/footer/GalleryFooter.props.ts","../../../../../primereact/src/gallery/fullscreen/GalleryFullScreen.tsx","../../../../../primereact/src/gallery/fullscreen/GalleryFullScreen.props.ts","../../../../../primereact/src/gallery/header/GalleryHeader.tsx","../../../../../primereact/src/gallery/header/GalleryHeader.props.ts","../../../../../primereact/src/gallery/item/GalleryItem.tsx","../../../../../primereact/src/gallery/item/GalleryItem.context.ts","../../../../../primereact/src/gallery/item/GalleryItem.props.ts","../../../../../primereact/src/gallery/next/GalleryNext.tsx","../../../../../primereact/src/gallery/next/GalleryNext.props.ts","../../../../../primereact/src/gallery/prev/GalleryPrev.tsx","../../../../../primereact/src/gallery/prev/GalleryPrev.props.ts","../../../../../primereact/src/gallery/root/GalleryRoot.tsx","../../../../../primereact/src/gallery/root/GalleryRoot.props.ts","../../../../../primereact/src/gallery/rotateleft/GalleryRotateLeft.tsx","../../../../../primereact/src/gallery/rotateleft/GalleryRotateLeft.props.ts","../../../../../primereact/src/gallery/rotateright/GalleryRotateRight.tsx","../../../../../primereact/src/gallery/rotateright/GalleryRotateRight.props.ts","../../../../../primereact/src/gallery/thumbnail/GalleryThumbnail.tsx","../../../../../primereact/src/carousel/Carousel.context.ts","../../../../../primereact/src/carousel/Carousel.parts.ts","../../../../../primereact/src/carousel/content/CarouselContent.tsx","../../../../../primereact/src/carousel/content/CarouselContent.props.ts","../../../../../primereact/src/carousel/indicator/CarouselIndicator.tsx","../../../../../primereact/src/carousel/indicator/CarouselIndicator.props.ts","../../../../../primereact/src/carousel/indicators/CarouselIndicators.tsx","../../../../../primereact/src/carousel/indicators/CarouselIndicators.props.ts","../../../../../primereact/src/carousel/item/CarouselItem.tsx","../../../../../primereact/src/carousel/item/CarouselItem.props.ts","../../../../../primereact/src/carousel/next/CarouselNext.tsx","../../../../../primereact/src/carousel/next/CarouselNext.props.ts","../../../../../primereact/src/carousel/prev/CarouselPrev.tsx","../../../../../primereact/src/carousel/prev/CarouselPrev.props.ts","../../../../../primereact/src/carousel/root/CarouselRoot.tsx","../../../../../primereact/src/carousel/root/CarouselRoot.props.ts","../../../../../primereact/src/carousel/Carousel.props.ts","../../../../../primereact/src/gallery/thumbnail/GalleryThumbnail.props.ts","../../../../../primereact/src/gallery/thumbnailcontent/GalleryThumbnailContent.tsx","../../../../../primereact/src/gallery/thumbnailcontent/GalleryThumbnailContent.props.ts","../../../../../primereact/src/gallery/thumbnailitem/GalleryThumbnailItem.tsx","../../../../../primereact/src/gallery/thumbnailitem/GalleryThumbnailItem.props.ts","../../../../../primereact/src/gallery/zoomin/GalleryZoomIn.tsx","../../../../../primereact/src/gallery/zoomin/GalleryZoomIn.props.ts","../../../../../primereact/src/gallery/zoomout/GalleryZoomOut.tsx","../../../../../primereact/src/gallery/zoomout/GalleryZoomOut.props.ts","../../../../../primereact/src/gallery/zoomtoggle/GalleryZoomToggle.tsx","../../../../../primereact/src/gallery/zoomtoggle/GalleryZoomToggle.props.ts","../../../../../primereact/src/gallery/Gallery.props.ts","../../../src/gallery/item/useGalleryItem.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useGalleryContext } from 'primereact/gallery';\nimport * as React from 'react';\nimport { defaultItemProps } from './useGalleryItem.props';\n\nexport const useGalleryItem = withHeadless({\n name: 'useGalleryItem',\n defaultProps: defaultItemProps,\n setup: ({ props, elementRef }) => {\n const { context: galleryProp, normalScale = 1, zoomedScale = 3 } = props;\n\n const galleryContext = useGalleryContext();\n const gallery = galleryProp ?? galleryContext;\n const [index, setIndex] = React.useState(-1);\n const [isActive, setIsActive] = React.useState(false);\n const [position, setPosition] = React.useState({ x: 0, y: 0 });\n const [scale, setScale] = React.useState(1);\n const [rotation, setRotation] = React.useState(0);\n const [flip, setFlip] = React.useState({ x: 1, y: 1 });\n const [isRotating, setIsRotating] = React.useState(false);\n\n const registeredIndexRef = React.useRef<number | null>(null);\n const pointerDataRef = React.useRef<Map<number, { x: number; y: number }>>(new Map());\n const pointerStartRef = React.useRef({ x: 0, y: 0 });\n const lastDistanceRef = React.useRef(0);\n const initialPinchDistanceRef = React.useRef(0);\n const initialPinchScaleRef = React.useRef(1);\n const isPinchingRef = React.useRef(false);\n const liveScaleRef = React.useRef(1);\n const livePositionRef = React.useRef({ x: 0, y: 0 });\n const isDraggingRef = React.useRef(false);\n const dragStartRef = React.useRef({ x: 0, y: 0 });\n const hasDraggedRef = React.useRef(false);\n const wheelSyncTimerRef = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n\n React.useLayoutEffect(() => {\n if (gallery?.registerItem) {\n const newIndex = gallery.registerItem(registeredIndexRef.current);\n\n registeredIndexRef.current = newIndex;\n\n if (newIndex !== index) {\n setIndex(newIndex);\n }\n }\n }, [gallery]);\n\n React.useEffect(() => {\n liveScaleRef.current = scale;\n }, [scale]);\n\n React.useEffect(() => {\n livePositionRef.current = position;\n }, [position]);\n\n const calculateItemSize = React.useCallback(() => {\n if (!gallery?.contentRef.current || !elementRef.current) return;\n\n const contentRect = gallery?.contentRef.current.getBoundingClientRect();\n\n const imageElement = elementRef.current.firstElementChild as HTMLImageElement;\n\n if (!imageElement) return;\n\n let naturalWidth = imageElement.naturalWidth || imageElement.offsetWidth;\n let naturalHeight = imageElement.naturalHeight || imageElement.offsetHeight;\n\n if (naturalWidth === 0 || naturalHeight === 0) return;\n\n const isRotated = Math.abs(rotation) % 180 === 90;\n\n if (isRotated) {\n [naturalWidth, naturalHeight] = [naturalHeight, naturalWidth];\n }\n\n const naturalAspectRatio = naturalWidth / naturalHeight;\n const contentAspectRatio = contentRect.width / contentRect.height;\n\n let targetWidth, targetHeight;\n\n if (naturalAspectRatio > contentAspectRatio) {\n targetWidth = Math.min(contentRect.width * 0.99, naturalWidth);\n targetHeight = targetWidth / naturalAspectRatio;\n } else {\n targetHeight = Math.min(contentRect.height * 0.99, naturalHeight);\n targetWidth = targetHeight * naturalAspectRatio;\n }\n\n if (isRotated) {\n imageElement.style.width = `${targetHeight}px`;\n imageElement.style.height = `${targetWidth}px`;\n elementRef.current.style.width = `${targetHeight > 0 ? targetHeight : 'auto'}px`;\n elementRef.current.style.height = `${targetWidth > 0 ? targetWidth : 'auto'}px`;\n } else {\n imageElement.style.width = `${targetWidth}px`;\n imageElement.style.height = `${targetHeight}px`;\n elementRef.current.style.width = `${targetWidth > 0 ? targetWidth : 'auto'}px`;\n elementRef.current.style.height = `${targetHeight > 0 ? targetHeight : 'auto'}px`;\n }\n\n elementRef.current.style.aspectRatio = `${naturalWidth / naturalHeight}`;\n }, [gallery?.contentRef, rotation]);\n\n const calculateConstraints = React.useCallback(\n (targetScale?: number) => {\n if (!gallery?.contentRef.current || !elementRef.current) return { minX: 0, maxX: 0, minY: 0, maxY: 0 };\n\n const contentRect = gallery?.contentRef.current.getBoundingClientRect();\n const scaleToUse = targetScale !== undefined ? targetScale : liveScaleRef.current;\n\n const itemElement = elementRef.current.firstElementChild as HTMLElement;\n\n if (!itemElement) return { minX: 0, maxX: 0, minY: 0, maxY: 0 };\n\n let originalWidth = itemElement.offsetWidth;\n let originalHeight = itemElement.offsetHeight;\n\n const isRotated = Math.abs(rotation) % 180 === 90;\n\n if (isRotated) {\n [originalWidth, originalHeight] = [originalHeight, originalWidth];\n }\n\n const scaledWidth = originalWidth * scaleToUse;\n const scaledHeight = originalHeight * scaleToUse;\n\n const contentCenterX = contentRect.width / 2;\n const contentCenterY = contentRect.height / 2;\n\n const halfScaledWidth = scaledWidth / 2;\n const halfScaledHeight = scaledHeight / 2;\n\n const maxX = halfScaledWidth > contentCenterX ? halfScaledWidth - contentCenterX : 0;\n const minX = halfScaledWidth > contentCenterX ? -(halfScaledWidth - contentCenterX) : 0;\n\n const maxY = halfScaledHeight > contentCenterY ? halfScaledHeight - contentCenterY : 0;\n const minY = halfScaledHeight > contentCenterY ? -(halfScaledHeight - contentCenterY) : 0;\n\n return { minX, maxX, minY, maxY };\n },\n [gallery?.contentRef, rotation]\n );\n\n const zoomIn = React.useCallback(() => {\n setScale(zoomedScale);\n\n if (elementRef.current) {\n elementRef.current.style.cursor = 'zoom-out';\n }\n }, [zoomedScale]);\n\n const zoomOut = React.useCallback(() => {\n setScale(normalScale);\n setPosition({ x: 0, y: 0 });\n\n if (elementRef.current) {\n elementRef.current.style.cursor = 'zoom-in';\n }\n }, [normalScale]);\n\n const rotateLeft = () => {\n setIsRotating(true);\n\n if (elementRef.current) elementRef.current.style.transition = '';\n\n setRotation((prev) => prev - 90);\n };\n\n const rotateRight = () => {\n setIsRotating(true);\n\n if (elementRef.current) elementRef.current.style.transition = '';\n\n setRotation((prev) => prev + 90);\n };\n\n const flipX = () => {\n setFlip((prev) => ({ ...prev, x: Math.sign(prev.x) * -1 }));\n };\n\n const flipY = () => {\n setFlip((prev) => ({ ...prev, y: Math.sign(prev.y) * -1 }));\n };\n\n const download = () => {\n if (!elementRef.current) return;\n\n const imageElement = elementRef.current.querySelector('img') as HTMLImageElement;\n\n if (!imageElement || !imageElement.src) return;\n\n const link = document.createElement('a');\n\n link.href = imageElement.src;\n\n const urlParts = imageElement.src.split('/');\n const filename = urlParts[urlParts.length - 1] || 'image.jpg';\n\n link.download = filename;\n link.target = '_blank';\n\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n };\n\n const handleClick = React.useCallback(\n (e: React.MouseEvent) => {\n if (hasDraggedRef.current) {\n hasDraggedRef.current = false;\n\n return;\n }\n\n if (liveScaleRef.current === normalScale) {\n if (elementRef.current) {\n const itemRect = elementRef.current.getBoundingClientRect();\n\n const itemCenterX = itemRect.width / 2;\n const itemCenterY = itemRect.height / 2;\n\n const clickX = e.clientX - itemRect.left;\n const clickY = e.clientY - itemRect.top;\n\n const offsetX = itemCenterX - clickX;\n const offsetY = itemCenterY - clickY;\n\n const zoomOffsetX = offsetX * (zoomedScale - 1);\n const zoomOffsetY = offsetY * (zoomedScale - 1);\n\n const constraints = calculateConstraints(zoomedScale);\n const constrainedX = Math.max(constraints.minX, Math.min(constraints.maxX, zoomOffsetX));\n const constrainedY = Math.max(constraints.minY, Math.min(constraints.maxY, zoomOffsetY));\n\n setPosition({ x: constrainedX, y: constrainedY });\n }\n\n zoomIn();\n } else {\n zoomOut();\n }\n },\n [normalScale, zoomedScale, calculateConstraints, zoomIn, zoomOut]\n );\n\n const handleDragStart = React.useCallback((e: React.DragEvent<HTMLDivElement>) => {\n e.preventDefault();\n }, []);\n\n const handlePointerDown = React.useCallback((e: React.PointerEvent) => {\n e.currentTarget.setPointerCapture(e.pointerId);\n pointerDataRef.current.set(e.pointerId, { x: e.clientX, y: e.clientY });\n pointerStartRef.current = { x: e.clientX, y: e.clientY };\n\n if (e.pointerType === 'touch' && pointerDataRef.current.size >= 2) {\n isDraggingRef.current = false;\n initialPinchDistanceRef.current = 0;\n initialPinchScaleRef.current = liveScaleRef.current;\n } else if (liveScaleRef.current > 1) {\n if (e.pointerType === 'mouse' || (e.pointerType === 'touch' && pointerDataRef.current.size === 1)) {\n isDraggingRef.current = true;\n dragStartRef.current = { x: e.clientX - livePositionRef.current.x, y: e.clientY - livePositionRef.current.y };\n hasDraggedRef.current = false;\n }\n }\n }, []);\n\n const handlePointerMove = React.useCallback(\n (e: React.PointerEvent) => {\n if (!pointerDataRef.current.has(e.pointerId) || !elementRef.current) return;\n\n elementRef.current.style.transition = 'none';\n\n if (e.pointerType === 'mouse' && !elementRef.current.style.cursor) {\n elementRef.current.style.cursor = liveScaleRef.current > normalScale ? 'zoom-out' : 'zoom-in';\n }\n\n pointerDataRef.current.set(e.pointerId, { x: e.clientX, y: e.clientY });\n\n const pointers = Array.from(pointerDataRef.current.values());\n\n if (pointers.length === 2) {\n const [p1, p2] = pointers;\n const distance = Math.hypot(p2.x - p1.x, p2.y - p1.y);\n\n isPinchingRef.current = true;\n hasDraggedRef.current = true;\n\n if (initialPinchDistanceRef.current === 0) {\n initialPinchDistanceRef.current = distance;\n initialPinchScaleRef.current = liveScaleRef.current;\n } else {\n const ratio = distance / initialPinchDistanceRef.current;\n const newScale = Math.max(normalScale, Math.min(zoomedScale, initialPinchScaleRef.current * ratio));\n\n const constraints = calculateConstraints(newScale);\n const constrainedX = Math.max(constraints.minX, Math.min(constraints.maxX, livePositionRef.current.x));\n const constrainedY = Math.max(constraints.minY, Math.min(constraints.maxY, livePositionRef.current.y));\n\n liveScaleRef.current = newScale;\n livePositionRef.current = { x: constrainedX, y: constrainedY };\n\n elementRef.current.style.setProperty('--px-scale', `${newScale}`);\n elementRef.current.style.setProperty('--px-position-x', `${constrainedX}px`);\n elementRef.current.style.setProperty('--px-position-y', `${constrainedY}px`);\n }\n\n lastDistanceRef.current = distance;\n } else if (pointers.length === 1 && isDraggingRef.current) {\n const pointer = pointers[0];\n const newX = pointer.x - dragStartRef.current.x;\n const newY = pointer.y - dragStartRef.current.y;\n const constraints = calculateConstraints(liveScaleRef.current);\n\n const computedX = Math.max(constraints.minX, Math.min(constraints.maxX, newX));\n const computedY = Math.max(constraints.minY, Math.min(constraints.maxY, newY));\n\n livePositionRef.current = { x: computedX, y: computedY };\n\n elementRef.current.style.setProperty('--px-position-x', `${computedX}px`);\n elementRef.current.style.setProperty('--px-position-y', `${computedY}px`);\n\n const distFromStart = Math.hypot(pointer.x - pointerStartRef.current.x, pointer.y - pointerStartRef.current.y);\n\n if (distFromStart > 5) {\n hasDraggedRef.current = true;\n }\n }\n },\n [normalScale, zoomedScale, calculateConstraints]\n );\n\n const handlePointerUp = React.useCallback(\n (e: React.PointerEvent) => {\n if (!elementRef.current) return;\n\n elementRef.current.style.transition = '';\n\n if (e.pointerType === 'mouse') {\n elementRef.current.style.cursor = liveScaleRef.current > normalScale ? 'zoom-out' : 'zoom-in';\n }\n\n e.currentTarget.releasePointerCapture(e.pointerId);\n pointerDataRef.current.delete(e.pointerId);\n\n if (pointerDataRef.current.size < 2) {\n lastDistanceRef.current = 0;\n initialPinchDistanceRef.current = 0;\n initialPinchScaleRef.current = 1;\n isPinchingRef.current = false;\n }\n\n if (pointerDataRef.current.size === 0) {\n isDraggingRef.current = false;\n setScale(liveScaleRef.current);\n setPosition(livePositionRef.current);\n }\n },\n [normalScale]\n );\n\n React.useEffect(() => {\n if (scale <= 1) {\n setPosition({ x: 0, y: 0 });\n }\n }, [scale]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index && document.readyState === 'complete') {\n calculateItemSize();\n }\n }, [gallery?.state.activeIndex, index, calculateItemSize]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index) {\n calculateItemSize();\n }\n }, [rotation, calculateItemSize, gallery?.state.activeIndex, index]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index && gallery?.state.isFullscreen !== undefined) {\n calculateItemSize();\n }\n }, [gallery?.state.isFullscreen, calculateItemSize, gallery?.state.activeIndex, index]);\n\n React.useEffect(() => {\n const handleResize = () => {\n if (gallery?.state.activeIndex === index) {\n calculateItemSize();\n }\n };\n\n window.addEventListener('resize', handleResize);\n\n return () => window.removeEventListener('resize', handleResize);\n }, [gallery?.state.activeIndex, index, calculateItemSize]);\n\n // Watch pendingAction from gallery and execute on active item\n React.useEffect(() => {\n const action = gallery?.state.pendingAction;\n\n if (!action || !isActive) return;\n\n switch (action.type) {\n case 'zoom-in':\n zoomIn();\n break;\n case 'zoom-out':\n zoomOut();\n break;\n case 'rotate-left':\n rotateLeft();\n break;\n case 'rotate-right':\n rotateRight();\n break;\n case 'flip-x':\n flipX();\n break;\n case 'flip-y':\n flipY();\n break;\n case 'download':\n download();\n break;\n }\n\n gallery?.clearPendingAction();\n }, [gallery?.state.pendingAction, isActive]);\n\n React.useEffect(() => {\n const itemElement = elementRef.current;\n\n if (!itemElement || !isActive) return;\n\n const handleWheel = (e: WheelEvent) => {\n if (!e.ctrlKey) return;\n\n e.preventDefault();\n\n itemElement.style.transition = 'none';\n\n const delta = -e.deltaY;\n const scaleFactor = 1 + delta * 0.01;\n const newScale = Math.max(normalScale, Math.min(zoomedScale, liveScaleRef.current * scaleFactor));\n\n const constraints = calculateConstraints(newScale);\n const constrainedX = Math.max(constraints.minX, Math.min(constraints.maxX, livePositionRef.current.x));\n const constrainedY = Math.max(constraints.minY, Math.min(constraints.maxY, livePositionRef.current.y));\n\n liveScaleRef.current = newScale;\n livePositionRef.current = { x: constrainedX, y: constrainedY };\n\n itemElement.style.setProperty('--px-scale', `${newScale}`);\n itemElement.style.setProperty('--px-position-x', `${constrainedX}px`);\n itemElement.style.setProperty('--px-position-y', `${constrainedY}px`);\n\n if (wheelSyncTimerRef.current) {\n clearTimeout(wheelSyncTimerRef.current);\n }\n\n wheelSyncTimerRef.current = setTimeout(() => {\n itemElement.style.transition = '';\n itemElement.style.cursor = liveScaleRef.current > normalScale ? 'zoom-out' : 'zoom-in';\n\n setScale(liveScaleRef.current);\n setPosition(livePositionRef.current);\n wheelSyncTimerRef.current = null;\n }, 150);\n };\n\n itemElement.addEventListener('wheel', handleWheel, { passive: false });\n\n return () => {\n itemElement.removeEventListener('wheel', handleWheel);\n\n if (wheelSyncTimerRef.current) {\n clearTimeout(wheelSyncTimerRef.current);\n wheelSyncTimerRef.current = null;\n }\n };\n }, [isActive, normalScale, zoomedScale, calculateConstraints]);\n\n React.useEffect(() => {\n if (gallery?.state.activeIndex === index) {\n setIsActive(true);\n } else {\n setIsActive(false);\n }\n }, [gallery?.state.activeIndex, index]);\n\n React.useEffect(() => {\n if (isActive && gallery?.reportItemState) {\n gallery.reportItemState({\n zoomed: scale > normalScale,\n rotated: rotation !== 0,\n flipped: flip.x === -1 || flip.y === -1,\n scale,\n rotation,\n flip\n });\n }\n }, [isActive, scale, normalScale, rotation, flip, gallery?.reportItemState]);\n\n React.useLayoutEffect(() => {\n if (!isRotating) return;\n\n const id = setTimeout(() => setIsRotating(false), 300);\n\n return () => clearTimeout(id);\n }, [isRotating, rotation]);\n\n const attributes = React.useMemo(() => {\n return {\n ...(isActive ? { 'data-active': '' as const } : {}),\n ...(isRotating ? { 'data-rotating': '' as const } : {})\n };\n }, [isActive, isRotating]);\n\n const CSSVariables = React.useMemo(() => {\n return {\n '--px-position-x': `${position.x}px`,\n '--px-position-y': `${position.y}px`,\n '--px-scale': `${scale}`,\n '--px-rotation': `${rotation}deg`,\n '--px-flip-x': flip.x,\n '--px-flip-y': flip.y\n } as React.CSSProperties;\n }, [position, scale, rotation, flip]);\n\n const state = {\n index,\n position,\n scale,\n rotation,\n flip,\n isActive\n };\n\n const itemProps = {\n ref: elementRef as React.RefObject<HTMLDivElement>,\n 'data-scope': 'gallery' as const,\n 'data-part': 'item' as const,\n 'data-index': index,\n onClick: handleClick,\n onPointerDown: handlePointerDown,\n onPointerMove: handlePointerMove,\n onPointerUp: handlePointerUp,\n onDragStart: handleDragStart,\n style: CSSVariables,\n ...attributes\n };\n\n return {\n state,\n attributes,\n CSSVariables,\n itemProps,\n handlePointerUp,\n handlePointerMove,\n handlePointerDown,\n handleClick,\n handleDragStart,\n zoomIn,\n zoomOut,\n rotateLeft,\n rotateRight,\n flipX,\n flipY,\n download,\n calculateConstraints,\n calculateItemSize\n };\n }\n});\n","'use client';\nimport { createOptionalContext } from '@primereact/core/utils';\nimport type { GalleryRootInstance } from '@primereact/types/primitive/gallery';\n\nexport const [GalleryProvider, useGalleryContext] = createOptionalContext<GalleryRootInstance>();\n","export { GalleryBackdrop as Backdrop } from './backdrop';\nexport { GalleryContent as Content } from './content';\nexport { GalleryDownload as Download } from './download';\nexport { GalleryFlipX as FlipX } from './flipx';\nexport { GalleryFlipY as FlipY } from './flipy';\nexport { GalleryFooter as Footer } from './footer';\nexport { GalleryFullScreen as FullScreen } from './fullscreen';\nexport { GalleryHeader as Header } from './header';\nexport { GalleryItem as Item } from './item';\nexport { GalleryNext as Next } from './next';\nexport { GalleryPrev as Prev } from './prev';\nexport { GalleryRoot as Root } from './root';\nexport { GalleryRotateLeft as RotateLeft } from './rotateleft';\nexport { GalleryRotateRight as RotateRight } from './rotateright';\nexport { GalleryThumbnail as Thumbnail } from './thumbnail';\nexport { GalleryThumbnailContent as ThumbnailContent } from './thumbnailcontent';\nexport { GalleryThumbnailItem as ThumbnailItem } from './thumbnailitem';\nexport { GalleryZoomIn as ZoomIn } from './zoomin';\nexport { GalleryZoomOut as ZoomOut } from './zoomout';\nexport { GalleryZoomToggle as ZoomToggle } from './zoomtoggle';\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultBackdropProps } from './GalleryBackdrop.props';\n\nexport const GalleryBackdrop = withComponent({\n name: 'Gallery.Backdrop',\n defaultProps: defaultBackdropProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.backdropProps,\n {\n className: gallery?.cx('backdrop')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryBackdropProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultBackdropProps: GalleryBackdropProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultContentProps } from './GalleryContent.props';\n\nexport const GalleryContent = withComponent({\n name: 'Gallery.Content',\n defaultProps: defaultContentProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.contentProps,\n {\n className: gallery?.cx('content')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryContentProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultContentProps: GalleryContentProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultDownloadProps } from './GalleryDownload.props';\n\nexport const GalleryDownload = withComponent({\n name: 'Gallery.Download',\n defaultProps: defaultDownloadProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.downloadProps,\n {\n className: gallery?.cx('download')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryDownloadProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultDownloadProps: GalleryDownloadProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultFlipXProps } from './GalleryFlipX.props';\n\nexport const GalleryFlipX = withComponent({\n name: 'Gallery.FlipX',\n defaultProps: defaultFlipXProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.flipXProps,\n {\n className: gallery?.cx('flipX')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryFlipXProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultFlipXProps: GalleryFlipXProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultFlipYProps } from './GalleryFlipY.props';\n\nexport const GalleryFlipY = withComponent({\n name: 'Gallery.FlipY',\n defaultProps: defaultFlipYProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.flipYProps,\n {\n className: gallery?.cx('flipY')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryFlipYProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultFlipYProps: GalleryFlipYProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultFooterProps } from './GalleryFooter.props';\n\nexport const GalleryFooter = withComponent({\n name: 'Gallery.Footer',\n defaultProps: defaultFooterProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.footerProps,\n {\n className: gallery?.cx('footer')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryFooterProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultFooterProps: GalleryFooterProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultFullScreenProps } from './GalleryFullScreen.props';\n\nexport const GalleryFullScreen = withComponent({\n name: 'Gallery.FullScreen',\n defaultProps: defaultFullScreenProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n const isFullscreen = gallery?.state.isFullscreen ?? false;\n\n const rootProps = mergeProps(\n gallery?.fullScreenProps,\n {\n className: gallery?.cx('fullScreen')\n },\n ptmi('root')\n );\n\n const children = typeof props.children === 'function' ? props.children({ isFullscreen }) : props.children;\n\n return <Component instance={instance} attrs={rootProps} children={children} />;\n }\n});\n","import { GalleryFullScreenProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultFullScreenProps: GalleryFullScreenProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultHeaderProps } from './GalleryHeader.props';\n\nexport const GalleryHeader = withComponent({\n name: 'Gallery.Header',\n defaultProps: defaultHeaderProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.headerProps,\n {\n className: gallery?.cx('header')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryHeaderProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultHeaderProps: GalleryHeaderProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { useGalleryItem } from '@primereact/headless/gallery/item';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { GalleryItemProvider } from './GalleryItem.context';\nimport { defaultItemProps } from './GalleryItem.props';\n\nexport const GalleryItem = withComponent({\n name: 'Gallery.Item',\n defaultProps: defaultItemProps,\n setup(instance) {\n const gallery = useGalleryContext();\n const galleryItem = useGalleryItem(instance.inProps);\n\n return { ...galleryItem, gallery };\n },\n render(instance) {\n const { id, props, ptmi, gallery, itemProps } = instance;\n\n const rootProps = mergeProps(\n itemProps,\n {\n id,\n className: gallery?.cx('item')\n },\n ptmi('root'),\n gallery?.ptm('item')\n );\n\n return (\n <GalleryItemProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </GalleryItemProvider>\n );\n }\n});\n","'use client';\nimport { createOptionalContext } from '@primereact/core/utils';\nimport type { GalleryItemInstance } from '@primereact/types/primitive/gallery';\n\nexport const [GalleryItemProvider, useGalleryItemContext] = createOptionalContext<GalleryItemInstance>();\n","import * as HeadlessGallery from '@primereact/headless/gallery';\nimport type { GalleryItemProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultItemProps: GalleryItemProps = {\n ...HeadlessGallery.defaultProps,\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultNextProps } from './GalleryNext.props';\n\nexport const GalleryNext = withComponent({\n name: 'Gallery.Next',\n defaultProps: defaultNextProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.nextProps,\n {\n className: gallery?.cx('next')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.nextRef} />;\n }\n});\n","import { GalleryNextProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultNextProps: GalleryNextProps = {\n as: 'button'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultPrevProps } from './GalleryPrev.props';\n\nexport const GalleryPrev = withComponent({\n name: 'Gallery.Prev',\n defaultProps: defaultPrevProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.prevProps,\n {\n className: gallery?.cx('prev')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} ref={gallery?.prevRef} />;\n }\n});\n","import { GalleryPrevProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultPrevProps: GalleryPrevProps = {\n as: 'button'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { useGallery } from '@primereact/headless/gallery';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport { GalleryProvider } from '../Gallery.context';\nimport { defaultRootProps } from './GalleryRoot.props';\n\nexport const GalleryRoot = withComponent({\n name: 'Gallery.Root',\n defaultProps: defaultRootProps,\n setup(instance) {\n const gallery = useGallery(instance.inProps);\n\n return gallery;\n },\n render(instance) {\n const { props, ptmi, cx, rootProps: headlessRootProps } = instance;\n const isFullscreen = !!props.fullscreen;\n\n const rootProps = mergeProps(\n headlessRootProps,\n {\n className: cx('root')\n },\n ptmi('root')\n );\n\n const element = (\n <GalleryProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </GalleryProvider>\n );\n\n if (isFullscreen && typeof document !== 'undefined') {\n return createPortal(element, document.body);\n }\n\n return element;\n }\n});\n","import * as HeadlessGallery from '@primereact/headless/gallery';\nimport type { GalleryRootProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultRootProps: GalleryRootProps = {\n ...HeadlessGallery.defaultProps,\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultRotateLeftProps } from './GalleryRotateLeft.props';\n\nexport const GalleryRotateLeft = withComponent({\n name: 'Gallery.RotateLeft',\n defaultProps: defaultRotateLeftProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.rotateLeftProps,\n {\n className: gallery?.cx('rotateLeft')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryRotateLeftProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultRotateLeftProps: GalleryRotateLeftProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultRotateRightProps } from './GalleryRotateRight.props';\n\nexport const GalleryRotateRight = withComponent({\n name: 'Gallery.RotateRight',\n defaultProps: defaultRotateRightProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.rotateRightProps,\n {\n className: gallery?.cx('rotateRight')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryRotateRightProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultRotateRightProps: GalleryRotateRightProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailProps } from './GalleryThumbnail.props';\n\nexport const GalleryThumbnail = withComponent({\n name: 'Gallery.Thumbnail',\n defaultProps: defaultThumbnailProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n const { as, ...restProps } = props;\n\n const rootProps = mergeProps(\n restProps,\n gallery?.thumbnailProps,\n {\n className: gallery?.cx('thumbnail')\n },\n gallery?.ptm('thumbnail'),\n ptmi('root')\n );\n\n return <Component as={as} instance={instance} attrs={rootProps} children={props.children} ref={gallery?.thumbnailRef} />;\n }\n});\n","'use client';\nimport { createOptionalContext } from '@primereact/core/utils';\nimport type { CarouselRootInstance } from '@primereact/types/primitive/carousel';\n\nexport const [CarouselProvider, useCarouselContext] = createOptionalContext<CarouselRootInstance>();\n","export { CarouselContent as Content } from './content';\nexport { CarouselIndicator as Indicator } from './indicator';\nexport { CarouselIndicators as Indicators } from './indicators';\nexport { CarouselItem as Item } from './item';\nexport { CarouselNext as Next } from './next';\nexport { CarouselPrev as Prev } from './prev';\nexport { CarouselRoot as Root } from './root';\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { defaultContentProps } from './CarouselContent.props';\n\nexport const CarouselContent = withComponent({\n name: 'Carousel.Content',\n defaultProps: defaultContentProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const contentProps = mergeProps(\n carousel?.contentProps,\n {\n className: carousel?.cx('content')\n },\n carousel?.ptm('content'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={contentProps} children={props.children} />;\n }\n});\n","import type { CarouselContentProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultContentProps: CarouselContentProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { defaultIndicatorProps } from './CarouselIndicator.props';\n\nexport const CarouselIndicator = withComponent({\n name: 'Carousel.Indicator',\n defaultProps: defaultIndicatorProps,\n setup(instance) {\n const carousel = useCarouselContext();\n const isActive = carousel?.state.page === instance.props.page;\n\n return { carousel, isActive };\n },\n render(instance) {\n const { props, ptmi, carousel, isActive } = instance;\n\n const contentProps = mergeProps(\n carousel?.getIndicatorProps(props.page ?? 0),\n {\n className: carousel?.cx('indicator', { active: isActive })\n },\n carousel?.ptm('indicator'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={contentProps} children={props.children} />;\n }\n});\n","import type { CarouselIndicatorProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultIndicatorProps: CarouselIndicatorProps = {\n as: 'button',\n page: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { CarouselIndicator } from '../indicator/CarouselIndicator';\nimport { defaultIndicatorsProps } from './CarouselIndicators.props';\n\nexport const CarouselIndicators = withComponent({\n name: 'Carousel.Indicators',\n defaultProps: defaultIndicatorsProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { props, ptmi, carousel } = instance;\n\n const contentProps = mergeProps(\n carousel?.indicatorsProps,\n {\n className: carousel?.cx('indicators')\n },\n carousel?.ptm('indicators'),\n ptmi('root')\n );\n\n return (\n <Component\n instance={instance}\n attrs={contentProps}\n children={\n props.children ?? (\n <>\n {Array.from(carousel?.state.snapPoints ?? []).map((_, i) => (\n <CarouselIndicator key={i} page={i} />\n ))}\n </>\n )\n }\n />\n );\n }\n});\n","import type { CarouselIndicatorsProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultIndicatorsProps: CarouselIndicatorsProps = {\n as: 'div'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { defaultItemProps } from './CarouselItem.props';\n\nexport const CarouselItem = withComponent({\n name: 'Carousel.Item',\n defaultProps: defaultItemProps,\n setup() {\n const carousel = useCarouselContext();\n\n return { carousel };\n },\n render(instance) {\n const { id, props, ptmi, carousel } = instance;\n\n const rootProps = mergeProps(\n carousel?.getItemProps(props.value),\n {\n id,\n className: carousel?.cx('item')\n },\n carousel?.ptm('item'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselItemProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultItemProps: CarouselItemProps = {\n as: 'div',\n value: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { defaultNextProps } from './CarouselNext.props';\n\nexport const CarouselNext = withComponent({\n name: 'Carousel.Next',\n defaultProps: defaultNextProps,\n setup(instance) {\n const carousel = useCarouselContext();\n const disabled = (carousel?.state.isNextDisabled || instance.props.disabled) ?? false;\n\n return { carousel, disabled };\n },\n render(instance) {\n const { props, ptmi, carousel, disabled } = instance;\n\n const rootProps = mergeProps(\n carousel?.getNextProps(disabled),\n {\n className: carousel?.cx('next', { disabled })\n },\n carousel?.ptm('next'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselNextProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultNextProps: CarouselNextProps = {\n as: 'button'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useCarouselContext } from '../Carousel.context';\nimport { defaultPrevProps } from './CarouselPrev.props';\n\nexport const CarouselPrev = withComponent({\n name: 'Carousel.Prev',\n defaultProps: defaultPrevProps,\n setup(instance) {\n const carousel = useCarouselContext();\n const disabled = (carousel?.state.isPrevDisabled || instance.props.disabled) ?? false;\n\n return { carousel, disabled };\n },\n render(instance) {\n const { props, ptmi, carousel, disabled } = instance;\n\n const rootProps = mergeProps(\n carousel?.getPrevProps(disabled),\n {\n className: carousel?.cx('prev', { disabled })\n },\n carousel?.ptm('prev'),\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { CarouselPrevProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultPrevProps: CarouselPrevProps = {\n as: 'button'\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { useCarousel } from '@primereact/headless/carousel';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { CarouselProvider } from '../Carousel.context';\nimport { defaultRootProps } from './CarouselRoot.props';\n\nexport const CarouselRoot = withComponent({\n name: 'Carousel.Root',\n defaultProps: defaultRootProps,\n setup(instance) {\n const carousel = useCarousel(instance.inProps);\n\n return carousel;\n },\n render(instance) {\n const { id, props, rootProps: carouselRootProps, ptmi, cx } = instance;\n\n const rootProps = mergeProps(\n carouselRootProps,\n {\n id,\n className: cx('root')\n },\n ptmi('root')\n );\n\n return (\n <CarouselProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </CarouselProvider>\n );\n }\n});\n","import * as HeadlessCarousel from '@primereact/headless/carousel';\nimport type { CarouselRootProps } from '@primereact/types/primitive/carousel';\n\nexport const defaultRootProps: CarouselRootProps = {\n ...HeadlessCarousel.defaultProps,\n as: 'div'\n};\n","export { defaultContentProps } from './content';\nexport { defaultIndicatorProps } from './indicator';\nexport { defaultIndicatorsProps } from './indicators';\nexport { defaultItemProps } from './item';\nexport { defaultNextProps } from './next';\nexport { defaultPrevProps } from './prev';\nexport { defaultRootProps } from './root';\n","import { GalleryThumbnailProps } from '@primereact/types/primitive/gallery';\nimport { CarouselRoot } from 'primereact/carousel';\n\nexport const defaultThumbnailProps: GalleryThumbnailProps = {\n as: CarouselRoot,\n autoSize: true,\n loop: true,\n align: 'center',\n spacing: 8\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailContentProps } from './GalleryThumbnailContent.props';\n\nexport const GalleryThumbnailContent = withComponent({\n name: 'Gallery.ThumbnailContent',\n defaultProps: defaultThumbnailContentProps,\n setup() {\n const gallery = useGalleryContext();\n const thumbnailContentProps = gallery?.thumbnailContentProps ?? {};\n\n return { gallery, thumbnailContentProps };\n },\n render(instance) {\n const { props, ptmi, gallery, thumbnailContentProps } = instance;\n const { as, ...restProps } = props;\n\n const rootProps = mergeProps(\n restProps,\n thumbnailContentProps,\n {\n className: gallery?.cx('thumbnailContent')\n },\n gallery?.ptm('thumbnailContent'),\n ptmi('root')\n );\n\n return <Component as={as} instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryThumbnailContentProps } from '@primereact/types/primitive/gallery';\nimport { CarouselContent } from 'primereact/carousel';\n\nexport const defaultThumbnailContentProps: GalleryThumbnailContentProps = {\n as: CarouselContent\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultThumbnailItemProps } from './GalleryThumbnailItem.props';\n\nexport const GalleryThumbnailItem = withComponent({\n name: 'Gallery.ThumbnailItem',\n defaultProps: defaultThumbnailItemProps,\n setup(instance) {\n const gallery = useGalleryContext();\n const { index } = instance.props;\n const thumbnailItemProps = gallery?.thumbnailItemProps(index) ?? {};\n\n return { gallery, thumbnailItemProps };\n },\n render(instance) {\n const { props, ptmi, gallery, thumbnailItemProps } = instance;\n const { as, ...restProps } = props;\n\n const rootProps = mergeProps(\n restProps,\n thumbnailItemProps,\n {\n className: gallery?.cx('thumbnailItem')\n },\n gallery?.ptm('thumbnailItem'),\n ptmi('root')\n );\n\n return <Component as={as} instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryThumbnailItemProps } from '@primereact/types/primitive/gallery';\nimport { CarouselItem } from 'primereact/carousel';\n\nexport const defaultThumbnailItemProps: GalleryThumbnailItemProps = {\n as: CarouselItem,\n index: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultZoomInProps } from './GalleryZoomIn.props';\n\nexport const GalleryZoomIn = withComponent({\n name: 'Gallery.ZoomIn',\n defaultProps: defaultZoomInProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.zoomInProps,\n {\n className: gallery?.cx('zoomIn')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryZoomInProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultZoomInProps: GalleryZoomInProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultZoomOutProps } from './GalleryZoomOut.props';\n\nexport const GalleryZoomOut = withComponent({\n name: 'Gallery.ZoomOut',\n defaultProps: defaultZoomOutProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.zoomOutProps,\n {\n className: gallery?.cx('zoomOut')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryZoomOutProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultZoomOutProps: GalleryZoomOutProps = {\n as: 'button',\n onClick: undefined\n};\n","'use client';\nimport { Component, withComponent } from '@primereact/core/component';\nimport { mergeProps } from '@primeuix/utils';\nimport * as React from 'react';\nimport { useGalleryContext } from '../Gallery.context';\nimport { defaultZoomToggleProps } from './GalleryZoomToggle.props';\n\nexport const GalleryZoomToggle = withComponent({\n name: 'Gallery.ZoomToggle',\n defaultProps: defaultZoomToggleProps,\n setup() {\n const gallery = useGalleryContext();\n\n return { gallery };\n },\n render(instance) {\n const { props, ptmi, gallery } = instance;\n\n const rootProps = mergeProps(\n gallery?.zoomToggleProps,\n {\n className: gallery?.cx('zoomToggle')\n },\n ptmi('root')\n );\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import { GalleryZoomToggleProps } from '@primereact/types/primitive/gallery';\n\nexport const defaultZoomToggleProps: GalleryZoomToggleProps = {\n as: 'button',\n onClick: undefined\n};\n","export { defaultBackdropProps } from './backdrop';\nexport { defaultContentProps } from './content';\nexport { defaultDownloadProps } from './download';\nexport { defaultFlipXProps } from './flipx';\nexport { defaultFlipYProps } from './flipy';\nexport { defaultFooterProps } from './footer';\nexport { defaultFullScreenProps } from './fullscreen';\nexport { defaultHeaderProps } from './header';\nexport { defaultItemProps } from './item';\nexport { defaultNextProps } from './next';\nexport { defaultPrevProps } from './prev';\nexport { defaultRootProps } from './root';\nexport { defaultRotateLeftProps } from './rotateleft';\nexport { defaultRotateRightProps } from './rotateright';\nexport { defaultThumbnailProps } from './thumbnail';\nexport { defaultThumbnailContentProps } from './thumbnailcontent';\nexport { defaultThumbnailItemProps } from './thumbnailitem';\nexport { defaultZoomInProps } from './zoomin';\nexport { defaultZoomOutProps } from './zoomout';\nexport { defaultZoomToggleProps } from './zoomtoggle';\n","import type { UseGalleryItemProps } from '@primereact/types/headless/gallery';\n\nexport const defaultItemProps: UseGalleryItemProps = {\n context: undefined,\n normalScale: 1,\n zoomedScale: 3\n};\n"],"mappings":"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","names":["withHeadless","createOptionalContext","GalleryProvider","useGalleryContext","Gallery_parts_exports","__export","GalleryBackdrop","GalleryContent","GalleryDownload","GalleryFlipX","GalleryFlipY","GalleryFooter","GalleryFullScreen","GalleryHeader","GalleryItem","GalleryNext","GalleryPrev","GalleryRoot","GalleryRotateLeft","GalleryRotateRight","GalleryThumbnail","GalleryThumbnailContent","GalleryThumbnailItem","GalleryZoomIn","GalleryZoomOut","GalleryZoomToggle","Component","withComponent","mergeProps","React","defaultBackdropProps","GalleryBackdrop","withComponent","defaultBackdropProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultContentProps","GalleryContent","withComponent","defaultContentProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultDownloadProps","GalleryDownload","withComponent","defaultDownloadProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultFlipXProps","GalleryFlipX","withComponent","defaultFlipXProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultFlipYProps","GalleryFlipY","withComponent","defaultFlipYProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultFooterProps","GalleryFooter","withComponent","defaultFooterProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultFullScreenProps","GalleryFullScreen","withComponent","defaultFullScreenProps","useGalleryContext","instance","_a","props","ptmi","gallery","isFullscreen","rootProps","mergeProps","children","Component","Component","withComponent","mergeProps","React","defaultHeaderProps","GalleryHeader","withComponent","defaultHeaderProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","useGalleryItem","mergeProps","React","createOptionalContext","GalleryItemProvider","useGalleryItemContext","HeadlessGallery","defaultItemProps","__spreadProps","__spreadValues","GalleryItem","withComponent","defaultItemProps","instance","gallery","useGalleryContext","galleryItem","useGalleryItem","__spreadProps","__spreadValues","id","props","ptmi","itemProps","rootProps","mergeProps","GalleryItemProvider","Component","Component","withComponent","mergeProps","React","defaultNextProps","GalleryNext","withComponent","defaultNextProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultPrevProps","GalleryPrev","withComponent","defaultPrevProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","useGallery","mergeProps","React","createPortal","HeadlessGallery","defaultRootProps","__spreadProps","__spreadValues","GalleryRoot","withComponent","defaultRootProps","instance","useGallery","props","ptmi","cx","headlessRootProps","isFullscreen","rootProps","mergeProps","element","GalleryProvider","Component","createPortal","Component","withComponent","mergeProps","React","defaultRotateLeftProps","GalleryRotateLeft","withComponent","defaultRotateLeftProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultRotateRightProps","GalleryRotateRight","withComponent","defaultRotateRightProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","createOptionalContext","CarouselProvider","useCarouselContext","Carousel_parts_exports","__export","CarouselContent","CarouselIndicator","CarouselIndicators","CarouselItem","CarouselNext","CarouselPrev","CarouselRoot","Component","withComponent","mergeProps","React","defaultContentProps","CarouselContent","withComponent","defaultContentProps","useCarouselContext","instance","props","ptmi","carousel","contentProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultIndicatorProps","CarouselIndicator","withComponent","defaultIndicatorProps","instance","carousel","useCarouselContext","isActive","_a","props","ptmi","contentProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultIndicatorsProps","CarouselIndicators","withComponent","defaultIndicatorsProps","useCarouselContext","instance","_a","_b","props","ptmi","carousel","contentProps","mergeProps","Component","_","i","CarouselIndicator","Component","withComponent","mergeProps","React","defaultItemProps","CarouselItem","withComponent","defaultItemProps","useCarouselContext","instance","id","props","ptmi","carousel","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultNextProps","CarouselNext","withComponent","defaultNextProps","instance","_a","carousel","useCarouselContext","disabled","props","ptmi","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultPrevProps","CarouselPrev","withComponent","defaultPrevProps","instance","_a","carousel","useCarouselContext","disabled","props","ptmi","rootProps","mergeProps","Component","Component","withComponent","useCarousel","mergeProps","React","HeadlessCarousel","defaultRootProps","__spreadProps","__spreadValues","CarouselRoot","withComponent","defaultRootProps","instance","useCarousel","id","props","carouselRootProps","ptmi","cx","rootProps","mergeProps","CarouselProvider","Component","Carousel_props_exports","__export","defaultContentProps","defaultIndicatorProps","defaultIndicatorsProps","defaultItemProps","defaultNextProps","defaultPrevProps","defaultRootProps","defaultThumbnailProps","CarouselRoot","GalleryThumbnail","withComponent","defaultThumbnailProps","useGalleryContext","instance","props","ptmi","gallery","_a","as","restProps","__objRest","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultThumbnailContentProps","CarouselContent","GalleryThumbnailContent","withComponent","defaultThumbnailContentProps","_a","gallery","useGalleryContext","thumbnailContentProps","instance","props","ptmi","as","restProps","__objRest","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultThumbnailItemProps","CarouselItem","GalleryThumbnailItem","withComponent","defaultThumbnailItemProps","instance","_a","gallery","useGalleryContext","index","thumbnailItemProps","props","ptmi","as","restProps","__objRest","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultZoomInProps","GalleryZoomIn","withComponent","defaultZoomInProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultZoomOutProps","GalleryZoomOut","withComponent","defaultZoomOutProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Component","withComponent","mergeProps","React","defaultZoomToggleProps","GalleryZoomToggle","withComponent","defaultZoomToggleProps","useGalleryContext","instance","props","ptmi","gallery","rootProps","mergeProps","Component","Gallery_props_exports","__export","defaultBackdropProps","defaultContentProps","defaultDownloadProps","defaultFlipXProps","defaultFlipYProps","defaultFooterProps","defaultFullScreenProps","defaultHeaderProps","defaultItemProps","defaultNextProps","defaultPrevProps","defaultRootProps","defaultRotateLeftProps","defaultRotateRightProps","defaultThumbnailContentProps","defaultThumbnailItemProps","defaultThumbnailProps","defaultZoomInProps","defaultZoomOutProps","defaultZoomToggleProps","React","defaultItemProps","useGalleryItem","withHeadless","defaultItemProps","props","elementRef","galleryProp","normalScale","zoomedScale","galleryContext","useGalleryContext","gallery","index","setIndex","isActive","setIsActive","position","setPosition","scale","setScale","rotation","setRotation","flip","setFlip","isRotating","setIsRotating","registeredIndexRef","pointerDataRef","pointerStartRef","lastDistanceRef","initialPinchDistanceRef","initialPinchScaleRef","isPinchingRef","liveScaleRef","livePositionRef","isDraggingRef","dragStartRef","hasDraggedRef","wheelSyncTimerRef","newIndex","calculateItemSize","contentRect","imageElement","naturalWidth","naturalHeight","isRotated","naturalAspectRatio","contentAspectRatio","targetWidth","targetHeight","calculateConstraints","targetScale","scaleToUse","itemElement","originalWidth","originalHeight","scaledWidth","scaledHeight","contentCenterX","contentCenterY","halfScaledWidth","halfScaledHeight","maxX","minX","maxY","minY","zoomIn","zoomOut","rotateLeft","prev","rotateRight","flipX","__spreadProps","__spreadValues","flipY","download","link","urlParts","filename","handleClick","e","itemRect","itemCenterX","itemCenterY","clickX","clickY","offsetX","offsetY","zoomOffsetX","zoomOffsetY","constraints","constrainedX","constrainedY","handleDragStart","handlePointerDown","handlePointerMove","pointers","p1","p2","distance","ratio","newScale","pointer","newX","newY","computedX","computedY","handlePointerUp","handleResize","action","handleWheel","scaleFactor","id","attributes","CSSVariables","state","itemProps"]}
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- export declare const useGalleryItem: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/gallery").useGalleryItemProps, unknown, {
2
+ export declare const useGalleryItem: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/headless/gallery").UseGalleryItemProps, unknown, {
3
3
  state: {
4
4
  index: number;
5
5
  position: {
@@ -13,16 +13,26 @@ export declare const useGalleryItem: (inProps?: unknown) => import("@primereact/
13
13
  y: number;
14
14
  };
15
15
  isActive: boolean;
16
- dragStart: {
17
- x: number;
18
- y: number;
19
- };
20
- hasDragged: boolean;
21
16
  };
22
17
  attributes: {
23
- 'data-active': boolean;
18
+ 'data-rotating'?: "" | undefined;
19
+ 'data-active'?: "" | undefined;
24
20
  };
25
21
  CSSVariables: React.CSSProperties;
22
+ itemProps: {
23
+ 'data-rotating'?: "" | undefined;
24
+ 'data-active'?: "" | undefined;
25
+ ref: React.RefObject<HTMLDivElement>;
26
+ 'data-scope': "gallery";
27
+ 'data-part': "item";
28
+ 'data-index': number;
29
+ onClick: (e: React.MouseEvent) => void;
30
+ onPointerDown: (e: React.PointerEvent) => void;
31
+ onPointerMove: (e: React.PointerEvent) => void;
32
+ onPointerUp: (e: React.PointerEvent) => void;
33
+ onDragStart: (e: React.DragEvent<HTMLDivElement>) => void;
34
+ style: React.CSSProperties;
35
+ };
26
36
  handlePointerUp: (e: React.PointerEvent) => void;
27
37
  handlePointerMove: (e: React.PointerEvent) => void;
28
38
  handlePointerDown: (e: React.PointerEvent) => void;
@@ -1,2 +1,2 @@
1
- import type { useGalleryItemProps } from '@primereact/types/shared/gallery';
2
- export declare const defaultItemProps: useGalleryItemProps;
1
+ import type { UseGalleryItemProps } from '@primereact/types/headless/gallery';
2
+ export declare const defaultItemProps: UseGalleryItemProps;