primeng 16.7.2 → 16.9.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 (417) hide show
  1. package/breadcrumb/breadcrumb.interface.d.ts +2 -2
  2. package/calendar/calendar.d.ts +10 -1
  3. package/chart/chart.d.ts +11 -1
  4. package/chips/chips.d.ts +1 -2
  5. package/dropdown/dropdown.d.ts +7 -3
  6. package/esm2022/accordion/accordion.mjs +10 -10
  7. package/esm2022/animate/animate.mjs +7 -7
  8. package/esm2022/animateonscroll/animateonscroll.mjs +7 -7
  9. package/esm2022/api/confirmationservice.mjs +3 -3
  10. package/esm2022/api/contextmenuservice.mjs +3 -3
  11. package/esm2022/api/filterservice.mjs +3 -3
  12. package/esm2022/api/messageservice.mjs +3 -3
  13. package/esm2022/api/overlayservice.mjs +3 -3
  14. package/esm2022/api/primengconfig.mjs +3 -3
  15. package/esm2022/api/shared.mjs +13 -13
  16. package/esm2022/api/treedragdropservice.mjs +3 -3
  17. package/esm2022/autocomplete/autocomplete.mjs +38 -18
  18. package/esm2022/autofocus/autofocus.mjs +7 -7
  19. package/esm2022/avatar/avatar.mjs +7 -7
  20. package/esm2022/avatargroup/avatargroup.mjs +7 -7
  21. package/esm2022/badge/badge.mjs +10 -10
  22. package/esm2022/baseicon/baseicon.mjs +3 -3
  23. package/esm2022/blockui/blockui.mjs +7 -7
  24. package/esm2022/breadcrumb/breadcrumb.interface.mjs +1 -1
  25. package/esm2022/breadcrumb/breadcrumb.mjs +7 -7
  26. package/esm2022/button/button.mjs +10 -10
  27. package/esm2022/calendar/calendar.mjs +180 -34
  28. package/esm2022/card/card.mjs +7 -7
  29. package/esm2022/carousel/carousel.mjs +7 -7
  30. package/esm2022/cascadeselect/cascadeselect.mjs +10 -10
  31. package/esm2022/chart/chart.mjs +24 -10
  32. package/esm2022/checkbox/checkbox.mjs +7 -7
  33. package/esm2022/chip/chip.mjs +7 -7
  34. package/esm2022/chips/chips.mjs +15 -18
  35. package/esm2022/colorpicker/colorpicker.mjs +7 -7
  36. package/esm2022/confirmdialog/confirmdialog.mjs +7 -7
  37. package/esm2022/confirmpopup/confirmpopup.mjs +7 -7
  38. package/esm2022/contextmenu/contextmenu.mjs +18 -14
  39. package/esm2022/dataview/dataview.mjs +10 -10
  40. package/esm2022/defer/defer.mjs +7 -7
  41. package/esm2022/dialog/dialog.mjs +7 -7
  42. package/esm2022/divider/divider.mjs +7 -7
  43. package/esm2022/dock/dock.mjs +7 -7
  44. package/esm2022/dragdrop/dragdrop.mjs +10 -10
  45. package/esm2022/dropdown/dropdown.mjs +90 -51
  46. package/esm2022/dynamicdialog/dialogservice.mjs +3 -3
  47. package/esm2022/dynamicdialog/dynamicdialog.mjs +7 -7
  48. package/esm2022/dynamicdialog/dynamicdialogcontent.mjs +3 -3
  49. package/esm2022/editor/editor.mjs +7 -7
  50. package/esm2022/fieldset/fieldset.mjs +7 -7
  51. package/esm2022/fileupload/fileupload.mjs +18 -11
  52. package/esm2022/focustrap/focustrap.mjs +7 -7
  53. package/esm2022/galleria/galleria.mjs +19 -19
  54. package/esm2022/icons/angledoubledown/angledoubledown.mjs +3 -3
  55. package/esm2022/icons/angledoubleleft/angledoubleleft.mjs +3 -3
  56. package/esm2022/icons/angledoubleright/angledoubleright.mjs +3 -3
  57. package/esm2022/icons/angledoubleup/angledoubleup.mjs +3 -3
  58. package/esm2022/icons/angledown/angledown.mjs +3 -3
  59. package/esm2022/icons/angleleft/angleleft.mjs +3 -3
  60. package/esm2022/icons/angleright/angleright.mjs +3 -3
  61. package/esm2022/icons/angleup/angleup.mjs +3 -3
  62. package/esm2022/icons/arrowdown/arrowdown.mjs +3 -3
  63. package/esm2022/icons/arrowdownleft/arrowdownleft.mjs +3 -3
  64. package/esm2022/icons/arrowdownright/arrowdownright.mjs +3 -3
  65. package/esm2022/icons/arrowleft/arrowleft.mjs +3 -3
  66. package/esm2022/icons/arrowright/arrowright.mjs +3 -3
  67. package/esm2022/icons/arrowup/arrowup.mjs +3 -3
  68. package/esm2022/icons/ban/ban.mjs +3 -3
  69. package/esm2022/icons/bars/bars.mjs +3 -3
  70. package/esm2022/icons/calendar/calendar.mjs +3 -3
  71. package/esm2022/icons/caretleft/caretleft.mjs +3 -3
  72. package/esm2022/icons/caretright/caretright.mjs +3 -3
  73. package/esm2022/icons/check/check.mjs +3 -3
  74. package/esm2022/icons/chevrondown/chevrondown.mjs +3 -3
  75. package/esm2022/icons/chevronleft/chevronleft.mjs +3 -3
  76. package/esm2022/icons/chevronright/chevronright.mjs +3 -3
  77. package/esm2022/icons/chevronup/chevronup.mjs +3 -3
  78. package/esm2022/icons/exclamationtriangle/exclamationtriangle.mjs +3 -3
  79. package/esm2022/icons/eye/eye.mjs +3 -3
  80. package/esm2022/icons/eyeslash/eyeslash.mjs +3 -3
  81. package/esm2022/icons/filter/filter.mjs +3 -3
  82. package/esm2022/icons/filterslash/filterslash.mjs +3 -3
  83. package/esm2022/icons/home/home.mjs +3 -3
  84. package/esm2022/icons/infocircle/infocircle.mjs +3 -3
  85. package/esm2022/icons/minus/minus.mjs +3 -3
  86. package/esm2022/icons/pencil/pencil.mjs +3 -3
  87. package/esm2022/icons/plus/plus.mjs +3 -3
  88. package/esm2022/icons/refresh/refresh.mjs +3 -3
  89. package/esm2022/icons/search/search.mjs +3 -3
  90. package/esm2022/icons/searchminus/searchminus.mjs +3 -3
  91. package/esm2022/icons/searchplus/searchplus.mjs +3 -3
  92. package/esm2022/icons/sortalt/sortalt.mjs +3 -3
  93. package/esm2022/icons/sortamountdown/sortamountdown.mjs +3 -3
  94. package/esm2022/icons/sortamountupalt/sortamountupalt.mjs +3 -3
  95. package/esm2022/icons/spinner/spinner.mjs +3 -3
  96. package/esm2022/icons/star/star.mjs +3 -3
  97. package/esm2022/icons/starfill/starfill.mjs +3 -3
  98. package/esm2022/icons/thlarge/thlarge.mjs +3 -3
  99. package/esm2022/icons/times/times.mjs +3 -3
  100. package/esm2022/icons/timescircle/timescircle.mjs +3 -3
  101. package/esm2022/icons/trash/trash.mjs +3 -3
  102. package/esm2022/icons/undo/undo.mjs +3 -3
  103. package/esm2022/icons/upload/upload.mjs +3 -3
  104. package/esm2022/icons/windowmaximize/windowmaximize.mjs +3 -3
  105. package/esm2022/icons/windowminimize/windowminimize.mjs +3 -3
  106. package/esm2022/image/image.mjs +7 -7
  107. package/esm2022/inplace/inplace.mjs +13 -13
  108. package/esm2022/inputmask/inputmask.mjs +7 -7
  109. package/esm2022/inputnumber/inputnumber.mjs +7 -7
  110. package/esm2022/inputswitch/inputswitch.mjs +7 -7
  111. package/esm2022/inputtext/inputtext.mjs +7 -7
  112. package/esm2022/inputtextarea/inputtextarea.mjs +7 -7
  113. package/esm2022/keyfilter/keyfilter.mjs +7 -7
  114. package/esm2022/knob/knob.mjs +7 -7
  115. package/esm2022/listbox/listbox.interface.mjs +1 -1
  116. package/esm2022/listbox/listbox.mjs +52 -18
  117. package/esm2022/megamenu/megamenu.mjs +12 -14
  118. package/esm2022/menu/menu.mjs +13 -13
  119. package/esm2022/menubar/menubar.mjs +15 -15
  120. package/esm2022/message/message.mjs +7 -7
  121. package/esm2022/messages/messages.mjs +10 -10
  122. package/esm2022/multiselect/multiselect.interface.mjs +1 -1
  123. package/esm2022/multiselect/multiselect.mjs +110 -44
  124. package/esm2022/orderlist/orderlist.mjs +331 -103
  125. package/esm2022/organizationchart/organizationchart.mjs +54 -53
  126. package/esm2022/overlay/overlay.mjs +9 -9
  127. package/esm2022/overlaypanel/overlaypanel.mjs +7 -7
  128. package/esm2022/paginator/paginator.mjs +76 -25
  129. package/esm2022/panel/panel.mjs +10 -8
  130. package/esm2022/panelmenu/panelmenu.mjs +13 -13
  131. package/esm2022/password/password.mjs +13 -13
  132. package/esm2022/picklist/picklist.mjs +601 -135
  133. package/esm2022/progressbar/progressbar.mjs +7 -7
  134. package/esm2022/progressspinner/progressspinner.mjs +7 -7
  135. package/esm2022/radiobutton/radiobutton.mjs +10 -10
  136. package/esm2022/rating/rating.mjs +7 -7
  137. package/esm2022/ripple/ripple.mjs +7 -7
  138. package/esm2022/scroller/scroller.mjs +20 -16
  139. package/esm2022/scrollpanel/scrollpanel.mjs +7 -7
  140. package/esm2022/scrolltop/scrolltop.mjs +7 -7
  141. package/esm2022/selectbutton/selectbutton.mjs +7 -7
  142. package/esm2022/sidebar/sidebar.mjs +11 -11
  143. package/esm2022/skeleton/skeleton.mjs +7 -7
  144. package/esm2022/slidemenu/slidemenu.mjs +10 -10
  145. package/esm2022/slider/slider.mjs +7 -7
  146. package/esm2022/speeddial/speeddial.mjs +7 -7
  147. package/esm2022/spinner/spinner.mjs +7 -7
  148. package/esm2022/splitbutton/splitbutton.mjs +7 -7
  149. package/esm2022/splitter/splitter.mjs +10 -10
  150. package/esm2022/steps/steps.mjs +7 -7
  151. package/esm2022/styleclass/styleclass.mjs +7 -7
  152. package/esm2022/table/table.mjs +284 -154
  153. package/esm2022/tabmenu/tabmenu.mjs +7 -7
  154. package/esm2022/tabview/tabview.mjs +77 -32
  155. package/esm2022/tag/tag.mjs +7 -7
  156. package/esm2022/terminal/terminal.mjs +7 -7
  157. package/esm2022/terminal/terminalservice.mjs +3 -3
  158. package/esm2022/tieredmenu/tieredmenu.mjs +10 -10
  159. package/esm2022/timeline/timeline.mjs +25 -21
  160. package/esm2022/toast/toast.mjs +13 -13
  161. package/esm2022/togglebutton/togglebutton.mjs +7 -7
  162. package/esm2022/toolbar/toolbar.mjs +7 -7
  163. package/esm2022/tooltip/tooltip.mjs +9 -9
  164. package/esm2022/tree/tree.mjs +172 -92
  165. package/esm2022/treeselect/treeselect.mjs +134 -37
  166. package/esm2022/treetable/treetable.mjs +242 -128
  167. package/esm2022/tristatecheckbox/tristatecheckbox.mjs +7 -7
  168. package/esm2022/virtualscroller/virtualscroller.mjs +14 -14
  169. package/fesm2022/primeng-accordion.mjs +10 -10
  170. package/fesm2022/primeng-animate.mjs +7 -7
  171. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  172. package/fesm2022/primeng-api.mjs +34 -34
  173. package/fesm2022/primeng-autocomplete.mjs +37 -17
  174. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  175. package/fesm2022/primeng-autofocus.mjs +7 -7
  176. package/fesm2022/primeng-avatar.mjs +7 -7
  177. package/fesm2022/primeng-avatargroup.mjs +7 -7
  178. package/fesm2022/primeng-badge.mjs +10 -10
  179. package/fesm2022/primeng-baseicon.mjs +3 -3
  180. package/fesm2022/primeng-blockui.mjs +7 -7
  181. package/fesm2022/primeng-breadcrumb.mjs +7 -7
  182. package/fesm2022/primeng-button.mjs +10 -10
  183. package/fesm2022/primeng-calendar.mjs +179 -33
  184. package/fesm2022/primeng-calendar.mjs.map +1 -1
  185. package/fesm2022/primeng-card.mjs +7 -7
  186. package/fesm2022/primeng-carousel.mjs +7 -7
  187. package/fesm2022/primeng-cascadeselect.mjs +10 -10
  188. package/fesm2022/primeng-chart.mjs +23 -9
  189. package/fesm2022/primeng-chart.mjs.map +1 -1
  190. package/fesm2022/primeng-checkbox.mjs +7 -7
  191. package/fesm2022/primeng-chip.mjs +7 -7
  192. package/fesm2022/primeng-chips.mjs +14 -17
  193. package/fesm2022/primeng-chips.mjs.map +1 -1
  194. package/fesm2022/primeng-colorpicker.mjs +7 -7
  195. package/fesm2022/primeng-confirmdialog.mjs +7 -7
  196. package/fesm2022/primeng-confirmpopup.mjs +7 -7
  197. package/fesm2022/primeng-contextmenu.mjs +17 -13
  198. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  199. package/fesm2022/primeng-dataview.mjs +10 -10
  200. package/fesm2022/primeng-defer.mjs +7 -7
  201. package/fesm2022/primeng-dialog.mjs +7 -7
  202. package/fesm2022/primeng-divider.mjs +7 -7
  203. package/fesm2022/primeng-dock.mjs +7 -7
  204. package/fesm2022/primeng-dragdrop.mjs +10 -10
  205. package/fesm2022/primeng-dropdown.mjs +89 -50
  206. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  207. package/fesm2022/primeng-dynamicdialog.mjs +13 -13
  208. package/fesm2022/primeng-editor.mjs +7 -7
  209. package/fesm2022/primeng-fieldset.mjs +7 -7
  210. package/fesm2022/primeng-fileupload.mjs +17 -10
  211. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  212. package/fesm2022/primeng-focustrap.mjs +7 -7
  213. package/fesm2022/primeng-galleria.mjs +19 -19
  214. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  215. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  216. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  217. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  218. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  219. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  220. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  221. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  222. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  223. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  224. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  225. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  226. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  227. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  228. package/fesm2022/primeng-icons-ban.mjs +3 -3
  229. package/fesm2022/primeng-icons-bars.mjs +3 -3
  230. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  231. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  232. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  233. package/fesm2022/primeng-icons-check.mjs +3 -3
  234. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  235. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  236. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  237. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  238. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  239. package/fesm2022/primeng-icons-eye.mjs +3 -3
  240. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  241. package/fesm2022/primeng-icons-filter.mjs +3 -3
  242. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  243. package/fesm2022/primeng-icons-home.mjs +3 -3
  244. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  245. package/fesm2022/primeng-icons-minus.mjs +3 -3
  246. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  247. package/fesm2022/primeng-icons-plus.mjs +3 -3
  248. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  249. package/fesm2022/primeng-icons-search.mjs +3 -3
  250. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  251. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  252. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  253. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  254. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  255. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  256. package/fesm2022/primeng-icons-star.mjs +3 -3
  257. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  258. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  259. package/fesm2022/primeng-icons-times.mjs +3 -3
  260. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  261. package/fesm2022/primeng-icons-trash.mjs +3 -3
  262. package/fesm2022/primeng-icons-undo.mjs +3 -3
  263. package/fesm2022/primeng-icons-upload.mjs +3 -3
  264. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  265. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  266. package/fesm2022/primeng-image.mjs +7 -7
  267. package/fesm2022/primeng-inplace.mjs +13 -13
  268. package/fesm2022/primeng-inputmask.mjs +7 -7
  269. package/fesm2022/primeng-inputnumber.mjs +7 -7
  270. package/fesm2022/primeng-inputswitch.mjs +7 -7
  271. package/fesm2022/primeng-inputtext.mjs +7 -7
  272. package/fesm2022/primeng-inputtextarea.mjs +7 -7
  273. package/fesm2022/primeng-keyfilter.mjs +7 -7
  274. package/fesm2022/primeng-knob.mjs +7 -7
  275. package/fesm2022/primeng-listbox.mjs +51 -17
  276. package/fesm2022/primeng-listbox.mjs.map +1 -1
  277. package/fesm2022/primeng-megamenu.mjs +11 -13
  278. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  279. package/fesm2022/primeng-menu.mjs +13 -13
  280. package/fesm2022/primeng-menubar.mjs +14 -14
  281. package/fesm2022/primeng-menubar.mjs.map +1 -1
  282. package/fesm2022/primeng-message.mjs +7 -7
  283. package/fesm2022/primeng-messages.mjs +9 -9
  284. package/fesm2022/primeng-messages.mjs.map +1 -1
  285. package/fesm2022/primeng-multiselect.mjs +109 -43
  286. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  287. package/fesm2022/primeng-orderlist.mjs +334 -106
  288. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  289. package/fesm2022/primeng-organizationchart.mjs +52 -50
  290. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  291. package/fesm2022/primeng-overlay.mjs +8 -8
  292. package/fesm2022/primeng-overlay.mjs.map +1 -1
  293. package/fesm2022/primeng-overlaypanel.mjs +7 -7
  294. package/fesm2022/primeng-paginator.mjs +79 -27
  295. package/fesm2022/primeng-paginator.mjs.map +1 -1
  296. package/fesm2022/primeng-panel.mjs +9 -7
  297. package/fesm2022/primeng-panel.mjs.map +1 -1
  298. package/fesm2022/primeng-panelmenu.mjs +13 -13
  299. package/fesm2022/primeng-password.mjs +13 -13
  300. package/fesm2022/primeng-picklist.mjs +604 -138
  301. package/fesm2022/primeng-picklist.mjs.map +1 -1
  302. package/fesm2022/primeng-progressbar.mjs +7 -7
  303. package/fesm2022/primeng-progressspinner.mjs +7 -7
  304. package/fesm2022/primeng-radiobutton.mjs +10 -10
  305. package/fesm2022/primeng-rating.mjs +7 -7
  306. package/fesm2022/primeng-ripple.mjs +7 -7
  307. package/fesm2022/primeng-scroller.mjs +19 -15
  308. package/fesm2022/primeng-scroller.mjs.map +1 -1
  309. package/fesm2022/primeng-scrollpanel.mjs +7 -7
  310. package/fesm2022/primeng-scrolltop.mjs +7 -7
  311. package/fesm2022/primeng-selectbutton.mjs +7 -7
  312. package/fesm2022/primeng-sidebar.mjs +10 -10
  313. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  314. package/fesm2022/primeng-skeleton.mjs +7 -7
  315. package/fesm2022/primeng-slidemenu.mjs +10 -10
  316. package/fesm2022/primeng-slider.mjs +7 -7
  317. package/fesm2022/primeng-speeddial.mjs +7 -7
  318. package/fesm2022/primeng-spinner.mjs +7 -7
  319. package/fesm2022/primeng-splitbutton.mjs +7 -7
  320. package/fesm2022/primeng-splitter.mjs +9 -9
  321. package/fesm2022/primeng-splitter.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +7 -7
  323. package/fesm2022/primeng-styleclass.mjs +7 -7
  324. package/fesm2022/primeng-table.mjs +283 -153
  325. package/fesm2022/primeng-table.mjs.map +1 -1
  326. package/fesm2022/primeng-tabmenu.mjs +7 -7
  327. package/fesm2022/primeng-tabview.mjs +76 -31
  328. package/fesm2022/primeng-tabview.mjs.map +1 -1
  329. package/fesm2022/primeng-tag.mjs +7 -7
  330. package/fesm2022/primeng-terminal.mjs +10 -10
  331. package/fesm2022/primeng-tieredmenu.mjs +10 -10
  332. package/fesm2022/primeng-timeline.mjs +25 -21
  333. package/fesm2022/primeng-timeline.mjs.map +1 -1
  334. package/fesm2022/primeng-toast.mjs +12 -12
  335. package/fesm2022/primeng-toast.mjs.map +1 -1
  336. package/fesm2022/primeng-togglebutton.mjs +7 -7
  337. package/fesm2022/primeng-toolbar.mjs +7 -7
  338. package/fesm2022/primeng-tooltip.mjs +8 -8
  339. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  340. package/fesm2022/primeng-tree.mjs +171 -91
  341. package/fesm2022/primeng-tree.mjs.map +1 -1
  342. package/fesm2022/primeng-treeselect.mjs +133 -36
  343. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  344. package/fesm2022/primeng-treetable.mjs +241 -127
  345. package/fesm2022/primeng-treetable.mjs.map +1 -1
  346. package/fesm2022/primeng-tristatecheckbox.mjs +7 -7
  347. package/fesm2022/primeng-virtualscroller.mjs +13 -13
  348. package/fesm2022/primeng-virtualscroller.mjs.map +1 -1
  349. package/listbox/listbox.d.ts +19 -2
  350. package/listbox/listbox.interface.d.ts +16 -1
  351. package/multiselect/multiselect.d.ts +31 -5
  352. package/multiselect/multiselect.interface.d.ts +15 -0
  353. package/orderlist/orderlist.d.ts +59 -7
  354. package/organizationchart/organizationchart.d.ts +3 -4
  355. package/package.json +54 -54
  356. package/paginator/paginator.d.ts +3 -3
  357. package/picklist/picklist.d.ts +64 -7
  358. package/resources/components/dropdown/dropdown.css +1 -7
  359. package/resources/components/messages/messages.css +1 -0
  360. package/resources/components/table/table.css +3 -3
  361. package/resources/components/toast/toast.css +1 -0
  362. package/resources/themes/arya-blue/theme.css +40 -14
  363. package/resources/themes/arya-green/theme.css +40 -14
  364. package/resources/themes/arya-orange/theme.css +40 -14
  365. package/resources/themes/arya-purple/theme.css +40 -14
  366. package/resources/themes/bootstrap4-dark-blue/theme.css +40 -14
  367. package/resources/themes/bootstrap4-dark-purple/theme.css +40 -14
  368. package/resources/themes/bootstrap4-light-blue/theme.css +40 -14
  369. package/resources/themes/bootstrap4-light-purple/theme.css +40 -14
  370. package/resources/themes/fluent-light/theme.css +40 -14
  371. package/resources/themes/lara-dark-blue/theme.css +40 -14
  372. package/resources/themes/lara-dark-indigo/theme.css +40 -14
  373. package/resources/themes/lara-dark-purple/theme.css +40 -14
  374. package/resources/themes/lara-dark-teal/theme.css +40 -14
  375. package/resources/themes/lara-light-blue/theme.css +40 -14
  376. package/resources/themes/lara-light-indigo/theme.css +40 -14
  377. package/resources/themes/lara-light-purple/theme.css +40 -14
  378. package/resources/themes/lara-light-teal/theme.css +40 -14
  379. package/resources/themes/luna-amber/theme.css +40 -14
  380. package/resources/themes/luna-blue/theme.css +40 -14
  381. package/resources/themes/luna-green/theme.css +40 -14
  382. package/resources/themes/luna-pink/theme.css +40 -14
  383. package/resources/themes/md-dark-deeppurple/theme.css +40 -14
  384. package/resources/themes/md-dark-indigo/theme.css +40 -14
  385. package/resources/themes/md-light-deeppurple/theme.css +40 -14
  386. package/resources/themes/md-light-indigo/theme.css +40 -14
  387. package/resources/themes/mdc-dark-deeppurple/theme.css +40 -14
  388. package/resources/themes/mdc-dark-indigo/theme.css +40 -14
  389. package/resources/themes/mdc-light-deeppurple/theme.css +40 -14
  390. package/resources/themes/mdc-light-indigo/theme.css +40 -14
  391. package/resources/themes/mira/theme.css +40 -14
  392. package/resources/themes/nano/theme.css +40 -14
  393. package/resources/themes/nova/theme.css +40 -14
  394. package/resources/themes/nova-accent/theme.css +40 -14
  395. package/resources/themes/nova-alt/theme.css +40 -14
  396. package/resources/themes/rhea/theme.css +40 -14
  397. package/resources/themes/saga-blue/theme.css +40 -14
  398. package/resources/themes/saga-green/theme.css +40 -14
  399. package/resources/themes/saga-orange/theme.css +40 -14
  400. package/resources/themes/saga-purple/theme.css +40 -14
  401. package/resources/themes/soho-dark/theme.css +40 -14
  402. package/resources/themes/soho-light/theme.css +40 -14
  403. package/resources/themes/tailwind-light/theme.css +40 -14
  404. package/resources/themes/vela-blue/theme.css +40 -14
  405. package/resources/themes/vela-green/theme.css +40 -14
  406. package/resources/themes/vela-orange/theme.css +40 -14
  407. package/resources/themes/vela-purple/theme.css +40 -14
  408. package/resources/themes/viva-dark/theme.css +40 -14
  409. package/resources/themes/viva-light/theme.css +40 -14
  410. package/scroller/scroller.d.ts +2 -3
  411. package/table/table.d.ts +20 -9
  412. package/tabview/tabview.d.ts +19 -2
  413. package/timeline/timeline.d.ts +1 -1
  414. package/tree/tree.d.ts +12 -1
  415. package/treeselect/treeselect.d.ts +14 -1
  416. package/treetable/treetable.d.ts +16 -2
  417. package/virtualscroller/virtualscroller.d.ts +1 -2
