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
@@ -147,7 +147,7 @@ class Textarea extends BaseComponent {
147
147
  * Defines the size of the component.
148
148
  * @group Props
149
149
  */
150
- size;
150
+ pSize;
151
151
  /**
152
152
  * Callback to invoke on textarea resize.
153
153
  * @param {(Event | {})} event - Custom resize event.
@@ -226,8 +226,8 @@ class Textarea extends BaseComponent {
226
226
  static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: Textarea, selectors: [["", "pTextarea", ""]], hostAttrs: [1, "p-textarea", "p-component"], hostVars: 16, hostBindings: function Textarea_HostBindings(rf, ctx) { if (rf & 1) {
227
227
  i0.ɵɵlistener("input", function Textarea_input_HostBindingHandler($event) { return ctx.onInput($event); });
228
228
  } if (rf & 2) {
229
- i0.ɵɵclassProp("p-filled", ctx.filled)("p-textarea-resizable", ctx.autoResize)("p-variant-filled", ctx.variant === "filled" || ctx.config.inputStyle() === "filled" || ctx.config.inputVariant() === "filled")("p-textarea-fluid", ctx.hasFluid)("p-textarea-sm", ctx.size === "small")("p-inputfield-sm", ctx.size === "small")("p-textarea-lg", ctx.size === "large")("p-inputfield-lg", ctx.size === "large");
230
- } }, inputs: { autoResize: [2, "autoResize", "autoResize", booleanAttribute], variant: "variant", fluid: [2, "fluid", "fluid", booleanAttribute], size: "size" }, outputs: { onResize: "onResize" }, standalone: true, features: [i0.ɵɵProvidersFeature([TextareaStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature] });
229
+ i0.ɵɵclassProp("p-filled", ctx.filled)("p-textarea-resizable", ctx.autoResize)("p-variant-filled", ctx.variant === "filled" || ctx.config.inputStyle() === "filled" || ctx.config.inputVariant() === "filled")("p-textarea-fluid", ctx.hasFluid)("p-textarea-sm", ctx.pSize === "small")("p-inputfield-sm", ctx.pSize === "small")("p-textarea-lg", ctx.pSize === "large")("p-inputfield-lg", ctx.pSize === "large");
230
+ } }, inputs: { autoResize: [2, "autoResize", "autoResize", booleanAttribute], variant: "variant", fluid: [2, "fluid", "fluid", booleanAttribute], pSize: "pSize" }, outputs: { onResize: "onResize" }, standalone: true, features: [i0.ɵɵProvidersFeature([TextareaStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature] });
231
231
  }
232
232
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(Textarea, [{
233
233
  type: Directive,
@@ -240,10 +240,10 @@ class Textarea extends BaseComponent {
240
240
  '[class.p-textarea-resizable]': 'autoResize',
241
241
  '[class.p-variant-filled]': 'variant === "filled" || config.inputStyle() === "filled" || config.inputVariant() === "filled"',
242
242
  '[class.p-textarea-fluid]': 'hasFluid',
243
- '[class.p-textarea-sm]': 'size === "small"',
244
- '[class.p-inputfield-sm]': 'size === "small"',
245
- '[class.p-textarea-lg]': 'size === "large"',
246
- '[class.p-inputfield-lg]': 'size === "large"'
243
+ '[class.p-textarea-sm]': 'pSize === "small"',
244
+ '[class.p-inputfield-sm]': 'pSize === "small"',
245
+ '[class.p-textarea-lg]': 'pSize === "large"',
246
+ '[class.p-inputfield-lg]': 'pSize === "large"'
247
247
  },
248
248
  providers: [TextareaStyle]
249
249
  }]
@@ -259,7 +259,7 @@ class Textarea extends BaseComponent {
259
259
  }], fluid: [{
260
260
  type: Input,
261
261
  args: [{ transform: booleanAttribute }]
262
- }], size: [{
262
+ }], pSize: [{
263
263
  type: Input
264
264
  }], onResize: [{
265
265
  type: Output
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-textarea.mjs","sources":["../../src/textarea/style/textareastyle.ts","../../src/textarea/textarea.ts","../../src/textarea/primeng-textarea.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-textarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('textarea.color')};\n background: ${dt('textarea.background')};\n padding: ${dt('textarea.padding.y')} ${dt('textarea.padding.x')};\n border: 1px solid ${dt('textarea.border.color')};\n transition: background ${dt('textarea.transition.duration')}, color ${dt('textarea.transition.duration')}, border-color ${dt('textarea.transition.duration')}, outline-color ${dt('textarea.transition.duration')}, box-shadow ${dt(\n 'textarea.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('textarea.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('textarea.shadow')};\n}\n\n.p-textarea.ng-invalid.ng-dirty {\n border-color: ${dt('textarea.invalid.border.color')}\n};\n\n.p-textarea:enabled:hover {\n border-color: ${dt('textarea.hover.border.color')};\n}\n\n.p-textarea:enabled:focus {\n border-color: ${dt('textarea.focus.border.color')};\n box-shadow: ${dt('textarea.focus.ring.shadow')};\n outline: ${dt('textarea.focus.ring.width')} ${dt('textarea.focus.ring.style')} ${dt('textarea.focus.ring.color')};\n outline-offset: ${dt('textarea.focus.ring.offset')};\n}\n\n.p-textarea.p-invalid {\n border-color: ${dt('textarea.invalid.border.color')};\n}\n\n.p-textarea.p-variant-filled {\n background: ${dt('textarea.filled.background')};\n}\n\n.p-textarea.p-variant-filled:enabled:focus {\n background: ${dt('textarea.filled.focus.background')};\n}\n\n.p-textarea:disabled {\n opacity: 1;\n background: ${dt('textarea.disabled.background')};\n color: ${dt('textarea.disabled.color')};\n}\n\n.p-textarea::placeholder {\n color: ${dt('textarea.placeholder.color')};\n}\n\n.p-textarea.ng-invalid.ng-dirty::placeholder {\n color: ${dt('textarea.invalid.placeholder.color')};\n}\n\n.p-textarea-fluid {\n width: 100%;\n}\n\n.p-textarea-resizable {\n overflow: hidden;\n resize: none;\n}\n\n.p-textarea-sm {\n font-size: ${dt('textarea.sm.font.size')};\n padding-block: ${dt('textarea.sm.padding.y')};\n padding-inline: ${dt('textarea.sm.padding.x')};\n}\n\n.p-textarea-lg {\n font-size: ${dt('textarea.lg.font.size')};\n padding-block: ${dt('textarea.lg.padding.y')};\n padding-inline: ${dt('textarea.lg.padding.x')};\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-textarea p-component',\n {\n 'p-filled': instance.filled,\n 'p-textarea-resizable ': props.autoResize,\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant ? props.variant === 'filled' : instance.config.inputStyle === 'filled' || instance.config.inputVariant === 'filled',\n 'p-textarea-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class TextareaStyle extends BaseStyle {\n name = 'textarea';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Textarea is a multi-line text input element.\n *\n * [Live Demo](https://www.primeng.org/textarea/)\n *\n * @module textareastyle\n *\n */\nexport enum TextareaClasses {\n /**\n * Class name of the root element\n */\n root = 'p-textarea'\n}\n\nexport interface TextareaStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, EventEmitter, HostListener, inject, Input, NgModule, OnDestroy, OnInit, Optional, Output } from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Subscription } from 'rxjs';\nimport { TextareaStyle } from './style/textareastyle';\n\n/**\n * Textarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[pTextarea]',\n standalone: true,\n host: {\n class: 'p-textarea p-component',\n '[class.p-filled]': 'filled',\n '[class.p-textarea-resizable]': 'autoResize',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-textarea-fluid]': 'hasFluid',\n '[class.p-textarea-sm]': 'size === \"small\"',\n '[class.p-inputfield-sm]': 'size === \"small\"',\n '[class.p-textarea-lg]': 'size === \"large\"',\n '[class.p-inputfield-lg]': 'size === \"large\"'\n },\n providers: [TextareaStyle]\n})\nexport class Textarea extends BaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() size: 'large' | 'small';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n _componentStyle = inject(TextareaStyle);\n\n constructor(\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Textarea],\n exports: [Textarea]\n})\nexport class TextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-textarea.mjs","sources":["../../src/textarea/style/textareastyle.ts","../../src/textarea/textarea.ts","../../src/textarea/primeng-textarea.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-textarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-size: 1rem;\n color: ${dt('textarea.color')};\n background: ${dt('textarea.background')};\n padding: ${dt('textarea.padding.y')} ${dt('textarea.padding.x')};\n border: 1px solid ${dt('textarea.border.color')};\n transition: background ${dt('textarea.transition.duration')}, color ${dt('textarea.transition.duration')}, border-color ${dt('textarea.transition.duration')}, outline-color ${dt('textarea.transition.duration')}, box-shadow ${dt(\n 'textarea.transition.duration'\n )};\n appearance: none;\n border-radius: ${dt('textarea.border.radius')};\n outline-color: transparent;\n box-shadow: ${dt('textarea.shadow')};\n}\n\n.p-textarea.ng-invalid.ng-dirty {\n border-color: ${dt('textarea.invalid.border.color')}\n};\n\n.p-textarea:enabled:hover {\n border-color: ${dt('textarea.hover.border.color')};\n}\n\n.p-textarea:enabled:focus {\n border-color: ${dt('textarea.focus.border.color')};\n box-shadow: ${dt('textarea.focus.ring.shadow')};\n outline: ${dt('textarea.focus.ring.width')} ${dt('textarea.focus.ring.style')} ${dt('textarea.focus.ring.color')};\n outline-offset: ${dt('textarea.focus.ring.offset')};\n}\n\n.p-textarea.p-invalid {\n border-color: ${dt('textarea.invalid.border.color')};\n}\n\n.p-textarea.p-variant-filled {\n background: ${dt('textarea.filled.background')};\n}\n\n.p-textarea.p-variant-filled:enabled:focus {\n background: ${dt('textarea.filled.focus.background')};\n}\n\n.p-textarea:disabled {\n opacity: 1;\n background: ${dt('textarea.disabled.background')};\n color: ${dt('textarea.disabled.color')};\n}\n\n.p-textarea::placeholder {\n color: ${dt('textarea.placeholder.color')};\n}\n\n.p-textarea.ng-invalid.ng-dirty::placeholder {\n color: ${dt('textarea.invalid.placeholder.color')};\n}\n\n.p-textarea-fluid {\n width: 100%;\n}\n\n.p-textarea-resizable {\n overflow: hidden;\n resize: none;\n}\n\n.p-textarea-sm {\n font-size: ${dt('textarea.sm.font.size')};\n padding-block: ${dt('textarea.sm.padding.y')};\n padding-inline: ${dt('textarea.sm.padding.x')};\n}\n\n.p-textarea-lg {\n font-size: ${dt('textarea.lg.font.size')};\n padding-block: ${dt('textarea.lg.padding.y')};\n padding-inline: ${dt('textarea.lg.padding.x')};\n}\n`;\n\nconst classes = {\n root: ({ instance, props }) => [\n 'p-textarea p-component',\n {\n 'p-filled': instance.filled,\n 'p-textarea-resizable ': props.autoResize,\n 'p-invalid': props.invalid,\n 'p-variant-filled': props.variant ? props.variant === 'filled' : instance.config.inputStyle === 'filled' || instance.config.inputVariant === 'filled',\n 'p-textarea-fluid': props.fluid\n }\n ]\n};\n\n@Injectable()\nexport class TextareaStyle extends BaseStyle {\n name = 'textarea';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Textarea is a multi-line text input element.\n *\n * [Live Demo](https://www.primeng.org/textarea/)\n *\n * @module textareastyle\n *\n */\nexport enum TextareaClasses {\n /**\n * Class name of the root element\n */\n root = 'p-textarea'\n}\n\nexport interface TextareaStyle extends BaseStyle {}\n","import { AfterViewInit, booleanAttribute, Directive, EventEmitter, HostListener, inject, Input, NgModule, OnDestroy, OnInit, Optional, Output } from '@angular/core';\nimport { NgControl, NgModel } from '@angular/forms';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Subscription } from 'rxjs';\nimport { TextareaStyle } from './style/textareastyle';\n\n/**\n * Textarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[pTextarea]',\n standalone: true,\n host: {\n class: 'p-textarea p-component',\n '[class.p-filled]': 'filled',\n '[class.p-textarea-resizable]': 'autoResize',\n '[class.p-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\" || config.inputVariant() === \"filled\"',\n '[class.p-textarea-fluid]': 'hasFluid',\n '[class.p-textarea-sm]': 'pSize === \"small\"',\n '[class.p-inputfield-sm]': 'pSize === \"small\"',\n '[class.p-textarea-lg]': 'pSize === \"large\"',\n '[class.p-inputfield-lg]': 'pSize === \"large\"'\n },\n providers: [TextareaStyle]\n})\nexport class Textarea extends BaseComponent implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Spans 100% width of the container when enabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) fluid: boolean = false;\n /**\n * Defines the size of the component.\n * @group Props\n */\n @Input() pSize: 'large' | 'small';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n _componentStyle = inject(TextareaStyle);\n\n constructor(\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n get hasFluid() {\n const nativeElement = this.el.nativeElement;\n const fluidComponent = nativeElement.closest('p-fluid');\n return this.fluid || !!fluidComponent;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Textarea],\n exports: [Textarea]\n})\nexport class TextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -2,12 +2,12 @@ import { trigger, transition, style, animate } from '@angular/animations';
2
2
  import * as i1 from '@angular/common';
