primeng 18.0.0-beta.2 → 18.0.0-beta.3

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 (553) hide show
  1. package/accordion/accordion.d.ts +147 -22
  2. package/accordion/public_api.d.ts +1 -1
  3. package/autocomplete/public_api.d.ts +1 -0
  4. package/avatar/public_api.d.ts +1 -0
  5. package/avatargroup/avatargroup.d.ts +1 -1
  6. package/avatargroup/public_api.d.ts +1 -0
  7. package/badge/badge.d.ts +20 -26
  8. package/badge/public_api.d.ts +1 -0
  9. package/base/style/basestyle.d.ts +4 -0
  10. package/blockui/public_api.d.ts +1 -0
  11. package/breadcrumb/breadcrumb.d.ts +0 -1
  12. package/breadcrumb/public_api.d.ts +1 -0
  13. package/button/button.d.ts +0 -1
  14. package/button/public_api.d.ts +1 -0
  15. package/buttongroup/buttongroup.d.ts +1 -1
  16. package/buttongroup/public_api.d.ts +1 -0
  17. package/calendar/public_api.d.ts +1 -0
  18. package/card/public_api.d.ts +1 -0
  19. package/carousel/public_api.d.ts +1 -0
  20. package/cascadeselect/public_api.d.ts +1 -0
  21. package/chart/public_api.d.ts +1 -0
  22. package/chart/style/chartstyle.d.ts +32 -0
  23. package/checkbox/public_api.d.ts +1 -0
  24. package/chip/public_api.d.ts +1 -0
  25. package/colorpicker/public_api.d.ts +1 -0
  26. package/confirmdialog/public_api.d.ts +1 -0
  27. package/confirmpopup/public_api.d.ts +1 -0
  28. package/contextmenu/public_api.d.ts +1 -0
  29. package/dataview/public_api.d.ts +1 -0
  30. package/datepicker/public_api.d.ts +1 -0
  31. package/dock/public_api.d.ts +1 -0
  32. package/drawer/public_api.d.ts +1 -0
  33. package/dropdown/public_api.d.ts +1 -0
  34. package/dynamicdialog/dynamicdialog.d.ts +5 -0
  35. package/dynamicdialog/public_api.d.ts +1 -0
  36. package/editor/public_api.d.ts +1 -0
  37. package/esm2022/accordion/accordion.mjs +430 -80
  38. package/esm2022/accordion/public_api.mjs +2 -2
  39. package/esm2022/accordion/style/accordionstyle.mjs +3 -2
  40. package/esm2022/autocomplete/autocomplete.mjs +3 -3
  41. package/esm2022/autocomplete/public_api.mjs +2 -1
  42. package/esm2022/avatar/avatar.mjs +3 -2
  43. package/esm2022/avatar/public_api.mjs +2 -1
  44. package/esm2022/avatargroup/avatargroup.mjs +3 -3
  45. package/esm2022/avatargroup/public_api.mjs +2 -1
  46. package/esm2022/badge/badge.mjs +39 -51
  47. package/esm2022/badge/public_api.mjs +2 -1
  48. package/esm2022/blockui/public_api.mjs +2 -1
  49. package/esm2022/breadcrumb/breadcrumb.mjs +98 -119
  50. package/esm2022/breadcrumb/public_api.mjs +2 -1
  51. package/esm2022/button/button.mjs +3 -7
  52. package/esm2022/button/public_api.mjs +2 -1
  53. package/esm2022/buttongroup/buttongroup.mjs +3 -3
  54. package/esm2022/buttongroup/public_api.mjs +2 -1
  55. package/esm2022/calendar/calendar.mjs +2 -2
  56. package/esm2022/calendar/public_api.mjs +2 -1
  57. package/esm2022/card/public_api.mjs +2 -1
  58. package/esm2022/carousel/public_api.mjs +2 -1
  59. package/esm2022/cascadeselect/public_api.mjs +2 -1
  60. package/esm2022/chart/public_api.mjs +2 -1
  61. package/esm2022/chart/style/chartstyle.mjs +36 -0
  62. package/esm2022/checkbox/public_api.mjs +2 -1
  63. package/esm2022/chip/public_api.mjs +2 -1
  64. package/esm2022/colorpicker/public_api.mjs +2 -1
  65. package/esm2022/confirmdialog/public_api.mjs +2 -1
  66. package/esm2022/confirmpopup/public_api.mjs +2 -1
  67. package/esm2022/contextmenu/contextmenu.mjs +1 -1
  68. package/esm2022/contextmenu/public_api.mjs +2 -1
  69. package/esm2022/dataview/public_api.mjs +2 -1
  70. package/esm2022/datepicker/datepicker.mjs +18 -6
  71. package/esm2022/datepicker/public_api.mjs +2 -1
  72. package/esm2022/dialog/dialog.mjs +21 -16
  73. package/esm2022/divider/divider.mjs +4 -4
  74. package/esm2022/dock/public_api.mjs +2 -1
  75. package/esm2022/drawer/drawer.mjs +15 -11
  76. package/esm2022/drawer/public_api.mjs +2 -1
  77. package/esm2022/dropdown/dropdown.mjs +2 -2
  78. package/esm2022/dropdown/public_api.mjs +2 -1
  79. package/esm2022/dropdown/style/dropdownstyle.mjs +2 -2
  80. package/esm2022/dynamicdialog/dynamicdialog.mjs +94 -24
  81. package/esm2022/dynamicdialog/public_api.mjs +2 -1
  82. package/esm2022/editor/editor.mjs +6 -5
  83. package/esm2022/editor/public_api.mjs +2 -1
  84. package/esm2022/fieldset/fieldset.mjs +11 -21
  85. package/esm2022/fieldset/public_api.mjs +2 -1
  86. package/esm2022/fileupload/public_api.mjs +2 -1
  87. package/esm2022/floatlabel/floatlabel.mjs +18 -13
  88. package/esm2022/floatlabel/public_api.mjs +2 -1
  89. package/esm2022/floatlabel/style/floatlabelstyle.mjs +63 -28
  90. package/esm2022/fluid/public_api.mjs +2 -1
  91. package/esm2022/galleria/galleria.mjs +113 -124
  92. package/esm2022/galleria/public_api.mjs +2 -1
  93. package/esm2022/iconfield/iconfield.mjs +4 -4
  94. package/esm2022/iconfield/public_api.mjs +2 -1
  95. package/esm2022/iconfield/style/iconfieldstyle.mjs +10 -20
  96. package/esm2022/iftalabel/iftalabel.mjs +43 -0
  97. package/esm2022/iftalabel/primeng-iftalabel.mjs +5 -0
  98. package/esm2022/iftalabel/public_api.mjs +3 -0
  99. package/esm2022/iftalabel/style/iftalabelstyle.mjs +96 -0
  100. package/esm2022/image/image.interface.mjs +1 -1
  101. package/esm2022/image/image.mjs +86 -42
  102. package/esm2022/image/public_api.mjs +2 -1
  103. package/esm2022/inplace/inplace.mjs +3 -3
  104. package/esm2022/inplace/public_api.mjs +2 -1
  105. package/esm2022/inputgroup/public_api.mjs +2 -1
  106. package/esm2022/inputgroup/style/inputgroupstyle.mjs +30 -17
  107. package/esm2022/inputgroupaddon/inputgroupaddon.mjs +15 -13
  108. package/esm2022/inputgroupaddon/public_api.mjs +2 -1
  109. package/esm2022/inputicon/inputicon.mjs +7 -4
  110. package/esm2022/inputicon/public_api.mjs +2 -1
  111. package/esm2022/inputmask/inputmask.mjs +2 -2
  112. package/esm2022/inputmask/public_api.mjs +2 -1
  113. package/esm2022/inputnumber/inputnumber.mjs +218 -220
  114. package/esm2022/inputnumber/public_api.mjs +2 -1
  115. package/esm2022/inputnumber/style/inputnumberstyle.mjs +6 -1
  116. package/esm2022/inputotp/inputotp.mjs +1 -1
  117. package/esm2022/inputotp/public_api.mjs +2 -1
  118. package/esm2022/inputswitch/public_api.mjs +2 -1
  119. package/esm2022/inputtext/inputtext.mjs +11 -2
  120. package/esm2022/inputtext/public_api.mjs +2 -1
  121. package/esm2022/inputtextarea/public_api.mjs +2 -1
  122. package/esm2022/knob/public_api.mjs +2 -1
  123. package/esm2022/listbox/listbox.mjs +37 -12
  124. package/esm2022/listbox/public_api.mjs +2 -1
  125. package/esm2022/megamenu/megamenu.mjs +1 -1
  126. package/esm2022/megamenu/public_api.mjs +2 -1
  127. package/esm2022/menu/menu.mjs +5 -3
  128. package/esm2022/menu/public_api.mjs +2 -1
  129. package/esm2022/menubar/menubar.mjs +3 -3
  130. package/esm2022/menubar/public_api.mjs +2 -1
  131. package/esm2022/message/message.mjs +2 -34
  132. package/esm2022/messages/public_api.mjs +2 -1
  133. package/esm2022/metergroup/public_api.mjs +2 -1
  134. package/esm2022/multiselect/multiselect.mjs +679 -673
  135. package/esm2022/multiselect/public_api.mjs +2 -1
  136. package/esm2022/orderlist/orderlist.mjs +88 -16
  137. package/esm2022/orderlist/public_api.mjs +2 -1
  138. package/esm2022/organizationchart/organizationchart.mjs +5 -5
  139. package/esm2022/organizationchart/public_api.mjs +2 -1
  140. package/esm2022/overlay/public_api.mjs +2 -1
  141. package/esm2022/overlaybadge/overlaybadge.mjs +4 -6
  142. package/esm2022/overlaybadge/public_api.mjs +2 -1
  143. package/esm2022/overlaypanel/public_api.mjs +2 -1
  144. package/esm2022/paginator/public_api.mjs +2 -1
  145. package/esm2022/panelmenu/panelmenu.mjs +18 -10
  146. package/esm2022/panelmenu/public_api.mjs +2 -1
  147. package/esm2022/password/password.mjs +5 -3
  148. package/esm2022/password/public_api.mjs +2 -1
  149. package/esm2022/picklist/picklist.mjs +186 -16
  150. package/esm2022/picklist/public_api.mjs +2 -1
  151. package/esm2022/popover/public_api.mjs +2 -1
  152. package/esm2022/progressbar/public_api.mjs +2 -1
  153. package/esm2022/progressspinner/public_api.mjs +2 -1
  154. package/esm2022/radiobutton/public_api.mjs +2 -1
  155. package/esm2022/rating/public_api.mjs +2 -1
  156. package/esm2022/rating/rating.mjs +11 -108
  157. package/esm2022/ripple/public_api.mjs +2 -1
  158. package/esm2022/scroller/public_api.mjs +2 -1
  159. package/esm2022/scroller/scroller.mjs +2 -2
  160. package/esm2022/scrollpanel/public_api.mjs +2 -1
  161. package/esm2022/scrolltop/public_api.mjs +2 -1
  162. package/esm2022/scrolltop/scrolltop.mjs +19 -14
  163. package/esm2022/select/select.mjs +8 -16
  164. package/esm2022/select/style/selectstyle.mjs +2 -2
  165. package/esm2022/selectbutton/public_api.mjs +2 -1
  166. package/esm2022/selectbutton/style/selectbuttonstyle.mjs +3 -3
  167. package/esm2022/sidebar/public_api.mjs +2 -1
  168. package/esm2022/skeleton/public_api.mjs +2 -1
  169. package/esm2022/slider/public_api.mjs +2 -1
  170. package/esm2022/speeddial/public_api.mjs +2 -1
  171. package/esm2022/speeddial/speeddial.interface.mjs +1 -1
  172. package/esm2022/speeddial/speeddial.mjs +73 -49
  173. package/esm2022/speeddial/style/speeddialstyle.mjs +2 -2
  174. package/esm2022/splitbutton/public_api.mjs +2 -1
  175. package/esm2022/splitbutton/splitbutton.mjs +19 -6
  176. package/esm2022/splitter/public_api.mjs +2 -1
  177. package/esm2022/stepper/public_api.mjs +2 -2
  178. package/esm2022/stepper/stepper.mjs +367 -660
  179. package/esm2022/stepper/style/stepperstyle.mjs +1 -2
  180. package/esm2022/steps/public_api.mjs +2 -1
  181. package/esm2022/table/public_api.mjs +2 -1
  182. package/esm2022/table/table.mjs +24 -20
  183. package/esm2022/tabmenu/public_api.mjs +2 -1
  184. package/esm2022/tabmenu/tabmenu.mjs +9 -5
  185. package/esm2022/tabs/public_api.mjs +6 -2
  186. package/esm2022/tabs/tab.mjs +171 -0
  187. package/esm2022/tabs/tablist.mjs +256 -0
  188. package/esm2022/tabs/tabpanel.mjs +49 -0
  189. package/esm2022/tabs/tabpanels.mjs +30 -0
  190. package/esm2022/tabs/tabs.mjs +45 -948
  191. package/esm2022/tabview/public_api.mjs +2 -1
  192. package/esm2022/tabview/style/tabsstyle.mjs +15 -15
  193. package/esm2022/tag/public_api.mjs +2 -1
  194. package/esm2022/terminal/public_api.mjs +2 -1
  195. package/esm2022/textarea/public_api.mjs +2 -1
  196. package/esm2022/themes/aura/aura.mjs +7 -3
  197. package/esm2022/themes/aura/floatlabel/index.mjs +29 -1
  198. package/esm2022/themes/aura/iftalabel/index.mjs +16 -0
  199. package/esm2022/themes/lara/floatlabel/index.mjs +27 -1
  200. package/esm2022/themes/lara/iftalabel/index.mjs +16 -0
  201. package/esm2022/themes/lara/lara.mjs +7 -3
  202. package/esm2022/themes/nora/floatlabel/index.mjs +27 -1
  203. package/esm2022/themes/nora/iftalabel/index.mjs +16 -0
  204. package/esm2022/themes/nora/nora.mjs +7 -3
  205. package/esm2022/tieredmenu/public_api.mjs +2 -1
  206. package/esm2022/timeline/public_api.mjs +2 -1
  207. package/esm2022/timeline/timeline.mjs +54 -68
  208. package/esm2022/toast/public_api.mjs +2 -1
  209. package/esm2022/togglebutton/public_api.mjs +2 -1
  210. package/esm2022/togglebutton/style/togglebuttonstyle.mjs +2 -2
  211. package/esm2022/togglebutton/togglebutton.mjs +83 -76
  212. package/esm2022/toggleswitch/public_api.mjs +2 -1
  213. package/esm2022/toggleswitch/style/toggleswitchstyle.mjs +8 -5
  214. package/esm2022/toggleswitch/toggleswitch.mjs +44 -48
  215. package/esm2022/toolbar/public_api.mjs +2 -1
  216. package/esm2022/tooltip/public_api.mjs +2 -1
  217. package/esm2022/tree/public_api.mjs +2 -1
  218. package/esm2022/tree/tree.mjs +7 -4
  219. package/esm2022/treeselect/public_api.mjs +2 -1
  220. package/esm2022/treeselect/treeselect.mjs +7 -56
  221. package/esm2022/treetable/public_api.mjs +2 -1
  222. package/esm2022/treetable/style/treetablestyle.mjs +2 -2
  223. package/esm2022/treetable/treetable.mjs +4 -4
  224. package/esm2022/utils/inpututils.mjs +7 -0
  225. package/esm2022/utils/public_api.mjs +3 -2
  226. package/fesm2022/primeng-accordion.mjs +433 -82
  227. package/fesm2022/primeng-accordion.mjs.map +1 -1
  228. package/fesm2022/primeng-autocomplete.mjs +3 -3
  229. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  230. package/fesm2022/primeng-avatar.mjs +3 -2
  231. package/fesm2022/primeng-avatar.mjs.map +1 -1
  232. package/fesm2022/primeng-avatargroup.mjs +3 -3
  233. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  234. package/fesm2022/primeng-badge.mjs +39 -51
  235. package/fesm2022/primeng-badge.mjs.map +1 -1
  236. package/fesm2022/primeng-blockui.mjs +1 -1
  237. package/fesm2022/primeng-blockui.mjs.map +1 -1
  238. package/fesm2022/primeng-breadcrumb.mjs +98 -119
  239. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  240. package/fesm2022/primeng-button.mjs +3 -7
  241. package/fesm2022/primeng-button.mjs.map +1 -1
  242. package/fesm2022/primeng-buttongroup.mjs +3 -3
  243. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  244. package/fesm2022/primeng-calendar.mjs +2 -2
  245. package/fesm2022/primeng-calendar.mjs.map +1 -1
  246. package/fesm2022/primeng-card.mjs +1 -1
  247. package/fesm2022/primeng-card.mjs.map +1 -1
  248. package/fesm2022/primeng-carousel.mjs +1 -1
  249. package/fesm2022/primeng-carousel.mjs.map +1 -1
  250. package/fesm2022/primeng-cascadeselect.mjs +1 -1
  251. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  252. package/fesm2022/primeng-chart.mjs +36 -2
  253. package/fesm2022/primeng-chart.mjs.map +1 -1
  254. package/fesm2022/primeng-checkbox.mjs +1 -1
  255. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  256. package/fesm2022/primeng-chip.mjs +1 -1
  257. package/fesm2022/primeng-chip.mjs.map +1 -1
  258. package/fesm2022/primeng-colorpicker.mjs +1 -1
  259. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  260. package/fesm2022/primeng-confirmdialog.mjs +1 -1
  261. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  262. package/fesm2022/primeng-confirmpopup.mjs +1 -1
  263. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  264. package/fesm2022/primeng-contextmenu.mjs +2 -2
  265. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  266. package/fesm2022/primeng-dataview.mjs +1 -1
  267. package/fesm2022/primeng-dataview.mjs.map +1 -1
  268. package/fesm2022/primeng-datepicker.mjs +18 -6
  269. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  270. package/fesm2022/primeng-dialog.mjs +20 -15
  271. package/fesm2022/primeng-dialog.mjs.map +1 -1
  272. package/fesm2022/primeng-divider.mjs +3 -3
  273. package/fesm2022/primeng-divider.mjs.map +1 -1
  274. package/fesm2022/primeng-dock.mjs +1 -1
  275. package/fesm2022/primeng-dock.mjs.map +1 -1
  276. package/fesm2022/primeng-drawer.mjs +15 -11
  277. package/fesm2022/primeng-drawer.mjs.map +1 -1
  278. package/fesm2022/primeng-dropdown.mjs +3 -3
  279. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  280. package/fesm2022/primeng-dynamicdialog.mjs +94 -24
  281. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  282. package/fesm2022/primeng-editor.mjs +5 -4
  283. package/fesm2022/primeng-editor.mjs.map +1 -1
  284. package/fesm2022/primeng-fieldset.mjs +11 -21
  285. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  286. package/fesm2022/primeng-fileupload.mjs +1 -1
  287. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  288. package/fesm2022/primeng-floatlabel.mjs +80 -40
  289. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  290. package/fesm2022/primeng-fluid.mjs +1 -1
  291. package/fesm2022/primeng-fluid.mjs.map +1 -1
  292. package/fesm2022/primeng-galleria.mjs +113 -124
  293. package/fesm2022/primeng-galleria.mjs.map +1 -1
  294. package/fesm2022/primeng-iconfield.mjs +13 -23
  295. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  296. package/fesm2022/primeng-iftalabel.mjs +143 -0
  297. package/fesm2022/primeng-iftalabel.mjs.map +1 -0
  298. package/fesm2022/primeng-image.mjs +85 -41
  299. package/fesm2022/primeng-image.mjs.map +1 -1
  300. package/fesm2022/primeng-inplace.mjs +3 -3
  301. package/fesm2022/primeng-inplace.mjs.map +1 -1
  302. package/fesm2022/primeng-inputgroup.mjs +30 -17
  303. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  304. package/fesm2022/primeng-inputgroupaddon.mjs +15 -13
  305. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  306. package/fesm2022/primeng-inputicon.mjs +7 -4
  307. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  308. package/fesm2022/primeng-inputmask.mjs +2 -2
  309. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  310. package/fesm2022/primeng-inputnumber.mjs +223 -220
  311. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  312. package/fesm2022/primeng-inputotp.mjs +2 -2
  313. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  314. package/fesm2022/primeng-inputswitch.mjs +1 -1
  315. package/fesm2022/primeng-inputtext.mjs +11 -2
  316. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  317. package/fesm2022/primeng-inputtextarea.mjs +1 -1
  318. package/fesm2022/primeng-inputtextarea.mjs.map +1 -1
  319. package/fesm2022/primeng-knob.mjs +1 -1
  320. package/fesm2022/primeng-knob.mjs.map +1 -1
  321. package/fesm2022/primeng-listbox.mjs +37 -12
  322. package/fesm2022/primeng-listbox.mjs.map +1 -1
  323. package/fesm2022/primeng-megamenu.mjs +2 -2
  324. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  325. package/fesm2022/primeng-menu.mjs +4 -2
  326. package/fesm2022/primeng-menu.mjs.map +1 -1
  327. package/fesm2022/primeng-menubar.mjs +3 -3
  328. package/fesm2022/primeng-menubar.mjs.map +1 -1
  329. package/fesm2022/primeng-message.mjs +1 -33
  330. package/fesm2022/primeng-message.mjs.map +1 -1
  331. package/fesm2022/primeng-messages.mjs +1 -1
  332. package/fesm2022/primeng-metergroup.mjs +1 -1
  333. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  334. package/fesm2022/primeng-multiselect.mjs +679 -673
  335. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  336. package/fesm2022/primeng-orderlist.mjs +87 -15
  337. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  338. package/fesm2022/primeng-organizationchart.mjs +5 -5
  339. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  340. package/fesm2022/primeng-overlay.mjs +1 -1
  341. package/fesm2022/primeng-overlaybadge.mjs +4 -6
  342. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  343. package/fesm2022/primeng-overlaypanel.mjs +1 -1
  344. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  345. package/fesm2022/primeng-paginator.mjs +1 -1
  346. package/fesm2022/primeng-paginator.mjs.map +1 -1
  347. package/fesm2022/primeng-panelmenu.mjs +17 -9
  348. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  349. package/fesm2022/primeng-password.mjs +4 -2
  350. package/fesm2022/primeng-password.mjs.map +1 -1
  351. package/fesm2022/primeng-picklist.mjs +185 -15
  352. package/fesm2022/primeng-picklist.mjs.map +1 -1
  353. package/fesm2022/primeng-popover.mjs +1 -1
  354. package/fesm2022/primeng-progressbar.mjs +1 -1
  355. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  356. package/fesm2022/primeng-progressspinner.mjs +1 -1
  357. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  358. package/fesm2022/primeng-radiobutton.mjs +1 -1
  359. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  360. package/fesm2022/primeng-rating.mjs +11 -108
  361. package/fesm2022/primeng-rating.mjs.map +1 -1
  362. package/fesm2022/primeng-ripple.mjs +1 -1
  363. package/fesm2022/primeng-ripple.mjs.map +1 -1
  364. package/fesm2022/primeng-scroller.mjs +2 -2
  365. package/fesm2022/primeng-scroller.mjs.map +1 -1
  366. package/fesm2022/primeng-scrollpanel.mjs +1 -1
  367. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  368. package/fesm2022/primeng-scrolltop.mjs +19 -14
  369. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  370. package/fesm2022/primeng-select.mjs +8 -16
  371. package/fesm2022/primeng-select.mjs.map +1 -1
  372. package/fesm2022/primeng-selectbutton.mjs +3 -3
  373. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  374. package/fesm2022/primeng-sidebar.mjs +1 -1
  375. package/fesm2022/primeng-skeleton.mjs +1 -1
  376. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  377. package/fesm2022/primeng-slider.mjs +1 -1
  378. package/fesm2022/primeng-slider.mjs.map +1 -1
  379. package/fesm2022/primeng-speeddial.mjs +73 -49
  380. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  381. package/fesm2022/primeng-splitbutton.mjs +19 -6
  382. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  383. package/fesm2022/primeng-splitter.mjs +1 -1
  384. package/fesm2022/primeng-splitter.mjs.map +1 -1
  385. package/fesm2022/primeng-stepper.mjs +368 -662
  386. package/fesm2022/primeng-stepper.mjs.map +1 -1
  387. package/fesm2022/primeng-steps.mjs +1 -1
  388. package/fesm2022/primeng-steps.mjs.map +1 -1
  389. package/fesm2022/primeng-table.mjs +24 -20
  390. package/fesm2022/primeng-table.mjs.map +1 -1
  391. package/fesm2022/primeng-tabmenu.mjs +8 -4
  392. package/fesm2022/primeng-tabmenu.mjs.map +1 -1
  393. package/fesm2022/primeng-tabs.mjs +460 -886
  394. package/fesm2022/primeng-tabs.mjs.map +1 -1
  395. package/fesm2022/primeng-tabview.mjs +15 -15
  396. package/fesm2022/primeng-tabview.mjs.map +1 -1
  397. package/fesm2022/primeng-tag.mjs +1 -1
  398. package/fesm2022/primeng-tag.mjs.map +1 -1
  399. package/fesm2022/primeng-terminal.mjs +1 -1
  400. package/fesm2022/primeng-terminal.mjs.map +1 -1
  401. package/fesm2022/primeng-textarea.mjs +1 -1
  402. package/fesm2022/primeng-textarea.mjs.map +1 -1
  403. package/fesm2022/primeng-themes-aura.mjs +49 -2
  404. package/fesm2022/primeng-themes-aura.mjs.map +1 -1
  405. package/fesm2022/primeng-themes-lara.mjs +47 -2
  406. package/fesm2022/primeng-themes-lara.mjs.map +1 -1
  407. package/fesm2022/primeng-themes-nora.mjs +47 -2
  408. package/fesm2022/primeng-themes-nora.mjs.map +1 -1
  409. package/fesm2022/primeng-tieredmenu.mjs +1 -1
  410. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  411. package/fesm2022/primeng-timeline.mjs +54 -68
  412. package/fesm2022/primeng-timeline.mjs.map +1 -1
  413. package/fesm2022/primeng-toast.mjs +1 -1
  414. package/fesm2022/primeng-toast.mjs.map +1 -1
  415. package/fesm2022/primeng-togglebutton.mjs +84 -77
  416. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  417. package/fesm2022/primeng-toggleswitch.mjs +50 -51
  418. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  419. package/fesm2022/primeng-toolbar.mjs +1 -1
  420. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  421. package/fesm2022/primeng-tooltip.mjs +1 -1
  422. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  423. package/fesm2022/primeng-tree.mjs +7 -4
  424. package/fesm2022/primeng-tree.mjs.map +1 -1
  425. package/fesm2022/primeng-treeselect.mjs +7 -56
  426. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  427. package/fesm2022/primeng-treetable.mjs +4 -4
  428. package/fesm2022/primeng-treetable.mjs.map +1 -1
  429. package/fesm2022/primeng-utils.mjs +8 -1
  430. package/fesm2022/primeng-utils.mjs.map +1 -1
  431. package/fieldset/fieldset.d.ts +1 -6
  432. package/fieldset/public_api.d.ts +1 -0
  433. package/fileupload/public_api.d.ts +1 -0
  434. package/floatlabel/floatlabel.d.ts +6 -1
  435. package/floatlabel/public_api.d.ts +1 -0
  436. package/floatlabel/style/floatlabelstyle.d.ts +3 -6
  437. package/fluid/public_api.d.ts +1 -0
  438. package/galleria/public_api.d.ts +1 -0
  439. package/iconfield/iconfield.d.ts +1 -1
  440. package/iconfield/public_api.d.ts +1 -0
  441. package/iftalabel/iftalabel.d.ts +20 -0
  442. package/iftalabel/index.d.ts +5 -0
  443. package/iftalabel/public_api.d.ts +2 -0
  444. package/iftalabel/style/iftalabelstyle.d.ts +30 -0
  445. package/image/image.d.ts +2 -0
  446. package/image/image.interface.d.ts +32 -0
  447. package/image/public_api.d.ts +1 -0
  448. package/inplace/public_api.d.ts +1 -0
  449. package/inputgroup/public_api.d.ts +1 -0
  450. package/inputgroupaddon/inputgroupaddon.d.ts +3 -0
  451. package/inputgroupaddon/public_api.d.ts +1 -0
  452. package/inputicon/public_api.d.ts +1 -0
  453. package/inputmask/public_api.d.ts +1 -0
  454. package/inputnumber/inputnumber.d.ts +1 -0
  455. package/inputnumber/public_api.d.ts +1 -0
  456. package/inputotp/public_api.d.ts +1 -0
  457. package/inputswitch/public_api.d.ts +1 -0
  458. package/inputtext/inputtext.d.ts +6 -1
  459. package/inputtext/public_api.d.ts +1 -0
  460. package/inputtextarea/public_api.d.ts +1 -0
  461. package/knob/public_api.d.ts +1 -0
  462. package/listbox/listbox.d.ts +14 -6
  463. package/listbox/public_api.d.ts +1 -0
  464. package/megamenu/public_api.d.ts +1 -0
  465. package/menu/public_api.d.ts +1 -0
  466. package/menubar/public_api.d.ts +1 -0
  467. package/messages/public_api.d.ts +1 -0
  468. package/metergroup/public_api.d.ts +1 -0
  469. package/multiselect/multiselect.d.ts +1 -1
  470. package/multiselect/public_api.d.ts +1 -0
  471. package/orderlist/orderlist.d.ts +28 -1
  472. package/orderlist/public_api.d.ts +1 -0
  473. package/organizationchart/organizationchart.d.ts +1 -1
  474. package/organizationchart/public_api.d.ts +1 -0
  475. package/overlay/public_api.d.ts +1 -0
  476. package/overlaybadge/overlaybadge.d.ts +2 -2
  477. package/overlaybadge/public_api.d.ts +1 -0
  478. package/overlaypanel/public_api.d.ts +1 -0
  479. package/package.json +281 -275
  480. package/paginator/public_api.d.ts +1 -0
  481. package/panelmenu/panelmenu.d.ts +1 -1
  482. package/panelmenu/public_api.d.ts +1 -0
  483. package/password/password.d.ts +1 -1
  484. package/password/public_api.d.ts +1 -0
  485. package/picklist/picklist.d.ts +52 -5
  486. package/picklist/public_api.d.ts +1 -0
  487. package/popover/public_api.d.ts +1 -0
  488. package/progressbar/public_api.d.ts +1 -0
  489. package/progressspinner/public_api.d.ts +1 -0
  490. package/radiobutton/public_api.d.ts +1 -0
  491. package/rating/public_api.d.ts +1 -0
  492. package/rating/rating.d.ts +1 -20
  493. package/ripple/public_api.d.ts +1 -0
  494. package/scroller/public_api.d.ts +1 -0
  495. package/scrollpanel/public_api.d.ts +1 -0
  496. package/scrolltop/public_api.d.ts +1 -0
  497. package/selectbutton/public_api.d.ts +1 -0
  498. package/sidebar/public_api.d.ts +1 -0
  499. package/skeleton/public_api.d.ts +1 -0
  500. package/slider/public_api.d.ts +1 -0
  501. package/speeddial/public_api.d.ts +1 -0
  502. package/speeddial/speeddial.d.ts +25 -2
  503. package/speeddial/speeddial.interface.d.ts +17 -1
  504. package/splitbutton/public_api.d.ts +1 -0
  505. package/splitbutton/splitbutton.d.ts +6 -1
  506. package/splitter/public_api.d.ts +1 -0
  507. package/stepper/public_api.d.ts +1 -1
  508. package/stepper/stepper.d.ts +140 -88
  509. package/steps/public_api.d.ts +1 -0
  510. package/table/public_api.d.ts +1 -0
  511. package/tabmenu/public_api.d.ts +1 -0
  512. package/tabmenu/tabmenu.d.ts +1 -0
  513. package/tabs/public_api.d.ts +5 -1
  514. package/tabs/tab.d.ts +47 -0
  515. package/tabs/tablist.d.ts +51 -0
  516. package/tabs/tabpanel.d.ts +20 -0
  517. package/tabs/tabpanels.d.ts +10 -0
  518. package/tabs/tabs.d.ts +31 -237
  519. package/tabview/public_api.d.ts +1 -0
  520. package/tabview/style/tabsstyle.d.ts +4 -4
  521. package/tag/public_api.d.ts +1 -0
  522. package/terminal/public_api.d.ts +1 -0
  523. package/textarea/public_api.d.ts +1 -0
  524. package/themes/aura/aura.d.ts +45 -0
  525. package/themes/aura/floatlabel/index.d.ts +28 -0
  526. package/themes/aura/iftalabel/index.d.ts +16 -0
  527. package/themes/lara/floatlabel/index.d.ts +26 -0
  528. package/themes/lara/iftalabel/index.d.ts +16 -0
  529. package/themes/lara/lara.d.ts +43 -0
  530. package/themes/nora/floatlabel/index.d.ts +26 -0
  531. package/themes/nora/iftalabel/index.d.ts +16 -0
  532. package/themes/nora/nora.d.ts +43 -0
  533. package/tieredmenu/public_api.d.ts +1 -0
  534. package/timeline/public_api.d.ts +1 -0
  535. package/timeline/timeline.d.ts +1 -0
  536. package/toast/public_api.d.ts +1 -0
  537. package/togglebutton/public_api.d.ts +1 -0
  538. package/togglebutton/togglebutton.d.ts +6 -7
  539. package/toggleswitch/public_api.d.ts +1 -0
  540. package/toolbar/public_api.d.ts +1 -0
  541. package/tooltip/public_api.d.ts +1 -0
  542. package/tree/public_api.d.ts +1 -0
  543. package/tree/tree.d.ts +1 -0
  544. package/treeselect/public_api.d.ts +1 -0
  545. package/treetable/public_api.d.ts +1 -0
  546. package/utils/inpututils.d.ts +2 -0
  547. package/utils/public_api.d.ts +2 -1
  548. package/accordion/accordion.interface.d.ts +0 -49
  549. package/esm2022/accordion/accordion.interface.mjs +0 -2
  550. package/esm2022/stepper/stepper.interface.mjs +0 -2
  551. package/esm2022/tabs/tabs.interface.mjs +0 -2
  552. package/stepper/stepper.interface.d.ts +0 -26
  553. package/tabs/tabs.interface.d.ts +0 -49