@@ -48,8 +48,8 @@ class Divider {
48
48
  'p-divider-bottom': this.layout === 'vertical' && this.align === 'bottom'
49
49
  };
50
50
  }
51
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Divider, deps: [], target: i0.ɵɵFactoryTarget.Component });
52
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Divider, selector: "p-divider", inputs: { style: "style", styleClass: "styleClass", layout: "layout", type: "type", align: "align" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
51
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Divider, deps: [], target: i0.ɵɵFactoryTarget.Component });
52
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: Divider, selector: "p-divider", inputs: { style: "style", styleClass: "styleClass", layout: "layout", type: "type", align: "align" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
53
53
  <div [ngClass]="containerClass()" [class]="styleClass" [ngStyle]="style" role="separator" [attr.aria-orientation]="layout" [attr.data-pc-name]="'divider'">
54
54
  <div class="p-divider-content">
55
55
  <ng-content></ng-content>
@@ -57,7 +57,7 @@ class Divider {
57
57
  </div>
58
58
  `, isInline: true, styles: ["@layer primeng{.p-divider-horizontal{display:flex;width:100%;position:relative;align-items:center}.p-divider-horizontal:before{position:absolute;display:block;top:50%;left:0;width:100%;content:\"\"}.p-divider-horizontal.p-divider-left{justify-content:flex-start}.p-divider-horizontal.p-divider-right{justify-content:flex-end}.p-divider-horizontal.p-divider-center{justify-content:center}.p-divider-content{z-index:1}.p-divider-vertical{min-height:100%;margin:0 1rem;display:flex;position:relative;justify-content:center}.p-divider-vertical:before{position:absolute;display:block;top:0;left:50%;height:100%;content:\"\"}.p-divider-vertical.p-divider-top{align-items:flex-start}.p-divider-vertical.p-divider-center{align-items:center}.p-divider-vertical.p-divider-bottom{align-items:flex-end}.p-divider-solid.p-divider-horizontal:before{border-top-style:solid}.p-divider-solid.p-divider-vertical:before{border-left-style:solid}.p-divider-dashed.p-divider-horizontal:before{border-top-style:dashed}.p-divider-dashed.p-divider-vertical:before{border-left-style:dashed}.p-divider-dotted.p-divider-horizontal:before{border-top-style:dotted}.p-divider-dotted.p-divider-horizontal:before{border-left-style:dotted}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Divider, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Divider, decorators: [{
61
61
  type: Component,
62
62
  args: [{ selector: 'p-divider', template: `
63
63
  <div [ngClass]="containerClass()" [class]="styleClass" [ngStyle]="style" role="separator" [attr.aria-orientation]="layout" [attr.data-pc-name]="'divider'">
@@ -80,11 +80,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
80
80
  type: Input
81
81
  }] } });
