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
@@ -132,6 +132,10 @@ function _toConsumableArray(arr) {
132
132
  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread();
133
133
  }
134
134
 
135
+ function _readOnlyError(name) {
136
+ throw new TypeError("\"" + name + "\" is read-only");
137
+ }
138
+
135
139
  function _arrayWithHoles(arr) {
136
140
  if (Array.isArray(arr)) return arr;
137
141
  }
@@ -233,7 +237,8 @@ var classes$1 = {
233
237
  var props = _ref5.itemProps;
234
238
  return utils.classNames('p-multiselect-item', {
235
239
  'p-highlight': props.selected,
236
- 'p-disabled': props.disabled
240
+ 'p-disabled': props.disabled,
241
+ 'p-focus': props.focusedOptionIndex === props.index
237
242
  });
238
243
  },
239
244
  checkboxContainer: 'p-checkbox p-component',
@@ -246,7 +251,7 @@ var classes$1 = {
246
251
  },
247
252
  transition: 'p-connected-overlay'
248
253
  };
249
- 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";
254
+ 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";
250
255
  var inlineStyles = {
251
256
  root: function root(_ref7) {
252
257
  var props = _ref7.props;
@@ -280,6 +285,8 @@ var MultiSelectBase = componentbase.ComponentBase.extend({
280
285
  filterBy: null,
281
286
  filterInputAutoFocus: true,
282
287
  filterLocale: undefined,
288
+ selectOnFocus: false,
289
+ autoOptionFocus: false,
283
290
  filterMatchMode: 'contains',
284
291
  filterPlaceholder: null,
285
292
  filterTemplate: null,
@@ -292,6 +299,7 @@ var MultiSelectBase = componentbase.ComponentBase.extend({
292
299
  itemCheckboxIcon: null,
293
300
  itemClassName: null,
294
301
  itemTemplate: null,
302
+ loading: false,
295
303
  maxSelectedLabels: null,
296
304
  name: null,
297
305
  onBlur: null,
@@ -532,6 +540,8 @@ var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
532
540
  onClick: function onClick(e) {
533
541
  return _onClick(e);
534
542
  },
543
+ 'data-p-highlight': checked,
544
+ 'data-p-disabled': props.disabled,
535
545
  onContextMenu: props.onContextMenu,
536
546
  onMouseDown: props.onMouseDown
537
547
  }, otherProps, ptm('root'));
@@ -572,10 +582,9 @@ var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
572
582
  ref: inputRef
573
583
  }, hiddenInputProps))), /*#__PURE__*/React__namespace.createElement("div", inputProps, checkboxIcon)), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
574
584
  target: elementRef,
575
- content: props.tooltip
576
- }, props.tooltipOptions, {
585
+ content: props.tooltip,
577
586
  pt: ptm('tooltip')
578
- })));
587
+ }, props.tooltipOptions)));
579
588
  }));
580
589
  Checkbox.displayName = 'Checkbox';
581
590
 
@@ -739,7 +748,9 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
739
748
  context: {
740
749
  selected: props.selected,
741
750
  disabled: props.disabled,
742
- focused: focusedState
751
+ focused: focusedState,
752
+ focusedIndex: props.focusedIndex,
753
+ index: props.index
743
754
  }
744
755
  });
745
756
  };
@@ -751,22 +762,11 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
751
762
  };
752
763
  var onClick = function onClick(event) {
753
764
  if (props.onClick) {
754
- props.onClick({
755
- originalEvent: event,
756
- option: props.option
757
- });
765
+ props.onClick(event, props.option);
758
766
  }
759
767
  event.preventDefault();
760
768
  event.stopPropagation();
761
769
  };
762
- var onKeyDown = function onKeyDown(event) {
763
- if (props.onKeyDown) {
764
- props.onKeyDown({
765
- originalEvent: event,
766
- option: props.option
767
- });
768
- }
769
- };
770
770
  var checkboxIconProps = mergeProps({
771
771
  className: cx('checkboxIcon')
772
772
  }, getPTOptions('checkboxIcon'));
@@ -775,7 +775,7 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
775
775
  selected: props.selected
776
776
  }) : null;
777
777
  var content = props.template ? utils.ObjectUtils.getJSXElement(props.template, props.option) : props.label;
778
- var tabIndex = props.disabled ? null : props.tabIndex || 0;
778
+ var tabIndex = props.disabled ? -1 : props.tabIndex;
779
779
  var checkboxContainerProps = mergeProps({
780
780
  className: cx('checkboxContainer')
781
781
  }, getPTOptions('checkboxContainer'));
@@ -791,7 +791,6 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
791
791
  })),
792
792
  style: props.style,
793
793
  onClick: onClick,
794
- onKeyDown: onKeyDown,
795
794
  onFocus: onFocus,
796
795
  onBlur: onBlur,
797
796
  tabIndex: tabIndex,
