primereact 10.2.1 → 10.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (654) hide show
  1. package/accordion/accordion.cjs.js +83 -8
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.d.ts +35 -0
  4. package/accordion/accordion.esm.js +85 -10
  5. package/accordion/accordion.esm.min.js +1 -1
  6. package/accordion/accordion.js +83 -8
  7. package/accordion/accordion.min.js +1 -1
  8. package/api/api.cjs.js +63 -33
  9. package/api/api.cjs.min.js +1 -1
  10. package/api/api.d.ts +24 -246
  11. package/api/api.esm.js +63 -33
  12. package/api/api.esm.min.js +1 -1
  13. package/api/api.js +63 -33
  14. package/api/api.min.js +1 -1
  15. package/autocomplete/autocomplete.cjs.js +3 -2
  16. package/autocomplete/autocomplete.cjs.min.js +1 -1
  17. package/autocomplete/autocomplete.d.ts +6 -1
  18. package/autocomplete/autocomplete.esm.js +3 -2
  19. package/autocomplete/autocomplete.esm.min.js +1 -1
  20. package/autocomplete/autocomplete.js +3 -2
  21. package/autocomplete/autocomplete.min.js +1 -1
  22. package/blockui/blockui.cjs.js +8 -5
  23. package/blockui/blockui.cjs.min.js +1 -1
  24. package/blockui/blockui.esm.js +8 -5
  25. package/blockui/blockui.esm.min.js +1 -1
  26. package/blockui/blockui.js +8 -5
  27. package/blockui/blockui.min.js +1 -1
  28. package/breadcrumb/breadcrumb.cjs.js +12 -6
  29. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  30. package/breadcrumb/breadcrumb.esm.js +12 -6
  31. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  32. package/breadcrumb/breadcrumb.js +12 -6
  33. package/breadcrumb/breadcrumb.min.js +1 -1
  34. package/calendar/calendar.cjs.js +71 -37
  35. package/calendar/calendar.cjs.min.js +1 -1
  36. package/calendar/calendar.d.ts +3 -5
  37. package/calendar/calendar.esm.js +71 -37
  38. package/calendar/calendar.esm.min.js +1 -1
  39. package/calendar/calendar.js +71 -37
  40. package/calendar/calendar.min.js +1 -1
  41. package/carousel/carousel.cjs.js +103 -9
  42. package/carousel/carousel.cjs.min.js +1 -1
  43. package/carousel/carousel.esm.js +104 -10
  44. package/carousel/carousel.esm.min.js +1 -1
  45. package/carousel/carousel.js +103 -9
  46. package/carousel/carousel.min.js +1 -1
  47. package/cascadeselect/cascadeselect.cjs.js +64 -23
  48. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  49. package/cascadeselect/cascadeselect.d.ts +27 -4
  50. package/cascadeselect/cascadeselect.esm.js +65 -24
  51. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  52. package/cascadeselect/cascadeselect.js +65 -25
  53. package/cascadeselect/cascadeselect.min.js +1 -1
  54. package/checkbox/checkbox.cjs.js +25 -25
  55. package/checkbox/checkbox.cjs.min.js +1 -1
  56. package/checkbox/checkbox.esm.js +25 -25
  57. package/checkbox/checkbox.esm.min.js +1 -1
  58. package/checkbox/checkbox.js +26 -26
  59. package/checkbox/checkbox.min.js +1 -1
  60. package/chip/chip.cjs.js +5 -2
  61. package/chip/chip.cjs.min.js +1 -1
  62. package/chip/chip.d.ts +17 -2
  63. package/chip/chip.esm.js +5 -2
  64. package/chip/chip.esm.min.js +1 -1
  65. package/chip/chip.js +5 -2
  66. package/chip/chip.min.js +1 -1
  67. package/colorpicker/colorpicker.d.ts +1 -1
  68. package/componentbase/componentbase.cjs.js +49 -8
  69. package/componentbase/componentbase.cjs.min.js +1 -1
  70. package/componentbase/componentbase.esm.js +50 -9
  71. package/componentbase/componentbase.esm.min.js +1 -1
  72. package/componentbase/componentbase.js +49 -8
  73. package/componentbase/componentbase.min.js +1 -1
  74. package/confirmdialog/confirmdialog.cjs.js +30 -22
  75. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  76. package/confirmdialog/confirmdialog.d.ts +19 -3
  77. package/confirmdialog/confirmdialog.esm.js +30 -22
  78. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  79. package/confirmdialog/confirmdialog.js +30 -22
  80. package/confirmdialog/confirmdialog.min.js +1 -1
  81. package/confirmpopup/confirmpopup.cjs.js +85 -152
  82. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  83. package/confirmpopup/confirmpopup.d.ts +40 -1
  84. package/confirmpopup/confirmpopup.esm.js +88 -155
  85. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  86. package/confirmpopup/confirmpopup.js +85 -152
  87. package/confirmpopup/confirmpopup.min.js +1 -1
  88. package/contextmenu/contextmenu.cjs.js +641 -99
  89. package/contextmenu/contextmenu.cjs.min.js +1 -1
  90. package/contextmenu/contextmenu.d.ts +23 -1
  91. package/contextmenu/contextmenu.esm.js +641 -99
  92. package/contextmenu/contextmenu.esm.min.js +1 -1
  93. package/contextmenu/contextmenu.js +641 -99
  94. package/contextmenu/contextmenu.min.js +1 -1
  95. package/core/core.js +1217 -484
  96. package/core/core.min.js +40 -40
  97. package/datatable/datatable.cjs.js +30 -26
  98. package/datatable/datatable.cjs.min.js +1 -1
  99. package/datatable/datatable.d.ts +5 -4
  100. package/datatable/datatable.esm.js +30 -26
  101. package/datatable/datatable.esm.min.js +1 -1
  102. package/datatable/datatable.js +30 -26
  103. package/datatable/datatable.min.js +1 -1
  104. package/dataview/dataview.d.ts +1 -1
  105. package/dialog/dialog.cjs.js +108 -151
  106. package/dialog/dialog.cjs.min.js +1 -1
  107. package/dialog/dialog.d.ts +60 -1
  108. package/dialog/dialog.esm.js +115 -158
  109. package/dialog/dialog.esm.min.js +1 -1
  110. package/dialog/dialog.js +109 -152
  111. package/dialog/dialog.min.js +1 -1
  112. package/divider/divider.cjs.js +1 -0
  113. package/divider/divider.cjs.min.js +1 -1
  114. package/divider/divider.esm.js +1 -0
  115. package/divider/divider.esm.min.js +1 -1
  116. package/divider/divider.js +1 -0
  117. package/divider/divider.min.js +1 -1
  118. package/dock/dock.cjs.js +169 -33
  119. package/dock/dock.cjs.min.js +1 -1
  120. package/dock/dock.d.ts +15 -0
  121. package/dock/dock.esm.js +170 -34
  122. package/dock/dock.esm.min.js +1 -1
  123. package/dock/dock.js +169 -33
  124. package/dock/dock.min.js +1 -1
  125. package/dropdown/dropdown.cjs.js +29 -4
  126. package/dropdown/dropdown.cjs.min.js +1 -1
  127. package/dropdown/dropdown.d.ts +1 -1
  128. package/dropdown/dropdown.esm.js +29 -4
  129. package/dropdown/dropdown.esm.min.js +1 -1
  130. package/dropdown/dropdown.js +30 -6
  131. package/dropdown/dropdown.min.js +1 -1
  132. package/fieldset/fieldset.cjs.js +12 -5
  133. package/fieldset/fieldset.cjs.min.js +1 -1
  134. package/fieldset/fieldset.esm.js +12 -5
  135. package/fieldset/fieldset.esm.min.js +1 -1
  136. package/fieldset/fieldset.js +12 -5
  137. package/fieldset/fieldset.min.js +1 -1
  138. package/fileupload/fileupload.cjs.js +14 -6
  139. package/fileupload/fileupload.cjs.min.js +1 -1
  140. package/fileupload/fileupload.d.ts +17 -1
  141. package/fileupload/fileupload.esm.js +14 -6
  142. package/fileupload/fileupload.esm.min.js +1 -1
  143. package/fileupload/fileupload.js +14 -6
  144. package/fileupload/fileupload.min.js +1 -1
  145. package/galleria/galleria.cjs.js +223 -43
  146. package/galleria/galleria.cjs.min.js +1 -1
  147. package/galleria/galleria.esm.js +225 -45
  148. package/galleria/galleria.esm.min.js +1 -1
  149. package/galleria/galleria.js +223 -43
  150. package/galleria/galleria.min.js +1 -1
  151. package/hooks/hooks.cjs.js +219 -78
  152. package/hooks/hooks.cjs.min.js +1 -1
  153. package/hooks/hooks.d.ts +8 -4
  154. package/hooks/hooks.esm.js +219 -80
  155. package/hooks/hooks.esm.min.js +1 -1
  156. package/hooks/hooks.js +219 -78
  157. package/hooks/hooks.min.js +1 -1
  158. package/icons/arrowdown/index.cjs.js +13 -2
  159. package/icons/arrowdown/index.cjs.min.js +1 -1
  160. package/icons/arrowdown/index.esm.js +13 -2
  161. package/icons/arrowdown/index.esm.min.js +1 -1
  162. package/icons/arrowdown/index.js +13 -2
  163. package/icons/arrowdown/index.min.js +1 -1
  164. package/icons/arrowup/index.cjs.js +13 -2
  165. package/icons/arrowup/index.cjs.min.js +1 -1
  166. package/icons/arrowup/index.esm.js +13 -2
  167. package/icons/arrowup/index.esm.min.js +1 -1
  168. package/icons/arrowup/index.js +13 -2
  169. package/icons/arrowup/index.min.js +1 -1
  170. package/icons/ban/index.cjs.js +13 -2
  171. package/icons/ban/index.cjs.min.js +1 -1
  172. package/icons/ban/index.esm.js +13 -2
  173. package/icons/ban/index.esm.min.js +1 -1
  174. package/icons/ban/index.js +13 -2
  175. package/icons/ban/index.min.js +1 -1
  176. package/icons/download/index.cjs.js +13 -2
  177. package/icons/download/index.cjs.min.js +1 -1
  178. package/icons/download/index.esm.js +13 -2
  179. package/icons/download/index.esm.min.js +1 -1
  180. package/icons/download/index.js +13 -2
  181. package/icons/download/index.min.js +1 -1
  182. package/icons/exclamationtriangle/index.cjs.js +13 -2
  183. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  184. package/icons/exclamationtriangle/index.esm.js +13 -2
  185. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  186. package/icons/exclamationtriangle/index.js +13 -2
  187. package/icons/exclamationtriangle/index.min.js +1 -1
  188. package/icons/eyeslash/index.cjs.js +13 -2
  189. package/icons/eyeslash/index.cjs.min.js +1 -1
  190. package/icons/eyeslash/index.esm.js +13 -2
  191. package/icons/eyeslash/index.esm.min.js +1 -1
  192. package/icons/eyeslash/index.js +13 -2
  193. package/icons/eyeslash/index.min.js +1 -1
  194. package/icons/filter/index.cjs.js +13 -2
  195. package/icons/filter/index.cjs.min.js +1 -1
  196. package/icons/filter/index.esm.js +13 -2
  197. package/icons/filter/index.esm.min.js +1 -1
  198. package/icons/filter/index.js +13 -2
  199. package/icons/filter/index.min.js +1 -1
  200. package/icons/filterslash/index.cjs.js +13 -2
  201. package/icons/filterslash/index.cjs.min.js +1 -1
  202. package/icons/filterslash/index.esm.js +13 -2
  203. package/icons/filterslash/index.esm.min.js +1 -1
  204. package/icons/filterslash/index.js +13 -2
  205. package/icons/filterslash/index.min.js +1 -1
  206. package/icons/infocircle/index.cjs.js +13 -2
  207. package/icons/infocircle/index.cjs.min.js +1 -1
  208. package/icons/infocircle/index.esm.js +13 -2
  209. package/icons/infocircle/index.esm.min.js +1 -1
  210. package/icons/infocircle/index.js +13 -2
  211. package/icons/infocircle/index.min.js +1 -1
  212. package/icons/pencil/index.cjs.js +13 -2
  213. package/icons/pencil/index.cjs.min.js +1 -1
  214. package/icons/pencil/index.esm.js +13 -2
  215. package/icons/pencil/index.esm.min.js +1 -1
  216. package/icons/pencil/index.js +13 -2
  217. package/icons/pencil/index.min.js +1 -1
  218. package/icons/plus/index.cjs.js +13 -2
  219. package/icons/plus/index.cjs.min.js +1 -1
  220. package/icons/plus/index.esm.js +13 -2
  221. package/icons/plus/index.esm.min.js +1 -1
  222. package/icons/plus/index.js +13 -2
  223. package/icons/plus/index.min.js +1 -1
  224. package/icons/refresh/index.cjs.js +13 -2
  225. package/icons/refresh/index.cjs.min.js +1 -1
  226. package/icons/refresh/index.esm.js +13 -2
  227. package/icons/refresh/index.esm.min.js +1 -1
  228. package/icons/refresh/index.js +13 -2
  229. package/icons/refresh/index.min.js +1 -1
  230. package/icons/search/index.cjs.js +13 -2
  231. package/icons/search/index.cjs.min.js +1 -1
  232. package/icons/search/index.esm.js +13 -2
  233. package/icons/search/index.esm.min.js +1 -1
  234. package/icons/search/index.js +13 -2
  235. package/icons/search/index.min.js +1 -1
  236. package/icons/searchminus/index.cjs.js +13 -2
  237. package/icons/searchminus/index.cjs.min.js +1 -1
  238. package/icons/searchminus/index.esm.js +13 -2
  239. package/icons/searchminus/index.esm.min.js +1 -1
  240. package/icons/searchminus/index.js +13 -2
  241. package/icons/searchminus/index.min.js +1 -1
  242. package/icons/searchplus/index.cjs.js +13 -2
  243. package/icons/searchplus/index.cjs.min.js +1 -1
  244. package/icons/searchplus/index.esm.js +13 -2
  245. package/icons/searchplus/index.esm.min.js +1 -1
  246. package/icons/searchplus/index.js +13 -2
  247. package/icons/searchplus/index.min.js +1 -1
  248. package/icons/sortalt/index.cjs.js +13 -2
  249. package/icons/sortalt/index.cjs.min.js +1 -1
  250. package/icons/sortalt/index.esm.js +13 -2
  251. package/icons/sortalt/index.esm.min.js +1 -1
  252. package/icons/sortalt/index.js +13 -2
  253. package/icons/sortalt/index.min.js +1 -1
  254. package/icons/sortamountdown/index.cjs.js +13 -2
  255. package/icons/sortamountdown/index.cjs.min.js +1 -1
  256. package/icons/sortamountdown/index.esm.js +13 -2
  257. package/icons/sortamountdown/index.esm.min.js +1 -1
  258. package/icons/sortamountdown/index.js +13 -2
  259. package/icons/sortamountdown/index.min.js +1 -1
  260. package/icons/sortamountupalt/index.cjs.js +13 -2
  261. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  262. package/icons/sortamountupalt/index.esm.js +13 -2
  263. package/icons/sortamountupalt/index.esm.min.js +1 -1
  264. package/icons/sortamountupalt/index.js +13 -2
  265. package/icons/sortamountupalt/index.min.js +1 -1
  266. package/icons/spinner/index.cjs.js +13 -2
  267. package/icons/spinner/index.cjs.min.js +1 -1
  268. package/icons/spinner/index.esm.js +13 -2
  269. package/icons/spinner/index.esm.min.js +1 -1
  270. package/icons/spinner/index.js +13 -2
  271. package/icons/spinner/index.min.js +1 -1
  272. package/icons/star/index.cjs.js +13 -2
  273. package/icons/star/index.cjs.min.js +1 -1
  274. package/icons/star/index.esm.js +13 -2
  275. package/icons/star/index.esm.min.js +1 -1
  276. package/icons/star/index.js +13 -2
  277. package/icons/star/index.min.js +1 -1
  278. package/icons/starfill/index.cjs.js +13 -2
  279. package/icons/starfill/index.cjs.min.js +1 -1
  280. package/icons/starfill/index.esm.js +13 -2
  281. package/icons/starfill/index.esm.min.js +1 -1
  282. package/icons/starfill/index.js +13 -2
  283. package/icons/starfill/index.min.js +1 -1
  284. package/icons/thlarge/index.cjs.js +13 -2
  285. package/icons/thlarge/index.cjs.min.js +1 -1
  286. package/icons/thlarge/index.esm.js +13 -2
  287. package/icons/thlarge/index.esm.min.js +1 -1
  288. package/icons/thlarge/index.js +13 -2
  289. package/icons/thlarge/index.min.js +1 -1
  290. package/icons/timescircle/index.cjs.js +13 -2
  291. package/icons/timescircle/index.cjs.min.js +1 -1
  292. package/icons/timescircle/index.esm.js +13 -2
  293. package/icons/timescircle/index.esm.min.js +1 -1
  294. package/icons/timescircle/index.js +13 -2
  295. package/icons/timescircle/index.min.js +1 -1
  296. package/icons/trash/index.cjs.js +13 -2
  297. package/icons/trash/index.cjs.min.js +1 -1
  298. package/icons/trash/index.esm.js +13 -2
  299. package/icons/trash/index.esm.min.js +1 -1
  300. package/icons/trash/index.js +13 -2
  301. package/icons/trash/index.min.js +1 -1
  302. package/icons/undo/index.cjs.js +13 -2
  303. package/icons/undo/index.cjs.min.js +1 -1
  304. package/icons/undo/index.esm.js +13 -2
  305. package/icons/undo/index.esm.min.js +1 -1
  306. package/icons/undo/index.js +13 -2
  307. package/icons/undo/index.min.js +1 -1
  308. package/icons/upload/index.cjs.js +13 -2
  309. package/icons/upload/index.cjs.min.js +1 -1
  310. package/icons/upload/index.esm.js +13 -2
  311. package/icons/upload/index.esm.min.js +1 -1
  312. package/icons/upload/index.js +13 -2
  313. package/icons/upload/index.min.js +1 -1
  314. package/icons/windowmaximize/index.cjs.js +13 -2
  315. package/icons/windowmaximize/index.cjs.min.js +1 -1
  316. package/icons/windowmaximize/index.esm.js +13 -2
  317. package/icons/windowmaximize/index.esm.min.js +1 -1
  318. package/icons/windowmaximize/index.js +13 -2
  319. package/icons/windowmaximize/index.min.js +1 -1
  320. package/icons/windowminimize/index.cjs.js +13 -2
  321. package/icons/windowminimize/index.cjs.min.js +1 -1
  322. package/icons/windowminimize/index.esm.js +13 -2
  323. package/icons/windowminimize/index.esm.min.js +1 -1
  324. package/icons/windowminimize/index.js +13 -2
  325. package/icons/windowminimize/index.min.js +1 -1
  326. package/image/image.cjs.js +85 -119
  327. package/image/image.cjs.min.js +1 -1
  328. package/image/image.esm.js +87 -121
  329. package/image/image.esm.min.js +1 -1
  330. package/image/image.js +86 -120
  331. package/image/image.min.js +1 -1
  332. package/inplace/inplace.cjs.js +7 -0
  333. package/inplace/inplace.cjs.min.js +1 -1
  334. package/inplace/inplace.esm.js +7 -0
  335. package/inplace/inplace.esm.min.js +1 -1
  336. package/inplace/inplace.js +8 -2
  337. package/inplace/inplace.min.js +1 -1
  338. package/inputnumber/inputnumber.cjs.js +63 -19
  339. package/inputnumber/inputnumber.cjs.min.js +1 -1
  340. package/inputnumber/inputnumber.d.ts +7 -0
  341. package/inputnumber/inputnumber.esm.js +63 -19
  342. package/inputnumber/inputnumber.esm.min.js +1 -1
  343. package/inputnumber/inputnumber.js +63 -19
  344. package/inputnumber/inputnumber.min.js +1 -1
  345. package/inputswitch/inputswitch.cjs.js +3 -3
  346. package/inputswitch/inputswitch.cjs.min.js +1 -1
  347. package/inputswitch/inputswitch.esm.js +3 -3
  348. package/inputswitch/inputswitch.esm.min.js +1 -1
  349. package/inputswitch/inputswitch.js +3 -3
  350. package/inputswitch/inputswitch.min.js +1 -1
  351. package/inputtext/inputtext.cjs.js +7 -6
  352. package/inputtext/inputtext.cjs.min.js +1 -1
  353. package/inputtext/inputtext.esm.js +7 -6
  354. package/inputtext/inputtext.esm.min.js +1 -1
  355. package/inputtext/inputtext.js +7 -6
  356. package/inputtext/inputtext.min.js +1 -1
  357. package/listbox/listbox.cjs.js +14 -1
  358. package/listbox/listbox.cjs.min.js +1 -1
  359. package/listbox/listbox.d.ts +8 -3
  360. package/listbox/listbox.esm.js +14 -1
  361. package/listbox/listbox.esm.min.js +1 -1
  362. package/listbox/listbox.js +14 -1
  363. package/listbox/listbox.min.js +1 -1
  364. package/megamenu/megamenu.cjs.js +799 -179
  365. package/megamenu/megamenu.cjs.min.js +1 -1
  366. package/megamenu/megamenu.d.ts +14 -0
  367. package/megamenu/megamenu.esm.js +801 -181
  368. package/megamenu/megamenu.esm.min.js +1 -1
  369. package/megamenu/megamenu.js +799 -179
  370. package/megamenu/megamenu.min.js +1 -1
  371. package/mention/mention.cjs.js +7 -9
  372. package/mention/mention.cjs.min.js +1 -1
  373. package/mention/mention.esm.js +7 -9
  374. package/mention/mention.esm.min.js +1 -1
  375. package/mention/mention.js +7 -9
  376. package/mention/mention.min.js +1 -1
  377. package/menu/menu.cjs.js +217 -166
  378. package/menu/menu.cjs.min.js +1 -1
  379. package/menu/menu.d.ts +15 -1
  380. package/menu/menu.esm.js +220 -169
  381. package/menu/menu.esm.min.js +1 -1
  382. package/menu/menu.js +217 -166
  383. package/menu/menu.min.js +1 -1
  384. package/menubar/menubar.cjs.js +714 -179
  385. package/menubar/menubar.cjs.min.js +1 -1
  386. package/menubar/menubar.d.ts +18 -0
  387. package/menubar/menubar.esm.js +717 -182
  388. package/menubar/menubar.esm.min.js +1 -1
  389. package/menubar/menubar.js +714 -179
  390. package/menubar/menubar.min.js +1 -1
  391. package/message/message.cjs.js +2 -1
  392. package/message/message.cjs.min.js +1 -1
  393. package/message/message.esm.js +2 -1
  394. package/message/message.esm.min.js +1 -1
  395. package/message/message.js +2 -1
  396. package/message/message.min.js +1 -1
  397. package/messages/messages.cjs.js +5 -3
  398. package/messages/messages.cjs.min.js +1 -1
  399. package/messages/messages.esm.js +5 -3
  400. package/messages/messages.esm.min.js +1 -1
  401. package/messages/messages.js +5 -3
  402. package/messages/messages.min.js +1 -1
  403. package/multiselect/multiselect.cjs.js +58 -35
  404. package/multiselect/multiselect.cjs.min.js +1 -1
  405. package/multiselect/multiselect.d.ts +5 -1
  406. package/multiselect/multiselect.esm.js +58 -35
  407. package/multiselect/multiselect.esm.min.js +1 -1
  408. package/multiselect/multiselect.js +59 -37
  409. package/multiselect/multiselect.min.js +1 -1
  410. package/orderlist/orderlist.cjs.js +260 -105
  411. package/orderlist/orderlist.cjs.min.js +1 -1
  412. package/orderlist/orderlist.d.ts +18 -0
  413. package/orderlist/orderlist.esm.js +261 -106
  414. package/orderlist/orderlist.esm.min.js +1 -1
  415. package/orderlist/orderlist.js +260 -105
  416. package/orderlist/orderlist.min.js +1 -1
  417. package/organizationchart/organizationchart.cjs.js +10 -0
  418. package/organizationchart/organizationchart.cjs.min.js +1 -1
  419. package/organizationchart/organizationchart.esm.js +10 -0
  420. package/organizationchart/organizationchart.esm.min.js +1 -1
  421. package/organizationchart/organizationchart.js +10 -0
  422. package/organizationchart/organizationchart.min.js +1 -1
  423. package/overlaypanel/overlaypanel.cjs.js +9 -102
  424. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  425. package/overlaypanel/overlaypanel.d.ts +1 -1
  426. package/overlaypanel/overlaypanel.esm.js +11 -104
  427. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  428. package/overlaypanel/overlaypanel.js +10 -103
  429. package/overlaypanel/overlaypanel.min.js +1 -1
  430. package/package.json +1 -1
  431. package/paginator/paginator.d.ts +2 -2
  432. package/panel/panel.cjs.js +22 -19
  433. package/panel/panel.cjs.min.js +1 -1
  434. package/panel/panel.esm.js +22 -19
  435. package/panel/panel.esm.min.js +1 -1
  436. package/panel/panel.js +22 -19
  437. package/panel/panel.min.js +1 -1
  438. package/panelmenu/panelmenu.cjs.js +774 -195
  439. package/panelmenu/panelmenu.cjs.min.js +1 -1
  440. package/panelmenu/panelmenu.d.ts +15 -0
  441. package/panelmenu/panelmenu.esm.js +775 -196
  442. package/panelmenu/panelmenu.esm.min.js +1 -1
  443. package/panelmenu/panelmenu.js +774 -195
  444. package/panelmenu/panelmenu.min.js +1 -1
  445. package/passthrough/tailwind/index.cjs.js +163 -159
  446. package/passthrough/tailwind/index.cjs.min.js +1 -1
  447. package/passthrough/tailwind/index.esm.js +163 -159
  448. package/passthrough/tailwind/index.esm.min.js +1 -1
  449. package/passthrough/tailwind/index.js +163 -159
  450. package/passthrough/tailwind/index.min.js +1 -1
  451. package/password/password.cjs.js +7 -2
  452. package/password/password.cjs.min.js +1 -1
  453. package/password/password.d.ts +1 -1
  454. package/password/password.esm.js +8 -3
  455. package/password/password.esm.min.js +1 -1
  456. package/password/password.js +7 -2
  457. package/password/password.min.js +1 -1
  458. package/picklist/picklist.cjs.js +709 -181
  459. package/picklist/picklist.cjs.min.js +1 -1
  460. package/picklist/picklist.d.ts +10 -0
  461. package/picklist/picklist.esm.js +708 -180
  462. package/picklist/picklist.esm.min.js +1 -1
  463. package/picklist/picklist.js +709 -181
  464. package/picklist/picklist.min.js +1 -1
  465. package/portal/portal.cjs.js +7 -1
  466. package/portal/portal.cjs.min.js +1 -1
  467. package/portal/portal.esm.js +7 -1
  468. package/portal/portal.esm.min.js +1 -1
  469. package/portal/portal.js +7 -1
  470. package/portal/portal.min.js +1 -1
  471. package/primereact.all.cjs.js +8352 -3145
  472. package/primereact.all.cjs.min.js +1 -1
  473. package/primereact.all.esm.js +8351 -3146
  474. package/primereact.all.esm.min.js +1 -1
  475. package/primereact.all.js +8352 -3145
  476. package/primereact.all.min.js +1 -1
  477. package/radiobutton/radiobutton.cjs.js +27 -26
  478. package/radiobutton/radiobutton.cjs.min.js +1 -1
  479. package/radiobutton/radiobutton.esm.js +27 -26
  480. package/radiobutton/radiobutton.esm.min.js +1 -1
  481. package/radiobutton/radiobutton.js +28 -27
  482. package/radiobutton/radiobutton.min.js +1 -1
  483. package/resources/themes/arya-blue/theme.css +854 -790
  484. package/resources/themes/arya-green/theme.css +854 -790
  485. package/resources/themes/arya-orange/theme.css +854 -790
  486. package/resources/themes/arya-purple/theme.css +854 -790
  487. package/resources/themes/bootstrap4-dark-blue/theme.css +678 -615
  488. package/resources/themes/bootstrap4-dark-purple/theme.css +678 -615
  489. package/resources/themes/bootstrap4-light-blue/theme.css +679 -616
  490. package/resources/themes/bootstrap4-light-purple/theme.css +679 -616
  491. package/resources/themes/fluent-light/theme.css +686 -638
  492. package/resources/themes/lara-dark-amber/theme.css +679 -630
  493. package/resources/themes/lara-dark-blue/theme.css +679 -630
  494. package/resources/themes/lara-dark-cyan/theme.css +679 -630
  495. package/resources/themes/lara-dark-green/theme.css +679 -630
  496. package/resources/themes/lara-dark-indigo/theme.css +679 -630
  497. package/resources/themes/lara-dark-pink/theme.css +679 -630
  498. package/resources/themes/lara-dark-purple/theme.css +679 -630
  499. package/resources/themes/lara-dark-teal/theme.css +679 -630
  500. package/resources/themes/lara-light-amber/theme.css +776 -725
  501. package/resources/themes/lara-light-blue/theme.css +1011 -960
  502. package/resources/themes/lara-light-cyan/theme.css +776 -725
  503. package/resources/themes/lara-light-green/theme.css +820 -769
  504. package/resources/themes/lara-light-indigo/theme.css +1016 -965
  505. package/resources/themes/lara-light-pink/theme.css +776 -725
  506. package/resources/themes/lara-light-purple/theme.css +1016 -965
  507. package/resources/themes/lara-light-teal/theme.css +776 -725
  508. package/resources/themes/luna-amber/theme.css +950 -887
  509. package/resources/themes/luna-blue/theme.css +950 -887
  510. package/resources/themes/luna-green/theme.css +950 -887
  511. package/resources/themes/luna-pink/theme.css +950 -887
  512. package/resources/themes/md-dark-deeppurple/theme.css +918 -950
  513. package/resources/themes/md-dark-indigo/theme.css +918 -950
  514. package/resources/themes/md-light-deeppurple/theme.css +878 -910
  515. package/resources/themes/md-light-indigo/theme.css +878 -910
  516. package/resources/themes/mdc-dark-deeppurple/theme.css +918 -950
  517. package/resources/themes/mdc-dark-indigo/theme.css +918 -950
  518. package/resources/themes/mdc-light-deeppurple/theme.css +878 -910
  519. package/resources/themes/mdc-light-indigo/theme.css +878 -910
  520. package/resources/themes/mira/theme.css +1562 -1532
  521. package/resources/themes/nano/theme.css +707 -641
  522. package/resources/themes/nova/theme.css +705 -643
  523. package/resources/themes/nova-accent/theme.css +701 -636
  524. package/resources/themes/nova-alt/theme.css +705 -643
  525. package/resources/themes/rhea/theme.css +876 -811
  526. package/resources/themes/saga-blue/theme.css +896 -832
  527. package/resources/themes/saga-green/theme.css +896 -832
  528. package/resources/themes/saga-orange/theme.css +896 -832
  529. package/resources/themes/saga-purple/theme.css +896 -832
  530. package/resources/themes/soho-dark/theme.css +701 -643
  531. package/resources/themes/soho-light/theme.css +690 -634
  532. package/resources/themes/tailwind-light/theme.css +1370 -1306
  533. package/resources/themes/vela-blue/theme.css +862 -798
  534. package/resources/themes/vela-green/theme.css +862 -798
  535. package/resources/themes/vela-orange/theme.css +862 -798
  536. package/resources/themes/vela-purple/theme.css +862 -798
  537. package/resources/themes/viva-dark/theme.css +655 -612
  538. package/resources/themes/viva-light/theme.css +737 -694
  539. package/ripple/ripple.cjs.js +71 -5
  540. package/ripple/ripple.cjs.min.js +1 -1
  541. package/ripple/ripple.esm.js +71 -5
  542. package/ripple/ripple.esm.min.js +1 -1
  543. package/ripple/ripple.js +71 -5
  544. package/ripple/ripple.min.js +1 -1
  545. package/scrollpanel/scrollpanel.cjs.js +183 -3
  546. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  547. package/scrollpanel/scrollpanel.esm.js +184 -4
  548. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  549. package/scrollpanel/scrollpanel.js +183 -3
  550. package/scrollpanel/scrollpanel.min.js +1 -1
  551. package/sidebar/sidebar.cjs.js +62 -146
  552. package/sidebar/sidebar.cjs.min.js +1 -1
  553. package/sidebar/sidebar.d.ts +25 -3
  554. package/sidebar/sidebar.esm.js +65 -149
  555. package/sidebar/sidebar.esm.min.js +1 -1
  556. package/sidebar/sidebar.js +63 -147
  557. package/sidebar/sidebar.min.js +1 -1
  558. package/slidemenu/slidemenu.cjs.js +7 -100
  559. package/slidemenu/slidemenu.cjs.min.js +1 -1
  560. package/slidemenu/slidemenu.d.ts +1 -1
  561. package/slidemenu/slidemenu.esm.js +10 -103
  562. package/slidemenu/slidemenu.esm.min.js +1 -1
  563. package/slidemenu/slidemenu.js +7 -100
  564. package/slidemenu/slidemenu.min.js +1 -1
  565. package/speeddial/speeddial.cjs.js +275 -32
  566. package/speeddial/speeddial.cjs.min.js +1 -1
  567. package/speeddial/speeddial.esm.js +277 -34
  568. package/speeddial/speeddial.esm.min.js +1 -1
  569. package/speeddial/speeddial.js +275 -32
  570. package/speeddial/speeddial.min.js +1 -1
  571. package/splitbutton/splitbutton.cjs.js +1098 -309
  572. package/splitbutton/splitbutton.cjs.min.js +1 -1
  573. package/splitbutton/splitbutton.d.ts +5 -5
  574. package/splitbutton/splitbutton.esm.js +1100 -311
  575. package/splitbutton/splitbutton.esm.min.js +1 -1
  576. package/splitbutton/splitbutton.js +1096 -309
  577. package/splitbutton/splitbutton.min.js +1 -1
  578. package/splitter/splitter.cjs.js +103 -15
  579. package/splitter/splitter.cjs.min.js +1 -1
  580. package/splitter/splitter.d.ts +5 -0
  581. package/splitter/splitter.esm.js +103 -15
  582. package/splitter/splitter.esm.min.js +1 -1
  583. package/splitter/splitter.js +103 -15
  584. package/splitter/splitter.min.js +1 -1
  585. package/steps/steps.cjs.js +99 -13
  586. package/steps/steps.cjs.min.js +1 -1
  587. package/steps/steps.esm.js +100 -14
  588. package/steps/steps.esm.min.js +1 -1
  589. package/steps/steps.js +99 -13
  590. package/steps/steps.min.js +1 -1
  591. package/tabmenu/tabmenu.cjs.js +113 -17
  592. package/tabmenu/tabmenu.cjs.min.js +1 -1
  593. package/tabmenu/tabmenu.esm.js +113 -17
  594. package/tabmenu/tabmenu.esm.min.js +1 -1
  595. package/tabmenu/tabmenu.js +113 -17
  596. package/tabmenu/tabmenu.min.js +1 -1
  597. package/tabview/tabview.cjs.js +128 -20
  598. package/tabview/tabview.cjs.min.js +1 -1
  599. package/tabview/tabview.d.ts +35 -0
  600. package/tabview/tabview.esm.js +128 -20
  601. package/tabview/tabview.esm.min.js +1 -1
  602. package/tabview/tabview.js +128 -20
  603. package/tabview/tabview.min.js +1 -1
  604. package/tieredmenu/tieredmenu.cjs.js +753 -275
  605. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  606. package/tieredmenu/tieredmenu.d.ts +11 -1
  607. package/tieredmenu/tieredmenu.esm.js +755 -277
  608. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  609. package/tieredmenu/tieredmenu.js +753 -275
  610. package/tieredmenu/tieredmenu.min.js +1 -1
  611. package/toast/toast.cjs.js +6 -1
  612. package/toast/toast.cjs.min.js +1 -1
  613. package/toast/toast.d.ts +36 -2
  614. package/toast/toast.esm.js +6 -1
  615. package/toast/toast.esm.min.js +1 -1
  616. package/toast/toast.js +6 -1
  617. package/toast/toast.min.js +1 -1
  618. package/togglebutton/togglebutton.cjs.js +74 -4
  619. package/togglebutton/togglebutton.cjs.min.js +1 -1
  620. package/togglebutton/togglebutton.esm.js +74 -4
  621. package/togglebutton/togglebutton.esm.min.js +1 -1
  622. package/togglebutton/togglebutton.js +75 -5
  623. package/togglebutton/togglebutton.min.js +1 -1
  624. package/tooltip/tooltip.d.ts +27 -0
  625. package/tooltip/tooltipoptions.d.ts +1 -1
  626. package/tree/tree.cjs.js +198 -88
  627. package/tree/tree.cjs.min.js +1 -1
  628. package/tree/tree.d.ts +8 -0
  629. package/tree/tree.esm.js +199 -89
  630. package/tree/tree.esm.min.js +1 -1
  631. package/tree/tree.js +198 -88
  632. package/tree/tree.min.js +1 -1
  633. package/treeselect/treeselect.cjs.js +185 -49
  634. package/treeselect/treeselect.cjs.min.js +1 -1
  635. package/treeselect/treeselect.d.ts +26 -1
  636. package/treeselect/treeselect.esm.js +186 -50
  637. package/treeselect/treeselect.esm.min.js +1 -1
  638. package/treeselect/treeselect.js +186 -51
  639. package/treeselect/treeselect.min.js +1 -1
  640. package/treetable/treetable.cjs.js +59 -53
  641. package/treetable/treetable.cjs.min.js +1 -1
  642. package/treetable/treetable.d.ts +3 -3
  643. package/treetable/treetable.esm.js +59 -53
  644. package/treetable/treetable.esm.min.js +1 -1
  645. package/treetable/treetable.js +59 -53
  646. package/treetable/treetable.min.js +1 -1
  647. package/utils/utils.cjs.js +19 -5
  648. package/utils/utils.cjs.min.js +1 -1
  649. package/utils/utils.d.ts +1 -1
  650. package/utils/utils.esm.js +19 -5
  651. package/utils/utils.esm.min.js +1 -1
  652. package/utils/utils.js +19 -5
  653. package/utils/utils.min.js +1 -1
  654. package/web-types.json +402 -33