@@ -1,12 +1,13 @@
1
1
  import * as i1 from '@angular/common';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { Injectable, EventEmitter, Component, Input, Output, ContentChildren, inject, ChangeDetectionStrategy, ViewEncapsulation, NgModule } from '@angular/core';
5
- import { PrimeTemplate, SharedModule } from 'primeng/api';
6
- import { UniqueComponentId } from 'primeng/utils';
7
- import { trigger, state, style, transition, animate } from '@angular/animations';
4
+ import { Injectable, Component, ChangeDetectionStrategy, ViewEncapsulation, inject, forwardRef, model, computed, contentChild, effect, input, ContentChild, ContentChildren, signal, contentChildren, NgModule } from '@angular/core';
8
5
  import { BaseComponent } from 'primeng/basecomponent';
6
+ import { transformToBoolean, ObjectUtils, UniqueComponentId } from 'primeng/utils';
9
7
  import { BaseStyle } from 'primeng/base';
8
+ import { DomHandler } from 'primeng/dom';
9
+ import { trigger, state, style, transition, animate } from '@angular/animations';
10
+ import { PrimeTemplate, SharedModule } from 'primeng/api';
10
11
 
11
12
  const theme = ({ dt }) => `
12
13
  .p-steplist {
@@ -179,7 +180,6 @@ const theme = ({ dt }) => `
179
180
  .p-stepitem:last-of-type .p-steppanel {
180
181
  padding-inline-start: ${dt('stepper.step.number.size')};
181
182
  }
