primereact 10.4.0 → 10.5.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 (517) hide show
  1. package/api/api.d.ts +2 -2
  2. package/autocomplete/autocomplete.cjs.js +2 -3
  3. package/autocomplete/autocomplete.cjs.min.js +1 -1
  4. package/autocomplete/autocomplete.esm.js +2 -3
  5. package/autocomplete/autocomplete.esm.min.js +1 -1
  6. package/autocomplete/autocomplete.js +2 -3
  7. package/autocomplete/autocomplete.min.js +1 -1
  8. package/breadcrumb/breadcrumb.cjs.js +4 -3
  9. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  10. package/breadcrumb/breadcrumb.esm.js +4 -3
  11. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  12. package/breadcrumb/breadcrumb.js +4 -3
  13. package/breadcrumb/breadcrumb.min.js +1 -1
  14. package/button/button.cjs.js +2 -3
  15. package/button/button.cjs.min.js +1 -1
  16. package/button/button.esm.js +2 -3
  17. package/button/button.esm.min.js +1 -1
  18. package/button/button.js +2 -3
  19. package/button/button.min.js +1 -1
  20. package/calendar/calendar.cjs.js +12 -4
  21. package/calendar/calendar.cjs.min.js +1 -1
  22. package/calendar/calendar.esm.js +12 -4
  23. package/calendar/calendar.esm.min.js +1 -1
  24. package/calendar/calendar.js +12 -4
  25. package/calendar/calendar.min.js +1 -1
  26. package/checkbox/checkbox.cjs.js +4 -3
  27. package/checkbox/checkbox.cjs.min.js +1 -1
  28. package/checkbox/checkbox.esm.js +4 -3
  29. package/checkbox/checkbox.esm.min.js +1 -1
  30. package/checkbox/checkbox.js +4 -3
  31. package/checkbox/checkbox.min.js +1 -1
  32. package/chips/chips.cjs.js +111 -23
  33. package/chips/chips.cjs.min.js +1 -1
  34. package/chips/chips.esm.js +111 -23
  35. package/chips/chips.esm.min.js +1 -1
  36. package/chips/chips.js +111 -23
  37. package/chips/chips.min.js +1 -1
  38. package/colorpicker/colorpicker.cjs.js +2 -3
  39. package/colorpicker/colorpicker.cjs.min.js +1 -1
  40. package/colorpicker/colorpicker.esm.js +2 -3
  41. package/colorpicker/colorpicker.esm.min.js +1 -1
  42. package/colorpicker/colorpicker.js +2 -3
  43. package/colorpicker/colorpicker.min.js +1 -1
  44. package/confirmdialog/confirmdialog.cjs.js +6 -2
  45. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  46. package/confirmdialog/confirmdialog.esm.js +6 -2
  47. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  48. package/confirmdialog/confirmdialog.js +7 -3
  49. package/confirmdialog/confirmdialog.min.js +1 -1
  50. package/contextmenu/contextmenu.cjs.js +4 -3
  51. package/contextmenu/contextmenu.cjs.min.js +1 -1
  52. package/contextmenu/contextmenu.esm.js +4 -3
  53. package/contextmenu/contextmenu.esm.min.js +1 -1
  54. package/contextmenu/contextmenu.js +4 -3
  55. package/contextmenu/contextmenu.min.js +1 -1
  56. package/core/core.js +2459 -19563
  57. package/core/core.min.js +34 -34
  58. package/datatable/datatable.cjs.js +6 -5
  59. package/datatable/datatable.cjs.min.js +1 -1
  60. package/datatable/datatable.d.ts +10 -2
  61. package/datatable/datatable.esm.js +6 -5
  62. package/datatable/datatable.esm.min.js +1 -1
  63. package/datatable/datatable.js +6 -5
  64. package/datatable/datatable.min.js +1 -1
  65. package/dropdown/dropdown.cjs.js +329 -156
  66. package/dropdown/dropdown.cjs.min.js +1 -1
  67. package/dropdown/dropdown.esm.js +329 -156
  68. package/dropdown/dropdown.esm.min.js +1 -1
  69. package/dropdown/dropdown.js +329 -156
  70. package/dropdown/dropdown.min.js +1 -1
  71. package/icons/arrowdown/index.cjs.js +2 -642
  72. package/icons/arrowdown/index.cjs.min.js +1 -1
  73. package/icons/arrowdown/index.esm.js +2 -642
  74. package/icons/arrowdown/index.esm.min.js +1 -1
  75. package/icons/arrowdown/index.js +2 -642
  76. package/icons/arrowdown/index.min.js +1 -1
  77. package/icons/arrowup/index.cjs.js +2 -642
  78. package/icons/arrowup/index.cjs.min.js +1 -1
  79. package/icons/arrowup/index.esm.js +2 -642
  80. package/icons/arrowup/index.esm.min.js +1 -1
  81. package/icons/arrowup/index.js +2 -642
  82. package/icons/arrowup/index.min.js +1 -1
  83. package/icons/ban/index.cjs.js +2 -642
  84. package/icons/ban/index.cjs.min.js +1 -1
  85. package/icons/ban/index.esm.js +2 -642
  86. package/icons/ban/index.esm.min.js +1 -1
  87. package/icons/ban/index.js +2 -642
  88. package/icons/ban/index.min.js +1 -1
  89. package/icons/blank/index.cjs.js +62 -0
  90. package/icons/blank/index.cjs.min.js +1 -0
  91. package/icons/blank/index.d.ts +19 -0
  92. package/icons/blank/index.esm.js +38 -0
  93. package/icons/blank/index.esm.min.js +1 -0
  94. package/icons/blank/index.js +65 -0
  95. package/icons/blank/index.min.js +1 -0
  96. package/icons/blank/package.json +7 -0
  97. package/icons/download/index.cjs.js +2 -642
  98. package/icons/download/index.cjs.min.js +1 -1
  99. package/icons/download/index.esm.js +2 -642
  100. package/icons/download/index.esm.min.js +1 -1
  101. package/icons/download/index.js +2 -642
  102. package/icons/download/index.min.js +1 -1
  103. package/icons/exclamationtriangle/index.cjs.js +2 -642
  104. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  105. package/icons/exclamationtriangle/index.esm.js +2 -642
  106. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  107. package/icons/exclamationtriangle/index.js +2 -642
  108. package/icons/exclamationtriangle/index.min.js +1 -1
  109. package/icons/eyeslash/index.cjs.js +2 -642
  110. package/icons/eyeslash/index.cjs.min.js +1 -1
  111. package/icons/eyeslash/index.esm.js +2 -642
  112. package/icons/eyeslash/index.esm.min.js +1 -1
  113. package/icons/eyeslash/index.js +2 -642
  114. package/icons/eyeslash/index.min.js +1 -1
  115. package/icons/filter/index.cjs.js +2 -642
  116. package/icons/filter/index.cjs.min.js +1 -1
  117. package/icons/filter/index.esm.js +2 -642
  118. package/icons/filter/index.esm.min.js +1 -1
  119. package/icons/filter/index.js +2 -642
  120. package/icons/filter/index.min.js +1 -1
  121. package/icons/filterslash/index.cjs.js +2 -642
  122. package/icons/filterslash/index.cjs.min.js +1 -1
  123. package/icons/filterslash/index.esm.js +2 -642
  124. package/icons/filterslash/index.esm.min.js +1 -1
  125. package/icons/filterslash/index.js +2 -642
  126. package/icons/filterslash/index.min.js +1 -1
  127. package/icons/infocircle/index.cjs.js +2 -642
  128. package/icons/infocircle/index.cjs.min.js +1 -1
  129. package/icons/infocircle/index.esm.js +2 -642
  130. package/icons/infocircle/index.esm.min.js +1 -1
  131. package/icons/infocircle/index.js +2 -642
  132. package/icons/infocircle/index.min.js +1 -1
  133. package/icons/pencil/index.cjs.js +2 -642
  134. package/icons/pencil/index.cjs.min.js +1 -1
  135. package/icons/pencil/index.esm.js +2 -642
  136. package/icons/pencil/index.esm.min.js +1 -1
  137. package/icons/pencil/index.js +2 -642
  138. package/icons/pencil/index.min.js +1 -1
  139. package/icons/plus/index.cjs.js +2 -642
  140. package/icons/plus/index.cjs.min.js +1 -1
  141. package/icons/plus/index.esm.js +2 -642
  142. package/icons/plus/index.esm.min.js +1 -1
  143. package/icons/plus/index.js +2 -642
  144. package/icons/plus/index.min.js +1 -1
  145. package/icons/refresh/index.cjs.js +2 -642
  146. package/icons/refresh/index.cjs.min.js +1 -1
  147. package/icons/refresh/index.esm.js +2 -642
  148. package/icons/refresh/index.esm.min.js +1 -1
  149. package/icons/refresh/index.js +2 -642
  150. package/icons/refresh/index.min.js +1 -1
  151. package/icons/search/index.cjs.js +2 -642
  152. package/icons/search/index.cjs.min.js +1 -1
  153. package/icons/search/index.esm.js +2 -642
  154. package/icons/search/index.esm.min.js +1 -1
  155. package/icons/search/index.js +2 -642
  156. package/icons/search/index.min.js +1 -1
  157. package/icons/searchminus/index.cjs.js +2 -642
  158. package/icons/searchminus/index.cjs.min.js +1 -1
  159. package/icons/searchminus/index.esm.js +2 -642
  160. package/icons/searchminus/index.esm.min.js +1 -1
  161. package/icons/searchminus/index.js +2 -642
  162. package/icons/searchminus/index.min.js +1 -1
  163. package/icons/searchplus/index.cjs.js +2 -642
  164. package/icons/searchplus/index.cjs.min.js +1 -1
  165. package/icons/searchplus/index.esm.js +2 -642
  166. package/icons/searchplus/index.esm.min.js +1 -1
  167. package/icons/searchplus/index.js +2 -642
  168. package/icons/searchplus/index.min.js +1 -1
  169. package/icons/sortalt/index.cjs.js +2 -642
  170. package/icons/sortalt/index.cjs.min.js +1 -1
  171. package/icons/sortalt/index.esm.js +2 -642
  172. package/icons/sortalt/index.esm.min.js +1 -1
  173. package/icons/sortalt/index.js +2 -642
  174. package/icons/sortalt/index.min.js +1 -1
  175. package/icons/sortamountdown/index.cjs.js +2 -642
  176. package/icons/sortamountdown/index.cjs.min.js +1 -1
  177. package/icons/sortamountdown/index.esm.js +2 -642
  178. package/icons/sortamountdown/index.esm.min.js +1 -1
  179. package/icons/sortamountdown/index.js +2 -642
  180. package/icons/sortamountdown/index.min.js +1 -1
  181. package/icons/sortamountupalt/index.cjs.js +2 -642
  182. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  183. package/icons/sortamountupalt/index.esm.js +2 -642
  184. package/icons/sortamountupalt/index.esm.min.js +1 -1
  185. package/icons/sortamountupalt/index.js +2 -642
  186. package/icons/sortamountupalt/index.min.js +1 -1
  187. package/icons/spinner/index.cjs.js +2 -642
  188. package/icons/spinner/index.cjs.min.js +1 -1
  189. package/icons/spinner/index.esm.js +2 -642
  190. package/icons/spinner/index.esm.min.js +1 -1
  191. package/icons/spinner/index.js +2 -642
  192. package/icons/spinner/index.min.js +1 -1
  193. package/icons/star/index.cjs.js +2 -642
  194. package/icons/star/index.cjs.min.js +1 -1
  195. package/icons/star/index.esm.js +2 -642
  196. package/icons/star/index.esm.min.js +1 -1
  197. package/icons/star/index.js +2 -642
  198. package/icons/star/index.min.js +1 -1
  199. package/icons/starfill/index.cjs.js +2 -642
  200. package/icons/starfill/index.cjs.min.js +1 -1
  201. package/icons/starfill/index.esm.js +2 -642
  202. package/icons/starfill/index.esm.min.js +1 -1
  203. package/icons/starfill/index.js +2 -642
  204. package/icons/starfill/index.min.js +1 -1
  205. package/icons/thlarge/index.cjs.js +2 -642
  206. package/icons/thlarge/index.cjs.min.js +1 -1
  207. package/icons/thlarge/index.esm.js +2 -642
  208. package/icons/thlarge/index.esm.min.js +1 -1
  209. package/icons/thlarge/index.js +2 -642
  210. package/icons/thlarge/index.min.js +1 -1
  211. package/icons/timescircle/index.cjs.js +2 -642
  212. package/icons/timescircle/index.cjs.min.js +1 -1
  213. package/icons/timescircle/index.esm.js +2 -642
  214. package/icons/timescircle/index.esm.min.js +1 -1
  215. package/icons/timescircle/index.js +2 -642
  216. package/icons/timescircle/index.min.js +1 -1
  217. package/icons/trash/index.cjs.js +2 -642
  218. package/icons/trash/index.cjs.min.js +1 -1
  219. package/icons/trash/index.esm.js +2 -642
  220. package/icons/trash/index.esm.min.js +1 -1
  221. package/icons/trash/index.js +2 -642
  222. package/icons/trash/index.min.js +1 -1
  223. package/icons/undo/index.cjs.js +2 -642
  224. package/icons/undo/index.cjs.min.js +1 -1
  225. package/icons/undo/index.esm.js +2 -642
  226. package/icons/undo/index.esm.min.js +1 -1
  227. package/icons/undo/index.js +2 -642
  228. package/icons/undo/index.min.js +1 -1
  229. package/icons/upload/index.cjs.js +2 -642
  230. package/icons/upload/index.cjs.min.js +1 -1
  231. package/icons/upload/index.esm.js +2 -642
  232. package/icons/upload/index.esm.min.js +1 -1
  233. package/icons/upload/index.js +2 -642
  234. package/icons/upload/index.min.js +1 -1
  235. package/icons/windowmaximize/index.cjs.js +2 -642
  236. package/icons/windowmaximize/index.cjs.min.js +1 -1
  237. package/icons/windowmaximize/index.esm.js +2 -642
  238. package/icons/windowmaximize/index.esm.min.js +1 -1
  239. package/icons/windowmaximize/index.js +2 -642
  240. package/icons/windowmaximize/index.min.js +1 -1
  241. package/icons/windowminimize/index.cjs.js +2 -642
  242. package/icons/windowminimize/index.cjs.min.js +1 -1
  243. package/icons/windowminimize/index.esm.js +2 -642
  244. package/icons/windowminimize/index.esm.min.js +1 -1
  245. package/icons/windowminimize/index.js +2 -642
  246. package/icons/windowminimize/index.min.js +1 -1
  247. package/image/image.cjs.js +7 -566
  248. package/image/image.cjs.min.js +1 -1
  249. package/image/image.esm.js +9 -568
  250. package/image/image.esm.min.js +1 -1
  251. package/image/image.js +7 -566
  252. package/image/image.min.js +1 -1
  253. package/inputnumber/inputnumber.cjs.js +23 -20
  254. package/inputnumber/inputnumber.cjs.min.js +1 -1
  255. package/inputnumber/inputnumber.esm.js +23 -20
  256. package/inputnumber/inputnumber.esm.min.js +1 -1
  257. package/inputnumber/inputnumber.js +23 -20
  258. package/inputnumber/inputnumber.min.js +1 -1
  259. package/inputswitch/inputswitch.cjs.js +5 -4
  260. package/inputswitch/inputswitch.cjs.min.js +1 -1
  261. package/inputswitch/inputswitch.esm.js +5 -4
  262. package/inputswitch/inputswitch.esm.min.js +1 -1
  263. package/inputswitch/inputswitch.js +5 -4
  264. package/inputswitch/inputswitch.min.js +1 -1
  265. package/inputtext/inputtext.cjs.js +2 -3
  266. package/inputtext/inputtext.cjs.min.js +1 -1
  267. package/inputtext/inputtext.esm.js +2 -3
  268. package/inputtext/inputtext.esm.min.js +1 -1
  269. package/inputtext/inputtext.js +2 -3
  270. package/inputtext/inputtext.min.js +1 -1
  271. package/inputtextarea/inputtextarea.cjs.js +2 -3
  272. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  273. package/inputtextarea/inputtextarea.esm.js +2 -3
  274. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  275. package/inputtextarea/inputtextarea.js +2 -3
  276. package/inputtextarea/inputtextarea.min.js +1 -1
  277. package/knob/knob.cjs.js +62 -0
  278. package/knob/knob.cjs.min.js +1 -1
  279. package/knob/knob.esm.js +62 -0
  280. package/knob/knob.esm.min.js +1 -1
  281. package/knob/knob.js +62 -0
  282. package/knob/knob.min.js +1 -1
  283. package/listbox/listbox.cjs.js +364 -95
  284. package/listbox/listbox.cjs.min.js +1 -1
  285. package/listbox/listbox.esm.js +365 -96
  286. package/listbox/listbox.esm.min.js +1 -1
  287. package/listbox/listbox.js +364 -95
  288. package/listbox/listbox.min.js +1 -1
  289. package/megamenu/megamenu.cjs.js +3 -3
  290. package/megamenu/megamenu.cjs.min.js +1 -1
  291. package/megamenu/megamenu.esm.js +3 -3
  292. package/megamenu/megamenu.esm.min.js +1 -1
  293. package/megamenu/megamenu.js +3 -3
  294. package/megamenu/megamenu.min.js +1 -1
  295. package/mention/mention.cjs.js +2 -3
  296. package/mention/mention.cjs.min.js +1 -1
  297. package/mention/mention.esm.js +2 -3
  298. package/mention/mention.esm.min.js +1 -1
  299. package/mention/mention.js +2 -3
  300. package/mention/mention.min.js +1 -1
  301. package/menu/menu.cjs.js +4 -2
  302. package/menu/menu.cjs.min.js +1 -1
  303. package/menu/menu.esm.js +4 -2
  304. package/menu/menu.esm.min.js +1 -1
  305. package/menu/menu.js +5 -4
  306. package/menu/menu.min.js +1 -1
  307. package/menubar/menubar.cjs.js +18 -14
  308. package/menubar/menubar.cjs.min.js +1 -1
  309. package/menubar/menubar.esm.js +18 -14
  310. package/menubar/menubar.esm.min.js +1 -1
  311. package/menubar/menubar.js +18 -14
  312. package/menubar/menubar.min.js +1 -1
  313. package/multiselect/multiselect.cjs.js +412 -116
  314. package/multiselect/multiselect.cjs.min.js +1 -1
  315. package/multiselect/multiselect.esm.js +412 -116
  316. package/multiselect/multiselect.esm.min.js +1 -1
  317. package/multiselect/multiselect.js +412 -116
  318. package/multiselect/multiselect.min.js +1 -1
  319. package/multistatecheckbox/multistatecheckbox.cjs.js +2 -3
  320. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  321. package/multistatecheckbox/multistatecheckbox.esm.js +2 -3
  322. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  323. package/multistatecheckbox/multistatecheckbox.js +2 -3
  324. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  325. package/package.json +1 -1
  326. package/paginator/paginator.cjs.js +251 -251
  327. package/paginator/paginator.cjs.min.js +1 -1
  328. package/paginator/paginator.esm.js +258 -258
  329. package/paginator/paginator.esm.min.js +1 -1
  330. package/paginator/paginator.js +251 -251
  331. package/paginator/paginator.min.js +1 -1
  332. package/panelmenu/panelmenu.cjs.js +8 -10
  333. package/panelmenu/panelmenu.cjs.min.js +1 -1
  334. package/panelmenu/panelmenu.d.ts +18 -0
  335. package/panelmenu/panelmenu.esm.js +8 -10
  336. package/panelmenu/panelmenu.esm.min.js +1 -1
  337. package/panelmenu/panelmenu.js +9 -12
  338. package/panelmenu/panelmenu.min.js +1 -1
  339. package/passthrough/tailwind/index.cjs.js +14 -3
  340. package/passthrough/tailwind/index.cjs.min.js +1 -1
  341. package/passthrough/tailwind/index.esm.js +14 -3
  342. package/passthrough/tailwind/index.esm.min.js +1 -1
  343. package/passthrough/tailwind/index.js +14 -3
  344. package/passthrough/tailwind/index.min.js +1 -1
  345. package/password/password.cjs.js +18 -6
  346. package/password/password.cjs.min.js +1 -1
  347. package/password/password.esm.js +18 -6
  348. package/password/password.esm.min.js +1 -1
  349. package/password/password.js +18 -6
  350. package/password/password.min.js +1 -1
  351. package/picklist/picklist.cjs.js +1 -1
  352. package/picklist/picklist.cjs.min.js +1 -1
  353. package/picklist/picklist.esm.js +1 -1
  354. package/picklist/picklist.esm.min.js +1 -1
  355. package/picklist/picklist.js +1 -1
  356. package/picklist/picklist.min.js +1 -1
  357. package/primereact.all.cjs.js +1734 -1194
  358. package/primereact.all.cjs.min.js +1 -1
  359. package/primereact.all.esm.js +1734 -1194
  360. package/primereact.all.esm.min.js +1 -1
  361. package/primereact.all.js +1734 -1194
  362. package/primereact.all.min.js +1 -1
  363. package/radiobutton/radiobutton.cjs.js +2 -3
  364. package/radiobutton/radiobutton.cjs.min.js +1 -1
  365. package/radiobutton/radiobutton.esm.js +2 -3
  366. package/radiobutton/radiobutton.esm.min.js +1 -1
  367. package/radiobutton/radiobutton.js +2 -3
  368. package/radiobutton/radiobutton.min.js +1 -1
  369. package/rating/rating.cjs.js +105 -7
  370. package/rating/rating.cjs.min.js +1 -1
  371. package/rating/rating.esm.js +105 -7
  372. package/rating/rating.esm.min.js +1 -1
  373. package/rating/rating.js +105 -7
  374. package/rating/rating.min.js +1 -1
  375. package/resources/themes/arya-blue/theme.css +328 -67
  376. package/resources/themes/arya-green/theme.css +328 -67
  377. package/resources/themes/arya-orange/theme.css +328 -67
  378. package/resources/themes/arya-purple/theme.css +26 -6
  379. package/resources/themes/bootstrap4-dark-blue/theme.css +328 -67
  380. package/resources/themes/bootstrap4-dark-purple/theme.css +26 -6
  381. package/resources/themes/bootstrap4-light-blue/theme.css +328 -67
  382. package/resources/themes/bootstrap4-light-purple/theme.css +26 -6
  383. package/resources/themes/fluent-light/theme.css +327 -66
  384. package/resources/themes/lara-dark-amber/theme.css +328 -67
  385. package/resources/themes/lara-dark-blue/theme.css +328 -67
  386. package/resources/themes/lara-dark-cyan/theme.css +328 -67
  387. package/resources/themes/lara-dark-green/theme.css +328 -67
  388. package/resources/themes/lara-dark-indigo/theme.css +328 -67
  389. package/resources/themes/lara-dark-pink/theme.css +328 -67
  390. package/resources/themes/lara-dark-purple/theme.css +26 -6
  391. package/resources/themes/lara-dark-teal/theme.css +328 -67
  392. package/resources/themes/lara-light-amber/theme.css +328 -67
  393. package/resources/themes/lara-light-blue/theme.css +328 -67
  394. package/resources/themes/lara-light-cyan/theme.css +328 -67
  395. package/resources/themes/lara-light-green/theme.css +328 -67
  396. package/resources/themes/lara-light-indigo/theme.css +328 -67
  397. package/resources/themes/lara-light-pink/theme.css +328 -67
  398. package/resources/themes/lara-light-purple/theme.css +26 -6
  399. package/resources/themes/lara-light-teal/theme.css +328 -67
  400. package/resources/themes/luna-amber/theme.css +328 -67
  401. package/resources/themes/luna-blue/theme.css +328 -67
  402. package/resources/themes/luna-green/theme.css +328 -67
  403. package/resources/themes/luna-pink/theme.css +328 -67
  404. package/resources/themes/md-dark-deeppurple/theme.css +158 -138
  405. package/resources/themes/md-dark-indigo/theme.css +454 -193
  406. package/resources/themes/md-light-deeppurple/theme.css +26 -6
  407. package/resources/themes/md-light-indigo/theme.css +328 -67
  408. package/resources/themes/mdc-dark-deeppurple/theme.css +158 -138
  409. package/resources/themes/mdc-dark-indigo/theme.css +454 -193
  410. package/resources/themes/mdc-light-deeppurple/theme.css +26 -6
  411. package/resources/themes/mdc-light-indigo/theme.css +328 -67
  412. package/resources/themes/mira/theme.css +328 -67
  413. package/resources/themes/nano/theme.css +328 -67
  414. package/resources/themes/nova/theme.css +328 -67
  415. package/resources/themes/nova-accent/theme.css +328 -67
  416. package/resources/themes/nova-alt/theme.css +328 -67
  417. package/resources/themes/rhea/theme.css +328 -67
  418. package/resources/themes/saga-blue/theme.css +328 -67
  419. package/resources/themes/saga-green/theme.css +328 -67
  420. package/resources/themes/saga-orange/theme.css +328 -67
  421. package/resources/themes/saga-purple/theme.css +26 -6
  422. package/resources/themes/soho-dark/theme.css +353 -92
  423. package/resources/themes/soho-light/theme.css +328 -67
  424. package/resources/themes/tailwind-light/theme.css +329 -71
  425. package/resources/themes/vela-blue/theme.css +328 -67
  426. package/resources/themes/vela-green/theme.css +328 -67
  427. package/resources/themes/vela-orange/theme.css +328 -67
  428. package/resources/themes/vela-purple/theme.css +26 -6
  429. package/resources/themes/viva-dark/theme.css +328 -67
  430. package/resources/themes/viva-light/theme.css +328 -67
  431. package/selectbutton/selectbutton.cjs.js +98 -53
  432. package/selectbutton/selectbutton.cjs.min.js +1 -1
  433. package/selectbutton/selectbutton.esm.js +98 -53
  434. package/selectbutton/selectbutton.esm.min.js +1 -1
  435. package/selectbutton/selectbutton.js +98 -53
  436. package/selectbutton/selectbutton.min.js +1 -1
  437. package/slidemenu/slidemenu.cjs.js +4 -3
  438. package/slidemenu/slidemenu.cjs.min.js +1 -1
  439. package/slidemenu/slidemenu.esm.js +4 -3
  440. package/slidemenu/slidemenu.esm.min.js +1 -1
  441. package/slidemenu/slidemenu.js +4 -3
  442. package/slidemenu/slidemenu.min.js +1 -1
  443. package/slider/slider.cjs.js +25 -4
  444. package/slider/slider.cjs.min.js +1 -1
  445. package/slider/slider.esm.js +25 -4
  446. package/slider/slider.esm.min.js +1 -1
  447. package/slider/slider.js +25 -4
  448. package/slider/slider.min.js +1 -1
  449. package/splitbutton/splitbutton.cjs.js +9 -12
  450. package/splitbutton/splitbutton.cjs.min.js +1 -1
  451. package/splitbutton/splitbutton.esm.js +9 -12
  452. package/splitbutton/splitbutton.esm.min.js +1 -1
  453. package/splitbutton/splitbutton.js +9 -12
  454. package/splitbutton/splitbutton.min.js +1 -1
  455. package/splitter/splitter.cjs.js +25 -29
  456. package/splitter/splitter.cjs.min.js +1 -1
  457. package/splitter/splitter.esm.js +25 -29
  458. package/splitter/splitter.esm.min.js +1 -1
  459. package/splitter/splitter.js +25 -29
  460. package/splitter/splitter.min.js +1 -1
  461. package/steps/steps.cjs.js +4 -3
  462. package/steps/steps.cjs.min.js +1 -1
  463. package/steps/steps.esm.js +4 -3
  464. package/steps/steps.esm.min.js +1 -1
  465. package/steps/steps.js +4 -3
  466. package/steps/steps.min.js +1 -1
  467. package/tabmenu/tabmenu.cjs.js +4 -3
  468. package/tabmenu/tabmenu.cjs.min.js +1 -1
  469. package/tabmenu/tabmenu.esm.js +4 -3
  470. package/tabmenu/tabmenu.esm.min.js +1 -1
  471. package/tabmenu/tabmenu.js +4 -3
  472. package/tabmenu/tabmenu.min.js +1 -1
  473. package/tabview/tabview.cjs.js +6 -5
  474. package/tabview/tabview.cjs.min.js +1 -1
  475. package/tabview/tabview.d.ts +39 -34
  476. package/tabview/tabview.esm.js +6 -5
  477. package/tabview/tabview.esm.min.js +1 -1
  478. package/tabview/tabview.js +6 -5
  479. package/tabview/tabview.min.js +1 -1
  480. package/tieredmenu/tieredmenu.cjs.js +6 -8
  481. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  482. package/tieredmenu/tieredmenu.esm.js +6 -8
  483. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  484. package/tieredmenu/tieredmenu.js +6 -8
  485. package/tieredmenu/tieredmenu.min.js +1 -1
  486. package/togglebutton/togglebutton.cjs.js +17 -17
  487. package/togglebutton/togglebutton.cjs.min.js +1 -1
  488. package/togglebutton/togglebutton.esm.js +16 -16
  489. package/togglebutton/togglebutton.esm.min.js +1 -1
  490. package/togglebutton/togglebutton.js +17 -17
  491. package/togglebutton/togglebutton.min.js +1 -1
  492. package/tree/tree.cjs.js +32 -31
  493. package/tree/tree.cjs.min.js +1 -1
  494. package/tree/tree.d.ts +5 -0
  495. package/tree/tree.esm.js +32 -31
  496. package/tree/tree.esm.min.js +1 -1
  497. package/tree/tree.js +32 -31
  498. package/tree/tree.min.js +1 -1
  499. package/treeselect/treeselect.cjs.js +3 -4
  500. package/treeselect/treeselect.cjs.min.js +1 -1
  501. package/treeselect/treeselect.esm.js +3 -4
  502. package/treeselect/treeselect.esm.min.js +1 -1
  503. package/treeselect/treeselect.js +3 -4
  504. package/treeselect/treeselect.min.js +1 -1
  505. package/treetable/treetable.cjs.js +1 -1
  506. package/treetable/treetable.cjs.min.js +1 -1
  507. package/treetable/treetable.esm.js +1 -1
  508. package/treetable/treetable.esm.min.js +1 -1
  509. package/treetable/treetable.js +1 -1
  510. package/treetable/treetable.min.js +1 -1
  511. package/tristatecheckbox/tristatecheckbox.cjs.js +6 -6
  512. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  513. package/tristatecheckbox/tristatecheckbox.esm.js +6 -6
  514. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  515. package/tristatecheckbox/tristatecheckbox.js +6 -6
  516. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  517. package/web-types.json +65 -1
