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