primeng 18.0.0-rc.2 → 18.0.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 (351) hide show
  1. package/LICENSE.md +1 -1
  2. package/accordion/accordion.d.ts +7 -7
  3. package/autocomplete/autocomplete.d.ts +26 -13
  4. package/badge/badge.d.ts +1 -3
  5. package/basecomponent/basecomponent.d.ts +2 -5
  6. package/blockui/blockui.d.ts +10 -5
  7. package/breadcrumb/breadcrumb.d.ts +9 -6
  8. package/button/button.d.ts +10 -4
  9. package/calendar/calendar.d.ts +29 -15
  10. package/card/card.d.ts +12 -5
  11. package/carousel/carousel.d.ts +10 -4
  12. package/cascadeselect/cascadeselect.d.ts +18 -8
  13. package/checkbox/checkbox.d.ts +8 -4
  14. package/chip/chip.d.ts +9 -7
  15. package/config/primeng.d.ts +12 -6
  16. package/config/provideprimeng.d.ts +1 -12
  17. package/config/themeprovider.d.ts +10 -4
  18. package/confirmdialog/confirmdialog.d.ts +15 -5
  19. package/confirmpopup/confirmpopup.d.ts +11 -5
  20. package/contextmenu/contextmenu.d.ts +10 -6
  21. package/datepicker/datepicker.d.ts +25 -11
  22. package/dialog/dialog.d.ts +15 -4
  23. package/divider/divider.d.ts +1 -1
  24. package/dock/dock.d.ts +7 -4
  25. package/drawer/drawer.d.ts +18 -10
  26. package/dropdown/dropdown.d.ts +4 -3
  27. package/dynamicdialog/dynamicdialog.d.ts +1 -0
  28. package/editor/editor.d.ts +7 -3
  29. package/esm2022/accordion/accordion.mjs +58 -43
  30. package/esm2022/autocomplete/autocomplete.mjs +227 -168
  31. package/esm2022/autocomplete/style/autocompletestyle.mjs +5 -4
  32. package/esm2022/badge/badge.mjs +39 -32
  33. package/esm2022/basecomponent/basecomponent.mjs +3 -26
  34. package/esm2022/blockui/blockui.mjs +38 -18
  35. package/esm2022/breadcrumb/breadcrumb.mjs +50 -32
  36. package/esm2022/button/button.mjs +55 -28
  37. package/esm2022/calendar/calendar.mjs +200 -137
  38. package/esm2022/card/card.mjs +96 -46
  39. package/esm2022/carousel/carousel.mjs +74 -42
  40. package/esm2022/cascadeselect/cascadeselect.mjs +100 -62
  41. package/esm2022/checkbox/checkbox.mjs +32 -14
  42. package/esm2022/chip/chip.mjs +117 -96
  43. package/esm2022/colorpicker/colorpicker.mjs +2 -2
  44. package/esm2022/config/primeng.mjs +14 -18
  45. package/esm2022/config/provideprimeng.mjs +11 -3
  46. package/esm2022/config/themeprovider.mjs +10 -16
  47. package/esm2022/confirmdialog/confirmdialog.mjs +105 -61
  48. package/esm2022/confirmpopup/confirmpopup.mjs +57 -29
  49. package/esm2022/contextmenu/contextmenu.mjs +52 -21
  50. package/esm2022/datepicker/datepicker.mjs +200 -159
  51. package/esm2022/dialog/dialog.mjs +113 -67
  52. package/esm2022/divider/divider.mjs +2 -4
  53. package/esm2022/dock/dock.mjs +31 -13
  54. package/esm2022/drawer/drawer.mjs +115 -73
  55. package/esm2022/dropdown/dropdown.mjs +13 -5
  56. package/esm2022/dynamicdialog/dialogservice.mjs +2 -2
  57. package/esm2022/dynamicdialog/dynamicdialog-config.mjs +13 -13
  58. package/esm2022/dynamicdialog/dynamicdialog.mjs +9 -5
  59. package/esm2022/editor/editor.mjs +27 -11
  60. package/esm2022/fieldset/fieldset.mjs +61 -33
  61. package/esm2022/fileupload/fileupload.mjs +139 -89
  62. package/esm2022/galleria/galleria.mjs +18 -9
  63. package/esm2022/image/image.mjs +114 -67
  64. package/esm2022/imagecompare/imagecompare.mjs +31 -11
  65. package/esm2022/inplace/inplace.mjs +49 -24
  66. package/esm2022/inputmask/inputmask.mjs +33 -17
  67. package/esm2022/inputmask/style/inputmaskstyle.mjs +2 -2
  68. package/esm2022/inputnumber/inputnumber.mjs +58 -50
  69. package/esm2022/inputotp/inputotp.mjs +33 -14
  70. package/esm2022/inputtext/inputtext.mjs +11 -10
  71. package/esm2022/listbox/listbox.mjs +137 -78
  72. package/esm2022/megamenu/megamenu.mjs +105 -59
  73. package/esm2022/menu/menu.mjs +27 -27
  74. package/esm2022/menubar/menubar.mjs +70 -35
  75. package/esm2022/message/message.mjs +50 -26
  76. package/esm2022/messages/messages.mjs +13 -4
  77. package/esm2022/metergroup/metergroup.mjs +63 -31
  78. package/esm2022/multiselect/multiselect.mjs +247 -156
  79. package/esm2022/multiselect/style/multiselectstyle.mjs +1 -4
  80. package/esm2022/orderlist/orderlist.mjs +125 -70
  81. package/esm2022/organizationchart/organizationchart.mjs +30 -14
  82. package/esm2022/overlay/overlay.mjs +27 -7
  83. package/esm2022/overlay/style/overlaystyle.mjs +2 -2
  84. package/esm2022/overlaypanel/overlaypanel.mjs +34 -11
  85. package/esm2022/paginator/paginator.mjs +92 -60
  86. package/esm2022/panel/panel.mjs +160 -100
  87. package/esm2022/panelmenu/panelmenu.mjs +55 -32
  88. package/esm2022/password/password.mjs +114 -52
  89. package/esm2022/picklist/picklist.mjs +397 -269
  90. package/esm2022/popover/popover.mjs +30 -13
  91. package/esm2022/progressbar/progressbar.mjs +27 -9
  92. package/esm2022/rating/rating.mjs +46 -22
  93. package/esm2022/ripple/ripple.mjs +5 -2
  94. package/esm2022/scroller/scroller.mjs +47 -37
  95. package/esm2022/scrollpanel/scrollpanel.mjs +28 -9
  96. package/esm2022/scrolltop/scrolltop.mjs +17 -10
  97. package/esm2022/select/select.mjs +202 -122
  98. package/esm2022/select/style/selectstyle.mjs +2 -5
  99. package/esm2022/selectbutton/selectbutton.mjs +26 -11
  100. package/esm2022/sidebar/sidebar.mjs +83 -61
  101. package/esm2022/speeddial/speeddial.mjs +54 -29
  102. package/esm2022/splitbutton/splitbutton.mjs +41 -18
  103. package/esm2022/splitter/splitter.mjs +29 -19
  104. package/esm2022/splitter/style/splitterstyle.mjs +5 -4
  105. package/esm2022/stepper/stepper.mjs +27 -13
  106. package/esm2022/table/table.mjs +6368 -6510
  107. package/esm2022/tabmenu/tabmenu.mjs +54 -27
  108. package/esm2022/tabs/tablist.mjs +28 -20
  109. package/esm2022/tabview/tabview.mjs +106 -54
  110. package/esm2022/tag/tag.mjs +68 -44
  111. package/esm2022/textarea/textarea.mjs +9 -9
  112. package/esm2022/tieredmenu/tieredmenu.mjs +45 -22
  113. package/esm2022/timeline/timeline.mjs +41 -17
  114. package/esm2022/toast/toast.mjs +31 -9
  115. package/esm2022/togglebutton/togglebutton.mjs +45 -30
  116. package/esm2022/toggleswitch/toggleswitch.mjs +28 -9
  117. package/esm2022/toolbar/toolbar.mjs +47 -21
  118. package/esm2022/tooltip/tooltip.mjs +36 -71
  119. package/esm2022/tree/style/treestyle.mjs +13 -3
  120. package/esm2022/tree/tree.mjs +193 -137
  121. package/esm2022/treeselect/style/treeselectstyle.mjs +1 -4
  122. package/esm2022/treeselect/treeselect.mjs +157 -90
  123. package/esm2022/treetable/treetable.mjs +31 -12
  124. package/esm2022/usestyle/usestyle.mjs +2 -2
  125. package/fesm2022/primeng-accordion.mjs +57 -42
  126. package/fesm2022/primeng-accordion.mjs.map +1 -1
  127. package/fesm2022/primeng-autocomplete.mjs +230 -170
  128. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  129. package/fesm2022/primeng-badge.mjs +38 -31
  130. package/fesm2022/primeng-badge.mjs.map +1 -1
  131. package/fesm2022/primeng-basecomponent.mjs +2 -25
  132. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  133. package/fesm2022/primeng-blockui.mjs +37 -17
  134. package/fesm2022/primeng-blockui.mjs.map +1 -1
  135. package/fesm2022/primeng-breadcrumb.mjs +49 -31
  136. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  137. package/fesm2022/primeng-button.mjs +54 -27
  138. package/fesm2022/primeng-button.mjs.map +1 -1
  139. package/fesm2022/primeng-calendar.mjs +199 -136
  140. package/fesm2022/primeng-calendar.mjs.map +1 -1
  141. package/fesm2022/primeng-card.mjs +95 -45
  142. package/fesm2022/primeng-card.mjs.map +1 -1
  143. package/fesm2022/primeng-carousel.mjs +73 -41
  144. package/fesm2022/primeng-carousel.mjs.map +1 -1
  145. package/fesm2022/primeng-cascadeselect.mjs +99 -61
  146. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  147. package/fesm2022/primeng-checkbox.mjs +31 -13
  148. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  149. package/fesm2022/primeng-chip.mjs +116 -95
  150. package/fesm2022/primeng-chip.mjs.map +1 -1
  151. package/fesm2022/primeng-colorpicker.mjs +1 -1
  152. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  153. package/fesm2022/primeng-config.mjs +38 -39
  154. package/fesm2022/primeng-config.mjs.map +1 -1
  155. package/fesm2022/primeng-confirmdialog.mjs +104 -60
  156. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  157. package/fesm2022/primeng-confirmpopup.mjs +56 -28
  158. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  159. package/fesm2022/primeng-contextmenu.mjs +51 -20
  160. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  161. package/fesm2022/primeng-datepicker.mjs +199 -158
  162. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  163. package/fesm2022/primeng-dialog.mjs +112 -66
  164. package/fesm2022/primeng-dialog.mjs.map +1 -1
  165. package/fesm2022/primeng-divider.mjs +1 -3
  166. package/fesm2022/primeng-divider.mjs.map +1 -1
  167. package/fesm2022/primeng-dock.mjs +30 -12
  168. package/fesm2022/primeng-dock.mjs.map +1 -1
  169. package/fesm2022/primeng-drawer.mjs +114 -72
  170. package/fesm2022/primeng-drawer.mjs.map +1 -1
  171. package/fesm2022/primeng-dropdown.mjs +12 -4
  172. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  173. package/fesm2022/primeng-dynamicdialog.mjs +21 -17
  174. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  175. package/fesm2022/primeng-editor.mjs +26 -10
  176. package/fesm2022/primeng-editor.mjs.map +1 -1
  177. package/fesm2022/primeng-fieldset.mjs +60 -32
  178. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  179. package/fesm2022/primeng-fileupload.mjs +138 -88
  180. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  181. package/fesm2022/primeng-galleria.mjs +17 -8
  182. package/fesm2022/primeng-galleria.mjs.map +1 -1
  183. package/fesm2022/primeng-image.mjs +113 -66
  184. package/fesm2022/primeng-image.mjs.map +1 -1
  185. package/fesm2022/primeng-imagecompare.mjs +30 -10
  186. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  187. package/fesm2022/primeng-inplace.mjs +48 -23
  188. package/fesm2022/primeng-inplace.mjs.map +1 -1
  189. package/fesm2022/primeng-inputmask.mjs +33 -17
  190. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  191. package/fesm2022/primeng-inputnumber.mjs +57 -49
  192. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  193. package/fesm2022/primeng-inputotp.mjs +32 -13
  194. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  195. package/fesm2022/primeng-inputtext.mjs +10 -9
  196. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  197. package/fesm2022/primeng-listbox.mjs +136 -77
  198. package/fesm2022/primeng-listbox.mjs.map +1 -1
  199. package/fesm2022/primeng-megamenu.mjs +104 -58
  200. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  201. package/fesm2022/primeng-menu.mjs +26 -26
  202. package/fesm2022/primeng-menu.mjs.map +1 -1
  203. package/fesm2022/primeng-menubar.mjs +69 -34
  204. package/fesm2022/primeng-menubar.mjs.map +1 -1
  205. package/fesm2022/primeng-message.mjs +49 -25
  206. package/fesm2022/primeng-message.mjs.map +1 -1
  207. package/fesm2022/primeng-messages.mjs +12 -3
  208. package/fesm2022/primeng-messages.mjs.map +1 -1
  209. package/fesm2022/primeng-metergroup.mjs +62 -30
  210. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  211. package/fesm2022/primeng-multiselect.mjs +246 -158
  212. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  213. package/fesm2022/primeng-orderlist.mjs +124 -69
  214. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  215. package/fesm2022/primeng-organizationchart.mjs +29 -13
  216. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  217. package/fesm2022/primeng-overlay.mjs +27 -7
  218. package/fesm2022/primeng-overlay.mjs.map +1 -1
  219. package/fesm2022/primeng-overlaypanel.mjs +33 -10
  220. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  221. package/fesm2022/primeng-paginator.mjs +91 -59
  222. package/fesm2022/primeng-paginator.mjs.map +1 -1
  223. package/fesm2022/primeng-panel.mjs +159 -99
  224. package/fesm2022/primeng-panel.mjs.map +1 -1
  225. package/fesm2022/primeng-panelmenu.mjs +54 -31
  226. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  227. package/fesm2022/primeng-password.mjs +113 -51
  228. package/fesm2022/primeng-password.mjs.map +1 -1
  229. package/fesm2022/primeng-picklist.mjs +396 -268
  230. package/fesm2022/primeng-picklist.mjs.map +1 -1
  231. package/fesm2022/primeng-popover.mjs +29 -12
  232. package/fesm2022/primeng-popover.mjs.map +1 -1
  233. package/fesm2022/primeng-progressbar.mjs +26 -8
  234. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  235. package/fesm2022/primeng-rating.mjs +45 -21
  236. package/fesm2022/primeng-rating.mjs.map +1 -1
  237. package/fesm2022/primeng-ripple.mjs +4 -1
  238. package/fesm2022/primeng-ripple.mjs.map +1 -1
  239. package/fesm2022/primeng-scroller.mjs +46 -36
  240. package/fesm2022/primeng-scroller.mjs.map +1 -1
  241. package/fesm2022/primeng-scrollpanel.mjs +27 -8
  242. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  243. package/fesm2022/primeng-scrolltop.mjs +16 -9
  244. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  245. package/fesm2022/primeng-select.mjs +202 -125
  246. package/fesm2022/primeng-select.mjs.map +1 -1
  247. package/fesm2022/primeng-selectbutton.mjs +25 -10
  248. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  249. package/fesm2022/primeng-sidebar.mjs +82 -60
  250. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  251. package/fesm2022/primeng-speeddial.mjs +53 -28
  252. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  253. package/fesm2022/primeng-splitbutton.mjs +40 -17
  254. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  255. package/fesm2022/primeng-splitter.mjs +32 -21
  256. package/fesm2022/primeng-splitter.mjs.map +1 -1
  257. package/fesm2022/primeng-stepper.mjs +26 -12
  258. package/fesm2022/primeng-stepper.mjs.map +1 -1
  259. package/fesm2022/primeng-table.mjs +6370 -6512
  260. package/fesm2022/primeng-table.mjs.map +1 -1
  261. package/fesm2022/primeng-tabmenu.mjs +53 -26
  262. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  263. package/fesm2022/primeng-tabs.mjs +27 -19
  264. package/fesm2022/primeng-tabs.mjs.map +1 -1
  265. package/fesm2022/primeng-tabview.mjs +106 -54
  266. package/fesm2022/primeng-tabview.mjs.map +1 -1
  267. package/fesm2022/primeng-tag.mjs +67 -43
  268. package/fesm2022/primeng-tag.mjs.map +1 -1
  269. package/fesm2022/primeng-textarea.mjs +8 -8
  270. package/fesm2022/primeng-textarea.mjs.map +1 -1
  271. package/fesm2022/primeng-tieredmenu.mjs +44 -21
  272. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  273. package/fesm2022/primeng-timeline.mjs +40 -16
  274. package/fesm2022/primeng-timeline.mjs.map +1 -1
  275. package/fesm2022/primeng-toast.mjs +30 -8
  276. package/fesm2022/primeng-toast.mjs.map +1 -1
  277. package/fesm2022/primeng-togglebutton.mjs +44 -29
  278. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  279. package/fesm2022/primeng-toggleswitch.mjs +27 -8
  280. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  281. package/fesm2022/primeng-toolbar.mjs +46 -20
  282. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  283. package/fesm2022/primeng-tooltip.mjs +36 -71
  284. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  285. package/fesm2022/primeng-tree.mjs +204 -138
  286. package/fesm2022/primeng-tree.mjs.map +1 -1
  287. package/fesm2022/primeng-treeselect.mjs +156 -92
  288. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  289. package/fesm2022/primeng-treetable.mjs +30 -11
  290. package/fesm2022/primeng-treetable.mjs.map +1 -1
  291. package/fesm2022/primeng-usestyle.mjs +1 -1
  292. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  293. package/fieldset/fieldset.d.ts +12 -6
  294. package/fileupload/fileupload.d.ts +19 -8
  295. package/galleria/galleria.d.ts +3 -2
  296. package/image/image.d.ts +18 -7
  297. package/imagecompare/imagecompare.d.ts +7 -2
  298. package/inplace/inplace.d.ts +12 -6
  299. package/inputmask/inputmask.d.ts +8 -4
  300. package/inputnumber/inputnumber.d.ts +11 -6
  301. package/inputotp/inputotp.d.ts +7 -2
  302. package/inputtext/inputtext.d.ts +2 -2
  303. package/listbox/listbox.d.ts +17 -4
  304. package/megamenu/megamenu.d.ts +16 -7
  305. package/menu/menu.d.ts +6 -6
  306. package/menubar/menubar.d.ts +13 -6
  307. package/message/message.d.ts +10 -4
  308. package/messages/messages.d.ts +4 -3
  309. package/metergroup/metergroup.d.ts +11 -3
  310. package/multiselect/multiselect.d.ts +36 -17
  311. package/orderlist/orderlist.d.ts +23 -11
  312. package/organizationchart/organizationchart.d.ts +6 -4
  313. package/overlay/overlay.d.ts +6 -3
  314. package/overlaypanel/overlaypanel.d.ts +6 -3
  315. package/package.json +233 -233
  316. package/paginator/paginator.d.ts +15 -8
  317. package/panel/panel.d.ts +14 -5
  318. package/panelmenu/panelmenu.d.ts +8 -4
  319. package/password/password.d.ts +20 -8
  320. package/picklist/picklist.d.ts +23 -3
  321. package/popover/popover.d.ts +8 -5
  322. package/progressbar/progressbar.d.ts +7 -3
  323. package/rating/rating.d.ts +11 -5
  324. package/scroller/scroller.d.ts +9 -4
  325. package/scrollpanel/scrollpanel.d.ts +7 -3
  326. package/scrolltop/scrolltop.d.ts +7 -4
  327. package/select/select.d.ts +31 -13
  328. package/selectbutton/selectbutton.d.ts +7 -3
  329. package/sidebar/sidebar.d.ts +9 -2
  330. package/speeddial/speeddial.d.ts +9 -4
  331. package/splitbutton/splitbutton.d.ts +9 -5
  332. package/splitter/splitter.d.ts +6 -7
  333. package/splitter/style/splitterstyle.d.ts +0 -13
  334. package/stepper/stepper.d.ts +8 -3
  335. package/table/table.d.ts +928 -1030
  336. package/tabmenu/tabmenu.d.ts +12 -7
  337. package/tabs/tablist.d.ts +6 -2
  338. package/tabview/tabview.d.ts +16 -7
  339. package/tag/tag.d.ts +8 -9
  340. package/textarea/textarea.d.ts +2 -2
  341. package/tieredmenu/tieredmenu.d.ts +10 -6
  342. package/timeline/timeline.d.ts +7 -2
  343. package/toast/toast.d.ts +7 -3
  344. package/togglebutton/togglebutton.d.ts +8 -3
  345. package/toggleswitch/toggleswitch.d.ts +6 -2
  346. package/toolbar/toolbar.d.ts +9 -4
  347. package/tooltip/tooltip.d.ts +2 -1
  348. package/tree/style/treestyle.d.ts +1 -1
  349. package/tree/tree.d.ts +25 -10
  350. package/treeselect/treeselect.d.ts +26 -12
  351. package/treetable/treetable.d.ts +7 -5
