primereact 10.5.2 → 10.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (508) hide show
  1. package/accordion/accordion.cjs.js +1 -0
  2. package/accordion/accordion.cjs.min.js +1 -1
  3. package/accordion/accordion.esm.js +1 -0
  4. package/accordion/accordion.esm.min.js +1 -1
  5. package/accordion/accordion.js +1 -0
  6. package/accordion/accordion.min.js +1 -1
  7. package/api/api.cjs.js +41 -9
  8. package/api/api.cjs.min.js +1 -1
  9. package/api/api.d.ts +1 -0
  10. package/api/api.esm.js +41 -9
  11. package/api/api.esm.min.js +1 -1
  12. package/api/api.js +41 -9
  13. package/api/api.min.js +1 -1
  14. package/autocomplete/autocomplete.cjs.js +51 -54
  15. package/autocomplete/autocomplete.cjs.min.js +1 -1
  16. package/autocomplete/autocomplete.esm.js +51 -54
  17. package/autocomplete/autocomplete.esm.min.js +1 -1
  18. package/autocomplete/autocomplete.js +51 -54
  19. package/autocomplete/autocomplete.min.js +1 -1
  20. package/buttongroup/buttongroup.cjs.js +418 -0
  21. package/buttongroup/buttongroup.cjs.min.js +1 -0
  22. package/buttongroup/buttongroup.d.ts +86 -0
  23. package/buttongroup/buttongroup.esm.js +391 -0
  24. package/buttongroup/buttongroup.esm.min.js +1 -0
  25. package/buttongroup/buttongroup.js +417 -0
  26. package/buttongroup/buttongroup.min.js +1 -0
  27. package/buttongroup/package.json +7 -0
  28. package/calendar/calendar.cjs.js +217 -162
  29. package/calendar/calendar.cjs.min.js +1 -1
  30. package/calendar/calendar.esm.js +217 -162
  31. package/calendar/calendar.esm.min.js +1 -1
  32. package/calendar/calendar.js +217 -162
  33. package/calendar/calendar.min.js +1 -1
  34. package/carousel/carousel.cjs.js +8 -8
  35. package/carousel/carousel.esm.js +8 -8
  36. package/carousel/carousel.js +8 -8
  37. package/cascadeselect/cascadeselect.cjs.js +6 -8
  38. package/cascadeselect/cascadeselect.esm.js +6 -8
  39. package/cascadeselect/cascadeselect.js +6 -8
  40. package/checkbox/checkbox.cjs.js +5 -6
  41. package/checkbox/checkbox.cjs.min.js +1 -1
  42. package/checkbox/checkbox.d.ts +1 -1
  43. package/checkbox/checkbox.esm.js +5 -6
  44. package/checkbox/checkbox.esm.min.js +1 -1
  45. package/checkbox/checkbox.js +5 -6
  46. package/checkbox/checkbox.min.js +1 -1
  47. package/chip/chip.cjs.js +1 -1
  48. package/chip/chip.cjs.min.js +1 -1
  49. package/chip/chip.esm.js +1 -1
  50. package/chip/chip.esm.min.js +1 -1
  51. package/chip/chip.js +1 -1
  52. package/chip/chip.min.js +1 -1
  53. package/chips/chips.cjs.js +8 -6
  54. package/chips/chips.cjs.min.js +1 -1
  55. package/chips/chips.esm.js +8 -6
  56. package/chips/chips.esm.min.js +1 -1
  57. package/chips/chips.js +8 -6
  58. package/chips/chips.min.js +1 -1
  59. package/colorpicker/colorpicker.cjs.js +8 -6
  60. package/colorpicker/colorpicker.cjs.min.js +1 -1
  61. package/colorpicker/colorpicker.esm.js +8 -6
  62. package/colorpicker/colorpicker.esm.min.js +1 -1
  63. package/colorpicker/colorpicker.js +8 -6
  64. package/colorpicker/colorpicker.min.js +1 -1
  65. package/column/column.d.ts +8 -52
  66. package/componentbase/componentbase.cjs.js +23 -11
  67. package/componentbase/componentbase.cjs.min.js +1 -1
  68. package/componentbase/componentbase.esm.js +23 -11
  69. package/componentbase/componentbase.esm.min.js +1 -1
  70. package/componentbase/componentbase.js +23 -11
  71. package/componentbase/componentbase.min.js +1 -1
  72. package/confirmpopup/confirmpopup.cjs.js +1 -1
  73. package/confirmpopup/confirmpopup.esm.js +1 -1
  74. package/confirmpopup/confirmpopup.js +1 -1
  75. package/contextmenu/contextmenu.cjs.js +8 -5
  76. package/contextmenu/contextmenu.cjs.min.js +1 -1
  77. package/contextmenu/contextmenu.esm.js +8 -5
  78. package/contextmenu/contextmenu.esm.min.js +1 -1
  79. package/contextmenu/contextmenu.js +8 -5
  80. package/contextmenu/contextmenu.min.js +1 -1
  81. package/core/core.js +977 -529
  82. package/core/core.min.js +11 -11
  83. package/csstransition/csstransition.cjs.js +17 -18
  84. package/csstransition/csstransition.esm.js +17 -18
  85. package/csstransition/csstransition.js +17 -18
  86. package/datascroller/datascroller.cjs.js +18 -20
  87. package/datascroller/datascroller.cjs.min.js +1 -1
  88. package/datascroller/datascroller.esm.js +18 -20
  89. package/datascroller/datascroller.esm.min.js +1 -1
  90. package/datascroller/datascroller.js +18 -20
  91. package/datascroller/datascroller.min.js +1 -1
  92. package/datatable/datatable.cjs.js +645 -376
  93. package/datatable/datatable.cjs.min.js +1 -1
  94. package/datatable/datatable.d.ts +5 -5
  95. package/datatable/datatable.esm.js +648 -379
  96. package/datatable/datatable.esm.min.js +1 -1
  97. package/datatable/datatable.js +646 -377
  98. package/datatable/datatable.min.js +1 -1
  99. package/dataview/dataview.cjs.js +1 -1
  100. package/dataview/dataview.cjs.min.js +1 -1
  101. package/dataview/dataview.esm.js +1 -1
  102. package/dataview/dataview.esm.min.js +1 -1
  103. package/dataview/dataview.js +1 -1
  104. package/dataview/dataview.min.js +1 -1
  105. package/deferredcontent/deferredcontent.cjs.js +3 -4
  106. package/deferredcontent/deferredcontent.esm.js +3 -4
  107. package/deferredcontent/deferredcontent.js +3 -4
  108. package/dialog/dialog.cjs.js +22 -17
  109. package/dialog/dialog.esm.js +22 -17
  110. package/dialog/dialog.js +22 -17
  111. package/dock/dock.cjs.js +13 -4
  112. package/dock/dock.cjs.min.js +1 -1
  113. package/dock/dock.esm.js +13 -4
  114. package/dock/dock.esm.min.js +1 -1
  115. package/dock/dock.js +13 -4
  116. package/dock/dock.min.js +1 -1
  117. package/dropdown/dropdown.cjs.js +66 -60
  118. package/dropdown/dropdown.cjs.min.js +1 -1
  119. package/dropdown/dropdown.d.ts +6 -1
  120. package/dropdown/dropdown.esm.js +66 -60
  121. package/dropdown/dropdown.esm.min.js +1 -1
  122. package/dropdown/dropdown.js +66 -60
  123. package/dropdown/dropdown.min.js +1 -1
  124. package/editor/editor.cjs.js +74 -75
  125. package/editor/editor.esm.js +74 -75
  126. package/editor/editor.js +74 -75
  127. package/fieldset/fieldset.cjs.js +1 -1
  128. package/fieldset/fieldset.cjs.min.js +1 -1
  129. package/fieldset/fieldset.esm.js +1 -1
  130. package/fieldset/fieldset.esm.min.js +1 -1
  131. package/fieldset/fieldset.js +1 -1
  132. package/fieldset/fieldset.min.js +1 -1
  133. package/fileupload/fileupload.cjs.js +21 -11
  134. package/fileupload/fileupload.cjs.min.js +1 -1
  135. package/fileupload/fileupload.esm.js +21 -11
  136. package/fileupload/fileupload.esm.min.js +1 -1
  137. package/fileupload/fileupload.js +21 -11
  138. package/fileupload/fileupload.min.js +1 -1
  139. package/floatlabel/floatlabel.cjs.js +419 -0
  140. package/floatlabel/floatlabel.cjs.min.js +1 -0
  141. package/floatlabel/floatlabel.d.ts +81 -0
  142. package/floatlabel/floatlabel.esm.js +392 -0
  143. package/floatlabel/floatlabel.esm.min.js +1 -0
  144. package/floatlabel/floatlabel.js +418 -0
  145. package/floatlabel/floatlabel.min.js +1 -0
  146. package/floatlabel/package.json +7 -0
  147. package/focustrap/focustrap.cjs.js +1 -1
  148. package/focustrap/focustrap.esm.js +1 -1
  149. package/focustrap/focustrap.js +1 -1
  150. package/galleria/galleria.cjs.js +4 -3
  151. package/galleria/galleria.cjs.min.js +1 -1
  152. package/galleria/galleria.esm.js +4 -3
  153. package/galleria/galleria.esm.min.js +1 -1
  154. package/galleria/galleria.js +4 -3
  155. package/galleria/galleria.min.js +1 -1
  156. package/hooks/hooks.cjs.js +32 -11
  157. package/hooks/hooks.esm.js +32 -11
  158. package/hooks/hooks.js +32 -11
  159. package/iconfield/iconfield.cjs.js +121 -0
  160. package/iconfield/iconfield.cjs.min.js +1 -0
  161. package/iconfield/iconfield.d.ts +95 -0
  162. package/iconfield/iconfield.esm.js +113 -0
  163. package/iconfield/iconfield.esm.min.js +1 -0
  164. package/iconfield/iconfield.js +120 -0
  165. package/iconfield/iconfield.min.js +1 -0
  166. package/image/image.cjs.js +7 -3
  167. package/image/image.esm.js +7 -3
  168. package/image/image.js +7 -3
  169. package/inplace/inplace.cjs.js +1 -1
  170. package/inplace/inplace.cjs.min.js +1 -1
  171. package/inplace/inplace.esm.js +1 -1
  172. package/inplace/inplace.esm.min.js +1 -1
  173. package/inplace/inplace.js +1 -1
  174. package/inplace/inplace.min.js +1 -1
  175. package/inputicon/inputicon.cjs.js +107 -0
  176. package/inputicon/inputicon.cjs.min.js +1 -0
  177. package/inputicon/inputicon.d.ts +78 -0
  178. package/inputicon/inputicon.esm.js +99 -0
  179. package/inputicon/inputicon.esm.min.js +1 -0
  180. package/inputicon/inputicon.js +106 -0
  181. package/inputicon/inputicon.min.js +1 -0
  182. package/inputmask/inputmask.cjs.js +56 -36
  183. package/inputmask/inputmask.esm.js +56 -36
  184. package/inputmask/inputmask.js +56 -36
  185. package/inputnumber/inputnumber.cjs.js +27 -17
  186. package/inputnumber/inputnumber.cjs.min.js +1 -1
  187. package/inputnumber/inputnumber.esm.js +27 -17
  188. package/inputnumber/inputnumber.esm.min.js +1 -1
  189. package/inputnumber/inputnumber.js +27 -17
  190. package/inputnumber/inputnumber.min.js +1 -1
  191. package/inputswitch/inputswitch.cjs.js +2 -2
  192. package/inputswitch/inputswitch.cjs.min.js +1 -1
  193. package/inputswitch/inputswitch.esm.js +2 -2
  194. package/inputswitch/inputswitch.esm.min.js +1 -1
  195. package/inputswitch/inputswitch.js +2 -2
  196. package/inputswitch/inputswitch.min.js +1 -1
  197. package/keyfilter/keyfilter.cjs.js +2 -2
  198. package/keyfilter/keyfilter.esm.js +2 -2
  199. package/keyfilter/keyfilter.js +2 -2
  200. package/knob/knob.cjs.js +14 -2
  201. package/knob/knob.esm.js +14 -2
  202. package/knob/knob.js +14 -2
  203. package/listbox/listbox.cjs.js +189 -67
  204. package/listbox/listbox.cjs.min.js +1 -1
  205. package/listbox/listbox.d.ts +17 -12
  206. package/listbox/listbox.esm.js +189 -67
  207. package/listbox/listbox.esm.min.js +1 -1
  208. package/listbox/listbox.js +189 -67
  209. package/listbox/listbox.min.js +1 -1
  210. package/megamenu/megamenu.cjs.js +94 -96
  211. package/megamenu/megamenu.cjs.min.js +1 -1
  212. package/megamenu/megamenu.esm.js +94 -96
  213. package/megamenu/megamenu.esm.min.js +1 -1
  214. package/megamenu/megamenu.js +94 -96
  215. package/megamenu/megamenu.min.js +1 -1
  216. package/mention/mention.cjs.js +4 -6
  217. package/mention/mention.esm.js +4 -6
  218. package/mention/mention.js +4 -6
  219. package/menu/menu.cjs.js +5 -2
  220. package/menu/menu.cjs.min.js +1 -1
  221. package/menu/menu.esm.js +5 -2
  222. package/menu/menu.esm.min.js +1 -1
  223. package/menu/menu.js +5 -2
  224. package/menu/menu.min.js +1 -1
  225. package/menubar/menubar.cjs.js +24 -23
  226. package/menubar/menubar.cjs.min.js +1 -1
  227. package/menubar/menubar.esm.js +24 -23
  228. package/menubar/menubar.esm.min.js +1 -1
  229. package/menubar/menubar.js +24 -23
  230. package/menubar/menubar.min.js +1 -1
  231. package/messages/messages.cjs.js +8 -7
  232. package/messages/messages.cjs.min.js +1 -1
  233. package/messages/messages.esm.js +3 -2
  234. package/messages/messages.esm.min.js +1 -1
  235. package/messages/messages.js +8 -7
  236. package/messages/messages.min.js +1 -1
  237. package/metergroup/metergroup.cjs.js +4 -5
  238. package/metergroup/metergroup.esm.js +4 -5
  239. package/metergroup/metergroup.js +4 -5
  240. package/multiselect/multiselect.cjs.js +203 -169
  241. package/multiselect/multiselect.cjs.min.js +1 -1
  242. package/multiselect/multiselect.d.ts +6 -1
  243. package/multiselect/multiselect.esm.js +203 -169
  244. package/multiselect/multiselect.esm.min.js +1 -1
  245. package/multiselect/multiselect.js +203 -169
  246. package/multiselect/multiselect.min.js +1 -1
  247. package/multistatecheckbox/multistatecheckbox.cjs.js +227 -28
  248. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  249. package/multistatecheckbox/multistatecheckbox.esm.js +228 -29
  250. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  251. package/multistatecheckbox/multistatecheckbox.js +228 -30
  252. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  253. package/orderlist/orderlist.cjs.js +75 -50
  254. package/orderlist/orderlist.cjs.min.js +1 -1
  255. package/orderlist/orderlist.d.ts +7 -2
  256. package/orderlist/orderlist.esm.js +75 -50
  257. package/orderlist/orderlist.esm.min.js +1 -1
  258. package/orderlist/orderlist.js +75 -50
  259. package/orderlist/orderlist.min.js +1 -1
  260. package/organizationchart/organizationchart.cjs.js +7 -3
  261. package/organizationchart/organizationchart.esm.js +7 -3
  262. package/organizationchart/organizationchart.js +7 -3
  263. package/overlaypanel/overlaypanel.cjs.js +2 -2
  264. package/overlaypanel/overlaypanel.esm.js +2 -2
  265. package/overlaypanel/overlaypanel.js +2 -2
  266. package/package.json +1 -1
  267. package/paginator/paginator.cjs.js +19 -20
  268. package/paginator/paginator.cjs.min.js +1 -1
  269. package/paginator/paginator.esm.js +19 -20
  270. package/paginator/paginator.esm.min.js +1 -1
  271. package/paginator/paginator.js +19 -20
  272. package/paginator/paginator.min.js +1 -1
  273. package/panelmenu/panelmenu.cjs.js +18 -9
  274. package/panelmenu/panelmenu.esm.js +18 -9
  275. package/panelmenu/panelmenu.js +18 -9
  276. package/passthrough/tailwind/index.cjs.js +4 -2
  277. package/passthrough/tailwind/index.esm.js +4 -2
  278. package/passthrough/tailwind/index.js +4 -2
  279. package/password/password.cjs.js +3 -5
  280. package/password/password.esm.js +3 -5
  281. package/password/password.js +3 -5
  282. package/picklist/picklist.cjs.js +40 -11
  283. package/picklist/picklist.cjs.min.js +1 -1
  284. package/picklist/picklist.d.ts +7 -2
  285. package/picklist/picklist.esm.js +40 -11
  286. package/picklist/picklist.esm.min.js +1 -1
  287. package/picklist/picklist.js +40 -11
  288. package/picklist/picklist.min.js +1 -1
  289. package/primereact.all.cjs.js +3577 -2762
  290. package/primereact.all.cjs.min.js +1 -1
  291. package/primereact.all.esm.js +3577 -2762
  292. package/primereact.all.esm.min.js +1 -1
  293. package/primereact.all.js +3577 -2762
  294. package/primereact.all.min.js +1 -1
  295. package/progressbar/progressbar.cjs.js +6 -1
  296. package/progressbar/progressbar.esm.js +6 -1
  297. package/progressbar/progressbar.js +6 -1
  298. package/radiobutton/radiobutton.cjs.js +10 -12
  299. package/radiobutton/radiobutton.cjs.min.js +1 -1
  300. package/radiobutton/radiobutton.esm.js +10 -12
  301. package/radiobutton/radiobutton.esm.min.js +1 -1
  302. package/radiobutton/radiobutton.js +10 -12
  303. package/radiobutton/radiobutton.min.js +1 -1
  304. package/rating/rating.cjs.js +4 -4
  305. package/rating/rating.cjs.min.js +1 -1
  306. package/rating/rating.esm.js +4 -4
  307. package/rating/rating.esm.min.js +1 -1
  308. package/rating/rating.js +4 -4
  309. package/rating/rating.min.js +1 -1
  310. package/resources/themes/arya-blue/theme.css +378 -63
  311. package/resources/themes/arya-green/theme.css +378 -63
  312. package/resources/themes/arya-orange/theme.css +378 -63
  313. package/resources/themes/bootstrap4-dark-blue/theme.css +388 -73
  314. package/resources/themes/bootstrap4-dark-purple/theme.css +966 -188
  315. package/resources/themes/bootstrap4-light-blue/theme.css +388 -73
  316. package/resources/themes/bootstrap4-light-purple/theme.css +966 -188
  317. package/resources/themes/fluent-light/theme.css +372 -63
  318. package/resources/themes/lara-dark-amber/theme.css +396 -151
  319. package/resources/themes/lara-dark-blue/theme.css +396 -151
  320. package/resources/themes/lara-dark-cyan/theme.css +396 -151
  321. package/resources/themes/lara-dark-green/theme.css +396 -151
  322. package/resources/themes/lara-dark-indigo/theme.css +396 -151
  323. package/resources/themes/lara-dark-pink/theme.css +396 -151
  324. package/resources/themes/lara-dark-teal/theme.css +396 -151
  325. package/resources/themes/lara-light-amber/theme.css +392 -151
  326. package/resources/themes/lara-light-blue/theme.css +392 -151
  327. package/resources/themes/lara-light-cyan/theme.css +392 -151
  328. package/resources/themes/lara-light-green/theme.css +392 -151
  329. package/resources/themes/lara-light-indigo/theme.css +392 -151
  330. package/resources/themes/lara-light-pink/theme.css +392 -151
  331. package/resources/themes/lara-light-teal/theme.css +392 -151
  332. package/resources/themes/luna-amber/theme.css +378 -63
  333. package/resources/themes/luna-blue/theme.css +378 -63
  334. package/resources/themes/luna-green/theme.css +378 -63
  335. package/resources/themes/luna-pink/theme.css +378 -63
  336. package/resources/themes/md-dark-deeppurple/theme.css +323 -202
  337. package/resources/themes/md-dark-indigo/theme.css +444 -189
  338. package/resources/themes/md-light-deeppurple/theme.css +323 -202
  339. package/resources/themes/md-light-indigo/theme.css +444 -202
  340. package/resources/themes/mdc-dark-deeppurple/theme.css +323 -202
  341. package/resources/themes/mdc-dark-indigo/theme.css +444 -202
  342. package/resources/themes/mdc-light-deeppurple/theme.css +323 -202
  343. package/resources/themes/mdc-light-indigo/theme.css +444 -202
  344. package/resources/themes/mira/theme.css +378 -63
  345. package/resources/themes/nano/theme.css +378 -63
  346. package/resources/themes/nova/theme.css +378 -63
  347. package/resources/themes/nova-accent/theme.css +378 -63
  348. package/resources/themes/nova-alt/theme.css +378 -63
  349. package/resources/themes/rhea/theme.css +378 -63
  350. package/resources/themes/saga-blue/theme.css +378 -63
  351. package/resources/themes/saga-green/theme.css +378 -63
  352. package/resources/themes/saga-orange/theme.css +378 -63
  353. package/resources/themes/soho-dark/theme.css +388 -73
  354. package/resources/themes/soho-light/theme.css +388 -73
  355. package/resources/themes/tailwind-light/theme.css +378 -63
  356. package/resources/themes/vela-blue/theme.css +378 -63
  357. package/resources/themes/vela-green/theme.css +378 -63
  358. package/resources/themes/vela-orange/theme.css +378 -63
  359. package/resources/themes/viva-dark/theme.css +389 -74
  360. package/resources/themes/viva-light/theme.css +389 -74
  361. package/ripple/ripple.cjs.js +3 -1
  362. package/ripple/ripple.esm.js +3 -1
  363. package/ripple/ripple.js +3 -1
  364. package/scrollpanel/scrollpanel.cjs.js +2 -2
  365. package/scrollpanel/scrollpanel.esm.js +2 -2
  366. package/scrollpanel/scrollpanel.js +2 -2
  367. package/scrolltop/scrolltop.cjs.js +6 -2
  368. package/scrolltop/scrolltop.esm.js +6 -2
  369. package/scrolltop/scrolltop.js +6 -2
  370. package/selectbutton/selectbutton.cjs.js +20 -11
  371. package/selectbutton/selectbutton.cjs.min.js +1 -1
  372. package/selectbutton/selectbutton.esm.js +20 -11
  373. package/selectbutton/selectbutton.esm.min.js +1 -1
  374. package/selectbutton/selectbutton.js +20 -11
  375. package/selectbutton/selectbutton.min.js +1 -1
  376. package/sidebar/sidebar.cjs.js +1 -1
  377. package/sidebar/sidebar.esm.js +1 -1
  378. package/sidebar/sidebar.js +1 -1
  379. package/slidemenu/slidemenu.cjs.js +1 -1
  380. package/slidemenu/slidemenu.esm.js +1 -1
  381. package/slidemenu/slidemenu.js +1 -1
  382. package/slider/slider.cjs.js +37 -10
  383. package/slider/slider.cjs.min.js +1 -1
  384. package/slider/slider.esm.js +37 -10
  385. package/slider/slider.esm.min.js +1 -1
  386. package/slider/slider.js +37 -10
  387. package/slider/slider.min.js +1 -1
  388. package/speeddial/speeddial.cjs.js +1 -0
  389. package/speeddial/speeddial.cjs.min.js +1 -1
  390. package/speeddial/speeddial.esm.js +1 -0
  391. package/speeddial/speeddial.esm.min.js +1 -1
  392. package/speeddial/speeddial.js +1 -0
  393. package/speeddial/speeddial.min.js +1 -1
  394. package/splitbutton/splitbutton.cjs.js +18 -17
  395. package/splitbutton/splitbutton.cjs.min.js +1 -1
  396. package/splitbutton/splitbutton.esm.js +18 -17
  397. package/splitbutton/splitbutton.esm.min.js +1 -1
  398. package/splitbutton/splitbutton.js +18 -17
  399. package/splitbutton/splitbutton.min.js +1 -1
  400. package/splitter/splitter.cjs.js +24 -7
  401. package/splitter/splitter.cjs.min.js +1 -1
  402. package/splitter/splitter.esm.js +24 -7
  403. package/splitter/splitter.esm.min.js +1 -1
  404. package/splitter/splitter.js +24 -7
  405. package/splitter/splitter.min.js +1 -1
  406. package/stepper/package.json +7 -0
  407. package/stepper/stepper.cjs.js +861 -0
  408. package/stepper/stepper.cjs.min.js +1 -0
  409. package/stepper/stepper.d.ts +137 -0
  410. package/stepper/stepper.esm.js +834 -0
  411. package/stepper/stepper.esm.min.js +1 -0
  412. package/stepper/stepper.js +859 -0
  413. package/stepper/stepper.min.js +1 -0
  414. package/stepperpanel/package.json +7 -0
  415. package/stepperpanel/stepperpanel.cjs.js +410 -0
  416. package/stepperpanel/stepperpanel.cjs.min.js +1 -0
  417. package/stepperpanel/stepperpanel.d.ts +158 -0
  418. package/stepperpanel/stepperpanel.esm.js +383 -0
  419. package/stepperpanel/stepperpanel.esm.min.js +1 -0
  420. package/stepperpanel/stepperpanel.js +409 -0
  421. package/stepperpanel/stepperpanel.min.js +1 -0
  422. package/steps/steps.cjs.js +1 -0
  423. package/steps/steps.cjs.min.js +1 -1
  424. package/steps/steps.esm.js +1 -0
  425. package/steps/steps.esm.min.js +1 -1
  426. package/steps/steps.js +1 -0
  427. package/steps/steps.min.js +1 -1
  428. package/styleclass/styleclass.cjs.js +5 -1
  429. package/styleclass/styleclass.esm.js +5 -1
  430. package/styleclass/styleclass.js +5 -1
  431. package/tabmenu/tabmenu.cjs.js +1 -0
  432. package/tabmenu/tabmenu.cjs.min.js +1 -1
  433. package/tabmenu/tabmenu.esm.js +1 -0
  434. package/tabmenu/tabmenu.esm.min.js +1 -1
  435. package/tabmenu/tabmenu.js +1 -0
  436. package/tabmenu/tabmenu.min.js +1 -1
  437. package/tabview/tabview.cjs.js +23 -18
  438. package/tabview/tabview.cjs.min.js +1 -1
  439. package/tabview/tabview.esm.js +23 -18
  440. package/tabview/tabview.esm.min.js +1 -1
  441. package/tabview/tabview.js +23 -18
  442. package/tabview/tabview.min.js +1 -1
  443. package/terminal/terminal.cjs.js +2 -1
  444. package/terminal/terminal.cjs.min.js +1 -1
  445. package/terminal/terminal.esm.js +2 -1
  446. package/terminal/terminal.esm.min.js +1 -1
  447. package/terminal/terminal.js +2 -1
  448. package/terminal/terminal.min.js +1 -1
  449. package/tieredmenu/tieredmenu.cjs.js +18 -17
  450. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  451. package/tieredmenu/tieredmenu.esm.js +18 -17
  452. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  453. package/tieredmenu/tieredmenu.js +18 -17
  454. package/tieredmenu/tieredmenu.min.js +1 -1
  455. package/toast/toast.cjs.js +1 -1
  456. package/toast/toast.esm.js +1 -1
  457. package/toast/toast.js +1 -1
  458. package/togglebutton/togglebutton.cjs.js +1 -1
  459. package/togglebutton/togglebutton.cjs.min.js +1 -1
  460. package/togglebutton/togglebutton.esm.js +1 -1
  461. package/togglebutton/togglebutton.esm.min.js +1 -1
  462. package/togglebutton/togglebutton.js +1 -1
  463. package/togglebutton/togglebutton.min.js +1 -1
  464. package/tooltip/tooltip.cjs.js +20 -17
  465. package/tooltip/tooltip.cjs.min.js +1 -1
  466. package/tooltip/tooltip.esm.js +20 -17
  467. package/tooltip/tooltip.esm.min.js +1 -1
  468. package/tooltip/tooltip.js +20 -17
  469. package/tooltip/tooltip.min.js +1 -1
  470. package/tree/tree.cjs.js +377 -148
  471. package/tree/tree.cjs.min.js +1 -1
  472. package/tree/tree.esm.js +378 -149
  473. package/tree/tree.esm.min.js +1 -1
  474. package/tree/tree.js +378 -150
  475. package/tree/tree.min.js +1 -1
  476. package/treeselect/treeselect.cjs.js +24 -17
  477. package/treeselect/treeselect.cjs.min.js +1 -1
  478. package/treeselect/treeselect.d.ts +2 -1
  479. package/treeselect/treeselect.esm.js +24 -17
  480. package/treeselect/treeselect.esm.min.js +1 -1
  481. package/treeselect/treeselect.js +24 -17
  482. package/treeselect/treeselect.min.js +1 -1
  483. package/treetable/treetable.cjs.js +492 -295
  484. package/treetable/treetable.cjs.min.js +1 -1
  485. package/treetable/treetable.d.ts +4 -4
  486. package/treetable/treetable.esm.js +494 -297
  487. package/treetable/treetable.esm.min.js +1 -1
  488. package/treetable/treetable.js +493 -296
  489. package/treetable/treetable.min.js +1 -1
  490. package/tristatecheckbox/tristatecheckbox.cjs.js +11 -5
  491. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  492. package/tristatecheckbox/tristatecheckbox.esm.js +11 -5
  493. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  494. package/tristatecheckbox/tristatecheckbox.js +11 -5
  495. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  496. package/utils/utils.cjs.js +262 -139
  497. package/utils/utils.cjs.min.js +1 -1
  498. package/utils/utils.esm.js +262 -139
  499. package/utils/utils.esm.min.js +1 -1
  500. package/utils/utils.js +262 -139
  501. package/utils/utils.min.js +1 -1
  502. package/virtualscroller/virtualscroller.cjs.js +46 -43
  503. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  504. package/virtualscroller/virtualscroller.esm.js +46 -43
  505. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  506. package/virtualscroller/virtualscroller.js +46 -43
  507. package/virtualscroller/virtualscroller.min.js +1 -1
  508. package/web-types.json +502 -33
