primeng 20.3.0 → 21.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. package/fesm2022/primeng-accordion.mjs +103 -114
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +7 -7
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +31 -31
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +134 -78
  8. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  9. package/fesm2022/primeng-autofocus.mjs +7 -7
  10. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  11. package/fesm2022/primeng-avatar.mjs +40 -17
  12. package/fesm2022/primeng-avatar.mjs.map +1 -1
  13. package/fesm2022/primeng-avatargroup.mjs +10 -10
  14. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  15. package/fesm2022/primeng-badge.mjs +56 -24
  16. package/fesm2022/primeng-badge.mjs.map +1 -1
  17. package/fesm2022/primeng-base.mjs +3 -3
  18. package/fesm2022/primeng-basecomponent.mjs +23 -20
  19. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  20. package/fesm2022/primeng-baseeditableholder.mjs +10 -10
  21. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  22. package/fesm2022/primeng-baseinput.mjs +15 -15
  23. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  24. package/fesm2022/primeng-basemodelholder.mjs +5 -5
  25. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  26. package/fesm2022/primeng-bind.mjs +13 -13
  27. package/fesm2022/primeng-bind.mjs.map +1 -1
  28. package/fesm2022/primeng-blockui.mjs +44 -24
  29. package/fesm2022/primeng-blockui.mjs.map +1 -1
  30. package/fesm2022/primeng-breadcrumb.mjs +99 -56
  31. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  32. package/fesm2022/primeng-button.mjs +212 -93
  33. package/fesm2022/primeng-button.mjs.map +1 -1
  34. package/fesm2022/primeng-buttongroup.mjs +10 -10
  35. package/fesm2022/primeng-card.mjs +31 -11
  36. package/fesm2022/primeng-card.mjs.map +1 -1
  37. package/fesm2022/primeng-carousel.mjs +23 -17
  38. package/fesm2022/primeng-carousel.mjs.map +1 -1
  39. package/fesm2022/primeng-cascadeselect.mjs +55 -46
  40. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  41. package/fesm2022/primeng-chart.mjs +10 -10
  42. package/fesm2022/primeng-chart.mjs.map +1 -1
  43. package/fesm2022/primeng-checkbox.mjs +37 -27
  44. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  45. package/fesm2022/primeng-chip.mjs +28 -12
  46. package/fesm2022/primeng-chip.mjs.map +1 -1
  47. package/fesm2022/primeng-classnames.mjs +10 -10
  48. package/fesm2022/primeng-classnames.mjs.map +1 -1
  49. package/fesm2022/primeng-colorpicker.mjs +120 -189
  50. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  51. package/fesm2022/primeng-config.mjs +16 -22
  52. package/fesm2022/primeng-config.mjs.map +1 -1
  53. package/fesm2022/primeng-confirmdialog.mjs +60 -56
  54. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  55. package/fesm2022/primeng-confirmpopup.mjs +269 -218
  56. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  57. package/fesm2022/primeng-contextmenu.mjs +556 -445
  58. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  59. package/fesm2022/primeng-dataview.mjs +21 -11
  60. package/fesm2022/primeng-dataview.mjs.map +1 -1
  61. package/fesm2022/primeng-datepicker.mjs +818 -861
  62. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  63. package/fesm2022/primeng-dialog.mjs +393 -313
  64. package/fesm2022/primeng-dialog.mjs.map +1 -1
  65. package/fesm2022/primeng-divider.mjs +19 -11
  66. package/fesm2022/primeng-divider.mjs.map +1 -1
  67. package/fesm2022/primeng-dock.mjs +51 -24
  68. package/fesm2022/primeng-dock.mjs.map +1 -1
  69. package/fesm2022/primeng-dragdrop.mjs +10 -10
  70. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  71. package/fesm2022/primeng-drawer.mjs +277 -261
  72. package/fesm2022/primeng-drawer.mjs.map +1 -1
  73. package/fesm2022/primeng-dynamicdialog.mjs +34 -19
  74. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  75. package/fesm2022/primeng-editor.mjs +12 -12
  76. package/fesm2022/primeng-editor.mjs.map +1 -1
  77. package/fesm2022/primeng-fieldset.mjs +108 -90
  78. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  79. package/fesm2022/primeng-fileupload.mjs +76 -66
  80. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  81. package/fesm2022/primeng-floatlabel.mjs +10 -10
  82. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  83. package/fesm2022/primeng-fluid.mjs +10 -10
  84. package/fesm2022/primeng-focustrap.mjs +7 -7
  85. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  86. package/fesm2022/primeng-galleria.mjs +261 -137
  87. package/fesm2022/primeng-galleria.mjs.map +1 -1
  88. package/fesm2022/primeng-iconfield.mjs +10 -10
  89. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  90. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  91. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  92. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  93. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  94. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  95. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  96. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  97. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  98. package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
  99. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  100. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  101. package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
  102. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  103. package/fesm2022/primeng-icons-arrowup.mjs +3 -3
  104. package/fesm2022/primeng-icons-ban.mjs +3 -3
  105. package/fesm2022/primeng-icons-bars.mjs +3 -3
  106. package/fesm2022/primeng-icons-baseicon.mjs +6 -6
  107. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  108. package/fesm2022/primeng-icons-blank.mjs +3 -3
  109. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  110. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  111. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  112. package/fesm2022/primeng-icons-check.mjs +3 -3
  113. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  114. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  115. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  116. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  117. package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
  118. package/fesm2022/primeng-icons-eye.mjs +3 -3
  119. package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
  120. package/fesm2022/primeng-icons-filter.mjs +3 -3
  121. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  122. package/fesm2022/primeng-icons-filterslash.mjs +3 -3
  123. package/fesm2022/primeng-icons-home.mjs +3 -3
  124. package/fesm2022/primeng-icons-infocircle.mjs +3 -3
  125. package/fesm2022/primeng-icons-minus.mjs +3 -3
  126. package/fesm2022/primeng-icons-pencil.mjs +3 -3
  127. package/fesm2022/primeng-icons-plus.mjs +3 -3
  128. package/fesm2022/primeng-icons-refresh.mjs +3 -3
  129. package/fesm2022/primeng-icons-search.mjs +3 -3
  130. package/fesm2022/primeng-icons-searchminus.mjs +3 -3
  131. package/fesm2022/primeng-icons-searchplus.mjs +3 -3
  132. package/fesm2022/primeng-icons-sortalt.mjs +3 -3
  133. package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
  134. package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
  135. package/fesm2022/primeng-icons-spinner.mjs +3 -3
  136. package/fesm2022/primeng-icons-star.mjs +3 -3
  137. package/fesm2022/primeng-icons-starfill.mjs +3 -3
  138. package/fesm2022/primeng-icons-thlarge.mjs +3 -3
  139. package/fesm2022/primeng-icons-times.mjs +3 -3
  140. package/fesm2022/primeng-icons-timescircle.mjs +3 -3
  141. package/fesm2022/primeng-icons-trash.mjs +3 -3
  142. package/fesm2022/primeng-icons-undo.mjs +3 -3
  143. package/fesm2022/primeng-icons-upload.mjs +3 -3
  144. package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
  145. package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
  146. package/fesm2022/primeng-iftalabel.mjs +10 -10
  147. package/fesm2022/primeng-image.mjs +225 -182
  148. package/fesm2022/primeng-image.mjs.map +1 -1
  149. package/fesm2022/primeng-imagecompare.mjs +12 -12
  150. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  151. package/fesm2022/primeng-inplace.mjs +22 -22
  152. package/fesm2022/primeng-inplace.mjs.map +1 -1
  153. package/fesm2022/primeng-inputgroup.mjs +10 -10
  154. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  155. package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
  156. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  157. package/fesm2022/primeng-inputicon.mjs +10 -10
  158. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  159. package/fesm2022/primeng-inputmask.mjs +16 -13
  160. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  161. package/fesm2022/primeng-inputnumber.mjs +42 -17
  162. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  163. package/fesm2022/primeng-inputotp.mjs +25 -17
  164. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  165. package/fesm2022/primeng-inputtext.mjs +51 -20
  166. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  167. package/fesm2022/primeng-keyfilter.mjs +7 -7
  168. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  169. package/fesm2022/primeng-knob.mjs +25 -25
  170. package/fesm2022/primeng-knob.mjs.map +1 -1
  171. package/fesm2022/primeng-listbox.mjs +60 -27
  172. package/fesm2022/primeng-listbox.mjs.map +1 -1
  173. package/fesm2022/primeng-megamenu.mjs +136 -52
  174. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  175. package/fesm2022/primeng-menu.mjs +291 -272
  176. package/fesm2022/primeng-menu.mjs.map +1 -1
  177. package/fesm2022/primeng-menubar.mjs +168 -59
  178. package/fesm2022/primeng-menubar.mjs.map +1 -1
  179. package/fesm2022/primeng-message.mjs +121 -145
  180. package/fesm2022/primeng-message.mjs.map +1 -1
  181. package/fesm2022/primeng-metergroup.mjs +108 -25
  182. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  183. package/fesm2022/primeng-motion.mjs +660 -0
  184. package/fesm2022/primeng-motion.mjs.map +1 -0
  185. package/fesm2022/primeng-multiselect.mjs +196 -77
  186. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  187. package/fesm2022/primeng-orderlist.mjs +69 -19
  188. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  189. package/fesm2022/primeng-organizationchart.mjs +25 -27
  190. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  191. package/fesm2022/primeng-overlay.mjs +207 -114
  192. package/fesm2022/primeng-overlay.mjs.map +1 -1
  193. package/fesm2022/primeng-overlaybadge.mjs +10 -10
  194. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  195. package/fesm2022/primeng-paginator.mjs +28 -20
  196. package/fesm2022/primeng-paginator.mjs.map +1 -1
  197. package/fesm2022/primeng-panel.mjs +71 -128
  198. package/fesm2022/primeng-panel.mjs.map +1 -1
  199. package/fesm2022/primeng-panelmenu.mjs +303 -205
  200. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  201. package/fesm2022/primeng-password.mjs +185 -184
  202. package/fesm2022/primeng-password.mjs.map +1 -1
  203. package/fesm2022/primeng-picklist.mjs +133 -95
  204. package/fesm2022/primeng-picklist.mjs.map +1 -1
  205. package/fesm2022/primeng-popover.mjs +151 -246
  206. package/fesm2022/primeng-popover.mjs.map +1 -1
  207. package/fesm2022/primeng-progressbar.mjs +28 -18
  208. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  209. package/fesm2022/primeng-progressspinner.mjs +10 -10
  210. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  211. package/fesm2022/primeng-radiobutton.mjs +30 -18
  212. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  213. package/fesm2022/primeng-rating.mjs +23 -12
  214. package/fesm2022/primeng-rating.mjs.map +1 -1
  215. package/fesm2022/primeng-ripple.mjs +22 -15
  216. package/fesm2022/primeng-ripple.mjs.map +1 -1
  217. package/fesm2022/primeng-scroller.mjs +19 -11
  218. package/fesm2022/primeng-scroller.mjs.map +1 -1
  219. package/fesm2022/primeng-scrollpanel.mjs +26 -22
  220. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  221. package/fesm2022/primeng-scrolltop.mjs +107 -110
  222. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  223. package/fesm2022/primeng-select.mjs +116 -65
  224. package/fesm2022/primeng-select.mjs.map +1 -1
  225. package/fesm2022/primeng-selectbutton.mjs +25 -15
  226. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  227. package/fesm2022/primeng-skeleton.mjs +23 -15
  228. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  229. package/fesm2022/primeng-slider.mjs +50 -25
  230. package/fesm2022/primeng-slider.mjs.map +1 -1
  231. package/fesm2022/primeng-speeddial.mjs +32 -29
  232. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  233. package/fesm2022/primeng-splitbutton.mjs +55 -31
  234. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  235. package/fesm2022/primeng-splitter.mjs +27 -18
  236. package/fesm2022/primeng-splitter.mjs.map +1 -1
  237. package/fesm2022/primeng-stepper.mjs +134 -154
  238. package/fesm2022/primeng-stepper.mjs.map +1 -1
  239. package/fesm2022/primeng-steps.mjs +13 -11
  240. package/fesm2022/primeng-steps.mjs.map +1 -1
  241. package/fesm2022/primeng-styleclass.mjs +8 -8
  242. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  243. package/fesm2022/primeng-table.mjs +719 -550
  244. package/fesm2022/primeng-table.mjs.map +1 -1
  245. package/fesm2022/primeng-tabs.mjs +134 -133
  246. package/fesm2022/primeng-tabs.mjs.map +1 -1
  247. package/fesm2022/primeng-tag.mjs +22 -11
  248. package/fesm2022/primeng-tag.mjs.map +1 -1
  249. package/fesm2022/primeng-terminal.mjs +14 -15
  250. package/fesm2022/primeng-terminal.mjs.map +1 -1
  251. package/fesm2022/primeng-textarea.mjs +39 -17
  252. package/fesm2022/primeng-textarea.mjs.map +1 -1
  253. package/fesm2022/primeng-tieredmenu.mjs +581 -474
  254. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  255. package/fesm2022/primeng-timeline.mjs +36 -23
  256. package/fesm2022/primeng-timeline.mjs.map +1 -1
  257. package/fesm2022/primeng-toast.mjs +155 -129
  258. package/fesm2022/primeng-toast.mjs.map +1 -1
  259. package/fesm2022/primeng-togglebutton.mjs +28 -14
  260. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  261. package/fesm2022/primeng-toggleswitch.mjs +28 -23
  262. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  263. package/fesm2022/primeng-toolbar.mjs +13 -13
  264. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  265. package/fesm2022/primeng-tooltip.mjs +40 -17
  266. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  267. package/fesm2022/primeng-tree.mjs +185 -108
  268. package/fesm2022/primeng-tree.mjs.map +1 -1
  269. package/fesm2022/primeng-treeselect.mjs +70 -43
  270. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  271. package/fesm2022/primeng-treetable.mjs +169 -127
  272. package/fesm2022/primeng-treetable.mjs.map +1 -1
  273. package/fesm2022/primeng-types-motion.mjs +4 -0
  274. package/fesm2022/primeng-types-motion.mjs.map +1 -0
  275. package/fesm2022/primeng-usestyle.mjs +3 -3
  276. package/package.json +653 -645
  277. package/{accordion/index.d.ts → types/primeng-accordion.d.ts} +37 -26
  278. package/{api/index.d.ts → types/primeng-api.d.ts} +27 -1
  279. package/{autocomplete/index.d.ts → types/primeng-autocomplete.d.ts} +37 -27
  280. package/{avatar/index.d.ts → types/primeng-avatar.d.ts} +18 -1
  281. package/{badge/index.d.ts → types/primeng-badge.d.ts} +36 -17
  282. package/{basecomponent/index.d.ts → types/primeng-basecomponent.d.ts} +6 -5
  283. package/{bind/index.d.ts → types/primeng-bind.d.ts} +2 -2
  284. package/{breadcrumb/index.d.ts → types/primeng-breadcrumb.d.ts} +7 -7
  285. package/{button/index.d.ts → types/primeng-button.d.ts} +89 -40
  286. package/{card/index.d.ts → types/primeng-card.d.ts} +30 -10
  287. package/{carousel/index.d.ts → types/primeng-carousel.d.ts} +16 -16
  288. package/{cascadeselect/index.d.ts → types/primeng-cascadeselect.d.ts} +33 -27
  289. package/{checkbox/index.d.ts → types/primeng-checkbox.d.ts} +5 -4
  290. package/{chip/index.d.ts → types/primeng-chip.d.ts} +14 -2
  291. package/{classnames/index.d.ts → types/primeng-classnames.d.ts} +1 -1
  292. package/{colorpicker/index.d.ts → types/primeng-colorpicker.d.ts} +28 -29
  293. package/{config/index.d.ts → types/primeng-config.d.ts} +0 -6
  294. package/{confirmdialog/index.d.ts → types/primeng-confirmdialog.d.ts} +51 -23
  295. package/{confirmpopup/index.d.ts → types/primeng-confirmpopup.d.ts} +64 -26
  296. package/{contextmenu/index.d.ts → types/primeng-contextmenu.d.ts} +47 -34
  297. package/{dataview/index.d.ts → types/primeng-dataview.d.ts} +19 -13
  298. package/{datepicker/index.d.ts → types/primeng-datepicker.d.ts} +52 -35
  299. package/{dialog/index.d.ts → types/primeng-dialog.d.ts} +92 -47
  300. package/{divider/index.d.ts → types/primeng-divider.d.ts} +1 -0
  301. package/{dock/index.d.ts → types/primeng-dock.d.ts} +8 -3
  302. package/{drawer/index.d.ts → types/primeng-drawer.d.ts} +51 -37
  303. package/{dynamicdialog/index.d.ts → types/primeng-dynamicdialog.d.ts} +22 -9
  304. package/{fieldset/index.d.ts → types/primeng-fieldset.d.ts} +43 -24
  305. package/{fileupload/index.d.ts → types/primeng-fileupload.d.ts} +31 -28
  306. package/{galleria/index.d.ts → types/primeng-galleria.d.ts} +96 -31
  307. package/{image/index.d.ts → types/primeng-image.d.ts} +69 -40
  308. package/{imagecompare/index.d.ts → types/primeng-imagecompare.d.ts} +6 -6
  309. package/{inplace/index.d.ts → types/primeng-inplace.d.ts} +10 -10
  310. package/{inputmask/index.d.ts → types/primeng-inputmask.d.ts} +3 -3
  311. package/{inputnumber/index.d.ts → types/primeng-inputnumber.d.ts} +10 -9
  312. package/{inputotp/index.d.ts → types/primeng-inputotp.d.ts} +6 -43
  313. package/types/primeng-inputtext.d.ts +116 -0
  314. package/{knob/index.d.ts → types/primeng-knob.d.ts} +1 -1
  315. package/{listbox/index.d.ts → types/primeng-listbox.d.ts} +41 -23
  316. package/{megamenu/index.d.ts → types/primeng-megamenu.d.ts} +23 -19
  317. package/{menu/index.d.ts → types/primeng-menu.d.ts} +31 -20
  318. package/{menubar/index.d.ts → types/primeng-menubar.d.ts} +19 -16
  319. package/{message/index.d.ts → types/primeng-message.d.ts} +22 -12
  320. package/{metergroup/index.d.ts → types/primeng-metergroup.d.ts} +44 -12
  321. package/types/primeng-motion.d.ts +396 -0
  322. package/{multiselect/index.d.ts → types/primeng-multiselect.d.ts} +119 -41
  323. package/{orderlist/index.d.ts → types/primeng-orderlist.d.ts} +25 -21
  324. package/{overlay/index.d.ts → types/primeng-overlay.d.ts} +88 -20
  325. package/{paginator/index.d.ts → types/primeng-paginator.d.ts} +25 -25
  326. package/{panel/index.d.ts → types/primeng-panel.d.ts} +30 -17
  327. package/{panelmenu/index.d.ts → types/primeng-panelmenu.d.ts} +25 -28
  328. package/{password/index.d.ts → types/primeng-password.d.ts} +74 -27
  329. package/{picklist/index.d.ts → types/primeng-picklist.d.ts} +59 -67
  330. package/{popover/index.d.ts → types/primeng-popover.d.ts} +32 -14
  331. package/{progressbar/index.d.ts → types/primeng-progressbar.d.ts} +9 -5
  332. package/{radiobutton/index.d.ts → types/primeng-radiobutton.d.ts} +1 -0
  333. package/{rating/index.d.ts → types/primeng-rating.d.ts} +11 -6
  334. package/{scroller/index.d.ts → types/primeng-scroller.d.ts} +17 -9
  335. package/{scrollpanel/index.d.ts → types/primeng-scrollpanel.d.ts} +3 -3
  336. package/{scrolltop/index.d.ts → types/primeng-scrolltop.d.ts} +21 -9
  337. package/{select/index.d.ts → types/primeng-select.d.ts} +46 -36
  338. package/{selectbutton/index.d.ts → types/primeng-selectbutton.d.ts} +7 -4
  339. package/{skeleton/index.d.ts → types/primeng-skeleton.d.ts} +1 -0
  340. package/{slider/index.d.ts → types/primeng-slider.d.ts} +1 -0
  341. package/{speeddial/index.d.ts → types/primeng-speeddial.d.ts} +17 -17
  342. package/{splitbutton/index.d.ts → types/primeng-splitbutton.d.ts} +23 -12
  343. package/{splitter/index.d.ts → types/primeng-splitter.d.ts} +1 -0
  344. package/{stepper/index.d.ts → types/primeng-stepper.d.ts} +12 -7
  345. package/{table/index.d.ts → types/primeng-table.d.ts} +51 -10
  346. package/{tabs/index.d.ts → types/primeng-tabs.d.ts} +57 -56
  347. package/{tag/index.d.ts → types/primeng-tag.d.ts} +7 -2
  348. package/{textarea/index.d.ts → types/primeng-textarea.d.ts} +14 -1
  349. package/{tieredmenu/index.d.ts → types/primeng-tieredmenu.d.ts} +51 -33
  350. package/{timeline/index.d.ts → types/primeng-timeline.d.ts} +14 -7
  351. package/{toast/index.d.ts → types/primeng-toast.d.ts} +40 -13
  352. package/{togglebutton/index.d.ts → types/primeng-togglebutton.d.ts} +10 -5
  353. package/{toggleswitch/index.d.ts → types/primeng-toggleswitch.d.ts} +6 -18
  354. package/{toolbar/index.d.ts → types/primeng-toolbar.d.ts} +9 -9
  355. package/{tooltip/index.d.ts → types/primeng-tooltip.d.ts} +21 -3
  356. package/{tree/index.d.ts → types/primeng-tree.d.ts} +77 -53
  357. package/{treeselect/index.d.ts → types/primeng-treeselect.d.ts} +62 -42
  358. package/{treetable/index.d.ts → types/primeng-treetable.d.ts} +55 -53
  359. package/types/{accordion/index.d.ts → primeng-types-accordion.d.ts} +9 -0
  360. package/types/{autocomplete/index.d.ts → primeng-types-autocomplete.d.ts} +76 -63
  361. package/types/{breadcrumb/index.d.ts → primeng-types-breadcrumb.d.ts} +27 -1
  362. package/types/{button/index.d.ts → primeng-types-button.d.ts} +37 -18
  363. package/types/{card/index.d.ts → primeng-types-card.d.ts} +10 -10
  364. package/types/{carousel/index.d.ts → primeng-types-carousel.d.ts} +22 -19
  365. package/types/{cascadeselect/index.d.ts → primeng-types-cascadeselect.d.ts} +44 -27
  366. package/types/{checkbox/index.d.ts → primeng-types-checkbox.d.ts} +22 -3
  367. package/types/{chip/index.d.ts → primeng-types-chip.d.ts} +4 -4
  368. package/types/{colorpicker/index.d.ts → primeng-types-colorpicker.d.ts} +5 -0
  369. package/types/{confirmdialog/index.d.ts → primeng-types-confirmdialog.d.ts} +46 -20
  370. package/types/{confirmpopup/index.d.ts → primeng-types-confirmpopup.d.ts} +36 -13
  371. package/types/{contextmenu/index.d.ts → primeng-types-contextmenu.d.ts} +31 -18
  372. package/types/{dataview/index.d.ts → primeng-types-dataview.d.ts} +63 -44
  373. package/types/{datepicker/index.d.ts → primeng-types-datepicker.d.ts} +111 -54
  374. package/types/{dialog/index.d.ts → primeng-types-dialog.d.ts} +15 -6
  375. package/types/{dock/index.d.ts → primeng-types-dock.d.ts} +13 -10
  376. package/types/{drawer/index.d.ts → primeng-types-drawer.d.ts} +12 -7
  377. package/types/{fieldset/index.d.ts → primeng-types-fieldset.d.ts} +15 -6
  378. package/types/primeng-types-fileupload.d.ts +360 -0
  379. package/types/{galleria/index.d.ts → primeng-types-galleria.d.ts} +72 -55
  380. package/types/{image/index.d.ts → primeng-types-image.d.ts} +45 -94
  381. package/types/{imagecompare/index.d.ts → primeng-types-imagecompare.d.ts} +16 -1
  382. package/types/{inplace/index.d.ts → primeng-types-inplace.d.ts} +18 -7
  383. package/types/{inputmask/index.d.ts → primeng-types-inputmask.d.ts} +1 -1
  384. package/types/{inputnumber/index.d.ts → primeng-types-inputnumber.d.ts} +3 -3
  385. package/types/primeng-types-inputotp.d.ts +101 -0
  386. package/types/{listbox/index.d.ts → primeng-types-listbox.d.ts} +123 -44
  387. package/types/{megamenu/index.d.ts → primeng-types-megamenu.d.ts} +30 -14
  388. package/types/{menu/index.d.ts → primeng-types-menu.d.ts} +35 -22
  389. package/types/{menubar/index.d.ts → primeng-types-menubar.d.ts} +23 -20
  390. package/types/{message/index.d.ts → primeng-types-message.d.ts} +36 -1
  391. package/types/{metergroup/index.d.ts → primeng-types-metergroup.d.ts} +78 -80
  392. package/types/primeng-types-motion.d.ts +26 -0
  393. package/types/{multiselect/index.d.ts → primeng-types-multiselect.d.ts} +135 -83
  394. package/types/{orderlist/index.d.ts → primeng-types-orderlist.d.ts} +44 -35
  395. package/types/primeng-types-overlay.d.ts +60 -0
  396. package/types/{paginator/index.d.ts → primeng-types-paginator.d.ts} +42 -6
  397. package/types/{panel/index.d.ts → primeng-types-panel.d.ts} +38 -1
  398. package/types/{panelmenu/index.d.ts → primeng-types-panelmenu.d.ts} +27 -10
  399. package/types/{password/index.d.ts → primeng-types-password.d.ts} +30 -7
  400. package/types/{picklist/index.d.ts → primeng-types-picklist.d.ts} +69 -74
  401. package/types/{popover/index.d.ts → primeng-types-popover.d.ts} +19 -12
  402. package/types/{progressbar/index.d.ts → primeng-types-progressbar.d.ts} +13 -9
  403. package/types/{rating/index.d.ts → primeng-types-rating.d.ts} +19 -7
  404. package/types/{scroller/index.d.ts → primeng-types-scroller.d.ts} +60 -50
  405. package/types/{scrollpanel/index.d.ts → primeng-types-scrollpanel.d.ts} +1 -1
  406. package/types/{scrolltop/index.d.ts → primeng-types-scrolltop.d.ts} +19 -10
  407. package/types/{select/index.d.ts → primeng-types-select.d.ts} +80 -49
  408. package/types/{selectbutton/index.d.ts → primeng-types-selectbutton.d.ts} +17 -2
  409. package/types/{speeddial/index.d.ts → primeng-types-speeddial.d.ts} +35 -17
  410. package/types/{splitbutton/index.d.ts → primeng-types-splitbutton.d.ts} +4 -4
  411. package/types/{splitter/index.d.ts → primeng-types-splitter.d.ts} +2 -2
  412. package/types/{stepper/index.d.ts → primeng-types-stepper.d.ts} +9 -0
  413. package/types/{table/index.d.ts → primeng-types-table.d.ts} +20 -11
  414. package/types/{tag/index.d.ts → primeng-types-tag.d.ts} +2 -2
  415. package/types/{tieredmenu/index.d.ts → primeng-types-tieredmenu.d.ts} +25 -17
  416. package/types/{timeline/index.d.ts → primeng-types-timeline.d.ts} +19 -29
  417. package/types/{toast/index.d.ts → primeng-types-toast.d.ts} +39 -22
  418. package/types/{togglebutton/index.d.ts → primeng-types-togglebutton.d.ts} +25 -24
  419. package/types/{toggleswitch/index.d.ts → primeng-types-toggleswitch.d.ts} +23 -1
  420. package/types/{toolbar/index.d.ts → primeng-types-toolbar.d.ts} +6 -6
  421. package/types/{tree/index.d.ts → primeng-types-tree.d.ts} +75 -41
  422. package/types/{treeselect/index.d.ts → primeng-types-treeselect.d.ts} +80 -53
  423. package/types/{treetable/index.d.ts → primeng-types-treetable.d.ts} +145 -156
  424. package/inputtext/index.d.ts +0 -97
  425. package/types/fileupload/index.d.ts +0 -576
  426. package/types/inputotp/index.d.ts +0 -31
  427. package/types/overlay/index.d.ts +0 -28
  428. /package/{animateonscroll/index.d.ts → types/primeng-animateonscroll.d.ts} +0 -0
  429. /package/{autofocus/index.d.ts → types/primeng-autofocus.d.ts} +0 -0
  430. /package/{avatargroup/index.d.ts → types/primeng-avatargroup.d.ts} +0 -0
  431. /package/{base/index.d.ts → types/primeng-base.d.ts} +0 -0
  432. /package/{baseeditableholder/index.d.ts → types/primeng-baseeditableholder.d.ts} +0 -0
  433. /package/{baseinput/index.d.ts → types/primeng-baseinput.d.ts} +0 -0
  434. /package/{basemodelholder/index.d.ts → types/primeng-basemodelholder.d.ts} +0 -0
  435. /package/{blockui/index.d.ts → types/primeng-blockui.d.ts} +0 -0
  436. /package/{buttongroup/index.d.ts → types/primeng-buttongroup.d.ts} +0 -0
  437. /package/{chart/index.d.ts → types/primeng-chart.d.ts} +0 -0
  438. /package/{dom/index.d.ts → types/primeng-dom.d.ts} +0 -0
  439. /package/{dragdrop/index.d.ts → types/primeng-dragdrop.d.ts} +0 -0
  440. /package/{editor/index.d.ts → types/primeng-editor.d.ts} +0 -0
  441. /package/{floatlabel/index.d.ts → types/primeng-floatlabel.d.ts} +0 -0
  442. /package/{fluid/index.d.ts → types/primeng-fluid.d.ts} +0 -0
  443. /package/{focustrap/index.d.ts → types/primeng-focustrap.d.ts} +0 -0
  444. /package/{iconfield/index.d.ts → types/primeng-iconfield.d.ts} +0 -0
  445. /package/{icons/angledoubledown/index.d.ts → types/primeng-icons-angledoubledown.d.ts} +0 -0
  446. /package/{icons/angledoubleleft/index.d.ts → types/primeng-icons-angledoubleleft.d.ts} +0 -0
  447. /package/{icons/angledoubleright/index.d.ts → types/primeng-icons-angledoubleright.d.ts} +0 -0
  448. /package/{icons/angledoubleup/index.d.ts → types/primeng-icons-angledoubleup.d.ts} +0 -0
  449. /package/{icons/angledown/index.d.ts → types/primeng-icons-angledown.d.ts} +0 -0
  450. /package/{icons/angleleft/index.d.ts → types/primeng-icons-angleleft.d.ts} +0 -0
  451. /package/{icons/angleright/index.d.ts → types/primeng-icons-angleright.d.ts} +0 -0
  452. /package/{icons/angleup/index.d.ts → types/primeng-icons-angleup.d.ts} +0 -0
  453. /package/{icons/arrowdown/index.d.ts → types/primeng-icons-arrowdown.d.ts} +0 -0
  454. /package/{icons/arrowdownleft/index.d.ts → types/primeng-icons-arrowdownleft.d.ts} +0 -0
  455. /package/{icons/arrowdownright/index.d.ts → types/primeng-icons-arrowdownright.d.ts} +0 -0
  456. /package/{icons/arrowleft/index.d.ts → types/primeng-icons-arrowleft.d.ts} +0 -0
  457. /package/{icons/arrowright/index.d.ts → types/primeng-icons-arrowright.d.ts} +0 -0
  458. /package/{icons/arrowup/index.d.ts → types/primeng-icons-arrowup.d.ts} +0 -0
  459. /package/{icons/ban/index.d.ts → types/primeng-icons-ban.d.ts} +0 -0
  460. /package/{icons/bars/index.d.ts → types/primeng-icons-bars.d.ts} +0 -0
  461. /package/{icons/baseicon/index.d.ts → types/primeng-icons-baseicon.d.ts} +0 -0
  462. /package/{icons/blank/index.d.ts → types/primeng-icons-blank.d.ts} +0 -0
  463. /package/{icons/calendar/index.d.ts → types/primeng-icons-calendar.d.ts} +0 -0
  464. /package/{icons/caretleft/index.d.ts → types/primeng-icons-caretleft.d.ts} +0 -0
  465. /package/{icons/caretright/index.d.ts → types/primeng-icons-caretright.d.ts} +0 -0
  466. /package/{icons/check/index.d.ts → types/primeng-icons-check.d.ts} +0 -0
  467. /package/{icons/chevrondown/index.d.ts → types/primeng-icons-chevrondown.d.ts} +0 -0
  468. /package/{icons/chevronleft/index.d.ts → types/primeng-icons-chevronleft.d.ts} +0 -0
  469. /package/{icons/chevronright/index.d.ts → types/primeng-icons-chevronright.d.ts} +0 -0
  470. /package/{icons/chevronup/index.d.ts → types/primeng-icons-chevronup.d.ts} +0 -0
  471. /package/{icons/exclamationtriangle/index.d.ts → types/primeng-icons-exclamationtriangle.d.ts} +0 -0
  472. /package/{icons/eye/index.d.ts → types/primeng-icons-eye.d.ts} +0 -0
  473. /package/{icons/eyeslash/index.d.ts → types/primeng-icons-eyeslash.d.ts} +0 -0
  474. /package/{icons/filter/index.d.ts → types/primeng-icons-filter.d.ts} +0 -0
  475. /package/{icons/filterfill/index.d.ts → types/primeng-icons-filterfill.d.ts} +0 -0
  476. /package/{icons/filterslash/index.d.ts → types/primeng-icons-filterslash.d.ts} +0 -0
  477. /package/{icons/home/index.d.ts → types/primeng-icons-home.d.ts} +0 -0
  478. /package/{icons/infocircle/index.d.ts → types/primeng-icons-infocircle.d.ts} +0 -0
  479. /package/{icons/minus/index.d.ts → types/primeng-icons-minus.d.ts} +0 -0
  480. /package/{icons/pencil/index.d.ts → types/primeng-icons-pencil.d.ts} +0 -0
  481. /package/{icons/plus/index.d.ts → types/primeng-icons-plus.d.ts} +0 -0
  482. /package/{icons/refresh/index.d.ts → types/primeng-icons-refresh.d.ts} +0 -0
  483. /package/{icons/search/index.d.ts → types/primeng-icons-search.d.ts} +0 -0
  484. /package/{icons/searchminus/index.d.ts → types/primeng-icons-searchminus.d.ts} +0 -0
  485. /package/{icons/searchplus/index.d.ts → types/primeng-icons-searchplus.d.ts} +0 -0
  486. /package/{icons/sortalt/index.d.ts → types/primeng-icons-sortalt.d.ts} +0 -0
  487. /package/{icons/sortamountdown/index.d.ts → types/primeng-icons-sortamountdown.d.ts} +0 -0
  488. /package/{icons/sortamountupalt/index.d.ts → types/primeng-icons-sortamountupalt.d.ts} +0 -0
  489. /package/{icons/spinner/index.d.ts → types/primeng-icons-spinner.d.ts} +0 -0
  490. /package/{icons/star/index.d.ts → types/primeng-icons-star.d.ts} +0 -0
  491. /package/{icons/starfill/index.d.ts → types/primeng-icons-starfill.d.ts} +0 -0
  492. /package/{icons/thlarge/index.d.ts → types/primeng-icons-thlarge.d.ts} +0 -0
  493. /package/{icons/times/index.d.ts → types/primeng-icons-times.d.ts} +0 -0
  494. /package/{icons/timescircle/index.d.ts → types/primeng-icons-timescircle.d.ts} +0 -0
  495. /package/{icons/trash/index.d.ts → types/primeng-icons-trash.d.ts} +0 -0
  496. /package/{icons/undo/index.d.ts → types/primeng-icons-undo.d.ts} +0 -0
  497. /package/{icons/upload/index.d.ts → types/primeng-icons-upload.d.ts} +0 -0
  498. /package/{icons/windowmaximize/index.d.ts → types/primeng-icons-windowmaximize.d.ts} +0 -0
  499. /package/{icons/windowminimize/index.d.ts → types/primeng-icons-windowminimize.d.ts} +0 -0
  500. /package/{icons/index.d.ts → types/primeng-icons.d.ts} +0 -0
  501. /package/{iftalabel/index.d.ts → types/primeng-iftalabel.d.ts} +0 -0
  502. /package/{inputgroup/index.d.ts → types/primeng-inputgroup.d.ts} +0 -0
  503. /package/{inputgroupaddon/index.d.ts → types/primeng-inputgroupaddon.d.ts} +0 -0
  504. /package/{inputicon/index.d.ts → types/primeng-inputicon.d.ts} +0 -0
  505. /package/{keyfilter/index.d.ts → types/primeng-keyfilter.d.ts} +0 -0
  506. /package/{organizationchart/index.d.ts → types/primeng-organizationchart.d.ts} +0 -0
  507. /package/{overlaybadge/index.d.ts → types/primeng-overlaybadge.d.ts} +0 -0
  508. /package/{passthrough/index.d.ts → types/primeng-passthrough.d.ts} +0 -0
  509. /package/{progressspinner/index.d.ts → types/primeng-progressspinner.d.ts} +0 -0
  510. /package/{ripple/index.d.ts → types/primeng-ripple.d.ts} +0 -0
  511. /package/{steps/index.d.ts → types/primeng-steps.d.ts} +0 -0
  512. /package/{styleclass/index.d.ts → types/primeng-styleclass.d.ts} +0 -0
  513. /package/{terminal/index.d.ts → types/primeng-terminal.d.ts} +0 -0
  514. /package/{ts-helpers/index.d.ts → types/primeng-ts-helpers.d.ts} +0 -0
  515. /package/types/{avatar/index.d.ts → primeng-types-avatar.d.ts} +0 -0
  516. /package/types/{avatargroup/index.d.ts → primeng-types-avatargroup.d.ts} +0 -0
  517. /package/types/{badge/index.d.ts → primeng-types-badge.d.ts} +0 -0
  518. /package/types/{blockui/index.d.ts → primeng-types-blockui.d.ts} +0 -0
  519. /package/types/{chart/index.d.ts → primeng-types-chart.d.ts} +0 -0
  520. /package/types/{divider/index.d.ts → primeng-types-divider.d.ts} +0 -0
  521. /package/types/{editor/index.d.ts → primeng-types-editor.d.ts} +0 -0
  522. /package/types/{floatlabel/index.d.ts → primeng-types-floatlabel.d.ts} +0 -0
  523. /package/types/{fluid/index.d.ts → primeng-types-fluid.d.ts} +0 -0
  524. /package/types/{iconfield/index.d.ts → primeng-types-iconfield.d.ts} +0 -0
  525. /package/types/{iftalabel/index.d.ts → primeng-types-iftalabel.d.ts} +0 -0
  526. /package/types/{inputgroup/index.d.ts → primeng-types-inputgroup.d.ts} +0 -0
  527. /package/types/{inputgroupaddon/index.d.ts → primeng-types-inputgroupaddon.d.ts} +0 -0
  528. /package/types/{inputicon/index.d.ts → primeng-types-inputicon.d.ts} +0 -0
  529. /package/types/{inputtext/index.d.ts → primeng-types-inputtext.d.ts} +0 -0
  530. /package/types/{knob/index.d.ts → primeng-types-knob.d.ts} +0 -0
  531. /package/types/{organizationchart/index.d.ts → primeng-types-organizationchart.d.ts} +0 -0
  532. /package/types/{overlaybadge/index.d.ts → primeng-types-overlaybadge.d.ts} +0 -0
  533. /package/types/{progressspinner/index.d.ts → primeng-types-progressspinner.d.ts} +0 -0
  534. /package/types/{radiobutton/index.d.ts → primeng-types-radiobutton.d.ts} +0 -0
  535. /package/types/{skeleton/index.d.ts → primeng-types-skeleton.d.ts} +0 -0
  536. /package/types/{slider/index.d.ts → primeng-types-slider.d.ts} +0 -0
  537. /package/types/{tabs/index.d.ts → primeng-types-tabs.d.ts} +0 -0
  538. /package/types/{terminal/index.d.ts → primeng-types-terminal.d.ts} +0 -0
  539. /package/types/{textarea/index.d.ts → primeng-types-textarea.d.ts} +0 -0
  540. /package/types/{tooltip/index.d.ts → primeng-types-tooltip.d.ts} +0 -0
  541. /package/{usestyle/index.d.ts → types/primeng-usestyle.d.ts} +0 -0
  542. /package/{utils/index.d.ts → types/primeng-utils.d.ts} +0 -0
  543. /package/{index.d.ts → types/primeng.d.ts} +0 -0