@@ -105,6 +105,10 @@ function _toConsumableArray(arr) {
105
105
  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread();
106
106
  }
107
107
 
108
+ function _readOnlyError(name) {
109
+ throw new TypeError("\"" + name + "\" is read-only");
110
+ }
111
+
108
112
  function _arrayWithHoles(arr) {
109
113
  if (Array.isArray(arr)) return arr;
110
114
  }
@@ -206,7 +210,8 @@ var classes$1 = {
206
210
  var props = _ref5.itemProps;
207
211
  return classNames('p-multiselect-item', {
208
212
  'p-highlight': props.selected,
209
- 'p-disabled': props.disabled
213
+ 'p-disabled': props.disabled,
214
+ 'p-focus': props.focusedOptionIndex === props.index
210
215
  });
211
216
  },
212
217
  checkboxContainer: 'p-checkbox p-component',
@@ -219,7 +224,7 @@ var classes$1 = {
219
224
  },
220
225
  transition: 'p-connected-overlay'
221
226
  };
222
- var styles$1 = "\n@layer primereact {\n .p-multiselect {\n display: inline-flex;\n user-select: none;\n cursor: pointer;\n }\n \n .p-multiselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n cursor: pointer;\n }\n \n .p-multiselect-label-container {\n overflow: hidden;\n flex: 1 1 auto;\n cursor: pointer;\n }\n \n .p-multiselect-label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .p-multiselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n .p-multiselect-token {\n cursor: default;\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n }\n \n .p-multiselect-token-icon {\n cursor: pointer;\n }\n \n .p-multiselect .p-multiselect-panel {\n min-width: 100%;\n }\n \n .p-multiselect-inline.p-multiselect-panel {\n border: none;\n position: initial;\n background: none;\n box-shadow: none;\n }\n \n .p-multiselect-inline.p-multiselect-panel .p-multiselect-items {\n padding: 0;\n }\n \n .p-multiselect-flex.p-multiselect-panel .p-multiselect-items {\n display: flex;\n flex-wrap: wrap;\n }\n \n .p-multiselect-items-wrapper {\n overflow: auto;\n }\n \n .p-multiselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-multiselect-item {\n cursor: pointer;\n display: flex;\n align-items: center;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-multiselect-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-multiselect-select-all-label {\n margin-left: 0.5rem;\n }\n \n .p-multiselect-filter-container {\n position: relative;\n flex: 1 1 auto;\n }\n \n .p-multiselect-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-multiselect-filter-container .p-inputtext {\n width: 100%;\n }\n \n .p-multiselect-close {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n position: relative;\n margin-left: auto;\n }\n \n .p-multiselect-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-multiselect {\n display: flex;\n }\n}\n";
227
+ var styles$1 = "\n@layer primereact {\n .p-multiselect {\n display: inline-flex;\n user-select: none;\n cursor: pointer;\n }\n \n .p-multiselect-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n cursor: pointer;\n }\n \n .p-multiselect-label-container {\n overflow: hidden;\n flex: 1 1 auto;\n cursor: pointer;\n }\n \n .p-multiselect-label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .p-multiselect-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n .p-multiselect-token {\n cursor: default;\n display: inline-flex;\n align-items: center;\n flex: 0 0 auto;\n }\n \n .p-multiselect-token-icon {\n cursor: pointer;\n }\n \n .p-multiselect .p-multiselect-panel {\n min-width: 100%;\n }\n \n .p-multiselect-inline.p-multiselect-panel {\n border: none;\n position: initial;\n background: none;\n box-shadow: none;\n }\n \n .p-multiselect-inline.p-multiselect-panel .p-multiselect-items {\n padding: 0;\n }\n \n .p-multiselect-flex.p-multiselect-panel .p-multiselect-items {\n display: flex;\n flex-wrap: wrap;\n }\n \n .p-multiselect-items-wrapper {\n overflow: auto;\n }\n \n .p-multiselect-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-multiselect-item {\n cursor: pointer;\n display: flex;\n align-items: center;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n outline: none;\n }\n \n .p-multiselect-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n \n .p-multiselect-select-all-label {\n margin-left: 0.5rem;\n }\n \n .p-multiselect-filter-container {\n position: relative;\n flex: 1 1 auto;\n }\n \n .p-multiselect-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-multiselect-filter-container .p-inputtext {\n width: 100%;\n }\n \n .p-multiselect-close {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n position: relative;\n margin-left: auto;\n }\n \n .p-multiselect-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n right: 3rem;\n }\n \n .p-fluid .p-multiselect {\n display: flex;\n }\n}\n";
223
228
  var inlineStyles = {
224
229
  root: function root(_ref7) {
225
230
  var props = _ref7.props;
@@ -253,6 +258,8 @@ var MultiSelectBase = ComponentBase.extend({
253
258
  filterBy: null,
254
259
  filterInputAutoFocus: true,
255
260
  filterLocale: undefined,
261
+ selectOnFocus: false,
262
+ autoOptionFocus: false,
256
263
  filterMatchMode: 'contains',
257
264
  filterPlaceholder: null,
258
265
  filterTemplate: null,
@@ -265,6 +272,7 @@ var MultiSelectBase = ComponentBase.extend({
265
272
  itemCheckboxIcon: null,
266
273
  itemClassName: null,
267
274
  itemTemplate: null,
275
+ loading: false,
268
276
  maxSelectedLabels: null,
269
277
  name: null,
270
278
  onBlur: null,
@@ -505,6 +513,8 @@ var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
505
513
  onClick: function onClick(e) {
506
514
  return _onClick(e);
507
515
  },
516
+ 'data-p-highlight': checked,
517
+ 'data-p-disabled': props.disabled,
508
518
  onContextMenu: props.onContextMenu,
509
519
  onMouseDown: props.onMouseDown
510
520
  }, otherProps, ptm('root'));
@@ -545,10 +555,9 @@ var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
545
555
  ref: inputRef
546
556
  }, hiddenInputProps))), /*#__PURE__*/React.createElement("div", inputProps, checkboxIcon)), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
