primeng 19.0.0-rc.1 → 19.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/accordion/accordion.d.ts +7 -7
  2. package/autocomplete/autocomplete.d.ts +21 -8
  3. package/badge/badge.d.ts +1 -3
  4. package/basecomponent/basecomponent.d.ts +2 -5
  5. package/blockui/blockui.d.ts +10 -5
  6. package/breadcrumb/breadcrumb.d.ts +9 -6
  7. package/button/button.d.ts +10 -4
  8. package/calendar/calendar.d.ts +29 -15
  9. package/card/card.d.ts +12 -5
  10. package/carousel/carousel.d.ts +10 -4
  11. package/cascadeselect/cascadeselect.d.ts +18 -8
  12. package/checkbox/checkbox.d.ts +8 -4
  13. package/chip/chip.d.ts +9 -7
  14. package/config/themeprovider.d.ts +6 -0
  15. package/confirmdialog/confirmdialog.d.ts +15 -5
  16. package/confirmpopup/confirmpopup.d.ts +11 -5
  17. package/contextmenu/contextmenu.d.ts +10 -6
  18. package/datepicker/datepicker.d.ts +25 -11
  19. package/dialog/dialog.d.ts +15 -4
  20. package/divider/divider.d.ts +1 -1
  21. package/dock/dock.d.ts +7 -4
  22. package/drawer/drawer.d.ts +18 -10
  23. package/dropdown/dropdown.d.ts +4 -3
  24. package/dynamicdialog/dynamicdialog.d.ts +3 -2
  25. package/editor/editor.d.ts +7 -3
  26. package/fesm2022/primeng-accordion.mjs +56 -41
  27. package/fesm2022/primeng-accordion.mjs.map +1 -1
  28. package/fesm2022/primeng-autocomplete.mjs +153 -92
  29. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  30. package/fesm2022/primeng-badge.mjs +39 -32
  31. package/fesm2022/primeng-badge.mjs.map +1 -1
  32. package/fesm2022/primeng-basecomponent.mjs +2 -25
  33. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  34. package/fesm2022/primeng-blockui.mjs +38 -18
  35. package/fesm2022/primeng-blockui.mjs.map +1 -1
  36. package/fesm2022/primeng-breadcrumb.mjs +49 -31
  37. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  38. package/fesm2022/primeng-button.mjs +55 -28
  39. package/fesm2022/primeng-button.mjs.map +1 -1
  40. package/fesm2022/primeng-calendar.mjs +199 -136
  41. package/fesm2022/primeng-calendar.mjs.map +1 -1
  42. package/fesm2022/primeng-card.mjs +95 -45
  43. package/fesm2022/primeng-card.mjs.map +1 -1
  44. package/fesm2022/primeng-carousel.mjs +74 -42
  45. package/fesm2022/primeng-carousel.mjs.map +1 -1
  46. package/fesm2022/primeng-cascadeselect.mjs +99 -61
  47. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  48. package/fesm2022/primeng-checkbox.mjs +31 -12
  49. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  50. package/fesm2022/primeng-chip.mjs +117 -96
  51. package/fesm2022/primeng-chip.mjs.map +1 -1
  52. package/fesm2022/primeng-config.mjs +13 -11
  53. package/fesm2022/primeng-config.mjs.map +1 -1
  54. package/fesm2022/primeng-confirmdialog.mjs +104 -60
  55. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  56. package/fesm2022/primeng-confirmpopup.mjs +57 -29
  57. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  58. package/fesm2022/primeng-contextmenu.mjs +52 -21
  59. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  60. package/fesm2022/primeng-datepicker.mjs +199 -158
  61. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  62. package/fesm2022/primeng-dialog.mjs +97 -50
  63. package/fesm2022/primeng-dialog.mjs.map +1 -1
  64. package/fesm2022/primeng-divider.mjs +2 -4
  65. package/fesm2022/primeng-divider.mjs.map +1 -1
  66. package/fesm2022/primeng-dock.mjs +29 -10
  67. package/fesm2022/primeng-dock.mjs.map +1 -1
  68. package/fesm2022/primeng-drawer.mjs +112 -70
  69. package/fesm2022/primeng-drawer.mjs.map +1 -1
  70. package/fesm2022/primeng-dropdown.mjs +14 -6
  71. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  72. package/fesm2022/primeng-dynamicdialog.mjs +25 -21
  73. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  74. package/fesm2022/primeng-editor.mjs +26 -10
  75. package/fesm2022/primeng-editor.mjs.map +1 -1
  76. package/fesm2022/primeng-fieldset.mjs +61 -33
  77. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  78. package/fesm2022/primeng-fileupload.mjs +138 -87
  79. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  80. package/fesm2022/primeng-galleria.mjs +22 -13
  81. package/fesm2022/primeng-galleria.mjs.map +1 -1
  82. package/fesm2022/primeng-image.mjs +113 -66
  83. package/fesm2022/primeng-image.mjs.map +1 -1
  84. package/fesm2022/primeng-imagecompare.mjs +30 -10
  85. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  86. package/fesm2022/primeng-inplace.mjs +51 -26
  87. package/fesm2022/primeng-inplace.mjs.map +1 -1
  88. package/fesm2022/primeng-inputmask.mjs +31 -15
  89. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  90. package/fesm2022/primeng-inputnumber.mjs +54 -45
  91. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  92. package/fesm2022/primeng-inputotp.mjs +30 -11
  93. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  94. package/fesm2022/primeng-listbox.mjs +137 -78
  95. package/fesm2022/primeng-listbox.mjs.map +1 -1
  96. package/fesm2022/primeng-megamenu.mjs +105 -59
  97. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  98. package/fesm2022/primeng-menu.mjs +26 -26
  99. package/fesm2022/primeng-menu.mjs.map +1 -1
  100. package/fesm2022/primeng-menubar.mjs +69 -34
  101. package/fesm2022/primeng-menubar.mjs.map +1 -1
  102. package/fesm2022/primeng-message.mjs +49 -25
  103. package/fesm2022/primeng-message.mjs.map +1 -1
  104. package/fesm2022/primeng-messages.mjs +12 -3
  105. package/fesm2022/primeng-messages.mjs.map +1 -1
  106. package/fesm2022/primeng-metergroup.mjs +62 -30
  107. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  108. package/fesm2022/primeng-multiselect.mjs +246 -155
  109. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  110. package/fesm2022/primeng-orderlist.mjs +123 -68
  111. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  112. package/fesm2022/primeng-organizationchart.mjs +31 -15
  113. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  114. package/fesm2022/primeng-overlay.mjs +26 -6
  115. package/fesm2022/primeng-overlay.mjs.map +1 -1
  116. package/fesm2022/primeng-overlaypanel.mjs +29 -9
  117. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  118. package/fesm2022/primeng-paginator.mjs +92 -60
  119. package/fesm2022/primeng-paginator.mjs.map +1 -1
  120. package/fesm2022/primeng-panel.mjs +159 -98
  121. package/fesm2022/primeng-panel.mjs.map +1 -1
  122. package/fesm2022/primeng-panelmenu.mjs +55 -32
  123. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  124. package/fesm2022/primeng-password.mjs +88 -49
  125. package/fesm2022/primeng-password.mjs.map +1 -1
  126. package/fesm2022/primeng-picklist.mjs +360 -228
  127. package/fesm2022/primeng-picklist.mjs.map +1 -1
  128. package/fesm2022/primeng-popover.mjs +23 -7
  129. package/fesm2022/primeng-popover.mjs.map +1 -1
  130. package/fesm2022/primeng-progressbar.mjs +26 -8
  131. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  132. package/fesm2022/primeng-rating.mjs +44 -20
  133. package/fesm2022/primeng-rating.mjs.map +1 -1
  134. package/fesm2022/primeng-scroller.mjs +47 -37
  135. package/fesm2022/primeng-scroller.mjs.map +1 -1
  136. package/fesm2022/primeng-scrollpanel.mjs +28 -9
  137. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  138. package/fesm2022/primeng-scrolltop.mjs +16 -9
  139. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  140. package/fesm2022/primeng-select.mjs +198 -119
  141. package/fesm2022/primeng-select.mjs.map +1 -1
  142. package/fesm2022/primeng-selectbutton.mjs +25 -9
  143. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  144. package/fesm2022/primeng-sidebar.mjs +81 -58
  145. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  146. package/fesm2022/primeng-speeddial.mjs +54 -29
  147. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  148. package/fesm2022/primeng-splitbutton.mjs +41 -18
  149. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  150. package/fesm2022/primeng-splitter.mjs +4 -4
  151. package/fesm2022/primeng-splitter.mjs.map +1 -1
  152. package/fesm2022/primeng-stepper.mjs +33 -19
  153. package/fesm2022/primeng-stepper.mjs.map +1 -1
  154. package/fesm2022/primeng-table.mjs +115 -103
  155. package/fesm2022/primeng-table.mjs.map +1 -1
  156. package/fesm2022/primeng-tabmenu.mjs +54 -27
  157. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  158. package/fesm2022/primeng-tabs.mjs +27 -19
  159. package/fesm2022/primeng-tabs.mjs.map +1 -1
  160. package/fesm2022/primeng-tabview.mjs +106 -54
  161. package/fesm2022/primeng-tabview.mjs.map +1 -1
  162. package/fesm2022/primeng-tag.mjs +68 -44
  163. package/fesm2022/primeng-tag.mjs.map +1 -1
  164. package/fesm2022/primeng-tieredmenu.mjs +44 -21
  165. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  166. package/fesm2022/primeng-timeline.mjs +40 -16
  167. package/fesm2022/primeng-timeline.mjs.map +1 -1
  168. package/fesm2022/primeng-toast.mjs +30 -7
  169. package/fesm2022/primeng-toast.mjs.map +1 -1
  170. package/fesm2022/primeng-togglebutton.mjs +44 -28
  171. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  172. package/fesm2022/primeng-toggleswitch.mjs +28 -9
  173. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  174. package/fesm2022/primeng-toolbar.mjs +46 -20
  175. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  176. package/fesm2022/primeng-tooltip.mjs +32 -69
  177. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  178. package/fesm2022/primeng-tree.mjs +113 -96
  179. package/fesm2022/primeng-tree.mjs.map +1 -1
  180. package/fesm2022/primeng-treeselect.mjs +154 -85
  181. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  182. package/fesm2022/primeng-treetable.mjs +31 -14
  183. package/fesm2022/primeng-treetable.mjs.map +1 -1
  184. package/fesm2022/primeng-usestyle.mjs +1 -1
  185. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  186. package/fieldset/fieldset.d.ts +12 -6
  187. package/fileupload/fileupload.d.ts +19 -8
  188. package/galleria/galleria.d.ts +3 -2
  189. package/image/image.d.ts +18 -7
  190. package/imagecompare/imagecompare.d.ts +7 -2
  191. package/inplace/inplace.d.ts +12 -6
  192. package/inputmask/inputmask.d.ts +8 -4
  193. package/inputnumber/inputnumber.d.ts +11 -6
  194. package/inputotp/inputotp.d.ts +7 -2
  195. package/listbox/listbox.d.ts +17 -4
  196. package/megamenu/megamenu.d.ts +16 -7
  197. package/menu/menu.d.ts +6 -6
  198. package/menubar/menubar.d.ts +13 -6
  199. package/message/message.d.ts +10 -4
  200. package/messages/messages.d.ts +4 -3
  201. package/metergroup/metergroup.d.ts +11 -3
  202. package/multiselect/multiselect.d.ts +36 -17
  203. package/orderlist/orderlist.d.ts +23 -11
  204. package/organizationchart/organizationchart.d.ts +6 -4
  205. package/overlay/overlay.d.ts +6 -3
  206. package/overlaypanel/overlaypanel.d.ts +6 -3
  207. package/package.json +180 -180
  208. package/paginator/paginator.d.ts +15 -8
  209. package/panel/panel.d.ts +14 -5
  210. package/panelmenu/panelmenu.d.ts +8 -4
  211. package/password/password.d.ts +15 -7
  212. package/picklist/picklist.d.ts +23 -3
  213. package/popover/popover.d.ts +7 -4
  214. package/progressbar/progressbar.d.ts +7 -3
  215. package/rating/rating.d.ts +11 -5
  216. package/scroller/scroller.d.ts +9 -4
  217. package/scrollpanel/scrollpanel.d.ts +7 -3
  218. package/scrolltop/scrolltop.d.ts +7 -4
  219. package/select/select.d.ts +31 -13
  220. package/selectbutton/selectbutton.d.ts +7 -3
  221. package/sidebar/sidebar.d.ts +9 -2
  222. package/speeddial/speeddial.d.ts +9 -4
  223. package/splitbutton/splitbutton.d.ts +9 -5
  224. package/splitter/splitter.d.ts +4 -4
  225. package/stepper/stepper.d.ts +8 -3
  226. package/table/table.d.ts +2 -2
  227. package/tabmenu/tabmenu.d.ts +12 -7
  228. package/tabs/tablist.d.ts +6 -2
  229. package/tabview/tabview.d.ts +16 -7
  230. package/tag/tag.d.ts +8 -9
  231. package/tieredmenu/tieredmenu.d.ts +10 -6
  232. package/timeline/timeline.d.ts +7 -2
  233. package/toast/toast.d.ts +7 -3
  234. package/togglebutton/togglebutton.d.ts +8 -3
  235. package/toggleswitch/toggleswitch.d.ts +6 -2
  236. package/toolbar/toolbar.d.ts +9 -4
  237. package/tooltip/tooltip.d.ts +2 -1
  238. package/tree/tree.d.ts +23 -10
  239. package/treeselect/treeselect.d.ts +26 -12
  240. package/treetable/treetable.d.ts +6 -4
