primeng 20.3.0 → 20.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (341) hide show
  1. package/LICENSE.md +1 -1
  2. package/contextmenu/index.d.ts +1 -0
  3. package/fesm2022/primeng-accordion.mjs +22 -22
  4. package/fesm2022/primeng-accordion.mjs.map +1 -1
  5. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  6. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  7. package/fesm2022/primeng-api.mjs +31 -31
  8. package/fesm2022/primeng-api.mjs.map +1 -1
  9. package/fesm2022/primeng-autocomplete.mjs +17 -14
  10. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  11. package/fesm2022/primeng-autofocus.mjs +7 -7
  12. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  13. package/fesm2022/primeng-avatar.mjs +10 -10
  14. package/fesm2022/primeng-avatar.mjs.map +1 -1
  15. package/fesm2022/primeng-avatargroup.mjs +10 -10
  16. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  17. package/fesm2022/primeng-badge.mjs +15 -15
  18. package/fesm2022/primeng-badge.mjs.map +1 -1
  19. package/fesm2022/primeng-base.mjs +3 -3
  20. package/fesm2022/primeng-base.mjs.map +1 -1
  21. package/fesm2022/primeng-basecomponent.mjs +7 -7
  22. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  23. package/fesm2022/primeng-baseeditableholder.mjs +4 -4
  24. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  25. package/fesm2022/primeng-baseinput.mjs +4 -4
  26. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  27. package/fesm2022/primeng-basemodelholder.mjs +3 -3
  28. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  29. package/fesm2022/primeng-bind.mjs +8 -8
  30. package/fesm2022/primeng-bind.mjs.map +1 -1
  31. package/fesm2022/primeng-blockui.mjs +10 -10
  32. package/fesm2022/primeng-blockui.mjs.map +1 -1
  33. package/fesm2022/primeng-breadcrumb.mjs +46 -28
  34. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  35. package/fesm2022/primeng-button.mjs +30 -28
  36. package/fesm2022/primeng-button.mjs.map +1 -1
  37. package/fesm2022/primeng-buttongroup.mjs +10 -10
  38. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  39. package/fesm2022/primeng-card.mjs +10 -10
  40. package/fesm2022/primeng-card.mjs.map +1 -1
  41. package/fesm2022/primeng-carousel.mjs +10 -10
  42. package/fesm2022/primeng-carousel.mjs.map +1 -1
  43. package/fesm2022/primeng-cascadeselect.mjs +15 -15
  44. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  45. package/fesm2022/primeng-chart.mjs +10 -10
  46. package/fesm2022/primeng-chart.mjs.map +1 -1
  47. package/fesm2022/primeng-checkbox.mjs +11 -11
  48. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  49. package/fesm2022/primeng-chip.mjs +10 -10
  50. package/fesm2022/primeng-chip.mjs.map +1 -1
  51. package/fesm2022/primeng-classnames.mjs +8 -8
  52. package/fesm2022/primeng-classnames.mjs.map +1 -1
  53. package/fesm2022/primeng-colorpicker.mjs +11 -11
  54. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  55. package/fesm2022/primeng-config.mjs +6 -6
  56. package/fesm2022/primeng-config.mjs.map +1 -1
  57. package/fesm2022/primeng-confirmdialog.mjs +10 -10
  58. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  59. package/fesm2022/primeng-confirmpopup.mjs +10 -10
  60. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  61. package/fesm2022/primeng-contextmenu.mjs +26 -20
  62. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  63. package/fesm2022/primeng-dataview.mjs +10 -10
  64. package/fesm2022/primeng-dataview.mjs.map +1 -1
  65. package/fesm2022/primeng-datepicker.mjs +11 -11
  66. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  67. package/fesm2022/primeng-dialog.mjs +11 -11
  68. package/fesm2022/primeng-dialog.mjs.map +1 -1
  69. package/fesm2022/primeng-divider.mjs +10 -10
  70. package/fesm2022/primeng-divider.mjs.map +1 -1
  71. package/fesm2022/primeng-dock.mjs +34 -22
  72. package/fesm2022/primeng-dock.mjs.map +1 -1
  73. package/fesm2022/primeng-dragdrop.mjs +10 -10
  74. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  75. package/fesm2022/primeng-drawer.mjs +10 -10
  76. package/fesm2022/primeng-drawer.mjs.map +1 -1
  77. package/fesm2022/primeng-dynamicdialog.mjs +16 -16
  78. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  79. package/fesm2022/primeng-editor.mjs +10 -10
  80. package/fesm2022/primeng-editor.mjs.map +1 -1
  81. package/fesm2022/primeng-fieldset.mjs +10 -10
  82. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  83. package/fesm2022/primeng-fileupload.mjs +14 -14
  84. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  85. package/fesm2022/primeng-floatlabel.mjs +10 -10
  86. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  87. package/fesm2022/primeng-fluid.mjs +10 -10
  88. package/fesm2022/primeng-fluid.mjs.map +1 -1
  89. package/fesm2022/primeng-focustrap.mjs +7 -7
  90. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  91. package/fesm2022/primeng-galleria.mjs +31 -28
  92. package/fesm2022/primeng-galleria.mjs.map +1 -1
  93. package/fesm2022/primeng-iconfield.mjs +10 -10
  94. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  95. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  96. package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
  97. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  98. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
  99. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  100. package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
  101. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  102. package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
  103. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  104. package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
  105. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  106. package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
  107. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  108. package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
  109. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  110. package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
  111. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  112. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  113. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  114. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
  115. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  116. package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
  117. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  118. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  119. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  120. package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
  121. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  122. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  123. package/fesm2022/primeng-icons-ban.mjs +3 -3
  124. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  125. package/fesm2022/primeng-icons-bars.mjs +3 -3
  126. package/fesm2022/primeng-icons-bars.mjs.map +1 -1
  127. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  128. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-blank.mjs +3 -3
  130. package/fesm2022/primeng-icons-blank.mjs.map +1 -1
  131. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  132. package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
  133. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  134. package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
  135. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  136. package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
  137. package/fesm2022/primeng-icons-check.mjs +3 -3
  138. package/fesm2022/primeng-icons-check.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  140. package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
  141. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  142. package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  144. package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
  145. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  146. package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
  147. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  148. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  149. package/fesm2022/primeng-icons-eye.mjs +3 -3
  150. package/fesm2022/primeng-icons-eye.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  152. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  153. package/fesm2022/primeng-icons-filter.mjs +3 -3
  154. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  155. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  156. package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
  157. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  158. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  159. package/fesm2022/primeng-icons-home.mjs +3 -3
  160. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  161. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  162. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  163. package/fesm2022/primeng-icons-minus.mjs +3 -3
  164. package/fesm2022/primeng-icons-minus.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  166. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-plus.mjs +3 -3
  168. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  169. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  170. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  171. package/fesm2022/primeng-icons-search.mjs +3 -3
  172. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  173. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  174. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  175. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  176. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  178. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  180. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  182. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  184. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-star.mjs +3 -3
  186. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  188. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  190. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-times.mjs +3 -3
  192. package/fesm2022/primeng-icons-times.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  194. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-trash.mjs +3 -3
  196. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-undo.mjs +3 -3
  198. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-upload.mjs +3 -3
  200. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  202. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  203. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  204. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  205. package/fesm2022/primeng-iftalabel.mjs +10 -10
  206. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  207. package/fesm2022/primeng-image.mjs +11 -11
  208. package/fesm2022/primeng-image.mjs.map +1 -1
  209. package/fesm2022/primeng-imagecompare.mjs +10 -10
  210. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  211. package/fesm2022/primeng-inplace.mjs +16 -16
  212. package/fesm2022/primeng-inplace.mjs.map +1 -1
  213. package/fesm2022/primeng-inputgroup.mjs +10 -10
  214. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  215. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  216. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  217. package/fesm2022/primeng-inputicon.mjs +10 -10
  218. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  219. package/fesm2022/primeng-inputmask.mjs +11 -10
  220. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  221. package/fesm2022/primeng-inputnumber.mjs +10 -10
  222. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  223. package/fesm2022/primeng-inputotp.mjs +19 -13
  224. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  225. package/fesm2022/primeng-inputtext.mjs +12 -12
  226. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  227. package/fesm2022/primeng-keyfilter.mjs +7 -7
  228. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  229. package/fesm2022/primeng-knob.mjs +25 -25
  230. package/fesm2022/primeng-knob.mjs.map +1 -1
  231. package/fesm2022/primeng-listbox.mjs +14 -13
  232. package/fesm2022/primeng-listbox.mjs.map +1 -1
  233. package/fesm2022/primeng-megamenu.mjs +59 -33
  234. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  235. package/fesm2022/primeng-menu.mjs +20 -20
  236. package/fesm2022/primeng-menu.mjs.map +1 -1
  237. package/fesm2022/primeng-menubar.mjs +57 -35
  238. package/fesm2022/primeng-menubar.mjs.map +1 -1
  239. package/fesm2022/primeng-message.mjs +10 -10
  240. package/fesm2022/primeng-message.mjs.map +1 -1
  241. package/fesm2022/primeng-metergroup.mjs +13 -13
  242. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  243. package/fesm2022/primeng-multiselect.mjs +14 -14
  244. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  245. package/fesm2022/primeng-orderlist.mjs +10 -10
  246. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  247. package/fesm2022/primeng-organizationchart.mjs +13 -13
  248. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  249. package/fesm2022/primeng-overlay.mjs +12 -12
  250. package/fesm2022/primeng-overlay.mjs.map +1 -1
  251. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  252. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  253. package/fesm2022/primeng-paginator.mjs +11 -11
  254. package/fesm2022/primeng-paginator.mjs.map +1 -1
  255. package/fesm2022/primeng-panel.mjs +10 -10
  256. package/fesm2022/primeng-panel.mjs.map +1 -1
  257. package/fesm2022/primeng-panelmenu.mjs +48 -24
  258. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  259. package/fesm2022/primeng-password.mjs +18 -18
  260. package/fesm2022/primeng-password.mjs.map +1 -1
  261. package/fesm2022/primeng-picklist.mjs +84 -92
  262. package/fesm2022/primeng-picklist.mjs.map +1 -1
  263. package/fesm2022/primeng-popover.mjs +10 -10
  264. package/fesm2022/primeng-popover.mjs.map +1 -1
  265. package/fesm2022/primeng-progressbar.mjs +10 -10
  266. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  267. package/fesm2022/primeng-progressspinner.mjs +10 -10
  268. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  269. package/fesm2022/primeng-radiobutton.mjs +14 -14
  270. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  271. package/fesm2022/primeng-rating.mjs +10 -10
  272. package/fesm2022/primeng-rating.mjs.map +1 -1
  273. package/fesm2022/primeng-ripple.mjs +10 -10
  274. package/fesm2022/primeng-ripple.mjs.map +1 -1
  275. package/fesm2022/primeng-scroller.mjs +11 -11
  276. package/fesm2022/primeng-scroller.mjs.map +1 -1
  277. package/fesm2022/primeng-scrollpanel.mjs +10 -10
  278. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  279. package/fesm2022/primeng-scrolltop.mjs +10 -10
  280. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  281. package/fesm2022/primeng-select.mjs +14 -14
  282. package/fesm2022/primeng-select.mjs.map +1 -1
  283. package/fesm2022/primeng-selectbutton.mjs +11 -11
  284. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  285. package/fesm2022/primeng-skeleton.mjs +10 -10
  286. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  287. package/fesm2022/primeng-slider.mjs +10 -10
  288. package/fesm2022/primeng-slider.mjs.map +1 -1
  289. package/fesm2022/primeng-speeddial.mjs +10 -10
  290. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  291. package/fesm2022/primeng-splitbutton.mjs +10 -10
  292. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  293. package/fesm2022/primeng-splitter.mjs +11 -11
  294. package/fesm2022/primeng-splitter.mjs.map +1 -1
  295. package/fesm2022/primeng-stepper.mjs +50 -49
  296. package/fesm2022/primeng-stepper.mjs.map +1 -1
  297. package/fesm2022/primeng-steps.mjs +10 -10
  298. package/fesm2022/primeng-steps.mjs.map +1 -1
  299. package/fesm2022/primeng-styleclass.mjs +7 -7
  300. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  301. package/fesm2022/primeng-table.mjs +99 -91
  302. package/fesm2022/primeng-table.mjs.map +1 -1
  303. package/fesm2022/primeng-tabs.mjs +37 -37
  304. package/fesm2022/primeng-tabs.mjs.map +1 -1
  305. package/fesm2022/primeng-tag.mjs +10 -10
  306. package/fesm2022/primeng-tag.mjs.map +1 -1
  307. package/fesm2022/primeng-terminal.mjs +13 -13
  308. package/fesm2022/primeng-terminal.mjs.map +1 -1
  309. package/fesm2022/primeng-textarea.mjs +11 -11
  310. package/fesm2022/primeng-textarea.mjs.map +1 -1
  311. package/fesm2022/primeng-tieredmenu.mjs +23 -19
  312. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  313. package/fesm2022/primeng-timeline.mjs +10 -10
  314. package/fesm2022/primeng-timeline.mjs.map +1 -1
  315. package/fesm2022/primeng-toast.mjs +13 -13
  316. package/fesm2022/primeng-toast.mjs.map +1 -1
  317. package/fesm2022/primeng-togglebutton.mjs +11 -11
  318. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  319. package/fesm2022/primeng-toggleswitch.mjs +11 -11
  320. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  321. package/fesm2022/primeng-toolbar.mjs +10 -10
  322. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  323. package/fesm2022/primeng-tooltip.mjs +12 -12
  324. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  325. package/fesm2022/primeng-tree.mjs +157 -86
  326. package/fesm2022/primeng-tree.mjs.map +1 -1
  327. package/fesm2022/primeng-treeselect.mjs +22 -13
  328. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  329. package/fesm2022/primeng-treetable.mjs +69 -61
  330. package/fesm2022/primeng-treetable.mjs.map +1 -1
  331. package/fesm2022/primeng-usestyle.mjs +3 -3
  332. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  333. package/galleria/index.d.ts +1 -0
  334. package/knob/index.d.ts +1 -1
  335. package/megamenu/index.d.ts +4 -2
  336. package/menubar/index.d.ts +2 -1
  337. package/package.json +403 -403
  338. package/picklist/index.d.ts +4 -4
  339. package/tree/index.d.ts +44 -26
  340. package/treeselect/index.d.ts +6 -1
  341. package/treetable/index.d.ts +1 -1