182
-
183
183
  /* For PrimeNG */
184
184
  .p-steppanel {
185
185
  overflow: hidden;
@@ -229,548 +229,296 @@ var StepperClasses;
229
229
  StepperClasses["separator"] = "p-stepper-separator";
230
230
  })(StepperClasses || (StepperClasses = {}));
231
231
 
232
- class StepperHeader {
233
- id;
234
- template;
235
- stepperPanel;
236
- index;
237
- disabled;
238
- active;
239
- highlighted;
240
- getStepProp;
241
- ariaControls;
242
- onClick = new EventEmitter();
243
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
244
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepperHeader, selector: "p-stepperHeader, p-stepper-header", inputs: { id: "id", template: "template", stepperPanel: "stepperPanel", index: "index", disabled: "disabled", active: "active", highlighted: "highlighted", getStepProp: "getStepProp", ariaControls: "ariaControls" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `
245
- <ng-container *ngIf="template; else buttonRef">
246
- <ng-container
247
- *ngTemplateOutlet="
248
- template;
249
- context: {
250
- index: index,
251
- active: active,
252
- highlighted: highlighted,
253
- class: 'p-stepper-action',
254
- headerClass: 'p-stepper-action',
255
- numberClass: 'p-stepper-number',
256
- titleClass: 'p-stepper-title',
257
- onClick: onClick,
258
- }
259
- "
260
- ></ng-container>
261
- </ng-container>
262
- <ng-template #buttonRef>
263
- <p-button
264
- [id]="id"
265
- class="p-step-header"
266
- role="tab"
267
- [tabindex]="disabled ? -1 : undefined"
268
- [aria-controls]="ariaControls"
269
- (click)="onClick.emit($event, index)"
270
- >
271
- <span class="p-step-number">{{ index + 1 }}</span>
272
- <span class="p-step-title">{{ getStepProp }}</span>
273
- </p-button>
274
- </ng-template>
275
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
232
+ class StepList extends BaseComponent {
233
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepList, deps: null, target: i0.ɵɵFactoryTarget.Component });
234
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepList, isStandalone: true, selector: "p-step-list", host: { properties: { "class.p-steplist": "true", "class.p-component": "true" } }, usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
276
235
  }
277
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperHeader, decorators: [{
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepList, decorators: [{
278
237
  type: Component,
279
238
  args: [{
280
- selector: 'p-stepperHeader, p-stepper-header',
281
- template: `
282
- <ng-container *ngIf="template; else buttonRef">
283
- <ng-container
284
- *ngTemplateOutlet="
285
- template;
286
- context: {
287
- index: index,
288
- active: active,
289
- highlighted: highlighted,
290
- class: 'p-stepper-action',
291
- headerClass: 'p-stepper-action',
292
- numberClass: 'p-stepper-number',
293
- titleClass: 'p-stepper-title',
294
- onClick: onClick,
295
- }
296
- "
297
- ></ng-container>
298
- </ng-container>
299
- <ng-template #buttonRef>
300
- <p-button
301
- [id]="id"
302
- class="p-step-header"
303
- role="tab"
304
- [tabindex]="disabled ? -1 : undefined"
305
- [aria-controls]="ariaControls"
306
- (click)="onClick.emit($event, index)"
307
- >
308
- <span class="p-step-number">{{ index + 1 }}</span>
309
- <span class="p-step-title">{{ getStepProp }}</span>
310
- </p-button>
311
- </ng-template>
312
- `,
239
+ selector: 'p-step-list',
240
+ standalone: true,
241
+ imports: [CommonModule],
242
+ template: ` <ng-content></ng-content>`,
243
+ changeDetection: ChangeDetectionStrategy.OnPush,
244
+ encapsulation: ViewEncapsulation.None,
245
+ host: {
246
+ '[class.p-steplist]': 'true',
247
+ '[class.p-component]': 'true',
248
+ },
313
249
  }]
314
- }], propDecorators: { id: [{
315
- type: Input
316
- }], template: [{
317
- type: Input
318
- }], stepperPanel: [{
319
- type: Input
320
- }], index: [{
321
- type: Input
322
- }], disabled: [{
323
- type: Input
324
- }], active: [{
325
- type: Input
326
- }], highlighted: [{
327
- type: Input
328
- }], getStepProp: [{
329
- type: Input
330
- }], ariaControls: [{
331
- type: Input
332
- }], onClick: [{
333
- type: Output
334
- }] } });
335
- class StepperSeparator {
336
- template;
337
- separatorClass;
338
- stepperPanel;
339
- index;
340
- active;
341
- highlighted;
342
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperSeparator, deps: [], target: i0.ɵɵFactoryTarget.Component });
343
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepperSeparator, selector: "p-stepperSeparator, p-stepper-separator", inputs: { template: "template", separatorClass: "separatorClass", stepperPanel: "stepperPanel", index: "index", active: "active", highlighted: "highlighted" }, host: { classAttribute: "p-stepper-separator" }, ngImport: i0, template: `
344
- <ng-container *ngIf="template; else span">
345
- <ng-container
346
- *ngTemplateOutlet="template; context: { index: index, active: active, highlighted: highlighted, class: separatorClass }"
347
- ></ng-container>
348
- </ng-container>
349
- <ng-template #span>
350
- <span [class]="separatorClass" aria-hidden="true"></span>
351
- </ng-template>
352
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
250
+ }] });
251
+ class StepperSeparator extends BaseComponent {
252
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperSeparator, deps: null, target: i0.ɵɵFactoryTarget.Component });
253
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepperSeparator, isStandalone: true, selector: "p-stepper-separator", host: { properties: { "class.p-stepper-separator": "true", "class.p-component": "true" } }, usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
353
254
  }