547
557
  target: elementRef,
548
- content: props.tooltip
549
- }, props.tooltipOptions, {
558
+ content: props.tooltip,
550
559
  pt: ptm('tooltip')
551
- })));
560
+ }, props.tooltipOptions)));
552
561
  }));
553
562
  Checkbox.displayName = 'Checkbox';
554
563
 
@@ -712,7 +721,9 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
712
721
  context: {
713
722
  selected: props.selected,
714
723
  disabled: props.disabled,
715
- focused: focusedState
724
+ focused: focusedState,
725
+ focusedIndex: props.focusedIndex,
726
+ index: props.index
716
727
  }
717
728
  });
718
729
  };
@@ -724,22 +735,11 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
724
735
  };
725
736
  var onClick = function onClick(event) {
726
737
  if (props.onClick) {
727
- props.onClick({
728
- originalEvent: event,
729
- option: props.option
730
- });
738
+ props.onClick(event, props.option);
731
739
  }
732
740
  event.preventDefault();
733
741
  event.stopPropagation();
734
742
  };
735
- var onKeyDown = function onKeyDown(event) {
736
- if (props.onKeyDown) {
737
- props.onKeyDown({
738
- originalEvent: event,
739
- option: props.option
740
- });
741
- }
742
- };
743
743
  var checkboxIconProps = mergeProps({
744
744
  className: cx('checkboxIcon')
745
745
  }, getPTOptions('checkboxIcon'));