@@ -893,14 +892,15 @@ var MultiSelectPanel = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__n
893
892
  var selected = props.isSelected(option);
894
893
  return /*#__PURE__*/React__namespace.createElement(MultiSelectItem, {
895
894
  hostName: props.hostName,
895
+ index: j,
896
896
  key: optionKey,
897
+ focusedOptionIndex: props.focusedOptionIndex,
897
898
  label: optionLabel,
898
899
  option: option,
899
900
  style: style,
900
901
  template: props.itemTemplate,
901
902
  selected: selected,
902
903
  onClick: props.onOptionSelect,
903
- onKeyDown: props.onOptionKeyDown,
904
904
  tabIndex: tabIndex,
905
905
  disabled: disabled,
906
906
  className: props.itemClassName,
@@ -951,13 +951,14 @@ var MultiSelectPanel = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__n
951
951
  return /*#__PURE__*/React__namespace.createElement(MultiSelectItem, {
952
952
  hostName: props.hostName,
953
953
  key: optionKey,
954
+ focusedOptionIndex: props.focusedOptionIndex,
954
955
  label: optionLabel,
955
956
  option: option,
956
957
  style: style,
958
+ index: index,
957
959
  template: props.itemTemplate,
958
960
  selected: selected,
959
961
  onClick: props.onOptionSelect,
960
- onKeyDown: props.onOptionKeyDown,
961
962
  tabIndex: tabIndex,
962
963
  disabled: disabled,
963
964
  className: props.itemClassName,
@@ -1062,11 +1063,31 @@ var MultiSelectPanel = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__n
1062
1063
  onExit: props.onExit,
1063
1064
  onExited: props.onExited
1064
1065
  }, getPTOptions('transition'));
1066
+ var firstHiddenElementProps = mergeProps({
1067
+ ref: props.firstHiddenFocusableElementOnOverlay,
1068
+ role: 'presentation',
1069
+ 'aria-hidden': 'true',
1070
+ className: 'p-hidden-accessible p-hidden-focusable',
1071
+ tabIndex: '0',
1072
+ onFocus: props.onFirstHiddenFocus,
1073
+ 'data-p-hidden-accessible': true,
1074
+ 'data-p-hidden-focusable': true
1075
+ }, ptm('hiddenFirstFocusableEl'));
1076
+ var lastHiddenElementProps = mergeProps({
1077
+ ref: props.lastHiddenFocusableElementOnOverlay,
1078
+ role: 'presentation',
1079
+ 'aria-hidden': 'true',
1080
+ className: 'p-hidden-accessible p-hidden-focusable',
1081
+ tabIndex: '0',
1082
+ onFocus: props.onLastHiddenFocus,
1083
+ 'data-p-hidden-accessible': true,
1084
+ 'data-p-hidden-focusable': true
1085
+ }, ptm('hiddenLastFocusableEl'));
1065
1086
  return /*#__PURE__*/React__namespace.createElement(csstransition.CSSTransition, _extends({
1066
1087
  nodeRef: ref
1067
1088
  }, transitionProps), /*#__PURE__*/React__namespace.createElement("div", _extends({
1068
1089
  ref: ref
1069
- }, panelProps), header, content, footer));
1090
+ }, panelProps), /*#__PURE__*/React__namespace.createElement("span", firstHiddenElementProps), header, content, footer, /*#__PURE__*/React__namespace.createElement("span", lastHiddenElementProps)));
1070
1091
  };
1071
1092
  var element = createElement();
1072
1093
  if (props.inline) return element;
@@ -1086,19 +1107,35 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1086
1107
  var mergeProps = hooks.useMergeProps();
1087
1108
  var context = React__namespace.useContext(PrimeReact.PrimeReactContext);
1088
1109
  var props = MultiSelectBase.getProps(inProps, context);
1089
- var _React$useState = React__namespace.useState(''),
1110
+ var _React$useState = React__namespace.useState(null),
1090
1111
  _React$useState2 = _slicedToArray(_React$useState, 2),
1091
- filterState = _React$useState2[0],
1092
- setFilterState = _React$useState2[1];
1112
+ focusedOptionIndex = _React$useState2[0],
1113
+ setFocusedOptionIndex = _React$useState2[1];
1093
1114
  var _React$useState3 = React__namespace.useState(false),
1094
1115
  _React$useState4 = _slicedToArray(_React$useState3, 2),
1095
- focusedState = _React$useState4[0],
1096
- setFocusedState = _React$useState4[1];
1097
- var _React$useState5 = React__namespace.useState(props.inline),
1116
+ clicked = _React$useState4[0],
1117
+ setClicked = _React$useState4[1];
1118
+ var _React$useState5 = React__namespace.useState(''),
1098
1119
  _React$useState6 = _slicedToArray(_React$useState5, 2),
