primereact 8.1.0 → 8.3.0

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 (691) hide show
  1. package/README.md +6 -0
  2. package/accordion/accordion.cjs.js +9 -0
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.d.ts +4 -5
  5. package/accordion/accordion.esm.js +9 -0
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +9 -0
  8. package/accordion/accordion.min.js +1 -1
  9. package/autocomplete/autocomplete.cjs.js +65 -36
  10. package/autocomplete/autocomplete.cjs.min.js +1 -1
  11. package/autocomplete/autocomplete.d.ts +5 -1
  12. package/autocomplete/autocomplete.esm.js +66 -37
  13. package/autocomplete/autocomplete.esm.min.js +1 -1
  14. package/autocomplete/autocomplete.js +65 -36
  15. package/autocomplete/autocomplete.min.js +1 -1
  16. package/avatar/avatar.cjs.js +35 -7
  17. package/avatar/avatar.cjs.min.js +1 -1
  18. package/avatar/avatar.d.ts +4 -4
  19. package/avatar/avatar.esm.js +35 -7
  20. package/avatar/avatar.esm.min.js +1 -1
  21. package/avatar/avatar.js +35 -7
  22. package/avatar/avatar.min.js +1 -1
  23. package/avatargroup/avatargroup.cjs.js +27 -0
  24. package/avatargroup/avatargroup.cjs.min.js +1 -1
  25. package/avatargroup/avatargroup.d.ts +4 -4
  26. package/avatargroup/avatargroup.esm.js +27 -0
  27. package/avatargroup/avatargroup.esm.min.js +1 -1
  28. package/avatargroup/avatargroup.js +27 -0
  29. package/avatargroup/avatargroup.min.js +1 -1
  30. package/badge/badge.cjs.js +14 -2
  31. package/badge/badge.cjs.min.js +1 -1
  32. package/badge/badge.d.ts +5 -5
  33. package/badge/badge.esm.js +14 -2
  34. package/badge/badge.esm.min.js +1 -1
  35. package/badge/badge.js +14 -2
  36. package/badge/badge.min.js +1 -1
  37. package/blockui/blockui.cjs.js +26 -3
  38. package/blockui/blockui.cjs.min.js +1 -1
  39. package/blockui/blockui.d.ts +2 -4
  40. package/blockui/blockui.esm.js +26 -3
  41. package/blockui/blockui.esm.min.js +1 -1
  42. package/blockui/blockui.js +26 -3
  43. package/blockui/blockui.min.js +1 -1
  44. package/breadcrumb/breadcrumb.cjs.js +28 -0
  45. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  46. package/breadcrumb/breadcrumb.d.ts +4 -5
  47. package/breadcrumb/breadcrumb.esm.js +28 -0
  48. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  49. package/breadcrumb/breadcrumb.js +28 -0
  50. package/breadcrumb/breadcrumb.min.js +1 -1
  51. package/button/button.d.ts +3 -1
  52. package/calendar/calendar.cjs.js +138 -46
  53. package/calendar/calendar.cjs.min.js +1 -1
  54. package/calendar/calendar.d.ts +4 -0
  55. package/calendar/calendar.esm.js +138 -46
  56. package/calendar/calendar.esm.min.js +1 -1
  57. package/calendar/calendar.js +138 -46
  58. package/calendar/calendar.min.js +1 -1
  59. package/captcha/captcha.cjs.js +24 -3
  60. package/captcha/captcha.cjs.min.js +1 -1
  61. package/captcha/captcha.d.ts +2 -3
  62. package/captcha/captcha.esm.js +24 -3
  63. package/captcha/captcha.esm.min.js +1 -1
  64. package/captcha/captcha.js +24 -3
  65. package/captcha/captcha.min.js +1 -1
  66. package/card/card.d.ts +1 -4
  67. package/carousel/carousel.cjs.js +25 -0
  68. package/carousel/carousel.cjs.min.js +1 -1
  69. package/carousel/carousel.d.ts +4 -5
  70. package/carousel/carousel.esm.js +25 -0
  71. package/carousel/carousel.esm.min.js +1 -1
  72. package/carousel/carousel.js +25 -0
  73. package/carousel/carousel.min.js +1 -1
  74. package/cascadeselect/cascadeselect.cjs.js +38 -3
  75. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  76. package/cascadeselect/cascadeselect.d.ts +7 -2
  77. package/cascadeselect/cascadeselect.esm.js +38 -3
  78. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  79. package/cascadeselect/cascadeselect.js +38 -3
  80. package/cascadeselect/cascadeselect.min.js +1 -1
  81. package/chart/chart.cjs.js +72 -25
  82. package/chart/chart.cjs.min.js +1 -1
  83. package/chart/chart.d.ts +1 -0
  84. package/chart/chart.esm.js +72 -25
  85. package/chart/chart.esm.min.js +1 -1
  86. package/chart/chart.js +72 -25
  87. package/chart/chart.min.js +1 -1
  88. package/checkbox/checkbox.cjs.js +30 -1
  89. package/checkbox/checkbox.cjs.min.js +1 -1
  90. package/checkbox/checkbox.d.ts +4 -1
  91. package/checkbox/checkbox.esm.js +31 -2
  92. package/checkbox/checkbox.esm.min.js +1 -1
  93. package/checkbox/checkbox.js +30 -1
  94. package/checkbox/checkbox.min.js +1 -1
  95. package/chip/chip.cjs.js +28 -0
  96. package/chip/chip.cjs.min.js +1 -1
  97. package/chip/chip.d.ts +4 -4
  98. package/chip/chip.esm.js +28 -0
  99. package/chip/chip.esm.min.js +1 -1
  100. package/chip/chip.js +28 -0
  101. package/chip/chip.min.js +1 -1
  102. package/chips/chips.cjs.js +56 -2
  103. package/chips/chips.cjs.min.js +1 -1
  104. package/chips/chips.d.ts +9 -5
  105. package/chips/chips.esm.js +57 -3
  106. package/chips/chips.esm.min.js +1 -1
  107. package/chips/chips.js +57 -4
  108. package/chips/chips.min.js +1 -1
  109. package/colorpicker/colorpicker.cjs.js +33 -0
  110. package/colorpicker/colorpicker.cjs.min.js +1 -1
  111. package/colorpicker/colorpicker.d.ts +7 -1
  112. package/colorpicker/colorpicker.esm.js +33 -0
  113. package/colorpicker/colorpicker.esm.min.js +1 -1
  114. package/colorpicker/colorpicker.js +33 -0
  115. package/colorpicker/colorpicker.min.js +1 -1
  116. package/column/column.d.ts +1 -0
  117. package/confirmdialog/confirmdialog.cjs.js +3 -3
  118. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  119. package/confirmdialog/confirmdialog.d.ts +1 -6
  120. package/confirmdialog/confirmdialog.esm.js +3 -3
  121. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  122. package/confirmdialog/confirmdialog.js +3 -3
  123. package/confirmdialog/confirmdialog.min.js +1 -1
  124. package/confirmpopup/confirmpopup.cjs.js +2 -2
  125. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  126. package/confirmpopup/confirmpopup.esm.js +2 -2
  127. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  128. package/confirmpopup/confirmpopup.js +2 -2
  129. package/confirmpopup/confirmpopup.min.js +1 -1
  130. package/contextmenu/contextmenu.cjs.js +25 -3
  131. package/contextmenu/contextmenu.cjs.min.js +1 -1
  132. package/contextmenu/contextmenu.d.ts +2 -4
  133. package/contextmenu/contextmenu.esm.js +25 -3
  134. package/contextmenu/contextmenu.esm.min.js +1 -1
  135. package/contextmenu/contextmenu.js +25 -3
  136. package/contextmenu/contextmenu.min.js +1 -1
  137. package/core/core.js +599 -180
  138. package/core/core.min.js +12 -12
  139. package/datascroller/datascroller.cjs.js +29 -3
  140. package/datascroller/datascroller.cjs.min.js +1 -1
  141. package/datascroller/datascroller.d.ts +2 -4
  142. package/datascroller/datascroller.esm.js +29 -3
  143. package/datascroller/datascroller.esm.min.js +1 -1
  144. package/datascroller/datascroller.js +29 -3
  145. package/datascroller/datascroller.min.js +1 -1
  146. package/datatable/datatable.cjs.js +92 -30
  147. package/datatable/datatable.cjs.min.js +1 -1
  148. package/datatable/datatable.d.ts +5 -1
  149. package/datatable/datatable.esm.js +93 -31
  150. package/datatable/datatable.esm.min.js +1 -1
  151. package/datatable/datatable.js +92 -30
  152. package/datatable/datatable.min.js +1 -1
  153. package/dataview/dataview.cjs.js +12 -0
  154. package/dataview/dataview.cjs.min.js +1 -1
  155. package/dataview/dataview.d.ts +4 -5
  156. package/dataview/dataview.esm.js +12 -0
  157. package/dataview/dataview.esm.min.js +1 -1
  158. package/dataview/dataview.js +12 -0
  159. package/dataview/dataview.min.js +1 -1
  160. package/deferredcontent/deferredcontent.cjs.js +25 -0
  161. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  162. package/deferredcontent/deferredcontent.d.ts +4 -2
  163. package/deferredcontent/deferredcontent.esm.js +25 -0
  164. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  165. package/deferredcontent/deferredcontent.js +25 -0
  166. package/deferredcontent/deferredcontent.min.js +1 -1
  167. package/dialog/dialog.cjs.js +46 -6
  168. package/dialog/dialog.cjs.min.js +1 -1
  169. package/dialog/dialog.d.ts +8 -0
  170. package/dialog/dialog.esm.js +46 -6
  171. package/dialog/dialog.esm.min.js +1 -1
  172. package/dialog/dialog.js +46 -6
  173. package/dialog/dialog.min.js +1 -1
  174. package/divider/divider.cjs.js +27 -0
  175. package/divider/divider.cjs.min.js +1 -1
  176. package/divider/divider.d.ts +4 -4
  177. package/divider/divider.esm.js +27 -0
  178. package/divider/divider.esm.min.js +1 -1
  179. package/divider/divider.js +27 -0
  180. package/divider/divider.min.js +1 -1
  181. package/dock/dock.cjs.js +28 -0
  182. package/dock/dock.cjs.min.js +1 -1
  183. package/dock/dock.d.ts +4 -5
  184. package/dock/dock.esm.js +28 -0
  185. package/dock/dock.esm.min.js +1 -1
  186. package/dock/dock.js +28 -0
  187. package/dock/dock.min.js +1 -1
  188. package/dropdown/dropdown.cjs.js +85 -23
  189. package/dropdown/dropdown.cjs.min.js +1 -1
  190. package/dropdown/dropdown.d.ts +15 -2
  191. package/dropdown/dropdown.esm.js +85 -23
  192. package/dropdown/dropdown.esm.min.js +1 -1
  193. package/dropdown/dropdown.js +85 -23
  194. package/dropdown/dropdown.min.js +1 -1
  195. package/editor/editor.cjs.js +27 -11
  196. package/editor/editor.cjs.min.js +1 -1
  197. package/editor/editor.d.ts +3 -0
  198. package/editor/editor.esm.js +27 -11
  199. package/editor/editor.esm.min.js +1 -1
  200. package/editor/editor.js +27 -11
  201. package/editor/editor.min.js +1 -1
  202. package/fieldset/fieldset.cjs.js +30 -0
  203. package/fieldset/fieldset.cjs.min.js +1 -1
  204. package/fieldset/fieldset.d.ts +5 -5
  205. package/fieldset/fieldset.esm.js +30 -0
  206. package/fieldset/fieldset.esm.min.js +1 -1
  207. package/fieldset/fieldset.js +30 -0
  208. package/fieldset/fieldset.min.js +1 -1
  209. package/fileupload/fileupload.cjs.js +28 -3
  210. package/fileupload/fileupload.cjs.min.js +1 -1
  211. package/fileupload/fileupload.d.ts +2 -0
  212. package/fileupload/fileupload.esm.js +28 -3
  213. package/fileupload/fileupload.esm.min.js +1 -1
  214. package/fileupload/fileupload.js +28 -3
  215. package/fileupload/fileupload.min.js +1 -1
  216. package/fullcalendar/fullcalendar.cjs.js +25 -0
  217. package/fullcalendar/fullcalendar.cjs.min.js +1 -1
  218. package/fullcalendar/fullcalendar.d.ts +3 -1
  219. package/fullcalendar/fullcalendar.esm.js +25 -0
  220. package/fullcalendar/fullcalendar.esm.min.js +1 -1
  221. package/fullcalendar/fullcalendar.js +25 -0
  222. package/fullcalendar/fullcalendar.min.js +1 -1
  223. package/galleria/galleria.cjs.js +27 -3
  224. package/galleria/galleria.cjs.min.js +1 -1
  225. package/galleria/galleria.d.ts +2 -4
  226. package/galleria/galleria.esm.js +27 -3
  227. package/galleria/galleria.esm.min.js +1 -1
  228. package/galleria/galleria.js +27 -3
  229. package/galleria/galleria.min.js +1 -1
  230. package/gmap/gmap.cjs.js +25 -3
  231. package/gmap/gmap.cjs.min.js +1 -1
  232. package/gmap/gmap.d.ts +5 -4
  233. package/gmap/gmap.esm.js +25 -3
  234. package/gmap/gmap.esm.min.js +1 -1
  235. package/gmap/gmap.js +25 -3
  236. package/gmap/gmap.min.js +1 -1
  237. package/hooks/hooks.cjs.js +48 -2
  238. package/hooks/hooks.cjs.min.js +1 -1
  239. package/hooks/hooks.d.ts +3 -1
  240. package/hooks/hooks.esm.js +47 -3
  241. package/hooks/hooks.esm.min.js +1 -1
  242. package/hooks/hooks.js +48 -2
  243. package/hooks/hooks.min.js +1 -1
  244. package/image/image.cjs.js +35 -5
  245. package/image/image.cjs.min.js +1 -1
  246. package/image/image.d.ts +5 -4
  247. package/image/image.esm.js +35 -5
  248. package/image/image.esm.min.js +1 -1
  249. package/image/image.js +35 -5
  250. package/image/image.min.css +1 -1
  251. package/image/image.min.js +1 -1
  252. package/inplace/inplace.cjs.js +28 -1
  253. package/inplace/inplace.cjs.min.js +1 -1
  254. package/inplace/inplace.d.ts +4 -5
  255. package/inplace/inplace.esm.js +28 -1
  256. package/inplace/inplace.esm.min.js +1 -1
  257. package/inplace/inplace.js +28 -1
  258. package/inplace/inplace.min.js +1 -1
  259. package/inputmask/inputmask.cjs.js +32 -5
  260. package/inputmask/inputmask.cjs.min.js +1 -1
  261. package/inputmask/inputmask.d.ts +5 -13
  262. package/inputmask/inputmask.esm.js +32 -5
  263. package/inputmask/inputmask.esm.min.js +1 -1
  264. package/inputmask/inputmask.js +32 -5
  265. package/inputmask/inputmask.min.js +1 -1
  266. package/inputnumber/inputnumber.cjs.js +11 -5
  267. package/inputnumber/inputnumber.cjs.min.js +1 -1
  268. package/inputnumber/inputnumber.d.ts +4 -4
  269. package/inputnumber/inputnumber.esm.js +11 -5
  270. package/inputnumber/inputnumber.esm.min.js +1 -1
  271. package/inputnumber/inputnumber.js +11 -5
  272. package/inputnumber/inputnumber.min.js +1 -1
  273. package/inputswitch/inputswitch.cjs.js +29 -1
  274. package/inputswitch/inputswitch.cjs.min.js +1 -1
  275. package/inputswitch/inputswitch.d.ts +4 -1
  276. package/inputswitch/inputswitch.esm.js +30 -2
  277. package/inputswitch/inputswitch.esm.min.js +1 -1
  278. package/inputswitch/inputswitch.js +29 -1
  279. package/inputswitch/inputswitch.min.css +1 -1
  280. package/inputswitch/inputswitch.min.js +1 -1
  281. package/inputtext/inputtext.d.ts +4 -1
  282. package/inputtext/inputtext.min.css +1 -1
  283. package/inputtextarea/inputtextarea.d.ts +4 -1
  284. package/knob/knob.cjs.js +25 -0
  285. package/knob/knob.cjs.min.js +1 -1
  286. package/knob/knob.d.ts +3 -1
  287. package/knob/knob.esm.js +25 -0
  288. package/knob/knob.esm.min.js +1 -1
  289. package/knob/knob.js +25 -0
  290. package/knob/knob.min.js +1 -1
  291. package/listbox/listbox.cjs.js +128 -20
  292. package/listbox/listbox.cjs.min.js +1 -1
  293. package/listbox/listbox.d.ts +14 -7
  294. package/listbox/listbox.esm.js +129 -21
  295. package/listbox/listbox.esm.min.js +1 -1
  296. package/listbox/listbox.js +129 -22
  297. package/listbox/listbox.min.js +1 -1
  298. package/megamenu/megamenu.cjs.js +57 -12
  299. package/megamenu/megamenu.cjs.min.js +1 -1
  300. package/megamenu/megamenu.d.ts +11 -5
  301. package/megamenu/megamenu.esm.js +57 -12
  302. package/megamenu/megamenu.esm.min.js +1 -1
  303. package/megamenu/megamenu.js +57 -12
  304. package/megamenu/megamenu.min.css +1 -1
  305. package/megamenu/megamenu.min.js +1 -1
  306. package/mention/mention.cjs.js +16 -1
  307. package/mention/mention.cjs.min.js +1 -1
  308. package/mention/mention.d.ts +7 -5
  309. package/mention/mention.esm.js +16 -1
  310. package/mention/mention.esm.min.js +1 -1
  311. package/mention/mention.js +16 -1
  312. package/mention/mention.min.js +1 -1
  313. package/menu/menu.cjs.js +27 -3
  314. package/menu/menu.cjs.min.js +1 -1
  315. package/menu/menu.d.ts +3 -4
  316. package/menu/menu.esm.js +27 -3
  317. package/menu/menu.esm.min.js +1 -1
  318. package/menu/menu.js +27 -3
  319. package/menu/menu.min.js +1 -1
  320. package/menubar/menubar.cjs.js +32 -3
  321. package/menubar/menubar.cjs.min.js +1 -1
  322. package/menubar/menubar.d.ts +6 -5
  323. package/menubar/menubar.esm.js +32 -3
  324. package/menubar/menubar.esm.min.js +1 -1
  325. package/menubar/menubar.js +32 -3
  326. package/menubar/menubar.min.js +1 -1
  327. package/menuitem/menuitem.d.ts +2 -0
  328. package/message/message.cjs.js +28 -0
  329. package/message/message.cjs.min.js +1 -1
  330. package/message/message.d.ts +5 -6
  331. package/message/message.esm.js +28 -0
  332. package/message/message.esm.min.js +1 -1
  333. package/message/message.js +28 -0
  334. package/message/message.min.js +1 -1
  335. package/messages/messages.cjs.js +30 -5
  336. package/messages/messages.cjs.min.js +1 -1
  337. package/messages/messages.d.ts +3 -5
  338. package/messages/messages.esm.js +30 -5
  339. package/messages/messages.esm.min.js +1 -1
  340. package/messages/messages.js +30 -5
  341. package/messages/messages.min.js +1 -1
  342. package/multiselect/multiselect.cjs.js +78 -12
  343. package/multiselect/multiselect.cjs.min.js +1 -1
  344. package/multiselect/multiselect.d.ts +16 -2
  345. package/multiselect/multiselect.esm.js +78 -12
  346. package/multiselect/multiselect.esm.min.js +1 -1
  347. package/multiselect/multiselect.js +78 -12
  348. package/multiselect/multiselect.min.js +1 -1
  349. package/multistatecheckbox/multistatecheckbox.cjs.js +10 -0
  350. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  351. package/multistatecheckbox/multistatecheckbox.d.ts +4 -6
  352. package/multistatecheckbox/multistatecheckbox.esm.js +10 -0
  353. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  354. package/multistatecheckbox/multistatecheckbox.js +10 -0
  355. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  356. package/orderlist/orderlist.cjs.js +145 -4
  357. package/orderlist/orderlist.cjs.min.js +1 -1
  358. package/orderlist/orderlist.d.ts +17 -6
  359. package/orderlist/orderlist.esm.js +145 -4
  360. package/orderlist/orderlist.esm.min.js +1 -1
  361. package/orderlist/orderlist.js +146 -6
  362. package/orderlist/orderlist.min.css +1 -1
  363. package/orderlist/orderlist.min.js +1 -1
  364. package/organizationchart/organizationchart.cjs.js +27 -0
  365. package/organizationchart/organizationchart.cjs.min.js +1 -1
  366. package/organizationchart/organizationchart.d.ts +4 -5
  367. package/organizationchart/organizationchart.esm.js +27 -0
  368. package/organizationchart/organizationchart.esm.min.js +1 -1
  369. package/organizationchart/organizationchart.js +27 -0
  370. package/organizationchart/organizationchart.min.js +1 -1
  371. package/overlaypanel/overlaypanel.cjs.js +25 -4
  372. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  373. package/overlaypanel/overlaypanel.d.ts +2 -4
  374. package/overlaypanel/overlaypanel.esm.js +25 -4
  375. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  376. package/overlaypanel/overlaypanel.js +25 -4
  377. package/overlaypanel/overlaypanel.min.js +1 -1
  378. package/package.json +1 -1
  379. package/paginator/paginator.cjs.js +15 -3
  380. package/paginator/paginator.cjs.min.js +1 -1
  381. package/paginator/paginator.d.ts +4 -4
  382. package/paginator/paginator.esm.js +15 -3
  383. package/paginator/paginator.esm.min.js +1 -1
  384. package/paginator/paginator.js +15 -3
  385. package/paginator/paginator.min.js +1 -1
  386. package/panel/panel.cjs.js +28 -0
  387. package/panel/panel.cjs.min.js +1 -1
  388. package/panel/panel.d.ts +5 -5
  389. package/panel/panel.esm.js +28 -0
  390. package/panel/panel.esm.min.js +1 -1
  391. package/panel/panel.js +28 -0
  392. package/panel/panel.min.js +1 -1
  393. package/panelmenu/panelmenu.cjs.js +28 -0
  394. package/panelmenu/panelmenu.cjs.min.js +1 -1
  395. package/panelmenu/panelmenu.d.ts +4 -5
  396. package/panelmenu/panelmenu.esm.js +28 -0
  397. package/panelmenu/panelmenu.esm.min.js +1 -1
  398. package/panelmenu/panelmenu.js +28 -0
  399. package/panelmenu/panelmenu.min.js +1 -1
  400. package/password/password.cjs.js +31 -0
  401. package/password/password.cjs.min.js +1 -1
  402. package/password/password.d.ts +6 -4
  403. package/password/password.esm.js +31 -0
  404. package/password/password.esm.min.js +1 -1
  405. package/password/password.js +31 -0
  406. package/password/password.min.js +1 -1
  407. package/picklist/picklist.cjs.js +196 -14
  408. package/picklist/picklist.cjs.min.js +1 -1
  409. package/picklist/picklist.d.ts +32 -1
  410. package/picklist/picklist.esm.js +196 -14
  411. package/picklist/picklist.esm.min.js +1 -1
  412. package/picklist/picklist.js +197 -16
  413. package/picklist/picklist.min.css +1 -1
  414. package/picklist/picklist.min.js +1 -1
  415. package/primereact.all.cjs.js +2483 -655
  416. package/primereact.all.cjs.min.js +1 -1
  417. package/primereact.all.esm.js +2481 -655
  418. package/primereact.all.esm.min.js +1 -1
  419. package/primereact.all.js +2483 -655
  420. package/primereact.all.min.js +1 -1
  421. package/progressbar/progressbar.cjs.js +29 -0
  422. package/progressbar/progressbar.cjs.min.js +1 -1
  423. package/progressbar/progressbar.d.ts +4 -5
  424. package/progressbar/progressbar.esm.js +29 -0
  425. package/progressbar/progressbar.esm.min.js +1 -1
  426. package/progressbar/progressbar.js +29 -0
  427. package/progressbar/progressbar.min.js +1 -1
  428. package/progressspinner/progressspinner.cjs.js +27 -0
  429. package/progressspinner/progressspinner.cjs.min.js +1 -1
  430. package/progressspinner/progressspinner.d.ts +4 -5
  431. package/progressspinner/progressspinner.esm.js +27 -0
  432. package/progressspinner/progressspinner.esm.min.js +1 -1
  433. package/progressspinner/progressspinner.js +27 -0
  434. package/progressspinner/progressspinner.min.js +1 -1
  435. package/radiobutton/radiobutton.cjs.js +29 -4
  436. package/radiobutton/radiobutton.cjs.min.js +1 -1
  437. package/radiobutton/radiobutton.d.ts +2 -4
  438. package/radiobutton/radiobutton.esm.js +30 -5
  439. package/radiobutton/radiobutton.esm.min.js +1 -1
  440. package/radiobutton/radiobutton.js +29 -4
  441. package/radiobutton/radiobutton.min.js +1 -1
  442. package/rating/rating.cjs.js +25 -0
  443. package/rating/rating.cjs.min.js +1 -1
  444. package/rating/rating.d.ts +3 -4
  445. package/rating/rating.esm.js +25 -0
  446. package/rating/rating.esm.min.js +1 -1
  447. package/rating/rating.js +25 -0
  448. package/rating/rating.min.js +1 -1
  449. package/resources/primereact.css +213 -145
  450. package/resources/primereact.min.css +1 -1
  451. package/resources/themes/arya-blue/theme.css +39 -6
  452. package/resources/themes/arya-green/theme.css +39 -6
  453. package/resources/themes/arya-orange/theme.css +39 -6
  454. package/resources/themes/arya-purple/theme.css +39 -6
  455. package/resources/themes/bootstrap4-dark-blue/theme.css +39 -6
  456. package/resources/themes/bootstrap4-dark-purple/theme.css +39 -6
  457. package/resources/themes/bootstrap4-light-blue/theme.css +38 -5
  458. package/resources/themes/bootstrap4-light-purple/theme.css +38 -5
  459. package/resources/themes/fluent-light/theme.css +39 -6
  460. package/resources/themes/lara-dark-blue/theme.css +39 -6
  461. package/resources/themes/lara-dark-indigo/theme.css +39 -6
  462. package/resources/themes/lara-dark-purple/theme.css +39 -6
  463. package/resources/themes/lara-dark-teal/theme.css +39 -6
  464. package/resources/themes/lara-light-blue/theme.css +39 -6
  465. package/resources/themes/lara-light-indigo/theme.css +39 -6
  466. package/resources/themes/lara-light-purple/theme.css +39 -6
  467. package/resources/themes/lara-light-teal/theme.css +39 -6
  468. package/resources/themes/luna-amber/theme.css +39 -6
  469. package/resources/themes/luna-blue/theme.css +39 -6
  470. package/resources/themes/luna-green/theme.css +39 -6
  471. package/resources/themes/luna-pink/theme.css +39 -6
  472. package/resources/themes/md-dark-deeppurple/theme.css +39 -6
  473. package/resources/themes/md-dark-indigo/theme.css +39 -6
  474. package/resources/themes/md-light-deeppurple/theme.css +39 -6
  475. package/resources/themes/md-light-indigo/theme.css +39 -6
  476. package/resources/themes/mdc-dark-deeppurple/theme.css +39 -6
  477. package/resources/themes/mdc-dark-indigo/theme.css +39 -6
  478. package/resources/themes/mdc-light-deeppurple/theme.css +39 -6
  479. package/resources/themes/mdc-light-indigo/theme.css +39 -6
  480. package/resources/themes/nova/theme.css +39 -6
  481. package/resources/themes/nova-accent/theme.css +39 -6
  482. package/resources/themes/nova-alt/theme.css +39 -6
  483. package/resources/themes/rhea/theme.css +39 -6
  484. package/resources/themes/saga-blue/theme.css +39 -6
  485. package/resources/themes/saga-green/theme.css +39 -6
  486. package/resources/themes/saga-orange/theme.css +39 -6
  487. package/resources/themes/saga-purple/theme.css +39 -6
  488. package/resources/themes/tailwind-light/theme.css +39 -6
  489. package/resources/themes/vela-blue/theme.css +39 -6
  490. package/resources/themes/vela-green/theme.css +39 -6
  491. package/resources/themes/vela-orange/theme.css +39 -6
  492. package/resources/themes/vela-purple/theme.css +39 -6
  493. package/scrollpanel/scrollpanel.cjs.js +33 -3
  494. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  495. package/scrollpanel/scrollpanel.d.ts +7 -5
  496. package/scrollpanel/scrollpanel.esm.js +33 -3
  497. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  498. package/scrollpanel/scrollpanel.js +33 -3
  499. package/scrollpanel/scrollpanel.min.js +1 -1
  500. package/scrolltop/scrolltop.cjs.js +25 -0
  501. package/scrolltop/scrolltop.cjs.min.js +1 -1
  502. package/scrolltop/scrolltop.d.ts +3 -1
  503. package/scrolltop/scrolltop.esm.js +25 -0
  504. package/scrolltop/scrolltop.esm.min.js +1 -1
  505. package/scrolltop/scrolltop.js +25 -0
  506. package/scrolltop/scrolltop.min.js +1 -1
  507. package/selectbutton/selectbutton.cjs.js +25 -0
  508. package/selectbutton/selectbutton.cjs.min.js +1 -1
  509. package/selectbutton/selectbutton.d.ts +4 -5
  510. package/selectbutton/selectbutton.esm.js +25 -0
  511. package/selectbutton/selectbutton.esm.min.js +1 -1
  512. package/selectbutton/selectbutton.js +25 -0
  513. package/selectbutton/selectbutton.min.js +1 -1
  514. package/sidebar/sidebar.cjs.js +31 -0
  515. package/sidebar/sidebar.cjs.min.js +1 -1
  516. package/sidebar/sidebar.d.ts +6 -5
  517. package/sidebar/sidebar.esm.js +31 -0
  518. package/sidebar/sidebar.esm.min.js +1 -1
  519. package/sidebar/sidebar.js +31 -0
  520. package/sidebar/sidebar.min.js +1 -1
  521. package/skeleton/skeleton.cjs.js +27 -0
  522. package/skeleton/skeleton.cjs.min.js +1 -1
  523. package/skeleton/skeleton.d.ts +4 -4
  524. package/skeleton/skeleton.esm.js +27 -0
  525. package/skeleton/skeleton.esm.min.js +1 -1
  526. package/skeleton/skeleton.js +27 -0
  527. package/skeleton/skeleton.min.js +1 -1
  528. package/slidemenu/slidemenu.cjs.js +28 -21
  529. package/slidemenu/slidemenu.cjs.min.js +1 -1
  530. package/slidemenu/slidemenu.d.ts +2 -4
  531. package/slidemenu/slidemenu.esm.js +28 -21
  532. package/slidemenu/slidemenu.esm.min.js +1 -1
  533. package/slidemenu/slidemenu.js +28 -21
  534. package/slidemenu/slidemenu.min.js +1 -1
  535. package/slider/slider.cjs.js +25 -0
  536. package/slider/slider.cjs.min.js +1 -1
  537. package/slider/slider.d.ts +4 -6
  538. package/slider/slider.esm.js +25 -0
  539. package/slider/slider.esm.min.js +1 -1
  540. package/slider/slider.js +25 -0
  541. package/slider/slider.min.js +1 -1
  542. package/speeddial/speeddial.cjs.js +6 -3
  543. package/speeddial/speeddial.cjs.min.js +1 -1
  544. package/speeddial/speeddial.d.ts +2 -4
  545. package/speeddial/speeddial.esm.js +6 -3
  546. package/speeddial/speeddial.esm.min.js +1 -1
  547. package/speeddial/speeddial.js +6 -3
  548. package/speeddial/speeddial.min.js +1 -1
  549. package/splitbutton/splitbutton.cjs.js +28 -3
  550. package/splitbutton/splitbutton.cjs.min.js +1 -1
  551. package/splitbutton/splitbutton.d.ts +4 -5
  552. package/splitbutton/splitbutton.esm.js +28 -3
  553. package/splitbutton/splitbutton.esm.min.js +1 -1
  554. package/splitbutton/splitbutton.js +28 -3
  555. package/splitbutton/splitbutton.min.js +1 -1
  556. package/splitter/splitter.cjs.js +34 -5
  557. package/splitter/splitter.cjs.min.js +1 -1
  558. package/splitter/splitter.d.ts +4 -5
  559. package/splitter/splitter.esm.js +35 -6
  560. package/splitter/splitter.esm.min.js +1 -1
  561. package/splitter/splitter.js +34 -5
  562. package/splitter/splitter.min.js +1 -1
  563. package/steps/steps.cjs.js +29 -0
  564. package/steps/steps.cjs.min.js +1 -1
  565. package/steps/steps.d.ts +4 -5
  566. package/steps/steps.esm.js +29 -0
  567. package/steps/steps.esm.min.js +1 -1
  568. package/steps/steps.js +29 -0
  569. package/steps/steps.min.js +1 -1
  570. package/styleclass/styleclass.cjs.js +40 -17
  571. package/styleclass/styleclass.cjs.min.js +1 -1
  572. package/styleclass/styleclass.d.ts +5 -2
  573. package/styleclass/styleclass.esm.js +40 -17
  574. package/styleclass/styleclass.esm.min.js +1 -1
  575. package/styleclass/styleclass.js +40 -17
  576. package/styleclass/styleclass.min.js +1 -1
  577. package/tabmenu/tabmenu.cjs.js +27 -0
  578. package/tabmenu/tabmenu.cjs.min.js +1 -1
  579. package/tabmenu/tabmenu.d.ts +4 -5
  580. package/tabmenu/tabmenu.esm.js +27 -0
  581. package/tabmenu/tabmenu.esm.min.js +1 -1
  582. package/tabmenu/tabmenu.js +27 -0
  583. package/tabmenu/tabmenu.min.js +1 -1
  584. package/tabview/tabview.cjs.js +8 -3
  585. package/tabview/tabview.cjs.min.js +1 -1
  586. package/tabview/tabview.d.ts +2 -4
  587. package/tabview/tabview.esm.js +8 -3
  588. package/tabview/tabview.esm.min.js +1 -1
  589. package/tabview/tabview.js +8 -3
  590. package/tabview/tabview.min.js +1 -1
  591. package/tag/tag.cjs.js +12 -0
  592. package/tag/tag.cjs.min.js +1 -1
  593. package/tag/tag.d.ts +5 -5
  594. package/tag/tag.esm.js +12 -0
  595. package/tag/tag.esm.min.js +1 -1
  596. package/tag/tag.js +12 -0
  597. package/tag/tag.min.js +1 -1
  598. package/terminal/terminal.cjs.js +26 -1
  599. package/terminal/terminal.cjs.min.js +1 -1
  600. package/terminal/terminal.d.ts +4 -5
  601. package/terminal/terminal.esm.js +27 -2
  602. package/terminal/terminal.esm.min.js +1 -1
  603. package/terminal/terminal.js +26 -1
  604. package/terminal/terminal.min.js +1 -1
  605. package/tieredmenu/tieredmenu.cjs.js +27 -4
  606. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  607. package/tieredmenu/tieredmenu.d.ts +2 -4
  608. package/tieredmenu/tieredmenu.esm.js +27 -4
  609. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  610. package/tieredmenu/tieredmenu.js +27 -4
  611. package/tieredmenu/tieredmenu.min.js +1 -1
  612. package/timeline/timeline.cjs.js +13 -0
  613. package/timeline/timeline.cjs.min.js +1 -1
  614. package/timeline/timeline.d.ts +4 -5
  615. package/timeline/timeline.esm.js +13 -0
  616. package/timeline/timeline.esm.min.js +1 -1
  617. package/timeline/timeline.js +13 -0
  618. package/timeline/timeline.min.js +1 -1
  619. package/toast/toast.cjs.js +18 -17
  620. package/toast/toast.cjs.min.js +1 -1
  621. package/toast/toast.d.ts +4 -5
  622. package/toast/toast.esm.js +18 -17
  623. package/toast/toast.esm.min.js +1 -1
  624. package/toast/toast.js +18 -17
  625. package/toast/toast.min.css +1 -1
  626. package/toast/toast.min.js +1 -1
  627. package/togglebutton/togglebutton.cjs.js +25 -0
  628. package/togglebutton/togglebutton.cjs.min.js +1 -1
  629. package/togglebutton/togglebutton.d.ts +4 -6
  630. package/togglebutton/togglebutton.esm.js +25 -0
  631. package/togglebutton/togglebutton.esm.min.js +1 -1
  632. package/togglebutton/togglebutton.js +25 -0
  633. package/togglebutton/togglebutton.min.js +1 -1
  634. package/toolbar/toolbar.cjs.js +27 -0
  635. package/toolbar/toolbar.cjs.min.js +1 -1
  636. package/toolbar/toolbar.d.ts +4 -5
  637. package/toolbar/toolbar.esm.js +27 -0
  638. package/toolbar/toolbar.esm.min.js +1 -1
  639. package/toolbar/toolbar.js +27 -0
  640. package/toolbar/toolbar.min.js +1 -1
  641. package/tooltip/tooltip.cjs.js +76 -53
  642. package/tooltip/tooltip.cjs.min.js +1 -1
  643. package/tooltip/tooltip.d.ts +2 -0
  644. package/tooltip/tooltip.esm.js +76 -53
  645. package/tooltip/tooltip.esm.min.js +1 -1
  646. package/tooltip/tooltip.js +76 -53
  647. package/tooltip/tooltip.min.js +1 -1
  648. package/tree/tree.cjs.js +51 -9
  649. package/tree/tree.cjs.min.js +1 -1
  650. package/tree/tree.d.ts +9 -0
  651. package/tree/tree.esm.js +51 -9
  652. package/tree/tree.esm.min.js +1 -1
  653. package/tree/tree.js +51 -9
  654. package/tree/tree.min.js +1 -1
  655. package/treeselect/treeselect.cjs.js +34 -5
  656. package/treeselect/treeselect.cjs.min.js +1 -1
  657. package/treeselect/treeselect.d.ts +11 -5
  658. package/treeselect/treeselect.esm.js +34 -5
  659. package/treeselect/treeselect.esm.min.js +1 -1
  660. package/treeselect/treeselect.js +34 -5
  661. package/treeselect/treeselect.min.js +1 -1
  662. package/treetable/treetable.cjs.js +12 -8
  663. package/treetable/treetable.cjs.min.js +1 -1
  664. package/treetable/treetable.d.ts +4 -3
  665. package/treetable/treetable.esm.js +12 -8
  666. package/treetable/treetable.esm.min.js +1 -1
  667. package/treetable/treetable.js +12 -8
  668. package/treetable/treetable.min.js +1 -1
  669. package/tristatecheckbox/tristatecheckbox.cjs.js +25 -0
  670. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  671. package/tristatecheckbox/tristatecheckbox.d.ts +3 -5
  672. package/tristatecheckbox/tristatecheckbox.esm.js +25 -0
  673. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  674. package/tristatecheckbox/tristatecheckbox.js +25 -0
  675. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  676. package/utils/utils.cjs.js +21 -5
  677. package/utils/utils.cjs.min.js +1 -1
  678. package/utils/utils.d.ts +1 -0
  679. package/utils/utils.esm.js +21 -5
  680. package/utils/utils.esm.min.js +1 -1
  681. package/utils/utils.js +21 -5
  682. package/utils/utils.min.js +1 -1
  683. package/virtualscroller/virtualscroller.cjs.js +157 -68
  684. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  685. package/virtualscroller/virtualscroller.d.ts +12 -0
  686. package/virtualscroller/virtualscroller.esm.js +159 -70
  687. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  688. package/virtualscroller/virtualscroller.js +157 -68
  689. package/virtualscroller/virtualscroller.min.css +1 -1
  690. package/virtualscroller/virtualscroller.min.js +1 -1
  691. package/web-types.json +301 -5