@@ -748,7 +748,7 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
748
748
  selected: props.selected
749
749
  }) : null;
750
750
  var content = props.template ? ObjectUtils.getJSXElement(props.template, props.option) : props.label;
751
- var tabIndex = props.disabled ? null : props.tabIndex || 0;
751
+ var tabIndex = props.disabled ? -1 : props.tabIndex;
752
752
  var checkboxContainerProps = mergeProps({
753
753
  className: cx('checkboxContainer')
754
754
  }, getPTOptions('checkboxContainer'));
@@ -764,7 +764,6 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
764
764
  })),
765
765
  style: props.style,
766
766
  onClick: onClick,
767
- onKeyDown: onKeyDown,
768
767
  onFocus: onFocus,
769
768
  onBlur: onBlur,
770
769
  tabIndex: tabIndex,
@@ -866,14 +865,15 @@ var MultiSelectPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(fu
866
865
  var selected = props.isSelected(option);
867
866
  return /*#__PURE__*/React.createElement(MultiSelectItem, {
868
867
  hostName: props.hostName,
868
+ index: j,
869
869
  key: optionKey,
870
+ focusedOptionIndex: props.focusedOptionIndex,
870
871
  label: optionLabel,
871
872
  option: option,
872
873
  style: style,
873
874
  template: props.itemTemplate,
874
875
  selected: selected,
875
876
  onClick: props.onOptionSelect,
876
- onKeyDown: props.onOptionKeyDown,
877
877
  tabIndex: tabIndex,
878
878
  disabled: disabled,
879
879
  className: props.itemClassName,
@@ -924,13 +924,14 @@ var MultiSelectPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(fu
924
924
  return /*#__PURE__*/React.createElement(MultiSelectItem, {
925
925
  hostName: props.hostName,
926
926
  key: optionKey,
927
+ focusedOptionIndex: props.focusedOptionIndex,
927
928
  label: optionLabel,
928
929
  option: option,
929
930
  style: style,
931
+ index: index,
930
932
  template: props.itemTemplate,
931
933
  selected: selected,
932
934
  onClick: props.onOptionSelect,
933
- onKeyDown: props.onOptionKeyDown,
934
935
  tabIndex: tabIndex,
935
936
  disabled: disabled,
936
937
  className: props.itemClassName,
@@ -1035,11 +1036,31 @@ var MultiSelectPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(fu
1035
1036
  onExit: props.onExit,
1036
1037
  onExited: props.onExited
1037
1038
  }, getPTOptions('transition'));
1039
+ var firstHiddenElementProps = mergeProps({
1040
+ ref: props.firstHiddenFocusableElementOnOverlay,
1041
+ role: 'presentation',
1042
+ 'aria-hidden': 'true',
1043
+ className: 'p-hidden-accessible p-hidden-focusable',
1044
+ tabIndex: '0',
1045
+ onFocus: props.onFirstHiddenFocus,
1046
+ 'data-p-hidden-accessible': true,
1047
+ 'data-p-hidden-focusable': true
1048
+ }, ptm('hiddenFirstFocusableEl'));
1049
+ var lastHiddenElementProps = mergeProps({
1050
+ ref: props.lastHiddenFocusableElementOnOverlay,
1051
+ role: 'presentation',
1052
+ 'aria-hidden': 'true',
1053
+ className: 'p-hidden-accessible p-hidden-focusable',
1054
+ tabIndex: '0',
1055
+ onFocus: props.onLastHiddenFocus,
1056
+ 'data-p-hidden-accessible': true,
1057
+ 'data-p-hidden-focusable': true
1058
+ }, ptm('hiddenLastFocusableEl'));
1038
1059
  return /*#__PURE__*/React.createElement(CSSTransition, _extends({
1039
1060
  nodeRef: ref
1040
1061
  }, transitionProps), /*#__PURE__*/React.createElement("div", _extends({
1041
1062
  ref: ref
1042
- }, panelProps), header, content, footer));
1063
+ }, panelProps), /*#__PURE__*/React.createElement("span", firstHiddenElementProps), header, content, footer, /*#__PURE__*/React.createElement("span", lastHiddenElementProps)));
1043
1064
  };
