primeng 16.0.0-rc.2 → 16.0.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 (677) hide show
  1. package/accordion/accordion.d.ts +16 -4
  2. package/accordion/accordion.interface.d.ts +4 -2
  3. package/animate/animate.d.ts +6 -0
  4. package/api/confirmaeventtype.d.ts +3 -0
  5. package/api/confirmation.d.ts +1 -0
  6. package/api/confirmationservice.d.ts +17 -0
  7. package/api/filtermetadata.d.ts +1 -0
  8. package/api/lazyloadevent.d.ts +1 -0
  9. package/api/lazyloadmeta.d.ts +1 -0
  10. package/api/megamenuitem.d.ts +1 -0
  11. package/api/menuitem.d.ts +32 -19
  12. package/api/message.d.ts +1 -0
  13. package/api/messageservice.d.ts +19 -0
  14. package/api/overlayoptions.d.ts +12 -0
  15. package/api/public_api.d.ts +3 -0
  16. package/api/scrolleroptions.d.ts +116 -0
  17. package/api/selectitem.d.ts +1 -0
  18. package/api/selectitemgroup.d.ts +1 -0
  19. package/api/sortevent.d.ts +1 -0
  20. package/api/sortmeta.d.ts +1 -0
  21. package/api/tablestate.d.ts +1 -0
  22. package/api/tooltipoptions.d.ts +63 -0
  23. package/api/translation.d.ts +1 -0
  24. package/api/treenode.d.ts +62 -7
  25. package/api/treenodedragevent.d.ts +16 -0
  26. package/api/treetablenode.d.ts +36 -0
  27. package/autocomplete/autocomplete.d.ts +6 -2
  28. package/autocomplete/autocomplete.interface.d.ts +11 -8
  29. package/autofocus/autofocus.d.ts +4 -0
  30. package/avatar/avatar.d.ts +4 -0
  31. package/avatargroup/avatargroup.d.ts +5 -0
  32. package/badge/badge.d.ts +8 -0
  33. package/blockui/blockui.d.ts +4 -1
  34. package/blockui/blockui.interface.d.ts +1 -1
  35. package/breadcrumb/breadcrumb.d.ts +4 -0
  36. package/breadcrumb/breadcrumb.interface.d.ts +2 -1
  37. package/button/button.d.ts +8 -0
  38. package/button/button.interface.d.ts +3 -3
  39. package/calendar/calendar.d.ts +10 -5
  40. package/calendar/calendar.interface.d.ts +70 -12
  41. package/card/card.d.ts +4 -0
  42. package/card/card.interface.d.ts +5 -5
  43. package/carousel/carousel.d.ts +14 -8
  44. package/carousel/carousel.interface.d.ts +15 -4
  45. package/cascadeselect/cascadeselect.d.ts +12 -7
  46. package/cascadeselect/cascadeselect.interface.d.ts +7 -3
  47. package/chart/chart.d.ts +6 -2
  48. package/checkbox/checkbox.d.ts +5 -1
  49. package/checkbox/checkbox.interface.d.ts +2 -1
  50. package/chip/chip.d.ts +4 -0
  51. package/chip/chip.interface.d.ts +2 -2
  52. package/chips/chips.d.ts +13 -7
  53. package/chips/chips.interface.d.ts +6 -3
  54. package/colorpicker/colorpicker.d.ts +6 -2
  55. package/colorpicker/colorpicker.interface.d.ts +1 -0
  56. package/confirmdialog/confirmdialog.d.ts +7 -3
  57. package/confirmdialog/confirmdialog.interface.d.ts +4 -4
  58. package/confirmpopup/confirmpopup.d.ts +5 -1
  59. package/confirmpopup/confirmpopup.interface.d.ts +2 -2
  60. package/contextmenu/contextmenu.d.ts +5 -1
  61. package/dataview/dataview.d.ts +12 -3
  62. package/dataview/dataview.interface.d.ts +11 -6
  63. package/defer/defer.d.ts +5 -1
  64. package/dialog/dialog.d.ts +12 -8
  65. package/dialog/dialog.interface.d.ts +6 -6
  66. package/divider/divider.d.ts +4 -0
  67. package/dock/dock.d.ts +5 -1
  68. package/dragdrop/dragdrop.d.ts +9 -0
  69. package/dropdown/dropdown.d.ts +17 -11
  70. package/dropdown/dropdown.interface.d.ts +18 -8
  71. package/dynamicdialog/dialogservice.d.ts +11 -0
  72. package/dynamicdialog/dynamicdialog-config.d.ts +91 -2
  73. package/dynamicdialog/dynamicdialog-ref.d.ts +70 -0
  74. package/editor/editor.d.ts +4 -0
  75. package/editor/editor.interface.d.ts +5 -2
  76. package/esm2022/accordion/accordion.interface.mjs +1 -1
  77. package/esm2022/accordion/accordion.mjs +15 -3
  78. package/esm2022/animate/animate.mjs +7 -1
  79. package/esm2022/api/confirmaeventtype.mjs +4 -1
  80. package/esm2022/api/confirmation.mjs +1 -1
  81. package/esm2022/api/confirmationservice.mjs +18 -1
  82. package/esm2022/api/contextmenuservice.mjs +1 -1
  83. package/esm2022/api/filtermetadata.mjs +1 -1
  84. package/esm2022/api/lazyloadevent.mjs +1 -1
  85. package/esm2022/api/lazyloadmeta.mjs +1 -1
  86. package/esm2022/api/megamenuitem.mjs +1 -1
  87. package/esm2022/api/menuitem.mjs +1 -1
  88. package/esm2022/api/message.mjs +1 -1
  89. package/esm2022/api/messageservice.mjs +20 -1
  90. package/esm2022/api/overlayoptions.mjs +1 -1
  91. package/esm2022/api/public_api.mjs +4 -1
  92. package/esm2022/api/scrolleroptions.mjs +2 -0
  93. package/esm2022/api/selectitem.mjs +1 -1
  94. package/esm2022/api/selectitemgroup.mjs +1 -1
  95. package/esm2022/api/sortevent.mjs +1 -1
  96. package/esm2022/api/sortmeta.mjs +1 -1
  97. package/esm2022/api/tablestate.mjs +1 -1
  98. package/esm2022/api/tooltipoptions.mjs +2 -0
  99. package/esm2022/api/translation.mjs +1 -1
  100. package/esm2022/api/treenode.mjs +1 -1
  101. package/esm2022/api/treenodedragevent.mjs +1 -1
  102. package/esm2022/api/treetablenode.mjs +2 -0
  103. package/esm2022/autocomplete/autocomplete.interface.mjs +1 -1
  104. package/esm2022/autocomplete/autocomplete.mjs +6 -2
  105. package/esm2022/autofocus/autofocus.mjs +5 -1
  106. package/esm2022/avatar/avatar.mjs +5 -1
  107. package/esm2022/avatargroup/avatargroup.mjs +6 -1
  108. package/esm2022/badge/badge.mjs +9 -1
  109. package/esm2022/blockui/blockui.interface.mjs +1 -1
  110. package/esm2022/blockui/blockui.mjs +5 -2
  111. package/esm2022/breadcrumb/breadcrumb.interface.mjs +1 -1
  112. package/esm2022/breadcrumb/breadcrumb.mjs +5 -1
  113. package/esm2022/button/button.interface.mjs +1 -1
  114. package/esm2022/button/button.mjs +9 -1
  115. package/esm2022/calendar/calendar.interface.mjs +1 -1
  116. package/esm2022/calendar/calendar.mjs +10 -5
  117. package/esm2022/card/card.interface.mjs +1 -1
  118. package/esm2022/card/card.mjs +5 -1
  119. package/esm2022/carousel/carousel.interface.mjs +1 -1
  120. package/esm2022/carousel/carousel.mjs +12 -4
  121. package/esm2022/cascadeselect/cascadeselect.interface.mjs +1 -1
  122. package/esm2022/cascadeselect/cascadeselect.mjs +11 -6
  123. package/esm2022/chart/chart.mjs +5 -1
  124. package/esm2022/checkbox/checkbox.interface.mjs +1 -1
  125. package/esm2022/checkbox/checkbox.mjs +6 -2
  126. package/esm2022/chip/chip.interface.mjs +1 -1
  127. package/esm2022/chip/chip.mjs +5 -1
  128. package/esm2022/chips/chips.interface.mjs +1 -1
  129. package/esm2022/chips/chips.mjs +10 -6
  130. package/esm2022/colorpicker/colorpicker.interface.mjs +1 -1
  131. package/esm2022/colorpicker/colorpicker.mjs +7 -3
  132. package/esm2022/confirmdialog/confirmdialog.interface.mjs +1 -1
  133. package/esm2022/confirmdialog/confirmdialog.mjs +7 -3
  134. package/esm2022/confirmpopup/confirmpopup.interface.mjs +1 -1
  135. package/esm2022/confirmpopup/confirmpopup.mjs +28 -22
  136. package/esm2022/contextmenu/contextmenu.mjs +23 -13
  137. package/esm2022/dataview/dataview.interface.mjs +1 -1
  138. package/esm2022/dataview/dataview.mjs +13 -4
  139. package/esm2022/defer/defer.mjs +6 -2
  140. package/esm2022/dialog/dialog.interface.mjs +1 -1
  141. package/esm2022/dialog/dialog.mjs +11 -7
  142. package/esm2022/divider/divider.mjs +5 -1
  143. package/esm2022/dock/dock.mjs +6 -2
  144. package/esm2022/dom/domhandler.mjs +2 -2
  145. package/esm2022/dragdrop/dragdrop.mjs +10 -1
  146. package/esm2022/dropdown/dropdown.interface.mjs +1 -1
  147. package/esm2022/dropdown/dropdown.mjs +14 -10
  148. package/esm2022/dynamicdialog/dialogservice.mjs +12 -1
  149. package/esm2022/dynamicdialog/dynamicdialog-config.mjs +86 -1
  150. package/esm2022/dynamicdialog/dynamicdialog-ref.mjs +71 -1
  151. package/esm2022/dynamicdialog/dynamicdialog.mjs +1 -1
  152. package/esm2022/editor/editor.interface.mjs +1 -1
  153. package/esm2022/editor/editor.mjs +5 -1
  154. package/esm2022/fieldset/fieldset.interface.mjs +1 -1
  155. package/esm2022/fieldset/fieldset.mjs +5 -1
  156. package/esm2022/fileupload/fileupload.interface.mjs +1 -1
  157. package/esm2022/fileupload/fileupload.mjs +13 -13
  158. package/esm2022/focustrap/focustrap.mjs +5 -1
  159. package/esm2022/galleria/galleria.interface.mjs +1 -1
  160. package/esm2022/galleria/galleria.mjs +8 -4
  161. package/esm2022/icons/arrowdown/arrowdown.mjs +10 -5
  162. package/esm2022/icons/arrowleft/arrowleft.mjs +10 -5
  163. package/esm2022/icons/arrowup/arrowup.mjs +10 -5
  164. package/esm2022/icons/ban/ban.mjs +10 -5
  165. package/esm2022/icons/exclamationtriangle/exclamationtriangle.mjs +10 -5
  166. package/esm2022/icons/eyeslash/eyeslash.mjs +10 -5
  167. package/esm2022/icons/filter/filter.mjs +10 -5
  168. package/esm2022/icons/filterslash/filterslash.mjs +10 -5
  169. package/esm2022/icons/home/home.mjs +10 -5
  170. package/esm2022/icons/infocircle/infocircle.mjs +10 -5
  171. package/esm2022/icons/pencil/pencil.mjs +10 -5
  172. package/esm2022/icons/plus/plus.mjs +10 -5
  173. package/esm2022/icons/refresh/refresh.mjs +10 -5
  174. package/esm2022/icons/search/search.mjs +10 -5
  175. package/esm2022/icons/searchminus/searchminus.mjs +10 -5
  176. package/esm2022/icons/searchplus/searchplus.mjs +10 -5
  177. package/esm2022/icons/sortalt/sortalt.mjs +10 -5
  178. package/esm2022/icons/sortamountdown/sortamountdown.mjs +10 -5
  179. package/esm2022/icons/sortamountupalt/sortamountupalt.mjs +10 -5
  180. package/esm2022/icons/spinner/spinner.mjs +10 -5
  181. package/esm2022/icons/star/star.mjs +10 -5
  182. package/esm2022/icons/starfill/starfill.mjs +10 -5
  183. package/esm2022/icons/thlarge/thlarge.mjs +10 -5
  184. package/esm2022/icons/timescircle/timescircle.mjs +10 -5
  185. package/esm2022/icons/trash/trash.mjs +10 -5
  186. package/esm2022/icons/undo/undo.mjs +10 -5
  187. package/esm2022/icons/upload/upload.mjs +10 -5
  188. package/esm2022/icons/windowmaximize/windowmaximize.mjs +10 -5
  189. package/esm2022/icons/windowminimize/windowminimize.mjs +10 -5
  190. package/esm2022/image/image.interface.mjs +1 -1
  191. package/esm2022/image/image.mjs +5 -1
  192. package/esm2022/inplace/inplace.interface.mjs +1 -1
  193. package/esm2022/inplace/inplace.mjs +9 -5
  194. package/esm2022/inputmask/inputmask.interface.mjs +1 -1
  195. package/esm2022/inputmask/inputmask.mjs +6 -2
  196. package/esm2022/inputnumber/inputnumber.interface.mjs +1 -1
  197. package/esm2022/inputnumber/inputnumber.mjs +5 -1
  198. package/esm2022/inputswitch/inputswitch.interface.mjs +1 -1
  199. package/esm2022/inputswitch/inputswitch.mjs +5 -1
  200. package/esm2022/inputtextarea/inputtextarea.mjs +5 -1
  201. package/esm2022/keyfilter/keyfilter.mjs +6 -2
  202. package/esm2022/knob/knob.mjs +5 -1
  203. package/esm2022/listbox/listbox.interface.mjs +1 -1
  204. package/esm2022/listbox/listbox.mjs +6 -2
  205. package/esm2022/megamenu/megamenu.interface.mjs +1 -1
  206. package/esm2022/megamenu/megamenu.mjs +5 -1
  207. package/esm2022/menu/menu.mjs +19 -1
  208. package/esm2022/menubar/menubar.interface.mjs +1 -1
  209. package/esm2022/menubar/menubar.mjs +5 -1
  210. package/esm2022/message/message.mjs +5 -1
  211. package/esm2022/messages/messages.interface.mjs +1 -1
  212. package/esm2022/messages/messages.mjs +5 -1
  213. package/esm2022/multiselect/multiselect.interface.mjs +1 -1
  214. package/esm2022/multiselect/multiselect.mjs +25 -4
  215. package/esm2022/orderlist/orderlist.interface.mjs +1 -1
  216. package/esm2022/orderlist/orderlist.mjs +9 -5
  217. package/esm2022/organizationchart/organizationchart.interface.mjs +1 -1
  218. package/esm2022/organizationchart/organizationchart.mjs +5 -1
  219. package/esm2022/overlay/overlay.mjs +22 -3
  220. package/esm2022/overlaypanel/overlaypanel.mjs +13 -9
  221. package/esm2022/paginator/paginator.interface.mjs +1 -1
  222. package/esm2022/paginator/paginator.mjs +5 -1
  223. package/esm2022/panel/panel.interface.mjs +1 -1
  224. package/esm2022/panel/panel.mjs +12 -10
  225. package/esm2022/panelmenu/panelmenu.interface.mjs +1 -1
  226. package/esm2022/panelmenu/panelmenu.mjs +10 -1
  227. package/esm2022/password/password.mjs +12 -18
  228. package/esm2022/picklist/picklist.interface.mjs +1 -1
  229. package/esm2022/picklist/picklist.mjs +15 -11
  230. package/esm2022/progressbar/progressbar.mjs +5 -1
  231. package/esm2022/progressspinner/progressspinner.mjs +5 -1
  232. package/esm2022/radiobutton/radiobutton.interface.mjs +1 -1
  233. package/esm2022/radiobutton/radiobutton.mjs +6 -2
  234. package/esm2022/rating/rating.interface.mjs +1 -1
  235. package/esm2022/rating/rating.mjs +5 -1
  236. package/esm2022/ripple/ripple.mjs +5 -1
  237. package/esm2022/scroller/scroller.interface.mjs +1 -1
  238. package/esm2022/scroller/scroller.mjs +8 -4
  239. package/esm2022/scrollpanel/scrollpanel.interface.mjs +1 -1
  240. package/esm2022/scrollpanel/scrollpanel.mjs +7 -3
  241. package/esm2022/scrolltop/scrolltop.mjs +6 -2
  242. package/esm2022/selectbutton/selectbutton.interface.mjs +1 -1
  243. package/esm2022/selectbutton/selectbutton.mjs +7 -3
  244. package/esm2022/sidebar/sidebar.interface.mjs +1 -1
  245. package/esm2022/sidebar/sidebar.mjs +6 -2
  246. package/esm2022/skeleton/skeleton.mjs +5 -1
  247. package/esm2022/slidemenu/slidemenu.interface.mjs +1 -1
  248. package/esm2022/slidemenu/slidemenu.mjs +10 -6
  249. package/esm2022/slider/slider.interface.mjs +1 -1
  250. package/esm2022/slider/slider.mjs +5 -1
  251. package/esm2022/speeddial/speeddial.interface.mjs +1 -1
  252. package/esm2022/speeddial/speeddial.mjs +8 -3
  253. package/esm2022/splitbutton/splitbutton.interface.mjs +1 -1
  254. package/esm2022/splitbutton/splitbutton.mjs +5 -1
  255. package/esm2022/splitter/splitter.interface.mjs +1 -1
  256. package/esm2022/splitter/splitter.mjs +6 -2
  257. package/esm2022/steps/steps.mjs +6 -2
  258. package/esm2022/styleclass/styleclass.mjs +5 -1
  259. package/esm2022/table/table.interface.mjs +1 -1
  260. package/esm2022/table/table.mjs +17 -13
  261. package/esm2022/tabmenu/tabmenu.interface.mjs +1 -1
  262. package/esm2022/tabmenu/tabmenu.mjs +6 -2
  263. package/esm2022/tabview/tabview.interface.mjs +1 -1
  264. package/esm2022/tabview/tabview.mjs +11 -3
  265. package/esm2022/tag/tag.interface.mjs +1 -1
  266. package/esm2022/tag/tag.mjs +6 -2
  267. package/esm2022/terminal/terminal.mjs +5 -1
  268. package/esm2022/tieredmenu/tieredmenu.interface.mjs +1 -1
  269. package/esm2022/tieredmenu/tieredmenu.mjs +10 -6
  270. package/esm2022/timeline/timeline.mjs +5 -1
  271. package/esm2022/toast/toast.interface.mjs +1 -1
  272. package/esm2022/toast/toast.mjs +5 -1
  273. package/esm2022/togglebutton/togglebutton.interface.mjs +1 -1
  274. package/esm2022/togglebutton/togglebutton.mjs +8 -4
  275. package/esm2022/toolbar/toolbar.interface.mjs +1 -1
  276. package/esm2022/toolbar/toolbar.mjs +5 -1
  277. package/esm2022/tooltip/public_api.mjs +1 -2
  278. package/esm2022/tooltip/tooltip.mjs +19 -7
  279. package/esm2022/tree/tree.interface.mjs +1 -1
  280. package/esm2022/tree/tree.mjs +36 -17
  281. package/esm2022/treeselect/treeselect.interface.mjs +1 -1
  282. package/esm2022/treeselect/treeselect.mjs +10 -4
  283. package/esm2022/treetable/treetable.interface.mjs +1 -1
  284. package/esm2022/treetable/treetable.mjs +35 -26
  285. package/esm2022/tristatecheckbox/tristatecheckbox.interface.mjs +1 -1
  286. package/esm2022/tristatecheckbox/tristatecheckbox.mjs +5 -1
  287. package/esm2022/virtualscroller/virtualscroller.interface.mjs +1 -1
  288. package/esm2022/virtualscroller/virtualscroller.mjs +5 -1
  289. package/fesm2022/primeng-accordion.mjs +14 -2
  290. package/fesm2022/primeng-accordion.mjs.map +1 -1
  291. package/fesm2022/primeng-animate.mjs +6 -0
  292. package/fesm2022/primeng-animate.mjs.map +1 -1
  293. package/fesm2022/primeng-api.mjs +39 -0
  294. package/fesm2022/primeng-api.mjs.map +1 -1
  295. package/fesm2022/primeng-autocomplete.mjs +5 -1
  296. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  297. package/fesm2022/primeng-autofocus.mjs +4 -0
  298. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  299. package/fesm2022/primeng-avatar.mjs +4 -0
  300. package/fesm2022/primeng-avatar.mjs.map +1 -1
  301. package/fesm2022/primeng-avatargroup.mjs +5 -0
  302. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  303. package/fesm2022/primeng-badge.mjs +8 -0
  304. package/fesm2022/primeng-badge.mjs.map +1 -1
  305. package/fesm2022/primeng-blockui.mjs +4 -1
  306. package/fesm2022/primeng-blockui.mjs.map +1 -1
  307. package/fesm2022/primeng-breadcrumb.mjs +4 -0
  308. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  309. package/fesm2022/primeng-button.mjs +8 -0
  310. package/fesm2022/primeng-button.mjs.map +1 -1
  311. package/fesm2022/primeng-calendar.mjs +9 -4
  312. package/fesm2022/primeng-calendar.mjs.map +1 -1
  313. package/fesm2022/primeng-card.mjs +4 -0
  314. package/fesm2022/primeng-card.mjs.map +1 -1
  315. package/fesm2022/primeng-carousel.mjs +11 -3
  316. package/fesm2022/primeng-carousel.mjs.map +1 -1
  317. package/fesm2022/primeng-cascadeselect.mjs +10 -5
  318. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  319. package/fesm2022/primeng-chart.mjs +4 -0
  320. package/fesm2022/primeng-chart.mjs.map +1 -1
  321. package/fesm2022/primeng-checkbox.mjs +5 -1
  322. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  323. package/fesm2022/primeng-chip.mjs +4 -0
  324. package/fesm2022/primeng-chip.mjs.map +1 -1
  325. package/fesm2022/primeng-chips.mjs +9 -5
  326. package/fesm2022/primeng-chips.mjs.map +1 -1
  327. package/fesm2022/primeng-colorpicker.mjs +6 -2
  328. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  329. package/fesm2022/primeng-confirmdialog.mjs +6 -2
  330. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  331. package/fesm2022/primeng-confirmpopup.mjs +27 -21
  332. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  333. package/fesm2022/primeng-contextmenu.mjs +22 -12
  334. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  335. package/fesm2022/primeng-dataview.mjs +12 -3
  336. package/fesm2022/primeng-dataview.mjs.map +1 -1
  337. package/fesm2022/primeng-defer.mjs +5 -1
  338. package/fesm2022/primeng-defer.mjs.map +1 -1
  339. package/fesm2022/primeng-dialog.mjs +10 -6
  340. package/fesm2022/primeng-dialog.mjs.map +1 -1
  341. package/fesm2022/primeng-divider.mjs +4 -0
  342. package/fesm2022/primeng-divider.mjs.map +1 -1
  343. package/fesm2022/primeng-dock.mjs +5 -1
  344. package/fesm2022/primeng-dock.mjs.map +1 -1
  345. package/fesm2022/primeng-dom.mjs +1 -1
  346. package/fesm2022/primeng-dom.mjs.map +1 -1
  347. package/fesm2022/primeng-dragdrop.mjs +9 -0
  348. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  349. package/fesm2022/primeng-dropdown.mjs +13 -9
  350. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  351. package/fesm2022/primeng-dynamicdialog.mjs +166 -0
  352. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  353. package/fesm2022/primeng-editor.mjs +4 -0
  354. package/fesm2022/primeng-editor.mjs.map +1 -1
  355. package/fesm2022/primeng-fieldset.mjs +4 -0
  356. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  357. package/fesm2022/primeng-fileupload.mjs +12 -12
  358. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  359. package/fesm2022/primeng-focustrap.mjs +4 -0
  360. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  361. package/fesm2022/primeng-galleria.mjs +7 -3
  362. package/fesm2022/primeng-galleria.mjs.map +1 -1
  363. package/fesm2022/primeng-icons-arrowdown.mjs +9 -4
  364. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  365. package/fesm2022/primeng-icons-arrowleft.mjs +9 -4
  366. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  367. package/fesm2022/primeng-icons-arrowup.mjs +9 -4
  368. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  369. package/fesm2022/primeng-icons-ban.mjs +9 -4
  370. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  371. package/fesm2022/primeng-icons-exclamationtriangle.mjs +9 -4
  372. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  373. package/fesm2022/primeng-icons-eyeslash.mjs +9 -4
  374. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  375. package/fesm2022/primeng-icons-filter.mjs +9 -4
  376. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  377. package/fesm2022/primeng-icons-filterslash.mjs +9 -4
  378. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  379. package/fesm2022/primeng-icons-home.mjs +9 -4
  380. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  381. package/fesm2022/primeng-icons-infocircle.mjs +9 -4
  382. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  383. package/fesm2022/primeng-icons-pencil.mjs +9 -4
  384. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  385. package/fesm2022/primeng-icons-plus.mjs +9 -4
  386. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  387. package/fesm2022/primeng-icons-refresh.mjs +9 -4
  388. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  389. package/fesm2022/primeng-icons-search.mjs +9 -4
  390. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  391. package/fesm2022/primeng-icons-searchminus.mjs +9 -4
  392. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  393. package/fesm2022/primeng-icons-searchplus.mjs +9 -4
  394. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  395. package/fesm2022/primeng-icons-sortalt.mjs +9 -4
  396. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  397. package/fesm2022/primeng-icons-sortamountdown.mjs +9 -4
  398. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  399. package/fesm2022/primeng-icons-sortamountupalt.mjs +9 -4
  400. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  401. package/fesm2022/primeng-icons-spinner.mjs +9 -4
  402. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  403. package/fesm2022/primeng-icons-star.mjs +9 -4
  404. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  405. package/fesm2022/primeng-icons-starfill.mjs +9 -4
  406. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  407. package/fesm2022/primeng-icons-thlarge.mjs +9 -4
  408. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  409. package/fesm2022/primeng-icons-timescircle.mjs +9 -4
  410. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  411. package/fesm2022/primeng-icons-trash.mjs +9 -4
  412. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  413. package/fesm2022/primeng-icons-undo.mjs +9 -4
  414. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  415. package/fesm2022/primeng-icons-upload.mjs +9 -4
  416. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  417. package/fesm2022/primeng-icons-windowmaximize.mjs +9 -4
  418. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  419. package/fesm2022/primeng-icons-windowminimize.mjs +9 -4
  420. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  421. package/fesm2022/primeng-image.mjs +4 -0
  422. package/fesm2022/primeng-image.mjs.map +1 -1
  423. package/fesm2022/primeng-inplace.mjs +8 -4
  424. package/fesm2022/primeng-inplace.mjs.map +1 -1
  425. package/fesm2022/primeng-inputmask.mjs +5 -1
  426. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  427. package/fesm2022/primeng-inputnumber.mjs +4 -0
  428. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  429. package/fesm2022/primeng-inputswitch.mjs +4 -0
  430. package/fesm2022/primeng-inputswitch.mjs.map +1 -1
  431. package/fesm2022/primeng-inputtextarea.mjs +4 -0
  432. package/fesm2022/primeng-inputtextarea.mjs.map +1 -1
  433. package/fesm2022/primeng-keyfilter.mjs +5 -1
  434. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  435. package/fesm2022/primeng-knob.mjs +4 -0
  436. package/fesm2022/primeng-knob.mjs.map +1 -1
  437. package/fesm2022/primeng-listbox.mjs +5 -1
  438. package/fesm2022/primeng-listbox.mjs.map +1 -1
  439. package/fesm2022/primeng-megamenu.mjs +4 -0
  440. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  441. package/fesm2022/primeng-menu.mjs +18 -0
  442. package/fesm2022/primeng-menu.mjs.map +1 -1
  443. package/fesm2022/primeng-menubar.mjs +4 -0
  444. package/fesm2022/primeng-menubar.mjs.map +1 -1
  445. package/fesm2022/primeng-message.mjs +4 -0
  446. package/fesm2022/primeng-message.mjs.map +1 -1
  447. package/fesm2022/primeng-messages.mjs +4 -0
  448. package/fesm2022/primeng-messages.mjs.map +1 -1
  449. package/fesm2022/primeng-multiselect.mjs +24 -3
  450. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  451. package/fesm2022/primeng-orderlist.mjs +8 -4
  452. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  453. package/fesm2022/primeng-organizationchart.mjs +4 -0
  454. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  455. package/fesm2022/primeng-overlay.mjs +21 -2
  456. package/fesm2022/primeng-overlay.mjs.map +1 -1
  457. package/fesm2022/primeng-overlaypanel.mjs +12 -8
  458. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  459. package/fesm2022/primeng-paginator.mjs +4 -0
  460. package/fesm2022/primeng-paginator.mjs.map +1 -1
  461. package/fesm2022/primeng-panel.mjs +11 -9
  462. package/fesm2022/primeng-panel.mjs.map +1 -1
  463. package/fesm2022/primeng-panelmenu.mjs +9 -0
  464. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  465. package/fesm2022/primeng-password.mjs +11 -17
  466. package/fesm2022/primeng-password.mjs.map +1 -1
  467. package/fesm2022/primeng-picklist.mjs +14 -10
  468. package/fesm2022/primeng-picklist.mjs.map +1 -1
  469. package/fesm2022/primeng-progressbar.mjs +4 -0
  470. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  471. package/fesm2022/primeng-progressspinner.mjs +4 -0
  472. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  473. package/fesm2022/primeng-radiobutton.mjs +5 -1
  474. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  475. package/fesm2022/primeng-rating.mjs +4 -0
  476. package/fesm2022/primeng-rating.mjs.map +1 -1
  477. package/fesm2022/primeng-ripple.mjs +4 -0
  478. package/fesm2022/primeng-ripple.mjs.map +1 -1
  479. package/fesm2022/primeng-scroller.mjs +7 -3
  480. package/fesm2022/primeng-scroller.mjs.map +1 -1
  481. package/fesm2022/primeng-scrollpanel.mjs +6 -2
  482. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  483. package/fesm2022/primeng-scrolltop.mjs +5 -1
  484. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  485. package/fesm2022/primeng-selectbutton.mjs +6 -2
  486. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  487. package/fesm2022/primeng-sidebar.mjs +5 -1
  488. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  489. package/fesm2022/primeng-skeleton.mjs +4 -0
  490. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  491. package/fesm2022/primeng-slidemenu.mjs +9 -5
  492. package/fesm2022/primeng-slidemenu.mjs.map +1 -1
  493. package/fesm2022/primeng-slider.mjs +4 -0
  494. package/fesm2022/primeng-slider.mjs.map +1 -1
  495. package/fesm2022/primeng-speeddial.mjs +7 -2
  496. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  497. package/fesm2022/primeng-splitbutton.mjs +4 -0
  498. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  499. package/fesm2022/primeng-splitter.mjs +5 -1
  500. package/fesm2022/primeng-splitter.mjs.map +1 -1
  501. package/fesm2022/primeng-steps.mjs +5 -1
  502. package/fesm2022/primeng-steps.mjs.map +1 -1
  503. package/fesm2022/primeng-styleclass.mjs +4 -0
  504. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  505. package/fesm2022/primeng-table.mjs +16 -12
  506. package/fesm2022/primeng-table.mjs.map +1 -1
  507. package/fesm2022/primeng-tabmenu.mjs +5 -1
  508. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  509. package/fesm2022/primeng-tabview.mjs +10 -2
  510. package/fesm2022/primeng-tabview.mjs.map +1 -1
  511. package/fesm2022/primeng-tag.mjs +5 -1
  512. package/fesm2022/primeng-tag.mjs.map +1 -1
  513. package/fesm2022/primeng-terminal.mjs +4 -0
  514. package/fesm2022/primeng-terminal.mjs.map +1 -1
  515. package/fesm2022/primeng-tieredmenu.mjs +9 -5
  516. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  517. package/fesm2022/primeng-timeline.mjs +4 -0
  518. package/fesm2022/primeng-timeline.mjs.map +1 -1
  519. package/fesm2022/primeng-toast.mjs +4 -0
  520. package/fesm2022/primeng-toast.mjs.map +1 -1
  521. package/fesm2022/primeng-togglebutton.mjs +7 -3
  522. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  523. package/fesm2022/primeng-toolbar.mjs +4 -0
  524. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  525. package/fesm2022/primeng-tooltip.mjs +18 -6
  526. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  527. package/fesm2022/primeng-tree.mjs +35 -16
  528. package/fesm2022/primeng-tree.mjs.map +1 -1
  529. package/fesm2022/primeng-treeselect.mjs +9 -3
  530. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  531. package/fesm2022/primeng-treetable.mjs +34 -25
  532. package/fesm2022/primeng-treetable.mjs.map +1 -1
  533. package/fesm2022/primeng-tristatecheckbox.mjs +4 -0
  534. package/fesm2022/primeng-tristatecheckbox.mjs.map +1 -1
  535. package/fesm2022/primeng-virtualscroller.mjs +4 -0
  536. package/fesm2022/primeng-virtualscroller.mjs.map +1 -1
  537. package/fieldset/fieldset.d.ts +4 -0
  538. package/fieldset/fieldset.interface.d.ts +6 -4
  539. package/fileupload/fileupload.d.ts +14 -14
  540. package/fileupload/fileupload.interface.d.ts +37 -6
  541. package/focustrap/focustrap.d.ts +4 -0
  542. package/galleria/galleria.d.ts +7 -3
  543. package/galleria/galleria.interface.d.ts +8 -7
  544. package/icons/arrowdown/arrowdown.d.ts +4 -1
  545. package/icons/arrowleft/arrowleft.d.ts +2 -0
  546. package/icons/arrowup/arrowup.d.ts +2 -0
  547. package/icons/ban/ban.d.ts +2 -0
  548. package/icons/exclamationtriangle/exclamationtriangle.d.ts +4 -1
  549. package/icons/eyeslash/eyeslash.d.ts +2 -0
  550. package/icons/filter/filter.d.ts +2 -0
  551. package/icons/filterslash/filterslash.d.ts +2 -0
  552. package/icons/home/home.d.ts +2 -0
  553. package/icons/infocircle/infocircle.d.ts +2 -0
  554. package/icons/pencil/pencil.d.ts +2 -0
  555. package/icons/plus/plus.d.ts +2 -0
  556. package/icons/refresh/refresh.d.ts +2 -0
  557. package/icons/search/search.d.ts +2 -0
  558. package/icons/searchminus/searchminus.d.ts +2 -0
  559. package/icons/searchplus/searchplus.d.ts +2 -0
  560. package/icons/sortalt/sortalt.d.ts +2 -0
  561. package/icons/sortamountdown/sortamountdown.d.ts +2 -0
  562. package/icons/sortamountupalt/sortamountupalt.d.ts +2 -0
  563. package/icons/spinner/spinner.d.ts +2 -0
  564. package/icons/star/star.d.ts +2 -0
  565. package/icons/starfill/starfill.d.ts +2 -0
  566. package/icons/thlarge/thlarge.d.ts +2 -0
  567. package/icons/timescircle/timescircle.d.ts +2 -0
  568. package/icons/trash/trash.d.ts +2 -0
  569. package/icons/undo/undo.d.ts +2 -0
  570. package/icons/upload/upload.d.ts +2 -0
  571. package/icons/windowmaximize/windowmaximize.d.ts +2 -0
  572. package/icons/windowminimize/windowminimize.d.ts +2 -0
  573. package/image/image.d.ts +4 -0
  574. package/image/image.interface.d.ts +6 -6
  575. package/inplace/inplace.d.ts +8 -4
  576. package/inplace/inplace.interface.d.ts +3 -3
  577. package/inputmask/inputmask.d.ts +7 -3
  578. package/inputmask/inputmask.interface.d.ts +2 -1
  579. package/inputnumber/inputnumber.d.ts +4 -0
  580. package/inputnumber/inputnumber.interface.d.ts +4 -3
  581. package/inputswitch/inputswitch.d.ts +4 -0
  582. package/inputswitch/inputswitch.interface.d.ts +1 -0
  583. package/inputtextarea/inputtextarea.d.ts +4 -0
  584. package/keyfilter/keyfilter.d.ts +8 -4
  585. package/knob/knob.d.ts +4 -0
  586. package/listbox/listbox.d.ts +6 -2
  587. package/listbox/listbox.interface.d.ts +11 -7
  588. package/megamenu/megamenu.d.ts +4 -0
  589. package/megamenu/megamenu.interface.d.ts +3 -3
  590. package/menu/menu.d.ts +18 -0
  591. package/menubar/menubar.d.ts +5 -1
  592. package/menubar/menubar.interface.d.ts +4 -4
  593. package/message/message.d.ts +4 -0
  594. package/messages/messages.d.ts +4 -0
  595. package/messages/messages.interface.d.ts +1 -1
  596. package/multiselect/multiselect.d.ts +25 -4
  597. package/multiselect/multiselect.interface.d.ts +19 -11
  598. package/orderlist/orderlist.d.ts +9 -5
  599. package/orderlist/orderlist.interface.d.ts +12 -9
  600. package/organizationchart/organizationchart.d.ts +4 -0
  601. package/organizationchart/organizationchart.interface.d.ts +5 -0
  602. package/overlay/overlay.d.ts +43 -12
  603. package/overlaypanel/overlaypanel.d.ts +13 -9
  604. package/package.json +134 -134
  605. package/paginator/paginator.d.ts +4 -0
  606. package/paginator/paginator.interface.d.ts +5 -4
  607. package/panel/panel.d.ts +7 -5
  608. package/panel/panel.interface.d.ts +7 -4
  609. package/panelmenu/panelmenu.d.ts +9 -0
  610. package/panelmenu/panelmenu.interface.d.ts +1 -1
  611. package/password/password.d.ts +18 -16
  612. package/picklist/picklist.d.ts +14 -10
  613. package/picklist/picklist.interface.d.ts +24 -13
  614. package/progressbar/progressbar.d.ts +4 -0
  615. package/progressspinner/progressspinner.d.ts +4 -0
  616. package/radiobutton/radiobutton.d.ts +5 -1
  617. package/radiobutton/radiobutton.interface.d.ts +1 -0
  618. package/rating/rating.d.ts +4 -0
  619. package/rating/rating.interface.d.ts +4 -3
  620. package/resources/components/button/button.css +1 -0
  621. package/resources/primeng.css +1 -0
  622. package/resources/primeng.min.css +1 -1
  623. package/ripple/ripple.d.ts +4 -0
  624. package/scroller/scroller.d.ts +13 -12
  625. package/scroller/scroller.interface.d.ts +42 -31
  626. package/scrollpanel/scrollpanel.d.ts +6 -2
  627. package/scrollpanel/scrollpanel.interface.d.ts +1 -1
  628. package/scrolltop/scrolltop.d.ts +5 -1
  629. package/selectbutton/selectbutton.d.ts +4 -0
  630. package/selectbutton/selectbutton.interface.d.ts +3 -1
  631. package/sidebar/sidebar.d.ts +8 -2
  632. package/sidebar/sidebar.interface.d.ts +4 -4
  633. package/skeleton/skeleton.d.ts +4 -0
  634. package/slidemenu/slidemenu.d.ts +9 -5
  635. package/slidemenu/slidemenu.interface.d.ts +2 -2
  636. package/slider/slider.d.ts +4 -0
  637. package/slider/slider.interface.d.ts +2 -0
  638. package/speeddial/speeddial.d.ts +14 -7
  639. package/speeddial/speeddial.interface.d.ts +1 -1
  640. package/splitbutton/splitbutton.d.ts +4 -0
  641. package/splitbutton/splitbutton.interface.d.ts +2 -2
  642. package/splitter/splitter.d.ts +7 -3
  643. package/splitter/splitter.interface.d.ts +3 -1
  644. package/steps/steps.d.ts +5 -1
  645. package/styleclass/styleclass.d.ts +5 -1
  646. package/table/table.d.ts +18 -14
  647. package/table/table.interface.d.ts +164 -72
  648. package/tabmenu/tabmenu.d.ts +5 -1
  649. package/tabmenu/tabmenu.interface.d.ts +2 -2
  650. package/tabview/tabview.d.ts +10 -2
  651. package/tabview/tabview.interface.d.ts +4 -30
  652. package/tag/tag.d.ts +5 -1
  653. package/tag/tag.interface.d.ts +1 -1
  654. package/terminal/terminal.d.ts +4 -0
  655. package/tieredmenu/tieredmenu.d.ts +9 -5
  656. package/tieredmenu/tieredmenu.interface.d.ts +1 -1
  657. package/timeline/timeline.d.ts +4 -0
  658. package/toast/toast.d.ts +11 -5
  659. package/toast/toast.interface.d.ts +11 -12
  660. package/togglebutton/togglebutton.d.ts +5 -1
  661. package/togglebutton/togglebutton.interface.d.ts +1 -0
  662. package/toolbar/toolbar.d.ts +4 -0
  663. package/toolbar/toolbar.interface.d.ts +3 -3
  664. package/tooltip/public_api.d.ts +0 -1
  665. package/tooltip/tooltip.d.ts +26 -5
  666. package/tree/tree.d.ts +40 -21
  667. package/tree/tree.interface.d.ts +20 -10
  668. package/treeselect/treeselect.d.ts +12 -6
  669. package/treeselect/treeselect.interface.d.ts +10 -8
  670. package/treetable/treetable.d.ts +38 -29
  671. package/treetable/treetable.interface.d.ts +29 -50
  672. package/tristatecheckbox/tristatecheckbox.d.ts +4 -0
  673. package/tristatecheckbox/tristatecheckbox.interface.d.ts +3 -2
  674. package/virtualscroller/virtualscroller.d.ts +5 -1
  675. package/virtualscroller/virtualscroller.interface.d.ts +3 -3
  676. package/esm2022/tooltip/tooltip.interface.mjs +0 -2
  677. package/tooltip/tooltip.interface.d.ts +0 -21
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-multiselect.mjs","sources":["../../src/app/components/multiselect/multiselect.ts","../../src/app/components/multiselect/primeng-multiselect.ts"],"sourcesContent":["import { AnimationEvent } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n NgModule,\n NgZone,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { FilterService, Footer, Header, OverlayOptions, OverlayService, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { Overlay, OverlayModule } from 'primeng/overlay';\nimport { RippleModule } from 'primeng/ripple';\nimport { Scroller, ScrollerModule } from 'primeng/scroller';\nimport { ScrollerOptions } from 'primeng/scroller';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { ObjectUtils } from 'primeng/utils';\nimport { CheckIcon } from 'primeng/icons/check';\nimport { SearchIcon } from 'primeng/icons/search';\nimport { TimesCircleIcon } from 'primeng/icons/timescircle';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { ChevronDownIcon } from 'primeng/icons/chevrondown';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { MultiSelectRemoveEvent, MultiSelectFilterOptions, MultiSelectFilterEvent, MultiSelectBlurEvent, MultiSelectChangeEvent, MultiSelectFocusEvent, MultiSelectLazyLoadEvent } from './multiselect.interface';\n\nexport const MULTISELECT_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MultiSelect),\n multi: true\n};\n\n@Component({\n selector: 'p-multiSelectItem',\n template: `\n <li\n class=\"p-multiselect-item\"\n (click)=\"onOptionClick($event)\"\n (keydown)=\"onOptionKeydown($event)\"\n [attr.aria-label]=\"label\"\n [attr.tabindex]=\"disabled ? null : '0'\"\n [ngStyle]=\"{ height: itemSize + 'px' }\"\n [ngClass]=\"{ 'p-highlight': selected, 'p-disabled': disabled }\"\n pRipple\n >\n <div class=\"p-checkbox p-component\">\n <div class=\"p-checkbox-box\" [ngClass]=\"{ 'p-highlight': selected }\">\n <ng-container *ngIf=\"selected\">\n <CheckIcon *ngIf=\"!checkIconTemplate\" [styleClass]=\"'p-checkbox-icon'\" />\n <span *ngIf=\"checkIconTemplate\" class=\"p-checkbox-icon\">\n <ng-template *ngTemplateOutlet=\"checkIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n </div>\n <span *ngIf=\"!template\">{{ label }}</span>\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: option }\"></ng-container>\n </li>\n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'p-element'\n }\n})\nexport class MultiSelectItem {\n @Input() option: any;\n\n @Input() selected: boolean | undefined;\n\n @Input() label: string | undefined;\n\n @Input() disabled: boolean | undefined;\n\n @Input() itemSize: number | undefined;\n\n @Input() template: TemplateRef<any> | undefined;\n\n @Input() checkIconTemplate: TemplateRef<any> | undefined;\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onKeydown: EventEmitter<any> = new EventEmitter();\n\n onOptionClick(event: Event) {\n this.onClick.emit({\n originalEvent: event,\n option: this.option,\n selected: this.selected\n });\n }\n\n onOptionKeydown(event: Event) {\n this.onKeydown.emit({\n originalEvent: event,\n option: this.option\n });\n }\n}\n\n@Component({\n selector: 'p-multiSelect',\n template: `\n <div\n #container\n [ngClass]=\"{ 'p-multiselect p-component': true, 'p-multiselect-open': overlayVisible, 'p-multiselect-chip': display === 'chip', 'p-focus': focus, 'p-disabled': disabled }\"\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n (click)=\"onMouseclick($event, in)\"\n >\n <div class=\"p-hidden-accessible\">\n <input\n #in\n type=\"text\"\n [attr.label]=\"label\"\n readonly=\"readonly\"\n [attr.id]=\"inputId\"\n [attr.name]=\"name\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n [disabled]=\"disabled\"\n [attr.tabindex]=\"tabindex\"\n (keydown)=\"onKeydown($event)\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"overlayVisible\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n role=\"listbox\"\n />\n </div>\n <div class=\"p-multiselect-label-container\" [pTooltip]=\"tooltip\" [tooltipPosition]=\"tooltipPosition\" [positionStyle]=\"tooltipPositionStyle\" [tooltipStyleClass]=\"tooltipStyleClass\">\n <div\n class=\"p-multiselect-label\"\n [ngClass]=\"{ 'p-placeholder': valuesAsString === (defaultLabel || placeholder), 'p-multiselect-label-empty': (valuesAsString == null || valuesAsString.length === 0) && (placeholder == null || placeholder.length === 0) }\"\n >\n <ng-container *ngIf=\"!selectedItemsTemplate\">\n <ng-container *ngIf=\"display === 'comma'\">{{ valuesAsString || 'empty' }}</ng-container>\n <ng-container *ngIf=\"display === 'chip'\">\n <div #token *ngFor=\"let item of value; let i = index\" class=\"p-multiselect-token\">\n <span class=\"p-multiselect-token-label\">{{ findLabelByValue(item) }}</span>\n <ng-container *ngIf=\"!disabled\">\n <TimesCircleIcon *ngIf=\"!removeTokenIconTemplate\" [styleClass]=\"'p-multiselect-token-icon'\" (click)=\"removeChip(item, event)\" />\n <span *ngIf=\"removeTokenIconTemplate\" class=\"p-multiselect-token-icon\" (click)=\"removeChip(item, event)\">\n <ng-container *ngTemplateOutlet=\"removeTokenIconTemplate\"></ng-container>\n </span>\n </ng-container>\n </div>\n <ng-container *ngIf=\"!value || value.length === 0\">{{ placeholder || defaultLabel || 'empty' }}</ng-container>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"selectedItemsTemplate; context: { $implicit: value, removeChip: removeChip.bind(this) }\"></ng-container>\n </div>\n <ng-container *ngIf=\"value != null && filled && !disabled && showClear\">\n <TimesIcon *ngIf=\"!clearIconTemplate\" [styleClass]=\"'p-multiselect-clear-icon'\" (click)=\"clear($event)\" />\n <span *ngIf=\"clearIconTemplate\" class=\"p-multiselect-clear-icon\" (click)=\"clear($event)\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'p-multiselect-trigger': true }\">\n <ng-container *ngIf=\"!dropdownIconTemplate\">\n <span *ngIf=\"dropdownIcon\" class=\"p-multiselect-trigger-icon\" [ngClass]=\"dropdownIcon\"></span>\n <ChevronDownIcon *ngIf=\"!dropdownIcon\" [styleClass]=\"'p-multiselect-trigger-icon'\" />\n </ng-container>\n <span *ngIf=\"dropdownIconTemplate\" class=\"p-multiselect-trigger-icon\">\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\n </span>\n </div>\n <p-overlay\n #overlay\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions\"\n [target]=\"'@parent'\"\n [appendTo]=\"appendTo\"\n [autoZIndex]=\"autoZIndex\"\n [baseZIndex]=\"baseZIndex\"\n [showTransitionOptions]=\"showTransitionOptions\"\n [hideTransitionOptions]=\"hideTransitionOptions\"\n (onAnimationStart)=\"onOverlayAnimationStart($event)\"\n (onHide)=\"hide()\"\n >\n <ng-template pTemplate=\"content\">\n <div [ngClass]=\"['p-multiselect-panel p-component']\" [ngStyle]=\"panelStyle\" [class]=\"panelStyleClass\" (keydown)=\"onKeydown($event)\">\n <div class=\"p-multiselect-header\" *ngIf=\"showHeader\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"filterTemplate; else builtInFilterElement\">\n <ng-container *ngTemplateOutlet=\"filterTemplate; context: { options: filterOptions }\"></ng-container>\n </ng-container>\n <ng-template #builtInFilterElement>\n <div class=\"p-checkbox p-component\" *ngIf=\"showToggleAll && !selectionLimit\" [ngClass]=\"{ 'p-checkbox-disabled': disabled || toggleAllDisabled }\">\n <div class=\"p-hidden-accessible\">\n <input\n type=\"checkbox\"\n readonly=\"readonly\"\n [checked]=\"allChecked\"\n (focus)=\"onHeaderCheckboxFocus()\"\n (blur)=\"onHeaderCheckboxBlur()\"\n (keydown.space)=\"toggleAll($event)\"\n [disabled]=\"disabled || toggleAllDisabled\"\n />\n </div>\n <div\n class=\"p-checkbox-box\"\n role=\"checkbox\"\n [attr.aria-checked]=\"allChecked\"\n [ngClass]=\"{ 'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled }\"\n (click)=\"toggleAll($event)\"\n >\n <ng-container *ngIf=\"allChecked\">\n <CheckIcon [styleClass]=\"'p-checkbox-icon'\" *ngIf=\"!checkIconTemplate\" />\n <span *ngIf=\"checkIconTemplate\" class=\"p-checkbox-icon\">\n <ng-template *ngTemplateOutlet=\"checkIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n </div>\n <div class=\"p-multiselect-filter-container\" *ngIf=\"filter\">\n <input\n #filterInput\n type=\"text\"\n [attr.autocomplete]=\"autocomplete\"\n role=\"textbox\"\n [value]=\"filterValue || ''\"\n (input)=\"onFilterInputChange($event)\"\n class=\"p-multiselect-filter p-inputtext p-component\"\n [disabled]=\"disabled\"\n [attr.placeholder]=\"filterPlaceHolder\"\n [attr.aria-label]=\"ariaFilterLabel\"\n />\n <SearchIcon [styleClass]=\"'p-multiselect-filter-icon'\" *ngIf=\"!filterIconTemplate\" />\n <span *ngIf=\"filterIconTemplate\" class=\"p-multiselect-filter-icon\">\n <ng-template *ngTemplateOutlet=\"filterIconTemplate\"></ng-template>\n </span>\n </div>\n\n <button class=\"p-multiselect-close p-link p-button-icon-only\" type=\"button\" (click)=\"close($event)\" pRipple>\n <TimesIcon [styleClass]=\"'p-multiselect-close-icon'\" *ngIf=\"!closeIconTemplate\" />\n <span *ngIf=\"closeIconTemplate\" class=\"p-multiselect-close-icon\">\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\n </span>\n </button>\n </ng-template>\n </div>\n <div class=\"p-multiselect-items-wrapper\" [style.max-height]=\"virtualScroll ? 'auto' : scrollHeight || 'auto'\">\n <p-scroller\n *ngIf=\"virtualScroll\"\n #scroller\n [items]=\"optionsToRender\"\n [style]=\"{ height: scrollHeight }\"\n [itemSize]=\"virtualScrollItemSize || _itemSize\"\n [autoSize]=\"true\"\n [tabindex]=\"-1\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions\"\n >\n <ng-template pTemplate=\"content\" let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n <ng-container *ngIf=\"loaderTemplate\">\n <ng-template pTemplate=\"loader\" let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n </ng-container>\n </p-scroller>\n <ng-container *ngIf=\"!virtualScroll\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: optionsToRender, options: {} }\"></ng-container>\n </ng-container>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items class=\"p-multiselect-items p-component\" [ngClass]=\"scrollerOptions.contentStyleClass\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" aria-multiselectable=\"true\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"items\">\n <li class=\"p-multiselect-item-group\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <span *ngIf=\"!groupTemplate\">{{ getOptionGroupLabel(optgroup) || 'empty' }}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: { $implicit: optgroup }\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: getOptionGroupChildren(optgroup) }\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: items }\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-optionsToDisplay let-selectedOption=\"selectedOption\">\n <ng-template ngFor let-option let-i=\"index\" [ngForOf]=\"optionsToDisplay\">\n <p-multiSelectItem\n [option]=\"option\"\n [selected]=\"isSelected(option)\"\n [label]=\"getOptionLabel(option)\"\n [disabled]=\"isOptionDisabled(option)\"\n (onClick)=\"onOptionClick($event)\"\n (onKeydown)=\"onOptionKeydown($event)\"\n [template]=\"itemTemplate\"\n [checkIconTemplate]=\"checkIconTemplate\"\n [itemSize]=\"scrollerOptions.itemSize\"\n ></p-multiSelectItem>\n </ng-template>\n </ng-template>\n <li *ngIf=\"hasFilter() && isEmpty()\" class=\"p-multiselect-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyFilterTemplate && !emptyTemplate; else emptyFilter\">\n {{ emptyFilterMessageLabel }}\n </ng-container>\n <ng-container #emptyFilter *ngTemplateOutlet=\"emptyFilterTemplate || emptyTemplate\"></ng-container>\n </li>\n <li *ngIf=\"!hasFilter() && isEmpty()\" class=\"p-multiselect-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{ emptyMessageLabel }}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ul>\n </ng-template>\n </div>\n <div class=\"p-multiselect-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </ng-template>\n </p-overlay>\n </div>\n `,\n host: {\n class: 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focus || overlayVisible',\n '[class.p-multiselect-clearable]': 'showClear && !disabled'\n },\n providers: [MULTISELECT_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./multiselect.css']\n})\nexport class MultiSelect implements OnInit, AfterViewInit, AfterContentInit, AfterViewChecked, ControlValueAccessor {\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the overlay panel.\n * @group Props\n */\n @Input() panelStyle: any;\n /**\n * Style class of the overlay panel element.\n * @group Props\n */\n @Input() panelStyleClass: string | undefined;\n /**\n * Identifier of the focus input to match a label defined for the component.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input() disabled: boolean | undefined;\n /**\n * When present, it specifies that the component cannot be edited.\n * @group Props\n */\n @Input() readonly: boolean | undefined;\n /**\n * Whether to display options as grouped when nested options are provided.\n * @group Props\n */\n @Input() group: boolean | undefined;\n /**\n * When specified, displays an input field to filter the items on keyup.\n * @group Props\n */\n @Input() filter: boolean = true;\n /**\n * Defines placeholder of the filter input.\n * @group Props\n */\n @Input() filterPlaceHolder: string | undefined;\n /**\n * Locale to use in filtering. The default locale is the host environment's current locale.\n * @group Props\n */\n @Input() filterLocale: string | undefined;\n /**\n * Specifies the visibility of the options panel.\n * @group Props\n */\n @Input() overlayVisible: boolean | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input() tabindex: number | undefined;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * A property to uniquely identify a value in options.\n * @group Props\n */\n @Input() dataKey: string | undefined;\n /**\n * Name of the input element.\n * @group Props\n */\n @Input() name: string | undefined;\n /**\n * Label of the input for accessibility.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Whether to show labels of selected item labels or use default label.\n * @group Props\n */\n @Input() displaySelectedLabel: boolean = true;\n /**\n * Decides how many selected item labels to show at most.\n * @group Props\n */\n @Input() maxSelectedLabels: number = 3;\n /**\n * Number of maximum options that can be selected.\n * @group Props\n */\n @Input() selectionLimit: number | undefined;\n /**\n * Label to display after exceeding max selected labels e.g. ({0} items selected), defaults \"ellipsis\" keyword to indicate a text-overflow.\n * @group Props\n */\n @Input() selectedItemsLabel: string = 'ellipsis';\n /**\n * Whether to show the checkbox at header to toggle all items at once.\n * @group Props\n */\n @Input() showToggleAll: boolean = true;\n /**\n * Text to display when filtering does not return any results.\n * @group Props\n */\n @Input() emptyFilterMessage: string = '';\n /**\n * Text to display when there is no data. Defaults to global value in i18n translation configuration.\n * @group Props\n */\n @Input() emptyMessage: string = '';\n /**\n * Clears the filter value when hiding the dropdown.\n * @group Props\n */\n @Input() resetFilterOnHide: boolean = false;\n /**\n * Icon class of the dropdown icon.\n * @group Props\n */\n @Input() dropdownIcon: string | undefined;\n /**\n * Name of the label field of an option.\n * @group Props\n */\n @Input() optionLabel: string | undefined;\n /**\n * Name of the value field of an option.\n * @group Props\n */\n @Input() optionValue: string | undefined;\n /**\n * Name of the disabled field of an option.\n * @group Props\n */\n @Input() optionDisabled: string | undefined;\n /**\n * Name of the label field of an option group.\n * @group Props\n */\n @Input() optionGroupLabel: string | undefined;\n /**\n * Name of the options field of an option group.\n * @group Props\n */\n @Input() optionGroupChildren: string = 'items';\n /**\n * Whether to show the header.\n * @group Props\n */\n @Input() showHeader: boolean = true;\n /**\n * When filtering is enabled, filterBy decides which field or fields (comma separated) to search against.\n * @group Props\n */\n @Input() filterBy: string | undefined;\n /**\n * Height of the viewport in pixels, a scrollbar is defined if height of list exceeds this value.\n * @group Props\n */\n @Input() scrollHeight: string = '200px';\n /**\n * Defines if data is loaded and interacted with in lazy manner.\n * @group Props\n */\n @Input() lazy: boolean = false;\n /**\n * Whether the data should be loaded on demand during scroll.\n * @group Props\n */\n @Input() virtualScroll: boolean | undefined;\n /**\n * Height of an item in the list for VirtualScrolling.\n * @group Props\n */\n @Input() virtualScrollItemSize: number | undefined;\n /**\n * Whether to use the scroller feature. The properties of scroller component can be used like an object in it.\n * @group Props\n */\n @Input() virtualScrollOptions: ScrollerOptions | undefined;\n /**\n * Whether to use overlay API feature. The properties of overlay API can be used like an object in it.\n * @group Props\n */\n @Input() overlayOptions: OverlayOptions | undefined;\n /**\n * Defines a string that labels the filter input.\n * @group Props\n */\n @Input() ariaFilterLabel: string | undefined;\n /**\n * Defines how the items are filtered.\n * @group Props\n */\n @Input() filterMatchMode: 'contains' | 'startsWith' | 'endsWith' | 'equals' | 'notEquals' | 'in' | 'lt' | 'lte' | 'gt' | 'gte' = 'contains';\n /**\n * Advisory information to display in a tooltip on hover.\n * @group Props\n */\n @Input() tooltip: string = '';\n /**\n * Position of the tooltip.\n * @group Props\n */\n @Input() tooltipPosition: 'top' | 'left' | 'right' | 'bottom' = 'right';\n /**\n * Type of CSS position.\n * @group Props\n */\n @Input() tooltipPositionStyle: string = 'absolute';\n /**\n * Style class of the tooltip.\n * @group Props\n */\n @Input() tooltipStyleClass: string | undefined;\n /**\n * Applies focus to the filter element when the overlay is shown.\n * @group Props\n */\n @Input() autofocusFilter: boolean = true;\n /**\n * No description available.\n * @group Props\n */\n @Input() display: string = 'comma';\n /**\n * No description available.\n * @group Props\n */\n @Input() autocomplete: string = 'on';\n /**\n * When enabled, a clear icon is displayed to clear the value.\n * @group Props\n */\n @Input() showClear: boolean = false;\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input() get autoZIndex(): boolean | undefined {\n return this._autoZIndex;\n }\n set autoZIndex(val: boolean | undefined) {\n this._autoZIndex = val;\n console.warn('The autoZIndex property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input() get baseZIndex(): number | undefined {\n return this._baseZIndex;\n }\n set baseZIndex(val: number | undefined) {\n this._baseZIndex = val;\n console.warn('The baseZIndex property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Transition options of the show animation.\n * @group Props\n */\n @Input() get showTransitionOptions(): string | undefined {\n return this._showTransitionOptions;\n }\n set showTransitionOptions(val: string | undefined) {\n this._showTransitionOptions = val;\n console.warn('The showTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() get hideTransitionOptions(): string | undefined {\n return this._hideTransitionOptions;\n }\n set hideTransitionOptions(val: string | undefined) {\n this._hideTransitionOptions = val;\n console.warn('The hideTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n\n @Input() set defaultLabel(val: string | undefined) {\n this._defaultLabel = val;\n this.updateLabel();\n }\n\n get defaultLabel(): string | undefined {\n return this._defaultLabel;\n }\n\n @Input() set placeholder(val: string | undefined) {\n this._placeholder = val;\n this.updateLabel();\n }\n get placeholder(): string | undefined {\n return this._placeholder;\n }\n\n @Input() get options(): any[] | undefined {\n return this._options;\n }\n set options(val: any[] | undefined) {\n this._options = val;\n this.updateLabel();\n }\n\n @Input() get filterValue(): string | undefined | null {\n return this._filterValue;\n }\n set filterValue(val: string | undefined | null) {\n this._filterValue = val;\n this.activateFilter();\n }\n /**\n * @deprecated use virtualScrollItemSize property instead.\n * Item size of item to be virtual scrolled.\n * @group Props\n */\n @Input() get itemSize(): number | undefined {\n return this._itemSize;\n }\n set itemSize(val: number | undefined) {\n this._itemSize = val;\n console.warn('The itemSize property is deprecated, use virtualScrollItemSize property instead.');\n }\n\n @ViewChild('container') containerViewChild: Nullable<ElementRef>;\n\n @ViewChild('overlay') overlayViewChild: Nullable<Overlay>;\n\n @ViewChild('filterInput') filterInputChild: Nullable<ElementRef>;\n\n @ViewChild('in') accessibleViewChild: Nullable<ElementRef>;\n\n @ViewChild('items') itemsViewChild: Nullable<ElementRef>;\n\n @ViewChild('scroller') scroller: Nullable<Scroller>;\n\n @ContentChild(Footer) footerFacet: any;\n\n @ContentChild(Header) headerFacet: any;\n\n @ContentChildren(PrimeTemplate) templates: Nullable<QueryList<PrimeTemplate>>;\n\n /**\n * Callback to invoke when value changes.\n * @param {MultiSelectChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<MultiSelectChangeEvent> = new EventEmitter<MultiSelectChangeEvent>();\n /**\n * Callback to invoke when data is filtered.\n * @param {MultiSelectFilterEvent} event - Custom filter event.\n * @group Emits\n */\n @Output() onFilter: EventEmitter<MultiSelectFilterEvent> = new EventEmitter<MultiSelectFilterEvent>();\n /**\n * Callback to invoke when multiselect receives focus.\n * @param {MultiSelectFocusEvent} event - Custom focus event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<MultiSelectFocusEvent> = new EventEmitter<MultiSelectFocusEvent>();\n /**\n * Callback to invoke when multiselect loses focus.\n * @param {MultiSelectBlurEvent} event - Custom blur event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<MultiSelectBlurEvent> = new EventEmitter<MultiSelectBlurEvent>();\n /**\n * Callback to invoke when component is clicked.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when input field is cleared.\n * @group Emits\n */\n @Output() onClear: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke when overlay panel becomes visible.\n * @group Emits\n */\n @Output() onPanelShow: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke when overlay panel becomes hidden.\n * @group Emits\n */\n @Output() onPanelHide: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke in lazy mode to load new data.\n * @param {MultiSelectLazyLoadEvent} event - Lazy load event.\n * @group Emits\n */\n @Output() onLazyLoad: EventEmitter<MultiSelectLazyLoadEvent> = new EventEmitter<MultiSelectLazyLoadEvent>();\n /**\n * Callback to invoke in lazy mode to load new data.\n * @param {MultiSelectRemoveEvent} event - Remove event.\n * @group Emits\n */\n @Output() onRemove: EventEmitter<MultiSelectRemoveEvent> = new EventEmitter();\n\n _autoZIndex: boolean | undefined;\n\n _baseZIndex: number | undefined;\n\n _showTransitionOptions: string | undefined;\n\n _hideTransitionOptions: string | undefined;\n\n _defaultLabel: string | undefined;\n\n _placeholder: string | undefined;\n\n _itemSize: number | undefined;\n\n public value: any[] | undefined | null;\n\n public _filteredOptions: any[] | undefined | null;\n\n public onModelChange: Function = () => {};\n\n public onModelTouched: Function = () => {};\n\n public valuesAsString: string | undefined;\n\n public focus: boolean | undefined;\n\n filled: boolean | undefined | null;\n\n public _filterValue: string | undefined | null;\n\n public filtered: boolean | undefined;\n\n public itemTemplate: TemplateRef<any> | undefined;\n\n public groupTemplate: TemplateRef<any> | undefined;\n\n public loaderTemplate: TemplateRef<any> | undefined;\n\n public headerTemplate: TemplateRef<any> | undefined;\n\n public filterTemplate: TemplateRef<any> | undefined;\n\n public footerTemplate: TemplateRef<any> | undefined;\n\n public emptyFilterTemplate: TemplateRef<any> | undefined;\n\n public emptyTemplate: TemplateRef<any> | undefined;\n\n public selectedItemsTemplate: TemplateRef<any> | undefined;\n\n checkIconTemplate: TemplateRef<any> | undefined;\n\n filterIconTemplate: TemplateRef<any> | undefined;\n\n removeTokenIconTemplate: TemplateRef<any> | undefined;\n\n closeIconTemplate: TemplateRef<any> | undefined;\n\n clearIconTemplate: TemplateRef<any> | undefined;\n\n dropdownIconTemplate: TemplateRef<any> | undefined;\n\n public headerCheckboxFocus: boolean | undefined;\n\n filterOptions: MultiSelectFilterOptions | undefined;\n\n _options: any[] | undefined;\n\n maxSelectionLimitReached: boolean | undefined;\n\n preventModelTouched: boolean | undefined;\n\n preventDocumentDefault: boolean | undefined;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef, public zone: NgZone, public filterService: FilterService, public config: PrimeNGConfig, public overlayService: OverlayService) {}\n\n ngOnInit() {\n this.updateLabel();\n\n if (this.filterBy) {\n this.filterOptions = {\n filter: (value) => this.onFilterInputChange(value),\n reset: () => this.resetFilter()\n };\n }\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'selectedItems':\n this.selectedItemsTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'filter':\n this.filterTemplate = item.template;\n break;\n\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'loader':\n this.loaderTemplate = item.template;\n break;\n\n case 'checkicon':\n this.checkIconTemplate = item.template;\n break;\n\n case 'filtericon':\n this.filterIconTemplate = item.template;\n break;\n\n case 'removetokenicon':\n this.removeTokenIconTemplate = item.template;\n break;\n\n case 'closeicon':\n this.closeIconTemplate = item.template;\n break;\n\n case 'clearicon':\n this.clearIconTemplate = item.template;\n break;\n\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n ngAfterViewInit() {\n if (this.overlayVisible) {\n this.show();\n }\n }\n\n ngAfterViewChecked() {\n if (this.filtered) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.overlayViewChild?.alignOverlay();\n }, 1);\n });\n\n this.filtered = false;\n }\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : option && option.label != undefined ? option.label : option;\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : !this.optionLabel && option && option.value !== undefined ? option.value : option;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : optionGroup && optionGroup.label != undefined ? optionGroup.label : optionGroup;\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n isOptionDisabled(option: any) {\n let disabled = this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : option && option.disabled !== undefined ? option.disabled : false;\n return disabled || (this.maxSelectionLimitReached && !this.isSelected(option));\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.updateLabel();\n this.updateFilledState();\n this.checkSelectionLimit();\n\n this.cd.markForCheck();\n }\n\n checkSelectionLimit() {\n if (this.selectionLimit && this.value && this.value.length === this.selectionLimit) {\n this.maxSelectionLimitReached = true;\n } else {\n this.maxSelectionLimitReached = false;\n }\n }\n\n updateFilledState() {\n this.filled = this.value && this.value.length > 0;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onOptionClick(event: { originalEvent: Event; option: any }) {\n let option = event.option;\n if (this.isOptionDisabled(option)) {\n return;\n }\n\n let optionValue = this.getOptionValue(option);\n let selectionIndex = this.findSelectionIndex(optionValue);\n if (selectionIndex != -1) {\n this.value = (this.value as any[]).filter((val, i) => i != selectionIndex);\n this.onRemove.emit({ newValue: this.value, removed: optionValue });\n\n if (this.selectionLimit) {\n this.maxSelectionLimitReached = false;\n }\n } else {\n if (!this.selectionLimit || !this.value || this.value.length < this.selectionLimit) {\n this.value = [...(this.value || []), optionValue];\n }\n\n this.checkSelectionLimit();\n }\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event.originalEvent, value: this.value, itemValue: optionValue });\n this.updateLabel();\n this.updateFilledState();\n }\n\n isSelected(option: any) {\n return this.findSelectionIndex(this.getOptionValue(option)) != -1;\n }\n\n findSelectionIndex(val: any): number {\n let index = -1;\n\n if (this.value) {\n for (let i = 0; i < this.value.length; i++) {\n if (ObjectUtils.equals(this.value[i], val, this.dataKey)) {\n index = i;\n break;\n }\n }\n }\n\n return index;\n }\n\n get toggleAllDisabled(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return true;\n } else {\n for (let option of optionsToRender) {\n if (!this.isOptionDisabled(option)) return false;\n }\n\n return true;\n }\n }\n\n toggleAll(event: Event) {\n if (this.disabled || this.toggleAllDisabled || this.readonly) {\n return;\n }\n\n let allChecked = this.allChecked;\n\n if (allChecked) this.uncheckAll();\n else this.checkAll();\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event, value: this.value });\n this.updateFilledState();\n this.updateLabel();\n event.preventDefault();\n }\n\n checkAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach((opt) => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (!optionDisabled || (optionDisabled && this.isSelected(opt))) {\n val.push(this.getOptionValue(opt));\n }\n } else {\n let subOptions = this.getOptionGroupChildren(opt);\n\n if (subOptions) {\n subOptions.forEach((option: any) => {\n let optionDisabled = this.isOptionDisabled(option);\n if (!optionDisabled || (optionDisabled && this.isSelected(option))) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n uncheckAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach((opt) => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (optionDisabled && this.isSelected(opt)) {\n val.push(this.getOptionValue(opt));\n }\n } else {\n if (opt.items) {\n opt.items.forEach((option: any) => {\n let optionDisabled = this.isOptionDisabled(option);\n if (optionDisabled && this.isSelected(option)) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n show() {\n if (!this.overlayVisible) {\n this.overlayVisible = true;\n this.preventDocumentDefault = true;\n this.cd.markForCheck();\n }\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.virtualScroll && this.scroller?.setContentEl(this.itemsViewChild?.nativeElement);\n\n if (this.filterInputChild && this.filterInputChild.nativeElement) {\n this.preventModelTouched = true;\n\n if (this.autofocusFilter) {\n this.filterInputChild.nativeElement.focus();\n }\n }\n\n this.onPanelShow.emit();\n break;\n\n case 'void':\n this.onModelTouched();\n break;\n }\n }\n\n hide() {\n this.overlayVisible = false;\n if (this.resetFilterOnHide) {\n this.resetFilter();\n }\n this.onPanelHide.emit();\n this.cd.markForCheck();\n }\n\n resetFilter() {\n if (this.filterInputChild && this.filterInputChild.nativeElement) {\n this.filterInputChild.nativeElement.value = '';\n }\n\n this._filterValue = null;\n this._filteredOptions = null;\n }\n\n close(event: Event) {\n this.hide();\n event.preventDefault();\n event.stopPropagation();\n }\n\n clear(event: Event) {\n this.value = null;\n this.updateLabel();\n this.updateFilledState();\n this.checkSelectionLimit();\n this.onClear.emit();\n this.onModelChange(this.value);\n event.stopPropagation();\n }\n\n onMouseclick(event: MouseEvent, input: HTMLInputElement) {\n if (this.disabled || this.readonly || (<Node>event.target).isSameNode(this.accessibleViewChild?.nativeElement)) {\n return;\n }\n\n this.onClick.emit(event);\n\n if (!this.overlayViewChild?.el?.nativeElement?.contains(event.target) && !DomHandler.hasClass(event.target, 'p-multiselect-token-icon')) {\n if (this.overlayVisible) {\n this.hide();\n } else {\n this.show();\n }\n\n input.focus();\n }\n }\n\n removeChip(chip: MultiSelectItem, event: MouseEvent) {\n this.value = (<any[]>this.value).filter((val) => !ObjectUtils.equals(val, chip, this.dataKey));\n this.onModelChange(this.value);\n this.checkSelectionLimit();\n this.onChange.emit({ originalEvent: event, value: this.value, itemValue: chip });\n this.updateLabel();\n this.updateFilledState();\n }\n\n onInputFocus(event: Event) {\n this.focus = true;\n this.onFocus.emit({ originalEvent: event });\n }\n\n onInputBlur(event: Event) {\n this.focus = false;\n this.onBlur.emit({ originalEvent: event });\n\n if (!this.preventModelTouched) {\n this.onModelTouched();\n }\n this.preventModelTouched = false;\n }\n\n onOptionKeydown(event: { originalEvent: Event; option: any }) {\n if (this.readonly) {\n return;\n }\n\n switch ((<KeyboardEvent>event.originalEvent).which) {\n //down\n case 40:\n var nextItem = this.findNextItem((event.originalEvent.target as any).parentElement);\n if (nextItem) {\n nextItem.focus();\n }\n\n event.originalEvent.preventDefault();\n break;\n\n //up\n case 38:\n var prevItem = this.findPrevItem((event.originalEvent.target as any).parentElement);\n if (prevItem) {\n prevItem.focus();\n }\n\n event.originalEvent.preventDefault();\n break;\n\n //enter\n case 13:\n this.onOptionClick(event);\n event.originalEvent.preventDefault();\n break;\n\n case 27:\n case 9:\n this.hide();\n break;\n }\n }\n\n findNextItem(item: any): HTMLElement | null {\n let nextItem = item.nextElementSibling;\n\n if (nextItem) return DomHandler.hasClass(nextItem.children[0], 'p-disabled') || DomHandler.isHidden(nextItem.children[0]) || DomHandler.hasClass(nextItem, 'p-multiselect-item-group') ? this.findNextItem(nextItem) : nextItem.children[0];\n else return null;\n }\n\n findPrevItem(item: any): HTMLElement | null {\n let prevItem = item.previousElementSibling;\n\n if (prevItem) return DomHandler.hasClass(prevItem.children[0], 'p-disabled') || DomHandler.isHidden(prevItem.children[0]) || DomHandler.hasClass(prevItem, 'p-multiselect-item-group') ? this.findPrevItem(prevItem) : prevItem.children[0];\n else return null;\n }\n\n onKeydown(event: KeyboardEvent) {\n switch (event.which) {\n //down\n case 40:\n if (!this.overlayVisible && event.altKey) {\n this.show();\n event.preventDefault();\n }\n break;\n\n //space\n case 32:\n if (!this.overlayVisible) {\n this.show();\n event.preventDefault();\n }\n break;\n\n //escape\n case 27:\n this.hide();\n break;\n }\n }\n\n updateLabel() {\n if (this.value && this.options && this.value.length && this.displaySelectedLabel) {\n let label = '';\n for (let i = 0; i < this.value.length; i++) {\n let itemLabel = this.findLabelByValue(this.value[i]);\n if (itemLabel) {\n if (label.length > 0) {\n label = label + ', ';\n }\n label = label + itemLabel;\n }\n }\n\n if (this.value.length <= this.maxSelectedLabels || this.selectedItemsLabel === 'ellipsis') {\n this.valuesAsString = label;\n } else {\n let pattern = /{(.*?)}/;\n if (pattern.test(this.selectedItemsLabel)) {\n this.valuesAsString = this.selectedItemsLabel.replace((this.selectedItemsLabel as any).match(pattern)[0], this.value.length + '');\n } else {\n this.valuesAsString = this.selectedItemsLabel;\n }\n }\n } else {\n this.valuesAsString = this.placeholder || this.defaultLabel;\n }\n }\n\n findLabelByValue(val: any): string {\n if (this.group) {\n let label = null;\n\n for (let i = 0; i < (this.options as any[]).length; i++) {\n let subOptions = this.getOptionGroupChildren((this.options as any[])[i]);\n if (subOptions) {\n label = this.searchLabelByValue(val, subOptions);\n\n if (label) {\n break;\n }\n }\n }\n\n return label as string;\n } else {\n return this.searchLabelByValue(val, this.options as any[]);\n }\n }\n\n searchLabelByValue(val: any, options: any[]): string {\n let label = null;\n\n for (let i = 0; i < options.length; i++) {\n let option = options[i];\n let optionValue = this.getOptionValue(option);\n\n if ((val == null && optionValue == null) || ObjectUtils.equals(val, optionValue, this.dataKey)) {\n label = this.getOptionLabel(option);\n break;\n }\n }\n\n return label;\n }\n\n get allChecked(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return false;\n } else {\n let selectedDisabledItemsLength = 0;\n let unselectedDisabledItemsLength = 0;\n let selectedEnabledItemsLength = 0;\n let visibleOptionsLength = this.group ? 0 : this.optionsToRender.length;\n\n for (let option of optionsToRender) {\n if (!this.group) {\n let disabled = this.isOptionDisabled(option);\n let selected = this.isSelected(option);\n\n if (disabled) {\n if (selected) selectedDisabledItemsLength++;\n else unselectedDisabledItemsLength++;\n } else {\n if (selected) selectedEnabledItemsLength++;\n else return false;\n }\n } else {\n for (let opt of this.getOptionGroupChildren(option)) {\n let disabled = this.isOptionDisabled(opt);\n let selected = this.isSelected(opt);\n\n if (disabled) {\n if (selected) selectedDisabledItemsLength++;\n else unselectedDisabledItemsLength++;\n } else {\n if (selected) selectedEnabledItemsLength++;\n else {\n return false;\n }\n }\n\n visibleOptionsLength++;\n }\n }\n }\n\n return (visibleOptionsLength === selectedDisabledItemsLength ||\n visibleOptionsLength === selectedEnabledItemsLength ||\n (selectedEnabledItemsLength && visibleOptionsLength === selectedEnabledItemsLength + unselectedDisabledItemsLength + selectedDisabledItemsLength)) as boolean;\n }\n }\n\n get optionsToRender(): any[] {\n return (this._filteredOptions || this.options) as any[];\n }\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n get emptyFilterMessageLabel(): string {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n\n hasFilter() {\n return this._filterValue && this._filterValue.trim().length > 0;\n }\n\n isEmpty() {\n return !this.optionsToRender || (this.optionsToRender && this.optionsToRender.length === 0);\n }\n\n onFilterInputChange(event: KeyboardEvent) {\n this._filterValue = (<HTMLInputElement>event.target).value;\n this.activateFilter();\n this.onFilter.emit({ originalEvent: event, filter: this._filterValue });\n this.cd.detectChanges();\n }\n\n activateFilter() {\n if (this.hasFilter() && this._options) {\n let searchFields: string[] = (this.filterBy || this.optionLabel || 'label').split(',');\n\n if (this.group) {\n let filteredGroups = [];\n for (let optgroup of this.options as any[]) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push({ ...optgroup, ...{ [this.optionGroupChildren]: filteredSubOptions } });\n }\n }\n\n this._filteredOptions = filteredGroups;\n } else {\n this._filteredOptions = this.filterService.filter(this.options as any[], searchFields, this._filterValue, this.filterMatchMode, this.filterLocale);\n }\n } else {\n this._filteredOptions = null;\n }\n }\n\n onHeaderCheckboxFocus() {\n this.headerCheckboxFocus = true;\n }\n\n onHeaderCheckboxBlur() {\n this.headerCheckboxFocus = false;\n }\n}\n\n@NgModule({\n imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon],\n exports: [MultiSelect, OverlayModule, SharedModule, ScrollerModule],\n declarations: [MultiSelect, MultiSelectItem]\n})\nexport class MultiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-multiselect.mjs","sources":["../../src/app/components/multiselect/multiselect.ts","../../src/app/components/multiselect/primeng-multiselect.ts"],"sourcesContent":["import { AnimationEvent } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewChecked,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n NgModule,\n NgZone,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { FilterService, Footer, Header, OverlayOptions, OverlayService, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { Overlay, OverlayModule } from 'primeng/overlay';\nimport { RippleModule } from 'primeng/ripple';\nimport { Scroller, ScrollerModule } from 'primeng/scroller';\nimport { ScrollerOptions } from 'primeng/api';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { ObjectUtils } from 'primeng/utils';\nimport { CheckIcon } from 'primeng/icons/check';\nimport { SearchIcon } from 'primeng/icons/search';\nimport { TimesCircleIcon } from 'primeng/icons/timescircle';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { ChevronDownIcon } from 'primeng/icons/chevrondown';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { MultiSelectRemoveEvent, MultiSelectFilterOptions, MultiSelectFilterEvent, MultiSelectBlurEvent, MultiSelectChangeEvent, MultiSelectFocusEvent, MultiSelectLazyLoadEvent } from './multiselect.interface';\n\nexport const MULTISELECT_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MultiSelect),\n multi: true\n};\n\n@Component({\n selector: 'p-multiSelectItem',\n template: `\n <li\n class=\"p-multiselect-item\"\n (click)=\"onOptionClick($event)\"\n (keydown)=\"onOptionKeydown($event)\"\n [attr.aria-label]=\"label\"\n [attr.tabindex]=\"disabled ? null : '0'\"\n [ngStyle]=\"{ height: itemSize + 'px' }\"\n [ngClass]=\"{ 'p-highlight': selected, 'p-disabled': disabled }\"\n pRipple\n >\n <div class=\"p-checkbox p-component\">\n <div class=\"p-checkbox-box\" [ngClass]=\"{ 'p-highlight': selected }\">\n <ng-container *ngIf=\"selected\">\n <CheckIcon *ngIf=\"!checkIconTemplate\" [styleClass]=\"'p-checkbox-icon'\" />\n <span *ngIf=\"checkIconTemplate\" class=\"p-checkbox-icon\">\n <ng-template *ngTemplateOutlet=\"checkIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n </div>\n <span *ngIf=\"!template\">{{ label }}</span>\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: option }\"></ng-container>\n </li>\n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'p-element'\n }\n})\nexport class MultiSelectItem {\n @Input() option: any;\n\n @Input() selected: boolean | undefined;\n\n @Input() label: string | undefined;\n\n @Input() disabled: boolean | undefined;\n\n @Input() itemSize: number | undefined;\n\n @Input() template: TemplateRef<any> | undefined;\n\n @Input() checkIconTemplate: TemplateRef<any> | undefined;\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onKeydown: EventEmitter<any> = new EventEmitter();\n\n onOptionClick(event: Event) {\n this.onClick.emit({\n originalEvent: event,\n option: this.option,\n selected: this.selected\n });\n }\n\n onOptionKeydown(event: Event) {\n this.onKeydown.emit({\n originalEvent: event,\n option: this.option\n });\n }\n}\n/**\n * MultiSelect is used to select multiple items from a collection.\n * @group Components\n */\n@Component({\n selector: 'p-multiSelect',\n template: `\n <div\n #container\n [ngClass]=\"{ 'p-multiselect p-component': true, 'p-multiselect-open': overlayVisible, 'p-multiselect-chip': display === 'chip', 'p-focus': focus, 'p-disabled': disabled }\"\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n (click)=\"onMouseclick($event, in)\"\n >\n <div class=\"p-hidden-accessible\">\n <input\n #in\n type=\"text\"\n [attr.label]=\"label\"\n readonly=\"readonly\"\n [attr.id]=\"inputId\"\n [attr.name]=\"name\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n [disabled]=\"disabled\"\n [attr.tabindex]=\"tabindex\"\n (keydown)=\"onKeydown($event)\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"overlayVisible\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n role=\"listbox\"\n />\n </div>\n <div class=\"p-multiselect-label-container\" [pTooltip]=\"tooltip\" [tooltipPosition]=\"tooltipPosition\" [positionStyle]=\"tooltipPositionStyle\" [tooltipStyleClass]=\"tooltipStyleClass\">\n <div\n class=\"p-multiselect-label\"\n [ngClass]=\"{ 'p-placeholder': valuesAsString === (defaultLabel || placeholder), 'p-multiselect-label-empty': (valuesAsString == null || valuesAsString.length === 0) && (placeholder == null || placeholder.length === 0) }\"\n >\n <ng-container *ngIf=\"!selectedItemsTemplate\">\n <ng-container *ngIf=\"display === 'comma'\">{{ valuesAsString || 'empty' }}</ng-container>\n <ng-container *ngIf=\"display === 'chip'\">\n <div #token *ngFor=\"let item of value; let i = index\" class=\"p-multiselect-token\">\n <span class=\"p-multiselect-token-label\">{{ findLabelByValue(item) }}</span>\n <ng-container *ngIf=\"!disabled\">\n <TimesCircleIcon *ngIf=\"!removeTokenIconTemplate\" [styleClass]=\"'p-multiselect-token-icon'\" (click)=\"removeChip(item, event)\" />\n <span *ngIf=\"removeTokenIconTemplate\" class=\"p-multiselect-token-icon\" (click)=\"removeChip(item, event)\">\n <ng-container *ngTemplateOutlet=\"removeTokenIconTemplate\"></ng-container>\n </span>\n </ng-container>\n </div>\n <ng-container *ngIf=\"!value || value.length === 0\">{{ placeholder || defaultLabel || 'empty' }}</ng-container>\n </ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"selectedItemsTemplate; context: { $implicit: value, removeChip: removeChip.bind(this) }\"></ng-container>\n </div>\n <ng-container *ngIf=\"value != null && filled && !disabled && showClear\">\n <TimesIcon *ngIf=\"!clearIconTemplate\" [styleClass]=\"'p-multiselect-clear-icon'\" (click)=\"clear($event)\" />\n <span *ngIf=\"clearIconTemplate\" class=\"p-multiselect-clear-icon\" (click)=\"clear($event)\">\n <ng-template *ngTemplateOutlet=\"clearIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'p-multiselect-trigger': true }\">\n <ng-container *ngIf=\"!dropdownIconTemplate\">\n <span *ngIf=\"dropdownIcon\" class=\"p-multiselect-trigger-icon\" [ngClass]=\"dropdownIcon\"></span>\n <ChevronDownIcon *ngIf=\"!dropdownIcon\" [styleClass]=\"'p-multiselect-trigger-icon'\" />\n </ng-container>\n <span *ngIf=\"dropdownIconTemplate\" class=\"p-multiselect-trigger-icon\">\n <ng-template *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-template>\n </span>\n </div>\n <p-overlay\n #overlay\n [(visible)]=\"overlayVisible\"\n [options]=\"overlayOptions\"\n [target]=\"'@parent'\"\n [appendTo]=\"appendTo\"\n [autoZIndex]=\"autoZIndex\"\n [baseZIndex]=\"baseZIndex\"\n [showTransitionOptions]=\"showTransitionOptions\"\n [hideTransitionOptions]=\"hideTransitionOptions\"\n (onAnimationStart)=\"onOverlayAnimationStart($event)\"\n (onHide)=\"hide()\"\n >\n <ng-template pTemplate=\"content\">\n <div [ngClass]=\"['p-multiselect-panel p-component']\" [ngStyle]=\"panelStyle\" [class]=\"panelStyleClass\" (keydown)=\"onKeydown($event)\">\n <div class=\"p-multiselect-header\" *ngIf=\"showHeader\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"filterTemplate; else builtInFilterElement\">\n <ng-container *ngTemplateOutlet=\"filterTemplate; context: { options: filterOptions }\"></ng-container>\n </ng-container>\n <ng-template #builtInFilterElement>\n <div class=\"p-checkbox p-component\" *ngIf=\"showToggleAll && !selectionLimit\" [ngClass]=\"{ 'p-checkbox-disabled': disabled || toggleAllDisabled }\">\n <div class=\"p-hidden-accessible\">\n <input\n type=\"checkbox\"\n readonly=\"readonly\"\n [checked]=\"allChecked\"\n (focus)=\"onHeaderCheckboxFocus()\"\n (blur)=\"onHeaderCheckboxBlur()\"\n (keydown.space)=\"toggleAll($event)\"\n [disabled]=\"disabled || toggleAllDisabled\"\n />\n </div>\n <div\n class=\"p-checkbox-box\"\n role=\"checkbox\"\n [attr.aria-checked]=\"allChecked\"\n [ngClass]=\"{ 'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled }\"\n (click)=\"toggleAll($event)\"\n >\n <ng-container *ngIf=\"allChecked\">\n <CheckIcon [styleClass]=\"'p-checkbox-icon'\" *ngIf=\"!checkIconTemplate\" />\n <span *ngIf=\"checkIconTemplate\" class=\"p-checkbox-icon\">\n <ng-template *ngTemplateOutlet=\"checkIconTemplate\"></ng-template>\n </span>\n </ng-container>\n </div>\n </div>\n <div class=\"p-multiselect-filter-container\" *ngIf=\"filter\">\n <input\n #filterInput\n type=\"text\"\n [attr.autocomplete]=\"autocomplete\"\n role=\"textbox\"\n [value]=\"filterValue || ''\"\n (input)=\"onFilterInputChange($event)\"\n class=\"p-multiselect-filter p-inputtext p-component\"\n [disabled]=\"disabled\"\n [attr.placeholder]=\"filterPlaceHolder\"\n [attr.aria-label]=\"ariaFilterLabel\"\n />\n <SearchIcon [styleClass]=\"'p-multiselect-filter-icon'\" *ngIf=\"!filterIconTemplate\" />\n <span *ngIf=\"filterIconTemplate\" class=\"p-multiselect-filter-icon\">\n <ng-template *ngTemplateOutlet=\"filterIconTemplate\"></ng-template>\n </span>\n </div>\n\n <button class=\"p-multiselect-close p-link p-button-icon-only\" type=\"button\" (click)=\"close($event)\" pRipple>\n <TimesIcon [styleClass]=\"'p-multiselect-close-icon'\" *ngIf=\"!closeIconTemplate\" />\n <span *ngIf=\"closeIconTemplate\" class=\"p-multiselect-close-icon\">\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\n </span>\n </button>\n </ng-template>\n </div>\n <div class=\"p-multiselect-items-wrapper\" [style.max-height]=\"virtualScroll ? 'auto' : scrollHeight || 'auto'\">\n <p-scroller\n *ngIf=\"virtualScroll\"\n #scroller\n [items]=\"optionsToRender\"\n [style]=\"{ height: scrollHeight }\"\n [itemSize]=\"virtualScrollItemSize || _itemSize\"\n [autoSize]=\"true\"\n [tabindex]=\"-1\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions\"\n >\n <ng-template pTemplate=\"content\" let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n <ng-container *ngIf=\"loaderTemplate\">\n <ng-template pTemplate=\"loader\" let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n </ng-container>\n </p-scroller>\n <ng-container *ngIf=\"!virtualScroll\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: optionsToRender, options: {} }\"></ng-container>\n </ng-container>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items class=\"p-multiselect-items p-component\" [ngClass]=\"scrollerOptions.contentStyleClass\" [style]=\"scrollerOptions.contentStyle\" role=\"listbox\" aria-multiselectable=\"true\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"items\">\n <li class=\"p-multiselect-item-group\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <span *ngIf=\"!groupTemplate\">{{ getOptionGroupLabel(optgroup) || 'empty' }}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: { $implicit: optgroup }\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: getOptionGroupChildren(optgroup) }\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: items }\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-optionsToDisplay let-selectedOption=\"selectedOption\">\n <ng-template ngFor let-option let-i=\"index\" [ngForOf]=\"optionsToDisplay\">\n <p-multiSelectItem\n [option]=\"option\"\n [selected]=\"isSelected(option)\"\n [label]=\"getOptionLabel(option)\"\n [disabled]=\"isOptionDisabled(option)\"\n (onClick)=\"onOptionClick($event)\"\n (onKeydown)=\"onOptionKeydown($event)\"\n [template]=\"itemTemplate\"\n [checkIconTemplate]=\"checkIconTemplate\"\n [itemSize]=\"scrollerOptions.itemSize\"\n ></p-multiSelectItem>\n </ng-template>\n </ng-template>\n <li *ngIf=\"hasFilter() && isEmpty()\" class=\"p-multiselect-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyFilterTemplate && !emptyTemplate; else emptyFilter\">\n {{ emptyFilterMessageLabel }}\n </ng-container>\n <ng-container #emptyFilter *ngTemplateOutlet=\"emptyFilterTemplate || emptyTemplate\"></ng-container>\n </li>\n <li *ngIf=\"!hasFilter() && isEmpty()\" class=\"p-multiselect-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{ emptyMessageLabel }}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ul>\n </ng-template>\n </div>\n <div class=\"p-multiselect-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </ng-template>\n </p-overlay>\n </div>\n `,\n host: {\n class: 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': 'focus || overlayVisible',\n '[class.p-multiselect-clearable]': 'showClear && !disabled'\n },\n providers: [MULTISELECT_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./multiselect.css']\n})\nexport class MultiSelect implements OnInit, AfterViewInit, AfterContentInit, AfterViewChecked, ControlValueAccessor {\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the overlay panel.\n * @group Props\n */\n @Input() panelStyle: any;\n /**\n * Style class of the overlay panel element.\n * @group Props\n */\n @Input() panelStyleClass: string | undefined;\n /**\n * Identifier of the focus input to match a label defined for the component.\n * @group Props\n */\n @Input() inputId: string | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input() disabled: boolean | undefined;\n /**\n * When present, it specifies that the component cannot be edited.\n * @group Props\n */\n @Input() readonly: boolean | undefined;\n /**\n * Whether to display options as grouped when nested options are provided.\n * @group Props\n */\n @Input() group: boolean | undefined;\n /**\n * When specified, displays an input field to filter the items on keyup.\n * @group Props\n */\n @Input() filter: boolean = true;\n /**\n * Defines placeholder of the filter input.\n * @group Props\n */\n @Input() filterPlaceHolder: string | undefined;\n /**\n * Locale to use in filtering. The default locale is the host environment's current locale.\n * @group Props\n */\n @Input() filterLocale: string | undefined;\n /**\n * Specifies the visibility of the options panel.\n * @group Props\n */\n @Input() overlayVisible: boolean | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input() tabindex: number | undefined;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * A property to uniquely identify a value in options.\n * @group Props\n */\n @Input() dataKey: string | undefined;\n /**\n * Name of the input element.\n * @group Props\n */\n @Input() name: string | undefined;\n /**\n * Label of the input for accessibility.\n * @group Props\n */\n @Input() label: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Whether to show labels of selected item labels or use default label.\n * @group Props\n */\n @Input() displaySelectedLabel: boolean = true;\n /**\n * Decides how many selected item labels to show at most.\n * @group Props\n */\n @Input() maxSelectedLabels: number = 3;\n /**\n * Number of maximum options that can be selected.\n * @group Props\n */\n @Input() selectionLimit: number | undefined;\n /**\n * Label to display after exceeding max selected labels e.g. ({0} items selected), defaults \"ellipsis\" keyword to indicate a text-overflow.\n * @group Props\n */\n @Input() selectedItemsLabel: string = 'ellipsis';\n /**\n * Whether to show the checkbox at header to toggle all items at once.\n * @group Props\n */\n @Input() showToggleAll: boolean = true;\n /**\n * Text to display when filtering does not return any results.\n * @group Props\n */\n @Input() emptyFilterMessage: string = '';\n /**\n * Text to display when there is no data. Defaults to global value in i18n translation configuration.\n * @group Props\n */\n @Input() emptyMessage: string = '';\n /**\n * Clears the filter value when hiding the dropdown.\n * @group Props\n */\n @Input() resetFilterOnHide: boolean = false;\n /**\n * Icon class of the dropdown icon.\n * @group Props\n */\n @Input() dropdownIcon: string | undefined;\n /**\n * Name of the label field of an option.\n * @group Props\n */\n @Input() optionLabel: string | undefined;\n /**\n * Name of the value field of an option.\n * @group Props\n */\n @Input() optionValue: string | undefined;\n /**\n * Name of the disabled field of an option.\n * @group Props\n */\n @Input() optionDisabled: string | undefined;\n /**\n * Name of the label field of an option group.\n * @group Props\n */\n @Input() optionGroupLabel: string | undefined;\n /**\n * Name of the options field of an option group.\n * @group Props\n */\n @Input() optionGroupChildren: string = 'items';\n /**\n * Whether to show the header.\n * @group Props\n */\n @Input() showHeader: boolean = true;\n /**\n * When filtering is enabled, filterBy decides which field or fields (comma separated) to search against.\n * @group Props\n */\n @Input() filterBy: string | undefined;\n /**\n * Height of the viewport in pixels, a scrollbar is defined if height of list exceeds this value.\n * @group Props\n */\n @Input() scrollHeight: string = '200px';\n /**\n * Defines if data is loaded and interacted with in lazy manner.\n * @group Props\n */\n @Input() lazy: boolean = false;\n /**\n * Whether the data should be loaded on demand during scroll.\n * @group Props\n */\n @Input() virtualScroll: boolean | undefined;\n /**\n * Height of an item in the list for VirtualScrolling.\n * @group Props\n */\n @Input() virtualScrollItemSize: number | undefined;\n /**\n * Whether to use the scroller feature. The properties of scroller component can be used like an object in it.\n * @group Props\n */\n @Input() virtualScrollOptions: ScrollerOptions | undefined;\n /**\n * Whether to use overlay API feature. The properties of overlay API can be used like an object in it.\n * @group Props\n */\n @Input() overlayOptions: OverlayOptions | undefined;\n /**\n * Defines a string that labels the filter input.\n * @group Props\n */\n @Input() ariaFilterLabel: string | undefined;\n /**\n * Defines how the items are filtered.\n * @group Props\n */\n @Input() filterMatchMode: 'contains' | 'startsWith' | 'endsWith' | 'equals' | 'notEquals' | 'in' | 'lt' | 'lte' | 'gt' | 'gte' = 'contains';\n /**\n * Advisory information to display in a tooltip on hover.\n * @group Props\n */\n @Input() tooltip: string = '';\n /**\n * Position of the tooltip.\n * @group Props\n */\n @Input() tooltipPosition: 'top' | 'left' | 'right' | 'bottom' = 'right';\n /**\n * Type of CSS position.\n * @group Props\n */\n @Input() tooltipPositionStyle: string = 'absolute';\n /**\n * Style class of the tooltip.\n * @group Props\n */\n @Input() tooltipStyleClass: string | undefined;\n /**\n * Applies focus to the filter element when the overlay is shown.\n * @group Props\n */\n @Input() autofocusFilter: boolean = true;\n /**\n * No description available.\n * @group Props\n */\n @Input() display: string = 'comma';\n /**\n * No description available.\n * @group Props\n */\n @Input() autocomplete: string = 'on';\n /**\n * When enabled, a clear icon is displayed to clear the value.\n * @group Props\n */\n @Input() showClear: boolean = false;\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input() get autoZIndex(): boolean | undefined {\n return this._autoZIndex;\n }\n set autoZIndex(val: boolean | undefined) {\n this._autoZIndex = val;\n console.warn('The autoZIndex property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * @deprecated since v14.2.0, use overlayOptions property instead.\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input() get baseZIndex(): number | undefined {\n return this._baseZIndex;\n }\n set baseZIndex(val: number | undefined) {\n this._baseZIndex = val;\n console.warn('The baseZIndex property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * Transition options of the show animation.\n * @group Props\n * @deprecated since v14.2.0, use overlayOptions property instead.\n */\n @Input() get showTransitionOptions(): string | undefined {\n return this._showTransitionOptions;\n }\n set showTransitionOptions(val: string | undefined) {\n this._showTransitionOptions = val;\n console.warn('The showTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * Transition options of the hide animation.\n * @group Props\n * @deprecated since v14.2.0, use overlayOptions property instead.\n */\n @Input() get hideTransitionOptions(): string | undefined {\n return this._hideTransitionOptions;\n }\n set hideTransitionOptions(val: string | undefined) {\n this._hideTransitionOptions = val;\n console.warn('The hideTransitionOptions property is deprecated since v14.2.0, use overlayOptions property instead.');\n }\n /**\n * Label to display when there are no selections.\n * @group Props\n * @deprecated Use placeholder instead.\n */\n @Input() set defaultLabel(val: string | undefined) {\n this._defaultLabel = val;\n this.updateLabel();\n }\n get defaultLabel(): string | undefined {\n return this._defaultLabel;\n }\n /**\n * Label to display when there are no selections.\n * @group Props\n */\n @Input() set placeholder(val: string | undefined) {\n this._placeholder = val;\n this.updateLabel();\n }\n get placeholder(): string | undefined {\n return this._placeholder;\n }\n /**\n * An array of objects to display as the available options.\n * @group Props\n */\n @Input() get options(): any[] | undefined {\n return this._options;\n }\n set options(val: any[] | undefined) {\n this._options = val;\n this.updateLabel();\n }\n /**\n * When specified, filter displays with this value.\n * @group Props\n */\n @Input() get filterValue(): string | undefined | null {\n return this._filterValue;\n }\n set filterValue(val: string | undefined | null) {\n this._filterValue = val;\n this.activateFilter();\n }\n /**\n * Item size of item to be virtual scrolled.\n * @group Props\n * @deprecated use virtualScrollItemSize property instead.\n */\n @Input() get itemSize(): number | undefined {\n return this._itemSize;\n }\n set itemSize(val: number | undefined) {\n this._itemSize = val;\n console.warn('The itemSize property is deprecated, use virtualScrollItemSize property instead.');\n }\n\n @ViewChild('container') containerViewChild: Nullable<ElementRef>;\n\n @ViewChild('overlay') overlayViewChild: Nullable<Overlay>;\n\n @ViewChild('filterInput') filterInputChild: Nullable<ElementRef>;\n\n @ViewChild('in') accessibleViewChild: Nullable<ElementRef>;\n\n @ViewChild('items') itemsViewChild: Nullable<ElementRef>;\n\n @ViewChild('scroller') scroller: Nullable<Scroller>;\n\n @ContentChild(Footer) footerFacet: any;\n\n @ContentChild(Header) headerFacet: any;\n\n @ContentChildren(PrimeTemplate) templates: Nullable<QueryList<PrimeTemplate>>;\n\n /**\n * Callback to invoke when value changes.\n * @param {MultiSelectChangeEvent} event - Custom change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<MultiSelectChangeEvent> = new EventEmitter<MultiSelectChangeEvent>();\n /**\n * Callback to invoke when data is filtered.\n * @param {MultiSelectFilterEvent} event - Custom filter event.\n * @group Emits\n */\n @Output() onFilter: EventEmitter<MultiSelectFilterEvent> = new EventEmitter<MultiSelectFilterEvent>();\n /**\n * Callback to invoke when multiselect receives focus.\n * @param {MultiSelectFocusEvent} event - Custom focus event.\n * @group Emits\n */\n @Output() onFocus: EventEmitter<MultiSelectFocusEvent> = new EventEmitter<MultiSelectFocusEvent>();\n /**\n * Callback to invoke when multiselect loses focus.\n * @param {MultiSelectBlurEvent} event - Custom blur event.\n * @group Emits\n */\n @Output() onBlur: EventEmitter<MultiSelectBlurEvent> = new EventEmitter<MultiSelectBlurEvent>();\n /**\n * Callback to invoke when component is clicked.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n @Output() onClick: EventEmitter<Event> = new EventEmitter<Event>();\n /**\n * Callback to invoke when input field is cleared.\n * @group Emits\n */\n @Output() onClear: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke when overlay panel becomes visible.\n * @group Emits\n */\n @Output() onPanelShow: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke when overlay panel becomes hidden.\n * @group Emits\n */\n @Output() onPanelHide: EventEmitter<void> = new EventEmitter<void>();\n /**\n * Callback to invoke in lazy mode to load new data.\n * @param {MultiSelectLazyLoadEvent} event - Lazy load event.\n * @group Emits\n */\n @Output() onLazyLoad: EventEmitter<MultiSelectLazyLoadEvent> = new EventEmitter<MultiSelectLazyLoadEvent>();\n /**\n * Callback to invoke in lazy mode to load new data.\n * @param {MultiSelectRemoveEvent} event - Remove event.\n * @group Emits\n */\n @Output() onRemove: EventEmitter<MultiSelectRemoveEvent> = new EventEmitter<MultiSelectRemoveEvent>();\n\n _autoZIndex: boolean | undefined;\n\n _baseZIndex: number | undefined;\n\n _showTransitionOptions: string | undefined;\n\n _hideTransitionOptions: string | undefined;\n\n _defaultLabel: string | undefined;\n\n _placeholder: string | undefined;\n\n _itemSize: number | undefined;\n\n public value: any[] | undefined | null;\n\n public _filteredOptions: any[] | undefined | null;\n\n public onModelChange: Function = () => {};\n\n public onModelTouched: Function = () => {};\n\n public valuesAsString: string | undefined;\n\n public focus: boolean | undefined;\n\n filled: boolean | undefined | null;\n\n public _filterValue: string | undefined | null;\n\n public filtered: boolean | undefined;\n\n public itemTemplate: TemplateRef<any> | undefined;\n\n public groupTemplate: TemplateRef<any> | undefined;\n\n public loaderTemplate: TemplateRef<any> | undefined;\n\n public headerTemplate: TemplateRef<any> | undefined;\n\n public filterTemplate: TemplateRef<any> | undefined;\n\n public footerTemplate: TemplateRef<any> | undefined;\n\n public emptyFilterTemplate: TemplateRef<any> | undefined;\n\n public emptyTemplate: TemplateRef<any> | undefined;\n\n public selectedItemsTemplate: TemplateRef<any> | undefined;\n\n checkIconTemplate: TemplateRef<any> | undefined;\n\n filterIconTemplate: TemplateRef<any> | undefined;\n\n removeTokenIconTemplate: TemplateRef<any> | undefined;\n\n closeIconTemplate: TemplateRef<any> | undefined;\n\n clearIconTemplate: TemplateRef<any> | undefined;\n\n dropdownIconTemplate: TemplateRef<any> | undefined;\n\n public headerCheckboxFocus: boolean | undefined;\n\n filterOptions: MultiSelectFilterOptions | undefined;\n\n _options: any[] | undefined;\n\n maxSelectionLimitReached: boolean | undefined;\n\n preventModelTouched: boolean | undefined;\n\n preventDocumentDefault: boolean | undefined;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef, public zone: NgZone, public filterService: FilterService, public config: PrimeNGConfig, public overlayService: OverlayService) {}\n\n ngOnInit() {\n this.updateLabel();\n\n if (this.filterBy) {\n this.filterOptions = {\n filter: (value) => this.onFilterInputChange(value),\n reset: () => this.resetFilter()\n };\n }\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<PrimeTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'selectedItems':\n this.selectedItemsTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'filter':\n this.filterTemplate = item.template;\n break;\n\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'loader':\n this.loaderTemplate = item.template;\n break;\n\n case 'checkicon':\n this.checkIconTemplate = item.template;\n break;\n\n case 'filtericon':\n this.filterIconTemplate = item.template;\n break;\n\n case 'removetokenicon':\n this.removeTokenIconTemplate = item.template;\n break;\n\n case 'closeicon':\n this.closeIconTemplate = item.template;\n break;\n\n case 'clearicon':\n this.clearIconTemplate = item.template;\n break;\n\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n ngAfterViewInit() {\n if (this.overlayVisible) {\n this.show();\n }\n }\n\n ngAfterViewChecked() {\n if (this.filtered) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => {\n this.overlayViewChild?.alignOverlay();\n }, 1);\n });\n\n this.filtered = false;\n }\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : option && option.label != undefined ? option.label : option;\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : !this.optionLabel && option && option.value !== undefined ? option.value : option;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : optionGroup && optionGroup.label != undefined ? optionGroup.label : optionGroup;\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n isOptionDisabled(option: any) {\n let disabled = this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : option && option.disabled !== undefined ? option.disabled : false;\n return disabled || (this.maxSelectionLimitReached && !this.isSelected(option));\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.updateLabel();\n this.updateFilledState();\n this.checkSelectionLimit();\n\n this.cd.markForCheck();\n }\n\n checkSelectionLimit() {\n if (this.selectionLimit && this.value && this.value.length === this.selectionLimit) {\n this.maxSelectionLimitReached = true;\n } else {\n this.maxSelectionLimitReached = false;\n }\n }\n\n updateFilledState() {\n this.filled = this.value && this.value.length > 0;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onOptionClick(event: { originalEvent: Event; option: any }) {\n let option = event.option;\n if (this.isOptionDisabled(option)) {\n return;\n }\n\n let optionValue = this.getOptionValue(option);\n let selectionIndex = this.findSelectionIndex(optionValue);\n if (selectionIndex != -1) {\n this.value = (this.value as any[]).filter((val, i) => i != selectionIndex);\n this.onRemove.emit({ newValue: this.value, removed: optionValue });\n\n if (this.selectionLimit) {\n this.maxSelectionLimitReached = false;\n }\n } else {\n if (!this.selectionLimit || !this.value || this.value.length < this.selectionLimit) {\n this.value = [...(this.value || []), optionValue];\n }\n\n this.checkSelectionLimit();\n }\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event.originalEvent, value: this.value, itemValue: optionValue });\n this.updateLabel();\n this.updateFilledState();\n }\n\n isSelected(option: any) {\n return this.findSelectionIndex(this.getOptionValue(option)) != -1;\n }\n\n findSelectionIndex(val: any): number {\n let index = -1;\n\n if (this.value) {\n for (let i = 0; i < this.value.length; i++) {\n if (ObjectUtils.equals(this.value[i], val, this.dataKey)) {\n index = i;\n break;\n }\n }\n }\n\n return index;\n }\n\n get toggleAllDisabled(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return true;\n } else {\n for (let option of optionsToRender) {\n if (!this.isOptionDisabled(option)) return false;\n }\n\n return true;\n }\n }\n\n toggleAll(event: Event) {\n if (this.disabled || this.toggleAllDisabled || this.readonly) {\n return;\n }\n\n let allChecked = this.allChecked;\n\n if (allChecked) this.uncheckAll();\n else this.checkAll();\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event, value: this.value });\n this.updateFilledState();\n this.updateLabel();\n event.preventDefault();\n }\n\n checkAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach((opt) => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (!optionDisabled || (optionDisabled && this.isSelected(opt))) {\n val.push(this.getOptionValue(opt));\n }\n } else {\n let subOptions = this.getOptionGroupChildren(opt);\n\n if (subOptions) {\n subOptions.forEach((option: any) => {\n let optionDisabled = this.isOptionDisabled(option);\n if (!optionDisabled || (optionDisabled && this.isSelected(option))) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n uncheckAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach((opt) => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (optionDisabled && this.isSelected(opt)) {\n val.push(this.getOptionValue(opt));\n }\n } else {\n if (opt.items) {\n opt.items.forEach((option: any) => {\n let optionDisabled = this.isOptionDisabled(option);\n if (optionDisabled && this.isSelected(option)) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n show() {\n if (!this.overlayVisible) {\n this.overlayVisible = true;\n this.preventDocumentDefault = true;\n this.cd.markForCheck();\n }\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.virtualScroll && this.scroller?.setContentEl(this.itemsViewChild?.nativeElement);\n\n if (this.filterInputChild && this.filterInputChild.nativeElement) {\n this.preventModelTouched = true;\n\n if (this.autofocusFilter) {\n this.filterInputChild.nativeElement.focus();\n }\n }\n\n this.onPanelShow.emit();\n break;\n\n case 'void':\n this.onModelTouched();\n break;\n }\n }\n\n hide() {\n this.overlayVisible = false;\n if (this.resetFilterOnHide) {\n this.resetFilter();\n }\n this.onPanelHide.emit();\n this.cd.markForCheck();\n }\n\n resetFilter() {\n if (this.filterInputChild && this.filterInputChild.nativeElement) {\n this.filterInputChild.nativeElement.value = '';\n }\n\n this._filterValue = null;\n this._filteredOptions = null;\n }\n\n close(event: Event) {\n this.hide();\n event.preventDefault();\n event.stopPropagation();\n }\n\n clear(event: Event) {\n this.value = null;\n this.updateLabel();\n this.updateFilledState();\n this.checkSelectionLimit();\n this.onClear.emit();\n this.onModelChange(this.value);\n event.stopPropagation();\n }\n\n onMouseclick(event: MouseEvent, input: HTMLInputElement) {\n if (this.disabled || this.readonly || (<Node>event.target).isSameNode(this.accessibleViewChild?.nativeElement)) {\n return;\n }\n\n this.onClick.emit(event);\n\n if (!this.overlayViewChild?.el?.nativeElement?.contains(event.target) && !DomHandler.hasClass(event.target, 'p-multiselect-token-icon')) {\n if (this.overlayVisible) {\n this.hide();\n } else {\n this.show();\n }\n\n input.focus();\n }\n }\n\n removeChip(chip: MultiSelectItem, event: MouseEvent) {\n this.value = (<any[]>this.value).filter((val) => !ObjectUtils.equals(val, chip, this.dataKey));\n this.onModelChange(this.value);\n this.checkSelectionLimit();\n this.onChange.emit({ originalEvent: event, value: this.value, itemValue: chip });\n this.updateLabel();\n this.updateFilledState();\n }\n\n onInputFocus(event: Event) {\n this.focus = true;\n this.onFocus.emit({ originalEvent: event });\n }\n\n onInputBlur(event: Event) {\n this.focus = false;\n this.onBlur.emit({ originalEvent: event });\n\n if (!this.preventModelTouched) {\n this.onModelTouched();\n }\n this.preventModelTouched = false;\n }\n\n onOptionKeydown(event: { originalEvent: Event; option: any }) {\n if (this.readonly) {\n return;\n }\n\n switch ((<KeyboardEvent>event.originalEvent).which) {\n //down\n case 40:\n var nextItem = this.findNextItem((event.originalEvent.target as any).parentElement);\n if (nextItem) {\n nextItem.focus();\n }\n\n event.originalEvent.preventDefault();\n break;\n\n //up\n case 38:\n var prevItem = this.findPrevItem((event.originalEvent.target as any).parentElement);\n if (prevItem) {\n prevItem.focus();\n }\n\n event.originalEvent.preventDefault();\n break;\n\n //enter\n case 13:\n this.onOptionClick(event);\n event.originalEvent.preventDefault();\n break;\n\n case 27:\n case 9:\n this.hide();\n break;\n }\n }\n\n findNextItem(item: any): HTMLElement | null {\n let nextItem = item.nextElementSibling;\n\n if (nextItem) return DomHandler.hasClass(nextItem.children[0], 'p-disabled') || DomHandler.isHidden(nextItem.children[0]) || DomHandler.hasClass(nextItem, 'p-multiselect-item-group') ? this.findNextItem(nextItem) : nextItem.children[0];\n else return null;\n }\n\n findPrevItem(item: any): HTMLElement | null {\n let prevItem = item.previousElementSibling;\n\n if (prevItem) return DomHandler.hasClass(prevItem.children[0], 'p-disabled') || DomHandler.isHidden(prevItem.children[0]) || DomHandler.hasClass(prevItem, 'p-multiselect-item-group') ? this.findPrevItem(prevItem) : prevItem.children[0];\n else return null;\n }\n\n onKeydown(event: KeyboardEvent) {\n switch (event.which) {\n //down\n case 40:\n if (!this.overlayVisible && event.altKey) {\n this.show();\n event.preventDefault();\n }\n break;\n\n //space\n case 32:\n if (!this.overlayVisible) {\n this.show();\n event.preventDefault();\n }\n break;\n\n //escape\n case 27:\n this.hide();\n break;\n }\n }\n\n updateLabel() {\n if (this.value && this.options && this.value.length && this.displaySelectedLabel) {\n let label = '';\n for (let i = 0; i < this.value.length; i++) {\n let itemLabel = this.findLabelByValue(this.value[i]);\n if (itemLabel) {\n if (label.length > 0) {\n label = label + ', ';\n }\n label = label + itemLabel;\n }\n }\n\n if (this.value.length <= this.maxSelectedLabels || this.selectedItemsLabel === 'ellipsis') {\n this.valuesAsString = label;\n } else {\n let pattern = /{(.*?)}/;\n if (pattern.test(this.selectedItemsLabel)) {\n this.valuesAsString = this.selectedItemsLabel.replace((this.selectedItemsLabel as any).match(pattern)[0], this.value.length + '');\n } else {\n this.valuesAsString = this.selectedItemsLabel;\n }\n }\n } else {\n this.valuesAsString = this.placeholder || this.defaultLabel;\n }\n }\n\n findLabelByValue(val: any): string {\n if (this.group) {\n let label = null;\n\n for (let i = 0; i < (this.options as any[]).length; i++) {\n let subOptions = this.getOptionGroupChildren((this.options as any[])[i]);\n if (subOptions) {\n label = this.searchLabelByValue(val, subOptions);\n\n if (label) {\n break;\n }\n }\n }\n\n return label as string;\n } else {\n return this.searchLabelByValue(val, this.options as any[]);\n }\n }\n\n searchLabelByValue(val: any, options: any[]): string {\n let label = null;\n\n for (let i = 0; i < options.length; i++) {\n let option = options[i];\n let optionValue = this.getOptionValue(option);\n\n if ((val == null && optionValue == null) || ObjectUtils.equals(val, optionValue, this.dataKey)) {\n label = this.getOptionLabel(option);\n break;\n }\n }\n\n return label;\n }\n\n get allChecked(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return false;\n } else {\n let selectedDisabledItemsLength = 0;\n let unselectedDisabledItemsLength = 0;\n let selectedEnabledItemsLength = 0;\n let visibleOptionsLength = this.group ? 0 : this.optionsToRender.length;\n\n for (let option of optionsToRender) {\n if (!this.group) {\n let disabled = this.isOptionDisabled(option);\n let selected = this.isSelected(option);\n\n if (disabled) {\n if (selected) selectedDisabledItemsLength++;\n else unselectedDisabledItemsLength++;\n } else {\n if (selected) selectedEnabledItemsLength++;\n else return false;\n }\n } else {\n for (let opt of this.getOptionGroupChildren(option)) {\n let disabled = this.isOptionDisabled(opt);\n let selected = this.isSelected(opt);\n\n if (disabled) {\n if (selected) selectedDisabledItemsLength++;\n else unselectedDisabledItemsLength++;\n } else {\n if (selected) selectedEnabledItemsLength++;\n else {\n return false;\n }\n }\n\n visibleOptionsLength++;\n }\n }\n }\n\n return (visibleOptionsLength === selectedDisabledItemsLength ||\n visibleOptionsLength === selectedEnabledItemsLength ||\n (selectedEnabledItemsLength && visibleOptionsLength === selectedEnabledItemsLength + unselectedDisabledItemsLength + selectedDisabledItemsLength)) as boolean;\n }\n }\n\n get optionsToRender(): any[] {\n return (this._filteredOptions || this.options) as any[];\n }\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n get emptyFilterMessageLabel(): string {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n\n hasFilter() {\n return this._filterValue && this._filterValue.trim().length > 0;\n }\n\n isEmpty() {\n return !this.optionsToRender || (this.optionsToRender && this.optionsToRender.length === 0);\n }\n\n onFilterInputChange(event: KeyboardEvent) {\n this._filterValue = (<HTMLInputElement>event.target).value;\n this.activateFilter();\n this.onFilter.emit({ originalEvent: event, filter: this._filterValue });\n this.cd.detectChanges();\n }\n\n activateFilter() {\n if (this.hasFilter() && this._options) {\n let searchFields: string[] = (this.filterBy || this.optionLabel || 'label').split(',');\n\n if (this.group) {\n let filteredGroups = [];\n for (let optgroup of this.options as any[]) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push({ ...optgroup, ...{ [this.optionGroupChildren]: filteredSubOptions } });\n }\n }\n\n this._filteredOptions = filteredGroups;\n } else {\n this._filteredOptions = this.filterService.filter(this.options as any[], searchFields, this._filterValue, this.filterMatchMode, this.filterLocale);\n }\n } else {\n this._filteredOptions = null;\n }\n }\n\n onHeaderCheckboxFocus() {\n this.headerCheckboxFocus = true;\n }\n\n onHeaderCheckboxBlur() {\n this.headerCheckboxFocus = false;\n }\n}\n\n@NgModule({\n imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon],\n exports: [MultiSelect, OverlayModule, SharedModule, ScrollerModule],\n declarations: [MultiSelect, MultiSelectItem]\n})\nexport class MultiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -18,6 +18,10 @@ import { AngleUpIcon } from 'primeng/icons/angleup';
18
18
  import { AngleDownIcon } from 'primeng/icons/angledown';
19
19
  import { SearchIcon } from 'primeng/icons/search';
20
20
 
21
+ /**
22
+ * OrderList is used to managed the order of a collection.
23
+ * @group Components
24
+ */
21
25
  class OrderList {
22
26
  document;
23
27
  platformId;
@@ -76,7 +80,7 @@ class OrderList {
76
80
  */
77
81
  dragdrop = false;
78
82
  /**
79
- * Defines the location of the buttons with respect to the list, valid values are "left" or "right".
83
+ * Defines the location of the buttons with respect to the list.
80
84
  * @group Props
81
85
  */
82
86
  controlsPosition = 'left';
@@ -147,13 +151,13 @@ class OrderList {
147
151
  onReorder = new EventEmitter();
148
152
  /**
149
153
  * Callback to invoke when selection changes.
150
- * @param {OrderListSelectionChangeEvent} event - custom change event.
154
+ * @param {OrderListSelectionChangeEvent} event - Custom change event.
151
155
  * @group Emits
152
156
  */
153
157
  onSelectionChange = new EventEmitter();
154
158
  /**
155
159
  * Callback to invoke when filtering occurs.
156
- * @param {OrderListFilterEvent} event - custom filter event.
160
+ * @param {OrderListFilterEvent} event - Custom filter event.
157
161
  * @group Emits
158
162
  */
159
163
  onFilterEvent = new EventEmitter();
@@ -296,7 +300,7 @@ class OrderList {
296
300
  }
297
301
  /**
298
302
  * Callback to invoke on filter reset.
299
- * @group Methods
303
+ * @group Method
300
304
  */
301
305
  resetFilter() {
302
306
  this.filterValue = null;