package/knob/knob.js CHANGED
@@ -245,7 +245,13 @@ this.primereact.knob = (function (exports, React, api, componentbase, hooks, uti
245
245
  };
246
246
  var updateModel = function updateModel(angle, start) {
247
247
  var mappedValue;
248
- if (angle > maxRadians) mappedValue = mapRange(angle, minRadians, maxRadians, props.min, props.max);else if (angle < start) mappedValue = mapRange(angle + 2 * Math.PI, minRadians, maxRadians, props.min, props.max);else return;
248
+ if (angle > maxRadians) {
249
+ mappedValue = mapRange(angle, minRadians, maxRadians, props.min, props.max);
250
+ } else if (angle < start) {
251
+ mappedValue = mapRange(angle + 2 * Math.PI, minRadians, maxRadians, props.min, props.max);
252
+ } else {
253
+ return;
254
+ }
249
255
  if (props.onChange) {
250
256
  props.onChange({
251
257
  value: Math.round((mappedValue - props.min) / props.step) * props.step + props.min
@@ -254,7 +260,13 @@ this.primereact.knob = (function (exports, React, api, componentbase, hooks, uti
254
260
  };
255
261
  var updateModelValue = function updateModelValue(newValue) {
256
262
  var currentValue;
257
- if (newValue > props.max) currentValue = props.max;else if (newValue < props.min) currentValue = props.min;else currentValue = newValue;
263
+ if (newValue > props.max) {
264
+ currentValue = props.max;
265
+ } else if (newValue < props.min) {
266
+ currentValue = props.min;
267
+ } else {
268
+ currentValue = newValue;
269
+ }
258
270
  if (props.onChange) {
259
271
  props.onChange({
260
272
  value: currentValue
@@ -165,7 +165,6 @@ function _slicedToArray(arr, i) {
165
165
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$1(arr, i) || _nonIterableRest();
166
166
  }
167
167
 
168
- var _defaultProps;
169
168
  var classes = {
170
169
  itemGroup: 'p-listbox-item-group',
171
170
  emptyMessage: 'p-listbox-empty-message',
@@ -209,7 +208,7 @@ var inlineStyles = {
209
208
  }
210
209
  };
211
210
  var ListBoxBase = componentbase.ComponentBase.extend({
212
- defaultProps: (_defaultProps = {
211
+ defaultProps: {
213
212
  __TYPE: 'ListBox',
214
213
  className: null,
215
214
  dataKey: null,
@@ -225,14 +224,33 @@ var ListBoxBase = componentbase.ComponentBase.extend({
225
224
  filterPlaceholder: null,
226
225
  filterTemplate: null,
227
226
  filterValue: null,
228
- selectOnFocus: false,
227
+ focusOnHover: true,
229
228
  id: null,
230
229
  itemTemplate: null,
231
230
  invalid: false,
232
231
  listClassName: null,
233
232
  listStyle: null,
234
- metaKeySelection: false
235
- }, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defaultProps, "selectOnFocus", false), "autoOptionFocus", false), "multiple", false), "onChange", null), "onFilterValueChange", null), "optionDisabled", null), "optionGroupChildren", null), "optionGroupLabel", null), "optionGroupTemplate", null), "optionLabel", null), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defaultProps, "optionValue", null), "options", null), "style", null), "tabIndex", 0), "tooltip", null), "tooltipOptions", null), "value", null), "virtualScrollerOptions", null), "children", undefined)),
233
+ metaKeySelection: false,
234
+ selectOnFocus: false,
235
+ autoOptionFocus: false,
236
+ multiple: false,
237
+ onChange: null,
238
+ onFilterValueChange: null,
239
+ optionDisabled: null,
240
+ optionGroupChildren: null,
241
+ optionGroupLabel: null,
242
+ optionGroupTemplate: null,
243
+ optionLabel: null,
244
+ optionValue: null,
245
+ options: null,
246
+ style: null,
247
+ tabIndex: 0,
248
+ tooltip: null,
249
+ tooltipOptions: null,
250
+ value: null,
251
+ virtualScrollerOptions: null,
252
+ children: undefined
253
+ },
236
254
  css: {
237
255
  classes: classes,
238
256
  styles: styles,
@@ -362,6 +380,12 @@ var ListBoxItem = /*#__PURE__*/React__namespace.memo(function (props) {
362
380
  onFocus: onFocus,
363
381
  onBlur: onBlur,
364
382
  tabIndex: '-1',
383
+ onMouseDown: function onMouseDown(event) {
384
+ return props.onOptionMouseDown(event, props.index);
385
+ },
386
+ onMouseMove: function onMouseMove(event) {
387
+ return props.onOptionMouseMove(event, props.index);
388
+ },
365
389
  'aria-label': props.label,
366
390
  key: props.optionKey,
367
391
  role: 'option',
@@ -393,10 +417,18 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
393
417
  _React$useState4 = _slicedToArray(_React$useState3, 2),
394
418
  startRangeIndex = _React$useState4[0],
395
419
  setStartRangeIndex = _React$useState4[1];
396
- var _React$useState5 = React__namespace.useState(''),
420
+ var _React$useState5 = React__namespace.useState(false),
397
421
  _React$useState6 = _slicedToArray(_React$useState5, 2),
398
- filterValueState = _React$useState6[0],
399
- setFilterValueState = _React$useState6[1];
422
+ focused = _React$useState6[0],
423
+ setFocused = _React$useState6[1];
424
+ var _React$useState7 = React__namespace.useState(''),
425
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
426
+ filterValueState = _React$useState8[0],
427
+ setFilterValueState = _React$useState8[1];
428
+ var _React$useState9 = React__namespace.useState(''),
429
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
430
+ searchValue = _React$useState10[0],
431
+ setSearchValue = _React$useState10[1];
400
432
  var elementRef = React__namespace.useRef(null);
401
433
  var virtualScrollerRef = React__namespace.useRef(null);
402
434
  var id = React__namespace.useRef(null);
@@ -423,6 +455,14 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
423
455
  optionTouched.current = false;
424
456
  index !== -1 && setFocusedOptionIndex(index);
425
457
  };
458
+ var onOptionMouseDown = function onOptionMouseDown(event, index) {
459
+ changeFocusedOptionIndex(event, index);
460
+ };
461
+ var onOptionMouseMove = function onOptionMouseMove(event, index) {
462
+ if (props.focusOnHover && focused) {
463
+ changeFocusedOptionIndex(event, index);
464
+ }
465
+ };
426
466
  var onOptionTouchEnd = function onOptionTouchEnd() {
427
467
  if (props.disabled) {
428
468
  return;
@@ -461,7 +501,11 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
461
501
  if (metaSelection) {
462
502
  var metaKey = event.metaKey || event.ctrlKey;
463
503
  if (selected) {
464
- if (metaKey) value = removeOption(option);else value = [getOptionValue(option)];
504
+ if (metaKey) {
505
+ value = removeOption(option);
506
+ } else {
507
+ value = [getOptionValue(option)];
508
+ }
465
509
  valueChanged = true;
466
510
  } else {
467
511
  value = metaKey ? props.value || [] : [];
@@ -469,7 +513,11 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
469
513
  valueChanged = true;
470
514
  }
471
515
  } else {
472
- if (selected) value = removeOption(option);else value = [].concat(_toConsumableArray(props.value || []), [getOptionValue(option)]);
516
+ if (selected) {
517
+ value = removeOption(option);
518
+ } else {
519
+ value = [].concat(_toConsumableArray(props.value || []), [getOptionValue(option)]);
520
+ }
473
521
  valueChanged = true;
474
522
  }
475
523
  if (valueChanged) {
@@ -477,10 +525,10 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
477
525
  originalEvent: event,
478
526
  value: value,
479
527
  stopPropagation: function stopPropagation() {
480
- event.stopPropagation();
528
+ event === null || event === void 0 || event.stopPropagation();
481
529
  },
482
530
  preventDefault: function preventDefault() {
483
- event.preventDefault();
531
+ event === null || event === void 0 || event.preventDefault();
484
532
  },
485
533
  target: {
486
534
  name: props.name,
@@ -507,6 +555,43 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
507
555
  return isValidOption(option);
508
556
  });
509
557
  };
558
+ var findLastSelectedOptionIndex = function findLastSelectedOptionIndex() {
559
+ return hasSelectedOption() ? utils.ObjectUtils.findLastIndex(visibleOptions, function (option) {
560
+ return isValidSelectedOption(option);
561
+ }) : -1;
562
+ };
563
+ var findSelectedOptionIndex = function findSelectedOptionIndex() {
564
+ if (hasSelectedOption()) {
565
+ if (props.multiple) {
566
+ var _loop = function _loop() {
567
+ var value = props.value[index];
568
+ var matchedOptionIndex = visibleOptions.findIndex(function (option) {
569
+ return isValidSelectedOption(option) && isEquals(value, getOptionValue(option));
570
+ });
571
+ if (matchedOptionIndex > -1) {
572
+ return {
573
+ v: matchedOptionIndex
574
+ };
575
+ }
576
+ },
577
+ _ret;
578
+ for (var index = props.value.length - 1; index >= 0; index--) {
579
+ _ret = _loop();
580
+ if (_ret) return _ret.v;
581
+ }
582
+ } else {
583
+ return visibleOptions.findIndex(function (option) {
584
+ return isValidSelectedOption(option);
585
+ });
586
+ }
587
+ }
588
+ return -1;
589
+ };
590
+ var findFirstSelectedOptionIndex = function findFirstSelectedOptionIndex() {
591
+ return hasSelectedOption() ? visibleOptions.findIndex(function (option) {
592
+ return isValidSelectedOption(option);
593
+ }) : -1;
594
+ };
510
595
  var findLastOptionIndex = function findLastOptionIndex() {
511
596
  return utils.ObjectUtils.findLastIndex(visibleOptions, function (option) {
512
597
  return isValidOption(option);
@@ -530,7 +615,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
530
615
  var findNearestSelectedOptionIndex = function findNearestSelectedOptionIndex(index) {
531
616
  var firstCheckUp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
532
617
  var matchedOptionIndex = -1;
533
- if (hasSelectedOption) {
618
+ if (hasSelectedOption()) {
534
619
  if (firstCheckUp) {
535
620
  matchedOptionIndex = findPrevSelectedOptionIndex(index);
536
621
  matchedOptionIndex = matchedOptionIndex === -1 ? findNextSelectedOptionIndex(index) : matchedOptionIndex;
@@ -546,7 +631,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
546
631
  return isValidOption(option) && ((_getOptionLabel = getOptionLabel(option)) === null || _getOptionLabel === void 0 ? void 0 : _getOptionLabel.toLocaleLowerCase(props.filterLocale).startsWith(searchValue.toLocaleLowerCase(props.filterLocale)));
547
632
  };
548
633
  var searchOptions = function searchOptions(event, _char) {
549
- searchValue = (searchValue || '') + _char;
634
+ setSearchValue((searchValue || '') + _char);
550
635
  var optionIndex = -1;
551
636
  if (utils.ObjectUtils.isNotEmpty(searchValue)) {
552
637
  if (focusedOptionIndex !== -1) {
@@ -572,18 +657,18 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
572
657
  clearTimeout(searchTimeout.current);
573
658
  }
574
659
  searchTimeout.current = setTimeout(function () {
575
- searchValue = '';
660
+ setSearchValue('');
576
661
  searchTimeout.current = null;
577
662
  }, 500);
578
663
  };
579
664
  var findNextSelectedOptionIndex = function findNextSelectedOptionIndex(index) {
580
- var matchedOptionIndex = hasSelectedOption && index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
665
+ var matchedOptionIndex = hasSelectedOption() && index < visibleOptions.length - 1 ? visibleOptions.slice(index + 1).findIndex(function (option) {
581
666
  return isValidSelectedOption(option);
582
667
  }) : -1;
583
668
  return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : -1;
584
669
  };
585
670
  var findPrevSelectedOptionIndex = function findPrevSelectedOptionIndex(index) {
586
- var matchedOptionIndex = hasSelectedOption && index > 0 ? utils.ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
671
+ var matchedOptionIndex = hasSelectedOption() && index > 0 ? utils.ObjectUtils.findLastIndex(visibleOptions.slice(0, index), function (option) {
587
672
  return isValidSelectedOption(option);
588
673
  }) : -1;
589
674
  return matchedOptionIndex > -1 ? matchedOptionIndex : -1;
@@ -608,6 +693,10 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
608
693
  var selectedIndex = findFirstSelectedOptionIndex();
609
694
  return selectedIndex < 0 ? findFirstOptionIndex() : selectedIndex;
610
695
  };
696
+ var findLastFocusedOptionIndex = function findLastFocusedOptionIndex() {
697
+ var selectedIndex = findLastSelectedOptionIndex();
698
+ return selectedIndex < 0 ? findLastOptionIndex() : selectedIndex;
699
+ };
611
700
  var changeFocusedOptionIndex = function changeFocusedOptionIndex(event, index) {
612
701
  if (focusedOptionIndex !== index) {
613
702
  setFocusedOptionIndex(index);
@@ -635,7 +724,11 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
635
724
  };
636
725
  var onEnterKey = function onEnterKey(event) {
637
726
  if (focusedOptionIndex !== -1) {
638
- if (props.multiple && event.shiftKey) onOptionSelectRange(event, focusedOptionIndex);else onOptionSelect(event, visibleOptions[focusedOptionIndex]);
727
+ if (props.multiple && event.shiftKey) {
728
+ onOptionSelectRange(event, focusedOptionIndex);
729
+ } else {
730
+ onOptionSelect(event, visibleOptions[focusedOptionIndex]);
731
+ }
639
732
  }
640
733
  event.preventDefault();
641
734
  };
@@ -685,7 +778,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
685
778
  scrollInView(visibleOptions.length - 1);
686
779
  event.preventDefault();
687
780
  };
688
- var onKeyDown = function onKeyDown(event) {
781
+ var onListKeyDown = function onListKeyDown(event) {
689
782
  var metaKey = event.metaKey || event.ctrlKey;
690
783
  switch (event.code) {
691
784
  case 'ArrowDown':
@@ -749,7 +842,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
749
842
  behavior: 'smooth'
750
843
  });
751
844
  } else if (props.virtualScrollerOptions) {
752
- virtualScrollerRef.current && virtualScrollerRef.current.scrollToIndex(index !== -1 ? index : props.focusedOptionIndex);
845
+ virtualScrollerRef.current && virtualScrollerRef.current.scrollToIndex(index !== -1 ? index : focusedOptionIndex);
753
846
  }
754
847
  }, 0);
755
848
  };
@@ -772,16 +865,24 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
772
865
  filter: ''
773
866
  });
774
867
  };
868
+ var autoUpdateModel = function autoUpdateModel() {
869
+ var isFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : focused;
870
+ if (props.selectOnFocus && props.autoOptionFocus && !hasSelectedOption() && !props.multiple && isFocus) {
871
+ var currentFocusOptionIndex = findFirstFocusedOptionIndex();
872
+ onOptionSelect(null, visibleOptions[currentFocusOptionIndex]);
873
+ setFocusedOptionIndex(currentFocusOptionIndex);
874
+ }
875
+ };
775
876
  var updateModel = function updateModel(event, value) {
776
877
  if (props.onChange) {
777
878
  props.onChange({
778
879
  originalEvent: event,
779
880
  value: value,
780
881
  stopPropagation: function stopPropagation() {
781
- event.stopPropagation();
882
+ event === null || event === void 0 || event.stopPropagation();
782
883
  },
783
884
  preventDefault: function preventDefault() {
784
- event.preventDefault();
885
+ event === null || event === void 0 || event.preventDefault();
785
886
  },
786
887
  target: {
787
888
  name: props.name,
@@ -823,18 +924,23 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
823
924
  return utils.ObjectUtils.equals(value, getOptionValue(item), key);
824
925
  });
825
926
  };
927
+ var isEquals = function isEquals(value1, value2) {
928
+ return utils.ObjectUtils.equals(value1, value2, equalityKey());
929
+ };
826
930
  var isSelected = function isSelected(option) {
827
931
  var optionValue = getOptionValue(option);
828
- var key = equalityKey();
829
- return props.multiple && props.value ? props.value.some(function (val) {
830
- return utils.ObjectUtils.equals(val, optionValue, key);
831
- }) : utils.ObjectUtils.equals(props.value, optionValue, key);
932
+ if (props.multiple) {
933
+ return (props.value || []).some(function (value) {
934
+ return isEquals(value, optionValue);
935
+ });
936
+ }
937
+ return isEquals(props.value, optionValue);
832
938
  };
833
939
  var getOptionLabel = function getOptionLabel(option) {
834
- return props.optionLabel ? utils.ObjectUtils.resolveFieldData(option, props.optionLabel) : option && option['label'] !== undefined ? option['label'] : option;
940
+ return props.optionLabel ? utils.ObjectUtils.resolveFieldData(option, props.optionLabel) : option && option.label !== undefined ? option.label : option;
835
941
  };
836
942
  var getOptionValue = function getOptionValue(option) {
837
- return props.optionValue ? utils.ObjectUtils.resolveFieldData(option, props.optionValue) : option && option['value'] !== undefined ? option['value'] : option;
943
+ return props.optionValue ? utils.ObjectUtils.resolveFieldData(option, props.optionValue) : option && option.value !== undefined ? option.value : option;
838
944
  };
839
945
  var getOptionRenderKey = function getOptionRenderKey(option) {
840
946
  return props.dataKey ? utils.ObjectUtils.resolveFieldData(option, props.dataKey) : getOptionLabel(option);
@@ -843,7 +949,7 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
843
949
  if (props.optionDisabled) {
844
950
  return utils.ObjectUtils.isFunction(props.optionDisabled) ? props.optionDisabled(option) : utils.ObjectUtils.resolveFieldData(option, props.optionDisabled);
845
951
  }
846
- return option && option['disabled'] !== undefined ? option['disabled'] : false;
952
+ return option && option.disabled !== undefined ? option.disabled : false;
847
953
  };
848
954
  var onFirstHiddenFocus = function onFirstHiddenFocus() {
849
955
  utils.DomHandler.focus(listRef.current);
@@ -863,6 +969,17 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
863
969
  }
864
970
  lastHiddenFocusableElement.current.tabIndex = -1;
865
971
  };
972
+ var onListFocus = function onListFocus() {
973
+ setFocused(true);
974
+ setFocusedOptionIndex(focusedOptionIndex !== -1 ? focusedOptionIndex : props.autoOptionFocus ? findFirstFocusedOptionIndex() : findSelectedOptionIndex());
975
+ autoUpdateModel(true);
976
+ };
977
+ var onListBlur = function onListBlur(event) {
978
+ setFocused(false);
979
+ setFocusedOptionIndex(-1);
980
+ setStartRangeIndex(-1);
981
+ setSearchValue('');
982
+ };
866
983
  var getOptionGroupRenderKey = function getOptionGroupRenderKey(optionGroup) {
867
984
  return utils.ObjectUtils.resolveFieldData(optionGroup, props.optionGroupLabel);
868
985
  };
@@ -896,12 +1013,10 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
896
1013
  _iterator.f();
897
1014
  }
898
1015
  return filteredGroups;
899
- } else {
900
- return api.FilterService.filter(props.options, searchFields, filterValue, props.filterMatchMode, props.filterLocale);
901
1016
  }
902
- } else {
903
- return props.options;
1017
+ return api.FilterService.filter(props.options, searchFields, filterValue, props.filterMatchMode, props.filterLocale);
904
1018
  }
1019
+ return props.options;
905
1020
  };
906
1021
  var scrollToSelectedIndex = function scrollToSelectedIndex() {
907
1022
  if (virtualScrollerRef.current) {
@@ -962,6 +1077,8 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
962
1077
  style: style,
963
1078
  template: props.itemTemplate,
964
1079
  selected: isSelected(option),
1080
+ onOptionMouseDown: onOptionMouseDown,
1081
+ onOptionMouseMove: onOptionMouseMove,
965
1082
  onClick: onOptionSelect,
966
1083
  index: j,
967
1084
  focusedOptionIndex: focusedOptionIndex,
@@ -991,29 +1108,30 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
991
1108
  return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, {
992
1109
  key: key
993
1110
  }, /*#__PURE__*/React__namespace.createElement("li", itemGroupProps, groupContent), groupChildrenContent);
994
- } else {
995
- var optionLabel = getOptionLabel(option);
996
- var optionKey = index + '_' + getOptionRenderKey(option);
997
- var disabled = isOptionDisabled(option);
998
- return /*#__PURE__*/React__namespace.createElement(ListBoxItem, {
999
- id: id.current + '_' + index,
1000
- hostName: "ListBox",
1001
- optionKey: optionKey,
1002
- key: optionKey,
1003
- label: optionLabel,
1004
- index: index,
1005
- focusedOptionIndex: focusedOptionIndex,
1006
- option: option,
1007
- style: style,
1008
- template: props.itemTemplate,
1009
- selected: isSelected(option),
1010
- onClick: onOptionSelect,
1011
- onTouchEnd: onOptionTouchEnd,
1012
- disabled: disabled,
1013
- ptCallbacks: ptCallbacks,
1014
- metaData: metaData
1015
- });
1016
1111
  }
1112
+ var optionLabel = getOptionLabel(option);
1113
+ var optionKey = index + '_' + getOptionRenderKey(option);
1114
+ var disabled = isOptionDisabled(option);
1115
+ return /*#__PURE__*/React__namespace.createElement(ListBoxItem, {
1116
+ id: id.current + '_' + index,
1117
+ hostName: "ListBox",
1118
+ optionKey: optionKey,
1119
+ key: optionKey,
1120
+ label: optionLabel,
1121
+ index: index,
1122
+ onOptionMouseDown: onOptionMouseDown,
1123
+ onOptionMouseMove: onOptionMouseMove,
1124
+ focusedOptionIndex: focusedOptionIndex,
1125
+ option: option,
1126
+ style: style,
1127
+ template: props.itemTemplate,
1128
+ selected: isSelected(option),
1129
+ onClick: onOptionSelect,
1130
+ onTouchEnd: onOptionTouchEnd,
1131
+ disabled: disabled,
1132
+ ptCallbacks: ptCallbacks,
1133
+ metaData: metaData
1134
+ });
1017
1135
  };
