primeng 20.1.2 → 20.3.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (720) hide show
  1. package/accordion/index.d.ts +33 -14
  2. package/animateonscroll/index.d.ts +7 -8
  3. package/api/index.d.ts +132 -5
  4. package/autocomplete/index.d.ts +59 -203
  5. package/autofocus/index.d.ts +2 -2
  6. package/avatar/index.d.ts +12 -5
  7. package/avatargroup/index.d.ts +11 -6
  8. package/badge/index.d.ts +23 -15
  9. package/base/index.d.ts +7 -12
  10. package/basecomponent/index.d.ts +148 -30
  11. package/baseeditableholder/index.d.ts +7 -7
  12. package/baseinput/index.d.ts +15 -15
  13. package/basemodelholder/index.d.ts +3 -3
  14. package/bind/index.d.ts +38 -0
  15. package/blockui/index.d.ts +17 -21
  16. package/breadcrumb/index.d.ts +16 -47
  17. package/button/index.d.ts +123 -163
  18. package/buttongroup/index.d.ts +1 -1
  19. package/card/index.d.ts +19 -37
  20. package/carousel/index.d.ts +24 -80
  21. package/cascadeselect/index.d.ts +32 -140
  22. package/chart/index.d.ts +13 -7
  23. package/checkbox/index.d.ts +19 -38
  24. package/chip/index.d.ts +28 -39
  25. package/classnames/index.d.ts +32 -0
  26. package/colorpicker/index.d.ts +15 -27
  27. package/config/index.d.ts +205 -26
  28. package/confirmdialog/index.d.ts +25 -52
  29. package/confirmpopup/index.d.ts +15 -36
  30. package/contextmenu/index.d.ts +23 -12
  31. package/dataview/index.d.ts +18 -185
  32. package/datepicker/index.d.ts +24 -216
  33. package/dialog/index.d.ts +20 -43
  34. package/divider/index.d.ts +12 -6
  35. package/dock/index.d.ts +19 -31
  36. package/dom/index.d.ts +4 -4
  37. package/drawer/index.d.ts +16 -37
  38. package/dynamicdialog/index.d.ts +75 -83
  39. package/editor/index.d.ts +16 -132
  40. package/fesm2022/primeng-accordion.mjs +107 -59
  41. package/fesm2022/primeng-accordion.mjs.map +1 -1
  42. package/fesm2022/primeng-animateonscroll.mjs +11 -14
  43. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  44. package/fesm2022/primeng-api.mjs +31 -31
  45. package/fesm2022/primeng-autocomplete.mjs +256 -96
  46. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  47. package/fesm2022/primeng-autofocus.mjs +9 -9
  48. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  49. package/fesm2022/primeng-avatar.mjs +33 -24
  50. package/fesm2022/primeng-avatar.mjs.map +1 -1
  51. package/fesm2022/primeng-avatargroup.mjs +24 -22
  52. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  53. package/fesm2022/primeng-badge.mjs +67 -49
  54. package/fesm2022/primeng-badge.mjs.map +1 -1
  55. package/fesm2022/primeng-base.mjs +10 -13
  56. package/fesm2022/primeng-base.mjs.map +1 -1
  57. package/fesm2022/primeng-basecomponent.mjs +345 -94
  58. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  59. package/fesm2022/primeng-baseeditableholder.mjs +3 -3
  60. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  61. package/fesm2022/primeng-baseinput.mjs +3 -3
  62. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  63. package/fesm2022/primeng-basemodelholder.mjs +3 -3
  64. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  65. package/fesm2022/primeng-bind.mjs +94 -0
  66. package/fesm2022/primeng-bind.mjs.map +1 -0
  67. package/fesm2022/primeng-blockui.mjs +30 -24
  68. package/fesm2022/primeng-blockui.mjs.map +1 -1
  69. package/fesm2022/primeng-breadcrumb.mjs +97 -72
  70. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  71. package/fesm2022/primeng-button.mjs +248 -207
  72. package/fesm2022/primeng-button.mjs.map +1 -1
  73. package/fesm2022/primeng-buttongroup.mjs +14 -14
  74. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  75. package/fesm2022/primeng-card.mjs +58 -38
  76. package/fesm2022/primeng-card.mjs.map +1 -1
  77. package/fesm2022/primeng-carousel.mjs +154 -57
  78. package/fesm2022/primeng-carousel.mjs.map +1 -1
  79. package/fesm2022/primeng-cascadeselect.mjs +237 -203
  80. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  81. package/fesm2022/primeng-chart.mjs +43 -20
  82. package/fesm2022/primeng-chart.mjs.map +1 -1
  83. package/fesm2022/primeng-checkbox.mjs +50 -35
  84. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  85. package/fesm2022/primeng-chip.mjs +79 -41
  86. package/fesm2022/primeng-chip.mjs.map +1 -1
  87. package/fesm2022/primeng-classnames.mjs +48 -0
  88. package/fesm2022/primeng-classnames.mjs.map +1 -0
  89. package/fesm2022/primeng-colorpicker.mjs +49 -41
  90. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  91. package/fesm2022/primeng-config.mjs +25 -9
  92. package/fesm2022/primeng-config.mjs.map +1 -1
  93. package/fesm2022/primeng-confirmdialog.mjs +63 -33
  94. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  95. package/fesm2022/primeng-confirmpopup.mjs +59 -41
  96. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  97. package/fesm2022/primeng-contextmenu.mjs +140 -90
  98. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  99. package/fesm2022/primeng-dataview.mjs +52 -43
  100. package/fesm2022/primeng-dataview.mjs.map +1 -1
  101. package/fesm2022/primeng-datepicker.mjs +305 -199
  102. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  103. package/fesm2022/primeng-dialog.mjs +96 -44
  104. package/fesm2022/primeng-dialog.mjs.map +1 -1
  105. package/fesm2022/primeng-divider.mjs +29 -21
  106. package/fesm2022/primeng-divider.mjs.map +1 -1
  107. package/fesm2022/primeng-dock.mjs +73 -51
  108. package/fesm2022/primeng-dock.mjs.map +1 -1
  109. package/fesm2022/primeng-dom.mjs +13 -10
  110. package/fesm2022/primeng-dom.mjs.map +1 -1
  111. package/fesm2022/primeng-dragdrop.mjs +10 -10
  112. package/fesm2022/primeng-drawer.mjs +71 -51
  113. package/fesm2022/primeng-drawer.mjs.map +1 -1
  114. package/fesm2022/primeng-dynamicdialog.mjs +377 -571
  115. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  116. package/fesm2022/primeng-editor.mjs +102 -90
  117. package/fesm2022/primeng-editor.mjs.map +1 -1
  118. package/fesm2022/primeng-fieldset.mjs +66 -48
  119. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  120. package/fesm2022/primeng-fileupload.mjs +127 -122
  121. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  122. package/fesm2022/primeng-floatlabel.mjs +28 -19
  123. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  124. package/fesm2022/primeng-fluid.mjs +24 -16
  125. package/fesm2022/primeng-fluid.mjs.map +1 -1
  126. package/fesm2022/primeng-focustrap.mjs +9 -11
  127. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  128. package/fesm2022/primeng-galleria.mjs +368 -232
  129. package/fesm2022/primeng-galleria.mjs.map +1 -1
  130. package/fesm2022/primeng-iconfield.mjs +30 -18
  131. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  132. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  133. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  134. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  135. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  136. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  137. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  138. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  139. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  140. package/fesm2022/primeng-icons-arrowdown.mjs +4 -5
  141. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  142. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  143. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  144. package/fesm2022/primeng-icons-arrowleft.mjs +4 -5
  145. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  146. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  147. package/fesm2022/primeng-icons-arrowup.mjs +4 -5
  148. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  149. package/fesm2022/primeng-icons-ban.mjs +4 -5
  150. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-bars.mjs +3 -3
  152. package/fesm2022/primeng-icons-baseicon.mjs +7 -6
  153. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  154. package/fesm2022/primeng-icons-blank.mjs +3 -3
  155. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  156. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  157. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  158. package/fesm2022/primeng-icons-check.mjs +3 -3
  159. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  160. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  161. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  162. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  163. package/fesm2022/primeng-icons-exclamationtriangle.mjs +4 -5
  164. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-eye.mjs +3 -3
  166. package/fesm2022/primeng-icons-eyeslash.mjs +4 -5
  167. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  168. package/fesm2022/primeng-icons-filter.mjs +4 -5
  169. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  170. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  171. package/fesm2022/primeng-icons-filterslash.mjs +4 -5
  172. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  173. package/fesm2022/primeng-icons-home.mjs +4 -5
  174. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  175. package/fesm2022/primeng-icons-infocircle.mjs +4 -5
  176. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-minus.mjs +3 -3
  178. package/fesm2022/primeng-icons-pencil.mjs +4 -5
  179. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  180. package/fesm2022/primeng-icons-plus.mjs +4 -5
  181. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  182. package/fesm2022/primeng-icons-refresh.mjs +4 -5
  183. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  184. package/fesm2022/primeng-icons-search.mjs +4 -5
  185. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  186. package/fesm2022/primeng-icons-searchminus.mjs +4 -5
  187. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  188. package/fesm2022/primeng-icons-searchplus.mjs +4 -5
  189. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  190. package/fesm2022/primeng-icons-sortalt.mjs +4 -5
  191. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  192. package/fesm2022/primeng-icons-sortamountdown.mjs +4 -5
  193. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  194. package/fesm2022/primeng-icons-sortamountupalt.mjs +4 -5
  195. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  196. package/fesm2022/primeng-icons-spinner.mjs +4 -5
  197. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  198. package/fesm2022/primeng-icons-star.mjs +4 -5
  199. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  200. package/fesm2022/primeng-icons-starfill.mjs +4 -5
  201. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  202. package/fesm2022/primeng-icons-thlarge.mjs +4 -5
  203. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  204. package/fesm2022/primeng-icons-times.mjs +3 -3
  205. package/fesm2022/primeng-icons-timescircle.mjs +4 -5
  206. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  207. package/fesm2022/primeng-icons-trash.mjs +4 -5
  208. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  209. package/fesm2022/primeng-icons-undo.mjs +4 -5
  210. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  211. package/fesm2022/primeng-icons-upload.mjs +4 -5
  212. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  213. package/fesm2022/primeng-icons-windowmaximize.mjs +4 -5
  214. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  215. package/fesm2022/primeng-icons-windowminimize.mjs +4 -5
  216. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  217. package/fesm2022/primeng-iftalabel.mjs +27 -17
  218. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  219. package/fesm2022/primeng-image.mjs +100 -47
  220. package/fesm2022/primeng-image.mjs.map +1 -1
  221. package/fesm2022/primeng-imagecompare.mjs +31 -24
  222. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  223. package/fesm2022/primeng-inplace.mjs +46 -36
  224. package/fesm2022/primeng-inplace.mjs.map +1 -1
  225. package/fesm2022/primeng-inputgroup.mjs +28 -21
  226. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  227. package/fesm2022/primeng-inputgroupaddon.mjs +25 -19
  228. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  229. package/fesm2022/primeng-inputicon.mjs +27 -15
  230. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  231. package/fesm2022/primeng-inputmask.mjs +50 -32
  232. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  233. package/fesm2022/primeng-inputnumber.mjs +109 -81
  234. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  235. package/fesm2022/primeng-inputotp.mjs +32 -20
  236. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  237. package/fesm2022/primeng-inputtext.mjs +39 -20
  238. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  239. package/fesm2022/primeng-keyfilter.mjs +19 -10
  240. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  241. package/fesm2022/primeng-knob.mjs +35 -27
  242. package/fesm2022/primeng-knob.mjs.map +1 -1
  243. package/fesm2022/primeng-listbox.mjs +254 -88
  244. package/fesm2022/primeng-listbox.mjs.map +1 -1
  245. package/fesm2022/primeng-megamenu.mjs +371 -351
  246. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  247. package/fesm2022/primeng-menu.mjs +126 -79
  248. package/fesm2022/primeng-menu.mjs.map +1 -1
  249. package/fesm2022/primeng-menubar.mjs +133 -96
  250. package/fesm2022/primeng-menubar.mjs.map +1 -1
  251. package/fesm2022/primeng-message.mjs +66 -55
  252. package/fesm2022/primeng-message.mjs.map +1 -1
  253. package/fesm2022/primeng-metergroup.mjs +67 -48
  254. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  255. package/fesm2022/primeng-multiselect.mjs +238 -179
  256. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  257. package/fesm2022/primeng-orderlist.mjs +218 -81
  258. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  259. package/fesm2022/primeng-organizationchart.mjs +93 -67
  260. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  261. package/fesm2022/primeng-overlay.mjs +72 -81
  262. package/fesm2022/primeng-overlay.mjs.map +1 -1
  263. package/fesm2022/primeng-overlaybadge.mjs +31 -22
  264. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  265. package/fesm2022/primeng-paginator.mjs +66 -54
  266. package/fesm2022/primeng-paginator.mjs.map +1 -1
  267. package/fesm2022/primeng-panel.mjs +109 -80
  268. package/fesm2022/primeng-panel.mjs.map +1 -1
  269. package/fesm2022/primeng-panelmenu.mjs +394 -316
  270. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  271. package/fesm2022/primeng-passthrough.mjs +21 -0
  272. package/fesm2022/primeng-passthrough.mjs.map +1 -0
  273. package/fesm2022/primeng-password.mjs +89 -72
  274. package/fesm2022/primeng-password.mjs.map +1 -1
  275. package/fesm2022/primeng-picklist.mjs +271 -132
  276. package/fesm2022/primeng-picklist.mjs.map +1 -1
  277. package/fesm2022/primeng-popover.mjs +45 -34
  278. package/fesm2022/primeng-popover.mjs.map +1 -1
  279. package/fesm2022/primeng-progressbar.mjs +37 -29
  280. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  281. package/fesm2022/primeng-progressspinner.mjs +30 -23
  282. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  283. package/fesm2022/primeng-radiobutton.mjs +43 -34
  284. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  285. package/fesm2022/primeng-rating.mjs +49 -39
  286. package/fesm2022/primeng-rating.mjs.map +1 -1
  287. package/fesm2022/primeng-ripple.mjs +17 -19
  288. package/fesm2022/primeng-ripple.mjs.map +1 -1
  289. package/fesm2022/primeng-scroller.mjs +50 -42
  290. package/fesm2022/primeng-scroller.mjs.map +1 -1
  291. package/fesm2022/primeng-scrollpanel.mjs +55 -48
  292. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  293. package/fesm2022/primeng-scrolltop.mjs +31 -21
  294. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  295. package/fesm2022/primeng-select.mjs +204 -107
  296. package/fesm2022/primeng-select.mjs.map +1 -1
  297. package/fesm2022/primeng-selectbutton.mjs +38 -27
  298. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  299. package/fesm2022/primeng-skeleton.mjs +24 -17
  300. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  301. package/fesm2022/primeng-slider.mjs +47 -27
  302. package/fesm2022/primeng-slider.mjs.map +1 -1
  303. package/fesm2022/primeng-speeddial.mjs +88 -56
  304. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  305. package/fesm2022/primeng-splitbutton.mjs +43 -26
  306. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  307. package/fesm2022/primeng-splitter.mjs +49 -45
  308. package/fesm2022/primeng-splitter.mjs.map +1 -1
  309. package/fesm2022/primeng-stepper.mjs +163 -88
  310. package/fesm2022/primeng-stepper.mjs.map +1 -1
  311. package/fesm2022/primeng-steps.mjs +19 -21
  312. package/fesm2022/primeng-steps.mjs.map +1 -1
  313. package/fesm2022/primeng-styleclass.mjs +8 -8
  314. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  315. package/fesm2022/primeng-table.mjs +766 -675
  316. package/fesm2022/primeng-table.mjs.map +1 -1
  317. package/fesm2022/primeng-tabs.mjs +242 -131
  318. package/fesm2022/primeng-tabs.mjs.map +1 -1
  319. package/fesm2022/primeng-tag.mjs +35 -25
  320. package/fesm2022/primeng-tag.mjs.map +1 -1
  321. package/fesm2022/primeng-terminal.mjs +51 -45
  322. package/fesm2022/primeng-terminal.mjs.map +1 -1
  323. package/fesm2022/primeng-textarea.mjs +29 -24
  324. package/fesm2022/primeng-textarea.mjs.map +1 -1
  325. package/fesm2022/primeng-tieredmenu.mjs +147 -83
  326. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  327. package/fesm2022/primeng-timeline.mjs +42 -34
  328. package/fesm2022/primeng-timeline.mjs.map +1 -1
  329. package/fesm2022/primeng-toast.mjs +67 -61
  330. package/fesm2022/primeng-toast.mjs.map +1 -1
  331. package/fesm2022/primeng-togglebutton.mjs +46 -29
  332. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  333. package/fesm2022/primeng-toggleswitch.mjs +39 -29
  334. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  335. package/fesm2022/primeng-toolbar.mjs +37 -29
  336. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  337. package/fesm2022/primeng-tooltip.mjs +37 -37
  338. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  339. package/fesm2022/primeng-tree.mjs +330 -310
  340. package/fesm2022/primeng-tree.mjs.map +1 -1
  341. package/fesm2022/primeng-treeselect.mjs +101 -55
  342. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  343. package/fesm2022/primeng-treetable.mjs +305 -264
  344. package/fesm2022/primeng-treetable.mjs.map +1 -1
  345. package/fesm2022/primeng-types-accordion.mjs +4 -0
  346. package/fesm2022/primeng-types-accordion.mjs.map +1 -0
  347. package/fesm2022/primeng-types-autocomplete.mjs +4 -0
  348. package/fesm2022/primeng-types-autocomplete.mjs.map +1 -0
  349. package/fesm2022/primeng-types-avatar.mjs +4 -0
  350. package/fesm2022/primeng-types-avatar.mjs.map +1 -0
  351. package/fesm2022/primeng-types-avatargroup.mjs +4 -0
  352. package/fesm2022/primeng-types-avatargroup.mjs.map +1 -0
  353. package/fesm2022/primeng-types-badge.mjs +4 -0
  354. package/fesm2022/primeng-types-badge.mjs.map +1 -0
  355. package/fesm2022/primeng-types-blockui.mjs +4 -0
  356. package/fesm2022/primeng-types-blockui.mjs.map +1 -0
  357. package/fesm2022/primeng-types-breadcrumb.mjs +4 -0
  358. package/fesm2022/primeng-types-breadcrumb.mjs.map +1 -0
  359. package/fesm2022/primeng-types-button.mjs +4 -0
  360. package/fesm2022/primeng-types-button.mjs.map +1 -0
  361. package/fesm2022/primeng-types-card.mjs +4 -0
  362. package/fesm2022/primeng-types-card.mjs.map +1 -0
  363. package/fesm2022/primeng-types-carousel.mjs +4 -0
  364. package/fesm2022/primeng-types-carousel.mjs.map +1 -0
  365. package/fesm2022/primeng-types-cascadeselect.mjs +4 -0
  366. package/fesm2022/primeng-types-cascadeselect.mjs.map +1 -0
  367. package/fesm2022/primeng-types-chart.mjs +4 -0
  368. package/fesm2022/primeng-types-chart.mjs.map +1 -0
  369. package/fesm2022/primeng-types-checkbox.mjs +4 -0
  370. package/fesm2022/primeng-types-checkbox.mjs.map +1 -0
  371. package/fesm2022/primeng-types-chip.mjs +4 -0
  372. package/fesm2022/primeng-types-chip.mjs.map +1 -0
  373. package/fesm2022/primeng-types-colorpicker.mjs +4 -0
  374. package/fesm2022/primeng-types-colorpicker.mjs.map +1 -0
  375. package/fesm2022/primeng-types-confirmdialog.mjs +4 -0
  376. package/fesm2022/primeng-types-confirmdialog.mjs.map +1 -0
  377. package/fesm2022/primeng-types-confirmpopup.mjs +4 -0
  378. package/fesm2022/primeng-types-confirmpopup.mjs.map +1 -0
  379. package/fesm2022/primeng-types-contextmenu.mjs +4 -0
  380. package/fesm2022/primeng-types-contextmenu.mjs.map +1 -0
  381. package/fesm2022/primeng-types-dataview.mjs +4 -0
  382. package/fesm2022/primeng-types-dataview.mjs.map +1 -0
  383. package/fesm2022/primeng-types-datepicker.mjs +4 -0
  384. package/fesm2022/primeng-types-datepicker.mjs.map +1 -0
  385. package/fesm2022/primeng-types-dialog.mjs +4 -0
  386. package/fesm2022/primeng-types-dialog.mjs.map +1 -0
  387. package/fesm2022/primeng-types-divider.mjs +4 -0
  388. package/fesm2022/primeng-types-divider.mjs.map +1 -0
  389. package/fesm2022/primeng-types-dock.mjs +4 -0
  390. package/fesm2022/primeng-types-dock.mjs.map +1 -0
  391. package/fesm2022/primeng-types-drawer.mjs +4 -0
  392. package/fesm2022/primeng-types-drawer.mjs.map +1 -0
  393. package/fesm2022/primeng-types-editor.mjs +4 -0
  394. package/fesm2022/primeng-types-editor.mjs.map +1 -0
  395. package/fesm2022/primeng-types-fieldset.mjs +4 -0
  396. package/fesm2022/primeng-types-fieldset.mjs.map +1 -0
  397. package/fesm2022/primeng-types-fileupload.mjs +4 -0
  398. package/fesm2022/primeng-types-fileupload.mjs.map +1 -0
  399. package/fesm2022/primeng-types-floatlabel.mjs +4 -0
  400. package/fesm2022/primeng-types-floatlabel.mjs.map +1 -0
  401. package/fesm2022/primeng-types-fluid.mjs +4 -0
  402. package/fesm2022/primeng-types-fluid.mjs.map +1 -0
  403. package/fesm2022/primeng-types-galleria.mjs +4 -0
  404. package/fesm2022/primeng-types-galleria.mjs.map +1 -0
  405. package/fesm2022/primeng-types-iconfield.mjs +4 -0
  406. package/fesm2022/primeng-types-iconfield.mjs.map +1 -0
  407. package/fesm2022/primeng-types-iftalabel.mjs +4 -0
  408. package/fesm2022/primeng-types-iftalabel.mjs.map +1 -0
  409. package/fesm2022/primeng-types-image.mjs +4 -0
  410. package/fesm2022/primeng-types-image.mjs.map +1 -0
  411. package/fesm2022/primeng-types-imagecompare.mjs +4 -0
  412. package/fesm2022/primeng-types-imagecompare.mjs.map +1 -0
  413. package/fesm2022/primeng-types-inplace.mjs +4 -0
  414. package/fesm2022/primeng-types-inplace.mjs.map +1 -0
  415. package/fesm2022/primeng-types-inputgroup.mjs +4 -0
  416. package/fesm2022/primeng-types-inputgroup.mjs.map +1 -0
  417. package/fesm2022/primeng-types-inputgroupaddon.mjs +4 -0
  418. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +1 -0
  419. package/fesm2022/primeng-types-inputicon.mjs +4 -0
  420. package/fesm2022/primeng-types-inputicon.mjs.map +1 -0
  421. package/fesm2022/primeng-types-inputmask.mjs +4 -0
  422. package/fesm2022/primeng-types-inputmask.mjs.map +1 -0
  423. package/fesm2022/primeng-types-inputnumber.mjs +4 -0
  424. package/fesm2022/primeng-types-inputnumber.mjs.map +1 -0
  425. package/fesm2022/primeng-types-inputotp.mjs +4 -0
  426. package/fesm2022/primeng-types-inputotp.mjs.map +1 -0
  427. package/fesm2022/primeng-types-inputtext.mjs +4 -0
  428. package/fesm2022/primeng-types-inputtext.mjs.map +1 -0
  429. package/fesm2022/primeng-types-knob.mjs +4 -0
  430. package/fesm2022/primeng-types-knob.mjs.map +1 -0
  431. package/fesm2022/primeng-types-listbox.mjs +4 -0
  432. package/fesm2022/primeng-types-listbox.mjs.map +1 -0
  433. package/fesm2022/primeng-types-megamenu.mjs +4 -0
  434. package/fesm2022/primeng-types-megamenu.mjs.map +1 -0
  435. package/fesm2022/primeng-types-menu.mjs +4 -0
  436. package/fesm2022/primeng-types-menu.mjs.map +1 -0
  437. package/fesm2022/primeng-types-menubar.mjs +4 -0
  438. package/fesm2022/primeng-types-menubar.mjs.map +1 -0
  439. package/fesm2022/primeng-types-message.mjs +4 -0
  440. package/fesm2022/primeng-types-message.mjs.map +1 -0
  441. package/fesm2022/primeng-types-metergroup.mjs +4 -0
  442. package/fesm2022/primeng-types-metergroup.mjs.map +1 -0
  443. package/fesm2022/primeng-types-multiselect.mjs +4 -0
  444. package/fesm2022/primeng-types-multiselect.mjs.map +1 -0
  445. package/fesm2022/primeng-types-orderlist.mjs +4 -0
  446. package/fesm2022/primeng-types-orderlist.mjs.map +1 -0
  447. package/fesm2022/primeng-types-organizationchart.mjs +4 -0
  448. package/fesm2022/primeng-types-organizationchart.mjs.map +1 -0
  449. package/fesm2022/primeng-types-overlay.mjs +4 -0
  450. package/fesm2022/primeng-types-overlay.mjs.map +1 -0
  451. package/fesm2022/primeng-types-overlaybadge.mjs +4 -0
  452. package/fesm2022/primeng-types-overlaybadge.mjs.map +1 -0
  453. package/fesm2022/primeng-types-paginator.mjs +4 -0
  454. package/fesm2022/primeng-types-paginator.mjs.map +1 -0
  455. package/fesm2022/primeng-types-panel.mjs +4 -0
  456. package/fesm2022/primeng-types-panel.mjs.map +1 -0
  457. package/fesm2022/primeng-types-panelmenu.mjs +4 -0
  458. package/fesm2022/primeng-types-panelmenu.mjs.map +1 -0
  459. package/fesm2022/primeng-types-password.mjs +4 -0
  460. package/fesm2022/primeng-types-password.mjs.map +1 -0
  461. package/fesm2022/primeng-types-picklist.mjs +4 -0
  462. package/fesm2022/primeng-types-picklist.mjs.map +1 -0
  463. package/fesm2022/primeng-types-popover.mjs +4 -0
  464. package/fesm2022/primeng-types-popover.mjs.map +1 -0
  465. package/fesm2022/primeng-types-progressbar.mjs +4 -0
  466. package/fesm2022/primeng-types-progressbar.mjs.map +1 -0
  467. package/fesm2022/primeng-types-progressspinner.mjs +4 -0
  468. package/fesm2022/primeng-types-progressspinner.mjs.map +1 -0
  469. package/fesm2022/primeng-types-radiobutton.mjs +4 -0
  470. package/fesm2022/primeng-types-radiobutton.mjs.map +1 -0
  471. package/fesm2022/primeng-types-rating.mjs +4 -0
  472. package/fesm2022/primeng-types-rating.mjs.map +1 -0
  473. package/fesm2022/primeng-types-scroller.mjs +4 -0
  474. package/fesm2022/primeng-types-scroller.mjs.map +1 -0
  475. package/fesm2022/primeng-types-scrollpanel.mjs +4 -0
  476. package/fesm2022/primeng-types-scrollpanel.mjs.map +1 -0
  477. package/fesm2022/primeng-types-scrolltop.mjs +4 -0
  478. package/fesm2022/primeng-types-scrolltop.mjs.map +1 -0
  479. package/fesm2022/primeng-types-select.mjs +4 -0
  480. package/fesm2022/primeng-types-select.mjs.map +1 -0
  481. package/fesm2022/primeng-types-selectbutton.mjs +4 -0
  482. package/fesm2022/primeng-types-selectbutton.mjs.map +1 -0
  483. package/fesm2022/primeng-types-skeleton.mjs +4 -0
  484. package/fesm2022/primeng-types-skeleton.mjs.map +1 -0
  485. package/fesm2022/primeng-types-slider.mjs +4 -0
  486. package/fesm2022/primeng-types-slider.mjs.map +1 -0
  487. package/fesm2022/primeng-types-speeddial.mjs +4 -0
  488. package/fesm2022/primeng-types-speeddial.mjs.map +1 -0
  489. package/fesm2022/primeng-types-splitbutton.mjs +4 -0
  490. package/fesm2022/primeng-types-splitbutton.mjs.map +1 -0
  491. package/fesm2022/primeng-types-splitter.mjs +4 -0
  492. package/fesm2022/primeng-types-splitter.mjs.map +1 -0
  493. package/fesm2022/primeng-types-stepper.mjs +4 -0
  494. package/fesm2022/primeng-types-stepper.mjs.map +1 -0
  495. package/fesm2022/primeng-types-table.mjs +4 -0
  496. package/fesm2022/primeng-types-table.mjs.map +1 -0
  497. package/fesm2022/primeng-types-tabs.mjs +4 -0
  498. package/fesm2022/primeng-types-tabs.mjs.map +1 -0
  499. package/fesm2022/primeng-types-tag.mjs +4 -0
  500. package/fesm2022/primeng-types-tag.mjs.map +1 -0
  501. package/fesm2022/primeng-types-terminal.mjs +4 -0
  502. package/fesm2022/primeng-types-terminal.mjs.map +1 -0
  503. package/fesm2022/primeng-types-textarea.mjs +4 -0
  504. package/fesm2022/primeng-types-textarea.mjs.map +1 -0
  505. package/fesm2022/primeng-types-tieredmenu.mjs +4 -0
  506. package/fesm2022/primeng-types-tieredmenu.mjs.map +1 -0
  507. package/fesm2022/primeng-types-timeline.mjs +4 -0
  508. package/fesm2022/primeng-types-timeline.mjs.map +1 -0
  509. package/fesm2022/primeng-types-toast.mjs +4 -0
  510. package/fesm2022/primeng-types-toast.mjs.map +1 -0
  511. package/fesm2022/primeng-types-togglebutton.mjs +4 -0
  512. package/fesm2022/primeng-types-togglebutton.mjs.map +1 -0
  513. package/fesm2022/primeng-types-toggleswitch.mjs +4 -0
  514. package/fesm2022/primeng-types-toggleswitch.mjs.map +1 -0
  515. package/fesm2022/primeng-types-toolbar.mjs +4 -0
  516. package/fesm2022/primeng-types-toolbar.mjs.map +1 -0
  517. package/fesm2022/primeng-types-tooltip.mjs +4 -0
  518. package/fesm2022/primeng-types-tooltip.mjs.map +1 -0
  519. package/fesm2022/primeng-types-tree.mjs +4 -0
  520. package/fesm2022/primeng-types-tree.mjs.map +1 -0
  521. package/fesm2022/primeng-types-treeselect.mjs +4 -0
  522. package/fesm2022/primeng-types-treeselect.mjs.map +1 -0
  523. package/fesm2022/primeng-types-treetable.mjs +4 -0
  524. package/fesm2022/primeng-types-treetable.mjs.map +1 -0
  525. package/fesm2022/primeng-usestyle.mjs +20 -18
  526. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  527. package/fesm2022/primeng-utils.mjs.map +1 -1
  528. package/fieldset/index.d.ts +19 -57
  529. package/fileupload/index.d.ts +24 -252
  530. package/floatlabel/index.d.ts +13 -6
  531. package/fluid/index.d.ts +9 -4
  532. package/focustrap/index.d.ts +2 -2
  533. package/galleria/index.d.ts +60 -142
  534. package/iconfield/index.d.ts +13 -5
  535. package/icons/arrowdown/index.d.ts +3 -4
  536. package/icons/arrowleft/index.d.ts +1 -1
  537. package/icons/arrowup/index.d.ts +1 -1
  538. package/icons/ban/index.d.ts +1 -1
  539. package/icons/baseicon/index.d.ts +1 -1
  540. package/icons/exclamationtriangle/index.d.ts +3 -4
  541. package/icons/eyeslash/index.d.ts +1 -1
  542. package/icons/filter/index.d.ts +1 -1
  543. package/icons/filterslash/index.d.ts +1 -1
  544. package/icons/home/index.d.ts +1 -1
  545. package/icons/infocircle/index.d.ts +1 -1
  546. package/icons/pencil/index.d.ts +1 -1
  547. package/icons/plus/index.d.ts +1 -1
  548. package/icons/refresh/index.d.ts +1 -1
  549. package/icons/search/index.d.ts +1 -1
  550. package/icons/searchminus/index.d.ts +1 -1
  551. package/icons/searchplus/index.d.ts +1 -1
  552. package/icons/sortalt/index.d.ts +1 -1
  553. package/icons/sortamountdown/index.d.ts +1 -1
  554. package/icons/sortamountupalt/index.d.ts +1 -1
  555. package/icons/spinner/index.d.ts +1 -1
  556. package/icons/star/index.d.ts +1 -1
  557. package/icons/starfill/index.d.ts +1 -1
  558. package/icons/thlarge/index.d.ts +1 -1
  559. package/icons/timescircle/index.d.ts +1 -1
  560. package/icons/trash/index.d.ts +1 -1
  561. package/icons/undo/index.d.ts +1 -1
  562. package/icons/upload/index.d.ts +1 -1
  563. package/icons/windowmaximize/index.d.ts +1 -1
  564. package/icons/windowminimize/index.d.ts +1 -1
  565. package/iftalabel/index.d.ts +15 -8
  566. package/image/index.d.ts +21 -78
  567. package/imagecompare/index.d.ts +15 -9
  568. package/inplace/index.d.ts +16 -29
  569. package/inputgroup/index.d.ts +12 -6
  570. package/inputgroupaddon/index.d.ts +11 -5
  571. package/inputicon/index.d.ts +11 -4
  572. package/inputmask/index.d.ts +21 -29
  573. package/inputnumber/index.d.ts +24 -56
  574. package/inputotp/index.d.ts +17 -11
  575. package/inputtext/index.d.ts +20 -12
  576. package/keyfilter/index.d.ts +2 -7
  577. package/knob/index.d.ts +11 -5
  578. package/listbox/index.d.ts +48 -194
  579. package/megamenu/index.d.ts +24 -45
  580. package/menu/index.d.ts +23 -12
  581. package/menubar/index.d.ts +22 -52
  582. package/message/index.d.ts +18 -11
  583. package/metergroup/index.d.ts +23 -138
  584. package/multiselect/index.d.ts +41 -276
  585. package/orderlist/index.d.ts +28 -126
  586. package/organizationchart/index.d.ts +20 -70
  587. package/overlay/index.d.ts +40 -12
  588. package/overlaybadge/index.d.ts +11 -5
  589. package/package.json +585 -213
  590. package/paginator/index.d.ts +17 -48
  591. package/panel/index.d.ts +34 -57
  592. package/panelmenu/index.d.ts +32 -43
  593. package/passthrough/index.d.ts +14 -0
  594. package/password/index.d.ts +28 -18
  595. package/picklist/index.d.ts +33 -263
  596. package/popover/index.d.ts +15 -8
  597. package/progressbar/index.d.ts +14 -7
  598. package/progressspinner/index.d.ts +11 -5
  599. package/radiobutton/index.d.ts +18 -28
  600. package/rating/index.d.ts +16 -44
  601. package/ripple/index.d.ts +5 -5
  602. package/scroller/index.d.ts +23 -193
  603. package/scrollpanel/index.d.ts +17 -22
  604. package/scrolltop/index.d.ts +16 -28
  605. package/select/index.d.ts +34 -176
  606. package/selectbutton/index.d.ts +17 -56
  607. package/skeleton/index.d.ts +11 -5
  608. package/slider/index.d.ts +16 -49
  609. package/speeddial/index.d.ts +28 -63
  610. package/splitbutton/index.d.ts +15 -39
  611. package/splitter/index.d.ts +16 -45
  612. package/stepper/index.d.ts +54 -26
  613. package/steps/index.d.ts +8 -8
  614. package/table/index.d.ts +200 -854
  615. package/tabs/index.d.ts +59 -26
  616. package/tag/index.d.ts +14 -19
  617. package/terminal/index.d.ts +14 -8
  618. package/textarea/index.d.ts +19 -14
  619. package/tieredmenu/index.d.ts +26 -42
  620. package/timeline/index.d.ts +14 -51
  621. package/toast/index.d.ts +25 -70
  622. package/togglebutton/index.d.ts +16 -60
  623. package/toggleswitch/index.d.ts +16 -25
  624. package/toolbar/index.d.ts +14 -27
  625. package/tooltip/index.d.ts +24 -19
  626. package/tree/index.d.ts +55 -259
  627. package/treeselect/index.d.ts +23 -124
  628. package/treetable/index.d.ts +106 -558
  629. package/types/accordion/index.d.ts +88 -0
  630. package/types/autocomplete/index.d.ts +299 -0
  631. package/types/avatar/index.d.ts +40 -0
  632. package/types/avatargroup/index.d.ts +28 -0
  633. package/types/badge/index.d.ts +26 -0
  634. package/types/blockui/index.d.ts +39 -0
  635. package/types/breadcrumb/index.d.ts +70 -0
  636. package/types/button/index.d.ts +105 -0
  637. package/types/card/index.d.ts +75 -0
  638. package/types/carousel/index.d.ts +140 -0
  639. package/types/cascadeselect/index.d.ts +198 -0
  640. package/types/chart/index.d.ts +32 -0
  641. package/types/checkbox/index.d.ts +62 -0
  642. package/types/chip/index.d.ts +71 -0
  643. package/types/colorpicker/index.d.ts +73 -0
  644. package/types/confirmdialog/index.d.ts +121 -0
  645. package/types/confirmpopup/index.d.ts +82 -0
  646. package/types/contextmenu/index.d.ts +89 -0
  647. package/types/dataview/index.d.ts +234 -0
  648. package/types/datepicker/index.d.ts +464 -0
  649. package/types/dialog/index.d.ts +98 -0
  650. package/types/divider/index.d.ts +28 -0
  651. package/types/dock/index.d.ts +67 -0
  652. package/types/drawer/index.d.ts +77 -0
  653. package/types/editor/index.d.ts +210 -0
  654. package/types/fieldset/index.d.ts +92 -0
  655. package/types/fileupload/index.d.ts +576 -0
  656. package/types/floatlabel/index.d.ts +26 -0
  657. package/types/fluid/index.d.ts +28 -0
  658. package/types/galleria/index.d.ts +233 -0
  659. package/types/iconfield/index.d.ts +26 -0
  660. package/types/iftalabel/index.d.ts +26 -0
  661. package/types/image/index.d.ts +193 -0
  662. package/types/imagecompare/index.d.ts +28 -0
  663. package/types/inplace/index.d.ts +61 -0
  664. package/types/inputgroup/index.d.ts +28 -0
  665. package/types/inputgroupaddon/index.d.ts +28 -0
  666. package/types/inputicon/index.d.ts +26 -0
  667. package/types/inputmask/index.d.ts +56 -0
  668. package/types/inputnumber/index.d.ts +95 -0
  669. package/types/inputotp/index.d.ts +31 -0
  670. package/types/inputtext/index.d.ts +24 -0
  671. package/types/knob/index.d.ts +40 -0
  672. package/types/listbox/index.d.ts +280 -0
  673. package/types/megamenu/index.d.ts +122 -0
  674. package/types/menu/index.d.ts +101 -0
  675. package/types/menubar/index.d.ts +121 -0
  676. package/types/message/index.d.ts +48 -0
  677. package/types/metergroup/index.d.ts +178 -0
  678. package/types/multiselect/index.d.ts +362 -0
  679. package/types/orderlist/index.d.ts +164 -0
  680. package/types/organizationchart/index.d.ts +138 -0
  681. package/types/overlay/index.d.ts +28 -0
  682. package/types/overlaybadge/index.d.ts +34 -0
  683. package/types/paginator/index.d.ts +131 -0
  684. package/types/panel/index.d.ts +92 -0
  685. package/types/panelmenu/index.d.ts +114 -0
  686. package/types/password/index.d.ts +97 -0
  687. package/types/picklist/index.d.ts +353 -0
  688. package/types/popover/index.d.ts +52 -0
  689. package/types/progressbar/index.d.ts +54 -0
  690. package/types/progressspinner/index.d.ts +36 -0
  691. package/types/radiobutton/index.d.ts +51 -0
  692. package/types/rating/index.d.ts +82 -0
  693. package/types/scroller/index.d.ts +221 -0
  694. package/types/scrollpanel/index.d.ts +51 -0
  695. package/types/scrolltop/index.d.ts +52 -0
  696. package/types/select/index.d.ts +288 -0
  697. package/types/selectbutton/index.d.ts +77 -0
  698. package/types/skeleton/index.d.ts +28 -0
  699. package/types/slider/index.d.ts +78 -0
  700. package/types/speeddial/index.d.ts +82 -0
  701. package/types/splitbutton/index.d.ts +70 -0
  702. package/types/splitter/index.d.ts +70 -0
  703. package/types/stepper/index.d.ts +153 -0
  704. package/types/table/index.d.ts +884 -0
  705. package/types/tabs/index.d.ts +119 -0
  706. package/types/tag/index.d.ts +47 -0
  707. package/types/terminal/index.d.ts +60 -0
  708. package/types/textarea/index.d.ts +28 -0
  709. package/types/tieredmenu/index.d.ts +87 -0
  710. package/types/timeline/index.d.ts +95 -0
  711. package/types/toast/index.d.ts +114 -0
  712. package/types/togglebutton/index.d.ts +85 -0
  713. package/types/toggleswitch/index.d.ts +51 -0
  714. package/types/toolbar/index.d.ts +55 -0
  715. package/types/tooltip/index.d.ts +32 -0
  716. package/types/tree/index.d.ts +308 -0
  717. package/types/treeselect/index.d.ts +224 -0
  718. package/types/treetable/index.d.ts +640 -0
  719. package/usestyle/index.d.ts +2 -2
  720. package/utils/index.d.ts +2 -2
