primereact 8.1.1 → 8.4.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 (709) hide show
  1. package/README.md +6 -0
  2. package/accordion/accordion.cjs.js +10 -0
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.d.ts +4 -5
  5. package/accordion/accordion.esm.js +10 -0
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +10 -0
  8. package/accordion/accordion.min.js +1 -1
  9. package/api/api.cjs.js +2 -0
  10. package/api/api.cjs.min.js +1 -1
  11. package/api/api.d.ts +1 -0
  12. package/api/api.esm.js +2 -0
  13. package/api/api.esm.min.js +1 -1
  14. package/api/api.js +2 -0
  15. package/api/api.min.js +1 -1
  16. package/autocomplete/autocomplete.cjs.js +33 -11
  17. package/autocomplete/autocomplete.cjs.min.js +1 -1
  18. package/autocomplete/autocomplete.d.ts +5 -1
  19. package/autocomplete/autocomplete.esm.js +34 -12
  20. package/autocomplete/autocomplete.esm.min.js +1 -1
  21. package/autocomplete/autocomplete.js +33 -11
  22. package/autocomplete/autocomplete.min.js +1 -1
  23. package/avatar/avatar.cjs.js +18 -7
  24. package/avatar/avatar.cjs.min.js +1 -1
  25. package/avatar/avatar.d.ts +4 -4
  26. package/avatar/avatar.esm.js +18 -7
  27. package/avatar/avatar.esm.min.js +1 -1
  28. package/avatar/avatar.js +18 -7
  29. package/avatar/avatar.min.js +1 -1
  30. package/avatargroup/avatargroup.cjs.js +10 -0
  31. package/avatargroup/avatargroup.cjs.min.js +1 -1
  32. package/avatargroup/avatargroup.d.ts +4 -4
  33. package/avatargroup/avatargroup.esm.js +10 -0
  34. package/avatargroup/avatargroup.esm.min.js +1 -1
  35. package/avatargroup/avatargroup.js +10 -0
  36. package/avatargroup/avatargroup.min.js +1 -1
  37. package/badge/badge.cjs.js +12 -2
  38. package/badge/badge.cjs.min.js +1 -1
  39. package/badge/badge.d.ts +5 -5
  40. package/badge/badge.esm.js +12 -2
  41. package/badge/badge.esm.min.js +1 -1
  42. package/badge/badge.js +12 -2
  43. package/badge/badge.min.js +1 -1
  44. package/blockui/blockui.cjs.js +7 -1
  45. package/blockui/blockui.cjs.min.js +1 -1
  46. package/blockui/blockui.d.ts +2 -4
  47. package/blockui/blockui.esm.js +7 -1
  48. package/blockui/blockui.esm.min.js +1 -1
  49. package/blockui/blockui.js +7 -1
  50. package/blockui/blockui.min.js +1 -1
  51. package/breadcrumb/breadcrumb.cjs.js +11 -0
  52. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  53. package/breadcrumb/breadcrumb.d.ts +4 -5
  54. package/breadcrumb/breadcrumb.esm.js +11 -0
  55. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  56. package/breadcrumb/breadcrumb.js +11 -0
  57. package/breadcrumb/breadcrumb.min.js +1 -1
  58. package/button/button.d.ts +3 -1
  59. package/calendar/calendar.cjs.js +143 -32
  60. package/calendar/calendar.cjs.min.js +1 -1
  61. package/calendar/calendar.d.ts +4 -0
  62. package/calendar/calendar.esm.js +143 -32
  63. package/calendar/calendar.esm.min.js +1 -1
  64. package/calendar/calendar.js +143 -32
  65. package/calendar/calendar.min.js +1 -1
  66. package/captcha/captcha.cjs.js +5 -1
  67. package/captcha/captcha.cjs.min.js +1 -1
  68. package/captcha/captcha.d.ts +2 -3
  69. package/captcha/captcha.esm.js +5 -1
  70. package/captcha/captcha.esm.min.js +1 -1
  71. package/captcha/captcha.js +5 -1
  72. package/captcha/captcha.min.js +1 -1
  73. package/card/card.d.ts +1 -4
  74. package/carousel/carousel.cjs.js +9 -1
  75. package/carousel/carousel.cjs.min.js +1 -1
  76. package/carousel/carousel.d.ts +4 -5
  77. package/carousel/carousel.esm.js +9 -1
  78. package/carousel/carousel.esm.min.js +1 -1
  79. package/carousel/carousel.js +9 -1
  80. package/carousel/carousel.min.js +1 -1
  81. package/cascadeselect/cascadeselect.cjs.js +20 -3
  82. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  83. package/cascadeselect/cascadeselect.d.ts +7 -2
  84. package/cascadeselect/cascadeselect.esm.js +20 -3
  85. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  86. package/cascadeselect/cascadeselect.js +20 -3
  87. package/cascadeselect/cascadeselect.min.js +1 -1
  88. package/chart/chart.cjs.js +52 -23
  89. package/chart/chart.cjs.min.js +1 -1
  90. package/chart/chart.d.ts +1 -0
  91. package/chart/chart.esm.js +52 -23
  92. package/chart/chart.esm.min.js +1 -1
  93. package/chart/chart.js +52 -23
  94. package/chart/chart.min.js +1 -1
  95. package/checkbox/checkbox.cjs.js +31 -16
  96. package/checkbox/checkbox.cjs.min.js +1 -1
  97. package/checkbox/checkbox.d.ts +5 -2
  98. package/checkbox/checkbox.esm.js +32 -17
  99. package/checkbox/checkbox.esm.min.js +1 -1
  100. package/checkbox/checkbox.js +31 -16
  101. package/checkbox/checkbox.min.js +1 -1
  102. package/chip/chip.cjs.js +11 -0
  103. package/chip/chip.cjs.min.js +1 -1
  104. package/chip/chip.d.ts +4 -4
  105. package/chip/chip.esm.js +11 -0
  106. package/chip/chip.esm.min.js +1 -1
  107. package/chip/chip.js +11 -0
  108. package/chip/chip.min.js +1 -1
  109. package/chips/chips.cjs.js +39 -2
  110. package/chips/chips.cjs.min.js +1 -1
  111. package/chips/chips.d.ts +9 -5
  112. package/chips/chips.esm.js +40 -3
  113. package/chips/chips.esm.min.js +1 -1
  114. package/chips/chips.js +40 -4
  115. package/chips/chips.min.js +1 -1
  116. package/colorpicker/colorpicker.cjs.js +16 -0
  117. package/colorpicker/colorpicker.cjs.min.js +1 -1
  118. package/colorpicker/colorpicker.d.ts +7 -1
  119. package/colorpicker/colorpicker.esm.js +16 -0
  120. package/colorpicker/colorpicker.esm.min.js +1 -1
  121. package/colorpicker/colorpicker.js +16 -0
  122. package/colorpicker/colorpicker.min.js +1 -1
  123. package/column/column.d.ts +1 -0
  124. package/confirmdialog/confirmdialog.cjs.js +2 -1
  125. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  126. package/confirmdialog/confirmdialog.d.ts +1 -6
  127. package/confirmdialog/confirmdialog.esm.js +2 -1
  128. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  129. package/confirmdialog/confirmdialog.js +2 -1
  130. package/confirmdialog/confirmdialog.min.js +1 -1
  131. package/confirmpopup/confirmpopup.cjs.js +1 -0
  132. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  133. package/confirmpopup/confirmpopup.esm.js +1 -0
  134. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  135. package/confirmpopup/confirmpopup.js +1 -0
  136. package/confirmpopup/confirmpopup.min.js +1 -1
  137. package/contextmenu/contextmenu.cjs.js +6 -1
  138. package/contextmenu/contextmenu.cjs.min.js +1 -1
  139. package/contextmenu/contextmenu.d.ts +2 -4
  140. package/contextmenu/contextmenu.esm.js +6 -1
  141. package/contextmenu/contextmenu.esm.min.js +1 -1
  142. package/contextmenu/contextmenu.js +6 -1
  143. package/contextmenu/contextmenu.min.js +1 -1
  144. package/core/core.js +650 -195
  145. package/core/core.min.js +14 -14
  146. package/datascroller/datascroller.cjs.js +10 -1
  147. package/datascroller/datascroller.cjs.min.js +1 -1
  148. package/datascroller/datascroller.d.ts +2 -4
  149. package/datascroller/datascroller.esm.js +10 -1
  150. package/datascroller/datascroller.esm.min.js +1 -1
  151. package/datascroller/datascroller.js +10 -1
  152. package/datascroller/datascroller.min.js +1 -1
  153. package/datatable/datatable.cjs.js +92 -28
  154. package/datatable/datatable.cjs.min.js +1 -1
  155. package/datatable/datatable.d.ts +6 -2
  156. package/datatable/datatable.esm.js +93 -29
  157. package/datatable/datatable.esm.min.js +1 -1
  158. package/datatable/datatable.js +92 -28
  159. package/datatable/datatable.min.js +1 -1
  160. package/dataview/dataview.cjs.js +11 -1
  161. package/dataview/dataview.cjs.min.js +1 -1
  162. package/dataview/dataview.d.ts +4 -5
  163. package/dataview/dataview.esm.js +11 -1
  164. package/dataview/dataview.esm.min.js +1 -1
  165. package/dataview/dataview.js +11 -1
  166. package/dataview/dataview.min.js +1 -1
  167. package/deferredcontent/deferredcontent.cjs.js +8 -0
  168. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  169. package/deferredcontent/deferredcontent.d.ts +4 -2
  170. package/deferredcontent/deferredcontent.esm.js +8 -0
  171. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  172. package/deferredcontent/deferredcontent.js +8 -0
  173. package/deferredcontent/deferredcontent.min.js +1 -1
  174. package/dialog/dialog.cjs.js +23 -3
  175. package/dialog/dialog.cjs.min.js +1 -1
  176. package/dialog/dialog.d.ts +6 -0
  177. package/dialog/dialog.esm.js +23 -3
  178. package/dialog/dialog.esm.min.js +1 -1
  179. package/dialog/dialog.js +23 -3
  180. package/dialog/dialog.min.js +1 -1
  181. package/divider/divider.cjs.js +10 -0
  182. package/divider/divider.cjs.min.js +1 -1
  183. package/divider/divider.d.ts +4 -4
  184. package/divider/divider.esm.js +10 -0
  185. package/divider/divider.esm.min.js +1 -1
  186. package/divider/divider.js +10 -0
  187. package/divider/divider.min.js +1 -1
  188. package/dock/dock.cjs.js +11 -0
  189. package/dock/dock.cjs.min.js +1 -1
  190. package/dock/dock.d.ts +4 -5
  191. package/dock/dock.esm.js +11 -0
  192. package/dock/dock.esm.min.js +1 -1
  193. package/dock/dock.js +11 -0
  194. package/dock/dock.min.js +1 -1
  195. package/dropdown/dropdown.cjs.js +141 -30
  196. package/dropdown/dropdown.cjs.min.js +1 -1
  197. package/dropdown/dropdown.d.ts +15 -2
  198. package/dropdown/dropdown.esm.js +141 -30
  199. package/dropdown/dropdown.esm.min.js +1 -1
  200. package/dropdown/dropdown.js +141 -30
  201. package/dropdown/dropdown.min.js +1 -1
  202. package/editor/editor.cjs.js +103 -50
  203. package/editor/editor.cjs.min.js +1 -1
  204. package/editor/editor.d.ts +3 -0
  205. package/editor/editor.esm.js +103 -50
  206. package/editor/editor.esm.min.js +1 -1
  207. package/editor/editor.js +103 -50
  208. package/editor/editor.min.js +1 -1
  209. package/fieldset/fieldset.cjs.js +13 -0
  210. package/fieldset/fieldset.cjs.min.js +1 -1
  211. package/fieldset/fieldset.d.ts +5 -5
  212. package/fieldset/fieldset.esm.js +13 -0
  213. package/fieldset/fieldset.esm.min.js +1 -1
  214. package/fieldset/fieldset.js +13 -0
  215. package/fieldset/fieldset.min.js +1 -1
  216. package/fileupload/fileupload.cjs.js +15 -1
  217. package/fileupload/fileupload.cjs.min.js +1 -1
  218. package/fileupload/fileupload.d.ts +4 -0
  219. package/fileupload/fileupload.esm.js +15 -1
  220. package/fileupload/fileupload.esm.min.js +1 -1
  221. package/fileupload/fileupload.js +15 -1
  222. package/fileupload/fileupload.min.js +1 -1
  223. package/fullcalendar/fullcalendar.cjs.js +8 -0
  224. package/fullcalendar/fullcalendar.cjs.min.js +1 -1
  225. package/fullcalendar/fullcalendar.d.ts +3 -1
  226. package/fullcalendar/fullcalendar.esm.js +8 -0
  227. package/fullcalendar/fullcalendar.esm.min.js +1 -1
  228. package/fullcalendar/fullcalendar.js +8 -0
  229. package/fullcalendar/fullcalendar.min.js +1 -1
  230. package/galleria/galleria.cjs.js +9 -2
  231. package/galleria/galleria.cjs.min.js +1 -1
  232. package/galleria/galleria.d.ts +2 -4
  233. package/galleria/galleria.esm.js +9 -2
  234. package/galleria/galleria.esm.min.js +1 -1
  235. package/galleria/galleria.js +9 -2
  236. package/galleria/galleria.min.js +1 -1
  237. package/gmap/gmap.cjs.js +5 -1
  238. package/gmap/gmap.cjs.min.js +1 -1
  239. package/gmap/gmap.d.ts +5 -4
  240. package/gmap/gmap.esm.js +5 -1
  241. package/gmap/gmap.esm.min.js +1 -1
  242. package/gmap/gmap.js +5 -1
  243. package/gmap/gmap.min.js +1 -1
  244. package/image/image.cjs.js +18 -5
  245. package/image/image.cjs.min.js +1 -1
  246. package/image/image.d.ts +5 -4
  247. package/image/image.esm.js +18 -5
  248. package/image/image.esm.min.js +1 -1
  249. package/image/image.js +18 -5
  250. package/image/image.min.css +1 -1
  251. package/image/image.min.js +1 -1
  252. package/inplace/inplace.cjs.js +11 -1
  253. package/inplace/inplace.cjs.min.js +1 -1
  254. package/inplace/inplace.d.ts +4 -5
  255. package/inplace/inplace.esm.js +11 -1
  256. package/inplace/inplace.esm.min.js +1 -1
  257. package/inplace/inplace.js +11 -1
  258. package/inplace/inplace.min.js +1 -1
  259. package/inputmask/inputmask.cjs.js +15 -5
  260. package/inputmask/inputmask.cjs.min.js +1 -1
  261. package/inputmask/inputmask.d.ts +5 -13
  262. package/inputmask/inputmask.esm.js +15 -5
  263. package/inputmask/inputmask.esm.min.js +1 -1
  264. package/inputmask/inputmask.js +15 -5
  265. package/inputmask/inputmask.min.js +1 -1
  266. package/inputnumber/inputnumber.cjs.js +12 -4
  267. package/inputnumber/inputnumber.cjs.min.js +1 -1
  268. package/inputnumber/inputnumber.d.ts +4 -5
  269. package/inputnumber/inputnumber.esm.js +12 -4
  270. package/inputnumber/inputnumber.esm.min.js +1 -1
  271. package/inputnumber/inputnumber.js +12 -4
  272. package/inputnumber/inputnumber.min.js +1 -1
  273. package/inputswitch/inputswitch.cjs.js +12 -1
  274. package/inputswitch/inputswitch.cjs.min.js +1 -1
  275. package/inputswitch/inputswitch.d.ts +4 -1
  276. package/inputswitch/inputswitch.esm.js +13 -2
  277. package/inputswitch/inputswitch.esm.min.js +1 -1
  278. package/inputswitch/inputswitch.js +12 -1
  279. package/inputswitch/inputswitch.min.css +1 -1
  280. package/inputswitch/inputswitch.min.js +1 -1
  281. package/inputtext/inputtext.cjs.js +3 -2
  282. package/inputtext/inputtext.cjs.min.js +1 -1
  283. package/inputtext/inputtext.d.ts +4 -1
  284. package/inputtext/inputtext.esm.js +3 -2
  285. package/inputtext/inputtext.esm.min.js +1 -1
  286. package/inputtext/inputtext.js +3 -2
  287. package/inputtext/inputtext.min.css +1 -1
  288. package/inputtext/inputtext.min.js +1 -1
  289. package/inputtextarea/inputtextarea.cjs.js +3 -2
  290. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  291. package/inputtextarea/inputtextarea.d.ts +4 -1
  292. package/inputtextarea/inputtextarea.esm.js +3 -2
  293. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  294. package/inputtextarea/inputtextarea.js +3 -2
  295. package/inputtextarea/inputtextarea.min.js +1 -1
  296. package/keyfilter/keyfilter.cjs.js +4 -4
  297. package/keyfilter/keyfilter.cjs.min.js +1 -1
  298. package/keyfilter/keyfilter.esm.js +4 -4
  299. package/keyfilter/keyfilter.esm.min.js +1 -1
  300. package/keyfilter/keyfilter.js +4 -4
  301. package/keyfilter/keyfilter.min.js +1 -1
  302. package/knob/knob.cjs.js +8 -0
  303. package/knob/knob.cjs.min.js +1 -1
  304. package/knob/knob.d.ts +3 -1
  305. package/knob/knob.esm.js +8 -0
  306. package/knob/knob.esm.min.js +1 -1
  307. package/knob/knob.js +8 -0
  308. package/knob/knob.min.js +1 -1
  309. package/listbox/listbox.cjs.js +129 -20
  310. package/listbox/listbox.cjs.min.js +1 -1
  311. package/listbox/listbox.d.ts +14 -7
  312. package/listbox/listbox.esm.js +130 -21
  313. package/listbox/listbox.esm.min.js +1 -1
  314. package/listbox/listbox.js +130 -22
  315. package/listbox/listbox.min.js +1 -1
  316. package/megamenu/megamenu.cjs.js +40 -12
  317. package/megamenu/megamenu.cjs.min.js +1 -1
  318. package/megamenu/megamenu.d.ts +11 -5
  319. package/megamenu/megamenu.esm.js +40 -12
  320. package/megamenu/megamenu.esm.min.js +1 -1
  321. package/megamenu/megamenu.js +40 -12
  322. package/megamenu/megamenu.min.css +1 -1
  323. package/megamenu/megamenu.min.js +1 -1
  324. package/mention/mention.cjs.js +23 -5
  325. package/mention/mention.cjs.min.js +1 -1
  326. package/mention/mention.d.ts +7 -5
  327. package/mention/mention.esm.js +23 -5
  328. package/mention/mention.esm.min.js +1 -1
  329. package/mention/mention.js +23 -5
  330. package/mention/mention.min.js +1 -1
  331. package/menu/menu.cjs.js +8 -1
  332. package/menu/menu.cjs.min.js +1 -1
  333. package/menu/menu.d.ts +3 -4
  334. package/menu/menu.esm.js +8 -1
  335. package/menu/menu.esm.min.js +1 -1
  336. package/menu/menu.js +8 -1
  337. package/menu/menu.min.js +1 -1
  338. package/menubar/menubar.cjs.js +13 -1
  339. package/menubar/menubar.cjs.min.js +1 -1
  340. package/menubar/menubar.d.ts +6 -5
  341. package/menubar/menubar.esm.js +13 -1
  342. package/menubar/menubar.esm.min.js +1 -1
  343. package/menubar/menubar.js +13 -1
  344. package/menubar/menubar.min.js +1 -1
  345. package/menuitem/menuitem.d.ts +2 -0
  346. package/message/message.cjs.js +11 -0
  347. package/message/message.cjs.min.js +1 -1
  348. package/message/message.d.ts +5 -6
  349. package/message/message.esm.js +11 -0
  350. package/message/message.esm.min.js +1 -1
  351. package/message/message.js +11 -0
  352. package/message/message.min.js +1 -1
  353. package/messages/messages.cjs.js +11 -3
  354. package/messages/messages.cjs.min.js +1 -1
  355. package/messages/messages.d.ts +3 -5
  356. package/messages/messages.esm.js +11 -3
  357. package/messages/messages.esm.min.js +1 -1
  358. package/messages/messages.js +11 -3
  359. package/messages/messages.min.js +1 -1
  360. package/multiselect/multiselect.cjs.js +95 -27
  361. package/multiselect/multiselect.cjs.min.js +1 -1
  362. package/multiselect/multiselect.d.ts +16 -2
  363. package/multiselect/multiselect.esm.js +95 -27
  364. package/multiselect/multiselect.esm.min.js +1 -1
  365. package/multiselect/multiselect.js +95 -27
  366. package/multiselect/multiselect.min.js +1 -1
  367. package/multistatecheckbox/multistatecheckbox.cjs.js +8 -0
  368. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  369. package/multistatecheckbox/multistatecheckbox.d.ts +4 -6
  370. package/multistatecheckbox/multistatecheckbox.esm.js +8 -0
  371. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  372. package/multistatecheckbox/multistatecheckbox.js +8 -0
  373. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  374. package/orderlist/orderlist.cjs.js +128 -4
  375. package/orderlist/orderlist.cjs.min.js +1 -1
  376. package/orderlist/orderlist.d.ts +17 -6
  377. package/orderlist/orderlist.esm.js +128 -4
  378. package/orderlist/orderlist.esm.min.js +1 -1
  379. package/orderlist/orderlist.js +129 -6
  380. package/orderlist/orderlist.min.css +1 -1
  381. package/orderlist/orderlist.min.js +1 -1
  382. package/organizationchart/organizationchart.cjs.js +10 -0
  383. package/organizationchart/organizationchart.cjs.min.js +1 -1
  384. package/organizationchart/organizationchart.d.ts +4 -5
  385. package/organizationchart/organizationchart.esm.js +10 -0
  386. package/organizationchart/organizationchart.esm.min.js +1 -1
  387. package/organizationchart/organizationchart.js +10 -0
  388. package/organizationchart/organizationchart.min.js +1 -1
  389. package/overlaypanel/overlaypanel.cjs.js +7 -3
  390. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  391. package/overlaypanel/overlaypanel.d.ts +2 -4
  392. package/overlaypanel/overlaypanel.esm.js +7 -3
  393. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  394. package/overlaypanel/overlaypanel.js +7 -3
  395. package/overlaypanel/overlaypanel.min.js +1 -1
  396. package/package.json +1 -1
  397. package/paginator/paginator.cjs.js +10 -0
  398. package/paginator/paginator.cjs.min.js +1 -1
  399. package/paginator/paginator.d.ts +4 -4
  400. package/paginator/paginator.esm.js +10 -0
  401. package/paginator/paginator.esm.min.js +1 -1
  402. package/paginator/paginator.js +10 -0
  403. package/paginator/paginator.min.js +1 -1
  404. package/panel/panel.cjs.js +11 -0
  405. package/panel/panel.cjs.min.js +1 -1
  406. package/panel/panel.d.ts +5 -5
  407. package/panel/panel.esm.js +11 -0
  408. package/panel/panel.esm.min.js +1 -1
  409. package/panel/panel.js +11 -0
  410. package/panel/panel.min.js +1 -1
  411. package/panelmenu/panelmenu.cjs.js +11 -0
  412. package/panelmenu/panelmenu.cjs.min.js +1 -1
  413. package/panelmenu/panelmenu.d.ts +4 -5
  414. package/panelmenu/panelmenu.esm.js +11 -0
  415. package/panelmenu/panelmenu.esm.min.js +1 -1
  416. package/panelmenu/panelmenu.js +11 -0
  417. package/panelmenu/panelmenu.min.js +1 -1
  418. package/password/password.cjs.js +17 -2
  419. package/password/password.cjs.min.js +1 -1
  420. package/password/password.d.ts +6 -4
  421. package/password/password.esm.js +17 -2
  422. package/password/password.esm.min.js +1 -1
  423. package/password/password.js +17 -2
  424. package/password/password.min.js +1 -1
  425. package/picklist/picklist.cjs.js +199 -25
  426. package/picklist/picklist.cjs.min.js +1 -1
  427. package/picklist/picklist.d.ts +32 -1
  428. package/picklist/picklist.esm.js +199 -25
  429. package/picklist/picklist.esm.min.js +1 -1
  430. package/picklist/picklist.js +200 -27
  431. package/picklist/picklist.min.css +1 -1
  432. package/picklist/picklist.min.js +1 -1
  433. package/primereact.all.cjs.js +2536 -640
  434. package/primereact.all.cjs.min.js +1 -1
  435. package/primereact.all.esm.js +2536 -640
  436. package/primereact.all.esm.min.js +1 -1
  437. package/primereact.all.js +2536 -640
  438. package/primereact.all.min.js +1 -1
  439. package/progressbar/progressbar.cjs.js +12 -0
  440. package/progressbar/progressbar.cjs.min.js +1 -1
  441. package/progressbar/progressbar.d.ts +4 -5
  442. package/progressbar/progressbar.esm.js +12 -0
  443. package/progressbar/progressbar.esm.min.js +1 -1
  444. package/progressbar/progressbar.js +12 -0
  445. package/progressbar/progressbar.min.js +1 -1
  446. package/progressspinner/progressspinner.cjs.js +10 -0
  447. package/progressspinner/progressspinner.cjs.min.js +1 -1
  448. package/progressspinner/progressspinner.d.ts +4 -5
  449. package/progressspinner/progressspinner.esm.js +10 -0
  450. package/progressspinner/progressspinner.esm.min.js +1 -1
  451. package/progressspinner/progressspinner.js +10 -0
  452. package/progressspinner/progressspinner.min.js +1 -1
  453. package/radiobutton/radiobutton.cjs.js +30 -15
  454. package/radiobutton/radiobutton.cjs.min.js +1 -1
  455. package/radiobutton/radiobutton.d.ts +3 -4
  456. package/radiobutton/radiobutton.esm.js +31 -16
  457. package/radiobutton/radiobutton.esm.min.js +1 -1
  458. package/radiobutton/radiobutton.js +30 -15
  459. package/radiobutton/radiobutton.min.js +1 -1
  460. package/rating/rating.cjs.js +8 -0
  461. package/rating/rating.cjs.min.js +1 -1
  462. package/rating/rating.d.ts +3 -4
  463. package/rating/rating.esm.js +8 -0
  464. package/rating/rating.esm.min.js +1 -1
  465. package/rating/rating.js +8 -0
  466. package/rating/rating.min.js +1 -1
  467. package/resources/primereact.css +94 -26
  468. package/resources/primereact.min.css +1 -1
  469. package/resources/themes/arya-blue/theme.css +41 -7
  470. package/resources/themes/arya-green/theme.css +41 -7
  471. package/resources/themes/arya-orange/theme.css +41 -7
  472. package/resources/themes/arya-purple/theme.css +41 -7
  473. package/resources/themes/bootstrap4-dark-blue/theme.css +41 -7
  474. package/resources/themes/bootstrap4-dark-purple/theme.css +41 -7
  475. package/resources/themes/bootstrap4-light-blue/theme.css +40 -6
  476. package/resources/themes/bootstrap4-light-purple/theme.css +40 -6
  477. package/resources/themes/fluent-light/theme.css +41 -7
  478. package/resources/themes/lara-dark-blue/theme.css +41 -7
  479. package/resources/themes/lara-dark-indigo/theme.css +41 -7
  480. package/resources/themes/lara-dark-purple/theme.css +41 -7
  481. package/resources/themes/lara-dark-teal/theme.css +41 -7
  482. package/resources/themes/lara-light-blue/theme.css +41 -7
  483. package/resources/themes/lara-light-indigo/theme.css +41 -7
  484. package/resources/themes/lara-light-purple/theme.css +41 -7
  485. package/resources/themes/lara-light-teal/theme.css +41 -7
  486. package/resources/themes/luna-amber/theme.css +41 -7
  487. package/resources/themes/luna-blue/theme.css +41 -7
  488. package/resources/themes/luna-green/theme.css +41 -7
  489. package/resources/themes/luna-pink/theme.css +41 -7
  490. package/resources/themes/md-dark-deeppurple/theme.css +41 -7
  491. package/resources/themes/md-dark-indigo/theme.css +41 -7
  492. package/resources/themes/md-light-deeppurple/theme.css +41 -7
  493. package/resources/themes/md-light-indigo/theme.css +41 -7
  494. package/resources/themes/mdc-dark-deeppurple/theme.css +41 -7
  495. package/resources/themes/mdc-dark-indigo/theme.css +41 -7
  496. package/resources/themes/mdc-light-deeppurple/theme.css +41 -7
  497. package/resources/themes/mdc-light-indigo/theme.css +41 -7
  498. package/resources/themes/nova/theme.css +41 -7
  499. package/resources/themes/nova-accent/theme.css +41 -7
  500. package/resources/themes/nova-alt/theme.css +41 -7
  501. package/resources/themes/rhea/theme.css +41 -7
  502. package/resources/themes/saga-blue/theme.css +41 -7
  503. package/resources/themes/saga-green/theme.css +41 -7
  504. package/resources/themes/saga-orange/theme.css +41 -7
  505. package/resources/themes/saga-purple/theme.css +41 -7
  506. package/resources/themes/tailwind-light/theme.css +41 -7
  507. package/resources/themes/vela-blue/theme.css +41 -7
  508. package/resources/themes/vela-green/theme.css +41 -7
  509. package/resources/themes/vela-orange/theme.css +41 -7
  510. package/resources/themes/vela-purple/theme.css +41 -7
  511. package/scrollpanel/scrollpanel.cjs.js +14 -1
  512. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  513. package/scrollpanel/scrollpanel.d.ts +7 -5
  514. package/scrollpanel/scrollpanel.esm.js +14 -1
  515. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  516. package/scrollpanel/scrollpanel.js +14 -1
  517. package/scrollpanel/scrollpanel.min.js +1 -1
  518. package/scrolltop/scrolltop.cjs.js +8 -0
  519. package/scrolltop/scrolltop.cjs.min.js +1 -1
  520. package/scrolltop/scrolltop.d.ts +3 -1
  521. package/scrolltop/scrolltop.esm.js +8 -0
  522. package/scrolltop/scrolltop.esm.min.js +1 -1
  523. package/scrolltop/scrolltop.js +8 -0
  524. package/scrolltop/scrolltop.min.js +1 -1
  525. package/selectbutton/selectbutton.cjs.js +8 -0
  526. package/selectbutton/selectbutton.cjs.min.js +1 -1
  527. package/selectbutton/selectbutton.d.ts +4 -5
  528. package/selectbutton/selectbutton.esm.js +8 -0
  529. package/selectbutton/selectbutton.esm.min.js +1 -1
  530. package/selectbutton/selectbutton.js +8 -0
  531. package/selectbutton/selectbutton.min.js +1 -1
  532. package/sidebar/sidebar.cjs.js +40 -0
  533. package/sidebar/sidebar.cjs.min.js +1 -1
  534. package/sidebar/sidebar.d.ts +6 -5
  535. package/sidebar/sidebar.esm.js +40 -0
  536. package/sidebar/sidebar.esm.min.js +1 -1
  537. package/sidebar/sidebar.js +40 -0
  538. package/sidebar/sidebar.min.js +1 -1
  539. package/skeleton/skeleton.cjs.js +10 -0
  540. package/skeleton/skeleton.cjs.min.js +1 -1
  541. package/skeleton/skeleton.d.ts +4 -4
  542. package/skeleton/skeleton.esm.js +10 -0
  543. package/skeleton/skeleton.esm.min.js +1 -1
  544. package/skeleton/skeleton.js +10 -0
  545. package/skeleton/skeleton.min.js +1 -1
  546. package/slidemenu/slidemenu.cjs.js +6 -1
  547. package/slidemenu/slidemenu.cjs.min.js +1 -1
  548. package/slidemenu/slidemenu.d.ts +2 -4
  549. package/slidemenu/slidemenu.esm.js +6 -1
  550. package/slidemenu/slidemenu.esm.min.js +1 -1
  551. package/slidemenu/slidemenu.js +6 -1
  552. package/slidemenu/slidemenu.min.js +1 -1
  553. package/slider/slider.cjs.js +8 -0
  554. package/slider/slider.cjs.min.js +1 -1
  555. package/slider/slider.d.ts +4 -6
  556. package/slider/slider.esm.js +8 -0
  557. package/slider/slider.esm.min.js +1 -1
  558. package/slider/slider.js +8 -0
  559. package/slider/slider.min.js +1 -1
  560. package/speeddial/speeddial.cjs.js +5 -1
  561. package/speeddial/speeddial.cjs.min.js +1 -1
  562. package/speeddial/speeddial.d.ts +2 -4
  563. package/speeddial/speeddial.esm.js +5 -1
  564. package/speeddial/speeddial.esm.min.js +1 -1
  565. package/speeddial/speeddial.js +5 -1
  566. package/speeddial/speeddial.min.js +1 -1
  567. package/splitbutton/splitbutton.cjs.js +9 -1
  568. package/splitbutton/splitbutton.cjs.min.js +1 -1
  569. package/splitbutton/splitbutton.d.ts +4 -5
  570. package/splitbutton/splitbutton.esm.js +9 -1
  571. package/splitbutton/splitbutton.esm.min.js +1 -1
  572. package/splitbutton/splitbutton.js +9 -1
  573. package/splitbutton/splitbutton.min.js +1 -1
  574. package/splitter/splitter.cjs.js +17 -5
  575. package/splitter/splitter.cjs.min.js +1 -1
  576. package/splitter/splitter.d.ts +4 -5
  577. package/splitter/splitter.esm.js +18 -6
  578. package/splitter/splitter.esm.min.js +1 -1
  579. package/splitter/splitter.js +17 -5
  580. package/splitter/splitter.min.js +1 -1
  581. package/steps/steps.cjs.js +12 -0
  582. package/steps/steps.cjs.min.js +1 -1
  583. package/steps/steps.d.ts +4 -5
  584. package/steps/steps.esm.js +12 -0
  585. package/steps/steps.esm.min.js +1 -1
  586. package/steps/steps.js +12 -0
  587. package/steps/steps.min.js +1 -1
  588. package/styleclass/styleclass.cjs.js +12 -1
  589. package/styleclass/styleclass.cjs.min.js +1 -1
  590. package/styleclass/styleclass.d.ts +5 -2
  591. package/styleclass/styleclass.esm.js +12 -1
  592. package/styleclass/styleclass.esm.min.js +1 -1
  593. package/styleclass/styleclass.js +12 -1
  594. package/styleclass/styleclass.min.js +1 -1
  595. package/tabmenu/tabmenu.cjs.js +10 -0
  596. package/tabmenu/tabmenu.cjs.min.js +1 -1
  597. package/tabmenu/tabmenu.d.ts +4 -5
  598. package/tabmenu/tabmenu.esm.js +10 -0
  599. package/tabmenu/tabmenu.esm.min.js +1 -1
  600. package/tabmenu/tabmenu.js +10 -0
  601. package/tabmenu/tabmenu.min.js +1 -1
  602. package/tabview/tabview.cjs.js +7 -1
  603. package/tabview/tabview.cjs.min.js +1 -1
  604. package/tabview/tabview.d.ts +2 -4
  605. package/tabview/tabview.esm.js +7 -1
  606. package/tabview/tabview.esm.min.js +1 -1
  607. package/tabview/tabview.js +7 -1
  608. package/tabview/tabview.min.js +1 -1
  609. package/tag/tag.cjs.js +10 -0
  610. package/tag/tag.cjs.min.js +1 -1
  611. package/tag/tag.d.ts +5 -5
  612. package/tag/tag.esm.js +10 -0
  613. package/tag/tag.esm.min.js +1 -1
  614. package/tag/tag.js +10 -0
  615. package/tag/tag.min.js +1 -1
  616. package/terminal/terminal.cjs.js +9 -1
  617. package/terminal/terminal.cjs.min.js +1 -1
  618. package/terminal/terminal.d.ts +4 -5
  619. package/terminal/terminal.esm.js +10 -2
  620. package/terminal/terminal.esm.min.js +1 -1
  621. package/terminal/terminal.js +9 -1
  622. package/terminal/terminal.min.js +1 -1
  623. package/tieredmenu/tieredmenu.cjs.js +8 -2
  624. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  625. package/tieredmenu/tieredmenu.d.ts +2 -4
  626. package/tieredmenu/tieredmenu.esm.js +8 -2
  627. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  628. package/tieredmenu/tieredmenu.js +8 -2
  629. package/tieredmenu/tieredmenu.min.js +1 -1
  630. package/timeline/timeline.cjs.js +11 -0
  631. package/timeline/timeline.cjs.min.js +1 -1
  632. package/timeline/timeline.d.ts +4 -5
  633. package/timeline/timeline.esm.js +11 -0
  634. package/timeline/timeline.esm.min.js +1 -1
  635. package/timeline/timeline.js +11 -0
  636. package/timeline/timeline.min.js +1 -1
  637. package/toast/toast.cjs.js +35 -36
  638. package/toast/toast.cjs.min.js +1 -1
  639. package/toast/toast.d.ts +4 -5
  640. package/toast/toast.esm.js +35 -36
  641. package/toast/toast.esm.min.js +1 -1
  642. package/toast/toast.js +35 -36
  643. package/toast/toast.min.css +1 -1
  644. package/toast/toast.min.js +1 -1
  645. package/togglebutton/togglebutton.cjs.js +8 -0
  646. package/togglebutton/togglebutton.cjs.min.js +1 -1
  647. package/togglebutton/togglebutton.d.ts +4 -6
  648. package/togglebutton/togglebutton.esm.js +8 -0
  649. package/togglebutton/togglebutton.esm.min.js +1 -1
  650. package/togglebutton/togglebutton.js +8 -0
  651. package/togglebutton/togglebutton.min.js +1 -1
  652. package/toolbar/toolbar.cjs.js +10 -0
  653. package/toolbar/toolbar.cjs.min.js +1 -1
  654. package/toolbar/toolbar.d.ts +4 -5
  655. package/toolbar/toolbar.esm.js +10 -0
  656. package/toolbar/toolbar.esm.min.js +1 -1
  657. package/toolbar/toolbar.js +10 -0
  658. package/toolbar/toolbar.min.js +1 -1
  659. package/tooltip/tooltip.cjs.js +73 -52
  660. package/tooltip/tooltip.cjs.min.js +1 -1
  661. package/tooltip/tooltip.d.ts +2 -0
  662. package/tooltip/tooltip.esm.js +73 -52
  663. package/tooltip/tooltip.esm.min.js +1 -1
  664. package/tooltip/tooltip.js +73 -52
  665. package/tooltip/tooltip.min.js +1 -1
  666. package/tree/tree.cjs.js +50 -7
  667. package/tree/tree.cjs.min.js +1 -1
  668. package/tree/tree.d.ts +10 -1
  669. package/tree/tree.esm.js +50 -7
  670. package/tree/tree.esm.min.js +1 -1
  671. package/tree/tree.js +50 -7
  672. package/tree/tree.min.js +1 -1
  673. package/treeselect/treeselect.cjs.js +36 -6
  674. package/treeselect/treeselect.cjs.min.js +1 -1
  675. package/treeselect/treeselect.d.ts +14 -6
  676. package/treeselect/treeselect.esm.js +36 -6
  677. package/treeselect/treeselect.esm.min.js +1 -1
  678. package/treeselect/treeselect.js +36 -6
  679. package/treeselect/treeselect.min.js +1 -1
  680. package/treetable/treetable.cjs.js +7 -2
  681. package/treetable/treetable.cjs.min.js +1 -1
  682. package/treetable/treetable.d.ts +3 -2
  683. package/treetable/treetable.esm.js +7 -2
  684. package/treetable/treetable.esm.min.js +1 -1
  685. package/treetable/treetable.js +7 -2
  686. package/treetable/treetable.min.js +1 -1
  687. package/tristatecheckbox/tristatecheckbox.cjs.js +8 -0
  688. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  689. package/tristatecheckbox/tristatecheckbox.d.ts +3 -5
  690. package/tristatecheckbox/tristatecheckbox.esm.js +8 -0
  691. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  692. package/tristatecheckbox/tristatecheckbox.js +8 -0
  693. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  694. package/utils/utils.cjs.js +122 -8
  695. package/utils/utils.cjs.min.js +1 -1
  696. package/utils/utils.d.ts +1 -0
  697. package/utils/utils.esm.js +122 -8
  698. package/utils/utils.esm.min.js +1 -1
  699. package/utils/utils.js +122 -8
  700. package/utils/utils.min.js +1 -1
  701. package/virtualscroller/virtualscroller.cjs.js +156 -66
  702. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  703. package/virtualscroller/virtualscroller.d.ts +12 -0
  704. package/virtualscroller/virtualscroller.esm.js +158 -68
  705. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  706. package/virtualscroller/virtualscroller.js +156 -66
  707. package/virtualscroller/virtualscroller.min.css +1 -1
  708. package/virtualscroller/virtualscroller.min.js +1 -1
  709. package/web-types.json +304 -4