@@ -2,10 +2,10 @@ export * from 'primeng/types/tree';
2
2
  import * as i1 from '@angular/common';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { Injectable, InjectionToken, inject, forwardRef, signal, computed, numberAttribute, booleanAttribute, Input, ViewEncapsulation, Component, EventEmitter, HostListener, ContentChildren, ViewChild, ContentChild, Output, Optional, ChangeDetectionStrategy, NgModule } from '@angular/core';
5
+ import { Injectable, InjectionToken, inject, forwardRef, signal, computed, numberAttribute, booleanAttribute, Input, ViewEncapsulation, Component, model, EventEmitter, HostListener, ContentChildren, ViewChild, ContentChild, Output, Optional, ChangeDetectionStrategy, NgModule } from '@angular/core';
6
6
  import * as i2 from '@angular/forms';
7
7
  import { FormsModule } from '@angular/forms';
8
- import { getOuterWidth, getOuterHeight, find, hasClass, findSingle, focus, removeAccents, resolveFieldData } from '@primeuix/utils';
8
+ import { getOuterWidth, getOuterHeight, find, findSingle, focus, removeAccents, resolveFieldData } from '@primeuix/utils';
9
9
  import * as i4 from 'primeng/api';
10
10
  import { SharedModule, TranslationKeys, PrimeTemplate } from 'primeng/api';