1044
1065
  var element = createElement();
1045
1066
  if (props.inline) return element;
@@ -1059,19 +1080,35 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1059
1080
  var mergeProps = useMergeProps();
1060
1081
  var context = React.useContext(PrimeReactContext);
1061
1082
  var props = MultiSelectBase.getProps(inProps, context);
1062
- var _React$useState = React.useState(''),
1083
+ var _React$useState = React.useState(null),
1063
1084
  _React$useState2 = _slicedToArray(_React$useState, 2),
1064
- filterState = _React$useState2[0],
1065
- setFilterState = _React$useState2[1];
1085
+ focusedOptionIndex = _React$useState2[0],
1086
+ setFocusedOptionIndex = _React$useState2[1];
1066
1087
  var _React$useState3 = React.useState(false),
1067
1088
  _React$useState4 = _slicedToArray(_React$useState3, 2),
1068
- focusedState = _React$useState4[0],
1069
- setFocusedState = _React$useState4[1];
1070
- var _React$useState5 = React.useState(props.inline),
1089
+ clicked = _React$useState4[0],
1090
+ setClicked = _React$useState4[1];
1091
+ var _React$useState5 = React.useState(''),
1071
1092
  _React$useState6 = _slicedToArray(_React$useState5, 2),
1072
- overlayVisibleState = _React$useState6[0],
1073
- setOverlayVisibleState = _React$useState6[1];
1093
+ filterState = _React$useState6[0],
1094
+ setFilterState = _React$useState6[1];
1095
+ var _React$useState7 = React.useState(-1),
1096
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
1097
+ startRangeIndex = _React$useState8[0],
1098
+ setStartRangeIndex = _React$useState8[1];
1099
+ var _React$useState9 = React.useState(false),
1100
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
1101
+ focusedState = _React$useState10[0],
1102
+ setFocusedState = _React$useState10[1];
1103
+ var _React$useState11 = React.useState(props.inline),
1104
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
1105
+ overlayVisibleState = _React$useState12[0],
1106
+ setOverlayVisibleState = _React$useState12[1];
1074
1107
  var elementRef = React.useRef(null);
1108
+ var searchValue = React.useRef(null);
1109
+ var searchTimeout = React.useRef(null);
1110
+ var firstHiddenFocusableElementOnOverlay = React.useRef(null);
1111
+ var lastHiddenFocusableElementOnOverlay = React.useRef(null);
1075
1112
  var inputRef = React.useRef(props.inputRef);