@@ -52,6 +52,47 @@ function _extends() {
52
52
  return _extends.apply(this, arguments);
53
53
  }
54
54
 
55
+ function _typeof(o) {
56
+ "@babel/helpers - typeof";
57
+
58
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
59
+ return typeof o;
60
+ } : function (o) {
61
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
62
+ }, _typeof(o);
63
+ }
64
+
65
+ function _toPrimitive(input, hint) {
66
+ if (_typeof(input) !== "object" || input === null) return input;
67
+ var prim = input[Symbol.toPrimitive];
68
+ if (prim !== undefined) {
69
+ var res = prim.call(input, hint || "default");
70
+ if (_typeof(res) !== "object") return res;
71
+ throw new TypeError("@@toPrimitive must return a primitive value.");
72
+ }
73
+ return (hint === "string" ? String : Number)(input);
74
+ }
75
+
76
+ function _toPropertyKey(arg) {
77
+ var key = _toPrimitive(arg, "string");
78
+ return _typeof(key) === "symbol" ? key : String(key);
79
+ }
80
+
81
+ function _defineProperty(obj, key, value) {
82
+ key = _toPropertyKey(key);
83
+ if (key in obj) {
84
+ Object.defineProperty(obj, key, {
85
+ value: value,
86
+ enumerable: true,
87
+ configurable: true,
88
+ writable: true
89
+ });
90
+ } else {
91
+ obj[key] = value;
92
+ }
93
+ return obj;
94
+ }
95
+
55
96
  function _arrayWithHoles(arr) {
56
97
  if (Array.isArray(arr)) return arr;
57
98
  }