package/core/core.js CHANGED
@@ -997,6 +997,21 @@ this.primereact.utils = (function (exports, React) {
997
997
  var focusableElements = DomHandler.getFocusableElements(element, selector);
998
998
  return focusableElements.length > 0 ? focusableElements[focusableElements.length - 1] : null;
999
999
  }
1000
+ /**
1001
+ * Focus an input element if it does not already have focus.
1002
+ *
1003
+ * @param {HTMLElement} el a HTML element
1004
+ * @param {boolean} scrollTo flag to control whether to scroll to the element, false by default
1005
+ */
1006
+
1007
+ }, {
1008
+ key: "focus",
1009
+ value: function focus(el, scrollTo) {
1010
+ var preventScroll = scrollTo === undefined ? true : !scrollTo;
1011
+ el && document.activeElement !== el && el.focus({
1012
+ preventScroll: preventScroll
1013
+ });
1014
+ }
1000
1015
  }, {
1001
1016
  key: "getCursorOffset",
1002
1017
  value: function getCursorOffset(el, prevText, nextText, currentText) {
@@ -1407,12 +1422,9 @@ this.primereact.utils = (function (exports, React) {
1407
1422
 
1408
1423
  var onBlur = function onBlur(e) {
1409
1424
  checkVal();
1425
+ options.onBlur && options.onBlur(e);
1410
1426
  updateModel(e);
1411
1427
 
1412
- if (options.onBlur) {
1413
- options.onBlur(e);
1414
- }
1415
-
1416
1428
  if (el.value !== focusText) {
1417
1429
  var event = document.createEvent('HTMLEvents');
1418
1430
  event.initEvent('change', true, false);
@@ -1948,7 +1960,11 @@ this.primereact.utils = (function (exports, React) {
1948
1960
  var order = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
1949
1961
  var locale = arguments.length > 3 ? arguments[3] : undefined;
1950
1962
  var result = null;
1951
- if (value1 == null && value2 != null) result = -1;else if (value1 != null && value2 == null) result = 1;else if (value1 == null && value2 == null) result = 0;else if (typeof value1 === 'string' && typeof value2 === 'string') result = value1.localeCompare(value2, locale, {
1963
+ var emptyValue1 = this.isEmpty(value1);
1964
+ var emptyValue2 = this.isEmpty(value2);
1965
+ if (emptyValue1 && emptyValue2) result = 0;else if (emptyValue1) result = order; // sort nulls at bottom like Excel
1966
+ else if (emptyValue2) result = -order; // sort nulls at bottom like Excel
1967
+ else if (typeof value1 === 'string' && typeof value2 === 'string') result = value1.localeCompare(value2, locale, {
1952
1968
  numeric: true
1953
1969
  });else result = value1 < value2 ? -1 : value1 > value2 ? 1 : 0;
1954
1970
  return order * result;
@@ -3207,9 +3223,25 @@ this.primereact.hooks = (function (exports, React, utils) {
3207
3223
 
3208
3224
  var useStorage = function useStorage(initialValue, key) {
3209
3225
  var storage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'local';
3210
- // Since the local storage API isn't available in server-rendering environments,
3226
+ // Since the local storage API isn't available in server-rendering environments,
3211
3227
  // we check that typeof window !== 'undefined' to make SSR and SSG work properly.
3212
- var storageAvailable = typeof window !== 'undefined';
3228
+ var storageAvailable = typeof window !== 'undefined'; // subscribe to window storage event so changes in one tab to a stored value
3229
+ // are properly reflected in all tabs
3230
+
3231
+ var _useEventListener = useEventListener({
3232
+ target: 'window',
3233
+ type: 'storage',
3234
+ listener: function listener(event) {
3235
+ var area = storage === 'local' ? window.localStorage : window.sessionStorage;
3236
+
3237
+ if (event.storageArea === area && event.key === key) {
3238
+ setStoredValue(event.newValue || undefined);
3239
+ }
3240
+ }
3241
+ }),
3242
+ _useEventListener2 = _slicedToArray(_useEventListener, 2),
3243
+ bindWindowStorageListener = _useEventListener2[0],
3244
+ unbindWindowStorageListener = _useEventListener2[1];
3213
3245
 
3214
3246
  var _React$useState = React__namespace.useState(function () {
3215
3247
  if (!storageAvailable) {
@@ -3243,8 +3275,36 @@ this.primereact.hooks = (function (exports, React, utils) {
3243
3275
  }
3244
3276
  };
3245
3277
 
3278
+ React__namespace.useEffect(function () {
3279
+ bindWindowStorageListener();
3280
+ return function () {
3281
+ return unbindWindowStorageListener();
3282
+ };
3283
+ }, []);
3246
3284
  return [storedValue, setValue];
3247
3285
  };
3286
+ /**
3287
+ * Hook to wrap around useState that stores the value in the browser local storage.
3288
+ *
3289
+ * @param {any} initialValue the initial value to store
3290
+ * @param {string} key the key to store the value in local storage
3291
+ * @returns a stateful value, and a function to update it.
3292
+ */
3293
+
3294
+ var useLocalStorage = function useLocalStorage(initialValue, key) {
3295
+ return useStorage(initialValue, key, 'local');
3296
+ };
3297
+ /**
3298
+ * Hook to wrap around useState that stores the value in the browser session storage.
3299
+ *
3300
+ * @param {any} initialValue the initial value to store
3301
+ * @param {string} key the key to store the value in session storage
3302
+ * @returns a stateful value, and a function to update it.
3303
+ */
3304
+
3305
+ var useSessionStorage = function useSessionStorage(initialValue, key) {
3306
+ return useStorage(initialValue, key, 'session');
3307
+ };
3248
3308
  /* eslint-enable */
3249
3309
 
3250
3310
  /* eslint-disable */
@@ -3280,11 +3340,13 @@ this.primereact.hooks = (function (exports, React, utils) {
3280
3340
 
3281
3341
  exports.useEventListener = useEventListener;
3282
3342
  exports.useInterval = useInterval;
3343
+ exports.useLocalStorage = useLocalStorage;
3283
3344
  exports.useMountEffect = useMountEffect;
3284
3345
  exports.useOverlayListener = useOverlayListener;
3285
3346
  exports.useOverlayScrollListener = useOverlayScrollListener;
3286
3347
  exports.usePrevious = usePrevious;
3287
3348
  exports.useResizeListener = useResizeListener;
3349
+ exports.useSessionStorage = useSessionStorage;
3288
3350
  exports.useStorage = useStorage;
3289
3351
  exports.useTimeout = useTimeout;
3290
3352
  exports.useUnmountEffect = useUnmountEffect;
@@ -3979,6 +4041,9 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
3979
4041
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
3980
4042
  }
3981
4043
 
4044
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4045
+
4046
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3982
4047
  var Tooltip = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
3983
4048
  var _React$useState = React__namespace.useState(false),
3984
4049
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -3990,12 +4055,18 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
3990
4055
  positionState = _React$useState4[0],
3991
4056
  setPositionState = _React$useState4[1];
3992
4057
 
4058
+ var _React$useState5 = React__namespace.useState(''),
4059
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
4060
+ classNameState = _React$useState6[0],
4061
+ setClassNameState = _React$useState6[1];
4062
+
3993
4063
  var elementRef = React__namespace.useRef(null);
3994
4064
  var textRef = React__namespace.useRef(null);
3995
4065
  var currentTargetRef = React__namespace.useRef(null);
3996
4066
  var containerSize = React__namespace.useRef(null);
3997
4067
  var allowHide = React__namespace.useRef(true);
3998
4068
  var timeouts = React__namespace.useRef({});
4069
+ var currentMouseEvent = React__namespace.useRef(null);
3999
4070
 
4000
4071
  var _useResizeListener = hooks.useResizeListener({
4001
4072
  listener: function listener(event) {
@@ -4099,6 +4170,37 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4099
4170
  }
4100
4171
  };
4101
4172
 
4173
+ var updateTooltipState = function updateTooltipState(position) {
4174
+ updateText(currentTargetRef.current, function () {
4175
+ var _currentMouseEvent$cu = currentMouseEvent.current,
4176
+ x = _currentMouseEvent$cu.pageX,
4177
+ y = _currentMouseEvent$cu.pageY;
4178
+
4179
+ if (props.autoZIndex && !utils.ZIndexUtils.get(elementRef.current)) {
4180
+ utils.ZIndexUtils.set('tooltip', elementRef.current, PrimeReact__default["default"].autoZIndex, props.baseZIndex || PrimeReact__default["default"].zIndex['tooltip']);
4181
+ }
4182
+
4183
+ elementRef.current.style.left = '';
4184
+ elementRef.current.style.top = ''; // GitHub #2695 disable pointer events when autohiding
4185
+
4186
+ if (isAutoHide()) {
4187
+ elementRef.current.style.pointerEvents = 'none';
4188
+ }
4189
+
4190
+ if (isMouseTrack(currentTargetRef.current) && !containerSize.current) {
4191
+ containerSize.current = {
4192
+ width: utils.DomHandler.getOuterWidth(elementRef.current),
4193
+ height: utils.DomHandler.getOuterHeight(elementRef.current)
4194
+ };
4195
+ }
4196
+
4197
+ align(currentTargetRef.current, {
4198
+ x: x,
4199
+ y: y
4200
+ }, position);
4201
+ });
4202
+ };
4203
+
4102
4204
  var show = function show(e) {
4103
4205
  currentTargetRef.current = e.currentTarget;
4104
4206
  var disabled = isDisabled(currentTargetRef.current);
@@ -4108,32 +4210,7 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4108
4210
  return;
4109
4211
  }
4110
4212
 
4111
- var updateTooltipState = function updateTooltipState() {
4112
- updateText(currentTargetRef.current, function () {
4113
- if (props.autoZIndex && !utils.ZIndexUtils.get(elementRef.current)) {
4114
- utils.ZIndexUtils.set('tooltip', elementRef.current, PrimeReact__default["default"].autoZIndex, props.baseZIndex || PrimeReact__default["default"].zIndex['tooltip']);
4115
- }
4116
-
4117
- elementRef.current.style.left = '';
4118
- elementRef.current.style.top = ''; // GitHub #2695 disable pointer events when autohiding
4119
-
4120
- if (isAutoHide()) {
4121
- elementRef.current.style.pointerEvents = 'none';
4122
- }
4123
-
4124
- if (isMouseTrack(currentTargetRef.current) && !containerSize.current) {
4125
- containerSize.current = {
4126
- width: utils.DomHandler.getOuterWidth(elementRef.current),
4127
- height: utils.DomHandler.getOuterHeight(elementRef.current)
4128
- };
4129
- }
4130
-
4131
- align(currentTargetRef.current, {
4132
- x: e.pageX,
4133
- y: e.pageY
4134
- });
4135
- });
4136
- };
4213
+ currentMouseEvent.current = e;
4137
4214
 
4138
4215
  if (visibleState) {
4139
4216
  applyDelay('updateDelay', updateTooltipState);
@@ -4147,15 +4224,10 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4147
4224
  if (success) {
4148
4225
  applyDelay('showDelay', function () {
4149
4226
  setVisibleState(true);
4150
- setPositionState(getPosition(currentTargetRef.current));
4151
- setTimeout(function () {
4152
- return updateTooltipState();
4153
- }, 0);
4154
4227
  sendCallback(props.onShow, {
4155
4228
  originalEvent: e,
4156
4229
  target: currentTargetRef.current
4157
4230
  });
4158
- utils.DomHandler.addClass(currentTargetRef.current, getTargetOption(currentTargetRef.current, 'classname'));
4159
4231
  });
4160
4232
  }
4161
4233
  }
@@ -4165,7 +4237,6 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4165
4237
  clearTimeouts();
4166
4238
 
4167
4239
  if (visibleState) {
4168
- utils.DomHandler.removeClass(currentTargetRef.current, getTargetOption(currentTargetRef.current, 'classname'));
4169
4240
  var success = sendCallback(props.onBeforeHide, {
4170
4241
  originalEvent: e,
4171
4242
  target: currentTargetRef.current
@@ -4180,10 +4251,6 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4180
4251
  utils.ZIndexUtils.clear(elementRef.current);
4181
4252
  utils.DomHandler.removeClass(elementRef.current, 'p-tooltip-active');
4182
4253
  setVisibleState(false);
4183
- setPositionState(props.position);
4184
- currentTargetRef.current = null;
4185
- containerSize.current = null;
4186
- allowHide.current = true;
4187
4254
  sendCallback(props.onHide, {
4188
4255
  originalEvent: e,
4189
4256
  target: currentTargetRef.current
@@ -4193,9 +4260,10 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4193
4260
  }
4194
4261
  };
4195
4262
 
4196
- var align = function align(target, coordinate) {
4263
+ var align = function align(target, coordinate, position) {
4197
4264
  var left = 0,
4198
- top = 0;
4265
+ top = 0,
4266
+ currentPosition = position || positionState;
4199
4267
 
4200
4268
  if (isMouseTrack(target) && coordinate) {
4201
4269
  var _containerSize = {
@@ -4209,7 +4277,7 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4209
4277
  mouseTrackTop = _getMouseTrackPositio.top,
4210
4278
  mouseTrackLeft = _getMouseTrackPositio.left;
4211
4279
 
4212
- switch (positionState) {
4280
+ switch (currentPosition) {
4213
4281
  case 'left':
4214
4282
  left -= _containerSize.width + mouseTrackLeft;
4215
4283
  top -= _containerSize.height / 2 - mouseTrackTop;
@@ -4242,28 +4310,28 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4242
4310
  elementRef.current.style.top = top + 'px';
4243
4311
  utils.DomHandler.addClass(elementRef.current, 'p-tooltip-active');
4244
4312
  } else {
4245
- var pos = utils.DomHandler.findCollisionPosition(positionState);
4313
+ var pos = utils.DomHandler.findCollisionPosition(currentPosition);
4246
4314
  var my = getTargetOption(target, 'my') || props.my || pos.my;
4247
4315
  var at = getTargetOption(target, 'at') || props.at || pos.at;
4248
4316
  elementRef.current.style.padding = '0px';
4249
- utils.DomHandler.flipfitCollision(elementRef.current, target, my, at, function (currentPosition) {
4250
- var _currentPosition$at = currentPosition.at,
4251
- atX = _currentPosition$at.x,
4252
- atY = _currentPosition$at.y;
4253
- var myX = currentPosition.my.x;
4254
- var newPosition = props.at ? atX !== 'center' && atX !== myX ? atX : atY : currentPosition.at["".concat(pos.axis)];
4317
+ utils.DomHandler.flipfitCollision(elementRef.current, target, my, at, function (calculatedPosition) {
4318
+ var _calculatedPosition$a = calculatedPosition.at,
4319
+ atX = _calculatedPosition$a.x,
4320
+ atY = _calculatedPosition$a.y;
4321
+ var myX = calculatedPosition.my.x;
4322
+ var newPosition = props.at ? atX !== 'center' && atX !== myX ? atX : atY : calculatedPosition.at["".concat(pos.axis)];
4255
4323
  elementRef.current.style.padding = '';
4256
4324
  setPositionState(newPosition);
4257
- updateContainerPosition();
4325
+ updateContainerPosition(newPosition);
4258
4326
  utils.DomHandler.addClass(elementRef.current, 'p-tooltip-active');
4259
4327
  });
4260
4328
  }
4261
4329
  };
4262
4330
 
4263
- var updateContainerPosition = function updateContainerPosition() {
4331
+ var updateContainerPosition = function updateContainerPosition(position) {
4264
4332
  if (elementRef.current) {
4265
4333
  var style = getComputedStyle(elementRef.current);
4266
- if (positionState === 'left') elementRef.current.style.left = parseFloat(style.left) - parseFloat(style.paddingLeft) * 2 + 'px';else if (positionState === 'top') elementRef.current.style.top = parseFloat(style.top) - parseFloat(style.paddingTop) * 2 + 'px';
4334
+ if (position === 'left') elementRef.current.style.left = parseFloat(style.left) - parseFloat(style.paddingLeft) * 2 + 'px';else if (position === 'top') elementRef.current.style.top = parseFloat(style.top) - parseFloat(style.paddingTop) * 2 + 'px';
4267
4335
  }
4268
4336
  };
4269
4337
 
@@ -4416,8 +4484,19 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4416
4484
  }, [show, hide, props.target]);
4417
4485
  hooks.useUpdateEffect(function () {
4418
4486
  if (visibleState) {
4487
+ var position = getPosition(currentTargetRef.current);
4488
+ var classname = getTargetOption(currentTargetRef.current, 'classname');
4489
+ setPositionState(position);
4490
+ setClassNameState(classname);
4491
+ updateTooltipState(position);
4419
4492
  bindWindowResizeListener();
4420
4493
  bindOverlayScrollListener();
4494
+ } else {
4495
+ setPositionState(props.position);
4496
+ setClassNameState('');
4497
+ currentTargetRef.current = null;
4498
+ containerSize.current = null;
4499
+ allowHide.current = true;
4421
4500
  }
4422
4501
 
4423
4502
  return function () {
@@ -4440,16 +4519,22 @@ this.primereact.tooltip = (function (exports, React, PrimeReact, hooks, portal,
4440
4519
  utils.ZIndexUtils.clear(elementRef.current);
4441
4520
  });
4442
4521
  React__namespace.useImperativeHandle(ref, function () {
4443
- return {
4522
+ return _objectSpread({
4444
4523
  updateTargetEvents: updateTargetEvents,
4445
4524
  loadTargetEvents: loadTargetEvents,
4446
- unloadTargetEvents: unloadTargetEvents
4447
- };
4525
+ unloadTargetEvents: unloadTargetEvents,
4526
+ getElement: function getElement() {
4527
+ return elementRef.current;
4528
+ },
4529
+ getTarget: function getTarget() {
4530
+ return currentTargetRef.current;
4531
+ }
4532
+ }, props);
4448
4533
  });
4449
4534
 
4450
4535
  var createElement = function createElement() {
4451
4536
  var otherProps = utils.ObjectUtils.findDiffKeys(props, Tooltip.defaultProps);
4452
- var tooltipClassName = utils.classNames('p-tooltip p-component', _defineProperty({}, "p-tooltip-".concat(positionState), true), props.className);
4537
+ var tooltipClassName = utils.classNames('p-tooltip p-component', _defineProperty({}, "p-tooltip-".concat(positionState), true), props.className, classNameState);
4453
4538
  var empty = isTargetContentEmpty(currentTargetRef.current);
4454
4539
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
4455
4540
  id: props.id,
@@ -4675,7 +4760,7 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4675
4760
  numToleratedItemsState = _React$useState8[0],
4676
4761
  setNumToleratedItemsState = _React$useState8[1];
4677
4762
 
4678
- var _React$useState9 = React__namespace.useState(props.loading),
4763
+ var _React$useState9 = React__namespace.useState(props.loading || false),
4679
4764
  _React$useState10 = _slicedToArray(_React$useState9, 2),
4680
4765
  loadingState = _React$useState10[0],
4681
4766
  setLoadingState = _React$useState10[1];
@@ -4698,10 +4783,39 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4698
4783
  left: 0
4699
4784
  } : 0);
4700
4785
  var scrollTimeout = React__namespace.useRef(null);
4786
+ var resizeTimeout = React__namespace.useRef(null);
4787
+ var defaultWidth = React__namespace.useRef(null);
4788
+ var defaultHeight = React__namespace.useRef(null);
4701
4789
  var prevItems = hooks.usePrevious(props.items);
4702
4790
  var prevLoading = hooks.usePrevious(props.loading);
4703
4791
 
4792
+ var _useResizeListener = hooks.useResizeListener({
4793
+ listener: function listener(event) {
4794
+ return onResize(event);
4795
+ }
4796
+ }),
4797
+ _useResizeListener2 = _slicedToArray(_useResizeListener, 1),
4798
+ bindWindowResizeListener = _useResizeListener2[0];
4799
+
4800
+ var _useEventListener = hooks.useEventListener({
4801
+ target: 'window',
4802
+ type: 'orientationchange',
4803
+ listener: function listener(event) {
4804
+ return onResize(event);
4805
+ }
4806
+ }),
4807
+ _useEventListener2 = _slicedToArray(_useEventListener, 1),
4808
+ bindOrientationChangeListener = _useEventListener2[0];
4809
+
4810
+ var getElementRef = function getElementRef() {
4811
+ return elementRef;
4812
+ };
4813
+
4704
4814
  var scrollTo = function scrollTo(options) {
4815
+ lastScrollPos.current = both ? {
4816
+ top: 0,
4817
+ left: 0
4818
+ } : 0;
4705
4819
  elementRef.current && elementRef.current.scrollTo(options);
4706
4820
  };
4707
4821
 
@@ -4711,9 +4825,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4711
4825
  var _calculateNumItems = calculateNumItems(),
4712
4826
  numToleratedItems = _calculateNumItems.numToleratedItems;
4713
4827
 
4714
- var itemSize = props.itemSize;
4715
- var contentPos = getContentPosition();
4716
-
4717
4828
  var calculateFirst = function calculateFirst() {
4718
4829
  var _index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
4719
4830
 
@@ -4722,8 +4833,8 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4722
4833
  return _index <= _numT ? 0 : _index;
4723
4834
  };
4724
4835
 
4725
- var calculateCoord = function calculateCoord(_first, _size, _cpos) {
4726
- return _first * _size + _cpos;
4836
+ var calculateCoord = function calculateCoord(_first, _size) {
4837
+ return _first * _size;
4727
4838
  };
4728
4839
 
4729
4840
  var scrollToItem = function scrollToItem() {
@@ -4743,15 +4854,13 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4743
4854
  };
4744
4855
 
4745
4856
  if (newFirst.rows !== firstState.rows || newFirst.cols !== firstState.cols) {
4746
- scrollToItem(calculateCoord(newFirst.cols, itemSize[1], contentPos.left), calculateCoord(newFirst.rows, itemSize[0], contentPos.top));
4747
- setFirstState(newFirst);
4857
+ scrollToItem(calculateCoord(newFirst.cols, props.itemSize[1]), calculateCoord(newFirst.rows, props.itemSize[0]));
4748
4858
  }
4749
4859
  } else {
4750
4860
  var _newFirst = calculateFirst(index, numToleratedItems);
4751
4861
 
4752
4862
  if (_newFirst !== firstState) {
4753
- horizontal ? scrollToItem(calculateCoord(_newFirst, itemSize, contentPos.left), 0) : scrollToItem(0, calculateCoord(_newFirst, itemSize, contentPos.top));
4754
- setFirstState(_newFirst);
4863
+ horizontal ? scrollToItem(calculateCoord(_newFirst, props.itemSize), 0) : scrollToItem(0, calculateCoord(_newFirst, props.itemSize));
4755
4864
  }
4756
4865
  }
4757
4866
  };
@@ -4764,8 +4873,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4764
4873
  first = _getRenderedRange.first,
4765
4874
  viewport = _getRenderedRange.viewport;
4766
4875
 
4767
- var itemSize = props.itemSize;
4768
-
4769
4876
  var scrollToItem = function scrollToItem() {
4770
4877
  var left = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
4771
4878
  var top = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
@@ -4782,26 +4889,26 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4782
4889
  if (isToStart) {
4783
4890
  if (both) {
4784
4891
  if (viewport.first.rows - first.rows > index[0]) {
4785
- scrollToItem(viewport.first.cols * itemSize, (viewport.first.rows - 1) * itemSize);
4892
+ scrollToItem(viewport.first.cols * props.itemSize[1], (viewport.first.rows - 1) * props.itemSize[0]);
4786
4893
  } else if (viewport.first.cols - first.cols > index[1]) {
4787
- scrollToItem((viewport.first.cols - 1) * itemSize, viewport.first.rows * itemSize);
4894
+ scrollToItem((viewport.first.cols - 1) * props.itemSize[1], viewport.first.rows * props.itemSize[0]);
4788
4895
  }
4789
4896
  } else {
4790
4897
  if (viewport.first - first > index) {
4791
- var pos = (viewport.first - 1) * itemSize;
4898
+ var pos = (viewport.first - 1) * props.itemSize;
4792
4899
  horizontal ? scrollToItem(pos, 0) : scrollToItem(0, pos);
4793
4900
  }
4794
4901
  }
4795
4902
  } else if (isToEnd) {
4796
4903
  if (both) {
4797
4904
  if (viewport.last.rows - first.rows <= index[0] + 1) {
4798
- scrollToItem(viewport.first.cols * itemSize, (viewport.first.rows + 1) * itemSize);
4905
+ scrollToItem(viewport.first.cols * props.itemSize[1], (viewport.first.rows + 1) * props.itemSize[0]);
4799
4906
  } else if (viewport.last.cols - first.cols <= index[1] + 1) {
4800
- scrollToItem((viewport.first.cols + 1) * itemSize, viewport.first.rows * itemSize);
4907
+ scrollToItem((viewport.first.cols + 1) * props.itemSize[1], viewport.first.rows * props.itemSize[0]);
4801
4908
  }
4802
4909
  } else {
4803
4910
  if (viewport.last - first <= index + 1) {
4804
- var _pos2 = (viewport.first + 1) * itemSize;
4911
+ var _pos2 = (viewport.first + 1) * props.itemSize;
4805
4912
 
4806
4913
  horizontal ? scrollToItem(_pos2, 0) : scrollToItem(0, _pos2);
4807
4914
  }
@@ -4817,18 +4924,14 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4817
4924
  };
4818
4925
 
4819
4926
  var getColumns = function getColumns() {
4820
- if (props.columns) {
4821
- if (both || horizontal) {
4822
- return loadingState && props.loaderDisabled ? both ? loaderArrState[0] : loaderArrState : props.columns.slice(both ? firstState.cols : firstState, both ? lastState.cols : lastState);
4823
- }
4927
+ if (props.columns && both || horizontal) {
4928
+ return loadingState && props.loaderDisabled ? both ? loaderArrState[0] : loaderArrState : props.columns.slice(both ? firstState.cols : firstState, both ? lastState.cols : lastState);
4824
4929
  }
4825
4930
 
4826
4931
  return props.columns;
4827
4932
  };
4828
4933
 
4829
4934
  var getRenderedRange = function getRenderedRange() {
4830
- var itemSize = props.itemSize;
4831
-
4832
4935
  var calculateFirstInViewport = function calculateFirstInViewport(_pos, _size) {
4833
4936
  return Math.floor(_pos / (_size || _pos));
4834
4937
  };
@@ -4837,13 +4940,14 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4837
4940
  var lastInViewport = 0;
4838
4941
 
4839
4942
  if (elementRef.current) {
4840
- var scrollTop = elementRef.current.scrollTop;
4841
- var scrollLeft = elementRef.current.scrollLeft;
4943
+ var _elementRef$current = elementRef.current,
4944
+ scrollTop = _elementRef$current.scrollTop,
4945
+ scrollLeft = _elementRef$current.scrollLeft;
4842
4946
 
4843
4947
  if (both) {
4844
4948
  firstInViewport = {
4845
- rows: calculateFirstInViewport(scrollTop, itemSize[0]),
4846
- cols: calculateFirstInViewport(scrollLeft, itemSize[1])
4949
+ rows: calculateFirstInViewport(scrollTop, props.itemSize[0]),
4950
+ cols: calculateFirstInViewport(scrollLeft, props.itemSize[1])
4847
4951
  };
4848
4952
  lastInViewport = {
4849
4953
  rows: firstInViewport.rows + numItemsInViewportState.rows,
@@ -4851,7 +4955,7 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4851
4955
  };
4852
4956
  } else {
4853
4957
  var scrollPos = horizontal ? scrollLeft : scrollTop;
4854
- firstInViewport = calculateFirstInViewport(scrollPos, itemSize);
4958
+ firstInViewport = calculateFirstInViewport(scrollPos, props.itemSize);
4855
4959
  lastInViewport = firstInViewport + numItemsInViewportState;
4856
4960
  }
4857
4961
  }
@@ -4867,7 +4971,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4867
4971
  };
4868
4972
 
4869
4973
  var calculateNumItems = function calculateNumItems() {
4870
- var itemSize = props.itemSize;
4871
4974
  var contentPos = getContentPosition();
4872
4975
  var contentWidth = elementRef.current ? elementRef.current.offsetWidth - contentPos.left : 0;
4873
4976
  var contentHeight = elementRef.current ? elementRef.current.offsetHeight - contentPos.top : 0;
@@ -4881,9 +4984,9 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4881
4984
  };
4882
4985
 
4883
4986
  var numItemsInViewport = both ? {
4884
- rows: calculateNumItemsInViewport(contentHeight, itemSize[0]),
4885
- cols: calculateNumItemsInViewport(contentWidth, itemSize[1])
4886
- } : calculateNumItemsInViewport(horizontal ? contentWidth : contentHeight, itemSize);
4987
+ rows: calculateNumItemsInViewport(contentHeight, props.itemSize[0]),
4988
+ cols: calculateNumItemsInViewport(contentWidth, props.itemSize[1])
4989
+ } : calculateNumItemsInViewport(horizontal ? contentWidth : contentHeight, props.itemSize);
4887
4990
  var numToleratedItems = numToleratedItemsState || (both ? [calculateNumToleratedItems(numItemsInViewport.rows), calculateNumToleratedItems(numItemsInViewport.cols)] : calculateNumToleratedItems(numItemsInViewport));
4888
4991
  return {
4889
4992
  numItemsInViewport: numItemsInViewport,
@@ -4928,15 +5031,26 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4928
5031
  }
4929
5032
  };
4930
5033
 
5034
+ var calculateAutoSize = function calculateAutoSize(loading) {
5035
+ if (props.autoSize && !loading) {
5036
+ Promise.resolve().then(function () {
5037
+ if (_contentRef.current) {
5038
+ _contentRef.current.style.minHeight = _contentRef.current.style.minWidth = 'auto';
5039
+ var _contentRef$current = _contentRef.current,
5040
+ offsetWidth = _contentRef$current.offsetWidth,
5041
+ offsetHeight = _contentRef$current.offsetHeight;
5042
+ (both || horizontal) && (elementRef.current.style.width = (offsetWidth < defaultWidth.current ? offsetWidth : defaultWidth.current) + 'px');
5043
+ (both || vertical) && (elementRef.current.style.height = (offsetHeight < defaultHeight.current ? offsetHeight : defaultHeight.current) + 'px');
5044
+ _contentRef.current.style.minHeight = _contentRef.current.style.minWidth = '';
5045
+ }
5046
+ });
5047
+ }
5048
+ };
5049
+
4931
5050
  var getLast = function getLast() {
4932
5051
  var last = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
4933
5052
  var isCols = arguments.length > 1 ? arguments[1] : undefined;
4934
-
4935
- if (props.items) {
4936
- return Math.min(isCols ? (props.columns || props.items[0]).length : props.items.length, last);
4937
- }
4938
-
4939
- return 0;
5053
+ return props.items ? Math.min(isCols ? (props.columns || props.items[0]).length : props.items.length, last) : 0;
4940
5054
  };
4941
5055
 
4942
5056
  var getContentPosition = function getContentPosition() {
@@ -4989,7 +5103,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4989
5103
  var items = props.items;
4990
5104
 
4991
5105
  if (_spacerRef.current && items) {
4992
- var itemSize = props.itemSize;
4993
5106
  var contentPos = getContentPosition();
4994
5107
 
4995
5108
  var setProp = function setProp(_name, _value, _size) {
@@ -4999,10 +5112,10 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
4999
5112
  };
5000
5113
 
5001
5114
  if (both) {
5002
- setProp('height', items, itemSize[0], contentPos.y);
5003
- setProp('width', props.columns || items[1], itemSize[1], contentPos.x);
5115
+ setProp('height', items, props.itemSize[0], contentPos.y);
5116
+ setProp('width', props.columns || items[1], props.itemSize[1], contentPos.x);
5004
5117
  } else {
5005
- horizontal ? setProp('width', props.columns || items, itemSize, contentPos.x) : setProp('height', items, itemSize, contentPos.y);
5118
+ horizontal ? setProp('width', props.columns || items, props.itemSize, contentPos.x) : setProp('height', items, props.itemSize, contentPos.y);
5006
5119
  }
5007
5120
  }
5008
5121
  };
@@ -5010,7 +5123,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5010
5123
  var setContentPosition = function setContentPosition(pos) {
5011
5124
  if (_contentRef.current) {
5012
5125
  var first = pos ? pos.first : firstState;
5013
- var itemSize = props.itemSize;
5014
5126
 
5015
5127
  var calculateTranslateVal = function calculateTranslateVal(_first, _size) {
5016
5128
  return _first * _size;
@@ -5026,9 +5138,9 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5026
5138
  };
5027
5139
 
5028
5140
  if (both) {
5029
- setTransform(calculateTranslateVal(first.cols, itemSize[1]), calculateTranslateVal(first.rows, itemSize[0]));
5141
+ setTransform(calculateTranslateVal(first.cols, props.itemSize[1]), calculateTranslateVal(first.rows, props.itemSize[0]));
5030
5142
  } else {
5031
- var translateVal = calculateTranslateVal(first, itemSize);
5143
+ var translateVal = calculateTranslateVal(first, props.itemSize);
5032
5144
  horizontal ? setTransform(translateVal, 0) : setTransform(0, translateVal);
5033
5145
  }
5034
5146
  }
@@ -5036,7 +5148,6 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5036
5148
 
5037
5149
  var onScrollPositionChange = function onScrollPositionChange(event) {
5038
5150
  var target = event.target;
5039
- var itemSize = props.itemSize;
5040
5151
  var contentPos = getContentPosition();
5041
5152
 
5042
5153
  var calculateScrollPos = function calculateScrollPos(_pos, _cpos) {
@@ -5067,16 +5178,20 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5067
5178
 
5068
5179
  var scrollTop = calculateScrollPos(target.scrollTop, contentPos.top);
5069
5180
  var scrollLeft = calculateScrollPos(target.scrollLeft, contentPos.left);
5070
- var newFirst = 0;
5181
+ var newFirst = both ? {
5182
+ rows: 0,
5183
+ cols: 0
5184
+ } : 0;
5071
5185
  var newLast = lastState;
5072
5186
  var isRangeChanged = false;
5187
+ var newScrollPos = lastScrollPos.current;
5073
5188
 
5074
5189
  if (both) {
5075
5190
  var isScrollDown = lastScrollPos.current.top <= scrollTop;
5076
5191
  var isScrollRight = lastScrollPos.current.left <= scrollLeft;
5077
5192
  var currentIndex = {
5078
- rows: calculateCurrentIndex(scrollTop, itemSize[0]),
5079
- cols: calculateCurrentIndex(scrollLeft, itemSize[1])
5193
+ rows: calculateCurrentIndex(scrollTop, props.itemSize[0]),
5194
+ cols: calculateCurrentIndex(scrollLeft, props.itemSize[1])
5080
5195
  };
5081
5196
  var triggerIndex = {
5082
5197
  rows: calculateTriggerIndex(currentIndex.rows, firstState.rows, lastState.rows, numItemsInViewportState.rows, numToleratedItemsState[0], isScrollDown),
@@ -5090,8 +5205,8 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5090
5205
  rows: calculateLast(currentIndex.rows, newFirst.rows, lastState.rows, numItemsInViewportState.rows, numToleratedItemsState[0]),
5091
5206
  cols: calculateLast(currentIndex.cols, newFirst.cols, lastState.cols, numItemsInViewportState.cols, numToleratedItemsState[1], true)
5092
5207
  };
5093
- isRangeChanged = newFirst.rows !== firstState.rows && newLast.rows !== lastState.rows || newFirst.cols !== firstState.cols && newLast.cols !== lastState.cols;
5094
- lastScrollPos.current = {
5208
+ isRangeChanged = newFirst.rows !== firstState.rows || newLast.rows !== lastState.rows || newFirst.cols !== firstState.cols || newLast.cols !== lastState.cols;
5209
+ newScrollPos = {
5095
5210
  top: scrollTop,
5096
5211
  left: scrollLeft
5097
5212
  };
@@ -5099,20 +5214,21 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5099
5214
  var scrollPos = horizontal ? scrollLeft : scrollTop;
5100
5215
  var isScrollDownOrRight = lastScrollPos.current <= scrollPos;
5101
5216
 
5102
- var _currentIndex2 = calculateCurrentIndex(scrollPos, itemSize);
5217
+ var _currentIndex2 = calculateCurrentIndex(scrollPos, props.itemSize);
5103
5218
 
5104
5219
  var _triggerIndex2 = calculateTriggerIndex(_currentIndex2, firstState, lastState, numItemsInViewportState, numToleratedItemsState, isScrollDownOrRight);
5105
5220
 
5106
5221
  newFirst = calculateFirst(_currentIndex2, _triggerIndex2, firstState, lastState, numItemsInViewportState, numToleratedItemsState, isScrollDownOrRight);
5107
5222
  newLast = calculateLast(_currentIndex2, newFirst, lastState, numItemsInViewportState, numToleratedItemsState);
5108
- isRangeChanged = newFirst !== firstState && newLast !== lastState;
5109
- lastScrollPos.current = scrollPos;
5223
+ isRangeChanged = newFirst !== firstState || newLast !== lastState;
5224
+ newScrollPos = scrollPos;
5110
5225
  }
5111
5226
 
5112
5227
  return {
5113
5228
  first: newFirst,
5114
5229
  last: newLast,
5115
- isRangeChanged: isRangeChanged
5230
+ isRangeChanged: isRangeChanged,
5231
+ scrollPos: newScrollPos
5116
5232
  };
5117
5233
  };
5118
5234
 
@@ -5120,7 +5236,8 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5120
5236
  var _onScrollPositionChan = onScrollPositionChange(event),
5121
5237
  first = _onScrollPositionChan.first,
5122
5238
  last = _onScrollPositionChan.last,
5123
- isRangeChanged = _onScrollPositionChan.isRangeChanged;
5239
+ isRangeChanged = _onScrollPositionChan.isRangeChanged,
5240
+ scrollPos = _onScrollPositionChan.scrollPos;
5124
5241
 
5125
5242
  if (isRangeChanged) {
5126
5243
  var newState = {
@@ -5130,6 +5247,7 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5130
5247
  setContentPosition(newState);
5131
5248
  setFirstState(first);
5132
5249
  setLastState(last);
5250
+ lastScrollPos.current = scrollPos;
5133
5251
  props.onScrollIndexChange && props.onScrollIndexChange(newState);
5134
5252
 
5135
5253
  if (props.lazy) {
@@ -5156,7 +5274,7 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5156
5274
  scrollTimeout.current = setTimeout(function () {
5157
5275
  onScrollChange(event);
5158
5276
 
5159
- if (loadingState && props.showLoader && !props.lazy) {
5277
+ if (loadingState && props.showLoader && (!props.lazy || props.loading === undefined)) {
5160
5278
  setLoadingState(false);
5161
5279
  }
5162
5280
  }, props.delay);
@@ -5165,10 +5283,32 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5165
5283
  }
5166
5284
  };
5167
5285
 
5286
+ var onResize = function onResize() {
5287
+ if (resizeTimeout.current) {
5288
+ clearTimeout(resizeTimeout.current);
5289
+ }
5290
+
5291
+ resizeTimeout.current = setTimeout(function () {
5292
+ if (elementRef.current) {
5293
+ var _ref = [utils.DomHandler.getWidth(elementRef.current), utils.DomHandler.getHeight(elementRef.current)],
5294
+ width = _ref[0],
5295
+ height = _ref[1];
5296
+ var isDiffWidth = width !== defaultWidth.current,
5297
+ isDiffHeight = height !== defaultHeight.current;
5298
+ var reinit = both ? isDiffWidth || isDiffHeight : horizontal ? isDiffWidth : vertical ? isDiffHeight : false;
5299
+
5300
+ if (reinit) {
5301
+ setNumToleratedItemsState(props.numToleratedItems);
5302
+ defaultWidth.current = width;
5303
+ defaultHeight.current = height;
5304
+ }
5305
+ }
5306
+ }, props.resizeDelay);
5307
+ };
5308
+
5168
5309
  var getOptions = function getOptions(renderedIndex) {
5169
- var first = firstState;
5170
5310
  var count = (props.items || []).length;
5171
- var index = both ? first.rows + renderedIndex : first + renderedIndex;
5311
+ var index = both ? firstState.rows + renderedIndex : firstState + renderedIndex;
5172
5312
  return {
5173
5313
  index: index,
5174
5314
  count: count,
@@ -5206,25 +5346,48 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5206
5346
  };
5207
5347
 
5208
5348
  var init = function init() {
5209
- setSize();
5210
- calculateOptions();
5211
- setSpacerSize();
5349
+ if (!props.disabled) {
5350
+ setSize();
5351
+ calculateOptions();
5352
+ setSpacerSize();
5353
+ }
5212
5354
  };
5213
5355
 
5214
5356
  hooks.useMountEffect(function () {
5215
- init();
5357
+ if (!props.disabled) {
5358
+ init();
5359
+ bindWindowResizeListener();
5360
+ bindOrientationChangeListener();
5361
+ defaultWidth.current = utils.DomHandler.getWidth(elementRef.current);
5362
+ defaultHeight.current = utils.DomHandler.getHeight(elementRef.current);
5363
+ }
5216
5364
  });
5217
5365
  hooks.useUpdateEffect(function () {
5218
5366
  init();
5219
5367
  }, [props.itemSize, props.scrollHeight]);
5368
+ hooks.useUpdateEffect(function () {
5369
+ if (props.numToleratedItems !== numToleratedItemsState) {
5370
+ setNumToleratedItemsState(props.numToleratedItems);
5371
+ }
5372
+ }, [props.numToleratedItems]);
5373
+ hooks.useUpdateEffect(function () {
5374
+ if (props.numToleratedItems === numToleratedItemsState) {
5375
+ init(); // reinit after resizing
5376
+ }
5377
+ }, [numToleratedItemsState]);
5220
5378
  hooks.useUpdateEffect(function () {
5221
5379
  if (!prevItems || prevItems.length !== (props.items || []).length) {
5222
5380
  init();
5223
5381
  }
5224
5382
 
5383
+ var loading = loadingState;
5384
+
5225
5385
  if (props.lazy && prevLoading !== props.loading && props.loading !== loadingState) {
5226
5386
  setLoadingState(props.loading);
5387
+ loading = props.loading;
5227
5388
  }
5389
+
5390
+ calculateAutoSize(loading);
5228
5391
  });
5229
5392
  hooks.useUpdateEffect(function () {
5230
5393
  lastScrollPos.current = both ? {
@@ -5233,12 +5396,13 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5233
5396
  } : 0;
5234
5397
  }, [props.orientation]);
5235
5398
  React__namespace.useImperativeHandle(ref, function () {
5236
- return {
5399
+ return _objectSpread({
5400
+ getElementRef: getElementRef,
5237
5401
  scrollTo: scrollTo,
5238
5402
  scrollToIndex: scrollToIndex,
5239
5403
  scrollInView: scrollInView,
5240
5404
  getRenderedRange: getRenderedRange
5241
- };
5405
+ }, props);
5242
5406
  });
5243
5407
 
5244
5408
  var createLoaderItem = function createLoaderItem(index) {
@@ -5265,6 +5429,13 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5265
5429
  numCols: numItemsInViewportState.cols
5266
5430
  });
5267
5431
  });
5432
+ } else if (props.loaderIconTemplate) {
5433
+ var defaultContentOptions = {
5434
+ className: 'p-virtualscroller-loading-icon',
5435
+ element: content,
5436
+ props: props
5437
+ };
5438
+ content = utils.ObjectUtils.getJSXElement(props.loaderIconTemplate, defaultContentOptions);
5268
5439
  }
5269
5440
 
5270
5441
  return /*#__PURE__*/React__namespace.createElement("div", {
@@ -5321,7 +5492,7 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5321
5492
  stickyRef: function stickyRef(el) {
5322
5493
  return _stickyRef.current = utils.ObjectUtils.getRefElement(el);
5323
5494
  },
5324
- items: loadedItems,
5495
+ items: loadedItems(),
5325
5496
  getItemOptions: function getItemOptions(index) {
5326
5497
  return getOptions(index);
5327
5498
  },
@@ -5387,14 +5558,17 @@ this.primereact.virtualscroller = (function (exports, React, hooks, utils) {
5387
5558
  orientation: 'vertical',
5388
5559
  numToleratedItems: null,
5389
5560
  delay: 0,
5561
+ resizeDelay: 10,
5390
5562
  lazy: false,
5391
5563
  disabled: false,
5392
5564
  loaderDisabled: false,
5393
5565
  columns: null,
5394
- loading: false,
5566
+ loading: undefined,
5567
+ autoSize: false,
5395
5568
  showSpacer: true,
5396
5569
  showLoader: false,
5397
5570
  loadingTemplate: null,
5571
+ loaderIconTemplate: null,
5398
5572
  itemTemplate: null,
5399
5573
  contentTemplate: null,
5400
5574
  onScroll: null,
@@ -5480,6 +5654,21 @@ this.primereact.checkbox = (function (exports, React, hooks, tooltip, utils) {
5480
5654
  return _extends.apply(this, arguments);
5481
5655
  }
5482
5656
 
5657
+ function _defineProperty(obj, key, value) {
5658
+ if (key in obj) {
5659
+ Object.defineProperty(obj, key, {
5660
+ value: value,
5661
+ enumerable: true,
5662
+ configurable: true,
5663
+ writable: true
5664
+ });
5665
+ } else {
5666
+ obj[key] = value;
5667
+ }
5668
+
5669
+ return obj;
5670
+ }
5671
+
5483
5672
  function _arrayWithHoles(arr) {
5484
5673
  if (Array.isArray(arr)) return arr;
5485
5674
  }
@@ -5541,6 +5730,9 @@ this.primereact.checkbox = (function (exports, React, hooks, tooltip, utils) {
5541
5730
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
5542
5731
  }
5543
5732
 
5733
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5734
+
5735
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5544
5736
  var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
5545
5737
  var _React$useState = React__namespace.useState(false),
5546
5738
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -5570,7 +5762,8 @@ this.primereact.checkbox = (function (exports, React, hooks, tooltip, utils) {
5570
5762
  }
5571
5763
  });
5572
5764
  inputRef.current.checked = !_checked;
5573
- inputRef.current.focus();
5765
+ utils.DomHandler.focus(inputRef.current);
5766
+ event.preventDefault();
5574
5767
  }
5575
5768
  };
5576
5769
 
@@ -5586,6 +5779,16 @@ this.primereact.checkbox = (function (exports, React, hooks, tooltip, utils) {
5586
5779
  return props.checked === props.trueValue;
5587
5780
  };
5588
5781
 
5782
+ React__namespace.useImperativeHandle(ref, function () {
5783
+ return _objectSpread({
5784
+ getElement: function getElement() {
5785
+ return elementRef.current;
5786
+ },
5787
+ getInput: function getInput() {
5788
+ return inputRef.current;
5789
+ }
5790
+ }, props);
5791
+ });
5589
5792
  React__namespace.useEffect(function () {
5590
5793
  utils.ObjectUtils.combinedRefs(inputRef, props.inputRef);
5591
5794
  }, [inputRef, props.inputRef]);
@@ -6301,7 +6504,7 @@ this.primereact.inputnumber = (function (exports, React, hooks, inputtext, rippl
6301
6504
 
6302
6505
  var onUpButtonMouseDown = function onUpButtonMouseDown(event) {
6303
6506
  if (!props.disabled && !props.readOnly) {
6304
- props.autoFocus && inputRef.current.focus();
6507
+ props.autoFocus && utils.DomHandler.focus(inputRef.current, props.autoFocus);
6305
6508
  repeat(event, null, 1);
6306
6509
  event.preventDefault();
6307
6510
  }
@@ -6354,7 +6557,7 @@ this.primereact.inputnumber = (function (exports, React, hooks, inputtext, rippl
6354
6557
 
6355
6558
  var onDownButtonMouseDown = function onDownButtonMouseDown(event) {
6356
6559
  if (!props.disabled && !props.readOnly) {
6357
- props.autoFocus && inputRef.current.focus();
6560
+ props.autoFocus && utils.DomHandler.focus(inputRef.current, props.autoFocus);
6358
6561
  repeat(event, null, -1);
6359
6562
  event.preventDefault();
6360
6563
  }
@@ -7024,9 +7227,15 @@ this.primereact.inputnumber = (function (exports, React, hooks, inputtext, rippl
7024
7227
  };
7025
7228
 
7026
7229
  React__namespace.useImperativeHandle(ref, function () {
7027
- return {
7028
- getFormatter: getFormatter
7029
- };
7230
+ return _objectSpread({
7231
+ getFormatter: getFormatter,
7232
+ getElement: function getElement() {
7233
+ return elementRef.current;
7234
+ },
7235
+ getInput: function getInput() {
7236
+ return elementRef.current;
7237
+ }
7238
+ }, props);
7030
7239
  });
7031
7240
  React__namespace.useEffect(function () {
7032
7241
  utils.ObjectUtils.combinedRefs(inputRef, props.inputRef);
@@ -7266,6 +7475,21 @@ this.primereact.messages = (function (exports, React, reactTransitionGroup, csst
7266
7475
  return _extends.apply(this, arguments);
7267
7476
  }
7268
7477
 
7478
+ function _defineProperty(obj, key, value) {
7479
+ if (key in obj) {
7480
+ Object.defineProperty(obj, key, {
7481
+ value: value,
7482
+ enumerable: true,
7483
+ configurable: true,
7484
+ writable: true
7485
+ });
7486
+ } else {
7487
+ obj[key] = value;
7488
+ }
7489
+
7490
+ return obj;
7491
+ }
7492
+
7269
7493
  function _arrayLikeToArray(arr, len) {
7270
7494
  if (len == null || len > arr.length) len = arr.length;
7271
7495
 
@@ -7420,6 +7644,9 @@ this.primereact.messages = (function (exports, React, reactTransitionGroup, csst
7420
7644
  }));
7421
7645
  UIMessage.displayName = 'UIMessage';
7422
7646
 
7647
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7648
+
7649
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7423
7650
  var messageIdx = 0;
7424
7651
  var Messages = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
7425
7652
  var _React$useState = React__namespace.useState([]),
@@ -7427,9 +7654,11 @@ this.primereact.messages = (function (exports, React, reactTransitionGroup, csst
7427
7654
  messagesState = _React$useState2[0],
7428
7655
  setMessagesState = _React$useState2[1];
7429
7656
 
7657
+ var elementRef = React__namespace.useRef(null);
7658
+
7430
7659
  var show = function show(value) {
7431
7660
  if (value) {
7432
- var messages = [];
7661
+ var messages;
7433
7662
 
7434
7663
  if (Array.isArray(value)) {
7435
7664
  for (var i = 0; i < value.length; i++) {
@@ -7450,7 +7679,8 @@ this.primereact.messages = (function (exports, React, reactTransitionGroup, csst
7450
7679
  };
7451
7680
 
7452
7681
  var replace = function replace(value) {
7453
- setMessagesState(value);
7682
+ var replaced = Array.isArray(value) ? value : [value];
7683
+ setMessagesState(replaced);
7454
7684
  };
7455
7685
 
7456
7686
  var onClose = function onClose(message) {
@@ -7461,15 +7691,19 @@ this.primereact.messages = (function (exports, React, reactTransitionGroup, csst
7461
7691
  };
7462
7692
 
7463
7693
  React__namespace.useImperativeHandle(ref, function () {
7464
- return {
7694
+ return _objectSpread({
7465
7695
  show: show,
7466
7696
  replace: replace,
7467
- clear: clear
7468
- };
7697
+ clear: clear,
7698
+ getElement: function getElement() {
7699
+ return elementRef.current;
7700
+ }
7701
+ }, props);
7469
7702
  });
7470
7703
  var otherProps = utils.ObjectUtils.findDiffKeys(props, Messages.defaultProps);
7471
7704
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
7472
7705
  id: props.id,
7706
+ ref: elementRef,
7473
7707
  className: props.className,
7474
7708
  style: props.style
7475
7709
  }, otherProps), /*#__PURE__*/React__namespace.createElement(reactTransitionGroup.TransitionGroup, null, messagesState.map(function (message) {
@@ -7535,6 +7769,21 @@ this.primereact.progressbar = (function (exports, React, utils) {
7535
7769
 
7536
7770
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
7537
7771
 
7772
+ function _defineProperty(obj, key, value) {
7773
+ if (key in obj) {
7774
+ Object.defineProperty(obj, key, {
7775
+ value: value,
7776
+ enumerable: true,
7777
+ configurable: true,
7778
+ writable: true
7779
+ });
7780
+ } else {
7781
+ obj[key] = value;
7782
+ }
7783
+
7784
+ return obj;
7785
+ }
7786
+
7538
7787
  function _extends() {
7539
7788
  _extends = Object.assign || function (target) {
7540
7789
  for (var i = 1; i < arguments.length; i++) {
@@ -7553,7 +7802,12 @@ this.primereact.progressbar = (function (exports, React, utils) {
7553
7802
  return _extends.apply(this, arguments);
7554
7803
  }
7555
7804
 
7805
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7806
+
7807
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7556
7808
  var ProgressBar = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
7809
+ var elementRef = React__namespace.useRef(null);
7810
+
7557
7811
  var createLabel = function createLabel() {
7558
7812
  if (props.showValue && props.value != null) {
7559
7813
  var label = props.displayValueTemplate ? props.displayValueTemplate(props.value) : props.value + props.unit;
@@ -7572,6 +7826,7 @@ this.primereact.progressbar = (function (exports, React, utils) {
7572
7826
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
7573
7827
  role: "progressbar",
7574
7828
  id: props.id,
7829
+ ref: elementRef,
7575
7830
  className: className,
7576
7831
  style: props.style,
7577
7832
  "aria-valuemin": "0",
@@ -7593,6 +7848,7 @@ this.primereact.progressbar = (function (exports, React, utils) {
7593
7848
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
7594
7849
  role: "progressbar",
7595
7850
  id: props.id,
7851
+ ref: elementRef,
7596
7852
  className: className,
7597
7853
  style: props.style
7598
7854
  }, otherProps), /*#__PURE__*/React__namespace.createElement("div", {
@@ -7605,6 +7861,13 @@ this.primereact.progressbar = (function (exports, React, utils) {
7605
7861
  })));
7606
7862
  };
7607
7863
 
7864
+ React__namespace.useImperativeHandle(ref, function () {
7865
+ return _objectSpread({
7866
+ getElement: function getElement() {
7867
+ return elementRef.current;
7868
+ }
7869
+ }, props);
7870
+ });
7608
7871
  if (props.mode === 'determinate') return createDeterminate();else if (props.mode === 'indeterminate') return createIndeterminate();else throw new Error(props.mode + " is not a valid mode for the ProgressBar. Valid values are 'determinate' and 'indeterminate'");
7609
7872
  }));
7610
7873
  ProgressBar.displayName = 'ProgressBar';
@@ -7768,6 +8031,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7768
8031
  var content = props.template ? utils.ObjectUtils.getJSXElement(props.template, props.option) : props.label;
7769
8032
  return /*#__PURE__*/React__namespace.createElement("li", {
7770
8033
  className: className,
8034
+ style: props.style,
7771
8035
  onClick: onClick,
7772
8036
  "aria-label": props.label,
7773
8037
  key: props.label,
@@ -7784,6 +8048,14 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7784
8048
  var virtualScrollerRef = React__namespace.useRef(null);
7785
8049
  var filterInputRef = React__namespace.useRef(null);
7786
8050
  var isEmptyFilter = !(props.visibleOptions && props.visibleOptions.length) && props.hasFilter;
8051
+ var filterOptions = {
8052
+ filter: function filter(e) {
8053
+ return onFilterInputChange(e);
8054
+ },
8055
+ reset: function reset() {
8056
+ return props.resetFilter();
8057
+ }
8058
+ };
7787
8059
 
7788
8060
  var onEnter = function onEnter() {
7789
8061
  props.onEnter(function () {
@@ -7802,7 +8074,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7802
8074
  var onEntered = function onEntered() {
7803
8075
  props.onEntered(function () {
7804
8076
  if (props.filter && props.filterInputAutoFocus) {
7805
- filterInputRef.current.focus();
8077
+ utils.DomHandler.focus(filterInputRef.current, false);
7806
8078
  }
7807
8079
  });
7808
8080
  };
@@ -7812,7 +8084,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7812
8084
  props.onFilterInputChange && props.onFilterInputChange(event);
7813
8085
  };
7814
8086
 
7815
- var createGroupChildren = function createGroupChildren(optionGroup) {
8087
+ var createGroupChildren = function createGroupChildren(optionGroup, style) {
7816
8088
  var groupChildren = props.getOptionGroupChildren(optionGroup);
7817
8089
  return groupChildren.map(function (option, j) {
7818
8090
  var optionLabel = props.getOptionLabel(option);
@@ -7822,6 +8094,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7822
8094
  key: optionKey,
7823
8095
  label: optionLabel,
7824
8096
  option: option,
8097
+ style: style,
7825
8098
  template: props.itemTemplate,
7826
8099
  selected: props.isSelected(option),
7827
8100
  disabled: disabled,
@@ -7838,14 +8111,20 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7838
8111
  };
7839
8112
 
7840
8113
  var createItem = function createItem(option, index) {
8114
+ var scrollerOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
8115
+ var style = {
8116
+ height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
8117
+ };
8118
+
7841
8119
  if (props.optionGroupLabel) {
7842
8120
  var groupContent = props.optionGroupTemplate ? utils.ObjectUtils.getJSXElement(props.optionGroupTemplate, option, index) : props.getOptionGroupLabel(option);
7843
- var groupChildrenContent = createGroupChildren(option);
8121
+ var groupChildrenContent = createGroupChildren(option, style);
7844
8122
  var key = index + '_' + props.getOptionGroupRenderKey(option);
7845
8123
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
7846
8124
  key: key
7847
8125
  }, /*#__PURE__*/React__namespace.createElement("li", {
7848
- className: "p-dropdown-item-group"
8126
+ className: "p-dropdown-item-group",
8127
+ style: style
7849
8128
  }, groupContent), groupChildrenContent);
7850
8129
  } else {
7851
8130
  var optionLabel = props.getOptionLabel(option);
@@ -7855,6 +8134,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7855
8134
  key: optionKey,
7856
8135
  label: optionLabel,
7857
8136
  option: option,
8137
+ style: style,
7858
8138
  template: props.itemTemplate,
7859
8139
  selected: props.isSelected(option),
7860
8140
  disabled: disabled,
@@ -7879,7 +8159,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7879
8159
  className: "p-dropdown-filter-clear-icon pi pi-times",
7880
8160
  onClick: function onClick() {
7881
8161
  return props.onFilterClearIconClick(function () {
7882
- return filterInputRef.current.focus();
8162
+ return utils.DomHandler.focus(filterInputRef.current);
7883
8163
  });
7884
8164
  }
7885
8165
  });
@@ -7894,9 +8174,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7894
8174
  var containerClassName = utils.classNames('p-dropdown-filter-container', {
7895
8175
  'p-dropdown-clearable-filter': !!clearIcon
7896
8176
  });
7897
- return /*#__PURE__*/React__namespace.createElement("div", {
7898
- className: "p-dropdown-header"
7899
- }, /*#__PURE__*/React__namespace.createElement("div", {
8177
+ var content = /*#__PURE__*/React__namespace.createElement("div", {
7900
8178
  className: containerClassName
7901
8179
  }, /*#__PURE__*/React__namespace.createElement("input", {
7902
8180
  ref: filterInputRef,
@@ -7909,7 +8187,25 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7909
8187
  value: props.filterValue
7910
8188
  }), clearIcon, /*#__PURE__*/React__namespace.createElement("i", {
7911
8189
  className: "p-dropdown-filter-icon pi pi-search"
7912
- })));
8190
+ }));
8191
+
8192
+ if (props.filterTemplate) {
8193
+ var defaultContentOptions = {
8194
+ className: containerClassName,
8195
+ element: content,
8196
+ filterOptions: filterOptions,
8197
+ filterInputKeyDown: props.onFilterInputKeyDown,
8198
+ filterInputChange: onFilterInputChange,
8199
+ filterIconClassName: 'p-dropdown-filter-icon pi pi-search',
8200
+ clearIcon: clearIcon,
8201
+ props: props
8202
+ };
8203
+ content = utils.ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
8204
+ }
8205
+
8206
+ return /*#__PURE__*/React__namespace.createElement("div", {
8207
+ className: "p-dropdown-header"
8208
+ }, content);
7913
8209
  }
7914
8210
 
7915
8211
  return null;
@@ -7923,13 +8219,14 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
7923
8219
  }),
7924
8220
  className: utils.classNames('p-dropdown-items-wrapper', props.virtualScrollerOptions.className),
7925
8221
  items: props.visibleOptions,
8222
+ autoSize: true,
7926
8223
  onLazyLoad: function onLazyLoad(event) {
7927
8224
  return props.virtualScrollerOptions.onLazyLoad(_objectSpread$1(_objectSpread$1({}, event), {
7928
8225
  filter: props.filterValue
7929
8226
  }));
7930
8227
  },
7931
8228
  itemTemplate: function itemTemplate(item, options) {
7932
- return item && createItem(item, options.index);
8229
+ return item && createItem(item, options.index, options);
7933
8230
  },
7934
8231
  contentTemplate: function contentTemplate(options) {
7935
8232
  var className = utils.classNames('p-dropdown-items', options.className);
@@ -8096,7 +8393,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8096
8393
  if (utils.DomHandler.hasClass(event.target, 'p-dropdown-clear-icon') || event.target.tagName === 'INPUT') {
8097
8394
  return;
8098
8395
  } else if (!overlayRef.current || !(overlayRef.current && overlayRef.current.contains(event.target))) {
8099
- focusInputRef.current.focus();
8396
+ utils.DomHandler.focus(focusInputRef.current);
8100
8397
  overlayVisibleState ? hide() : show();
8101
8398
  }
8102
8399
  };
@@ -8338,7 +8635,13 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8338
8635
  };
8339
8636
 
8340
8637
  var matchesSearchValue = function matchesSearchValue(option) {
8341
- var label = getOptionLabel(option).toLocaleLowerCase(props.filterLocale);
8638
+ var label = getOptionLabel(option);
8639
+
8640
+ if (!label) {
8641
+ return false;
8642
+ }
8643
+
8644
+ label = label.toLocaleLowerCase(props.filterLocale);
8342
8645
  return label.startsWith(searchValue.current.toLocaleLowerCase(props.filterLocale));
8343
8646
  };
8344
8647
 
@@ -8369,7 +8672,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8369
8672
 
8370
8673
  if (!option.disabled) {
8371
8674
  selectItem(event);
8372
- focusInputRef.current.focus();
8675
+ utils.DomHandler.focus(focusInputRef.current);
8373
8676
  }
8374
8677
 
8375
8678
  hide();
@@ -8438,11 +8741,13 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8438
8741
  }
8439
8742
  };
8440
8743
 
8441
- var getSelectedOptionIndex = function getSelectedOptionIndex() {
8442
- if (props.value != null && visibleOptions) {
8744
+ var getSelectedOptionIndex = function getSelectedOptionIndex(options) {
8745
+ options = options || visibleOptions;
8746
+
8747
+ if (props.value != null && options) {
8443
8748
  if (props.optionGroupLabel) {
8444
- for (var i = 0; i < visibleOptions.length; i++) {
8445
- var selectedOptionIndex = findOptionIndexInList(props.value, getOptionGroupChildren(visibleOptions[i]));
8749
+ for (var i = 0; i < options.length; i++) {
8750
+ var selectedOptionIndex = findOptionIndexInList(props.value, getOptionGroupChildren(options[i]));
8446
8751
 
8447
8752
  if (selectedOptionIndex !== -1) {
8448
8753
  return {
@@ -8452,7 +8757,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8452
8757
  }
8453
8758
  }
8454
8759
  } else {
8455
- return findOptionIndexInList(props.value, visibleOptions);
8760
+ return findOptionIndexInList(props.value, options);
8456
8761
  }
8457
8762
  }
8458
8763
 
@@ -8517,7 +8822,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8517
8822
  if (highlightItem && highlightItem.scrollIntoView) {
8518
8823
  highlightItem.scrollIntoView({
8519
8824
  block: 'nearest',
8520
- inline: 'start'
8825
+ inline: 'nearest'
8521
8826
  });
8522
8827
  }
8523
8828
  };
@@ -8569,16 +8874,34 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8569
8874
  };
8570
8875
 
8571
8876
  var getSelectedOption = function getSelectedOption() {
8572
- var index = getSelectedOptionIndex();
8573
- return index !== -1 ? props.optionGroupLabel ? getOptionGroupChildren(visibleOptions[index.group])[index.option] : visibleOptions[index] : null;
8877
+ var index = getSelectedOptionIndex(props.options);
8878
+ return index !== -1 ? props.optionGroupLabel ? getOptionGroupChildren(props.options[index.group])[index.option] : props.options[index] : null;
8574
8879
  };
8575
8880
 
8881
+ React__namespace.useImperativeHandle(ref, function () {
8882
+ return _objectSpread({
8883
+ show: show,
8884
+ hide: hide,
8885
+ getElement: function getElement() {
8886
+ return elementRef.current;
8887
+ },
8888
+ getOverlay: function getOverlay() {
8889
+ return overlayRef.current;
8890
+ },
8891
+ getInput: function getInput() {
8892
+ return inputRef.current;
8893
+ },
8894
+ getFocusInput: function getFocusInput() {
8895
+ return focusInputRef.current;
8896
+ }
8897
+ }, props);
8898
+ });
8576
8899
  React__namespace.useEffect(function () {
8577
8900
  utils.ObjectUtils.combinedRefs(inputRef, props.inputRef);
8578
8901
  }, [inputRef, props.inputRef]);
8579
8902
  hooks.useMountEffect(function () {
8580
- if (props.autoFocus && focusInputRef.current) {
8581
- focusInputRef.current.focus();
8903
+ if (props.autoFocus) {
8904
+ utils.DomHandler.focus(focusInputRef.current, props.autoFocus);
8582
8905
  }
8583
8906
  });
8584
8907
  hooks.useUpdateEffect(function () {
@@ -8735,6 +9058,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8735
9058
  filterValue: filterState,
8736
9059
  hasFilter: hasFilter,
8737
9060
  onFilterClearIconClick: onFilterClearIconClick,
9061
+ resetFilter: resetFilter,
8738
9062
  onFilterInputKeyDown: onFilterInputKeyDown,
8739
9063
  onFilterInputChange: onFilterInputChange,
8740
9064
  getOptionLabel: getOptionLabel,
@@ -8769,6 +9093,7 @@ this.primereact.dropdown = (function (exports, React, PrimeReact, hooks, overlay
8769
9093
  optionGroupLabel: null,
8770
9094
  optionGroupChildren: null,
8771
9095
  optionGroupTemplate: null,
9096
+ filterTemplate: null,
8772
9097
  valueTemplate: null,
8773
9098
  itemTemplate: null,
8774
9099
  style: null,
@@ -8868,6 +9193,21 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
8868
9193
  return _extends.apply(this, arguments);
8869
9194
  }
8870
9195
 
9196
+ function _defineProperty(obj, key, value) {
9197
+ if (key in obj) {
9198
+ Object.defineProperty(obj, key, {
9199
+ value: value,
9200
+ enumerable: true,
9201
+ configurable: true,
9202
+ writable: true
9203
+ });
9204
+ } else {
9205
+ obj[key] = value;
9206
+ }
9207
+
9208
+ return obj;
9209
+ }
9210
+
8871
9211
  function _arrayLikeToArray(arr, len) {
8872
9212
  if (len == null || len > arr.length) len = arr.length;
8873
9213
 
@@ -8945,6 +9285,9 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
8945
9285
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
8946
9286
  }
8947
9287
 
9288
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9289
+
9290
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8948
9291
  var Dialog = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
8949
9292
  var _React$useState = React__namespace.useState(props.id),
8950
9293
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -9292,7 +9635,7 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
9292
9635
  return param.hasBlockScroll;
9293
9636
  });
9294
9637
 
9295
- if (!hasBlockScroll) {
9638
+ if (hasBlockScroll) {
9296
9639
  utils.DomHandler.removeClass(document.body, 'p-overflow-hidden');
9297
9640
  }
9298
9641
  } else if (props.blockScroll || props.maximizable && maximized) {
@@ -9391,9 +9734,27 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
9391
9734
  utils.ZIndexUtils.clear(maskRef.current);
9392
9735
  });
9393
9736
  React__namespace.useImperativeHandle(ref, function () {
9394
- return {
9395
- resetPosition: resetPosition
9396
- };
9737
+ return _objectSpread({
9738
+ resetPosition: resetPosition,
9739
+ getElement: function getElement() {
9740
+ return dialogRef.current;
9741
+ },
9742
+ getMask: function getMask() {
9743
+ return maskRef.current;
9744
+ },
9745
+ getContent: function getContent() {
9746
+ return contentRef.current;
9747
+ },
9748
+ getHeader: function getHeader() {
9749
+ return headerRef.current;
9750
+ },
9751
+ getFooter: function getFooter() {
9752
+ return footerRef.current;
9753
+ },
9754
+ getCloseButton: function getCloseButton() {
9755
+ return closeRef.current;
9756
+ }
9757
+ }, props);
9397
9758
  });
9398
9759
 
9399
9760
  var createCloseIcon = function createCloseIcon() {
@@ -9438,9 +9799,11 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
9438
9799
  var icons = utils.ObjectUtils.getJSXElement(props.icons, props);
9439
9800
  var header = utils.ObjectUtils.getJSXElement(props.header, props);
9440
9801
  var headerId = idState + '_header';
9802
+ var headerClassName = utils.classNames('p-dialog-header', props.headerClassName);
9441
9803
  return /*#__PURE__*/React__namespace.createElement("div", {
9442
9804
  ref: headerRef,
9443
- className: "p-dialog-header",
9805
+ style: props.headerStyle,
9806
+ className: headerClassName,
9444
9807
  onMouseDown: onDragStart
9445
9808
  }, /*#__PURE__*/React__namespace.createElement("div", {
9446
9809
  id: headerId,
@@ -9474,7 +9837,7 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
9474
9837
 
9475
9838
  var createResizer = function createResizer() {
9476
9839
  if (props.resizable) {
9477
- return /*#__PURE__*/React__namespace.createElement("div", {
9840
+ return /*#__PURE__*/React__namespace.createElement("span", {
9478
9841
  className: "p-resizable-handle",
9479
9842
  style: {
9480
9843
  zIndex: 90
@@ -9562,6 +9925,8 @@ this.primereact.dialog = (function (exports, React, PrimeReact, csstransition, h
9562
9925
  modal: true,
9563
9926
  onHide: null,
9564
9927
  onShow: null,
9928
+ headerStyle: null,
9929
+ headerClassName: null,
9565
9930
  contentStyle: null,
9566
9931
  contentClassName: null,
9567
9932
  closeOnEscape: true,
@@ -9739,9 +10104,9 @@ this.primereact.paginator = (function (exports, React, hooks, utils, api, button
9739
10104
  return obj;
9740
10105
  }
9741
10106
 
9742
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10107
+ function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9743
10108
 
9744
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10109
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9745
10110
  var CurrentPageReport = /*#__PURE__*/React__namespace.memo(function (props) {
9746
10111
  var report = {
9747
10112
  currentPage: props.page + 1,
@@ -9757,7 +10122,7 @@ this.primereact.paginator = (function (exports, React, hooks, utils, api, button
9757
10122
  }, text);
9758
10123
 
9759
10124
  if (props.template) {
9760
- var defaultOptions = _objectSpread(_objectSpread({}, report), {
10125
+ var defaultOptions = _objectSpread$1(_objectSpread$1({}, report), {
9761
10126
  className: 'p-paginator-current',
9762
10127
  element: element,
9763
10128
  props: props
@@ -10084,7 +10449,11 @@ this.primereact.paginator = (function (exports, React, hooks, utils, api, button
10084
10449
  disabled: false
10085
10450
  };
10086
10451
 
10452
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10453
+
10454
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10087
10455
  var Paginator = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
10456
+ var elementRef = React__namespace.useRef(null);
10088
10457
  var rppChanged = React__namespace.useRef(false);
10089
10458
  var page = Math.floor(props.first / props.rows);
10090
10459
  var pageCount = Math.ceil(props.totalRecords / props.rows);
@@ -10165,6 +10534,13 @@ this.primereact.paginator = (function (exports, React, hooks, utils, api, button
10165
10534
  changePage(0, rows);
10166
10535
  };
10167
10536
 
10537
+ React__namespace.useImperativeHandle(ref, function () {
10538
+ return _objectSpread({
10539
+ getElement: function getElement() {
10540
+ return elementRef.current;
10541
+ }
10542
+ }, props);
10543
+ });
10168
10544
  hooks.useUpdateEffect(function () {
10169
10545
  if (!rppChanged.current) {
10170
10546
  changePage(0, props.rows);
@@ -10318,6 +10694,7 @@ this.primereact.paginator = (function (exports, React, hooks, utils, api, button
10318
10694
  className: "p-paginator-right-content"
10319
10695
  }, rightContent);
10320
10696
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
10697
+ ref: elementRef,
10321
10698
  className: className,
10322
10699
  style: props.style
10323
10700
  }, otherProps), leftElement, elements, rightElement);
@@ -10569,6 +10946,14 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
10569
10946
  } else {
10570
10947
  var nextNodeElement = nodeElement.nextElementSibling;
10571
10948
 
10949
+ while (nextNodeElement) {
10950
+ if (!utils.DomHandler.hasClass(nextNodeElement, 'p-treenode-droppoint')) {
10951
+ break;
10952
+ }
10953
+
10954
+ nextNodeElement = nextNodeElement.nextElementSibling;
10955
+ }
10956
+
10572
10957
  if (nextNodeElement) {
10573
10958
  focusNode(nextNodeElement);
10574
10959
  } else {
@@ -10640,7 +11025,7 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
10640
11025
  };
10641
11026
 
10642
11027
  var focusNode = function focusNode(element) {
10643
- element.children[0].focus();
11028
+ element && element.children[0] && element.children[0].focus();
10644
11029
  };
10645
11030
 
10646
11031
  var onClick = function onClick(event) {
@@ -11239,11 +11624,20 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11239
11624
  expandedKeysState = _React$useState4[0],
11240
11625
  setExpandedKeysState = _React$useState4[1];
11241
11626
 
11627
+ var elementRef = React__namespace.useRef(null);
11242
11628
  var filteredNodes = React__namespace.useRef([]);
11243
11629
  var dragState = React__namespace.useRef(null);
11244
11630
  var filterChanged = React__namespace.useRef(false);
11245
11631
  var filteredValue = props.onFilterValueChange ? props.filterValue : filterValueState;
11246
11632
  var expandedKeys = props.onToggle ? props.expandedKeys : expandedKeysState;
11633
+ var filterOptions = {
11634
+ filter: function filter(e) {
11635
+ return onFilterInputChange(e);
11636
+ },
11637
+ reset: function reset() {
11638
+ return resetFilter();
11639
+ }
11640
+ };
11247
11641
 
11248
11642
  var getRootNode = function getRootNode() {
11249
11643
  return props.filter && filteredNodes.current ? filteredNodes.current : props.value;
@@ -11536,10 +11930,17 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11536
11930
  return matched;
11537
11931
  };
11538
11932
 
11933
+ var resetFilter = function resetFilter() {
11934
+ setFilterValueState('');
11935
+ };
11936
+
11539
11937
  React__namespace.useImperativeHandle(ref, function () {
11540
- return {
11541
- filter: filter
11542
- };
11938
+ return _objectSpread({
11939
+ filter: filter,
11940
+ getElement: function getElement() {
11941
+ return elementRef.current;
11942
+ }
11943
+ }, props);
11543
11944
  });
11544
11945
 
11545
11946
  var createRootChild = function createRootChild(node, index, last) {
@@ -11623,7 +12024,8 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11623
12024
  var createFilter = function createFilter() {
11624
12025
  if (props.filter) {
11625
12026
  var value = utils.ObjectUtils.isNotEmpty(filteredValue) ? filteredValue : '';
11626
- return /*#__PURE__*/React__namespace.createElement("div", {
12027
+
12028
+ var _content = /*#__PURE__*/React__namespace.createElement("div", {
11627
12029
  className: "p-tree-filter-container"
11628
12030
  }, /*#__PURE__*/React__namespace.createElement("input", {
11629
12031
  type: "text",
@@ -11637,6 +12039,21 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11637
12039
  }), /*#__PURE__*/React__namespace.createElement("span", {
11638
12040
  className: "p-tree-filter-icon pi pi-search"
11639
12041
  }));
12042
+
12043
+ if (props.filterTemplate) {
12044
+ var defaultContentOptions = {
12045
+ className: 'p-tree-filter-container',
12046
+ element: _content,
12047
+ filterOptions: filterOptions,
12048
+ filterInputKeyDown: onFilterInputKeyDown,
12049
+ filterInputChange: onFilterInputChange,
12050
+ filterIconClassName: 'p-dropdown-filter-icon pi pi-search',
12051
+ props: props
12052
+ };
12053
+ _content = utils.ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
12054
+ }
12055
+
12056
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, _content);
11640
12057
  }
11641
12058
 
11642
12059
  return null;
@@ -11645,7 +12062,7 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11645
12062
  var createHeader = function createHeader() {
11646
12063
  if (props.showHeader) {
11647
12064
  var filterElement = createFilter();
11648
- var _content = filterElement;
12065
+ var _content2 = filterElement;
11649
12066
 
11650
12067
  if (props.header) {
11651
12068
  var defaultContentOptions = {
@@ -11657,15 +12074,15 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11657
12074
  onChange: onFilterInputChange
11658
12075
  },
11659
12076
  filterElement: filterElement,
11660
- element: _content,
12077
+ element: _content2,
11661
12078
  props: props
11662
12079
  };
11663
- _content = utils.ObjectUtils.getJSXElement(props.header, defaultContentOptions);
12080
+ _content2 = utils.ObjectUtils.getJSXElement(props.header, defaultContentOptions);
11664
12081
  }
11665
12082
 
11666
12083
  return /*#__PURE__*/React__namespace.createElement("div", {
11667
12084
  className: "p-tree-header"
11668
- }, _content);
12085
+ }, _content2);
11669
12086
  }
11670
12087
 
11671
12088
  return null;
@@ -11690,6 +12107,7 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11690
12107
  var footer = createFooter();
11691
12108
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
11692
12109
  id: props.id,
12110
+ ref: elementRef,
11693
12111
  className: className,
11694
12112
  style: props.style
11695
12113
  }, otherProps), loader, header, content, footer);
@@ -11725,6 +12143,7 @@ this.primereact.tree = (function (exports, React, utils, ripple) {
11725
12143
  filterMode: 'lenient',
11726
12144
  filterPlaceholder: null,
11727
12145
  filterLocale: undefined,
12146
+ filterTemplate: null,
11728
12147
  nodeTemplate: null,
11729
12148
  togglerTemplate: null,
11730
12149
  onSelect: null,