1076
1113
  var labelRef = React.useRef(null);
1077
1114
  var overlayRef = React.useRef(null);
@@ -1113,6 +1150,14 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1113
1150
  _useOverlayListener2 = _slicedToArray(_useOverlayListener, 2),
1114
1151
  bindOverlayListener = _useOverlayListener2[0],
1115
1152
  unbindOverlayListener = _useOverlayListener2[1];
1153
+ var onFirstHiddenFocus = function onFirstHiddenFocus(event) {
1154
+ var focusableEl = event.relatedTarget === inputRef.current ? DomHandler.getFirstFocusableElement(overlayRef.current, ':not([data-p-hidden-focusable="true"])') : inputRef.current;
1155
+ DomHandler.focus(focusableEl);
1156
+ };
1157
+ var onLastHiddenFocus = function onLastHiddenFocus(event) {
1158
+ var focusableEl = event.relatedTarget === inputRef.current ? DomHandler.getLastFocusableElement(overlayRef.current, ':not([data-p-hidden-focusable="true"])') : inputRef.current;
1159
+ DomHandler.focus(focusableEl);
1160
+ };
1116
1161
  var onPanelClick = function onPanelClick(event) {
1117
1162
  OverlayService.emit('overlay-click', {
1118
1163
  originalEvent: event,
@@ -1122,63 +1167,60 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1122
1167
  var allowOptionSelect = function allowOptionSelect() {
1123
1168
  return !props.selectionLimit || !props.value || props.value && props.value.length < props.selectionLimit;
1124
1169
  };
1125
- var onOptionSelect = function onOptionSelect(event) {
1126
- var originalEvent = event.originalEvent,
1127
- option = event.option;
1128
- if (props.disabled || isOptionDisabled(option)) {
1129
- return;
1170
+ var findNextSelectedOptionIndex = function findNextSelectedOptionIndex(index) {
1171
+ var matchedOptionIndex = hasSelectedOption && index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
1172
+ return isValidSelectedOption(option);
1173
+ }) : -1;
1174
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : -1;
1175
+ };
1176
+ var findPrevSelectedOptionIndex = function findPrevSelectedOptionIndex(index) {
1177
+ var matchedOptionIndex = hasSelectedOption && index > 0 ? ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
1178
+ return isValidSelectedOption(option);
1179
+ }) : -1;
1180
+ return matchedOptionIndex > -1 ? matchedOptionIndex : -1;
1181
+ };
1182
+ var findNearestSelectedOptionIndex = function findNearestSelectedOptionIndex(index) {
1183
+ var firstCheckUp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1184
+ var matchedOptionIndex = -1;
1185
+ if (hasSelectedOption) {
1186
+ if (firstCheckUp) {
1187
+ matchedOptionIndex = findPrevSelectedOptionIndex(index);
1188
+ matchedOptionIndex = matchedOptionIndex === -1 ? findNextSelectedOptionIndex(index) : matchedOptionIndex;
1189
+ } else {
1190
+ matchedOptionIndex = findNextSelectedOptionIndex(index);
1191
+ matchedOptionIndex = matchedOptionIndex === -1 ? findPrevSelectedOptionIndex(index) : matchedOptionIndex;
1192
+ }
1130
1193
  }
1131
- var optionValue = getOptionValue(option);
1132
- var isUsed = isOptionValueUsed(option);
1133
- var selected = isSelected(option);
1134
- var allowSelect = allowOptionSelect();
1135
- if (selected) {
1136
- updateModel(originalEvent, props.value.filter(function (val) {
1137
- return !ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
1138
- }), option);
1139
- } else if (allowSelect) {
1140
- updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]), option);
1194
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1195
+ };
1196
+ var onOptionSelectRange = function onOptionSelectRange(event) {
1197
+ var start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : -1;
1198
+ var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
1199
+ start === -1 && (start = findNearestSelectedOptionIndex(end, true));
1200
+ end === -1 && (end = findNearestSelectedOptionIndex(start));
1201
+ if (start !== -1 && end !== -1) {
1202
+ var rangeStart = Math.min(start, end);
1203
+ var rangeEnd = Math.max(start, end);
1204
+ var value = visibleOptions.slice(rangeStart, rangeEnd + 1).filter(function (option) {
1205
+ return isValidOption(option);
1206
+ }).map(function (option) {
1207
+ return getOptionValue(option);
1208
+ });
1209
+ updateModel(event, value);
1141
1210
  }
1142
1211
  };