1099
- overlayVisibleState = _React$useState6[0],
1100
- setOverlayVisibleState = _React$useState6[1];
1120
+ filterState = _React$useState6[0],
1121
+ setFilterState = _React$useState6[1];
1122
+ var _React$useState7 = React__namespace.useState(-1),
1123
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
1124
+ startRangeIndex = _React$useState8[0],
1125
+ setStartRangeIndex = _React$useState8[1];
1126
+ var _React$useState9 = React__namespace.useState(false),
1127
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
1128
+ focusedState = _React$useState10[0],
1129
+ setFocusedState = _React$useState10[1];
1130
+ var _React$useState11 = React__namespace.useState(props.inline),
1131
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
1132
+ overlayVisibleState = _React$useState12[0],
1133
+ setOverlayVisibleState = _React$useState12[1];
1101
1134
  var elementRef = React__namespace.useRef(null);
1135
+ var searchValue = React__namespace.useRef(null);
1136
+ var searchTimeout = React__namespace.useRef(null);
1137
+ var firstHiddenFocusableElementOnOverlay = React__namespace.useRef(null);
1138
+ var lastHiddenFocusableElementOnOverlay = React__namespace.useRef(null);
1102
1139
  var inputRef = React__namespace.useRef(props.inputRef);
1103
1140
  var labelRef = React__namespace.useRef(null);
1104
1141
  var overlayRef = React__namespace.useRef(null);
@@ -1140,6 +1177,14 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1140
1177
  _useOverlayListener2 = _slicedToArray(_useOverlayListener, 2),
1141
1178
  bindOverlayListener = _useOverlayListener2[0],
1142
1179
  unbindOverlayListener = _useOverlayListener2[1];
1180
+ var onFirstHiddenFocus = function onFirstHiddenFocus(event) {
1181
+ var focusableEl = event.relatedTarget === inputRef.current ? utils.DomHandler.getFirstFocusableElement(overlayRef.current, ':not([data-p-hidden-focusable="true"])') : inputRef.current;
1182
+ utils.DomHandler.focus(focusableEl);
1183
+ };
1184
+ var onLastHiddenFocus = function onLastHiddenFocus(event) {
1185
+ var focusableEl = event.relatedTarget === inputRef.current ? utils.DomHandler.getLastFocusableElement(overlayRef.current, ':not([data-p-hidden-focusable="true"])') : inputRef.current;
1186
+ utils.DomHandler.focus(focusableEl);
1187
+ };
1143
1188
  var onPanelClick = function onPanelClick(event) {
1144
1189
  overlayservice.OverlayService.emit('overlay-click', {
1145
1190
  originalEvent: event,
@@ -1149,63 +1194,60 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1149
1194
  var allowOptionSelect = function allowOptionSelect() {
1150
1195
  return !props.selectionLimit || !props.value || props.value && props.value.length < props.selectionLimit;
1151
1196
  };
1152
- var onOptionSelect = function onOptionSelect(event) {
1153
- var originalEvent = event.originalEvent,
1154
- option = event.option;
1155
- if (props.disabled || isOptionDisabled(option)) {
1156
- return;
1197
+ var findNextSelectedOptionIndex = function findNextSelectedOptionIndex(index) {
1198
+ var matchedOptionIndex = hasSelectedOption && index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
1199
+ return isValidSelectedOption(option);
1200
+ }) : -1;
1201
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : -1;
1202
+ };
1203
+ var findPrevSelectedOptionIndex = function findPrevSelectedOptionIndex(index) {
1204
+ var matchedOptionIndex = hasSelectedOption && index > 0 ? utils.ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
1205
+ return isValidSelectedOption(option);
1206
+ }) : -1;
1207
+ return matchedOptionIndex > -1 ? matchedOptionIndex : -1;
1208
+ };
1209
+ var findNearestSelectedOptionIndex = function findNearestSelectedOptionIndex(index) {
1210
+ var firstCheckUp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1211
+ var matchedOptionIndex = -1;
1212
+ if (hasSelectedOption) {
1213
+ if (firstCheckUp) {
1214
+ matchedOptionIndex = findPrevSelectedOptionIndex(index);
1215
+ matchedOptionIndex = matchedOptionIndex === -1 ? findNextSelectedOptionIndex(index) : matchedOptionIndex;
1216
+ } else {
1217
+ matchedOptionIndex = findNextSelectedOptionIndex(index);
1218
+ matchedOptionIndex = matchedOptionIndex === -1 ? findPrevSelectedOptionIndex(index) : matchedOptionIndex;
1219
+ }
1157
1220
  }
1158
- var optionValue = getOptionValue(option);
1159
- var isUsed = isOptionValueUsed(option);
1160
- var selected = isSelected(option);
1161
- var allowSelect = allowOptionSelect();
1162
- if (selected) {
1163
- updateModel(originalEvent, props.value.filter(function (val) {
1164
- return !utils.ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
1165
- }), option);
1166
- } else if (allowSelect) {
1167
- updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]), option);
1221
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1222
+ };
1223
+ var onOptionSelectRange = function onOptionSelectRange(event) {
1224
+ var start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : -1;
1225
+ var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
1226
+ start === -1 && (start = findNearestSelectedOptionIndex(end, true));
1227
+ end === -1 && (end = findNearestSelectedOptionIndex(start));
1228
+ if (start !== -1 && end !== -1) {
1229
+ var rangeStart = Math.min(start, end);
1230
+ var rangeEnd = Math.max(start, end);
1231
+ var value = visibleOptions.slice(rangeStart, rangeEnd + 1).filter(function (option) {
1232
+ return isValidOption(option);
1233
+ }).map(function (option) {
1234
+ return getOptionValue(option);
1235
+ });
1236
+ updateModel(event, value);
1168
1237
  }
1169
1238
  };
