primereact 9.3.0 → 9.4.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 (566) hide show
  1. package/README.md +21 -38
  2. package/accordion/accordion.cjs.js +88 -90
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.d.ts +90 -1
  5. package/accordion/accordion.esm.js +89 -91
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +89 -92
  8. package/accordion/accordion.min.js +1 -1
  9. package/api/api.cjs.js +1 -0
  10. package/api/api.cjs.min.js +1 -1
  11. package/api/api.esm.js +1 -0
  12. package/api/api.esm.min.js +1 -1
  13. package/api/api.js +1 -0
  14. package/api/api.min.js +1 -1
  15. package/autocomplete/autocomplete.cjs.js +9 -5
  16. package/autocomplete/autocomplete.cjs.min.js +1 -1
  17. package/autocomplete/autocomplete.esm.js +9 -5
  18. package/autocomplete/autocomplete.esm.min.js +1 -1
  19. package/autocomplete/autocomplete.js +8 -4
  20. package/autocomplete/autocomplete.min.js +1 -1
  21. package/avatar/avatar.cjs.js +71 -22
  22. package/avatar/avatar.cjs.min.js +1 -1
  23. package/avatar/avatar.d.ts +37 -1
  24. package/avatar/avatar.esm.js +72 -23
  25. package/avatar/avatar.esm.min.js +1 -1
  26. package/avatar/avatar.js +72 -24
  27. package/avatar/avatar.min.js +1 -1
  28. package/avatargroup/avatargroup.cjs.js +26 -42
  29. package/avatargroup/avatargroup.cjs.min.js +1 -1
  30. package/avatargroup/avatargroup.d.ts +24 -0
  31. package/avatargroup/avatargroup.esm.js +13 -29
  32. package/avatargroup/avatargroup.esm.min.js +1 -1
  33. package/avatargroup/avatargroup.js +52 -69
  34. package/avatargroup/avatargroup.min.js +1 -1
  35. package/badge/badge.cjs.js +12 -28
  36. package/badge/badge.cjs.min.js +1 -1
  37. package/badge/badge.d.ts +26 -0
  38. package/badge/badge.esm.js +13 -29
  39. package/badge/badge.esm.min.js +1 -1
  40. package/badge/badge.js +13 -30
  41. package/badge/badge.min.js +1 -1
  42. package/blockui/blockui.cjs.js +12 -28
  43. package/blockui/blockui.cjs.min.js +1 -1
  44. package/blockui/blockui.d.ts +38 -0
  45. package/blockui/blockui.esm.js +13 -29
  46. package/blockui/blockui.esm.min.js +1 -1
  47. package/blockui/blockui.js +13 -30
  48. package/blockui/blockui.min.js +1 -1
  49. package/breadcrumb/breadcrumb.js +1 -1
  50. package/breadcrumb/breadcrumb.min.js +1 -1
  51. package/button/button.cjs.js +49 -42
  52. package/button/button.cjs.min.js +1 -1
  53. package/button/button.d.ts +42 -1
  54. package/button/button.esm.js +50 -43
  55. package/button/button.esm.min.js +1 -1
  56. package/button/button.js +49 -43
  57. package/button/button.min.js +1 -1
  58. package/calendar/calendar.cjs.js +31 -23
  59. package/calendar/calendar.cjs.min.js +1 -1
  60. package/calendar/calendar.d.ts +1 -1
  61. package/calendar/calendar.esm.js +31 -23
  62. package/calendar/calendar.esm.min.js +1 -1
  63. package/calendar/calendar.js +28 -20
  64. package/calendar/calendar.min.js +1 -1
  65. package/card/card.cjs.js +52 -63
  66. package/card/card.cjs.min.js +1 -1
  67. package/card/card.d.ts +56 -0
  68. package/card/card.esm.js +39 -50
  69. package/card/card.esm.min.js +1 -1
  70. package/card/card.js +86 -98
  71. package/card/card.min.js +1 -1
  72. package/carousel/carousel.cjs.js +16 -28
  73. package/carousel/carousel.cjs.min.js +1 -1
  74. package/carousel/carousel.d.ts +2 -2
  75. package/carousel/carousel.esm.js +16 -28
  76. package/carousel/carousel.esm.min.js +1 -1
  77. package/carousel/carousel.js +14 -26
  78. package/carousel/carousel.min.js +1 -1
  79. package/cascadeselect/cascadeselect.js +1 -1
  80. package/cascadeselect/cascadeselect.min.js +1 -1
  81. package/chart/chart.cjs.js +5 -1
  82. package/chart/chart.cjs.min.js +1 -1
  83. package/chart/chart.d.ts +5 -0
  84. package/chart/chart.esm.js +5 -1
  85. package/chart/chart.esm.min.js +1 -1
  86. package/chart/chart.js +5 -1
  87. package/chart/chart.min.js +1 -1
  88. package/checkbox/checkbox.cjs.js +22 -7
  89. package/checkbox/checkbox.cjs.min.js +1 -1
  90. package/checkbox/checkbox.d.ts +14 -1
  91. package/checkbox/checkbox.esm.js +22 -7
  92. package/checkbox/checkbox.esm.min.js +1 -1
  93. package/checkbox/checkbox.js +23 -8
  94. package/checkbox/checkbox.min.js +1 -1
  95. package/chip/chip.cjs.js +45 -42
  96. package/chip/chip.cjs.min.js +1 -1
  97. package/chip/chip.d.ts +53 -1
  98. package/chip/chip.esm.js +46 -43
  99. package/chip/chip.esm.min.js +1 -1
  100. package/chip/chip.js +46 -44
  101. package/chip/chip.min.js +1 -1
  102. package/chips/chips.cjs.js +13 -5
  103. package/chips/chips.cjs.min.js +1 -1
  104. package/chips/chips.esm.js +13 -5
  105. package/chips/chips.esm.min.js +1 -1
  106. package/chips/chips.js +14 -6
  107. package/chips/chips.min.js +1 -1
  108. package/colorpicker/colorpicker.cjs.js +7 -4
  109. package/colorpicker/colorpicker.cjs.min.js +1 -1
  110. package/colorpicker/colorpicker.d.ts +8 -0
  111. package/colorpicker/colorpicker.esm.js +7 -4
  112. package/colorpicker/colorpicker.esm.min.js +1 -1
  113. package/colorpicker/colorpicker.js +7 -4
  114. package/colorpicker/colorpicker.min.js +1 -1
  115. package/column/column.d.ts +6 -2
  116. package/componentbase/componentbase.cjs.js +105 -0
  117. package/componentbase/componentbase.cjs.min.js +1 -0
  118. package/componentbase/componentbase.esm.js +101 -0
  119. package/componentbase/componentbase.esm.min.js +1 -0
  120. package/componentbase/componentbase.js +109 -0
  121. package/componentbase/componentbase.min.js +1 -0
  122. package/componentbase/package.json +6 -0
  123. package/confirmdialog/confirmdialog.cjs.js +44 -27
  124. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  125. package/confirmdialog/confirmdialog.d.ts +90 -2
  126. package/confirmdialog/confirmdialog.esm.js +45 -28
  127. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  128. package/confirmdialog/confirmdialog.js +45 -29
  129. package/confirmdialog/confirmdialog.min.js +1 -1
  130. package/confirmpopup/confirmpopup.cjs.js +53 -50
  131. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  132. package/confirmpopup/confirmpopup.d.ts +70 -1
  133. package/confirmpopup/confirmpopup.esm.js +54 -51
  134. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  135. package/confirmpopup/confirmpopup.js +54 -52
  136. package/confirmpopup/confirmpopup.min.js +1 -1
  137. package/contextmenu/contextmenu.js +1 -1
  138. package/contextmenu/contextmenu.min.js +1 -1
  139. package/core/core.js +1253 -1048
  140. package/core/core.min.js +17 -15
  141. package/datatable/datatable.cjs.js +82 -41
  142. package/datatable/datatable.cjs.min.js +1 -1
  143. package/datatable/datatable.d.ts +39 -10
  144. package/datatable/datatable.esm.js +82 -41
  145. package/datatable/datatable.esm.min.js +1 -1
  146. package/datatable/datatable.js +72 -31
  147. package/datatable/datatable.min.js +1 -1
  148. package/dataview/dataview.js +1 -1
  149. package/dataview/dataview.min.js +1 -1
  150. package/deferredcontent/deferredcontent.cjs.js +13 -26
  151. package/deferredcontent/deferredcontent.cjs.min.js +1 -1
  152. package/deferredcontent/deferredcontent.d.ts +38 -0
  153. package/deferredcontent/deferredcontent.esm.js +14 -27
  154. package/deferredcontent/deferredcontent.esm.min.js +1 -1
  155. package/deferredcontent/deferredcontent.js +14 -28
  156. package/deferredcontent/deferredcontent.min.js +1 -1
  157. package/dialog/dialog.cjs.js +83 -83
  158. package/dialog/dialog.cjs.min.js +1 -1
  159. package/dialog/dialog.d.ts +85 -3
  160. package/dialog/dialog.esm.js +83 -83
  161. package/dialog/dialog.esm.min.js +1 -1
  162. package/dialog/dialog.js +81 -82
  163. package/dialog/dialog.min.js +1 -1
  164. package/divider/divider.cjs.js +35 -51
  165. package/divider/divider.cjs.min.js +1 -1
  166. package/divider/divider.d.ts +30 -0
  167. package/divider/divider.esm.js +22 -38
  168. package/divider/divider.esm.min.js +1 -1
  169. package/divider/divider.js +66 -83
  170. package/divider/divider.min.js +1 -1
  171. package/dropdown/dropdown.cjs.js +45 -19
  172. package/dropdown/dropdown.cjs.min.js +1 -1
  173. package/dropdown/dropdown.d.ts +6 -1
  174. package/dropdown/dropdown.esm.js +45 -19
  175. package/dropdown/dropdown.esm.min.js +1 -1
  176. package/dropdown/dropdown.js +45 -19
  177. package/dropdown/dropdown.min.js +1 -1
  178. package/fieldset/fieldset.cjs.js +55 -54
  179. package/fieldset/fieldset.cjs.min.js +1 -1
  180. package/fieldset/fieldset.d.ts +77 -1
  181. package/fieldset/fieldset.esm.js +56 -55
  182. package/fieldset/fieldset.esm.min.js +1 -1
  183. package/fieldset/fieldset.js +56 -56
  184. package/fieldset/fieldset.min.js +1 -1
  185. package/fileupload/fileupload.cjs.js +13 -14
  186. package/fileupload/fileupload.cjs.min.js +1 -1
  187. package/fileupload/fileupload.esm.js +14 -15
  188. package/fileupload/fileupload.esm.min.js +1 -1
  189. package/fileupload/fileupload.js +14 -16
  190. package/fileupload/fileupload.min.js +1 -1
  191. package/galleria/galleria.cjs.js +5 -0
  192. package/galleria/galleria.cjs.min.js +1 -1
  193. package/galleria/galleria.d.ts +4 -4
  194. package/galleria/galleria.esm.js +5 -0
  195. package/galleria/galleria.esm.min.js +1 -1
  196. package/galleria/galleria.js +6 -1
  197. package/galleria/galleria.min.js +1 -1
  198. package/hooks/hooks.cjs.js +15 -2
  199. package/hooks/hooks.cjs.min.js +1 -1
  200. package/hooks/hooks.esm.js +15 -2
  201. package/hooks/hooks.esm.min.js +1 -1
  202. package/hooks/hooks.js +15 -2
  203. package/hooks/hooks.min.js +1 -1
  204. package/image/image.cjs.js +63 -41
  205. package/image/image.cjs.min.js +1 -1
  206. package/image/image.d.ts +22 -6
  207. package/image/image.esm.js +63 -41
  208. package/image/image.esm.min.js +1 -1
  209. package/image/image.js +61 -39
  210. package/image/image.min.js +1 -1
  211. package/inplace/inplace.cjs.js +33 -51
  212. package/inplace/inplace.cjs.min.js +1 -1
  213. package/inplace/inplace.d.ts +51 -1
  214. package/inplace/inplace.esm.js +33 -51
  215. package/inplace/inplace.esm.min.js +1 -1
  216. package/inplace/inplace.js +33 -52
  217. package/inplace/inplace.min.js +1 -1
  218. package/inputmask/inputmask.cjs.js +6 -2
  219. package/inputmask/inputmask.cjs.min.js +1 -1
  220. package/inputmask/inputmask.d.ts +1 -1
  221. package/inputmask/inputmask.esm.js +6 -2
  222. package/inputmask/inputmask.esm.min.js +1 -1
  223. package/inputmask/inputmask.js +6 -2
  224. package/inputmask/inputmask.min.js +1 -1
  225. package/inputnumber/inputnumber.cjs.js +8 -4
  226. package/inputnumber/inputnumber.cjs.min.js +1 -1
  227. package/inputnumber/inputnumber.esm.js +8 -4
  228. package/inputnumber/inputnumber.esm.min.js +1 -1
  229. package/inputnumber/inputnumber.js +8 -4
  230. package/inputnumber/inputnumber.min.js +1 -1
  231. package/inputswitch/inputswitch.cjs.js +6 -2
  232. package/inputswitch/inputswitch.cjs.min.js +1 -1
  233. package/inputswitch/inputswitch.esm.js +6 -2
  234. package/inputswitch/inputswitch.esm.min.js +1 -1
  235. package/inputswitch/inputswitch.js +6 -2
  236. package/inputswitch/inputswitch.min.js +1 -1
  237. package/inputtext/inputtext.cjs.js +7 -8
  238. package/inputtext/inputtext.cjs.min.js +1 -1
  239. package/inputtext/inputtext.esm.js +7 -8
  240. package/inputtext/inputtext.esm.min.js +1 -1
  241. package/inputtext/inputtext.js +7 -8
  242. package/inputtext/inputtext.min.js +1 -1
  243. package/inputtextarea/inputtextarea.cjs.js +5 -6
  244. package/inputtextarea/inputtextarea.cjs.min.js +1 -1
  245. package/inputtextarea/inputtextarea.esm.js +5 -6
  246. package/inputtextarea/inputtextarea.esm.min.js +1 -1
  247. package/inputtextarea/inputtextarea.js +5 -6
  248. package/inputtextarea/inputtextarea.min.js +1 -1
  249. package/listbox/listbox.cjs.js +12 -4
  250. package/listbox/listbox.cjs.min.js +1 -1
  251. package/listbox/listbox.esm.js +12 -4
  252. package/listbox/listbox.esm.min.js +1 -1
  253. package/listbox/listbox.js +13 -5
  254. package/listbox/listbox.min.js +1 -1
  255. package/megamenu/megamenu.js +1 -1
  256. package/megamenu/megamenu.min.js +1 -1
  257. package/mention/mention.cjs.js +6 -6
  258. package/mention/mention.cjs.min.js +1 -1
  259. package/mention/mention.esm.js +6 -6
  260. package/mention/mention.esm.min.js +1 -1
  261. package/mention/mention.js +6 -6
  262. package/mention/mention.min.js +1 -1
  263. package/menubar/menubar.js +1 -1
  264. package/menubar/menubar.min.js +1 -1
  265. package/menuitem/menuitem.d.ts +0 -2
  266. package/message/message.d.ts +1 -1
  267. package/message/message.js +1 -1
  268. package/message/message.min.js +1 -1
  269. package/messages/messages.cjs.js +64 -50
  270. package/messages/messages.cjs.min.js +1 -1
  271. package/messages/messages.d.ts +5 -0
  272. package/messages/messages.esm.js +64 -50
  273. package/messages/messages.esm.min.js +1 -1
  274. package/messages/messages.js +62 -48
  275. package/messages/messages.min.js +1 -1
  276. package/multiselect/multiselect.cjs.js +46 -22
  277. package/multiselect/multiselect.cjs.min.js +1 -1
  278. package/multiselect/multiselect.d.ts +4 -0
  279. package/multiselect/multiselect.esm.js +46 -22
  280. package/multiselect/multiselect.esm.min.js +1 -1
  281. package/multiselect/multiselect.js +45 -21
  282. package/multiselect/multiselect.min.js +1 -1
  283. package/multistatecheckbox/multistatecheckbox.cjs.js +6 -2
  284. package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
  285. package/multistatecheckbox/multistatecheckbox.esm.js +6 -2
  286. package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
  287. package/multistatecheckbox/multistatecheckbox.js +6 -2
  288. package/multistatecheckbox/multistatecheckbox.min.js +1 -1
  289. package/orderlist/orderlist.js +1 -1
  290. package/orderlist/orderlist.min.js +1 -1
  291. package/organizationchart/organizationchart.d.ts +18 -2
  292. package/organizationchart/organizationchart.js +1 -1
  293. package/organizationchart/organizationchart.min.js +1 -1
  294. package/overlaypanel/overlaypanel.cjs.js +40 -46
  295. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  296. package/overlaypanel/overlaypanel.d.ts +45 -1
  297. package/overlaypanel/overlaypanel.esm.js +41 -47
  298. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  299. package/overlaypanel/overlaypanel.js +41 -48
  300. package/overlaypanel/overlaypanel.min.js +1 -1
  301. package/package.json +1 -1
  302. package/paginator/paginator.cjs.js +1 -1
  303. package/paginator/paginator.cjs.min.js +1 -1
  304. package/paginator/paginator.esm.js +1 -1
  305. package/paginator/paginator.esm.min.js +1 -1
  306. package/paginator/paginator.js +2 -2
  307. package/paginator/paginator.min.js +1 -1
  308. package/panel/panel.cjs.js +78 -63
  309. package/panel/panel.cjs.min.js +1 -1
  310. package/panel/panel.d.ts +100 -1
  311. package/panel/panel.esm.js +79 -64
  312. package/panel/panel.esm.min.js +1 -1
  313. package/panel/panel.js +79 -65
  314. package/panel/panel.min.js +1 -1
  315. package/panelmenu/panelmenu.js +1 -1
  316. package/panelmenu/panelmenu.min.js +1 -1
  317. package/password/password.cjs.js +3 -9
  318. package/password/password.cjs.min.js +1 -1
  319. package/password/password.d.ts +1 -1
  320. package/password/password.esm.js +3 -9
  321. package/password/password.esm.min.js +1 -1
  322. package/password/password.js +4 -10
  323. package/password/password.min.js +1 -1
  324. package/picklist/picklist.cjs.js +2 -2
  325. package/picklist/picklist.cjs.min.js +1 -1
  326. package/picklist/picklist.esm.js +2 -2
  327. package/picklist/picklist.esm.min.js +1 -1
  328. package/picklist/picklist.js +3 -3
  329. package/picklist/picklist.min.js +1 -1
  330. package/primereact.all.cjs.js +2310 -1775
  331. package/primereact.all.cjs.min.js +1 -1
  332. package/primereact.all.esm.js +2310 -1776
  333. package/primereact.all.esm.min.js +1 -1
  334. package/primereact.all.js +2310 -1775
  335. package/primereact.all.min.js +1 -1
  336. package/progressbar/progressbar.cjs.js +45 -57
  337. package/progressbar/progressbar.cjs.min.js +1 -1
  338. package/progressbar/progressbar.d.ts +38 -0
  339. package/progressbar/progressbar.esm.js +32 -44
  340. package/progressbar/progressbar.esm.min.js +1 -1
  341. package/progressbar/progressbar.js +105 -118
  342. package/progressbar/progressbar.min.js +1 -1
  343. package/progressspinner/progressspinner.cjs.js +37 -51
  344. package/progressspinner/progressspinner.cjs.min.js +1 -1
  345. package/progressspinner/progressspinner.d.ts +34 -0
  346. package/progressspinner/progressspinner.esm.js +24 -38
  347. package/progressspinner/progressspinner.esm.min.js +1 -1
  348. package/progressspinner/progressspinner.js +75 -90
  349. package/progressspinner/progressspinner.min.js +1 -1
  350. package/radiobutton/radiobutton.cjs.js +29 -14
  351. package/radiobutton/radiobutton.cjs.min.js +1 -1
  352. package/radiobutton/radiobutton.d.ts +14 -1
  353. package/radiobutton/radiobutton.esm.js +29 -14
  354. package/radiobutton/radiobutton.esm.min.js +1 -1
  355. package/radiobutton/radiobutton.js +29 -14
  356. package/radiobutton/radiobutton.min.js +1 -1
  357. package/rating/rating.cjs.js +15 -7
  358. package/rating/rating.cjs.min.js +1 -1
  359. package/rating/rating.esm.js +15 -7
  360. package/rating/rating.esm.min.js +1 -1
  361. package/rating/rating.js +14 -6
  362. package/rating/rating.min.js +1 -1
  363. package/resources/primereact.css +538 -538
  364. package/resources/primereact.min.css +1 -1
  365. package/resources/themes/arya-blue/theme.css +3 -0
  366. package/resources/themes/arya-green/theme.css +3 -0
  367. package/resources/themes/arya-orange/theme.css +3 -0
  368. package/resources/themes/arya-purple/theme.css +3 -0
  369. package/resources/themes/bootstrap4-dark-blue/theme.css +3 -0
  370. package/resources/themes/bootstrap4-dark-purple/theme.css +3 -0
  371. package/resources/themes/bootstrap4-light-blue/theme.css +3 -0
  372. package/resources/themes/bootstrap4-light-purple/theme.css +3 -0
  373. package/resources/themes/fluent-light/theme.css +3 -0
  374. package/resources/themes/lara-dark-blue/theme.css +3 -0
  375. package/resources/themes/lara-dark-indigo/theme.css +3 -0
  376. package/resources/themes/lara-dark-purple/theme.css +3 -0
  377. package/resources/themes/lara-dark-teal/theme.css +3 -0
  378. package/resources/themes/lara-light-blue/theme.css +3 -0
  379. package/resources/themes/lara-light-indigo/theme.css +3 -0
  380. package/resources/themes/lara-light-purple/theme.css +3 -0
  381. package/resources/themes/lara-light-teal/theme.css +3 -0
  382. package/resources/themes/luna-amber/theme.css +3 -0
  383. package/resources/themes/luna-blue/theme.css +3 -0
  384. package/resources/themes/luna-green/theme.css +3 -0
  385. package/resources/themes/luna-pink/theme.css +3 -0
  386. package/resources/themes/md-dark-deeppurple/theme.css +3 -0
  387. package/resources/themes/md-dark-indigo/theme.css +3 -0
  388. package/resources/themes/md-light-deeppurple/theme.css +3 -0
  389. package/resources/themes/md-light-indigo/theme.css +3 -0
  390. package/resources/themes/mdc-dark-deeppurple/theme.css +3 -0
  391. package/resources/themes/mdc-dark-indigo/theme.css +3 -0
  392. package/resources/themes/mdc-light-deeppurple/theme.css +3 -0
  393. package/resources/themes/mdc-light-indigo/theme.css +3 -0
  394. package/resources/themes/mira/theme.css +3 -0
  395. package/resources/themes/nano/theme.css +3 -0
  396. package/resources/themes/nova/theme.css +3 -0
  397. package/resources/themes/nova-accent/theme.css +3 -0
  398. package/resources/themes/nova-alt/theme.css +3 -0
  399. package/resources/themes/rhea/theme.css +3 -0
  400. package/resources/themes/saga-blue/theme.css +3 -0
  401. package/resources/themes/saga-green/theme.css +3 -0
  402. package/resources/themes/saga-orange/theme.css +3 -0
  403. package/resources/themes/saga-purple/theme.css +3 -0
  404. package/resources/themes/soho-dark/theme.css +3 -0
  405. package/resources/themes/soho-light/theme.css +3 -0
  406. package/resources/themes/tailwind-light/theme.css +3 -0
  407. package/resources/themes/vela-blue/theme.css +3 -0
  408. package/resources/themes/vela-green/theme.css +3 -0
  409. package/resources/themes/vela-orange/theme.css +3 -0
  410. package/resources/themes/vela-purple/theme.css +3 -0
  411. package/resources/themes/viva-dark/theme.css +3 -0
  412. package/resources/themes/viva-light/theme.css +3 -0
  413. package/scrollpanel/scrollpanel.cjs.js +39 -52
  414. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  415. package/scrollpanel/scrollpanel.d.ts +42 -0
  416. package/scrollpanel/scrollpanel.esm.js +26 -39
  417. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  418. package/scrollpanel/scrollpanel.js +193 -207
  419. package/scrollpanel/scrollpanel.min.js +1 -1
  420. package/scrolltop/scrolltop.cjs.js +64 -36
  421. package/scrolltop/scrolltop.cjs.min.js +1 -1
  422. package/scrolltop/scrolltop.d.ts +42 -1
  423. package/scrolltop/scrolltop.esm.js +65 -37
  424. package/scrolltop/scrolltop.esm.min.js +1 -1
  425. package/scrolltop/scrolltop.js +65 -38
  426. package/scrolltop/scrolltop.min.js +1 -1
  427. package/selectbutton/selectbutton.cjs.js +6 -2
  428. package/selectbutton/selectbutton.cjs.min.js +1 -1
  429. package/selectbutton/selectbutton.esm.js +6 -2
  430. package/selectbutton/selectbutton.esm.min.js +1 -1
  431. package/selectbutton/selectbutton.js +6 -2
  432. package/selectbutton/selectbutton.min.js +1 -1
  433. package/sidebar/sidebar.cjs.js +88 -52
  434. package/sidebar/sidebar.cjs.min.js +1 -1
  435. package/sidebar/sidebar.d.ts +58 -1
  436. package/sidebar/sidebar.esm.js +89 -53
  437. package/sidebar/sidebar.esm.min.js +1 -1
  438. package/sidebar/sidebar.js +89 -54
  439. package/sidebar/sidebar.min.js +1 -1
  440. package/skeleton/skeleton.cjs.js +26 -42
  441. package/skeleton/skeleton.cjs.min.js +1 -1
  442. package/skeleton/skeleton.d.ts +26 -0
  443. package/skeleton/skeleton.esm.js +13 -29
  444. package/skeleton/skeleton.esm.min.js +1 -1
  445. package/skeleton/skeleton.js +70 -87
  446. package/skeleton/skeleton.min.js +1 -1
  447. package/slidemenu/slidemenu.js +1 -1
  448. package/slidemenu/slidemenu.min.js +1 -1
  449. package/speeddial/speeddial.cjs.js +63 -56
  450. package/speeddial/speeddial.cjs.min.js +1 -1
  451. package/speeddial/speeddial.d.ts +64 -1
  452. package/speeddial/speeddial.esm.js +64 -57
  453. package/speeddial/speeddial.esm.min.js +1 -1
  454. package/speeddial/speeddial.js +62 -56
  455. package/speeddial/speeddial.min.js +1 -1
  456. package/splitbutton/splitbutton.cjs.js +50 -40
  457. package/splitbutton/splitbutton.cjs.min.js +1 -1
  458. package/splitbutton/splitbutton.d.ts +59 -1
  459. package/splitbutton/splitbutton.esm.js +51 -41
  460. package/splitbutton/splitbutton.esm.min.js +1 -1
  461. package/splitbutton/splitbutton.js +50 -41
  462. package/splitbutton/splitbutton.min.js +1 -1
  463. package/splitter/splitter.cjs.js +68 -70
  464. package/splitter/splitter.cjs.min.js +1 -1
  465. package/splitter/splitter.d.ts +60 -0
  466. package/splitter/splitter.esm.js +69 -71
  467. package/splitter/splitter.esm.min.js +1 -1
  468. package/splitter/splitter.js +69 -72
  469. package/splitter/splitter.min.js +1 -1
  470. package/styleclass/styleclass.cjs.js +9 -7
  471. package/styleclass/styleclass.cjs.min.js +1 -1
  472. package/styleclass/styleclass.esm.js +9 -7
  473. package/styleclass/styleclass.esm.min.js +1 -1
  474. package/styleclass/styleclass.js +9 -7
  475. package/styleclass/styleclass.min.js +1 -1
  476. package/tabview/tabview.cjs.js +143 -123
  477. package/tabview/tabview.cjs.min.js +1 -1
  478. package/tabview/tabview.d.ts +135 -4
  479. package/tabview/tabview.esm.js +144 -124
  480. package/tabview/tabview.esm.min.js +1 -1
  481. package/tabview/tabview.js +144 -125
  482. package/tabview/tabview.min.js +1 -1
  483. package/tag/tag.cjs.js +18 -30
  484. package/tag/tag.cjs.min.js +1 -1
  485. package/tag/tag.d.ts +34 -1
  486. package/tag/tag.esm.js +19 -31
  487. package/tag/tag.esm.min.js +1 -1
  488. package/tag/tag.js +19 -32
  489. package/tag/tag.min.js +1 -1
  490. package/terminal/terminal.cjs.js +49 -52
  491. package/terminal/terminal.cjs.min.js +1 -1
  492. package/terminal/terminal.d.ts +73 -0
  493. package/terminal/terminal.esm.js +50 -53
  494. package/terminal/terminal.esm.min.js +1 -1
  495. package/terminal/terminal.js +50 -54
  496. package/terminal/terminal.min.js +1 -1
  497. package/terminalservice/terminalservice.d.ts +1 -1
  498. package/tieredmenu/tieredmenu.cjs.js +1 -1
  499. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  500. package/tieredmenu/tieredmenu.esm.js +1 -1
  501. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  502. package/tieredmenu/tieredmenu.js +2 -2
  503. package/tieredmenu/tieredmenu.min.js +1 -1
  504. package/timeline/timeline.d.ts +1 -1
  505. package/toast/toast.cjs.js +13 -10
  506. package/toast/toast.cjs.min.js +1 -1
  507. package/toast/toast.d.ts +4 -0
  508. package/toast/toast.esm.js +13 -10
  509. package/toast/toast.esm.min.js +1 -1
  510. package/toast/toast.js +14 -11
  511. package/toast/toast.min.js +1 -1
  512. package/togglebutton/togglebutton.cjs.js +6 -2
  513. package/togglebutton/togglebutton.cjs.min.js +1 -1
  514. package/togglebutton/togglebutton.esm.js +6 -2
  515. package/togglebutton/togglebutton.esm.min.js +1 -1
  516. package/togglebutton/togglebutton.js +6 -2
  517. package/togglebutton/togglebutton.min.js +1 -1
  518. package/toolbar/toolbar.cjs.js +35 -49
  519. package/toolbar/toolbar.cjs.min.js +1 -1
  520. package/toolbar/toolbar.d.ts +44 -0
  521. package/toolbar/toolbar.esm.js +22 -36
  522. package/toolbar/toolbar.esm.min.js +1 -1
  523. package/toolbar/toolbar.js +72 -87
  524. package/toolbar/toolbar.min.js +1 -1
  525. package/tooltip/tooltip.cjs.js +31 -37
  526. package/tooltip/tooltip.cjs.min.js +1 -1
  527. package/tooltip/tooltip.d.ts +55 -0
  528. package/tooltip/tooltip.esm.js +32 -38
  529. package/tooltip/tooltip.esm.min.js +1 -1
  530. package/tooltip/tooltip.js +32 -39
  531. package/tooltip/tooltip.min.js +1 -1
  532. package/tooltip/tooltipoptions.d.ts +5 -0
  533. package/tree/tree.d.ts +1 -1
  534. package/tree/tree.js +1 -1
  535. package/tree/tree.min.js +1 -1
  536. package/treenode/treenode.d.ts +5 -1
  537. package/treeselect/treeselect.cjs.js +9 -5
  538. package/treeselect/treeselect.cjs.min.js +1 -1
  539. package/treeselect/treeselect.d.ts +1 -1
  540. package/treeselect/treeselect.esm.js +9 -5
  541. package/treeselect/treeselect.esm.min.js +1 -1
  542. package/treeselect/treeselect.js +8 -4
  543. package/treeselect/treeselect.min.js +1 -1
  544. package/treetable/treetable.cjs.js +10 -3
  545. package/treetable/treetable.cjs.min.js +1 -1
  546. package/treetable/treetable.d.ts +1 -1
  547. package/treetable/treetable.esm.js +10 -3
  548. package/treetable/treetable.esm.min.js +1 -1
  549. package/treetable/treetable.js +11 -4
  550. package/treetable/treetable.min.js +1 -1
  551. package/tristatecheckbox/tristatecheckbox.cjs.js +8 -4
  552. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  553. package/tristatecheckbox/tristatecheckbox.esm.js +8 -4
  554. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  555. package/tristatecheckbox/tristatecheckbox.js +8 -4
  556. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  557. package/utils/utils.cjs.js +710 -672
  558. package/utils/utils.cjs.min.js +1 -1
  559. package/utils/utils.d.ts +4 -0
  560. package/utils/utils.esm.js +710 -673
  561. package/utils/utils.esm.min.js +1 -1
  562. package/utils/utils.js +710 -672
  563. package/utils/utils.min.js +1 -1
  564. package/virtualscroller/virtualscroller.js +1 -1
  565. package/virtualscroller/virtualscroller.min.js +1 -1
  566. package/web-types.json +17 -199