3
3
  import { isPlatformBrowser, CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { Injectable, input, EventEmitter, effect, forwardRef, booleanAttribute, numberAttribute, Component, ViewEncapsulation, Inject, Input, Output, ViewChild, signal, inject, ChangeDetectionStrategy, ContentChild, NgModule } from '@angular/core';
5
+ import { Injectable, input, EventEmitter, effect, forwardRef, booleanAttribute, numberAttribute, Component, ViewEncapsulation, Inject, Input, Output, ViewChild, signal, inject, ChangeDetectionStrategy, ContentChild, ContentChildren, NgModule } from '@angular/core';
6
6
  import * as i2 from '@angular/router';
7
7
  import { RouterModule } from '@angular/router';
8
8
  import { isNotEmpty, nestedPosition, resolve, uuid, isEmpty, focus, isTouchDevice, isPrintableCharacter, findSingle, relativePosition, absolutePosition, appendChild, findLastIndex } from '@primeuix/utils';
9
9
  import * as i4 from 'primeng/api';
10
- import { SharedModule } from 'primeng/api';
10
+ import { SharedModule, PrimeTemplate } from 'primeng/api';
11
11
  import { BaseComponent } from 'primeng/basecomponent';
12
12
  import { ConnectedOverlayScrollHandler } from 'primeng/dom';
13
13
  import { AngleRightIcon } from 'primeng/icons';
@@ -362,9 +362,9 @@ function TieredMenuSub_ng_template_2_li_1_ng_container_3_a_1_ng_container_6_Temp
362
362
  } if (rf & 2) {
363
363
  const ctx_r2 = i0.ɵɵnextContext(5);
364
364
  i0.ɵɵadvance();
365
- i0.ɵɵproperty("ngIf", !ctx_r2.tieredMenu.submenuiconTemplate);
365
+ i0.ɵɵproperty("ngIf", !ctx_r2.tieredMenu.submenuIconTemplate && !ctx_r2.tieredMenu._submenuIconTemplate);
366
366
  i0.ɵɵadvance();
367
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tieredMenu.submenuiconTemplate);
367
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tieredMenu.submenuIconTemplate || ctx_r2.tieredMenu._submenuIconTemplate);
368
368
  } }