354
255
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperSeparator, decorators: [{
355
256
  type: Component,
356
257
  args: [{
357
- selector: 'p-stepperSeparator, p-stepper-separator',
358
- template: `
359
- <ng-container *ngIf="template; else span">
360
- <ng-container
361
- *ngTemplateOutlet="template; context: { index: index, active: active, highlighted: highlighted, class: separatorClass }"
362
- ></ng-container>
363
- </ng-container>
364
- <ng-template #span>
365
- <span [class]="separatorClass" aria-hidden="true"></span>
366
- </ng-template>
367
- `,
258
+ selector: 'p-stepper-separator',
259
+ standalone: true,
260
+ imports: [CommonModule],
261
+ template: ` <ng-content></ng-content>`,
262
+ changeDetection: ChangeDetectionStrategy.OnPush,
263
+ encapsulation: ViewEncapsulation.None,
368
264
  host: {
369
- class: 'p-stepper-separator',
265
+ '[class.p-stepper-separator]': 'true',
266
+ '[class.p-component]': 'true',
370
267
  },
371
268
  }]
372
- }], propDecorators: { template: [{
373
- type: Input
374
- }], separatorClass: [{
375
- type: Input
376
- }], stepperPanel: [{
377
- type: Input
378
- }], index: [{
379
- type: Input
380
- }], active: [{
381
- type: Input
382
- }], highlighted: [{
383
- type: Input
384
- }] } });
385
- class StepperContent {
386
- id;
387
- orientation;
388
- template;
389
- ariaLabelledby;
390
- stepperPanel;
391
- index;
392
- active;
393
- highlighted;
394
- onClick = new EventEmitter();
395
- prevCallback = new EventEmitter();
396
- nextCallback = new EventEmitter();
397
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
398
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepperContent, selector: "p-stepperContent, p-stepper-content", inputs: { id: "id", orientation: "orientation", template: "template", ariaLabelledby: "ariaLabelledby", stepperPanel: "stepperPanel", index: "index", active: "active", highlighted: "highlighted" }, outputs: { onClick: "onClick", prevCallback: "prevCallback", nextCallback: "nextCallback" }, host: { properties: { "class.p-steppanel-content": "true", "class.p-element": "true", "class.p-toggleable-content": "orientation === 'vertical'" } }, ngImport: i0, template: ` <div
399
- [id]="id"
400
- role="tabpanel"
401
- data-pc-name="stepperpanel"
402
- [attr.data-pc-index]="index"
403
- [attr.data-p-active]="active"
404
- [attr.aria-labelledby]="ariaLabelledby"
405
- >
406
- <ng-container *ngIf="template">
407
- <ng-container
408
- *ngTemplateOutlet="
409
- template;
410
- context: {
411
- index: index,
412
- active: active,
413
- highlighted: highlighted,
414
- onClick: onClick,
415
- prevCallback: prevCallback,
416
- nextCallback: nextCallback,
417
- }
418
- "
419
- ></ng-container>
420
- </ng-container>
421
- <ng-template *ngIf="!template">
422
- <ng-container *ngIf="stepperPanel">
423
- <ng-container *ngTemplateOutlet="stepperPanel"></ng-container>
424
- </ng-container>
425
- </ng-template>
426
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
427
- }
428
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperContent, decorators: [{
269
+ }] });
270
+ /**
271
+ * StepItem is a helper component for Stepper component used in vertical orientation.
272
+ * @group Components
273
+ */
274
+ class StepItem extends BaseComponent {
275
+ pcStepper = inject(forwardRef(() => Stepper));
276
+ /**
277
+ * Value of step.
278
+ * @type {<number | undefined>}
279
+ * @defaultValue undefined
280
+ * @group Props
281
+ */
282
+ value = model();
283
+ isActive = computed(() => this.pcStepper.value() === this.value());
284
+ step = contentChild(Step);
285
+ stepPanel = contentChild(StepPanel);
286
+ constructor() {
287
+ super();
288
+ effect(() => {
289
+ this.step().value.set(this.value());
290
+ }, { allowSignalWrites: true });
291
+ effect(() => {
292
+ this.stepPanel().value.set(this.value());
293
+ }, { allowSignalWrites: true });
294
+ }
295
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
296
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.2", type: StepItem, isStandalone: true, selector: "p-step-item", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class.p-stepitem": "true", "class.p-component": "true", "attr.data-p-active": "isActive()" } }, queries: [{ propertyName: "step", first: true, predicate: Step, descendants: true, isSignal: true }, { propertyName: "stepPanel", first: true, predicate: StepPanel, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
297
+ }
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepItem, decorators: [{
429
299
  type: Component,
430
300
  args: [{
431
- selector: 'p-stepperContent, p-stepper-content',
432
- template: ` <div
433
- [id]="id"
434
- role="tabpanel"
435
- data-pc-name="stepperpanel"
436
- [attr.data-pc-index]="index"
437
- [attr.data-p-active]="active"
438
- [attr.aria-labelledby]="ariaLabelledby"
439
- >
440
- <ng-container *ngIf="template">
441
- <ng-container
442
- *ngTemplateOutlet="
443
- template;
444
- context: {
445
- index: index,
446
- active: active,
447
- highlighted: highlighted,
448
- onClick: onClick,
449
- prevCallback: prevCallback,
450
- nextCallback: nextCallback,
451
- }
452
- "
453
- ></ng-container>
454
- </ng-container>
455
- <ng-template *ngIf="!template">
456
- <ng-container *ngIf="stepperPanel">
457
- <ng-container *ngTemplateOutlet="stepperPanel"></ng-container>
458
- </ng-container>
459
- </ng-template>
460
- </div>`,
301
+ selector: 'p-step-item',
302
+ standalone: true,
303
+ imports: [CommonModule],
304
+ template: ` <ng-content></ng-content>`,
305
+ changeDetection: ChangeDetectionStrategy.OnPush,
306
+ encapsulation: ViewEncapsulation.None,
461
307
  host: {
462
- '[class.p-steppanel-content]': 'true',
463
- '[class.p-element]': 'true',
464
- '[class.p-toggleable-content]': "orientation === 'vertical'",
308
+ '[class.p-stepitem]': 'true',
309
+ '[class.p-component]': 'true',
310
+ '[attr.data-p-active]': 'isActive()',
465
311
  },
466
312
  }]
467
- }], propDecorators: { id: [{
468
- type: Input
469
- }], orientation: [{
470
- type: Input
471
- }], template: [{
472
- type: Input
473
- }], ariaLabelledby: [{
474
- type: Input
475
- }], stepperPanel: [{
476
- type: Input
477
- }], index: [{
478
- type: Input
479
- }], active: [{
480
- type: Input
481
- }], highlighted: [{
482
- type: Input
483
- }], onClick: [{
484
- type: Output
485
- }], prevCallback: [{
486
- type: Output
487
- }], nextCallback: [{
488
- type: Output
489
- }] } });
490
- class StepperPanel extends BaseComponent {
491
- header;
492
- templates;
493
- headerTemplate;
494
- startTemplate;
313
+ }], ctorParameters: () => [] });
314
+ /**
315
+ * Step is a helper component for Stepper component.
316
+ * @group Components
317
+ */
318
+ class Step extends BaseComponent {
319
+ pcStepper = inject(forwardRef(() => Stepper));
320
+ /**
321
+ * Active value of stepper.
322
+ * @type {number}
323
+ * @defaultValue undefined
324
+ * @group Props
325
+ */
326
+ value = model();
327
+ /**
328
+ * Whether the step is disabled.
329
+ * @type {boolean}
330
+ * @defaultValue false
331
+ * @group Props
332
+ */
333
+ disabled = input(false, {
334
+ transform: (v) => transformToBoolean(v),
335
+ });
336
+ active = computed(() => this.pcStepper.isStepActive(this.value()));
337
+ isStepDisabled = computed(() => !this.active() && (this.pcStepper.linear() || this.disabled()));
338
+ id = computed(() => `${this.pcStepper.id()}_step_${this.value()}`);
339
+ ariaControls = computed(() => `${this.pcStepper.id()}_steppanel_${this.value()}`);
340
+ isSeparatorVisible = computed(() => {
341
+ if (this.pcStepper.stepList()) {
342
+ const index = ObjectUtils.findIndexInList(this.el.nativeElement, this.pcStepper.stepList().el.nativeElement.children);
343
+ const stepLen = DomHandler.find(this.pcStepper.stepList().el.nativeElement, '[data-pc-name="step"]').length;
344
+ return index !== stepLen - 1;
345
+ }
346
+ });
347
+ /**
348
+ * Content template.
349
+ * @type {TemplateRef<StepContentTemplateContext>}
350
+ * @group Templates
351
+ */
495
352
  contentTemplate;
496
- separatorTemplate;
497
- endTemplate;
353
+ templates;
498
354
  ngAfterContentInit() {
499
- this.templates.forEach((item) => {
355
+ this.templates?.forEach((item) => {
500
356
  switch (item.getType()) {
501
- case 'header':
502
- this.headerTemplate = item.template;
503
- break;
504
357
  case 'content':
505
358
  this.contentTemplate = item.template;
506
359
  break;
507
- case 'separator':
508
- this.separatorTemplate = item.template;
509
- break;
510
360
  }
511
361
  });
512
362
  }
513
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperPanel, deps: null, target: i0.ɵɵFactoryTarget.Component });
514
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepperPanel, selector: "p-stepperPanel, p-stepper-panel", inputs: { header: "header" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content> `, isInline: true });
363
+ onStepClick() {
364
+ this.pcStepper.updateValue(this.value());
365
+ }
366
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Step, deps: null, target: i0.ɵɵFactoryTarget.Component });
367
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: Step, isStandalone: true, selector: "p-step", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class.p-step": "true", "class.p-step-active": "active()", "class.p-disabled": "isStepDisabled()", "class.p-component": "true", "attr.aria-current": "active() ? \"step\" : undefined", "attr.role": "\"presentation\"", "attr.data-p-active": "active()", "attr.data-p-disabled": "isStepDisabled()", "attr.data-pc-name": "\"step\"" } }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
368
+ @if (!contentTemplate) {
369
+ <button
370
+ [attr.id]="id()"
371
+ class="p-step-header"
372
+ [attr.role]="'tab'"
373
+ [tabindex]="isStepDisabled() ? -1 : undefined"
374
+ [attr.aria-controls]="ariaControls()"
375
+ [disabled]="isStepDisabled()"
376
+ (click)="onStepClick()"
377
+ >
378
+ <span class="p-step-number">{{ value() }}</span>
379
+ <span class="p-step-title">
380
+ <ng-content></ng-content>
381
+ </span>
382
+ </button>
383
+ @if (isSeparatorVisible()) {
384
+ <p-stepper-separator />
385
+ }
386
+ } @else {
387
+ <ng-container
388
+ *ngTemplateOutlet="contentTemplate; context: { activateCallback: onStepClick.bind(this), value: value(), active: active() }"
389
+ ></ng-container>
390
+ @if (isSeparatorVisible()) {
391
+ <p-stepper-separator />
392
+ }
393
+ }
394
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: StepperSeparator, selector: "p-stepper-separator" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
515
395
  }