1170
- var onOptionKeyDown = function onOptionKeyDown(event) {
1171
- var originalEvent = event.originalEvent;
1172
- var listItem = originalEvent.currentTarget;
1173
- switch (originalEvent.which) {
1174
- //down
1175
- case 40:
1176
- var nextItem = findNextItem(listItem);
1177
- nextItem && nextItem.focus();
1178
- originalEvent.preventDefault();
1179
- break;
1180
-
1181
- //up
1182
- case 38:
1183
- var prevItem = findPrevItem(listItem);
1184
- prevItem && prevItem.focus();
1185
- originalEvent.preventDefault();
1186
- break;
1187
-
1188
- //enter and space
1189
- case 13:
1190
- case 32:
1191
- onOptionSelect(event);
1192
- originalEvent.preventDefault();
1193
- break;
1194
-
1195
- //escape
1196
- case 27:
1197
- hide();
1198
- utils.DomHandler.focus(inputRef.current);
1199
- break;
1239
+ var onOptionSelect = function onOptionSelect(event, option) {
1240
+ var index = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
1241
+ if (props.disabled || isOptionDisabled(option)) {
1242
+ return;
1200
1243
  }
1201
- };
1202
- var findNextItem = function findNextItem(item) {
1203
- var nextItem = item.nextElementSibling;
1204
- return nextItem ? utils.DomHandler.getAttribute(nextItem, 'data-p-disabled') === true || utils.DomHandler.getAttribute(nextItem, 'data-pc-section') === 'itemgroup' ? findNextItem(nextItem) : nextItem : null;
1205
- };
1206
- var findPrevItem = function findPrevItem(item) {
1207
- var prevItem = item.previousElementSibling;
1208
- return prevItem ? utils.DomHandler.getAttribute(prevItem, 'data-p-disabled') === true || utils.DomHandler.getAttribute(prevItem, 'data-pc-section') === 'itemgroup' ? findPrevItem(prevItem) : prevItem : null;
1244
+ var selected = isSelected(option);
1245
+ var value = null;
1246
+ if (selected) value = props.value.filter(function (val) {
1247
+ return !utils.ObjectUtils.equals(val, getOptionValue(option), equalityKey);
1248
+ });else value = [].concat(_toConsumableArray(props.value || []), [getOptionValue(option)]);
1249
+ updateModel(event, value);
1250
+ index !== -1 && setFocusedOptionIndex(index);
1209
1251
  };
1210
1252
  var onClick = function onClick(event) {
1211
1253
  if (!props.inline && !props.disabled && !props.loading && !isPanelClicked(event) && utils.DomHandler.getAttribute(event.target, 'data-pc-section') !== 'removetokenicon' && !isClearClicked(event)) {
@@ -1213,42 +1255,169 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1213
1255
  utils.DomHandler.focus(inputRef.current);
1214
1256
  event.preventDefault();
1215
1257
  }
1258
+ setClicked(true);
1259
+ };
1260
+ var onArrowDownKey = function onArrowDownKey(event) {
1261
+ if (!overlayVisibleState) {
1262
+ show();
1263
+ props.editable && changeFocusedOptionIndex(event, findSelectedOptionIndex());
1264
+ } else {
1265
+ var optionIndex = focusedOptionIndex !== -1 ? findNextOptionIndex(focusedOptionIndex) : clicked ? findFirstOptionIndex() : findFirstFocusedOptionIndex();
1266
+ if (event.shiftKey) {
1267
+ onOptionSelectRange(event, startRangeIndex, optionIndex);
1268
+ }
1269
+ changeFocusedOptionIndex(event, optionIndex);
1270
+ }
1271
+ event.preventDefault();
1272
+ };
1273
+ var onArrowUpKey = function onArrowUpKey(event) {
1274
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1275
+ if (event.altKey && !pressedInInputText) {
1276
+ if (focusedOptionIndex !== -1) {
1277
+ onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1278
+ }
1279
+ overlayVisibleState && hide();
1280
+ event.preventDefault();
1281
+ } else {
1282
+ var optionIndex = focusedOptionIndex !== -1 ? findPrevOptionIndex(focusedOptionIndex) : clicked ? findLastOptionIndex() : findLastFocusedOptionIndex();
1283
+ changeFocusedOptionIndex(event, optionIndex);
1284
+ !overlayVisibleState && show();
1285
+ event.preventDefault();
1286
+ }
1287
+ };
1288
+ var onEnterKey = function onEnterKey(event) {
1289
+ if (!overlayVisibleState) {
1290
+ setFocusedOptionIndex(-1);
1291
+ onArrowDownKey(event);
1292
+ } else {
1293
+ if (focusedOptionIndex !== -1) {
1294
+ if (event.shiftKey) onOptionSelectRange(event, focusedOptionIndex);else onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1295
+ }
1296
+ }
1297
+ event.preventDefault();
1298
+ };
1299
+ var onHomeKey = function onHomeKey(event) {
1300
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1301
+ var currentTarget = event.currentTarget;
1302
+ if (pressedInInputText) {
1303
+ var len = currentTarget.value.length;
1304
+ currentTarget.setSelectionRange(0, event.shiftKey ? len : 0);
1305
+ setFocusedOptionIndex(-1);
1306
+ } else {
1307
+ var metaKey = event.metaKey || event.ctrlKey;
1308
+ var optionIndex = findFirstOptionIndex();
1309
+ if (event.shiftKey && metaKey) {
1310
+ onOptionSelectRange(event, optionIndex, startRangeIndex);
1311
+ }
1312
+ changeFocusedOptionIndex(event, optionIndex);
1313
+ !overlayVisibleState && show();
1314
+ }
1315
+ event.preventDefault();
1316
+ };
1317
+ var onEndKey = function onEndKey(event) {
1318
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1319
+ var currentTarget = event.currentTarget;
1320
+ if (pressedInInputText) {
1321
+ var len = currentTarget.value.length;
1322
+ currentTarget.setSelectionRange(event.shiftKey ? 0 : len, len);
1323
+ _readOnlyError("focusedOptionIndex");
1324
+ } else {
1325
+ var metaKey = event.metaKey || event.ctrlKey;
1326
+ var optionIndex = findLastOptionIndex();
1327
+ if (event.shiftKey && metaKey) {
1328
+ onOptionSelectRange(event, startRangeIndex, optionIndex);
1329
+ }
1330
+ changeFocusedOptionIndex(event, optionIndex);
1331
+ !overlayVisibleState && show();
1332
+ }
1333
+ event.preventDefault();
1334
+ };
1335
+ var onPageUpKey = function onPageUpKey(event) {
1336
+ event.preventDefault();
1337
+ };
1338
+ var onPageDownKey = function onPageDownKey(event) {
1339
+ event.preventDefault();
1340
+ };
1341
+ var onTabKey = function onTabKey(event) {
1342
+ var pressedInInputText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1343
+ if (!pressedInInputText) {
1344
+ if (overlayVisibleState && hasFocusableElements()) {
1345
+ utils.DomHandler.focus(event.shiftKey ? lastHiddenFocusableElementOnOverlay.current : firstHiddenFocusableElementOnOverlay.current);
1346
+ event.preventDefault();
1347
+ } else {
1348
+ if (focusedOptionIndex !== -1) {
1349
+ onOptionSelect(event, visibleOptions[focusedOptionIndex]);
1350
+ }
1351
+ overlayVisibleState && hide(filter);
1352
+ }
1353
+ }
1354
+ };
1355
+ var onShiftKey = function onShiftKey() {
1356
+ setStartRangeIndex(focusedOptionIndex);
1216
1357
  };
1217
1358
  var onKeyDown = function onKeyDown(event) {
1218
- switch (event.which) {
1219
- //down
1220
- case 40:
1359
+ var metaKey = event.metaKey || event.ctrlKey;
1360
+ switch (event.code) {
1361
+ case 'ArrowUp':
1221
1362
  if (props.inline) break;
1222
- if (!overlayVisibleState && event.altKey) {
1223
- show();
1224
- event.preventDefault();
1225
- }
1363
+ onArrowUpKey(event);
1226
1364
  break;
1227
-
1228
- //space
1229
- case 32:
1365
+ case 'ArrowDown':
1366
+ if (props.inline) break;
1367
+ onArrowDownKey(event);
1368
+ break;
1369
+ case 'Space':
1370
+ case 'NumpadEnter':
1371
+ case 'Enter':
1372
+ if (props.inline) break;
1373
+ onEnterKey(event);
1374
+ break;
1375
+ case 'Home':
1230
1376
  if (props.inline) break;
1231
- overlayVisibleState ? hide() : show();
1377
+ onHomeKey(event);
1232
1378
  event.preventDefault();
1233
1379
  break;
1234
-
1235
- //escape
1236
- case 27:
1380
+ case 'End':
1381
+ if (props.inline) break;
1382
+ onEndKey(event);
1383
+ event.preventDefault();
1384
+ break;
1385
+ case 'PageDown':
1386
+ onPageDownKey(event);
1387
+ break;
1388
+ case 'PageUp':
1389
+ onPageUpKey(event);
1390
+ break;
1391
+ case 'Escape':
1237
1392
  if (props.inline) break;
1238
1393
  hide();
1239
1394
  break;
1240
-
1241
- //tab
1242
- case 9:
1243
- if (overlayVisibleState) {
1244
- var firstFocusableElement = utils.DomHandler.getFirstFocusableElement(overlayRef.current);
1245
- if (firstFocusableElement) {
1246
- firstFocusableElement.focus();
1247
- event.preventDefault();
1248
- }
1395
+ case 'Tab':
1396
+ onTabKey(event);
1397
+ break;
1398
+ case 'ShiftLeft':
1399
+ case 'ShiftRight':
1400
+ onShiftKey();
1401
+ break;
1402
+ default:
1403
+ if (event.code === 'KeyA' && metaKey) {
1404
+ var value = visibleOptions.filter(function (option) {
1405
+ return isValidOption(option);
1406
+ }).map(function (option) {
1407
+ return getOptionValue(option);
1408
+ });
1409
+ updateModel(event, value);
1410
+ event.preventDefault();
1411
+ break;
1412
+ }
1413
+ if (!metaKey && utils.ObjectUtils.isPrintableCharacter(event.key)) {
1414
+ !overlayVisibleState && show();
1415
+ searchOptions(event);
1416
+ event.preventDefault();
1249
1417
  }
1250
1418
  break;
1251
1419
  }
1420
+ setClicked(false);
1252
1421
  };
1253
1422
  var onSelectAll = function onSelectAll(event) {
1254
1423
  if (props.onSelectAll) {
@@ -1334,9 +1503,13 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1334
1503
  };
1335
1504
  var show = function show() {
1336
1505
  setOverlayVisibleState(true);
1506
+ setFocusedOptionIndex(focusedOptionIndex !== -1 ? focusedOptionIndex : props.autoOptionFocus ? findFirstFocusedOptionIndex() : findSelectedOptionIndex());
1507
+ utils.DomHandler.focus(inputRef.current);
1337
1508
  };
1338
1509
  var hide = function hide() {
1510
+ setFocusedOptionIndex(-1);
1339
1511
  setOverlayVisibleState(false);
1512
+ setClicked(false);
1340
1513
  };
1341
1514
  var onOverlayEnter = function onOverlayEnter(callback) {
1342
1515
  utils.ZIndexUtils.set('overlay', overlayRef.current, context && context.autoZIndex || PrimeReact__default["default"].autoZIndex, context && context.zIndex['overlay'] || PrimeReact__default["default"].zIndex['overlay']);
@@ -1406,6 +1579,9 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1406
1579
  });
1407
1580
  });
1408
1581
  };
1582
+ var isEquals = function isEquals(value1, value2) {
1583
+ return utils.ObjectUtils.equals(value1, value2, equalityKey);
1584
+ };
1409
1585
  var isSelected = function isSelected(option) {
1410
1586
  if (props.value) {
1411
1587
  var optionValue = getOptionValue(option);
@@ -1530,6 +1706,114 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1530
1706
  var isOptionValueUsed = function isOptionValueUsed(option) {
1531
1707
  return !props.useOptionAsValue && props.optionValue || option && option['value'] !== undefined;
1532
1708
  };
1709
+ var isOptionGroup = function isOptionGroup(option) {
1710
+ return props.optionGroupLabel && option.optionGroup && option.group;
1711
+ };
1712
+ var hasSelectedOption = function hasSelectedOption() {
1713
+ return utils.ObjectUtils.isNotEmpty(props.value);
1714
+ };
1715
+ var hasFocusableElements = function hasFocusableElements() {
1716
+ return utils.DomHandler.getFocusableElements(overlayRef.current, ':not([data-p-hidden-focusable="true"])').length > 0;
1717
+ };
1718
+ var isOptionMatched = function isOptionMatched(option) {
1719
+ var _getOptionLabel;
1720
+ return isValidOption(option) && ((_getOptionLabel = getOptionLabel(option)) === null || _getOptionLabel === void 0 ? void 0 : _getOptionLabel.toLocaleLowerCase(props.filterLocale).startsWith(searchValue.current.toLocaleLowerCase(props.filterLocale)));
1721
+ };
1722
+ var isValidOption = function isValidOption(option) {
1723
+ return utils.ObjectUtils.isNotEmpty(option) && !(isOptionDisabled(option) || isOptionGroup(option));
1724
+ };
1725
+ var isValidSelectedOption = function isValidSelectedOption(option) {
1726
+ return isValidOption(option) && isSelected(option);
1727
+ };
1728
+ var findSelectedOptionIndex = function findSelectedOptionIndex() {
1729
+ if (hasSelectedOption()) {
1730
+ var _loop = function _loop() {
1731
+ var value = props.value[index];
1732
+ var matchedOptionIndex = visibleOptions.findIndex(function (option) {
1733
+ return isValidSelectedOption(option) && isEquals(value, getOptionValue(option));
1734
+ });
1735
+ if (matchedOptionIndex > -1) return {
1736
+ v: matchedOptionIndex
1737
+ };
1738
+ },
1739
+ _ret;
1740
+ for (var index = props.value.length - 1; index >= 0; index--) {
1741
+ _ret = _loop();
1742
+ if (_ret) return _ret.v;
1743
+ }
1744
+ }
1745
+ return -1;
1746
+ };
1747
+ var findFirstFocusedOptionIndex = function findFirstFocusedOptionIndex() {
1748
+ var selectedIndex = findSelectedOptionIndex();
1749
+ return selectedIndex < 0 ? findFirstOptionIndex() : selectedIndex;
1750
+ };
1751
+ var findLastFocusedOptionIndex = function findLastFocusedOptionIndex() {
1752
+ var selectedIndex = findSelectedOptionIndex();
1753
+ return selectedIndex < 0 ? findLastOptionIndex() : selectedIndex;
1754
+ };
1755
+ var findFirstOptionIndex = function findFirstOptionIndex() {
1756
+ return visibleOptions.findIndex(function (option) {
1757
+ return isValidOption(option);
1758
+ });
1759
+ };
1760
+ var findLastOptionIndex = function findLastOptionIndex() {
1761
+ return utils.ObjectUtils.findLastIndex(visibleOptions, function (option) {
1762
+ return isValidOption(option);
1763
+ });
1764
+ };
1765
+ var findNextOptionIndex = function findNextOptionIndex(index) {
1766
+ var matchedOptionIndex = index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
1767
+ return isValidOption(option);
1768
+ }) : -1;
1769
+ return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : index;
1770
+ };
1771
+ var findPrevOptionIndex = function findPrevOptionIndex(index) {
1772
+ var matchedOptionIndex = index > 0 ? utils.ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
1773
+ return isValidOption(option);
1774
+ }) : -1;
1775
+ return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1776
+ };
1777
+ var searchOptions = function searchOptions(event) {
1778
+ searchValue.current = (searchValue.current || '') + event.key;
1779
+ var optionIndex = -1;
1780
+ if (utils.ObjectUtils.isNotEmpty(searchValue.current)) {
1781
+ if (focusedOptionIndex !== -1) {
1782
+ optionIndex = visibleOptions.slice(focusedOptionIndex).findIndex(function (option) {
1783
+ return isOptionMatched(option);
1784
+ });
1785
+ optionIndex = optionIndex === -1 ? visibleOptions.slice(0, focusedOptionIndex).findIndex(function (option) {
1786
+ return isOptionMatched(option);
1787
+ }) : optionIndex + focusedOptionIndex;
1788
+ } else {
1789
+ optionIndex = visibleOptions.findIndex(function (option) {
1790
+ return isOptionMatched(option);
1791
+ });
1792
+ }
1793
+ if (optionIndex === -1 && focusedOptionIndex === -1) {
1794
+ optionIndex = findFirstFocusedOptionIndex();
1795
+ }
1796
+ if (optionIndex !== -1) {
1797
+ changeFocusedOptionIndex(event, optionIndex);
1798
+ }
1799
+ }
1800
+ if (searchTimeout.current) {
1801
+ clearTimeout(searchTimeout.current);
1802
+ }
1803
+ searchTimeout.current = setTimeout(function () {
1804
+ searchValue.current = '';
1805
+ searchTimeout.current = null;
1806
+ }, 500);
1807
+ };
1808
+ var changeFocusedOptionIndex = function changeFocusedOptionIndex(event, index) {
1809
+ if (focusedOptionIndex !== index) {
1810
+ setFocusedOptionIndex(index);
1811
+ scrollInView();
1812
+ if (props.selectOnFocus) {
1813
+ onOptionSelect(event, visibleOptions[index], false);
1814
+ }
1815
+ }
1816
+ };
1533
1817
  var removeChip = function removeChip(event, item) {
1534
1818
  var value = props.value.filter(function (val) {
1535
1819
  return !utils.ObjectUtils.equals(val, item, equalityKey);
@@ -1586,6 +1870,12 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1586
1870
  if (props.display === 'chip' && !empty) {
1587
1871
  var value = props.value.slice(0, props.maxSelectedLabels || props.value.length);
1588
1872
  return value.map(function (val, i) {
1873
+ var context = {
1874
+ context: {
1875
+ value: val,
1876
+ index: i
1877
+ }
1878
+ };
1589
1879
  var label = getLabelByValue(val);
1590
1880
  var iconProps = mergeProps({
1591
1881
  key: i,
@@ -1593,17 +1883,17 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1593
1883
  onClick: function onClick(e) {
1594
1884
  return removeChip(e, val);
1595
1885
  }
1596
- }, ptm('removeTokenIcon'));
1886
+ }, ptm('removeTokenIcon', context));
1597
1887
  var icon = !props.disabled && (props.removeIcon ? utils.IconUtils.getJSXIcon(props.removeIcon, _objectSpread({}, iconProps), {
1598
1888
  props: props
1599
1889
  }) : /*#__PURE__*/React__namespace.createElement(timescircle.TimesCircleIcon, iconProps));
1600
1890
  var tokenProps = mergeProps({
1601
1891
  className: cx('token')
1602
- }, ptm('token'));
1892
+ }, ptm('token', context));
1603
1893
  var tokenLabelProps = mergeProps({
1604
1894
  key: label + i,
1605
1895
  className: cx('tokenLabel')
1606
- }, ptm('tokenLabel'));
1896
+ }, ptm('tokenLabel', context));
1607
1897
  return /*#__PURE__*/React__namespace.createElement("div", _extends({}, tokenProps, {
1608
1898
  key: label
1609
1899
  }), /*#__PURE__*/React__namespace.createElement("span", tokenLabelProps, label), icon);