@@ -2,9 +2,9 @@ import { trigger, state, style, transition, animate } from '@angular/animations'
2
2
  import * as i1 from '@angular/common';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { Injectable, EventEmitter, inject, booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChild, NgModule } from '@angular/core';
5
+ import { Injectable, EventEmitter, inject, booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChild, ViewChild, ContentChildren, NgModule } from '@angular/core';
6
6
  import { uuid } from '@primeuix/utils';
7
- import { Footer, SharedModule } from 'primeng/api';
7
+ import { Footer, PrimeTemplate, SharedModule } from 'primeng/api';
8
8
  import { BaseComponent } from 'primeng/basecomponent';
9
9
  import * as i2 from 'primeng/button';
10
10
  import { ButtonModule } from 'primeng/button';
@@ -133,24 +133,25 @@ const _c1 = ["icon"];
133
133
  const _c2 = ["content"];
134
134
  const _c3 = ["footer"];
135
135
  const _c4 = ["headericons"];
136
- const _c5 = ["*", [["p-header"]], [["p-footer"]]];
137
- const _c6 = ["*", "p-header", "p-footer"];
138
- const _c7 = (a0, a1) => ({ "p-panel p-component": true, "p-panel-toggleable": a0, "p-panel-expanded": a1 });
139
- const _c8 = a0 => ({ transitionParams: a0, height: "0", opacity: "0" });
140
- const _c9 = a0 => ({ value: "hidden", params: a0 });
141
- const _c10 = a0 => ({ transitionParams: a0, height: "*", opacity: "1" });
142
- const _c11 = a0 => ({ value: "visible", params: a0 });
143
- const _c12 = (a0, a1, a2) => ({ "p-panel-icons-start": a0, "p-panel-icons-end": a1, "p-panel-icons-center": a2 });
144
- const _c13 = a0 => ({ $implicit: a0 });
136
+ const _c5 = ["contentWrapper"];
137
+ const _c6 = ["*", [["p-header"]], [["p-footer"]]];
138
+ const _c7 = ["*", "p-header", "p-footer"];
139
+ const _c8 = (a0, a1) => ({ "p-panel p-component": true, "p-panel-toggleable": a0, "p-panel-expanded": a1 });
140
+ const _c9 = a0 => ({ transitionParams: a0, height: "0", opacity: "0" });
141
+ const _c10 = a0 => ({ value: "hidden", params: a0 });
142
+ const _c11 = a0 => ({ transitionParams: a0, height: "*", opacity: "1" });
143
+ const _c12 = a0 => ({ value: "visible", params: a0 });
144
+ const _c13 = (a0, a1, a2) => ({ "p-panel-icons-start": a0, "p-panel-icons-end": a1, "p-panel-icons-center": a2 });
145
+ const _c14 = a0 => ({ $implicit: a0 });
145
146
  function Panel_div_1_span_1_Template(rf, ctx) { if (rf & 1) {
146
- i0.ɵɵelementStart(0, "span", 10);
147
+ i0.ɵɵelementStart(0, "span", 11);
147
148
  i0.ɵɵtext(1);
148
149
  i0.ɵɵelementEnd();
149
150
  } if (rf & 2) {
150
- const ctx_r1 = i0.ɵɵnextContext(2);
151
- i0.ɵɵattribute("id", ctx_r1.id + "_header");
151
+ const ctx_r2 = i0.ɵɵnextContext(2);
152
+ i0.ɵɵattribute("id", ctx_r2.id + "_header");
152
153
  i0.ɵɵadvance();
153
- i0.ɵɵtextInterpolate(ctx_r1._header);
154
+ i0.ɵɵtextInterpolate(ctx_r2._header);
154
155
  } }