516
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperPanel, decorators: [{
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Step, decorators: [{
517
397
  type: Component,
518
398
  args: [{
519
- selector: 'p-stepperPanel, p-stepper-panel',
520
- template: ` <ng-content></ng-content> `,
399
+ selector: 'p-step',
400
+ standalone: true,
401
+ imports: [CommonModule, StepperSeparator],
402
+ template: `
403
+ @if (!contentTemplate) {
404
+ <button
405
+ [attr.id]="id()"
406
+ class="p-step-header"
407
+ [attr.role]="'tab'"
408
+ [tabindex]="isStepDisabled() ? -1 : undefined"
409
+ [attr.aria-controls]="ariaControls()"
410
+ [disabled]="isStepDisabled()"
411
+ (click)="onStepClick()"
412
+ >
413
+ <span class="p-step-number">{{ value() }}</span>
414
+ <span class="p-step-title">
415
+ <ng-content></ng-content>
416
+ </span>
417
+ </button>
418
+ @if (isSeparatorVisible()) {
419
+ <p-stepper-separator />
420
+ }
421
+ } @else {
422
+ <ng-container
423
+ *ngTemplateOutlet="contentTemplate; context: { activateCallback: onStepClick.bind(this), value: value(), active: active() }"
424
+ ></ng-container>
425
+ @if (isSeparatorVisible()) {
426
+ <p-stepper-separator />
427
+ }
428
+ }
429
+ `,
430
+ changeDetection: ChangeDetectionStrategy.OnPush,
431
+ encapsulation: ViewEncapsulation.None,
432
+ host: {
433
+ '[class.p-step]': 'true',
434
+ '[class.p-step-active]': 'active()',
435
+ '[class.p-disabled]': 'isStepDisabled()',
436
+ '[class.p-component]': 'true',
437
+ '[attr.aria-current]': 'active() ? "step" : undefined',
438
+ '[attr.role]': '"presentation"',
439
+ '[attr.data-p-active]': 'active()',
440
+ '[attr.data-p-disabled]': 'isStepDisabled()',
441
+ '[attr.data-pc-name]': '"step"',
442
+ },
521
443
  }]
522
- }], propDecorators: { header: [{
523
- type: Input
444
+ }], propDecorators: { contentTemplate: [{
445
+ type: ContentChild,
446
+ args: ['content']
524
447
  }], templates: [{
525
448
  type: ContentChildren,
526
449
  args: [PrimeTemplate]
527
450
  }] } });
528
451
  /**
529
- * The Stepper component displays a wizard-like workflow by guiding users through the multi-step progression.
452
+ * StepPanel is a helper component for Stepper component.
530
453
  * @group Components
531
454
  */
532
- class Stepper extends BaseComponent {
455
+ class StepPanel extends BaseComponent {
456
+ pcStepper = inject(forwardRef(() => Stepper));
457
+ transitionOptions = computed(() => this.pcStepper.transitionOptions());
533
458
  /**
534
- * Active step index of stepper.
459
+ * Active value of stepper.
460
+ * @type {number}
461
+ * @defaultValue undefined
535
462
  * @group Props
536
463
  */
537
- activeStep = 0;
538
- /**
539
- * Orientation of the stepper.
540
- * @group Props
541
- */
542
- orientation = 'horizontal';
543
- /**
544
- * Whether the steps are clickable or not.
545
- * @group Props
546
- */
547
- linear = false;
464
+ value = model(undefined);
465
+ active = computed(() => this.pcStepper.value() === this.value());
466
+ ariaControls = computed(() => `${this.pcStepper.id()}_step_${this.value()}`);
467
+ id = computed(() => `${this.pcStepper.id()}_steppanel_${this.value()}`);
468
+ isVertical = computed(() => this.pcStepper.stepItems().length > 0);
469
+ isSeparatorVisible = computed(() => {
470
+ if (this.pcStepper.stepItems()) {
471
+ const stepLen = this.pcStepper.stepItems().length;
472
+ const stepPanelElements = DomHandler.find(this.pcStepper.el.nativeElement, '[data-pc-name="steppanel"]');
473
+ const index = ObjectUtils.findIndexInList(this.el.nativeElement, stepPanelElements);
474
+ return index !== stepLen - 1;
475
+ }
476
+ });
548
477
  /**
549
- * Transition options of the animation.
550
- * @group Props
478
+ * Content template.
479
+ * @type {TemplateRef<StepPanelContentTemplateContext>}
480
+ * @group Templates
551
481
  */
552
- transitionOptions = '400ms cubic-bezier(0.86, 0, 0.07, 1)';
553
- stepperPanels;
482
+ contentTemplate;
554
483
  templates;
555
- onClick = new EventEmitter();
556
- /**
557
- * Emitted when the value changes.
558
- * @param {ActiveStepChangeEvent} event - custom change event.
559
- * @group Emits
560
- */
561
- activeStepChange = new EventEmitter();
562
- _componentStyle = inject(StepperStyle);
563
- headerTemplate;
564
- startTemplate;
565
- separatorTemplate;
566
- endTemplate;
567
- id = UniqueComponentId();
568
- panels;
569
- isStepActive(index) {
570
- return this.activeStep === index;
571
- }
572
- getStepProp(step) {
573
- if (step?.header) {
574
- return step.header;
575
- }
576
- if (step?.content) {
577
- return step.content;
578
- }
579
- return undefined;
580
- }
581
- getStepKey(step, index) {
582
- return this.getStepProp(step) || index;
583
- }
584
- getStepHeaderActionId(index) {
585
- return `${this.id}_${index}_header_action`;
586
- }
587
- getStepContentId(index) {
588
- return `${this.id}_${index}_content`;
589
- }
590
- updateActiveStep(event, index) {
591
- this.activeStep = index;
592
- this.activeStepChange.emit(this.activeStep);
593
- }
594
- onItemClick(event, index) {
595
- if (this.linear) {
596
- event.preventDefault();
597
- return;
598
- }
599
- if (index !== this.activeStep) {
600
- this.updateActiveStep(event, index);
601
- }
602
- }
603
- isItemDisabled(index) {
604
- return this.linear && !this.isStepActive(index);
605
- }
606
- prevCallback(event, index) {
607
- if (index !== 0) {
608
- this.updateActiveStep(event, index - 1);
609
- }
610
- }
611
- nextCallback(event, index) {
612
- if (index !== this.stepperPanels.length - 1) {
613
- this.updateActiveStep(event, index + 1);
614
- }
615
- }
616
- trackByFn(index) {
617
- return index;
618
- }
619
484
  ngAfterContentInit() {
620
- this.panels = this.stepperPanels.toArray();
621
- this.templates.forEach((item) => {
485
+ this.templates?.forEach((item) => {
622
486
  switch (item.getType()) {
623
- case 'start':
624
- this.startTemplate = item.template;
625
- break;
626
- case 'end':
627
- this.endTemplate = item.template;
628
- break;
629
- default:
487
+ case 'content':
488
+ this.contentTemplate = item.template;
630
489
  break;
631
490
  }
632
491
  });
633
492
  }
634
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Stepper, deps: null, target: i0.ɵɵFactoryTarget.Component });
635
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: Stepper, selector: "p-stepper", inputs: { activeStep: "activeStep", orientation: "orientation", linear: "linear", transitionOptions: "transitionOptions" }, outputs: { onClick: "onClick", activeStepChange: "activeStepChange" }, host: { properties: { "class.p-stepper": "true", "class.p-component": "true", "class.p-stepper-vertical": "orientation === 'vertical'" } }, providers: [StepperStyle], queries: [{ propertyName: "stepperPanels", predicate: StepperPanel }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
636
- <ng-container *ngIf="startTemplate">
637
- <ng-container *ngTemplateOutlet="startTemplate"></ng-container>
638
- </ng-container>
639
- <ng-container *ngIf="orientation === 'horizontal'; else vertical">
640
- <ul class="p-steplist">
641
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
642
- <li
643
- [key]="getStepKey(step, index)"
644
- class="p-step"
645
- [ngClass]="{
646
- 'p-step-active': isStepActive(index),
647
- 'p-disabled': isItemDisabled(index),
648
- }"
649
- [attr.aria-current]="isStepActive(index) ? 'step' : undefined"
650
- role="presentation"
651
- [data-pc-name]="stepperPanel"
652
- [data-p-highlight]="isStepActive(index)"
653
- [data-p-disabled]="isItemDisabled(index)"
654
- [data-pc-index]="index"
655
- [data-p-active]="isStepActive(index)"
656
- >
657
- <p-stepper-header
658
- [id]="getStepHeaderActionId(index)"
659
- [template]="step.headerTemplate"
660
- [stepperPanel]="step"
661
- [getStepProp]="getStepProp(step, 'header')"
662
- [index]="index"
663
- [disabled]="isItemDisabled(index)"
664
- [active]="isStepActive(index)"
665
- [highlighted]="index < activeStep"
666
- [aria-controls]="getStepContentId(index)"
667
- (onClick)="onItemClick($event, index)"
668
- ></p-stepper-header>
669
-
670
- <ng-container *ngIf="index !== stepperPanels.length - 1">
671
- <p-stepper-separator
672
- [template]="step.separatorTemplate"
673
- [separatorClass]="'p-stepper-separator'"
674
- [stepperPanel]="step"
675
- [index]="index"
676
- [active]="isStepActive(index)"
677
- [highlighted]="index < activeStep"
678
- />
679
- </ng-container>
680
- </li>
681
- </ng-template>
682
- </ul>
683
- <div class="p-stepper-panels">
684
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
685
- <ng-container *ngIf="isStepActive(index)">
686
- <p-stepper-content
687
- [id]="getStepContentId(index)"
688
- [template]="step.contentTemplate"
689
- [orientation]="orientation"
690
- [stepperPanel]="step"
691
- [index]="index"
692
- [active]="isStepActive(index)"
693
- [highlighted]="index < activeStep"
694
- [ariaLabelledby]="getStepHeaderActionId(index)"
695
- (onClick)="onItemClick($event, index)"
696
- (nextCallback)="nextCallback($event, index)"
697
- (prevCallback)="prevCallback($event, index)"
698
- />
699
- </ng-container>
700
- </ng-template>
701
- </div>
702
- </ng-container>
703
- <ng-template #vertical>
704
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
705
- <div
706
- [key]="getStepKey(step, index)"
707
- class="p-stepitem"
708
- [ngClass]="{
709
- 'p-stepitem-active': orientation === 'vertical' && isStepActive(index),
710
- }"
711
- [attr.aria-current]="isStepActive(index) ? 'step' : undefined"
712
- [data-pc-name]="'stepperpanel'"
713
- [data-p-highlight]="isStepActive(index)"
714
- [data-p-disabled]="isItemDisabled(index)"
715
- [data-pc-index]="index"
716
- [data-p-active]="isStepActive(index)"
717
- >
718
- <p-stepper-header
719
- [id]="getStepHeaderActionId(index)"
720
- [template]="step.headerTemplate"
721
- [stepperPanel]="step"
722
- [getStepProp]="getStepProp(step, 'header')"
723
- [index]="index"
724
- [disabled]="isItemDisabled(index)"
725
- [active]="isStepActive(index)"
726
- [highlighted]="index < activeStep"
727
- [aria-controls]="getStepContentId(index)"
728
- class="p-step"
729
- [ngClass]="{ 'p-step-active': isStepActive(index) }"
730
- (onClick)="onItemClick($event, index)"
731
- ></p-stepper-header>
732
-
733
- <div
734
- class="p-steppanel"
735
- [ngClass]="{ 'p-steppanel-active': isStepActive(index) }"
736
- [@tabContent]="
737
- isStepActive(index)
738
- ? { value: 'visible', params: { transitionParams: transitionOptions } }
739
- : { value: 'hidden', params: { transitionParams: transitionOptions } }
740
- "
741
- >
742
- <ng-container *ngIf="index !== stepperPanels.length - 1">
743
- <p-stepper-separator
744
- [template]="step.separatorTemplate"
745
- [separatorClass]="'p-stepper-separator'"
746
- [stepperPanel]="step"
747
- [index]="index"
748
- [active]="isStepActive(index)"
749
- [highlighted]="index < activeStep"
750
- />
751
- </ng-container>
752
- <p-stepper-content
753
- [id]="getStepContentId(index)"
754
- [template]="step.contentTemplate"
755
- [orientation]="orientation"
756
- [stepperPanel]="step"
757
- [index]="index"
758
- [active]="isStepActive(index)"
759
- [highlighted]="index < activeStep"
760
- [ariaLabelledby]="getStepHeaderActionId(index)"
761
- (onClick)="onItemClick($event, index)"
762
- (nextCallback)="nextCallback($event, index)"
763
- (prevCallback)="prevCallback($event, index)"
764
- />
765
- </div>
766
- </div>
767
- </ng-template>
768
- </ng-template>
769
- <ng-container *ngIf="endTemplate">
770
- <ng-container *ngTemplateOutlet="endTemplate"></ng-container>
771
- </ng-container>
772
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: StepperContent, selector: "p-stepperContent, p-stepper-content", inputs: ["id", "orientation", "template", "ariaLabelledby", "stepperPanel", "index", "active", "highlighted"], outputs: ["onClick", "prevCallback", "nextCallback"] }, { kind: "component", type: StepperHeader, selector: "p-stepperHeader, p-stepper-header", inputs: ["id", "template", "stepperPanel", "index", "disabled", "active", "highlighted", "getStepProp", "ariaControls"], outputs: ["onClick"] }, { kind: "component", type: StepperSeparator, selector: "p-stepperSeparator, p-stepper-separator", inputs: ["template", "separatorClass", "stepperPanel", "index", "active", "highlighted"] }], animations: [
773
- trigger('tabContent', [
493
+ updateValue(value) {
494
+ this.pcStepper.updateValue(value);
495
+ }
496
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepPanel, deps: null, target: i0.ɵɵFactoryTarget.Component });
497
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: StepPanel, isStandalone: true, selector: "p-step-panel", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class.p-steppanel": "true", "class.p-component": "true", "class.p-steppanel-active": "active()", "attr.role": "\"tabpanel\"", "attr.aria-controls": "ariaControls()", "attr.id": "id()", "attr.data-p-active": "active()", "attr.data-pc-name": "\"steppanel\"" } }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
498
+ @if (isSeparatorVisible()) {
499
+ <p-stepper-separator />
500
+ }
501
+ <div
502
+ class="p-steppanel-content"
503
+ [@content]="
504
+ isVertical()
505
+ ? active()
506
+ ? { value: 'visible', params: { transitionParams: transitionOptions() } }
507
+ : { value: 'hidden', params: { transitionParams: transitionOptions() } }
508
+ : undefined
509
+ "
510
+ >
511
+ @if (active()) {
512
+ <ng-container
513
+ *ngTemplateOutlet="
514
+ contentTemplate;
515
+ context: { activateCallback: updateValue.bind(this), value: value(), active: active() }
516
+ "
517
+ ></ng-container>
518
+ }
519
+ </div>
520
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: StepperSeparator, selector: "p-stepper-separator" }], animations: [
521
+ trigger('content', [
774
522
  state('hidden', style({
775
523
  height: '0',
776
524
  visibility: 'hidden',
@@ -784,158 +532,50 @@ class Stepper extends BaseComponent {
784
532
  ]),
785
533
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
786
534
  }
787
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Stepper, decorators: [{
535
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepPanel, decorators: [{
788
536
  type: Component,
789
537
  args: [{
790
- selector: 'p-stepper',
538
+ selector: 'p-step-panel',
539
+ standalone: true,
540
+ imports: [CommonModule, StepperSeparator],
791
541
  template: `
792
- <ng-container *ngIf="startTemplate">
793
- <ng-container *ngTemplateOutlet="startTemplate"></ng-container>
794
- </ng-container>
795
- <ng-container *ngIf="orientation === 'horizontal'; else vertical">
796
- <ul class="p-steplist">
797
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
798
- <li
799
- [key]="getStepKey(step, index)"
800
- class="p-step"
801
- [ngClass]="{
802
- 'p-step-active': isStepActive(index),
803
- 'p-disabled': isItemDisabled(index),
804
- }"
805
- [attr.aria-current]="isStepActive(index) ? 'step' : undefined"
806
- role="presentation"
807
- [data-pc-name]="stepperPanel"
808
- [data-p-highlight]="isStepActive(index)"
809
- [data-p-disabled]="isItemDisabled(index)"
810
- [data-pc-index]="index"
811
- [data-p-active]="isStepActive(index)"
812
- >
813
- <p-stepper-header
814
- [id]="getStepHeaderActionId(index)"
815
- [template]="step.headerTemplate"
816
- [stepperPanel]="step"
817
- [getStepProp]="getStepProp(step, 'header')"
818
- [index]="index"
819
- [disabled]="isItemDisabled(index)"
820
- [active]="isStepActive(index)"
821
- [highlighted]="index < activeStep"
822
- [aria-controls]="getStepContentId(index)"
823
- (onClick)="onItemClick($event, index)"
824
- ></p-stepper-header>
825
-
826
- <ng-container *ngIf="index !== stepperPanels.length - 1">
827
- <p-stepper-separator
828
- [template]="step.separatorTemplate"
829
- [separatorClass]="'p-stepper-separator'"
830
- [stepperPanel]="step"
831
- [index]="index"
832
- [active]="isStepActive(index)"
833
- [highlighted]="index < activeStep"
834
- />
835
- </ng-container>
836
- </li>
837
- </ng-template>
838
- </ul>
839
- <div class="p-stepper-panels">
840
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
841
- <ng-container *ngIf="isStepActive(index)">
842
- <p-stepper-content
843
- [id]="getStepContentId(index)"
844
- [template]="step.contentTemplate"
845
- [orientation]="orientation"
846
- [stepperPanel]="step"
847
- [index]="index"
848
- [active]="isStepActive(index)"
849
- [highlighted]="index < activeStep"
850
- [ariaLabelledby]="getStepHeaderActionId(index)"
851
- (onClick)="onItemClick($event, index)"
852
- (nextCallback)="nextCallback($event, index)"
853
- (prevCallback)="prevCallback($event, index)"
854
- />
855
- </ng-container>
856
- </ng-template>
857
- </div>
858
- </ng-container>
859
- <ng-template #vertical>
860
- <ng-template ngFor let-step [ngForOf]="panels" let-index="index" [ngForTrackBy]="trackByFn">
861
- <div
862
- [key]="getStepKey(step, index)"
863
- class="p-stepitem"
864
- [ngClass]="{
865
- 'p-stepitem-active': orientation === 'vertical' && isStepActive(index),
866
- }"
867
- [attr.aria-current]="isStepActive(index) ? 'step' : undefined"
868
- [data-pc-name]="'stepperpanel'"
869
- [data-p-highlight]="isStepActive(index)"
870
- [data-p-disabled]="isItemDisabled(index)"
871
- [data-pc-index]="index"
872
- [data-p-active]="isStepActive(index)"
873
- >
874
- <p-stepper-header
875
- [id]="getStepHeaderActionId(index)"
876
- [template]="step.headerTemplate"
877
- [stepperPanel]="step"
878
- [getStepProp]="getStepProp(step, 'header')"
879
- [index]="index"
880
- [disabled]="isItemDisabled(index)"
881
- [active]="isStepActive(index)"
882
- [highlighted]="index < activeStep"
883
- [aria-controls]="getStepContentId(index)"
884
- class="p-step"
885
- [ngClass]="{ 'p-step-active': isStepActive(index) }"
886
- (onClick)="onItemClick($event, index)"
887
- ></p-stepper-header>
888
-
889
- <div
890
- class="p-steppanel"
891
- [ngClass]="{ 'p-steppanel-active': isStepActive(index) }"
892
- [@tabContent]="
893
- isStepActive(index)
894
- ? { value: 'visible', params: { transitionParams: transitionOptions } }
895
- : { value: 'hidden', params: { transitionParams: transitionOptions } }
896
- "
897
- >
898
- <ng-container *ngIf="index !== stepperPanels.length - 1">
899
- <p-stepper-separator
900
- [template]="step.separatorTemplate"
901
- [separatorClass]="'p-stepper-separator'"
902
- [stepperPanel]="step"
903
- [index]="index"
904
- [active]="isStepActive(index)"
905
- [highlighted]="index < activeStep"
906
- />
907
- </ng-container>
908
- <p-stepper-content
909
- [id]="getStepContentId(index)"
910
- [template]="step.contentTemplate"
911
- [orientation]="orientation"
912
- [stepperPanel]="step"
913
- [index]="index"
914
- [active]="isStepActive(index)"
915
- [highlighted]="index < activeStep"
916
- [ariaLabelledby]="getStepHeaderActionId(index)"
917
- (onClick)="onItemClick($event, index)"
918
- (nextCallback)="nextCallback($event, index)"
919
- (prevCallback)="prevCallback($event, index)"
920
- />
921
- </div>
922
- </div>
923
- </ng-template>
924
- </ng-template>
925
- <ng-container *ngIf="endTemplate">
926
- <ng-container *ngTemplateOutlet="endTemplate"></ng-container>
927
- </ng-container>
542
+ @if (isSeparatorVisible()) {
543
+ <p-stepper-separator />
544
+ }
545
+ <div
546
+ class="p-steppanel-content"
547
+ [@content]="
548
+ isVertical()
549
+ ? active()
550
+ ? { value: 'visible', params: { transitionParams: transitionOptions() } }
551
+ : { value: 'hidden', params: { transitionParams: transitionOptions() } }
552
+ : undefined
553
+ "
554
+ >
555
+ @if (active()) {
556
+ <ng-container
557
+ *ngTemplateOutlet="
558
+ contentTemplate;
559
+ context: { activateCallback: updateValue.bind(this), value: value(), active: active() }
560
+ "
561
+ ></ng-container>
562
+ }
563
+ </div>
928
564
  `,
929
565
  changeDetection: ChangeDetectionStrategy.OnPush,
930
566
  encapsulation: ViewEncapsulation.None,
931
- providers: [StepperStyle],
932
567
  host: {
933
- '[class.p-stepper]': 'true',
568
+ '[class.p-steppanel]': 'true',
934
569
  '[class.p-component]': 'true',
935
- '[class.p-stepper-vertical]': "orientation === 'vertical'",
570
+ '[class.p-steppanel-active]': 'active()',
571
+ '[attr.role]': '"tabpanel"',
572
+ '[attr.aria-controls]': 'ariaControls()',
573
+ '[attr.id]': 'id()',
574
+ '[attr.data-p-active]': 'active()',
575
+ '[attr.data-pc-name]': '"steppanel"',
936
576
  },
937
577
  animations: [
938
- trigger('tabContent', [
578
+ trigger('content', [
939
579
  state('hidden', style({
940
580
  height: '0',
941
581
  visibility: 'hidden',
@@ -949,36 +589,102 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
949
589
  ]),
950
590
  ],
951
591
  }]
952
- }], propDecorators: { activeStep: [{
953
- type: Input
954
- }], orientation: [{
955
- type: Input
956
- }], linear: [{
957
- type: Input
958
- }], transitionOptions: [{
959
- type: Input
960
- }], stepperPanels: [{
961
- type: ContentChildren,
962
- args: [StepperPanel]
592
+ }], propDecorators: { contentTemplate: [{
593
+ type: ContentChild,
594
+ args: ['content']
963
595
  }], templates: [{
964
596
  type: ContentChildren,
965
597
  args: [PrimeTemplate]
966
- }], onClick: [{
967
- type: Output
968
- }], activeStepChange: [{
969
- type: Output
970
598
  }] } });
599
+ class StepPanels extends BaseComponent {
600
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepPanels, deps: null, target: i0.ɵɵFactoryTarget.Component });
601
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: StepPanels, isStandalone: true, selector: "p-step-panels", host: { properties: { "class.p-steppanels": "true", "class.p-component": "true" } }, usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
602
+ }
603
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepPanels, decorators: [{
604
+ type: Component,
605
+ args: [{
606
+ selector: 'p-step-panels',
607
+ standalone: true,
608
+ imports: [CommonModule],
609
+ template: ` <ng-content></ng-content>`,
610
+ changeDetection: ChangeDetectionStrategy.OnPush,
611
+ encapsulation: ViewEncapsulation.None,
612
+ host: {
613
+ '[class.p-steppanels]': 'true',
614
+ '[class.p-component]': 'true',
615
+ },
616
+ }]
617
+ }] });
618
+ /**
619
+ * Stepper is a component that streamlines a wizard-like workflow, organizing content into coherent steps and visually guiding users through a numbered progression in a multistep process.
620
+ * @group Components
621
+ */
622
+ class Stepper extends BaseComponent {
623
+ /**
624
+ * A model that can hold a numeric value or be undefined.
625
+ * @defaultValue undefined
626
+ * @type {ModelSignal<number | undefined>}
627
+ * @group Props
628
+ */
629
+ value = model(undefined);
630
+ /**
631
+ * A boolean variable that captures user input.
632
+ * @defaultValue false
633
+ * @type {InputSignalWithTransform<any, boolean >}
634
+ * @group Props
635
+ */
636
+ linear = input(false, {
637
+ transform: (v) => transformToBoolean(v),
638
+ });
639
+ /**
640
+ * Transition options of the animation.
641
+ * @defaultValue 400ms cubic-bezier(0.86, 0, 0.07, 1)
642
+ * @type {InputSignal<string >}
643
+ * @group Props
644
+ */
645
+ transitionOptions = input('400ms cubic-bezier(0.86, 0, 0.07, 1)');
646
+ _componentStyle = inject(StepperStyle);
647
+ id = signal(UniqueComponentId());
648
+ stepItems = contentChildren(StepItem);
649
+ steps = contentChildren(Step);
650
+ stepList = contentChild(StepList);
651
+ updateValue(value) {
652
+ this.value.set(value);
653
+ }
654
+ isStepActive(value) {
655
+ return this.value() === value;
656
+ }
657
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Stepper, deps: null, target: i0.ɵɵFactoryTarget.Component });
658
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.2", type: Stepper, isStandalone: true, selector: "p-stepper", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, linear: { classPropertyName: "linear", publicName: "linear", isSignal: true, isRequired: false, transformFunction: null }, transitionOptions: { classPropertyName: "transitionOptions", publicName: "transitionOptions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange" }, host: { properties: { "class.p-stepper": "true", "class.p-component": "true", "attr.role": "\"tablist\"", "attr.id": "id()" } }, providers: [StepperStyle], queries: [{ propertyName: "stepItems", predicate: StepItem, isSignal: true }, { propertyName: "steps", predicate: Step, isSignal: true }, { propertyName: "stepList", first: true, predicate: StepList, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
659
+ }
660
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: Stepper, decorators: [{
661
+ type: Component,
662
+ args: [{
663
+ selector: 'p-stepper',
664
+ standalone: true,
665
+ imports: [CommonModule],
666
+ template: ` <ng-content></ng-content>`,
667
+ changeDetection: ChangeDetectionStrategy.OnPush,
668
+ encapsulation: ViewEncapsulation.None,
669
+ providers: [StepperStyle],
670
+ host: {
671
+ '[class.p-stepper]': 'true',
672
+ '[class.p-component]': 'true',
673
+ '[attr.role]': '"tablist"',
674
+ '[attr.id]': 'id()',
675
+ },
676
+ }]
677
+ }] });
971
678
  class StepperModule {
972
679
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
973
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, declarations: [Stepper, StepperPanel, StepperPanel, StepperContent, StepperHeader, StepperSeparator], imports: [CommonModule, SharedModule], exports: [Stepper, StepperPanel, StepperContent, StepperHeader, StepperSeparator, SharedModule] });
974
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, imports: [CommonModule, SharedModule, SharedModule] });
680
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, imports: [Stepper, StepList, StepPanels, StepPanel, StepItem, Step, StepperSeparator, SharedModule], exports: [Stepper, StepList, StepPanels, StepPanel, StepItem, Step, StepperSeparator, SharedModule] });
681
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, imports: [Stepper, StepList, StepPanels, StepPanel, StepItem, Step, StepperSeparator, SharedModule, SharedModule] });
975
682
  }
976
683
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: StepperModule, decorators: [{
977
684
  type: NgModule,
978
685
  args: [{
979
- imports: [CommonModule, SharedModule],
980
- exports: [Stepper, StepperPanel, StepperContent, StepperHeader, StepperSeparator, SharedModule],
981
- declarations: [Stepper, StepperPanel, StepperPanel, StepperContent, StepperHeader, StepperSeparator],
686
+ imports: [Stepper, StepList, StepPanels, StepPanel, StepItem, Step, StepperSeparator, SharedModule],
687
+ exports: [Stepper, StepList, StepPanels, StepPanel, StepItem, Step, StepperSeparator, SharedModule],
982
688
  }]
983
689
  }] });
984
690
 
@@ -986,5 +692,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
986
692
  * Generated bundle index. Do not edit.
987
693
  */
988
694
 
989
- export { Stepper, StepperContent, StepperHeader, StepperModule, StepperPanel, StepperSeparator };
695
+ export { Step, StepItem, StepList, StepPanel, StepPanels, Stepper, StepperClasses, StepperModule, StepperSeparator, StepperStyle };
990
696
  //# sourceMappingURL=primeng-stepper.mjs.map