@@ -1,17 +1,15 @@
1
1
  import * as i1 from '@angular/common';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { Injectable, inject, forwardRef, booleanAttribute, numberAttribute, Component, ViewEncapsulation, Input, EventEmitter, ChangeDetectionStrategy, Optional, ContentChild, Output, ViewChild, NgModule } from '@angular/core';
4
+ import { Injectable, inject, forwardRef, booleanAttribute, numberAttribute, Component, ViewEncapsulation, Input, EventEmitter, ChangeDetectionStrategy, Optional, Output, ContentChild, ViewChild, ContentChildren, NgModule } from '@angular/core';
5
5
  import * as i2 from '@angular/forms';
6
6
  import { FormsModule } from '@angular/forms';
7
7
  import { find, hasClass, findSingle, focus, removeAccents, resolveFieldData } from '@primeuix/utils';
8
8
  import * as i3 from 'primeng/api';
9
- import { SharedModule, TranslationKeys } from 'primeng/api';
9
+ import { SharedModule, TranslationKeys, PrimeTemplate } from 'primeng/api';
10
10
  import { BaseComponent } from 'primeng/basecomponent';
11
11
  import { Checkbox } from 'primeng/checkbox';
12
- import { IconField } from 'primeng/iconfield';
13
- import { ChevronRightIcon, ChevronDownIcon, SpinnerIcon, SearchIcon, CheckIcon, MinusIcon, PlusIcon } from 'primeng/icons';
14
- import { InputIcon } from 'primeng/inputicon';
12
+ import { ChevronRightIcon, ChevronDownIcon, SpinnerIcon, SearchIcon } from 'primeng/icons';
15
13
  import { InputText } from 'primeng/inputtext';