155
156
  function Panel_div_1_ng_container_3_Template(rf, ctx) { if (rf & 1) {
156
157
  i0.ɵɵelementContainer(0);
@@ -162,112 +163,112 @@ function Panel_div_1_5_Template(rf, ctx) { if (rf & 1) {
162
163
  function Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template(rf, ctx) { if (rf & 1) {
163
164
  i0.ɵɵelement(0, "span");
164
165
  } if (rf & 2) {
165
- const ctx_r1 = i0.ɵɵnextContext(5);
166
- i0.ɵɵclassMap(ctx_r1.expandIcon);
166
+ const ctx_r2 = i0.ɵɵnextContext(5);
167
+ i0.ɵɵclassMap(ctx_r2.expandIcon);
167
168
  } }
168
169
  function Panel_div_1_p_button_6_ng_container_1_ng_container_1_MinusIcon_2_Template(rf, ctx) { if (rf & 1) {
169
170
  i0.ɵɵelement(0, "MinusIcon");
170
171
  } }
171
172
  function Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
172
173
  i0.ɵɵelementContainerStart(0);
173
- i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template, 1, 2, "span", 14)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_1_MinusIcon_2_Template, 1, 0, "MinusIcon", 12);
174
+ i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_span_1_Template, 1, 2, "span", 15)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_1_MinusIcon_2_Template, 1, 0, "MinusIcon", 13);
174
175
  i0.ɵɵelementContainerEnd();