@@ -5,6 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var PrimeReact = require('primereact/api');
7
7
  var hooks = require('primereact/hooks');
8
+ var chevrondown = require('primereact/icons/chevrondown');
9
+ var times = require('primereact/icons/times');
10
+ var timescircle = require('primereact/icons/timescircle');
8
11
  var overlayservice = require('primereact/overlayservice');
9
12
  var tooltip = require('primereact/tooltip');
10
13
  var utils = require('primereact/utils');
@@ -14,10 +17,7 @@ var virtualscroller = require('primereact/virtualscroller');
14
17
  var check = require('primereact/icons/check');
15
18
  var inputtext = require('primereact/inputtext');
16
19
  var ripple = require('primereact/ripple');
17
- var times = require('primereact/icons/times');
18
20
  var search = require('primereact/icons/search');
19
- var timescircle = require('primereact/icons/timescircle');
20
- var chevrondown = require('primereact/icons/chevrondown');
21
21
 
22
22
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
23
 
@@ -267,6 +267,7 @@ var CheckboxBase = {
267
267
  tooltip: null,
268
268
  tooltipOptions: null,
269
269
  onChange: null,
270
+ onClick: null,
270
271
  onMouseDown: null,
271
272
  onContextMenu: null,
272
273
  children: undefined
@@ -288,19 +289,26 @@ var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
288
289
  var elementRef = React__namespace.useRef(null);
289
290
  var inputRef = React__namespace.useRef(props.inputRef);
290
291
  var onClick = function onClick(event) {
291
- if (!props.disabled && !props.readOnly && props.onChange) {
292
+ if (props.disabled || props.readOnly) {
293
+ return;
294
+ }
295
+ if (props.onChange || props.onClick) {
292
296
  var _checked = isChecked();
293
297
  var checkboxClicked = event.target instanceof HTMLDivElement || event.target instanceof HTMLSpanElement || event.target instanceof Object;
294
298
  var isInputToggled = event.target === inputRef.current;
295
299
  var isCheckboxToggled = checkboxClicked && event.target.checked !== _checked;
296
300
  if (isInputToggled || isCheckboxToggled) {
297
301
  var value = _checked ? props.falseValue : props.trueValue;
298
- props.onChange({
302
+ var eventData = {
299
303
  originalEvent: event,
300
304
  value: props.value,
301
305
  checked: value,
302
- stopPropagation: function stopPropagation() {},
303
- preventDefault: function preventDefault() {},
306
+ stopPropagation: function stopPropagation() {
307
+ event.stopPropagation();
308
+ },
309
+ preventDefault: function preventDefault() {
310
+ event.preventDefault();
311
+ },
304
312
  target: {
305
313
  type: 'checkbox',
306
314
  name: props.name,
@@ -308,7 +316,14 @@ var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
308
316
  value: props.value,
309
317
  checked: value
310
318
  }
311
- });
319
+ };
320
+ props.onClick && props.onClick(eventData);
321
+
322
+ // do not continue if the user defined click wants to prevent
323
+ if (event.defaultPrevented) {
324
+ return;
325
+ }
326
+ props.onChange && props.onChange(eventData);
312
327
  }
313
328
  utils.DomHandler.focus(inputRef.current);
314
329
  event.preventDefault();
@@ -379,7 +394,7 @@ var Checkbox = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namespace
379
394
  className: className,
380
395
  style: props.style
381
396
  }, otherProps, {
382
- onClick: onClick,
397
+ onPointerUp: onClick,
383
398
  onContextMenu: props.onContextMenu,
384
399
  onMouseDown: props.onMouseDown
385
400
  }), /*#__PURE__*/React__namespace.createElement("div", {
@@ -482,13 +497,13 @@ var MultiSelectHeader = /*#__PURE__*/React__namespace.memo(function (props) {
482
497
  }, {
483
498
  selected: props.selected
484
499
  });
485
- var checkboxElement = props.showSelectAll && /*#__PURE__*/React__namespace.createElement(Checkbox, {
500
+ var checkboxElement = props.showSelectAll ? /*#__PURE__*/React__namespace.createElement(Checkbox, {
486
501
  checked: props.selectAll,
487
502
  onChange: onSelectAll,
488
503
  role: "checkbox",
489
504
  "aria-checked": props.selectAll,
490
505
  icon: itemCheckboxIcon
491
- });
506
+ }) : null;
492
507
  var iconProps = {
493
508
  className: 'p-multiselect-close-icon',
494
509
  'aria-hidden': true
@@ -556,11 +571,11 @@ var MultiSelectItem = /*#__PURE__*/React__namespace.memo(function (props) {
556
571
  var icon = props.checkboxIcon || /*#__PURE__*/React__namespace.createElement(check.CheckIcon, {
557
572
  className: checkboxIconClassName
558
573
  });
559
- var checkboxIcon = utils.IconUtils.getJSXIcon(icon, {
574
+ var checkboxIcon = props.selected ? utils.IconUtils.getJSXIcon(icon, {
560
575
  className: checkboxIconClassName
561
576
  }, {
562
577
  selected: props.selected
563
- });
578
+ }) : null;
564
579
  var content = props.template ? utils.ObjectUtils.getJSXElement(props.template, props.option) : props.label;
565
580
  var tabIndex = props.disabled ? null : props.tabIndex || 0;
566
581
  return /*#__PURE__*/React__namespace.createElement("li", {
@@ -871,9 +886,13 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
871
886
  var isUsed = isOptionValueUsed(option);
872
887
  var selected = isSelected(option);
873
888
  var allowSelect = allowOptionSelect();
874
- if (selected) updateModel(originalEvent, props.value.filter(function (val) {
875
- return !utils.ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
876
- }));else if (allowSelect) updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]));
889
+ if (selected) {
890
+ updateModel(originalEvent, props.value.filter(function (val) {
891
+ return !utils.ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
892
+ }), option);
893
+ } else if (allowSelect) {
894
+ updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]), option);
895
+ }
877
896
  };
878
897
  var onOptionKeyDown = function onOptionKeyDown(event) {
879
898
  var originalEvent = event.originalEvent;
@@ -992,16 +1011,21 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
992
1011
  });
993
1012
  }
994
1013
  }
995
- updateModel(event.originalEvent, value);
1014
+ updateModel(event.originalEvent, value, value);
996
1015
  }
997
1016
  };