16
14
  import { Ripple } from 'primeng/ripple';
17
15
  import { Scroller } from 'primeng/scroller';
@@ -177,6 +175,16 @@ const theme = ({ dt }) => `
177
175
 
178
176
  .p-tree .p-tree-node-droppoint-active {
179
177
  border: 0 none;
178
+ background-color: ${dt('primary.color')};
179
+ }
180
+
181
+ .p-tree-node-content.p-tree-node-dragover {
182
+ background: ${dt('tree.node.hover.background')};
183
+ color: ${dt('tree.node.hover.color')};
184
+ }
185
+
186
+ .p-tree-node-content.p-tree-node-dragover .p-tree-node-icon {
187
+ color: ${dt('tree.node.icon.hover.color')};
180
188
  }
181
189
 
182
190
  .p-tree-horizontal {
@@ -236,7 +244,7 @@ const classes = {
236
244
  'p-tree-selectable': instance.selectionMode != null,
237
245
  'p-tree-loading': instance.loading,
238
246
  'p-tree-flex-scrollable': instance.scrollHeight === 'flex',
239
- 'p-tree-node-tragover': instance.dragHover
247
+ 'p-tree-node-dragover': instance.dragHover
240
248
  }),
241
249
  mask: 'p-tree-mask p-overlay-mask',
242
250
  loadingIcon: 'p-tree-loading-icon',
@@ -248,7 +256,7 @@ const classes = {
248
256
  'p-tree-node-content': true,
249
257
  [instance.styleClass]: !!instance.styleClass,
250
258
  'p-tree-node-selectable': instance.selectable,
251
- 'p-tree-node-dragover': instance.ragHoberNode,
259
+ 'p-tree-node-dragover': instance.draghoverNode,
252
260
  'p-tree-node-selected': instance.selectionMode === 'checkbox' && instance.tree.highlightOnSelect ? instance.checked : instance.selected
253
261
  }),
254
262
  nodeToggleButton: 'p-tree-node-toggle-button',
@@ -338,13 +346,12 @@ var TreeClasses;
338
346
  })(TreeClasses || (TreeClasses = {}));
339
347
 
340
348
  const _c0 = a0 => ({ height: a0 });
341
- const _c1 = a0 => ({ "p-treenode-droppoint-active": a0 });
349
+ const _c1 = a0 => ({ "p-tree-node-droppoint-active": a0 });
342
350
  const _c2 = a0 => ({ $implicit: a0 });
343
351
  const _c3 = (a0, a1) => ({ $implicit: a0, partialSelected: a1, class: "p-tree-node-checkbox" });
344
- const _c4 = a0 => ({ "p-tree-node-droppoint-active": a0 });
345
352
  function UITreeNode_Conditional_0_li_0_Template(rf, ctx) { if (rf & 1) {
346
353
  const _r2 = i0.ɵɵgetCurrentView();
347
- i0.ɵɵelementStart(0, "li", 12);
354
+ i0.ɵɵelementStart(0, "li", 11);
348
355
  i0.ɵɵlistener("drop", function UITreeNode_Conditional_0_li_0_Template_li_drop_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPoint($event, -1)); })("dragover", function UITreeNode_Conditional_0_li_0_Template_li_dragover_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragOver($event)); })("dragenter", function UITreeNode_Conditional_0_li_0_Template_li_dragenter_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragEnter($event, -1)); })("dragleave", function UITreeNode_Conditional_0_li_0_Template_li_dragleave_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragLeave($event)); });
349
356
  i0.ɵɵelementEnd();
350
357
  } if (rf & 2) {
@@ -353,18 +360,18 @@ function UITreeNode_Conditional_0_li_0_Template(rf, ctx) { if (rf & 1) {
353
360
  i0.ɵɵattribute("aria-hidden", true);
354
361
  } }
355
362
  function UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronRightIcon_1_Template(rf, ctx) { if (rf & 1) {
356
- i0.ɵɵelement(0, "ChevronRightIcon", 14);
363
+ i0.ɵɵelement(0, "ChevronRightIcon", 13);
357
364
  } if (rf & 2) {
358
365
  i0.ɵɵproperty("styleClass", "p-tree-node-toggle-icon");
359
366
  } }
360
367
  function UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronDownIcon_2_Template(rf, ctx) { if (rf & 1) {
361
- i0.ɵɵelement(0, "ChevronDownIcon", 14);
368
+ i0.ɵɵelement(0, "ChevronDownIcon", 13);
362
369
  } if (rf & 2) {
363
370
  i0.ɵɵproperty("styleClass", "p-tree-node-toggle-icon");
364
371
  } }
365
372
  function UITreeNode_Conditional_0_ng_container_4_ng_container_1_Template(rf, ctx) { if (rf & 1) {
366
373
  i0.ɵɵelementContainerStart(0);
367
- i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronRightIcon_1_Template, 1, 1, "ChevronRightIcon", 13)(2, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronDownIcon_2_Template, 1, 1, "ChevronDownIcon", 13);
374
+ i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronRightIcon_1_Template, 1, 1, "ChevronRightIcon", 12)(2, UITreeNode_Conditional_0_ng_container_4_ng_container_1_ChevronDownIcon_2_Template, 1, 1, "ChevronDownIcon", 12);
368
375
  i0.ɵɵelementContainerEnd();
369
376
  } if (rf & 2) {
370
377
  const ctx_r2 = i0.ɵɵnextContext(3);
@@ -375,7 +382,7 @@ function UITreeNode_Conditional_0_ng_container_4_ng_container_1_Template(rf, ctx
375
382
  } }
376
383
  function UITreeNode_Conditional_0_ng_container_4_ng_container_2_Template(rf, ctx) { if (rf & 1) {
377
384
  i0.ɵɵelementContainerStart(0);
378
- i0.ɵɵelement(1, "SpinnerIcon", 14);
385
+ i0.ɵɵelement(1, "SpinnerIcon", 13);
379
386
  i0.ɵɵelementContainerEnd();
380
387
  } if (rf & 2) {
381
388
  i0.ɵɵadvance();
@@ -397,23 +404,23 @@ function UITreeNode_Conditional_0_span_5_1_Template(rf, ctx) { if (rf & 1) {
397
404
  i0.ɵɵtemplate(0, UITreeNode_Conditional_0_span_5_1_ng_template_0_Template, 0, 0, "ng-template");
398
405
  } }
399
406
  function UITreeNode_Conditional_0_span_5_Template(rf, ctx) { if (rf & 1) {
400
- i0.ɵɵelementStart(0, "span", 15);
401
- i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_5_1_Template, 1, 0, null, 16);
407
+ i0.ɵɵelementStart(0, "span", 14);
408
+ i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_5_1_Template, 1, 0, null, 15);
402
409
  i0.ɵɵelementEnd();
403
410
  } if (rf & 2) {
404
411
  const ctx_r2 = i0.ɵɵnextContext(2);
405
412
  i0.ɵɵadvance();
406
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.togglericonTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node.expanded));
413
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.togglerIconTemplate || ctx_r2.tree._togglerIconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node.expanded));
407
414
  } }
408
415
  function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_ng_template_0_Template(rf, ctx) { }
409
416
  function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_Template(rf, ctx) { if (rf & 1) {
410
417
  i0.ɵɵtemplate(0, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_ng_template_0_Template, 0, 0, "ng-template");
411
418
  } }
412
419
  function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_Template(rf, ctx) { if (rf & 1) {
413
- i0.ɵɵtemplate(0, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_Template, 1, 0, null, 16);
420
+ i0.ɵɵtemplate(0, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_ng_template_1_0_Template, 1, 0, null, 15);
414
421
  } if (rf & 2) {
415
422
  const ctx_r2 = i0.ɵɵnextContext(4);
416
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.checkboxiconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c3, ctx_r2.isSelected(), ctx_r2.node.partialSelected));
423
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.checkboxIconTemplate || ctx_r2.tree._checkboxIconTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c3, ctx_r2.isSelected(), ctx_r2.node.partialSelected));
417
424
  } }
418
425
  function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
419
426
  i0.ɵɵelementContainerStart(0);
@@ -421,7 +428,7 @@ function UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_Template(rf, ctx)
421
428
  i0.ɵɵelementContainerEnd();
422
429
  } }
423
430
  function UITreeNode_Conditional_0_p_checkbox_6_Template(rf, ctx) { if (rf & 1) {
424
- i0.ɵɵelementStart(0, "p-checkbox", 17);
431
+ i0.ɵɵelementStart(0, "p-checkbox", 16);
425
432
  i0.ɵɵtemplate(1, UITreeNode_Conditional_0_p_checkbox_6_ng_container_1_Template, 3, 0, "ng-container", 5);
426
433
  i0.ɵɵelementEnd();
427
434
  } if (rf & 2) {
@@ -429,7 +436,7 @@ function UITreeNode_Conditional_0_p_checkbox_6_Template(rf, ctx) { if (rf & 1) {
429
436
  i0.ɵɵproperty("ngModel", ctx_r2.isSelected())("binary", true)("indeterminate", ctx_r2.node.partialSelected)("disabled", ctx_r2.node.selectable === false)("variant", (ctx_r2.tree == null ? null : ctx_r2.tree.config.inputStyle()) === "filled" ? "filled" : "outlined" || (ctx_r2.tree == null ? null : ctx_r2.tree.config.inputVariant()) === "filled" ? "filled" : "outlined")("tabindex", -1);
430
437
  i0.ɵɵattribute("data-p-partialchecked", ctx_r2.node.partialSelected);
431
438
  i0.ɵɵadvance();
432
- i0.ɵɵproperty("ngIf", ctx_r2.tree.checkboxiconTemplate);
439
+ i0.ɵɵproperty("ngIf", ctx_r2.tree.checkboxIconTemplate || ctx_r2.tree._checkboxIconTemplate);
433
440
  } }
434
441
  function UITreeNode_Conditional_0_span_7_Template(rf, ctx) { if (rf & 1) {
435
442
  i0.ɵɵelement(0, "span");
@@ -451,15 +458,15 @@ function UITreeNode_Conditional_0_span_10_ng_container_1_Template(rf, ctx) { if
451
458
  } }
452
459
  function UITreeNode_Conditional_0_span_10_Template(rf, ctx) { if (rf & 1) {
453
460
  i0.ɵɵelementStart(0, "span");
454
- i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_10_ng_container_1_Template, 1, 0, "ng-container", 16);
461
+ i0.ɵɵtemplate(1, UITreeNode_Conditional_0_span_10_ng_container_1_Template, 1, 0, "ng-container", 15);
455
462
  i0.ɵɵelementEnd();
456
463
  } if (rf & 2) {
457
464
  const ctx_r2 = i0.ɵɵnextContext(2);
458
465
  i0.ɵɵadvance();
459
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.nodeTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node));
466
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tree.getTemplateForNode(ctx_r2.node))("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r2.node));
460
467
  } }
461
468
  function UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template(rf, ctx) { if (rf & 1) {
462
- i0.ɵɵelement(0, "p-treeNode", 20);
469
+ i0.ɵɵelement(0, "p-treeNode", 19);
463
470
  } if (rf & 2) {
464
471
  const childNode_r4 = ctx.$implicit;
465
472
  const firstChild_r5 = ctx.first;
@@ -469,23 +476,23 @@ function UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template(rf, ctx) { if (rf
469
476
  i0.ɵɵproperty("node", childNode_r4)("parentNode", ctx_r2.node)("firstChild", firstChild_r5)("lastChild", lastChild_r6)("index", index_r7)("itemSize", ctx_r2.itemSize)("level", ctx_r2.level + 1)("loadingMode", ctx_r2.loadingMode);
470
477
  } }
471
478
  function UITreeNode_Conditional_0_ul_11_Template(rf, ctx) { if (rf & 1) {
472
- i0.ɵɵelementStart(0, "ul", 18);
473
- i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template, 1, 8, "p-treeNode", 19);
479
+ i0.ɵɵelementStart(0, "ul", 17);
480
+ i0.ɵɵtemplate(1, UITreeNode_Conditional_0_ul_11_p_treeNode_1_Template, 1, 8, "p-treeNode", 18);
474
481
  i0.ɵɵelementEnd();
475
482
  } if (rf & 2) {
476
483
  const ctx_r2 = i0.ɵɵnextContext(2);
477
484
  i0.ɵɵstyleProp("display", ctx_r2.node.expanded ? "block" : "none");
478
485
  i0.ɵɵadvance();
479
- i0.ɵɵproperty("ngForOf", ctx_r2.node.children)("ngForTrackBy", ctx_r2.tree.trackBy);
486
+ i0.ɵɵproperty("ngForOf", ctx_r2.node.children)("ngForTrackBy", ctx_r2.tree.trackBy.bind(ctx_r2));
480
487
  } }
481
488
  function UITreeNode_Conditional_0_li_12_Template(rf, ctx) { if (rf & 1) {
482
489
  const _r8 = i0.ɵɵgetCurrentView();
483
- i0.ɵɵelementStart(0, "li", 21);
490
+ i0.ɵɵelementStart(0, "li", 11);
484
491
  i0.ɵɵlistener("drop", function UITreeNode_Conditional_0_li_12_Template_li_drop_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPoint($event, 1)); })("dragover", function UITreeNode_Conditional_0_li_12_Template_li_dragover_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragOver($event)); })("dragenter", function UITreeNode_Conditional_0_li_12_Template_li_dragenter_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragEnter($event, 1)); })("dragleave", function UITreeNode_Conditional_0_li_12_Template_li_dragleave_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDropPointDragLeave($event)); });
485
492
  i0.ɵɵelementEnd();
486
493
  } if (rf & 2) {
487
494
  const ctx_r2 = i0.ɵɵnextContext(2);
488
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c4, ctx_r2.draghoverNext));
495
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c1, ctx_r2.draghoverNext));
489
496
  i0.ɵɵattribute("aria-hidden", true);
490
497
  } }
491
498
  function UITreeNode_Conditional_0_Template(rf, ctx) { if (rf & 1) {
@@ -505,7 +512,7 @@ function UITreeNode_Conditional_0_Template(rf, ctx) { if (rf & 1) {
505
512
  i0.ɵɵelementEnd()();
506
513
  i0.ɵɵtemplate(11, UITreeNode_Conditional_0_ul_11_Template, 2, 4, "ul", 10);
507
514
  i0.ɵɵelementEnd();
508
- i0.ɵɵtemplate(12, UITreeNode_Conditional_0_li_12_Template, 1, 4, "li", 11);
515
+ i0.ɵɵtemplate(12, UITreeNode_Conditional_0_li_12_Template, 1, 4, "li", 1);
509
516
  } if (rf & 2) {
510
517
  const ctx_r2 = i0.ɵɵnextContext();
511
518
  i0.ɵɵproperty("ngIf", ctx_r2.tree.droppableNodes);
@@ -519,35 +526,35 @@ function UITreeNode_Conditional_0_Template(rf, ctx) { if (rf & 1) {
519
526
  i0.ɵɵadvance();
520
527
  i0.ɵɵattribute("data-pc-section", "toggler");
521
528
  i0.ɵɵadvance();
522
- i0.ɵɵproperty("ngIf", !ctx_r2.tree.togglericonTemplate);
529
+ i0.ɵɵproperty("ngIf", !ctx_r2.tree.togglerIconTemplate && !ctx_r2.tree._togglerIconTemplate);
523
530
  i0.ɵɵadvance();
524
- i0.ɵɵproperty("ngIf", ctx_r2.tree.togglericonTemplate);
531
+ i0.ɵɵproperty("ngIf", ctx_r2.tree.togglerIconTemplate || ctx_r2.tree._togglerIconTemplate);
525
532
  i0.ɵɵadvance();
526
533
  i0.ɵɵproperty("ngIf", ctx_r2.tree.selectionMode == "checkbox");
527
534
  i0.ɵɵadvance();
528
535
  i0.ɵɵproperty("ngIf", ctx_r2.node.icon || ctx_r2.node.expandedIcon || ctx_r2.node.collapsedIcon);
529
536
  i0.ɵɵadvance(2);
530
- i0.ɵɵproperty("ngIf", !ctx_r2.tree.nodeTemplate);
537
+ i0.ɵɵproperty("ngIf", !ctx_r2.tree.getTemplateForNode(ctx_r2.node));
531
538
  i0.ɵɵadvance();
532
- i0.ɵɵproperty("ngIf", ctx_r2.tree.nodeTemplate);
539
+ i0.ɵɵproperty("ngIf", ctx_r2.tree.getTemplateForNode(ctx_r2.node));
533
540
  i0.ɵɵadvance();
534
541
  i0.ɵɵproperty("ngIf", !ctx_r2.tree.virtualScroll && ctx_r2.node.children && ctx_r2.node.expanded);
535
542
  i0.ɵɵadvance();
536
543
  i0.ɵɵproperty("ngIf", ctx_r2.tree.droppableNodes && ctx_r2.lastChild);
537
544
  } }
538
- const _c5 = ["filter"];
539
- const _c6 = ["node"];
540
- const _c7 = ["header"];
541
- const _c8 = ["footer"];
542
- const _c9 = ["loader"];
543
- const _c10 = ["empty"];
544
- const _c11 = ["togglericon"];
545
- const _c12 = ["checkboxicon"];
546
- const _c13 = ["loadingicon"];
547
- const _c14 = ["filtericon"];
548
- const _c15 = ["scroller"];
549
- const _c16 = ["wrapper"];
550
- const _c17 = a0 => ({ options: a0 });
545
+ const _c4 = ["filter"];
546
+ const _c5 = ["node"];
547
+ const _c6 = ["header"];
548
+ const _c7 = ["footer"];
549
+ const _c8 = ["loader"];
550
+ const _c9 = ["empty"];
551
+ const _c10 = ["togglericon"];
552
+ const _c11 = ["checkboxicon"];
553
+ const _c12 = ["loadingicon"];
554
+ const _c13 = ["filtericon"];
555
+ const _c14 = ["scroller"];
556
+ const _c15 = ["wrapper"];
557
+ const _c16 = a0 => ({ options: a0 });
551
558
  function Tree_div_1_i_1_Template(rf, ctx) { if (rf & 1) {
552
559
  i0.ɵɵelement(0, "i");
553
560
  } if (rf & 2) {
@@ -570,7 +577,7 @@ function Tree_div_1_ng_container_2_span_2_Template(rf, ctx) { if (rf & 1) {
570
577
  } if (rf & 2) {
571
578
  const ctx_r0 = i0.ɵɵnextContext(3);
572
579
  i0.ɵɵadvance();
573
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loadingiconTemplate);
580
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loadingIconTemplate || ctx_r0._loadingIconTemplate);
574
581
  } }
575
582
  function Tree_div_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
576
583
  i0.ɵɵelementContainerStart(0);
@@ -579,9 +586,9 @@ function Tree_div_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
579
586
  } if (rf & 2) {
580
587
  const ctx_r0 = i0.ɵɵnextContext(2);
581
588
  i0.ɵɵadvance();
582
- i0.ɵɵproperty("ngIf", !ctx_r0.loadingiconTemplate);
589
+ i0.ɵɵproperty("ngIf", !ctx_r0.loadingIconTemplate && !ctx_r0._loadingIconTemplate);
583
590
  i0.ɵɵadvance();
584
- i0.ɵɵproperty("ngIf", ctx_r0.loadingiconTemplate);
591
+ i0.ɵɵproperty("ngIf", ctx_r0.loadingIconTemplate || ctx_r0._loadingIconTemplate);
585
592
  } }
586
593
  function Tree_div_1_Template(rf, ctx) { if (rf & 1) {
587
594
  i0.ɵɵelementStart(0, "div", 12);
@@ -604,7 +611,7 @@ function Tree_Conditional_3_Template(rf, ctx) { if (rf & 1) {
604
611
  i0.ɵɵtemplate(0, Tree_Conditional_3_ng_container_0_Template, 1, 0, "ng-container", 18);
605
612
  } if (rf & 2) {
606
613
  const ctx_r0 = i0.ɵɵnextContext();
607
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filterTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r0.filterOptions));
614
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filterTemplate || ctx_r0._filterTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c2, ctx_r0.filterOptions));
608
615
  } }
609
616
  function Tree_Conditional_4_p_iconField_0_SearchIcon_4_Template(rf, ctx) { if (rf & 1) {
610
617
  i0.ɵɵelement(0, "SearchIcon", 21);
@@ -620,7 +627,7 @@ function Tree_Conditional_4_p_iconField_0_span_5_Template(rf, ctx) { if (rf & 1)
620
627
  } if (rf & 2) {
621
628
  const ctx_r0 = i0.ɵɵnextContext(3);
622
629
  i0.ɵɵadvance();
623
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filtericonTemplate);
630
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.filterIconTemplate || ctx_r0._filterIconTemplate);
624
631
  } }
625
632
  function Tree_Conditional_4_p_iconField_0_Template(rf, ctx) { if (rf & 1) {
626
633
  const _r2 = i0.ɵɵgetCurrentView();
@@ -635,9 +642,9 @@ function Tree_Conditional_4_p_iconField_0_Template(rf, ctx) { if (rf & 1) {
635
642
  i0.ɵɵadvance();
636
643
  i0.ɵɵattribute("placeholder", ctx_r0.filterPlaceholder);
637
644
  i0.ɵɵadvance(3);
638
- i0.ɵɵproperty("ngIf", !ctx_r0.filtericonTemplate);
645
+ i0.ɵɵproperty("ngIf", !ctx_r0.filterIconTemplate && !ctx_r0._filterIconTemplate);
639
646
  i0.ɵɵadvance();
640
- i0.ɵɵproperty("ngIf", ctx_r0.filtericonTemplate);
647
+ i0.ɵɵproperty("ngIf", ctx_r0.filterIconTemplate || ctx_r0._filterIconTemplate);
641
648
  } }
642
649
  function Tree_Conditional_4_Template(rf, ctx) { if (rf & 1) {
643
650
  i0.ɵɵtemplate(0, Tree_Conditional_4_p_iconField_0_Template, 6, 3, "p-iconField", 10);
@@ -685,7 +692,7 @@ function Tree_ng_container_5_p_scroller_1_ng_container_4_ng_template_1_Template(
685
692
  } if (rf & 2) {
686
693
  const scrollerOptions_r11 = ctx.options;
687
694
  const ctx_r0 = i0.ɵɵnextContext(4);
688
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loaderTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c17, scrollerOptions_r11));
695
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.loaderTemplate || ctx_r0._loaderTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c16, scrollerOptions_r11));
689
696
  } }
690
697
  function Tree_ng_container_5_p_scroller_1_ng_container_4_Template(rf, ctx) { if (rf & 1) {
691
698
  i0.ɵɵelementContainerStart(0);
@@ -703,7 +710,7 @@ function Tree_ng_container_5_p_scroller_1_Template(rf, ctx) { if (rf & 1) {
703
710
  i0.ɵɵstyleMap(i0.ɵɵpureFunction1(9, _c0, ctx_r0.scrollHeight !== "flex" ? ctx_r0.scrollHeight : undefined));
704
711
  i0.ɵɵproperty("items", ctx_r0.serializedValue)("tabindex", -1)("scrollHeight", ctx_r0.scrollHeight !== "flex" ? undefined : "100%")("itemSize", ctx_r0.virtualScrollItemSize || ctx_r0._virtualNodeHeight)("lazy", ctx_r0.lazy)("options", ctx_r0.virtualScrollOptions);
705
712
  i0.ɵɵadvance(4);
706
- i0.ɵɵproperty("ngIf", ctx_r0.loaderTemplate);
713
+ i0.ɵɵproperty("ngIf", ctx_r0.loaderTemplate || ctx_r0._loaderTemplate);
707
714
  } }
708
715
  function Tree_ng_container_5_ng_container_2_ul_3_p_treeNode_1_Template(rf, ctx) { if (rf & 1) {
709
716
  i0.ɵɵelement(0, "p-treeNode", 32);
@@ -723,7 +730,7 @@ function Tree_ng_container_5_ng_container_2_ul_3_Template(rf, ctx) { if (rf & 1)
723
730
  const ctx_r0 = i0.ɵɵnextContext(3);
724
731
  i0.ɵɵattribute("aria-label", ctx_r0.ariaLabel)("aria-labelledby", ctx_r0.ariaLabelledBy);
725
732
  i0.ɵɵadvance();
726
- i0.ɵɵproperty("ngForOf", ctx_r0.getRootNode())("ngForTrackBy", ctx_r0.trackBy);
733
+ i0.ɵɵproperty("ngForOf", ctx_r0.getRootNode())("ngForTrackBy", ctx_r0.trackBy.bind(ctx_r0));
727
734
  } }
728
735
  function Tree_ng_container_5_ng_container_2_Template(rf, ctx) { if (rf & 1) {
729
736
  i0.ɵɵelementContainerStart(0);
@@ -758,25 +765,26 @@ function Tree_div_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
758
765
  i0.ɵɵadvance();
759
766
  i0.ɵɵtextInterpolate1(" ", ctx_r0.emptyMessageLabel, " ");
760
767
  } }
761
- function Tree_div_6_ng_container_2_Template(rf, ctx) { if (rf & 1) {
762
- i0.ɵɵelementContainer(0, null, 6);
768
+ function Tree_div_6_2_ng_template_0_Template(rf, ctx) { }
769
+ function Tree_div_6_2_Template(rf, ctx) { if (rf & 1) {
770
+ i0.ɵɵtemplate(0, Tree_div_6_2_ng_template_0_Template, 0, 0, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor);
763
771
  } }
764
772
  function Tree_div_6_Template(rf, ctx) { if (rf & 1) {
765
773
  i0.ɵɵelementStart(0, "div", 33);
766
- i0.ɵɵtemplate(1, Tree_div_6_ng_container_1_Template, 2, 1, "ng-container", 34)(2, Tree_div_6_ng_container_2_Template, 2, 0, "ng-container", 9);
774
+ i0.ɵɵtemplate(1, Tree_div_6_ng_container_1_Template, 2, 1, "ng-container", 34)(2, Tree_div_6_2_Template, 2, 0, null, 9);
767
775
  i0.ɵɵelementEnd();
768
776
  } if (rf & 2) {
769
777
  const ctx_r0 = i0.ɵɵnextContext();
770
778
  i0.ɵɵadvance();
771
- i0.ɵɵproperty("ngIf", !ctx_r0.emptymessageTemplate)("ngIfElse", ctx_r0.emptyFilter);
779
+ i0.ɵɵproperty("ngIf", !ctx_r0.emptyMessageTemplate && !ctx_r0._emptyMessageTemplate)("ngIfElse", ctx_r0.emptyFilter);
772
780
  i0.ɵɵadvance();
773
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.emptymessageTemplate);
781
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.emptyMessageTemplate || ctx_r0._emptyMessageTemplate);
774
782
  } }
775
783
  function Tree_ng_container_7_Template(rf, ctx) { if (rf & 1) {
776
784
  i0.ɵɵelementContainer(0);
777
785
  } }
778
786
  class UITreeNode extends BaseComponent {
779
- static ICON_CLASS = 'p-treenode-icon ';
787
+ static ICON_CLASS = 'p-tree-node-icon ';
780
788
  rowNode;
781
789
  node;
782
790
  parentNode;
@@ -1142,7 +1150,7 @@ class UITreeNode extends BaseComponent {
1142
1150
  event.preventDefault();
1143
1151
  }
1144
1152
  setAllNodesTabIndexes() {
1145
- const nodes = find(this.tree.el.nativeElement, '.p-treenode');
1153
+ const nodes = find(this.tree.el.nativeElement, '.p-tree-node');
1146
1154
  const hasSelectedNode = [...nodes].some((node) => node.getAttribute('aria-selected') === 'true' || node.getAttribute('aria-checked') === 'true');
1147
1155
  [...nodes].forEach((node) => {
1148
1156
  node.tabIndex = -1;
@@ -1178,7 +1186,7 @@ class UITreeNode extends BaseComponent {
1178
1186
  }
1179
1187
  }
1180
1188
  findLastVisibleDescendant(nodeElement) {
1181
- const listElement = Array.from(nodeElement.children).find((el) => hasClass(el, 'p-treenode'));
1189
+ const listElement = Array.from(nodeElement.children).find((el) => hasClass(el, 'p-tree-node'));
1182
1190
  const childrenListElement = listElement?.children[1];
1183
1191
  if (childrenListElement && childrenListElement.children.length > 0) {
1184
1192
  const lastChildElement = childrenListElement.children[childrenListElement.children.length - 1];
@@ -1210,7 +1218,7 @@ class UITreeNode extends BaseComponent {
1210
1218
  }, 1);
1211
1219
  }
1212
1220
  static ɵfac = /*@__PURE__*/ (() => { let ɵUITreeNode_BaseFactory; return function UITreeNode_Factory(__ngFactoryType__) { return (ɵUITreeNode_BaseFactory || (ɵUITreeNode_BaseFactory = i0.ɵɵgetInheritedFactory(UITreeNode)))(__ngFactoryType__ || UITreeNode); }; })();
1213
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UITreeNode, selectors: [["p-treeNode"]], inputs: { rowNode: "rowNode", node: "node", parentNode: "parentNode", root: [2, "root", "root", booleanAttribute], index: [2, "index", "index", numberAttribute], firstChild: [2, "firstChild", "firstChild", booleanAttribute], lastChild: [2, "lastChild", "lastChild", booleanAttribute], level: [2, "level", "level", numberAttribute], indentation: [2, "indentation", "indentation", numberAttribute], itemSize: [2, "itemSize", "itemSize", numberAttribute], loadingMode: "loadingMode" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["icon", ""], ["class", "p-treenode-droppoint", 3, "ngClass", "drop", "dragover", "dragenter", "dragleave", 4, "ngIf"], ["role", "treeitem", 3, "keydown", "ngClass", "ngStyle"], [3, "click", "contextmenu", "touchend", "drop", "dragover", "dragenter", "dragleave", "dragstart", "dragend", "ngClass", "draggable"], ["type", "button", "pRipple", "", "tabindex", "-1", 1, "p-tree-node-toggle-button", 3, "click"], [4, "ngIf"], ["class", "p-tree-node-toggle-icon", 4, "ngIf"], ["styleClass", "p-tree-node-checkbox", 3, "ngModel", "binary", "indeterminate", "disabled", "variant", "tabindex", 4, "ngIf"], [3, "class", 4, "ngIf"], [1, "p-tree-node-label"], ["class", "p-tree-node-children", "style", "display: none;", "role", "group", 3, "display", 4, "ngIf"], ["class", "p-tree-node-droppoint", 3, "ngClass", "drop", "dragover", "dragenter", "dragleave", 4, "ngIf"], [1, "p-treenode-droppoint", 3, "drop", "dragover", "dragenter", "dragleave", "ngClass"], [3, "styleClass", 4, "ngIf"], [3, "styleClass"], [1, "p-tree-node-toggle-icon"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["styleClass", "p-tree-node-checkbox", 3, "ngModel", "binary", "indeterminate", "disabled", "variant", "tabindex"], ["role", "group", 1, "p-tree-node-children", 2, "display", "none"], [3, "node", "parentNode", "firstChild", "lastChild", "index", "itemSize", "level", "loadingMode", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "node", "parentNode", "firstChild", "lastChild", "index", "itemSize", "level", "loadingMode"], [1, "p-tree-node-droppoint", 3, "drop", "dragover", "dragenter", "dragleave", "ngClass"]], template: function UITreeNode_Template(rf, ctx) { if (rf & 1) {
1221
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UITreeNode, selectors: [["p-treeNode"]], inputs: { rowNode: "rowNode", node: "node", parentNode: "parentNode", root: [2, "root", "root", booleanAttribute], index: [2, "index", "index", numberAttribute], firstChild: [2, "firstChild", "firstChild", booleanAttribute], lastChild: [2, "lastChild", "lastChild", booleanAttribute], level: [2, "level", "level", numberAttribute], indentation: [2, "indentation", "indentation", numberAttribute], itemSize: [2, "itemSize", "itemSize", numberAttribute], loadingMode: "loadingMode" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], decls: 1, vars: 1, consts: [["icon", ""], ["class", "p-tree-node-droppoint", 3, "ngClass", "drop", "dragover", "dragenter", "dragleave", 4, "ngIf"], ["role", "treeitem", 3, "keydown", "ngClass", "ngStyle"], [3, "click", "contextmenu", "touchend", "drop", "dragover", "dragenter", "dragleave", "dragstart", "dragend", "ngClass", "draggable"], ["type", "button", "pRipple", "", "tabindex", "-1", 1, "p-tree-node-toggle-button", 3, "click"], [4, "ngIf"], ["class", "p-tree-node-toggle-icon", 4, "ngIf"], ["styleClass", "p-tree-node-checkbox", 3, "ngModel", "binary", "indeterminate", "disabled", "variant", "tabindex", 4, "ngIf"], [3, "class", 4, "ngIf"], [1, "p-tree-node-label"], ["class", "p-tree-node-children", "style", "display: none;", "role", "group", 3, "display", 4, "ngIf"], [1, "p-tree-node-droppoint", 3, "drop", "dragover", "dragenter", "dragleave", "ngClass"], [3, "styleClass", 4, "ngIf"], [3, "styleClass"], [1, "p-tree-node-toggle-icon"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["styleClass", "p-tree-node-checkbox", 3, "ngModel", "binary", "indeterminate", "disabled", "variant", "tabindex"], ["role", "group", 1, "p-tree-node-children", 2, "display", "none"], [3, "node", "parentNode", "firstChild", "lastChild", "index", "itemSize", "level", "loadingMode", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "node", "parentNode", "firstChild", "lastChild", "index", "itemSize", "level", "loadingMode"]], template: function UITreeNode_Template(rf, ctx) { if (rf & 1) {
1214
1222
  i0.ɵɵtemplate(0, UITreeNode_Conditional_0_Template, 13, 29);
1215
1223
  } if (rf & 2) {
1216
1224
  i0.ɵɵconditional(ctx.node ? 0 : -1);
@@ -1226,9 +1234,9 @@ class UITreeNode extends BaseComponent {
1226
1234
  @if (node) {
1227
1235
  <li
1228
1236
  *ngIf="tree.droppableNodes"
1229
- class="p-treenode-droppoint"
1237
+ class="p-tree-node-droppoint"
1230
1238
  [attr.aria-hidden]="true"
1231
- [ngClass]="{ 'p-treenode-droppoint-active': draghoverPrev }"
1239
+ [ngClass]="{ 'p-tree-node-droppoint-active': draghoverPrev }"
1232
1240
  (drop)="onDropPoint($event, -1)"
1233
1241
  (dragover)="onDropPointDragOver($event)"
1234
1242
  (dragenter)="onDropPointDragEnter($event, -1)"
@@ -1265,7 +1273,7 @@ class UITreeNode extends BaseComponent {
1265
1273
  (dragend)="onDragStop($event)"
1266
1274
  >
1267
1275
  <button type="button" [attr.data-pc-section]="'toggler'" class="p-tree-node-toggle-button" (click)="toggle($event)" pRipple tabindex="-1">
1268
- <ng-container *ngIf="!tree.togglericonTemplate">
1276
+ <ng-container *ngIf="!tree.togglerIconTemplate && !tree._togglerIconTemplate">
1269
1277
  <ng-container *ngIf="!node.loading">
1270
1278
  <ChevronRightIcon *ngIf="!node.expanded" [styleClass]="'p-tree-node-toggle-icon'" />
1271
1279
  <ChevronDownIcon *ngIf="node.expanded" [styleClass]="'p-tree-node-toggle-icon'" />
@@ -1274,8 +1282,8 @@ class UITreeNode extends BaseComponent {
1274
1282
  <SpinnerIcon [styleClass]="'pi-spin p-tree-node-toggle-icon'" />
1275
1283
  </ng-container>
1276
1284
  </ng-container>
1277
- <span *ngIf="tree.togglericonTemplate" class="p-tree-node-toggle-icon">
1278
- <ng-template *ngTemplateOutlet="tree.togglericonTemplate; context: { $implicit: node.expanded }"></ng-template>
1285
+ <span *ngIf="tree.togglerIconTemplate || tree._togglerIconTemplate" class="p-tree-node-toggle-icon">
1286
+ <ng-template *ngTemplateOutlet="tree.togglerIconTemplate || tree._togglerIconTemplate; context: { $implicit: node.expanded }"></ng-template>
1279
1287
  </span>
1280
1288
  </button>
1281
1289
 
@@ -1290,11 +1298,11 @@ class UITreeNode extends BaseComponent {
1290
1298
  [attr.data-p-partialchecked]="node.partialSelected"
1291
1299
  [tabindex]="-1"
1292
1300
  >
1293
- <ng-container *ngIf="tree.checkboxiconTemplate">
1301
+ <ng-container *ngIf="tree.checkboxIconTemplate || tree._checkboxIconTemplate">
1294
1302
  <ng-template #icon>
1295
1303
  <ng-template
1296
1304
  *ngTemplateOutlet="
1297
- tree.checkboxiconTemplate;
1305
+ tree.checkboxIconTemplate || tree._checkboxIconTemplate;
1298
1306
  context: {
1299
1307
  $implicit: isSelected(),
1300
1308
  partialSelected: node.partialSelected,
@@ -1308,15 +1316,15 @@ class UITreeNode extends BaseComponent {
1308
1316
 
1309
1317
  <span [class]="getIcon()" *ngIf="node.icon || node.expandedIcon || node.collapsedIcon"></span>
1310
1318
  <span class="p-tree-node-label">
1311
- <span *ngIf="!tree.nodeTemplate">{{ node.label }}</span>
1312
- <span *ngIf="tree.nodeTemplate">
1313
- <ng-container *ngTemplateOutlet="tree.nodeTemplate; context: { $implicit: node }"></ng-container>
1319
+ <span *ngIf="!tree.getTemplateForNode(node)">{{ node.label }}</span>
1320
+ <span *ngIf="tree.getTemplateForNode(node)">
1321
+ <ng-container *ngTemplateOutlet="tree.getTemplateForNode(node); context: { $implicit: node }"></ng-container>
1314
1322
  </span>
1315
1323
  </span>
1316
1324
  </div>
1317
1325
  <ul class="p-tree-node-children" style="display: none;" *ngIf="!tree.virtualScroll && node.children && node.expanded" [style.display]="node.expanded ? 'block' : 'none'" role="group">
1318
1326
  <p-treeNode
1319
- *ngFor="let childNode of node.children; let firstChild = first; let lastChild = last; let index = index; trackBy: tree.trackBy"
1327
+ *ngFor="let childNode of node.children; let firstChild = first; let lastChild = last; let index = index; trackBy: tree.trackBy.bind(this)"
1320
1328
  [node]="childNode"
1321
1329
  [parentNode]="node"
1322
1330
  [firstChild]="firstChild"
@@ -1380,7 +1388,6 @@ class UITreeNode extends BaseComponent {
1380
1388
  */
1381
1389
  class Tree extends BaseComponent {
1382
1390
  dragDropService;
1383
- filterTemplate;
1384
1391
  /**
1385
1392
  * An array of treenodes.
1386
1393
  * @group Props
@@ -1645,6 +1652,11 @@ class Tree extends BaseComponent {
1645
1652
  * @group Emits
1646
1653
  */
1647
1654
  onFilter = new EventEmitter();
1655
+ /**
1656
+ * Filter template.
1657
+ * @group Templates
1658
+ */
1659
+ filterTemplate;
1648
1660
  /**
1649
1661
  * Node template.
1650
1662
  * @group Templates
@@ -1669,30 +1681,79 @@ class Tree extends BaseComponent {
1669
1681
  * Empty message template.
1670
1682
  * @group Templates
1671
1683
  */
1672
- emptymessageTemplate;
1684
+ emptyMessageTemplate;
1673
1685
  /**
1674
1686
  * Toggler icon template.
1675
1687
  * @group Templates
1676
1688
  */
1677
- togglericonTemplate;
1689
+ togglerIconTemplate;
1678
1690
  /**
1679
1691
  * Checkbox icon template.
1680
1692
  * @group Templates
1681
1693
  */
1682
- checkboxiconTemplate;
1694
+ checkboxIconTemplate;
1683
1695
  /**
1684
1696
  * Loading icon template.
1685
1697
  * @group Templates
1686
1698
  */
1687
- loadingiconTemplate;
1699
+ loadingIconTemplate;
1688
1700
  /**
1689
1701
  * Filter icon template.
1690
1702
  * @group Templates
1691
1703
  */
1692
- filtericonTemplate;
1704
+ filterIconTemplate;
1693
1705
  filterViewChild;
1694
1706
  scroller;
1695
1707
  wrapperViewChild;
1708
+ templates;
1709
+ _headerTemplate;
1710
+ _emptyMessageTemplate;
1711
+ _footerTemplate;
1712
+ _loaderTemplate;
1713
+ _togglerIconTemplate;
1714
+ _checkboxIconTemplate;
1715
+ _loadingIconTemplate;
1716
+ _filterIconTemplate;
1717
+ _filterTemplate;
1718
+ ngAfterContentInit() {
1719
+ if (this.templates.length) {
1720
+ this._templateMap = {};
1721
+ }
1722
+ this.templates.forEach((item) => {
1723
+ switch (item.getType()) {
1724
+ case 'header':
1725
+ this._headerTemplate = item.template;
1726
+ break;
1727
+ case 'empty':
1728
+ this._emptyMessageTemplate = item.template;
1729
+ break;
1730
+ case 'footer':
1731
+ this._footerTemplate = item.template;
1732
+ break;
1733
+ case 'loader':
1734
+ this._loaderTemplate = item.template;
1735
+ break;
1736
+ case 'togglericon':
1737
+ this._togglerIconTemplate = item.template;
1738
+ break;
1739
+ case 'checkboxicon':
1740
+ this._checkboxIconTemplate = item.template;
1741
+ break;
1742
+ case 'loadingicon':
1743
+ this._loadingIconTemplate = item.template;
1744
+ break;
1745
+ case 'filtericon':
1746
+ this._filterIconTemplate = item.template;
1747
+ break;
1748
+ case 'filter':
1749
+ this._filterTemplate = item.template;
1750
+ break;
1751
+ default:
1752
+ this._templateMap[item.name] = item.template;
1753
+ break;
1754
+ }
1755
+ });
1756
+ }
1696
1757
  serializedValue;
1697
1758
  nodeTouched;
1698
1759
  dragNodeTree;
@@ -2243,16 +2304,17 @@ class Tree extends BaseComponent {
2243
2304
  }
2244
2305
  static ɵfac = function Tree_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || Tree)(i0.ɵɵdirectiveInject(i3.TreeDragDropService, 8)); };
2245
2306
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Tree, selectors: [["p-tree"]], contentQueries: function Tree_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
2246
- i0.ɵɵcontentQuery(dirIndex, _c5, 5);
2247
- i0.ɵɵcontentQuery(dirIndex, _c6, 5);
2248
- i0.ɵɵcontentQuery(dirIndex, _c7, 5);
2249
- i0.ɵɵcontentQuery(dirIndex, _c8, 5);
2250
- i0.ɵɵcontentQuery(dirIndex, _c9, 5);
2251
- i0.ɵɵcontentQuery(dirIndex, _c10, 5);
2252
- i0.ɵɵcontentQuery(dirIndex, _c11, 5);
2253
- i0.ɵɵcontentQuery(dirIndex, _c12, 5);
2254
- i0.ɵɵcontentQuery(dirIndex, _c13, 5);
2255
- i0.ɵɵcontentQuery(dirIndex, _c14, 5);
2307
+ i0.ɵɵcontentQuery(dirIndex, _c4, 4);
2308
+ i0.ɵɵcontentQuery(dirIndex, _c5, 4);
2309
+ i0.ɵɵcontentQuery(dirIndex, _c6, 4);
2310
+ i0.ɵɵcontentQuery(dirIndex, _c7, 4);
2311
+ i0.ɵɵcontentQuery(dirIndex, _c8, 4);
2312
+ i0.ɵɵcontentQuery(dirIndex, _c9, 4);
2313
+ i0.ɵɵcontentQuery(dirIndex, _c10, 4);
2314
+ i0.ɵɵcontentQuery(dirIndex, _c11, 4);
2315
+ i0.ɵɵcontentQuery(dirIndex, _c12, 4);
2316
+ i0.ɵɵcontentQuery(dirIndex, _c13, 4);
2317
+ i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);
2256
2318
  } if (rf & 2) {
2257
2319
  let _t;
2258
2320
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filterTemplate = _t.first);
@@ -2260,15 +2322,16 @@ class Tree extends BaseComponent {
2260
2322
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerTemplate = _t.first);
2261
2323
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerTemplate = _t.first);
2262
2324
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.loaderTemplate = _t.first);
2263
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.emptymessageTemplate = _t.first);
2264
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.togglericonTemplate = _t.first);
2265
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.checkboxiconTemplate = _t.first);
2266
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.loadingiconTemplate = _t.first);
2267
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filtericonTemplate = _t.first);
2325
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.emptyMessageTemplate = _t.first);
2326
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.togglerIconTemplate = _t.first);
2327
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.checkboxIconTemplate = _t.first);
2328
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.loadingIconTemplate = _t.first);
2329
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filterIconTemplate = _t.first);
2330
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);
2268
2331
  } }, viewQuery: function Tree_Query(rf, ctx) { if (rf & 1) {
2269
- i0.ɵɵviewQuery(_c5, 5);
2332
+ i0.ɵɵviewQuery(_c4, 5);
2333
+ i0.ɵɵviewQuery(_c14, 5);
2270
2334
  i0.ɵɵviewQuery(_c15, 5);
2271
- i0.ɵɵviewQuery(_c16, 5);
2272
2335
  } if (rf & 2) {
2273
2336
  let _t;
2274
2337
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.filterViewChild = _t.first);
@@ -2286,44 +2349,44 @@ class Tree extends BaseComponent {
2286
2349
  i0.ɵɵadvance();
2287
2350
  i0.ɵɵproperty("ngIf", ctx.loading && ctx.loadingMode === "mask");
2288
2351
  i0.ɵɵadvance();
2289
- i0.ɵɵproperty("ngTemplateOutlet", ctx.headerTemplate);
2352
+ i0.ɵɵproperty("ngTemplateOutlet", ctx.headerTemplate || ctx._headerTemplate);
2290
2353
  i0.ɵɵadvance();
2291
- i0.ɵɵconditional(ctx.filterTemplate ? 3 : 4);
2354
+ i0.ɵɵconditional(ctx.filterTemplate || ctx._filterTemplate ? 3 : 4);
2292
2355
  i0.ɵɵadvance(2);
2293
2356
  i0.ɵɵproperty("ngIf", (tmp_6_0 = ctx.getRootNode()) == null ? null : tmp_6_0.length);
2294
2357
  i0.ɵɵadvance();
2295
2358
  i0.ɵɵproperty("ngIf", !ctx.loading && (ctx.getRootNode() == null || ctx.getRootNode().length === 0));
2296
2359
  i0.ɵɵadvance();
2297
- i0.ɵɵproperty("ngTemplateOutlet", ctx.footerTemplate);
2298
- } }, dependencies: [CommonModule, i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgTemplateOutlet, i1.NgStyle, Scroller, SharedModule, SearchIcon, SpinnerIcon, InputText, IconField, InputIcon, FormsModule, UITreeNode], encapsulation: 2 });
2360
+ i0.ɵɵproperty("ngTemplateOutlet", ctx.footerTemplate || ctx._footerTemplate);
2361
+ } }, dependencies: [CommonModule, i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgTemplateOutlet, i1.NgStyle, Scroller, SharedModule, SearchIcon, SpinnerIcon, InputText, FormsModule, UITreeNode], encapsulation: 2 });
2299
2362
  }
2300
2363
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(Tree, [{
2301
2364
  type: Component,
2302
2365
  args: [{
2303
2366
  selector: 'p-tree',
2304
2367
  standalone: true,
2305
- imports: [CommonModule, Ripple, Scroller, SharedModule, CheckIcon, ChevronDownIcon, ChevronRightIcon, MinusIcon, SearchIcon, SpinnerIcon, PlusIcon, InputText, IconField, InputIcon, Checkbox, FormsModule, UITreeNode],
2368
+ imports: [CommonModule, Scroller, SharedModule, SearchIcon, SpinnerIcon, InputText, FormsModule, UITreeNode],
2306
2369
  template: `