82
82
  class DividerModule {
83
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
84
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: DividerModule, declarations: [Divider], imports: [CommonModule], exports: [Divider] });
85
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DividerModule, imports: [CommonModule] });
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
84
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: DividerModule, declarations: [Divider], imports: [CommonModule], exports: [Divider] });
85
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DividerModule, imports: [CommonModule] });
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DividerModule, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DividerModule, decorators: [{
88
88
  type: NgModule,
89
89
  args: [{
90
90
  imports: [CommonModule],
@@ -232,8 +232,8 @@ class Dock {
232
232
  'p-focus': this.isItemActive(this.getItemId(item, index))
233
233
  };
234
234
  }
235
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Dock, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
236
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Dock, selector: "p-dock", inputs: { id: "id", style: "style", styleClass: "styleClass", model: "model", position: "position", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy" }, outputs: { onFocus: "onFocus", onBlur: "onBlur" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }], ngImport: i0, template: `
235
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Dock, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
236
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: Dock, selector: "p-dock", inputs: { id: "id", style: "style", styleClass: "styleClass", model: "model", position: "position", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy" }, outputs: { onFocus: "onFocus", onBlur: "onBlur" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }], ngImport: i0, template: `
237
237
  <div [ngClass]="containerClass" [ngStyle]="style" [class]="styleClass" [attr.data-pc-name]="'dock'">
238
238
  <div class="p-dock-list-container">
239
239
  <ul
@@ -313,7 +313,7 @@ class Dock {
313
313
  </div>
314
314
  `, isInline: true, styles: ["@layer primeng{.p-dock{position:absolute;z-index:1;display:flex;justify-content:center;align-items:center;pointer-events:none}.p-dock-list-container{display:flex;pointer-events:auto}.p-dock-list{margin:0;padding:0;list-style:none;display:flex;align-items:center;justify-content:center}.p-dock-item{transition:all .2s cubic-bezier(.4,0,.2,1);will-change:transform}.p-dock-link{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:default}.p-dock-item-second-prev,.p-dock-item-second-next{transform:scale(1.2)}.p-dock-item-prev,.p-dock-item-next{transform:scale(1.4)}.p-dock-item-current{transform:scale(1.6);z-index:1}.p-dock-top{left:0;top:0;width:100%}.p-dock-top .p-dock-item{transform-origin:center top}.p-dock-bottom{left:0;bottom:0;width:100%}.p-dock-bottom .p-dock-item{transform-origin:center bottom}.p-dock-right{right:0;top:0;height:100%}.p-dock-right .p-dock-item{transform-origin:center right}.p-dock-right .p-dock-list{flex-direction:column}.p-dock-left{left:0;top:0;height:100%}.p-dock-left .p-dock-item{transform-origin:center left}.p-dock-left .p-dock-list{flex-direction:column}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.Ripple, selector: "[pRipple]" }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
315
315
  }
316
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Dock, decorators: [{
316
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Dock, decorators: [{
317
317
  type: Component,
318
318
  args: [{ selector: 'p-dock', template: `
319
319
  <div [ngClass]="containerClass" [ngStyle]="style" [class]="styleClass" [attr.data-pc-name]="'dock'">
@@ -422,11 +422,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
422
422
  args: ['list', { static: false }]
423
423
  }] } });
424
424
  class DockModule {
425
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
426
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: DockModule, declarations: [Dock], imports: [CommonModule, RouterModule, RippleModule, TooltipModule], exports: [Dock, SharedModule, TooltipModule, RouterModule] });
427
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DockModule, imports: [CommonModule, RouterModule, RippleModule, TooltipModule, SharedModule, TooltipModule, RouterModule] });
425
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
426
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: DockModule, declarations: [Dock], imports: [CommonModule, RouterModule, RippleModule, TooltipModule], exports: [Dock, SharedModule, TooltipModule, RouterModule] });
427
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DockModule, imports: [CommonModule, RouterModule, RippleModule, TooltipModule, SharedModule, TooltipModule, RouterModule] });
428
428
  }