1018
1136
  var createItems = function createItems() {
1019
1137
  if (utils.ObjectUtils.isNotEmpty(visibleOptions)) {
@@ -1053,7 +1171,10 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
1053
1171
  }),
1054
1172
  role: 'listbox',
1055
1173
  tabIndex: '-1',
1056
- 'aria-multiselectable': props.multiple
1174
+ 'aria-multiselectable': props.multiple,
1175
+ onFocus: onListFocus,
1176
+ onBlur: onListBlur,
1177
+ onKeyDown: onListKeyDown
1057
1178
  }, ariaProps), ptCallbacks.ptm('list'));
1058
1179
  return /*#__PURE__*/React__namespace.createElement("ul", listProps, options.children);
1059
1180
  }
@@ -1063,18 +1184,19 @@ var ListBox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace.
1063
1184
  }, virtualScrollerProps, {
1064
1185
  pt: ptCallbacks.ptm('virtualScroller')
1065
1186
  }));
1066
- } else {
1067
- var items = createItems();
1068
- var listProps = mergeProps(_objectSpread({
1069
- ref: listRef,
1070
- className: ptCallbacks.cx('list'),
1071
- role: 'listbox',
1072
- 'aria-multiselectable': props.multiple,
1073
- tabIndex: '-1',
1074
- onKeyDown: onKeyDown
1075
- }, ariaProps), ptCallbacks.ptm('list'));
1076
- return /*#__PURE__*/React__namespace.createElement("ul", listProps, items);
1077
1187
  }