@@ -117,49 +158,39 @@ var classes = {
117
158
  'p-ripple-disabled': context && context.ripple === false || PrimeReact__default["default"].ripple === false
118
159
  }, props.className);
119
160
  },
120
- separator: 'p-menu-separator',
161
+ separator: 'p-menuitem-separator',
121
162
  icon: function icon(_ref2) {
122
163
  var _icon = _ref2._icon;
123
164
  return utils.classNames('p-menuitem-icon', _icon);
124
165
  },
166
+ content: 'p-menuitem-content',
125
167
  label: 'p-menuitem-text',
126
168
  submenuIcon: 'p-submenu-icon',
127
- action: function action(_ref3) {
128
- var disabled = _ref3.disabled;
129
- return utils.classNames('p-menuitem-link', {
130
- 'p-disabled': disabled
131
- });
132
- },
133
- menuitem: function menuitem(_ref4) {
134
- var _className = _ref4._className,
135
- active = _ref4.active;
169
+ action: 'p-menuitem-link',
170
+ menuitem: function menuitem(_ref3) {
171
+ var _className = _ref3._className,
172
+ active = _ref3.active,
173
+ focused = _ref3.focused,
174
+ disabled = _ref3.disabled;
136
175
  return utils.classNames('p-menuitem', {
137
- 'p-menuitem-active': active
176
+ 'p-menuitem-active p-highlight': active,
177
+ 'p-focus': focused,
178
+ 'p-disabled': disabled
138
179
  }, _className);
139
180
  },
140
- menu: function menu(_ref5) {
141
- var props = _ref5.subProps;
142
- return utils.classNames({
143
- 'p-submenu-list': !props.root
144
- });
145
- },
146
- submenu: function submenu(_ref6) {
147
- var props = _ref6.subProps;
148
- return utils.classNames({
149
- 'p-submenu-list': !props.root
150
- });
151
- },
181
+ menu: 'p-tieredmenu-root-list',
182
+ submenu: 'p-submenu-list',
152
183
  transition: 'p-connected-overlay'
153
184
  };