175
176
  } if (rf & 2) {
176
- const ctx_r1 = i0.ɵɵnextContext(4);
177
+ const ctx_r2 = i0.ɵɵnextContext(4);
177
178
  i0.ɵɵadvance();
178
- i0.ɵɵproperty("ngIf", ctx_r1.expandIcon);
179
+ i0.ɵɵproperty("ngIf", ctx_r2.expandIcon);
179
180
  i0.ɵɵadvance();
180
- i0.ɵɵproperty("ngIf", !ctx_r1.expandIcon);
181
+ i0.ɵɵproperty("ngIf", !ctx_r2.expandIcon);
181
182
  } }
182
183
  function Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template(rf, ctx) { if (rf & 1) {
183
184
  i0.ɵɵelement(0, "span");
184
185
  } if (rf & 2) {
185
- const ctx_r1 = i0.ɵɵnextContext(5);
186
- i0.ɵɵclassMap(ctx_r1.collapseIcon);
186
+ const ctx_r2 = i0.ɵɵnextContext(5);
187
+ i0.ɵɵclassMap(ctx_r2.collapseIcon);
187
188
  } }
188
189
  function Panel_div_1_p_button_6_ng_container_1_ng_container_2_PlusIcon_2_Template(rf, ctx) { if (rf & 1) {
189
190
  i0.ɵɵelement(0, "PlusIcon");
190
191
  } }
191
192
  function Panel_div_1_p_button_6_ng_container_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
192
193
  i0.ɵɵelementContainerStart(0);
193
- i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template, 1, 2, "span", 14)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_PlusIcon_2_Template, 1, 0, "PlusIcon", 12);
194
+ i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_2_span_1_Template, 1, 2, "span", 15)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_PlusIcon_2_Template, 1, 0, "PlusIcon", 13);
194
195
  i0.ɵɵelementContainerEnd();
195
196
  } if (rf & 2) {
196
- const ctx_r1 = i0.ɵɵnextContext(4);
197
+ const ctx_r2 = i0.ɵɵnextContext(4);
197
198
  i0.ɵɵadvance();
198
- i0.ɵɵproperty("ngIf", ctx_r1.collapseIcon);
199
+ i0.ɵɵproperty("ngIf", ctx_r2.collapseIcon);
199
200
  i0.ɵɵadvance();
200
- i0.ɵɵproperty("ngIf", !ctx_r1.collapseIcon);
201
+ i0.ɵɵproperty("ngIf", !ctx_r2.collapseIcon);
201
202
  } }
202
203
  function Panel_div_1_p_button_6_ng_container_1_Template(rf, ctx) { if (rf & 1) {
203
204
  i0.ɵɵelementContainerStart(0);
204
- i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template, 3, 2, "ng-container", 12)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_Template, 3, 2, "ng-container", 12);
205
+ i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_ng_container_1_Template, 3, 2, "ng-container", 13)(2, Panel_div_1_p_button_6_ng_container_1_ng_container_2_Template, 3, 2, "ng-container", 13);
205
206
  i0.ɵɵelementContainerEnd();
206
207
  } if (rf & 2) {
207
- const ctx_r1 = i0.ɵɵnextContext(3);
208
+ const ctx_r2 = i0.ɵɵnextContext(3);
208
209
  i0.ɵɵadvance();
209
- i0.ɵɵproperty("ngIf", !ctx_r1.collapsed);
210
+ i0.ɵɵproperty("ngIf", !ctx_r2.collapsed);
210
211
  i0.ɵɵadvance();
211
- i0.ɵɵproperty("ngIf", ctx_r1.collapsed);
212
+ i0.ɵɵproperty("ngIf", ctx_r2.collapsed);
212
213
  } }
213
214
  function Panel_div_1_p_button_6_2_ng_template_0_Template(rf, ctx) { }
214
215
  function Panel_div_1_p_button_6_2_Template(rf, ctx) { if (rf & 1) {
215
216
  i0.ɵɵtemplate(0, Panel_div_1_p_button_6_2_ng_template_0_Template, 0, 0, "ng-template");
216
217
  } }
217
218
  function Panel_div_1_p_button_6_Template(rf, ctx) { if (rf & 1) {
218
- const _r3 = i0.ɵɵgetCurrentView();
219
- i0.ɵɵelementStart(0, "p-button", 11);
220
- i0.ɵɵlistener("click", function Panel_div_1_p_button_6_Template_p_button_click_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onIconClick($event)); })("keydown", function Panel_div_1_p_button_6_Template_p_button_keydown_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onKeyDown($event)); });
221
- i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_Template, 3, 2, "ng-container", 12)(2, Panel_div_1_p_button_6_2_Template, 1, 0, null, 13);
219
+ const _r4 = i0.ɵɵgetCurrentView();
220
+ i0.ɵɵelementStart(0, "p-button", 12);
221
+ i0.ɵɵlistener("click", function Panel_div_1_p_button_6_Template_p_button_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onIconClick($event)); })("keydown", function Panel_div_1_p_button_6_Template_p_button_keydown_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onKeyDown($event)); });
222
+ i0.ɵɵtemplate(1, Panel_div_1_p_button_6_ng_container_1_Template, 3, 2, "ng-container", 13)(2, Panel_div_1_p_button_6_2_Template, 1, 0, null, 14);
222
223
  i0.ɵɵelementEnd();