2307
2370
  <div [ngClass]="containerClass" [ngStyle]="style" [class]="styleClass" (drop)="onDrop($event)" (dragover)="onDragOver($event)" (dragenter)="onDragEnter()" (dragleave)="onDragLeave($event)">
2308
2371
  <div class="p-tree-mask p-overlay-mask" *ngIf="loading && loadingMode === 'mask'">
2309
2372
  <i *ngIf="loadingIcon" [class]="'p-tree-loading-icon pi-spin ' + loadingIcon"></i>
2310
2373
  <ng-container *ngIf="!loadingIcon">
2311
- <SpinnerIcon *ngIf="!loadingiconTemplate" [spin]="true" [styleClass]="'p-tree-loading-icon'" />
2312
- <span *ngIf="loadingiconTemplate" class="p-tree-loading-icon">
2313
- <ng-template *ngTemplateOutlet="loadingiconTemplate"></ng-template>
2374
+ <SpinnerIcon *ngIf="!loadingIconTemplate && !_loadingIconTemplate" [spin]="true" [styleClass]="'p-tree-loading-icon'" />
2375
+ <span *ngIf="loadingIconTemplate || _loadingIconTemplate" class="p-tree-loading-icon">
2376
+ <ng-template *ngTemplateOutlet="loadingIconTemplate || _loadingIconTemplate"></ng-template>
2314
2377
  </span>