1188
+ var items = createItems();
1189
+ var listProps = mergeProps(_objectSpread({
1190
+ ref: listRef,
1191
+ className: ptCallbacks.cx('list'),
1192
+ role: 'listbox',
1193
+ 'aria-multiselectable': props.multiple,
1194
+ tabIndex: '-1',
1195
+ onFocus: onListFocus,
1196
+ onBlur: onListBlur,
1197
+ onKeyDown: onListKeyDown
1198
+ }, ariaProps), ptCallbacks.ptm('list'));
1199
+ return /*#__PURE__*/React__namespace.createElement("ul", listProps, items);
1078
1200
  };
1079
1201
  var visibleOptions = getVisibleOptions();
1080
1202
  var hasTooltip = utils.ObjectUtils.isNotEmpty(props.tooltip);
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/hooks"),l=require("primereact/tooltip"),i=require("primereact/utils"),o=require("primereact/virtualscroller"),a=require("primereact/icons/search"),u=require("primereact/inputtext"),c=require("primereact/ripple");function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var p,f=s(e);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},d.apply(this,arguments)}function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function b(e,t){if("object"!==m(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==m(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function v(e){var t=b(e,"string");return"symbol"===m(t)?t:String(t)}function y(e,t,n){return(t=v(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function g(e){if(Array.isArray(e))return h(e)}function O(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function x(e,t){if(e){if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?h(e,t):void 0}}function j(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function I(e){return g(e)||O(e)||x(e)||j()}function E(e){throw new TypeError('"'+e+'" is read-only')}function S(e){if(Array.isArray(e))return e}function D(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,i,o,a=[],u=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=i.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){c=!0,l=e}finally{try{if(!u&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(c)throw l}}return a}}function w(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){return S(e)||D(e,t)||x(e,t)||w()}var F={itemGroup:"p-listbox-item-group",emptyMessage:"p-listbox-empty-message",list:"p-listbox-list",wrapper:function(e){return i.classNames("p-listbox-list-wrapper",e.props.listClassName)},root:function(e){var t=e.props;return i.classNames("p-listbox p-component",{"p-disabled":t.disabled,"p-invalid":t.invalid},t.className)},item:function(e){var t=e.props;return i.classNames("p-listbox-item",{"p-highlight":t.selected,"p-focus":t.focusedOptionIndex===t.index,"p-disabled":t.disabled},t.option.className)},filterContainer:"p-listbox-filter-container",filterIcon:"p-listbox-filter-icon",filterInput:"p-listbox-filter",header:"p-listbox-header"},L={itemGroup:function(e){var t=e.scrollerOptions;return{height:t.props?t.props.itemSize:void 0}},list:function(e){return e.props.virtualScrollerOptions?e.options.style:void 0}},N=n.ComponentBase.extend({defaultProps:(p={__TYPE:"ListBox",className:null,dataKey:null,disabled:null,emptyFilterMessage:null,emptyMessage:null,filter:!1,filterIcon:null,filterBy:null,filterInputProps:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,filterValue:null,selectOnFocus:!1,id:null,itemTemplate:null,invalid:!1,listClassName:null,listStyle:null,metaKeySelection:!1},y(y(y(y(y(y(y(y(y(y(p,"selectOnFocus",!1),"autoOptionFocus",!1),"multiple",!1),"onChange",null),"onFilterValueChange",null),"optionDisabled",null),"optionGroupChildren",null),"optionGroupLabel",null),"optionGroupTemplate",null),"optionLabel",null),y(y(y(y(y(y(y(y(y(p,"optionValue",null),"options",null),"style",null),"tabIndex",0),"tooltip",null),"tooltipOptions",null),"value",null),"virtualScrollerOptions",null),"children",void 0)),css:{classes:F,styles:"\n@layer primereact {\n .p-listbox-list-wrapper {\n overflow: auto;\n }\n \n .p-listbox-list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n }\n \n .p-listbox-item {\n cursor: pointer;\n position: relative;\n overflow: hidden;\n outline: none;\n }\n \n .p-listbox-filter-container {\n position: relative;\n }\n \n .p-listbox-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-listbox-filter {\n width: 100%;\n }\n}\n",inlineStyles:L}});function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function T(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var U=f.memo((function(e){var t=r.useMergeProps(),n=e.ptCallbacks,l=n.ptm,o=n.cx,c=function(t,n){return l(t,T({hostName:e.hostName},n))},s={filter:function(e){return p(e)},reset:function(){return e.resetFilter()}},p=function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},m=function(){var n=t({className:o("filterIcon")},c("filterIcon")),r=i.IconUtils.getJSXIcon(e.filterIcon||f.createElement(a.SearchIcon,n),T({},n),{props:e}),m=t({className:o("header")},c("header")),b=t({className:o("filterContainer")},c("filterContainer")),v=f.createElement("div",b,f.createElement(u.InputText,d({type:"text",value:e.filter,onChange:p,className:o("filterInput"),disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps,{pt:l("filterInput"),unstyled:e.unstyled,__parentMetadata:{parent:e.metaData}})),r);e.filterTemplate&&(v=i.ObjectUtils.getJSXElement(e.filterTemplate,{className:"p-listbox-filter-container",element:v,filterOptions:s,filterInputChange:p,filterIconClassName:"p-dropdown-filter-icon",props:e}));return f.createElement("div",m,v)}();return f.createElement(f.Fragment,null,m)}));U.displayName="ListBoxHeader";var k=f.memo((function(e){var t=P(f.useState(!1),2),n=t[0],l=t[1],o=r.useMergeProps(),a=e.ptCallbacks,u=a.ptm,s=a.cx,p=e.template?i.ObjectUtils.getJSXElement(e.template,e.option):e.label,d=o({id:e.id,className:s("item",{props:e}),style:e.style,onClick:function(t){return e.onClick(t,e.option,e.index)},onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onFocus:function(e){l(!0)},onBlur:function(e){l(!1)},tabIndex:"-1","aria-label":e.label,key:e.optionKey,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled,"data-p-disabled":e.disabled},u("item",{hostName:e.hostName,context:{selected:e.selected,disabled:e.disabled,focused:n,focusedOptionIndex:e.focusedOptionIndex}}));return f.createElement("li",d,p,f.createElement(c.Ripple,null))}));function K(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?K(Object(n),!0).forEach((function(t){y(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):K(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function A(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=V(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(a)throw i}}}}function V(e,t){if(e){if("string"==typeof e)return G(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?G(e,t):void 0}}function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}k.displayName="ListBoxItem";var q=f.memo(f.forwardRef((function(e,a){var u=r.useMergeProps(),c=f.useContext(t.PrimeReactContext),s=N.getProps(e,c),p=P(f.useState(null),2),m=p[0],b=p[1],v=f.useRef(null),y=f.useRef(null),h=f.useRef(null),g=P(f.useState(-1),2),O=g[0],x=g[1],j=P(f.useState(""),2),S=j[0],D=j[1],w=f.useRef(null),F=f.useRef(null),L=f.useRef(null),C=f.useRef(null),T=f.useRef(!1),K=(s.onFilterValueChange?s.filterValue:S)||"",V=K&&K.trim().length>0,G={props:s,state:{filterValue:K}},q=N.setMetaData(G);n.useHandleStyle(N.css.styles,q.isUnstyled,{name:"listbox"});var R=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-1;s.disabled||De(t)||(s.multiple?H(e.originalEvent,t):B(e.originalEvent,t),T.current=!1,-1!==n&&b(n))},_=function(){s.disabled||(T.current=!0)},B=function(e,t){var n=je(t),r=!1,l=null;!T.current&&s.metaKeySelection?n?(e.metaKey||e.ctrlKey)&&(l=null,r=!0):(l=Ee(t),r=!0):(l=n?null:Ee(t),r=!0);r&&ye(e,l)},H=function(e,t){var n=je(t),r=!1,l=null;if(!T&&s.metaKeySelection){var i=e.metaKey||e.ctrlKey;n?(l=i?he(t):[Ee(t)],r=!0):(l=[].concat(I(l=i&&s.value||[]),[Ee(t)]),r=!0)}else l=n?he(t):[].concat(I(s.value||[]),[Ee(t)]),r=!0;r&&s.onChange({originalEvent:e,value:l,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:s.name,id:s.id,value:l}})},z=function(){return i.ObjectUtils.isNotEmpty(s.value)},J=function(e){return s.optionGroupLabel&&e.optionGroup&&e.group},X=function(e){return i.ObjectUtils.isNotEmpty(e)&&!(De(e)||J(e))},$=function(e){return X(e)&&je(e)},W=function(){return Te.findIndex((function(e){return X(e)}))},Y=function(e){var t=-1;return z&&(t=arguments.length>1&&void 0!==arguments[1]&&arguments[1]?-1===(t=te(e))?ee(e):t:-1===(t=ee(e))?te(e):t),t>-1?t:e},Q=function(e){var t;return X(e)&&(null===(t=Ie(e))||void 0===t?void 0:t.toLocaleLowerCase(s.filterLocale).startsWith(searchValue.toLocaleLowerCase(s.filterLocale)))},Z=function(e,t){searchValue=(searchValue||"")+t;var n=-1;i.ObjectUtils.isNotEmpty(searchValue)&&(-1===(n=-1!==m?-1===(n=Te.slice(m).findIndex((function(e){return Q(e)})))?Te.slice(0,m).findIndex((function(e){return Q(e)})):n+m:Te.findIndex((function(e){return Q(e)})))&&-1===m&&(n=re()),-1!==n&&le(e,n)),v.current&&clearTimeout(v.current),v.current=setTimeout((function(){searchValue="",v.current=null}),500)},ee=function(e){var t=z&&e<Te.length-1?Te.slice(e+1).findIndex((function(e){return $(e)})):-1;return t>-1?t+e+1:-1},te=function(e){var t=z&&e>0?i.ObjectUtils.findLastIndex(Te.slice(0,e),(function(e){return $(e)})):-1;return t>-1?t:-1},ne=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-1;if(-1===t&&(t=Y(n,!0)),-1===n&&(n=Y(t)),-1!==t&&-1!==n){var r=Math.min(t,n),l=Math.max(t,n),i=Te.slice(r,l+1).filter((function(e){return X(e)})).map((function(e){return Ee(e)}));ye(e,i)}},re=function(){var e=findFirstSelectedOptionIndex();return e<0?W():e},le=function(e,t){m!==t&&(b(t),me(),e&&s.selectOnFocus&&!s.multiple&&R(e,Te[t]))},ie=function(e){var t,n,r=-1!==m?(n=(t=m)<Te.length-1?Te.slice(t+1).findIndex((function(e){return X(e)})):-1)>-1?n+t+1:t:re();s.multiple&&e.shiftKey&&ne(e,O,r),le(e,r),e.preventDefault()},oe=function(e){var t,n,r=-1!==m?(n=(t=m)>0?i.ObjectUtils.findLastIndex(Te.slice(0,t),(function(e){return X(e)})):-1)>-1?n:t:findLastFocusedOptionIndex();s.multiple&&e.shiftKey&&ne(e,r,O),le(e,r),e.preventDefault()},ae=function(e){-1!==m&&(s.multiple&&e.shiftKey?ne(e,m):R(e,Te[m])),e.preventDefault()},ue=function(e){ae(e)},ce=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1])e.currentTarget.setSelectionRange(0,0),b(-1);else{var t=e.metaKey||e.ctrlKey,n=W();s.multiple&&e.shiftKey&&t&&ne(e,n,O),le(e,n)}e.preventDefault()},se=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1]){var t=e.currentTarget,n=t.value.length;t.setSelectionRange(n,n),E("focusedOptionIndex")}else{var r=e.metaKey||e.ctrlKey,l=i.ObjectUtils.findLastIndex(Te,(function(e){return X(e)}));s.multiple&&e.shiftKey&&r&&ne(e,O,l),le(e,l)}e.preventDefault()},pe=function(e){me(0),e.preventDefault()},fe=function(e){me(Te.length-1),e.preventDefault()},de=function(e){var t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":ie(e);break;case"ArrowUp":oe(e);break;case"Home":ce(e);break;case"End":se(e);break;case"PageDown":fe(e);break;case"PageUp":pe(e);break;case"Enter":case"NumpadEnter":case"Space":ue(e),e.preventDefault();break;case"Tab":break;case"ShiftLeft":case"ShiftRight":x(m);break;default:if(s.multiple&&"KeyA"===e.code&&t){var n=Te.filter((function(e){return X(e)})).map((function(e){return Ee(e)}));ye(e,n),e.preventDefault();break}!t&&i.ObjectUtils.isPrintableCharacter(e.key)&&(Z(e,e.key),e.preventDefault())}},me=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;setTimeout((function(){var t=-1!==e?"".concat(L.current,"_").concat(e):-1!==m?"".concat(L.current,"_").concat(m):null,n=C.current.querySelector('li[id="'.concat(t,'"]'));n?n.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"}):s.virtualScrollerOptions&&F.current&&F.current.scrollToIndex(-1!==e?e:s.focusedOptionIndex)}),0)},be=function(e){F.current&&F.current.scrollToIndex(0);var t=e.value;s.onFilterValueChange?s.onFilterValueChange({originalEvent:e.originalEvent,value:t}):D(t)},ve=function(){D(""),s.onFilter&&s.onFilter({filter:""})},ye=function(e,t){s.onChange&&s.onChange({originalEvent:e,value:t,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:s.name,id:s.id,value:t}})},he=function(e){return s.value.filter((function(t){return!i.ObjectUtils.equals(t,Ee(e),s.dataKey)}))},ge=function(){if(null!=s.value&&Te){if(!s.optionGroupLabel)return xe(s.value,Te);for(var e=0;e<Te.length;e++){var t=xe(s.value,Pe(Te[e]));if(-1!==t)return{group:e,option:t}}}return-1},Oe=function(){return s.optionValue?null:s.dataKey},xe=function(e,t){var n=Oe();return t.findIndex((function(t){return i.ObjectUtils.equals(e,Ee(t),n)}))},je=function(e){var t=Ee(e),n=Oe();return s.multiple&&s.value?s.value.some((function(e){return i.ObjectUtils.equals(e,t,n)})):i.ObjectUtils.equals(s.value,t,n)},Ie=function(e){return s.optionLabel?i.ObjectUtils.resolveFieldData(e,s.optionLabel):e&&void 0!==e.label?e.label:e},Ee=function(e){return s.optionValue?i.ObjectUtils.resolveFieldData(e,s.optionValue):e&&void 0!==e.value?e.value:e},Se=function(e){return s.dataKey?i.ObjectUtils.resolveFieldData(e,s.dataKey):Ie(e)},De=function(e){return s.optionDisabled?i.ObjectUtils.isFunction(s.optionDisabled)?s.optionDisabled(e):i.ObjectUtils.resolveFieldData(e,s.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},we=function(e){return i.ObjectUtils.resolveFieldData(e,s.optionGroupLabel)},Pe=function(e){return i.ObjectUtils.resolveFieldData(e,s.optionGroupChildren)},Fe=function(){if(F.current){var e=ge();-1!==e&&setTimeout((function(){return F.current.scrollToIndex(e)}),0)}};f.useImperativeHandle(a,(function(){return{props:s,focus:function(){return i.DomHandler.focusFirstElement(w.current)},getElement:function(){return w.current},getVirtualScroller:function(){return F.current}}})),r.useMountEffect((function(){Fe(),L.current=i.UniqueComponentId()}));var Le=function(e,t){return Pe(e).map((function(e,n){var r=Ie(e),l=n+"_"+Se(e),i=De(e);return f.createElement(k,{id:L.current+"_"+n,hostName:"ListBox",optionKey:l,key:l,label:r,option:e,style:t,template:s.itemTemplate,selected:je(e),onClick:R,index:n,focusedOptionIndex:m,onTouchEnd:_,disabled:i,ptCallbacks:q,metaData:G})}))},Ne=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r={height:n.props?n.props.itemSize:void 0};if(s.optionGroupLabel){var l=s.optionGroupTemplate?i.ObjectUtils.getJSXElement(s.optionGroupTemplate,e,t):i.ObjectUtils.resolveFieldData(e,s.optionGroupLabel),o=Le(e,r),a=t+"_"+we(e),c=u({className:q.cx("itemGroup"),style:q.sx("itemGroup",{scrollerOptions:n}),role:"group"},q.ptm("itemGroup"));return f.createElement(f.Fragment,{key:a},f.createElement("li",c,l),o)}var p=Ie(e),d=t+"_"+Se(e),b=De(e);return f.createElement(k,{id:L.current+"_"+t,hostName:"ListBox",optionKey:d,key:d,label:p,index:t,focusedOptionIndex:m,option:e,style:r,template:s.itemTemplate,selected:je(e),onClick:R,onTouchEnd:_,disabled:b,ptCallbacks:q,metaData:G})},Ce=function(e,n){var r=u({className:q.cx("emptyMessage")},q.ptm("emptyMessage")),l=i.ObjectUtils.getJSXElement(e,s)||t.localeOption(n?"emptyFilterMessage":"emptyMessage");return f.createElement("li",r,l)},Te=function(){if(V){var e=K.trim().toLocaleLowerCase(s.filterLocale),n=s.filterBy?s.filterBy.split(","):[s.optionLabel||"label"];if(s.optionGroupLabel){var r,l=[],i=A(s.options);try{for(i.s();!(r=i.n()).done;){var o=r.value,a=t.FilterService.filter(Pe(o),n,e,s.filterMatchMode,s.filterLocale);a&&a.length&&l.push(M(M({},o),{items:a}))}}catch(e){i.e(e)}finally{i.f()}return l}return t.FilterService.filter(s.options,n,e,s.filterMatchMode,s.filterLocale)}return s.options}(),Ue=i.ObjectUtils.isNotEmpty(s.tooltip),ke=N.getOtherProps(s),Ke=i.ObjectUtils.reduceKeys(ke,i.DomHandler.ARIA_PROPS),Me=function(){if(s.virtualScrollerOptions){var e=M(M({},s.virtualScrollerOptions),{items:Te,onLazyLoad:function(e){return s.virtualScrollerOptions.onLazyLoad(M(M({},e),{filter:Te}))},itemTemplate:function(e,t){return e&&Ne(e,t.index,t)},contentTemplate:function(e){var t=u(M({ref:C,style:q.sx("list",{options:e}),className:q.cx("list",{options:e}),role:"listbox",tabIndex:"-1","aria-multiselectable":s.multiple},Ke),q.ptm("list"));return f.createElement("ul",t,e.children)}});return f.createElement(o.VirtualScroller,d({ref:F},e,{pt:q.ptm("virtualScroller")}))}var t=i.ObjectUtils.isNotEmpty(Te)?Te.map(Ne):V?Ce(s.emptyFilterMessage,!0):Ce(s.emptyMessage),n=u(M({ref:C,className:q.cx("list"),role:"listbox","aria-multiselectable":s.multiple,tabIndex:"-1",onKeyDown:de},Ke),q.ptm("list"));return f.createElement("ul",n,t)}(),Ae=s.filter?f.createElement(U,{hostName:"ListBox",filter:K,filterIcon:s.filterIcon,onFilter:be,resetFilter:ve,filterTemplate:s.filterTemplate,disabled:s.disabled,filterPlaceholder:s.filterPlaceholder,filterInputProps:s.filterInputProps,ptCallbacks:q,metaData:G}):null,Ve=u({className:q.cx("wrapper"),style:s.listStyle},q.ptm("wrapper")),Ge=u({ref:w,id:s.id,className:q.cx("root"),style:s.style},N.getOtherProps(s),q.ptm("root")),qe=u({ref:y,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:s.disabled?-1:s.tabIndex,onFocus:function(){i.DomHandler.focus(C.current);var e=i.DomHandler.getFirstFocusableElement(w.current,':not([data-p-hidden-focusable="true"])');h.current.tabIndex=i.DomHandler.isElement(e)?void 0:-1,y.current.tabIndex=-1,le(null,0)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},q.ptm("hiddenFirstFocusableEl")),Re=u({ref:h,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:s.disabled?-1:s.tabIndex,onFocus:function(e){if(e.relatedTarget===C.current){var t=i.DomHandler.getFirstFocusableElement(w.current,':not([data-p-hidden-focusable="true"])');i.DomHandler.focus(t),y.current.tabIndex=void 0}else i.DomHandler.focus(y.current);h.current.tabIndex=-1},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},q.ptm("hiddenLastFocusableEl"));return f.createElement(f.Fragment,null,f.createElement("div",Ge,f.createElement("span",qe),Ae,f.createElement("div",Ve,Me),f.createElement("span",Re)),Ue&&f.createElement(l.Tooltip,d({target:w,content:s.tooltip,pt:q.ptm("tooltip")},s.tooltipOptions)))})));q.displayName="ListBox",exports.ListBox=q;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/componentbase"),r=require("primereact/hooks"),o=require("primereact/tooltip"),i=require("primereact/utils"),l=require("primereact/virtualscroller"),a=require("primereact/icons/search"),u=require("primereact/inputtext"),c=require("primereact/ripple");function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var p=s(e);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function m(e,t){if("object"!==d(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==d(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function b(e){var t=m(e,"string");return"symbol"===d(t)?t:String(t)}function v(e,t,n){return(t=b(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function h(e){if(Array.isArray(e))return y(e)}function g(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function O(e,t){if(e){if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?y(e,t):void 0}}function x(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function j(e){return h(e)||g(e)||O(e)||x()}function I(e){throw new TypeError('"'+e+'" is read-only')}function E(e){if(Array.isArray(e))return e}function S(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,l,a=[],u=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=i.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){c=!0,o=e}finally{try{if(!u&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(c)throw o}}return a}}function D(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function w(e,t){return E(e)||S(e,t)||O(e,t)||D()}var P=n.ComponentBase.extend({defaultProps:{__TYPE:"ListBox",className:null,dataKey:null,disabled:null,emptyFilterMessage:null,emptyMessage:null,filter:!1,filterIcon:null,filterBy:null,filterInputProps:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,filterValue:null,focusOnHover:!0,id:null,itemTemplate:null,invalid:!1,listClassName:null,listStyle:null,metaKeySelection:!1,selectOnFocus:!1,autoOptionFocus:!1,multiple:!1,onChange:null,onFilterValueChange:null,optionDisabled:null,optionGroupChildren:null,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,style:null,tabIndex:0,tooltip:null,tooltipOptions:null,value:null,virtualScrollerOptions:null,children:void 0},css:{classes:{itemGroup:"p-listbox-item-group",emptyMessage:"p-listbox-empty-message",list:"p-listbox-list",wrapper:function(e){return i.classNames("p-listbox-list-wrapper",e.props.listClassName)},root:function(e){var t=e.props;return i.classNames("p-listbox p-component",{"p-disabled":t.disabled,"p-invalid":t.invalid},t.className)},item:function(e){var t=e.props;return i.classNames("p-listbox-item",{"p-highlight":t.selected,"p-focus":t.focusedOptionIndex===t.index,"p-disabled":t.disabled},t.option.className)},filterContainer:"p-listbox-filter-container",filterIcon:"p-listbox-filter-icon",filterInput:"p-listbox-filter",header:"p-listbox-header"},styles:"\n@layer primereact {\n .p-listbox-list-wrapper {\n overflow: auto;\n }\n \n .p-listbox-list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n }\n \n .p-listbox-item {\n cursor: pointer;\n position: relative;\n overflow: hidden;\n outline: none;\n }\n \n .p-listbox-filter-container {\n position: relative;\n }\n \n .p-listbox-filter-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-listbox-filter {\n width: 100%;\n }\n}\n",inlineStyles:{itemGroup:function(e){var t=e.scrollerOptions;return{height:t.props?t.props.itemSize:void 0}},list:function(e){return e.props.virtualScrollerOptions?e.options.style:void 0}}}});function F(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?F(Object(n),!0).forEach((function(t){v(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):F(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var N=p.memo((function(e){var t=r.useMergeProps(),n=e.ptCallbacks,o=n.ptm,l=n.cx,c=function(t,n){return o(t,L({hostName:e.hostName},n))},s={filter:function(e){return d(e)},reset:function(){return e.resetFilter()}},d=function(t){e.onFilter&&e.onFilter({originalEvent:t,value:t.target.value})},m=function(){var n=t({className:l("filterIcon")},c("filterIcon")),r=i.IconUtils.getJSXIcon(e.filterIcon||p.createElement(a.SearchIcon,n),L({},n),{props:e}),m=t({className:l("header")},c("header")),b=t({className:l("filterContainer")},c("filterContainer")),v=p.createElement("div",b,p.createElement(u.InputText,f({type:"text",value:e.filter,onChange:d,className:l("filterInput"),disabled:e.disabled,placeholder:e.filterPlaceholder},e.filterInputProps,{pt:o("filterInput"),unstyled:e.unstyled,__parentMetadata:{parent:e.metaData}})),r);e.filterTemplate&&(v=i.ObjectUtils.getJSXElement(e.filterTemplate,{className:"p-listbox-filter-container",element:v,filterOptions:s,filterInputChange:d,filterIconClassName:"p-dropdown-filter-icon",props:e}));return p.createElement("div",m,v)}();return p.createElement(p.Fragment,null,m)}));N.displayName="ListBoxHeader";var M=p.memo((function(e){var t=w(p.useState(!1),2),n=t[0],o=t[1],l=r.useMergeProps(),a=e.ptCallbacks,u=a.ptm,s=a.cx,f=e.template?i.ObjectUtils.getJSXElement(e.template,e.option):e.label,d=l({id:e.id,className:s("item",{props:e}),style:e.style,onClick:function(t){return e.onClick(t,e.option,e.index)},onTouchEnd:function(t){e.onTouchEnd&&e.onTouchEnd({originalEvent:t,option:e.option})},onFocus:function(e){o(!0)},onBlur:function(e){o(!1)},tabIndex:"-1",onMouseDown:function(t){return e.onOptionMouseDown(t,e.index)},onMouseMove:function(t){return e.onOptionMouseMove(t,e.index)},"aria-label":e.label,key:e.optionKey,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled,"data-p-disabled":e.disabled},u("item",{hostName:e.hostName,context:{selected:e.selected,disabled:e.disabled,focused:n,focusedOptionIndex:e.focusedOptionIndex}}));return p.createElement("li",d,f,p.createElement(c.Ripple,null))}));function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function T(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){v(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function U(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=k(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,l=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return l=e.done,e},e:function(e){a=!0,i=e},f:function(){try{l||null==n.return||n.return()}finally{if(a)throw i}}}}function k(e,t){if(e){if("string"==typeof e)return K(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?K(e,t):void 0}}function K(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}M.displayName="ListBoxItem";var A=p.memo(p.forwardRef((function(e,a){var u=r.useMergeProps(),c=p.useContext(t.PrimeReactContext),s=P.getProps(e,c),d=w(p.useState(null),2),m=d[0],b=d[1],v=p.useRef(null),y=p.useRef(null),h=p.useRef(null),g=w(p.useState(-1),2),O=g[0],x=g[1],E=w(p.useState(!1),2),S=E[0],D=E[1],F=w(p.useState(""),2),L=F[0],C=F[1],k=w(p.useState(""),2),K=k[0],A=k[1],G=p.useRef(null),R=p.useRef(null),_=p.useRef(null),q=p.useRef(null),B=p.useRef(!1),H=(s.onFilterValueChange?s.filterValue:L)||"",V=H&&H.trim().length>0,z={props:s,state:{filterValue:H}},J=P.setMetaData(z);n.useHandleStyle(P.css.styles,J.isUnstyled,{name:"listbox"});var X=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-1;s.disabled||Ae(t)||(s.multiple?Z(e.originalEvent,t):Q(e.originalEvent,t),B.current=!1,-1!==n&&b(n))},$=function(e,t){me(e,t)},W=function(e,t){s.focusOnHover&&S&&me(e,t)},Y=function(){s.disabled||(B.current=!0)},Q=function(e,t){var n=Te(t),r=!1,o=null;!B.current&&s.metaKeySelection?n?(e.metaKey||e.ctrlKey)&&(o=null,r=!0):(o=ke(t),r=!0):(o=n?null:ke(t),r=!0);r&&Pe(e,o)},Z=function(e,t){var n=Te(t),r=!1,o=null;if(!B&&s.metaKeySelection){var i=e.metaKey||e.ctrlKey;n?(o=i?Fe(t):[ke(t)],r=!0):(o=[].concat(j(o=i&&s.value||[]),[ke(t)]),r=!0)}else o=n?Fe(t):[].concat(j(s.value||[]),[ke(t)]),r=!0;r&&s.onChange({originalEvent:e,value:o,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:s.name,id:s.id,value:o}})},ee=function(){return i.ObjectUtils.isNotEmpty(s.value)},te=function(e){return s.optionGroupLabel&&e.optionGroup&&e.group},ne=function(e){return i.ObjectUtils.isNotEmpty(e)&&!(Ae(e)||te(e))},re=function(e){return ne(e)&&Te(e)},oe=function(){return Je.findIndex((function(e){return ne(e)}))},ie=function(){if(ee()){if(!s.multiple)return Je.findIndex((function(e){return re(e)}));for(var e,t=function(){var e=s.value[n],t=Je.findIndex((function(t){return re(t)&&Ce(e,ke(t))}));if(t>-1)return{v:t}},n=s.value.length-1;n>=0;n--)if(e=t())return e.v}return-1},le=function(){return i.ObjectUtils.findLastIndex(Je,(function(e){return ne(e)}))},ae=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=-1;return ee()&&(n=t?-1===(n=pe(e))?se(e):n:-1===(n=se(e))?pe(e):n),n>-1?n:e},ue=function(e){var t;return ne(e)&&(null===(t=Ue(e))||void 0===t?void 0:t.toLocaleLowerCase(s.filterLocale).startsWith(K.toLocaleLowerCase(s.filterLocale)))},ce=function(e,t){A((K||"")+t);var n=-1;i.ObjectUtils.isNotEmpty(K)&&(-1===(n=-1!==m?-1===(n=Je.slice(m).findIndex((function(e){return ue(e)})))?Je.slice(0,m).findIndex((function(e){return ue(e)})):n+m:Je.findIndex((function(e){return ue(e)})))&&-1===m&&(n=de()),-1!==n&&me(e,n)),v.current&&clearTimeout(v.current),v.current=setTimeout((function(){A(""),v.current=null}),500)},se=function(e){var t=ee()&&e<Je.length-1?Je.slice(e+1).findIndex((function(e){return re(e)})):-1;return t>-1?t+e+1:-1},pe=function(e){var t=ee()&&e>0?i.ObjectUtils.findLastIndex(Je.slice(0,e),(function(e){return re(e)})):-1;return t>-1?t:-1},fe=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-1;if(-1===t&&(t=ae(n,!0)),-1===n&&(n=ae(t)),-1!==t&&-1!==n){var r=Math.min(t,n),o=Math.max(t,n),i=Je.slice(r,o+1).filter((function(e){return ne(e)})).map((function(e){return ke(e)}));Pe(e,i)}},de=function(){var e=ee()?Je.findIndex((function(e){return re(e)})):-1;return e<0?oe():e},me=function(e,t){m!==t&&(b(t),Ee(),e&&s.selectOnFocus&&!s.multiple&&X(e,Je[t]))},be=function(e){var t,n,r=-1!==m?(n=(t=m)<Je.length-1?Je.slice(t+1).findIndex((function(e){return ne(e)})):-1)>-1?n+t+1:t:de();s.multiple&&e.shiftKey&&fe(e,O,r),me(e,r),e.preventDefault()},ve=function(e){var t,n,r,o=-1!==m?(r=(n=m)>0?i.ObjectUtils.findLastIndex(Je.slice(0,n),(function(e){return ne(e)})):-1)>-1?r:n:(t=ee()?i.ObjectUtils.findLastIndex(Je,(function(e){return re(e)})):-1)<0?le():t;s.multiple&&e.shiftKey&&fe(e,o,O),me(e,o),e.preventDefault()},ye=function(e){-1!==m&&(s.multiple&&e.shiftKey?fe(e,m):X(e,Je[m])),e.preventDefault()},he=function(e){ye(e)},ge=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1])e.currentTarget.setSelectionRange(0,0),b(-1);else{var t=e.metaKey||e.ctrlKey,n=oe();s.multiple&&e.shiftKey&&t&&fe(e,n,O),me(e,n)}e.preventDefault()},Oe=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1]){var t=e.currentTarget,n=t.value.length;t.setSelectionRange(n,n),I("focusedOptionIndex")}else{var r=e.metaKey||e.ctrlKey,o=le();s.multiple&&e.shiftKey&&r&&fe(e,O,o),me(e,o)}e.preventDefault()},xe=function(e){Ee(0),e.preventDefault()},je=function(e){Ee(Je.length-1),e.preventDefault()},Ie=function(e){var t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":be(e);break;case"ArrowUp":ve(e);break;case"Home":ge(e);break;case"End":Oe(e);break;case"PageDown":je(e);break;case"PageUp":xe(e);break;case"Enter":case"NumpadEnter":case"Space":he(e),e.preventDefault();break;case"Tab":break;case"ShiftLeft":case"ShiftRight":x(m);break;default:if(s.multiple&&"KeyA"===e.code&&t){var n=Je.filter((function(e){return ne(e)})).map((function(e){return ke(e)}));Pe(e,n),e.preventDefault();break}!t&&i.ObjectUtils.isPrintableCharacter(e.key)&&(ce(e,e.key),e.preventDefault())}},Ee=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;setTimeout((function(){var t=-1!==e?"".concat(_.current,"_").concat(e):-1!==m?"".concat(_.current,"_").concat(m):null,n=q.current.querySelector('li[id="'.concat(t,'"]'));n?n.scrollIntoView({block:"nearest",inline:"nearest",behavior:"smooth"}):s.virtualScrollerOptions&&R.current&&R.current.scrollToIndex(-1!==e?e:m)}),0)},Se=function(e){R.current&&R.current.scrollToIndex(0);var t=e.value;s.onFilterValueChange?s.onFilterValueChange({originalEvent:e.originalEvent,value:t}):C(t)},De=function(){C(""),s.onFilter&&s.onFilter({filter:""})},we=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:S;if(s.selectOnFocus&&s.autoOptionFocus&&!ee()&&!s.multiple&&e){var t=de();X(null,Je[t]),b(t)}},Pe=function(e,t){s.onChange&&s.onChange({originalEvent:e,value:t,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:s.name,id:s.id,value:t}})},Fe=function(e){return s.value.filter((function(t){return!i.ObjectUtils.equals(t,ke(e),s.dataKey)}))},Le=function(){if(null!=s.value&&Je){if(!s.optionGroupLabel)return Me(s.value,Je);for(var e=0;e<Je.length;e++){var t=Me(s.value,qe(Je[e]));if(-1!==t)return{group:e,option:t}}}return-1},Ne=function(){return s.optionValue?null:s.dataKey},Me=function(e,t){var n=Ne();return t.findIndex((function(t){return i.ObjectUtils.equals(e,ke(t),n)}))},Ce=function(e,t){return i.ObjectUtils.equals(e,t,Ne())},Te=function(e){var t=ke(e);return s.multiple?(s.value||[]).some((function(e){return Ce(e,t)})):Ce(s.value,t)},Ue=function(e){return s.optionLabel?i.ObjectUtils.resolveFieldData(e,s.optionLabel):e&&void 0!==e.label?e.label:e},ke=function(e){return s.optionValue?i.ObjectUtils.resolveFieldData(e,s.optionValue):e&&void 0!==e.value?e.value:e},Ke=function(e){return s.dataKey?i.ObjectUtils.resolveFieldData(e,s.dataKey):Ue(e)},Ae=function(e){return s.optionDisabled?i.ObjectUtils.isFunction(s.optionDisabled)?s.optionDisabled(e):i.ObjectUtils.resolveFieldData(e,s.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},Ge=function(){D(!0),b(-1!==m?m:s.autoOptionFocus?de():ie()),we(!0)},Re=function(e){D(!1),b(-1),x(-1),A("")},_e=function(e){return i.ObjectUtils.resolveFieldData(e,s.optionGroupLabel)},qe=function(e){return i.ObjectUtils.resolveFieldData(e,s.optionGroupChildren)},Be=function(){if(R.current){var e=Le();-1!==e&&setTimeout((function(){return R.current.scrollToIndex(e)}),0)}};p.useImperativeHandle(a,(function(){return{props:s,focus:function(){return i.DomHandler.focusFirstElement(G.current)},getElement:function(){return G.current},getVirtualScroller:function(){return R.current}}})),r.useMountEffect((function(){Be(),_.current=i.UniqueComponentId()}));var He=function(e,t){return qe(e).map((function(e,n){var r=Ue(e),o=n+"_"+Ke(e),i=Ae(e);return p.createElement(M,{id:_.current+"_"+n,hostName:"ListBox",optionKey:o,key:o,label:r,option:e,style:t,template:s.itemTemplate,selected:Te(e),onOptionMouseDown:$,onOptionMouseMove:W,onClick:X,index:n,focusedOptionIndex:m,onTouchEnd:Y,disabled:i,ptCallbacks:J,metaData:z})}))},Ve=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r={height:n.props?n.props.itemSize:void 0};if(s.optionGroupLabel){var o=s.optionGroupTemplate?i.ObjectUtils.getJSXElement(s.optionGroupTemplate,e,t):i.ObjectUtils.resolveFieldData(e,s.optionGroupLabel),l=He(e,r),a=t+"_"+_e(e),c=u({className:J.cx("itemGroup"),style:J.sx("itemGroup",{scrollerOptions:n}),role:"group"},J.ptm("itemGroup"));return p.createElement(p.Fragment,{key:a},p.createElement("li",c,o),l)}var f=Ue(e),d=t+"_"+Ke(e),b=Ae(e);return p.createElement(M,{id:_.current+"_"+t,hostName:"ListBox",optionKey:d,key:d,label:f,index:t,onOptionMouseDown:$,onOptionMouseMove:W,focusedOptionIndex:m,option:e,style:r,template:s.itemTemplate,selected:Te(e),onClick:X,onTouchEnd:Y,disabled:b,ptCallbacks:J,metaData:z})},ze=function(e,n){var r=u({className:J.cx("emptyMessage")},J.ptm("emptyMessage")),o=i.ObjectUtils.getJSXElement(e,s)||t.localeOption(n?"emptyFilterMessage":"emptyMessage");return p.createElement("li",r,o)},Je=function(){if(V){var e=H.trim().toLocaleLowerCase(s.filterLocale),n=s.filterBy?s.filterBy.split(","):[s.optionLabel||"label"];if(s.optionGroupLabel){var r,o=[],i=U(s.options);try{for(i.s();!(r=i.n()).done;){var l=r.value,a=t.FilterService.filter(qe(l),n,e,s.filterMatchMode,s.filterLocale);a&&a.length&&o.push(T(T({},l),{items:a}))}}catch(e){i.e(e)}finally{i.f()}return o}return t.FilterService.filter(s.options,n,e,s.filterMatchMode,s.filterLocale)}return s.options}(),Xe=i.ObjectUtils.isNotEmpty(s.tooltip),$e=P.getOtherProps(s),We=i.ObjectUtils.reduceKeys($e,i.DomHandler.ARIA_PROPS),Ye=function(){if(s.virtualScrollerOptions){var e=T(T({},s.virtualScrollerOptions),{items:Je,onLazyLoad:function(e){return s.virtualScrollerOptions.onLazyLoad(T(T({},e),{filter:Je}))},itemTemplate:function(e,t){return e&&Ve(e,t.index,t)},contentTemplate:function(e){var t=u(T({ref:q,style:J.sx("list",{options:e}),className:J.cx("list",{options:e}),role:"listbox",tabIndex:"-1","aria-multiselectable":s.multiple,onFocus:Ge,onBlur:Re,onKeyDown:Ie},We),J.ptm("list"));return p.createElement("ul",t,e.children)}});return p.createElement(l.VirtualScroller,f({ref:R},e,{pt:J.ptm("virtualScroller")}))}var t=i.ObjectUtils.isNotEmpty(Je)?Je.map(Ve):V?ze(s.emptyFilterMessage,!0):ze(s.emptyMessage),n=u(T({ref:q,className:J.cx("list"),role:"listbox","aria-multiselectable":s.multiple,tabIndex:"-1",onFocus:Ge,onBlur:Re,onKeyDown:Ie},We),J.ptm("list"));return p.createElement("ul",n,t)}(),Qe=s.filter?p.createElement(N,{hostName:"ListBox",filter:H,filterIcon:s.filterIcon,onFilter:Se,resetFilter:De,filterTemplate:s.filterTemplate,disabled:s.disabled,filterPlaceholder:s.filterPlaceholder,filterInputProps:s.filterInputProps,ptCallbacks:J,metaData:z}):null,Ze=u({className:J.cx("wrapper"),style:s.listStyle},J.ptm("wrapper")),et=u({ref:G,id:s.id,className:J.cx("root"),style:s.style},P.getOtherProps(s),J.ptm("root")),tt=u({ref:y,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:s.disabled?-1:s.tabIndex,onFocus:function(){i.DomHandler.focus(q.current);var e=i.DomHandler.getFirstFocusableElement(G.current,':not([data-p-hidden-focusable="true"])');h.current.tabIndex=i.DomHandler.isElement(e)?void 0:-1,y.current.tabIndex=-1,me(null,0)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},J.ptm("hiddenFirstFocusableEl")),nt=u({ref:h,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:s.disabled?-1:s.tabIndex,onFocus:function(e){if(e.relatedTarget===q.current){var t=i.DomHandler.getFirstFocusableElement(G.current,':not([data-p-hidden-focusable="true"])');i.DomHandler.focus(t),y.current.tabIndex=void 0}else i.DomHandler.focus(y.current);h.current.tabIndex=-1},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},J.ptm("hiddenLastFocusableEl"));return p.createElement(p.Fragment,null,p.createElement("div",et,p.createElement("span",tt),Qe,p.createElement("div",Ze,Ye),p.createElement("span",nt)),Xe&&p.createElement(o.Tooltip,f({target:G,content:s.tooltip,pt:J.ptm("tooltip")},s.tooltipOptions)))})));A.displayName="ListBox",exports.ListBox=A;
@@ -301,10 +301,10 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
301
301
  */
302
302
  filterLocale?: string | undefined;
303
303
  /**
304
- * Defines how the items are filtered, valid values are "contains" (default), "startsWith", "endsWith", "equals" and "notEquals".
304
+ * Defines how the items are filtered, valid values are "contains", (default) "startsWith", "endsWith", "equals" and "notEquals".
305
305
  * @defaultValue contains
306
306
  */
307
- filterMatchMode?: string | undefined;
307
+ filterMatchMode?: 'contains' | 'startsWith' | 'endsWith' | 'equals' | 'notEquals' | undefined;
308
308
  /**
309
309
  * Placeholder text to show when filter input is empty.
310
310
  */
@@ -339,16 +339,6 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
339
339
  * @defaultValue true
340
340
  */
341
341
  metaKeySelection?: boolean | undefined;
342
- /**
343
- * When enabled, the focused tab is activated.
344
- * @defaultValue false
345
- */
346
- selectOnFocus?: false;
347
- /**
348
- * Whether to focus on the first visible or selected element.
349
- * @defaultValue false
350
- */
351
- autoOptionFocus?: false;
352
342
  /**
353
343
  * When specified, allows selecting multiple values.
354
344
  * @defaultValue false
@@ -399,6 +389,21 @@ export interface ListBoxProps extends Omit<React.DetailedHTMLProps<React.InputHT
399
389
  * @type {VirtualScrollerProps}
400
390
  */
401
391
  virtualScrollerOptions?: VirtualScrollerProps | undefined;
392
+ /**
393
+ * Whether to focus on the first visible or selected element.
394
+ * @defaultValue false
395
+ */
396
+ autoOptionFocus?: boolean | undefined;
397
+ /**
398
+ * When enabled, the focused option is selected.
399
+ * @defaultValue false
400
+ */
401
+ selectOnFocus?: boolean | undefined;
402
+ /**
403
+ * When enabled, the focus is placed on the hovered option.
404
+ * @defaultValue true
405
+ */
406
+ focusOnHover?: boolean | undefined;
402
407
  /**
403
408
  * Uses to pass attributes to DOM elements inside the component.
404
409
  * @type {ListboxPassThroughOptions}