@@ -1,21 +1,22 @@
1
1
  export * from 'primeng/types/tieredmenu';
2
2
  import * as i0 from '@angular/core';
3
- import { Injectable, InjectionToken, input, EventEmitter, inject, forwardRef, numberAttribute, booleanAttribute, ViewChild, Output, Input, Inject, ViewEncapsulation, Component, computed, signal, effect, ContentChildren, ContentChild, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
+ import { Injectable, InjectionToken, input, EventEmitter, signal, inject, forwardRef, numberAttribute, booleanAttribute, ViewChild, Output, Input, Inject, ViewEncapsulation, Component, computed, effect, ContentChildren, ContentChild, ChangeDetectionStrategy, NgModule } from '@angular/core';
4
4
  import { style } from '@primeuix/styles/tieredmenu';
5
5
  import { BaseStyle } from 'primeng/base';
6
- import { trigger, transition, style as style$1, animate } from '@angular/animations';
7
6
  import * as i2 from '@angular/common';
8
7
  import { isPlatformBrowser, CommonModule } from '@angular/common';
9
8
  import * as i3 from '@angular/router';
10
9
  import { RouterModule } from '@angular/router';
11
10
  import { nestedPosition, resolve, isNotEmpty, uuid, isEmpty, focus, isTouchDevice, isPrintableCharacter, findSingle, addStyle, relativePosition, absolutePosition, getOuterWidth, appendChild, findLastIndex } from '@primeuix/utils';
12
- import * as i5 from 'primeng/api';
11
+ import * as i6 from 'primeng/api';
13
12
  import { SharedModule, PrimeTemplate } from 'primeng/api';
14
13
  import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
15
14
  import * as i1 from 'primeng/bind';
16
15
  import { Bind, BindModule } from 'primeng/bind';
17
16
  import { ConnectedOverlayScrollHandler } from 'primeng/dom';
18
17
  import { AngleRightIcon } from 'primeng/icons';
18
+ import * as i5 from 'primeng/motion';
19
+ import { MotionModule } from 'primeng/motion';
19
20
  import { Ripple } from 'primeng/ripple';
20
21
  import * as i4 from 'primeng/tooltip';
21
22
  import { TooltipModule } from 'primeng/tooltip';
@@ -29,7 +30,7 @@ const classes = {
29
30
  'p-tieredmenu p-component',
30
31
  {
31
32
  'p-tieredmenu-overlay': instance.popup,
32
- 'p-tieredmenu-mobile': instance.queryMatches
33
+ 'p-tieredmenu-mobile': instance.queryMatches()
33
34
  }
34
35
  ],
35
36
  start: 'p-tieredmenu-start',
@@ -57,10 +58,10 @@ class TieredMenuStyle extends BaseStyle {
57
58
  style = style;
58
59
  classes = classes;
59
60
  inlineStyles = inlineStyles;
60
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
61
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuStyle });
61
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
62
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuStyle });
62
63
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuStyle, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuStyle, decorators: [{
64
65
  type: Injectable
65
66
  }] });