369
369
  function TieredMenuSub_ng_template_2_li_1_ng_container_3_a_1_Template(rf, ctx) { if (rf & 1) {
370
370
  i0.ɵɵelementStart(0, "a", 14);
@@ -442,9 +442,9 @@ function TieredMenuSub_ng_template_2_li_1_ng_container_3_a_2_ng_container_6_Temp
442
442
  } if (rf & 2) {
443
443
  const ctx_r2 = i0.ɵɵnextContext(5);
444
444
  i0.ɵɵadvance();
445
- i0.ɵɵproperty("ngIf", !ctx_r2.tieredMenu.submenuiconTemplate);
445
+ i0.ɵɵproperty("ngIf", !ctx_r2.tieredMenu.submenuIconTemplate && !ctx_r2.tieredMenu._submenuIconTemplate);
446
446
  i0.ɵɵadvance();
447
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tieredMenu.submenuiconTemplate);
447
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.tieredMenu.submenuIconTemplate || ctx_r2.tieredMenu._submenuIconTemplate);
448
448
  } }
449
449
  function TieredMenuSub_ng_template_2_li_1_ng_container_3_a_2_Template(rf, ctx) { if (rf & 1) {
450
450
  i0.ɵɵelementStart(0, "a", 26);
@@ -555,7 +555,7 @@ function TieredMenu_div_0_Template(rf, ctx) { if (rf & 1) {
555
555
  i0.ɵɵproperty("id", ctx_r1.id)("ngClass", i0.ɵɵpureFunction2(22, _c10, ctx_r1.queryMatches, ctx_r1.popup))("ngStyle", ctx_r1.style)("@overlayAnimation", i0.ɵɵpureFunction1(28, _c12, i0.ɵɵpureFunction2(25, _c11, ctx_r1.showTransitionOptions, ctx_r1.hideTransitionOptions)))("@.disabled", ctx_r1.popup !== true);
556
556
  i0.ɵɵattribute("data-pc-section", "root")("data-pc-name", "tieredmenu");
557
557
  i0.ɵɵadvance(2);
558
- i0.ɵɵproperty("root", true)("items", ctx_r1.processedItems)("itemTemplate", ctx_r1.itemTemplate)("menuId", ctx_r1.id)("tabindex", !ctx_r1.disabled ? ctx_r1.tabindex : -1)("ariaLabel", ctx_r1.ariaLabel)("ariaLabelledBy", ctx_r1.ariaLabelledBy)("baseZIndex", ctx_r1.baseZIndex)("autoZIndex", ctx_r1.autoZIndex)("autoDisplay", ctx_r1.autoDisplay)("popup", ctx_r1.popup)("focusedItemId", ctx_r1.focused ? ctx_r1.focusedItemId : undefined)("activeItemPath", ctx_r1.activeItemPath());
558
+ i0.ɵɵproperty("root", true)("items", ctx_r1.processedItems)("itemTemplate", ctx_r1.itemTemplate || ctx_r1._itemTemplate)("menuId", ctx_r1.id)("tabindex", !ctx_r1.disabled ? ctx_r1.tabindex : -1)("ariaLabel", ctx_r1.ariaLabel)("ariaLabelledBy", ctx_r1.ariaLabelledBy)("baseZIndex", ctx_r1.baseZIndex)("autoZIndex", ctx_r1.autoZIndex)("autoDisplay", ctx_r1.autoDisplay)("popup", ctx_r1.popup)("focusedItemId", ctx_r1.focused ? ctx_r1.focusedItemId : undefined)("activeItemPath", ctx_r1.activeItemPath());
559
559
  } }
560
560
  class TieredMenuSub extends BaseComponent {
561
561
  el;
@@ -770,8 +770,8 @@ class TieredMenuSub extends BaseComponent {
770
770
  <span class="p-menuitem-badge" *ngIf="getItemProp(processedItem, 'badge')" [ngClass]="getItemProp(processedItem, 'badgeStyleClass')">{{ getItemProp(processedItem, 'badge') }}</span>
771
771
 
772
772
  <ng-container *ngIf="isItemGroup(processedItem)">
773
- <AngleRightIcon *ngIf="!tieredMenu.submenuiconTemplate" [ngClass]="'p-tieredmenu-submenu-icon'" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true" />
774
- <ng-template *ngTemplateOutlet="tieredMenu.submenuiconTemplate" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true"></ng-template>
773
+ <AngleRightIcon *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate" [ngClass]="'p-tieredmenu-submenu-icon'" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true" />
774
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true"></ng-template>
775
775
  </ng-container>
776
776
  </a>
777
777
  <a
@@ -812,8 +812,8 @@ class TieredMenuSub extends BaseComponent {
812
812
  <span class="p-menuitem-badge" *ngIf="getItemProp(processedItem, 'badge')" [ngClass]="getItemProp(processedItem, 'badgeStyleClass')">{{ getItemProp(processedItem, 'badge') }}</span>
813
813
 
814
814
  <ng-container *ngIf="isItemGroup(processedItem)">
815
- <AngleRightIcon *ngIf="!tieredMenu.submenuiconTemplate" [ngClass]="'p-tieredmenu-submenu-icon'" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true" />
816
- <ng-template *ngTemplateOutlet="tieredMenu.submenuiconTemplate" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true"></ng-template>
815
+ <AngleRightIcon *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate" [ngClass]="'p-tieredmenu-submenu-icon'" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true" />
816
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.data-pc-section]="'submenuicon'" [attr.aria-hidden]="true"></ng-template>
817
817
  </ng-container>
818
818
  </a>
819
819
  </ng-container>
@@ -1004,12 +1004,13 @@ class TieredMenu extends BaseComponent {
1004
1004
  * Template of the submenu icon.
1005
1005
  * @group Templates
1006
1006
  */
1007
- submenuiconTemplate;
1007
+ submenuIconTemplate;
1008
1008
  /**
1009
1009
  * Template of the item.
1010
1010
  * @group Templates
1011
1011
  */
1012
1012
  itemTemplate;
1013
+ templates;
1013
1014
  container;
1014
1015
  outsideClickListener;
1015
1016
  resizeListener;
@@ -1031,6 +1032,8 @@ class TieredMenu extends BaseComponent {
1031
1032
  matchMediaListener;
1032
1033
  query;
1033
1034
  queryMatches;
1035
+ _submenuIconTemplate;
1036
+ _itemTemplate;
1034
1037
  get visibleItems() {
1035
1038
  const processedItem = this.activeItemPath().find((p) => p.key === this.focusedItemInfo().parentKey);
1036
1039
  return processedItem ? processedItem.items : this.processedItems;
@@ -1065,6 +1068,21 @@ class TieredMenu extends BaseComponent {
1065
1068
  this.bindMatchMediaListener();
1066
1069
  this.id = this.id || uuid('pn_id_');
1067
1070
  }
1071
+ ngAfterContentInit() {
1072
+ this.templates?.forEach((item) => {
1073
+ switch (item.getType()) {
1074
+ case 'submenuicon':
1075
+ this._submenuIconTemplate = item.template;
1076
+ break;
1077
+ case 'item':
1078
+ this._itemTemplate = item.template;
1079
+ break;
1080
+ default:
1081
+ this._itemTemplate = item.template;
1082
+ break;
1083
+ }
1084
+ });
1085
+ }
1068
1086
  bindMatchMediaListener() {
1069
1087
  if (isPlatformBrowser(this.platformId)) {
1070
1088
  if (!this.matchMediaListener) {
@@ -1378,7 +1396,7 @@ class TieredMenu extends BaseComponent {
1378
1396
  if (this.appendTo === 'body')
1379
1397
  this.renderer.appendChild(this.document.body, this.container);
1380
1398
  else
1381
- appendChild(this.container, this.appendTo);
1399
+ appendChild(this.appendTo, this.container);
1382
1400
  }
1383
1401
  }
1384
1402
  restoreOverlayAppend() {
@@ -1574,12 +1592,14 @@ class TieredMenu extends BaseComponent {
1574
1592
  }
1575
1593
  static ɵfac = function TieredMenu_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TieredMenu)(i0.ɵɵdirectiveInject(i4.OverlayService)); };
1576
1594
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TieredMenu, selectors: [["p-tieredMenu"], ["p-tieredmenu"], ["p-tiered-menu"]], contentQueries: function TieredMenu_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
1577
- i0.ɵɵcontentQuery(dirIndex, _c6, 5);
1578
- i0.ɵɵcontentQuery(dirIndex, _c7, 5);
1595
+ i0.ɵɵcontentQuery(dirIndex, _c6, 4);
1596
+ i0.ɵɵcontentQuery(dirIndex, _c7, 4);
1597
+ i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);
1579
1598
  } if (rf & 2) {
1580
1599
  let _t;
1581
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.submenuiconTemplate = _t.first);
1600
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.submenuIconTemplate = _t.first);
1582
1601
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.itemTemplate = _t.first);
1602
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);
1583
1603
  } }, viewQuery: function TieredMenu_Query(rf, ctx) { if (rf & 1) {
1584
1604
  i0.ɵɵviewQuery(_c8, 5);
1585
1605
  i0.ɵɵviewQuery(_c9, 5);
@@ -1598,7 +1618,7 @@ class TieredMenu extends BaseComponent {
1598
1618
  args: [{
1599
1619
  selector: 'p-tieredMenu, p-tieredmenu, p-tiered-menu',
1600
1620
  standalone: true,
1601
- imports: [CommonModule, TieredMenuSub, RouterModule, Ripple, TooltipModule, AngleRightIcon, SharedModule],
1621
+ imports: [CommonModule, TieredMenuSub, RouterModule, TooltipModule, SharedModule],
1602
1622
  template: `
1603
1623
  <div
1604
1624
  #container
@@ -1622,7 +1642,7 @@ class TieredMenu extends BaseComponent {
1622
1642
  #rootmenu
1623
1643
  [root]="true"
1624
1644
  [items]="processedItems"
1625
- [itemTemplate]="itemTemplate"
1645
+ [itemTemplate]="itemTemplate || _itemTemplate"
1626
1646
  [menuId]="id"
1627
1647
  [tabindex]="!disabled ? tabindex : -1"
1628
1648
  [ariaLabel]="ariaLabel"
@@ -1694,12 +1714,15 @@ class TieredMenu extends BaseComponent {
1694
1714
  }], containerViewChild: [{
1695
1715
  type: ViewChild,
1696
1716
  args: ['container']
1697
- }], submenuiconTemplate: [{
1717
+ }], submenuIconTemplate: [{
1698
1718
  type: ContentChild,
1699
- args: ['submenuicon']
1719
+ args: ['submenuicon', { descendants: false }]
1700
1720
  }], itemTemplate: [{
1701
1721
  type: ContentChild,
1702
- args: ['item']
1722
+ args: ['item', { descendants: false }]
1723
+ }], templates: [{
1724
+ type: ContentChildren,
1725
+ args: [PrimeTemplate]
1703
1726
  }] }); })();
1704
1727
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TieredMenu, { className: "TieredMenu" }); })();
1705
1728
  class TieredMenuModule {