998
- var updateModel = function updateModel(event, value) {
1017
+ var updateModel = function updateModel(event, value, selectedOption) {
999
1018
  if (props.onChange) {
1000
1019
  props.onChange({
1001
1020
  originalEvent: event,
1002
1021
  value: value,
1003
- stopPropagation: function stopPropagation() {},
1004
- preventDefault: function preventDefault() {},
1022
+ selectedOption: selectedOption,
1023
+ stopPropagation: function stopPropagation() {
1024
+ event.stopPropagation();
1025
+ },
1026
+ preventDefault: function preventDefault() {
1027
+ event.preventDefault();
1028
+ },
1005
1029
  target: {
1006
1030
  name: props.name,
1007
1031
  id: props.id,
@@ -1223,7 +1247,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1223
1247
  var value = props.value.filter(function (val) {
1224
1248
  return !utils.ObjectUtils.equals(val, item, equalityKey);
1225
1249
  });
1226
- updateModel(event, value);
1250
+ updateModel(event, value, item);
1227
1251
  };
1228
1252
  var getSelectedItemsLabel = function getSelectedItemsLabel() {
1229
1253
  var pattern = /{(.*?)}/;
@@ -1368,7 +1392,7 @@ var MultiSelect = /*#__PURE__*/React__namespace.memo( /*#__PURE__*/React__namesp
1368
1392
  return /*#__PURE__*/React__namespace.createElement("i", {
1369
1393
  className: iconClassName,
1370
1394
  onClick: function onClick(e) {
1371
- return updateModel(e, null);
1395
+ return updateModel(e, null, null);
1372
1396
  }
1373
1397
  }, clearIcon);
1374
1398
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/hooks"),l=require("primereact/overlayservice"),r=require("primereact/tooltip"),o=require("primereact/utils"),i=require("primereact/csstransition"),a=require("primereact/portal"),c=require("primereact/virtualscroller"),u=require("primereact/icons/check"),s=require("primereact/inputtext"),p=require("primereact/ripple"),f=require("primereact/icons/times"),m=require("primereact/icons/search"),d=require("primereact/icons/timescircle"),b=require("primereact/icons/chevrondown");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function y(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var l=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,l.get?l:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var h=y(e),g=v(t);function O(){return O=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},O.apply(this,arguments)}function E(e){return E="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},E(e)}function S(e,t){if("object"!==E(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var l=n.call(e,t||"default");if("object"!==E(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function I(e){var t=S(e,"string");return"symbol"===E(t)?t:String(t)}function k(e,t,n){return(t=I(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function x(e){if(Array.isArray(e))return j(e)}function N(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function w(e,t){if(e){if("string"==typeof e)return j(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)?j(e,t):void 0}}function C(){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 D(e){return x(e)||N(e)||w(e)||C()}function P(e){if(Array.isArray(e))return e}function U(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,r,o,i,a=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=o.call(n)).done)&&(a.push(l.value),a.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw r}}return a}}function F(){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 T(e,t){return P(e)||U(e,t)||w(e,t)||F()}var L={defaultProps:{__TYPE:"MultiSelect",appendTo:null,ariaLabelledBy:null,className:null,closeIcon:null,checkboxIcon:null,dataKey:null,disabled:!1,display:"comma",dropdownIcon:null,emptyFilterMessage:null,filter:!1,filterBy:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,fixedPlaceholder:!1,flex:!1,id:null,itemCheckboxIcon:null,inline:!1,inputId:null,inputRef:null,itemClassName:null,itemTemplate:null,maxSelectedLabels:null,name:null,onBlur:null,onChange:null,onFilter:null,onFocus:null,onHide:null,onSelectAll:null,onShow:null,optionDisabled:null,optionGroupChildren:null,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,overlayVisible:!1,panelClassName:null,panelFooterTemplate:null,panelHeaderTemplate:null,panelStyle:null,placeholder:null,removeIcon:null,resetFilterOnHide:!1,scrollHeight:"200px",selectAll:!1,selectedItemTemplate:null,selectedItemsLabel:"{0} items selected",selectionLimit:null,showClear:!1,showSelectAll:!0,style:null,tabIndex:0,tooltip:null,tooltipOptions:null,transitionOptions:null,useOptionAsValue:!1,value:null,virtualScrollerOptions:null,children:void 0},getProps:function(e){return o.ObjectUtils.getMergedProps(e,L.defaultProps)},getOtherProps:function(e){return o.ObjectUtils.getDiffProps(e,L.defaultProps)}},A={defaultProps:{__TYPE:"Checkbox",id:null,inputRef:null,inputId:null,value:null,name:null,checked:!1,trueValue:!0,falseValue:!1,style:null,className:null,disabled:!1,required:!1,readOnly:!1,tabIndex:null,icon:null,tooltip:null,tooltipOptions:null,onChange:null,onMouseDown:null,onContextMenu:null,children:void 0},getProps:function(e){return o.ObjectUtils.getMergedProps(e,A.defaultProps)},getOtherProps:function(e){return o.ObjectUtils.getDiffProps(e,A.defaultProps)}},H=h.memo(h.forwardRef((function(e,t){var l=A.getProps(e),i=T(h.useState(!1),2),a=i[0],c=i[1],s=h.useRef(null),p=h.useRef(l.inputRef),f=function(e){if(!l.disabled&&!l.readOnly&&l.onChange){var t=m(),n=e.target instanceof HTMLDivElement||e.target instanceof HTMLSpanElement||e.target instanceof Object;if(e.target===p.current||n&&e.target.checked!==t){var r=t?l.falseValue:l.trueValue;l.onChange({originalEvent:e,value:l.value,checked:r,stopPropagation:function(){},preventDefault:function(){},target:{type:"checkbox",name:l.name,id:l.id,value:l.value,checked:r}})}o.DomHandler.focus(p.current),e.preventDefault()}},m=function(){return l.checked===l.trueValue};h.useImperativeHandle(t,(function(){return{props:l,focus:function(){return o.DomHandler.focus(p.current)},getElement:function(){return s.current},getInput:function(){return p.current}}})),h.useEffect((function(){o.ObjectUtils.combinedRefs(p,l.inputRef)}),[p,l.inputRef]),n.useUpdateEffect((function(){p.current.checked=m()}),[l.checked,l.trueValue]);var d=m(),b=o.ObjectUtils.isNotEmpty(l.tooltip),v=A.getOtherProps(l),y=o.ObjectUtils.reduceKeys(v,o.DomHandler.ARIA_PROPS),g=o.classNames("p-checkbox p-component",{"p-checkbox-checked":d,"p-checkbox-disabled":l.disabled,"p-checkbox-focused":a},l.className),E=o.classNames("p-checkbox-box",{"p-highlight":d,"p-disabled":l.disabled,"p-focus":a}),S="p-checkbox-icon p-c",I=o.IconUtils.getJSXIcon(d?l.icon||h.createElement(u.CheckIcon,{className:S}):null,{className:S},{props:l,checked:d});return h.createElement(h.Fragment,null,h.createElement("div",O({ref:s,id:l.id,className:g,style:l.style},v,{onClick:f,onContextMenu:l.onContextMenu,onMouseDown:l.onMouseDown}),h.createElement("div",{className:"p-hidden-accessible"},h.createElement("input",O({ref:p,type:"checkbox",id:l.inputId,name:l.name,tabIndex:l.tabIndex,defaultChecked:d,onFocus:function(){c(!0)},onBlur:function(){c(!1)},onKeyDown:function(e){"Space"!==e.code&&" "!==e.key||f(e)},disabled:l.disabled,readOnly:l.readOnly,required:l.required},y))),h.createElement("div",{className:E},I)),b&&h.createElement(r.Tooltip,O({target:s,content:l.tooltip},l.tooltipOptions)))})));function R(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?R(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):R(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}H.displayName="Checkbox";var q=h.memo((function(e){var n={filter:function(e){return l(e)},reset:function(){return e.resetFilter()}},l=function(t){e.onFilter&&e.onFilter({originalEvent:t,query:t.target.value})},r=function(t){e.onSelectAll&&e.onSelectAll({originalEvent:t,checked:e.selectAll}),t.preventDefault()},i=function(){var t="p-multiselect-filter-icon",r=o.IconUtils.getJSXIcon(e.filterIcon||h.createElement(m.SearchIcon,{className:t}),{className:t},{props:e});if(e.filter){var i=o.classNames("p-multiselect-filter-container"),a=h.createElement("div",{className:i},h.createElement(s.InputText,{ref:e.filterRef,type:"text",role:"textbox",value:e.filterValue,onChange:l,className:"p-multiselect-filter",placeholder:e.filterPlaceholder}),r);if(e.filterTemplate)a=o.ObjectUtils.getJSXElement(e.filterTemplate,{className:i,element:a,filterOptions:n,onFilter:l,filterIconClassName:t,props:e});return h.createElement(h.Fragment,null,a)}return null}(),a="p-checkbox-icon p-c",c=o.IconUtils.getJSXIcon(e.itemCheckboxIcon||h.createElement(u.CheckIcon,{className:a}),{className:a},{selected:e.selected}),d=e.showSelectAll&&h.createElement(H,{checked:e.selectAll,onChange:r,role:"checkbox","aria-checked":e.selectAll,icon:c}),b={className:"p-multiselect-close-icon","aria-hidden":!0},v=o.IconUtils.getJSXIcon(e.closeIcon||h.createElement(f.TimesIcon,b),M({},b),{props:e}),y=h.createElement("button",{type:"button",className:"p-multiselect-close p-link","aria-label":t.localeOption("close"),onClick:e.onClose},v,h.createElement(p.Ripple,null)),g=h.createElement("div",{className:"p-multiselect-header"},d,i,y);return e.template?o.ObjectUtils.getJSXElement(e.template,{className:"p-multiselect-header",checkboxElement:d,checked:e.selectAll,onChange:r,filterElement:i,closeElement:y,closeElementClassName:"p-multiselect-close p-link",closeIconClassName:"p-multiselect-close-icon",onCloseClick:e.onClose,element:g,itemCheckboxIcon:c,props:e}):g}));q.displayName="MultiSelectHeader";var V=h.memo((function(e){var t=o.classNames("p-multiselect-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.className,e.option.className),n=o.classNames("p-checkbox-box",{"p-highlight":e.selected}),l="p-checkbox-icon p-c",r=o.IconUtils.getJSXIcon(e.checkboxIcon||h.createElement(u.CheckIcon,{className:l}),{className:l},{selected:e.selected}),i=e.template?o.ObjectUtils.getJSXElement(e.template,e.option):e.label;return h.createElement("li",{className:t,style:e.style,onClick:function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},tabIndex:e.disabled?null:e.tabIndex||0,onKeyDown:function(t){e.onKeyDown&&e.onKeyDown({originalEvent:t,option:e.option})},role:"option","aria-selected":e.selected},h.createElement("div",{className:"p-checkbox p-component"},h.createElement("div",{className:n},r)),h.createElement("span",null,i),h.createElement(p.Ripple,null))}));function K(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function G(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){k(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}V.displayName="MultiSelectItem";var J=h.memo(h.forwardRef((function(e,n){var l,r,u,s,p,f=h.useRef(null),m=h.useRef(null),d=function(){e.onEnter((function(){if(f.current){var t=e.getSelectedOptionIndex();-1!==t&&setTimeout((function(){return f.current.scrollToIndex(t)}),0)}}))},b=function(){e.onEntered((function(){e.filter&&m.current&&o.DomHandler.focus(m.current,!1)}))},v=function(t){f.current&&f.current.scrollToIndex(0),e.onFilterInputChange&&e.onFilterInputChange(t)},y=function(){if(e.panelFooterTemplate){var t=o.ObjectUtils.getJSXElement(e.panelFooterTemplate,e,e.onOverlayHide);return h.createElement("div",{className:"p-multiselect-footer"},t)}return null},E=function(t,n){return e.getOptionGroupChildren(t).map((function(t,l){var r=e.getOptionLabel(t),o=l+"_"+e.getOptionRenderKey(t),i=e.isOptionDisabled(t),a=i?null:e.tabIndex||0,c=e.isSelected(t);return h.createElement(V,{key:o,label:r,option:t,style:n,template:e.itemTemplate,selected:c,onClick:e.onOptionSelect,onKeyDown:e.onOptionKeyDown,tabIndex:a,disabled:i,className:e.itemClassName,checkboxIcon:e.checkboxIcon})}))},S=function(){var n=o.ObjectUtils.getJSXElement(e.emptyFilterMessage,e)||t.localeOption("emptyFilterMessage");return h.createElement("li",{className:"p-multiselect-empty-message"},n)},I=function(t,n){var l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r={height:l.props?l.props.itemSize:void 0};if(e.optionGroupLabel){var i=e.optionGroupTemplate?o.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,n):e.getOptionGroupLabel(t),a=E(t,r),c=n+"_"+e.getOptionGroupRenderKey(t);return h.createElement(h.Fragment,{key:c},h.createElement("li",{className:"p-multiselect-item-group",style:r},i),a)}var u=e.getOptionLabel(t),s=n+"_"+e.getOptionRenderKey(t),p=e.isOptionDisabled(t),f=p?null:e.tabIndex||0,m=e.isSelected(t);return h.createElement(V,{key:s,label:u,option:t,style:r,template:e.itemTemplate,selected:m,onClick:e.onOptionSelect,onKeyDown:e.onOptionKeyDown,tabIndex:f,disabled:p,className:e.itemClassName,checkboxIcon:e.checkboxIcon})},k=function(){if(e.virtualScrollerOptions){var t=G(G({},e.virtualScrollerOptions),{style:G(G({},e.virtualScrollerOptions.style),{height:e.scrollHeight}),className:o.classNames("p-multiselect-items-wrapper",e.virtualScrollerOptions.className),items:e.visibleOptions,autoSize:!0,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(G(G({},t),{filter:e.filterValue}))},itemTemplate:function(e,t){return e&&I(e,t.index,t)},contentTemplate:function(t){var n=o.classNames("p-multiselect-items p-component",t.className),l=e.visibleOptions&&e.visibleOptions.length||!e.hasFilter?t.children:S();return h.createElement("ul",{ref:t.contentRef,style:t.style,className:n,role:"listbox","aria-multiselectable":!0},l)}});return h.createElement(c.VirtualScroller,O({ref:f},t))}var n=o.ObjectUtils.isNotEmpty(e.visibleOptions)?e.visibleOptions.map(I):e.hasFilter?S():null;return h.createElement("div",{className:"p-multiselect-items-wrapper",style:{maxHeight:e.scrollHeight}},h.createElement("ul",{className:"p-multiselect-items p-component",role:"listbox","aria-multiselectable":!0},n))},j=(l=e.allowOptionSelect(),r=o.classNames("p-multiselect-panel p-component",{"p-multiselect-inline":e.inline,"p-multiselect-flex":e.flex,"p-multiselect-limited":!l,"p-input-filled":"filled"===g.default.inputStyle,"p-ripple-disabled":!1===g.default.ripple},e.panelClassName),u=h.createElement(q,{filter:e.filter,filterRef:m,filterValue:e.filterValue,filterTemplate:e.filterTemplate,onFilter:v,filterPlaceholder:e.filterPlaceholder,onClose:e.onCloseClick,showSelectAll:e.showSelectAll,selectAll:e.isAllSelected(),onSelectAll:e.onSelectAll,template:e.panelHeaderTemplate,resetFilter:e.resetFilter,closeIcon:e.closeIcon,filterIcon:e.filterIcon,itemCheckboxIcon:e.itemCheckboxIcon}),s=k(),p=y(),e.inline?h.createElement("div",{ref:n,className:r,style:e.panelStyle,onClick:e.onClick},s,p):h.createElement(i.CSSTransition,{nodeRef:n,classNames:"p-connected-overlay",in:e.in,timeout:{enter:120,exit:100},options:e.transitionOptions,unmountOnExit:!0,onEnter:d,onEntered:b,onExit:e.onExit,onExited:e.onExited},h.createElement("div",{ref:n,className:r,style:e.panelStyle,onClick:e.onClick},u,s,p)));return e.inline?j:h.createElement(a.Portal,{element:j,appendTo:e.appendTo})})));function X(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function _(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?X(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):X(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function B(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=z(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,r=function(){};return{s:r,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw o}}}}function z(e,t){if(e){if("string"==typeof e)return Z(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)?Z(e,t):void 0}}function Z(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}J.displayName="MultiSelectPanel";var Y=h.memo(h.forwardRef((function(e,i){var a=L.getProps(e),c=T(h.useState(""),2),u=c[0],s=c[1],p=T(h.useState(!1),2),m=p[0],v=p[1],y=T(h.useState(a.inline),2),E=y[0],S=y[1],I=h.useRef(null),j=h.useRef(a.inputRef),x=h.useRef(null),N=h.useRef(null),w=u&&u.trim().length>0,C=o.ObjectUtils.isEmpty(a.value),P=a.optionValue?null:a.dataKey,U=T(n.useOverlayListener({target:I,overlay:N,listener:function(e,t){t.valid&&("outside"===t.type?!Z(e)&&X():X())},when:E}),2),F=U[0],A=U[1],H=function(){return!a.selectionLimit||!a.value||a.value&&a.value.length<a.selectionLimit},R=function(e){var t=e.originalEvent,n=e.option;if(!a.disabled&&!re(n)){var l=ne(n),r=oe(n),i=Q(n),c=H();i?V(t,a.value.filter((function(e){return!o.ObjectUtils.equals(r?e:ne(e),l,P)}))):c&&V(t,[].concat(D(a.value||[]),[l]))}},M=function e(t){var n=t.nextElementSibling;return n?o.DomHandler.hasClass(n,"p-disabled")||o.DomHandler.hasClass(n,"p-multiselect-item-group")?e(n):n:null},q=function e(t){var n=t.previousElementSibling;return n?o.DomHandler.hasClass(n,"p-disabled")||o.DomHandler.hasClass(n,"p-multiselect-item-group")?e(n):n:null},V=function(e,t){a.onChange&&a.onChange({originalEvent:e,value:t,stopPropagation:function(){},preventDefault:function(){},target:{name:a.name,id:a.id,value:t}})},K=function(){s(""),a.onFilter&&a.onFilter({filter:""})},G=function(){S(!0)},X=function(){S(!1)},z=function(){o.DomHandler.alignOverlay(N.current,x.current.parentElement,a.appendTo||g.default.appendTo)},Z=function(e){return o.DomHandler.hasClass(e.target,"p-multiselect-clear-icon")},Y=function(e){return N.current&&N.current.contains(e.target)},$=function(e,t){return t.findIndex((function(t){return e.some((function(e){return o.ObjectUtils.equals(e,ne(t),P)}))}))},Q=function(e){if(a.value){var t=ne(e),n=oe(e);return a.value.some((function(e){return o.ObjectUtils.equals(n?e:ne(e),t,P)}))}return!1},W=function(e){var t;if(a.options)if(a.optionGroupLabel){var n,l=B(a.options);try{for(l.s();!(n=l.n()).done;){if(t=ee(e,le(n.value)))break}}catch(e){l.e(e)}finally{l.f()}}else t=ee(e,a.options);return t?te(t):null},ee=function(e,t){return t.find((function(t){return o.ObjectUtils.equals(ne(t),e,P)}))},te=function(e){return a.optionLabel?o.ObjectUtils.resolveFieldData(e,a.optionLabel):e&&void 0!==e.label?e.label:e},ne=function(e){if(a.useOptionAsValue)return e;if(a.optionValue){var t=o.ObjectUtils.resolveFieldData(e,a.optionValue);return null!==t?t:e}return e&&void 0!==e.value?e.value:e},le=function(e){return o.ObjectUtils.resolveFieldData(e,a.optionGroupChildren)},re=function(e){return a.optionDisabled?o.ObjectUtils.isFunction(a.optionDisabled)?a.optionDisabled(e):o.ObjectUtils.resolveFieldData(e,a.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},oe=function(e){return!a.useOptionAsValue&&a.optionValue||e&&void 0!==e.value},ie=function(e,t){var n=a.value.filter((function(e){return!o.ObjectUtils.equals(e,t,P)}));V(e,n)},ae=function(){var e=/{(.*?)}/;return e.test(a.selectedItemsLabel)?a.selectedItemsLabel.replace(a.selectedItemsLabel.match(e)[0],a.value.length+""):a.selectedItemsLabel},ce=function(){if(!C&&!a.fixedPlaceholder)return o.ObjectUtils.isNotEmpty(a.maxSelectedLabels)&&a.value.length>a.maxSelectedLabels?ae():a.value.reduce((function(e,t,n){return e+(0!==n?",":"")+W(t)}),"")};h.useImperativeHandle(i,(function(){return{props:a,show:G,hide:X,focus:function(){return o.DomHandler.focus(j.current)},getElement:function(){return I.current},getOverlay:function(){return N.current},getInput:function(){return j.current}}})),h.useEffect((function(){o.ObjectUtils.combinedRefs(j,a.inputRef)}),[j,a.inputRef]),h.useEffect((function(){setTimeout((function(){a.overlayVisible?G():X()}),100)}),[a.overlayVisible]),n.useUpdateEffect((function(){E&&w&&z()}),[E,w]),n.useUnmountEffect((function(){o.ZIndexUtils.clear(N.current)}));var ue=function(){if(w){var e=u.trim().toLocaleLowerCase(a.filterLocale),n=a.filterBy?a.filterBy.split(","):[a.optionLabel||"label"];if(a.optionGroupLabel){var l,r=[],o=B(a.options);try{for(o.s();!(l=o.n()).done;){var i=l.value,c=t.FilterService.filter(le(i),n,e,a.filterMatchMode,a.filterLocale);c&&c.length&&r.push(_(_({},i),k({},a.optionGroupChildren,c)))}}catch(e){o.e(e)}finally{o.f()}return r}return t.FilterService.filter(a.options,n,e,a.filterMatchMode,a.filterLocale)}return a.options}(),se=o.ObjectUtils.isNotEmpty(a.tooltip),pe=L.getOtherProps(a),fe=o.ObjectUtils.reduceKeys(pe,o.DomHandler.ARIA_PROPS),me=o.classNames("p-multiselect p-component p-inputwrapper",{"p-multiselect-chip":"chip"===a.display,"p-disabled":a.disabled,"p-multiselect-clearable":a.showClear&&!a.disabled,"p-focus":m,"p-inputwrapper-filled":o.ObjectUtils.isNotEmpty(a.value),"p-inputwrapper-focus":m||E},a.className),de="p-multiselect-trigger-icon p-c",be=h.createElement("div",{className:"p-multiselect-trigger"},a.dropdownIcon?o.IconUtils.getJSXIcon(a.dropdownIcon,{className:de},{props:a}):h.createElement(b.ChevronDownIcon,{className:de})),ve=!a.inline&&function(){var e=a.selectedItemTemplate?C?o.ObjectUtils.getJSXElement(a.selectedItemTemplate):o.ObjectUtils.isNotEmpty(a.maxSelectedLabels)&&a.value.length>a.maxSelectedLabels?ae():a.value.map((function(e,t){var n=o.ObjectUtils.getJSXElement(a.selectedItemTemplate,e);return h.createElement(h.Fragment,{key:t},n)})):"chip"!==a.display||C?ce():a.value.slice(0,a.maxSelectedLabels||a.value.length).map((function(e){var t=W(e),n=!a.disabled&&(a.removeIcon?o.IconUtils.getJSXIcon(a.removeIcon,{className:"p-multiselect-token-icon",onClick:function(t){return ie(t,e)}},{props:a}):h.createElement(d.TimesCircleIcon,{className:"p-multiselect-token-icon",onClick:function(t){return ie(t,e)}}));return h.createElement("div",{className:"p-multiselect-token",key:t},h.createElement("span",{className:"p-multiselect-token-label"},t),n)})),t=o.classNames("p-multiselect-label",{"p-placeholder":C&&a.placeholder,"p-multiselect-label-empty":C&&!a.placeholder&&!a.selectedItemTemplate,"p-multiselect-items-label":!C&&"chip"!==a.display&&a.value.length>a.maxSelectedLabels});return h.createElement("div",{ref:x,className:"p-multiselect-label-container"},h.createElement("div",{className:t},e||a.placeholder||"empty"))}(),ye=!a.inline&&function(){var e="p-multiselect-clear-icon",t=o.IconUtils.getJSXIcon(a.clearIcon||h.createElement(f.TimesIcon,{className:e}),{className:e},{props:a});return C||!a.showClear||a.disabled?null:h.createElement("i",{className:e,onClick:function(e){return V(e,null)}},t)}();return h.createElement(h.Fragment,null,h.createElement("div",O({ref:I,id:a.id,style:a.style,className:me},pe,{onClick:function(e){a.inline||a.disabled||Y(e)||o.DomHandler.hasClass(e.target,"p-multiselect-token-icon")||Z(e)||(E?X():G(),o.DomHandler.focus(j.current),e.preventDefault())}}),h.createElement("div",{className:"p-hidden-accessible"},h.createElement("input",O({ref:j,id:a.inputId,name:a.name,readOnly:!0,type:"text",onFocus:function(e){v(!0),a.onFocus&&a.onFocus(e)},onBlur:function(e){v(!1),a.onBlur&&a.onBlur(e)},onKeyDown:function(e){switch(e.which){case 40:if(a.inline)break;!E&&e.altKey&&(G(),e.preventDefault());break;case 32:if(a.inline)break;E?X():G(),e.preventDefault();break;case 27:if(a.inline)break;X();break;case 9:if(E){var t=o.DomHandler.getFirstFocusableElement(N.current);t&&(t.focus(),e.preventDefault())}}},role:"listbox","aria-expanded":E,disabled:a.disabled,tabIndex:a.tabIndex},fe))),!a.inline&&h.createElement(h.Fragment,null,ve,ye,be),h.createElement(J,O({ref:N,visibleOptions:ue},a,{onClick:function(e){l.OverlayService.emit("overlay-click",{originalEvent:e,target:I.current})},onOverlayHide:X,filterValue:u,hasFilter:w,onFilterInputChange:function(e){var t=e.query;s(t),a.onFilter&&a.onFilter({originalEvent:e,filter:t})},resetFilter:K,onCloseClick:function(e){X(),o.DomHandler.focus(j.current),e.preventDefault(),e.stopPropagation()},onSelectAll:function(e){if(a.onSelectAll)a.onSelectAll(e);else{var t=null;if(e.checked){if(t=[],ue){var n=ue.filter((function(e){return re(e)&&Q(e)}));t=n.map((function(e){return ne(e)}))}}else if(ue){var l=ue.filter((function(e){return!re(e)}));a.optionGroupLabel?(t=[],l.forEach((function(e){return t=[].concat(D(t),D(le(e).filter((function(e){return!re(e)})).map((function(e){return ne(e)}))))}))):t=l.map((function(e){return ne(e)}))}V(e.originalEvent,t)}},getOptionLabel:te,getOptionRenderKey:function(e){return a.dataKey?o.ObjectUtils.resolveFieldData(e,a.dataKey):te(e)},isOptionDisabled:re,getOptionGroupChildren:le,getOptionGroupLabel:function(e){return o.ObjectUtils.resolveFieldData(e,a.optionGroupLabel)},getOptionGroupRenderKey:function(e){return o.ObjectUtils.resolveFieldData(e,a.optionGroupLabel)},isSelected:Q,getSelectedOptionIndex:function(){if(null!=a.value&&a.options){if(a.optionGroupLabel){var e=0,t=a.options.findIndex((function(t,n){return(e=n)&&-1!==$(a.value,le(t))}));return-1!==t?{group:e,option:t}:-1}return $(a.value,a.options)}return-1},isAllSelected:function(){if(a.onSelectAll)return a.selectAll;if(o.ObjectUtils.isEmpty(ue))return!1;var e=ue.filter((function(e){return!re(e)}));if(!a.optionGroupLabel)return!e.some((function(e){return!Q(e)}));var t,n=B(e);try{for(n.s();!(t=n.n()).done;){return!le(t.value).filter((function(e){return!re(e)})).some((function(e){return!Q(e)}))}}catch(e){n.e(e)}finally{n.f()}return!0},onOptionSelect:R,allowOptionSelect:H,onOptionKeyDown:function(e){var t=e.originalEvent,n=t.currentTarget;switch(t.which){case 40:var l=M(n);l&&l.focus(),t.preventDefault();break;case 38:var r=q(n);r&&r.focus(),t.preventDefault();break;case 13:case 32:R(e),t.preventDefault();break;case 27:X(),o.DomHandler.focus(j.current)}},in:E,onEnter:function(e){var t;o.ZIndexUtils.set("overlay",N.current,g.default.autoZIndex,g.default.zIndex.overlay),z(),(t=o.DomHandler.findSingle(N.current,"li.p-highlight"))&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"nearest"}),e&&e()},onEntered:function(e){e&&e(),F(),a.onShow&&a.onShow()},onExit:function(){A()},onExited:function(){a.filter&&a.resetFilterOnHide&&K(),o.ZIndexUtils.clear(N.current),a.onHide&&a.onHide()}}))),se&&h.createElement(r.Tooltip,O({target:I,content:a.tooltip},a.tooltipOptions)))})));Y.displayName="MultiSelect",exports.MultiSelect=Y;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),n=require("primereact/hooks"),l=require("primereact/icons/chevrondown"),r=require("primereact/icons/times"),o=require("primereact/icons/timescircle"),i=require("primereact/overlayservice"),a=require("primereact/tooltip"),c=require("primereact/utils"),u=require("primereact/csstransition"),s=require("primereact/portal"),p=require("primereact/virtualscroller"),f=require("primereact/icons/check"),m=require("primereact/inputtext"),d=require("primereact/ripple"),b=require("primereact/icons/search");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function y(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var l=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,l.get?l:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var h=y(e),g=v(t);function O(){return O=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},O.apply(this,arguments)}function E(e){return E="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},E(e)}function S(e,t){if("object"!==E(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var l=n.call(e,t||"default");if("object"!==E(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function I(e){var t=S(e,"string");return"symbol"===E(t)?t:String(t)}function k(e,t,n){return(t=I(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function x(e){if(Array.isArray(e))return j(e)}function N(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function C(e,t){if(e){if("string"==typeof e)return j(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)?j(e,t):void 0}}function w(){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 D(e){return x(e)||N(e)||C(e)||w()}function P(e){if(Array.isArray(e))return e}function U(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,r,o,i,a=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=o.call(n)).done)&&(a.push(l.value),a.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw r}}return a}}function F(){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 T(e,t){return P(e)||U(e,t)||C(e,t)||F()}var L={defaultProps:{__TYPE:"MultiSelect",appendTo:null,ariaLabelledBy:null,className:null,closeIcon:null,checkboxIcon:null,dataKey:null,disabled:!1,display:"comma",dropdownIcon:null,emptyFilterMessage:null,filter:!1,filterBy:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,fixedPlaceholder:!1,flex:!1,id:null,itemCheckboxIcon:null,inline:!1,inputId:null,inputRef:null,itemClassName:null,itemTemplate:null,maxSelectedLabels:null,name:null,onBlur:null,onChange:null,onFilter:null,onFocus:null,onHide:null,onSelectAll:null,onShow:null,optionDisabled:null,optionGroupChildren:null,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,overlayVisible:!1,panelClassName:null,panelFooterTemplate:null,panelHeaderTemplate:null,panelStyle:null,placeholder:null,removeIcon:null,resetFilterOnHide:!1,scrollHeight:"200px",selectAll:!1,selectedItemTemplate:null,selectedItemsLabel:"{0} items selected",selectionLimit:null,showClear:!1,showSelectAll:!0,style:null,tabIndex:0,tooltip:null,tooltipOptions:null,transitionOptions:null,useOptionAsValue:!1,value:null,virtualScrollerOptions:null,children:void 0},getProps:function(e){return c.ObjectUtils.getMergedProps(e,L.defaultProps)},getOtherProps:function(e){return c.ObjectUtils.getDiffProps(e,L.defaultProps)}},A={defaultProps:{__TYPE:"Checkbox",id:null,inputRef:null,inputId:null,value:null,name:null,checked:!1,trueValue:!0,falseValue:!1,style:null,className:null,disabled:!1,required:!1,readOnly:!1,tabIndex:null,icon:null,tooltip:null,tooltipOptions:null,onChange:null,onClick:null,onMouseDown:null,onContextMenu:null,children:void 0},getProps:function(e){return c.ObjectUtils.getMergedProps(e,A.defaultProps)},getOtherProps:function(e){return c.ObjectUtils.getDiffProps(e,A.defaultProps)}},H=h.memo(h.forwardRef((function(e,t){var l=A.getProps(e),r=T(h.useState(!1),2),o=r[0],i=r[1],u=h.useRef(null),s=h.useRef(l.inputRef),p=function(e){if(!l.disabled&&!l.readOnly&&(l.onChange||l.onClick)){var t=m(),n=e.target instanceof HTMLDivElement||e.target instanceof HTMLSpanElement||e.target instanceof Object;if(e.target===s.current||n&&e.target.checked!==t){var r=t?l.falseValue:l.trueValue,o={originalEvent:e,value:l.value,checked:r,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{type:"checkbox",name:l.name,id:l.id,value:l.value,checked:r}};if(l.onClick&&l.onClick(o),e.defaultPrevented)return;l.onChange&&l.onChange(o)}c.DomHandler.focus(s.current),e.preventDefault()}},m=function(){return l.checked===l.trueValue};h.useImperativeHandle(t,(function(){return{props:l,focus:function(){return c.DomHandler.focus(s.current)},getElement:function(){return u.current},getInput:function(){return s.current}}})),h.useEffect((function(){c.ObjectUtils.combinedRefs(s,l.inputRef)}),[s,l.inputRef]),n.useUpdateEffect((function(){s.current.checked=m()}),[l.checked,l.trueValue]);var d=m(),b=c.ObjectUtils.isNotEmpty(l.tooltip),v=A.getOtherProps(l),y=c.ObjectUtils.reduceKeys(v,c.DomHandler.ARIA_PROPS),g=c.classNames("p-checkbox p-component",{"p-checkbox-checked":d,"p-checkbox-disabled":l.disabled,"p-checkbox-focused":o},l.className),E=c.classNames("p-checkbox-box",{"p-highlight":d,"p-disabled":l.disabled,"p-focus":o}),S="p-checkbox-icon p-c",I=c.IconUtils.getJSXIcon(d?l.icon||h.createElement(f.CheckIcon,{className:S}):null,{className:S},{props:l,checked:d});return h.createElement(h.Fragment,null,h.createElement("div",O({ref:u,id:l.id,className:g,style:l.style},v,{onPointerUp:p,onContextMenu:l.onContextMenu,onMouseDown:l.onMouseDown}),h.createElement("div",{className:"p-hidden-accessible"},h.createElement("input",O({ref:s,type:"checkbox",id:l.inputId,name:l.name,tabIndex:l.tabIndex,defaultChecked:d,onFocus:function(){i(!0)},onBlur:function(){i(!1)},onKeyDown:function(e){"Space"!==e.code&&" "!==e.key||p(e)},disabled:l.disabled,readOnly:l.readOnly,required:l.required},y))),h.createElement("div",{className:E},I)),b&&h.createElement(a.Tooltip,O({target:u,content:l.tooltip},l.tooltipOptions)))})));function R(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?R(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):R(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}H.displayName="Checkbox";var q=h.memo((function(e){var n={filter:function(e){return l(e)},reset:function(){return e.resetFilter()}},l=function(t){e.onFilter&&e.onFilter({originalEvent:t,query:t.target.value})},o=function(t){e.onSelectAll&&e.onSelectAll({originalEvent:t,checked:e.selectAll}),t.preventDefault()},i=function(){var t="p-multiselect-filter-icon",r=c.IconUtils.getJSXIcon(e.filterIcon||h.createElement(b.SearchIcon,{className:t}),{className:t},{props:e});if(e.filter){var o=c.classNames("p-multiselect-filter-container"),i=h.createElement("div",{className:o},h.createElement(m.InputText,{ref:e.filterRef,type:"text",role:"textbox",value:e.filterValue,onChange:l,className:"p-multiselect-filter",placeholder:e.filterPlaceholder}),r);if(e.filterTemplate)i=c.ObjectUtils.getJSXElement(e.filterTemplate,{className:o,element:i,filterOptions:n,onFilter:l,filterIconClassName:t,props:e});return h.createElement(h.Fragment,null,i)}return null}(),a="p-checkbox-icon p-c",u=c.IconUtils.getJSXIcon(e.itemCheckboxIcon||h.createElement(f.CheckIcon,{className:a}),{className:a},{selected:e.selected}),s=e.showSelectAll?h.createElement(H,{checked:e.selectAll,onChange:o,role:"checkbox","aria-checked":e.selectAll,icon:u}):null,p={className:"p-multiselect-close-icon","aria-hidden":!0},v=c.IconUtils.getJSXIcon(e.closeIcon||h.createElement(r.TimesIcon,p),M({},p),{props:e}),y=h.createElement("button",{type:"button",className:"p-multiselect-close p-link","aria-label":t.localeOption("close"),onClick:e.onClose},v,h.createElement(d.Ripple,null)),g=h.createElement("div",{className:"p-multiselect-header"},s,i,y);return e.template?c.ObjectUtils.getJSXElement(e.template,{className:"p-multiselect-header",checkboxElement:s,checked:e.selectAll,onChange:o,filterElement:i,closeElement:y,closeElementClassName:"p-multiselect-close p-link",closeIconClassName:"p-multiselect-close-icon",onCloseClick:e.onClose,element:g,itemCheckboxIcon:u,props:e}):g}));q.displayName="MultiSelectHeader";var V=h.memo((function(e){var t=c.classNames("p-multiselect-item",{"p-highlight":e.selected,"p-disabled":e.disabled},e.className,e.option.className),n=c.classNames("p-checkbox-box",{"p-highlight":e.selected}),l="p-checkbox-icon p-c",r=e.selected?c.IconUtils.getJSXIcon(e.checkboxIcon||h.createElement(f.CheckIcon,{className:l}),{className:l},{selected:e.selected}):null,o=e.template?c.ObjectUtils.getJSXElement(e.template,e.option):e.label;return h.createElement("li",{className:t,style:e.style,onClick:function(t){e.onClick&&e.onClick({originalEvent:t,option:e.option}),t.preventDefault()},tabIndex:e.disabled?null:e.tabIndex||0,onKeyDown:function(t){e.onKeyDown&&e.onKeyDown({originalEvent:t,option:e.option})},role:"option","aria-selected":e.selected},h.createElement("div",{className:"p-checkbox p-component"},h.createElement("div",{className:n},r)),h.createElement("span",null,o),h.createElement(d.Ripple,null))}));function K(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function G(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){k(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}V.displayName="MultiSelectItem";var J=h.memo(h.forwardRef((function(e,n){var l,r,o,i,a,f=h.useRef(null),m=h.useRef(null),d=function(){e.onEnter((function(){if(f.current){var t=e.getSelectedOptionIndex();-1!==t&&setTimeout((function(){return f.current.scrollToIndex(t)}),0)}}))},b=function(){e.onEntered((function(){e.filter&&m.current&&c.DomHandler.focus(m.current,!1)}))},v=function(t){f.current&&f.current.scrollToIndex(0),e.onFilterInputChange&&e.onFilterInputChange(t)},y=function(){if(e.panelFooterTemplate){var t=c.ObjectUtils.getJSXElement(e.panelFooterTemplate,e,e.onOverlayHide);return h.createElement("div",{className:"p-multiselect-footer"},t)}return null},E=function(t,n){return e.getOptionGroupChildren(t).map((function(t,l){var r=e.getOptionLabel(t),o=l+"_"+e.getOptionRenderKey(t),i=e.isOptionDisabled(t),a=i?null:e.tabIndex||0,c=e.isSelected(t);return h.createElement(V,{key:o,label:r,option:t,style:n,template:e.itemTemplate,selected:c,onClick:e.onOptionSelect,onKeyDown:e.onOptionKeyDown,tabIndex:a,disabled:i,className:e.itemClassName,checkboxIcon:e.checkboxIcon})}))},S=function(){var n=c.ObjectUtils.getJSXElement(e.emptyFilterMessage,e)||t.localeOption("emptyFilterMessage");return h.createElement("li",{className:"p-multiselect-empty-message"},n)},I=function(t,n){var l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r={height:l.props?l.props.itemSize:void 0};if(e.optionGroupLabel){var o=e.optionGroupTemplate?c.ObjectUtils.getJSXElement(e.optionGroupTemplate,t,n):e.getOptionGroupLabel(t),i=E(t,r),a=n+"_"+e.getOptionGroupRenderKey(t);return h.createElement(h.Fragment,{key:a},h.createElement("li",{className:"p-multiselect-item-group",style:r},o),i)}var u=e.getOptionLabel(t),s=n+"_"+e.getOptionRenderKey(t),p=e.isOptionDisabled(t),f=p?null:e.tabIndex||0,m=e.isSelected(t);return h.createElement(V,{key:s,label:u,option:t,style:r,template:e.itemTemplate,selected:m,onClick:e.onOptionSelect,onKeyDown:e.onOptionKeyDown,tabIndex:f,disabled:p,className:e.itemClassName,checkboxIcon:e.checkboxIcon})},k=function(){if(e.virtualScrollerOptions){var t=G(G({},e.virtualScrollerOptions),{style:G(G({},e.virtualScrollerOptions.style),{height:e.scrollHeight}),className:c.classNames("p-multiselect-items-wrapper",e.virtualScrollerOptions.className),items:e.visibleOptions,autoSize:!0,onLazyLoad:function(t){return e.virtualScrollerOptions.onLazyLoad(G(G({},t),{filter:e.filterValue}))},itemTemplate:function(e,t){return e&&I(e,t.index,t)},contentTemplate:function(t){var n=c.classNames("p-multiselect-items p-component",t.className),l=e.visibleOptions&&e.visibleOptions.length||!e.hasFilter?t.children:S();return h.createElement("ul",{ref:t.contentRef,style:t.style,className:n,role:"listbox","aria-multiselectable":!0},l)}});return h.createElement(p.VirtualScroller,O({ref:f},t))}var n=c.ObjectUtils.isNotEmpty(e.visibleOptions)?e.visibleOptions.map(I):e.hasFilter?S():null;return h.createElement("div",{className:"p-multiselect-items-wrapper",style:{maxHeight:e.scrollHeight}},h.createElement("ul",{className:"p-multiselect-items p-component",role:"listbox","aria-multiselectable":!0},n))},j=(l=e.allowOptionSelect(),r=c.classNames("p-multiselect-panel p-component",{"p-multiselect-inline":e.inline,"p-multiselect-flex":e.flex,"p-multiselect-limited":!l,"p-input-filled":"filled"===g.default.inputStyle,"p-ripple-disabled":!1===g.default.ripple},e.panelClassName),o=h.createElement(q,{filter:e.filter,filterRef:m,filterValue:e.filterValue,filterTemplate:e.filterTemplate,onFilter:v,filterPlaceholder:e.filterPlaceholder,onClose:e.onCloseClick,showSelectAll:e.showSelectAll,selectAll:e.isAllSelected(),onSelectAll:e.onSelectAll,template:e.panelHeaderTemplate,resetFilter:e.resetFilter,closeIcon:e.closeIcon,filterIcon:e.filterIcon,itemCheckboxIcon:e.itemCheckboxIcon}),i=k(),a=y(),e.inline?h.createElement("div",{ref:n,className:r,style:e.panelStyle,onClick:e.onClick},i,a):h.createElement(u.CSSTransition,{nodeRef:n,classNames:"p-connected-overlay",in:e.in,timeout:{enter:120,exit:100},options:e.transitionOptions,unmountOnExit:!0,onEnter:d,onEntered:b,onExit:e.onExit,onExited:e.onExited},h.createElement("div",{ref:n,className:r,style:e.panelStyle,onClick:e.onClick},o,i,a)));return e.inline?j:h.createElement(s.Portal,{element:j,appendTo:e.appendTo})})));function X(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function _(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?X(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):X(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function B(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=z(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,r=function(){};return{s:r,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw o}}}}function z(e,t){if(e){if("string"==typeof e)return Z(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)?Z(e,t):void 0}}function Z(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}J.displayName="MultiSelectPanel";var Y=h.memo(h.forwardRef((function(e,u){var s=L.getProps(e),p=T(h.useState(""),2),f=p[0],m=p[1],d=T(h.useState(!1),2),b=d[0],v=d[1],y=T(h.useState(s.inline),2),E=y[0],S=y[1],I=h.useRef(null),j=h.useRef(s.inputRef),x=h.useRef(null),N=h.useRef(null),C=f&&f.trim().length>0,w=c.ObjectUtils.isEmpty(s.value),P=s.optionValue?null:s.dataKey,U=T(n.useOverlayListener({target:I,overlay:N,listener:function(e,t){t.valid&&("outside"===t.type?!Z(e)&&X():X())},when:E}),2),F=U[0],A=U[1],H=function(){return!s.selectionLimit||!s.value||s.value&&s.value.length<s.selectionLimit},R=function(e){var t=e.originalEvent,n=e.option;if(!s.disabled&&!re(n)){var l=ne(n),r=oe(n),o=Q(n),i=H();o?V(t,s.value.filter((function(e){return!c.ObjectUtils.equals(r?e:ne(e),l,P)})),n):i&&V(t,[].concat(D(s.value||[]),[l]),n)}},M=function e(t){var n=t.nextElementSibling;return n?c.DomHandler.hasClass(n,"p-disabled")||c.DomHandler.hasClass(n,"p-multiselect-item-group")?e(n):n:null},q=function e(t){var n=t.previousElementSibling;return n?c.DomHandler.hasClass(n,"p-disabled")||c.DomHandler.hasClass(n,"p-multiselect-item-group")?e(n):n:null},V=function(e,t,n){s.onChange&&s.onChange({originalEvent:e,value:t,selectedOption:n,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:s.name,id:s.id,value:t}})},K=function(){m(""),s.onFilter&&s.onFilter({filter:""})},G=function(){S(!0)},X=function(){S(!1)},z=function(){c.DomHandler.alignOverlay(N.current,x.current.parentElement,s.appendTo||g.default.appendTo)},Z=function(e){return c.DomHandler.hasClass(e.target,"p-multiselect-clear-icon")},Y=function(e){return N.current&&N.current.contains(e.target)},$=function(e,t){return t.findIndex((function(t){return e.some((function(e){return c.ObjectUtils.equals(e,ne(t),P)}))}))},Q=function(e){if(s.value){var t=ne(e),n=oe(e);return s.value.some((function(e){return c.ObjectUtils.equals(n?e:ne(e),t,P)}))}return!1},W=function(e){var t;if(s.options)if(s.optionGroupLabel){var n,l=B(s.options);try{for(l.s();!(n=l.n()).done;){if(t=ee(e,le(n.value)))break}}catch(e){l.e(e)}finally{l.f()}}else t=ee(e,s.options);return t?te(t):null},ee=function(e,t){return t.find((function(t){return c.ObjectUtils.equals(ne(t),e,P)}))},te=function(e){return s.optionLabel?c.ObjectUtils.resolveFieldData(e,s.optionLabel):e&&void 0!==e.label?e.label:e},ne=function(e){if(s.useOptionAsValue)return e;if(s.optionValue){var t=c.ObjectUtils.resolveFieldData(e,s.optionValue);return null!==t?t:e}return e&&void 0!==e.value?e.value:e},le=function(e){return c.ObjectUtils.resolveFieldData(e,s.optionGroupChildren)},re=function(e){return s.optionDisabled?c.ObjectUtils.isFunction(s.optionDisabled)?s.optionDisabled(e):c.ObjectUtils.resolveFieldData(e,s.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},oe=function(e){return!s.useOptionAsValue&&s.optionValue||e&&void 0!==e.value},ie=function(e,t){var n=s.value.filter((function(e){return!c.ObjectUtils.equals(e,t,P)}));V(e,n,t)},ae=function(){var e=/{(.*?)}/;return e.test(s.selectedItemsLabel)?s.selectedItemsLabel.replace(s.selectedItemsLabel.match(e)[0],s.value.length+""):s.selectedItemsLabel},ce=function(){if(!w&&!s.fixedPlaceholder)return c.ObjectUtils.isNotEmpty(s.maxSelectedLabels)&&s.value.length>s.maxSelectedLabels?ae():s.value.reduce((function(e,t,n){return e+(0!==n?",":"")+W(t)}),"")};h.useImperativeHandle(u,(function(){return{props:s,show:G,hide:X,focus:function(){return c.DomHandler.focus(j.current)},getElement:function(){return I.current},getOverlay:function(){return N.current},getInput:function(){return j.current}}})),h.useEffect((function(){c.ObjectUtils.combinedRefs(j,s.inputRef)}),[j,s.inputRef]),h.useEffect((function(){setTimeout((function(){s.overlayVisible?G():X()}),100)}),[s.overlayVisible]),n.useUpdateEffect((function(){E&&C&&z()}),[E,C]),n.useUnmountEffect((function(){c.ZIndexUtils.clear(N.current)}));var ue=function(){if(C){var e=f.trim().toLocaleLowerCase(s.filterLocale),n=s.filterBy?s.filterBy.split(","):[s.optionLabel||"label"];if(s.optionGroupLabel){var l,r=[],o=B(s.options);try{for(o.s();!(l=o.n()).done;){var i=l.value,a=t.FilterService.filter(le(i),n,e,s.filterMatchMode,s.filterLocale);a&&a.length&&r.push(_(_({},i),k({},s.optionGroupChildren,a)))}}catch(e){o.e(e)}finally{o.f()}return r}return t.FilterService.filter(s.options,n,e,s.filterMatchMode,s.filterLocale)}return s.options}(),se=c.ObjectUtils.isNotEmpty(s.tooltip),pe=L.getOtherProps(s),fe=c.ObjectUtils.reduceKeys(pe,c.DomHandler.ARIA_PROPS),me=c.classNames("p-multiselect p-component p-inputwrapper",{"p-multiselect-chip":"chip"===s.display,"p-disabled":s.disabled,"p-multiselect-clearable":s.showClear&&!s.disabled,"p-focus":b,"p-inputwrapper-filled":c.ObjectUtils.isNotEmpty(s.value),"p-inputwrapper-focus":b||E},s.className),de="p-multiselect-trigger-icon p-c",be=h.createElement("div",{className:"p-multiselect-trigger"},s.dropdownIcon?c.IconUtils.getJSXIcon(s.dropdownIcon,{className:de},{props:s}):h.createElement(l.ChevronDownIcon,{className:de})),ve=!s.inline&&function(){var e=s.selectedItemTemplate?w?c.ObjectUtils.getJSXElement(s.selectedItemTemplate):c.ObjectUtils.isNotEmpty(s.maxSelectedLabels)&&s.value.length>s.maxSelectedLabels?ae():s.value.map((function(e,t){var n=c.ObjectUtils.getJSXElement(s.selectedItemTemplate,e);return h.createElement(h.Fragment,{key:t},n)})):"chip"!==s.display||w?ce():s.value.slice(0,s.maxSelectedLabels||s.value.length).map((function(e){var t=W(e),n=!s.disabled&&(s.removeIcon?c.IconUtils.getJSXIcon(s.removeIcon,{className:"p-multiselect-token-icon",onClick:function(t){return ie(t,e)}},{props:s}):h.createElement(o.TimesCircleIcon,{className:"p-multiselect-token-icon",onClick:function(t){return ie(t,e)}}));return h.createElement("div",{className:"p-multiselect-token",key:t},h.createElement("span",{className:"p-multiselect-token-label"},t),n)})),t=c.classNames("p-multiselect-label",{"p-placeholder":w&&s.placeholder,"p-multiselect-label-empty":w&&!s.placeholder&&!s.selectedItemTemplate,"p-multiselect-items-label":!w&&"chip"!==s.display&&s.value.length>s.maxSelectedLabels});return h.createElement("div",{ref:x,className:"p-multiselect-label-container"},h.createElement("div",{className:t},e||s.placeholder||"empty"))}(),ye=!s.inline&&function(){var e="p-multiselect-clear-icon",t=c.IconUtils.getJSXIcon(s.clearIcon||h.createElement(r.TimesIcon,{className:e}),{className:e},{props:s});return w||!s.showClear||s.disabled?null:h.createElement("i",{className:e,onClick:function(e){return V(e,null,null)}},t)}();return h.createElement(h.Fragment,null,h.createElement("div",O({ref:I,id:s.id,style:s.style,className:me},pe,{onClick:function(e){s.inline||s.disabled||Y(e)||c.DomHandler.hasClass(e.target,"p-multiselect-token-icon")||Z(e)||(E?X():G(),c.DomHandler.focus(j.current),e.preventDefault())}}),h.createElement("div",{className:"p-hidden-accessible"},h.createElement("input",O({ref:j,id:s.inputId,name:s.name,readOnly:!0,type:"text",onFocus:function(e){v(!0),s.onFocus&&s.onFocus(e)},onBlur:function(e){v(!1),s.onBlur&&s.onBlur(e)},onKeyDown:function(e){switch(e.which){case 40:if(s.inline)break;!E&&e.altKey&&(G(),e.preventDefault());break;case 32:if(s.inline)break;E?X():G(),e.preventDefault();break;case 27:if(s.inline)break;X();break;case 9:if(E){var t=c.DomHandler.getFirstFocusableElement(N.current);t&&(t.focus(),e.preventDefault())}}},role:"listbox","aria-expanded":E,disabled:s.disabled,tabIndex:s.tabIndex},fe))),!s.inline&&h.createElement(h.Fragment,null,ve,ye,be),h.createElement(J,O({ref:N,visibleOptions:ue},s,{onClick:function(e){i.OverlayService.emit("overlay-click",{originalEvent:e,target:I.current})},onOverlayHide:X,filterValue:f,hasFilter:C,onFilterInputChange:function(e){var t=e.query;m(t),s.onFilter&&s.onFilter({originalEvent:e,filter:t})},resetFilter:K,onCloseClick:function(e){X(),c.DomHandler.focus(j.current),e.preventDefault(),e.stopPropagation()},onSelectAll:function(e){if(s.onSelectAll)s.onSelectAll(e);else{var t=null;if(e.checked){if(t=[],ue){var n=ue.filter((function(e){return re(e)&&Q(e)}));t=n.map((function(e){return ne(e)}))}}else if(ue){var l=ue.filter((function(e){return!re(e)}));s.optionGroupLabel?(t=[],l.forEach((function(e){return t=[].concat(D(t),D(le(e).filter((function(e){return!re(e)})).map((function(e){return ne(e)}))))}))):t=l.map((function(e){return ne(e)}))}V(e.originalEvent,t,t)}},getOptionLabel:te,getOptionRenderKey:function(e){return s.dataKey?c.ObjectUtils.resolveFieldData(e,s.dataKey):te(e)},isOptionDisabled:re,getOptionGroupChildren:le,getOptionGroupLabel:function(e){return c.ObjectUtils.resolveFieldData(e,s.optionGroupLabel)},getOptionGroupRenderKey:function(e){return c.ObjectUtils.resolveFieldData(e,s.optionGroupLabel)},isSelected:Q,getSelectedOptionIndex:function(){if(null!=s.value&&s.options){if(s.optionGroupLabel){var e=0,t=s.options.findIndex((function(t,n){return(e=n)&&-1!==$(s.value,le(t))}));return-1!==t?{group:e,option:t}:-1}return $(s.value,s.options)}return-1},isAllSelected:function(){if(s.onSelectAll)return s.selectAll;if(c.ObjectUtils.isEmpty(ue))return!1;var e=ue.filter((function(e){return!re(e)}));if(!s.optionGroupLabel)return!e.some((function(e){return!Q(e)}));var t,n=B(e);try{for(n.s();!(t=n.n()).done;){return!le(t.value).filter((function(e){return!re(e)})).some((function(e){return!Q(e)}))}}catch(e){n.e(e)}finally{n.f()}return!0},onOptionSelect:R,allowOptionSelect:H,onOptionKeyDown:function(e){var t=e.originalEvent,n=t.currentTarget;switch(t.which){case 40:var l=M(n);l&&l.focus(),t.preventDefault();break;case 38:var r=q(n);r&&r.focus(),t.preventDefault();break;case 13:case 32:R(e),t.preventDefault();break;case 27:X(),c.DomHandler.focus(j.current)}},in:E,onEnter:function(e){var t;c.ZIndexUtils.set("overlay",N.current,g.default.autoZIndex,g.default.zIndex.overlay),z(),(t=c.DomHandler.findSingle(N.current,"li.p-highlight"))&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"nearest"}),e&&e()},onEntered:function(e){e&&e(),F(),s.onShow&&s.onShow()},onExit:function(){A()},onExited:function(){s.filter&&s.resetFilterOnHide&&K(),c.ZIndexUtils.clear(N.current),s.onHide&&s.onHide()}}))),se&&h.createElement(a.Tooltip,O({target:I,content:s.tooltip},s.tooltipOptions)))})));Y.displayName="MultiSelect",exports.MultiSelect=Y;
@@ -108,6 +108,10 @@ interface MultiSelectChangeEvent {
108
108
  * Current selected values
109
109
  */
110
110
  value: any;
111
+ /**
112
+ * Selected option
113
+ */
114
+ selectedOption?: any;
111
115
  /**
112
116
  * Stops the event from propagating.
113
117
  */
@@ -1,6 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import PrimeReact, { localeOption, FilterService } from 'primereact/api';
3
3
  import { useUpdateEffect, useOverlayListener, useUnmountEffect } from 'primereact/hooks';
4
+ import { ChevronDownIcon } from 'primereact/icons/chevrondown';
5
+ import { TimesIcon } from 'primereact/icons/times';
6
+ import { TimesCircleIcon } from 'primereact/icons/timescircle';
4
7
  import { OverlayService } from 'primereact/overlayservice';
5
8
  import { Tooltip } from 'primereact/tooltip';
6
9
  import { ObjectUtils, DomHandler, classNames, IconUtils, ZIndexUtils } from 'primereact/utils';
@@ -10,10 +13,7 @@ import { VirtualScroller } from 'primereact/virtualscroller';
10
13
  import { CheckIcon } from 'primereact/icons/check';
11
14
  import { InputText } from 'primereact/inputtext';
12
15
  import { Ripple } from 'primereact/ripple';
13
- import { TimesIcon } from 'primereact/icons/times';
14
16
  import { SearchIcon } from 'primereact/icons/search';
15
- import { TimesCircleIcon } from 'primereact/icons/timescircle';
16
- import { ChevronDownIcon } from 'primereact/icons/chevrondown';
17
17
 
18
18
  function _extends() {
19
19
  _extends = Object.assign ? Object.assign.bind() : function (target) {
@@ -240,6 +240,7 @@ var CheckboxBase = {
240
240
  tooltip: null,
241
241
  tooltipOptions: null,
242
242
  onChange: null,
243
+ onClick: null,
243
244
  onMouseDown: null,
244
245
  onContextMenu: null,
245
246
  children: undefined
@@ -261,19 +262,26 @@ var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
261
262
  var elementRef = React.useRef(null);
262
263
  var inputRef = React.useRef(props.inputRef);
263
264
  var onClick = function onClick(event) {
264
- if (!props.disabled && !props.readOnly && props.onChange) {
265
+ if (props.disabled || props.readOnly) {
266
+ return;
267
+ }
268
+ if (props.onChange || props.onClick) {
265
269
  var _checked = isChecked();
266
270
  var checkboxClicked = event.target instanceof HTMLDivElement || event.target instanceof HTMLSpanElement || event.target instanceof Object;
267
271
  var isInputToggled = event.target === inputRef.current;
268
272
  var isCheckboxToggled = checkboxClicked && event.target.checked !== _checked;
269
273
  if (isInputToggled || isCheckboxToggled) {
270
274
  var value = _checked ? props.falseValue : props.trueValue;
271
- props.onChange({
275
+ var eventData = {
272
276
  originalEvent: event,
273
277
  value: props.value,
274
278
  checked: value,
275
- stopPropagation: function stopPropagation() {},
276
- preventDefault: function preventDefault() {},
279
+ stopPropagation: function stopPropagation() {
280
+ event.stopPropagation();
281
+ },
282
+ preventDefault: function preventDefault() {
283
+ event.preventDefault();
284
+ },
277
285
  target: {
278
286
  type: 'checkbox',
279
287
  name: props.name,
@@ -281,7 +289,14 @@ var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
281
289
  value: props.value,
282
290
  checked: value
283
291
  }
284
- });
292
+ };
293
+ props.onClick && props.onClick(eventData);
294
+
295
+ // do not continue if the user defined click wants to prevent
296
+ if (event.defaultPrevented) {
297
+ return;
298
+ }
299
+ props.onChange && props.onChange(eventData);
285
300
  }
286
301
  DomHandler.focus(inputRef.current);
287
302
  event.preventDefault();
@@ -352,7 +367,7 @@ var Checkbox = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
352
367
  className: className,
353
368
  style: props.style
354
369
  }, otherProps, {
355
- onClick: onClick,
370
+ onPointerUp: onClick,
356
371
  onContextMenu: props.onContextMenu,
357
372
  onMouseDown: props.onMouseDown
358
373
  }), /*#__PURE__*/React.createElement("div", {
@@ -455,13 +470,13 @@ var MultiSelectHeader = /*#__PURE__*/React.memo(function (props) {
455
470
  }, {
456
471
  selected: props.selected
457
472
  });
458
- var checkboxElement = props.showSelectAll && /*#__PURE__*/React.createElement(Checkbox, {
473
+ var checkboxElement = props.showSelectAll ? /*#__PURE__*/React.createElement(Checkbox, {
459
474
  checked: props.selectAll,
460
475
  onChange: onSelectAll,
461
476
  role: "checkbox",
462
477
  "aria-checked": props.selectAll,
463
478
  icon: itemCheckboxIcon
464
- });
479
+ }) : null;
465
480
  var iconProps = {
466
481
  className: 'p-multiselect-close-icon',
467
482
  'aria-hidden': true
@@ -529,11 +544,11 @@ var MultiSelectItem = /*#__PURE__*/React.memo(function (props) {
529
544
  var icon = props.checkboxIcon || /*#__PURE__*/React.createElement(CheckIcon, {
530
545
  className: checkboxIconClassName
531
546
  });
532
- var checkboxIcon = IconUtils.getJSXIcon(icon, {
547
+ var checkboxIcon = props.selected ? IconUtils.getJSXIcon(icon, {
533
548
  className: checkboxIconClassName
534
549
  }, {
535
550
  selected: props.selected
536
- });
551
+ }) : null;
537
552
  var content = props.template ? ObjectUtils.getJSXElement(props.template, props.option) : props.label;
538
553
  var tabIndex = props.disabled ? null : props.tabIndex || 0;
539
554
  return /*#__PURE__*/React.createElement("li", {
@@ -844,9 +859,13 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
844
859
  var isUsed = isOptionValueUsed(option);
845
860
  var selected = isSelected(option);
846
861
  var allowSelect = allowOptionSelect();
847
- if (selected) updateModel(originalEvent, props.value.filter(function (val) {
848
- return !ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
849
- }));else if (allowSelect) updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]));
862
+ if (selected) {
863
+ updateModel(originalEvent, props.value.filter(function (val) {
864
+ return !ObjectUtils.equals(isUsed ? val : getOptionValue(val), optionValue, equalityKey);
865
+ }), option);
866
+ } else if (allowSelect) {
867
+ updateModel(originalEvent, [].concat(_toConsumableArray(props.value || []), [optionValue]), option);
868
+ }
850
869
  };
851
870
  var onOptionKeyDown = function onOptionKeyDown(event) {
852
871
  var originalEvent = event.originalEvent;
@@ -965,16 +984,21 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
965
984
  });
966
985
  }
967
986
  }
968
- updateModel(event.originalEvent, value);
987
+ updateModel(event.originalEvent, value, value);
969
988
  }
970
989
  };
971
- var updateModel = function updateModel(event, value) {
990
+ var updateModel = function updateModel(event, value, selectedOption) {
972
991
  if (props.onChange) {
973
992
  props.onChange({
974
993
  originalEvent: event,
975
994
  value: value,
976
- stopPropagation: function stopPropagation() {},
977
- preventDefault: function preventDefault() {},
995
+ selectedOption: selectedOption,
996
+ stopPropagation: function stopPropagation() {
997
+ event.stopPropagation();
998
+ },
999
+ preventDefault: function preventDefault() {
1000
+ event.preventDefault();
1001
+ },
978
1002
  target: {
979
1003
  name: props.name,
980
1004
  id: props.id,
@@ -1196,7 +1220,7 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1196
1220
  var value = props.value.filter(function (val) {
1197
1221
  return !ObjectUtils.equals(val, item, equalityKey);
1198
1222
  });
1199
- updateModel(event, value);
1223
+ updateModel(event, value, item);
1200
1224
  };
1201
1225
  var getSelectedItemsLabel = function getSelectedItemsLabel() {
1202
1226
  var pattern = /{(.*?)}/;
@@ -1341,7 +1365,7 @@ var MultiSelect = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(functio
1341
1365
  return /*#__PURE__*/React.createElement("i", {
1342
1366
  className: iconClassName,
1343
1367
  onClick: function onClick(e) {
1344
- return updateModel(e, null);
1368
+ return updateModel(e, null, null);
1345
1369
  }
1346
1370
  }, clearIcon);
1347
1371
  }
@@ -1 +1 @@
1
- import*as e from"react";import t,{localeOption as n,FilterService as l}from"primereact/api";import{useUpdateEffect as r,useOverlayListener as o,useUnmountEffect as i}from"primereact/hooks";import{OverlayService as a}from"primereact/overlayservice";import{Tooltip as c}from"primereact/tooltip";import{ObjectUtils as u,DomHandler as s,classNames as p,IconUtils as f,ZIndexUtils as m}from"primereact/utils";import{CSSTransition as d}from"primereact/csstransition";import{Portal as b}from"primereact/portal";import{VirtualScroller as v}from"primereact/virtualscroller";import{CheckIcon as y}from"primereact/icons/check";import{InputText as h}from"primereact/inputtext";import{Ripple as g}from"primereact/ripple";import{TimesIcon as O}from"primereact/icons/times";import{SearchIcon as E}from"primereact/icons/search";import{TimesCircleIcon as S}from"primereact/icons/timescircle";import{ChevronDownIcon as k}from"primereact/icons/chevrondown";function I(){return I=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},I.apply(this,arguments)}function x(e){return x="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},x(e)}function w(e,t){if("object"!==x(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var l=n.call(e,t||"default");if("object"!==x(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function N(e){var t=w(e,"string");return"symbol"===x(t)?t:String(t)}function C(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function D(e){if(Array.isArray(e))return P(e)}function j(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function F(e,t){if(e){if("string"==typeof e)return P(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?P(e,t):void 0}}function L(){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 A(e){return D(e)||j(e)||F(e)||L()}function T(e){if(Array.isArray(e))return e}function R(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,r,o,i,a=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=o.call(n)).done)&&(a.push(l.value),a.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw r}}return a}}function M(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function V(e,t){return T(e)||R(e,t)||F(e,t)||M()}var K={defaultProps:{__TYPE:"MultiSelect",appendTo:null,ariaLabelledBy:null,className:null,closeIcon:null,checkboxIcon:null,dataKey:null,disabled:!1,display:"comma",dropdownIcon:null,emptyFilterMessage:null,filter:!1,filterBy:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,fixedPlaceholder:!1,flex:!1,id:null,itemCheckboxIcon:null,inline:!1,inputId:null,inputRef:null,itemClassName:null,itemTemplate:null,maxSelectedLabels:null,name:null,onBlur:null,onChange:null,onFilter:null,onFocus:null,onHide:null,onSelectAll:null,onShow:null,optionDisabled:null,optionGroupChildren:null,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,overlayVisible:!1,panelClassName:null,panelFooterTemplate:null,panelHeaderTemplate:null,panelStyle:null,placeholder:null,removeIcon:null,resetFilterOnHide:!1,scrollHeight:"200px",selectAll:!1,selectedItemTemplate:null,selectedItemsLabel:"{0} items selected",selectionLimit:null,showClear:!1,showSelectAll:!0,style:null,tabIndex:0,tooltip:null,tooltipOptions:null,transitionOptions:null,useOptionAsValue:!1,value:null,virtualScrollerOptions:null,children:void 0},getProps:function(e){return u.getMergedProps(e,K.defaultProps)},getOtherProps:function(e){return u.getDiffProps(e,K.defaultProps)}},G={defaultProps:{__TYPE:"Checkbox",id:null,inputRef:null,inputId:null,value:null,name:null,checked:!1,trueValue:!0,falseValue:!1,style:null,className:null,disabled:!1,required:!1,readOnly:!1,tabIndex:null,icon:null,tooltip:null,tooltipOptions:null,onChange:null,onMouseDown:null,onContextMenu:null,children:void 0},getProps:function(e){return u.getMergedProps(e,G.defaultProps)},getOtherProps:function(e){return u.getDiffProps(e,G.defaultProps)}},H=e.memo(e.forwardRef((function(t,n){var l=G.getProps(t),o=V(e.useState(!1),2),i=o[0],a=o[1],m=e.useRef(null),d=e.useRef(l.inputRef),b=function(e){if(!l.disabled&&!l.readOnly&&l.onChange){var t=v(),n=e.target instanceof HTMLDivElement||e.target instanceof HTMLSpanElement||e.target instanceof Object;if(e.target===d.current||n&&e.target.checked!==t){var r=t?l.falseValue:l.trueValue;l.onChange({originalEvent:e,value:l.value,checked:r,stopPropagation:function(){},preventDefault:function(){},target:{type:"checkbox",name:l.name,id:l.id,value:l.value,checked:r}})}s.focus(d.current),e.preventDefault()}},v=function(){return l.checked===l.trueValue};e.useImperativeHandle(n,(function(){return{props:l,focus:function(){return s.focus(d.current)},getElement:function(){return m.current},getInput:function(){return d.current}}})),e.useEffect((function(){u.combinedRefs(d,l.inputRef)}),[d,l.inputRef]),r((function(){d.current.checked=v()}),[l.checked,l.trueValue]);var h=v(),g=u.isNotEmpty(l.tooltip),O=G.getOtherProps(l),E=u.reduceKeys(O,s.ARIA_PROPS),S=p("p-checkbox p-component",{"p-checkbox-checked":h,"p-checkbox-disabled":l.disabled,"p-checkbox-focused":i},l.className),k=p("p-checkbox-box",{"p-highlight":h,"p-disabled":l.disabled,"p-focus":i}),x="p-checkbox-icon p-c",w=f.getJSXIcon(h?l.icon||e.createElement(y,{className:x}):null,{className:x},{props:l,checked:h});return e.createElement(e.Fragment,null,e.createElement("div",I({ref:m,id:l.id,className:S,style:l.style},O,{onClick:b,onContextMenu:l.onContextMenu,onMouseDown:l.onMouseDown}),e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",I({ref:d,type:"checkbox",id:l.inputId,name:l.name,tabIndex:l.tabIndex,defaultChecked:h,onFocus:function(){a(!0)},onBlur:function(){a(!1)},onKeyDown:function(e){"Space"!==e.code&&" "!==e.key||b(e)},disabled:l.disabled,readOnly:l.readOnly,required:l.required},E))),e.createElement("div",{className:k},w)),g&&e.createElement(c,I({target:m,content:l.tooltip},l.tooltipOptions)))})));function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}H.displayName="Checkbox";var q=e.memo((function(t){var l={filter:function(e){return r(e)},reset:function(){return t.resetFilter()}},r=function(e){t.onFilter&&t.onFilter({originalEvent:e,query:e.target.value})},o=function(e){t.onSelectAll&&t.onSelectAll({originalEvent:e,checked:t.selectAll}),e.preventDefault()},i=function(){var n="p-multiselect-filter-icon",o=f.getJSXIcon(t.filterIcon||e.createElement(E,{className:n}),{className:n},{props:t});if(t.filter){var i=p("p-multiselect-filter-container"),a=e.createElement("div",{className:i},e.createElement(h,{ref:t.filterRef,type:"text",role:"textbox",value:t.filterValue,onChange:r,className:"p-multiselect-filter",placeholder:t.filterPlaceholder}),o);if(t.filterTemplate)a=u.getJSXElement(t.filterTemplate,{className:i,element:a,filterOptions:l,onFilter:r,filterIconClassName:n,props:t});return e.createElement(e.Fragment,null,a)}return null}(),a="p-checkbox-icon p-c",c=f.getJSXIcon(t.itemCheckboxIcon||e.createElement(y,{className:a}),{className:a},{selected:t.selected}),s=t.showSelectAll&&e.createElement(H,{checked:t.selectAll,onChange:o,role:"checkbox","aria-checked":t.selectAll,icon:c}),m={className:"p-multiselect-close-icon","aria-hidden":!0},d=f.getJSXIcon(t.closeIcon||e.createElement(O,m),X({},m),{props:t}),b=e.createElement("button",{type:"button",className:"p-multiselect-close p-link","aria-label":n("close"),onClick:t.onClose},d,e.createElement(g,null)),v=e.createElement("div",{className:"p-multiselect-header"},s,i,b);return t.template?u.getJSXElement(t.template,{className:"p-multiselect-header",checkboxElement:s,checked:t.selectAll,onChange:o,filterElement:i,closeElement:b,closeElementClassName:"p-multiselect-close p-link",closeIconClassName:"p-multiselect-close-icon",onCloseClick:t.onClose,element:v,itemCheckboxIcon:c,props:t}):v}));q.displayName="MultiSelectHeader";var B=e.memo((function(t){var n=p("p-multiselect-item",{"p-highlight":t.selected,"p-disabled":t.disabled},t.className,t.option.className),l=p("p-checkbox-box",{"p-highlight":t.selected}),r="p-checkbox-icon p-c",o=f.getJSXIcon(t.checkboxIcon||e.createElement(y,{className:r}),{className:r},{selected:t.selected}),i=t.template?u.getJSXElement(t.template,t.option):t.label;return e.createElement("li",{className:n,style:t.style,onClick:function(e){t.onClick&&t.onClick({originalEvent:e,option:t.option}),e.preventDefault()},tabIndex:t.disabled?null:t.tabIndex||0,onKeyDown:function(e){t.onKeyDown&&t.onKeyDown({originalEvent:e,option:t.option})},role:"option","aria-selected":t.selected},e.createElement("div",{className:"p-checkbox p-component"},e.createElement("div",{className:l},o)),e.createElement("span",null,i),e.createElement(g,null))}));function _(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}B.displayName="MultiSelectItem";var U=e.memo(e.forwardRef((function(l,r){var o,i,a,c,f,m=e.useRef(null),y=e.useRef(null),h=function(){l.onEnter((function(){if(m.current){var e=l.getSelectedOptionIndex();-1!==e&&setTimeout((function(){return m.current.scrollToIndex(e)}),0)}}))},g=function(){l.onEntered((function(){l.filter&&y.current&&s.focus(y.current,!1)}))},O=function(e){m.current&&m.current.scrollToIndex(0),l.onFilterInputChange&&l.onFilterInputChange(e)},E=function(){if(l.panelFooterTemplate){var t=u.getJSXElement(l.panelFooterTemplate,l,l.onOverlayHide);return e.createElement("div",{className:"p-multiselect-footer"},t)}return null},S=function(t,n){return l.getOptionGroupChildren(t).map((function(t,r){var o=l.getOptionLabel(t),i=r+"_"+l.getOptionRenderKey(t),a=l.isOptionDisabled(t),c=a?null:l.tabIndex||0,u=l.isSelected(t);return e.createElement(B,{key:i,label:o,option:t,style:n,template:l.itemTemplate,selected:u,onClick:l.onOptionSelect,onKeyDown:l.onOptionKeyDown,tabIndex:c,disabled:a,className:l.itemClassName,checkboxIcon:l.checkboxIcon})}))},k=function(){var t=u.getJSXElement(l.emptyFilterMessage,l)||n("emptyFilterMessage");return e.createElement("li",{className:"p-multiselect-empty-message"},t)},x=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o={height:r.props?r.props.itemSize:void 0};if(l.optionGroupLabel){var i=l.optionGroupTemplate?u.getJSXElement(l.optionGroupTemplate,t,n):l.getOptionGroupLabel(t),a=S(t,o),c=n+"_"+l.getOptionGroupRenderKey(t);return e.createElement(e.Fragment,{key:c},e.createElement("li",{className:"p-multiselect-item-group",style:o},i),a)}var s=l.getOptionLabel(t),p=n+"_"+l.getOptionRenderKey(t),f=l.isOptionDisabled(t),m=f?null:l.tabIndex||0,d=l.isSelected(t);return e.createElement(B,{key:p,label:s,option:t,style:o,template:l.itemTemplate,selected:d,onClick:l.onOptionSelect,onKeyDown:l.onOptionKeyDown,tabIndex:m,disabled:f,className:l.itemClassName,checkboxIcon:l.checkboxIcon})},w=function(){if(l.virtualScrollerOptions){var t=z(z({},l.virtualScrollerOptions),{style:z(z({},l.virtualScrollerOptions.style),{height:l.scrollHeight}),className:p("p-multiselect-items-wrapper",l.virtualScrollerOptions.className),items:l.visibleOptions,autoSize:!0,onLazyLoad:function(e){return l.virtualScrollerOptions.onLazyLoad(z(z({},e),{filter:l.filterValue}))},itemTemplate:function(e,t){return e&&x(e,t.index,t)},contentTemplate:function(t){var n=p("p-multiselect-items p-component",t.className),r=l.visibleOptions&&l.visibleOptions.length||!l.hasFilter?t.children:k();return e.createElement("ul",{ref:t.contentRef,style:t.style,className:n,role:"listbox","aria-multiselectable":!0},r)}});return e.createElement(v,I({ref:m},t))}var n=u.isNotEmpty(l.visibleOptions)?l.visibleOptions.map(x):l.hasFilter?k():null;return e.createElement("div",{className:"p-multiselect-items-wrapper",style:{maxHeight:l.scrollHeight}},e.createElement("ul",{className:"p-multiselect-items p-component",role:"listbox","aria-multiselectable":!0},n))},N=(o=l.allowOptionSelect(),i=p("p-multiselect-panel p-component",{"p-multiselect-inline":l.inline,"p-multiselect-flex":l.flex,"p-multiselect-limited":!o,"p-input-filled":"filled"===t.inputStyle,"p-ripple-disabled":!1===t.ripple},l.panelClassName),a=e.createElement(q,{filter:l.filter,filterRef:y,filterValue:l.filterValue,filterTemplate:l.filterTemplate,onFilter:O,filterPlaceholder:l.filterPlaceholder,onClose:l.onCloseClick,showSelectAll:l.showSelectAll,selectAll:l.isAllSelected(),onSelectAll:l.onSelectAll,template:l.panelHeaderTemplate,resetFilter:l.resetFilter,closeIcon:l.closeIcon,filterIcon:l.filterIcon,itemCheckboxIcon:l.itemCheckboxIcon}),c=w(),f=E(),l.inline?e.createElement("div",{ref:r,className:i,style:l.panelStyle,onClick:l.onClick},c,f):e.createElement(d,{nodeRef:r,classNames:"p-connected-overlay",in:l.in,timeout:{enter:120,exit:100},options:l.transitionOptions,unmountOnExit:!0,onEnter:h,onEntered:g,onExit:l.onExit,onExited:l.onExited},e.createElement("div",{ref:r,className:i,style:l.panelStyle,onClick:l.onClick},a,c,f)));return l.inline?N:e.createElement(b,{element:N,appendTo:l.appendTo})})));function Y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function $(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Z(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=Q(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,r=function(){};return{s:r,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw o}}}}function Q(e,t){if(e){if("string"==typeof e)return W(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)?W(e,t):void 0}}function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}U.displayName="MultiSelectPanel";var ee=e.memo(e.forwardRef((function(n,d){var b=K.getProps(n),v=V(e.useState(""),2),y=v[0],h=v[1],g=V(e.useState(!1),2),E=g[0],x=g[1],w=V(e.useState(b.inline),2),N=w[0],P=w[1],D=e.useRef(null),j=e.useRef(b.inputRef),F=e.useRef(null),L=e.useRef(null),T=y&&y.trim().length>0,R=u.isEmpty(b.value),M=b.optionValue?null:b.dataKey,G=V(o({target:D,overlay:L,listener:function(e,t){t.valid&&("outside"===t.type?!te(e)&&W():W())},when:N}),2),H=G[0],J=G[1],X=function(){return!b.selectionLimit||!b.value||b.value&&b.value.length<b.selectionLimit},q=function(e){var t=e.originalEvent,n=e.option;if(!b.disabled&&!se(n)){var l=ce(n),r=pe(n),o=re(n),i=X();o?z(t,b.value.filter((function(e){return!u.equals(r?e:ce(e),l,M)}))):i&&z(t,[].concat(A(b.value||[]),[l]))}},B=function e(t){var n=t.nextElementSibling;return n?s.hasClass(n,"p-disabled")||s.hasClass(n,"p-multiselect-item-group")?e(n):n:null},_=function e(t){var n=t.previousElementSibling;return n?s.hasClass(n,"p-disabled")||s.hasClass(n,"p-multiselect-item-group")?e(n):n:null},z=function(e,t){b.onChange&&b.onChange({originalEvent:e,value:t,stopPropagation:function(){},preventDefault:function(){},target:{name:b.name,id:b.id,value:t}})},Y=function(){h(""),b.onFilter&&b.onFilter({filter:""})},Q=function(){P(!0)},W=function(){P(!1)},ee=function(){s.alignOverlay(L.current,F.current.parentElement,b.appendTo||t.appendTo)},te=function(e){return s.hasClass(e.target,"p-multiselect-clear-icon")},ne=function(e){return L.current&&L.current.contains(e.target)},le=function(e,t){return t.findIndex((function(t){return e.some((function(e){return u.equals(e,ce(t),M)}))}))},re=function(e){if(b.value){var t=ce(e),n=pe(e);return b.value.some((function(e){return u.equals(n?e:ce(e),t,M)}))}return!1},oe=function(e){var t;if(b.options)if(b.optionGroupLabel){var n,l=Z(b.options);try{for(l.s();!(n=l.n()).done;){if(t=ie(e,ue(n.value)))break}}catch(e){l.e(e)}finally{l.f()}}else t=ie(e,b.options);return t?ae(t):null},ie=function(e,t){return t.find((function(t){return u.equals(ce(t),e,M)}))},ae=function(e){return b.optionLabel?u.resolveFieldData(e,b.optionLabel):e&&void 0!==e.label?e.label:e},ce=function(e){if(b.useOptionAsValue)return e;if(b.optionValue){var t=u.resolveFieldData(e,b.optionValue);return null!==t?t:e}return e&&void 0!==e.value?e.value:e},ue=function(e){return u.resolveFieldData(e,b.optionGroupChildren)},se=function(e){return b.optionDisabled?u.isFunction(b.optionDisabled)?b.optionDisabled(e):u.resolveFieldData(e,b.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},pe=function(e){return!b.useOptionAsValue&&b.optionValue||e&&void 0!==e.value},fe=function(e,t){var n=b.value.filter((function(e){return!u.equals(e,t,M)}));z(e,n)},me=function(){var e=/{(.*?)}/;return e.test(b.selectedItemsLabel)?b.selectedItemsLabel.replace(b.selectedItemsLabel.match(e)[0],b.value.length+""):b.selectedItemsLabel},de=function(){if(!R&&!b.fixedPlaceholder)return u.isNotEmpty(b.maxSelectedLabels)&&b.value.length>b.maxSelectedLabels?me():b.value.reduce((function(e,t,n){return e+(0!==n?",":"")+oe(t)}),"")};e.useImperativeHandle(d,(function(){return{props:b,show:Q,hide:W,focus:function(){return s.focus(j.current)},getElement:function(){return D.current},getOverlay:function(){return L.current},getInput:function(){return j.current}}})),e.useEffect((function(){u.combinedRefs(j,b.inputRef)}),[j,b.inputRef]),e.useEffect((function(){setTimeout((function(){b.overlayVisible?Q():W()}),100)}),[b.overlayVisible]),r((function(){N&&T&&ee()}),[N,T]),i((function(){m.clear(L.current)}));var be=function(){if(T){var e=y.trim().toLocaleLowerCase(b.filterLocale),t=b.filterBy?b.filterBy.split(","):[b.optionLabel||"label"];if(b.optionGroupLabel){var n,r=[],o=Z(b.options);try{for(o.s();!(n=o.n()).done;){var i=n.value,a=l.filter(ue(i),t,e,b.filterMatchMode,b.filterLocale);a&&a.length&&r.push($($({},i),C({},b.optionGroupChildren,a)))}}catch(e){o.e(e)}finally{o.f()}return r}return l.filter(b.options,t,e,b.filterMatchMode,b.filterLocale)}return b.options}(),ve=u.isNotEmpty(b.tooltip),ye=K.getOtherProps(b),he=u.reduceKeys(ye,s.ARIA_PROPS),ge=p("p-multiselect p-component p-inputwrapper",{"p-multiselect-chip":"chip"===b.display,"p-disabled":b.disabled,"p-multiselect-clearable":b.showClear&&!b.disabled,"p-focus":E,"p-inputwrapper-filled":u.isNotEmpty(b.value),"p-inputwrapper-focus":E||N},b.className),Oe="p-multiselect-trigger-icon p-c",Ee=e.createElement("div",{className:"p-multiselect-trigger"},b.dropdownIcon?f.getJSXIcon(b.dropdownIcon,{className:Oe},{props:b}):e.createElement(k,{className:Oe})),Se=!b.inline&&function(){var t=b.selectedItemTemplate?R?u.getJSXElement(b.selectedItemTemplate):u.isNotEmpty(b.maxSelectedLabels)&&b.value.length>b.maxSelectedLabels?me():b.value.map((function(t,n){var l=u.getJSXElement(b.selectedItemTemplate,t);return e.createElement(e.Fragment,{key:n},l)})):"chip"!==b.display||R?de():b.value.slice(0,b.maxSelectedLabels||b.value.length).map((function(t){var n=oe(t),l=!b.disabled&&(b.removeIcon?f.getJSXIcon(b.removeIcon,{className:"p-multiselect-token-icon",onClick:function(e){return fe(e,t)}},{props:b}):e.createElement(S,{className:"p-multiselect-token-icon",onClick:function(e){return fe(e,t)}}));return e.createElement("div",{className:"p-multiselect-token",key:n},e.createElement("span",{className:"p-multiselect-token-label"},n),l)})),n=p("p-multiselect-label",{"p-placeholder":R&&b.placeholder,"p-multiselect-label-empty":R&&!b.placeholder&&!b.selectedItemTemplate,"p-multiselect-items-label":!R&&"chip"!==b.display&&b.value.length>b.maxSelectedLabels});return e.createElement("div",{ref:F,className:"p-multiselect-label-container"},e.createElement("div",{className:n},t||b.placeholder||"empty"))}(),ke=!b.inline&&function(){var t="p-multiselect-clear-icon",n=f.getJSXIcon(b.clearIcon||e.createElement(O,{className:t}),{className:t},{props:b});return R||!b.showClear||b.disabled?null:e.createElement("i",{className:t,onClick:function(e){return z(e,null)}},n)}();return e.createElement(e.Fragment,null,e.createElement("div",I({ref:D,id:b.id,style:b.style,className:ge},ye,{onClick:function(e){b.inline||b.disabled||ne(e)||s.hasClass(e.target,"p-multiselect-token-icon")||te(e)||(N?W():Q(),s.focus(j.current),e.preventDefault())}}),e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",I({ref:j,id:b.inputId,name:b.name,readOnly:!0,type:"text",onFocus:function(e){x(!0),b.onFocus&&b.onFocus(e)},onBlur:function(e){x(!1),b.onBlur&&b.onBlur(e)},onKeyDown:function(e){switch(e.which){case 40:if(b.inline)break;!N&&e.altKey&&(Q(),e.preventDefault());break;case 32:if(b.inline)break;N?W():Q(),e.preventDefault();break;case 27:if(b.inline)break;W();break;case 9:if(N){var t=s.getFirstFocusableElement(L.current);t&&(t.focus(),e.preventDefault())}}},role:"listbox","aria-expanded":N,disabled:b.disabled,tabIndex:b.tabIndex},he))),!b.inline&&e.createElement(e.Fragment,null,Se,ke,Ee),e.createElement(U,I({ref:L,visibleOptions:be},b,{onClick:function(e){a.emit("overlay-click",{originalEvent:e,target:D.current})},onOverlayHide:W,filterValue:y,hasFilter:T,onFilterInputChange:function(e){var t=e.query;h(t),b.onFilter&&b.onFilter({originalEvent:e,filter:t})},resetFilter:Y,onCloseClick:function(e){W(),s.focus(j.current),e.preventDefault(),e.stopPropagation()},onSelectAll:function(e){if(b.onSelectAll)b.onSelectAll(e);else{var t=null;if(e.checked){if(t=[],be){var n=be.filter((function(e){return se(e)&&re(e)}));t=n.map((function(e){return ce(e)}))}}else if(be){var l=be.filter((function(e){return!se(e)}));b.optionGroupLabel?(t=[],l.forEach((function(e){return t=[].concat(A(t),A(ue(e).filter((function(e){return!se(e)})).map((function(e){return ce(e)}))))}))):t=l.map((function(e){return ce(e)}))}z(e.originalEvent,t)}},getOptionLabel:ae,getOptionRenderKey:function(e){return b.dataKey?u.resolveFieldData(e,b.dataKey):ae(e)},isOptionDisabled:se,getOptionGroupChildren:ue,getOptionGroupLabel:function(e){return u.resolveFieldData(e,b.optionGroupLabel)},getOptionGroupRenderKey:function(e){return u.resolveFieldData(e,b.optionGroupLabel)},isSelected:re,getSelectedOptionIndex:function(){if(null!=b.value&&b.options){if(b.optionGroupLabel){var e=0,t=b.options.findIndex((function(t,n){return(e=n)&&-1!==le(b.value,ue(t))}));return-1!==t?{group:e,option:t}:-1}return le(b.value,b.options)}return-1},isAllSelected:function(){if(b.onSelectAll)return b.selectAll;if(u.isEmpty(be))return!1;var e=be.filter((function(e){return!se(e)}));if(!b.optionGroupLabel)return!e.some((function(e){return!re(e)}));var t,n=Z(e);try{for(n.s();!(t=n.n()).done;){return!ue(t.value).filter((function(e){return!se(e)})).some((function(e){return!re(e)}))}}catch(e){n.e(e)}finally{n.f()}return!0},onOptionSelect:q,allowOptionSelect:X,onOptionKeyDown:function(e){var t=e.originalEvent,n=t.currentTarget;switch(t.which){case 40:var l=B(n);l&&l.focus(),t.preventDefault();break;case 38:var r=_(n);r&&r.focus(),t.preventDefault();break;case 13:case 32:q(e),t.preventDefault();break;case 27:W(),s.focus(j.current)}},in:N,onEnter:function(e){var n;m.set("overlay",L.current,t.autoZIndex,t.zIndex.overlay),ee(),(n=s.findSingle(L.current,"li.p-highlight"))&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"nearest"}),e&&e()},onEntered:function(e){e&&e(),H(),b.onShow&&b.onShow()},onExit:function(){J()},onExited:function(){b.filter&&b.resetFilterOnHide&&Y(),m.clear(L.current),b.onHide&&b.onHide()}}))),ve&&e.createElement(c,I({target:D,content:b.tooltip},b.tooltipOptions)))})));ee.displayName="MultiSelect";export{ee as MultiSelect};
1
+ import*as e from"react";import t,{localeOption as n,FilterService as l}from"primereact/api";import{useUpdateEffect as r,useOverlayListener as o,useUnmountEffect as i}from"primereact/hooks";import{ChevronDownIcon as a}from"primereact/icons/chevrondown";import{TimesIcon as c}from"primereact/icons/times";import{TimesCircleIcon as u}from"primereact/icons/timescircle";import{OverlayService as s}from"primereact/overlayservice";import{Tooltip as p}from"primereact/tooltip";import{ObjectUtils as f,DomHandler as m,classNames as d,IconUtils as b,ZIndexUtils as v}from"primereact/utils";import{CSSTransition as y}from"primereact/csstransition";import{Portal as h}from"primereact/portal";import{VirtualScroller as g}from"primereact/virtualscroller";import{CheckIcon as O}from"primereact/icons/check";import{InputText as E}from"primereact/inputtext";import{Ripple as S}from"primereact/ripple";import{SearchIcon as k}from"primereact/icons/search";function I(){return I=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},I.apply(this,arguments)}function x(e){return x="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},x(e)}function w(e,t){if("object"!==x(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var l=n.call(e,t||"default");if("object"!==x(l))return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function C(e){var t=w(e,"string");return"symbol"===x(t)?t:String(t)}function N(e,t,n){return(t=C(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}function D(e){if(Array.isArray(e))return P(e)}function j(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function F(e,t){if(e){if("string"==typeof e)return P(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?P(e,t):void 0}}function L(){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 A(e){return D(e)||j(e)||F(e)||L()}function T(e){if(Array.isArray(e))return e}function R(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,r,o,i,a=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=o.call(n)).done)&&(a.push(l.value),a.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw r}}return a}}function M(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function V(e,t){return T(e)||R(e,t)||F(e,t)||M()}var K={defaultProps:{__TYPE:"MultiSelect",appendTo:null,ariaLabelledBy:null,className:null,closeIcon:null,checkboxIcon:null,dataKey:null,disabled:!1,display:"comma",dropdownIcon:null,emptyFilterMessage:null,filter:!1,filterBy:null,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,fixedPlaceholder:!1,flex:!1,id:null,itemCheckboxIcon:null,inline:!1,inputId:null,inputRef:null,itemClassName:null,itemTemplate:null,maxSelectedLabels:null,name:null,onBlur:null,onChange:null,onFilter:null,onFocus:null,onHide:null,onSelectAll:null,onShow:null,optionDisabled:null,optionGroupChildren:null,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,overlayVisible:!1,panelClassName:null,panelFooterTemplate:null,panelHeaderTemplate:null,panelStyle:null,placeholder:null,removeIcon:null,resetFilterOnHide:!1,scrollHeight:"200px",selectAll:!1,selectedItemTemplate:null,selectedItemsLabel:"{0} items selected",selectionLimit:null,showClear:!1,showSelectAll:!0,style:null,tabIndex:0,tooltip:null,tooltipOptions:null,transitionOptions:null,useOptionAsValue:!1,value:null,virtualScrollerOptions:null,children:void 0},getProps:function(e){return f.getMergedProps(e,K.defaultProps)},getOtherProps:function(e){return f.getDiffProps(e,K.defaultProps)}},G={defaultProps:{__TYPE:"Checkbox",id:null,inputRef:null,inputId:null,value:null,name:null,checked:!1,trueValue:!0,falseValue:!1,style:null,className:null,disabled:!1,required:!1,readOnly:!1,tabIndex:null,icon:null,tooltip:null,tooltipOptions:null,onChange:null,onClick:null,onMouseDown:null,onContextMenu:null,children:void 0},getProps:function(e){return f.getMergedProps(e,G.defaultProps)},getOtherProps:function(e){return f.getDiffProps(e,G.defaultProps)}},H=e.memo(e.forwardRef((function(t,n){var l=G.getProps(t),o=V(e.useState(!1),2),i=o[0],a=o[1],c=e.useRef(null),u=e.useRef(l.inputRef),s=function(e){if(!l.disabled&&!l.readOnly&&(l.onChange||l.onClick)){var t=v(),n=e.target instanceof HTMLDivElement||e.target instanceof HTMLSpanElement||e.target instanceof Object;if(e.target===u.current||n&&e.target.checked!==t){var r=t?l.falseValue:l.trueValue,o={originalEvent:e,value:l.value,checked:r,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{type:"checkbox",name:l.name,id:l.id,value:l.value,checked:r}};if(l.onClick&&l.onClick(o),e.defaultPrevented)return;l.onChange&&l.onChange(o)}m.focus(u.current),e.preventDefault()}},v=function(){return l.checked===l.trueValue};e.useImperativeHandle(n,(function(){return{props:l,focus:function(){return m.focus(u.current)},getElement:function(){return c.current},getInput:function(){return u.current}}})),e.useEffect((function(){f.combinedRefs(u,l.inputRef)}),[u,l.inputRef]),r((function(){u.current.checked=v()}),[l.checked,l.trueValue]);var y=v(),h=f.isNotEmpty(l.tooltip),g=G.getOtherProps(l),E=f.reduceKeys(g,m.ARIA_PROPS),S=d("p-checkbox p-component",{"p-checkbox-checked":y,"p-checkbox-disabled":l.disabled,"p-checkbox-focused":i},l.className),k=d("p-checkbox-box",{"p-highlight":y,"p-disabled":l.disabled,"p-focus":i}),x="p-checkbox-icon p-c",w=b.getJSXIcon(y?l.icon||e.createElement(O,{className:x}):null,{className:x},{props:l,checked:y});return e.createElement(e.Fragment,null,e.createElement("div",I({ref:c,id:l.id,className:S,style:l.style},g,{onPointerUp:s,onContextMenu:l.onContextMenu,onMouseDown:l.onMouseDown}),e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",I({ref:u,type:"checkbox",id:l.inputId,name:l.name,tabIndex:l.tabIndex,defaultChecked:y,onFocus:function(){a(!0)},onBlur:function(){a(!1)},onKeyDown:function(e){"Space"!==e.code&&" "!==e.key||s(e)},disabled:l.disabled,readOnly:l.readOnly,required:l.required},E))),e.createElement("div",{className:k},w)),h&&e.createElement(p,I({target:c,content:l.tooltip},l.tooltipOptions)))})));function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach((function(t){N(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}H.displayName="Checkbox";var q=e.memo((function(t){var l={filter:function(e){return r(e)},reset:function(){return t.resetFilter()}},r=function(e){t.onFilter&&t.onFilter({originalEvent:e,query:e.target.value})},o=function(e){t.onSelectAll&&t.onSelectAll({originalEvent:e,checked:t.selectAll}),e.preventDefault()},i=function(){var n="p-multiselect-filter-icon",o=b.getJSXIcon(t.filterIcon||e.createElement(k,{className:n}),{className:n},{props:t});if(t.filter){var i=d("p-multiselect-filter-container"),a=e.createElement("div",{className:i},e.createElement(E,{ref:t.filterRef,type:"text",role:"textbox",value:t.filterValue,onChange:r,className:"p-multiselect-filter",placeholder:t.filterPlaceholder}),o);if(t.filterTemplate)a=f.getJSXElement(t.filterTemplate,{className:i,element:a,filterOptions:l,onFilter:r,filterIconClassName:n,props:t});return e.createElement(e.Fragment,null,a)}return null}(),a="p-checkbox-icon p-c",u=b.getJSXIcon(t.itemCheckboxIcon||e.createElement(O,{className:a}),{className:a},{selected:t.selected}),s=t.showSelectAll?e.createElement(H,{checked:t.selectAll,onChange:o,role:"checkbox","aria-checked":t.selectAll,icon:u}):null,p={className:"p-multiselect-close-icon","aria-hidden":!0},m=b.getJSXIcon(t.closeIcon||e.createElement(c,p),X({},p),{props:t}),v=e.createElement("button",{type:"button",className:"p-multiselect-close p-link","aria-label":n("close"),onClick:t.onClose},m,e.createElement(S,null)),y=e.createElement("div",{className:"p-multiselect-header"},s,i,v);return t.template?f.getJSXElement(t.template,{className:"p-multiselect-header",checkboxElement:s,checked:t.selectAll,onChange:o,filterElement:i,closeElement:v,closeElementClassName:"p-multiselect-close p-link",closeIconClassName:"p-multiselect-close-icon",onCloseClick:t.onClose,element:y,itemCheckboxIcon:u,props:t}):y}));q.displayName="MultiSelectHeader";var B=e.memo((function(t){var n=d("p-multiselect-item",{"p-highlight":t.selected,"p-disabled":t.disabled},t.className,t.option.className),l=d("p-checkbox-box",{"p-highlight":t.selected}),r="p-checkbox-icon p-c",o=t.selected?b.getJSXIcon(t.checkboxIcon||e.createElement(O,{className:r}),{className:r},{selected:t.selected}):null,i=t.template?f.getJSXElement(t.template,t.option):t.label;return e.createElement("li",{className:n,style:t.style,onClick:function(e){t.onClick&&t.onClick({originalEvent:e,option:t.option}),e.preventDefault()},tabIndex:t.disabled?null:t.tabIndex||0,onKeyDown:function(e){t.onKeyDown&&t.onKeyDown({originalEvent:e,option:t.option})},role:"option","aria-selected":t.selected},e.createElement("div",{className:"p-checkbox p-component"},e.createElement("div",{className:l},o)),e.createElement("span",null,i),e.createElement(S,null))}));function _(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_(Object(n),!0).forEach((function(t){N(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}B.displayName="MultiSelectItem";var U=e.memo(e.forwardRef((function(l,r){var o,i,a,c,u,s=e.useRef(null),p=e.useRef(null),b=function(){l.onEnter((function(){if(s.current){var e=l.getSelectedOptionIndex();-1!==e&&setTimeout((function(){return s.current.scrollToIndex(e)}),0)}}))},v=function(){l.onEntered((function(){l.filter&&p.current&&m.focus(p.current,!1)}))},O=function(e){s.current&&s.current.scrollToIndex(0),l.onFilterInputChange&&l.onFilterInputChange(e)},E=function(){if(l.panelFooterTemplate){var t=f.getJSXElement(l.panelFooterTemplate,l,l.onOverlayHide);return e.createElement("div",{className:"p-multiselect-footer"},t)}return null},S=function(t,n){return l.getOptionGroupChildren(t).map((function(t,r){var o=l.getOptionLabel(t),i=r+"_"+l.getOptionRenderKey(t),a=l.isOptionDisabled(t),c=a?null:l.tabIndex||0,u=l.isSelected(t);return e.createElement(B,{key:i,label:o,option:t,style:n,template:l.itemTemplate,selected:u,onClick:l.onOptionSelect,onKeyDown:l.onOptionKeyDown,tabIndex:c,disabled:a,className:l.itemClassName,checkboxIcon:l.checkboxIcon})}))},k=function(){var t=f.getJSXElement(l.emptyFilterMessage,l)||n("emptyFilterMessage");return e.createElement("li",{className:"p-multiselect-empty-message"},t)},x=function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o={height:r.props?r.props.itemSize:void 0};if(l.optionGroupLabel){var i=l.optionGroupTemplate?f.getJSXElement(l.optionGroupTemplate,t,n):l.getOptionGroupLabel(t),a=S(t,o),c=n+"_"+l.getOptionGroupRenderKey(t);return e.createElement(e.Fragment,{key:c},e.createElement("li",{className:"p-multiselect-item-group",style:o},i),a)}var u=l.getOptionLabel(t),s=n+"_"+l.getOptionRenderKey(t),p=l.isOptionDisabled(t),m=p?null:l.tabIndex||0,d=l.isSelected(t);return e.createElement(B,{key:s,label:u,option:t,style:o,template:l.itemTemplate,selected:d,onClick:l.onOptionSelect,onKeyDown:l.onOptionKeyDown,tabIndex:m,disabled:p,className:l.itemClassName,checkboxIcon:l.checkboxIcon})},w=function(){if(l.virtualScrollerOptions){var t=z(z({},l.virtualScrollerOptions),{style:z(z({},l.virtualScrollerOptions.style),{height:l.scrollHeight}),className:d("p-multiselect-items-wrapper",l.virtualScrollerOptions.className),items:l.visibleOptions,autoSize:!0,onLazyLoad:function(e){return l.virtualScrollerOptions.onLazyLoad(z(z({},e),{filter:l.filterValue}))},itemTemplate:function(e,t){return e&&x(e,t.index,t)},contentTemplate:function(t){var n=d("p-multiselect-items p-component",t.className),r=l.visibleOptions&&l.visibleOptions.length||!l.hasFilter?t.children:k();return e.createElement("ul",{ref:t.contentRef,style:t.style,className:n,role:"listbox","aria-multiselectable":!0},r)}});return e.createElement(g,I({ref:s},t))}var n=f.isNotEmpty(l.visibleOptions)?l.visibleOptions.map(x):l.hasFilter?k():null;return e.createElement("div",{className:"p-multiselect-items-wrapper",style:{maxHeight:l.scrollHeight}},e.createElement("ul",{className:"p-multiselect-items p-component",role:"listbox","aria-multiselectable":!0},n))},C=(o=l.allowOptionSelect(),i=d("p-multiselect-panel p-component",{"p-multiselect-inline":l.inline,"p-multiselect-flex":l.flex,"p-multiselect-limited":!o,"p-input-filled":"filled"===t.inputStyle,"p-ripple-disabled":!1===t.ripple},l.panelClassName),a=e.createElement(q,{filter:l.filter,filterRef:p,filterValue:l.filterValue,filterTemplate:l.filterTemplate,onFilter:O,filterPlaceholder:l.filterPlaceholder,onClose:l.onCloseClick,showSelectAll:l.showSelectAll,selectAll:l.isAllSelected(),onSelectAll:l.onSelectAll,template:l.panelHeaderTemplate,resetFilter:l.resetFilter,closeIcon:l.closeIcon,filterIcon:l.filterIcon,itemCheckboxIcon:l.itemCheckboxIcon}),c=w(),u=E(),l.inline?e.createElement("div",{ref:r,className:i,style:l.panelStyle,onClick:l.onClick},c,u):e.createElement(y,{nodeRef:r,classNames:"p-connected-overlay",in:l.in,timeout:{enter:120,exit:100},options:l.transitionOptions,unmountOnExit:!0,onEnter:b,onEntered:v,onExit:l.onExit,onExited:l.onExited},e.createElement("div",{ref:r,className:i,style:l.panelStyle,onClick:l.onClick},a,c,u)));return l.inline?C:e.createElement(h,{element:C,appendTo:l.appendTo})})));function Y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function $(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(n),!0).forEach((function(t){N(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Z(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=Q(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,r=function(){};return{s:r,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw o}}}}function Q(e,t){if(e){if("string"==typeof e)return W(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)?W(e,t):void 0}}function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}U.displayName="MultiSelectPanel";var ee=e.memo(e.forwardRef((function(n,y){var h=K.getProps(n),g=V(e.useState(""),2),O=g[0],E=g[1],S=V(e.useState(!1),2),k=S[0],x=S[1],w=V(e.useState(h.inline),2),C=w[0],P=w[1],D=e.useRef(null),j=e.useRef(h.inputRef),F=e.useRef(null),L=e.useRef(null),T=O&&O.trim().length>0,R=f.isEmpty(h.value),M=h.optionValue?null:h.dataKey,G=V(o({target:D,overlay:L,listener:function(e,t){t.valid&&("outside"===t.type?!te(e)&&W():W())},when:C}),2),H=G[0],J=G[1],X=function(){return!h.selectionLimit||!h.value||h.value&&h.value.length<h.selectionLimit},q=function(e){var t=e.originalEvent,n=e.option;if(!h.disabled&&!se(n)){var l=ce(n),r=pe(n),o=re(n),i=X();o?z(t,h.value.filter((function(e){return!f.equals(r?e:ce(e),l,M)})),n):i&&z(t,[].concat(A(h.value||[]),[l]),n)}},B=function e(t){var n=t.nextElementSibling;return n?m.hasClass(n,"p-disabled")||m.hasClass(n,"p-multiselect-item-group")?e(n):n:null},_=function e(t){var n=t.previousElementSibling;return n?m.hasClass(n,"p-disabled")||m.hasClass(n,"p-multiselect-item-group")?e(n):n:null},z=function(e,t,n){h.onChange&&h.onChange({originalEvent:e,value:t,selectedOption:n,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:h.name,id:h.id,value:t}})},Y=function(){E(""),h.onFilter&&h.onFilter({filter:""})},Q=function(){P(!0)},W=function(){P(!1)},ee=function(){m.alignOverlay(L.current,F.current.parentElement,h.appendTo||t.appendTo)},te=function(e){return m.hasClass(e.target,"p-multiselect-clear-icon")},ne=function(e){return L.current&&L.current.contains(e.target)},le=function(e,t){return t.findIndex((function(t){return e.some((function(e){return f.equals(e,ce(t),M)}))}))},re=function(e){if(h.value){var t=ce(e),n=pe(e);return h.value.some((function(e){return f.equals(n?e:ce(e),t,M)}))}return!1},oe=function(e){var t;if(h.options)if(h.optionGroupLabel){var n,l=Z(h.options);try{for(l.s();!(n=l.n()).done;){if(t=ie(e,ue(n.value)))break}}catch(e){l.e(e)}finally{l.f()}}else t=ie(e,h.options);return t?ae(t):null},ie=function(e,t){return t.find((function(t){return f.equals(ce(t),e,M)}))},ae=function(e){return h.optionLabel?f.resolveFieldData(e,h.optionLabel):e&&void 0!==e.label?e.label:e},ce=function(e){if(h.useOptionAsValue)return e;if(h.optionValue){var t=f.resolveFieldData(e,h.optionValue);return null!==t?t:e}return e&&void 0!==e.value?e.value:e},ue=function(e){return f.resolveFieldData(e,h.optionGroupChildren)},se=function(e){return h.optionDisabled?f.isFunction(h.optionDisabled)?h.optionDisabled(e):f.resolveFieldData(e,h.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},pe=function(e){return!h.useOptionAsValue&&h.optionValue||e&&void 0!==e.value},fe=function(e,t){var n=h.value.filter((function(e){return!f.equals(e,t,M)}));z(e,n,t)},me=function(){var e=/{(.*?)}/;return e.test(h.selectedItemsLabel)?h.selectedItemsLabel.replace(h.selectedItemsLabel.match(e)[0],h.value.length+""):h.selectedItemsLabel},de=function(){if(!R&&!h.fixedPlaceholder)return f.isNotEmpty(h.maxSelectedLabels)&&h.value.length>h.maxSelectedLabels?me():h.value.reduce((function(e,t,n){return e+(0!==n?",":"")+oe(t)}),"")};e.useImperativeHandle(y,(function(){return{props:h,show:Q,hide:W,focus:function(){return m.focus(j.current)},getElement:function(){return D.current},getOverlay:function(){return L.current},getInput:function(){return j.current}}})),e.useEffect((function(){f.combinedRefs(j,h.inputRef)}),[j,h.inputRef]),e.useEffect((function(){setTimeout((function(){h.overlayVisible?Q():W()}),100)}),[h.overlayVisible]),r((function(){C&&T&&ee()}),[C,T]),i((function(){v.clear(L.current)}));var be=function(){if(T){var e=O.trim().toLocaleLowerCase(h.filterLocale),t=h.filterBy?h.filterBy.split(","):[h.optionLabel||"label"];if(h.optionGroupLabel){var n,r=[],o=Z(h.options);try{for(o.s();!(n=o.n()).done;){var i=n.value,a=l.filter(ue(i),t,e,h.filterMatchMode,h.filterLocale);a&&a.length&&r.push($($({},i),N({},h.optionGroupChildren,a)))}}catch(e){o.e(e)}finally{o.f()}return r}return l.filter(h.options,t,e,h.filterMatchMode,h.filterLocale)}return h.options}(),ve=f.isNotEmpty(h.tooltip),ye=K.getOtherProps(h),he=f.reduceKeys(ye,m.ARIA_PROPS),ge=d("p-multiselect p-component p-inputwrapper",{"p-multiselect-chip":"chip"===h.display,"p-disabled":h.disabled,"p-multiselect-clearable":h.showClear&&!h.disabled,"p-focus":k,"p-inputwrapper-filled":f.isNotEmpty(h.value),"p-inputwrapper-focus":k||C},h.className),Oe="p-multiselect-trigger-icon p-c",Ee=e.createElement("div",{className:"p-multiselect-trigger"},h.dropdownIcon?b.getJSXIcon(h.dropdownIcon,{className:Oe},{props:h}):e.createElement(a,{className:Oe})),Se=!h.inline&&function(){var t=h.selectedItemTemplate?R?f.getJSXElement(h.selectedItemTemplate):f.isNotEmpty(h.maxSelectedLabels)&&h.value.length>h.maxSelectedLabels?me():h.value.map((function(t,n){var l=f.getJSXElement(h.selectedItemTemplate,t);return e.createElement(e.Fragment,{key:n},l)})):"chip"!==h.display||R?de():h.value.slice(0,h.maxSelectedLabels||h.value.length).map((function(t){var n=oe(t),l=!h.disabled&&(h.removeIcon?b.getJSXIcon(h.removeIcon,{className:"p-multiselect-token-icon",onClick:function(e){return fe(e,t)}},{props:h}):e.createElement(u,{className:"p-multiselect-token-icon",onClick:function(e){return fe(e,t)}}));return e.createElement("div",{className:"p-multiselect-token",key:n},e.createElement("span",{className:"p-multiselect-token-label"},n),l)})),n=d("p-multiselect-label",{"p-placeholder":R&&h.placeholder,"p-multiselect-label-empty":R&&!h.placeholder&&!h.selectedItemTemplate,"p-multiselect-items-label":!R&&"chip"!==h.display&&h.value.length>h.maxSelectedLabels});return e.createElement("div",{ref:F,className:"p-multiselect-label-container"},e.createElement("div",{className:n},t||h.placeholder||"empty"))}(),ke=!h.inline&&function(){var t="p-multiselect-clear-icon",n=b.getJSXIcon(h.clearIcon||e.createElement(c,{className:t}),{className:t},{props:h});return R||!h.showClear||h.disabled?null:e.createElement("i",{className:t,onClick:function(e){return z(e,null,null)}},n)}();return e.createElement(e.Fragment,null,e.createElement("div",I({ref:D,id:h.id,style:h.style,className:ge},ye,{onClick:function(e){h.inline||h.disabled||ne(e)||m.hasClass(e.target,"p-multiselect-token-icon")||te(e)||(C?W():Q(),m.focus(j.current),e.preventDefault())}}),e.createElement("div",{className:"p-hidden-accessible"},e.createElement("input",I({ref:j,id:h.inputId,name:h.name,readOnly:!0,type:"text",onFocus:function(e){x(!0),h.onFocus&&h.onFocus(e)},onBlur:function(e){x(!1),h.onBlur&&h.onBlur(e)},onKeyDown:function(e){switch(e.which){case 40:if(h.inline)break;!C&&e.altKey&&(Q(),e.preventDefault());break;case 32:if(h.inline)break;C?W():Q(),e.preventDefault();break;case 27:if(h.inline)break;W();break;case 9:if(C){var t=m.getFirstFocusableElement(L.current);t&&(t.focus(),e.preventDefault())}}},role:"listbox","aria-expanded":C,disabled:h.disabled,tabIndex:h.tabIndex},he))),!h.inline&&e.createElement(e.Fragment,null,Se,ke,Ee),e.createElement(U,I({ref:L,visibleOptions:be},h,{onClick:function(e){s.emit("overlay-click",{originalEvent:e,target:D.current})},onOverlayHide:W,filterValue:O,hasFilter:T,onFilterInputChange:function(e){var t=e.query;E(t),h.onFilter&&h.onFilter({originalEvent:e,filter:t})},resetFilter:Y,onCloseClick:function(e){W(),m.focus(j.current),e.preventDefault(),e.stopPropagation()},onSelectAll:function(e){if(h.onSelectAll)h.onSelectAll(e);else{var t=null;if(e.checked){if(t=[],be){var n=be.filter((function(e){return se(e)&&re(e)}));t=n.map((function(e){return ce(e)}))}}else if(be){var l=be.filter((function(e){return!se(e)}));h.optionGroupLabel?(t=[],l.forEach((function(e){return t=[].concat(A(t),A(ue(e).filter((function(e){return!se(e)})).map((function(e){return ce(e)}))))}))):t=l.map((function(e){return ce(e)}))}z(e.originalEvent,t,t)}},getOptionLabel:ae,getOptionRenderKey:function(e){return h.dataKey?f.resolveFieldData(e,h.dataKey):ae(e)},isOptionDisabled:se,getOptionGroupChildren:ue,getOptionGroupLabel:function(e){return f.resolveFieldData(e,h.optionGroupLabel)},getOptionGroupRenderKey:function(e){return f.resolveFieldData(e,h.optionGroupLabel)},isSelected:re,getSelectedOptionIndex:function(){if(null!=h.value&&h.options){if(h.optionGroupLabel){var e=0,t=h.options.findIndex((function(t,n){return(e=n)&&-1!==le(h.value,ue(t))}));return-1!==t?{group:e,option:t}:-1}return le(h.value,h.options)}return-1},isAllSelected:function(){if(h.onSelectAll)return h.selectAll;if(f.isEmpty(be))return!1;var e=be.filter((function(e){return!se(e)}));if(!h.optionGroupLabel)return!e.some((function(e){return!re(e)}));var t,n=Z(e);try{for(n.s();!(t=n.n()).done;){return!ue(t.value).filter((function(e){return!se(e)})).some((function(e){return!re(e)}))}}catch(e){n.e(e)}finally{n.f()}return!0},onOptionSelect:q,allowOptionSelect:X,onOptionKeyDown:function(e){var t=e.originalEvent,n=t.currentTarget;switch(t.which){case 40:var l=B(n);l&&l.focus(),t.preventDefault();break;case 38:var r=_(n);r&&r.focus(),t.preventDefault();break;case 13:case 32:q(e),t.preventDefault();break;case 27:W(),m.focus(j.current)}},in:C,onEnter:function(e){var n;v.set("overlay",L.current,t.autoZIndex,t.zIndex.overlay),ee(),(n=m.findSingle(L.current,"li.p-highlight"))&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"nearest"}),e&&e()},onEntered:function(e){e&&e(),H(),h.onShow&&h.onShow()},onExit:function(){J()},onExited:function(){h.filter&&h.resetFilterOnHide&&Y(),v.clear(L.current),h.onHide&&h.onHide()}}))),ve&&e.createElement(p,I({target:D,content:h.tooltip},h.tooltipOptions)))})));ee.displayName="MultiSelect";export{ee as MultiSelect};