66
67
  /**
@@ -130,6 +131,15 @@ class TieredMenuSub extends BaseComponent {
130
131
  el;
131
132
  renderer;
132
133
  tieredMenu;
134
+ get visible() {
135
+ return this._visible;
136
+ }
137
+ set visible(value) {
138
+ this._visible = value;
139
+ if (this._visible || this.root) {
140
+ this.render.set(true);
141
+ }
142
+ }
133
143
  items;
134
144
  itemTemplate;
135
145
  root = false;
@@ -142,7 +152,8 @@ class TieredMenuSub extends BaseComponent {
142
152
  ariaLabelledBy;
143
153
  level = 0;
144
154
  focusedItemId;
145
- activeItemPath = input([], ...(ngDevMode ? [{ debugName: "activeItemPath" }] : []));
155
+ activeItemPath = input([], { ...(ngDevMode ? { debugName: "activeItemPath" } : {}) });
156
+ motionOptions;
146
157
  tabindex = 0;
147
158
  inlineStyles;
148
159
  itemClick = new EventEmitter();
@@ -151,10 +162,12 @@ class TieredMenuSub extends BaseComponent {
151
162
  menuBlur = new EventEmitter();
152
163
  menuKeydown = new EventEmitter();
153
164
  sublistViewChild;
165
+ render = signal(false, { ...(ngDevMode ? { debugName: "render" } : {}) });
154
166
  _componentStyle = inject(TieredMenuStyle);
155
167
  bindDirectiveInstance = inject(Bind, { self: true });
156
168
  $pcTieredMenu = inject(TIEREDMENU_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
157
169
  $pcTieredMenuSub = inject(TIEREDMENUSUB_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
170
+ _visible = false;
158
171
  onAfterViewChecked() {
159
172
  this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
160
173
  }
@@ -164,9 +177,8 @@ class TieredMenuSub extends BaseComponent {
164
177
  this.renderer = renderer;
165
178
  this.tieredMenu = tieredMenu;
166
179
  }
167
- positionSubmenu() {
180
+ positionSubmenu(sublist) {
168
181
  if (isPlatformBrowser(this.tieredMenu.platformId)) {
169
- const sublist = this.sublistViewChild && this.sublistViewChild.nativeElement;
170
182
  if (sublist) {
171
183
  nestedPosition(sublist, this.level);
172
184
  }
@@ -181,24 +193,9 @@ class TieredMenuSub extends BaseComponent {
181
193
  getItemKey(processedItem) {
182
194
  return this.getItemId(processedItem);
183
195
  }
184
- getItemClass(processedItem) {
185
- return {
186
- ...this.getItemProp(processedItem, 'class'),
187
- 'p-tieredmenu-item': true,
188
- 'p-tieredmenu-item-active': this.isItemActive(processedItem),
189
- 'p-focus': this.isItemFocused(processedItem),
190
- 'p-disabled': this.isItemDisabled(processedItem)
191
- };
192
- }
193
196
  getItemLabel(processedItem) {
194
197
  return this.getItemProp(processedItem, 'label');
195
198
  }
196
- getSeparatorItemClass(processedItem) {
197
- return {
198
- ...this.getItemProp(processedItem, 'class'),
199
- 'p-tieredmenu-separator': true
200
- };
201
- }
202
199
  getAriaSetSize() {
203
200
  return this.items.filter((processedItem) => this.isItemVisible(processedItem) && !this.getItemProp(processedItem, 'separator')).length;
204
201
  }
@@ -216,7 +213,6 @@ class TieredMenuSub extends BaseComponent {
216
213
  }
217
214
  isItemActive(processedItem) {
218
215
  if (this.activeItemPath()) {
219
- this.positionSubmenu();
220
216
  return this.activeItemPath().some((path) => path.key === processedItem.key);
221
217
  }
222
218
  return false;
@@ -255,330 +251,408 @@ class TieredMenuSub extends BaseComponent {
255
251
  this.getItemProp(processedItem, 'command', { originalEvent: event, item: processedItem.item });
256
252
  this.itemClick.emit({ originalEvent: event, processedItem, isFocus: true });
257
253
  }
258
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuSub, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: forwardRef(() => TieredMenu) }], target: i0.ɵɵFactoryTarget.Component });
259
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: TieredMenuSub, isStandalone: true, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: false, isRequired: false, transformFunction: null }, itemTemplate: { classPropertyName: "itemTemplate", publicName: "itemTemplate", isSignal: false, isRequired: false, transformFunction: null }, root: { classPropertyName: "root", publicName: "root", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoDisplay: { classPropertyName: "autoDisplay", publicName: "autoDisplay", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, popup: { classPropertyName: "popup", publicName: "popup", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, menuId: { classPropertyName: "menuId", publicName: "menuId", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: false, isRequired: false, transformFunction: numberAttribute }, focusedItemId: { classPropertyName: "focusedItemId", publicName: "focusedItemId", isSignal: false, isRequired: false, transformFunction: null }, activeItemPath: { classPropertyName: "activeItemPath", publicName: "activeItemPath", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, inlineStyles: { classPropertyName: "inlineStyles", publicName: "inlineStyles", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick", itemMouseEnter: "itemMouseEnter", menuFocus: "menuFocus", menuBlur: "menuBlur", menuKeydown: "menuKeydown" }, providers: [
254
+ onBeforeEnter(event) {
255
+ this.positionSubmenu(event.element);
256
+ }
257
+ onAfterLeave() {
258
+ this.render.set(false);
259
+ }
260
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuSub, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: forwardRef(() => TieredMenu) }], target: i0.ɵɵFactoryTarget.Component });
261
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: TieredMenuSub, isStandalone: true, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: false, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: false, isRequired: false, transformFunction: null }, itemTemplate: { classPropertyName: "itemTemplate", publicName: "itemTemplate", isSignal: false, isRequired: false, transformFunction: null }, root: { classPropertyName: "root", publicName: "root", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoDisplay: { classPropertyName: "autoDisplay", publicName: "autoDisplay", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, popup: { classPropertyName: "popup", publicName: "popup", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, menuId: { classPropertyName: "menuId", publicName: "menuId", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: false, isRequired: false, transformFunction: numberAttribute }, focusedItemId: { classPropertyName: "focusedItemId", publicName: "focusedItemId", isSignal: false, isRequired: false, transformFunction: null }, activeItemPath: { classPropertyName: "activeItemPath", publicName: "activeItemPath", isSignal: true, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, inlineStyles: { classPropertyName: "inlineStyles", publicName: "inlineStyles", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick", itemMouseEnter: "itemMouseEnter", menuFocus: "menuFocus", menuBlur: "menuBlur", menuKeydown: "menuKeydown" }, providers: [
260
262
  { provide: TIEREDMENUSUB_INSTANCE, useExisting: forwardRef(() => TieredMenuSub) },
261
263
  { provide: PARENT_INSTANCE, useExisting: forwardRef(() => TieredMenuSub) }
262
- ], viewQueries: [{ propertyName: "sublistViewChild", first: true, predicate: ["sublist"], descendants: true, static: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
263
- <ul
264
- #sublist
265
- role="menu"
266
- [class]="root ? cx('rootList') : cx('submenu')"
267
- [id]="menuId + '_list'"
268
- [tabindex]="tabindex"
269
- [attr.aria-label]="ariaLabel"
270
- [attr.aria-labelledBy]="ariaLabelledBy"
271
- [attr.aria-activedescendant]="focusedItemId"
272
- [attr.aria-orientation]="'vertical'"
273
- [pBind]="_ptm(root ? 'rootList' : 'submenu')"
274
- (keydown)="menuKeydown.emit($event)"
275
- (focus)="menuFocus.emit($event)"
276
- (blur)="menuBlur.emit($event)"
277
- [style]="inlineStyles"
278
- >
279
- <ng-template ngFor let-processedItem [ngForOf]="items" let-index="index">
280
- <li
281
- *ngIf="isItemVisible(processedItem) && getItemProp(processedItem, 'separator')"
282
- [attr.id]="getItemId(processedItem)"
283
- [style]="getItemProp(processedItem, 'style')"
284
- [class]="cn(cx('separator'), getItemProp(processedItem, 'class'), getItemProp(processedItem, 'styleClass'))"
285
- role="separator"
286
- [pBind]="_ptm('separator')"
287
- ></li>
288
- <li
289
- #listItem
290
- *ngIf="isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')"
291
- role="menuitem"
292
- [attr.id]="getItemId(processedItem)"
293
- [attr.data-p-highlight]="isItemActive(processedItem)"
294
- [attr.data-p-focused]="isItemFocused(processedItem)"
295
- [attr.data-p-disabled]="isItemDisabled(processedItem)"
296
- [attr.aria-label]="getItemLabel(processedItem)"
297
- [attr.aria-disabled]="isItemDisabled(processedItem) || undefined"
298
- [attr.aria-haspopup]="isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined"
299
- [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
300
- [attr.aria-setsize]="getAriaSetSize()"
301
- [attr.aria-posinset]="getAriaPosInset(index)"
302
- [ngStyle]="getItemProp(processedItem, 'style')"
303
- [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
304
- [pBind]="getPTOptions(processedItem, index, 'item')"
305
- pTooltip
306
- [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
307
- >
308
- <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)" (mouseenter)="onItemMouseEnter({ $event, processedItem })">
309
- <ng-container *ngIf="!itemTemplate">
310
- <a
311
- *ngIf="!getItemProp(processedItem, 'routerLink')"
312
- [attr.href]="getItemProp(processedItem, 'url')"
313
- [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
314
- [target]="getItemProp(processedItem, 'target')"
315
- [class]="cx('itemLink')"
316
- [attr.tabindex]="-1"
317
- [pBind]="getPTOptions(processedItem, index, 'itemLink')"
318
- pRipple
319
- >
320
- <span
321
- *ngIf="getItemProp(processedItem, 'icon')"
322
- [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'))"
323
- [ngStyle]="getItemProp(processedItem, 'iconStyle')"
324
- [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
264
+ ], viewQueries: [{ propertyName: "sublistViewChild", first: true, predicate: ["sublist"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
265
+ @if (render()) {
266
+ <ul
267
+ #sublist
268
+ role="menu"
269
+ [class]="root ? cx('rootList') : cx('submenu')"
270
+ [id]="menuId + '_list'"
271
+ [tabindex]="tabindex"
272
+ [attr.aria-label]="ariaLabel"
273
+ [attr.aria-labelledBy]="ariaLabelledBy"
274
+ [attr.aria-activedescendant]="focusedItemId"
275
+ [attr.aria-orientation]="'vertical'"
276
+ [pBind]="_ptm(root ? 'rootList' : 'submenu')"
277
+ (keydown)="menuKeydown.emit($event)"
278
+ (focus)="menuFocus.emit($event)"
279
+ (blur)="menuBlur.emit($event)"
280
+ [style]="inlineStyles"
281
+ [pMotion]="root ? true : visible"
282
+ [pMotionDisabled]="root"
283
+ [pMotionAppear]="true"
284
+ [pMotionName]="'p-anchored-overlay'"
285
+ [pMotionOptions]="motionOptions"
286
+ (pMotionOnBeforeEnter)="onBeforeEnter($event)"
287
+ (pMotionOnAfterLeave)="onAfterLeave()"
288
+ >
289
+ <ng-template ngFor let-processedItem [ngForOf]="items" let-index="index">
290
+ <li
291
+ *ngIf="isItemVisible(processedItem) && getItemProp(processedItem, 'separator')"
292
+ [attr.id]="getItemId(processedItem)"
293
+ [style]="getItemProp(processedItem, 'style')"
294
+ [class]="cn(cx('separator'), getItemProp(processedItem, 'class'), getItemProp(processedItem, 'styleClass'))"
295
+ role="separator"
296
+ [pBind]="_ptm('separator')"
297
+ ></li>
298
+ <li
299
+ #listItem
300
+ *ngIf="isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')"
301
+ role="menuitem"
302
+ [attr.id]="getItemId(processedItem)"
303
+ [attr.data-p-highlight]="isItemActive(processedItem)"
304
+ [attr.data-p-focused]="isItemFocused(processedItem)"
305
+ [attr.data-p-disabled]="isItemDisabled(processedItem)"
306
+ [attr.aria-label]="getItemLabel(processedItem)"
307
+ [attr.aria-disabled]="isItemDisabled(processedItem) || undefined"
308
+ [attr.aria-haspopup]="isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined"
309
+ [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
310
+ [attr.aria-setsize]="getAriaSetSize()"
311
+ [attr.aria-posinset]="getAriaPosInset(index)"
312
+ [ngStyle]="getItemProp(processedItem, 'style')"
313
+ [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
314
+ [pBind]="getPTOptions(processedItem, index, 'item')"
315
+ pTooltip
316
+ [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
317
+ [pTooltipUnstyled]="unstyled()"
318
+ >
319
+ <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)" (mouseenter)="onItemMouseEnter({ $event, processedItem })">
320
+ <ng-container *ngIf="!itemTemplate">
321
+ <a
322
+ *ngIf="!getItemProp(processedItem, 'routerLink')"
323
+ [attr.href]="getItemProp(processedItem, 'url')"
324
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
325
+ [attr.title]="getItemProp(processedItem, 'title')"
326
+ [target]="getItemProp(processedItem, 'target')"
327
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
328
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
325
329
  [attr.tabindex]="-1"
330
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
331
+ pRipple
326
332
  >
327
- </span>
328
- <span *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel" [class]="cx('itemLabel')" [pBind]="getPTOptions(processedItem, index, 'itemLabel')">
329
- {{ getItemLabel(processedItem) }}
330
- </span>
331
- <ng-template #htmlLabel>
332
- <span [class]="cx('itemLabel')" [innerHTML]="getItemLabel(processedItem)" [pBind]="getPTOptions(processedItem, index, 'itemLabel')"></span>
333
- </ng-template>
334
- <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
333
+ <span
334
+ *ngIf="getItemProp(processedItem, 'icon')"
335
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
336
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
337
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
338
+ [attr.tabindex]="-1"
339
+ >
340
+ </span>
341
+ <span
342
+ *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel"
343
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
344
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
345
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
346
+ >
347
+ {{ getItemLabel(processedItem) }}
348
+ </span>
349
+ <ng-template #htmlLabel>
350
+ <span
351
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
352
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
353
+ [innerHTML]="getItemLabel(processedItem)"
354
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
355
+ ></span>
356
+ </ng-template>
357
+ <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
335
358
 
336
- <ng-container *ngIf="isItemGroup(processedItem)">
337
- <svg
338
- data-p-icon="angle-right"
339
- *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
340
- [class]="cx('submenuIcon')"
341
- [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
342
- [attr.aria-hidden]="true"
343
- />
344
- <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
345
- </ng-container>
346
- </a>
347
- <a
348
- *ngIf="getItemProp(processedItem, 'routerLink')"
349
- [routerLink]="getItemProp(processedItem, 'routerLink')"
350
- [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
351
- [attr.tabindex]="-1"
352
- [queryParams]="getItemProp(processedItem, 'queryParams')"
353
- [routerLinkActive]="'p-tieredmenu-item-link-active'"
354
- [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
355
- [target]="getItemProp(processedItem, 'target')"
356
- [class]="cx('itemLink')"
357
- [fragment]="getItemProp(processedItem, 'fragment')"
358
- [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
359
- [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
360
- [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
361
- [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
362
- [state]="getItemProp(processedItem, 'state')"
363
- [pBind]="getPTOptions(processedItem, index, 'itemLink')"
364
- pRipple
365
- >
366
- <span
367
- *ngIf="getItemProp(processedItem, 'icon')"
368
- [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'))"
369
- [ngStyle]="getItemProp(processedItem, 'iconStyle')"
370
- [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
371
- [attr.aria-hidden]="true"
359
+ <ng-container *ngIf="isItemGroup(processedItem)">
360
+ <svg
361
+ data-p-icon="angle-right"
362
+ *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
363
+ [class]="cx('submenuIcon')"
364
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
365
+ [attr.aria-hidden]="true"
366
+ />
367
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
368
+ </ng-container>
369
+ </a>
370
+ <a
371
+ *ngIf="getItemProp(processedItem, 'routerLink')"
372
+ [routerLink]="getItemProp(processedItem, 'routerLink')"
373
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
374
+ [attr.title]="getItemProp(processedItem, 'title')"
372
375
  [attr.tabindex]="-1"
376
+ [queryParams]="getItemProp(processedItem, 'queryParams')"
377
+ [routerLinkActive]="'p-tieredmenu-item-link-active'"
378
+ [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
379
+ [target]="getItemProp(processedItem, 'target')"
380
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
381
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
382
+ [fragment]="getItemProp(processedItem, 'fragment')"
383
+ [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
384
+ [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
385
+ [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
386
+ [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
387
+ [state]="getItemProp(processedItem, 'state')"
388
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
389
+ pRipple
373
390
  >
374
- </span>
375
- <span *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel" [class]="cx('itemLabel')" [pBind]="getPTOptions(processedItem, index, 'itemLabel')">
376
- {{ getItemLabel(processedItem) }}
377
- </span>
378
- <ng-template #htmlLabel>
379
- <span [class]="cx('itemLabel')" [innerHTML]="getItemLabel(processedItem)" [pBind]="getPTOptions(processedItem, index, 'itemLabel')"></span>
380
- </ng-template>
381
- <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
382
-
383
- <ng-container *ngIf="isItemGroup(processedItem)">
384
- <svg
385
- data-p-icon="angle-right"
386
- *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
387
- [class]="cx('submenuIcon')"
388
- [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
391
+ <span
392
+ *ngIf="getItemProp(processedItem, 'icon')"
393
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
394
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
395
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
389
396
  [attr.aria-hidden]="true"
390
- />
391
- <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
392
- </ng-container>
393
- </a>
394
- </ng-container>
395
- <ng-container *ngIf="itemTemplate">
396
- <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }"></ng-template>
397
- </ng-container>
398
- </div>
397
+ [attr.tabindex]="-1"
398
+ >
399
+ </span>
400
+ <span
401
+ *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel"
402
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
403
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
404
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
405
+ >
406
+ {{ getItemLabel(processedItem) }}
407
+ </span>
408
+ <ng-template #htmlLabel>
409
+ <span
410
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
411
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
412
+ [innerHTML]="getItemLabel(processedItem)"
413
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
414
+ ></span>
415
+ </ng-template>
416
+ <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
417
+
418
+ <ng-container *ngIf="isItemGroup(processedItem)">
419
+ <svg
420
+ data-p-icon="angle-right"
421
+ *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
422
+ [class]="cx('submenuIcon')"
423
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
424
+ [attr.aria-hidden]="true"
425
+ />
426
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
427
+ </ng-container>
428
+ </a>
429
+ </ng-container>
430
+ <ng-container *ngIf="itemTemplate">
431
+ <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }"></ng-template>
432
+ </ng-container>
433
+ </div>
399
434
 
400
- <p-tieredmenusub
401
- *ngIf="isItemVisible(processedItem) && isItemGroup(processedItem)"
402
- [items]="processedItem.items"
403
- [itemTemplate]="itemTemplate"
404
- [autoDisplay]="autoDisplay"
405
- [menuId]="menuId"
406
- [activeItemPath]="activeItemPath()"
407
- [focusedItemId]="focusedItemId"
408
- [ariaLabelledBy]="getItemId(processedItem)"
409
- [level]="level + 1"
410
- (itemClick)="itemClick.emit($event)"
411
- (itemMouseEnter)="onItemMouseEnter($event)"
412
- [inlineStyles]="{ display: isItemActive(processedItem) ? 'flex' : 'none' }"
413
- [pt]="pt()"
414
- ></p-tieredmenusub>
415
- </li>
416
- </ng-template>
417
- </ul>
418
- `, isInline: true, dependencies: [{ kind: "component", type: TieredMenuSub, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: ["items", "itemTemplate", "root", "autoDisplay", "autoZIndex", "baseZIndex", "popup", "menuId", "ariaLabel", "ariaLabelledBy", "level", "focusedItemId", "activeItemPath", "tabindex", "inlineStyles"], outputs: ["itemClick", "itemMouseEnter", "menuFocus", "menuBlur", "menuKeydown"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "component", type: AngleRightIcon, selector: "[data-p-icon=\"angle-right\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }], encapsulation: i0.ViewEncapsulation.None });
435
+ <p-tieredmenusub
436
+ *ngIf="isItemVisible(processedItem) && isItemGroup(processedItem)"
437
+ [items]="processedItem.items"
438
+ [itemTemplate]="itemTemplate"
439
+ [autoDisplay]="autoDisplay"
440
+ [menuId]="menuId"
441
+ [visible]="isItemActive(processedItem) && isItemGroup(processedItem)"
442
+ [activeItemPath]="activeItemPath()"
443
+ [focusedItemId]="focusedItemId"
444
+ [ariaLabelledBy]="getItemId(processedItem)"
445
+ [level]="level + 1"
446
+ (itemClick)="itemClick.emit($event)"
447
+ (itemMouseEnter)="onItemMouseEnter($event)"
448
+ [pt]="pt()"
449
+ [motionOptions]="motionOptions"
450
+ [unstyled]="unstyled()"
451
+ ></p-tieredmenusub>
452
+ </li>
453
+ </ng-template>
454
+ </ul>
455
+ }
456
+ `, isInline: true, dependencies: [{ kind: "component", type: TieredMenuSub, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: ["visible", "items", "itemTemplate", "root", "autoDisplay", "autoZIndex", "baseZIndex", "popup", "menuId", "ariaLabel", "ariaLabelledBy", "level", "focusedItemId", "activeItemPath", "motionOptions", "tabindex", "inlineStyles"], outputs: ["itemClick", "itemMouseEnter", "menuFocus", "menuBlur", "menuKeydown"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip", "pTooltipPT", "pTooltipUnstyled"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "component", type: AngleRightIcon, selector: "[data-p-icon=\"angle-right\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "ngmodule", type: MotionModule }, { kind: "directive", type: i5.MotionDirective, selector: "[pMotion]", inputs: ["pMotion", "pMotionName", "pMotionType", "pMotionSafe", "pMotionDisabled", "pMotionAppear", "pMotionEnter", "pMotionLeave", "pMotionDuration", "pMotionHideStrategy", "pMotionEnterFromClass", "pMotionEnterToClass", "pMotionEnterActiveClass", "pMotionLeaveFromClass", "pMotionLeaveToClass", "pMotionLeaveActiveClass", "pMotionOptions"], outputs: ["pMotionOnBeforeEnter", "pMotionOnEnter", "pMotionOnAfterEnter", "pMotionOnEnterCancelled", "pMotionOnBeforeLeave", "pMotionOnLeave", "pMotionOnAfterLeave", "pMotionOnLeaveCancelled"] }], encapsulation: i0.ViewEncapsulation.None });
419
457
  }
420
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuSub, decorators: [{
458
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuSub, decorators: [{
421
459
  type: Component,
422
460
  args: [{
423
461
  selector: 'p-tieredMenuSub, p-tieredmenusub',
424
462
  standalone: true,
425
- imports: [CommonModule, RouterModule, Ripple, TooltipModule, AngleRightIcon, SharedModule, BindModule],
463
+ imports: [CommonModule, RouterModule, Ripple, TooltipModule, AngleRightIcon, SharedModule, BindModule, MotionModule],
426
464
  template: `
427
- <ul
428
- #sublist
429
- role="menu"
430
- [class]="root ? cx('rootList') : cx('submenu')"
431
- [id]="menuId + '_list'"
432
- [tabindex]="tabindex"
433
- [attr.aria-label]="ariaLabel"
434
- [attr.aria-labelledBy]="ariaLabelledBy"
435
- [attr.aria-activedescendant]="focusedItemId"
436
- [attr.aria-orientation]="'vertical'"
437
- [pBind]="_ptm(root ? 'rootList' : 'submenu')"
438
- (keydown)="menuKeydown.emit($event)"
439
- (focus)="menuFocus.emit($event)"
440
- (blur)="menuBlur.emit($event)"
441
- [style]="inlineStyles"
442
- >
443
- <ng-template ngFor let-processedItem [ngForOf]="items" let-index="index">
444
- <li
445
- *ngIf="isItemVisible(processedItem) && getItemProp(processedItem, 'separator')"
446
- [attr.id]="getItemId(processedItem)"
447
- [style]="getItemProp(processedItem, 'style')"
448
- [class]="cn(cx('separator'), getItemProp(processedItem, 'class'), getItemProp(processedItem, 'styleClass'))"
449
- role="separator"
450
- [pBind]="_ptm('separator')"
451
- ></li>
452
- <li
453
- #listItem
454
- *ngIf="isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')"
455
- role="menuitem"
456
- [attr.id]="getItemId(processedItem)"
457
- [attr.data-p-highlight]="isItemActive(processedItem)"
458
- [attr.data-p-focused]="isItemFocused(processedItem)"
459
- [attr.data-p-disabled]="isItemDisabled(processedItem)"
460
- [attr.aria-label]="getItemLabel(processedItem)"
461
- [attr.aria-disabled]="isItemDisabled(processedItem) || undefined"
462
- [attr.aria-haspopup]="isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined"
463
- [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
464
- [attr.aria-setsize]="getAriaSetSize()"
465
- [attr.aria-posinset]="getAriaPosInset(index)"
466
- [ngStyle]="getItemProp(processedItem, 'style')"
467
- [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
468
- [pBind]="getPTOptions(processedItem, index, 'item')"
469
- pTooltip
470
- [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
471
- >
472
- <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)" (mouseenter)="onItemMouseEnter({ $event, processedItem })">
473
- <ng-container *ngIf="!itemTemplate">
474
- <a
475
- *ngIf="!getItemProp(processedItem, 'routerLink')"
476
- [attr.href]="getItemProp(processedItem, 'url')"
477
- [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
478
- [target]="getItemProp(processedItem, 'target')"
479
- [class]="cx('itemLink')"
480
- [attr.tabindex]="-1"
481
- [pBind]="getPTOptions(processedItem, index, 'itemLink')"
482
- pRipple
483
- >
484
- <span
485
- *ngIf="getItemProp(processedItem, 'icon')"
486
- [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'))"
487
- [ngStyle]="getItemProp(processedItem, 'iconStyle')"
488
- [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
465
+ @if (render()) {
466
+ <ul
467
+ #sublist
468
+ role="menu"
469
+ [class]="root ? cx('rootList') : cx('submenu')"
470
+ [id]="menuId + '_list'"
471
+ [tabindex]="tabindex"
472
+ [attr.aria-label]="ariaLabel"
473
+ [attr.aria-labelledBy]="ariaLabelledBy"
474
+ [attr.aria-activedescendant]="focusedItemId"
475
+ [attr.aria-orientation]="'vertical'"
476
+ [pBind]="_ptm(root ? 'rootList' : 'submenu')"
477
+ (keydown)="menuKeydown.emit($event)"
478
+ (focus)="menuFocus.emit($event)"
479
+ (blur)="menuBlur.emit($event)"
480
+ [style]="inlineStyles"
481
+ [pMotion]="root ? true : visible"
482
+ [pMotionDisabled]="root"
483
+ [pMotionAppear]="true"
484
+ [pMotionName]="'p-anchored-overlay'"
485
+ [pMotionOptions]="motionOptions"
486
+ (pMotionOnBeforeEnter)="onBeforeEnter($event)"
487
+ (pMotionOnAfterLeave)="onAfterLeave()"
488
+ >
489
+ <ng-template ngFor let-processedItem [ngForOf]="items" let-index="index">
490
+ <li
491
+ *ngIf="isItemVisible(processedItem) && getItemProp(processedItem, 'separator')"
492
+ [attr.id]="getItemId(processedItem)"
493
+ [style]="getItemProp(processedItem, 'style')"
494
+ [class]="cn(cx('separator'), getItemProp(processedItem, 'class'), getItemProp(processedItem, 'styleClass'))"
495
+ role="separator"
496
+ [pBind]="_ptm('separator')"
497
+ ></li>
498
+ <li
499
+ #listItem
500
+ *ngIf="isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')"
501
+ role="menuitem"
502
+ [attr.id]="getItemId(processedItem)"
503
+ [attr.data-p-highlight]="isItemActive(processedItem)"
504
+ [attr.data-p-focused]="isItemFocused(processedItem)"
505
+ [attr.data-p-disabled]="isItemDisabled(processedItem)"
506
+ [attr.aria-label]="getItemLabel(processedItem)"
507
+ [attr.aria-disabled]="isItemDisabled(processedItem) || undefined"
508
+ [attr.aria-haspopup]="isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined"
509
+ [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
510
+ [attr.aria-setsize]="getAriaSetSize()"
511
+ [attr.aria-posinset]="getAriaPosInset(index)"
512
+ [ngStyle]="getItemProp(processedItem, 'style')"
513
+ [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
514
+ [pBind]="getPTOptions(processedItem, index, 'item')"
515
+ pTooltip
516
+ [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
517
+ [pTooltipUnstyled]="unstyled()"
518
+ >
519
+ <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)" (mouseenter)="onItemMouseEnter({ $event, processedItem })">
520
+ <ng-container *ngIf="!itemTemplate">
521
+ <a
522
+ *ngIf="!getItemProp(processedItem, 'routerLink')"
523
+ [attr.href]="getItemProp(processedItem, 'url')"
524
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
525
+ [attr.title]="getItemProp(processedItem, 'title')"
526
+ [target]="getItemProp(processedItem, 'target')"
527
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
528
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
489
529
  [attr.tabindex]="-1"
530
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
531
+ pRipple
490
532
  >
491
- </span>
492
- <span *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel" [class]="cx('itemLabel')" [pBind]="getPTOptions(processedItem, index, 'itemLabel')">
493
- {{ getItemLabel(processedItem) }}
494
- </span>
495
- <ng-template #htmlLabel>
496
- <span [class]="cx('itemLabel')" [innerHTML]="getItemLabel(processedItem)" [pBind]="getPTOptions(processedItem, index, 'itemLabel')"></span>
497
- </ng-template>
498
- <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
533
+ <span
534
+ *ngIf="getItemProp(processedItem, 'icon')"
535
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
536
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
537
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
538
+ [attr.tabindex]="-1"
539
+ >
540
+ </span>
541
+ <span
542
+ *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel"
543
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
544
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
545
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
546
+ >
547
+ {{ getItemLabel(processedItem) }}
548
+ </span>
549
+ <ng-template #htmlLabel>
550
+ <span
551
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
552
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
553
+ [innerHTML]="getItemLabel(processedItem)"
554
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
555
+ ></span>
556
+ </ng-template>
557
+ <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
499
558
 
500
- <ng-container *ngIf="isItemGroup(processedItem)">
501
- <svg
502
- data-p-icon="angle-right"
503
- *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
504
- [class]="cx('submenuIcon')"
505
- [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
506
- [attr.aria-hidden]="true"
507
- />
508
- <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
509
- </ng-container>
510
- </a>
511
- <a
512
- *ngIf="getItemProp(processedItem, 'routerLink')"
513
- [routerLink]="getItemProp(processedItem, 'routerLink')"
514
- [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
515
- [attr.tabindex]="-1"
516
- [queryParams]="getItemProp(processedItem, 'queryParams')"
517
- [routerLinkActive]="'p-tieredmenu-item-link-active'"
518
- [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
519
- [target]="getItemProp(processedItem, 'target')"
520
- [class]="cx('itemLink')"
521
- [fragment]="getItemProp(processedItem, 'fragment')"
522
- [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
523
- [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
524
- [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
525
- [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
526
- [state]="getItemProp(processedItem, 'state')"
527
- [pBind]="getPTOptions(processedItem, index, 'itemLink')"
528
- pRipple
529
- >
530
- <span
531
- *ngIf="getItemProp(processedItem, 'icon')"
532
- [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'))"
533
- [ngStyle]="getItemProp(processedItem, 'iconStyle')"
534
- [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
535
- [attr.aria-hidden]="true"
559
+ <ng-container *ngIf="isItemGroup(processedItem)">
560
+ <svg
561
+ data-p-icon="angle-right"
562
+ *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
563
+ [class]="cx('submenuIcon')"
564
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
565
+ [attr.aria-hidden]="true"
566
+ />
567
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
568
+ </ng-container>
569
+ </a>
570
+ <a
571
+ *ngIf="getItemProp(processedItem, 'routerLink')"
572
+ [routerLink]="getItemProp(processedItem, 'routerLink')"
573
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
574
+ [attr.title]="getItemProp(processedItem, 'title')"
536
575
  [attr.tabindex]="-1"
576
+ [queryParams]="getItemProp(processedItem, 'queryParams')"
577
+ [routerLinkActive]="'p-tieredmenu-item-link-active'"
578
+ [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
579
+ [target]="getItemProp(processedItem, 'target')"
580
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
581
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
582
+ [fragment]="getItemProp(processedItem, 'fragment')"
583
+ [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
584
+ [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
585
+ [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
586
+ [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
587
+ [state]="getItemProp(processedItem, 'state')"
588
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
589
+ pRipple
537
590
  >
538
- </span>
539
- <span *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel" [class]="cx('itemLabel')" [pBind]="getPTOptions(processedItem, index, 'itemLabel')">
540
- {{ getItemLabel(processedItem) }}
541
- </span>
542
- <ng-template #htmlLabel>
543
- <span [class]="cx('itemLabel')" [innerHTML]="getItemLabel(processedItem)" [pBind]="getPTOptions(processedItem, index, 'itemLabel')"></span>
544
- </ng-template>
545
- <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
546
-
547
- <ng-container *ngIf="isItemGroup(processedItem)">
548
- <svg
549
- data-p-icon="angle-right"
550
- *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
551
- [class]="cx('submenuIcon')"
552
- [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
591
+ <span
592
+ *ngIf="getItemProp(processedItem, 'icon')"
593
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
594
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
595
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
553
596
  [attr.aria-hidden]="true"
554
- />
555
- <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
556
- </ng-container>
557
- </a>
558
- </ng-container>
559
- <ng-container *ngIf="itemTemplate">
560
- <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }"></ng-template>
561
- </ng-container>
562
- </div>
597
+ [attr.tabindex]="-1"
598
+ >
599
+ </span>
600
+ <span
601
+ *ngIf="getItemProp(processedItem, 'escape'); else htmlLabel"
602
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
603
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
604
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
605
+ >
606
+ {{ getItemLabel(processedItem) }}
607
+ </span>
608
+ <ng-template #htmlLabel>
609
+ <span
610
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
611
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
612
+ [innerHTML]="getItemLabel(processedItem)"
613
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
614
+ ></span>
615
+ </ng-template>
616
+ <span *ngIf="getItemProp(processedItem, 'badge')" [class]="cn(cx('itemBadge'), getItemProp(processedItem, 'badgeStyleClass'))">{{ getItemProp(processedItem, 'badge') }}</span>
617
+
618
+ <ng-container *ngIf="isItemGroup(processedItem)">
619
+ <svg
620
+ data-p-icon="angle-right"
621
+ *ngIf="!tieredMenu.submenuIconTemplate && !tieredMenu._submenuIconTemplate"
622
+ [class]="cx('submenuIcon')"
623
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
624
+ [attr.aria-hidden]="true"
625
+ />
626
+ <ng-template *ngTemplateOutlet="tieredMenu.submenuIconTemplate || tieredMenu._submenuIconTemplate" [attr.aria-hidden]="true"></ng-template>
627
+ </ng-container>
628
+ </a>
629
+ </ng-container>
630
+ <ng-container *ngIf="itemTemplate">
631
+ <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }"></ng-template>
632
+ </ng-container>
633
+ </div>
563
634
 
564
- <p-tieredmenusub
565
- *ngIf="isItemVisible(processedItem) && isItemGroup(processedItem)"
566
- [items]="processedItem.items"
567
- [itemTemplate]="itemTemplate"
568
- [autoDisplay]="autoDisplay"
569
- [menuId]="menuId"
570
- [activeItemPath]="activeItemPath()"
571
- [focusedItemId]="focusedItemId"
572
- [ariaLabelledBy]="getItemId(processedItem)"
573
- [level]="level + 1"
574
- (itemClick)="itemClick.emit($event)"
575
- (itemMouseEnter)="onItemMouseEnter($event)"
576
- [inlineStyles]="{ display: isItemActive(processedItem) ? 'flex' : 'none' }"
577
- [pt]="pt()"
578
- ></p-tieredmenusub>
579
- </li>
580
- </ng-template>
581
- </ul>
635
+ <p-tieredmenusub
636
+ *ngIf="isItemVisible(processedItem) && isItemGroup(processedItem)"
637
+ [items]="processedItem.items"
638
+ [itemTemplate]="itemTemplate"
639
+ [autoDisplay]="autoDisplay"
640
+ [menuId]="menuId"
641
+ [visible]="isItemActive(processedItem) && isItemGroup(processedItem)"
642
+ [activeItemPath]="activeItemPath()"
643
+ [focusedItemId]="focusedItemId"
644
+ [ariaLabelledBy]="getItemId(processedItem)"
645
+ [level]="level + 1"
646
+ (itemClick)="itemClick.emit($event)"
647
+ (itemMouseEnter)="onItemMouseEnter($event)"
648
+ [pt]="pt()"
649
+ [motionOptions]="motionOptions"
650
+ [unstyled]="unstyled()"
651
+ ></p-tieredmenusub>
652
+ </li>
653
+ </ng-template>
654
+ </ul>
655
+ }
582
656
  `,
583
657
  encapsulation: ViewEncapsulation.None,
584
658
  providers: [
@@ -590,7 +664,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
590
664
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: TieredMenu, decorators: [{
591
665
  type: Inject,
592
666
  args: [forwardRef(() => TieredMenu)]
593
- }] }], propDecorators: { items: [{
667
+ }] }], propDecorators: { visible: [{
668
+ type: Input
669
+ }], items: [{
594
670
  type: Input
595
671
  }], itemTemplate: [{
596
672
  type: Input
@@ -620,6 +696,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
620
696
  args: [{ transform: numberAttribute }]
621
697
  }], focusedItemId: [{
622
698
  type: Input
699
+ }], activeItemPath: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeItemPath", required: false }] }], motionOptions: [{
700
+ type: Input
623
701
  }], tabindex: [{
624
702
  type: Input,
625
703
  args: [{ transform: numberAttribute }]
@@ -637,7 +715,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
637
715
  type: Output
638
716
  }], sublistViewChild: [{
639
717
  type: ViewChild,
640
- args: ['sublist', { static: true }]
718
+ args: ['sublist']
641
719
  }] } });
642
720
  /**
643
721
  * TieredMenu displays submenus in nested overlays.
@@ -695,11 +773,13 @@ class TieredMenu extends BaseComponent {
695
773
  /**
696
774
  * Transition options of the show animation.
697
775
  * @group Props
776
+ * @deprecated since v21.0.0, use `motionOptions` instead.
698
777
  */