429
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DockModule, decorators: [{
429
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DockModule, decorators: [{
430
430
  type: NgModule,
431
431
  args: [{
432
432
  imports: [CommonModule, RouterModule, RippleModule, TooltipModule],
@@ -138,10 +138,10 @@ class Draggable {
138
138
  this.unbindDragListener();
139
139
  this.unbindMouseListeners();
140
140
  }
141
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Draggable, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
142
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.2", type: Draggable, selector: "[pDraggable]", inputs: { scope: ["pDraggable", "scope"], dragEffect: "dragEffect", dragHandle: "dragHandle", pDraggableDisabled: "pDraggableDisabled" }, outputs: { onDragStart: "onDragStart", onDragEnd: "onDragEnd", onDrag: "onDrag" }, host: { listeners: { "dragstart": "dragStart($event)", "dragend": "dragEnd($event)" }, classAttribute: "p-element" }, ngImport: i0 });
141
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Draggable, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
142
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: Draggable, selector: "[pDraggable]", inputs: { scope: ["pDraggable", "scope"], dragEffect: "dragEffect", dragHandle: "dragHandle", pDraggableDisabled: "pDraggableDisabled" }, outputs: { onDragStart: "onDragStart", onDragEnd: "onDragEnd", onDrag: "onDrag" }, host: { listeners: { "dragstart": "dragStart($event)", "dragend": "dragEnd($event)" }, classAttribute: "p-element" }, ngImport: i0 });
143
143
  }
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Draggable, decorators: [{
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Draggable, decorators: [{
145
145
  type: Directive,
146
146
  args: [{
147
147
  selector: '[pDraggable]',
@@ -271,10 +271,10 @@ class Droppable {
271
271
  ngOnDestroy() {
272
272
  this.unbindDragOverListener();
273
273
  }
274
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Droppable, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
275
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.2", type: Droppable, selector: "[pDroppable]", inputs: { scope: ["pDroppable", "scope"], pDroppableDisabled: "pDroppableDisabled", dropEffect: "dropEffect" }, outputs: { onDragEnter: "onDragEnter", onDragLeave: "onDragLeave", onDrop: "onDrop" }, host: { listeners: { "drop": "drop($event)", "dragenter": "dragEnter($event)", "dragleave": "dragLeave($event)" }, classAttribute: "p-element" }, ngImport: i0 });
274
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Droppable, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
275
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: Droppable, selector: "[pDroppable]", inputs: { scope: ["pDroppable", "scope"], pDroppableDisabled: "pDroppableDisabled", dropEffect: "dropEffect" }, outputs: { onDragEnter: "onDragEnter", onDragLeave: "onDragLeave", onDrop: "onDrop" }, host: { listeners: { "drop": "drop($event)", "dragenter": "dragEnter($event)", "dragleave": "dragLeave($event)" }, classAttribute: "p-element" }, ngImport: i0 });
276
276
  }
277
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Droppable, decorators: [{
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Droppable, decorators: [{
278
278
  type: Directive,
279
279
  args: [{
280
280
  selector: '[pDroppable]',
@@ -306,11 +306,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
306
306
  args: ['dragleave', ['$event']]
307
307
  }] } });
308
308
  class DragDropModule {
309
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DragDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
310
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: DragDropModule, declarations: [Draggable, Droppable], imports: [CommonModule], exports: [Draggable, Droppable] });
311
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DragDropModule, imports: [CommonModule] });
309
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DragDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
310
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: DragDropModule, declarations: [Draggable, Droppable], imports: [CommonModule], exports: [Draggable, Droppable] });
311
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DragDropModule, imports: [CommonModule] });
312
312
  }