2315
2378
  </ng-container>
2316
2379
  </div>
2317
- <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
2318
- @if (filterTemplate) {
2319
- <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: filterOptions }"></ng-container>
2380
+ <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
2381
+ @if (filterTemplate || _filterTemplate) {
2382
+ <ng-container *ngTemplateOutlet="filterTemplate || _filterTemplate; context: { $implicit: filterOptions }"></ng-container>
2320
2383
  } @else {
2321
2384
  <p-iconField *ngIf="filter">
2322
2385
  <input #filter pInputText type="search" autocomplete="off" class="p-tree-filter-input" [attr.placeholder]="filterPlaceholder" (keydown.enter)="$event.preventDefault()" (input)="_filter($event.target.value)" />
2323
2386
  <p-inputIcon>
2324
- <SearchIcon *ngIf="!filtericonTemplate" class="p-tree-filter-icon" />
2325
- <span *ngIf="filtericonTemplate">
2326
- <ng-template *ngTemplateOutlet="filtericonTemplate"></ng-template>
2387
+ <SearchIcon *ngIf="!filterIconTemplate && !_filterIconTemplate" class="p-tree-filter-icon" />
2388
+ <span *ngIf="filterIconTemplate || _filterIconTemplate">
2389
+ <ng-template *ngTemplateOutlet="filterIconTemplate || _filterIconTemplate"></ng-template>
2327
2390
  </span>
2328
2391
  </p-inputIcon>
2329
2392
  </p-iconField>
@@ -2363,9 +2426,9 @@ class Tree extends BaseComponent {
2363
2426
  ></p-treeNode>
2364
2427
  </ul>
2365
2428
  </ng-template>
2366
- <ng-container *ngIf="loaderTemplate">
2429
+ <ng-container *ngIf="loaderTemplate || _loaderTemplate">
2367
2430
  <ng-template #loader let-scrollerOptions="options">
2368
- <ng-container *ngTemplateOutlet="loaderTemplate; context: { options: scrollerOptions }"></ng-container>
2431
+ <ng-container *ngTemplateOutlet="loaderTemplate || _loaderTemplate; context: { options: scrollerOptions }"></ng-container>
2369
2432
  </ng-template>
2370
2433
  </ng-container>
2371
2434
  </p-scroller>
@@ -2373,7 +2436,7 @@ class Tree extends BaseComponent {
2373
2436
  <div #wrapper class="p-tree-root" [style.max-height]="scrollHeight">
2374
2437
  <ul class="p-tree-root-children" *ngIf="getRootNode()" role="tree" [attr.aria-label]="ariaLabel" [attr.aria-labelledby]="ariaLabelledBy">
2375
2438
  <p-treeNode
2376
- *ngFor="let node of getRootNode(); let firstChild = first; let lastChild = last; let index = index; trackBy: trackBy"
2439
+ *ngFor="let node of getRootNode(); let firstChild = first; let lastChild = last; let index = index; trackBy: trackBy.bind(this)"
2377
2440
  [node]="node"
2378
2441
  [firstChild]="firstChild"
2379
2442
  [lastChild]="lastChild"
@@ -2387,12 +2450,12 @@ class Tree extends BaseComponent {
2387
2450
  </ng-container>
2388
2451
 
2389
2452
  <div class="p-tree-empty-message" *ngIf="!loading && (getRootNode() == null || getRootNode().length === 0)">
2390
- <ng-container *ngIf="!emptymessageTemplate; else emptyFilter">
2453
+ <ng-container *ngIf="!emptyMessageTemplate && !_emptyMessageTemplate; else emptyFilter">
2391
2454
  {{ emptyMessageLabel }}
2392
2455
  </ng-container>
2393
- <ng-container #emptyFilter *ngTemplateOutlet="emptymessageTemplate"></ng-container>
2456
+ <ng-template #emptyFilter *ngTemplateOutlet="emptyMessageTemplate || _emptyMessageTemplate"></ng-template>
2394
2457
  </div>
2395
- <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
2458
+ <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
2396
2459
  </div>
2397
2460
  `,
2398
2461
  changeDetection: ChangeDetectionStrategy.Default,
@@ -2401,10 +2464,7 @@ class Tree extends BaseComponent {
2401
2464
  }]
2402
2465
  }], () => [{ type: i3.TreeDragDropService, decorators: [{
2403
2466
  type: Optional
2404
- }] }], { filterTemplate: [{
2405
- type: ContentChild,
2406
- args: ['filter']
2407
- }], value: [{
2467
+ }] }], { value: [{
2408
2468
  type: Input
2409
2469
  }], selectionMode: [{
2410
2470
  type: Input
@@ -2515,33 +2575,36 @@ class Tree extends BaseComponent {
2515
2575
  type: Output
2516
2576
  }], onFilter: [{
2517
2577
  type: Output
2578
+ }], filterTemplate: [{
2579
+ type: ContentChild,
2580
+ args: ['filter', { descendants: false }]
2518
2581
  }], nodeTemplate: [{
2519
2582
  type: ContentChild,
2520
- args: ['node']
2583
+ args: ['node', { descendants: false }]
2521
2584
  }], headerTemplate: [{
2522
2585
  type: ContentChild,
2523
- args: ['header']
2586
+ args: ['header', { descendants: false }]
2524
2587
  }], footerTemplate: [{
2525
2588
  type: ContentChild,
2526
- args: ['footer']
2589
+ args: ['footer', { descendants: false }]
2527
2590
  }], loaderTemplate: [{
2528
2591
  type: ContentChild,
2529
- args: ['loader']
2530
- }], emptymessageTemplate: [{
2592
+ args: ['loader', { descendants: false }]
2593
+ }], emptyMessageTemplate: [{
2531
2594
  type: ContentChild,
2532
- args: ['empty']
2533
- }], togglericonTemplate: [{
2595
+ args: ['empty', { descendants: false }]
2596
+ }], togglerIconTemplate: [{
2534
2597
  type: ContentChild,
2535
- args: ['togglericon']
2536
- }], checkboxiconTemplate: [{
2598
+ args: ['togglericon', { descendants: false }]
2599
+ }], checkboxIconTemplate: [{
2537
2600
  type: ContentChild,
2538
- args: ['checkboxicon']
2539
- }], loadingiconTemplate: [{
2601
+ args: ['checkboxicon', { descendants: false }]
2602
+ }], loadingIconTemplate: [{
2540
2603
  type: ContentChild,
2541
- args: ['loadingicon']
2542
- }], filtericonTemplate: [{
2604
+ args: ['loadingicon', { descendants: false }]
2605
+ }], filterIconTemplate: [{
2543
2606
  type: ContentChild,
2544
- args: ['filtericon']
2607
+ args: ['filtericon', { descendants: false }]
2545
2608
  }], filterViewChild: [{
2546
2609
  type: ViewChild,
2547
2610
  args: ['filter']
@@ -2551,6 +2614,9 @@ class Tree extends BaseComponent {
2551
2614
  }], wrapperViewChild: [{
2552
2615
  type: ViewChild,
2553
2616
  args: ['wrapper']
2617
+ }], templates: [{
2618
+ type: ContentChildren,
2619
+ args: [PrimeTemplate]
2554
2620
  }] }); })();
2555
2621
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Tree, { className: "Tree" }); })();
2556
2622
  class TreeModule {