11
11
  import * as i5 from 'primeng/autofocus';
@@ -58,10 +58,10 @@ class TreeStyle extends BaseStyle {
58
58
  name = 'tree';
59
59
  style = style;
60
60
  classes = classes;
61
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
62
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeStyle });
61
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
62
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeStyle });
63
63
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeStyle, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeStyle, decorators: [{
65
65
  type: Injectable
66
66
  }] });
67
67
  /**
@@ -167,11 +167,32 @@ class UITreeNode extends BaseComponent {
167
167
  isNodeDropActive = computed(() => this.isNodeDropHovered() && this.isNodeDroppable(), ...(ngDevMode ? [{ debugName: "isNodeDropActive" }] : []));
168
168
  dropPosition = computed(() => (this.isPrevDropPointActive() ? -1 : this.isNextDropPointActive() ? 1 : 0), ...(ngDevMode ? [{ debugName: "dropPosition" }] : []));
169
169
  _componentStyle = inject(TreeStyle);
170
+ /**
171
+ * Computed signal that reactively tracks selection state.
172
+ */
173
+ _selected = computed(() => {
174
+ // Reading selection() makes this computed reactive to selection changes
175
+ this.tree.selection();
176
+ return this.tree.isSelected(this.node);
177
+ }, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
178
+ /**
179
+ * Computed signal that reactively tracks context menu selection state.
180
+ */
181
+ _contextMenuSelected = computed(() => {
182
+ const selection = this.tree.contextMenuSelection();
183
+ if (!selection || !this.node) {
184
+ return false;
185
+ }
186
+ return selection === this.node || (selection.key && selection.key === this.node.key);
187
+ }, ...(ngDevMode ? [{ debugName: "_contextMenuSelected" }] : []));
170
188
  get selected() {
171
- return this.tree.selectionMode === 'single' || this.tree.selectionMode === 'multiple' ? this.isSelected() : undefined;
189
+ return this.tree.selectionMode === 'single' || this.tree.selectionMode === 'multiple' ? this._selected() : undefined;
172
190
  }
173
191
  get checked() {
174
- return this.tree.selectionMode === 'checkbox' ? this.isSelected() : undefined;
192
+ return this.tree.selectionMode === 'checkbox' ? this._selected() : undefined;
193
+ }
194
+ get contextMenuSelected() {
195
+ return this._contextMenuSelected();
175
196
  }
176
197
  get nodeClass() {
177
198
  return this.tree._componentStyle.classes.node({ instance: this });
@@ -191,6 +212,7 @@ class UITreeNode extends BaseComponent {
191
212
  selected: this.selected,
192
213
  checked: this.checked,
193
214
  partialChecked: this.node?.partialSelected,
215
+ contextMenuSelected: this.contextMenuSelected,
194
216
  leaf: this.isLeaf()
195
217
  }
196
218
  });
@@ -216,7 +238,10 @@ class UITreeNode extends BaseComponent {
216
238
  return this.tree.isNodeLeaf(this.node);
217
239
  }
218
240
  isSelected() {
219
- return this.tree.isSelected(this.node);
241
+ return this._selected();
242
+ }
243
+ isContextMenuSelected() {
244
+ return this._contextMenuSelected();
220
245
  }