@@ -1 +1 @@
1
- import*as e from"react";import{FilterService as t}from"primereact/api";import{Tooltip as l}from"primereact/tooltip";import{classNames as n,ObjectUtils as r,DomHandler as a}from"primereact/utils";import{VirtualScroller as o}from"primereact/virtualscroller";import{InputText as i}from"primereact/inputtext";import{Ripple as u}from"primereact/ripple";function c(){return c=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n])}return e},c.apply(this,arguments)}function s(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}function f(e){if(Array.isArray(e))return p(e)}function m(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function d(e,t){if(e){if("string"==typeof e)return p(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?p(e,t):void 0}}function b(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e){return f(e)||m(e)||d(e)||b()}function y(e){if(Array.isArray(e))return e}function h(e,t){var l=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var n,r,a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)throw r}}return a}}function g(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var E=e.memo((function(t){return e.createElement("div",{className:"p-listbox-header"},e.createElement("div",{className:"p-listbox-filter-container"},e.createElement(i,c({type:"text",value:t.filter,onChange:function(e){t.onFilter&&t.onFilter({originalEvent:e,value:e.target.value})},className:"p-listbox-filter",disabled:t.disabled,placeholder:t.filterPlaceholder},t.filterInputProps)),e.createElement("span",{className:"p-listbox-filter-icon pi pi-search"})))}));E.displayName="ListBoxHeader";var x=e.memo((function(t){var l=function(e){t.onClick&&t.onClick({originalEvent:e,option:t.option}),e.preventDefault()},o=function e(t){var l=t.nextElementSibling;return l?a.hasClass(l,"p-disabled")||a.hasClass(l,"p-listbox-item-group")?e(l):l:null},i=function e(t){var l=t.previousElementSibling;return l?a.hasClass(l,"p-disabled")||a.hasClass(l,"p-listbox-item-group")?e(l):l:null},c=n("p-listbox-item",{"p-highlight":t.selected,"p-disabled":t.disabled},t.option.className),s=t.template?r.getJSXElement(t.template,t.option):t.label;return e.createElement("li",{className:c,onClick:l,onTouchEnd:function(e){t.onTouchEnd&&t.onTouchEnd({originalEvent:e,option:t.option})},onKeyDown:function(e){var t=e.currentTarget;switch(e.which){case 40:var n=o(t);n&&n.focus(),e.preventDefault();break;case 38:var r=i(t);r&&r.focus(),e.preventDefault();break;case 13:l(e),e.preventDefault()}},tabIndex:"-1","aria-label":t.label,key:t.label,role:"option","aria-selected":t.selected,"aria-disabled":t.disabled},s,e.createElement(u,null))}));function O(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function S(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?O(Object(l),!0).forEach((function(t){s(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):O(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function w(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=C(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,i=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return o=e.done,e},e:function(e){i=!0,a=e},f:function(){try{o||null==l.return||l.return()}finally{if(i)throw a}}}}function C(e,t){if(e){if("string"==typeof e)return D(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?D(e,t):void 0}}function D(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}x.displayName="ListBoxItem";var L=e.memo(e.forwardRef((function(a,i){var u,s,p=e.useState(""),f=(s=2,y(u=p)||h(u,s)||d(u,s)||g()),m=f[0],b=f[1],O=e.useRef(null),C=e.useRef(null),D=e.useRef(!1),P=(a.onFilterValueChange?a.filterValue:m)||"",j=P&&P.trim().length>0,N=function(e){var t=e.option;a.disabled||R(t)||(a.multiple?F(e.originalEvent,t):T(e.originalEvent,t),D.current=!1)},I=function(){a.disabled||(D.current=!0)},T=function(e,t){var l=G(t),n=!1,r=null;!D.current&&a.metaKeySelection?l?(e.metaKey||e.ctrlKey)&&(r=null,n=!0):(r=M(t),n=!0):(r=l?null:M(t),n=!0);n&&K(e,r)},F=function(e,t){var l=G(t),n=!1,r=null;if(!D&&a.metaKeySelection){var o=e.metaKey||e.ctrlKey;l?(r=o?k(t):[M(t)],n=!0):(r=[].concat(v(r=o&&a.value||[]),[M(t)]),n=!0)}else r=l?k(t):[].concat(v(a.value||[]),[M(t)]),n=!0;n&&a.onChange({originalEvent:e,value:r,stopPropagation:function(){},preventDefault:function(){},target:{name:a.name,id:a.id,value:r}})},A=function(e){var t=e.value;a.onFilterValueChange?a.onFilterValueChange({originalEvent:e.originalEvent,value:t}):b(t)},K=function(e,t){a.onChange&&a.onChange({originalEvent:e,value:t,stopPropagation:function(){},preventDefault:function(){},target:{name:a.name,id:a.id,value:t}})},k=function(e){return a.value.filter((function(t){return!r.equals(t,M(e),a.dataKey)}))},G=function(e){var t=M(e);return a.multiple&&a.value?a.value.some((function(e){return r.equals(e,t,a.dataKey)})):r.equals(a.value,t,a.dataKey)},V=function(e){return a.optionLabel?r.resolveFieldData(e,a.optionLabel):e&&void 0!==e.label?e.label:e},M=function(e){return a.optionValue?r.resolveFieldData(e,a.optionValue):e&&void 0!==e.value?e.value:e},B=function(e){return a.dataKey?r.resolveFieldData(e,a.dataKey):V(e)},R=function(e){return a.optionDisabled?r.isFunction(a.optionDisabled)?a.optionDisabled(e):r.resolveFieldData(e,a.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},_=function(e){return r.resolveFieldData(e,a.optionGroupLabel)},q=function(e){return r.resolveFieldData(e,a.optionGroupChildren)},z=function(t){return q(t).map((function(t,l){var n=V(t),r=l+"_"+B(t),o=R(t),i=o?null:a.tabIndex||0;return e.createElement(x,{key:r,label:n,option:t,template:a.itemTemplate,selected:G(t),onClick:N,onTouchEnd:I,tabIndex:i,disabled:o})}))},J=function(t,l){if(a.optionGroupLabel){var n=a.optionGroupTemplate?r.getJSXElement(a.optionGroupTemplate,t,l):r.resolveFieldData(t,a.optionGroupLabel),o=z(t),i=l+"_"+_(t);return e.createElement(e.Fragment,{key:i},e.createElement("li",{className:"p-listbox-item-group",role:"group"},n),o)}var u=V(t),c=l+"_"+B(t),s=R(t),p=s?null:a.tabIndex||0;return e.createElement(x,{key:c,label:u,option:t,template:a.itemTemplate,selected:G(t),onClick:N,onTouchEnd:I,tabIndex:p,disabled:s})},U=function(){if(j){var e=P.trim().toLocaleLowerCase(a.filterLocale),l=a.filterBy?a.filterBy.split(","):[a.optionLabel||"label"];if(a.optionGroupLabel){var n,r=[],o=w(a.options);try{for(o.s();!(n=o.n()).done;){var i=n.value,u=t.filter(q(i),l,e,a.filterMatchMode,a.filterLocale);u&&u.length&&r.push(S(S({},i),{items:u}))}}catch(e){o.e(e)}finally{o.f()}return r}return t.filter(a.options,l,e,a.filterMatchMode,a.filterLocale)}return a.options}(),X=r.isNotEmpty(a.tooltip),$=r.findDiffKeys(a,L.defaultProps),H=n("p-listbox p-component",{"p-disabled":a.disabled},a.className),Y=n("p-listbox-list-wrapper",a.listClassName),Q=function(){if(a.virtualScrollerOptions){var t=S(S({},a.virtualScrollerOptions),{items:U,onLazyLoad:function(e){return a.virtualScrollerOptions.onLazyLoad(S(S({},e),{filter:U}))},itemTemplate:function(e,t){return e&&J(e,t.index)},contentTemplate:function(t){var l=n("p-listbox-list",t.className);return e.createElement("ul",{ref:t.contentRef,className:l,role:"listbox","aria-multiselectable":a.multiple,"aria-labelledby":a["aria-labelledby"],"aria-label":a["aria-label"]},t.children)}});return e.createElement(o,c({ref:C},t))}var l=U?U.map(J):null;return e.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":a.multiple,"aria-labelledby":a["aria-labelledby"],"aria-label":a["aria-label"]},l)}(),W=a.filter?e.createElement(E,{filter:P,onFilter:A,disabled:a.disabled,filterPlaceholder:a.filterPlaceholder,filterInputProps:a.filterInputProps}):null;return e.createElement(e.Fragment,null,e.createElement("div",c({ref:O,id:a.id,className:H,style:a.style},$),W,e.createElement("div",{className:Y,style:a.listStyle},Q)),X&&e.createElement(l,c({target:O,content:a.tooltip},a.tooltipOptions)))})));L.displayName="ListBox",L.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null};export{L as ListBox};
1
+ import*as e from"react";import{FilterService as t}from"primereact/api";import{useMountEffect as r}from"primereact/hooks";import{Tooltip as n}from"primereact/tooltip";import{ObjectUtils as l,classNames as a,DomHandler as o}from"primereact/utils";import{VirtualScroller as i}from"primereact/virtualscroller";import{InputText as u}from"primereact/inputtext";import{Ripple as c}from"primereact/ripple";function s(){return s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},s.apply(this,arguments)}function p(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function m(e){if(Array.isArray(e))return f(e)}function d(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function b(e,t){if(e){if("string"==typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}function v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(e){return m(e)||d(e)||b(e)||v()}function h(e){if(Array.isArray(e))return e}function g(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,l,a=[],o=!0,i=!1;try{for(r=r.call(e);!(o=(n=r.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==r.return||r.return()}finally{if(i)throw l}}return a}}function E(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var x=e.memo((function(t){var r={filter:function(e){return n(e)},reset:function(){return t.resetFilter()}},n=function(e){t.onFilter&&t.onFilter({originalEvent:e,value:e.target.value})},a=function(){var a=e.createElement("div",{className:"p-listbox-filter-container"},e.createElement(u,s({type:"text",value:t.filter,onChange:n,className:"p-listbox-filter",disabled:t.disabled,placeholder:t.filterPlaceholder},t.filterInputProps)),e.createElement("span",{className:"p-listbox-filter-icon pi pi-search"}));t.filterTemplate&&(a=l.getJSXElement(t.filterTemplate,{className:"p-listbox-filter-container",element:a,filterOptions:r,filterInputChange:n,filterIconClassName:"p-dropdown-filter-icon pi pi-search",props:t}));return e.createElement("div",{className:"p-listbox-header"},a)}();return e.createElement(e.Fragment,null,a)}));x.displayName="ListBoxHeader";var O=e.memo((function(t){var r=function(e){t.onClick&&t.onClick({originalEvent:e,option:t.option}),e.preventDefault()},n=function e(t){var r=t.nextElementSibling;return r?o.hasClass(r,"p-disabled")||o.hasClass(r,"p-listbox-item-group")?e(r):r:null},i=function e(t){var r=t.previousElementSibling;return r?o.hasClass(r,"p-disabled")||o.hasClass(r,"p-listbox-item-group")?e(r):r:null},u=a("p-listbox-item",{"p-highlight":t.selected,"p-disabled":t.disabled},t.option.className),s=t.template?l.getJSXElement(t.template,t.option):t.label;return e.createElement("li",{className:u,style:t.style,onClick:r,onTouchEnd:function(e){t.onTouchEnd&&t.onTouchEnd({originalEvent:e,option:t.option})},onKeyDown:function(e){var t=e.currentTarget;switch(e.which){case 40:var l=n(t);l&&l.focus(),e.preventDefault();break;case 38:var a=i(t);a&&a.focus(),e.preventDefault();break;case 13:r(e),e.preventDefault()}},tabIndex:"-1","aria-label":t.label,key:t.label,role:"option","aria-selected":t.selected,"aria-disabled":t.disabled},s,e.createElement(c,null))}));function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function C(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function w(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=T(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,l=function(){};return{s:l,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,i=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){i=!0,a=e},f:function(){try{o||null==r.return||r.return()}finally{if(i)throw a}}}}function T(e,t){if(e){if("string"==typeof e)return I(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?I(e,t):void 0}}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}O.displayName="ListBoxItem";var D=e.memo(e.forwardRef((function(o,u){var c,p,f=e.useState(""),m=(p=2,h(c=f)||g(c,p)||b(c,p)||E()),d=m[0],v=m[1],S=e.useRef(null),T=e.useRef(null),I=e.useRef(!1),L=(o.onFilterValueChange?o.filterValue:d)||"",P=L&&L.trim().length>0,F=function(e){var t=e.option;o.disabled||X(t)||(o.multiple?A(e.originalEvent,t):j(e.originalEvent,t),I.current=!1)},N=function(){o.disabled||(I.current=!0)},j=function(e,t){var r=_(t),n=!1,l=null;!I.current&&o.metaKeySelection?r?(e.metaKey||e.ctrlKey)&&(l=null,n=!0):(l=z(t),n=!0):(l=r?null:z(t),n=!0);n&&G(e,l)},A=function(e,t){var r=_(t),n=!1,l=null;if(!I&&o.metaKeySelection){var a=e.metaKey||e.ctrlKey;r?(l=a?V(t):[z(t)],n=!0):(l=[].concat(y(l=a&&o.value||[]),[z(t)]),n=!0)}else l=r?V(t):[].concat(y(o.value||[]),[z(t)]),n=!0;n&&o.onChange({originalEvent:e,value:l,stopPropagation:function(){},preventDefault:function(){},target:{name:o.name,id:o.id,value:l}})},K=function(e){T.current&&T.current.scrollToIndex(0);var t=e.value;o.onFilterValueChange?o.onFilterValueChange({originalEvent:e.originalEvent,value:t}):v(t)},k=function(){v(""),o.onFilter&&o.onFilter({filter:""})},G=function(e,t){o.onChange&&o.onChange({originalEvent:e,value:t,stopPropagation:function(){},preventDefault:function(){},target:{name:o.name,id:o.id,value:t}})},V=function(e){return o.value.filter((function(t){return!l.equals(t,z(e),o.dataKey)}))},M=function(){if(null!=o.value&&Z){if(!o.optionGroupLabel)return R(o.value,Z);for(var e=0;e<Z.length;e++){var t=R(o.value,$(Z[e]));if(-1!==t)return{group:e,option:t}}}return-1},B=function(){return o.optionValue?null:o.dataKey},R=function(e,t){var r=B();return t.findIndex((function(t){return l.equals(e,z(t),r)}))},_=function(e){var t=z(e),r=B();return o.multiple&&o.value?o.value.some((function(e){return l.equals(e,t,r)})):l.equals(o.value,t,r)},q=function(e){return o.optionLabel?l.resolveFieldData(e,o.optionLabel):e&&void 0!==e.label?e.label:e},z=function(e){return o.optionValue?l.resolveFieldData(e,o.optionValue):e&&void 0!==e.value?e.value:e},J=function(e){return o.dataKey?l.resolveFieldData(e,o.dataKey):q(e)},X=function(e){return o.optionDisabled?l.isFunction(o.optionDisabled)?o.optionDisabled(e):l.resolveFieldData(e,o.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},H=function(e){return l.resolveFieldData(e,o.optionGroupLabel)},U=function(e){return l.resolveFieldData(e,o.optionGroupLabel)},$=function(e){return l.resolveFieldData(e,o.optionGroupChildren)},Y=function(){if(T.current){var e=M();-1!==e&&setTimeout((function(){return T.current.scrollToIndex(e)}),0)}};e.useImperativeHandle(u,(function(){return{props:o,getElement:function(){return S.current},getVirtualScroller:function(){return T.current}}})),r((function(){Y()}));var Q=function(t,r){return $(t).map((function(t,n){var l=q(t),a=n+"_"+J(t),i=X(t),u=i?null:o.tabIndex||0;return e.createElement(O,{key:a,label:l,option:t,style:r,template:o.itemTemplate,selected:_(t),onClick:F,onTouchEnd:N,tabIndex:u,disabled:i})}))},W=function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a={height:n.props?n.props.itemSize:void 0};if(o.optionGroupLabel){var i=o.optionGroupTemplate?l.getJSXElement(o.optionGroupTemplate,t,r):U(t),u=Q(t,a),c=r+"_"+H(t);return e.createElement(e.Fragment,{key:c},e.createElement("li",{className:"p-listbox-item-group",style:a,role:"group"},i),u)}var s=q(t),p=r+"_"+J(t),f=X(t),m=f?null:o.tabIndex||0;return e.createElement(O,{key:p,label:s,option:t,style:a,template:o.itemTemplate,selected:_(t),onClick:F,onTouchEnd:N,tabIndex:m,disabled:f})},Z=function(){if(P){var e=L.trim().toLocaleLowerCase(o.filterLocale),r=o.filterBy?o.filterBy.split(","):[o.optionLabel||"label"];if(o.optionGroupLabel){var n,l=[],a=w(o.options);try{for(a.s();!(n=a.n()).done;){var i=n.value,u=t.filter($(i),r,e,o.filterMatchMode,o.filterLocale);u&&u.length&&l.push(C(C({},i),{items:u}))}}catch(e){a.e(e)}finally{a.f()}return l}return t.filter(o.options,r,e,o.filterMatchMode,o.filterLocale)}return o.options}(),ee=l.isNotEmpty(o.tooltip),te=l.findDiffKeys(o,D.defaultProps),re=a("p-listbox p-component",{"p-disabled":o.disabled},o.className),ne=a("p-listbox-list-wrapper",o.listClassName),le=function(){if(o.virtualScrollerOptions){var t=C(C({},o.virtualScrollerOptions),{items:Z,onLazyLoad:function(e){return o.virtualScrollerOptions.onLazyLoad(C(C({},e),{filter:Z}))},itemTemplate:function(e,t){return e&&W(e,t.index,t)},contentTemplate:function(t){var r=a("p-listbox-list",t.className);return e.createElement("ul",{ref:t.contentRef,className:r,role:"listbox","aria-multiselectable":o.multiple,"aria-labelledby":o["aria-labelledby"],"aria-label":o["aria-label"]},t.children)}});return e.createElement(i,s({ref:T},t))}var r=Z?Z.map(W):null;return e.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":o.multiple,"aria-labelledby":o["aria-labelledby"],"aria-label":o["aria-label"]},r)}(),ae=o.filter?e.createElement(x,{filter:L,onFilter:K,resetFilter:k,filterTemplate:o.filterTemplate,disabled:o.disabled,filterPlaceholder:o.filterPlaceholder,filterInputProps:o.filterInputProps}):null;return e.createElement(e.Fragment,null,e.createElement("div",s({ref:S,id:o.id,className:re,style:o.style},te),ae,e.createElement("div",{className:ne,style:o.listStyle},le)),ee&&e.createElement(n,s({target:S,content:o.tooltip},o.tooltipOptions)))})));D.displayName="ListBox",D.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterTemplate:null,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null};export{D as ListBox};
@@ -1,5 +1,5 @@
1
1
  this.primereact = this.primereact || {};
2
- this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtualscroller, inputtext, ripple) {
2
+ this.primereact.listbox = (function (exports, React, api, hooks, tooltip, utils, virtualscroller, inputtext, ripple) {
3
3
  'use strict';
4
4
 
5
5
  function _interopNamespace(e) {
@@ -133,6 +133,15 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
133
133
  }
134
134
 
135
135
  var ListBoxHeader = /*#__PURE__*/React__namespace.memo(function (props) {
136
+ var filterOptions = {
137
+ filter: function filter(e) {
138
+ return onFilter(e);
139
+ },
140
+ reset: function reset() {
141
+ return props.resetFilter();
142
+ }
143
+ };
144
+
136
145
  var onFilter = function onFilter(event) {
137
146
  if (props.onFilter) {
138
147
  props.onFilter({
@@ -142,20 +151,39 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
142
151
  }
143
152
  };
144
153
 
145
- return /*#__PURE__*/React__namespace.createElement("div", {
146
- className: "p-listbox-header"
147
- }, /*#__PURE__*/React__namespace.createElement("div", {
148
- className: "p-listbox-filter-container"
149
- }, /*#__PURE__*/React__namespace.createElement(inputtext.InputText, _extends({
150
- type: "text",
151
- value: props.filter,
152
- onChange: onFilter,
153
- className: "p-listbox-filter",
154
- disabled: props.disabled,
155
- placeholder: props.filterPlaceholder
156
- }, props.filterInputProps)), /*#__PURE__*/React__namespace.createElement("span", {
157
- className: "p-listbox-filter-icon pi pi-search"
158
- })));
154
+ var createHeader = function createHeader() {
155
+ var content = /*#__PURE__*/React__namespace.createElement("div", {
156
+ className: "p-listbox-filter-container"
157
+ }, /*#__PURE__*/React__namespace.createElement(inputtext.InputText, _extends({
158
+ type: "text",
159
+ value: props.filter,
160
+ onChange: onFilter,
161
+ className: "p-listbox-filter",
162
+ disabled: props.disabled,
163
+ placeholder: props.filterPlaceholder
164
+ }, props.filterInputProps)), /*#__PURE__*/React__namespace.createElement("span", {
165
+ className: "p-listbox-filter-icon pi pi-search"
166
+ }));
167
+
168
+ if (props.filterTemplate) {
169
+ var defaultContentOptions = {
170
+ className: 'p-listbox-filter-container',
171
+ element: content,
172
+ filterOptions: filterOptions,
173
+ filterInputChange: onFilter,
174
+ filterIconClassName: 'p-dropdown-filter-icon pi pi-search',
175
+ props: props
176
+ };
177
+ content = utils.ObjectUtils.getJSXElement(props.filterTemplate, defaultContentOptions);
178
+ }
179
+
180
+ return /*#__PURE__*/React__namespace.createElement("div", {
181
+ className: "p-listbox-header"
182
+ }, content);
183
+ };
184
+
185
+ var content = createHeader();
186
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, content);
159
187
  });
160
188
  ListBoxHeader.displayName = 'ListBoxHeader';
161
189
 
@@ -223,6 +251,7 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
223
251
  var content = props.template ? utils.ObjectUtils.getJSXElement(props.template, props.option) : props.label;
224
252
  return /*#__PURE__*/React__namespace.createElement("li", {
225
253
  className: className,
254
+ style: props.style,
226
255
  onClick: onClick,
227
256
  onTouchEnd: onTouchEnd,
228
257
  onKeyDown: onKeyDown,
@@ -342,6 +371,7 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
342
371
  };
343
372
 
344
373
  var onFilter = function onFilter(event) {
374
+ virtualScrollerRef.current && virtualScrollerRef.current.scrollToIndex(0);
345
375
  var originalEvent = event.originalEvent,
346
376
  value = event.value;
347
377
 
@@ -355,6 +385,13 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
355
385
  }
356
386
  };
357
387
 
388
+ var resetFilter = function resetFilter() {
389
+ setFilterValueState('');
390
+ props.onFilter && props.onFilter({
391
+ filter: ''
392
+ });
393
+ };
394
+
358
395
  var updateModel = function updateModel(event, value) {
359
396
  if (props.onChange) {
360
397
  props.onChange({
@@ -377,11 +414,44 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
377
414
  });
378
415
  };
379
416
 
417
+ var getSelectedOptionIndex = function getSelectedOptionIndex() {
418
+ if (props.value != null && visibleOptions) {
419
+ if (props.optionGroupLabel) {
420
+ for (var i = 0; i < visibleOptions.length; i++) {
421
+ var selectedOptionIndex = findOptionIndexInList(props.value, getOptionGroupChildren(visibleOptions[i]));
422
+
423
+ if (selectedOptionIndex !== -1) {
424
+ return {
425
+ group: i,
426
+ option: selectedOptionIndex
427
+ };
428
+ }
429
+ }
430
+ } else {
431
+ return findOptionIndexInList(props.value, visibleOptions);
432
+ }
433
+ }
434
+
435
+ return -1;
436
+ };
437
+
438
+ var equalityKey = function equalityKey() {
439
+ return props.optionValue ? null : props.dataKey;
440
+ };
441
+
442
+ var findOptionIndexInList = function findOptionIndexInList(value, list) {
443
+ var key = equalityKey();
444
+ return list.findIndex(function (item) {
445
+ return utils.ObjectUtils.equals(value, getOptionValue(item), key);
446
+ });
447
+ };
448
+
380
449
  var isSelected = function isSelected(option) {
381
450
  var optionValue = getOptionValue(option);
451
+ var key = equalityKey();
382
452
  return props.multiple && props.value ? props.value.some(function (val) {
383
- return utils.ObjectUtils.equals(val, optionValue, props.dataKey);
384
- }) : utils.ObjectUtils.equals(props.value, optionValue, props.dataKey);
453
+ return utils.ObjectUtils.equals(val, optionValue, key);
454
+ }) : utils.ObjectUtils.equals(props.value, optionValue, key);
385
455
  };
386
456
 
387
457
  var getOptionLabel = function getOptionLabel(option) {
@@ -453,17 +523,46 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
453
523
  }
454
524
  };
455
525
 
526
+ var scrollToSelectedIndex = function scrollToSelectedIndex() {
527
+ if (virtualScrollerRef.current) {
528
+ var selectedIndex = getSelectedOptionIndex();
529
+
530
+ if (selectedIndex !== -1) {
531
+ setTimeout(function () {
532
+ return virtualScrollerRef.current.scrollToIndex(selectedIndex);
533
+ }, 0);
534
+ }
535
+ }
536
+ };
537
+
538
+ React__namespace.useImperativeHandle(ref, function () {
539
+ return {
540
+ props: props,
541
+ getElement: function getElement() {
542
+ return elementRef.current;
543
+ },
544
+ getVirtualScroller: function getVirtualScroller() {
545
+ return virtualScrollerRef.current;
546
+ }
547
+ };
548
+ });
549
+ hooks.useMountEffect(function () {
550
+ scrollToSelectedIndex();
551
+ });
552
+
456
553
  var createHeader = function createHeader() {
457
554
  return props.filter ? /*#__PURE__*/React__namespace.createElement(ListBoxHeader, {
458
555
  filter: filteredValue,
459
556
  onFilter: onFilter,
557
+ resetFilter: resetFilter,
558
+ filterTemplate: props.filterTemplate,
460
559
  disabled: props.disabled,
461
560
  filterPlaceholder: props.filterPlaceholder,
462
561
  filterInputProps: props.filterInputProps
463
562
  }) : null;
464
563
  };
465
564
 
466
- var createGroupChildren = function createGroupChildren(optionGroup) {
565
+ var createGroupChildren = function createGroupChildren(optionGroup, style) {
467
566
  var groupChildren = getOptionGroupChildren(optionGroup);
468
567
  return groupChildren.map(function (option, j) {
469
568
  var optionLabel = getOptionLabel(option);
@@ -474,6 +573,7 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
474
573
  key: optionKey,
475
574
  label: optionLabel,
476
575
  option: option,
576
+ style: style,
477
577
  template: props.itemTemplate,
478
578
  selected: isSelected(option),
479
579
  onClick: onOptionSelect,
@@ -485,14 +585,20 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
485
585
  };
486
586
 
487
587
  var createItem = function createItem(option, index) {
588
+ var scrollerOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
589
+ var style = {
590
+ height: scrollerOptions.props ? scrollerOptions.props.itemSize : undefined
591
+ };
592
+
488
593
  if (props.optionGroupLabel) {
489
594
  var groupContent = props.optionGroupTemplate ? utils.ObjectUtils.getJSXElement(props.optionGroupTemplate, option, index) : getOptionGroupLabel(option);
490
- var groupChildrenContent = createGroupChildren(option);
595
+ var groupChildrenContent = createGroupChildren(option, style);
491
596
  var key = index + '_' + getOptionGroupRenderKey(option);
492
597
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
493
598
  key: key
494
599
  }, /*#__PURE__*/React__namespace.createElement("li", {
495
600
  className: "p-listbox-item-group",
601
+ style: style,
496
602
  role: "group"
497
603
  }, groupContent), groupChildrenContent);
498
604
  } else {
@@ -504,6 +610,7 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
504
610
  key: optionKey,
505
611
  label: optionLabel,
506
612
  option: option,
613
+ style: style,
507
614
  template: props.itemTemplate,
508
615
  selected: isSelected(option),
509
616
  onClick: onOptionSelect,
@@ -527,8 +634,8 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
527
634
  filter: visibleOptions
528
635
  }));
529
636
  },
530
- itemTemplate: function itemTemplate(item, option) {
531
- return item && createItem(item, option.index);
637
+ itemTemplate: function itemTemplate(item, options) {
638
+ return item && createItem(item, options.index, options);
532
639
  },
533
640
  contentTemplate: function contentTemplate(option) {
534
641
  var className = utils.classNames('p-listbox-list', option.className);
@@ -603,6 +710,7 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
603
710
  multiple: false,
604
711
  metaKeySelection: false,
605
712
  filter: false,
713
+ filterTemplate: null,
606
714
  filterBy: null,
607
715
  filterValue: null,
608
716
  filterMatchMode: 'contains',
@@ -624,4 +732,4 @@ this.primereact.listbox = (function (exports, React, api, tooltip, utils, virtua
624
732
 
625
733
  return exports;
626
734
 
627
- })({}, React, primereact.api, primereact.tooltip, primereact.utils, primereact.virtualscroller, primereact.inputtext, primereact.ripple);
735
+ })({}, React, primereact.api, primereact.hooks, primereact.tooltip, primereact.utils, primereact.virtualscroller, primereact.inputtext, primereact.ripple);
@@ -1 +1 @@
1
- this.primereact=this.primereact||{},this.primereact.listbox=function(e,t,l,n,r,a,i,o){"use strict";function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(l){if("default"!==l){var n=Object.getOwnPropertyDescriptor(e,l);Object.defineProperty(t,l,n.get?n:{enumerable:!0,get:function(){return e[l]}})}})),t.default=e,Object.freeze(t)}var c=u(t);function s(){return s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n])}return e},s.apply(this,arguments)}function p(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}function d(e){if(Array.isArray(e))return f(e)}function b(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function m(e,t){if(e){if("string"==typeof e)return f(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?f(e,t):void 0}}function v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(e){return d(e)||b(e)||m(e)||v()}function h(e){if(Array.isArray(e))return e}function g(e,t){var l=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var n,r,a=[],i=!0,o=!1;try{for(l=l.call(e);!(i=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){o=!0,r=e}finally{try{i||null==l.return||l.return()}finally{if(o)throw r}}return a}}function O(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var E=c.memo((function(e){return c.createElement("div",{className:"p-listbox-header"},c.createElement("div",{className:"p-listbox-filter-container"},c.createElement(i.InputText,s({type:"text",value:e.filter,onChange:function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},className:"p-listbox-filter",disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps)),c.createElement("span",{className:"p-listbox-filter-icon pi pi-search"})))}));E.displayName="ListBoxHeader";var j=c.memo((function(e){var t=function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},l=function e(t){var l=t.nextElementSibling;return l?r.DomHandler.hasClass(l,"p-disabled")||r.DomHandler.hasClass(l,"p-listbox-item-group")?e(l):l:null},n=function e(t){var l=t.previousElementSibling;return l?r.DomHandler.hasClass(l,"p-disabled")||r.DomHandler.hasClass(l,"p-listbox-item-group")?e(l):l:null},a=r.classNames("p-listbox-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.option.className),i=e.template?r.ObjectUtils.getJSXElement(e.template,e.option):e.label;return c.createElement("li",{className:a,onClick:t,onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onKeyDown:function(e){var r=e.currentTarget;switch(e.which){case 40:var a=l(r);a&&a.focus(),e.preventDefault();break;case 38:var i=n(r);i&&i.focus(),e.preventDefault();break;case 13:t(e),e.preventDefault()}},tabIndex:"-1","aria-label":e.label,key:e.label,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled},i,c.createElement(o.Ripple,null))}));function x(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function S(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?x(Object(l),!0).forEach((function(t){p(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):x(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function D(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=w(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var n=0,r=function(){};return{s:r,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==l.return||l.return()}finally{if(o)throw a}}}}function w(e,t){if(e){if("string"==typeof e)return P(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?P(e,t):void 0}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,n=new Array(t);l<t;l++)n[l]=e[l];return n}j.displayName="ListBoxItem";var C=c.memo(c.forwardRef((function(e,t){var i,o,u=c.useState(""),p=(o=2,h(i=u)||g(i,o)||m(i,o)||O()),f=p[0],d=p[1],b=c.useRef(null),v=c.useRef(null),x=c.useRef(!1),w=(e.onFilterValueChange?e.filterValue:f)||"",P=w&&w.trim().length>0,L=function(t){var l=t.option;e.disabled||V(l)||(e.multiple?T(t.originalEvent,l):I(t.originalEvent,l),x.current=!1)},N=function(){e.disabled||(x.current=!0)},I=function(t,l){var n=K(l),r=!1,a=null;!x.current&&e.metaKeySelection?n?(t.metaKey||t.ctrlKey)&&(a=null,r=!0):(a=G(l),r=!0):(a=n?null:G(l),r=!0);r&&U(t,a)},T=function(t,l){var n=K(l),r=!1,a=null;if(!x&&e.metaKeySelection){var i=t.metaKey||t.ctrlKey;n?(a=i?A(l):[G(l)],r=!0):(a=[].concat(y(a=i&&e.value||[]),[G(l)]),r=!0)}else a=n?A(l):[].concat(y(e.value||[]),[G(l)]),r=!0;r&&e.onChange({originalEvent:t,value:a,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:a}})},F=function(t){var l=t.value;e.onFilterValueChange?e.onFilterValueChange({originalEvent:t.originalEvent,value:l}):d(l)},U=function(t,l){e.onChange&&e.onChange({originalEvent:t,value:l,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:l}})},A=function(t){return e.value.filter((function(l){return!r.ObjectUtils.equals(l,G(t),e.dataKey)}))},K=function(t){var l=G(t);return e.multiple&&e.value?e.value.some((function(t){return r.ObjectUtils.equals(t,l,e.dataKey)})):r.ObjectUtils.equals(e.value,l,e.dataKey)},k=function(t){return e.optionLabel?r.ObjectUtils.resolveFieldData(t,e.optionLabel):t&&void 0!==t.label?t.label:t},G=function(t){return e.optionValue?r.ObjectUtils.resolveFieldData(t,e.optionValue):t&&void 0!==t.value?t.value:t},M=function(t){return e.dataKey?r.ObjectUtils.resolveFieldData(t,e.dataKey):k(t)},V=function(t){return e.optionDisabled?r.ObjectUtils.isFunction(e.optionDisabled)?e.optionDisabled(t):r.ObjectUtils.resolveFieldData(t,e.optionDisabled):!(!t||void 0===t.disabled)&&t.disabled},_=function(t){return r.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},B=function(t){return r.ObjectUtils.resolveFieldData(t,e.optionGroupChildren)},R=function(t){return B(t).map((function(t,l){var n=k(t),r=l+"_"+M(t),a=V(t),i=a?null:e.tabIndex||0;return c.createElement(j,{key:r,label:n,option:t,template:e.itemTemplate,selected:K(t),onClick:L,onTouchEnd:N,tabIndex:i,disabled:a})}))},H=function(t,l){if(e.optionGroupLabel){var n=e.optionGroupTemplate?r.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,l):r.ObjectUtils.resolveFieldData(t,e.optionGroupLabel),a=R(t),i=l+"_"+_(t);return c.createElement(c.Fragment,{key:i},c.createElement("li",{className:"p-listbox-item-group",role:"group"},n),a)}var o=k(t),u=l+"_"+M(t),s=V(t),p=s?null:e.tabIndex||0;return c.createElement(j,{key:u,label:o,option:t,template:e.itemTemplate,selected:K(t),onClick:L,onTouchEnd:N,tabIndex:p,disabled:s})},q=function(){if(P){var t=w.trim().toLocaleLowerCase(e.filterLocale),n=e.filterBy?e.filterBy.split(","):[e.optionLabel||"label"];if(e.optionGroupLabel){var r,a=[],i=D(e.options);try{for(i.s();!(r=i.n()).done;){var o=r.value,u=l.FilterService.filter(B(o),n,t,e.filterMatchMode,e.filterLocale);u&&u.length&&a.push(S(S({},o),{items:u}))}}catch(e){i.e(e)}finally{i.f()}return a}return l.FilterService.filter(e.options,n,t,e.filterMatchMode,e.filterLocale)}return e.options}(),z=r.ObjectUtils.isNotEmpty(e.tooltip),J=r.ObjectUtils.findDiffKeys(e,C.defaultProps),X=r.classNames("p-listbox p-component",{"p-disabled":e.disabled},e.className),$=r.classNames("p-listbox-list-wrapper",e.listClassName),Y=function(){if(e.virtualScrollerOptions){var t=S(S({},e.virtualScrollerOptions),{items:q,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(S(S({},t),{filter:q}))},itemTemplate:function(e,t){return e&&H(e,t.index)},contentTemplate:function(t){var l=r.classNames("p-listbox-list",t.className);return c.createElement("ul",{ref:t.contentRef,className:l,role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},t.children)}});return c.createElement(a.VirtualScroller,s({ref:v},t))}var l=q?q.map(H):null;return c.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},l)}(),Q=e.filter?c.createElement(E,{filter:w,onFilter:F,disabled:e.disabled,filterPlaceholder:e.filterPlaceholder,filterInputProps:e.filterInputProps}):null;return c.createElement(c.Fragment,null,c.createElement("div",s({ref:b,id:e.id,className:X,style:e.style},J),Q,c.createElement("div",{className:$,style:e.listStyle},Y)),z&&c.createElement(n.Tooltip,s({target:b,content:e.tooltip},e.tooltipOptions)))})));return C.displayName="ListBox",C.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null},e.ListBox=C,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.tooltip,primereact.utils,primereact.virtualscroller,primereact.inputtext,primereact.ripple);
1
+ this.primereact=this.primereact||{},this.primereact.listbox=function(e,t,r,l,n,i,a,o,u){"use strict";function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var l=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,l.get?l:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var s=c(t);function p(){return p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(e[l]=r[l])}return e},p.apply(this,arguments)}function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,l=new Array(t);r<t;r++)l[r]=e[r];return l}function m(e){if(Array.isArray(e))return d(e)}function b(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function v(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function y(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){return m(e)||b(e)||v(e)||y()}function g(e){if(Array.isArray(e))return e}function O(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var l,n,i=[],a=!0,o=!1;try{for(r=r.call(e);!(a=(l=r.next()).done)&&(i.push(l.value),!t||i.length!==t);a=!0);}catch(e){o=!0,n=e}finally{try{a||null==r.return||r.return()}finally{if(o)throw n}}return i}}function E(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var j=s.memo((function(e){var t={filter:function(e){return r(e)},reset:function(){return e.resetFilter()}},r=function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},l=function(){var l=s.createElement("div",{className:"p-listbox-filter-container"},s.createElement(o.InputText,p({type:"text",value:e.filter,onChange:r,className:"p-listbox-filter",disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps)),s.createElement("span",{className:"p-listbox-filter-icon pi pi-search"}));e.filterTemplate&&(l=i.ObjectUtils.getJSXElement(e.filterTemplate,{className:"p-listbox-filter-container",element:l,filterOptions:t,filterInputChange:r,filterIconClassName:"p-dropdown-filter-icon pi pi-search",props:e}));return s.createElement("div",{className:"p-listbox-header"},l)}();return s.createElement(s.Fragment,null,l)}));j.displayName="ListBoxHeader";var x=s.memo((function(e){var t=function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},r=function e(t){var r=t.nextElementSibling;return r?i.DomHandler.hasClass(r,"p-disabled")||i.DomHandler.hasClass(r,"p-listbox-item-group")?e(r):r:null},l=function e(t){var r=t.previousElementSibling;return r?i.DomHandler.hasClass(r,"p-disabled")||i.DomHandler.hasClass(r,"p-listbox-item-group")?e(r):r:null},n=i.classNames("p-listbox-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.option.className),a=e.template?i.ObjectUtils.getJSXElement(e.template,e.option):e.label;return s.createElement("li",{className:n,style:e.style,onClick:t,onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onKeyDown:function(e){var n=e.currentTarget;switch(e.which){case 40:var i=r(n);i&&i.focus(),e.preventDefault();break;case 38:var a=l(n);a&&a.focus(),e.preventDefault();break;case 13:t(e),e.preventDefault()}},tabIndex:"-1","aria-label":e.label,key:e.label,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled},a,s.createElement(u.Ripple,null))}));function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,l)}return r}function D(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){f(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function T(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=w(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var l=0,n=function(){};return{s:n,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,o=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){o=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(o)throw i}}}}function w(e,t){if(e){if("string"==typeof e)return C(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?C(e,t):void 0}}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,l=new Array(t);r<t;r++)l[r]=e[r];return l}x.displayName="ListBoxItem";var I=s.memo(s.forwardRef((function(e,t){var o,u,c=s.useState(""),f=(u=2,g(o=c)||O(o,u)||v(o,u)||E()),d=f[0],m=f[1],b=s.useRef(null),y=s.useRef(null),S=s.useRef(!1),w=(e.onFilterValueChange?e.filterValue:d)||"",C=w&&w.trim().length>0,N=function(t){var r=t.option;e.disabled||q(r)||(e.multiple?F(t.originalEvent,r):L(t.originalEvent,r),S.current=!1)},P=function(){e.disabled||(S.current=!0)},L=function(t,r){var l=_(r),n=!1,i=null;!S.current&&e.metaKeySelection?l?(t.metaKey||t.ctrlKey)&&(i=null,n=!0):(i=R(r),n=!0):(i=l?null:R(r),n=!0);n&&k(t,i)},F=function(t,r){var l=_(r),n=!1,i=null;if(!S&&e.metaKeySelection){var a=t.metaKey||t.ctrlKey;l?(i=a?K(r):[R(r)],n=!0):(i=[].concat(h(i=a&&e.value||[]),[R(r)]),n=!0)}else i=l?K(r):[].concat(h(e.value||[]),[R(r)]),n=!0;n&&e.onChange({originalEvent:t,value:i,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:i}})},U=function(t){y.current&&y.current.scrollToIndex(0);var r=t.value;e.onFilterValueChange?e.onFilterValueChange({originalEvent:t.originalEvent,value:r}):m(r)},A=function(){m(""),e.onFilter&&e.onFilter({filter:""})},k=function(t,r){e.onChange&&e.onChange({originalEvent:t,value:r,stopPropagation:function(){},preventDefault:function(){},target:{name:e.name,id:e.id,value:r}})},K=function(t){return e.value.filter((function(r){return!i.ObjectUtils.equals(r,R(t),e.dataKey)}))},V=function(){if(null!=e.value&&W){if(!e.optionGroupLabel)return M(e.value,W);for(var t=0;t<W.length;t++){var r=M(e.value,X(W[t]));if(-1!==r)return{group:t,option:r}}}return-1},G=function(){return e.optionValue?null:e.dataKey},M=function(e,t){var r=G();return t.findIndex((function(t){return i.ObjectUtils.equals(e,R(t),r)}))},_=function(t){var r=R(t),l=G();return e.multiple&&e.value?e.value.some((function(e){return i.ObjectUtils.equals(e,r,l)})):i.ObjectUtils.equals(e.value,r,l)},B=function(t){return e.optionLabel?i.ObjectUtils.resolveFieldData(t,e.optionLabel):t&&void 0!==t.label?t.label:t},R=function(t){return e.optionValue?i.ObjectUtils.resolveFieldData(t,e.optionValue):t&&void 0!==t.value?t.value:t},H=function(t){return e.dataKey?i.ObjectUtils.resolveFieldData(t,e.dataKey):B(t)},q=function(t){return e.optionDisabled?i.ObjectUtils.isFunction(e.optionDisabled)?e.optionDisabled(t):i.ObjectUtils.resolveFieldData(t,e.optionDisabled):!(!t||void 0===t.disabled)&&t.disabled},z=function(t){return i.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},J=function(t){return i.ObjectUtils.resolveFieldData(t,e.optionGroupLabel)},X=function(t){return i.ObjectUtils.resolveFieldData(t,e.optionGroupChildren)},$=function(){if(y.current){var e=V();-1!==e&&setTimeout((function(){return y.current.scrollToIndex(e)}),0)}};s.useImperativeHandle(t,(function(){return{props:e,getElement:function(){return b.current},getVirtualScroller:function(){return y.current}}})),l.useMountEffect((function(){$()}));var Y=function(t,r){return X(t).map((function(t,l){var n=B(t),i=l+"_"+H(t),a=q(t),o=a?null:e.tabIndex||0;return s.createElement(x,{key:i,label:n,option:t,style:r,template:e.itemTemplate,selected:_(t),onClick:N,onTouchEnd:P,tabIndex:o,disabled:a})}))},Q=function(t,r){var l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n={height:l.props?l.props.itemSize:void 0};if(e.optionGroupLabel){var a=e.optionGroupTemplate?i.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,r):J(t),o=Y(t,n),u=r+"_"+z(t);return s.createElement(s.Fragment,{key:u},s.createElement("li",{className:"p-listbox-item-group",style:n,role:"group"},a),o)}var c=B(t),p=r+"_"+H(t),f=q(t),d=f?null:e.tabIndex||0;return s.createElement(x,{key:p,label:c,option:t,style:n,template:e.itemTemplate,selected:_(t),onClick:N,onTouchEnd:P,tabIndex:d,disabled:f})},W=function(){if(C){var t=w.trim().toLocaleLowerCase(e.filterLocale),l=e.filterBy?e.filterBy.split(","):[e.optionLabel||"label"];if(e.optionGroupLabel){var n,i=[],a=T(e.options);try{for(a.s();!(n=a.n()).done;){var o=n.value,u=r.FilterService.filter(X(o),l,t,e.filterMatchMode,e.filterLocale);u&&u.length&&i.push(D(D({},o),{items:u}))}}catch(e){a.e(e)}finally{a.f()}return i}return r.FilterService.filter(e.options,l,t,e.filterMatchMode,e.filterLocale)}return e.options}(),Z=i.ObjectUtils.isNotEmpty(e.tooltip),ee=i.ObjectUtils.findDiffKeys(e,I.defaultProps),te=i.classNames("p-listbox p-component",{"p-disabled":e.disabled},e.className),re=i.classNames("p-listbox-list-wrapper",e.listClassName),le=function(){if(e.virtualScrollerOptions){var t=D(D({},e.virtualScrollerOptions),{items:W,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(D(D({},t),{filter:W}))},itemTemplate:function(e,t){return e&&Q(e,t.index,t)},contentTemplate:function(t){var r=i.classNames("p-listbox-list",t.className);return s.createElement("ul",{ref:t.contentRef,className:r,role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},t.children)}});return s.createElement(a.VirtualScroller,p({ref:y},t))}var r=W?W.map(Q):null;return s.createElement("ul",{className:"p-listbox-list",role:"listbox","aria-multiselectable":e.multiple,"aria-labelledby":e["aria-labelledby"],"aria-label":e["aria-label"]},r)}(),ne=e.filter?s.createElement(j,{filter:w,onFilter:U,resetFilter:A,filterTemplate:e.filterTemplate,disabled:e.disabled,filterPlaceholder:e.filterPlaceholder,filterInputProps:e.filterInputProps}):null;return s.createElement(s.Fragment,null,s.createElement("div",p({ref:b,id:e.id,className:te,style:e.style},ee),ne,s.createElement("div",{className:re,style:e.listStyle},le)),Z&&s.createElement(n.Tooltip,p({target:b,content:e.tooltip},e.tooltipOptions)))})));return I.displayName="ListBox",I.defaultProps={__TYPE:"ListBox",id:null,value:null,options:null,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,optionGroupTemplate:null,itemTemplate:null,style:null,listStyle:null,listClassName:null,className:null,virtualScrollerOptions:null,disabled:null,dataKey:null,multiple:!1,metaKeySelection:!1,filter:!1,filterTemplate:null,filterBy:null,filterValue:null,filterMatchMode:"contains",filterPlaceholder:null,filterLocale:void 0,filterInputProps:null,tabIndex:0,tooltip:null,tooltipOptions:null,"aria-label":null,"aria-labelledby":null,onChange:null,onFilterValueChange:null},e.ListBox=I,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.hooks,primereact.tooltip,primereact.utils,primereact.virtualscroller,primereact.inputtext,primereact.ripple);
@@ -277,6 +277,14 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
277
277
  return columnClass;
278
278
  };
279
279
 
280
+ React__namespace.useImperativeHandle(ref, function () {
281
+ return {
282
+ props: props,
283
+ getElement: function getElement() {
284
+ return elementRef.current;
285
+ }
286
+ };
287
+ });
280
288
  hooks.useMountEffect(function () {
281
289
  bindDocumentClickListener();
282
290
  });
@@ -363,6 +371,7 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
363
371
 
364
372
  return /*#__PURE__*/React__namespace.createElement("li", {
365
373
  key: key,
374
+ id: item.id,
366
375
  className: _className2,
367
376
  style: item.style,
368
377
  role: "none"
@@ -378,6 +387,7 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
378
387
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
379
388
  key: submenu.label
380
389
  }, /*#__PURE__*/React__namespace.createElement("li", {
390
+ id: submenu.id,
381
391
  className: className,
382
392
  style: submenu.style,
383
393
  role: "presentation"
@@ -444,6 +454,7 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
444
454
  var panel = createCategoryPanel(category);
445
455
  return /*#__PURE__*/React__namespace.createElement("li", {
446
456
  key: category.label + '_' + index,
457
+ id: category.id,
447
458
  className: className,
448
459
  style: category.style,
449
460
  onMouseEnter: function onMouseEnter(e) {
@@ -467,19 +478,36 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
467
478
 
468
479
  var createMenu = function createMenu() {
469
480
  if (props.model) {
470
- return props.model.map(function (item, index) {
481
+ return /*#__PURE__*/React__namespace.createElement("ul", {
482
+ className: "p-megamenu-root-list",
483
+ role: "menubar"
484
+ }, props.model.map(function (item, index) {
471
485
  return createCategory(item, index);
472
- });
486
+ }));
487
+ }
488
+
489
+ return null;
490
+ };
491
+
492
+ var createStartContent = function createStartContent() {
493
+ if (props.start) {
494
+ var _start = utils.ObjectUtils.getJSXElement(props.start, props);
495
+
496
+ return /*#__PURE__*/React__namespace.createElement("div", {
497
+ className: "p-megamenu-start"
498
+ }, _start);
473
499
  }
474
500
 
475
501
  return null;
476
502
  };
477
503
 
478
- var createCustomContent = function createCustomContent() {
479
- if (props.children) {
504
+ var createEndContent = function createEndContent() {
505
+ if (props.end) {
506
+ var _end = utils.ObjectUtils.getJSXElement(props.end, props);
507
+
480
508
  return /*#__PURE__*/React__namespace.createElement("div", {
481
- className: "p-megamenu-custom"
482
- }, props.children);
509
+ className: "p-megamenu-end"
510
+ }, _end);
483
511
  }
484
512
 
485
513
  return null;
@@ -491,16 +519,14 @@ var MegaMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
491
519
  'p-megamenu-vertical': props.orientation === 'vertical'
492
520
  }, props.className);
493
521
  var menu = createMenu();
494
- var customContent = createCustomContent();
522
+ var start = createStartContent();
523
+ var end = createEndContent();
495
524
  return /*#__PURE__*/React__namespace.createElement("div", _extends({
496
525
  ref: elementRef,
497
526
  id: props.id,
498
527
  className: className,
499
528
  style: props.style
500
- }, otherProps), /*#__PURE__*/React__namespace.createElement("ul", {
501
- className: "p-megamenu-root-list",
502
- role: "menubar"
503
- }, menu), customContent);
529
+ }, otherProps), start, menu, end);
504
530
  }));
505
531
  MegaMenu.displayName = 'MegaMenu';
506
532
  MegaMenu.defaultProps = {
@@ -509,7 +535,9 @@ MegaMenu.defaultProps = {
509
535
  model: null,
510
536
  style: null,
511
537
  className: null,
512
- orientation: 'horizontal'
538
+ orientation: 'horizontal',
539
+ start: null,
540
+ end: null
513
541
  };
514
542
 
515
543
  exports.MegaMenu = MegaMenu;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/hooks"),a=require("primereact/ripple"),r=require("primereact/utils");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var u=i(e),s=l(t);function m(){return m=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},m.apply(this,arguments)}function c(e){if(Array.isArray(e))return e}function o(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,l=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(a=n.next()).done)&&(l.push(a.value),!t||l.length!==t);i=!0);}catch(e){u=!0,r=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw r}}return l}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function f(e,t){if(e){if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}function d(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e,t){return c(e)||o(e,t)||f(e,t)||d()}var b=u.memo(u.forwardRef((function(e,t){var l=v(u.useState(null),2),i=l[0],c=l[1],o=u.useRef(null),p="horizontal"===e.orientation,f="vertical"===e.orientation,d=v(n.useEventListener({type:"click",listener:function(e){O(e)&&c(null)}}),1)[0],g=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),c(null))},y=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:p?h(t):D(n),e.preventDefault();break;case 38:f?j(n):t.items&&t===i&&N(),e.preventDefault();break;case 39:p?D(n):h(t),e.preventDefault();break;case 37:p?j(n):t.items&&t===i&&N(),e.preventDefault()}},h=function(e){e.items&&c(e)},N=function(e){c(null)},E=function e(t){var n=t.nextElementSibling;return n?r.DomHandler.hasClass(n,"p-disabled")||!r.DomHandler.hasClass(n,"p-menuitem")?e(n):n:null},k=function e(t){var n=t.previousElementSibling;return n?r.DomHandler.hasClass(n,"p-disabled")||!r.DomHandler.hasClass(n,"p-menuitem")?e(n):n:null},D=function(e){var t=E(e);t&&t.children[0].focus()},j=function(e){var t=k(e);t&&t.children[0].focus()},O=function(e){return o.current&&!(o.current.isSameNode(e.target)||o.current.contains(e.target))},S=function(e){var t;switch(e.items?e.items.length:0){case 2:t="p-megamenu-col-6";break;case 3:t="p-megamenu-col-4";break;case 4:t="p-megamenu-col-3";break;case 6:t="p-megamenu-col-2";break;default:t="p-megamenu-col-12"}return t};n.useMountEffect((function(){d()})),n.useUpdateEffect((function(){var e=r.DomHandler.findSingle(o.current,".p-menuitem-active > .p-megamenu-panel");return i&&r.ZIndexUtils.set("menu",e,s.default.autoZIndex,s.default.zIndex.menu),function(){r.ZIndexUtils.clear(e)}}),[i]);var w=function(e){return u.createElement("li",{key:"separator_"+e,className:"p-menu-separator",role:"separator"})},x=function(e){if(e.items){var t=r.classNames("p-submenu-icon pi",{"pi-angle-down":p,"pi-angle-right":f});return u.createElement("span",{className:t})}return null},I=function(t,n){if(t.separator)return w(n);var l=t.label+"_"+n,i=r.classNames("p-menuitem",t.className),s=r.classNames("p-menuitem-link",{"p-disabled":t.disabled}),m=r.classNames(t.icon,"p-menuitem-icon"),c=r.IconUtils.getJSXIcon(t.icon,{className:"p-menuitem-icon"},{props:e}),o=u.createElement("a",{href:t.url||"#",className:s,target:t.target,onClick:function(e){return g(e,t)},role:"menuitem","aria-disabled":t.disabled},c,t.label&&u.createElement("span",{className:"p-menuitem-text"},t.label),u.createElement(a.Ripple,null));return t.template&&(o=r.ObjectUtils.getJSXElement(t.template,t,{onClick:function(e){return g(e,t)},className:s,labelClassName:"p-menuitem-text",iconClassName:m,element:o,props:e})),u.createElement("li",{key:l,className:i,style:t.style,role:"none"},o)},M=function(e){var t=r.classNames("p-megamenu-submenu-header",{"p-disabled":e.disabled},e.className),n=e.items.map(I);return u.createElement(u.Fragment,{key:e.label},u.createElement("li",{className:t,style:e.style,role:"presentation"},e.label),n)},_=function(e){return e.map(M)},C=function(e,t,n,a){var r=e.label+"_column_"+n,l=_(t);return u.createElement("div",{key:r,className:a},u.createElement("ul",{className:"p-megamenu-submenu",role:"menu"},l))},U=function(e){if(e.items){var t=S(e);return e.items.map((function(n,a){return C(e,n,a,t)}))}return null},P=function(e){if(e.items){var t=U(e);return u.createElement("div",{className:"p-megamenu-panel"},u.createElement("div",{className:"p-megamenu-grid"},t))}return null},z=function(t,n){var l=r.classNames("p-menuitem",{"p-menuitem-active":t===i},t.className),s=r.classNames("p-menuitem-link",{"p-disabled":t.disabled}),m=r.IconUtils.getJSXIcon(t.icon,{className:"p-menuitem-icon"},{props:e}),o=t.label&&u.createElement("span",{className:"p-menuitem-text"},t.label),p=t.template?r.ObjectUtils.getJSXElement(t.template,t):null,f=x(t),d=P(t);return u.createElement("li",{key:t.label+"_"+n,className:l,style:t.style,onMouseEnter:function(e){return n=e,void((a=t).disabled?n.preventDefault():i&&c(a));var n,a},role:"none"},u.createElement("a",{href:t.url||"#",className:s,target:t.target,onClick:function(n){return a=n,(r=t).disabled||(r.url||a.preventDefault(),r.command&&r.command({originalEvent:a,item:e.item}),r.items&&c(i&&i===r?null:r)),void a.preventDefault();var a,r},onKeyDown:function(e){return y(e,t)},role:"menuitem","aria-haspopup":null!=t.items},m,o,p,f,u.createElement(a.Ripple,null)),d)},A=r.ObjectUtils.findDiffKeys(e,b.defaultProps),q=r.classNames("p-megamenu p-component",{"p-megamenu-horizontal":"horizontal"===e.orientation,"p-megamenu-vertical":"vertical"===e.orientation},e.className),H=e.model?e.model.map((function(e,t){return z(e,t)})):null,J=e.children?u.createElement("div",{className:"p-megamenu-custom"},e.children):null;return u.createElement("div",m({ref:o,id:e.id,className:q,style:e.style},A),u.createElement("ul",{className:"p-megamenu-root-list",role:"menubar"},H),J)})));b.displayName="MegaMenu",b.defaultProps={__TYPE:"MegaMenu",id:null,model:null,style:null,className:null,orientation:"horizontal"},exports.MegaMenu=b;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/hooks"),r=require("primereact/ripple"),a=require("primereact/utils");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var u=i(e),s=l(t);function m(){return m=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},m.apply(this,arguments)}function c(e){if(Array.isArray(e))return e}function o(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,l=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(l.push(r.value),!t||l.length!==t);i=!0);}catch(e){u=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw a}}return l}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function f(e,t){if(e){if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}function d(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(e,t){return c(e)||o(e,t)||f(e,t)||d()}var b=u.memo(u.forwardRef((function(e,t){var l=v(u.useState(null),2),i=l[0],c=l[1],o=u.useRef(null),p="horizontal"===e.orientation,f="vertical"===e.orientation,d=v(n.useEventListener({type:"click",listener:function(e){O(e)&&c(null)}}),1)[0],g=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),c(null))},y=function(e,t){var n=e.currentTarget.parentElement;switch(e.which){case 40:p?E(t):j(n),e.preventDefault();break;case 38:f?D(n):t.items&&t===i&&N(),e.preventDefault();break;case 39:p?j(n):E(t),e.preventDefault();break;case 37:p?D(n):t.items&&t===i&&N(),e.preventDefault()}},E=function(e){e.items&&c(e)},N=function(e){c(null)},h=function e(t){var n=t.nextElementSibling;return n?a.DomHandler.hasClass(n,"p-disabled")||!a.DomHandler.hasClass(n,"p-menuitem")?e(n):n:null},k=function e(t){var n=t.previousElementSibling;return n?a.DomHandler.hasClass(n,"p-disabled")||!a.DomHandler.hasClass(n,"p-menuitem")?e(n):n:null},j=function(e){var t=h(e);t&&t.children[0].focus()},D=function(e){var t=k(e);t&&t.children[0].focus()},O=function(e){return o.current&&!(o.current.isSameNode(e.target)||o.current.contains(e.target))},S=function(e){var t;switch(e.items?e.items.length:0){case 2:t="p-megamenu-col-6";break;case 3:t="p-megamenu-col-4";break;case 4:t="p-megamenu-col-3";break;case 6:t="p-megamenu-col-2";break;default:t="p-megamenu-col-12"}return t};u.useImperativeHandle(t,(function(){return{props:e,getElement:function(){return o.current}}})),n.useMountEffect((function(){d()})),n.useUpdateEffect((function(){var e=a.DomHandler.findSingle(o.current,".p-menuitem-active > .p-megamenu-panel");return i&&a.ZIndexUtils.set("menu",e,s.default.autoZIndex,s.default.zIndex.menu),function(){a.ZIndexUtils.clear(e)}}),[i]);var w=function(e){return u.createElement("li",{key:"separator_"+e,className:"p-menu-separator",role:"separator"})},I=function(e){if(e.items){var t=a.classNames("p-submenu-icon pi",{"pi-angle-down":p,"pi-angle-right":f});return u.createElement("span",{className:t})}return null},x=function(t,n){if(t.separator)return w(n);var l=t.label+"_"+n,i=a.classNames("p-menuitem",t.className),s=a.classNames("p-menuitem-link",{"p-disabled":t.disabled}),m=a.classNames(t.icon,"p-menuitem-icon"),c=a.IconUtils.getJSXIcon(t.icon,{className:"p-menuitem-icon"},{props:e}),o=u.createElement("a",{href:t.url||"#",className:s,target:t.target,onClick:function(e){return g(e,t)},role:"menuitem","aria-disabled":t.disabled},c,t.label&&u.createElement("span",{className:"p-menuitem-text"},t.label),u.createElement(r.Ripple,null));return t.template&&(o=a.ObjectUtils.getJSXElement(t.template,t,{onClick:function(e){return g(e,t)},className:s,labelClassName:"p-menuitem-text",iconClassName:m,element:o,props:e})),u.createElement("li",{key:l,id:t.id,className:i,style:t.style,role:"none"},o)},M=function(e){var t=a.classNames("p-megamenu-submenu-header",{"p-disabled":e.disabled},e.className),n=e.items.map(x);return u.createElement(u.Fragment,{key:e.label},u.createElement("li",{id:e.id,className:t,style:e.style,role:"presentation"},e.label),n)},U=function(e){return e.map(M)},_=function(e,t,n,r){var a=e.label+"_column_"+n,l=U(t);return u.createElement("div",{key:a,className:r},u.createElement("ul",{className:"p-megamenu-submenu",role:"menu"},l))},C=function(e){if(e.items){var t=S(e);return e.items.map((function(n,r){return _(e,n,r,t)}))}return null},P=function(e){if(e.items){var t=C(e);return u.createElement("div",{className:"p-megamenu-panel"},u.createElement("div",{className:"p-megamenu-grid"},t))}return null},z=function(t,n){var l=a.classNames("p-menuitem",{"p-menuitem-active":t===i},t.className),s=a.classNames("p-menuitem-link",{"p-disabled":t.disabled}),m=a.IconUtils.getJSXIcon(t.icon,{className:"p-menuitem-icon"},{props:e}),o=t.label&&u.createElement("span",{className:"p-menuitem-text"},t.label),p=t.template?a.ObjectUtils.getJSXElement(t.template,t):null,f=I(t),d=P(t);return u.createElement("li",{key:t.label+"_"+n,id:t.id,className:l,style:t.style,onMouseEnter:function(e){return n=e,void((r=t).disabled?n.preventDefault():i&&c(r));var n,r},role:"none"},u.createElement("a",{href:t.url||"#",className:s,target:t.target,onClick:function(n){return r=n,(a=t).disabled||(a.url||r.preventDefault(),a.command&&a.command({originalEvent:r,item:e.item}),a.items&&c(i&&i===a?null:a)),void r.preventDefault();var r,a},onKeyDown:function(e){return y(e,t)},role:"menuitem","aria-haspopup":null!=t.items},m,o,p,f,u.createElement(r.Ripple,null)),d)},A=a.ObjectUtils.findDiffKeys(e,b.defaultProps),H=a.classNames("p-megamenu p-component",{"p-megamenu-horizontal":"horizontal"===e.orientation,"p-megamenu-vertical":"vertical"===e.orientation},e.className),J=e.model?u.createElement("ul",{className:"p-megamenu-root-list",role:"menubar"},e.model.map((function(e,t){return z(e,t)}))):null,X=function(){if(e.start){var t=a.ObjectUtils.getJSXElement(e.start,e);return u.createElement("div",{className:"p-megamenu-start"},t)}return null}(),q=function(){if(e.end){var t=a.ObjectUtils.getJSXElement(e.end,e);return u.createElement("div",{className:"p-megamenu-end"},t)}return null}();return u.createElement("div",m({ref:o,id:e.id,className:H,style:e.style},A),X,J,q)})));b.displayName="MegaMenu",b.defaultProps={__TYPE:"MegaMenu",id:null,model:null,style:null,className:null,orientation:"horizontal",start:null,end:null},exports.MegaMenu=b;
@@ -3,13 +3,19 @@ import { MenuItem } from '../menuitem';
3
3
 
4
4
  type MegaMenuOrientationType = 'vertical' | 'horizontal';
5
5
 
6
- export interface MegaMenuProps {
7
- id?: string;
6
+ type MegaMenuStartTemplate = React.ReactNode | ((props: MegaMenuProps) => React.ReactNode);
7
+
8
+ type MegaMenuEndTemplate = React.ReactNode | ((props: MegaMenuProps) => React.ReactNode);
9
+
10
+
11
+ export interface MegaMenuProps extends Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, 'ref'> {
8
12
  model?: MenuItem[];
9
- style?: object;
10
- className?: string;
11
13
  orientation?: MegaMenuOrientationType;
14
+ start?: MegaMenuStartTemplate;
15
+ end?: MegaMenuEndTemplate;
12
16
  children?: React.ReactNode;
13
17
  }
14
18
 
15
- export declare class MegaMenu extends React.Component<MegaMenuProps, any> { }
19
+ export declare class MegaMenu extends React.Component<MegaMenuProps, any> {
20
+ public getElement(): HTMLDivElement;
21
+ }