@@ -1670,6 +1960,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1670
1960
  setTimeout(function () {
1671
1961
  props.overlayVisible ? show() : hide();
1672
1962
  }, 100);
1963
+ // eslint-disable-next-line react-hooks/exhaustive-deps
1673
1964
  }, [props.overlayVisible]);
1674
1965
  hooks.useUpdateEffect(function () {
1675
1966
  if (overlayVisibleState && filterState && hasFilter) {
@@ -1741,7 +2032,8 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1741
2032
  onClick: onClick
1742
2033
  }), MultiSelectBase.getOtherProps(props), ptm('root'));
1743
2034
  var hiddenInputWrapperProps = mergeProps({
1744
- className: 'p-hidden-accessible'
2035
+ className: 'p-hidden-accessible',
2036
+ 'data-p-hidden-accessible': true
1745
2037
  }, ptm('hiddenInputWrapper'));
1746
2038
  var inputProps = mergeProps(_objectSpread({
1747
2039
  ref: inputRef,
@@ -1754,7 +2046,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1754
2046
  role: 'listbox',
1755
2047
  'aria-expanded': overlayVisibleState,
1756
2048
  disabled: props.disabled,
1757
- tabIndex: props.tabIndex
2049
+ tabIndex: !props.disabled ? props.tabIndex : -1
1758
2050
  }, ariaProps), ptm('input'));