1143
- var onOptionKeyDown = function onOptionKeyDown(event) {
1144
- var originalEvent = event.originalEvent;
1145
- var listItem = originalEvent.currentTarget;
1146
- switch (originalEvent.which) {
1147
- //down
1148
- case 40:
1149
- var nextItem = findNextItem(listItem);
1150
- nextItem && nextItem.focus();
1151
- originalEvent.preventDefault();
1152
- break;
1153
-
1154
- //up
1155
- case 38:
1156
- var prevItem = findPrevItem(listItem);
1157
- prevItem && prevItem.focus();
1158
- originalEvent.preventDefault();
1159
- break;
1160
-
1161
- //enter and space
1162
- case 13:
1163
- case 32:
1164
- onOptionSelect(event);
1165
- originalEvent.preventDefault();
1166
- break;
1167
-
1168
- //escape
1169
- case 27:
1170
- hide();
1171
- DomHandler.focus(inputRef.current);
1172
- break;
1212
+ var onOptionSelect = function onOptionSelect(event, option) {
1213
+ var index = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
1214
+ if (props.disabled || isOptionDisabled(option)) {
1215
+ return;
1173
1216
  }
1174
- };
1175
- var findNextItem = function findNextItem(item) {
1176
- var nextItem = item.nextElementSibling;
1177
- return nextItem ? DomHandler.getAttribute(nextItem, 'data-p-disabled') === true || DomHandler.getAttribute(nextItem, 'data-pc-section') === 'itemgroup' ? findNextItem(nextItem) : nextItem : null;
1178
- };
1179
- var findPrevItem = function findPrevItem(item) {
1180
- var prevItem = item.previousElementSibling;
1181
- return prevItem ? DomHandler.getAttribute(prevItem, 'data-p-disabled') === true || DomHandler.getAttribute(prevItem, 'data-pc-section') === 'itemgroup' ? findPrevItem(prevItem) : prevItem : null;
1217
+ var selected = isSelected(option);
1218
+ var value = null;
1219
+ if (selected) value = props.value.filter(function (val) {
1220
+ return !ObjectUtils.equals(val, getOptionValue(option), equalityKey);
1221
+ });else value = [].concat(_toConsumableArray(props.value || []), [getOptionValue(option)]);
1222
+ updateModel(event, value);
1223
+ index !== -1 && setFocusedOptionIndex(index);
1182
1224
  };
1183
1225
  var onClick = function onClick(event) {
1184
1226
  if (!props.inline && !props.disabled && !props.loading && !isPanelClicked(event) && DomHandler.getAttribute(event.target, 'data-pc-section') !== 'removetokenicon' && !isClearClicked(event)) {
@@ -1186,42 +1228,169 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1186
1228
  DomHandler.focus(inputRef.current);
1187
1229
  event.preventDefault();
1188
1230
  }
1231
+ setClicked(true);
1232
+ };
1233
+ var onArrowDownKey = function onArrowDownKey(event) {
1234
+ if (!overlayVisibleState) {
1235
+ show();
1236
+ props.editable && changeFocusedOptionIndex(event, findSelectedOptionIndex());
1237
+ } else {
1238
+ var optionIndex = focusedOptionIndex !== -1 ? findNextOptionIndex(focusedOptionIndex) : clicked ? findFirstOptionIndex() : findFirstFocusedOptionIndex();
1239
+ if (event.shiftKey) {
1240
+ onOptionSelectRange(event, startRangeIndex, optionIndex);
1241
+ }
1242
+ changeFocusedOptionIndex(event, optionIndex);
1243
+ }
1244
+ event.preventDefault();
1245
+ };
1246
+ var onArrowUpKey = function onArrowUpKey(event) {
1247
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1248
+ if (event.altKey && !pressedInInputText) {
1249
+ if (focusedOptionIndex !== -1) {
1250
+ onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1251
+ }
1252
+ overlayVisibleState && hide();
1253
+ event.preventDefault();
1254
+ } else {
1255
+ var optionIndex = focusedOptionIndex !== -1 ? findPrevOptionIndex(focusedOptionIndex) : clicked ? findLastOptionIndex() : findLastFocusedOptionIndex();
1256
+ changeFocusedOptionIndex(event, optionIndex);
1257
+ !overlayVisibleState && show();
1258
+ event.preventDefault();
1259
+ }
1260
+ };
1261
+ var onEnterKey = function onEnterKey(event) {
1262
+ if (!overlayVisibleState) {
1263
+ setFocusedOptionIndex(-1);
1264
+ onArrowDownKey(event);
1265
+ } else {
1266
+ if (focusedOptionIndex !== -1) {
1267
+ if (event.shiftKey) onOptionSelectRange(event, focusedOptionIndex);else onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1268
+ }
1269
+ }
1270
+ event.preventDefault();
1271
+ };
1272
+ var onHomeKey = function onHomeKey(event) {
1273
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1274
+ var currentTarget = event.currentTarget;
1275
+ if (pressedInInputText) {
1276
+ var len = currentTarget.value.length;
1277
+ currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1278
+ setFocusedOptionIndex(-1);
1279
+ } else {
1280
+ var metaKey = event.metaKey || event.ctrlKey;
1281
+ var optionIndex = findFirstOptionIndex();
1282
+ if (event.shiftKey && metaKey) {
1283
+ onOptionSelectRange(event, optionIndex, startRangeIndex);
1284
+ }
1285
+ changeFocusedOptionIndex(event, optionIndex);
1286
+ !overlayVisibleState && show();
1287
+ }
1288
+ event.preventDefault();
1289
+ };
1290
+ var onEndKey = function onEndKey(event) {
1291
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1292
+ var currentTarget = event.currentTarget;
1293
+ if (pressedInInputText) {
1294
+ var len = currentTarget.value.length;
1295
+ currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1296
+ _readOnlyError("focusedOptionIndex");
1297
+ } else {
1298
+ var metaKey = event.metaKey || event.ctrlKey;
1299
+ var optionIndex = findLastOptionIndex();
1300
+ if (event.shiftKey && metaKey) {
1301
+ onOptionSelectRange(event, startRangeIndex, optionIndex);
1302
+ }
1303
+ changeFocusedOptionIndex(event, optionIndex);
1304
+ !overlayVisibleState && show();
1305
+ }
1306
+ event.preventDefault();
1307
+ };
1308
+ var onPageUpKey = function onPageUpKey(event) {
1309
+ event.preventDefault();
1310
+ };
1311
+ var onPageDownKey = function onPageDownKey(event) {
1312
+ event.preventDefault();
1313
+ };
1314
+ var onTabKey = function onTabKey(event) {
1315
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1316
+ if (!pressedInInputText) {
1317
+ if (overlayVisibleState && hasFocusableElements()) {
1318
+ DomHandler.focus(event.shiftKey ? lastHiddenFocusableElementOnOverlay.current : firstHiddenFocusableElementOnOverlay.current);
1319
+ event.preventDefault();
1320
+ } else {
1321
+ if (focusedOptionIndex !== -1) {
1322
+ onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1323
+ }
1324
+ overlayVisibleState && hide(filter);
1325
+ }
1326
+ }
1327
+ };
1328
+ var onShiftKey = function onShiftKey() {
1329
+ setStartRangeIndex(focusedOptionIndex);
1189
1330
  };
1190
1331
  var onKeyDown = function onKeyDown(event) {
1191
- switch (event.which) {
1192
- //down
1193
- case 40:
1332
+ var metaKey = event.metaKey || event.ctrlKey;
1333
+ switch (event.code) {
1334
+ case 'ArrowUp':
1194
1335
  if (props.inline) break;
1195
- if (!overlayVisibleState && event.altKey) {
1196
- show();
1197
- event.preventDefault();
1198
- }
1336
+ onArrowUpKey(event);
1199
1337
  break;
1200
-
1201
- //space
1202
- case 32:
1338
+ case 'ArrowDown':
1339
+ if (props.inline) break;
1340
+ onArrowDownKey(event);
1341
+ break;
1342
+ case 'Space':
1343
+ case 'NumpadEnter':
1344
+ case 'Enter':
1345
+ if (props.inline) break;
1346
+ onEnterKey(event);
1347
+ break;
1348
+ case 'Home':
1203
1349
  if (props.inline) break;
1204
- overlayVisibleState ? hide() : show();
1350
+ onHomeKey(event);
1205
1351
  event.preventDefault();
1206
1352
  break;
1207
-
1208
- //escape
1209
- case 27:
1353
+ case 'End':
1354
+ if (props.inline) break;
1355
+ onEndKey(event);
1356
+ event.preventDefault();
1357
+ break;
1358
+ case 'PageDown':
1359
+ onPageDownKey(event);
1360
+ break;
1361
+ case 'PageUp':
1362
+ onPageUpKey(event);
1363
+ break;
1364
+ case 'Escape':
1210
1365
  if (props.inline) break;
1211
1366
  hide();
1212
1367
  break;
1213
-
1214
- //tab
1215
- case 9:
1216
- if (overlayVisibleState) {
1217
- var firstFocusableElement = DomHandler.getFirstFocusableElement(overlayRef.current);
1218
- if (firstFocusableElement) {
1219
- firstFocusableElement.focus();
1220
- event.preventDefault();
1221
- }
1368
+ case 'Tab':
1369
+ onTabKey(event);
1370
+ break;
1371
+ case 'ShiftLeft':
1372
+ case 'ShiftRight':
1373
+ onShiftKey();
1374
+ break;
1375
+ default:
1376
+ if (event.code === 'KeyA' && metaKey) {
1377
+ var value = visibleOptions.filter(function (option) {
1378
+ return isValidOption(option);
1379
+ }).map(function (option) {
1380
+ return getOptionValue(option);
1381
+ });
1382
+ updateModel(event, value);
1383
+ event.preventDefault();
1384
+ break;
1385
+ }
1386
+ if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {
1387
+ !overlayVisibleState && show();
1388
+ searchOptions(event);
1389
+ event.preventDefault();
1222
1390
  }
1223
1391
  break;
1224
1392
  }
1393
+ setClicked(false);
1225
1394
  };
1226
1395
  var onSelectAll = function onSelectAll(event) {
1227
1396
  if (props.onSelectAll) {
@@ -1307,9 +1476,13 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1307
1476
  };
1308
1477
  var show = function show() {
1309
1478
  setOverlayVisibleState(true);
1479
+ setFocusedOptionIndex(focusedOptionIndex !== -1 ? focusedOptionIndex : props.autoOptionFocus ? findFirstFocusedOptionIndex() : findSelectedOptionIndex());
1480
+ DomHandler.focus(inputRef.current);
1310
1481
  };
1311
1482
  var hide = function hide() {
1483
+ setFocusedOptionIndex(-1);
1312
1484
  setOverlayVisibleState(false);
1485
+ setClicked(false);
1313
1486
  };
1314
1487
  var onOverlayEnter = function onOverlayEnter(callback) {
1315
1488
  ZIndexUtils.set('overlay', overlayRef.current, context && context.autoZIndex || PrimeReact.autoZIndex, context && context.zIndex['overlay'] || PrimeReact.zIndex['overlay']);
@@ -1379,6 +1552,9 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1379
1552
  });
1380
1553
  });
1381
1554
  };
1555
+ var isEquals = function isEquals(value1, value2) {
1556
+ return ObjectUtils.equals(value1, value2, equalityKey);
1557
+ };
1382
1558
  var isSelected = function isSelected(option) {
1383
1559
  if (props.value) {
1384
1560
  var optionValue = getOptionValue(option);
@@ -1503,6 +1679,114 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1503
1679
  var isOptionValueUsed = function isOptionValueUsed(option) {
1504
1680
  return !props.useOptionAsValue && props.optionValue || option && option['value'] !== undefined;
1505
1681
  };
1682
+ var isOptionGroup = function isOptionGroup(option) {
1683
+ return props.optionGroupLabel && option.optionGroup && option.group;
1684
+ };
1685
+ var hasSelectedOption = function hasSelectedOption() {
1686
+ return ObjectUtils.isNotEmpty(props.value);
1687
+ };
1688
+ var hasFocusableElements = function hasFocusableElements() {
1689
+ return DomHandler.getFocusableElements(overlayRef.current, ':not([data-p-hidden-focusable="true"])').length > 0;
1690
+ };
1691
+ var isOptionMatched = function isOptionMatched(option) {
1692
+ var _getOptionLabel;
1693
+ return isValidOption(option) && ((_getOptionLabel = getOptionLabel(option)) === null || _getOptionLabel === void 0 ? void 0 : _getOptionLabel.toLocaleLowerCase(props.filterLocale).startsWith(searchValue.current.toLocaleLowerCase(props.filterLocale)));
1694
+ };
1695
+ var isValidOption = function isValidOption(option) {
1696
+ return ObjectUtils.isNotEmpty(option) && !(isOptionDisabled(option) || isOptionGroup(option));
1697
+ };
1698
+ var isValidSelectedOption = function isValidSelectedOption(option) {
1699
+ return isValidOption(option) && isSelected(option);
1700
+ };
1701
+ var findSelectedOptionIndex = function findSelectedOptionIndex() {
1702
+ if (hasSelectedOption()) {
1703
+ var _loop = function _loop() {
1704
+ var value = props.value[index];
1705
+ var matchedOptionIndex = visibleOptions.findIndex(function (option) {
1706
+ return isValidSelectedOption(option) && isEquals(value, getOptionValue(option));
1707
+ });
1708
+ if (matchedOptionIndex > -1) return {
1709
+ v: matchedOptionIndex
1710
+ };
1711
+ },
1712
+ _ret;
1713
+ for (var index = props.value.length - 1; index >= 0; index--) {
1714
+ _ret = _loop();
1715
+ if (_ret) return _ret.v;
1716
+ }
1717
+ }
1718
+ return -1;
1719
+ };
1720
+ var findFirstFocusedOptionIndex = function findFirstFocusedOptionIndex() {
1721
+ var selectedIndex = findSelectedOptionIndex();
1722
+ return selectedIndex < 0 ? findFirstOptionIndex() : selectedIndex;
1723
+ };
1724
+ var findLastFocusedOptionIndex = function findLastFocusedOptionIndex() {
1725
+ var selectedIndex = findSelectedOptionIndex();
1726
+ return selectedIndex < 0 ? findLastOptionIndex() : selectedIndex;
1727
+ };
1728
+ var findFirstOptionIndex = function findFirstOptionIndex() {
1729
+ return visibleOptions.findIndex(function (option) {
1730
+ return isValidOption(option);
1731
+ });
1732
+ };
1733
+ var findLastOptionIndex = function findLastOptionIndex() {
1734
+ return ObjectUtils.findLastIndex(visibleOptions, function (option) {
1735
+ return isValidOption(option);
1736
+ });
1737
+ };
1738
+ var findNextOptionIndex = function findNextOptionIndex(index) {
1739
+ var matchedOptionIndex = index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
1740
+ return isValidOption(option);
1741
+ }) : -1;
1742
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
1743
+ };
1744
+ var findPrevOptionIndex = function findPrevOptionIndex(index) {
1745
+ var matchedOptionIndex = index > 0 ? ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
1746
+ return isValidOption(option);
1747
+ }) : -1;
1748
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1749
+ };
1750
+ var searchOptions = function searchOptions(event) {
1751
+ searchValue.current = (searchValue.current || '') + event.key;
1752
+ var optionIndex = -1;
1753
+ if (ObjectUtils.isNotEmpty(searchValue.current)) {
1754
+ if (focusedOptionIndex !== -1) {
1755
+ optionIndex = visibleOptions.slice(focusedOptionIndex).findIndex(function (option) {
1756
+ return isOptionMatched(option);
1757
+ });
1758
+ optionIndex = optionIndex === -1 ? visibleOptions.slice(0, focusedOptionIndex).findIndex(function (option) {
1759
+ return isOptionMatched(option);
1760
+ }) : optionIndex + focusedOptionIndex;
1761
+ } else {
1762
+ optionIndex = visibleOptions.findIndex(function (option) {
1763
+ return isOptionMatched(option);
1764
+ });
1765
+ }
1766
+ if (optionIndex === -1 && focusedOptionIndex === -1) {
1767
+ optionIndex = findFirstFocusedOptionIndex();
1768
+ }
1769
+ if (optionIndex !== -1) {
1770
+ changeFocusedOptionIndex(event, optionIndex);
1771
+ }
1772
+ }
1773
+ if (searchTimeout.current) {
1774
+ clearTimeout(searchTimeout.current);
1775
+ }
1776
+ searchTimeout.current = setTimeout(function () {
1777
+ searchValue.current = '';
1778
+ searchTimeout.current = null;
1779
+ }, 500);
1780
+ };
1781
+ var changeFocusedOptionIndex = function changeFocusedOptionIndex(event, index) {
1782
+ if (focusedOptionIndex !== index) {
1783
+ setFocusedOptionIndex(index);
1784
+ scrollInView();
1785
+ if (props.selectOnFocus) {
1786
+ onOptionSelect(event, visibleOptions[index], false);
1787
+ }
1788
+ }
1789
+ };
1506
1790
  var removeChip = function removeChip(event, item) {
1507
1791
  var value = props.value.filter(function (val) {
1508
1792
  return !ObjectUtils.equals(val, item, equalityKey);
@@ -1559,6 +1843,12 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1559
1843
  if (props.display === 'chip' && !empty) {
1560
1844
  var value = props.value.slice(0, props.maxSelectedLabels || props.value.length);
1561
1845
  return value.map(function (val, i) {
1846
+ var context = {
1847
+ context: {
1848
+ value: val,
1849
+ index: i
1850
+ }
1851
+ };
1562
1852
  var label = getLabelByValue(val);
1563
1853
  var iconProps = mergeProps({
1564
1854
  key: i,
@@ -1566,17 +1856,17 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1566
1856
  onClick: function onClick(e) {
1567
1857
  return removeChip(e, val);
1568
1858
  }
1569
- }, ptm('removeTokenIcon'));
1859
+ }, ptm('removeTokenIcon', context));
1570
1860
  var icon = !props.disabled && (props.removeIcon ? IconUtils.getJSXIcon(props.removeIcon, _objectSpread({}, iconProps), {
1571
1861
  props: props
1572
1862
  }) : /*#__PURE__*/React.createElement(TimesCircleIcon, iconProps));
1573
1863
  var tokenProps = mergeProps({
1574
1864
  className: cx('token')
1575
- }, ptm('token'));
1865
+ }, ptm('token', context));
1576
1866
  var tokenLabelProps = mergeProps({
1577
1867
  key: label + i,
1578
1868
  className: cx('tokenLabel')
1579
- }, ptm('tokenLabel'));
1869
+ }, ptm('tokenLabel', context));
1580
1870
  return /*#__PURE__*/React.createElement("div", _extends({}, tokenProps, {
1581
1871
  key: label
1582
1872
  }), /*#__PURE__*/React.createElement("span", tokenLabelProps, label), icon);