313
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DragDropModule, decorators: [{
313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DragDropModule, decorators: [{
314
314
  type: NgModule,
315
315
  args: [{
316
316
  imports: [CommonModule],
@@ -47,8 +47,8 @@ class DropdownItem {
47
47
  onOptionMouseEnter(event) {
48
48
  this.onMouseEnter.emit(event);
49
49
  }
50
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DropdownItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: DropdownItem, selector: "p-dropdownItem", inputs: { id: "id", option: "option", selected: "selected", focused: "focused", label: "label", disabled: "disabled", visible: "visible", itemSize: "itemSize", ariaPosInset: "ariaPosInset", ariaSetSize: "ariaSetSize", template: "template" }, outputs: { onClick: "onClick", onMouseEnter: "onMouseEnter" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
50
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DropdownItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: DropdownItem, selector: "p-dropdownItem", inputs: { id: "id", option: "option", selected: "selected", focused: "focused", label: "label", disabled: "disabled", visible: "visible", itemSize: "itemSize", ariaPosInset: "ariaPosInset", ariaSetSize: "ariaSetSize", template: "template" }, outputs: { onClick: "onClick", onMouseEnter: "onMouseEnter" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
52
52
  <li
53
53
  [id]="id"
54
54
  (click)="onOptionClick($event)"
@@ -70,7 +70,7 @@ class DropdownItem {
70
70
  </li>
71
71
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }] });
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DropdownItem, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DropdownItem, decorators: [{
74
74
  type: Component,
75
75
  args: [{
76
76
  selector: 'p-dropdownItem',
@@ -333,7 +333,7 @@ class Dropdown {
333
333
  */
334
334
  ariaFilterLabel;
335
335
  /**
336
- * Used to define a string that autocomplete attribute the current element.
336
+ * Used to define a aria label attribute the current element.
337
337
  * @group Props
338
338
  */
339
339
  ariaLabel;
@@ -558,6 +558,7 @@ class Dropdown {
558
558
  scroller;
559
559
  overlayViewChild;
560
560
  firstHiddenFocusableElementOnOverlay;
561
+ lastHiddenFocusableElementOnOverlay;
561
562
  templates;
562
563
  _disabled;
563
564
  itemsWrapper;
@@ -658,10 +659,10 @@ class Dropdown {
658
659
  return options;
659
660
  });
660
661
  label = computed(() => {
661
- let selectedOptionIndex;
662
- this.autoDisplayFirst ? (!this.modelValue() ? (selectedOptionIndex = -1) : (selectedOptionIndex = this.findFirstOptionIndex())) : (selectedOptionIndex = this.findSelectedOptionIndex());
663
- return this.modelValue() ? this.getOptionLabel(this.modelValue()) : selectedOptionIndex !== -1 ? this.getOptionLabel(this.visibleOptions()[selectedOptionIndex]) : this.placeholder || 'p-emptylabel';
662
+ const selectedOptionIndex = this.findSelectedOptionIndex();
663
+ return selectedOptionIndex !== -1 ? this.getOptionLabel(this.visibleOptions()[selectedOptionIndex]) : this.placeholder || 'p-emptylabel';
664
664
  });
665
+ selectedOption;
665
666
  constructor(el, renderer, cd, zone, filterService, config) {
666
667
  this.el = el;
667
668
  this.renderer = renderer;
@@ -671,9 +672,13 @@ class Dropdown {
671
672
  this.config = config;
672
673
  effect(() => {
673
674
  const modelValue = this.modelValue();
675
+ const visibleOptions = this.visibleOptions();
674
676
  if (modelValue && this.editable) {
675
677
  this.updateEditableLabel();
676
678
  }
679
+ if (visibleOptions && ObjectUtils.isNotEmpty(visibleOptions)) {
680
+ this.selectedOption = visibleOptions[this.findSelectedOptionIndex()];
681
+ }
677
682
  });
678
683
  }
679
684
  ngOnInit() {
@@ -765,14 +770,15 @@ class Dropdown {
765
770
  }
766
771
  if (this.autoDisplayFirst && !this.modelValue()) {
767
772
  const ind = this.findFirstOptionIndex();
768
- this.onOptionSelect(null, this.visibleOptions()[ind], false);
773
+ this.onOptionSelect(null, this.visibleOptions()[ind], false, true);
769
774
  }
770
775
  }
771
- onOptionSelect(event, option, isHide = true) {
776
+ onOptionSelect(event, option, isHide = true, preventChange = false) {
772
777
  const value = this.getOptionValue(option);
773
778
  this.updateModel(value, event);
774
779
  this.focusedOptionIndex.set(this.findSelectedOptionIndex());
775
780
  isHide && this.hide(true);
781
+ preventChange === false && this.onChange.emit({ originalEvent: event, value: value });
776
782
  }
777
783
  onOptionMouseEnter(event, index) {
778
784
  if (this.focusOnHover) {
@@ -782,15 +788,22 @@ class Dropdown {
782
788
  updateModel(value, event) {
783
789
  this.value = value;
784
790
  this.onModelChange(value);
785
- if (this.value !== this.modelValue()) {
786
- this.onChange.emit({
787
- originalEvent: event,
788
- value: value
789
- });
790
- }
791
791
  this.modelValue.set(value);
792
792
  this.selectedOptionUpdated = true;
793
793
  }
794
+ writeValue(value) {
795
+ if (this.filter) {
796
+ this.resetFilter();
797
+ }
798
+ this.value = value;
799
+ this.allowModelChange() && this.onModelChange(value);
800
+ this.modelValue.set(this.value);
801
+ this.updateEditableLabel();
802
+ this.cd.markForCheck();
803
+ }
804
+ allowModelChange() {
805
+ return this.autoDisplayFirst && !this.placeholder && !this.modelValue() && !this.editable && this.options && this.options.length;
806
+ }
794
807
  isSelected(option) {
795
808
  return this.isValidOption(option) && ObjectUtils.equals(this.modelValue(), this.getOptionValue(option), this.equalityKey());
796
809
  }
@@ -833,15 +846,6 @@ class Dropdown {
833
846
  get ariaSetSize() {
834
847
  return this.visibleOptions().filter((option) => !this.isOptionGroup(option)).length;
835
848
  }
836
- writeValue(value) {
837
- if (this.filter) {
838
- this.resetFilter();
839
- }
840
- this.value = value;
841
- this.updateModel(this.value);
842
- this.updateEditableLabel();
843
- this.cd.markForCheck();
844
- }
845
849
  /**
846
850
  * Callback to invoke on filter reset.
847
851
  * @group Method
@@ -886,6 +890,7 @@ class Dropdown {
886
890
  !matched && this.focusedOptionIndex.set(-1);
887
891
  this.onModelChange(value);
888
892
  this.updateModel(value, event);
893
+ this.onChange.emit({ originalEvent: event, value: value });
889
894
  }
890
895
  /**
891
896
  * Displays the panel.
@@ -908,13 +913,13 @@ class Dropdown {
908
913
  if (this.virtualScroll) {
909
914
  const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
910
915
  if (selectedIndex !== -1) {
911
- this.scroller?.scrollToIndex(0);
916
+ this.scroller?.scrollToIndex(selectedIndex);
912
917
  }
913
918
  }
914
919
  else {
915
920
  let selectedListItem = DomHandler.findSingle(this.itemsWrapper, '.p-dropdown-item.p-highlight');
916
921
  if (selectedListItem) {
917
- selectedListItem.scrollIntoView({ block: 'nearest', inline: 'center' });
922
+ selectedListItem.scrollIntoView({ block: 'nearest', inline: 'nearest' });
918
923
  }
919
924
  }
920
925
  }
@@ -958,7 +963,7 @@ class Dropdown {
958
963
  }
959
964
  onInputBlur(event) {
960
965
  this.focused = false;
961
- this.onBlur.emit(event);
966
+ this.overlayVisible === false && this.onBlur.emit(event);
962
967
  if (!this.preventModelTouched) {
963
968
  this.onModelTouched();
964
969
  }
@@ -1221,7 +1226,7 @@ class Dropdown {
1221
1226
  onTabKey(event, pressedInInputText = false) {
1222
1227
  if (!pressedInInputText) {
1223
1228
  if (this.overlayVisible && this.hasFocusableElements()) {
1224
- DomHandler.focus(this.firstHiddenFocusableElementOnOverlay.nativeElement);
1229
+ DomHandler.focus(event.shiftKey ? this.lastHiddenFocusableElementOnOverlay.nativeElement : this.firstHiddenFocusableElementOnOverlay.nativeElement);
1225
1230
  event.preventDefault();
1226
1231
  }
1227
1232
  else {
@@ -1234,11 +1239,17 @@ class Dropdown {
1234
1239
  }
1235
1240
  }
1236
1241
  onFirstHiddenFocus(event) {
1237
- const focusableEl = event.relatedTarget === this.focusInputViewChild.nativeElement ? DomHandler.getFirstFocusableElement(this.overlayViewChild.el.nativeElement, ':not(.p-hidden-focusable)') : this.focusInputViewChild.nativeElement;
1242
+ const focusableEl = event.relatedTarget === this.focusInputViewChild?.nativeElement ? DomHandler.getFirstFocusableElement(this.overlayViewChild.el.nativeElement, ':not(.p-hidden-focusable)') : this.focusInputViewChild.nativeElement;
1243
+ DomHandler.focus(focusableEl);
1244
+ }
1245
+ onLastHiddenFocus(event) {
1246
+ const focusableEl = event.relatedTarget === this.focusInputViewChild?.nativeElement
1247
+ ? DomHandler.getLastFocusableElement(this.overlayViewChild?.overlayViewChild?.nativeElement, ':not([data-p-hidden-focusable="true"])')
1248
+ : this.focusInputViewChild?.nativeElement;
1238
1249
  DomHandler.focus(focusableEl);
1239
1250
  }
1240
1251
  hasFocusableElements() {
1241
- return DomHandler.getFocusableElements(this.overlayViewChild.overlayViewChild.nativeElement, ':not(.p-hidden-focusable)').length > 0;
1252
+ return DomHandler.getFocusableElements(this.overlayViewChild.overlayViewChild.nativeElement, ':not([data-p-hidden-focusable="true"])').length > 0;
1242
1253
  }
1243
1254
  onBackspaceKey(event, pressedInInputText = false) {
1244
1255
  if (pressedInInputText) {
@@ -1311,10 +1322,11 @@ class Dropdown {
1311
1322
  clear(event) {
1312
1323
  this.updateModel(null, event);
1313
1324
  this.updateEditableLabel();
1325
+ this.onChange.emit({ originalEvent: event, value: this.value });
1314
1326
  this.onClear.emit(event);
1315
1327
  }
1316
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Dropdown, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.FilterService }, { token: i3.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Component });
1317
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Dropdown, selector: "p-dropdown", inputs: { id: "id", scrollHeight: "scrollHeight", filter: "filter", name: "name", style: "style", panelStyle: "panelStyle", styleClass: "styleClass", panelStyleClass: "panelStyleClass", readonly: "readonly", required: "required", editable: "editable", appendTo: "appendTo", tabindex: "tabindex", placeholder: "placeholder", filterPlaceholder: "filterPlaceholder", filterLocale: "filterLocale", inputId: "inputId", dataKey: "dataKey", filterBy: "filterBy", filterFields: "filterFields", autofocus: "autofocus", resetFilterOnHide: "resetFilterOnHide", dropdownIcon: "dropdownIcon", optionLabel: "optionLabel", optionValue: "optionValue", optionDisabled: "optionDisabled", optionGroupLabel: "optionGroupLabel", optionGroupChildren: "optionGroupChildren", autoDisplayFirst: "autoDisplayFirst", group: "group", showClear: "showClear", emptyFilterMessage: "emptyFilterMessage", emptyMessage: "emptyMessage", lazy: "lazy", virtualScroll: "virtualScroll", virtualScrollItemSize: "virtualScrollItemSize", virtualScrollOptions: "virtualScrollOptions", overlayOptions: "overlayOptions", ariaFilterLabel: "ariaFilterLabel", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", filterMatchMode: "filterMatchMode", maxlength: "maxlength", tooltip: "tooltip", tooltipPosition: "tooltipPosition", tooltipPositionStyle: "tooltipPositionStyle", tooltipStyleClass: "tooltipStyleClass", focusOnHover: "focusOnHover", selectOnFocus: "selectOnFocus", autoOptionFocus: "autoOptionFocus", autofocusFilter: "autofocusFilter", disabled: "disabled", itemSize: "itemSize", autoZIndex: "autoZIndex", baseZIndex: "baseZIndex", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", filterValue: "filterValue", options: "options" }, outputs: { onChange: "onChange", onFilter: "onFilter", onFocus: "onFocus", onBlur: "onBlur", onClick: "onClick", onShow: "onShow", onHide: "onHide", onClear: "onClear", onLazyLoad: "onLazyLoad" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focused || overlayVisible" }, classAttribute: "p-element p-inputwrapper" }, providers: [DROPDOWN_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "focusInputViewChild", first: true, predicate: ["focusInput"], descendants: true }, { propertyName: "editableInputViewChild", first: true, predicate: ["editableInput"], descendants: true }, { propertyName: "itemsViewChild", first: true, predicate: ["items"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "overlayViewChild", first: true, predicate: ["overlay"], descendants: true }, { propertyName: "firstHiddenFocusableElementOnOverlay", first: true, predicate: ["firstHiddenFocusableElementOnOverlay"], descendants: true }], ngImport: i0, template: `
1328
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Dropdown, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.FilterService }, { token: i3.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Component });
1329
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: Dropdown, selector: "p-dropdown", inputs: { id: "id", scrollHeight: "scrollHeight", filter: "filter", name: "name", style: "style", panelStyle: "panelStyle", styleClass: "styleClass", panelStyleClass: "panelStyleClass", readonly: "readonly", required: "required", editable: "editable", appendTo: "appendTo", tabindex: "tabindex", placeholder: "placeholder", filterPlaceholder: "filterPlaceholder", filterLocale: "filterLocale", inputId: "inputId", dataKey: "dataKey", filterBy: "filterBy", filterFields: "filterFields", autofocus: "autofocus", resetFilterOnHide: "resetFilterOnHide", dropdownIcon: "dropdownIcon", optionLabel: "optionLabel", optionValue: "optionValue", optionDisabled: "optionDisabled", optionGroupLabel: "optionGroupLabel", optionGroupChildren: "optionGroupChildren", autoDisplayFirst: "autoDisplayFirst", group: "group", showClear: "showClear", emptyFilterMessage: "emptyFilterMessage", emptyMessage: "emptyMessage", lazy: "lazy", virtualScroll: "virtualScroll", virtualScrollItemSize: "virtualScrollItemSize", virtualScrollOptions: "virtualScrollOptions", overlayOptions: "overlayOptions", ariaFilterLabel: "ariaFilterLabel", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", filterMatchMode: "filterMatchMode", maxlength: "maxlength", tooltip: "tooltip", tooltipPosition: "tooltipPosition", tooltipPositionStyle: "tooltipPositionStyle", tooltipStyleClass: "tooltipStyleClass", focusOnHover: "focusOnHover", selectOnFocus: "selectOnFocus", autoOptionFocus: "autoOptionFocus", autofocusFilter: "autofocusFilter", disabled: "disabled", itemSize: "itemSize", autoZIndex: "autoZIndex", baseZIndex: "baseZIndex", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", filterValue: "filterValue", options: "options" }, outputs: { onChange: "onChange", onFilter: "onFilter", onFocus: "onFocus", onBlur: "onBlur", onClick: "onClick", onShow: "onShow", onHide: "onHide", onClear: "onClear", onLazyLoad: "onLazyLoad" }, host: { properties: { "class.p-inputwrapper-filled": "filled", "class.p-inputwrapper-focus": "focused || overlayVisible" }, classAttribute: "p-element p-inputwrapper" }, providers: [DROPDOWN_VALUE_ACCESSOR], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "focusInputViewChild", first: true, predicate: ["focusInput"], descendants: true }, { propertyName: "editableInputViewChild", first: true, predicate: ["editableInput"], descendants: true }, { propertyName: "itemsViewChild", first: true, predicate: ["items"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "overlayViewChild", first: true, predicate: ["overlay"], descendants: true }, { propertyName: "firstHiddenFocusableElementOnOverlay", first: true, predicate: ["firstHiddenFocusableEl"], descendants: true }, { propertyName: "lastHiddenFocusableElementOnOverlay", first: true, predicate: ["lastHiddenFocusableEl"], descendants: true }], ngImport: i0, template: `
1318
1330
  <div #container [attr.id]="id" [ngClass]="containerClass" (click)="onContainerClick($event)" [ngStyle]="style" [class]="styleClass">
1319
1331
  <span
1320
1332
  #focusInput
@@ -1327,7 +1339,7 @@ class Dropdown {
1327
1339
  [attr.aria-disabled]="disabled"
1328
1340
  [attr.id]="inputId"
1329
1341
  role="combobox"
1330
- [attr.aria-label]="ariaLabel"
1342
+ [attr.aria-label]="ariaLabel || (label() === 'p-emptylabel' ? undefined : label())"
1331
1343
  [attr.aria-labelledby]="ariaLabelledBy"
1332
1344
  [attr.aria-haspopup]="'listbox'"
1333
1345
  [attr.aria-expanded]="overlayVisible"
@@ -1340,8 +1352,8 @@ class Dropdown {
1340
1352
  (blur)="onInputBlur($event)"
1341
1353
  (keydown)="onKeyDown($event)"
1342
1354
  >
1343
- <ng-container *ngIf="!selectedItemTemplate; else defaultPlaceholder">{{ label() === 'p-emptylabel' ? '&nbsp;' : label() || 'empty' }}</ng-container>
1344
- <ng-container *ngTemplateOutlet="selectedItemTemplate; context: { $implicit: modelValue() }"></ng-container>
1355
+ <ng-container *ngIf="!selectedItemTemplate; else defaultPlaceholder">{{ label() === 'p-emptylabel' ? '&nbsp;' : label() }}</ng-container>
1356
+ <ng-container *ngTemplateOutlet="selectedItemTemplate; context: { $implicit: selectedOption }"></ng-container>
1345
1357
  <ng-template #defaultPlaceholder>
1346
1358
  <span *ngIf="label() === placeholder || (label() && !placeholder)">{{ label() === 'p-emptylabel' ? '&nbsp;' : placeholder }}</span>
1347
1359
  </ng-template>
@@ -1394,14 +1406,16 @@ class Dropdown {
1394
1406
  <ng-template pTemplate="content">
1395
1407
  <div [ngClass]="'p-dropdown-panel p-component'" [ngStyle]="panelStyle" [class]="panelStyleClass">
1396
1408
  <span
1397
- #firstHiddenFocusableElementOnOverlay
1409
+ #firstHiddenFocusableEl
1398
1410
  role="presentation"
1399
1411
  [attr.aria-hidden]="true"
1400
1412
  class="p-hidden-accessible p-hidden-focusable"
1401
1413
  [attr.tabindex]="0"
1402
1414
  (focus)="onFirstHiddenFocus($event)"
1415
+ [attr.data-p-hidden-accessible]="true"
1403
1416
  [attr.data-p-hidden-focusable]="true"
1404
- ></span>
1417
+ >
1418
+ </span>
1405
1419
  <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
1406
1420
  <div class="p-dropdown-header" *ngIf="filter" (click)="$event.stopPropagation()">
1407
1421
  <ng-container *ngIf="filterTemplate; else builtInFilterElement">
@@ -1497,13 +1511,23 @@ class Dropdown {
1497
1511
  </ng-template>
1498
1512
  </div>
1499
1513
  <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
1514
+ <span
1515
+ #lastHiddenFocusableEl
1516
+ role="presentation"
1517
+ [attr.aria-hidden]="true"
1518
+ class="p-hidden-accessible p-hidden-focusable"
1519
+ [attr.tabindex]="0"
1520
+ (focus)="onLastHiddenFocus($event)"
1521
+ [attr.data-p-hidden-accessible]="true"
1522
+ [attr.data-p-hidden-focusable]="true"
1523
+ ></span>
1500
1524
  </div>
1501
1525
  </ng-template>
1502
1526
  </p-overlay>
1503
1527
  </div>
1504
- `, isInline: true, styles: ["@layer primeng{.p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;opacity:0}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-item-group{cursor:auto}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i1.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(function () { return i4.Overlay; }), selector: "p-overlay", inputs: ["visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "listener", "responsive", "options"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.PrimeTemplate; }), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.Tooltip; }), selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i0.forwardRef(function () { return i6.Scroller; }), selector: "p-scroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "directive", type: i0.forwardRef(function () { return i7.AutoFocus; }), selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i0.forwardRef(function () { return TimesIcon; }), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(function () { return ChevronDownIcon; }), selector: "ChevronDownIcon" }, { kind: "component", type: i0.forwardRef(function () { return SearchIcon; }), selector: "SearchIcon" }, { kind: "component", type: i0.forwardRef(function () { return DropdownItem; }), selector: "p-dropdownItem", inputs: ["id", "option", "selected", "focused", "label", "disabled", "visible", "itemSize", "ariaPosInset", "ariaSetSize", "template"], outputs: ["onClick", "onMouseEnter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1528
+ `, isInline: true, styles: ["@layer primeng{.p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;opacity:0}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-item-group{cursor:auto}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i1.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(function () { return i4.Overlay; }), selector: "p-overlay", inputs: ["visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "listener", "responsive", "options"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.PrimeTemplate; }), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.Tooltip; }), selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i0.forwardRef(function () { return i6.Scroller; }), selector: "p-scroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "directive", type: i0.forwardRef(function () { return i7.AutoFocus; }), selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i0.forwardRef(function () { return TimesIcon; }), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(function () { return ChevronDownIcon; }), selector: "ChevronDownIcon" }, { kind: "component", type: i0.forwardRef(function () { return SearchIcon; }), selector: "SearchIcon" }, { kind: "component", type: i0.forwardRef(function () { return DropdownItem; }), selector: "p-dropdownItem", inputs: ["id", "option", "selected", "focused", "label", "disabled", "visible", "itemSize", "ariaPosInset", "ariaSetSize", "template"], outputs: ["onClick", "onMouseEnter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1505
1529
  }
1506
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Dropdown, decorators: [{
1530
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: Dropdown, decorators: [{
1507
1531
  type: Component,
1508
1532
  args: [{ selector: 'p-dropdown', template: `
1509
1533
  <div #container [attr.id]="id" [ngClass]="containerClass" (click)="onContainerClick($event)" [ngStyle]="style" [class]="styleClass">
@@ -1518,7 +1542,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1518
1542
  [attr.aria-disabled]="disabled"
1519
1543
  [attr.id]="inputId"
1520
1544
  role="combobox"
1521
- [attr.aria-label]="ariaLabel"
1545
+ [attr.aria-label]="ariaLabel || (label() === 'p-emptylabel' ? undefined : label())"
1522
1546
  [attr.aria-labelledby]="ariaLabelledBy"
1523
1547
  [attr.aria-haspopup]="'listbox'"
1524
1548
  [attr.aria-expanded]="overlayVisible"
@@ -1531,8 +1555,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1531
1555
  (blur)="onInputBlur($event)"
1532
1556
  (keydown)="onKeyDown($event)"
1533
1557
  >
1534
- <ng-container *ngIf="!selectedItemTemplate; else defaultPlaceholder">{{ label() === 'p-emptylabel' ? '&nbsp;' : label() || 'empty' }}</ng-container>
1535
- <ng-container *ngTemplateOutlet="selectedItemTemplate; context: { $implicit: modelValue() }"></ng-container>
1558
+ <ng-container *ngIf="!selectedItemTemplate; else defaultPlaceholder">{{ label() === 'p-emptylabel' ? '&nbsp;' : label() }}</ng-container>
1559
+ <ng-container *ngTemplateOutlet="selectedItemTemplate; context: { $implicit: selectedOption }"></ng-container>
1536
1560
  <ng-template #defaultPlaceholder>
1537
1561
  <span *ngIf="label() === placeholder || (label() && !placeholder)">{{ label() === 'p-emptylabel' ? '&nbsp;' : placeholder }}</span>
1538
1562
  </ng-template>
@@ -1585,14 +1609,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1585
1609
  <ng-template pTemplate="content">
1586
1610
  <div [ngClass]="'p-dropdown-panel p-component'" [ngStyle]="panelStyle" [class]="panelStyleClass">
1587
1611
  <span
1588
- #firstHiddenFocusableElementOnOverlay
1612
+ #firstHiddenFocusableEl
1589
1613
  role="presentation"
1590
1614
  [attr.aria-hidden]="true"
1591
1615
  class="p-hidden-accessible p-hidden-focusable"
1592
1616
  [attr.tabindex]="0"
1593
1617
  (focus)="onFirstHiddenFocus($event)"
1618
+ [attr.data-p-hidden-accessible]="true"
1594
1619
  [attr.data-p-hidden-focusable]="true"
1595
- ></span>
1620
+ >
1621
+ </span>
1596
1622
  <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
1597
1623
  <div class="p-dropdown-header" *ngIf="filter" (click)="$event.stopPropagation()">
1598
1624
  <ng-container *ngIf="filterTemplate; else builtInFilterElement">
@@ -1688,6 +1714,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1688
1714
  </ng-template>
1689
1715
  </div>
1690
1716
  <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
1717
+ <span
1718
+ #lastHiddenFocusableEl
1719
+ role="presentation"
1720
+ [attr.aria-hidden]="true"
1721
+ class="p-hidden-accessible p-hidden-focusable"
1722
+ [attr.tabindex]="0"
1723
+ (focus)="onLastHiddenFocus($event)"
1724
+ [attr.data-p-hidden-accessible]="true"
1725
+ [attr.data-p-hidden-focusable]="true"
1726
+ ></span>
1691
1727
  </div>
1692
1728
  </ng-template>
1693
1729
  </p-overlay>
@@ -1696,7 +1732,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1696
1732
  class: 'p-element p-inputwrapper',
1697
1733
  '[class.p-inputwrapper-filled]': 'filled',
1698
1734
  '[class.p-inputwrapper-focus]': 'focused || overlayVisible'
1699
- }, providers: [DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: ["@layer primeng{.p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;opacity:0}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-panel{position:absolute;top:0;left:0}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-item-group{cursor:auto}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}}\n"] }]
1735
+ }, providers: [DROPDOWN_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: ["@layer primeng{.p-dropdown{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-dropdown-clear-icon{position:absolute;top:50%;margin-top:-.5rem}.p-dropdown-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-dropdown-label{display:block;white-space:nowrap;overflow:hidden;flex:1 1 auto;width:1%;text-overflow:ellipsis;cursor:pointer}.p-dropdown-label-empty{overflow:hidden;opacity:0}input.p-dropdown-label{cursor:default}.p-dropdown .p-dropdown-panel{min-width:100%}.p-dropdown-items-wrapper{overflow:auto}.p-dropdown-item{cursor:pointer;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-dropdown-item-group{cursor:auto}.p-dropdown-items{margin:0;padding:0;list-style-type:none}.p-dropdown-filter{width:100%}.p-dropdown-filter-container{position:relative}.p-dropdown-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-dropdown{display:flex}.p-fluid .p-dropdown .p-dropdown-label{width:1%}}\n"] }]
1700
1736
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i3.FilterService }, { type: i3.PrimeNGConfig }]; }, propDecorators: { id: [{
1701
1737
  type: Input
1702
1738
  }], scrollHeight: [{
@@ -1856,17 +1892,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
1856
1892
  args: ['overlay']
1857
1893
  }], firstHiddenFocusableElementOnOverlay: [{
1858
1894
  type: ViewChild,
1859
- args: ['firstHiddenFocusableElementOnOverlay']
1895
+ args: ['firstHiddenFocusableEl']
1896
+ }], lastHiddenFocusableElementOnOverlay: [{
1897
+ type: ViewChild,
1898
+ args: ['lastHiddenFocusableEl']
1860
1899
  }], templates: [{
1861
1900
  type: ContentChildren,
1862
1901
  args: [PrimeTemplate]
1863
1902
  }] } });
1864
1903
  class DropdownModule {
1865
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1866
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: DropdownModule, declarations: [Dropdown, DropdownItem], imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, TimesIcon, ChevronDownIcon, SearchIcon], exports: [Dropdown, OverlayModule, SharedModule, ScrollerModule] });
1867
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DropdownModule, imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, TimesIcon, ChevronDownIcon, SearchIcon, OverlayModule, SharedModule, ScrollerModule] });
1904
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1905
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: DropdownModule, declarations: [Dropdown, DropdownItem], imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, TimesIcon, ChevronDownIcon, SearchIcon], exports: [Dropdown, OverlayModule, SharedModule, ScrollerModule] });
1906
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DropdownModule, imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, TimesIcon, ChevronDownIcon, SearchIcon, OverlayModule, SharedModule, ScrollerModule] });
1868
1907
  }
1869
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: DropdownModule, decorators: [{
1908
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: DropdownModule, decorators: [{
1870
1909
  type: NgModule,
1871
1910
  args: [{
1872
1911
  imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, TimesIcon, ChevronDownIcon, SearchIcon],