221
246
  isSameNode(event) {
222
247
  return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[role="treeitem"]')));
@@ -504,7 +529,7 @@ class UITreeNode extends BaseComponent {
504
529
  event.preventDefault();
505
530
  }
506
531
  setAllNodesTabIndexes() {
507
- const nodes = find(this.tree.el.nativeElement, '.p-tree-node');
532
+ const nodes = find(this.tree.el.nativeElement, '[data-pc-section="node"]');
508
533
  const hasSelectedNode = [...nodes].some((node) => node.getAttribute('aria-selected') === 'true' || node.getAttribute('aria-checked') === 'true');
509
534
  [...nodes].forEach((node) => {
510
535
  node.tabIndex = -1;
@@ -540,7 +565,7 @@ class UITreeNode extends BaseComponent {
540
565
  }
541
566
  }
542
567
  findLastVisibleDescendant(nodeElement) {
543
- const listElement = Array.from(nodeElement.children).find((el) => hasClass(el, 'p-tree-node'));
568
+ const listElement = Array.from(nodeElement.children).find((el) => el.getAttribute('data-pc-section') === 'node');
544
569
  const childrenListElement = listElement?.children[1];
545
570
  if (childrenListElement && childrenListElement.children.length > 0) {
546
571
  const lastChildElement = childrenListElement.children[childrenListElement.children.length - 1];
@@ -571,8 +596,8 @@ class UITreeNode extends BaseComponent {
571
596
  focus(node);
572
597
  }, 1);
573
598
  }
574
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: UITreeNode, deps: null, target: i0.ɵɵFactoryTarget.Component });
575
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: UITreeNode, isStandalone: true, selector: "p-treeNode", inputs: { rowNode: "rowNode", node: "node", parentNode: "parentNode", root: ["root", "root", booleanAttribute], index: ["index", "index", numberAttribute], firstChild: ["firstChild", "firstChild", booleanAttribute], lastChild: ["lastChild", "lastChild", booleanAttribute], level: ["level", "level", numberAttribute], indentation: ["indentation", "indentation", numberAttribute], itemSize: ["itemSize", "itemSize", numberAttribute], loadingMode: "loadingMode" }, providers: [TreeStyle, { provide: TREENODE_INSTANCE, useExisting: UITreeNode }, { provide: PARENT_INSTANCE, useExisting: UITreeNode }], usesInheritance: true, ngImport: i0, template: `
599
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITreeNode, deps: null, target: i0.ɵɵFactoryTarget.Component });
600
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: UITreeNode, isStandalone: true, selector: "p-treeNode", inputs: { rowNode: "rowNode", node: "node", parentNode: "parentNode", root: ["root", "root", booleanAttribute], index: ["index", "index", numberAttribute], firstChild: ["firstChild", "firstChild", booleanAttribute], lastChild: ["lastChild", "lastChild", booleanAttribute], level: ["level", "level", numberAttribute], indentation: ["indentation", "indentation", numberAttribute], itemSize: ["itemSize", "itemSize", numberAttribute], loadingMode: "loadingMode" }, providers: [TreeStyle, { provide: TREENODE_INSTANCE, useExisting: UITreeNode }, { provide: PARENT_INSTANCE, useExisting: UITreeNode }], usesInheritance: true, ngImport: i0, template: `
576
601
  @if (node) {
577
602
  <li
578
603
  [class]="cn(cx('node'), node.styleClass)"
@@ -675,13 +700,15 @@ class UITreeNode extends BaseComponent {
675
700
  [itemSize]="itemSize"
676
701
  [level]="level + 1"
677
702
  [loadingMode]="loadingMode"
703
+ [pt]="pt"
704
+ [unstyled]="unstyled()"
678
705
  ></p-treeNode>
679
706
  </ul>
680
707
  </li>
681
708
  }
682
709
  `, isInline: true, dependencies: [{ kind: "component", type: UITreeNode, selector: "p-treeNode", inputs: ["rowNode", "node", "parentNode", "root", "index", "firstChild", "lastChild", "level", "indentation", "itemSize", "loadingMode"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { 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: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-right\"]" }, { kind: "component", type: ChevronDownIcon, selector: "[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: SpinnerIcon, selector: "[data-p-icon=\"spinner\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "directive", type: i3.Bind, selector: "[pBind]", inputs: ["pBind"] }], encapsulation: i0.ViewEncapsulation.None });
683
710
  }
684
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: UITreeNode, decorators: [{
711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UITreeNode, decorators: [{
685
712
  type: Component,
686
713
  args: [{
687
714
  selector: 'p-treeNode',
@@ -790,6 +817,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
790
817
  [itemSize]="itemSize"
791
818
  [level]="level + 1"
792
819
  [loadingMode]="loadingMode"
820
+ [pt]="pt"
821
+ [unstyled]="unstyled()"
793
822
  ></p-treeNode>
794
823
  </ul>
795
824
  </li>
@@ -858,7 +887,7 @@ class Tree extends BaseComponent {
858
887
  * A single treenode instance or an array to refer to the selections.
859
888
  * @group Props
860
889
  */
861
- selection;
890
+ selection = model(null, ...(ngDevMode ? [{ debugName: "selection" }] : []));
862
891
  /**
863
892
  * Style class of the component.
864
893
  * @deprecated since v20.0.0, use `class` instead.
@@ -870,6 +899,18 @@ class Tree extends BaseComponent {
870
899
  * @group Props
871
900
  */
872
901
  contextMenu;
902
+ /**
903
+ * Defines how the context menu selection behaves.
904
+ * When set to 'separate', context menu selection is handled independently from the main selection.
905
+ * When set to 'joint', context menu selection also updates the main selection.
906
+ * @group Props
907
+ */
908
+ contextMenuSelectionMode = 'separate';
909
+ /**
910
+ * A single treenode instance to refer to the context menu selection.
911
+ * @group Props
912
+ */
913
+ contextMenuSelection = model(null, ...(ngDevMode ? [{ debugName: "contextMenuSelection" }] : []));
873
914
  /**
874
915
  * Scope of the draggable nodes to match a droppableScope.
875
916
  * @group Props
@@ -1025,12 +1066,6 @@ class Tree extends BaseComponent {
1025
1066
  * @group Props
1026
1067
  */
1027
1068
  highlightOnSelect = false;
1028
- /**
1029
- * Callback to invoke on selection change.
1030
- * @param {(TreeNode<any> | TreeNode<any>[] | null)} event - Custom selection change event.
1031
- * @group Emits
1032
- */
1033
- selectionChange = new EventEmitter();
1034
1069
  /**
1035
1070
  * Callback to invoke when a node is selected.
1036
1071
  * @param {TreeNodeSelectEvent} event - Node select event.
@@ -1126,7 +1161,7 @@ class Tree extends BaseComponent {
1126
1161
  * Empty message template.
1127
1162
  * @group Templates
1128
1163
  */
1129
- emptyMessageTemplate;
1164
+ emptyTemplate;
1130
1165
  /**
1131
1166
  * Toggler icon template.
1132
1167
  * @group Templates
@@ -1153,7 +1188,7 @@ class Tree extends BaseComponent {
1153
1188
  contentViewChild;
1154
1189
  templates;
1155
1190
  _headerTemplate;
1156
- _emptyMessageTemplate;
1191
+ _emptyTemplate;
1157
1192
  _footerTemplate;
1158
1193
  _loaderTemplate;
1159
1194
  _togglerIconTemplate;
@@ -1171,7 +1206,7 @@ class Tree extends BaseComponent {
1171
1206
  this._headerTemplate = item.template;
1172
1207
  break;
1173
1208
  case 'empty':
1174
- this._emptyMessageTemplate = item.template;
1209
+ this._emptyTemplate = item.template;
1175
1210
  break;
1176
1211
  case 'footer':
1177
1212
  this._footerTemplate = item.template;
@@ -1286,10 +1321,11 @@ class Tree extends BaseComponent {
1286
1321
  }
1287
1322
  onNodeClick(event, node) {
1288
1323
  let eventTarget = event.target;
1289
- if (hasClass(eventTarget, 'p-tree-toggler') || hasClass(eventTarget, 'p-tree-toggler-icon')) {
1324
+ const section = eventTarget?.getAttribute?.('data-pc-section');
1325
+ if (section === 'nodetogglebutton' || section === 'nodetoggleicon') {
1290
1326
  return;
1291
1327
  }
1292
- else if (this.selectionMode) {
1328
+ if (this.selectionMode) {
1293
1329
  if (node.selectable === false) {
1294
1330
  node.style = '--p-focus-ring-color: none;';
1295
1331
  return;
@@ -1307,27 +1343,26 @@ class Tree extends BaseComponent {
1307
1343
  }
1308
1344
  let index = this.findIndexInSelection(node);
1309
1345
  let selected = index >= 0;
1346
+ const currentSelection = this.selection();
1310
1347
  if (this.isCheckboxSelectionMode()) {
1311
1348
  if (selected) {
1312
1349
  if (this.propagateSelectionDown)
1313
1350
  this.propagateDown(node, false);
1314
1351
  else
1315
- this.selection = this.selection.filter((val, i) => i != index);
1352
+ this.selection.set(currentSelection.filter((_val, i) => i != index));
1316
1353
  if (this.propagateSelectionUp && node.parent) {
1317
1354
  this.propagateUp(node.parent, false);
1318
1355
  }
1319
- this.selectionChange.emit(this.selection);
1320
1356
  this.onNodeUnselect.emit({ originalEvent: event, node: node });
1321
1357
  }
1322
1358
  else {
1323
1359
  if (this.propagateSelectionDown)
1324
1360
  this.propagateDown(node, true);
1325
1361
  else
1326
- this.selection = [...(this.selection || []), node];
1362
+ this.selection.set([...(currentSelection || []), node]);
1327
1363
  if (this.propagateSelectionUp && node.parent) {
1328
1364
  this.propagateUp(node.parent, true);
1329
1365
  }
1330
- this.selectionChange.emit(this.selection);
1331
1366
  this.onNodeSelect.emit({ originalEvent: event, node: node });
1332
1367
  }
1333
1368
  }
@@ -1337,22 +1372,20 @@ class Tree extends BaseComponent {
1337
1372
  let metaKey = event.metaKey || event.ctrlKey;
1338
1373
  if (selected && metaKey) {
1339
1374
  if (this.isSingleSelectionMode()) {
1340
- this.selectionChange.emit(null);
1375
+ this.selection.set(null);
1341
1376
  }
1342
1377
  else {
1343
- this.selection = this.selection.filter((val, i) => i != index);
1344
- this.selectionChange.emit(this.selection);
1378
+ this.selection.set(currentSelection.filter((_val, i) => i != index));
1345
1379
  }
1346
1380
  this.onNodeUnselect.emit({ originalEvent: event, node: node });
1347
1381
  }
1348
1382
  else {
1349
1383
  if (this.isSingleSelectionMode()) {
1350
- this.selectionChange.emit(node);
1384
+ this.selection.set(node);
1351
1385
  }
1352
1386
  else if (this.isMultipleSelectionMode()) {
1353
- this.selection = !metaKey ? [] : this.selection || [];
1354
- this.selection = [...this.selection, node];
1355
- this.selectionChange.emit(this.selection);
1387
+ const base = !metaKey ? [] : currentSelection || [];
1388
+ this.selection.set([...base, node]);
1356
1389
  }
1357
1390
  this.onNodeSelect.emit({ originalEvent: event, node: node });
1358
1391
  }
@@ -1360,11 +1393,11 @@ class Tree extends BaseComponent {
1360
1393
  else {
1361
1394
  if (this.isSingleSelectionMode()) {
1362
1395
  if (selected) {
1363
- this.selection = null;
1396
+ this.selection.set(null);
1364
1397
  this.onNodeUnselect.emit({ originalEvent: event, node: node });
1365
1398
  }
1366
1399
  else {
1367
- this.selection = node;
1400
+ this.selection.set(node);
1368
1401
  setTimeout(() => {
1369
1402
  this.onNodeSelect.emit({ originalEvent: event, node: node });
1370
1403
  });
@@ -1372,17 +1405,16 @@ class Tree extends BaseComponent {
1372
1405
  }
1373
1406
  else {
1374
1407
  if (selected) {
1375
- this.selection = this.selection.filter((val, i) => i != index);
1408
+ this.selection.set(currentSelection.filter((_val, i) => i != index));
1376
1409
  this.onNodeUnselect.emit({ originalEvent: event, node: node });
1377
1410
  }
1378
1411
  else {
1379
- this.selection = [...(this.selection || []), node];
1412
+ this.selection.set([...(currentSelection || []), node]);
1380
1413
  setTimeout(() => {
1381
1414
  this.onNodeSelect.emit({ originalEvent: event, node: node });
1382
1415
  });
1383
1416
  }
1384
1417
  }
1385
- this.selectionChange.emit(this.selection);
1386
1418
  }
1387
1419
  }
1388
1420
  }
@@ -1394,20 +1426,36 @@ class Tree extends BaseComponent {
1394
1426
  onNodeRightClick(event, node) {
1395
1427
  if (this.contextMenu) {
1396
1428
  let eventTarget = event.target;
1397
- if (eventTarget.className && eventTarget.className.indexOf('p-tree-toggler') === 0) {
1429
+ const section = eventTarget.getAttribute('data-pc-section');
1430
+ if (section === 'nodetogglebutton' || section === 'nodetoggleicon') {
1398
1431
  return;
1399
1432
  }
1400
- else {
1401
- let index = this.findIndexInSelection(node);
1402
- let selected = index >= 0;
1403
- if (!selected) {
1404
- if (this.isSingleSelectionMode())
1405
- this.selectionChange.emit(node);
1406
- else
1407
- this.selectionChange.emit([node]);
1408
- }
1433
+ let index = this.findIndexInSelection(node);
1434
+ let isNodeSelected = index >= 0;
1435
+ const onContextMenuCallback = () => {
1409
1436
  this.contextMenu.show(event);
1437
+ this.contextMenu.hideCallback = () => {
1438
+ this.contextMenuSelection.set(null);
1439
+ };
1410
1440
  this.onNodeContextMenuSelect.emit({ originalEvent: event, node: node });
1441
+ };
1442
+ if (this.contextMenuSelectionMode === 'separate') {
1443
+ // In 'separate' mode: Update contextMenuSelection with clicked node, don't modify selection
1444
+ this.contextMenuSelection.set(node);
1445
+ onContextMenuCallback();
1446
+ }
1447
+ else if (this.contextMenuSelectionMode === 'joint') {
1448
+ // In 'joint' mode: Update only selection, don't touch contextMenuSelection
1449
+ if (!isNodeSelected) {
1450
+ if (this.isSingleSelectionMode()) {
1451
+ this.selection.set(node);
1452
+ }
1453
+ else {
1454
+ this.selection.set([node]);
1455
+ }
1456
+ }
1457
+ // If already selected, keep current selection as is
1458
+ onContextMenuCallback();
1411
1459
  }
1412
1460
  }
1413
1461
  }
@@ -1416,14 +1464,17 @@ class Tree extends BaseComponent {
1416
1464
  }
1417
1465
  findIndexInSelection(node) {
1418
1466
  let index = -1;
1419
- if (this.selectionMode && this.selection) {
1467
+ const currentSelection = this.selection();
1468
+ if (this.selectionMode && currentSelection) {
1420
1469
  if (this.isSingleSelectionMode()) {
1421
- let areNodesEqual = (this.selection.key && this.selection.key === node.key) || this.selection == node;
1470
+ const sel = currentSelection;
1471
+ let areNodesEqual = (sel.key && sel.key === node.key) || sel == node;
1422
1472
  index = areNodesEqual ? 0 : -1;
1423
1473
  }
1424
1474
  else {
1425
- for (let i = 0; i < this.selection.length; i++) {
1426
- let selectedNode = this.selection[i];
1475
+ const selArray = currentSelection;
1476
+ for (let i = 0; i < selArray.length; i++) {
1477
+ let selectedNode = selArray[i];
1427
1478
  let areNodesEqual = (selectedNode.key && selectedNode.key === node.key) || selectedNode == node;
1428
1479
  if (areNodesEqual) {
1429
1480
  index = i;
@@ -1472,15 +1523,16 @@ class Tree extends BaseComponent {
1472
1523
  childPartialSelected = true;
1473
1524
  }
1474
1525
  }
1526
+ const currentSelection = this.selection() || [];
1475
1527
  if (select && selectedCount == node.children.length) {
1476
- this.selection = [...(this.selection || []), node];
1528
+ this.selection.set([...currentSelection, node]);
1477
1529
  node.partialSelected = false;
1478
1530
  }
1479
1531
  else {
1480
1532
  if (!select) {
1481
1533
  let index = this.findIndexInSelection(node);
1482
1534
  if (index >= 0) {
1483
- this.selection = this.selection.filter((val, i) => i != index);
1535
+ this.selection.set(currentSelection.filter((_val, i) => i != index));
1484
1536
  }
1485
1537
  }
1486
1538
  if (childPartialSelected || (selectedCount > 0 && selectedCount != node.children.length))
@@ -1497,11 +1549,12 @@ class Tree extends BaseComponent {
1497
1549
  }
1498
1550
  propagateDown(node, select) {
1499
1551
  let index = this.findIndexInSelection(node);
1552
+ const currentSelection = this.selection() || [];
1500
1553
  if (select && index == -1) {
1501
- this.selection = [...(this.selection || []), node];
1554
+ this.selection.set([...currentSelection, node]);
1502
1555
  }
1503
1556
  else if (!select && index > -1) {
1504
- this.selection = this.selection.filter((val, i) => i != index);
1557
+ this.selection.set(currentSelection.filter((_val, i) => i != index));
1505
1558
  }
1506
1559
  node.partialSelected = false;
1507
1560
  this.syncNodeOption(node, this.filteredNodes, 'partialSelected');
@@ -1768,9 +1821,20 @@ class Tree extends BaseComponent {
1768
1821
  this.dragStopSubscription.unsubscribe();
1769
1822
  }
1770
1823
  }
1771
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Tree, deps: [{ token: i4.TreeDragDropService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1772
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: Tree, isStandalone: true, selector: "p-tree", inputs: { value: "value", selectionMode: "selectionMode", loadingMode: "loadingMode", selection: "selection", styleClass: "styleClass", contextMenu: "contextMenu", draggableScope: "draggableScope", droppableScope: "droppableScope", draggableNodes: ["draggableNodes", "draggableNodes", booleanAttribute], droppableNodes: ["droppableNodes", "droppableNodes", booleanAttribute], metaKeySelection: ["metaKeySelection", "metaKeySelection", booleanAttribute], propagateSelectionUp: ["propagateSelectionUp", "propagateSelectionUp", booleanAttribute], propagateSelectionDown: ["propagateSelectionDown", "propagateSelectionDown", booleanAttribute], loading: ["loading", "loading", booleanAttribute], loadingIcon: "loadingIcon", emptyMessage: "emptyMessage", ariaLabel: "ariaLabel", togglerAriaLabel: "togglerAriaLabel", ariaLabelledBy: "ariaLabelledBy", validateDrop: ["validateDrop", "validateDrop", booleanAttribute], filter: ["filter", "filter", booleanAttribute], filterInputAutoFocus: ["filterInputAutoFocus", "filterInputAutoFocus", booleanAttribute], filterBy: "filterBy", filterMode: "filterMode", filterOptions: "filterOptions", filterPlaceholder: "filterPlaceholder", filteredNodes: "filteredNodes", filterLocale: "filterLocale", scrollHeight: "scrollHeight", lazy: ["lazy", "lazy", booleanAttribute], virtualScroll: ["virtualScroll", "virtualScroll", booleanAttribute], virtualScrollItemSize: ["virtualScrollItemSize", "virtualScrollItemSize", numberAttribute], virtualScrollOptions: "virtualScrollOptions", indentation: ["indentation", "indentation", numberAttribute], _templateMap: "_templateMap", trackBy: "trackBy", highlightOnSelect: ["highlightOnSelect", "highlightOnSelect", booleanAttribute] }, outputs: { selectionChange: "selectionChange", onNodeSelect: "onNodeSelect", onNodeUnselect: "onNodeUnselect", onNodeExpand: "onNodeExpand", onNodeCollapse: "onNodeCollapse", onNodeContextMenuSelect: "onNodeContextMenuSelect", onNodeDoubleClick: "onNodeDoubleClick", onNodeDrop: "onNodeDrop", onLazyLoad: "onLazyLoad", onScroll: "onScroll", onScrollIndexChange: "onScrollIndexChange", onFilter: "onFilter" }, host: { listeners: { "drop": "handleDropEvent($event)", "dragover": "handleDragOverEvent($event)", "dragenter": "handleDragEnterEvent()", "dragleave": "handleDragLeaveEvent($event)" }, properties: { "class": "cn(cx('root'), styleClass)" } }, providers: [TreeStyle, { provide: TREE_INSTANCE, useExisting: Tree }, { provide: PARENT_INSTANCE, useExisting: Tree }], queries: [{ propertyName: "filterTemplate", first: true, predicate: ["filter"] }, { propertyName: "nodeTemplate", first: true, predicate: ["node"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"] }, { propertyName: "emptyMessageTemplate", first: true, predicate: ["empty"] }, { propertyName: "togglerIconTemplate", first: true, predicate: ["togglericon"] }, { propertyName: "checkboxIconTemplate", first: true, predicate: ["checkboxicon"] }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"] }, { propertyName: "filterIconTemplate", first: true, predicate: ["filtericon"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "wrapperViewChild", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "contentViewChild", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i3.Bind }], ngImport: i0, template: `
1773
- <div [class]="cx('mask')" *ngIf="loading && loadingMode === 'mask'" [pBind]="ptm('mask')">
1824
+ get containerDataP() {
1825
+ return this.cn({
1826
+ loading: this.loading,
1827
+ scrollable: this.scrollHeight === 'flex'
1828
+ });
1829
+ }
1830
+ get wrapperDataP() {
1831
+ return this.cn({
1832
+ scrollable: this.scrollHeight === 'flex'
1833
+ });
1834
+ }
1835
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: Tree, deps: [{ token: i4.TreeDragDropService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1836
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: Tree, isStandalone: true, selector: "p-tree", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: false, isRequired: false, transformFunction: null }, loadingMode: { classPropertyName: "loadingMode", publicName: "loadingMode", isSignal: false, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, contextMenu: { classPropertyName: "contextMenu", publicName: "contextMenu", isSignal: false, isRequired: false, transformFunction: null }, contextMenuSelectionMode: { classPropertyName: "contextMenuSelectionMode", publicName: "contextMenuSelectionMode", isSignal: false, isRequired: false, transformFunction: null }, contextMenuSelection: { classPropertyName: "contextMenuSelection", publicName: "contextMenuSelection", isSignal: true, isRequired: false, transformFunction: null }, draggableScope: { classPropertyName: "draggableScope", publicName: "draggableScope", isSignal: false, isRequired: false, transformFunction: null }, droppableScope: { classPropertyName: "droppableScope", publicName: "droppableScope", isSignal: false, isRequired: false, transformFunction: null }, draggableNodes: { classPropertyName: "draggableNodes", publicName: "draggableNodes", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, droppableNodes: { classPropertyName: "droppableNodes", publicName: "droppableNodes", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, metaKeySelection: { classPropertyName: "metaKeySelection", publicName: "metaKeySelection", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, propagateSelectionUp: { classPropertyName: "propagateSelectionUp", publicName: "propagateSelectionUp", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, propagateSelectionDown: { classPropertyName: "propagateSelectionDown", publicName: "propagateSelectionDown", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, loadingIcon: { classPropertyName: "loadingIcon", publicName: "loadingIcon", isSignal: false, isRequired: false, transformFunction: null }, emptyMessage: { classPropertyName: "emptyMessage", publicName: "emptyMessage", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, togglerAriaLabel: { classPropertyName: "togglerAriaLabel", publicName: "togglerAriaLabel", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, validateDrop: { classPropertyName: "validateDrop", publicName: "validateDrop", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterInputAutoFocus: { classPropertyName: "filterInputAutoFocus", publicName: "filterInputAutoFocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, filterBy: { classPropertyName: "filterBy", publicName: "filterBy", isSignal: false, isRequired: false, transformFunction: null }, filterMode: { classPropertyName: "filterMode", publicName: "filterMode", isSignal: false, isRequired: false, transformFunction: null }, filterOptions: { classPropertyName: "filterOptions", publicName: "filterOptions", isSignal: false, isRequired: false, transformFunction: null }, filterPlaceholder: { classPropertyName: "filterPlaceholder", publicName: "filterPlaceholder", isSignal: false, isRequired: false, transformFunction: null }, filteredNodes: { classPropertyName: "filteredNodes", publicName: "filteredNodes", isSignal: false, isRequired: false, transformFunction: null }, filterLocale: { classPropertyName: "filterLocale", publicName: "filterLocale", isSignal: false, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", 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 }, indentation: { classPropertyName: "indentation", publicName: "indentation", isSignal: false, isRequired: false, transformFunction: numberAttribute }, _templateMap: { classPropertyName: "_templateMap", publicName: "_templateMap", isSignal: false, isRequired: false, transformFunction: null }, trackBy: { classPropertyName: "trackBy", publicName: "trackBy", isSignal: false, isRequired: false, transformFunction: null }, highlightOnSelect: { classPropertyName: "highlightOnSelect", publicName: "highlightOnSelect", isSignal: false, isRequired: false, transformFunction: booleanAttribute } }, outputs: { selection: "selectionChange", contextMenuSelection: "contextMenuSelectionChange", onNodeSelect: "onNodeSelect", onNodeUnselect: "onNodeUnselect", onNodeExpand: "onNodeExpand", onNodeCollapse: "onNodeCollapse", onNodeContextMenuSelect: "onNodeContextMenuSelect", onNodeDoubleClick: "onNodeDoubleClick", onNodeDrop: "onNodeDrop", onLazyLoad: "onLazyLoad", onScroll: "onScroll", onScrollIndexChange: "onScrollIndexChange", onFilter: "onFilter" }, host: { listeners: { "drop": "handleDropEvent($event)", "dragover": "handleDragOverEvent($event)", "dragenter": "handleDragEnterEvent()", "dragleave": "handleDragLeaveEvent($event)" }, properties: { "class": "cn(cx('root'), styleClass)", "attr.data-p": "containerDataP" } }, providers: [TreeStyle, { provide: TREE_INSTANCE, useExisting: Tree }, { provide: PARENT_INSTANCE, useExisting: Tree }], queries: [{ propertyName: "filterTemplate", first: true, predicate: ["filter"] }, { propertyName: "nodeTemplate", first: true, predicate: ["node"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"] }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"] }, { propertyName: "togglerIconTemplate", first: true, predicate: ["togglericon"] }, { propertyName: "checkboxIconTemplate", first: true, predicate: ["checkboxicon"] }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"] }, { propertyName: "filterIconTemplate", first: true, predicate: ["filtericon"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "filterViewChild", first: true, predicate: ["filter"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "wrapperViewChild", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "contentViewChild", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i3.Bind }], ngImport: i0, template: `
1837
+ <div [class]="cx('mask')" *ngIf="loading && loadingMode === 'mask'" [pBind]="ptm('mask')" animate.enter="p-overlay-mask-enter-active" animate.leave="p-overlay-mask-leave-active">
1774
1838
  <i *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin' + loadingIcon)" [pBind]="ptm('loadingIcon')"></i>
1775
1839
  <ng-container *ngIf="!loadingIcon">
1776
1840
  <svg data-p-icon="spinner" *ngIf="!loadingIconTemplate && !_loadingIconTemplate" spin [class]="cx('loadingIcon')" [pBind]="ptm('loadingIcon')" />
@@ -1783,7 +1847,7 @@ class Tree extends BaseComponent {
1783
1847
  @if (filterTemplate || _filterTemplate) {
1784
1848
  <ng-container *ngTemplateOutlet="filterTemplate || _filterTemplate; context: { $implicit: filterOptions }"></ng-container>
1785
1849
  } @else {
1786
- <p-iconfield *ngIf="filter" [class]="cx('pcFilterContainer')" [pt]="ptm('pcFilterContainer')">
1850
+ <p-iconfield *ngIf="filter" [class]="cx('pcFilterContainer')" [pt]="ptm('pcFilterContainer')" [unstyled]="unstyled()">
1787
1851
  <input
1788
1852
  #filter
1789
1853
  [pAutoFocus]="filterInputAutoFocus"
@@ -1795,8 +1859,9 @@ class Tree extends BaseComponent {
1795
1859
  (keydown.enter)="$event.preventDefault()"
1796
1860
  (input)="_filter($event.target?.value)"
1797
1861
  [pt]="ptm('pcFilterInput')"
1862
+ [unstyled]="unstyled()"
1798
1863
  />
1799
- <p-inputicon [pt]="ptm('pcFilterIconContainer')">
1864
+ <p-inputicon [pt]="ptm('pcFilterIconContainer')" [unstyled]="unstyled()">
1800
1865
  <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [class]="cx('filterIcon')" [pBind]="ptm('filterIcon')" />
1801
1866
  <span *ngIf="filterIconTemplate || _filterIconTemplate" [class]="cx('filterIcon')" [pBind]="ptm('filterIcon')">
1802
1867
  <ng-template *ngTemplateOutlet="filterIconTemplate || _filterIconTemplate"></ng-template>
@@ -1822,6 +1887,7 @@ class Tree extends BaseComponent {
1822
1887
  [options]="virtualScrollOptions"
1823
1888
  [pt]="ptm('virtualScroller')"
1824
1889
  hostName="tree"
1890
+ [attr.data-p]="wrapperDataP"
1825
1891
  >
1826
1892
  <ng-template #content let-items let-scrollerOptions="options">
1827
1893
  <ul
@@ -1849,6 +1915,7 @@ class Tree extends BaseComponent {
1849
1915
  [indentation]="indentation"
1850
1916
  [loadingMode]="loadingMode"
1851
1917
  [pt]="pt"
1918
+ [unstyled]="unstyled()"
1852
1919
  ></p-treeNode>
1853
1920
  </ul>
1854
1921
  </ng-template>
@@ -1859,7 +1926,7 @@ class Tree extends BaseComponent {
1859
1926
  </ng-container>
1860
1927
  </p-scroller>
1861
1928
  <ng-container *ngIf="!virtualScroll">
1862
- <div #wrapper [class]="cx('wrapper')" [style.max-height]="scrollHeight" [pBind]="ptm('wrapper')">
1929
+ <div #wrapper [class]="cx('wrapper')" [style.max-height]="scrollHeight" [pBind]="ptm('wrapper')" [attr.data-p]="wrapperDataP">
1863
1930
  <ul #content [class]="cx('rootChildren')" *ngIf="getRootNode()" role="tree" [attr.aria-label]="ariaLabel" [attr.aria-labelledby]="ariaLabelledBy" [pBind]="ptm('rootChildren')">
1864
1931
  <p-treeNode
1865
1932
  *ngFor="let node of getRootNode(); let firstChild = first; let lastChild = last; let index = index; trackBy: trackBy.bind(this)"
@@ -1870,6 +1937,7 @@ class Tree extends BaseComponent {
1870
1937
  [level]="0"
1871
1938
  [loadingMode]="loadingMode"
1872
1939
  [pt]="pt"
1940
+ [unstyled]="unstyled()"
1873
1941
  ></p-treeNode>
1874
1942
  </ul>
1875
1943
  </div>
@@ -1877,22 +1945,22 @@ class Tree extends BaseComponent {
1877
1945
  </ng-container>
1878
1946
 
1879
1947
  <div [class]="cx('emptyMessage')" *ngIf="!loading && (getRootNode() == null || getRootNode().length === 0)" [pBind]="ptm('emptyMessage')">
1880
- <ng-container *ngIf="!emptyMessageTemplate && !_emptyMessageTemplate; else emptyFilter">
1948
+ <ng-container *ngIf="!emptyTemplate && !_emptyTemplate; else emptyFilter">
1881
1949
  {{ emptyMessageLabel }}
1882
1950
  </ng-container>
1883
- <ng-template #emptyFilter *ngTemplateOutlet="emptyMessageTemplate || _emptyMessageTemplate"></ng-template>
1951
+ <ng-template #emptyFilter *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-template>
1884
1952
  </div>
1885
1953
  <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
1886
1954
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "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: "ngmodule", type: SharedModule }, { kind: "component", type: SearchIcon, selector: "[data-p-icon=\"search\"]" }, { kind: "component", type: SpinnerIcon, selector: "[data-p-icon=\"spinner\"]" }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "component", type: UITreeNode, selector: "p-treeNode", inputs: ["rowNode", "node", "parentNode", "root", "index", "firstChild", "lastChild", "level", "indentation", "itemSize", "loadingMode"] }, { kind: "ngmodule", type: AutoFocusModule }, { kind: "directive", type: i5.AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1887
1955
  }
1888
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Tree, decorators: [{
1956
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: Tree, decorators: [{
1889
1957
  type: Component,
1890
1958
  args: [{
1891
1959
  selector: 'p-tree',
1892
1960
  standalone: true,
1893
1961
  imports: [CommonModule, Scroller, SharedModule, SearchIcon, SpinnerIcon, InputText, FormsModule, IconField, InputIcon, UITreeNode, AutoFocusModule, Bind],
1894
1962
  template: `
1895
- <div [class]="cx('mask')" *ngIf="loading && loadingMode === 'mask'" [pBind]="ptm('mask')">
1963
+ <div [class]="cx('mask')" *ngIf="loading && loadingMode === 'mask'" [pBind]="ptm('mask')" animate.enter="p-overlay-mask-enter-active" animate.leave="p-overlay-mask-leave-active">
1896
1964
  <i *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin' + loadingIcon)" [pBind]="ptm('loadingIcon')"></i>
1897
1965
  <ng-container *ngIf="!loadingIcon">
1898
1966
  <svg data-p-icon="spinner" *ngIf="!loadingIconTemplate && !_loadingIconTemplate" spin [class]="cx('loadingIcon')" [pBind]="ptm('loadingIcon')" />
@@ -1905,7 +1973,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1905
1973
  @if (filterTemplate || _filterTemplate) {
1906
1974
  <ng-container *ngTemplateOutlet="filterTemplate || _filterTemplate; context: { $implicit: filterOptions }"></ng-container>
1907
1975
  } @else {
1908
- <p-iconfield *ngIf="filter" [class]="cx('pcFilterContainer')" [pt]="ptm('pcFilterContainer')">
1976
+ <p-iconfield *ngIf="filter" [class]="cx('pcFilterContainer')" [pt]="ptm('pcFilterContainer')" [unstyled]="unstyled()">
1909
1977
  <input
1910
1978
  #filter
1911
1979
  [pAutoFocus]="filterInputAutoFocus"
@@ -1917,8 +1985,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1917
1985
  (keydown.enter)="$event.preventDefault()"
1918
1986
  (input)="_filter($event.target?.value)"
1919
1987
  [pt]="ptm('pcFilterInput')"
1988
+ [unstyled]="unstyled()"
1920
1989
  />
1921
- <p-inputicon [pt]="ptm('pcFilterIconContainer')">
1990
+ <p-inputicon [pt]="ptm('pcFilterIconContainer')" [unstyled]="unstyled()">
1922
1991
  <svg data-p-icon="search" *ngIf="!filterIconTemplate && !_filterIconTemplate" [class]="cx('filterIcon')" [pBind]="ptm('filterIcon')" />
1923
1992
  <span *ngIf="filterIconTemplate || _filterIconTemplate" [class]="cx('filterIcon')" [pBind]="ptm('filterIcon')">
1924
1993
  <ng-template *ngTemplateOutlet="filterIconTemplate || _filterIconTemplate"></ng-template>
@@ -1944,6 +2013,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1944
2013
  [options]="virtualScrollOptions"
1945
2014
  [pt]="ptm('virtualScroller')"
1946
2015
  hostName="tree"
2016
+ [attr.data-p]="wrapperDataP"
1947
2017
  >
1948
2018
  <ng-template #content let-items let-scrollerOptions="options">
1949
2019
  <ul
@@ -1971,6 +2041,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1971
2041
  [indentation]="indentation"
1972
2042
  [loadingMode]="loadingMode"
1973
2043
  [pt]="pt"
2044
+ [unstyled]="unstyled()"
1974
2045
  ></p-treeNode>
1975
2046
  </ul>
1976
2047
  </ng-template>
@@ -1981,7 +2052,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1981
2052
  </ng-container>
1982
2053
  </p-scroller>
1983
2054
  <ng-container *ngIf="!virtualScroll">
1984
- <div #wrapper [class]="cx('wrapper')" [style.max-height]="scrollHeight" [pBind]="ptm('wrapper')">
2055
+ <div #wrapper [class]="cx('wrapper')" [style.max-height]="scrollHeight" [pBind]="ptm('wrapper')" [attr.data-p]="wrapperDataP">
1985
2056
  <ul #content [class]="cx('rootChildren')" *ngIf="getRootNode()" role="tree" [attr.aria-label]="ariaLabel" [attr.aria-labelledby]="ariaLabelledBy" [pBind]="ptm('rootChildren')">
1986
2057
  <p-treeNode
1987
2058
  *ngFor="let node of getRootNode(); let firstChild = first; let lastChild = last; let index = index; trackBy: trackBy.bind(this)"
@@ -1992,6 +2063,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1992
2063
  [level]="0"
1993
2064
  [loadingMode]="loadingMode"
1994
2065
  [pt]="pt"
2066
+ [unstyled]="unstyled()"
1995
2067
  ></p-treeNode>
1996
2068
  </ul>
1997
2069
  </div>
@@ -1999,10 +2071,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1999
2071
  </ng-container>
2000
2072
 
2001
2073
  <div [class]="cx('emptyMessage')" *ngIf="!loading && (getRootNode() == null || getRootNode().length === 0)" [pBind]="ptm('emptyMessage')">
2002
- <ng-container *ngIf="!emptyMessageTemplate && !_emptyMessageTemplate; else emptyFilter">
2074
+ <ng-container *ngIf="!emptyTemplate && !_emptyTemplate; else emptyFilter">
2003
2075
  {{ emptyMessageLabel }}
2004
2076
  </ng-container>
2005
- <ng-template #emptyFilter *ngTemplateOutlet="emptyMessageTemplate || _emptyMessageTemplate"></ng-template>
2077
+ <ng-template #emptyFilter *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-template>
2006
2078
  </div>
2007
2079
  <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
2008
2080
  `,
@@ -2010,7 +2082,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
2010
2082
  encapsulation: ViewEncapsulation.None,
2011
2083
  providers: [TreeStyle, { provide: TREE_INSTANCE, useExisting: Tree }, { provide: PARENT_INSTANCE, useExisting: Tree }],
2012
2084
  host: {
2013
- '[class]': "cn(cx('root'), styleClass)"
2085
+ '[class]': "cn(cx('root'), styleClass)",
2086
+ '[attr.data-p]': 'containerDataP'
2014
2087
  },
2015
2088
  hostDirectives: [Bind]
2016
2089
  }]
@@ -2022,13 +2095,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
2022
2095
  type: Input
2023
2096
  }], loadingMode: [{
2024
2097
  type: Input
2025
- }], selection: [{
2026
- type: Input
2027
- }], styleClass: [{
2098
+ }], selection: [{ type: i0.Input, args: [{ isSignal: true, alias: "selection", required: false }] }, { type: i0.Output, args: ["selectionChange"] }], styleClass: [{
2028
2099
  type: Input
2029
2100
  }], contextMenu: [{
2030
2101
  type: Input
2031
- }], draggableScope: [{
2102
+ }], contextMenuSelectionMode: [{
2103
+ type: Input
2104
+ }], contextMenuSelection: [{ type: i0.Input, args: [{ isSignal: true, alias: "contextMenuSelection", required: false }] }, { type: i0.Output, args: ["contextMenuSelectionChange"] }], draggableScope: [{
2032
2105
  type: Input
2033
2106
  }], droppableScope: [{
2034
2107
  type: Input
@@ -2104,8 +2177,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
2104
2177
  }], highlightOnSelect: [{
2105
2178
  type: Input,
2106
2179
  args: [{ transform: booleanAttribute }]
2107
- }], selectionChange: [{
2108
- type: Output
2109
2180
  }], onNodeSelect: [{
2110
2181
  type: Output
2111
2182
  }], onNodeUnselect: [{
@@ -2143,7 +2214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
2143
2214
  }], loaderTemplate: [{
2144
2215
  type: ContentChild,
2145
2216
  args: ['loader', { descendants: false }]
2146
- }], emptyMessageTemplate: [{
2217
+ }], emptyTemplate: [{
2147
2218
  type: ContentChild,
2148
2219
  args: ['empty', { descendants: false }]
2149
2220
  }], togglerIconTemplate: [{
@@ -2187,11 +2258,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
2187
2258
  args: ['dragleave', ['$event']]
2188
2259
  }] } });
2189
2260
  class TreeModule {
2190
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2191
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: TreeModule, imports: [Tree, SharedModule], exports: [Tree, SharedModule] });
2192
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeModule, imports: [Tree, SharedModule, SharedModule] });
2261
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2262
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: TreeModule, imports: [Tree, SharedModule], exports: [Tree, SharedModule] });
2263
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeModule, imports: [Tree, SharedModule, SharedModule] });
2193
2264
  }
2194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TreeModule, decorators: [{
2265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TreeModule, decorators: [{
2195
2266
  type: NgModule,
2196
2267
  args: [{
2197
2268
  imports: [Tree, SharedModule],