154
185
  var inlineStyles = {
155
- submenu: function submenu(_ref7) {
156
- var props = _ref7.subProps;
186
+ submenu: function submenu(_ref4) {
187
+ var props = _ref4.subProps;
157
188
  return {
158
189
  display: !props.root && props.parentActive ? 'block' : 'none'
159
190
  };
160
191
  }
161
192
  };
162
- var styles = "\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n \n .p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n \n .p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n \n .p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n \n .p-tieredmenu .p-menuitem-text {\n line-height: 1;\n }\n \n .p-tieredmenu .p-menuitem {\n position: relative;\n }\n \n .p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n }\n \n .p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n }\n \n .p-tieredmenu .p-menuitem-active > .p-submenu-list-flipped {\n left: -100%;\n }\n}\n";
193
+ var styles = "\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n\n .p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n\n .p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-text {\n line-height: 1;\n }\n\n .p-tieredmenu .p-menuitem {\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list-flipped {\n left: -100%;\n }\n}\n";
163
194
  var TieredMenuBase = componentbase.ComponentBase.extend({
164
195
  defaultProps: {
165
196
  __TYPE: 'TieredMenu',
@@ -175,6 +206,8 @@ var TieredMenuBase = componentbase.ComponentBase.extend({
175
206
  appendTo: null,
176
207
  transitionOptions: null,
177
208
  onShow: null,
209
+ onFocus: null,
210
+ onBlur: null,
178
211
  onHide: null,
179
212
  submenuIcon: null,
180
213
  children: undefined
@@ -186,54 +219,9 @@ var TieredMenuBase = componentbase.ComponentBase.extend({
186
219
  }
187
220
  });
188
221
 
189
- function _typeof(o) {
190
- "@babel/helpers - typeof";
191
-
192
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
193
- return typeof o;
194
- } : function (o) {
195
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
196
- }, _typeof(o);
197
- }
198
-
199
- function _toPrimitive(input, hint) {
200
- if (_typeof(input) !== "object" || input === null) return input;
201
- var prim = input[Symbol.toPrimitive];
202
- if (prim !== undefined) {
203
- var res = prim.call(input, hint || "default");
204
- if (_typeof(res) !== "object") return res;
205
- throw new TypeError("@@toPrimitive must return a primitive value.");
206
- }
207
- return (hint === "string" ? String : Number)(input);
208
- }
209
-
210
- function _toPropertyKey(arg) {
211
- var key = _toPrimitive(arg, "string");
212
- return _typeof(key) === "symbol" ? key : String(key);
213
- }
214
-
215
- function _defineProperty(obj, key, value) {
216
- key = _toPropertyKey(key);
217
- if (key in obj) {
218
- Object.defineProperty(obj, key, {
219
- value: value,
220
- enumerable: true,
221
- configurable: true,
222
- writable: true
223
- });
224
- } else {
225
- obj[key] = value;
226
- }
227
- return obj;
228
- }
229
-
230
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
231
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
232
- var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
233
- var _React$useState = React__namespace.useState(null),
234
- _React$useState2 = _slicedToArray(_React$useState, 2),
235
- activeItemState = _React$useState2[0],
236
- setActiveItemState = _React$useState2[1];
222
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
223
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
224
+ var TieredMenuSub = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (props, ref) {
237
225
  var elementRef = React__namespace.useRef(null);
238
226
  var ptm = props.ptm,
239
227
  cx = props.cx,
@@ -242,27 +230,10 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
242
230
  return ptm(key, {
243
231
  hostName: props.hostName,
244
232
  context: {
245
- active: activeItemState === item
233
+ active: isItemActive(item)
246
234
  }
247
235
  });
248
236
  };
249
- var _useEventListener = hooks.useEventListener({
250
- type: 'click',
251
- listener: function listener(event) {
252
- if (!props.isMobileMode && elementRef.current && !elementRef.current.contains(event.target)) {
253
- setActiveItemState(null);
254
- }
255
- }
256
- }),
257
- _useEventListener2 = _slicedToArray(_useEventListener, 1),
258
- bindDocumentClickListener = _useEventListener2[0];
259
- var _useResizeListener = hooks.useResizeListener({
260
- listener: function listener() {
261
- !props.isMobileMode && setActiveItemState(null);
262
- }
263
- }),
264
- _useResizeListener2 = _slicedToArray(_useResizeListener, 1),
265
- bindDocumentResizeListener = _useResizeListener2[0];
266
237
  var position = function position() {
267
238
  if (elementRef.current) {
268
239
  var parentItem = elementRef.current.parentElement;
@@ -281,21 +252,9 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
281
252
  }
282
253
  }
283
254
  };
284
- var onItemMouseEnter = function onItemMouseEnter(event, item) {
285
- if (item.disabled || props.isMobileMode) {
286
- event.preventDefault();
287
- return;
288
- }
289
- if (props.root) {
290
- if (activeItemState || props.popup) {
291
- setActiveItemState(item);
292
- }
293
- } else {
294
- setActiveItemState(item);
295
- }
296
- };
297
- var onItemClick = function onItemClick(event, item) {
298
- if (item.disabled) {
255
+ var onItemClick = function onItemClick(event, processedItem) {
256
+ var item = processedItem.item;
257
+ if (isItemDisabled(processedItem)) {
299
258
  event.preventDefault();
300
259
  return;
301
260
  }
@@ -308,82 +267,62 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
308
267
  item: item
309
268
  });
310
269
  }
311
- if (props.root || props.isMobileMode) {
312
- if (item.items) {
313
- if (activeItemState && item === activeItemState) setActiveItemState(null);else setActiveItemState(item);
314
- }
315
- }
316
- if (!item.items) {
317
- onLeafClick(event);
318
- }
270
+ props.onItemClick && props.onItemClick({
271
+ originalEvent: event,
272
+ processedItem: processedItem
273
+ });
319
274
  };
320
- var onItemKeyDown = function onItemKeyDown(event, item) {
321
- var listItem = event.currentTarget.parentElement;
322
- switch (event.which) {
323
- //down
324
- case 40:
325
- var nextItem = findNextItem(listItem);
326
- nextItem && nextItem.children[0].focus();
327
- event.preventDefault();
328
- break;
329
-
330
- //up
331
- case 38:
332
- var prevItem = findPrevItem(listItem);
333
- prevItem && prevItem.children[0].focus();
334
- event.preventDefault();
335
- break;
336
-
337
- //right
338
- case 39:
339
- if (item.items) {
340
- setActiveItemState(item);
341
- setTimeout(function () {
342
- listItem.children[1].children[0].children[0].focus();
343
- }, 50);
344
- }
345
- event.preventDefault();
346
- break;
347
- }
348
- props.onKeyDown && props.onKeyDown(event, listItem);
275
+ var getItemId = function getItemId(processedItem) {
276
+ return "".concat(props.menuId, "_").concat(processedItem.key);
349
277
  };
350
- var onChildItemKeyDown = function onChildItemKeyDown(event, childListItem) {
351
- //left
352
- if (event.which === 37) {
353
- setActiveItemState(null);
354
- childListItem.parentElement.previousElementSibling.focus();
355
- }
278
+ var getItemProp = function getItemProp(processedItem, name, params) {
279
+ return processedItem && processedItem.item ? utils.ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;
356
280
  };
357
- var findNextItem = function findNextItem(item) {
358
- var nextItem = item.nextElementSibling;
359
- return nextItem ? utils.DomHandler.hasClass(nextItem, 'p-disabled') || !utils.DomHandler.hasClass(nextItem, 'p-menuitem') ? findNextItem(nextItem) : nextItem : null;
281
+ var isItemActive = function isItemActive(processedItem) {
282
+ return props.activeItemPath.some(function (path) {
283
+ return path.key === processedItem.key;
284
+ });
360
285
  };
361
- var findPrevItem = function findPrevItem(item) {
362
- var prevItem = item.previousElementSibling;
363
- return prevItem ? utils.DomHandler.hasClass(prevItem, 'p-disabled') || !utils.DomHandler.hasClass(prevItem, 'p-menuitem') ? findPrevItem(prevItem) : prevItem : null;
286
+ var isItemVisible = function isItemVisible(processedItem) {
287
+ return getItemProp(processedItem, 'visible') !== false;
364
288
  };
365
- var onLeafClick = function onLeafClick(event) {
366
- if (!props.isMobileMode || props.popup) {
367
- setActiveItemState(null);
368
- props.onLeafClick && props.onLeafClick(event);
369
- props.onHide && props.onHide(event);
370
- }
289
+ var isItemDisabled = function isItemDisabled(processedItem) {
290
+ return getItemProp(processedItem, 'disabled');
291
+ };
292
+ var isItemFocused = function isItemFocused(processedItem) {
293
+ return props.focusedItemId === getItemId(processedItem);
294
+ };
295
+ var isItemGroup = function isItemGroup(processedItem) {
296
+ return utils.ObjectUtils.isNotEmpty(processedItem.items);
297
+ };
298
+ var onItemMouseEnter = function onItemMouseEnter(event, processedItem) {
299
+ props.onItemMouseEnter && props.onItemMouseEnter({
300
+ originalEvent: event,
301
+ processedItem: processedItem
302
+ });
303
+ };
304
+ var getAriaSetSize = function getAriaSetSize() {
305
+ return props.model.filter(function (processedItem) {
306
+ return isItemVisible(processedItem) && !getItemProp(processedItem, 'separator');
307
+ }).length;
308
+ };
309
+ var getAriaPosInset = function getAriaPosInset(index) {
310
+ return index - props.model.slice(0, index).filter(function (processedItem) {
311
+ return isItemVisible(processedItem) && getItemProp(processedItem, 'separator');
312
+ }).length + 1;
371
313
  };
372
- hooks.useMountEffect(function () {
373
- bindDocumentClickListener();
374
- bindDocumentResizeListener();
375
- });
376
314
  hooks.useUpdateEffect(function () {
377
- if (!props.parentActive) {
378
- setActiveItemState(null);
379
- }
380
315
  if (!props.root && props.parentActive && !props.isMobileMode) {
381
316
  position();
382
317
  }
383
318
  }, [props.parentActive]);
384
- hooks.useUpdateEffect(function () {
385
- props.onItemToggle && props.onItemToggle();
386
- }, [activeItemState]);
319
+ React__namespace.useImperativeHandle(ref, function () {
320
+ return {
321
+ getElement: function getElement() {
322
+ return elementRef.current;
323
+ }
324
+ };
325
+ });
387
326
  var createSeparator = function createSeparator(index) {
388
327
  var key = 'separator_' + index;
389
328
  var separatorProps = utils.mergeProps({
@@ -395,18 +334,22 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
395
334
  }));
396
335
  return /*#__PURE__*/React__namespace.createElement("li", separatorProps);
397
336
  };
398
- var createSubmenu = function createSubmenu(item, index) {
399
- if (item.items) {
337
+ var createSubmenu = function createSubmenu(processedItem, index) {
338
+ if (isItemGroup(processedItem)) {
400
339
  return /*#__PURE__*/React__namespace.createElement(TieredMenuSub, {
401
340
  id: props.id + '_' + index,
402
341
  menuProps: props.menuProps,
403
- model: item.items,
404
- onLeafClick: onLeafClick,
342
+ model: processedItem.items,
343
+ menuId: props.menuId,
344
+ ariaLabelledby: getItemId(item),
345
+ focusedItemId: props.focusedItemId,
346
+ activeItemPath: props.activeItemPath,
347
+ level: props.level + 1,
348
+ onItemClick: props.onItemClick,
405
349
  popup: props.popup,
406
- onKeyDown: onChildItemKeyDown,
407
- parentActive: item === activeItemState,
350
+ onItemMouseEnter: props.onItemMouseEnter,
351
+ parentActive: isItemActive(processedItem),
408
352
  isMobileMode: props.isMobileMode,
409
- onItemToggle: props.onItemToggle,
410
353
  submenuIcon: props.submenuIcon,
411
354
  ptm: props.ptm,
412
355
  cx: cx,
@@ -415,71 +358,53 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
415
358
  }
416
359
  return null;
417
360
  };
418
- var createMenuItem = function createMenuItem(item, index) {
419
- if (item.visible === false) {
361
+ var createMenuItem = function createMenuItem(processedItem, index) {
362
+ if (isItemVisible(processedItem) === false) {
420
363
  return null;
421
364
  }
422
- var id = item.id,
423
- _className = item.className,
424
- style = item.style,
425
- disabled = item.disabled,
426
- _icon = item.icon,
427
- _label = item.label,
428
- items = item.items,
429
- target = item.target,
430
- url = item.url,
431
- template = item.template;
432
- var key = id || props.id + '_' + index;
433
- var active = activeItemState === item;
434
- var linkClassName = utils.classNames('p-menuitem-link', {
435
- 'p-disabled': disabled
436
- });
365
+ var item = processedItem.item;
366
+ var style = getItemProp(processedItem, 'style');
367
+ var _icon = getItemProp(processedItem, 'icon');
368
+ var target = getItemProp(processedItem, 'target');
369
+ var url = getItemProp(processedItem, 'url');
370
+ var key = getItemId(processedItem);
371
+ var focused = isItemFocused(processedItem);
372
+ var active = isItemActive(processedItem);
373
+ var disabled = isItemDisabled(processedItem);
374
+ var grouped = isItemGroup(processedItem);
375
+ var linkClassName = utils.classNames('p-menuitem-link');
437
376
  var iconClassName = utils.classNames('p-menuitem-icon', _icon);
438
377
  var iconProps = utils.mergeProps({
439
- className: cx('icon', {
440
- _icon: _icon
441
- })
442
- }, getPTOptions(item, 'icon'));
443
- var icon = utils.IconUtils.getJSXIcon(_icon, _objectSpread({}, iconProps), {
378
+ className: utils.classNames(item.icon, 'p-menuitem-icon', 'icon')
379
+ }, getPTOptions(processedItem, 'icon'));
380
+ var icon = utils.IconUtils.getJSXIcon(_icon, _objectSpread$1({}, iconProps), {
444
381
  props: props.menuProps
445
382
  });
446
383
  var labelProps = utils.mergeProps({
447
384
  className: cx('label')
448
- }, getPTOptions(item, 'label'));
449
- var label = _label && /*#__PURE__*/React__namespace.createElement("span", labelProps, _label);
385
+ }, getPTOptions(processedItem, 'label'));
386
+ var label = item.label && /*#__PURE__*/React__namespace.createElement("span", labelProps, item.label);
450
387
  var submenuIconClassName = 'p-submenu-icon';
451
388
  var submenuIconProps = utils.mergeProps({
452
389
  className: cx('submenuIcon')
453
- }, getPTOptions(item, 'submenuIcon'));
454
- var submenuIcon = item.items && utils.IconUtils.getJSXIcon(props.submenuIcon || /*#__PURE__*/React__namespace.createElement(angleright.AngleRightIcon, submenuIconProps), _objectSpread({}, submenuIconProps), {
390
+ }, getPTOptions(processedItem, 'submenuIcon'));
391
+ var submenuIcon = grouped && utils.IconUtils.getJSXIcon(props.submenuIcon || /*#__PURE__*/React__namespace.createElement(angleright.AngleRightIcon, submenuIconProps), _objectSpread$1({}, submenuIconProps), {
455
392
  props: props.menuProps
456
393
  });
457
- var submenu = createSubmenu(item, index);
394
+ var submenu = createSubmenu(processedItem, index);
458
395
  var actionProps = utils.mergeProps({
459
396
  href: url || '#',
460
- className: cx('action', {
461
- disabled: disabled
462
- }),
463
- target: target,
464
- role: 'menuitem',
465
- 'aria-haspopup': items != null,
466
- onClick: function onClick(event) {
467
- return onItemClick(event, item);
468
- },
469
- onKeyDown: function onKeyDown(event) {
470
- return onItemKeyDown(event, item);
397
+ 'aria-hidden': true,
398
+ tabIndex: '-1',
399
+ onFocus: function onFocus(event) {
400
+ return event.stopPropagation();
471
401
  },
472
- 'aria-disabled': disabled
473
- }, getPTOptions(item, 'action'));
402
+ className: cx('action'),
403
+ target: target
404
+ }, getPTOptions(processedItem, 'action'));
474
405
  var content = /*#__PURE__*/React__namespace.createElement("a", actionProps, icon, label, submenuIcon, /*#__PURE__*/React__namespace.createElement(ripple.Ripple, null));
475
- if (template) {
406
+ if (item.template) {
476
407
  var defaultContentOptions = {
477
- onClick: function onClick(event) {
478
- return onItemClick(event, item);
479
- },
480
- onKeyDown: function onKeyDown(event) {
481
- return onItemKeyDown(event, item);
482
- },
483
408
  className: linkClassName,
484
409
  labelClassName: 'p-menuitem-text',
485
410
  iconClassName: iconClassName,
@@ -489,25 +414,46 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
489
414
  active: active,
490
415
  disabled: disabled
491
416
  };
492
- content = utils.ObjectUtils.getJSXElement(template, item, defaultContentOptions);
417
+ content = utils.ObjectUtils.getJSXElement(item.template, item, defaultContentOptions);
493
418
  }
419
+ var contentProps = utils.mergeProps({
420
+ onClick: function onClick(event) {
421
+ return onItemClick(event, processedItem);
422
+ },
423
+ onMouseEnter: function onMouseEnter(event) {
424
+ return onItemMouseEnter(event, processedItem);
425
+ },
426
+ className: cx('content')
427
+ }, getPTOptions(processedItem, 'content'));
494
428
  var menuitemProps = utils.mergeProps({
495
429
  key: key,
496
430
  id: key,
431
+ 'aria-label': item.label,
432
+ 'aria-disabled': disabled,
433
+ 'aria-expanded': grouped ? active : undefined,
434
+ 'aria-haspopup': grouped && !url ? 'menu' : undefined,
435
+ 'aria-level': props.level + 1,
436
+ 'aria-setsize': getAriaSetSize(),
437
+ 'aria-posinset': getAriaPosInset(index),
438
+ 'data-p-highlight': active,
439
+ 'data-p-disabled': disabled,
440
+ 'data-p-visited': focused,
497
441
  className: cx('menuitem', {
498
- _className: _className,
499
- active: active
442
+ className: item.className,
443
+ active: active,
444
+ focused: focused,
445
+ disabled: disabled
500
446
  }),
501
447
  style: style,
502
448
  onMouseEnter: function onMouseEnter(event) {
503
449
  return onItemMouseEnter(event, item);
504
450
  },
505
- role: 'none'
506
- }, getPTOptions(item, 'menuitem'));
507
- return /*#__PURE__*/React__namespace.createElement("li", menuitemProps, content, submenu);
451
+ role: 'menuitem'
452
+ }, getPTOptions(processedItem, 'menuitem'));
453
+ return /*#__PURE__*/React__namespace.createElement("li", menuitemProps, /*#__PURE__*/React__namespace.createElement("div", contentProps, content), submenu);
508
454
  };
509
- var createItem = function createItem(item, index) {
510
- return item.separator ? createSeparator(index) : createMenuItem(item, index);
455
+ var createItem = function createItem(processedItem, index) {
456
+ return getItemProp(processedItem, 'separator') ? createSeparator(index) : createMenuItem(processedItem, index);
511
457
  };
512
458
  var createMenu = function createMenu() {
513
459
  return props.model ? props.model.map(createItem) : null;
@@ -516,6 +462,11 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
516
462
  var ptKey = props.root ? 'menu' : 'submenu';
517
463
  var menuProps = utils.mergeProps({
518
464
  ref: elementRef,
465
+ id: props.id,
466
+ tabIndex: props.tabIndex,
467
+ onFocus: props.onFocus,
468
+ onBlur: props.onBlur,
469
+ onKeyDown: props.onKeyDown,
519
470
  className: cx(ptKey, {
520
471
  subProps: props
521
472
  }),
@@ -523,14 +474,19 @@ var TieredMenuSub = /*#__PURE__*/React__namespace.memo(function (props) {
523
474
  subProps: props
524
475
  }),
525
476
  role: props.root ? 'menubar' : 'menu',
526
- 'aria-orientation': 'horizontal'
477
+ 'aria-label': props.ariaLabel,
478
+ 'aria-labelledby': props.ariaLabelledby,
479
+ 'aria-orientation': props.ariaOrientation,
480
+ 'aria-activedescendant': props.focusedItemId
527
481
  }, ptm(ptKey, {
528
482
  hostName: props.hostName
529
483
  }));
530
484
  return /*#__PURE__*/React__namespace.createElement("ul", menuProps, submenu);
531
- });
485
+ }));
532
486
  TieredMenuSub.displayName = 'TieredMenuSub';
533
487
 
488
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
489
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
534
490
  var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
535
491
  var context = React__namespace.useContext(PrimeReact.PrimeReactContext);
536
492
  var props = TieredMenuBase.getProps(inProps, context);
@@ -542,10 +498,46 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
542
498
  _React$useState4 = _slicedToArray(_React$useState3, 2),
543
499
  visibleState = _React$useState4[0],
544
500
  setVisibleState = _React$useState4[1];
545
- var _React$useState5 = React__namespace.useState(null),
501
+ var _React$useState5 = React__namespace.useState([]),
546
502
  _React$useState6 = _slicedToArray(_React$useState5, 2),
547
- attributeSelectorState = _React$useState6[0],
548
- setAttributeSelectorState = _React$useState6[1];
503
+ activeItemPath = _React$useState6[0],
504
+ setActiveItemPath = _React$useState6[1];
505
+ var _React$useState7 = React__namespace.useState(false),
506
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
507
+ focused = _React$useState8[0],
508
+ setFocused = _React$useState8[1];
509
+ var _React$useState9 = React__namespace.useState(null),
510
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
511
+ focusedItemId = _React$useState10[0],
512
+ setFocusedItemId = _React$useState10[1];
513
+ var _React$useState11 = React__namespace.useState({
514
+ index: -1,
515
+ level: 0,
516
+ parentKey: ''
517
+ }),
518
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
519
+ focusedItemInfo = _React$useState12[0],
520
+ setFocusedItemInfo = _React$useState12[1];
521
+ var _React$useState13 = React__namespace.useState(false),
522
+ _React$useState14 = _slicedToArray(_React$useState13, 2),
523
+ dirty = _React$useState14[0],
524
+ setDirty = _React$useState14[1];
525
+ var _React$useState15 = React__namespace.useState([]),
526
+ _React$useState16 = _slicedToArray(_React$useState15, 2),
527
+ processedItems = _React$useState16[0],
528
+ setProcessedItems = _React$useState16[1];
529
+ var _React$useState17 = React__namespace.useState([]),
530
+ _React$useState18 = _slicedToArray(_React$useState17, 2),
531
+ visibleItems = _React$useState18[0],
532
+ setVisibleItems = _React$useState18[1];
533
+ var _React$useState19 = React__namespace.useState(false),
534
+ _React$useState20 = _slicedToArray(_React$useState19, 2),
535
+ focusTrigger = _React$useState20[0],
536
+ setFocusTrigger = _React$useState20[1];
537
+ var _React$useState21 = React__namespace.useState(null),
538
+ _React$useState22 = _slicedToArray(_React$useState21, 2),
539
+ attributeSelectorState = _React$useState22[0],
540
+ setAttributeSelectorState = _React$useState22[1];
549
541
  var _TieredMenuBase$setMe = TieredMenuBase.setMetaData({
550
542
  props: props,
551
543
  state: {
@@ -561,22 +553,35 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
561
553
  componentbase.useHandleStyle(TieredMenuBase.css.styles, isUnstyled, {
562
554
  name: 'tieredmenu'
563
555
  });
556
+ var containerRef = React__namespace.useRef(null);
564
557
  var menuRef = React__namespace.useRef(null);
565
558
  var targetRef = React__namespace.useRef(null);
559
+ var relatedTarget = React__namespace.useRef(null);
566
560
  var styleElementRef = React__namespace.useRef(null);
561
+ var searchValue = React__namespace.useRef(null);
562
+ var searchTimeout = React__namespace.useRef(null);
567
563
  var isMobileMode = hooks.useMatchMedia("screen and (max-width: ".concat(props.breakpoint, ")"), !!props.breakpoint);
568
- var _useOverlayListener = hooks.useOverlayListener({
569
- target: targetRef,
570
- overlay: menuRef,
571
- listener: function listener(event, _ref) {
572
- var valid = _ref.valid;
573
- valid && hide(event);
574
- },
575
- when: visibleState
564
+ var _useEventListener = hooks.useEventListener({
565
+ type: 'click',
566
+ listener: function listener(event) {
567
+ var isOutsideContainer = containerRef.current && !containerRef.current.contains(event.target);
568
+ var isOutsideTarget = props.popup ? !(targetRef.current && (targetRef.current === event.target || targetRef.current.contains(event.target))) : true;
569
+ if (isOutsideContainer && isOutsideTarget) {
570
+ hide(event, !props.popup);
571
+ }
572
+ }
573
+ }),
574
+ _useEventListener2 = _slicedToArray(_useEventListener, 2),
575
+ bindDocumentClickListener = _useEventListener2[0],
576
+ unbindDocumentClickListener = _useEventListener2[1];
577
+ var _useResizeListener = hooks.useResizeListener({
578
+ listener: function listener() {
579
+ !isMobileMode && hide(event, true);
580
+ }
576
581
  }),
577
- _useOverlayListener2 = _slicedToArray(_useOverlayListener, 2),
578
- bindOverlayListener = _useOverlayListener2[0],
579
- unbindOverlayListener = _useOverlayListener2[1];
582
+ _useResizeListener2 = _slicedToArray(_useResizeListener, 2),
583
+ bindDocumentResizeListener = _useResizeListener2[0],
584
+ unbindDocumentResizeListener = _useResizeListener2[1];
580
585
  var onPanelClick = function onPanelClick(event) {
581
586
  if (props.popup) {
582
587
  overlayservice.OverlayService.emit('overlay-click', {
@@ -591,25 +596,436 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
591
596
  }
592
597
  };
593
598
  var show = function show(event) {
594
- targetRef.current = event.currentTarget;
595
- setVisibleState(true);
596
- props.onShow && props.onShow(event);
597
- };
598
- var hide = function hide(event) {
599
599
  if (props.popup) {
600
600
  targetRef.current = event.currentTarget;
601
+ setVisibleState(true);
602
+ props.onShow && props.onShow(event);
603
+ relatedTarget.current = event.relatedTarget || null;
604
+ }
605
+ setFocusedItemInfo({
606
+ index: findFirstFocusedItemIndex(),
607
+ level: 0,
608
+ parentKey: ''
609
+ });
610
+ };
611
+ var hide = function hide(event, isFocus) {
612
+ if (props.popup) {
601
613
  setVisibleState(false);
602
614
  props.onHide && props.onHide(event);
603
615
  }
616
+ var menuElement = getMenuElement();
617
+ setActiveItemPath([]);
618
+ setFocusedItemInfo({
619
+ index: -1,
620
+ level: 0,
621
+ parentKey: ''
622
+ });
623
+ isFocus && utils.DomHandler.focus(relatedTarget.current || targetRef.current || menuElement);
624
+ setDirty(false);
625
+ };
626
+ var onFocus = function onFocus(event) {
627
+ setFocused(true);
628
+ setFocusedItemInfo(focusedItemInfo.index !== -1 ? focusedItemInfo : {
629
+ index: findFirstFocusedItemIndex(),
630
+ level: 0,
631
+ parentKey: ''
632
+ });
633
+ props.onFocus && props.onFocus(event);
604
634
  };
605
- var onItemToggle = function onItemToggle() {
606
- if (props.popup && isMobileMode) {
607
- utils.DomHandler.absolutePosition(menuRef.current, targetRef.current);
635
+ var onBlur = function onBlur(event) {
636
+ setFocused(false);
637
+ setFocusedItemInfo({
638
+ index: -1,
639
+ level: 0,
640
+ parentKey: ''
641
+ });
642
+ searchValue.current = '';
643
+ setDirty(false);
644
+ props.onBlur && props.onBlur(event);
645
+ };
646
+ var onKeyDown = function onKeyDown(event) {
647
+ var metaKey = event.metaKey || event.ctrlKey;
648
+ switch (event.code) {
649
+ case 'ArrowDown':
650
+ onArrowDownKey(event);
651
+ break;
652
+ case 'ArrowUp':
653
+ onArrowUpKey(event);
654
+ break;
655
+ case 'ArrowLeft':
656
+ onArrowLeftKey(event);
657
+ break;
658
+ case 'ArrowRight':
659
+ onArrowRightKey(event);
660
+ break;
661
+ case 'Home':
662
+ onHomeKey(event);
663
+ break;
664
+ case 'End':
665
+ onEndKey(event);
666
+ break;
667
+ case 'Space':
668
+ onSpaceKey(event);
669
+ break;
670
+ case 'Enter':
671
+ onEnterKey(event);
672
+ break;
673
+ case 'Escape':
674
+ props.popup && utils.DomHandler.focus(targetRef.current);
675
+ onEscapeKey(event);
676
+ break;
677
+ case 'Tab':
678
+ onTabKey(event);
679
+ break;
680
+ case 'PageDown':
681
+ case 'PageUp':
682
+ case 'Backspace':
683
+ case 'ShiftLeft':
684
+ case 'ShiftRight':
685
+ //NOOP
686
+ break;
687
+ default:
688
+ if (!metaKey && utils.ObjectUtils.isPrintableCharacter(event.key)) {
689
+ searchItems(event.key);
690
+ }
691
+ break;
608
692
  }
609
693
  };
694
+ var onItemChange = function onItemChange(event) {
695
+ var processedItem = event.processedItem,
696
+ isFocus = event.isFocus;
697
+ if (utils.ObjectUtils.isEmpty(processedItem)) return;
698
+ var index = processedItem.index,
699
+ key = processedItem.key,
700
+ level = processedItem.level,
701
+ parentKey = processedItem.parentKey,
702
+ items = processedItem.items;
703
+ var grouped = utils.ObjectUtils.isNotEmpty(items);
704
+ var _activeItemPath = activeItemPath.filter(function (p) {
705
+ return p.parentKey !== parentKey && p.parentKey !== key;
706
+ });
707
+ if (grouped) {
708
+ _activeItemPath.push(processedItem);
709
+ }
710
+ setFocusedItemInfo({
711
+ index: index,
712
+ level: level,
713
+ parentKey: parentKey
714
+ });
715
+ setActiveItemPath(_activeItemPath);
716
+ grouped && setDirty(true);
717
+ isFocus && utils.DomHandler.focus(getMenuElement());
718
+ };
719
+ var onItemClick = function onItemClick(event) {
720
+ var originalEvent = event.originalEvent,
721
+ processedItem = event.processedItem;
722
+ if (isItemDisabled(processedItem) || props.isMobileMode) {
723
+ return;
724
+ }
725
+ var grouped = isProccessedItemGroup(processedItem);
726
+ var root = utils.ObjectUtils.isEmpty(processedItem.parent);
727
+ var selected = isSelected(processedItem);
728
+ var menuElement = getMenuElement();
729
+ if (selected) {
730
+ var index = processedItem.index,
731
+ key = processedItem.key,
732
+ level = processedItem.level,
733
+ parentKey = processedItem.parentKey;
734
+ setActiveItemPath(activeItemPath.filter(function (p) {
735
+ return key !== p.key && key.startsWith(p.key);
736
+ }));
737
+ setFocusedItemInfo({
738
+ index: index,
739
+ level: level,
740
+ parentKey: parentKey
741
+ });
742
+ if (!grouped) {
743
+ setDirty(!root);
744
+ }
745
+ setTimeout(function () {
746
+ utils.DomHandler.focus(menuElement);
747
+ if (grouped) {
748
+ setDirty(true);
749
+ }
750
+ }, 0);
751
+ } else {
752
+ if (grouped) {
753
+ utils.DomHandler.focus(menuElement);
754
+ onItemChange(event);
755
+ } else {
756
+ var rootProcessedItem = root ? processedItem : activeItemPath.find(function (p) {
757
+ return p.parentKey === '';
758
+ });
759
+ var rootProcessedItemIndex = rootProcessedItem ? rootProcessedItem.index : -1;
760
+ hide(originalEvent, true);
761
+ setFocusedItemInfo({
762
+ index: rootProcessedItemIndex,
763
+ parentKey: rootProcessedItem ? rootProcessedItem.parentKey : ''
764
+ });
765
+ }
766
+ }
767
+ };
768
+ var onItemMouseEnter = function onItemMouseEnter(event) {
769
+ var originalEvent = event.originalEvent,
770
+ processedItem = event.processedItem;
771
+ if (isItemDisabled(processedItem) || props.isMobileMode) {
772
+ originalEvent.preventDefault();
773
+ return;
774
+ }
775
+ if (dirty && !props.popup) {
776
+ onItemChange(event);
777
+ }
778
+ };
779
+ var onArrowDownKey = function onArrowDownKey(event) {
780
+ var itemIndex = focusedItemInfo.index !== -1 ? findNextItemIndex(focusedItemInfo.index) : findFirstFocusedItemIndex();
781
+ changeFocusedItemIndex(itemIndex);
782
+ event.preventDefault();
783
+ };
784
+ var onArrowUpKey = function onArrowUpKey(event) {
785
+ if (event.altKey) {
786
+ if (props.popup) {
787
+ utils.DomHandler.focus(targetRef.current);
788
+ }
789
+ if (focusedItemInfo.index !== -1) {
790
+ var processedItem = visibleItems[focusedItemInfo.index];
791
+ var grouped = isProccessedItemGroup(processedItem);
792
+ !grouped && onItemChange({
793
+ originalEvent: event,
794
+ processedItem: processedItem
795
+ });
796
+ }
797
+ props.popup && hide(event, true);
798
+ event.preventDefault();
799
+ } else {
800
+ var itemIndex = focusedItemInfo.index !== -1 ? findPrevItemIndex(focusedItemInfo.index) : findLastFocusedItemIndex();
801
+ changeFocusedItemIndex(itemIndex);
802
+ event.preventDefault();
803
+ }
804
+ };
805
+ var onArrowLeftKey = function onArrowLeftKey(event) {
806
+ var processedItem = visibleItems[focusedItemInfo.index];
807
+ var parentItem = activeItemPath.find(function (p) {
808
+ return p.key === processedItem.parentKey;
809
+ });
810
+ var root = utils.ObjectUtils.isEmpty(processedItem.parent);
811
+ if (!root) {
812
+ setFocusedItemInfo({
813
+ index: -1,
814
+ parentKey: parentItem ? parentItem.parentKey : ''
815
+ });
816
+ searchValue.current = '';
817
+ setTimeout(function () {
818
+ return setFocusTrigger(true);
819
+ }, 0);
820
+ }
821
+ setActiveItemPath(activeItemPath.filter(function (p) {
822
+ return p.parentKey !== focusedItemInfo.parentKey;
823
+ }));
824
+ event.preventDefault();
825
+ };
826
+ var onArrowRightKey = function onArrowRightKey(event) {
827
+ var processedItem = visibleItems[focusedItemInfo.index];
828
+ var grouped = isProccessedItemGroup(processedItem);
829
+ if (grouped) {
830
+ onItemChange({
831
+ originalEvent: event,
832
+ processedItem: processedItem
833
+ });
834
+ setFocusedItemInfo({
835
+ index: -1,
836
+ parentKey: processedItem.key
837
+ });
838
+ searchValue.current = '';
839
+ setTimeout(function () {
840
+ return setFocusTrigger(true);
841
+ }, 0);
842
+ }
843
+ event.preventDefault();
844
+ };
845
+ var onHomeKey = function onHomeKey(event) {
846
+ changeFocusedItemIndex(findFirstItemIndex());
847
+ event.preventDefault();
848
+ };
849
+ var onEndKey = function onEndKey(event) {
850
+ changeFocusedItemIndex(findLastItemIndex());
851
+ event.preventDefault();
852
+ };
853
+ var onEnterKey = function onEnterKey(event) {
854
+ if (focusedItemInfo.index !== -1) {
855
+ var _element = utils.DomHandler.findSingle(getMenuElement(), "li[id=\"".concat("".concat(focusedItemId), "\"]"));
856
+ var anchorElement = _element && utils.DomHandler.findSingle(_element, '[data-pc-section="action"]');
857
+ props.popup && utils.DomHandler.focus(targetRef.current);
858
+ anchorElement ? anchorElement.click() : _element && _element.click();
859
+ }
860
+ event.preventDefault();
861
+ };
862
+ var onSpaceKey = function onSpaceKey(event) {
863
+ onEnterKey(event);
864
+ };
865
+ var onEscapeKey = function onEscapeKey(event) {
866
+ hide(event, true);
867
+ !props.popup && setFocusedItemInfo(_objectSpread(_objectSpread({}, focusedItemInfo), {}, {
868
+ index: findFirstFocusedItemIndex()
869
+ }));
870
+ event.preventDefault();
871
+ };
872
+ var onTabKey = function onTabKey(event) {
873
+ if (focusedItemInfo.index !== -1) {
874
+ var processedItem = visibleItems[focusedItemInfo.index];
875
+ var grouped = isProccessedItemGroup(processedItem);
876
+ !grouped && onItemChange({
877
+ originalEvent: event,
878
+ processedItem: processedItem
879
+ });
880
+ }
881
+ hide(event);
882
+ };
883
+ var getMenuElement = function getMenuElement() {
884
+ return menuRef.current.getElement() || null;
885
+ };
886
+ var getItemProp = function getItemProp(item, name) {
887
+ return item ? utils.ObjectUtils.getItemValue(item[name]) : undefined;
888
+ };
889
+ var getItemLabel = function getItemLabel(item) {
890
+ return getItemProp(item, 'label');
891
+ };
892
+ var isItemDisabled = function isItemDisabled(item) {
893
+ return getItemProp(item, 'disabled');
894
+ };
895
+ var isItemSeparator = function isItemSeparator(item) {
896
+ return getItemProp(item, 'separator');
897
+ };
898
+ var getProccessedItemLabel = function getProccessedItemLabel(processedItem) {
899
+ return processedItem ? getItemLabel(processedItem.item) : undefined;
900
+ };
901
+ var isProccessedItemGroup = function isProccessedItemGroup(processedItem) {
902
+ return processedItem && utils.ObjectUtils.isNotEmpty(processedItem.items);
903
+ };
904
+ var isItemMatched = function isItemMatched(processedItem) {
905
+ return isValidItem(processedItem) && getProccessedItemLabel(processedItem).toLocaleLowerCase().startsWith(searchValue.current.toLocaleLowerCase());
906
+ };
907
+ var isValidItem = function isValidItem(processedItem) {
908
+ return !!processedItem && !isItemDisabled(processedItem.item) && !isItemSeparator(processedItem.item);
909
+ };
910
+ var isValidSelectedItem = function isValidSelectedItem(processedItem) {
911
+ return isValidItem(processedItem) && isSelected(processedItem);
912
+ };
913
+ var isSelected = function isSelected(processedItem) {
914
+ return activeItemPath.some(function (p) {
915
+ return p.key === processedItem.key;
916
+ });
917
+ };
918
+ var findFirstItemIndex = function findFirstItemIndex() {
919
+ return visibleItems.findIndex(function (processedItem) {
920
+ return isValidItem(processedItem);
921
+ });
922
+ };
923
+ var findLastItemIndex = function findLastItemIndex() {
924
+ return utils.ObjectUtils.findLastIndex(visibleItems, function (processedItem) {
925
+ return isValidItem(processedItem);
926
+ });
927
+ };
928
+ var findNextItemIndex = function findNextItemIndex(index) {
929
+ var matchedItemIndex = index < visibleItems.length - 1 ? visibleItems.slice(index + 1).findIndex(function (processedItem) {
930
+ return isValidItem(processedItem);
931
+ }) : -1;
932
+ return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;
933
+ };
934
+ var findPrevItemIndex = function findPrevItemIndex(index) {
935
+ var matchedItemIndex = index > 0 ? utils.ObjectUtils.findLastIndex(visibleItems.slice(0, index), function (processedItem) {
936
+ return isValidItem(processedItem);
937
+ }) : -1;
938
+ return matchedItemIndex > -1 ? matchedItemIndex : index;
939
+ };
940
+ var findSelectedItemIndex = function findSelectedItemIndex() {
941
+ return visibleItems.findIndex(function (processedItem) {
942
+ return isValidSelectedItem(processedItem);
943
+ });
944
+ };
945
+ var findFirstFocusedItemIndex = function findFirstFocusedItemIndex() {
946
+ var selectedIndex = findSelectedItemIndex();
947
+ return selectedIndex < 0 ? findFirstItemIndex() : selectedIndex;
948
+ };
949
+ var findLastFocusedItemIndex = function findLastFocusedItemIndex() {
950
+ var selectedIndex = findSelectedItemIndex();
951
+ return selectedIndex < 0 ? findLastItemIndex() : selectedIndex;
952
+ };
953
+ var searchItems = function searchItems(_char) {
954
+ searchValue.current = (searchValue.current || '') + _char;
955
+ var itemIndex = -1;
956
+ var matched = false;
957
+ if (focusedItemInfo.index !== -1) {
958
+ itemIndex = visibleItems.slice(focusedItemInfo.index).findIndex(function (processedItem) {
959
+ return isItemMatched(processedItem);
960
+ });
961
+ itemIndex = itemIndex === -1 ? visibleItems.slice(0, focusedItemInfo.index).findIndex(function (processedItem) {
962
+ return isItemMatched(processedItem);
963
+ }) : itemIndex + focusedItemInfo.index;
964
+ } else {
965
+ itemIndex = visibleItems.findIndex(function (processedItem) {
966
+ return isItemMatched(processedItem);
967
+ });
968
+ }
969
+ if (itemIndex !== -1) {
970
+ matched = true;
971
+ }
972
+ if (itemIndex === -1 && focusedItemInfo.index === -1) {
973
+ itemIndex = findFirstFocusedItemIndex();
974
+ }
975
+ if (itemIndex !== -1) {
976
+ changeFocusedItemIndex(itemIndex);
977
+ }
978
+ if (searchTimeout.current) {
979
+ clearTimeout(searchTimeout);
980
+ }
981
+ searchTimeout.current = setTimeout(function () {
982
+ searchValue.current = '';
983
+ searchTimeout.current = null;
984
+ }, 500);
985
+ return matched;
986
+ };
987
+ var changeFocusedItemIndex = function changeFocusedItemIndex(index) {
988
+ if (focusedItemInfo.index !== index) {
989
+ setFocusedItemInfo(_objectSpread(_objectSpread({}, focusedItemInfo), {}, {
990
+ index: index
991
+ }));
992
+ scrollInView();
993
+ }
994
+ };
995
+ var scrollInView = function scrollInView() {
996
+ var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
997
+ var id = index !== -1 ? "".concat(idState, "_").concat(index) : focusedItemId;
998
+ var element = utils.DomHandler.findSingle(getMenuElement(), "li[id=\"".concat(id, "\"]"));
999
+ if (element) {
1000
+ element.scrollIntoView && element.scrollIntoView({
1001
+ block: 'nearest',
1002
+ inline: 'start'
1003
+ });
1004
+ }
1005
+ };
1006
+ var createProcessedItems = function createProcessedItems(items) {
1007
+ var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
1008
+ var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1009
+ var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
1010
+ var processedItems = [];
1011
+ items && items.forEach(function (item, index) {
1012
+ var key = (parentKey !== '' ? parentKey + '_' : '') + index;
1013
+ var newItem = {
1014
+ item: item,
1015
+ index: index,
1016
+ level: level,
1017
+ key: key,
1018
+ parent: parent,
1019
+ parentKey: parentKey
1020
+ };
1021
+ newItem['items'] = createProcessedItems(item.items, level + 1, newItem, key);
1022
+ processedItems.push(newItem);
1023
+ });
1024
+ return processedItems;
1025
+ };
610
1026
  var createStyle = function createStyle() {
611
1027
  if (!styleElementRef.current) {
612
- styleElementRef.current = utils.DomHandler.createInlineStyle(context && context.nonce || PrimeReact__default["default"].nonce);
1028
+ styleElementRef.current = utils.DomHandler.createInlineStyle(context && context.nonce || PrimeReact__default["default"].nonce, context && context.styleContainer);
613
1029
  var selector = "".concat(attributeSelectorState);
614
1030
  var innerHTML = "\n@media screen and (max-width: ".concat(props.breakpoint, ") {\n .p-tieredmenu[").concat(selector, "] > ul {\n max-height: ").concat(props.scrollHeight, ";\n overflow: ").concat(props.scrollHeight ? 'auto' : '', ";\n }\n\n .p-tieredmenu[").concat(selector, "] .p-submenu-list {\n position: relative;\n }\n\n .p-tieredmenu[").concat(selector, "] .p-menuitem-active > .p-submenu-list {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-tieredmenu[").concat(selector, "] .p-menuitem-active > .p-menuitem-link > .p-submenu-icon {\n transform: rotate(-180deg);\n }\n\n .p-tieredmenu[").concat(selector, "] .p-submenu-icon:before {\n content: \"\\e930\";\n }\n\n ").concat(!props.popup ? ".p-tieredmenu[".concat(selector, "] { width: 100%; }") : '', "\n}\n");
615
1031
  styleElementRef.current.innerHTML = innerHTML;
@@ -618,30 +1034,41 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
618
1034
  var destroyStyle = function destroyStyle() {
619
1035
  styleElementRef.current = utils.DomHandler.removeInlineStyle(styleElementRef.current);
620
1036
  };
1037
+ var alignOverlay = function alignOverlay() {
1038
+ utils.DomHandler.absolutePosition(containerRef.current, targetRef.current);
1039
+ var targetWidth = utils.DomHandler.getOuterWidth(targetRef.current);
1040
+ if (targetWidth > utils.DomHandler.getOuterWidth(containerRef.current)) {
1041
+ containerRef.current.style.minWidth = utils.DomHandler.getOuterWidth(targetRef.current) + 'px';
1042
+ }
1043
+ };
621
1044
  var onEnter = function onEnter() {
622
1045
  if (props.autoZIndex) {
623
- utils.ZIndexUtils.set('menu', menuRef.current, context && context.autoZIndex || PrimeReact__default["default"].autoZIndex, props.baseZIndex || context && context.zIndex['menu'] || PrimeReact__default["default"].zIndex['menu']);
1046
+ utils.ZIndexUtils.set('menu', containerRef.current, context && context.autoZIndex || PrimeReact__default["default"].autoZIndex, props.baseZIndex || context && context.zIndex['menu'] || PrimeReact__default["default"].zIndex['menu']);
624
1047
  }
625
- utils.DomHandler.addStyles(menuRef.current, {
1048
+ utils.DomHandler.addStyles(containerRef.current, {
626
1049
  position: 'absolute',
627
1050
  top: '0',
628
1051
  left: '0'
629
1052
  });
630
- utils.DomHandler.absolutePosition(menuRef.current, targetRef.current);
1053
+ alignOverlay();
1054
+ utils.DomHandler.focus(menuRef.current.getElement());
1055
+ scrollInView();
631
1056
  if (attributeSelectorState && props.breakpoint) {
632
- menuRef.current.setAttribute(attributeSelectorState, '');
1057
+ containerRef.current.setAttribute(attributeSelectorState, '');
633
1058
  createStyle();
634
1059
  }
635
1060
  };
636
1061
  var onEntered = function onEntered() {
637
- bindOverlayListener();
1062
+ bindDocumentClickListener();
1063
+ bindDocumentResizeListener();
638
1064
  };
639
1065
  var onExit = function onExit() {
640
1066
  targetRef.current = null;
641
- unbindOverlayListener();
1067
+ unbindDocumentClickListener();
1068
+ unbindDocumentResizeListener();
642
1069
  };
643
1070
  var onExited = function onExited() {
644
- utils.ZIndexUtils.clear(menuRef.current);
1071
+ utils.ZIndexUtils.clear(containerRef.current);
645
1072
  destroyStyle();
646
1073
  };
647
1074
  hooks.useMountEffect(function () {
@@ -652,8 +1079,45 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
652
1079
  }
653
1080
  });
654
1081
  hooks.useUpdateEffect(function () {
655
- if (attributeSelectorState && menuRef.current) {
656
- menuRef.current.setAttribute(attributeSelectorState, '');
1082
+ var itemsToProcess = props.model || [];
1083
+ var processed = createProcessedItems(itemsToProcess);
1084
+ setProcessedItems(processed);
1085
+ }, props.model);
1086
+ hooks.useUpdateEffect(function () {
1087
+ var processedItem = activeItemPath.find(function (p) {
1088
+ return p.key === focusedItemInfo.parentKey;
1089
+ });
1090
+ var processed = processedItem ? processedItem.items : processedItems;
1091
+ setVisibleItems(processed);
1092
+ }, [activeItemPath, focusedItemInfo, processedItems]);
1093
+ hooks.useUpdateEffect(function () {
1094
+ var focusedId = focusedItemInfo.index !== -1 ? "".concat(idState).concat(utils.ObjectUtils.isNotEmpty(focusedItemInfo.parentKey) ? '_' + focusedItemInfo.parentKey : '', "_").concat(focusedItemInfo.index) : null;
1095
+ setFocusedItemId(focusedId);
1096
+ }, [focusedItemInfo]);
1097
+ hooks.useUpdateEffect(function () {
1098
+ if (!props.popup) {
1099
+ if (utils.ObjectUtils.isNotEmpty(activeItemPath)) {
1100
+ bindDocumentClickListener();
1101
+ bindDocumentResizeListener();
1102
+ } else {
1103
+ unbindDocumentClickListener();
1104
+ unbindDocumentResizeListener();
1105
+ }
1106
+ }
1107
+ }, [activeItemPath]);
1108
+ hooks.useUpdateEffect(function () {
1109
+ if (focusTrigger) {
1110
+ var itemIndex = focusedItemInfo.index !== -1 ? findNextItemIndex(focusedItemInfo.index) : findFirstFocusedItemIndex();
1111
+ changeFocusedItemIndex(itemIndex);
1112
+ setActiveItemPath(activeItemPath.filter(function (p) {
1113
+ return p.parentKey !== focusedItemInfo.parentKey;
1114
+ }));
1115
+ setFocusTrigger(false);
1116
+ }
1117
+ }, [focusTrigger]);
1118
+ hooks.useUpdateEffect(function () {
1119
+ if (attributeSelectorState && containerRef.current) {
1120
+ containerRef.current.setAttribute(attributeSelectorState, '');
657
1121
  createStyle();
658
1122
  }
659
1123
  return function () {
@@ -661,7 +1125,7 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
661
1125
  };
662
1126
  }, [attributeSelectorState, props.breakpoint]);
663
1127
  hooks.useUnmountEffect(function () {
664
- utils.ZIndexUtils.clear(menuRef.current);
1128
+ utils.ZIndexUtils.clear(containerRef.current);
665
1129
  });
666
1130
  React__namespace.useImperativeHandle(ref, function () {
667
1131
  return {
@@ -670,13 +1134,13 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
670
1134
  show: show,
671
1135
  hide: hide,
672
1136
  getElement: function getElement() {
673
- return menuRef.current;
1137
+ return containerRef.current;
674
1138
  }
675
1139
  };
676
1140
  });
677
1141
  var createElement = function createElement() {
678
1142
  var rootProps = utils.mergeProps({
679
- ref: menuRef,
1143
+ ref: containerRef,
680
1144
  id: props.id,
681
1145
  className: cx('root'),
682
1146
  style: props.style,
@@ -697,17 +1161,31 @@ var TieredMenu = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespa
697
1161
  onExited: onExited
698
1162
  }, ptm('transition'));
699
1163
  return /*#__PURE__*/React__namespace.createElement(csstransition.CSSTransition, _extends({
700
- nodeRef: menuRef
1164
+ nodeRef: containerRef
701
1165
  }, transitionProps), /*#__PURE__*/React__namespace.createElement("div", rootProps, /*#__PURE__*/React__namespace.createElement(TieredMenuSub, {
702
- id: idState,
1166
+ id: idState + '_list',
1167
+ ref: menuRef,
703
1168
  hostName: "TieredMenu",
704
1169
  menuProps: props,
705
- model: props.model,
1170
+ tabIndex: 0,
1171
+ model: processedItems,
1172
+ ariaLabel: props.ariaLabel,
1173
+ ariaLabelledBy: props.ariaLabelledBy,
1174
+ ariaOrientation: "vertical",
1175
+ ariaActiveDescendant: focused ? focusedItemId : undefined,
1176
+ menuId: idState,
1177
+ level: 0,
1178
+ focusedItemId: focusedItemId,
1179
+ activeItemPath: activeItemPath,
1180
+ onFocus: onFocus,
1181
+ onBlur: onBlur,
1182
+ onKeyDown: onKeyDown,
1183
+ onItemClick: onItemClick,
1184
+ onItemMouseEnter: onItemMouseEnter,
706
1185
  root: true,
707
1186
  popup: props.popup,
708
1187
  onHide: hide,
709
1188
  isMobileMode: isMobileMode,
710
- onItemToggle: onItemToggle,
711
1189
  submenuIcon: props.submenuIcon,
712
1190
  ptm: ptm,
713
1191
  cx: cx,