@ops-prime/primeng 0.0.0-stage → 21.1.10

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 (792) hide show
  1. package/LICENSE.md +77 -0
  2. package/README.md +10 -2
  3. package/fesm2022/primeng-accordion.mjs +634 -0
  4. package/fesm2022/primeng-accordion.mjs.map +1 -0
  5. package/fesm2022/primeng-animateonscroll.mjs +175 -0
  6. package/fesm2022/primeng-animateonscroll.mjs.map +1 -0
  7. package/fesm2022/primeng-api.mjs +841 -0
  8. package/fesm2022/primeng-api.mjs.map +1 -0
  9. package/fesm2022/primeng-autocomplete.mjs +2310 -0
  10. package/fesm2022/primeng-autocomplete.mjs.map +1 -0
  11. package/fesm2022/primeng-autofocus.mjs +83 -0
  12. package/fesm2022/primeng-autofocus.mjs.map +1 -0
  13. package/fesm2022/primeng-avatar.mjs +214 -0
  14. package/fesm2022/primeng-avatar.mjs.map +1 -0
  15. package/fesm2022/primeng-avatargroup.mjs +106 -0
  16. package/fesm2022/primeng-avatargroup.mjs.map +1 -0
  17. package/fesm2022/primeng-badge.mjs +417 -0
  18. package/fesm2022/primeng-badge.mjs.map +1 -0
  19. package/fesm2022/primeng-base.mjs +124 -0
  20. package/fesm2022/primeng-base.mjs.map +1 -0
  21. package/fesm2022/primeng-basecomponent.mjs +435 -0
  22. package/fesm2022/primeng-basecomponent.mjs.map +1 -0
  23. package/fesm2022/primeng-baseeditableholder.mjs +67 -0
  24. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -0
  25. package/fesm2022/primeng-baseinput.mjs +85 -0
  26. package/fesm2022/primeng-baseinput.mjs.map +1 -0
  27. package/fesm2022/primeng-basemodelholder.mjs +25 -0
  28. package/fesm2022/primeng-basemodelholder.mjs.map +1 -0
  29. package/fesm2022/primeng-bind.mjs +94 -0
  30. package/fesm2022/primeng-bind.mjs.map +1 -0
  31. package/fesm2022/primeng-blockui.mjs +265 -0
  32. package/fesm2022/primeng-blockui.mjs.map +1 -0
  33. package/fesm2022/primeng-breadcrumb.mjs +526 -0
  34. package/fesm2022/primeng-breadcrumb.mjs.map +1 -0
  35. package/fesm2022/primeng-button.mjs +1028 -0
  36. package/fesm2022/primeng-button.mjs.map +1 -0
  37. package/fesm2022/primeng-buttongroup.mjs +110 -0
  38. package/fesm2022/primeng-buttongroup.mjs.map +1 -0
  39. package/fesm2022/primeng-card.mjs +312 -0
  40. package/fesm2022/primeng-card.mjs.map +1 -0
  41. package/fesm2022/primeng-carousel.mjs +1205 -0
  42. package/fesm2022/primeng-carousel.mjs.map +1 -0
  43. package/fesm2022/primeng-cascadeselect.mjs +1822 -0
  44. package/fesm2022/primeng-cascadeselect.mjs.map +1 -0
  45. package/fesm2022/primeng-chart.mjs +270 -0
  46. package/fesm2022/primeng-chart.mjs.map +1 -0
  47. package/fesm2022/primeng-checkbox.mjs +467 -0
  48. package/fesm2022/primeng-checkbox.mjs.map +1 -0
  49. package/fesm2022/primeng-chip.mjs +378 -0
  50. package/fesm2022/primeng-chip.mjs.map +1 -0
  51. package/fesm2022/primeng-classnames.mjs +48 -0
  52. package/fesm2022/primeng-classnames.mjs.map +1 -0
  53. package/fesm2022/primeng-colorpicker.mjs +805 -0
  54. package/fesm2022/primeng-colorpicker.mjs.map +1 -0
  55. package/fesm2022/primeng-config.mjs +299 -0
  56. package/fesm2022/primeng-config.mjs.map +1 -0
  57. package/fesm2022/primeng-confirmdialog.mjs +858 -0
  58. package/fesm2022/primeng-confirmdialog.mjs.map +1 -0
  59. package/fesm2022/primeng-confirmpopup.mjs +701 -0
  60. package/fesm2022/primeng-confirmpopup.mjs.map +1 -0
  61. package/fesm2022/primeng-contextmenu.mjs +1572 -0
  62. package/fesm2022/primeng-contextmenu.mjs.map +1 -0
  63. package/fesm2022/primeng-dataview.mjs +832 -0
  64. package/fesm2022/primeng-dataview.mjs.map +1 -0
  65. package/fesm2022/primeng-datepicker.mjs +4439 -0
  66. package/fesm2022/primeng-datepicker.mjs.map +1 -0
  67. package/fesm2022/primeng-dialog.mjs +1413 -0
  68. package/fesm2022/primeng-dialog.mjs.map +1 -0
  69. package/fesm2022/primeng-divider.mjs +162 -0
  70. package/fesm2022/primeng-divider.mjs.map +1 -0
  71. package/fesm2022/primeng-dock.mjs +590 -0
  72. package/fesm2022/primeng-dock.mjs.map +1 -0
  73. package/fesm2022/primeng-dom.mjs +778 -0
  74. package/fesm2022/primeng-dom.mjs.map +1 -0
  75. package/fesm2022/primeng-dragdrop.mjs +336 -0
  76. package/fesm2022/primeng-dragdrop.mjs.map +1 -0
  77. package/fesm2022/primeng-drawer.mjs +776 -0
  78. package/fesm2022/primeng-drawer.mjs.map +1 -0
  79. package/fesm2022/primeng-dynamicdialog.mjs +1075 -0
  80. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -0
  81. package/fesm2022/primeng-editor.mjs +524 -0
  82. package/fesm2022/primeng-editor.mjs.map +1 -0
  83. package/fesm2022/primeng-fieldset.mjs +456 -0
  84. package/fesm2022/primeng-fieldset.mjs.map +1 -0
  85. package/fesm2022/primeng-fileupload.mjs +1577 -0
  86. package/fesm2022/primeng-fileupload.mjs.map +1 -0
  87. package/fesm2022/primeng-floatlabel.mjs +113 -0
  88. package/fesm2022/primeng-floatlabel.mjs.map +1 -0
  89. package/fesm2022/primeng-fluid.mjs +89 -0
  90. package/fesm2022/primeng-fluid.mjs.map +1 -0
  91. package/fesm2022/primeng-focustrap.mjs +108 -0
  92. package/fesm2022/primeng-focustrap.mjs.map +1 -0
  93. package/fesm2022/primeng-galleria.mjs +2135 -0
  94. package/fesm2022/primeng-galleria.mjs.map +1 -0
  95. package/fesm2022/primeng-iconfield.mjs +114 -0
  96. package/fesm2022/primeng-iconfield.mjs.map +1 -0
  97. package/fesm2022/primeng-icons-angledoubledown.mjs +37 -0
  98. package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -0
  99. package/fesm2022/primeng-icons-angledoubleleft.mjs +37 -0
  100. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -0
  101. package/fesm2022/primeng-icons-angledoubleright.mjs +37 -0
  102. package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -0
  103. package/fesm2022/primeng-icons-angledoubleup.mjs +37 -0
  104. package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -0
  105. package/fesm2022/primeng-icons-angledown.mjs +33 -0
  106. package/fesm2022/primeng-icons-angledown.mjs.map +1 -0
  107. package/fesm2022/primeng-icons-angleleft.mjs +33 -0
  108. package/fesm2022/primeng-icons-angleleft.mjs.map +1 -0
  109. package/fesm2022/primeng-icons-angleright.mjs +33 -0
  110. package/fesm2022/primeng-icons-angleright.mjs.map +1 -0
  111. package/fesm2022/primeng-icons-angleup.mjs +33 -0
  112. package/fesm2022/primeng-icons-angleup.mjs.map +1 -0
  113. package/fesm2022/primeng-icons-arrowdown.mjs +56 -0
  114. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -0
  115. package/fesm2022/primeng-icons-arrowdownleft.mjs +33 -0
  116. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -0
  117. package/fesm2022/primeng-icons-arrowdownright.mjs +33 -0
  118. package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -0
  119. package/fesm2022/primeng-icons-arrowleft.mjs +56 -0
  120. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -0
  121. package/fesm2022/primeng-icons-arrowright.mjs +37 -0
  122. package/fesm2022/primeng-icons-arrowright.mjs.map +1 -0
  123. package/fesm2022/primeng-icons-arrowup.mjs +56 -0
  124. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -0
  125. package/fesm2022/primeng-icons-ban.mjs +52 -0
  126. package/fesm2022/primeng-icons-ban.mjs.map +1 -0
  127. package/fesm2022/primeng-icons-bars.mjs +37 -0
  128. package/fesm2022/primeng-icons-bars.mjs.map +1 -0
  129. package/fesm2022/primeng-icons-baseicon.mjs +103 -0
  130. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -0
  131. package/fesm2022/primeng-icons-blank.mjs +23 -0
  132. package/fesm2022/primeng-icons-blank.mjs.map +1 -0
  133. package/fesm2022/primeng-icons-calendar.mjs +33 -0
  134. package/fesm2022/primeng-icons-calendar.mjs.map +1 -0
  135. package/fesm2022/primeng-icons-caretleft.mjs +33 -0
  136. package/fesm2022/primeng-icons-caretleft.mjs.map +1 -0
  137. package/fesm2022/primeng-icons-caretright.mjs +33 -0
  138. package/fesm2022/primeng-icons-caretright.mjs.map +1 -0
  139. package/fesm2022/primeng-icons-check.mjs +33 -0
  140. package/fesm2022/primeng-icons-check.mjs.map +1 -0
  141. package/fesm2022/primeng-icons-chevrondown.mjs +33 -0
  142. package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -0
  143. package/fesm2022/primeng-icons-chevronleft.mjs +33 -0
  144. package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -0
  145. package/fesm2022/primeng-icons-chevronright.mjs +33 -0
  146. package/fesm2022/primeng-icons-chevronright.mjs.map +1 -0
  147. package/fesm2022/primeng-icons-chevronup.mjs +33 -0
  148. package/fesm2022/primeng-icons-chevronup.mjs.map +1 -0
  149. package/fesm2022/primeng-icons-exclamationtriangle.mjs +68 -0
  150. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -0
  151. package/fesm2022/primeng-icons-eye.mjs +37 -0
  152. package/fesm2022/primeng-icons-eye.mjs.map +1 -0
  153. package/fesm2022/primeng-icons-eyeslash.mjs +56 -0
  154. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -0
  155. package/fesm2022/primeng-icons-filter.mjs +52 -0
  156. package/fesm2022/primeng-icons-filter.mjs.map +1 -0
  157. package/fesm2022/primeng-icons-filterfill.mjs +33 -0
  158. package/fesm2022/primeng-icons-filterfill.mjs.map +1 -0
  159. package/fesm2022/primeng-icons-filterslash.mjs +56 -0
  160. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -0
  161. package/fesm2022/primeng-icons-home.mjs +56 -0
  162. package/fesm2022/primeng-icons-home.mjs.map +1 -0
  163. package/fesm2022/primeng-icons-infocircle.mjs +56 -0
  164. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -0
  165. package/fesm2022/primeng-icons-minus.mjs +33 -0
  166. package/fesm2022/primeng-icons-minus.mjs.map +1 -0
  167. package/fesm2022/primeng-icons-pencil.mjs +52 -0
  168. package/fesm2022/primeng-icons-pencil.mjs.map +1 -0
  169. package/fesm2022/primeng-icons-plus.mjs +52 -0
  170. package/fesm2022/primeng-icons-plus.mjs.map +1 -0
  171. package/fesm2022/primeng-icons-refresh.mjs +56 -0
  172. package/fesm2022/primeng-icons-refresh.mjs.map +1 -0
  173. package/fesm2022/primeng-icons-search.mjs +56 -0
  174. package/fesm2022/primeng-icons-search.mjs.map +1 -0
  175. package/fesm2022/primeng-icons-searchminus.mjs +56 -0
  176. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -0
  177. package/fesm2022/primeng-icons-searchplus.mjs +56 -0
  178. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -0
  179. package/fesm2022/primeng-icons-sortalt.mjs +64 -0
  180. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -0
  181. package/fesm2022/primeng-icons-sortamountdown.mjs +52 -0
  182. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -0
  183. package/fesm2022/primeng-icons-sortamountupalt.mjs +52 -0
  184. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -0
  185. package/fesm2022/primeng-icons-spinner.mjs +52 -0
  186. package/fesm2022/primeng-icons-spinner.mjs.map +1 -0
  187. package/fesm2022/primeng-icons-star.mjs +52 -0
  188. package/fesm2022/primeng-icons-star.mjs.map +1 -0
  189. package/fesm2022/primeng-icons-starfill.mjs +52 -0
  190. package/fesm2022/primeng-icons-starfill.mjs.map +1 -0
  191. package/fesm2022/primeng-icons-thlarge.mjs +56 -0
  192. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -0
  193. package/fesm2022/primeng-icons-times.mjs +33 -0
  194. package/fesm2022/primeng-icons-times.mjs.map +1 -0
  195. package/fesm2022/primeng-icons-timescircle.mjs +56 -0
  196. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -0
  197. package/fesm2022/primeng-icons-trash.mjs +56 -0
  198. package/fesm2022/primeng-icons-trash.mjs.map +1 -0
  199. package/fesm2022/primeng-icons-undo.mjs +56 -0
  200. package/fesm2022/primeng-icons-undo.mjs.map +1 -0
  201. package/fesm2022/primeng-icons-upload.mjs +56 -0
  202. package/fesm2022/primeng-icons-upload.mjs.map +1 -0
  203. package/fesm2022/primeng-icons-windowmaximize.mjs +56 -0
  204. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -0
  205. package/fesm2022/primeng-icons-windowminimize.mjs +56 -0
  206. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -0
  207. package/fesm2022/primeng-icons.mjs +63 -0
  208. package/fesm2022/primeng-icons.mjs.map +1 -0
  209. package/fesm2022/primeng-iftalabel.mjs +100 -0
  210. package/fesm2022/primeng-iftalabel.mjs.map +1 -0
  211. package/fesm2022/primeng-image.mjs +802 -0
  212. package/fesm2022/primeng-image.mjs.map +1 -0
  213. package/fesm2022/primeng-imagecompare.mjs +200 -0
  214. package/fesm2022/primeng-imagecompare.mjs.map +1 -0
  215. package/fesm2022/primeng-inplace.mjs +330 -0
  216. package/fesm2022/primeng-inplace.mjs.map +1 -0
  217. package/fesm2022/primeng-inputgroup.mjs +136 -0
  218. package/fesm2022/primeng-inputgroup.mjs.map +1 -0
  219. package/fesm2022/primeng-inputgroupaddon.mjs +90 -0
  220. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -0
  221. package/fesm2022/primeng-inputicon.mjs +84 -0
  222. package/fesm2022/primeng-inputicon.mjs.map +1 -0
  223. package/fesm2022/primeng-inputmask.mjs +1509 -0
  224. package/fesm2022/primeng-inputmask.mjs.map +1 -0
  225. package/fesm2022/primeng-inputnumber.mjs +1675 -0
  226. package/fesm2022/primeng-inputnumber.mjs.map +1 -0
  227. package/fesm2022/primeng-inputotp.mjs +464 -0
  228. package/fesm2022/primeng-inputotp.mjs.map +1 -0
  229. package/fesm2022/primeng-inputtext.mjs +196 -0
  230. package/fesm2022/primeng-inputtext.mjs.map +1 -0
  231. package/fesm2022/primeng-keyfilter.mjs +276 -0
  232. package/fesm2022/primeng-keyfilter.mjs.map +1 -0
  233. package/fesm2022/primeng-knob.mjs +500 -0
  234. package/fesm2022/primeng-knob.mjs.map +1 -0
  235. package/fesm2022/primeng-listbox.mjs +2125 -0
  236. package/fesm2022/primeng-listbox.mjs.map +1 -0
  237. package/fesm2022/primeng-megamenu.mjs +1598 -0
  238. package/fesm2022/primeng-megamenu.mjs.map +1 -0
  239. package/fesm2022/primeng-menu.mjs +1150 -0
  240. package/fesm2022/primeng-menu.mjs.map +1 -0
  241. package/fesm2022/primeng-menubar.mjs +1538 -0
  242. package/fesm2022/primeng-menubar.mjs.map +1 -0
  243. package/fesm2022/primeng-message.mjs +408 -0
  244. package/fesm2022/primeng-message.mjs.map +1 -0
  245. package/fesm2022/primeng-metergroup.mjs +496 -0
  246. package/fesm2022/primeng-metergroup.mjs.map +1 -0
  247. package/fesm2022/primeng-motion.mjs +700 -0
  248. package/fesm2022/primeng-motion.mjs.map +1 -0
  249. package/fesm2022/primeng-multiselect.mjs +2690 -0
  250. package/fesm2022/primeng-multiselect.mjs.map +1 -0
  251. package/fesm2022/primeng-orderlist.mjs +1086 -0
  252. package/fesm2022/primeng-orderlist.mjs.map +1 -0
  253. package/fesm2022/primeng-organizationchart.mjs +545 -0
  254. package/fesm2022/primeng-organizationchart.mjs.map +1 -0
  255. package/fesm2022/primeng-overlay.mjs +879 -0
  256. package/fesm2022/primeng-overlay.mjs.map +1 -0
  257. package/fesm2022/primeng-overlaybadge.mjs +161 -0
  258. package/fesm2022/primeng-overlaybadge.mjs.map +1 -0
  259. package/fesm2022/primeng-paginator.mjs +823 -0
  260. package/fesm2022/primeng-paginator.mjs.map +1 -0
  261. package/fesm2022/primeng-panel.mjs +568 -0
  262. package/fesm2022/primeng-panel.mjs.map +1 -0
  263. package/fesm2022/primeng-panelmenu.mjs +1619 -0
  264. package/fesm2022/primeng-panelmenu.mjs.map +1 -0
  265. package/fesm2022/primeng-passthrough.mjs +21 -0
  266. package/fesm2022/primeng-passthrough.mjs.map +1 -0
  267. package/fesm2022/primeng-password.mjs +1175 -0
  268. package/fesm2022/primeng-password.mjs.map +1 -0
  269. package/fesm2022/primeng-picklist.mjs +2235 -0
  270. package/fesm2022/primeng-picklist.mjs.map +1 -0
  271. package/fesm2022/primeng-popover.mjs +528 -0
  272. package/fesm2022/primeng-popover.mjs.map +1 -0
  273. package/fesm2022/primeng-progressbar.mjs +216 -0
  274. package/fesm2022/primeng-progressbar.mjs.map +1 -0
  275. package/fesm2022/primeng-progressspinner.mjs +148 -0
  276. package/fesm2022/primeng-progressspinner.mjs.map +1 -0
  277. package/fesm2022/primeng-radiobutton.mjs +380 -0
  278. package/fesm2022/primeng-radiobutton.mjs.map +1 -0
  279. package/fesm2022/primeng-rating.mjs +410 -0
  280. package/fesm2022/primeng-rating.mjs.map +1 -0
  281. package/fesm2022/primeng-ripple.mjs +196 -0
  282. package/fesm2022/primeng-ripple.mjs.map +1 -0
  283. package/fesm2022/primeng-scroller.mjs +1327 -0
  284. package/fesm2022/primeng-scroller.mjs.map +1 -0
  285. package/fesm2022/primeng-scrollpanel.mjs +572 -0
  286. package/fesm2022/primeng-scrollpanel.mjs.map +1 -0
  287. package/fesm2022/primeng-scrolltop.mjs +347 -0
  288. package/fesm2022/primeng-scrolltop.mjs.map +1 -0
  289. package/fesm2022/primeng-select.mjs +2399 -0
  290. package/fesm2022/primeng-select.mjs.map +1 -0
  291. package/fesm2022/primeng-selectbutton.mjs +435 -0
  292. package/fesm2022/primeng-selectbutton.mjs.map +1 -0
  293. package/fesm2022/primeng-skeleton.mjs +170 -0
  294. package/fesm2022/primeng-skeleton.mjs.map +1 -0
  295. package/fesm2022/primeng-slider.mjs +889 -0
  296. package/fesm2022/primeng-slider.mjs.map +1 -0
  297. package/fesm2022/primeng-speeddial.mjs +937 -0
  298. package/fesm2022/primeng-speeddial.mjs.map +1 -0
  299. package/fesm2022/primeng-splitbutton.mjs +640 -0
  300. package/fesm2022/primeng-splitbutton.mjs.map +1 -0
  301. package/fesm2022/primeng-splitter.mjs +601 -0
  302. package/fesm2022/primeng-splitter.mjs.map +1 -0
  303. package/fesm2022/primeng-stepper.mjs +745 -0
  304. package/fesm2022/primeng-stepper.mjs.map +1 -0
  305. package/fesm2022/primeng-steps.mjs +425 -0
  306. package/fesm2022/primeng-steps.mjs.map +1 -0
  307. package/fesm2022/primeng-styleclass.mjs +354 -0
  308. package/fesm2022/primeng-styleclass.mjs.map +1 -0
  309. package/fesm2022/primeng-table.mjs +7805 -0
  310. package/fesm2022/primeng-table.mjs.map +1 -0
  311. package/fesm2022/primeng-tabs.mjs +911 -0
  312. package/fesm2022/primeng-tabs.mjs.map +1 -0
  313. package/fesm2022/primeng-tag.mjs +198 -0
  314. package/fesm2022/primeng-tag.mjs.map +1 -0
  315. package/fesm2022/primeng-terminal.mjs +260 -0
  316. package/fesm2022/primeng-terminal.mjs.map +1 -0
  317. package/fesm2022/primeng-textarea.mjs +225 -0
  318. package/fesm2022/primeng-textarea.mjs.map +1 -0
  319. package/fesm2022/primeng-tieredmenu.mjs +1625 -0
  320. package/fesm2022/primeng-tieredmenu.mjs.map +1 -0
  321. package/fesm2022/primeng-timeline.mjs +250 -0
  322. package/fesm2022/primeng-timeline.mjs.map +1 -0
  323. package/fesm2022/primeng-toast.mjs +784 -0
  324. package/fesm2022/primeng-toast.mjs.map +1 -0
  325. package/fesm2022/primeng-togglebutton.mjs +393 -0
  326. package/fesm2022/primeng-togglebutton.mjs.map +1 -0
  327. package/fesm2022/primeng-toggleswitch.mjs +346 -0
  328. package/fesm2022/primeng-toggleswitch.mjs.map +1 -0
  329. package/fesm2022/primeng-toolbar.mjs +198 -0
  330. package/fesm2022/primeng-toolbar.mjs.map +1 -0
  331. package/fesm2022/primeng-tooltip.mjs +842 -0
  332. package/fesm2022/primeng-tooltip.mjs.map +1 -0
  333. package/fesm2022/primeng-tree.mjs +2282 -0
  334. package/fesm2022/primeng-tree.mjs.map +1 -0
  335. package/fesm2022/primeng-treeselect.mjs +1408 -0
  336. package/fesm2022/primeng-treeselect.mjs.map +1 -0
  337. package/fesm2022/primeng-treetable.mjs +5164 -0
  338. package/fesm2022/primeng-treetable.mjs.map +1 -0
  339. package/fesm2022/primeng-ts-helpers.mjs +4 -0
  340. package/fesm2022/primeng-ts-helpers.mjs.map +1 -0
  341. package/fesm2022/primeng-types-accordion.mjs +4 -0
  342. package/fesm2022/primeng-types-accordion.mjs.map +1 -0
  343. package/fesm2022/primeng-types-autocomplete.mjs +4 -0
  344. package/fesm2022/primeng-types-autocomplete.mjs.map +1 -0
  345. package/fesm2022/primeng-types-avatar.mjs +4 -0
  346. package/fesm2022/primeng-types-avatar.mjs.map +1 -0
  347. package/fesm2022/primeng-types-avatargroup.mjs +4 -0
  348. package/fesm2022/primeng-types-avatargroup.mjs.map +1 -0
  349. package/fesm2022/primeng-types-badge.mjs +4 -0
  350. package/fesm2022/primeng-types-badge.mjs.map +1 -0
  351. package/fesm2022/primeng-types-blockui.mjs +4 -0
  352. package/fesm2022/primeng-types-blockui.mjs.map +1 -0
  353. package/fesm2022/primeng-types-breadcrumb.mjs +4 -0
  354. package/fesm2022/primeng-types-breadcrumb.mjs.map +1 -0
  355. package/fesm2022/primeng-types-button.mjs +4 -0
  356. package/fesm2022/primeng-types-button.mjs.map +1 -0
  357. package/fesm2022/primeng-types-card.mjs +4 -0
  358. package/fesm2022/primeng-types-card.mjs.map +1 -0
  359. package/fesm2022/primeng-types-carousel.mjs +4 -0
  360. package/fesm2022/primeng-types-carousel.mjs.map +1 -0
  361. package/fesm2022/primeng-types-cascadeselect.mjs +4 -0
  362. package/fesm2022/primeng-types-cascadeselect.mjs.map +1 -0
  363. package/fesm2022/primeng-types-chart.mjs +4 -0
  364. package/fesm2022/primeng-types-chart.mjs.map +1 -0
  365. package/fesm2022/primeng-types-checkbox.mjs +4 -0
  366. package/fesm2022/primeng-types-checkbox.mjs.map +1 -0
  367. package/fesm2022/primeng-types-chip.mjs +4 -0
  368. package/fesm2022/primeng-types-chip.mjs.map +1 -0
  369. package/fesm2022/primeng-types-colorpicker.mjs +4 -0
  370. package/fesm2022/primeng-types-colorpicker.mjs.map +1 -0
  371. package/fesm2022/primeng-types-confirmdialog.mjs +4 -0
  372. package/fesm2022/primeng-types-confirmdialog.mjs.map +1 -0
  373. package/fesm2022/primeng-types-confirmpopup.mjs +4 -0
  374. package/fesm2022/primeng-types-confirmpopup.mjs.map +1 -0
  375. package/fesm2022/primeng-types-contextmenu.mjs +4 -0
  376. package/fesm2022/primeng-types-contextmenu.mjs.map +1 -0
  377. package/fesm2022/primeng-types-dataview.mjs +4 -0
  378. package/fesm2022/primeng-types-dataview.mjs.map +1 -0
  379. package/fesm2022/primeng-types-datepicker.mjs +4 -0
  380. package/fesm2022/primeng-types-datepicker.mjs.map +1 -0
  381. package/fesm2022/primeng-types-dialog.mjs +4 -0
  382. package/fesm2022/primeng-types-dialog.mjs.map +1 -0
  383. package/fesm2022/primeng-types-divider.mjs +4 -0
  384. package/fesm2022/primeng-types-divider.mjs.map +1 -0
  385. package/fesm2022/primeng-types-dock.mjs +4 -0
  386. package/fesm2022/primeng-types-dock.mjs.map +1 -0
  387. package/fesm2022/primeng-types-drawer.mjs +4 -0
  388. package/fesm2022/primeng-types-drawer.mjs.map +1 -0
  389. package/fesm2022/primeng-types-editor.mjs +4 -0
  390. package/fesm2022/primeng-types-editor.mjs.map +1 -0
  391. package/fesm2022/primeng-types-fieldset.mjs +4 -0
  392. package/fesm2022/primeng-types-fieldset.mjs.map +1 -0
  393. package/fesm2022/primeng-types-fileupload.mjs +4 -0
  394. package/fesm2022/primeng-types-fileupload.mjs.map +1 -0
  395. package/fesm2022/primeng-types-floatlabel.mjs +4 -0
  396. package/fesm2022/primeng-types-floatlabel.mjs.map +1 -0
  397. package/fesm2022/primeng-types-fluid.mjs +4 -0
  398. package/fesm2022/primeng-types-fluid.mjs.map +1 -0
  399. package/fesm2022/primeng-types-galleria.mjs +4 -0
  400. package/fesm2022/primeng-types-galleria.mjs.map +1 -0
  401. package/fesm2022/primeng-types-iconfield.mjs +4 -0
  402. package/fesm2022/primeng-types-iconfield.mjs.map +1 -0
  403. package/fesm2022/primeng-types-iftalabel.mjs +4 -0
  404. package/fesm2022/primeng-types-iftalabel.mjs.map +1 -0
  405. package/fesm2022/primeng-types-image.mjs +4 -0
  406. package/fesm2022/primeng-types-image.mjs.map +1 -0
  407. package/fesm2022/primeng-types-imagecompare.mjs +4 -0
  408. package/fesm2022/primeng-types-imagecompare.mjs.map +1 -0
  409. package/fesm2022/primeng-types-inplace.mjs +4 -0
  410. package/fesm2022/primeng-types-inplace.mjs.map +1 -0
  411. package/fesm2022/primeng-types-inputgroup.mjs +4 -0
  412. package/fesm2022/primeng-types-inputgroup.mjs.map +1 -0
  413. package/fesm2022/primeng-types-inputgroupaddon.mjs +4 -0
  414. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +1 -0
  415. package/fesm2022/primeng-types-inputicon.mjs +4 -0
  416. package/fesm2022/primeng-types-inputicon.mjs.map +1 -0
  417. package/fesm2022/primeng-types-inputmask.mjs +4 -0
  418. package/fesm2022/primeng-types-inputmask.mjs.map +1 -0
  419. package/fesm2022/primeng-types-inputnumber.mjs +4 -0
  420. package/fesm2022/primeng-types-inputnumber.mjs.map +1 -0
  421. package/fesm2022/primeng-types-inputotp.mjs +4 -0
  422. package/fesm2022/primeng-types-inputotp.mjs.map +1 -0
  423. package/fesm2022/primeng-types-inputtext.mjs +4 -0
  424. package/fesm2022/primeng-types-inputtext.mjs.map +1 -0
  425. package/fesm2022/primeng-types-knob.mjs +4 -0
  426. package/fesm2022/primeng-types-knob.mjs.map +1 -0
  427. package/fesm2022/primeng-types-listbox.mjs +4 -0
  428. package/fesm2022/primeng-types-listbox.mjs.map +1 -0
  429. package/fesm2022/primeng-types-megamenu.mjs +4 -0
  430. package/fesm2022/primeng-types-megamenu.mjs.map +1 -0
  431. package/fesm2022/primeng-types-menu.mjs +4 -0
  432. package/fesm2022/primeng-types-menu.mjs.map +1 -0
  433. package/fesm2022/primeng-types-menubar.mjs +4 -0
  434. package/fesm2022/primeng-types-menubar.mjs.map +1 -0
  435. package/fesm2022/primeng-types-message.mjs +4 -0
  436. package/fesm2022/primeng-types-message.mjs.map +1 -0
  437. package/fesm2022/primeng-types-metergroup.mjs +4 -0
  438. package/fesm2022/primeng-types-metergroup.mjs.map +1 -0
  439. package/fesm2022/primeng-types-motion.mjs +4 -0
  440. package/fesm2022/primeng-types-motion.mjs.map +1 -0
  441. package/fesm2022/primeng-types-multiselect.mjs +4 -0
  442. package/fesm2022/primeng-types-multiselect.mjs.map +1 -0
  443. package/fesm2022/primeng-types-orderlist.mjs +4 -0
  444. package/fesm2022/primeng-types-orderlist.mjs.map +1 -0
  445. package/fesm2022/primeng-types-organizationchart.mjs +4 -0
  446. package/fesm2022/primeng-types-organizationchart.mjs.map +1 -0
  447. package/fesm2022/primeng-types-overlay.mjs +4 -0
  448. package/fesm2022/primeng-types-overlay.mjs.map +1 -0
  449. package/fesm2022/primeng-types-overlaybadge.mjs +4 -0
  450. package/fesm2022/primeng-types-overlaybadge.mjs.map +1 -0
  451. package/fesm2022/primeng-types-paginator.mjs +4 -0
  452. package/fesm2022/primeng-types-paginator.mjs.map +1 -0
  453. package/fesm2022/primeng-types-panel.mjs +4 -0
  454. package/fesm2022/primeng-types-panel.mjs.map +1 -0
  455. package/fesm2022/primeng-types-panelmenu.mjs +4 -0
  456. package/fesm2022/primeng-types-panelmenu.mjs.map +1 -0
  457. package/fesm2022/primeng-types-password.mjs +4 -0
  458. package/fesm2022/primeng-types-password.mjs.map +1 -0
  459. package/fesm2022/primeng-types-picklist.mjs +4 -0
  460. package/fesm2022/primeng-types-picklist.mjs.map +1 -0
  461. package/fesm2022/primeng-types-popover.mjs +4 -0
  462. package/fesm2022/primeng-types-popover.mjs.map +1 -0
  463. package/fesm2022/primeng-types-progressbar.mjs +4 -0
  464. package/fesm2022/primeng-types-progressbar.mjs.map +1 -0
  465. package/fesm2022/primeng-types-progressspinner.mjs +4 -0
  466. package/fesm2022/primeng-types-progressspinner.mjs.map +1 -0
  467. package/fesm2022/primeng-types-radiobutton.mjs +4 -0
  468. package/fesm2022/primeng-types-radiobutton.mjs.map +1 -0
  469. package/fesm2022/primeng-types-rating.mjs +4 -0
  470. package/fesm2022/primeng-types-rating.mjs.map +1 -0
  471. package/fesm2022/primeng-types-scroller.mjs +4 -0
  472. package/fesm2022/primeng-types-scroller.mjs.map +1 -0
  473. package/fesm2022/primeng-types-scrollpanel.mjs +4 -0
  474. package/fesm2022/primeng-types-scrollpanel.mjs.map +1 -0
  475. package/fesm2022/primeng-types-scrolltop.mjs +4 -0
  476. package/fesm2022/primeng-types-scrolltop.mjs.map +1 -0
  477. package/fesm2022/primeng-types-select.mjs +4 -0
  478. package/fesm2022/primeng-types-select.mjs.map +1 -0
  479. package/fesm2022/primeng-types-selectbutton.mjs +4 -0
  480. package/fesm2022/primeng-types-selectbutton.mjs.map +1 -0
  481. package/fesm2022/primeng-types-skeleton.mjs +4 -0
  482. package/fesm2022/primeng-types-skeleton.mjs.map +1 -0
  483. package/fesm2022/primeng-types-slider.mjs +4 -0
  484. package/fesm2022/primeng-types-slider.mjs.map +1 -0
  485. package/fesm2022/primeng-types-speeddial.mjs +4 -0
  486. package/fesm2022/primeng-types-speeddial.mjs.map +1 -0
  487. package/fesm2022/primeng-types-splitbutton.mjs +4 -0
  488. package/fesm2022/primeng-types-splitbutton.mjs.map +1 -0
  489. package/fesm2022/primeng-types-splitter.mjs +4 -0
  490. package/fesm2022/primeng-types-splitter.mjs.map +1 -0
  491. package/fesm2022/primeng-types-stepper.mjs +4 -0
  492. package/fesm2022/primeng-types-stepper.mjs.map +1 -0
  493. package/fesm2022/primeng-types-table.mjs +4 -0
  494. package/fesm2022/primeng-types-table.mjs.map +1 -0
  495. package/fesm2022/primeng-types-tabs.mjs +4 -0
  496. package/fesm2022/primeng-types-tabs.mjs.map +1 -0
  497. package/fesm2022/primeng-types-tag.mjs +4 -0
  498. package/fesm2022/primeng-types-tag.mjs.map +1 -0
  499. package/fesm2022/primeng-types-terminal.mjs +4 -0
  500. package/fesm2022/primeng-types-terminal.mjs.map +1 -0
  501. package/fesm2022/primeng-types-textarea.mjs +4 -0
  502. package/fesm2022/primeng-types-textarea.mjs.map +1 -0
  503. package/fesm2022/primeng-types-tieredmenu.mjs +4 -0
  504. package/fesm2022/primeng-types-tieredmenu.mjs.map +1 -0
  505. package/fesm2022/primeng-types-timeline.mjs +4 -0
  506. package/fesm2022/primeng-types-timeline.mjs.map +1 -0
  507. package/fesm2022/primeng-types-toast.mjs +4 -0
  508. package/fesm2022/primeng-types-toast.mjs.map +1 -0
  509. package/fesm2022/primeng-types-togglebutton.mjs +4 -0
  510. package/fesm2022/primeng-types-togglebutton.mjs.map +1 -0
  511. package/fesm2022/primeng-types-toggleswitch.mjs +4 -0
  512. package/fesm2022/primeng-types-toggleswitch.mjs.map +1 -0
  513. package/fesm2022/primeng-types-toolbar.mjs +4 -0
  514. package/fesm2022/primeng-types-toolbar.mjs.map +1 -0
  515. package/fesm2022/primeng-types-tooltip.mjs +4 -0
  516. package/fesm2022/primeng-types-tooltip.mjs.map +1 -0
  517. package/fesm2022/primeng-types-tree.mjs +4 -0
  518. package/fesm2022/primeng-types-tree.mjs.map +1 -0
  519. package/fesm2022/primeng-types-treeselect.mjs +4 -0
  520. package/fesm2022/primeng-types-treeselect.mjs.map +1 -0
  521. package/fesm2022/primeng-types-treetable.mjs +4 -0
  522. package/fesm2022/primeng-types-treetable.mjs.map +1 -0
  523. package/fesm2022/primeng-usestyle.mjs +54 -0
  524. package/fesm2022/primeng-usestyle.mjs.map +1 -0
  525. package/fesm2022/primeng-utils.mjs +332 -0
  526. package/fesm2022/primeng-utils.mjs.map +1 -0
  527. package/fesm2022/primeng.mjs +6 -0
  528. package/fesm2022/primeng.mjs.map +1 -0
  529. package/package.json +1103 -4
  530. package/types/primeng-accordion.d.ts +289 -0
  531. package/types/primeng-animateonscroll.d.ts +70 -0
  532. package/types/primeng-api.d.ts +1976 -0
  533. package/types/primeng-autocomplete.d.ts +793 -0
  534. package/types/primeng-autofocus.d.ts +31 -0
  535. package/types/primeng-avatar.d.ts +140 -0
  536. package/types/primeng-avatargroup.d.ts +66 -0
  537. package/types/primeng-badge.d.ts +184 -0
  538. package/types/primeng-base.d.ts +58 -0
  539. package/types/primeng-basecomponent.d.ts +175 -0
  540. package/types/primeng-baseeditableholder.d.ts +45 -0
  541. package/types/primeng-baseinput.d.ts +73 -0
  542. package/types/primeng-basemodelholder.d.ts +12 -0
  543. package/types/primeng-bind.d.ts +38 -0
  544. package/types/primeng-blockui.d.ts +111 -0
  545. package/types/primeng-breadcrumb.d.ts +149 -0
  546. package/types/primeng-button.d.ts +491 -0
  547. package/types/primeng-buttongroup.d.ts +44 -0
  548. package/types/primeng-card.d.ts +157 -0
  549. package/types/primeng-carousel.d.ts +388 -0
  550. package/types/primeng-cascadeselect.d.ts +628 -0
  551. package/types/primeng-chart.d.ts +135 -0
  552. package/types/primeng-checkbox.d.ts +231 -0
  553. package/types/primeng-chip.d.ts +167 -0
  554. package/types/primeng-classnames.d.ts +32 -0
  555. package/types/primeng-colorpicker.d.ts +317 -0
  556. package/types/primeng-config.d.ts +268 -0
  557. package/types/primeng-confirmdialog.d.ts +360 -0
  558. package/types/primeng-confirmpopup.d.ts +236 -0
  559. package/types/primeng-contextmenu.d.ts +381 -0
  560. package/types/primeng-dataview.d.ts +379 -0
  561. package/types/primeng-datepicker.d.ts +1017 -0
  562. package/types/primeng-dialog.d.ts +555 -0
  563. package/types/primeng-divider.d.ts +122 -0
  564. package/types/primeng-dock.d.ts +195 -0
  565. package/types/primeng-dom.d.ts +109 -0
  566. package/types/primeng-dragdrop.d.ts +121 -0
  567. package/types/primeng-drawer.d.ts +303 -0
  568. package/types/primeng-dynamicdialog.d.ts +554 -0
  569. package/types/primeng-editor.d.ts +191 -0
  570. package/types/primeng-fieldset.d.ts +199 -0
  571. package/types/primeng-fileupload.d.ts +562 -0
  572. package/types/primeng-floatlabel.d.ts +67 -0
  573. package/types/primeng-fluid.d.ts +54 -0
  574. package/types/primeng-focustrap.d.ts +36 -0
  575. package/types/primeng-galleria.d.ts +694 -0
  576. package/types/primeng-iconfield.d.ts +73 -0
  577. package/types/primeng-icons-angledoubledown.d.ts +9 -0
  578. package/types/primeng-icons-angledoubleleft.d.ts +9 -0
  579. package/types/primeng-icons-angledoubleright.d.ts +9 -0
  580. package/types/primeng-icons-angledoubleup.d.ts +9 -0
  581. package/types/primeng-icons-angledown.d.ts +9 -0
  582. package/types/primeng-icons-angleleft.d.ts +9 -0
  583. package/types/primeng-icons-angleright.d.ts +9 -0
  584. package/types/primeng-icons-angleup.d.ts +9 -0
  585. package/types/primeng-icons-arrowdown.d.ts +11 -0
  586. package/types/primeng-icons-arrowdownleft.d.ts +9 -0
  587. package/types/primeng-icons-arrowdownright.d.ts +9 -0
  588. package/types/primeng-icons-arrowleft.d.ts +11 -0
  589. package/types/primeng-icons-arrowright.d.ts +9 -0
  590. package/types/primeng-icons-arrowup.d.ts +11 -0
  591. package/types/primeng-icons-ban.d.ts +11 -0
  592. package/types/primeng-icons-bars.d.ts +9 -0
  593. package/types/primeng-icons-baseicon.d.ts +33 -0
  594. package/types/primeng-icons-blank.d.ts +9 -0
  595. package/types/primeng-icons-calendar.d.ts +9 -0
  596. package/types/primeng-icons-caretleft.d.ts +9 -0
  597. package/types/primeng-icons-caretright.d.ts +9 -0
  598. package/types/primeng-icons-check.d.ts +9 -0
  599. package/types/primeng-icons-chevrondown.d.ts +9 -0
  600. package/types/primeng-icons-chevronleft.d.ts +9 -0
  601. package/types/primeng-icons-chevronright.d.ts +9 -0
  602. package/types/primeng-icons-chevronup.d.ts +9 -0
  603. package/types/primeng-icons-exclamationtriangle.d.ts +11 -0
  604. package/types/primeng-icons-eye.d.ts +9 -0
  605. package/types/primeng-icons-eyeslash.d.ts +11 -0
  606. package/types/primeng-icons-filter.d.ts +11 -0
  607. package/types/primeng-icons-filterfill.d.ts +9 -0
  608. package/types/primeng-icons-filterslash.d.ts +11 -0
  609. package/types/primeng-icons-home.d.ts +11 -0
  610. package/types/primeng-icons-infocircle.d.ts +11 -0
  611. package/types/primeng-icons-minus.d.ts +9 -0
  612. package/types/primeng-icons-pencil.d.ts +11 -0
  613. package/types/primeng-icons-plus.d.ts +11 -0
  614. package/types/primeng-icons-refresh.d.ts +11 -0
  615. package/types/primeng-icons-search.d.ts +11 -0
  616. package/types/primeng-icons-searchminus.d.ts +11 -0
  617. package/types/primeng-icons-searchplus.d.ts +11 -0
  618. package/types/primeng-icons-sortalt.d.ts +11 -0
  619. package/types/primeng-icons-sortamountdown.d.ts +11 -0
  620. package/types/primeng-icons-sortamountupalt.d.ts +11 -0
  621. package/types/primeng-icons-spinner.d.ts +11 -0
  622. package/types/primeng-icons-star.d.ts +11 -0
  623. package/types/primeng-icons-starfill.d.ts +11 -0
  624. package/types/primeng-icons-thlarge.d.ts +11 -0
  625. package/types/primeng-icons-times.d.ts +9 -0
  626. package/types/primeng-icons-timescircle.d.ts +11 -0
  627. package/types/primeng-icons-trash.d.ts +11 -0
  628. package/types/primeng-icons-undo.d.ts +11 -0
  629. package/types/primeng-icons-upload.d.ts +11 -0
  630. package/types/primeng-icons-windowmaximize.d.ts +11 -0
  631. package/types/primeng-icons-windowminimize.d.ts +11 -0
  632. package/types/primeng-icons.d.ts +53 -0
  633. package/types/primeng-iftalabel.d.ts +58 -0
  634. package/types/primeng-image.d.ts +349 -0
  635. package/types/primeng-imagecompare.d.ts +100 -0
  636. package/types/primeng-inplace.d.ts +171 -0
  637. package/types/primeng-inputgroup.d.ts +65 -0
  638. package/types/primeng-inputgroupaddon.d.ts +52 -0
  639. package/types/primeng-inputicon.d.ts +44 -0
  640. package/types/primeng-inputmask.d.ts +381 -0
  641. package/types/primeng-inputnumber.d.ts +436 -0
  642. package/types/primeng-inputotp.d.ts +179 -0
  643. package/types/primeng-inputtext.d.ts +117 -0
  644. package/types/primeng-keyfilter.d.ts +61 -0
  645. package/types/primeng-knob.d.ts +213 -0
  646. package/types/primeng-listbox.d.ts +675 -0
  647. package/types/primeng-megamenu.d.ts +392 -0
  648. package/types/primeng-menu.d.ts +364 -0
  649. package/types/primeng-menubar.d.ts +392 -0
  650. package/types/primeng-message.d.ts +213 -0
  651. package/types/primeng-metergroup.d.ts +209 -0
  652. package/types/primeng-motion.d.ts +398 -0
  653. package/types/primeng-multiselect.d.ts +903 -0
  654. package/types/primeng-orderlist.d.ts +375 -0
  655. package/types/primeng-organizationchart.d.ts +236 -0
  656. package/types/primeng-overlay.d.ts +355 -0
  657. package/types/primeng-overlaybadge.d.ts +80 -0
  658. package/types/primeng-paginator.d.ts +363 -0
  659. package/types/primeng-panel.d.ts +257 -0
  660. package/types/primeng-panelmenu.d.ts +367 -0
  661. package/types/primeng-passthrough.d.ts +14 -0
  662. package/types/primeng-password.d.ts +494 -0
  663. package/types/primeng-picklist.d.ts +669 -0
  664. package/types/primeng-popover.d.ts +202 -0
  665. package/types/primeng-progressbar.d.ts +124 -0
  666. package/types/primeng-progressspinner.d.ts +92 -0
  667. package/types/primeng-radiobutton.d.ts +193 -0
  668. package/types/primeng-rating.d.ts +196 -0
  669. package/types/primeng-ripple.d.ts +63 -0
  670. package/types/primeng-scroller.d.ts +452 -0
  671. package/types/primeng-scrollpanel.d.ts +157 -0
  672. package/types/primeng-scrolltop.d.ts +159 -0
  673. package/types/primeng-select.d.ts +792 -0
  674. package/types/primeng-selectbutton.d.ts +186 -0
  675. package/types/primeng-skeleton.d.ts +104 -0
  676. package/types/primeng-slider.d.ts +224 -0
  677. package/types/primeng-speeddial.d.ts +420 -0
  678. package/types/primeng-splitbutton.d.ts +294 -0
  679. package/types/primeng-splitter.d.ts +212 -0
  680. package/types/primeng-stepper.d.ts +337 -0
  681. package/types/primeng-steps.d.ts +153 -0
  682. package/types/primeng-styleclass.d.ts +115 -0
  683. package/types/primeng-table.d.ts +2089 -0
  684. package/types/primeng-tabs.d.ts +360 -0
  685. package/types/primeng-tag.d.ts +115 -0
  686. package/types/primeng-terminal.d.ts +141 -0
  687. package/types/primeng-textarea.d.ts +127 -0
  688. package/types/primeng-tieredmenu.d.ts +432 -0
  689. package/types/primeng-timeline.d.ts +141 -0
  690. package/types/primeng-toast.d.ts +303 -0
  691. package/types/primeng-togglebutton.d.ts +205 -0
  692. package/types/primeng-toggleswitch.d.ts +168 -0
  693. package/types/primeng-toolbar.d.ts +106 -0
  694. package/types/primeng-tooltip.d.ts +286 -0
  695. package/types/primeng-tree.d.ts +668 -0
  696. package/types/primeng-treeselect.d.ts +575 -0
  697. package/types/primeng-treetable.d.ts +1278 -0
  698. package/types/primeng-ts-helpers.d.ts +6 -0
  699. package/types/primeng-types-accordion.d.ts +97 -0
  700. package/types/primeng-types-autocomplete.d.ts +312 -0
  701. package/types/primeng-types-avatar.d.ts +40 -0
  702. package/types/primeng-types-avatargroup.d.ts +28 -0
  703. package/types/primeng-types-badge.d.ts +26 -0
  704. package/types/primeng-types-blockui.d.ts +39 -0
  705. package/types/primeng-types-breadcrumb.d.ts +96 -0
  706. package/types/primeng-types-button.d.ts +124 -0
  707. package/types/primeng-types-card.d.ts +75 -0
  708. package/types/primeng-types-carousel.d.ts +143 -0
  709. package/types/primeng-types-cascadeselect.d.ts +215 -0
  710. package/types/primeng-types-chart.d.ts +32 -0
  711. package/types/primeng-types-checkbox.d.ts +81 -0
  712. package/types/primeng-types-chip.d.ts +71 -0
  713. package/types/primeng-types-colorpicker.d.ts +78 -0
  714. package/types/primeng-types-confirmdialog.d.ts +147 -0
  715. package/types/primeng-types-confirmpopup.d.ts +105 -0
  716. package/types/primeng-types-contextmenu.d.ts +102 -0
  717. package/types/primeng-types-dataview.d.ts +253 -0
  718. package/types/primeng-types-datepicker.d.ts +521 -0
  719. package/types/primeng-types-dialog.d.ts +107 -0
  720. package/types/primeng-types-divider.d.ts +28 -0
  721. package/types/primeng-types-dock.d.ts +70 -0
  722. package/types/primeng-types-drawer.d.ts +82 -0
  723. package/types/primeng-types-editor.d.ts +210 -0
  724. package/types/primeng-types-fieldset.d.ts +101 -0
  725. package/types/primeng-types-fileupload.d.ts +360 -0
  726. package/types/primeng-types-floatlabel.d.ts +26 -0
  727. package/types/primeng-types-fluid.d.ts +28 -0
  728. package/types/primeng-types-galleria.d.ts +250 -0
  729. package/types/primeng-types-iconfield.d.ts +26 -0
  730. package/types/primeng-types-iftalabel.d.ts +26 -0
  731. package/types/primeng-types-image.d.ts +144 -0
  732. package/types/primeng-types-imagecompare.d.ts +43 -0
  733. package/types/primeng-types-inplace.d.ts +72 -0
  734. package/types/primeng-types-inputgroup.d.ts +28 -0
  735. package/types/primeng-types-inputgroupaddon.d.ts +28 -0
  736. package/types/primeng-types-inputicon.d.ts +26 -0
  737. package/types/primeng-types-inputmask.d.ts +56 -0
  738. package/types/primeng-types-inputnumber.d.ts +95 -0
  739. package/types/primeng-types-inputotp.d.ts +101 -0
  740. package/types/primeng-types-inputtext.d.ts +24 -0
  741. package/types/primeng-types-knob.d.ts +40 -0
  742. package/types/primeng-types-listbox.d.ts +359 -0
  743. package/types/primeng-types-megamenu.d.ts +138 -0
  744. package/types/primeng-types-menu.d.ts +114 -0
  745. package/types/primeng-types-menubar.d.ts +124 -0
  746. package/types/primeng-types-message.d.ts +87 -0
  747. package/types/primeng-types-metergroup.d.ts +176 -0
  748. package/types/primeng-types-motion.d.ts +26 -0
  749. package/types/primeng-types-multiselect.d.ts +414 -0
  750. package/types/primeng-types-orderlist.d.ts +173 -0
  751. package/types/primeng-types-organizationchart.d.ts +138 -0
  752. package/types/primeng-types-overlay.d.ts +60 -0
  753. package/types/primeng-types-overlaybadge.d.ts +34 -0
  754. package/types/primeng-types-paginator.d.ts +167 -0
  755. package/types/primeng-types-panel.d.ts +129 -0
  756. package/types/primeng-types-panelmenu.d.ts +131 -0
  757. package/types/primeng-types-password.d.ts +120 -0
  758. package/types/primeng-types-picklist.d.ts +348 -0
  759. package/types/primeng-types-popover.d.ts +59 -0
  760. package/types/primeng-types-progressbar.d.ts +58 -0
  761. package/types/primeng-types-progressspinner.d.ts +36 -0
  762. package/types/primeng-types-radiobutton.d.ts +51 -0
  763. package/types/primeng-types-rating.d.ts +94 -0
  764. package/types/primeng-types-scroller.d.ts +231 -0
  765. package/types/primeng-types-scrollpanel.d.ts +51 -0
  766. package/types/primeng-types-scrolltop.d.ts +61 -0
  767. package/types/primeng-types-select.d.ts +319 -0
  768. package/types/primeng-types-selectbutton.d.ts +92 -0
  769. package/types/primeng-types-skeleton.d.ts +28 -0
  770. package/types/primeng-types-slider.d.ts +78 -0
  771. package/types/primeng-types-speeddial.d.ts +100 -0
  772. package/types/primeng-types-splitbutton.d.ts +70 -0
  773. package/types/primeng-types-splitter.d.ts +70 -0
  774. package/types/primeng-types-stepper.d.ts +162 -0
  775. package/types/primeng-types-table.d.ts +893 -0
  776. package/types/primeng-types-tabs.d.ts +119 -0
  777. package/types/primeng-types-tag.d.ts +47 -0
  778. package/types/primeng-types-terminal.d.ts +60 -0
  779. package/types/primeng-types-textarea.d.ts +28 -0
  780. package/types/primeng-types-tieredmenu.d.ts +95 -0
  781. package/types/primeng-types-timeline.d.ts +85 -0
  782. package/types/primeng-types-toast.d.ts +131 -0
  783. package/types/primeng-types-togglebutton.d.ts +86 -0
  784. package/types/primeng-types-toggleswitch.d.ts +73 -0
  785. package/types/primeng-types-toolbar.d.ts +55 -0
  786. package/types/primeng-types-tooltip.d.ts +32 -0
  787. package/types/primeng-types-tree.d.ts +342 -0
  788. package/types/primeng-types-treeselect.d.ts +251 -0
  789. package/types/primeng-types-treetable.d.ts +629 -0
  790. package/types/primeng-usestyle.d.ts +15 -0
  791. package/types/primeng-utils.d.ts +43 -0
  792. package/types/primeng.d.ts +2 -0