223
224
  } if (rf & 2) {
224
- const ctx_r1 = i0.ɵɵnextContext(2);
225
- i0.ɵɵproperty("text", true)("rounded", true)("buttonProps", ctx_r1.toggleButtonProps);
226
- i0.ɵɵattribute("id", ctx_r1.id + "_header")("aria-label", ctx_r1.buttonAriaLabel)("aria-controls", ctx_r1.id + "_content")("aria-expanded", !ctx_r1.collapsed);
225
+ const ctx_r2 = i0.ɵɵnextContext(2);
226
+ i0.ɵɵproperty("text", true)("rounded", true)("buttonProps", ctx_r2.toggleButtonProps);
227
+ i0.ɵɵattribute("id", ctx_r2.id + "_header")("aria-label", ctx_r2.buttonAriaLabel)("aria-controls", ctx_r2.id + "_content")("aria-expanded", !ctx_r2.collapsed);
227
228
  i0.ɵɵadvance();
228
- i0.ɵɵproperty("ngIf", !ctx_r1.headericonsTemplate && !(ctx_r1.toggleButtonProps == null ? null : ctx_r1.toggleButtonProps.icon));
229
+ i0.ɵɵproperty("ngIf", !ctx_r2.headerIconsTemplate && !ctx_r2._headerIconsTemplate && !(ctx_r2.toggleButtonProps == null ? null : ctx_r2.toggleButtonProps.icon));
229
230
  i0.ɵɵadvance();
230
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.headericonsTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(10, _c13, ctx_r1.collapsed));
231
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.headerIconsTemplate || ctx_r2._headerIconsTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(10, _c14, ctx_r2.collapsed));
231
232
  } }
232
233
  function Panel_div_1_Template(rf, ctx) { if (rf & 1) {
233
- const _r1 = i0.ɵɵgetCurrentView();
234
- i0.ɵɵelementStart(0, "div", 6);
235
- i0.ɵɵlistener("click", function Panel_div_1_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onHeaderClick($event)); });
236
- i0.ɵɵtemplate(1, Panel_div_1_span_1_Template, 2, 2, "span", 7);
234
+ const _r2 = i0.ɵɵgetCurrentView();
235
+ i0.ɵɵelementStart(0, "div", 7);
236
+ i0.ɵɵlistener("click", function Panel_div_1_Template_div_click_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onHeaderClick($event)); });
237
+ i0.ɵɵtemplate(1, Panel_div_1_span_1_Template, 2, 2, "span", 8);
237
238
  i0.ɵɵprojection(2, 1);
238
- i0.ɵɵtemplate(3, Panel_div_1_ng_container_3_Template, 1, 0, "ng-container", 4);
239
- i0.ɵɵelementStart(4, "div", 8);
240
- i0.ɵɵtemplate(5, Panel_div_1_5_Template, 1, 0, null, 4)(6, Panel_div_1_p_button_6_Template, 3, 12, "p-button", 9);
239
+ i0.ɵɵtemplate(3, Panel_div_1_ng_container_3_Template, 1, 0, "ng-container", 5);
240
+ i0.ɵɵelementStart(4, "div", 9);
241
+ i0.ɵɵtemplate(5, Panel_div_1_5_Template, 1, 0, null, 5)(6, Panel_div_1_p_button_6_Template, 3, 12, "p-button", 10);
241
242
  i0.ɵɵelementEnd()();
242
243
  } if (rf & 2) {
243
- const ctx_r1 = i0.ɵɵnextContext();
244
- i0.ɵɵattribute("id", ctx_r1.id + "-titlebar");
244
+ const ctx_r2 = i0.ɵɵnextContext();
245
+ i0.ɵɵattribute("id", ctx_r2.id + "-titlebar");
245
246
  i0.ɵɵadvance();
246
- i0.ɵɵproperty("ngIf", ctx_r1._header);
247
+ i0.ɵɵproperty("ngIf", ctx_r2._header);
247
248
  i0.ɵɵadvance(2);
248
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.headerTemplate);
249
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.headerTemplate || ctx_r2._headerTemplate);
249
250
  i0.ɵɵadvance();
250
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(6, _c12, ctx_r1.iconPos === "start", ctx_r1.iconPos === "end", ctx_r1.iconPos === "center"));
251
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(6, _c13, ctx_r2.iconPos === "start", ctx_r2.iconPos === "end", ctx_r2.iconPos === "center"));
251
252
  i0.ɵɵadvance();
252
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.iconTemplate);
253
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.iconTemplate || ctx_r2._iconTemplate);
253
254
  i0.ɵɵadvance();
254
- i0.ɵɵproperty("ngIf", ctx_r1.toggleable);
255
+ i0.ɵɵproperty("ngIf", ctx_r2.toggleable);
255
256
  } }