699
778
  showTransitionOptions = '.12s cubic-bezier(0, 0, 0.2, 1)';
700
779
  /**
701
780
  * Transition options of the hide animation.
702
781
  * @group Props
782
+ * @deprecated since v21.0.0, use `motionOptions` instead.
703
783
  */
704
784
  hideTransitionOptions = '.1s linear';
705
785
  /**
@@ -732,7 +812,18 @@ class TieredMenu extends BaseComponent {
732
812
  * @defaultValue 'self'
733
813
  * @group Props
734
814
  */
735
- appendTo = input(undefined, ...(ngDevMode ? [{ debugName: "appendTo" }] : []));
815
+ appendTo = input(undefined, { ...(ngDevMode ? { debugName: "appendTo" } : {}) });
816
+ /**
817
+ * The motion options.
818
+ * @group Props
819
+ */
820
+ motionOptions = input(undefined, { ...(ngDevMode ? { debugName: "motionOptions" } : {}) });
821
+ computedMotionOptions = computed(() => {
822
+ return {
823
+ ...this.ptm('motion'),
824
+ ...this.motionOptions()
825
+ };
826
+ }, { ...(ngDevMode ? { debugName: "computedMotionOptions" } : {}) });
736
827
  /**
737
828
  * Callback to invoke when overlay menu is shown.
738
829
  * @group Emits
@@ -746,17 +837,20 @@ class TieredMenu extends BaseComponent {
746
837
  rootmenu;
747
838
  containerViewChild;
748
839
  /**
749
- * Template of the submenu icon.
840
+ * Custom submenu icon template.
750
841
  * @group Templates
751
842
  */