1759
2051
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", rootProps, /*#__PURE__*/React__namespace.createElement("div", hiddenInputWrapperProps, /*#__PURE__*/React__namespace.createElement("input", _extends({}, inputProps, {
1760
2052
  readOnly: true
@@ -1766,6 +2058,12 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1766
2058
  onClick: onPanelClick,
1767
2059
  onOverlayHide: hide,
1768
2060
  filterValue: filterState,
2061
+ focusedOptionIndex: focusedOptionIndex,
2062
+ onFirstHiddenFocus: onFirstHiddenFocus,
2063
+ onLastHiddenFocus: onLastHiddenFocus,
2064
+ firstHiddenFocusableElementOnOverlay: firstHiddenFocusableElementOnOverlay,
2065
+ lastHiddenFocusableElementOnOverlay: lastHiddenFocusableElementOnOverlay,
2066
+ setFocusedOptionIndex: setFocusedOptionIndex,
1769
2067
  hasFilter: hasFilter,
1770
2068
  onFilterInputChange: onFilterInputChange,
1771
2069
  resetFilter: resetFilter,
@@ -1782,7 +2080,6 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1782
2080
  isAllSelected: isAllSelected,
1783
2081
  onOptionSelect: onOptionSelect,
1784
2082
  allowOptionSelect: allowOptionSelect,
1785
- onOptionKeyDown: onOptionKeyDown,
1786
2083
  "in": overlayVisibleState,
1787
2084
  onEnter: onOverlayEnter,
1788
2085
  onEntered: onOverlayEntered,
@@ -1795,10 +2092,9 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1795
2092
  metaData: metaData
1796
2093
  }))), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
1797
2094
  target: elementRef,
1798
- content: props.tooltip
1799
- }, props.tooltipOptions, {
2095
+ content: props.tooltip,
1800
2096
  pt: ptm('tooltip')
1801
- })));
2097
+ }, props.tooltipOptions)));
1802
2098
  }));
1803
2099
  MultiSelect.displayName = 'MultiSelect';
1804
2100