@@ -1,15 +1,19 @@
1
- import * as i4 from '@angular/cdk/drag-drop';
2
- import { DragDropModule, CDK_DRAG_CONFIG } from '@angular/cdk/drag-drop';
3
- import * as i2 from '@angular/common';
1
+ export * from 'primeng/types/listbox';
2
+ import * as i5 from '@angular/cdk/drag-drop';
3
+ import { moveItemInArray, DragDropModule, CDK_DRAG_CONFIG } from '@angular/cdk/drag-drop';
4
+ import * as i3 from '@angular/common';
4
5
  import { CommonModule } from '@angular/common';
5
6
  import * as i0 from '@angular/core';
6
- import { Injectable, forwardRef, input, booleanAttribute, EventEmitter, signal, inject, computed, numberAttribute, HostListener, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
7
- import * as i3 from '@angular/forms';
7
+ import { Injectable, InjectionToken, forwardRef, inject, computed, input, booleanAttribute, EventEmitter, signal, numberAttribute, HostListener, ContentChildren, ContentChild, ViewChild, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
8
+ import * as i4 from '@angular/forms';
8
9
  import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
9
10
  import { isNotEmpty, uuid, equals, focus, getFirstFocusableElement, isEmpty, isPrintableCharacter, resolveFieldData, findSingle, findLastIndex, isFunction } from '@primeuix/utils';
10
11
  import * as i1 from 'primeng/api';
11
12
  import { SharedModule, Header, Footer, PrimeTemplate } from 'primeng/api';
13
+ import { PARENT_INSTANCE } from 'primeng/basecomponent';
12
14
  import { BaseEditableHolder } from 'primeng/baseeditableholder';
15
+ import * as i2 from 'primeng/bind';
16
+ import { Bind, BindModule } from 'primeng/bind';
13
17
  import { Checkbox } from 'primeng/checkbox';
14
18
  import { IconField } from 'primeng/iconfield';
15
19
  import { SearchIcon, CheckIcon, BlankIcon } from 'primeng/icons';
@@ -17,11 +21,11 @@ import { InputIcon } from 'primeng/inputicon';
17
21
  import { InputText } from 'primeng/inputtext';
18
22
  import { Ripple } from 'primeng/ripple';
19
23
  import { Scroller } from 'primeng/scroller';
20
- import { style } from '@primeuix/styles/listbox';
24
+ import { style as style$1 } from '@primeuix/styles/listbox';
21
25
  import { BaseStyle } from 'primeng/base';
22
26
 
23
- const theme = /*css*/ `
24
- ${style}
27
+ const style = /*css*/ `
28
+ ${style$1}
25
29
 
26
30
  /* For PrimeNG */
27
31
  .p-listbox.ng-invalid.ng-dirty {
@@ -36,6 +40,28 @@ const theme = /*css*/ `
36
40
  .p-listbox-header > .p-iconfield {
37
41
  flex-grow: 1;
38
42
  }
43
+
44
+ .p-listbox-list-container {
45
+ height: 100%;
46
+ }
47
+
48
+ /* CDK Drag & Drop styles */
49
+ .p-listbox-option.cdk-drag-preview {
50
+ background: dt('listbox.background');
51
+ }
52
+
53
+ .p-listbox-dragging .p-listbox-option:not(.cdk-drag-preview) {
54
+ pointer-events: none !important;
55
+ }
56
+
57
+ .p-listbox-dragging .p-listbox-option:not(.cdk-drag-preview):hover {
58
+ background: inherit !important;
59
+ color: inherit !important;
60
+ }
61
+
62
+ .cdk-drag-placeholder {
63
+ pointer-events: none;
64
+ }
39
65
  `;
40
66
  const classes = {
41
67
  root: ({ instance }) => [
@@ -66,12 +92,12 @@ const classes = {
66
92
  };
67
93
  class ListBoxStyle extends BaseStyle {
68
94
  name = 'listbox';
69
- theme = theme;
95
+ style = style;
70
96
  classes = classes;
71
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListBoxStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
72
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListBoxStyle });
97
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListBoxStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
98
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListBoxStyle });
73
99
  }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListBoxStyle, decorators: [{
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListBoxStyle, decorators: [{
75
101
  type: Injectable
76
102
  }] });
77
103
  /**
@@ -127,6 +153,7 @@ var ListboxClasses;
127
153
  ListboxClasses["emptyMessage"] = "p-listbox-empty-message";
128
154
  })(ListboxClasses || (ListboxClasses = {}));
129
155
 
156
+ const LISTBOX_INSTANCE = new InjectionToken('LISTBOX_INSTANCE');
130
157
  const LISTBOX_VALUE_ACCESSOR = {
131
158
  provide: NG_VALUE_ACCESSOR,
132
159
  useExisting: forwardRef(() => Listbox),
@@ -138,6 +165,12 @@ const LISTBOX_VALUE_ACCESSOR = {
138
165
  */
139
166
  class Listbox extends BaseEditableHolder {
140
167
  filterService;
168
+ hostName = '';
169
+ bindDirectiveInstance = inject(Bind, { self: true });
170
+ $pcListbox = inject(LISTBOX_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
171
+ onAfterViewChecked() {
172
+ this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
173
+ }
141
174
  /**
142
175
  * Unique identifier of the component.
143
176
  * @group Props
@@ -357,7 +390,7 @@ class Listbox extends BaseEditableHolder {
357
390
  * @group Props
358
391
  */
359
392
  get filterValue() {
360
- return this._filterValue();
393
+ return this._filterValue() || '';
361
394
  }
362
395
  set filterValue(val) {
363
396
  this._filterValue.set(val);
@@ -395,6 +428,17 @@ class Listbox extends BaseEditableHolder {
395
428
  * @group Props
396
429
  */
397
430
  dragdrop = false;
431
+ /**
432
+ * Array to use for CDK drop list data binding. When not provided, uses options array.
433
+ * @group Props
434
+ */
435
+ dropListData;
436
+ /**
437
+ * Computed property for stable CDK drop list data reference
438
+ */
439
+ cdkDropData = computed(() => {
440
+ return this.dropListData || this._options();
441
+ }, ...(ngDevMode ? [{ debugName: "cdkDropData" }] : []));
398
442
  /**
399
443
  * Spans 100% width of the container when enabled.
400
444
  * @defaultValue undefined
@@ -585,6 +629,7 @@ class Listbox extends BaseEditableHolder {
585
629
  _options = signal(null, ...(ngDevMode ? [{ debugName: "_options" }] : []));
586
630
  startRangeIndex = signal(-1, ...(ngDevMode ? [{ debugName: "startRangeIndex" }] : []));
587
631
  focusedOptionIndex = signal(-1, ...(ngDevMode ? [{ debugName: "focusedOptionIndex" }] : []));
632
+ isDragging = signal(false, ...(ngDevMode ? [{ debugName: "isDragging" }] : []));
588
633
  onHostFocusOut(event) {
589
634
  this.onFocusout(event);
590
635
  }
@@ -596,8 +641,7 @@ class Listbox extends BaseEditableHolder {
596
641
  super();
597
642
  this.filterService = filterService;
598
643
  }
599
- ngOnInit() {
600
- super.ngOnInit();
644
+ onInit() {
601
645
  this.id = this.id || uuid('pn_id_');
602
646
  this.translationSubscription = this.config.translationObserver.subscribe(() => {
603
647
  this.cd.markForCheck();
@@ -610,7 +654,7 @@ class Listbox extends BaseEditableHolder {
610
654
  };
611
655
  }
612
656
  }
613
- ngAfterContentInit() {
657
+ onAfterContentInit() {
614
658
  this.templates.forEach((item) => {
615
659
  switch (item.getType()) {
616
660
  case 'item':
@@ -678,7 +722,7 @@ class Listbox extends BaseEditableHolder {
678
722
  this.onChange.emit({ originalEvent: event, value: this.value });
679
723
  }
680
724
  removeOption(option) {
681
- return this.modelValue().filter((val) => !equals(val, this.getOptionValue(option), this.equalityKey()));
725
+ return this.modelValue().filter((val) => !equals(val, this.getOptionValue(option), this.equalityKey() || ''));
682
726
  }
683
727
  onOptionSelect(event, option, index = -1) {
684
728
  if (this.$disabled() || this.isOptionDisabled(option) || this.readonly) {
@@ -691,7 +735,7 @@ class Listbox extends BaseEditableHolder {
691
735
  }
692
736
  onOptionSelectMultiple(event, option) {
693
737
  let selected = this.isSelected(option);
694
- let value = null;
738
+ let value = [];
695
739
  let metaSelection = this.optionTouched ? false : this.metaKeySelection;
696
740
  if (metaSelection) {
697
741
  let metaKey = event.metaKey || event.ctrlKey;
@@ -700,7 +744,7 @@ class Listbox extends BaseEditableHolder {
700
744
  }
701
745
  else {
702
746
  value = metaKey ? this.modelValue() || [] : [];
703
- value = [...value, this.getOptionValue(option)];
747
+ value = [...(value || []), this.getOptionValue(option)];
704
748
  }
705
749
  }
706
750
  else {
@@ -751,7 +795,7 @@ class Listbox extends BaseEditableHolder {
751
795
  if (this.$disabled() || this.readonly) {
752
796
  return;
753
797
  }
754
- focus(this.headerCheckboxViewChild.nativeElement);
798
+ focus(this.headerCheckboxViewChild?.nativeElement);
755
799
  if (this.selectAll !== null) {
756
800
  this.onSelectAllChange.emit({
757
801
  originalEvent: event,
@@ -797,21 +841,21 @@ class Listbox extends BaseEditableHolder {
797
841
  }
798
842
  onFirstHiddenFocus(event) {
799
843
  focus(this.listViewChild?.nativeElement);
800
- const firstFocusableEl = getFirstFocusableElement(this.el.nativeElement, ':not([data-p-hidden-focusable="true"])');
801
- this.lastHiddenFocusableElement.nativeElement.tabIndex = isEmpty(firstFocusableEl) ? '-1' : undefined;
802
- this.firstHiddenFocusableElement.nativeElement.tabIndex = -1;
844
+ const firstFocusableEl = getFirstFocusableElement(this.el?.nativeElement, ':not([data-p-hidden-focusable="true"])');
845
+ this.lastHiddenFocusableElement?.nativeElement && (this.lastHiddenFocusableElement.nativeElement.tabIndex = isEmpty(firstFocusableEl) ? -1 : undefined);
846
+ this.firstHiddenFocusableElement?.nativeElement && (this.firstHiddenFocusableElement.nativeElement.tabIndex = -1);
803
847
  }
804
848
  onLastHiddenFocus(event) {
805
849
  const relatedTarget = event.relatedTarget;
806
850
  if (relatedTarget === this.listViewChild?.nativeElement) {
807
- const firstFocusableEl = getFirstFocusableElement(this.el.nativeElement, ':not(.p-hidden-focusable)');
851
+ const firstFocusableEl = getFirstFocusableElement(this.el?.nativeElement, ':not(.p-hidden-focusable)');
808
852
  focus(firstFocusableEl);
809
- this.firstHiddenFocusableElement.nativeElement.tabIndex = undefined;
853
+ this.firstHiddenFocusableElement?.nativeElement && (this.firstHiddenFocusableElement.nativeElement.tabIndex = undefined);
810
854
  }
811
855
  else {
812
- focus(this.firstHiddenFocusableElement.nativeElement);
856
+ focus(this.firstHiddenFocusableElement?.nativeElement);
813
857
  }
814
- this.lastHiddenFocusableElement.nativeElement.tabIndex = -1;
858
+ this.lastHiddenFocusableElement?.nativeElement && (this.lastHiddenFocusableElement.nativeElement.tabIndex = -1);
815
859
  }
816
860
  onFocusout(event) {
817
861
  if (!this.el.nativeElement.contains(event.relatedTarget) && this.lastHiddenFocusableElement && this.firstHiddenFocusableElement) {
@@ -863,7 +907,7 @@ class Listbox extends BaseEditableHolder {
863
907
  this.focusedOptionIndex.set(-1);
864
908
  this.startRangeIndex.set(-1);
865
909
  this.onFilter.emit({ originalEvent: event, filter: this._filterValue() });
866
- !this.virtualScrollerDisabled && this.scroller.scrollToIndex(0);
910
+ !this.virtualScrollerDisabled && this.scroller?.scrollToIndex(0);
867
911
  }
868
912
  onFilterBlur(event) {
869
913
  this.focusedOptionIndex.set(-1);
@@ -1045,6 +1089,15 @@ class Listbox extends BaseEditableHolder {
1045
1089
  .filter((option) => this.isOptionGroup(option)).length
1046
1090
  : index) + 1);
1047
1091
  }
1092
+ getPTOptions(option, itemOptions, index, key) {
1093
+ return this.ptm(key, {
1094
+ context: {
1095
+ selected: this.isSelected(option),
1096
+ focused: this.focusedOptionIndex() === this.getOptionIndex(index, itemOptions),
1097
+ disabled: this.isOptionDisabled(option)
1098
+ }
1099
+ });
1100
+ }
1048
1101
  hasSelectedOption() {
1049
1102
  return isNotEmpty(this.modelValue());
1050
1103
  }
@@ -1097,7 +1150,7 @@ class Listbox extends BaseEditableHolder {
1097
1150
  return matched;
1098
1151
  }
1099
1152
  isOptionMatched(option) {
1100
- return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale));
1153
+ return this.isValidOption(option) && this.getOptionLabel(option)?.toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue?.toLocaleLowerCase(this.filterLocale));
1101
1154
  }
1102
1155
  scrollInView(index = -1) {
1103
1156
  const id = index !== -1 ? `${this.id}_${index}` : this.focusedOptionId;
@@ -1106,7 +1159,7 @@ class Listbox extends BaseEditableHolder {
1106
1159
  element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
1107
1160
  }
1108
1161
  else if (!this.virtualScrollerDisabled) {
1109
- this.virtualScroll && this.scroller.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1162
+ this.virtualScroll && this.scroller?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
1110
1163
  }
1111
1164
  }
1112
1165
  findFirstOptionIndex() {
@@ -1154,7 +1207,7 @@ class Listbox extends BaseEditableHolder {
1154
1207
  return matchedOptionIndex > -1 ? matchedOptionIndex : index;
1155
1208
  }
1156
1209
  findSelectedOptionIndex() {
1157
- if (this.$filled) {
1210
+ if (this.$filled()) {
1158
1211
  if (this.multiple) {
1159
1212
  for (let index = this.modelValue().length - 1; index >= 0; index--) {
1160
1213
  const value = this.modelValue()[index];
@@ -1196,7 +1249,7 @@ class Listbox extends BaseEditableHolder {
1196
1249
  return this.optionDisabled ? resolveFieldData(option, this.optionDisabled) : false;
1197
1250
  }
1198
1251
  isEquals(value1, value2) {
1199
- return equals(value1, value2, this.equalityKey());
1252
+ return equals(value1, value2, this.equalityKey() || '');
1200
1253
  }
1201
1254
  isSelected(option) {
1202
1255
  const optionValue = this.getOptionValue(option);
@@ -1212,7 +1265,7 @@ class Listbox extends BaseEditableHolder {
1212
1265
  return !this._options()?.length || !this.visibleOptions()?.length;
1213
1266
  }
1214
1267
  hasFilter() {
1215
- return this._filterValue() && this._filterValue().trim().length > 0;
1268
+ return this._filterValue() && (this._filterValue()?.trim().length || 0) > 0;
1216
1269
  }
1217
1270
  resetFilter() {
1218
1271
  if (this.filterViewChild && this.filterViewChild.nativeElement) {
@@ -1220,8 +1273,29 @@ class Listbox extends BaseEditableHolder {
1220
1273
  }
1221
1274
  this._filterValue.set(null);
1222
1275
  }
1276
+ onDragEntered() {
1277
+ this.isDragging.set(true);
1278
+ }
1279
+ onDragExited() {
1280
+ this.isDragging.set(false);
1281
+ }
1223
1282
  drop(event) {
1283
+ this.isDragging.set(false);
1224
1284
  if (event) {
1285
+ // If dragdrop is enabled and same container (reordering), automatically handle reordering
1286
+ if (this.dragdrop && event.previousContainer === event.container) {
1287
+ const currentOptions = [...this._options()];
1288
+ moveItemInArray(currentOptions, event.previousIndex, event.currentIndex);
1289
+ this._options.set(currentOptions);
1290
+ // Update model value if needed for selection preservation
1291
+ if (this.modelValue()) {
1292
+ this.writeModelValue(this.modelValue());
1293
+ this.onModelChange(this.modelValue());
1294
+ }
1295
+ // Mark for change detection
1296
+ this.cd.markForCheck();
1297
+ }
1298
+ // Always emit the event for custom handling
1225
1299
  this.onDrop.emit(event);
1226
1300
  }
1227
1301
  }
@@ -1236,14 +1310,13 @@ class Listbox extends BaseEditableHolder {
1236
1310
  setModelValue(this.value);
1237
1311
  this.cd.markForCheck();
1238
1312
  }
1239
- ngOnDestroy() {
1313
+ onDestroy() {
1240
1314
  if (this.translationSubscription) {
1241
1315
  this.translationSubscription.unsubscribe();
1242
1316
  }
1243
- super.ngOnDestroy();
1244
1317
  }
1245
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: Listbox, deps: [{ token: i1.FilterService }], target: i0.ɵɵFactoryTarget.Component });
1246
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: Listbox, isStandalone: true, selector: "p-listbox, p-listBox, p-list-box", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, searchMessage: { classPropertyName: "searchMessage", publicName: "searchMessage", isSignal: false, isRequired: false, transformFunction: null }, emptySelectionMessage: { classPropertyName: "emptySelectionMessage", publicName: "emptySelectionMessage", isSignal: false, isRequired: false, transformFunction: null }, selectionMessage: { classPropertyName: "selectionMessage", publicName: "selectionMessage", isSignal: false, isRequired: false, transformFunction: null }, autoOptionFocus: { classPropertyName: "autoOptionFocus", publicName: "autoOptionFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, selectOnFocus: { classPropertyName: "selectOnFocus", publicName: "selectOnFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, searchLocale: { classPropertyName: "searchLocale", publicName: "searchLocale", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, focusOnHover: { classPropertyName: "focusOnHover", publicName: "focusOnHover", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterMessage: { classPropertyName: "filterMessage", publicName: "filterMessage", isSignal: false, isRequired: false, transformFunction: null }, filterFields: { classPropertyName: "filterFields", publicName: "filterFields", isSignal: false, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: false, isRequired: false, transformFunction: numberAttribute }, virtualScrollOptions: { classPropertyName: "virtualScrollOptions", publicName: "virtualScrollOptions", isSignal: false, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, listStyle: { classPropertyName: "listStyle", publicName: "listStyle", isSignal: false, isRequired: false, transformFunction: null }, listStyleClass: { classPropertyName: "listStyleClass", publicName: "listStyleClass", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterBy: { classPropertyName: "filterBy", publicName: "filterBy", isSignal: false, isRequired: false, transformFunction: null }, filterMatchMode: { classPropertyName: "filterMatchMode", publicName: "filterMatchMode", isSignal: false, isRequired: false, transformFunction: null }, filterLocale: { classPropertyName: "filterLocale", publicName: "filterLocale", isSignal: false, isRequired: false, transformFunction: null }, metaKeySelection: { classPropertyName: "metaKeySelection", publicName: "metaKeySelection", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: false, isRequired: false, transformFunction: null }, showToggleAll: { classPropertyName: "showToggleAll", publicName: "showToggleAll", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: false, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: false, isRequired: false, transformFunction: null }, optionGroupChildren: { classPropertyName: "optionGroupChildren", publicName: "optionGroupChildren", isSignal: false, isRequired: false, transformFunction: null }, optionGroupLabel: { classPropertyName: "optionGroupLabel", publicName: "optionGroupLabel", isSignal: false, isRequired: false, transformFunction: null }, optionDisabled: { classPropertyName: "optionDisabled", publicName: "optionDisabled", isSignal: false, isRequired: false, transformFunction: null }, ariaFilterLabel: { classPropertyName: "ariaFilterLabel", publicName: "ariaFilterLabel", isSignal: false, isRequired: false, transformFunction: null }, filterPlaceHolder: { classPropertyName: "filterPlaceHolder", publicName: "filterPlaceHolder", isSignal: false, isRequired: false, transformFunction: null }, emptyFilterMessage: { classPropertyName: "emptyFilterMessage", publicName: "emptyFilterMessage", isSignal: false, isRequired: false, transformFunction: null }, emptyMessage: { classPropertyName: "emptyMessage", publicName: "emptyMessage", isSignal: false, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, options: { classPropertyName: "options", publicName: "options", isSignal: false, isRequired: false, transformFunction: null }, filterValue: { classPropertyName: "filterValue", publicName: "filterValue", isSignal: false, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: false, isRequired: false, transformFunction: null }, striped: { classPropertyName: "striped", publicName: "striped", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, highlightOnSelect: { classPropertyName: "highlightOnSelect", publicName: "highlightOnSelect", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, checkmark: { classPropertyName: "checkmark", publicName: "checkmark", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dragdrop: { classPropertyName: "dragdrop", publicName: "dragdrop", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange", onClick: "onClick", onDblClick: "onDblClick", onFilter: "onFilter", onFocus: "onFocus", onBlur: "onBlur", onSelectAllChange: "onSelectAllChange", onLazyLoad: "onLazyLoad", onDrop: "onDrop" }, host: { listeners: { "focusout": "onHostFocusOut($event)" }, properties: { "attr.id": "id", "class": "cn(cx('root'), styleClass)" } }, providers: [
1318
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Listbox, deps: [{ token: i1.FilterService }], target: i0.ɵɵFactoryTarget.Component });
1319
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: Listbox, isStandalone: true, selector: "p-listbox, p-listBox, p-list-box", inputs: { hostName: { classPropertyName: "hostName", publicName: "hostName", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, searchMessage: { classPropertyName: "searchMessage", publicName: "searchMessage", isSignal: false, isRequired: false, transformFunction: null }, emptySelectionMessage: { classPropertyName: "emptySelectionMessage", publicName: "emptySelectionMessage", isSignal: false, isRequired: false, transformFunction: null }, selectionMessage: { classPropertyName: "selectionMessage", publicName: "selectionMessage", isSignal: false, isRequired: false, transformFunction: null }, autoOptionFocus: { classPropertyName: "autoOptionFocus", publicName: "autoOptionFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, selectOnFocus: { classPropertyName: "selectOnFocus", publicName: "selectOnFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, searchLocale: { classPropertyName: "searchLocale", publicName: "searchLocale", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, focusOnHover: { classPropertyName: "focusOnHover", publicName: "focusOnHover", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterMessage: { classPropertyName: "filterMessage", publicName: "filterMessage", isSignal: false, isRequired: false, transformFunction: null }, filterFields: { classPropertyName: "filterFields", publicName: "filterFields", isSignal: false, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: false, isRequired: false, transformFunction: numberAttribute }, virtualScrollOptions: { classPropertyName: "virtualScrollOptions", publicName: "virtualScrollOptions", isSignal: false, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, listStyle: { classPropertyName: "listStyle", publicName: "listStyle", isSignal: false, isRequired: false, transformFunction: null }, listStyleClass: { classPropertyName: "listStyleClass", publicName: "listStyleClass", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterBy: { classPropertyName: "filterBy", publicName: "filterBy", isSignal: false, isRequired: false, transformFunction: null }, filterMatchMode: { classPropertyName: "filterMatchMode", publicName: "filterMatchMode", isSignal: false, isRequired: false, transformFunction: null }, filterLocale: { classPropertyName: "filterLocale", publicName: "filterLocale", isSignal: false, isRequired: false, transformFunction: null }, metaKeySelection: { classPropertyName: "metaKeySelection", publicName: "metaKeySelection", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: false, isRequired: false, transformFunction: null }, showToggleAll: { classPropertyName: "showToggleAll", publicName: "showToggleAll", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: false, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: false, isRequired: false, transformFunction: null }, optionGroupChildren: { classPropertyName: "optionGroupChildren", publicName: "optionGroupChildren", isSignal: false, isRequired: false, transformFunction: null }, optionGroupLabel: { classPropertyName: "optionGroupLabel", publicName: "optionGroupLabel", isSignal: false, isRequired: false, transformFunction: null }, optionDisabled: { classPropertyName: "optionDisabled", publicName: "optionDisabled", isSignal: false, isRequired: false, transformFunction: null }, ariaFilterLabel: { classPropertyName: "ariaFilterLabel", publicName: "ariaFilterLabel", isSignal: false, isRequired: false, transformFunction: null }, filterPlaceHolder: { classPropertyName: "filterPlaceHolder", publicName: "filterPlaceHolder", isSignal: false, isRequired: false, transformFunction: null }, emptyFilterMessage: { classPropertyName: "emptyFilterMessage", publicName: "emptyFilterMessage", isSignal: false, isRequired: false, transformFunction: null }, emptyMessage: { classPropertyName: "emptyMessage", publicName: "emptyMessage", isSignal: false, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, options: { classPropertyName: "options", publicName: "options", isSignal: false, isRequired: false, transformFunction: null }, filterValue: { classPropertyName: "filterValue", publicName: "filterValue", isSignal: false, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: false, isRequired: false, transformFunction: null }, striped: { classPropertyName: "striped", publicName: "striped", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, highlightOnSelect: { classPropertyName: "highlightOnSelect", publicName: "highlightOnSelect", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, checkmark: { classPropertyName: "checkmark", publicName: "checkmark", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dragdrop: { classPropertyName: "dragdrop", publicName: "dragdrop", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, dropListData: { classPropertyName: "dropListData", publicName: "dropListData", isSignal: false, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange", onClick: "onClick", onDblClick: "onDblClick", onFilter: "onFilter", onFocus: "onFocus", onBlur: "onBlur", onSelectAllChange: "onSelectAllChange", onLazyLoad: "onLazyLoad", onDrop: "onDrop" }, host: { listeners: { "focusout": "onHostFocusOut($event)" }, properties: { "attr.id": "id", "class": "cn(cx('root'), styleClass, { 'p-listbox-dragging': isDragging() })" } }, providers: [
1247
1320
  LISTBOX_VALUE_ACCESSOR,
1248
1321
  ListBoxStyle,
1249
1322
  {
@@ -1251,14 +1324,25 @@ class Listbox extends BaseEditableHolder {
1251
1324
  useValue: {
1252
1325
  zIndex: 1200
1253
1326
  }
1254
- }
1255
- ], queries: [{ propertyName: "headerFacet", first: true, predicate: Header, descendants: true }, { propertyName: "footerFacet", first: true, predicate: Footer, descendants: true }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "groupTemplate", first: true, predicate: ["group"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "filterTemplate", first: true, predicate: ["filter"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "emptyFilterTemplate", first: true, predicate: ["emptyfilter"] }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"] }, { propertyName: "filterIconTemplate", first: true, predicate: ["filtericon"] }, { propertyName: "checkIconTemplate", first: true, predicate: ["checkicon"] }, { propertyName: "checkmarkTemplate", first: true, predicate: ["checkmark"] }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "headerCheckboxViewChild", first: true, predicate: ["headerchkbox"], descendants: true }, { propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "lastHiddenFocusableElement", first: true, predicate: ["lastHiddenFocusableElement"], descendants: true }, { propertyName: "firstHiddenFocusableElement", first: true, predicate: ["firstHiddenFocusableElement"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
1256
- <span #firstHiddenFocusableElement role="presentation" class="p-hidden-accessible p-hidden-focusable" [tabindex]="!$disabled() ? tabindex : -1" (focus)="onFirstHiddenFocus($event)" [attr.data-p-hidden-focusable]="true"> </span>
1257
- <div [class]="cx('header')" *ngIf="headerFacet || headerTemplate || _headerTemplate">
1327
+ },
1328
+ { provide: LISTBOX_INSTANCE, useExisting: Listbox },
1329
+ { provide: PARENT_INSTANCE, useExisting: Listbox }
1330
+ ], queries: [{ propertyName: "headerFacet", first: true, predicate: Header, descendants: true }, { propertyName: "footerFacet", first: true, predicate: Footer, descendants: true }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "groupTemplate", first: true, predicate: ["group"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "filterTemplate", first: true, predicate: ["filter"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "emptyFilterTemplate", first: true, predicate: ["emptyfilter"] }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"] }, { propertyName: "filterIconTemplate", first: true, predicate: ["filtericon"] }, { propertyName: "checkIconTemplate", first: true, predicate: ["checkicon"] }, { propertyName: "checkmarkTemplate", first: true, predicate: ["checkmark"] }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "headerCheckboxViewChild", first: true, predicate: ["headerchkbox"], descendants: true }, { propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "lastHiddenFocusableElement", first: true, predicate: ["lastHiddenFocusableElement"], descendants: true }, { propertyName: "firstHiddenFocusableElement", first: true, predicate: ["firstHiddenFocusableElement"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
1331
+ <span
1332
+ #firstHiddenFocusableElement
1333
+ role="presentation"
1334
+ class="p-hidden-accessible p-hidden-focusable"
1335
+ [tabindex]="!$disabled() ? tabindex : -1"
1336
+ (focus)="onFirstHiddenFocus($event)"
1337
+ [attr.data-p-hidden-focusable]="true"
1338
+ [pBind]="ptm('hiddenFirstFocusableElement')"
1339
+ >
1340
+ </span>
1341
+ <div [class]="cx('header')" *ngIf="headerFacet || headerTemplate || _headerTemplate" [pBind]="ptm('header')">
1258
1342
  <ng-content select="p-header"></ng-content>
1259
1343
  <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate; context: { $implicit: modelValue(), options: visibleOptions() }"></ng-container>
1260
1344
  </div>
1261
- <div [class]="cx('header')" *ngIf="(checkbox && multiple && showToggleAll) || filter">
1345
+ <div [class]="cx('header')" *ngIf="(checkbox && multiple && showToggleAll) || filter" [pBind]="ptm('header')">
1262
1346
  <p-checkbox
1263
1347
  #headerchkbox
1264
1348
  (onChange)="onToggleAll($event)"
@@ -1270,6 +1354,7 @@ class Listbox extends BaseEditableHolder {
1270
1354
  [variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
1271
1355
  [binary]="true"
1272
1356
  [attr.aria-label]="toggleAllAriaLabel"
1357
+ [pt]="ptm('pcCheckbox')"
1273
1358
  >
1274
1359
  <ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
1275
1360
  <ng-template #icon>
@@ -1282,7 +1367,7 @@ class Listbox extends BaseEditableHolder {
1282
1367
  </ng-container>
1283
1368
  <ng-template #builtInFilterElement>
1284
1369
  @if (filter) {
1285
- <p-iconfield>
1370
+ <p-iconfield [pt]="ptm('pcFilterContainer')" hostName="listbox">
1286
1371
  <input
1287
1372
  #filterInput
1288
1373
  pInputText
@@ -1299,23 +1384,36 @@ class Listbox extends BaseEditableHolder {
1299
1384
  (input)="onFilterChange($event)"
1300
1385
  (keydown)="onFilterKeyDown($event)"
1301
1386
  (blur)="onFilterBlur($event)"
1387
+ [pt]="ptm('pcFilter')"
1388
+ hostName="listbox"
1302
1389
  />
1303
- <p-inputicon>
1304
- <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [attr.aria-hidden]="true" />
1390
+ <p-inputicon [pt]="ptm('pcFilterIconContainer')">
1391
+ <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [attr.aria-hidden]="true" [pBind]="ptm('filterIcon')" />
1305
1392
  <span *ngIf="filterIconTemplate || _filterIconTemplate" [attr.aria-hidden]="true">
1306
1393
  <ng-template *ngTemplateOutlet="filterIconTemplate || _filterIconTemplate"></ng-template>
1307
1394
  </span>
1308
1395
  </p-inputicon>
1309
1396
  </p-iconfield>
1310
1397
  }
1311
- <span role="status" [attr.aria-live]="'polite'" class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
1398
+ <span role="status" [pBind]="ptm('hiddenFilterResult')" [attr.aria-live]="'polite'" class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
1312
1399
  {{ filterResultMessageText }}
1313
1400
  </span>
1314
1401
  </ng-template>
1315
1402
  </div>
1316
- <div #container [class]="cn(cx('listContainer'), listStyleClass)" [ngStyle]="listStyle" [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'">
1403
+ <div
1404
+ #container
1405
+ [class]="cn(cx('listContainer'), listStyleClass)"
1406
+ [ngStyle]="listStyle"
1407
+ [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'"
1408
+ cdkDropList
1409
+ [cdkDropListData]="cdkDropData()"
1410
+ (cdkDropListDropped)="drop($event)"
1411
+ (cdkDropListEntered)="onDragEntered()"
1412
+ (cdkDropListExited)="onDragExited()"
1413
+ [pBind]="ptm('listContainer')"
1414
+ >
1317
1415
  @if (hasFilter() && isEmpty()) {
1318
- <div [class]="cx('emptyMessage')" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
1416
+ <div [class]="cx('emptyMessage')" [pBind]="ptm('emptyMessage')">
1319
1417
  @if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
1320
1418
  {{ emptyFilterMessageText }}
1321
1419
  } @else {
@@ -1323,7 +1421,7 @@ class Listbox extends BaseEditableHolder {
1323
1421
  }
1324
1422
  </div>
1325
1423
  } @else if (!hasFilter() && isEmpty()) {
1326
- <div [class]="cx('emptyMessage')" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
1424
+ <div [class]="cx('emptyMessage')" [pBind]="ptm('emptyMessage')">
1327
1425
  @if (!emptyTemplate && !_emptyTemplate) {
1328
1426
  {{ emptyMessage }}
1329
1427
  } @else {
@@ -1332,6 +1430,8 @@ class Listbox extends BaseEditableHolder {
1332
1430
  </div>
1333
1431
  } @else {
1334
1432
  <p-scroller
1433
+ [pt]="ptm('virtualScroller')"
1434
+ hostName="listbox"
1335
1435
  #scroller
1336
1436
  *ngIf="virtualScroll"
1337
1437
  [items]="visibleOptions()"
@@ -1358,6 +1458,7 @@ class Listbox extends BaseEditableHolder {
1358
1458
 
1359
1459
  <ng-template #buildInItems let-items let-scrollerOptions="options">
1360
1460
  <ul
1461
+ #list
1361
1462
  [id]="id + '_list'"
1362
1463
  [class]="cx('list')"
1363
1464
  role="listbox"
@@ -1371,20 +1472,21 @@ class Listbox extends BaseEditableHolder {
1371
1472
  (focus)="onListFocus($event)"
1372
1473
  (blur)="onListBlur($event)"
1373
1474
  (keydown)="onListKeyDown($event)"
1374
- cdkDropList
1375
- [cdkDropListData]="items"
1376
- (cdkDropListDropped)="drop($event)"
1475
+ [pBind]="ptm('list')"
1377
1476
  >
1378
1477
  <ng-template ngFor let-option [ngForOf]="items" let-i="index">
1379
1478
  <ng-container *ngIf="isOptionGroup(option)">
1380
1479
  <li
1381
1480
  [attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
1382
1481
  [class]="cx('optionGroup')"
1482
+ [pBind]="getPTOptions(option.optionGroup, scrollerOptions, i, 'optionGroup')"
1383
1483
  [ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
1384
1484
  role="option"
1385
1485
  cdkDrag
1386
1486
  [cdkDragData]="option"
1387
1487
  [cdkDragDisabled]="!dragdrop"
1488
+ (cdkDragStarted)="isDragging.set(true)"
1489
+ (cdkDragEnded)="isDragging.set(false)"
1388
1490
  >
1389
1491
  <span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
1390
1492
  <ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
@@ -1402,8 +1504,10 @@ class Listbox extends BaseEditableHolder {
1402
1504
  [attr.aria-disabled]="isOptionDisabled(option)"
1403
1505
  [attr.aria-setsize]="ariaSetSize"
1404
1506
  [attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
1405
- [attr.data-pc-section]="'item'"
1406
1507
  [attr.data-p-selected]="isSelected(option)"
1508
+ [attr.data-p-focused]="focusedOptionIndex() === getOptionIndex(i, scrollerOptions)"
1509
+ [attr.data-p-disabled]="isOptionDisabled(option)"
1510
+ [pBind]="getPTOptions(option, scrollerOptions, i, 'option')"
1407
1511
  (click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
1408
1512
  (dblclick)="onOptionDoubleClick($event, option)"
1409
1513
  (mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
@@ -1412,6 +1516,8 @@ class Listbox extends BaseEditableHolder {
1412
1516
  cdkDrag
1413
1517
  [cdkDragData]="option"
1414
1518
  [cdkDragDisabled]="!dragdrop"
1519
+ (cdkDragStarted)="isDragging.set(true)"
1520
+ (cdkDragEnded)="isDragging.set(false)"
1415
1521
  >
1416
1522
  <p-checkbox
1417
1523
  *ngIf="checkbox && multiple"
@@ -1422,6 +1528,8 @@ class Listbox extends BaseEditableHolder {
1422
1528
  [tabindex]="-1"
1423
1529
  [variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
1424
1530
  [binary]="true"
1531
+ [pt]="ptm('pcCheckbox')"
1532
+ hostName="listbox"
1425
1533
  >
1426
1534
  <ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
1427
1535
  <ng-template #icon>
@@ -1431,8 +1539,8 @@ class Listbox extends BaseEditableHolder {
1431
1539
  </p-checkbox>
1432
1540
  <ng-container *ngIf="checkmark">
1433
1541
  <ng-container *ngIf="!checkmarkTemplate && !_checkmarkTemplate">
1434
- <svg data-p-icon="blank" *ngIf="!isSelected(option)" [class]="cx('optionBlankIcon')" />
1435
- <svg data-p-icon="check" *ngIf="isSelected(option)" [class]="cx('optionCheckIcon')" />
1542
+ <svg data-p-icon="blank" *ngIf="!isSelected(option)" [class]="cx('optionBlankIcon')" [pBind]="ptm('optionBlankIcon')" />
1543
+ <svg data-p-icon="check" *ngIf="isSelected(option)" [class]="cx('optionCheckIcon')" [pBind]="ptm('optionCheckIcon')" />
1436
1544
  </ng-container>
1437
1545
  <ng-container *ngTemplateOutlet="checkmarkTemplate || _checkmarkTemplate; context: { implicit: isSelected(option) }"></ng-container>
1438
1546
  </ng-container>
@@ -1459,28 +1567,46 @@ class Listbox extends BaseEditableHolder {
1459
1567
  <ng-content select="p-footer"></ng-content>
1460
1568
  <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate; context: { $implicit: modelValue(), options: visibleOptions() }"></ng-container>
1461
1569
  </div>
1462
- <span *ngIf="isEmpty()" role="status" aria-live="polite" class="p-hidden-accessible">
1570
+ <span *ngIf="isEmpty()" role="status" aria-live="polite" class="p-hidden-accessible" [pBind]="ptm('hiddenEmptyMessage')">
1463
1571
  {{ emptyMessage }}
1464
1572
  </span>
1465
- <span role="status" aria-live="polite" class="p-hidden-accessible">
1573
+ <span role="status" aria-live="polite" class="p-hidden-accessible" [pBind]="ptm('hiddenSelectedMessage')">
1466
1574
  {{ selectedMessageText }}
1467
1575
  </span>
1468
- <span #lastHiddenFocusableElement role="presentation" class="p-hidden-accessible p-hidden-focusable" [tabindex]="!$disabled() ? tabindex : -1" (focus)="onLastHiddenFocus($event)" [attr.data-p-hidden-focusable]="true"> </span>
1469
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: Scroller, selector: "p-scroller, p-virtualscroller, p-virtual-scroller, p-virtualScroller", 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: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["styleClass"] }, { kind: "component", type: SearchIcon, selector: "[data-p-icon=\"search\"]" }, { kind: "component", type: Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "component", type: CheckIcon, selector: "[data-p-icon=\"check\"]" }, { kind: "component", type: IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["iconPosition", "styleClass"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "component", type: BlankIcon, selector: "[data-p-icon=\"blank\"]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1576
+ <span
1577
+ #lastHiddenFocusableElement
1578
+ role="presentation"
1579
+ class="p-hidden-accessible p-hidden-focusable"
1580
+ [tabindex]="!$disabled() ? tabindex : -1"
1581
+ (focus)="onLastHiddenFocus($event)"
1582
+ [attr.data-p-hidden-focusable]="true"
1583
+ [pBind]="ptm('hiddenLastFocusableEl')"
1584
+ >
1585
+ </span>
1586
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: Scroller, selector: "p-scroller, p-virtualscroller, p-virtual-scroller, p-virtualScroller", inputs: ["hostName", "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: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "component", type: SearchIcon, selector: "[data-p-icon=\"search\"]" }, { kind: "component", type: Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["hostName", "value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "component", type: CheckIcon, selector: "[data-p-icon=\"check\"]" }, { kind: "component", type: IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "component", type: BlankIcon, selector: "[data-p-icon=\"blank\"]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i5.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i5.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i2.Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1470
1587
  }
1471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: Listbox, decorators: [{
1588
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Listbox, decorators: [{
1472
1589
  type: Component,
1473
1590
  args: [{
1474
1591
  selector: 'p-listbox, p-listBox, p-list-box',
1475
1592
  standalone: true,
1476
- imports: [CommonModule, Ripple, Scroller, InputIcon, SearchIcon, Checkbox, CheckIcon, IconField, InputText, BlankIcon, FormsModule, SharedModule, DragDropModule],
1593
+ imports: [CommonModule, Ripple, Scroller, InputIcon, SearchIcon, Checkbox, CheckIcon, IconField, InputText, BlankIcon, FormsModule, SharedModule, DragDropModule, BindModule],
1477
1594
  template: `
1478
- <span #firstHiddenFocusableElement role="presentation" class="p-hidden-accessible p-hidden-focusable" [tabindex]="!$disabled() ? tabindex : -1" (focus)="onFirstHiddenFocus($event)" [attr.data-p-hidden-focusable]="true"> </span>
1479
- <div [class]="cx('header')" *ngIf="headerFacet || headerTemplate || _headerTemplate">
1595
+ <span
1596
+ #firstHiddenFocusableElement
1597
+ role="presentation"
1598
+ class="p-hidden-accessible p-hidden-focusable"
1599
+ [tabindex]="!$disabled() ? tabindex : -1"
1600
+ (focus)="onFirstHiddenFocus($event)"
1601
+ [attr.data-p-hidden-focusable]="true"
1602
+ [pBind]="ptm('hiddenFirstFocusableElement')"
1603
+ >
1604
+ </span>
1605
+ <div [class]="cx('header')" *ngIf="headerFacet || headerTemplate || _headerTemplate" [pBind]="ptm('header')">
1480
1606
  <ng-content select="p-header"></ng-content>
1481
1607
  <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate; context: { $implicit: modelValue(), options: visibleOptions() }"></ng-container>
1482
1608
  </div>
1483
- <div [class]="cx('header')" *ngIf="(checkbox && multiple && showToggleAll) || filter">
1609
+ <div [class]="cx('header')" *ngIf="(checkbox && multiple && showToggleAll) || filter" [pBind]="ptm('header')">
1484
1610
  <p-checkbox
1485
1611
  #headerchkbox
1486
1612
  (onChange)="onToggleAll($event)"
@@ -1492,6 +1618,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1492
1618
  [variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
1493
1619
  [binary]="true"
1494
1620
  [attr.aria-label]="toggleAllAriaLabel"
1621
+ [pt]="ptm('pcCheckbox')"
1495
1622
  >
1496
1623
  <ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
1497
1624
  <ng-template #icon>
@@ -1504,7 +1631,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1504
1631
  </ng-container>
1505
1632
  <ng-template #builtInFilterElement>
1506
1633
  @if (filter) {
1507
- <p-iconfield>
1634
+ <p-iconfield [pt]="ptm('pcFilterContainer')" hostName="listbox">
1508
1635
  <input
1509
1636
  #filterInput
1510
1637
  pInputText
@@ -1521,23 +1648,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1521
1648
  (input)="onFilterChange($event)"
1522
1649
  (keydown)="onFilterKeyDown($event)"
1523
1650
  (blur)="onFilterBlur($event)"
1651
+ [pt]="ptm('pcFilter')"
1652
+ hostName="listbox"
1524
1653
  />
1525
- <p-inputicon>
1526
- <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [attr.aria-hidden]="true" />
1654
+ <p-inputicon [pt]="ptm('pcFilterIconContainer')">
1655
+ <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [attr.aria-hidden]="true" [pBind]="ptm('filterIcon')" />
1527
1656
  <span *ngIf="filterIconTemplate || _filterIconTemplate" [attr.aria-hidden]="true">
1528
1657
  <ng-template *ngTemplateOutlet="filterIconTemplate || _filterIconTemplate"></ng-template>
1529
1658
  </span>
1530
1659
  </p-inputicon>
1531
1660
  </p-iconfield>
1532
1661
  }
1533
- <span role="status" [attr.aria-live]="'polite'" class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
1662
+ <span role="status" [pBind]="ptm('hiddenFilterResult')" [attr.aria-live]="'polite'" class="p-hidden-accessible" [attr.data-p-hidden-accessible]="true">
1534
1663
  {{ filterResultMessageText }}
1535
1664
  </span>
1536
1665
  </ng-template>
1537
1666
  </div>
1538
- <div #container [class]="cn(cx('listContainer'), listStyleClass)" [ngStyle]="listStyle" [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'">
1667
+ <div
1668
+ #container
1669
+ [class]="cn(cx('listContainer'), listStyleClass)"
1670
+ [ngStyle]="listStyle"
1671
+ [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'"
1672
+ cdkDropList
1673
+ [cdkDropListData]="cdkDropData()"
1674
+ (cdkDropListDropped)="drop($event)"
1675
+ (cdkDropListEntered)="onDragEntered()"
1676
+ (cdkDropListExited)="onDragExited()"
1677
+ [pBind]="ptm('listContainer')"
1678
+ >
1539
1679
  @if (hasFilter() && isEmpty()) {
1540
- <div [class]="cx('emptyMessage')" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
1680
+ <div [class]="cx('emptyMessage')" [pBind]="ptm('emptyMessage')">
1541
1681
  @if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
1542
1682
  {{ emptyFilterMessageText }}
1543
1683
  } @else {
@@ -1545,7 +1685,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1545
1685
  }
1546
1686
  </div>
1547
1687
  } @else if (!hasFilter() && isEmpty()) {
1548
- <div [class]="cx('emptyMessage')" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
1688
+ <div [class]="cx('emptyMessage')" [pBind]="ptm('emptyMessage')">
1549
1689
  @if (!emptyTemplate && !_emptyTemplate) {
1550
1690
  {{ emptyMessage }}
1551
1691
  } @else {
@@ -1554,6 +1694,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1554
1694
  </div>
1555
1695
  } @else {
1556
1696
  <p-scroller
1697
+ [pt]="ptm('virtualScroller')"
1698
+ hostName="listbox"
1557
1699
  #scroller
1558
1700
  *ngIf="virtualScroll"
1559
1701
  [items]="visibleOptions()"
@@ -1580,6 +1722,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1580
1722
 
1581
1723
  <ng-template #buildInItems let-items let-scrollerOptions="options">
1582
1724
  <ul
1725
+ #list
1583
1726
  [id]="id + '_list'"
1584
1727
  [class]="cx('list')"
1585
1728
  role="listbox"
@@ -1593,20 +1736,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1593
1736
  (focus)="onListFocus($event)"
1594
1737
  (blur)="onListBlur($event)"
1595
1738
  (keydown)="onListKeyDown($event)"
1596
- cdkDropList
1597
- [cdkDropListData]="items"
1598
- (cdkDropListDropped)="drop($event)"
1739
+ [pBind]="ptm('list')"
1599
1740
  >
1600
1741
  <ng-template ngFor let-option [ngForOf]="items" let-i="index">
1601
1742
  <ng-container *ngIf="isOptionGroup(option)">
1602
1743
  <li
1603
1744
  [attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
1604
1745
  [class]="cx('optionGroup')"
1746
+ [pBind]="getPTOptions(option.optionGroup, scrollerOptions, i, 'optionGroup')"
1605
1747
  [ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
1606
1748
  role="option"
1607
1749
  cdkDrag
1608
1750
  [cdkDragData]="option"
1609
1751
  [cdkDragDisabled]="!dragdrop"
1752
+ (cdkDragStarted)="isDragging.set(true)"
1753
+ (cdkDragEnded)="isDragging.set(false)"
1610
1754
  >
1611
1755
  <span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
1612
1756
  <ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
@@ -1624,8 +1768,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1624
1768
  [attr.aria-disabled]="isOptionDisabled(option)"
1625
1769
  [attr.aria-setsize]="ariaSetSize"
1626
1770
  [attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
1627
- [attr.data-pc-section]="'item'"
1628
1771
  [attr.data-p-selected]="isSelected(option)"
1772
+ [attr.data-p-focused]="focusedOptionIndex() === getOptionIndex(i, scrollerOptions)"
1773
+ [attr.data-p-disabled]="isOptionDisabled(option)"
1774
+ [pBind]="getPTOptions(option, scrollerOptions, i, 'option')"
1629
1775
  (click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
1630
1776
  (dblclick)="onOptionDoubleClick($event, option)"
1631
1777
  (mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
@@ -1634,6 +1780,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1634
1780
  cdkDrag
1635
1781
  [cdkDragData]="option"
1636
1782
  [cdkDragDisabled]="!dragdrop"
1783
+ (cdkDragStarted)="isDragging.set(true)"
1784
+ (cdkDragEnded)="isDragging.set(false)"
1637
1785
  >
1638
1786
  <p-checkbox
1639
1787
  *ngIf="checkbox && multiple"
@@ -1644,6 +1792,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1644
1792
  [tabindex]="-1"
1645
1793
  [variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
1646
1794
  [binary]="true"
1795
+ [pt]="ptm('pcCheckbox')"
1796
+ hostName="listbox"
1647
1797
  >
1648
1798
  <ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
1649
1799
  <ng-template #icon>
@@ -1653,8 +1803,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1653
1803
  </p-checkbox>
1654
1804
  <ng-container *ngIf="checkmark">
1655
1805
  <ng-container *ngIf="!checkmarkTemplate && !_checkmarkTemplate">
1656
- <svg data-p-icon="blank" *ngIf="!isSelected(option)" [class]="cx('optionBlankIcon')" />
1657
- <svg data-p-icon="check" *ngIf="isSelected(option)" [class]="cx('optionCheckIcon')" />
1806
+ <svg data-p-icon="blank" *ngIf="!isSelected(option)" [class]="cx('optionBlankIcon')" [pBind]="ptm('optionBlankIcon')" />
1807
+ <svg data-p-icon="check" *ngIf="isSelected(option)" [class]="cx('optionCheckIcon')" [pBind]="ptm('optionCheckIcon')" />
1658
1808
  </ng-container>
1659
1809
  <ng-container *ngTemplateOutlet="checkmarkTemplate || _checkmarkTemplate; context: { implicit: isSelected(option) }"></ng-container>
1660
1810
  </ng-container>
@@ -1681,13 +1831,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1681
1831
  <ng-content select="p-footer"></ng-content>
1682
1832
  <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate; context: { $implicit: modelValue(), options: visibleOptions() }"></ng-container>
1683
1833
  </div>
1684
- <span *ngIf="isEmpty()" role="status" aria-live="polite" class="p-hidden-accessible">
1834
+ <span *ngIf="isEmpty()" role="status" aria-live="polite" class="p-hidden-accessible" [pBind]="ptm('hiddenEmptyMessage')">
1685
1835
  {{ emptyMessage }}
1686
1836
  </span>
1687
- <span role="status" aria-live="polite" class="p-hidden-accessible">
1837
+ <span role="status" aria-live="polite" class="p-hidden-accessible" [pBind]="ptm('hiddenSelectedMessage')">
1688
1838
  {{ selectedMessageText }}
1689
1839
  </span>
1690
- <span #lastHiddenFocusableElement role="presentation" class="p-hidden-accessible p-hidden-focusable" [tabindex]="!$disabled() ? tabindex : -1" (focus)="onLastHiddenFocus($event)" [attr.data-p-hidden-focusable]="true"> </span>
1840
+ <span
1841
+ #lastHiddenFocusableElement
1842
+ role="presentation"
1843
+ class="p-hidden-accessible p-hidden-focusable"
1844
+ [tabindex]="!$disabled() ? tabindex : -1"
1845
+ (focus)="onLastHiddenFocus($event)"
1846
+ [attr.data-p-hidden-focusable]="true"
1847
+ [pBind]="ptm('hiddenLastFocusableEl')"
1848
+ >
1849
+ </span>
1691
1850
  `,
1692
1851
  providers: [
1693
1852
  LISTBOX_VALUE_ACCESSOR,
@@ -1697,16 +1856,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1697
1856
  useValue: {
1698
1857
  zIndex: 1200
1699
1858
  }
1700
- }
1859
+ },
1860
+ { provide: LISTBOX_INSTANCE, useExisting: Listbox },
1861
+ { provide: PARENT_INSTANCE, useExisting: Listbox }
1701
1862
  ],
1702
1863
  changeDetection: ChangeDetectionStrategy.OnPush,
1703
1864
  encapsulation: ViewEncapsulation.None,
1704
1865
  host: {
1705
1866
  '[attr.id]': 'id',
1706
- '[class]': "cn(cx('root'), styleClass)"
1707
- }
1867
+ '[class]': "cn(cx('root'), styleClass, { 'p-listbox-dragging': isDragging() })"
1868
+ },
1869
+ hostDirectives: [Bind]
1708
1870
  }]
1709
- }], ctorParameters: () => [{ type: i1.FilterService }], propDecorators: { id: [{
1871
+ }], ctorParameters: () => [{ type: i1.FilterService }], propDecorators: { hostName: [{
1872
+ type: Input
1873
+ }], id: [{
1710
1874
  type: Input
1711
1875
  }], searchMessage: [{
1712
1876
  type: Input
@@ -1819,6 +1983,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1819
1983
  }], dragdrop: [{
1820
1984
  type: Input,
1821
1985
  args: [{ transform: booleanAttribute }]
1986
+ }], dropListData: [{
1987
+ type: Input
1822
1988
  }], onChange: [{
1823
1989
  type: Output
1824
1990
  }], onClick: [{
@@ -1905,11 +2071,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
1905
2071
  args: ['focusout', ['$event']]
1906
2072
  }] } });
1907
2073
  class ListboxModule {
1908
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1909
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule], exports: [Listbox, SharedModule] });
1910
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule, SharedModule] });
2074
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2075
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule], exports: [Listbox, SharedModule] });
2076
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule, SharedModule] });
1911
2077
  }
1912
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ListboxModule, decorators: [{
2078
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ListboxModule, decorators: [{
1913
2079
  type: NgModule,
1914
2080
  args: [{
1915
2081
  imports: [Listbox, SharedModule],