@@ -0,0 +1,1619 @@
1
+ export * from 'primeng/types/panelmenu';
2
+ import * as i2 from '@angular/common';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i0 from '@angular/core';
5
+ import { Injectable, InjectionToken, input, EventEmitter, inject, ElementRef, forwardRef, booleanAttribute, numberAttribute, Output, Input, ViewEncapsulation, Component, signal, computed, ViewChild, ChangeDetectionStrategy, ContentChildren, ContentChild, NgModule } from '@angular/core';
6
+ import * as i3 from '@angular/router';
7
+ import { RouterModule } from '@angular/router';
8
+ import { resolve, isNotEmpty, findLast, findSingle, isPrintableCharacter, isEmpty, uuid, equals, focus, getAttribute } from '@primeuix/utils';
9
+ import { SharedModule, PrimeTemplate } from 'primeng/api';
10
+ import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
11
+ import * as i1 from 'primeng/bind';
12
+ import { Bind, BindModule } from 'primeng/bind';
13
+ import { ChevronDownIcon, ChevronRightIcon } from 'primeng/icons';
14
+ import * as i5 from 'primeng/motion';
15
+ import { MotionModule } from 'primeng/motion';
16
+ import * as i4 from 'primeng/tooltip';
17
+ import { TooltipModule } from 'primeng/tooltip';
18
+ import { style as style$1 } from '@primeuix/styles/panelmenu';
19
+ import { BaseStyle } from 'primeng/base';
20
+
21
+ const style = /*css*/ `
22
+ ${style$1}
23
+ /*For PrimeNG*/
24
+
25
+
26
+ .p-panelmenu-root-list,
27
+ .p-panelmenu-submenu,
28
+ .p-panelmenu-item-link {
29
+ outline: 0 none;
30
+ }
31
+ `;
32
+ const classes = {
33
+ root: () => ['p-panelmenu p-component'],
34
+ panel: 'p-panelmenu-panel',
35
+ header: ({ instance, item }) => [
36
+ 'p-panelmenu-header',
37
+ {
38
+ 'p-panelmenu-header-active': instance.isItemActive(item) && !!item.items,
39
+ 'p-disabled': instance.isItemDisabled(item)
40
+ }
41
+ ],
42
+ headerContent: 'p-panelmenu-header-content',
43
+ headerLink: 'p-panelmenu-header-link',
44
+ headerIcon: 'p-panelmenu-header-icon',
45
+ headerLabel: 'p-panelmenu-header-label',
46
+ contentContainer: ({ instance, processedItem }) => ['p-panelmenu-content-container', { 'p-panelmenu-expanded': instance.isItemActive(processedItem) }],
47
+ contentWrapper: 'p-panelmenu-content-wrapper',
48
+ content: 'p-panelmenu-content',
49
+ rootList: 'p-panelmenu-root-list',
50
+ item: ({ instance, processedItem }) => [
51
+ 'p-panelmenu-item',
52
+ {
53
+ 'p-focus': instance.isItemFocused(processedItem) && !instance.isItemDisabled(processedItem),
54
+ 'p-disabled': instance.isItemDisabled(processedItem)
55
+ }
56
+ ],
57
+ itemContent: 'p-panelmenu-item-content',
58
+ itemLink: 'p-panelmenu-item-link',
59
+ itemIcon: 'p-panelmenu-item-icon',
60
+ itemLabel: 'p-panelmenu-item-label',
61
+ submenuIcon: 'p-panelmenu-submenu-icon',
62
+ submenu: 'p-panelmenu-submenu',
63
+ separator: 'p-menuitem-separator',
64
+ badge: 'p-menuitem-badge'
65
+ };
66
+ class PanelMenuStyle extends BaseStyle {
67
+ name = 'panelmenu';
68
+ style = style;
69
+ classes = classes;
70
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
71
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuStyle });
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuStyle, decorators: [{
74
+ type: Injectable
75
+ }] });
76
+ /**
77
+ *
78
+ * PanelMenu is a hybrid of Accordion and Tree components.
79
+ *
80
+ * [Live Demo](https://www.primeng.org/panelmenu/)
81
+ *
82
+ * @module panelmenustyle
83
+ *
84
+ */
85
+ var PanelMenuClasses;
86
+ (function (PanelMenuClasses) {
87
+ /**
88
+ * Class name of the root element
89
+ */
90
+ PanelMenuClasses["root"] = "p-panelmenu";
91
+ /**
92
+ * Class name of the panel element
93
+ */
94
+ PanelMenuClasses["panel"] = "p-panelmenu-panel";
95
+ /**
96
+ * Class name of the header element
97
+ */
98
+ PanelMenuClasses["header"] = "p-panelmenu-header";
99
+ /**
100
+ * Class name of the header content element
101
+ */
102
+ PanelMenuClasses["headerContent"] = "p-panelmenu-header-content";
103
+ /**
104
+ * Class name of the header link element
105
+ */
106
+ PanelMenuClasses["headerLink"] = "p-panelmenu-header-link";
107
+ /**
108
+ * Class name of the header icon element
109
+ */
110
+ PanelMenuClasses["headerIcon"] = "p-panelmenu-header-icon";
111
+ /**
112
+ * Class name of the header label element
113
+ */
114
+ PanelMenuClasses["headerLabel"] = "p-panelmenu-header-label";
115
+ /**
116
+ * Class name of the content container element
117
+ */
118
+ PanelMenuClasses["contentContainer"] = "p-panelmenu-content-container";
119
+ /**
120
+ * Class name of the content element
121
+ */
122
+ PanelMenuClasses["content"] = "p-panelmenu-content";
123
+ /**
124
+ * Class name of the root list element
125
+ */
126
+ PanelMenuClasses["rootList"] = "p-panelmenu-root-list";
127
+ /**
128
+ * Class name of the item element
129
+ */
130
+ PanelMenuClasses["item"] = "p-panelmenu-item";
131
+ /**
132
+ * Class name of the item content element
133
+ */
134
+ PanelMenuClasses["itemContent"] = "p-panelmenu-item-content";
135
+ /**
136
+ * Class name of the item link element
137
+ */
138
+ PanelMenuClasses["itemLink"] = "p-panelmenu-item-link";
139
+ /**
140
+ * Class name of the item icon element
141
+ */
142
+ PanelMenuClasses["itemIcon"] = "p-panelmenu-item-icon";
143
+ /**
144
+ * Class name of the item label element
145
+ */
146
+ PanelMenuClasses["itemLabel"] = "p-panelmenu-item-label";
147
+ /**
148
+ * Class name of the submenu icon element
149
+ */
150
+ PanelMenuClasses["submenuIcon"] = "p-panelmenu-submenu-icon";
151
+ /**
152
+ * Class name of the submenu element
153
+ */
154
+ PanelMenuClasses["submenu"] = "p-panelmenu-submenu";
155
+ PanelMenuClasses["separator"] = "p-menuitem-separator";
156
+ })(PanelMenuClasses || (PanelMenuClasses = {}));
157
+
158
+ const PANELMENU_INSTANCE = new InjectionToken('PANELMENU_INSTANCE');
159
+ const PANELMENUSUB_INSTANCE = new InjectionToken('PANELMENUSUB_INSTANCE');
160
+ class PanelMenuSub extends BaseComponent {
161
+ panelId;
162
+ focusedItemId;
163
+ items;
164
+ itemTemplate;
165
+ level = 0;
166
+ activeItemPath;
167
+ root;
168
+ tabindex;
169
+ transitionOptions;
170
+ parentExpanded;
171
+ motionOptions = input(...(ngDevMode ? [undefined, { debugName: "motionOptions" }] : /* istanbul ignore next */ []));
172
+ itemToggle = new EventEmitter();
173
+ menuFocus = new EventEmitter();
174
+ menuBlur = new EventEmitter();
175
+ menuKeyDown = new EventEmitter();
176
+ listViewChild = inject(ElementRef);
177
+ panelMenu = inject(forwardRef(() => PanelMenu));
178
+ _componentStyle = inject(PanelMenuStyle);
179
+ bindDirectiveInstance = inject(Bind, { self: true });
180
+ $pcPanelMenu = inject(PANELMENU_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
181
+ onAfterViewChecked() {
182
+ this.bindDirectiveInstance.setAttrs(this.ptm(this.root ? 'rootList' : 'submenu'));
183
+ }
184
+ getPTOptions(processedItem, index, key) {
185
+ return this.ptm(key, {
186
+ context: {
187
+ item: processedItem.item,
188
+ index,
189
+ active: this.isItemActive(processedItem),
190
+ focused: this.isItemFocused(processedItem),
191
+ disabled: this.isItemDisabled(processedItem)
192
+ }
193
+ });
194
+ }
195
+ getItemId(processedItem) {
196
+ return processedItem.item?.id ?? `${this.panelId}_${processedItem.key}`;
197
+ }
198
+ getItemKey(processedItem) {
199
+ return this.getItemId(processedItem);
200
+ }
201
+ getItemClass(processedItem) {
202
+ return {
203
+ 'p-panelmenu-item': true,
204
+ 'p-disabled': this.isItemDisabled(processedItem),
205
+ 'p-focus': this.isItemFocused(processedItem)
206
+ };
207
+ }
208
+ getItemProp(processedItem, name, params) {
209
+ return processedItem && processedItem.item ? resolve(processedItem.item[name], params) : undefined;
210
+ }
211
+ getItemLabel(processedItem) {
212
+ return this.getItemProp(processedItem, 'label');
213
+ }
214
+ isItemExpanded(processedItem) {
215
+ return processedItem.expanded;
216
+ }
217
+ isItemActive(processedItem) {
218
+ return this.isItemExpanded(processedItem) || this.activeItemPath.some((path) => path && path.key === processedItem.key);
219
+ }
220
+ isItemVisible(processedItem) {
221
+ return this.getItemProp(processedItem, 'visible') !== false;
222
+ }
223
+ isItemDisabled(processedItem) {
224
+ return this.getItemProp(processedItem, 'disabled');
225
+ }
226
+ isItemFocused(processedItem) {
227
+ return this.focusedItemId === this.getItemId(processedItem);
228
+ }
229
+ isItemGroup(processedItem) {
230
+ return isNotEmpty(processedItem.items);
231
+ }
232
+ getAriaSetSize() {
233
+ return this.items.filter((processedItem) => this.isItemVisible(processedItem) && !this.getItemProp(processedItem, 'separator')).length;
234
+ }
235
+ getAriaPosInset(index) {
236
+ return index - this.items.slice(0, index).filter((processedItem) => this.isItemVisible(processedItem) && this.getItemProp(processedItem, 'separator')).length + 1;
237
+ }
238
+ onItemClick(event, processedItem) {
239
+ if (!this.isItemDisabled(processedItem)) {
240
+ this.getItemProp(processedItem, 'command', { originalEvent: event, item: processedItem.item });
241
+ this.itemToggle.emit({ processedItem, expanded: !this.isItemActive(processedItem) });
242
+ }
243
+ }
244
+ onItemToggle(event) {
245
+ this.itemToggle.emit(event);
246
+ }
247
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuSub, deps: null, target: i0.ɵɵFactoryTarget.Component });
248
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: PanelMenuSub, isStandalone: true, selector: "ul[pPanelMenuSub]", inputs: { panelId: { classPropertyName: "panelId", publicName: "panelId", isSignal: false, isRequired: false, transformFunction: null }, focusedItemId: { classPropertyName: "focusedItemId", publicName: "focusedItemId", 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 }, level: { classPropertyName: "level", publicName: "level", isSignal: false, isRequired: false, transformFunction: numberAttribute }, activeItemPath: { classPropertyName: "activeItemPath", publicName: "activeItemPath", isSignal: false, isRequired: false, transformFunction: null }, root: { classPropertyName: "root", publicName: "root", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, transitionOptions: { classPropertyName: "transitionOptions", publicName: "transitionOptions", isSignal: false, isRequired: false, transformFunction: null }, parentExpanded: { classPropertyName: "parentExpanded", publicName: "parentExpanded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemToggle: "itemToggle", menuFocus: "menuFocus", menuBlur: "menuBlur", menuKeyDown: "menuKeyDown" }, host: { attributes: { "role": "tree" }, listeners: { "focusin": "menuFocus.emit($event)", "focusout": "menuBlur.emit($event)", "keydown": "menuKeyDown.emit($event)" }, properties: { "class": "root ? cn(cx(\"rootList\"), cx(\"submenu\")) : cx(\"submenu\")", "tabindex": "-1", "attr.aria-activedescendant": "focusedItemId", "attr.aria-hidden": "!parentExpanded" } }, providers: [PanelMenuStyle, { provide: PANELMENUSUB_INSTANCE, useExisting: PanelMenuSub }, { provide: PARENT_INSTANCE, useExisting: PanelMenuSub }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
249
+ <ng-template ngFor let-processedItem let-index="index" [ngForOf]="items">
250
+ <li *ngIf="processedItem.separator" [class]="cn(cx('separator'), getItemProp(processedItem, 'styleClass'))" role="separator" [pBind]="ptm('separator')"></li>
251
+ <li
252
+ *ngIf="!processedItem.separator && isItemVisible(processedItem)"
253
+ role="treeitem"
254
+ [attr.id]="getItemId(processedItem)"
255
+ [attr.aria-label]="getItemProp(processedItem, 'label')"
256
+ [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
257
+ [attr.aria-level]="level + 1"
258
+ [attr.aria-setsize]="getAriaSetSize()"
259
+ [attr.aria-posinset]="getAriaPosInset(index)"
260
+ [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
261
+ [ngStyle]="getItemProp(processedItem, 'style')"
262
+ [pTooltip]="getItemProp(processedItem, 'tooltip')"
263
+ [pTooltipUnstyled]="unstyled()"
264
+ [pBind]="getPTOptions(processedItem, index, 'item')"
265
+ [attr.data-p-disabled]="isItemDisabled(processedItem)"
266
+ [attr.data-p-focused]="isItemFocused(processedItem)"
267
+ [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
268
+ >
269
+ <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)">
270
+ <ng-container *ngIf="!itemTemplate">
271
+ <a
272
+ *ngIf="!getItemProp(processedItem, 'routerLink')"
273
+ [attr.href]="getItemProp(processedItem, 'url')"
274
+ [attr.title]="getItemProp(processedItem, 'title')"
275
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
276
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
277
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
278
+ [target]="getItemProp(processedItem, 'target')"
279
+ [attr.tabindex]="!!parentExpanded ? '0' : '-1'"
280
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
281
+ >
282
+ <ng-container *ngIf="isItemGroup(processedItem)">
283
+ <ng-container *ngIf="!panelMenu.submenuIconTemplate && !panelMenu._submenuIconTemplate">
284
+ <svg
285
+ data-p-icon="chevron-down"
286
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
287
+ *ngIf="isItemActive(processedItem)"
288
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
289
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
290
+ />
291
+ <svg
292
+ data-p-icon="chevron-right"
293
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
294
+ *ngIf="!isItemActive(processedItem)"
295
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
296
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
297
+ />
298
+ </ng-container>
299
+ <ng-template *ngTemplateOutlet="panelMenu.submenuIconTemplate || panelMenu._submenuIconTemplate"></ng-template>
300
+ </ng-container>
301
+ <span
302
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
303
+ *ngIf="processedItem.icon"
304
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
305
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
306
+ ></span>
307
+ <span
308
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
309
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
310
+ *ngIf="processedItem.item?.escape !== false; else htmlLabel"
311
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
312
+ >{{ getItemProp(processedItem, 'label') }}</span
313
+ >
314
+ <ng-template #htmlLabel
315
+ ><span
316
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
317
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
318
+ [innerHTML]="getItemProp(processedItem, 'label')"
319
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
320
+ ></span
321
+ ></ng-template>
322
+ </a>
323
+ <a
324
+ *ngIf="getItemProp(processedItem, 'routerLink')"
325
+ [routerLink]="getItemProp(processedItem, 'routerLink')"
326
+ [queryParams]="getItemProp(processedItem, 'queryParams')"
327
+ [routerLinkActive]="'p-panelmenu-item-link-active'"
328
+ [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
329
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
330
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
331
+ [target]="getItemProp(processedItem, 'target')"
332
+ [attr.title]="getItemProp(processedItem, 'title')"
333
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
334
+ [fragment]="getItemProp(processedItem, 'fragment')"
335
+ [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
336
+ [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
337
+ [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
338
+ [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
339
+ [state]="getItemProp(processedItem, 'state')"
340
+ [attr.tabindex]="!!parentExpanded ? '0' : '-1'"
341
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
342
+ >
343
+ <ng-container *ngIf="isItemGroup(processedItem)">
344
+ <ng-container *ngIf="!panelMenu.submenuIconTemplate && !panelMenu._submenuIconTemplate">
345
+ <svg
346
+ data-p-icon="chevron-down"
347
+ *ngIf="isItemActive(processedItem)"
348
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
349
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
350
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
351
+ />
352
+ <svg
353
+ data-p-icon="chevron-right"
354
+ *ngIf="!isItemActive(processedItem)"
355
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
356
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
357
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
358
+ />
359
+ </ng-container>
360
+ <ng-template *ngTemplateOutlet="panelMenu.submenuIconTemplate && panelMenu._submenuIconTemplate"></ng-template>
361
+ </ng-container>
362
+ <span
363
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
364
+ *ngIf="processedItem.icon"
365
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
366
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
367
+ ></span>
368
+ <span
369
+ *ngIf="getItemProp(processedItem, 'label')"
370
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
371
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
372
+ [innerHTML]="getItemProp(processedItem, 'label')"
373
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
374
+ ></span>
375
+
376
+ <span [class]="cn(cx('badge'), getItemProp(processedItem, 'badgeStyleClass'))" *ngIf="processedItem.badge">{{ processedItem.badge }}</span>
377
+ </a>
378
+ </ng-container>
379
+ <ng-container *ngIf="itemTemplate">
380
+ <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item }"></ng-template>
381
+ </ng-container>
382
+ </div>
383
+
384
+ <div
385
+ [class]="cx('contentContainer', { processedItem: processedItem })"
386
+ pMotionName="p-collapsible"
387
+ [pMotion]="isItemVisible(processedItem) && isItemGroup(processedItem) && isItemExpanded(processedItem)"
388
+ [pMotionOptions]="motionOptions()"
389
+ >
390
+ <div [class]="cx('contentWrapper')" [pBind]="ptm('contentWrapper')">
391
+ <ul
392
+ pPanelMenuSub
393
+ [id]="getItemId(processedItem) + '_list'"
394
+ [panelId]="panelId"
395
+ [items]="processedItem?.items"
396
+ [itemTemplate]="itemTemplate"
397
+ [transitionOptions]="transitionOptions"
398
+ [focusedItemId]="focusedItemId"
399
+ [activeItemPath]="activeItemPath"
400
+ [level]="level + 1"
401
+ [pt]="pt()"
402
+ [unstyled]="unstyled()"
403
+ [parentExpanded]="!!parentExpanded && isItemExpanded(processedItem)"
404
+ (itemToggle)="onItemToggle($event)"
405
+ [motionOptions]="motionOptions()"
406
+ ></ul>
407
+ </div>
408
+ </div>
409
+ </li>
410
+ </ng-template>
411
+ `, isInline: true, dependencies: [{ kind: "component", type: PanelMenuSub, selector: "ul[pPanelMenuSub]", inputs: ["panelId", "focusedItemId", "items", "itemTemplate", "level", "activeItemPath", "root", "tabindex", "transitionOptions", "parentExpanded", "motionOptions"], outputs: ["itemToggle", "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: "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", "showOnEllipsis", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip", "pTooltipPT", "pTooltipUnstyled"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "component", type: ChevronDownIcon, selector: "[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-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 });
412
+ }
413
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuSub, decorators: [{
414
+ type: Component,
415
+ args: [{
416
+ selector: 'ul[pPanelMenuSub]',
417
+ imports: [CommonModule, RouterModule, TooltipModule, ChevronDownIcon, ChevronRightIcon, SharedModule, BindModule, MotionModule],
418
+ standalone: true,
419
+ template: `
420
+ <ng-template ngFor let-processedItem let-index="index" [ngForOf]="items">
421
+ <li *ngIf="processedItem.separator" [class]="cn(cx('separator'), getItemProp(processedItem, 'styleClass'))" role="separator" [pBind]="ptm('separator')"></li>
422
+ <li
423
+ *ngIf="!processedItem.separator && isItemVisible(processedItem)"
424
+ role="treeitem"
425
+ [attr.id]="getItemId(processedItem)"
426
+ [attr.aria-label]="getItemProp(processedItem, 'label')"
427
+ [attr.aria-expanded]="isItemGroup(processedItem) ? isItemActive(processedItem) : undefined"
428
+ [attr.aria-level]="level + 1"
429
+ [attr.aria-setsize]="getAriaSetSize()"
430
+ [attr.aria-posinset]="getAriaPosInset(index)"
431
+ [class]="cn(cx('item', { processedItem }), getItemProp(processedItem, 'styleClass'))"
432
+ [ngStyle]="getItemProp(processedItem, 'style')"
433
+ [pTooltip]="getItemProp(processedItem, 'tooltip')"
434
+ [pTooltipUnstyled]="unstyled()"
435
+ [pBind]="getPTOptions(processedItem, index, 'item')"
436
+ [attr.data-p-disabled]="isItemDisabled(processedItem)"
437
+ [attr.data-p-focused]="isItemFocused(processedItem)"
438
+ [tooltipOptions]="getItemProp(processedItem, 'tooltipOptions')"
439
+ >
440
+ <div [class]="cx('itemContent')" [pBind]="getPTOptions(processedItem, index, 'itemContent')" (click)="onItemClick($event, processedItem)">
441
+ <ng-container *ngIf="!itemTemplate">
442
+ <a
443
+ *ngIf="!getItemProp(processedItem, 'routerLink')"
444
+ [attr.href]="getItemProp(processedItem, 'url')"
445
+ [attr.title]="getItemProp(processedItem, 'title')"
446
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
447
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
448
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
449
+ [target]="getItemProp(processedItem, 'target')"
450
+ [attr.tabindex]="!!parentExpanded ? '0' : '-1'"
451
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
452
+ >
453
+ <ng-container *ngIf="isItemGroup(processedItem)">
454
+ <ng-container *ngIf="!panelMenu.submenuIconTemplate && !panelMenu._submenuIconTemplate">
455
+ <svg
456
+ data-p-icon="chevron-down"
457
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
458
+ *ngIf="isItemActive(processedItem)"
459
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
460
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
461
+ />
462
+ <svg
463
+ data-p-icon="chevron-right"
464
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
465
+ *ngIf="!isItemActive(processedItem)"
466
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
467
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
468
+ />
469
+ </ng-container>
470
+ <ng-template *ngTemplateOutlet="panelMenu.submenuIconTemplate || panelMenu._submenuIconTemplate"></ng-template>
471
+ </ng-container>
472
+ <span
473
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
474
+ *ngIf="processedItem.icon"
475
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
476
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
477
+ ></span>
478
+ <span
479
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
480
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
481
+ *ngIf="processedItem.item?.escape !== false; else htmlLabel"
482
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
483
+ >{{ getItemProp(processedItem, 'label') }}</span
484
+ >
485
+ <ng-template #htmlLabel
486
+ ><span
487
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
488
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
489
+ [innerHTML]="getItemProp(processedItem, 'label')"
490
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
491
+ ></span
492
+ ></ng-template>
493
+ </a>
494
+ <a
495
+ *ngIf="getItemProp(processedItem, 'routerLink')"
496
+ [routerLink]="getItemProp(processedItem, 'routerLink')"
497
+ [queryParams]="getItemProp(processedItem, 'queryParams')"
498
+ [routerLinkActive]="'p-panelmenu-item-link-active'"
499
+ [routerLinkActiveOptions]="getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }"
500
+ [class]="cn(cx('itemLink'), getItemProp(processedItem, 'linkClass'))"
501
+ [ngStyle]="getItemProp(processedItem, 'linkStyle')"
502
+ [target]="getItemProp(processedItem, 'target')"
503
+ [attr.title]="getItemProp(processedItem, 'title')"
504
+ [attr.data-automationid]="getItemProp(processedItem, 'automationId')"
505
+ [fragment]="getItemProp(processedItem, 'fragment')"
506
+ [queryParamsHandling]="getItemProp(processedItem, 'queryParamsHandling')"
507
+ [preserveFragment]="getItemProp(processedItem, 'preserveFragment')"
508
+ [skipLocationChange]="getItemProp(processedItem, 'skipLocationChange')"
509
+ [replaceUrl]="getItemProp(processedItem, 'replaceUrl')"
510
+ [state]="getItemProp(processedItem, 'state')"
511
+ [attr.tabindex]="!!parentExpanded ? '0' : '-1'"
512
+ [pBind]="getPTOptions(processedItem, index, 'itemLink')"
513
+ >
514
+ <ng-container *ngIf="isItemGroup(processedItem)">
515
+ <ng-container *ngIf="!panelMenu.submenuIconTemplate && !panelMenu._submenuIconTemplate">
516
+ <svg
517
+ data-p-icon="chevron-down"
518
+ *ngIf="isItemActive(processedItem)"
519
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
520
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
521
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
522
+ />
523
+ <svg
524
+ data-p-icon="chevron-right"
525
+ *ngIf="!isItemActive(processedItem)"
526
+ [class]="cn(cx('submenuIcon'), getItemProp(processedItem, 'icon'))"
527
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
528
+ [pBind]="getPTOptions(processedItem, index, 'submenuIcon')"
529
+ />
530
+ </ng-container>
531
+ <ng-template *ngTemplateOutlet="panelMenu.submenuIconTemplate && panelMenu._submenuIconTemplate"></ng-template>
532
+ </ng-container>
533
+ <span
534
+ [class]="cn(cx('itemIcon'), getItemProp(processedItem, 'icon'), getItemProp(processedItem, 'iconClass'))"
535
+ *ngIf="processedItem.icon"
536
+ [ngStyle]="getItemProp(processedItem, 'iconStyle')"
537
+ [pBind]="getPTOptions(processedItem, index, 'itemIcon')"
538
+ ></span>
539
+ <span
540
+ *ngIf="getItemProp(processedItem, 'label')"
541
+ [class]="cn(cx('itemLabel'), getItemProp(processedItem, 'labelClass'))"
542
+ [ngStyle]="getItemProp(processedItem, 'labelStyle')"
543
+ [innerHTML]="getItemProp(processedItem, 'label')"
544
+ [pBind]="getPTOptions(processedItem, index, 'itemLabel')"
545
+ ></span>
546
+
547
+ <span [class]="cn(cx('badge'), getItemProp(processedItem, 'badgeStyleClass'))" *ngIf="processedItem.badge">{{ processedItem.badge }}</span>
548
+ </a>
549
+ </ng-container>
550
+ <ng-container *ngIf="itemTemplate">
551
+ <ng-template *ngTemplateOutlet="itemTemplate; context: { $implicit: processedItem.item }"></ng-template>
552
+ </ng-container>
553
+ </div>
554
+
555
+ <div
556
+ [class]="cx('contentContainer', { processedItem: processedItem })"
557
+ pMotionName="p-collapsible"
558
+ [pMotion]="isItemVisible(processedItem) && isItemGroup(processedItem) && isItemExpanded(processedItem)"
559
+ [pMotionOptions]="motionOptions()"
560
+ >
561
+ <div [class]="cx('contentWrapper')" [pBind]="ptm('contentWrapper')">
562
+ <ul
563
+ pPanelMenuSub
564
+ [id]="getItemId(processedItem) + '_list'"
565
+ [panelId]="panelId"
566
+ [items]="processedItem?.items"
567
+ [itemTemplate]="itemTemplate"
568
+ [transitionOptions]="transitionOptions"
569
+ [focusedItemId]="focusedItemId"
570
+ [activeItemPath]="activeItemPath"
571
+ [level]="level + 1"
572
+ [pt]="pt()"
573
+ [unstyled]="unstyled()"
574
+ [parentExpanded]="!!parentExpanded && isItemExpanded(processedItem)"
575
+ (itemToggle)="onItemToggle($event)"
576
+ [motionOptions]="motionOptions()"
577
+ ></ul>
578
+ </div>
579
+ </div>
580
+ </li>
581
+ </ng-template>
582
+ `,
583
+ encapsulation: ViewEncapsulation.None,
584
+ providers: [PanelMenuStyle, { provide: PANELMENUSUB_INSTANCE, useExisting: PanelMenuSub }, { provide: PARENT_INSTANCE, useExisting: PanelMenuSub }],
585
+ host: {
586
+ '[class]': 'root ? cn(cx("rootList"), cx("submenu")) : cx("submenu")',
587
+ role: 'tree',
588
+ '[tabindex]': '-1',
589
+ '[attr.aria-activedescendant]': 'focusedItemId',
590
+ '[attr.aria-hidden]': '!parentExpanded',
591
+ '(focusin)': 'menuFocus.emit($event)',
592
+ '(focusout)': 'menuBlur.emit($event)',
593
+ '(keydown)': 'menuKeyDown.emit($event)'
594
+ },
595
+ hostDirectives: [Bind]
596
+ }]
597
+ }], propDecorators: { panelId: [{
598
+ type: Input
599
+ }], focusedItemId: [{
600
+ type: Input
601
+ }], items: [{
602
+ type: Input
603
+ }], itemTemplate: [{
604
+ type: Input
605
+ }], level: [{
606
+ type: Input,
607
+ args: [{ transform: numberAttribute }]
608
+ }], activeItemPath: [{
609
+ type: Input
610
+ }], root: [{
611
+ type: Input,
612
+ args: [{ transform: booleanAttribute }]
613
+ }], tabindex: [{
614
+ type: Input,
615
+ args: [{ transform: numberAttribute }]
616
+ }], transitionOptions: [{
617
+ type: Input
618
+ }], parentExpanded: [{
619
+ type: Input,
620
+ args: [{ transform: booleanAttribute }]
621
+ }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], itemToggle: [{
622
+ type: Output
623
+ }], menuFocus: [{
624
+ type: Output
625
+ }], menuBlur: [{
626
+ type: Output
627
+ }], menuKeyDown: [{
628
+ type: Output
629
+ }] } });
630
+ class PanelMenuList extends BaseComponent {
631
+ panelId;
632
+ id;
633
+ items;
634
+ itemTemplate;
635
+ parentExpanded;
636
+ expanded;
637
+ transitionOptions;
638
+ root;
639
+ tabindex;
640
+ activeItem;
641
+ motionOptions = input(...(ngDevMode ? [undefined, { debugName: "motionOptions" }] : /* istanbul ignore next */ []));
642
+ itemToggle = new EventEmitter();
643
+ headerFocus = new EventEmitter();
644
+ subMenuViewChild;
645
+ searchTimeout;
646
+ searchValue;
647
+ focused;
648
+ focusedItem = signal(null, ...(ngDevMode ? [{ debugName: "focusedItem" }] : /* istanbul ignore next */ []));
649
+ activeItemPath = signal([], ...(ngDevMode ? [{ debugName: "activeItemPath" }] : /* istanbul ignore next */ []));
650
+ processedItems = signal([], ...(ngDevMode ? [{ debugName: "processedItems" }] : /* istanbul ignore next */ []));
651
+ visibleItems = computed(() => {
652
+ const processedItems = this.processedItems();
653
+ return this.flatItems(processedItems);
654
+ }, ...(ngDevMode ? [{ debugName: "visibleItems" }] : /* istanbul ignore next */ []));
655
+ get focusedItemId() {
656
+ const focusedItem = this.focusedItem();
657
+ return focusedItem && focusedItem.item?.id ? focusedItem.item.id : isNotEmpty(this.focusedItem()) ? `${this.panelId}_${this.focusedItem().key}` : undefined;
658
+ }
659
+ onChanges(changes) {
660
+ this.processedItems.set(this.createProcessedItems(changes?.items?.currentValue || this.items || []));
661
+ }
662
+ getItemProp(processedItem, name) {
663
+ return processedItem && processedItem.item ? resolve(processedItem.item[name]) : undefined;
664
+ }
665
+ getItemLabel(processedItem) {
666
+ return this.getItemProp(processedItem, 'label');
667
+ }
668
+ isItemVisible(processedItem) {
669
+ return this.getItemProp(processedItem, 'visible') !== false;
670
+ }
671
+ isItemDisabled(processedItem) {
672
+ return this.getItemProp(processedItem, 'disabled');
673
+ }
674
+ isItemActive(processedItem) {
675
+ return this.activeItemPath().some((path) => path.key === processedItem.parentKey);
676
+ }
677
+ isItemGroup(processedItem) {
678
+ return isNotEmpty(processedItem.items);
679
+ }
680
+ isElementInPanel(event, element) {
681
+ const panel = event.currentTarget.closest('[data-pc-name="panelmenu"]');
682
+ return panel && panel.contains(element);
683
+ }
684
+ isItemMatched(processedItem) {
685
+ return this.isValidItem(processedItem) && this.getItemLabel(processedItem).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase());
686
+ }
687
+ isVisibleItem(processedItem) {
688
+ return !!processedItem && (processedItem.level === 0 || this.isItemActive(processedItem)) && this.isItemVisible(processedItem);
689
+ }
690
+ isValidItem(processedItem) {
691
+ return !!processedItem && !this.isItemDisabled(processedItem) && !processedItem.separator;
692
+ }
693
+ findFirstItem() {
694
+ return this.visibleItems().find((processedItem) => this.isValidItem(processedItem));
695
+ }
696
+ findLastItem() {
697
+ return findLast(this.visibleItems(), (processedItem) => this.isValidItem(processedItem));
698
+ }
699
+ findItemByEventTarget(target) {
700
+ let parentNode = target;
701
+ while (parentNode && parentNode.tagName?.toLowerCase() !== 'li') {
702
+ parentNode = parentNode?.parentNode;
703
+ }
704
+ return parentNode?.id && this.visibleItems().find((processedItem) => this.isValidItem(processedItem) && `${this.panelId}_${processedItem.key}` === parentNode.id);
705
+ }
706
+ createProcessedItems(items, level = 0, parent = {}, parentKey = '') {
707
+ const processedItems = [];
708
+ items &&
709
+ items.forEach((item, index) => {
710
+ const key = (parentKey !== '' ? parentKey + '_' : '') + index;
711
+ const newItem = {
712
+ icon: item.icon,
713
+ expanded: item.expanded,
714
+ separator: item.separator,
715
+ item,
716
+ index,
717
+ level,
718
+ key,
719
+ parent,
720
+ parentKey
721
+ };
722
+ newItem['items'] = this.createProcessedItems(item.items, level + 1, newItem, key);
723
+ processedItems.push(newItem);
724
+ });
725
+ return processedItems;
726
+ }
727
+ findProcessedItemByItemKey(key, processedItems, level = 0) {
728
+ processedItems = processedItems || this.processedItems();
729
+ if (processedItems && processedItems.length) {
730
+ for (let i = 0; i < processedItems.length; i++) {
731
+ const processedItem = processedItems[i];
732
+ if (this.getItemProp(processedItem, 'key') === key)
733
+ return processedItem;
734
+ const matchedItem = this.findProcessedItemByItemKey(key, processedItem.items, level + 1);
735
+ if (matchedItem)
736
+ return matchedItem;
737
+ }
738
+ }
739
+ }
740
+ flatItems(processedItems, processedFlattenItems = []) {
741
+ processedItems &&
742
+ processedItems.forEach((processedItem) => {
743
+ if (this.isVisibleItem(processedItem)) {
744
+ processedFlattenItems.push(processedItem);
745
+ this.flatItems(processedItem.items, processedFlattenItems);
746
+ }
747
+ });
748
+ return processedFlattenItems;
749
+ }
750
+ changeFocusedItem(event) {
751
+ const { originalEvent, processedItem, focusOnNext, selfCheck, allowHeaderFocus = true } = event;
752
+ if (isNotEmpty(this.focusedItem()) && this.focusedItem().key !== processedItem.key) {
753
+ this.focusedItem.set(processedItem);
754
+ this.scrollInView();
755
+ }
756
+ else if (allowHeaderFocus) {
757
+ this.headerFocus.emit({ originalEvent, focusOnNext, selfCheck });
758
+ }
759
+ }
760
+ scrollInView() {
761
+ const element = findSingle(this.subMenuViewChild.listViewChild.nativeElement, `li[id="${`${this.focusedItemId}`}"]`);
762
+ if (element) {
763
+ element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
764
+ }
765
+ }
766
+ onFocus(event) {
767
+ if (!this.focused) {
768
+ this.focused = true;
769
+ const focusedItem = this.focusedItem() || (this.isElementInPanel(event, event.relatedTarget) ? this.findItemByEventTarget(event.target) || this.findFirstItem() : this.findLastItem());
770
+ if (event.relatedTarget !== null)
771
+ this.focusedItem.set(focusedItem);
772
+ }
773
+ }
774
+ onBlur(event) {
775
+ const target = event.relatedTarget;
776
+ if (this.focused && !this.el.nativeElement.contains(target)) {
777
+ this.focused = false;
778
+ this.focusedItem.set(null);
779
+ this.searchValue = '';
780
+ }
781
+ }
782
+ onItemToggle(event) {
783
+ const { processedItem, expanded } = event;
784
+ // Update the original item object's 'expanded' property
785
+ if (processedItem.item) {
786
+ processedItem.item.expanded = expanded;
787
+ }
788
+ // Update the expanded property in the existing processedItem
789
+ processedItem.expanded = expanded;
790
+ // Trigger signal update without recreating the entire tree
791
+ this.processedItems.update((items) => [...items]);
792
+ // Update activeItemPath
793
+ const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== processedItem.parentKey);
794
+ if (expanded) {
795
+ activeItemPath.push(processedItem);
796
+ }
797
+ this.activeItemPath.set(activeItemPath);
798
+ // Update focusedItem
799
+ this.focusedItem.set(processedItem);
800
+ }
801
+ onKeyDown(event) {
802
+ const metaKey = event.metaKey || event.ctrlKey;
803
+ switch (event.code) {
804
+ case 'ArrowDown':
805
+ this.onArrowDownKey(event);
806
+ break;
807
+ case 'ArrowUp':
808
+ this.onArrowUpKey(event);
809
+ break;
810
+ case 'ArrowLeft':
811
+ this.onArrowLeftKey(event);
812
+ break;
813
+ case 'ArrowRight':
814
+ this.onArrowRightKey(event);
815
+ break;
816
+ case 'Home':
817
+ this.onHomeKey(event);
818
+ break;
819
+ case 'End':
820
+ this.onEndKey(event);
821
+ break;
822
+ case 'Space':
823
+ this.onSpaceKey(event);
824
+ break;
825
+ case 'Enter':
826
+ this.onEnterKey(event);
827
+ break;
828
+ case 'Escape':
829
+ case 'Tab':
830
+ case 'PageDown':
831
+ case 'PageUp':
832
+ case 'Backspace':
833
+ case 'ShiftLeft':
834
+ case 'ShiftRight':
835
+ //NOOP
836
+ break;
837
+ default:
838
+ if (!metaKey && isPrintableCharacter(event.key)) {
839
+ this.searchItems(event, event.key);
840
+ }
841
+ break;
842
+ }
843
+ }
844
+ onArrowDownKey(event) {
845
+ const processedItem = isNotEmpty(this.focusedItem()) ? this.findNextItem(this.focusedItem()) : this.findFirstItem();
846
+ this.changeFocusedItem({ originalEvent: event, processedItem, focusOnNext: true });
847
+ event.preventDefault();
848
+ }
849
+ onArrowUpKey(event) {
850
+ const processedItem = isNotEmpty(this.focusedItem()) ? this.findPrevItem(this.focusedItem()) : this.findLastItem();
851
+ this.changeFocusedItem({ originalEvent: event, processedItem, selfCheck: true });
852
+ event.preventDefault();
853
+ }
854
+ onArrowLeftKey(event) {
855
+ if (isNotEmpty(this.focusedItem())) {
856
+ const matched = this.activeItemPath().some((p) => p.key === this.focusedItem().key);
857
+ if (matched) {
858
+ const activeItemPath = this.activeItemPath().filter((p) => p.key !== this.focusedItem().key);
859
+ this.activeItemPath.set(activeItemPath);
860
+ }
861
+ else {
862
+ const focusedItem = isNotEmpty(this.focusedItem().parent) ? this.focusedItem().parent : this.focusedItem();
863
+ this.focusedItem.set(focusedItem);
864
+ }
865
+ event.preventDefault();
866
+ }
867
+ }
868
+ onArrowRightKey(event) {
869
+ if (isNotEmpty(this.focusedItem())) {
870
+ const grouped = this.isItemGroup(this.focusedItem());
871
+ if (grouped) {
872
+ const matched = this.activeItemPath().some((p) => p.key === this.focusedItem().key);
873
+ if (matched) {
874
+ this.onArrowDownKey(event);
875
+ }
876
+ else {
877
+ const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== this.focusedItem().parentKey);
878
+ activeItemPath.push(this.focusedItem());
879
+ this.activeItemPath.set(activeItemPath);
880
+ }
881
+ }
882
+ event.preventDefault();
883
+ }
884
+ }
885
+ onHomeKey(event) {
886
+ this.changeFocusedItem({ originalEvent: event, processedItem: this.findFirstItem(), allowHeaderFocus: false });
887
+ event.preventDefault();
888
+ }
889
+ onEndKey(event) {
890
+ this.changeFocusedItem({ originalEvent: event, processedItem: this.findLastItem(), focusOnNext: true, allowHeaderFocus: false });
891
+ event.preventDefault();
892
+ }
893
+ onEnterKey(event) {
894
+ if (isNotEmpty(this.focusedItem())) {
895
+ const element = findSingle(this.subMenuViewChild.listViewChild.nativeElement, `li[id="${`${this.focusedItemId}`}"]`);
896
+ const anchorElement = element && (findSingle(element, 'a') || findSingle(element, 'button'));
897
+ anchorElement ? anchorElement.click() : element && element.click();
898
+ }
899
+ event.preventDefault();
900
+ }
901
+ onSpaceKey(event) {
902
+ this.onEnterKey(event);
903
+ }
904
+ findNextItem(processedItem) {
905
+ const index = this.visibleItems().findIndex((item) => item.key === processedItem.key);
906
+ const matchedItem = index < this.visibleItems().length - 1
907
+ ? this.visibleItems()
908
+ .slice(index + 1)
909
+ .find((pItem) => this.isValidItem(pItem))
910
+ : undefined;
911
+ return matchedItem || processedItem;
912
+ }
913
+ findPrevItem(processedItem) {
914
+ const index = this.visibleItems().findIndex((item) => item.key === processedItem.key);
915
+ const matchedItem = index > 0 ? findLast(this.visibleItems().slice(0, index), (pItem) => this.isValidItem(pItem)) : undefined;
916
+ return matchedItem || processedItem;
917
+ }
918
+ searchItems(event, char) {
919
+ this.searchValue = (this.searchValue || '') + char;
920
+ let matchedItem = null;
921
+ let matched = false;
922
+ if (isNotEmpty(this.focusedItem())) {
923
+ const focusedItemIndex = this.visibleItems().findIndex((processedItem) => processedItem.key === this.focusedItem().key);
924
+ matchedItem =
925
+ this.visibleItems()
926
+ .slice(focusedItemIndex)
927
+ .find((processedItem) => this.isItemMatched(processedItem)) || null;
928
+ matchedItem = isEmpty(matchedItem)
929
+ ? this.visibleItems()
930
+ .slice(0, focusedItemIndex)
931
+ .find((processedItem) => this.isItemMatched(processedItem)) || null
932
+ : matchedItem;
933
+ }
934
+ else {
935
+ matchedItem = this.visibleItems().find((processedItem) => this.isItemMatched(processedItem)) || null;
936
+ }
937
+ if (isNotEmpty(matchedItem)) {
938
+ matched = true;
939
+ }
940
+ if (isEmpty(matchedItem) && isEmpty(this.focusedItem())) {
941
+ matchedItem = this.findFirstItem() || null;
942
+ }
943
+ if (isNotEmpty(matchedItem)) {
944
+ this.changeFocusedItem({
945
+ originalEvent: event,
946
+ processedItem: matchedItem,
947
+ allowHeaderFocus: false
948
+ });
949
+ }
950
+ if (this.searchTimeout) {
951
+ clearTimeout(this.searchTimeout);
952
+ }
953
+ this.searchTimeout = setTimeout(() => {
954
+ this.searchValue = '';
955
+ this.searchTimeout = null;
956
+ }, 500);
957
+ return matched;
958
+ }
959
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuList, deps: null, target: i0.ɵɵFactoryTarget.Component });
960
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: PanelMenuList, isStandalone: true, selector: "ul[pPanelMenuList]", inputs: { panelId: { classPropertyName: "panelId", publicName: "panelId", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", 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 }, parentExpanded: { classPropertyName: "parentExpanded", publicName: "parentExpanded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, expanded: { classPropertyName: "expanded", publicName: "expanded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, transitionOptions: { classPropertyName: "transitionOptions", publicName: "transitionOptions", isSignal: false, isRequired: false, transformFunction: null }, root: { classPropertyName: "root", publicName: "root", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, activeItem: { classPropertyName: "activeItem", publicName: "activeItem", isSignal: false, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemToggle: "itemToggle", headerFocus: "headerFocus" }, viewQueries: [{ propertyName: "subMenuViewChild", first: true, predicate: ["submenu"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
961
+ <ul
962
+ pPanelMenuSub
963
+ #submenu
964
+ [root]="root"
965
+ [id]="panelId + '_list'"
966
+ [panelId]="panelId"
967
+ [tabindex]="tabindex"
968
+ [itemTemplate]="itemTemplate"
969
+ [focusedItemId]="focused ? focusedItemId : undefined"
970
+ [activeItemPath]="activeItemPath()"
971
+ [transitionOptions]="transitionOptions"
972
+ [items]="processedItems()"
973
+ [parentExpanded]="parentExpanded"
974
+ (itemToggle)="onItemToggle($event)"
975
+ (keydown)="onKeyDown($event)"
976
+ (menuFocus)="onFocus($event)"
977
+ (menuBlur)="onBlur($event)"
978
+ [pt]="pt()"
979
+ [unstyled]="unstyled()"
980
+ [motionOptions]="motionOptions()"
981
+ ></ul>
982
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: PanelMenuSub, selector: "ul[pPanelMenuSub]", inputs: ["panelId", "focusedItemId", "items", "itemTemplate", "level", "activeItemPath", "root", "tabindex", "transitionOptions", "parentExpanded", "motionOptions"], outputs: ["itemToggle", "menuFocus", "menuBlur", "menuKeyDown"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
983
+ }
984
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuList, decorators: [{
985
+ type: Component,
986
+ args: [{
987
+ selector: 'ul[pPanelMenuList]',
988
+ imports: [CommonModule, PanelMenuSub, RouterModule, TooltipModule, SharedModule],
989
+ standalone: true,
990
+ template: `
991
+ <ul
992
+ pPanelMenuSub
993
+ #submenu
994
+ [root]="root"
995
+ [id]="panelId + '_list'"
996
+ [panelId]="panelId"
997
+ [tabindex]="tabindex"
998
+ [itemTemplate]="itemTemplate"
999
+ [focusedItemId]="focused ? focusedItemId : undefined"
1000
+ [activeItemPath]="activeItemPath()"
1001
+ [transitionOptions]="transitionOptions"
1002
+ [items]="processedItems()"
1003
+ [parentExpanded]="parentExpanded"
1004
+ (itemToggle)="onItemToggle($event)"
1005
+ (keydown)="onKeyDown($event)"
1006
+ (menuFocus)="onFocus($event)"
1007
+ (menuBlur)="onBlur($event)"
1008
+ [pt]="pt()"
1009
+ [unstyled]="unstyled()"
1010
+ [motionOptions]="motionOptions()"
1011
+ ></ul>
1012
+ `,
1013
+ changeDetection: ChangeDetectionStrategy.OnPush,
1014
+ encapsulation: ViewEncapsulation.None
1015
+ }]
1016
+ }], propDecorators: { panelId: [{
1017
+ type: Input
1018
+ }], id: [{
1019
+ type: Input
1020
+ }], items: [{
1021
+ type: Input
1022
+ }], itemTemplate: [{
1023
+ type: Input
1024
+ }], parentExpanded: [{
1025
+ type: Input,
1026
+ args: [{ transform: booleanAttribute }]
1027
+ }], expanded: [{
1028
+ type: Input,
1029
+ args: [{ transform: booleanAttribute }]
1030
+ }], transitionOptions: [{
1031
+ type: Input
1032
+ }], root: [{
1033
+ type: Input,
1034
+ args: [{ transform: booleanAttribute }]
1035
+ }], tabindex: [{
1036
+ type: Input,
1037
+ args: [{ transform: numberAttribute }]
1038
+ }], activeItem: [{
1039
+ type: Input
1040
+ }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], itemToggle: [{
1041
+ type: Output
1042
+ }], headerFocus: [{
1043
+ type: Output
1044
+ }], subMenuViewChild: [{
1045
+ type: ViewChild,
1046
+ args: ['submenu']
1047
+ }] } });
1048
+ /**
1049
+ * PanelMenu is a hybrid of Accordion and Tree components.
1050
+ * @group Components
1051
+ */
1052
+ class PanelMenu extends BaseComponent {
1053
+ componentName = 'PanelMenu';
1054
+ /**
1055
+ * An array of menuitems.
1056
+ * @group Props
1057
+ */
1058
+ model;
1059
+ /**
1060
+ * Style class of the component.
1061
+ * @deprecated since v20.0.0, use `class` instead.
1062
+ * @group Props
1063
+ */
1064
+ styleClass;
1065
+ /**
1066
+ * Whether multiple tabs can be activated at the same time or not.
1067
+ * @group Props
1068
+ */
1069
+ multiple = false;
1070
+ /**
1071
+ * Transition options of the animation.
1072
+ * @group Props
1073
+ * @deprecated since v21.0.0, use `motionOptions` instead.
1074
+ */
1075
+ transitionOptions = '400ms cubic-bezier(0.86, 0, 0.07, 1)';
1076
+ /**
1077
+ * The motion options.
1078
+ * @group Props
1079
+ */
1080
+ motionOptions = input(undefined, ...(ngDevMode ? [{ debugName: "motionOptions" }] : /* istanbul ignore next */ []));
1081
+ computedMotionOptions = computed(() => {
1082
+ return {
1083
+ ...this.ptm('motion'),
1084
+ ...this.motionOptions()
1085
+ };
1086
+ }, ...(ngDevMode ? [{ debugName: "computedMotionOptions" }] : /* istanbul ignore next */ []));
1087
+ /**
1088
+ * Current id state as a string.
1089
+ * @group Props
1090
+ */
1091
+ id;
1092
+ /**
1093
+ * Index of the element in tabbing order.
1094
+ * @group Props
1095
+ */
1096
+ tabindex = 0;
1097
+ containerViewChild;
1098
+ /**
1099
+ * Template option of submenu icon.
1100
+ * @group Templates
1101
+ */
1102
+ submenuIconTemplate;
1103
+ /**
1104
+ * Template option of header icon.
1105
+ * @group Templates
1106
+ */
1107
+ headerIconTemplate;
1108
+ /**
1109
+ * Template option of item.
1110
+ * @param {PanelMenuItemTemplateContext} context - item context.
1111
+ * @see {@link PanelMenuItemTemplateContext}
1112
+ * @group Templates
1113
+ */
1114
+ itemTemplate;
1115
+ templates;
1116
+ _submenuIconTemplate;
1117
+ _headerIconTemplate;
1118
+ _itemTemplate;
1119
+ activeItem = signal(null, ...(ngDevMode ? [{ debugName: "activeItem" }] : /* istanbul ignore next */ []));
1120
+ _componentStyle = inject(PanelMenuStyle);
1121
+ bindDirectiveInstance = inject(Bind, { self: true });
1122
+ $pcPanelMenu = inject(PANELMENU_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
1123
+ onAfterViewChecked() {
1124
+ this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
1125
+ }
1126
+ getPTOptions(key, item, index) {
1127
+ return this.ptm(key, {
1128
+ context: {
1129
+ item: item,
1130
+ index,
1131
+ active: this.isItemActive(item)
1132
+ }
1133
+ });
1134
+ }
1135
+ onInit() {
1136
+ this.id = this.id || uuid('pn_id_');
1137
+ }
1138
+ onAfterContentInit() {
1139
+ this.templates?.forEach((item) => {
1140
+ switch (item.getType()) {
1141
+ case 'submenuicon':
1142
+ this._submenuIconTemplate = item.template;
1143
+ break;
1144
+ case 'headericon':
1145
+ this._headerIconTemplate = item.template;
1146
+ break;
1147
+ case 'item':
1148
+ this._itemTemplate = item.template;
1149
+ break;
1150
+ default:
1151
+ this._itemTemplate = item.template;
1152
+ break;
1153
+ }
1154
+ });
1155
+ }
1156
+ /**
1157
+ * Collapses open panels.
1158
+ * @group Method
1159
+ */
1160
+ collapseAll() {
1161
+ for (let item of this.model) {
1162
+ if (item.expanded) {
1163
+ item.expanded = false;
1164
+ }
1165
+ }
1166
+ this.cd.detectChanges();
1167
+ }
1168
+ changeActiveItem(event, item, index, selfActive = false) {
1169
+ if (!this.isItemDisabled(item)) {
1170
+ const activeItem = selfActive ? item : this.activeItem && equals(item, this.activeItem) ? null : item;
1171
+ this.activeItem.set(activeItem);
1172
+ }
1173
+ }
1174
+ getItemProp(item, name) {
1175
+ return item ? resolve(item[name]) : undefined;
1176
+ }
1177
+ getItemLabel(item) {
1178
+ return this.getItemProp(item, 'label');
1179
+ }
1180
+ isItemActive(item) {
1181
+ return item.expanded;
1182
+ }
1183
+ isItemVisible(item) {
1184
+ return this.getItemProp(item, 'visible') !== false;
1185
+ }
1186
+ isItemDisabled(item) {
1187
+ return this.getItemProp(item, 'disabled');
1188
+ }
1189
+ isItemGroup(item) {
1190
+ return isNotEmpty(item.items);
1191
+ }
1192
+ getPanelId(index, item) {
1193
+ return item && item.id ? item.id : `${this.id}_${index}`;
1194
+ }
1195
+ getHeaderId(item, index) {
1196
+ return item.id ? item.id + '_header' : `${this.getPanelId(index)}_header`;
1197
+ }
1198
+ getContentId(item, index) {
1199
+ return item.id ? item.id + '_content' : `${this.getPanelId(index)}_content`;
1200
+ }
1201
+ updateFocusedHeader(event) {
1202
+ const { originalEvent, focusOnNext, selfCheck } = event;
1203
+ const panelElement = originalEvent.currentTarget.closest('[data-pc-section="panel"]');
1204
+ const header = selfCheck ? findSingle(panelElement, '[data-pc-section="header"]') : focusOnNext ? this.findNextHeader(panelElement) : this.findPrevHeader(panelElement);
1205
+ header ? this.changeFocusedHeader(originalEvent, header) : focusOnNext ? this.onHeaderHomeKey(originalEvent) : this.onHeaderEndKey(originalEvent);
1206
+ }
1207
+ changeFocusedHeader(event, element) {
1208
+ element && focus(element);
1209
+ }
1210
+ findNextHeader(panelElement, selfCheck = false) {
1211
+ const nextPanelElement = selfCheck ? panelElement : panelElement.nextElementSibling;
1212
+ const headerElement = findSingle(nextPanelElement, '[data-pc-section="header"]');
1213
+ return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findNextHeader(headerElement.parentElement) : headerElement) : null;
1214
+ }
1215
+ findPrevHeader(panelElement, selfCheck = false) {
1216
+ const prevPanelElement = selfCheck ? panelElement : panelElement.previousElementSibling;
1217
+ const headerElement = findSingle(prevPanelElement, '[data-pc-section="header"]');
1218
+ return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findPrevHeader(headerElement.parentElement) : headerElement) : null;
1219
+ }
1220
+ findFirstHeader() {
1221
+ return this.containerViewChild?.nativeElement ? this.findNextHeader(this.containerViewChild.nativeElement.firstElementChild, true) : null;
1222
+ }
1223
+ findLastHeader() {
1224
+ return this.containerViewChild?.nativeElement ? this.findPrevHeader(this.containerViewChild.nativeElement.lastElementChild, true) : null;
1225
+ }
1226
+ onHeaderClick(event, item, index) {
1227
+ if (this.isItemDisabled(item)) {
1228
+ event.preventDefault();
1229
+ return;
1230
+ }
1231
+ if (item.command) {
1232
+ item.command({ originalEvent: event, item });
1233
+ }
1234
+ if (!this.multiple) {
1235
+ for (let modelItem of this.model) {
1236
+ if (item !== modelItem && modelItem.expanded) {
1237
+ modelItem.expanded = false;
1238
+ }
1239
+ }
1240
+ }
1241
+ item.expanded = !item.expanded;
1242
+ this.changeActiveItem(event, item, index);
1243
+ focus(event.currentTarget);
1244
+ }
1245
+ onHeaderKeyDown(event, item, index) {
1246
+ switch (event.code) {
1247
+ case 'ArrowDown':
1248
+ this.onHeaderArrowDownKey(event);
1249
+ break;
1250
+ case 'ArrowUp':
1251
+ this.onHeaderArrowUpKey(event);
1252
+ break;
1253
+ case 'Home':
1254
+ this.onHeaderHomeKey(event);
1255
+ break;
1256
+ case 'End':
1257
+ this.onHeaderEndKey(event);
1258
+ break;
1259
+ case 'Enter':
1260
+ case 'Space':
1261
+ this.onHeaderEnterKey(event, item, index);
1262
+ break;
1263
+ default:
1264
+ break;
1265
+ }
1266
+ }
1267
+ onHeaderArrowDownKey(event) {
1268
+ const rootList = getAttribute(event.currentTarget, 'data-p-highlight') === true ? findSingle(event.currentTarget.nextElementSibling, '[data-pc-section="rootlist"]') : null;
1269
+ rootList ? focus(rootList) : this.updateFocusedHeader({ originalEvent: event, focusOnNext: true });
1270
+ event.preventDefault();
1271
+ }
1272
+ onHeaderArrowUpKey(event) {
1273
+ const prevHeader = this.findPrevHeader(event.currentTarget.parentElement) || this.findLastHeader();
1274
+ const rootList = getAttribute(prevHeader, 'data-p-highlight') === true ? findSingle(prevHeader.nextElementSibling, '[data-pc-section="rootlist"]') : null;
1275
+ rootList ? focus(rootList) : this.updateFocusedHeader({ originalEvent: event, focusOnNext: false });
1276
+ event.preventDefault();
1277
+ }
1278
+ onHeaderHomeKey(event) {
1279
+ this.changeFocusedHeader(event, this.findFirstHeader());
1280
+ event.preventDefault();
1281
+ }
1282
+ onHeaderEndKey(event) {
1283
+ this.changeFocusedHeader(event, this.findLastHeader());
1284
+ event.preventDefault();
1285
+ }
1286
+ onHeaderEnterKey(event, item, index) {
1287
+ const headerAction = findSingle(event.currentTarget, '[data-pc-section="headerlink"]');
1288
+ headerAction ? headerAction.click() : this.onHeaderClick(event, item, index);
1289
+ event.preventDefault();
1290
+ }
1291
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenu, deps: null, target: i0.ɵɵFactoryTarget.Component });
1292
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.22", type: PanelMenu, isStandalone: true, selector: "p-panelMenu, p-panelmenu, p-panel-menu", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, transitionOptions: { classPropertyName: "transitionOptions", publicName: "transitionOptions", isSignal: false, isRequired: false, transformFunction: null }, motionOptions: { classPropertyName: "motionOptions", publicName: "motionOptions", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute } }, host: { properties: { "class": "cn(cx(\"root\"), styleClass)" } }, providers: [PanelMenuStyle, { provide: PANELMENU_INSTANCE, useExisting: PanelMenu }, { provide: PARENT_INSTANCE, useExisting: PanelMenu }], queries: [{ propertyName: "submenuIconTemplate", first: true, predicate: ["submenuicon"] }, { propertyName: "headerIconTemplate", first: true, predicate: ["headericon"] }, { propertyName: "itemTemplate", first: true, predicate: ["item"] }, { propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
1293
+ <ng-container *ngFor="let item of model; let f = first; let l = last; let i = index">
1294
+ <div *ngIf="isItemVisible(item)" [class]="cn(cx('panel'), getItemProp(item, 'headerClass'))" [ngStyle]="getItemProp(item, 'style')" [pBind]="ptm('panel')">
1295
+ <div
1296
+ [class]="cn(cx('header', { item }), getItemProp(item, 'styleClass'))"
1297
+ [ngStyle]="getItemProp(item, 'style')"
1298
+ [pTooltip]="getItemProp(item, 'tooltip')"
1299
+ [pTooltipUnstyled]="unstyled()"
1300
+ [attr.id]="getHeaderId(item, i)"
1301
+ [tabindex]="0"
1302
+ role="button"
1303
+ [tooltipOptions]="getItemProp(item, 'tooltipOptions')"
1304
+ [attr.aria-expanded]="isItemActive(item)"
1305
+ [attr.aria-label]="getItemProp(item, 'label')"
1306
+ [attr.aria-controls]="getContentId(item, i)"
1307
+ [attr.aria-disabled]="isItemDisabled(item)"
1308
+ [attr.data-p-highlight]="isItemActive(item)"
1309
+ [attr.data-p-disabled]="isItemDisabled(item)"
1310
+ [pBind]="getPTOptions('header', item, i)"
1311
+ (click)="onHeaderClick($event, item, i)"
1312
+ (keydown)="onHeaderKeyDown($event, item, i)"
1313
+ >
1314
+ <div [class]="cx('headerContent')" [pBind]="getPTOptions('headerContent', item, i)">
1315
+ <ng-container *ngIf="!itemTemplate && !_itemTemplate">
1316
+ <a
1317
+ *ngIf="!getItemProp(item, 'routerLink')"
1318
+ [attr.href]="getItemProp(item, 'url')"
1319
+ [attr.tabindex]="-1"
1320
+ [target]="getItemProp(item, 'target')"
1321
+ [attr.title]="getItemProp(item, 'title')"
1322
+ [attr.data-automationid]="getItemProp(item, 'automationId')"
1323
+ [class]="cn(cx('headerLink'), getItemProp(item, 'linkClass'))"
1324
+ [ngStyle]="getItemProp(item, 'linkStyle')"
1325
+ [pBind]="getPTOptions('headerLink', item, i)"
1326
+ >
1327
+ <ng-container *ngIf="isItemGroup(item)">
1328
+ <ng-container *ngIf="!headerIconTemplate && !_headerIconTemplate">
1329
+ <svg data-p-icon="chevron-down" [class]="cx('submenuIcon')" *ngIf="isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1330
+ <svg data-p-icon="chevron-right" [class]="cx('submenuIcon')" *ngIf="!isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1331
+ </ng-container>
1332
+ <ng-template *ngTemplateOutlet="headerIconTemplate || _headerIconTemplate"></ng-template>
1333
+ </ng-container>
1334
+ <span [class]="cn(cx('headerIcon'), item.icon, getItemProp(item, 'iconClass'))" *ngIf="item.icon" [ngStyle]="getItemProp(item, 'iconStyle')" [pBind]="getPTOptions('headerIcon', item, i)"></span>
1335
+ <span
1336
+ [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))"
1337
+ [ngStyle]="getItemProp(item, 'labelStyle')"
1338
+ *ngIf="getItemProp(item, 'escape') !== false; else htmlLabel"
1339
+ [pBind]="getPTOptions('headerLabel', item, i)"
1340
+ >{{ getItemProp(item, 'label') }}</span
1341
+ >
1342
+ <ng-template #htmlLabel
1343
+ ><span [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))" [ngStyle]="getItemProp(item, 'labelStyle')" [innerHTML]="getItemProp(item, 'label')" [pBind]="getPTOptions('headerLabel', item, i)"></span
1344
+ ></ng-template>
1345
+ <span [class]="cn(cx('badge'), getItemProp(item, 'badgeStyleClass'))" *ngIf="getItemProp(item, 'badge')">{{ getItemProp(item, 'badge') }}</span>
1346
+ </a>
1347
+ </ng-container>
1348
+ <ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item }"></ng-container>
1349
+ <a
1350
+ *ngIf="getItemProp(item, 'routerLink')"
1351
+ [routerLink]="getItemProp(item, 'routerLink')"
1352
+ [queryParams]="getItemProp(item, 'queryParams')"
1353
+ [routerLinkActive]="'p-panelmenu-item-link-active'"
1354
+ [routerLinkActiveOptions]="getItemProp(item, 'routerLinkActiveOptions') || { exact: false }"
1355
+ [target]="getItemProp(item, 'target')"
1356
+ [attr.title]="getItemProp(item, 'title')"
1357
+ [attr.data-automationid]="getItemProp(item, 'automationId')"
1358
+ [class]="cn(cx('headerLink'), getItemProp(item, 'linkClass'))"
1359
+ [ngStyle]="getItemProp(item, 'linkStyle')"
1360
+ [attr.tabindex]="-1"
1361
+ [fragment]="getItemProp(item, 'fragment')"
1362
+ [queryParamsHandling]="getItemProp(item, 'queryParamsHandling')"
1363
+ [preserveFragment]="getItemProp(item, 'preserveFragment')"
1364
+ [skipLocationChange]="getItemProp(item, 'skipLocationChange')"
1365
+ [replaceUrl]="getItemProp(item, 'replaceUrl')"
1366
+ [state]="getItemProp(item, 'state')"
1367
+ [pBind]="getPTOptions('headerLink', item, i)"
1368
+ >
1369
+ <ng-container *ngIf="isItemGroup(item)">
1370
+ <ng-container *ngIf="!headerIconTemplate && !_headerIconTemplate">
1371
+ <svg data-p-icon="chevron-down" [class]="cx('submenuIcon')" *ngIf="isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1372
+ <svg data-p-icon="chevron-right" [class]="cx('submenuIcon')" *ngIf="!isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1373
+ </ng-container>
1374
+ <ng-template *ngTemplateOutlet="headerIconTemplate || _headerIconTemplate"></ng-template>
1375
+ </ng-container>
1376
+ <span [class]="cn(cx('headerIcon'), item.icon, getItemProp(item, 'iconClass'))" *ngIf="item.icon" [ngStyle]="getItemProp(item, 'iconStyle')" [pBind]="getPTOptions('headerIcon', item, i)"></span>
1377
+ <span
1378
+ [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))"
1379
+ [ngStyle]="getItemProp(item, 'labelStyle')"
1380
+ *ngIf="getItemProp(item, 'escape') !== false; else htmlRouteLabel"
1381
+ [pBind]="getPTOptions('headerLabel', item, i)"
1382
+ >{{ getItemProp(item, 'label') }}</span
1383
+ >
1384
+ <ng-template #htmlRouteLabel
1385
+ ><span [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))" [ngStyle]="getItemProp(item, 'labelStyle')" [innerHTML]="getItemProp(item, 'label')" [pBind]="getPTOptions('headerLabel', item, i)"></span
1386
+ ></ng-template>
1387
+ <span *ngIf="getItemProp(item, 'badge')" [class]="cn(cx('badge'), getItemProp(item, 'badgeStyleClass'))">{{ getItemProp(item, 'badge') }}</span>
1388
+ </a>
1389
+ </div>
1390
+ </div>
1391
+ <div
1392
+ [class]="cx('contentContainer', { processedItem: item })"
1393
+ role="region"
1394
+ [attr.id]="getContentId(item, i)"
1395
+ [attr.aria-labelledby]="getHeaderId(item, i)"
1396
+ [pBind]="ptm('contentContainer')"
1397
+ pMotionName="p-collapsible"
1398
+ [pMotion]="isItemActive(item)"
1399
+ [pMotionOptions]="computedMotionOptions()"
1400
+ >
1401
+ <div [class]="cx('contentWrapper')" [pBind]="ptm('contentWrapper')">
1402
+ <div [class]="cx('content')" [pBind]="ptm('content')">
1403
+ <ul
1404
+ pPanelMenuList
1405
+ [panelId]="getPanelId(i, item)"
1406
+ [items]="getItemProp(item, 'items')"
1407
+ [itemTemplate]="itemTemplate || _itemTemplate"
1408
+ [transitionOptions]="transitionOptions"
1409
+ [root]="true"
1410
+ [activeItem]="activeItem()"
1411
+ [tabindex]="tabindex"
1412
+ [parentExpanded]="isItemActive(item)"
1413
+ (headerFocus)="updateFocusedHeader($event)"
1414
+ [pt]="pt()"
1415
+ [unstyled]="unstyled()"
1416
+ [motionOptions]="computedMotionOptions()"
1417
+ ></ul>
1418
+ </div>
1419
+ </div>
1420
+ </div>
1421
+ </div>
1422
+ </ng-container>
1423
+ `, isInline: true, dependencies: [{ 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: "component", type: PanelMenuList, selector: "ul[pPanelMenuList]", inputs: ["panelId", "id", "items", "itemTemplate", "parentExpanded", "expanded", "transitionOptions", "root", "tabindex", "activeItem", "motionOptions"], outputs: ["itemToggle", "headerFocus"] }, { 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: "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", "showOnEllipsis", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip", "pTooltipPT", "pTooltipUnstyled"] }, { kind: "directive", type: i1.Bind, selector: "[pBind]", inputs: ["pBind"] }, { kind: "component", type: ChevronDownIcon, selector: "[data-p-icon=\"chevron-down\"]" }, { kind: "component", type: ChevronRightIcon, selector: "[data-p-icon=\"chevron-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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1424
+ }
1425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenu, decorators: [{
1426
+ type: Component,
1427
+ args: [{
1428
+ selector: 'p-panelMenu, p-panelmenu, p-panel-menu',
1429
+ imports: [CommonModule, PanelMenuList, RouterModule, TooltipModule, ChevronDownIcon, ChevronRightIcon, SharedModule, BindModule, MotionModule],
1430
+ standalone: true,
1431
+ template: `
1432
+ <ng-container *ngFor="let item of model; let f = first; let l = last; let i = index">
1433
+ <div *ngIf="isItemVisible(item)" [class]="cn(cx('panel'), getItemProp(item, 'headerClass'))" [ngStyle]="getItemProp(item, 'style')" [pBind]="ptm('panel')">
1434
+ <div
1435
+ [class]="cn(cx('header', { item }), getItemProp(item, 'styleClass'))"
1436
+ [ngStyle]="getItemProp(item, 'style')"
1437
+ [pTooltip]="getItemProp(item, 'tooltip')"
1438
+ [pTooltipUnstyled]="unstyled()"
1439
+ [attr.id]="getHeaderId(item, i)"
1440
+ [tabindex]="0"
1441
+ role="button"
1442
+ [tooltipOptions]="getItemProp(item, 'tooltipOptions')"
1443
+ [attr.aria-expanded]="isItemActive(item)"
1444
+ [attr.aria-label]="getItemProp(item, 'label')"
1445
+ [attr.aria-controls]="getContentId(item, i)"
1446
+ [attr.aria-disabled]="isItemDisabled(item)"
1447
+ [attr.data-p-highlight]="isItemActive(item)"
1448
+ [attr.data-p-disabled]="isItemDisabled(item)"
1449
+ [pBind]="getPTOptions('header', item, i)"
1450
+ (click)="onHeaderClick($event, item, i)"
1451
+ (keydown)="onHeaderKeyDown($event, item, i)"
1452
+ >
1453
+ <div [class]="cx('headerContent')" [pBind]="getPTOptions('headerContent', item, i)">
1454
+ <ng-container *ngIf="!itemTemplate && !_itemTemplate">
1455
+ <a
1456
+ *ngIf="!getItemProp(item, 'routerLink')"
1457
+ [attr.href]="getItemProp(item, 'url')"
1458
+ [attr.tabindex]="-1"
1459
+ [target]="getItemProp(item, 'target')"
1460
+ [attr.title]="getItemProp(item, 'title')"
1461
+ [attr.data-automationid]="getItemProp(item, 'automationId')"
1462
+ [class]="cn(cx('headerLink'), getItemProp(item, 'linkClass'))"
1463
+ [ngStyle]="getItemProp(item, 'linkStyle')"
1464
+ [pBind]="getPTOptions('headerLink', item, i)"
1465
+ >
1466
+ <ng-container *ngIf="isItemGroup(item)">
1467
+ <ng-container *ngIf="!headerIconTemplate && !_headerIconTemplate">
1468
+ <svg data-p-icon="chevron-down" [class]="cx('submenuIcon')" *ngIf="isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1469
+ <svg data-p-icon="chevron-right" [class]="cx('submenuIcon')" *ngIf="!isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1470
+ </ng-container>
1471
+ <ng-template *ngTemplateOutlet="headerIconTemplate || _headerIconTemplate"></ng-template>
1472
+ </ng-container>
1473
+ <span [class]="cn(cx('headerIcon'), item.icon, getItemProp(item, 'iconClass'))" *ngIf="item.icon" [ngStyle]="getItemProp(item, 'iconStyle')" [pBind]="getPTOptions('headerIcon', item, i)"></span>
1474
+ <span
1475
+ [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))"
1476
+ [ngStyle]="getItemProp(item, 'labelStyle')"
1477
+ *ngIf="getItemProp(item, 'escape') !== false; else htmlLabel"
1478
+ [pBind]="getPTOptions('headerLabel', item, i)"
1479
+ >{{ getItemProp(item, 'label') }}</span
1480
+ >
1481
+ <ng-template #htmlLabel
1482
+ ><span [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))" [ngStyle]="getItemProp(item, 'labelStyle')" [innerHTML]="getItemProp(item, 'label')" [pBind]="getPTOptions('headerLabel', item, i)"></span
1483
+ ></ng-template>
1484
+ <span [class]="cn(cx('badge'), getItemProp(item, 'badgeStyleClass'))" *ngIf="getItemProp(item, 'badge')">{{ getItemProp(item, 'badge') }}</span>
1485
+ </a>
1486
+ </ng-container>
1487
+ <ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item }"></ng-container>
1488
+ <a
1489
+ *ngIf="getItemProp(item, 'routerLink')"
1490
+ [routerLink]="getItemProp(item, 'routerLink')"
1491
+ [queryParams]="getItemProp(item, 'queryParams')"
1492
+ [routerLinkActive]="'p-panelmenu-item-link-active'"
1493
+ [routerLinkActiveOptions]="getItemProp(item, 'routerLinkActiveOptions') || { exact: false }"
1494
+ [target]="getItemProp(item, 'target')"
1495
+ [attr.title]="getItemProp(item, 'title')"
1496
+ [attr.data-automationid]="getItemProp(item, 'automationId')"
1497
+ [class]="cn(cx('headerLink'), getItemProp(item, 'linkClass'))"
1498
+ [ngStyle]="getItemProp(item, 'linkStyle')"
1499
+ [attr.tabindex]="-1"
1500
+ [fragment]="getItemProp(item, 'fragment')"
1501
+ [queryParamsHandling]="getItemProp(item, 'queryParamsHandling')"
1502
+ [preserveFragment]="getItemProp(item, 'preserveFragment')"
1503
+ [skipLocationChange]="getItemProp(item, 'skipLocationChange')"
1504
+ [replaceUrl]="getItemProp(item, 'replaceUrl')"
1505
+ [state]="getItemProp(item, 'state')"
1506
+ [pBind]="getPTOptions('headerLink', item, i)"
1507
+ >
1508
+ <ng-container *ngIf="isItemGroup(item)">
1509
+ <ng-container *ngIf="!headerIconTemplate && !_headerIconTemplate">
1510
+ <svg data-p-icon="chevron-down" [class]="cx('submenuIcon')" *ngIf="isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1511
+ <svg data-p-icon="chevron-right" [class]="cx('submenuIcon')" *ngIf="!isItemActive(item)" [pBind]="getPTOptions('submenuIcon', item, i)" />
1512
+ </ng-container>
1513
+ <ng-template *ngTemplateOutlet="headerIconTemplate || _headerIconTemplate"></ng-template>
1514
+ </ng-container>
1515
+ <span [class]="cn(cx('headerIcon'), item.icon, getItemProp(item, 'iconClass'))" *ngIf="item.icon" [ngStyle]="getItemProp(item, 'iconStyle')" [pBind]="getPTOptions('headerIcon', item, i)"></span>
1516
+ <span
1517
+ [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))"
1518
+ [ngStyle]="getItemProp(item, 'labelStyle')"
1519
+ *ngIf="getItemProp(item, 'escape') !== false; else htmlRouteLabel"
1520
+ [pBind]="getPTOptions('headerLabel', item, i)"
1521
+ >{{ getItemProp(item, 'label') }}</span
1522
+ >
1523
+ <ng-template #htmlRouteLabel
1524
+ ><span [class]="cn(cx('headerLabel'), getItemProp(item, 'labelClass'))" [ngStyle]="getItemProp(item, 'labelStyle')" [innerHTML]="getItemProp(item, 'label')" [pBind]="getPTOptions('headerLabel', item, i)"></span
1525
+ ></ng-template>
1526
+ <span *ngIf="getItemProp(item, 'badge')" [class]="cn(cx('badge'), getItemProp(item, 'badgeStyleClass'))">{{ getItemProp(item, 'badge') }}</span>
1527
+ </a>
1528
+ </div>
1529
+ </div>
1530
+ <div
1531
+ [class]="cx('contentContainer', { processedItem: item })"
1532
+ role="region"
1533
+ [attr.id]="getContentId(item, i)"
1534
+ [attr.aria-labelledby]="getHeaderId(item, i)"
1535
+ [pBind]="ptm('contentContainer')"
1536
+ pMotionName="p-collapsible"
1537
+ [pMotion]="isItemActive(item)"
1538
+ [pMotionOptions]="computedMotionOptions()"
1539
+ >
1540
+ <div [class]="cx('contentWrapper')" [pBind]="ptm('contentWrapper')">
1541
+ <div [class]="cx('content')" [pBind]="ptm('content')">
1542
+ <ul
1543
+ pPanelMenuList
1544
+ [panelId]="getPanelId(i, item)"
1545
+ [items]="getItemProp(item, 'items')"
1546
+ [itemTemplate]="itemTemplate || _itemTemplate"
1547
+ [transitionOptions]="transitionOptions"
1548
+ [root]="true"
1549
+ [activeItem]="activeItem()"
1550
+ [tabindex]="tabindex"
1551
+ [parentExpanded]="isItemActive(item)"
1552
+ (headerFocus)="updateFocusedHeader($event)"
1553
+ [pt]="pt()"
1554
+ [unstyled]="unstyled()"
1555
+ [motionOptions]="computedMotionOptions()"
1556
+ ></ul>
1557
+ </div>
1558
+ </div>
1559
+ </div>
1560
+ </div>
1561
+ </ng-container>
1562
+ `,
1563
+ changeDetection: ChangeDetectionStrategy.OnPush,
1564
+ encapsulation: ViewEncapsulation.None,
1565
+ providers: [PanelMenuStyle, { provide: PANELMENU_INSTANCE, useExisting: PanelMenu }, { provide: PARENT_INSTANCE, useExisting: PanelMenu }],
1566
+ host: {
1567
+ '[class]': 'cn(cx("root"), styleClass)'
1568
+ },
1569
+ hostDirectives: [Bind]
1570
+ }]
1571
+ }], propDecorators: { model: [{
1572
+ type: Input
1573
+ }], styleClass: [{
1574
+ type: Input
1575
+ }], multiple: [{
1576
+ type: Input,
1577
+ args: [{ transform: booleanAttribute }]
1578
+ }], transitionOptions: [{
1579
+ type: Input
1580
+ }], motionOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "motionOptions", required: false }] }], id: [{
1581
+ type: Input
1582
+ }], tabindex: [{
1583
+ type: Input,
1584
+ args: [{ transform: numberAttribute }]
1585
+ }], containerViewChild: [{
1586
+ type: ViewChild,
1587
+ args: ['container']
1588
+ }], submenuIconTemplate: [{
1589
+ type: ContentChild,
1590
+ args: ['submenuicon', { descendants: false }]
1591
+ }], headerIconTemplate: [{
1592
+ type: ContentChild,
1593
+ args: ['headericon', { descendants: false }]
1594
+ }], itemTemplate: [{
1595
+ type: ContentChild,
1596
+ args: ['item', { descendants: false }]
1597
+ }], templates: [{
1598
+ type: ContentChildren,
1599
+ args: [PrimeTemplate]
1600
+ }] } });
1601
+ class PanelMenuModule {
1602
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1603
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuModule, imports: [PanelMenu, SharedModule], exports: [PanelMenu, SharedModule] });
1604
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuModule, imports: [PanelMenu, SharedModule, SharedModule] });
1605
+ }
1606
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: PanelMenuModule, decorators: [{
1607
+ type: NgModule,
1608
+ args: [{
1609
+ imports: [PanelMenu, SharedModule],
1610
+ exports: [PanelMenu, SharedModule]
1611
+ }]
1612
+ }] });
1613
+
1614
+ /**
1615
+ * Generated bundle index. Do not edit.
1616
+ */
1617
+
1618
+ export { PanelMenu, PanelMenuClasses, PanelMenuList, PanelMenuModule, PanelMenuStyle, PanelMenuSub };
1619
+ //# sourceMappingURL=primeng-panelmenu.mjs.map