@@ -1643,6 +1933,7 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1643
1933
  setTimeout(function () {
1644
1934
  props.overlayVisible ? show() : hide();
1645
1935
  }, 100);
1936
+ // eslint-disable-next-line react-hooks/exhaustive-deps
1646
1937
  }, [props.overlayVisible]);
1647
1938
  useUpdateEffect(function () {
1648
1939
  if (overlayVisibleState && filterState && hasFilter) {
@@ -1714,7 +2005,8 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1714
2005
  onClick: onClick
1715
2006
  }), MultiSelectBase.getOtherProps(props), ptm('root'));
1716
2007
  var hiddenInputWrapperProps = mergeProps({
1717
- className: 'p-hidden-accessible'
2008
+ className: 'p-hidden-accessible',
2009
+ 'data-p-hidden-accessible': true
1718
2010
  }, ptm('hiddenInputWrapper'));
1719
2011
  var inputProps = mergeProps(_objectSpread({
1720
2012
  ref: inputRef,
@@ -1727,7 +2019,7 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1727
2019
  role: 'listbox',
1728
2020
  'aria-expanded': overlayVisibleState,
1729
2021
  disabled: props.disabled,
1730
- tabIndex: props.tabIndex
2022
+ tabIndex: !props.disabled ? props.tabIndex : -1
1731
2023
  }, ariaProps), ptm('input'));
1732
2024
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", rootProps, /*#__PURE__*/React.createElement("div", hiddenInputWrapperProps, /*#__PURE__*/React.createElement("input", _extends({}, inputProps, {
1733
2025
  readOnly: true
@@ -1739,6 +2031,12 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1739
2031
  onClick: onPanelClick,
1740
2032
  onOverlayHide: hide,
1741
2033
  filterValue: filterState,
2034
+ focusedOptionIndex: focusedOptionIndex,
2035
+ onFirstHiddenFocus: onFirstHiddenFocus,
2036
+ onLastHiddenFocus: onLastHiddenFocus,
2037
+ firstHiddenFocusableElementOnOverlay: firstHiddenFocusableElementOnOverlay,
2038
+ lastHiddenFocusableElementOnOverlay: lastHiddenFocusableElementOnOverlay,
2039
+ setFocusedOptionIndex: setFocusedOptionIndex,
1742
2040
  hasFilter: hasFilter,
1743
2041
  onFilterInputChange: onFilterInputChange,
1744
2042
  resetFilter: resetFilter,
@@ -1755,7 +2053,6 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1755
2053
  isAllSelected: isAllSelected,
1756
2054
  onOptionSelect: onOptionSelect,
1757
2055
  allowOptionSelect: allowOptionSelect,
1758
- onOptionKeyDown: onOptionKeyDown,
1759
2056
  "in": overlayVisibleState,
1760
2057
  onEnter: onOverlayEnter,
1761
2058
  onEntered: onOverlayEntered,
@@ -1768,10 +2065,9 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1768
2065
  metaData: metaData
1769
2066
  }))), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
1770
2067
  target: elementRef,
1771
- content: props.tooltip
1772
- }, props.tooltipOptions, {
2068
+ content: props.tooltip,
1773
2069
  pt: ptm('tooltip')
1774
- })));
2070
+ }, props.tooltipOptions)));
1775
2071
  }));
1776
2072
  MultiSelect.displayName = 'MultiSelect';
1777
2073