752
843
  submenuIconTemplate;
753
844
  /**
754
- * Template of the item.
845
+ * Custom item template.
846
+ * @param {TieredMenuItemTemplateContext} context - item context.
847
+ * @see {@link TieredMenuItemTemplateContext}
755
848
  * @group Templates
756
849
  */
757
850
  itemTemplate;
758
851
  templates;
759
- $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), ...(ngDevMode ? [{ debugName: "$appendTo" }] : []));
852
+ $appendTo = computed(() => this.appendTo() || this.config.overlayAppendTo(), { ...(ngDevMode ? { debugName: "$appendTo" } : {}) });
853
+ render = signal(false, { ...(ngDevMode ? { debugName: "render" } : {}) });
760
854
  container;
761
855
  outsideClickListener;
762
856
  resizeListener;
@@ -764,12 +858,11 @@ class TieredMenu extends BaseComponent {
764
858
  target;
765
859
  relatedTarget;
766
860
  visible;
767
- relativeAlign;
768
861
  dirty = false;
769
862
  focused = false;
770
- activeItemPath = signal([], ...(ngDevMode ? [{ debugName: "activeItemPath" }] : []));
771
- number = signal(0, ...(ngDevMode ? [{ debugName: "number" }] : []));
772
- focusedItemInfo = signal({ index: -1, level: 0, parentKey: '', item: null }, ...(ngDevMode ? [{ debugName: "focusedItemInfo" }] : []));
863
+ activeItemPath = signal([], { ...(ngDevMode ? { debugName: "activeItemPath" } : {}) });
864
+ number = signal(0, { ...(ngDevMode ? { debugName: "number" } : {}) });
865
+ focusedItemInfo = signal({ index: -1, level: 0, parentKey: '', item: null }, { ...(ngDevMode ? { debugName: "focusedItemInfo" } : {}) });
773
866
  searchValue = '';
774
867
  searchTimeout;
775
868
  _processedItems;
@@ -778,7 +871,7 @@ class TieredMenu extends BaseComponent {
778
871
  bindDirectiveInstance = inject(Bind, { self: true });
779
872
  matchMediaListener;
780
873
  query;
781
- queryMatches;
874
+ queryMatches = signal(false, { ...(ngDevMode ? { debugName: "queryMatches" } : {}) });
782
875
  _submenuIconTemplate;
783
876
  _itemTemplate;
784
877
  get visibleItems() {
@@ -837,9 +930,9 @@ class TieredMenu extends BaseComponent {
837
930
  if (!this.matchMediaListener) {
838
931
  const query = window.matchMedia(`(max-width: ${this.breakpoint})`);
839
932
  this.query = query;
840
- this.queryMatches = query.matches;
933
+ this.queryMatches.set(query.matches);
841
934
  this.matchMediaListener = () => {
842
- this.queryMatches = query.matches;
935
+ this.queryMatches.set(query.matches);
843
936
  };
844
937
  query.addEventListener('change', this.matchMediaListener);
845
938
  }
@@ -1092,7 +1185,7 @@ class TieredMenu extends BaseComponent {
1092
1185
  this.focusedItemInfo.set({ index, level, parentKey, item });
1093
1186
  grouped && (this.dirty = true);
1094
1187
  isFocus && focus(this.rootmenu?.sublistViewChild?.nativeElement);
1095
- if (type === 'hover' && this.queryMatches) {
1188
+ if (type === 'hover' && this.queryMatches()) {
1096
1189
  return;
1097
1190
  }
1098
1191
  this.activeItemPath.set(activeItemPath);
@@ -1109,58 +1202,60 @@ class TieredMenu extends BaseComponent {
1109
1202
  this.searchValue = '';
1110
1203
  this.dirty = false;
1111
1204
  }
1112
- onOverlayAnimationStart(event) {
1113
- switch (event.toState) {
1114
- case 'visible':
1115
- if (this.popup) {
1116
- this.container = event.element;
1117
- this.moveOnTop();
1118
- this.onShow.emit({});
1119
- addStyle(this.containerViewChild?.nativeElement, { position: 'absolute', top: 0 });
1120
- this.$attrSelector && this.container?.setAttribute(this.$attrSelector, '');
1121
- this.appendOverlay();
1122
- this.alignOverlay();
1123
- this.bindOutsideClickListener();
1124
- this.bindResizeListener();
1125
- this.bindScrollListener();
1126
- focus(this.rootmenu?.sublistViewChild?.nativeElement);
1127
- this.scrollInView();
1128
- }
1129
- break;
1130
- case 'void':
1131
- this.onOverlayHide();
1132
- this.onHide.emit({});
1133
- break;
1205
+ onOverlayBeforeEnter(event) {
1206
+ if (this.popup) {
1207
+ this.container = event.element;
1208
+ addStyle(this.container, { position: 'absolute' });
1209
+ this.moveOnTop();
1210
+ this.onShow.emit({});
1211
+ this.$attrSelector && this.container?.setAttribute(this.$attrSelector, '');
1212
+ this.appendOverlay();
1213
+ this.alignOverlay();
1134
1214
  }
1135
1215
  }
1136
- alignOverlay() {
1137
- if (this.relativeAlign)
1138
- relativePosition(this.container, this.target);
1139
- else
1140
- absolutePosition(this.container, this.target);
1141
- const targetWidth = getOuterWidth(this.target);
1142
- if (targetWidth > getOuterWidth(this.container)) {
1143
- this.container.style.minWidth = getOuterWidth(this.target) + 'px';
1216
+ onOverlayAfterEnter() {
1217
+ if (this.popup) {
1218
+ this.bindOutsideClickListener();
1219
+ this.bindResizeListener();
1220
+ this.bindScrollListener();
1221
+ this.scrollInView();
1144
1222
  }
1223
+ focus(this.rootmenu?.sublistViewChild?.nativeElement);
1145
1224
  }
1146
- onOverlayAnimationEnd(event) {
1147
- switch (event.toState) {
1148
- case 'void':
1149
- ZIndexUtils.clear(event.element);
1150
- break;
1225
+ onOverlayBeforeLeave() {
1226
+ this.restoreOverlayAppend();
1227
+ this.onOverlayHide();
1228
+ }
1229
+ onOverlayAfterLeave() {
1230
+ this.render.set(false);
1231
+ this.onHide.emit({});
1232
+ }
1233
+ relativeAlign = false;
1234
+ alignOverlay() {
1235
+ if (this.container && this.target) {
1236
+ if (this.relativeAlign)
1237
+ relativePosition(this.container, this.target);
1238
+ else
1239
+ absolutePosition(this.container, this.target);
1240
+ const targetWidth = getOuterWidth(this.target);
1241
+ if (targetWidth > getOuterWidth(this.container)) {
1242
+ this.container.style.minWidth = getOuterWidth(this.target) + 'px';
1243
+ }
1151
1244
  }
1152
1245
  }
1153
1246
  appendOverlay() {
1154
1247
  if (this.$appendTo() && this.$appendTo() !== 'self') {
1155
- if (this.$appendTo() === 'body')
1156
- this.renderer.appendChild(this.document.body, this.container);
1157
- else
1248
+ if (this.$appendTo() === 'body') {
1249
+ appendChild(this.document.body, this.container);
1250
+ }
1251
+ else {
1158
1252
  appendChild(this.$appendTo(), this.container);
1253
+ }
1159
1254
  }
1160
1255
  }
1161
1256
  restoreOverlayAppend() {
1162
1257
  if (this.container && this.$appendTo() !== 'self') {
1163
- this.renderer.appendChild(this.el.nativeElement, this.container);
1258
+ appendChild(this.el.nativeElement, this.container);
1164
1259
  }
1165
1260
  }
1166
1261
  moveOnTop() {
@@ -1202,6 +1297,7 @@ class TieredMenu extends BaseComponent {
1202
1297
  this.relatedTarget = event.relatedTarget || null;
1203
1298
  this.relativeAlign = event?.relativeAlign || null;
1204
1299
  }
1300
+ this.render.set(true);
1205
1301
  this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '' });
1206
1302
  isFocus && focus(this.rootmenu?.sublistViewChild?.nativeElement);
1207
1303
  this.cd.markForCheck();
@@ -1333,6 +1429,9 @@ class TieredMenu extends BaseComponent {
1333
1429
  if (!this.cd.destroyed) {
1334
1430
  this.target = null;
1335
1431
  }
1432
+ if (this.container && this.autoZIndex) {
1433
+ ZIndexUtils.clear(this.container);
1434
+ }
1336
1435
  }
1337
1436
  onDestroy() {
1338
1437
  if (this.popup) {
@@ -1340,111 +1439,119 @@ class TieredMenu extends BaseComponent {
1340
1439
  this.scrollHandler.destroy();
1341
1440
  this.scrollHandler = null;
1342
1441
  }
1343
- if (this.container && this.autoZIndex) {
1344
- ZIndexUtils.clear(this.container);
1345
- }
1346
1442
  this.restoreOverlayAppend();
1347
1443
  this.onOverlayHide();
1348
1444
  }
1349
1445
  this.unbindMatchMediaListener();
1350
1446
  }
1351
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenu, deps: [{ token: i5.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
1352
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: TieredMenu, isStandalone: true, selector: "p-tieredMenu, p-tieredmenu, p-tiered-menu", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: false, isRequired: false, transformFunction: null }, popup: { classPropertyName: "popup", publicName: "popup", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, breakpoint: { classPropertyName: "breakpoint", publicName: "breakpoint", isSignal: false, isRequired: false, transformFunction: null }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, autoDisplay: { classPropertyName: "autoDisplay", publicName: "autoDisplay", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onShow: "onShow", onHide: "onHide" }, providers: [TieredMenuStyle, { provide: TIEREDMENU_INSTANCE, useExisting: TieredMenu }, { provide: PARENT_INSTANCE, useExisting: TieredMenu }], queries: [{ propertyName: "submenuIconTemplate", first: true, predicate: ["submenuicon"] }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "rootmenu", first: true, predicate: ["rootmenu"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
1353
- <div
1354
- #container
1355
- [id]="id"
1356
- [class]="cn(cx('root'), styleClass)"
1357
- [ngStyle]="style"
1358
- [pBind]="ptm('root')"
1359
- (click)="onOverlayClick($event)"
1360
- [@overlayAnimation]="{
1361
- value: 'visible',
1362
- params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }
1363
- }"
1364
- [@.disabled]="popup !== true"
1365
- (@overlayAnimation.start)="onOverlayAnimationStart($event)"
1366
- (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
1367
- *ngIf="!popup || visible"
1368
- >
1369
- <p-tieredMenuSub
1370
- #rootmenu
1371
- [root]="true"
1372
- [items]="processedItems"
1373
- [itemTemplate]="itemTemplate || _itemTemplate"
1374
- [menuId]="id"
1375
- [tabindex]="!disabled ? tabindex : -1"
1376
- [ariaLabel]="ariaLabel"
1377
- [ariaLabelledBy]="ariaLabelledBy"
1378
- [baseZIndex]="baseZIndex"
1379
- [autoZIndex]="autoZIndex"
1380
- [autoDisplay]="autoDisplay"
1381
- [popup]="popup"
1382
- [focusedItemId]="focused ? focusedItemId : undefined"
1383
- [activeItemPath]="activeItemPath()"
1384
- (itemClick)="onItemClick($event)"
1385
- (menuFocus)="onMenuFocus($event)"
1386
- (menuBlur)="onMenuBlur($event)"
1387
- (menuKeydown)="onKeyDown($event)"
1388
- (itemMouseEnter)="onItemMouseEnter($event)"
1389
- [pt]="pt()"
1390
- ></p-tieredMenuSub>
1391
- </div>
1392
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TieredMenuSub, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: ["items", "itemTemplate", "root", "autoDisplay", "autoZIndex", "baseZIndex", "popup", "menuId", "ariaLabel", "ariaLabelledBy", "level", "focusedItemId", "activeItemPath", "tabindex", "inlineStyles"], outputs: ["itemClick", "itemMouseEnter", "menuFocus", "menuBlur", "menuKeydown"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }], animations: [trigger('overlayAnimation', [transition(':enter', [style$1({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style$1({ opacity: 0 }))])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1447
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenu, deps: [{ token: i6.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
1448
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.1", type: TieredMenu, isStandalone: true, selector: "p-tieredMenu, p-tieredmenu, p-tiered-menu", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: false, isRequired: false, transformFunction: null }, popup: { classPropertyName: "popup", publicName: "popup", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, breakpoint: { classPropertyName: "breakpoint", publicName: "breakpoint", isSignal: false, isRequired: false, transformFunction: null }, autoZIndex: { classPropertyName: "autoZIndex", publicName: "autoZIndex", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, baseZIndex: { classPropertyName: "baseZIndex", publicName: "baseZIndex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, autoDisplay: { classPropertyName: "autoDisplay", publicName: "autoDisplay", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, showTransitionOptions: { classPropertyName: "showTransitionOptions", publicName: "showTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, hideTransitionOptions: { classPropertyName: "hideTransitionOptions", publicName: "hideTransitionOptions", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onShow: "onShow", onHide: "onHide" }, providers: [TieredMenuStyle, { provide: TIEREDMENU_INSTANCE, useExisting: TieredMenu }, { provide: PARENT_INSTANCE, useExisting: TieredMenu }], queries: [{ propertyName: "submenuIconTemplate", first: true, predicate: ["submenuicon"] }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "rootmenu", first: true, predicate: ["rootmenu"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
1449
+ @if (render() || !popup) {
1450
+ <div
1451
+ #container
1452
+ [id]="id"
1453
+ [class]="cn(cx('root'), styleClass)"
1454
+ [ngStyle]="style"
1455
+ [pBind]="ptm('root')"
1456
+ (click)="onOverlayClick($event)"
1457
+ [pMotion]="visible || !popup"
1458
+ [pMotionName]="'p-anchored-overlay'"
1459
+ [pMotionAppear]="true"
1460
+ [pMotionDisabled]="!popup"
1461
+ [pMotionOptions]="computedMotionOptions()"
1462
+ (pMotionOnBeforeEnter)="onOverlayBeforeEnter($event)"
1463
+ (pMotionOnAfterEnter)="onOverlayAfterEnter()"
1464
+ (pMotionOnBeforeLeave)="onOverlayBeforeLeave()"
1465
+ (pMotionOnAfterLeave)="onOverlayAfterLeave()"
1466
+ >
1467
+ <p-tieredMenuSub
1468
+ #rootmenu
1469
+ [root]="true"
1470
+ [visible]="true"
1471
+ [items]="processedItems"
1472
+ [itemTemplate]="itemTemplate || _itemTemplate"
1473
+ [menuId]="id"
1474
+ [tabindex]="!disabled ? tabindex : -1"
1475
+ [ariaLabel]="ariaLabel"
1476
+ [ariaLabelledBy]="ariaLabelledBy"
1477
+ [baseZIndex]="baseZIndex"
1478
+ [autoZIndex]="autoZIndex"
1479
+ [autoDisplay]="autoDisplay"
1480
+ [popup]="popup"
1481
+ [focusedItemId]="focused ? focusedItemId : undefined"
1482
+ [activeItemPath]="activeItemPath()"
1483
+ (itemClick)="onItemClick($event)"
1484
+ (menuFocus)="onMenuFocus($event)"
1485
+ (menuBlur)="onMenuBlur($event)"
1486
+ (menuKeydown)="onKeyDown($event)"
1487
+ (itemMouseEnter)="onItemMouseEnter($event)"
1488
+ [pt]="pt()"
1489
+ [unstyled]="unstyled()"
1490
+ [motionOptions]="computedMotionOptions()"
1491
+ ></p-tieredMenuSub>
1492
+ </div>
1493
+ }
1494
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TieredMenuSub, selector: "p-tieredMenuSub, p-tieredmenusub", inputs: ["visible", "items", "itemTemplate", "root", "autoDisplay", "autoZIndex", "baseZIndex", "popup", "menuId", "ariaLabel", "ariaLabelledBy", "level", "focusedItemId", "activeItemPath", "motionOptions", "tabindex", "inlineStyles"], outputs: ["itemClick", "itemMouseEnter", "menuFocus", "menuBlur", "menuKeydown"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: BindModule }, { kind: "ngmodule", type: MotionModule }, { kind: "directive", type: i5.MotionDirective, selector: "[pMotion]", inputs: ["pMotion", "pMotionName", "pMotionType", "pMotionSafe", "pMotionDisabled", "pMotionAppear", "pMotionEnter", "pMotionLeave", "pMotionDuration", "pMotionHideStrategy", "pMotionEnterFromClass", "pMotionEnterToClass", "pMotionEnterActiveClass", "pMotionLeaveFromClass", "pMotionLeaveToClass", "pMotionLeaveActiveClass", "pMotionOptions"], outputs: ["pMotionOnBeforeEnter", "pMotionOnEnter", "pMotionOnAfterEnter", "pMotionOnEnterCancelled", "pMotionOnBeforeLeave", "pMotionOnLeave", "pMotionOnAfterLeave", "pMotionOnLeaveCancelled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1393
1495
  }
1394
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenu, decorators: [{
1496
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenu, decorators: [{
1395
1497
  type: Component,
1396
1498
  args: [{
1397
1499
  selector: 'p-tieredMenu, p-tieredmenu, p-tiered-menu',
1398
1500
  standalone: true,
1399
- imports: [CommonModule, TieredMenuSub, RouterModule, TooltipModule, SharedModule, BindModule],
1501
+ imports: [CommonModule, TieredMenuSub, RouterModule, TooltipModule, SharedModule, BindModule, MotionModule],
1400
1502
  template: `
1401
- <div
1402
- #container
1403
- [id]="id"
1404
- [class]="cn(cx('root'), styleClass)"
1405
- [ngStyle]="style"
1406
- [pBind]="ptm('root')"
1407
- (click)="onOverlayClick($event)"
1408
- [@overlayAnimation]="{
1409
- value: 'visible',
1410
- params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions }
1411
- }"
1412
- [@.disabled]="popup !== true"
1413
- (@overlayAnimation.start)="onOverlayAnimationStart($event)"
1414
- (@overlayAnimation.done)="onOverlayAnimationEnd($event)"
1415
- *ngIf="!popup || visible"
1416
- >
1417
- <p-tieredMenuSub
1418
- #rootmenu
1419
- [root]="true"
1420
- [items]="processedItems"
1421
- [itemTemplate]="itemTemplate || _itemTemplate"
1422
- [menuId]="id"
1423
- [tabindex]="!disabled ? tabindex : -1"
1424
- [ariaLabel]="ariaLabel"
1425
- [ariaLabelledBy]="ariaLabelledBy"
1426
- [baseZIndex]="baseZIndex"
1427
- [autoZIndex]="autoZIndex"
1428
- [autoDisplay]="autoDisplay"
1429
- [popup]="popup"
1430
- [focusedItemId]="focused ? focusedItemId : undefined"
1431
- [activeItemPath]="activeItemPath()"
1432
- (itemClick)="onItemClick($event)"
1433
- (menuFocus)="onMenuFocus($event)"
1434
- (menuBlur)="onMenuBlur($event)"
1435
- (menuKeydown)="onKeyDown($event)"
1436
- (itemMouseEnter)="onItemMouseEnter($event)"
1437
- [pt]="pt()"
1438
- ></p-tieredMenuSub>
1439
- </div>
1503
+ @if (render() || !popup) {
1504
+ <div
1505
+ #container
1506
+ [id]="id"
1507
+ [class]="cn(cx('root'), styleClass)"
1508
+ [ngStyle]="style"
1509
+ [pBind]="ptm('root')"
1510
+ (click)="onOverlayClick($event)"
1511
+ [pMotion]="visible || !popup"
1512
+ [pMotionName]="'p-anchored-overlay'"
1513
+ [pMotionAppear]="true"
1514
+ [pMotionDisabled]="!popup"
1515
+ [pMotionOptions]="computedMotionOptions()"
1516
+ (pMotionOnBeforeEnter)="onOverlayBeforeEnter($event)"
1517
+ (pMotionOnAfterEnter)="onOverlayAfterEnter()"
1518
+ (pMotionOnBeforeLeave)="onOverlayBeforeLeave()"
1519
+ (pMotionOnAfterLeave)="onOverlayAfterLeave()"
1520
+ >
1521
+ <p-tieredMenuSub
1522
+ #rootmenu
1523
+ [root]="true"
1524
+ [visible]="true"
1525
+ [items]="processedItems"
1526
+ [itemTemplate]="itemTemplate || _itemTemplate"
1527
+ [menuId]="id"
1528
+ [tabindex]="!disabled ? tabindex : -1"
1529
+ [ariaLabel]="ariaLabel"
1530
+ [ariaLabelledBy]="ariaLabelledBy"
1531
+ [baseZIndex]="baseZIndex"
1532
+ [autoZIndex]="autoZIndex"
1533
+ [autoDisplay]="autoDisplay"
1534
+ [popup]="popup"
1535
+ [focusedItemId]="focused ? focusedItemId : undefined"
1536
+ [activeItemPath]="activeItemPath()"
1537
+ (itemClick)="onItemClick($event)"
1538
+ (menuFocus)="onMenuFocus($event)"
1539
+ (menuBlur)="onMenuBlur($event)"
1540
+ (menuKeydown)="onKeyDown($event)"
1541
+ (itemMouseEnter)="onItemMouseEnter($event)"
1542
+ [pt]="pt()"
1543
+ [unstyled]="unstyled()"
1544
+ [motionOptions]="computedMotionOptions()"
1545
+ ></p-tieredMenuSub>
1546
+ </div>
1547
+ }
1440
1548
  `,
1441
- animations: [trigger('overlayAnimation', [transition(':enter', [style$1({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style$1({ opacity: 0 }))])])],
1442
1549
  changeDetection: ChangeDetectionStrategy.OnPush,
1443
1550
  encapsulation: ViewEncapsulation.None,
1444
1551
  providers: [TieredMenuStyle, { provide: TIEREDMENU_INSTANCE, useExisting: TieredMenu }, { provide: PARENT_INSTANCE, useExisting: TieredMenu }],
1445
1552
  hostDirectives: [Bind]
1446
1553
  }]
1447
- }], ctorParameters: () => [{ type: i5.OverlayService }], propDecorators: { model: [{
1554
+ }], ctorParameters: () => [{ type: i6.OverlayService }], propDecorators: { model: [{
1448
1555
  type: Input
1449
1556
  }], popup: [{
1450
1557
  type: Input,
@@ -1480,7 +1587,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1480
1587
  }], tabindex: [{
1481
1588
  type: Input,
1482
1589
  args: [{ transform: numberAttribute }]
1483
- }], onShow: [{
1590
+ }], appendTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendTo", required: false }] }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], onShow: [{
1484
1591
  type: Output
1485
1592
  }], onHide: [{
1486
1593
  type: Output
@@ -1501,11 +1608,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
1501
1608
  args: [PrimeTemplate]
1502
1609
  }] } });
1503
1610
  class TieredMenuModule {
1504
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1505
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuModule, imports: [TieredMenu, SharedModule], exports: [TieredMenu, SharedModule] });
1506
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuModule, imports: [TieredMenu, SharedModule, SharedModule] });
1611
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1612
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuModule, imports: [TieredMenu, SharedModule], exports: [TieredMenu, SharedModule] });
1613
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuModule, imports: [TieredMenu, SharedModule, SharedModule] });
1507
1614
  }
1508
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: TieredMenuModule, decorators: [{
1615
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: TieredMenuModule, decorators: [{
1509
1616
  type: NgModule,
1510
1617
  args: [{
1511
1618
  imports: [TieredMenu, SharedModule],