256
- function Panel_ng_container_5_Template(rf, ctx) { if (rf & 1) {
257
+ function Panel_ng_container_6_Template(rf, ctx) { if (rf & 1) {
257
258
  i0.ɵɵelementContainer(0);
258
259
  } }
259
- function Panel_div_6_ng_container_2_Template(rf, ctx) { if (rf & 1) {
260
+ function Panel_div_7_ng_container_2_Template(rf, ctx) { if (rf & 1) {
260
261
  i0.ɵɵelementContainer(0);
261
262
  } }
262
- function Panel_div_6_Template(rf, ctx) { if (rf & 1) {
263
- i0.ɵɵelementStart(0, "div", 15);
263
+ function Panel_div_7_Template(rf, ctx) { if (rf & 1) {
264
+ i0.ɵɵelementStart(0, "div", 16);
264
265
  i0.ɵɵprojection(1, 2);
265
- i0.ɵɵtemplate(2, Panel_div_6_ng_container_2_Template, 1, 0, "ng-container", 4);
266
+ i0.ɵɵtemplate(2, Panel_div_7_ng_container_2_Template, 1, 0, "ng-container", 5);
266
267
  i0.ɵɵelementEnd();
267
268
  } if (rf & 2) {
268
- const ctx_r1 = i0.ɵɵnextContext();
269
+ const ctx_r2 = i0.ɵɵnextContext();
269
270
  i0.ɵɵadvance(2);
270
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.footerTemplate);
271
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.footerTemplate || ctx_r2._footerTemplate);
271
272
  } }
272
273
  /**
273
274
  * Panel is a container with the optional content toggle feature.
@@ -399,7 +400,13 @@ class Panel extends BaseComponent {
399
400
  * @see {@link PanelHeaderIconsTemplateContext}
400
401
  * @group Templates
401
402
  */
402
- headericonsTemplate;
403
+ headerIconsTemplate;
404
+ _headerTemplate;
405
+ _iconTemplate;
406
+ _contentTemplate;
407
+ _footerTemplate;
408
+ _headerIconsTemplate;
409
+ contentWrapperViewChild;
403
410
  id = uuid('pn_id_');
404
411
  get buttonAriaLabel() {
405
412
  return this._header;
@@ -433,14 +440,29 @@ class Panel extends BaseComponent {
433
440
  expand() {
434
441
  this.collapsed = false;
435
442
  this.collapsedChange.emit(this.collapsed);
443
+ this.updateTabIndex();
436
444
  }
437
445
  collapse() {
438
446
  this.collapsed = true;
439
447
  this.collapsedChange.emit(this.collapsed);
448
+ this.updateTabIndex();
440
449
  }
441
450
  getBlockableElement() {
442
451
  return this.el.nativeElement.children[0];
443
452
  }
453
+ updateTabIndex() {
454
+ if (this.contentWrapperViewChild) {
455
+ const focusableElements = this.contentWrapperViewChild.nativeElement.querySelectorAll('input, button, select, a, textarea, [tabindex]:not([tabindex="-1"])');
456
+ focusableElements.forEach((element) => {
457
+ if (this.collapsed) {
458
+ element.setAttribute('tabindex', '-1');
459
+ }
460
+ else {
461
+ element.removeAttribute('tabindex');
462
+ }
463
+ });
464
+ }
465
+ }
444
466
  onKeyDown(event) {
445
467
  if (event.code === 'Enter' || event.code === 'Space') {
446
468
  this.toggle(event);
@@ -451,14 +473,40 @@ class Panel extends BaseComponent {
451
473
  this.animating = false;
452
474
  this.onAfterToggle.emit({ originalEvent: event, collapsed: this.collapsed });
453
475
  }
476
+ templates;
477
+ ngAfterContentInit() {
478
+ this.templates.forEach((item) => {
479
+ switch (item.getType()) {
480
+ case 'header':
481
+ this._headerTemplate = item.template;
482
+ break;
483
+ case 'content':
484
+ this._contentTemplate = item.template;
485
+ break;
486
+ case 'footer':
487
+ this._footerTemplate = item.template;
488
+ break;
489
+ case 'icons':
490
+ this._iconTemplate = item.template;
491
+ break;
492
+ case 'headericons':
493
+ this._headerIconsTemplate = item.template;
494
+ break;
495
+ default:
496
+ this._contentTemplate = item.template;
497
+ break;
498
+ }
499
+ });
500
+ }
454
501
  static ɵfac = /*@__PURE__*/ (() => { let ɵPanel_BaseFactory; return function Panel_Factory(__ngFactoryType__) { return (ɵPanel_BaseFactory || (ɵPanel_BaseFactory = i0.ɵɵgetInheritedFactory(Panel)))(__ngFactoryType__ || Panel); }; })();
455
502
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Panel, selectors: [["p-panel"]], contentQueries: function Panel_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
456
503
  i0.ɵɵcontentQuery(dirIndex, Footer, 5);
457
- i0.ɵɵcontentQuery(dirIndex, _c0, 5);
458
- i0.ɵɵcontentQuery(dirIndex, _c1, 5);
459
- i0.ɵɵcontentQuery(dirIndex, _c2, 5);
460
- i0.ɵɵcontentQuery(dirIndex, _c3, 5);
461
- i0.ɵɵcontentQuery(dirIndex, _c4, 5);
504
+ i0.ɵɵcontentQuery(dirIndex, _c0, 4);
505
+ i0.ɵɵcontentQuery(dirIndex, _c1, 4);
506
+ i0.ɵɵcontentQuery(dirIndex, _c2, 4);
507
+ i0.ɵɵcontentQuery(dirIndex, _c3, 4);
508
+ i0.ɵɵcontentQuery(dirIndex, _c4, 4);
509
+ i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);
462
510
  } if (rf & 2) {
463
511
  let _t;
464
512
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerFacet = _t.first);
@@ -466,32 +514,39 @@ class Panel extends BaseComponent {
466
514
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.iconTemplate = _t.first);
467
515
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentTemplate = _t.first);
468
516
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerTemplate = _t.first);
469
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headericonsTemplate = _t.first);
470
- } }, inputs: { toggleable: [2, "toggleable", "toggleable", booleanAttribute], _header: [0, "header", "_header"], collapsed: [2, "collapsed", "collapsed", booleanAttribute], style: "style", styleClass: "styleClass", iconPos: "iconPos", expandIcon: "expandIcon", collapseIcon: "collapseIcon", showHeader: [2, "showHeader", "showHeader", booleanAttribute], toggler: "toggler", transitionOptions: "transitionOptions", toggleButtonProps: "toggleButtonProps" }, outputs: { collapsedChange: "collapsedChange", onBeforeToggle: "onBeforeToggle", onAfterToggle: "onAfterToggle" }, features: [i0.ɵɵProvidersFeature([PanelStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c6, decls: 7, vars: 25, consts: [[3, "ngClass", "ngStyle"], ["class", "p-panel-header", 3, "click", 4, "ngIf"], ["role", "region", 1, "p-panel-content-container", 3, "id"], [1, "p-panel-content"], [4, "ngTemplateOutlet"], ["class", "p-panel-footer", 4, "ngIf"], [1, "p-panel-header", 3, "click"], ["class", "p-panel-title", 4, "ngIf"], [1, "p-panel-icons", 3, "ngClass"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "text", "rounded", "buttonProps", "click", "keydown", 4, "ngIf"], [1, "p-panel-title"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "click", "keydown", "text", "rounded", "buttonProps"], [4, "ngIf"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "class", 4, "ngIf"], [1, "p-panel-footer"]], template: function Panel_Template(rf, ctx) { if (rf & 1) {
471
- i0.ɵɵprojectionDef(_c5);
472
- i0.ɵɵelementStart(0, "div", 0);
473
- i0.ɵɵtemplate(1, Panel_div_1_Template, 7, 10, "div", 1);
474
- i0.ɵɵelementStart(2, "div", 2);
475
- i0.ɵɵlistener("@panelContent.done", function Panel_Template_div_animation_panelContent_done_2_listener($event) { return ctx.onToggleDone($event); });
476
- i0.ɵɵelementStart(3, "div", 3);
477
- i0.ɵɵprojection(4);
478
- i0.ɵɵtemplate(5, Panel_ng_container_5_Template, 1, 0, "ng-container", 4);
517
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerIconsTemplate = _t.first);
518
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);
519
+ } }, viewQuery: function Panel_Query(rf, ctx) { if (rf & 1) {
520
+ i0.ɵɵviewQuery(_c5, 5);
521
+ } if (rf & 2) {
522
+ let _t;
523
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentWrapperViewChild = _t.first);
524
+ } }, inputs: { toggleable: [2, "toggleable", "toggleable", booleanAttribute], _header: [0, "header", "_header"], collapsed: [2, "collapsed", "collapsed", booleanAttribute], style: "style", styleClass: "styleClass", iconPos: "iconPos", expandIcon: "expandIcon", collapseIcon: "collapseIcon", showHeader: [2, "showHeader", "showHeader", booleanAttribute], toggler: "toggler", transitionOptions: "transitionOptions", toggleButtonProps: "toggleButtonProps" }, outputs: { collapsedChange: "collapsedChange", onBeforeToggle: "onBeforeToggle", onAfterToggle: "onAfterToggle" }, features: [i0.ɵɵProvidersFeature([PanelStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c7, decls: 8, vars: 25, consts: [["contentWrapper", ""], [3, "ngClass", "ngStyle"], ["class", "p-panel-header", 3, "click", 4, "ngIf"], ["role", "region", 1, "p-panel-content-container", 3, "id"], [1, "p-panel-content"], [4, "ngTemplateOutlet"], ["class", "p-panel-footer", 4, "ngIf"], [1, "p-panel-header", 3, "click"], ["class", "p-panel-title", 4, "ngIf"], [1, "p-panel-icons", 3, "ngClass"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "text", "rounded", "buttonProps", "click", "keydown", 4, "ngIf"], [1, "p-panel-title"], ["severity", "secondary", "type", "button", "role", "button", "styleClass", "p-panel-header-icon p-panel-toggler p-link", 3, "click", "keydown", "text", "rounded", "buttonProps"], [4, "ngIf"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "class", 4, "ngIf"], [1, "p-panel-footer"]], template: function Panel_Template(rf, ctx) { if (rf & 1) {
525
+ const _r1 = i0.ɵɵgetCurrentView();
526
+ i0.ɵɵprojectionDef(_c6);
527
+ i0.ɵɵelementStart(0, "div", 1);
528
+ i0.ɵɵtemplate(1, Panel_div_1_Template, 7, 10, "div", 2);
529
+ i0.ɵɵelementStart(2, "div", 3);
530
+ i0.ɵɵlistener("@panelContent.done", function Panel_Template_div_animation_panelContent_done_2_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onToggleDone($event)); });
531
+ i0.ɵɵelementStart(3, "div", 4, 0);
532
+ i0.ɵɵprojection(5);
533
+ i0.ɵɵtemplate(6, Panel_ng_container_6_Template, 1, 0, "ng-container", 5);
479
534
  i0.ɵɵelementEnd();
480
- i0.ɵɵtemplate(6, Panel_div_6_Template, 3, 1, "div", 5);
535
+ i0.ɵɵtemplate(7, Panel_div_7_Template, 3, 1, "div", 6);
481
536
  i0.ɵɵelementEnd()();
482
537
  } if (rf & 2) {
483
538
  i0.ɵɵclassMap(ctx.styleClass);
484
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(14, _c7, ctx.toggleable, !ctx.collapsed && ctx.toggleable))("ngStyle", ctx.style);
539
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(14, _c8, ctx.toggleable, !ctx.collapsed && ctx.toggleable))("ngStyle", ctx.style);
485
540
  i0.ɵɵattribute("id", ctx.id)("data-pc-name", "panel");
486
541
  i0.ɵɵadvance();
487
542
  i0.ɵɵproperty("ngIf", ctx.showHeader);
488
543
  i0.ɵɵadvance();
489
- i0.ɵɵproperty("id", ctx.id + "_content")("@panelContent", ctx.collapsed ? i0.ɵɵpureFunction1(19, _c9, i0.ɵɵpureFunction1(17, _c8, ctx.animating ? ctx.transitionOptions : "0ms")) : i0.ɵɵpureFunction1(23, _c11, i0.ɵɵpureFunction1(21, _c10, ctx.animating ? ctx.transitionOptions : "0ms")));
544
+ i0.ɵɵproperty("id", ctx.id + "_content")("@panelContent", ctx.collapsed ? i0.ɵɵpureFunction1(19, _c10, i0.ɵɵpureFunction1(17, _c9, ctx.animating ? ctx.transitionOptions : "0ms")) : i0.ɵɵpureFunction1(23, _c12, i0.ɵɵpureFunction1(21, _c11, ctx.animating ? ctx.transitionOptions : "0ms")));
490
545
  i0.ɵɵattribute("aria-labelledby", ctx.id + "_header")("aria-hidden", ctx.collapsed)("tabindex", ctx.collapsed ? "-1" : undefined);
491
- i0.ɵɵadvance(3);
492
- i0.ɵɵproperty("ngTemplateOutlet", ctx.contentTemplate);
546
+ i0.ɵɵadvance(4);
547
+ i0.ɵɵproperty("ngTemplateOutlet", ctx.contentTemplate || ctx._contentTemplate);
493
548
  i0.ɵɵadvance();
494
- i0.ɵɵproperty("ngIf", ctx.footerFacet || ctx.footerTemplate);
549
+ i0.ɵɵproperty("ngIf", ctx.footerFacet || ctx.footerTemplate || ctx._footerTemplate);
495
550
  } }, dependencies: [CommonModule, i1.NgClass, i1.NgIf, i1.NgTemplateOutlet, i1.NgStyle, PlusIcon, MinusIcon, ButtonModule, i2.Button, SharedModule], encapsulation: 2, data: { animation: [
496
551
  trigger('panelContent', [
497
552
  state('hidden', style({
@@ -530,7 +585,7 @@ class Panel extends BaseComponent {
530
585
  <div class="p-panel-header" *ngIf="showHeader" (click)="onHeaderClick($event)" [attr.id]="id + '-titlebar'">
531
586
  <span class="p-panel-title" *ngIf="_header" [attr.id]="id + '_header'">{{ _header }}</span>
532
587
  <ng-content select="p-header"></ng-content>
533
- <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
588
+ <ng-container *ngTemplateOutlet="headerTemplate || _headerTemplate"></ng-container>
534
589
  <div
535
590
  class="p-panel-icons"
536
591
  [ngClass]="{
@@ -539,7 +594,7 @@ class Panel extends BaseComponent {
539
594
  'p-panel-icons-center': iconPos === 'center'
540
595
  }"
541
596
  >
542
- <ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
597
+ <ng-template *ngTemplateOutlet="iconTemplate || _iconTemplate"></ng-template>
543
598
  <p-button
544
599
  *ngIf="toggleable"
545
600
  [attr.id]="id + '_header'"
@@ -556,7 +611,7 @@ class Panel extends BaseComponent {
556
611
  (keydown)="onKeyDown($event)"
557
612
  [buttonProps]="toggleButtonProps"
558
613
  >
559
- <ng-container *ngIf="!headericonsTemplate && !toggleButtonProps?.icon">
614
+ <ng-container *ngIf="!headerIconsTemplate && !_headerIconsTemplate && !toggleButtonProps?.icon">
560
615
  <ng-container *ngIf="!collapsed">
561
616
  <span *ngIf="expandIcon" [class]="expandIcon"></span>
562
617
  <MinusIcon *ngIf="!expandIcon" />
@@ -568,7 +623,7 @@ class Panel extends BaseComponent {
568
623
  </ng-container>
569
624
  </ng-container>
570
625
 
571
- <ng-template *ngTemplateOutlet="headericonsTemplate; context: { $implicit: collapsed }"></ng-template>
626
+ <ng-template *ngTemplateOutlet="headerIconsTemplate || _headerIconsTemplate; context: { $implicit: collapsed }"></ng-template>
572
627
  </p-button>
573
628
  </div>
574
629
  </div>
@@ -600,14 +655,14 @@ class Panel extends BaseComponent {
600
655
  "
601
656
  (@panelContent.done)="onToggleDone($event)"
602
657
  >
603
- <div class="p-panel-content">
658
+ <div class="p-panel-content" #contentWrapper>
604
659
  <ng-content></ng-content>
605
- <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
660
+ <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate"></ng-container>
606
661
  </div>
607
662
 
608
- <div class="p-panel-footer" *ngIf="footerFacet || footerTemplate">
663
+ <div class="p-panel-footer" *ngIf="footerFacet || footerTemplate || _footerTemplate">
609
664
  <ng-content select="p-footer"></ng-content>
610
- <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
665
+ <ng-container *ngTemplateOutlet="footerTemplate || _footerTemplate"></ng-container>
611
666
  </div>
612
667
  </div>
613
668
  </div>
@@ -671,21 +726,27 @@ class Panel extends BaseComponent {
671
726
  args: [Footer]
672
727
  }], headerTemplate: [{
673
728
  type: ContentChild,
674
- args: ['header']
729
+ args: ['header', { descendants: false }]
675
730
  }], iconTemplate: [{
676
731
  type: ContentChild,
677
- args: ['icon']
732
+ args: ['icon', { descendants: false }]
678
733
  }], contentTemplate: [{
679
734
  type: ContentChild,
680
- args: ['content']
735
+ args: ['content', { descendants: false }]
681
736
  }], footerTemplate: [{
682
737
  type: ContentChild,
683
- args: ['footer']
684
- }], headericonsTemplate: [{
738
+ args: ['footer', { descendants: false }]
739
+ }], headerIconsTemplate: [{
685
740
  type: ContentChild,
686
- args: ['headericons']
741
+ args: ['headericons', { descendants: false }]
742
+ }], contentWrapperViewChild: [{
743
+ type: ViewChild,
744
+ args: ['contentWrapper']
745
+ }], templates: [{
746
+ type: ContentChildren,
747
+ args: [PrimeTemplate]
687
748
  }] }); })();
688
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Panel, { className: "Panel", filePath: "panel.ts", lineNumber: 184 }); })();
749
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(Panel, { className: "Panel", filePath: "panel.ts", lineNumber: 183 }); })();
689
750
  class PanelModule {
690
751
  static ɵfac = function PanelModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PanelModule)(); };
691
752
  static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: PanelModule });