primeng 20.2.0 → 20.3.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (711) hide show
  1. package/accordion/index.d.ts +31 -12
  2. package/animateonscroll/index.d.ts +5 -6
  3. package/api/index.d.ts +128 -2
  4. package/autocomplete/index.d.ts +18 -208
  5. package/autofocus/index.d.ts +2 -2
  6. package/avatar/index.d.ts +12 -5
  7. package/avatargroup/index.d.ts +10 -5
  8. package/badge/index.d.ts +18 -10
  9. package/base/index.d.ts +4 -9
  10. package/basecomponent/index.d.ts +147 -29
  11. package/baseeditableholder/index.d.ts +3 -3
  12. package/baseinput/index.d.ts +3 -3
  13. package/basemodelholder/index.d.ts +3 -3
  14. package/bind/index.d.ts +38 -0
  15. package/blockui/index.d.ts +17 -21
  16. package/breadcrumb/index.d.ts +15 -45
  17. package/button/index.d.ts +113 -153
  18. package/buttongroup/index.d.ts +1 -1
  19. package/card/index.d.ts +18 -36
  20. package/carousel/index.d.ts +18 -74
  21. package/cascadeselect/index.d.ts +23 -131
  22. package/chart/index.d.ts +13 -7
  23. package/checkbox/index.d.ts +16 -35
  24. package/chip/index.d.ts +15 -36
  25. package/classnames/index.d.ts +3 -9
  26. package/colorpicker/index.d.ts +15 -27
  27. package/config/index.d.ts +203 -24
  28. package/confirmdialog/index.d.ts +22 -49
  29. package/confirmpopup/index.d.ts +15 -36
  30. package/contextmenu/index.d.ts +19 -8
  31. package/dataview/index.d.ts +17 -184
  32. package/datepicker/index.d.ts +23 -215
  33. package/dialog/index.d.ts +16 -40
  34. package/divider/index.d.ts +10 -4
  35. package/dock/index.d.ts +17 -29
  36. package/drawer/index.d.ts +16 -37
  37. package/dynamicdialog/index.d.ts +67 -75
  38. package/editor/index.d.ts +16 -132
  39. package/fesm2022/primeng-accordion.mjs +93 -57
  40. package/fesm2022/primeng-accordion.mjs.map +1 -1
  41. package/fesm2022/primeng-animateonscroll.mjs +10 -13
  42. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  43. package/fesm2022/primeng-api.mjs +31 -31
  44. package/fesm2022/primeng-autocomplete.mjs +91 -61
  45. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  46. package/fesm2022/primeng-autofocus.mjs +9 -9
  47. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  48. package/fesm2022/primeng-avatar.mjs +33 -24
  49. package/fesm2022/primeng-avatar.mjs.map +1 -1
  50. package/fesm2022/primeng-avatargroup.mjs +24 -22
  51. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  52. package/fesm2022/primeng-badge.mjs +65 -47
  53. package/fesm2022/primeng-badge.mjs.map +1 -1
  54. package/fesm2022/primeng-base.mjs +10 -13
  55. package/fesm2022/primeng-base.mjs.map +1 -1
  56. package/fesm2022/primeng-basecomponent.mjs +345 -94
  57. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  58. package/fesm2022/primeng-baseeditableholder.mjs +3 -3
  59. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  60. package/fesm2022/primeng-baseinput.mjs +3 -3
  61. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  62. package/fesm2022/primeng-basemodelholder.mjs +3 -3
  63. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  64. package/fesm2022/primeng-bind.mjs +94 -0
  65. package/fesm2022/primeng-bind.mjs.map +1 -0
  66. package/fesm2022/primeng-blockui.mjs +30 -24
  67. package/fesm2022/primeng-blockui.mjs.map +1 -1
  68. package/fesm2022/primeng-breadcrumb.mjs +91 -66
  69. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  70. package/fesm2022/primeng-button.mjs +247 -207
  71. package/fesm2022/primeng-button.mjs.map +1 -1
  72. package/fesm2022/primeng-buttongroup.mjs +14 -14
  73. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  74. package/fesm2022/primeng-card.mjs +58 -38
  75. package/fesm2022/primeng-card.mjs.map +1 -1
  76. package/fesm2022/primeng-carousel.mjs +142 -45
  77. package/fesm2022/primeng-carousel.mjs.map +1 -1
  78. package/fesm2022/primeng-cascadeselect.mjs +221 -193
  79. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  80. package/fesm2022/primeng-chart.mjs +43 -20
  81. package/fesm2022/primeng-chart.mjs.map +1 -1
  82. package/fesm2022/primeng-checkbox.mjs +47 -33
  83. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  84. package/fesm2022/primeng-chip.mjs +43 -36
  85. package/fesm2022/primeng-chip.mjs.map +1 -1
  86. package/fesm2022/primeng-classnames.mjs +15 -40
  87. package/fesm2022/primeng-classnames.mjs.map +1 -1
  88. package/fesm2022/primeng-colorpicker.mjs +49 -41
  89. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  90. package/fesm2022/primeng-config.mjs +23 -8
  91. package/fesm2022/primeng-config.mjs.map +1 -1
  92. package/fesm2022/primeng-confirmdialog.mjs +57 -33
  93. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  94. package/fesm2022/primeng-confirmpopup.mjs +45 -29
  95. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  96. package/fesm2022/primeng-contextmenu.mjs +131 -83
  97. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  98. package/fesm2022/primeng-dataview.mjs +51 -42
  99. package/fesm2022/primeng-dataview.mjs.map +1 -1
  100. package/fesm2022/primeng-datepicker.mjs +292 -186
  101. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  102. package/fesm2022/primeng-dialog.mjs +73 -40
  103. package/fesm2022/primeng-dialog.mjs.map +1 -1
  104. package/fesm2022/primeng-divider.mjs +29 -21
  105. package/fesm2022/primeng-divider.mjs.map +1 -1
  106. package/fesm2022/primeng-dock.mjs +63 -43
  107. package/fesm2022/primeng-dock.mjs.map +1 -1
  108. package/fesm2022/primeng-dragdrop.mjs +10 -10
  109. package/fesm2022/primeng-drawer.mjs +54 -43
  110. package/fesm2022/primeng-drawer.mjs.map +1 -1
  111. package/fesm2022/primeng-dynamicdialog.mjs +361 -564
  112. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  113. package/fesm2022/primeng-editor.mjs +101 -89
  114. package/fesm2022/primeng-editor.mjs.map +1 -1
  115. package/fesm2022/primeng-fieldset.mjs +64 -47
  116. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  117. package/fesm2022/primeng-fileupload.mjs +125 -120
  118. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  119. package/fesm2022/primeng-floatlabel.mjs +28 -19
  120. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  121. package/fesm2022/primeng-fluid.mjs +24 -14
  122. package/fesm2022/primeng-fluid.mjs.map +1 -1
  123. package/fesm2022/primeng-focustrap.mjs +9 -11
  124. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  125. package/fesm2022/primeng-galleria.mjs +346 -214
  126. package/fesm2022/primeng-galleria.mjs.map +1 -1
  127. package/fesm2022/primeng-iconfield.mjs +30 -18
  128. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
  130. package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
  131. package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
  132. package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
  133. package/fesm2022/primeng-icons-angledown.mjs +3 -3
  134. package/fesm2022/primeng-icons-angleleft.mjs +3 -3
  135. package/fesm2022/primeng-icons-angleright.mjs +3 -3
  136. package/fesm2022/primeng-icons-angleup.mjs +3 -3
  137. package/fesm2022/primeng-icons-arrowdown.mjs +4 -5
  138. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
  140. package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
  141. package/fesm2022/primeng-icons-arrowleft.mjs +4 -5
  142. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-arrowright.mjs +3 -3
  144. package/fesm2022/primeng-icons-arrowup.mjs +4 -5
  145. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  146. package/fesm2022/primeng-icons-ban.mjs +4 -5
  147. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  148. package/fesm2022/primeng-icons-bars.mjs +3 -3
  149. package/fesm2022/primeng-icons-baseicon.mjs +7 -6
  150. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-blank.mjs +3 -3
  152. package/fesm2022/primeng-icons-calendar.mjs +3 -3
  153. package/fesm2022/primeng-icons-caretleft.mjs +3 -3
  154. package/fesm2022/primeng-icons-caretright.mjs +3 -3
  155. package/fesm2022/primeng-icons-check.mjs +3 -3
  156. package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
  157. package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
  158. package/fesm2022/primeng-icons-chevronright.mjs +3 -3
  159. package/fesm2022/primeng-icons-chevronup.mjs +3 -3
  160. package/fesm2022/primeng-icons-exclamationtriangle.mjs +4 -5
  161. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  162. package/fesm2022/primeng-icons-eye.mjs +3 -3
  163. package/fesm2022/primeng-icons-eyeslash.mjs +4 -5
  164. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-filter.mjs +4 -5
  166. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-filterfill.mjs +3 -3
  168. package/fesm2022/primeng-icons-filterslash.mjs +4 -5
  169. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  170. package/fesm2022/primeng-icons-home.mjs +4 -5
  171. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  172. package/fesm2022/primeng-icons-infocircle.mjs +4 -5
  173. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  174. package/fesm2022/primeng-icons-minus.mjs +3 -3
  175. package/fesm2022/primeng-icons-pencil.mjs +4 -5
  176. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-plus.mjs +4 -5
  178. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-refresh.mjs +4 -5
  180. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-search.mjs +4 -5
  182. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-searchminus.mjs +4 -5
  184. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-searchplus.mjs +4 -5
  186. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-sortalt.mjs +4 -5
  188. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-sortamountdown.mjs +4 -5
  190. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-sortamountupalt.mjs +4 -5
  192. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-spinner.mjs +4 -5
  194. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-star.mjs +4 -5
  196. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-starfill.mjs +4 -5
  198. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-thlarge.mjs +4 -5
  200. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-times.mjs +3 -3
  202. package/fesm2022/primeng-icons-timescircle.mjs +4 -5
  203. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  204. package/fesm2022/primeng-icons-trash.mjs +4 -5
  205. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  206. package/fesm2022/primeng-icons-undo.mjs +4 -5
  207. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  208. package/fesm2022/primeng-icons-upload.mjs +4 -5
  209. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  210. package/fesm2022/primeng-icons-windowmaximize.mjs +4 -5
  211. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  212. package/fesm2022/primeng-icons-windowminimize.mjs +4 -5
  213. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  214. package/fesm2022/primeng-iftalabel.mjs +27 -17
  215. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  216. package/fesm2022/primeng-image.mjs +92 -42
  217. package/fesm2022/primeng-image.mjs.map +1 -1
  218. package/fesm2022/primeng-imagecompare.mjs +31 -24
  219. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  220. package/fesm2022/primeng-inplace.mjs +46 -36
  221. package/fesm2022/primeng-inplace.mjs.map +1 -1
  222. package/fesm2022/primeng-inputgroup.mjs +28 -21
  223. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  224. package/fesm2022/primeng-inputgroupaddon.mjs +25 -19
  225. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  226. package/fesm2022/primeng-inputicon.mjs +27 -15
  227. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  228. package/fesm2022/primeng-inputmask.mjs +38 -29
  229. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  230. package/fesm2022/primeng-inputnumber.mjs +67 -60
  231. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  232. package/fesm2022/primeng-inputotp.mjs +31 -19
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputtext.mjs +39 -20
  235. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  236. package/fesm2022/primeng-keyfilter.mjs +7 -7
  237. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  238. package/fesm2022/primeng-knob.mjs +35 -27
  239. package/fesm2022/primeng-knob.mjs.map +1 -1
  240. package/fesm2022/primeng-listbox.mjs +146 -61
  241. package/fesm2022/primeng-listbox.mjs.map +1 -1
  242. package/fesm2022/primeng-megamenu.mjs +363 -345
  243. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  244. package/fesm2022/primeng-menu.mjs +116 -60
  245. package/fesm2022/primeng-menu.mjs.map +1 -1
  246. package/fesm2022/primeng-menubar.mjs +122 -86
  247. package/fesm2022/primeng-menubar.mjs.map +1 -1
  248. package/fesm2022/primeng-message.mjs +47 -39
  249. package/fesm2022/primeng-message.mjs.map +1 -1
  250. package/fesm2022/primeng-metergroup.mjs +53 -43
  251. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  252. package/fesm2022/primeng-multiselect.mjs +196 -147
  253. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  254. package/fesm2022/primeng-orderlist.mjs +80 -49
  255. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  256. package/fesm2022/primeng-organizationchart.mjs +93 -67
  257. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  258. package/fesm2022/primeng-overlay.mjs +67 -80
  259. package/fesm2022/primeng-overlay.mjs.map +1 -1
  260. package/fesm2022/primeng-overlaybadge.mjs +31 -22
  261. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  262. package/fesm2022/primeng-paginator.mjs +65 -53
  263. package/fesm2022/primeng-paginator.mjs.map +1 -1
  264. package/fesm2022/primeng-panel.mjs +108 -79
  265. package/fesm2022/primeng-panel.mjs.map +1 -1
  266. package/fesm2022/primeng-panelmenu.mjs +385 -308
  267. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  268. package/fesm2022/primeng-passthrough.mjs +21 -0
  269. package/fesm2022/primeng-passthrough.mjs.map +1 -0
  270. package/fesm2022/primeng-password.mjs +80 -67
  271. package/fesm2022/primeng-password.mjs.map +1 -1
  272. package/fesm2022/primeng-picklist.mjs +153 -95
  273. package/fesm2022/primeng-picklist.mjs.map +1 -1
  274. package/fesm2022/primeng-popover.mjs +44 -33
  275. package/fesm2022/primeng-popover.mjs.map +1 -1
  276. package/fesm2022/primeng-progressbar.mjs +37 -29
  277. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  278. package/fesm2022/primeng-progressspinner.mjs +30 -23
  279. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  280. package/fesm2022/primeng-radiobutton.mjs +41 -32
  281. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  282. package/fesm2022/primeng-rating.mjs +48 -38
  283. package/fesm2022/primeng-rating.mjs.map +1 -1
  284. package/fesm2022/primeng-ripple.mjs +17 -19
  285. package/fesm2022/primeng-ripple.mjs.map +1 -1
  286. package/fesm2022/primeng-scroller.mjs +50 -42
  287. package/fesm2022/primeng-scroller.mjs.map +1 -1
  288. package/fesm2022/primeng-scrollpanel.mjs +46 -39
  289. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  290. package/fesm2022/primeng-scrolltop.mjs +31 -21
  291. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  292. package/fesm2022/primeng-select.mjs +161 -82
  293. package/fesm2022/primeng-select.mjs.map +1 -1
  294. package/fesm2022/primeng-selectbutton.mjs +36 -25
  295. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  296. package/fesm2022/primeng-skeleton.mjs +24 -17
  297. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  298. package/fesm2022/primeng-slider.mjs +43 -23
  299. package/fesm2022/primeng-slider.mjs.map +1 -1
  300. package/fesm2022/primeng-speeddial.mjs +70 -46
  301. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  302. package/fesm2022/primeng-splitbutton.mjs +38 -21
  303. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  304. package/fesm2022/primeng-splitter.mjs +38 -34
  305. package/fesm2022/primeng-splitter.mjs.map +1 -1
  306. package/fesm2022/primeng-stepper.mjs +163 -88
  307. package/fesm2022/primeng-stepper.mjs.map +1 -1
  308. package/fesm2022/primeng-steps.mjs +14 -16
  309. package/fesm2022/primeng-steps.mjs.map +1 -1
  310. package/fesm2022/primeng-styleclass.mjs +7 -7
  311. package/fesm2022/primeng-table.mjs +714 -643
  312. package/fesm2022/primeng-table.mjs.map +1 -1
  313. package/fesm2022/primeng-tabs.mjs +183 -116
  314. package/fesm2022/primeng-tabs.mjs.map +1 -1
  315. package/fesm2022/primeng-tag.mjs +35 -25
  316. package/fesm2022/primeng-tag.mjs.map +1 -1
  317. package/fesm2022/primeng-terminal.mjs +51 -45
  318. package/fesm2022/primeng-terminal.mjs.map +1 -1
  319. package/fesm2022/primeng-textarea.mjs +28 -23
  320. package/fesm2022/primeng-textarea.mjs.map +1 -1
  321. package/fesm2022/primeng-tieredmenu.mjs +136 -73
  322. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  323. package/fesm2022/primeng-timeline.mjs +42 -34
  324. package/fesm2022/primeng-timeline.mjs.map +1 -1
  325. package/fesm2022/primeng-toast.mjs +66 -61
  326. package/fesm2022/primeng-toast.mjs.map +1 -1
  327. package/fesm2022/primeng-togglebutton.mjs +39 -29
  328. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  329. package/fesm2022/primeng-toggleswitch.mjs +39 -29
  330. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  331. package/fesm2022/primeng-toolbar.mjs +37 -29
  332. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  333. package/fesm2022/primeng-tooltip.mjs +32 -33
  334. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  335. package/fesm2022/primeng-tree.mjs +185 -114
  336. package/fesm2022/primeng-tree.mjs.map +1 -1
  337. package/fesm2022/primeng-treeselect.mjs +95 -49
  338. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  339. package/fesm2022/primeng-treetable.mjs +283 -249
  340. package/fesm2022/primeng-treetable.mjs.map +1 -1
  341. package/fesm2022/primeng-types-accordion.mjs +4 -0
  342. package/fesm2022/primeng-types-accordion.mjs.map +1 -0
  343. package/fesm2022/primeng-types-autocomplete.mjs +4 -0
  344. package/fesm2022/primeng-types-autocomplete.mjs.map +1 -0
  345. package/fesm2022/primeng-types-avatar.mjs +4 -0
  346. package/fesm2022/primeng-types-avatar.mjs.map +1 -0
  347. package/fesm2022/primeng-types-avatargroup.mjs +4 -0
  348. package/fesm2022/primeng-types-avatargroup.mjs.map +1 -0
  349. package/fesm2022/primeng-types-badge.mjs +4 -0
  350. package/fesm2022/primeng-types-badge.mjs.map +1 -0
  351. package/fesm2022/primeng-types-blockui.mjs +4 -0
  352. package/fesm2022/primeng-types-blockui.mjs.map +1 -0
  353. package/fesm2022/primeng-types-breadcrumb.mjs +4 -0
  354. package/fesm2022/primeng-types-breadcrumb.mjs.map +1 -0
  355. package/fesm2022/primeng-types-button.mjs +4 -0
  356. package/fesm2022/primeng-types-button.mjs.map +1 -0
  357. package/fesm2022/primeng-types-card.mjs +4 -0
  358. package/fesm2022/primeng-types-card.mjs.map +1 -0
  359. package/fesm2022/primeng-types-carousel.mjs +4 -0
  360. package/fesm2022/primeng-types-carousel.mjs.map +1 -0
  361. package/fesm2022/primeng-types-cascadeselect.mjs +4 -0
  362. package/fesm2022/primeng-types-cascadeselect.mjs.map +1 -0
  363. package/fesm2022/primeng-types-chart.mjs +4 -0
  364. package/fesm2022/primeng-types-chart.mjs.map +1 -0
  365. package/fesm2022/primeng-types-checkbox.mjs +4 -0
  366. package/fesm2022/primeng-types-checkbox.mjs.map +1 -0
  367. package/fesm2022/primeng-types-chip.mjs +4 -0
  368. package/fesm2022/primeng-types-chip.mjs.map +1 -0
  369. package/fesm2022/primeng-types-colorpicker.mjs +4 -0
  370. package/fesm2022/primeng-types-colorpicker.mjs.map +1 -0
  371. package/fesm2022/primeng-types-confirmdialog.mjs +4 -0
  372. package/fesm2022/primeng-types-confirmdialog.mjs.map +1 -0
  373. package/fesm2022/primeng-types-confirmpopup.mjs +4 -0
  374. package/fesm2022/primeng-types-confirmpopup.mjs.map +1 -0
  375. package/fesm2022/primeng-types-contextmenu.mjs +4 -0
  376. package/fesm2022/primeng-types-contextmenu.mjs.map +1 -0
  377. package/fesm2022/primeng-types-dataview.mjs +4 -0
  378. package/fesm2022/primeng-types-dataview.mjs.map +1 -0
  379. package/fesm2022/primeng-types-datepicker.mjs +4 -0
  380. package/fesm2022/primeng-types-datepicker.mjs.map +1 -0
  381. package/fesm2022/primeng-types-dialog.mjs +4 -0
  382. package/fesm2022/primeng-types-dialog.mjs.map +1 -0
  383. package/fesm2022/primeng-types-divider.mjs +4 -0
  384. package/fesm2022/primeng-types-divider.mjs.map +1 -0
  385. package/fesm2022/primeng-types-dock.mjs +4 -0
  386. package/fesm2022/primeng-types-dock.mjs.map +1 -0
  387. package/fesm2022/primeng-types-drawer.mjs +4 -0
  388. package/fesm2022/primeng-types-drawer.mjs.map +1 -0
  389. package/fesm2022/primeng-types-editor.mjs +4 -0
  390. package/fesm2022/primeng-types-editor.mjs.map +1 -0
  391. package/fesm2022/primeng-types-fieldset.mjs +4 -0
  392. package/fesm2022/primeng-types-fieldset.mjs.map +1 -0
  393. package/fesm2022/primeng-types-fileupload.mjs +4 -0
  394. package/fesm2022/primeng-types-fileupload.mjs.map +1 -0
  395. package/fesm2022/primeng-types-floatlabel.mjs +4 -0
  396. package/fesm2022/primeng-types-floatlabel.mjs.map +1 -0
  397. package/fesm2022/primeng-types-fluid.mjs +4 -0
  398. package/fesm2022/primeng-types-fluid.mjs.map +1 -0
  399. package/fesm2022/primeng-types-galleria.mjs +4 -0
  400. package/fesm2022/primeng-types-galleria.mjs.map +1 -0
  401. package/fesm2022/primeng-types-iconfield.mjs +4 -0
  402. package/fesm2022/primeng-types-iconfield.mjs.map +1 -0
  403. package/fesm2022/primeng-types-iftalabel.mjs +4 -0
  404. package/fesm2022/primeng-types-iftalabel.mjs.map +1 -0
  405. package/fesm2022/primeng-types-image.mjs +4 -0
  406. package/fesm2022/primeng-types-image.mjs.map +1 -0
  407. package/fesm2022/primeng-types-imagecompare.mjs +4 -0
  408. package/fesm2022/primeng-types-imagecompare.mjs.map +1 -0
  409. package/fesm2022/primeng-types-inplace.mjs +4 -0
  410. package/fesm2022/primeng-types-inplace.mjs.map +1 -0
  411. package/fesm2022/primeng-types-inputgroup.mjs +4 -0
  412. package/fesm2022/primeng-types-inputgroup.mjs.map +1 -0
  413. package/fesm2022/primeng-types-inputgroupaddon.mjs +4 -0
  414. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +1 -0
  415. package/fesm2022/primeng-types-inputicon.mjs +4 -0
  416. package/fesm2022/primeng-types-inputicon.mjs.map +1 -0
  417. package/fesm2022/primeng-types-inputmask.mjs +4 -0
  418. package/fesm2022/primeng-types-inputmask.mjs.map +1 -0
  419. package/fesm2022/primeng-types-inputnumber.mjs +4 -0
  420. package/fesm2022/primeng-types-inputnumber.mjs.map +1 -0
  421. package/fesm2022/primeng-types-inputotp.mjs +4 -0
  422. package/fesm2022/primeng-types-inputotp.mjs.map +1 -0
  423. package/fesm2022/primeng-types-inputtext.mjs +4 -0
  424. package/fesm2022/primeng-types-inputtext.mjs.map +1 -0
  425. package/fesm2022/primeng-types-knob.mjs +4 -0
  426. package/fesm2022/primeng-types-knob.mjs.map +1 -0
  427. package/fesm2022/primeng-types-listbox.mjs +4 -0
  428. package/fesm2022/primeng-types-listbox.mjs.map +1 -0
  429. package/fesm2022/primeng-types-megamenu.mjs +4 -0
  430. package/fesm2022/primeng-types-megamenu.mjs.map +1 -0
  431. package/fesm2022/primeng-types-menu.mjs +4 -0
  432. package/fesm2022/primeng-types-menu.mjs.map +1 -0
  433. package/fesm2022/primeng-types-menubar.mjs +4 -0
  434. package/fesm2022/primeng-types-menubar.mjs.map +1 -0
  435. package/fesm2022/primeng-types-message.mjs +4 -0
  436. package/fesm2022/primeng-types-message.mjs.map +1 -0
  437. package/fesm2022/primeng-types-metergroup.mjs +4 -0
  438. package/fesm2022/primeng-types-metergroup.mjs.map +1 -0
  439. package/fesm2022/primeng-types-multiselect.mjs +4 -0
  440. package/fesm2022/primeng-types-multiselect.mjs.map +1 -0
  441. package/fesm2022/primeng-types-orderlist.mjs +4 -0
  442. package/fesm2022/primeng-types-orderlist.mjs.map +1 -0
  443. package/fesm2022/primeng-types-organizationchart.mjs +4 -0
  444. package/fesm2022/primeng-types-organizationchart.mjs.map +1 -0
  445. package/fesm2022/primeng-types-overlay.mjs +4 -0
  446. package/fesm2022/primeng-types-overlay.mjs.map +1 -0
  447. package/fesm2022/primeng-types-overlaybadge.mjs +4 -0
  448. package/fesm2022/primeng-types-overlaybadge.mjs.map +1 -0
  449. package/fesm2022/primeng-types-paginator.mjs +4 -0
  450. package/fesm2022/primeng-types-paginator.mjs.map +1 -0
  451. package/fesm2022/primeng-types-panel.mjs +4 -0
  452. package/fesm2022/primeng-types-panel.mjs.map +1 -0
  453. package/fesm2022/primeng-types-panelmenu.mjs +4 -0
  454. package/fesm2022/primeng-types-panelmenu.mjs.map +1 -0
  455. package/fesm2022/primeng-types-password.mjs +4 -0
  456. package/fesm2022/primeng-types-password.mjs.map +1 -0
  457. package/fesm2022/primeng-types-picklist.mjs +4 -0
  458. package/fesm2022/primeng-types-picklist.mjs.map +1 -0
  459. package/fesm2022/primeng-types-popover.mjs +4 -0
  460. package/fesm2022/primeng-types-popover.mjs.map +1 -0
  461. package/fesm2022/primeng-types-progressbar.mjs +4 -0
  462. package/fesm2022/primeng-types-progressbar.mjs.map +1 -0
  463. package/fesm2022/primeng-types-progressspinner.mjs +4 -0
  464. package/fesm2022/primeng-types-progressspinner.mjs.map +1 -0
  465. package/fesm2022/primeng-types-radiobutton.mjs +4 -0
  466. package/fesm2022/primeng-types-radiobutton.mjs.map +1 -0
  467. package/fesm2022/primeng-types-rating.mjs +4 -0
  468. package/fesm2022/primeng-types-rating.mjs.map +1 -0
  469. package/fesm2022/primeng-types-scroller.mjs +4 -0
  470. package/fesm2022/primeng-types-scroller.mjs.map +1 -0
  471. package/fesm2022/primeng-types-scrollpanel.mjs +4 -0
  472. package/fesm2022/primeng-types-scrollpanel.mjs.map +1 -0
  473. package/fesm2022/primeng-types-scrolltop.mjs +4 -0
  474. package/fesm2022/primeng-types-scrolltop.mjs.map +1 -0
  475. package/fesm2022/primeng-types-select.mjs +4 -0
  476. package/fesm2022/primeng-types-select.mjs.map +1 -0
  477. package/fesm2022/primeng-types-selectbutton.mjs +4 -0
  478. package/fesm2022/primeng-types-selectbutton.mjs.map +1 -0
  479. package/fesm2022/primeng-types-skeleton.mjs +4 -0
  480. package/fesm2022/primeng-types-skeleton.mjs.map +1 -0
  481. package/fesm2022/primeng-types-slider.mjs +4 -0
  482. package/fesm2022/primeng-types-slider.mjs.map +1 -0
  483. package/fesm2022/primeng-types-speeddial.mjs +4 -0
  484. package/fesm2022/primeng-types-speeddial.mjs.map +1 -0
  485. package/fesm2022/primeng-types-splitbutton.mjs +4 -0
  486. package/fesm2022/primeng-types-splitbutton.mjs.map +1 -0
  487. package/fesm2022/primeng-types-splitter.mjs +4 -0
  488. package/fesm2022/primeng-types-splitter.mjs.map +1 -0
  489. package/fesm2022/primeng-types-stepper.mjs +4 -0
  490. package/fesm2022/primeng-types-stepper.mjs.map +1 -0
  491. package/fesm2022/primeng-types-table.mjs +4 -0
  492. package/fesm2022/primeng-types-table.mjs.map +1 -0
  493. package/fesm2022/primeng-types-tabs.mjs +4 -0
  494. package/fesm2022/primeng-types-tabs.mjs.map +1 -0
  495. package/fesm2022/primeng-types-tag.mjs +4 -0
  496. package/fesm2022/primeng-types-tag.mjs.map +1 -0
  497. package/fesm2022/primeng-types-terminal.mjs +4 -0
  498. package/fesm2022/primeng-types-terminal.mjs.map +1 -0
  499. package/fesm2022/primeng-types-textarea.mjs +4 -0
  500. package/fesm2022/primeng-types-textarea.mjs.map +1 -0
  501. package/fesm2022/primeng-types-tieredmenu.mjs +4 -0
  502. package/fesm2022/primeng-types-tieredmenu.mjs.map +1 -0
  503. package/fesm2022/primeng-types-timeline.mjs +4 -0
  504. package/fesm2022/primeng-types-timeline.mjs.map +1 -0
  505. package/fesm2022/primeng-types-toast.mjs +4 -0
  506. package/fesm2022/primeng-types-toast.mjs.map +1 -0
  507. package/fesm2022/primeng-types-togglebutton.mjs +4 -0
  508. package/fesm2022/primeng-types-togglebutton.mjs.map +1 -0
  509. package/fesm2022/primeng-types-toggleswitch.mjs +4 -0
  510. package/fesm2022/primeng-types-toggleswitch.mjs.map +1 -0
  511. package/fesm2022/primeng-types-toolbar.mjs +4 -0
  512. package/fesm2022/primeng-types-toolbar.mjs.map +1 -0
  513. package/fesm2022/primeng-types-tooltip.mjs +4 -0
  514. package/fesm2022/primeng-types-tooltip.mjs.map +1 -0
  515. package/fesm2022/primeng-types-tree.mjs +4 -0
  516. package/fesm2022/primeng-types-tree.mjs.map +1 -0
  517. package/fesm2022/primeng-types-treeselect.mjs +4 -0
  518. package/fesm2022/primeng-types-treeselect.mjs.map +1 -0
  519. package/fesm2022/primeng-types-treetable.mjs +4 -0
  520. package/fesm2022/primeng-types-treetable.mjs.map +1 -0
  521. package/fesm2022/primeng-usestyle.mjs +3 -3
  522. package/fieldset/index.d.ts +16 -55
  523. package/fileupload/index.d.ts +18 -246
  524. package/floatlabel/index.d.ts +13 -6
  525. package/fluid/index.d.ts +9 -2
  526. package/focustrap/index.d.ts +2 -2
  527. package/galleria/index.d.ts +50 -132
  528. package/iconfield/index.d.ts +13 -5
  529. package/icons/arrowdown/index.d.ts +3 -4
  530. package/icons/arrowleft/index.d.ts +1 -1
  531. package/icons/arrowup/index.d.ts +1 -1
  532. package/icons/ban/index.d.ts +1 -1
  533. package/icons/exclamationtriangle/index.d.ts +3 -4
  534. package/icons/eyeslash/index.d.ts +1 -1
  535. package/icons/filter/index.d.ts +1 -1
  536. package/icons/filterslash/index.d.ts +1 -1
  537. package/icons/home/index.d.ts +1 -1
  538. package/icons/infocircle/index.d.ts +1 -1
  539. package/icons/pencil/index.d.ts +1 -1
  540. package/icons/plus/index.d.ts +1 -1
  541. package/icons/refresh/index.d.ts +1 -1
  542. package/icons/search/index.d.ts +1 -1
  543. package/icons/searchminus/index.d.ts +1 -1
  544. package/icons/searchplus/index.d.ts +1 -1
  545. package/icons/sortalt/index.d.ts +1 -1
  546. package/icons/sortamountdown/index.d.ts +1 -1
  547. package/icons/sortamountupalt/index.d.ts +1 -1
  548. package/icons/spinner/index.d.ts +1 -1
  549. package/icons/star/index.d.ts +1 -1
  550. package/icons/starfill/index.d.ts +1 -1
  551. package/icons/thlarge/index.d.ts +1 -1
  552. package/icons/timescircle/index.d.ts +1 -1
  553. package/icons/trash/index.d.ts +1 -1
  554. package/icons/undo/index.d.ts +1 -1
  555. package/icons/upload/index.d.ts +1 -1
  556. package/icons/windowmaximize/index.d.ts +1 -1
  557. package/icons/windowminimize/index.d.ts +1 -1
  558. package/iftalabel/index.d.ts +15 -8
  559. package/image/index.d.ts +14 -71
  560. package/imagecompare/index.d.ts +15 -9
  561. package/inplace/index.d.ts +16 -29
  562. package/inputgroup/index.d.ts +12 -6
  563. package/inputgroupaddon/index.d.ts +11 -5
  564. package/inputicon/index.d.ts +11 -4
  565. package/inputmask/index.d.ts +21 -29
  566. package/inputnumber/index.d.ts +17 -49
  567. package/inputotp/index.d.ts +14 -8
  568. package/inputtext/index.d.ts +14 -6
  569. package/keyfilter/index.d.ts +0 -5
  570. package/knob/index.d.ts +11 -5
  571. package/listbox/index.d.ts +19 -177
  572. package/megamenu/index.d.ts +23 -44
  573. package/menu/index.d.ts +22 -10
  574. package/menubar/index.d.ts +22 -52
  575. package/message/index.d.ts +15 -9
  576. package/metergroup/index.d.ts +17 -132
  577. package/multiselect/index.d.ts +23 -259
  578. package/orderlist/index.d.ts +16 -120
  579. package/organizationchart/index.d.ts +18 -68
  580. package/overlay/index.d.ts +36 -8
  581. package/overlaybadge/index.d.ts +11 -5
  582. package/package.json +582 -214
  583. package/paginator/index.d.ts +16 -47
  584. package/panel/index.d.ts +32 -55
  585. package/panelmenu/index.d.ts +24 -35
  586. package/passthrough/index.d.ts +14 -0
  587. package/password/index.d.ts +22 -12
  588. package/picklist/index.d.ts +17 -252
  589. package/popover/index.d.ts +15 -8
  590. package/progressbar/index.d.ts +14 -7
  591. package/progressspinner/index.d.ts +11 -5
  592. package/radiobutton/index.d.ts +15 -25
  593. package/rating/index.d.ts +15 -43
  594. package/ripple/index.d.ts +5 -5
  595. package/scroller/index.d.ts +20 -190
  596. package/scrollpanel/index.d.ts +17 -22
  597. package/scrolltop/index.d.ts +16 -28
  598. package/select/index.d.ts +24 -166
  599. package/selectbutton/index.d.ts +14 -53
  600. package/skeleton/index.d.ts +11 -5
  601. package/slider/index.d.ts +14 -47
  602. package/speeddial/index.d.ts +19 -54
  603. package/splitbutton/index.d.ts +15 -39
  604. package/splitter/index.d.ts +15 -44
  605. package/stepper/index.d.ts +50 -22
  606. package/steps/index.d.ts +5 -5
  607. package/table/index.d.ts +167 -829
  608. package/tabs/index.d.ts +37 -19
  609. package/tag/index.d.ts +13 -18
  610. package/terminal/index.d.ts +14 -8
  611. package/textarea/index.d.ts +13 -8
  612. package/tieredmenu/index.d.ts +25 -41
  613. package/timeline/index.d.ts +14 -51
  614. package/toast/index.d.ts +20 -65
  615. package/togglebutton/index.d.ts +15 -60
  616. package/toggleswitch/index.d.ts +15 -24
  617. package/toolbar/index.d.ts +14 -27
  618. package/tooltip/index.d.ts +13 -8
  619. package/tree/index.d.ts +24 -213
  620. package/treeselect/index.d.ts +17 -118
  621. package/treetable/index.d.ts +96 -548
  622. package/types/accordion/index.d.ts +88 -0
  623. package/types/autocomplete/index.d.ts +299 -0
  624. package/types/avatar/index.d.ts +40 -0
  625. package/types/avatargroup/index.d.ts +28 -0
  626. package/types/badge/index.d.ts +26 -0
  627. package/types/blockui/index.d.ts +39 -0
  628. package/types/breadcrumb/index.d.ts +70 -0
  629. package/types/button/index.d.ts +105 -0
  630. package/types/card/index.d.ts +75 -0
  631. package/types/carousel/index.d.ts +140 -0
  632. package/types/cascadeselect/index.d.ts +198 -0
  633. package/types/chart/index.d.ts +32 -0
  634. package/types/checkbox/index.d.ts +62 -0
  635. package/types/chip/index.d.ts +71 -0
  636. package/types/colorpicker/index.d.ts +73 -0
  637. package/types/confirmdialog/index.d.ts +121 -0
  638. package/types/confirmpopup/index.d.ts +82 -0
  639. package/types/contextmenu/index.d.ts +89 -0
  640. package/types/dataview/index.d.ts +234 -0
  641. package/types/datepicker/index.d.ts +464 -0
  642. package/types/dialog/index.d.ts +98 -0
  643. package/types/divider/index.d.ts +28 -0
  644. package/types/dock/index.d.ts +67 -0
  645. package/types/drawer/index.d.ts +77 -0
  646. package/types/editor/index.d.ts +210 -0
  647. package/types/fieldset/index.d.ts +92 -0
  648. package/types/fileupload/index.d.ts +576 -0
  649. package/types/floatlabel/index.d.ts +26 -0
  650. package/types/fluid/index.d.ts +28 -0
  651. package/types/galleria/index.d.ts +233 -0
  652. package/types/iconfield/index.d.ts +26 -0
  653. package/types/iftalabel/index.d.ts +26 -0
  654. package/types/image/index.d.ts +193 -0
  655. package/types/imagecompare/index.d.ts +28 -0
  656. package/types/inplace/index.d.ts +61 -0
  657. package/types/inputgroup/index.d.ts +28 -0
  658. package/types/inputgroupaddon/index.d.ts +28 -0
  659. package/types/inputicon/index.d.ts +26 -0
  660. package/types/inputmask/index.d.ts +56 -0
  661. package/types/inputnumber/index.d.ts +95 -0
  662. package/types/inputotp/index.d.ts +31 -0
  663. package/types/inputtext/index.d.ts +24 -0
  664. package/types/knob/index.d.ts +40 -0
  665. package/types/listbox/index.d.ts +280 -0
  666. package/types/megamenu/index.d.ts +122 -0
  667. package/types/menu/index.d.ts +101 -0
  668. package/types/menubar/index.d.ts +121 -0
  669. package/types/message/index.d.ts +48 -0
  670. package/types/metergroup/index.d.ts +178 -0
  671. package/types/multiselect/index.d.ts +362 -0
  672. package/types/orderlist/index.d.ts +164 -0
  673. package/types/organizationchart/index.d.ts +138 -0
  674. package/types/overlay/index.d.ts +28 -0
  675. package/types/overlaybadge/index.d.ts +34 -0
  676. package/types/paginator/index.d.ts +131 -0
  677. package/types/panel/index.d.ts +92 -0
  678. package/types/panelmenu/index.d.ts +114 -0
  679. package/types/password/index.d.ts +97 -0
  680. package/types/picklist/index.d.ts +353 -0
  681. package/types/popover/index.d.ts +52 -0
  682. package/types/progressbar/index.d.ts +54 -0
  683. package/types/progressspinner/index.d.ts +36 -0
  684. package/types/radiobutton/index.d.ts +51 -0
  685. package/types/rating/index.d.ts +82 -0
  686. package/types/scroller/index.d.ts +221 -0
  687. package/types/scrollpanel/index.d.ts +51 -0
  688. package/types/scrolltop/index.d.ts +52 -0
  689. package/types/select/index.d.ts +288 -0
  690. package/types/selectbutton/index.d.ts +77 -0
  691. package/types/skeleton/index.d.ts +28 -0
  692. package/types/slider/index.d.ts +78 -0
  693. package/types/speeddial/index.d.ts +82 -0
  694. package/types/splitbutton/index.d.ts +70 -0
  695. package/types/splitter/index.d.ts +70 -0
  696. package/types/stepper/index.d.ts +153 -0
  697. package/types/table/index.d.ts +884 -0
  698. package/types/tabs/index.d.ts +119 -0
  699. package/types/tag/index.d.ts +47 -0
  700. package/types/terminal/index.d.ts +60 -0
  701. package/types/textarea/index.d.ts +28 -0
  702. package/types/tieredmenu/index.d.ts +87 -0
  703. package/types/timeline/index.d.ts +95 -0
  704. package/types/toast/index.d.ts +114 -0
  705. package/types/togglebutton/index.d.ts +85 -0
  706. package/types/toggleswitch/index.d.ts +51 -0
  707. package/types/toolbar/index.d.ts +55 -0
  708. package/types/tooltip/index.d.ts +32 -0
  709. package/types/tree/index.d.ts +308 -0
  710. package/types/treeselect/index.d.ts +224 -0
  711. package/types/treetable/index.d.ts +640 -0
@@ -1,13 +1,16 @@
1
- import * as i1 from '@angular/common';
1
+ export * from 'primeng/types/button';
2
+ import * as i2 from '@angular/common';
2
3
  import { CommonModule } from '@angular/common';
3
4
  import * as i0 from '@angular/core';
4
- import { Injectable, inject, Directive, contentChild, computed, input, booleanAttribute, Input, EventEmitter, numberAttribute, ContentChildren, ContentChild, Output, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
- import { addClass, isEmpty, findSingle } from '@primeuix/utils';
5
+ import { Injectable, InjectionToken, input, inject, effect, Directive, booleanAttribute, contentChild, computed, Input, EventEmitter, numberAttribute, ContentChildren, ContentChild, Output, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
6
+ import { addClass, isEmpty, findSingle, createElement } from '@primeuix/utils';
6
7
  import { SharedModule, PrimeTemplate } from 'primeng/api';
7
8
  import { AutoFocus } from 'primeng/autofocus';
8
- import * as i2 from 'primeng/badge';
9
+ import * as i3 from 'primeng/badge';
9
10
  import { BadgeModule } from 'primeng/badge';
10
- import { BaseComponent } from 'primeng/basecomponent';
11
+ import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
12
+ import * as i1 from 'primeng/bind';
13
+ import { Bind } from 'primeng/bind';
11
14
  import { Fluid } from 'primeng/fluid';
12
15
  import { SpinnerIcon } from 'primeng/icons';
13
16
  import { Ripple } from 'primeng/ripple';
@@ -55,12 +58,12 @@ const classes = {
55
58
  };
56
59
  class ButtonStyle extends BaseStyle {
57
60
  name = 'button';
58
- theme = style;
61
+ style = style;
59
62
  classes = classes;
60
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
61
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonStyle });
63
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
64
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonStyle });
62
65
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonStyle, decorators: [{
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonStyle, decorators: [{
64
67
  type: Injectable
65
68
  }] });
66
69
  /**
@@ -92,6 +95,10 @@ var ButtonClasses;
92
95
  ButtonClasses["label"] = "p-button-label";
93
96
  })(ButtonClasses || (ButtonClasses = {}));
94
97
 
98
+ const BUTTON_INSTANCE = new InjectionToken('BUTTON_INSTANCE');
99
+ const BUTTON_DIRECTIVE_INSTANCE = new InjectionToken('BUTTON_DIRECTIVE_INSTANCE');
100
+ const BUTTON_LABEL_INSTANCE = new InjectionToken('BUTTON_LABEL_INSTANCE');
101
+ const BUTTON_ICON_INSTANCE = new InjectionToken('BUTTON_ICON_INSTANCE');
95
102
  const INTERNAL_BUTTON_CLASSES = {
96
103
  button: 'p-button',
97
104
  component: 'p-component',
@@ -101,147 +108,134 @@ const INTERNAL_BUTTON_CLASSES = {
101
108
  labelOnly: 'p-button-loading-label-only'
102
109
  };
103
110
  class ButtonLabel extends BaseComponent {
104
- _componentStyle = inject(ButtonStyle);
105
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonLabel, deps: null, target: i0.ɵɵFactoryTarget.Directive });
106
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.2", type: ButtonLabel, isStandalone: true, selector: "[pButtonLabel]", host: { properties: { "class.p-button-label": "true" } }, providers: [ButtonStyle], usesInheritance: true, ngImport: i0 });
111
+ ptButtonLabel = input(...(ngDevMode ? [undefined, { debugName: "ptButtonLabel" }] : []));
112
+ $pcButtonLabel = inject(BUTTON_LABEL_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
113
+ bindDirectiveInstance = inject(Bind, { self: true });
114
+ constructor() {
115
+ super();
116
+ effect(() => {
117
+ this.ptButtonLabel() && this.directivePT.set(this.ptButtonLabel());
118
+ });
119
+ }
120
+ onAfterViewChecked() {
121
+ this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
122
+ }
123
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
124
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.4", type: ButtonLabel, isStandalone: true, selector: "[pButtonLabel]", inputs: { ptButtonLabel: { classPropertyName: "ptButtonLabel", publicName: "ptButtonLabel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.p-button-label": "true" } }, providers: [ButtonStyle, { provide: BUTTON_LABEL_INSTANCE, useExisting: ButtonLabel }, { provide: PARENT_INSTANCE, useExisting: ButtonLabel }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0 });
107
125
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonLabel, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonLabel, decorators: [{
109
127
  type: Directive,
110
128
  args: [{
111
129
  selector: '[pButtonLabel]',
112
- providers: [ButtonStyle],
130
+ providers: [ButtonStyle, { provide: BUTTON_LABEL_INSTANCE, useExisting: ButtonLabel }, { provide: PARENT_INSTANCE, useExisting: ButtonLabel }],
113
131
  standalone: true,
114
132
  host: {
115
133
  '[class.p-button-label]': 'true'
116
- }
134
+ },
135
+ hostDirectives: [Bind]
117
136
  }]
118
- }] });
137
+ }], ctorParameters: () => [] });
119
138
  class ButtonIcon extends BaseComponent {
120
- _componentStyle = inject(ButtonStyle);
121
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonIcon, deps: null, target: i0.ɵɵFactoryTarget.Directive });
122
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.2", type: ButtonIcon, isStandalone: true, selector: "[pButtonIcon]", host: { properties: { "class.p-button-icon": "true" } }, providers: [ButtonStyle], usesInheritance: true, ngImport: i0 });
139
+ ptButtonIcon = input(...(ngDevMode ? [undefined, { debugName: "ptButtonIcon" }] : []));
140
+ $pcButtonIcon = inject(BUTTON_ICON_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
141
+ bindDirectiveInstance = inject(Bind, { self: true });
142
+ constructor() {
143
+ super();
144
+ effect(() => {
145
+ this.ptButtonIcon() && this.directivePT.set(this.ptButtonIcon());
146
+ });
147
+ }
148
+ onAfterViewChecked() {
149
+ this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));
150
+ }
151
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
152
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.4", type: ButtonIcon, isStandalone: true, selector: "[pButtonIcon]", inputs: { ptButtonIcon: { classPropertyName: "ptButtonIcon", publicName: "ptButtonIcon", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.p-button-icon": "true" } }, providers: [ButtonStyle, { provide: BUTTON_ICON_INSTANCE, useExisting: ButtonIcon }, { provide: PARENT_INSTANCE, useExisting: ButtonIcon }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0 });
123
153
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonIcon, decorators: [{
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonIcon, decorators: [{
125
155
  type: Directive,
126
156
  args: [{
127
157
  selector: '[pButtonIcon]',
128
- providers: [ButtonStyle],
158
+ providers: [ButtonStyle, { provide: BUTTON_ICON_INSTANCE, useExisting: ButtonIcon }, { provide: PARENT_INSTANCE, useExisting: ButtonIcon }],
129
159
  standalone: true,
130
160
  host: {
131
161
  '[class.p-button-icon]': 'true'
132
- }
162
+ },
163
+ hostDirectives: [Bind]
133
164
  }]
134
- }] });
165
+ }], ctorParameters: () => [] });
135
166
  /**
136
167
  * Button directive is an extension to button component.
137
168
  * @group Components
138
169
  */
139
170
  class ButtonDirective extends BaseComponent {
140
- /**
141
- * Position of the icon.
142
- * @deprecated utilize pButtonIcon and pButtonLabel directives.
143
- * @group Props
144
- */
145
- iconPos = 'left';
146
- /**
147
- * Uses to pass attributes to the loading icon's DOM element.
148
- * @deprecated utilize pButonIcon instead.
149
- * @group Props
150
- */
151
- loadingIcon;
152
- set label(val) {
153
- this._label = val;
154
- if (this.initialized) {
155
- this.updateLabel();
156
- this.updateIcon();
157
- this.setStyleClass();
158
- }
171
+ $pcButtonDirective = inject(BUTTON_DIRECTIVE_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
172
+ bindDirectiveInstance = inject(Bind, { self: true });
173
+ _componentStyle = inject(ButtonStyle);
174
+ ptButtonDirective = input(...(ngDevMode ? [undefined, { debugName: "ptButtonDirective" }] : []));
175
+ hostName = '';
176
+ onAfterViewChecked() {
177
+ this.bindDirectiveInstance.setAttrs(this.ptm('root'));
159
178
  }
160
- set icon(val) {
161
- this._icon = val;
162
- if (this.initialized) {
163
- this.updateIcon();
164
- this.setStyleClass();
165
- }
179
+ constructor() {
180
+ super();
181
+ effect(() => {
182
+ this.ptButtonDirective() && this.directivePT.set(this.ptButtonDirective());
183
+ });
166
184
  }
167
185
  /**
168
- * Whether the button is in loading state.
186
+ * Add a textual class to the button without a background initially.
169
187
  * @group Props
170
188
  */
171
- get loading() {
172
- return this._loading;
173
- }
174
- set loading(val) {
175
- this._loading = val;
176
- if (this.initialized) {
177
- this.updateIcon();
178
- this.setStyleClass();
179
- }
180
- }
181
- _buttonProps;
182
- iconSignal = contentChild(ButtonIcon, ...(ngDevMode ? [{ debugName: "iconSignal" }] : []));
183
- labelSignal = contentChild(ButtonLabel, ...(ngDevMode ? [{ debugName: "labelSignal" }] : []));
184
- isIconOnly = computed(() => !!(!this.labelSignal() && this.iconSignal()), ...(ngDevMode ? [{ debugName: "isIconOnly" }] : []));
185
- set buttonProps(val) {
186
- this._buttonProps = val;
187
- if (val && typeof val === 'object') {
188
- //@ts-ignore
189
- Object.entries(val).forEach(([k, v]) => this[`_${k}`] !== v && (this[`_${k}`] = v));
190
- }
191
- }
192
- _severity;
189
+ text = false;
193
190
  /**
194
- * Defines the style of the button.
191
+ * Add a plain textual class to the button without a background initially.
195
192
  * @group Props
196
193
  */
197
- get severity() {
198
- return this._severity;
199
- }
200
- set severity(value) {
201
- this._severity = value;
202
- if (this.initialized) {
203
- this.setStyleClass();
204
- }
205
- }
194
+ plain = false;
206
195
  /**
207
196
  * Add a shadow to indicate elevation.
208
197
  * @group Props
209
198
  */
210
199
  raised = false;
211
200
  /**
212
- * Add a circular border radius to the button.
201
+ * Defines the size of the button.
213
202
  * @group Props
214
203
  */
215
- rounded = false;
204
+ size;
216
205
  /**
217
- * Add a textual class to the button without a background initially.
206
+ * Add a border class without a background initially.
218
207
  * @group Props
219
208
  */
220
- text = false;
209
+ outlined = false;
221
210
  /**
222
- * Add a border class without a background initially.
211
+ * Add a circular border radius to the button.
223
212
  * @group Props
224
213
  */
225
- outlined = false;
214
+ rounded = false;
226
215
  /**
227
- * Defines the size of the button.
216
+ * Position of the icon.
228
217
  * @group Props
229
218
  */
230
- size = null;
219
+ iconPos = 'left';
231
220
  /**
232
- * Add a plain textual class to the button without a background initially.
221
+ * Icon to display in loading state.
233
222
  * @group Props
234
223
  */
235
- plain = false;
224
+ loadingIcon;
236
225
  /**
237
226
  * Spans 100% width of the container when enabled.
238
227
  * @defaultValue undefined
239
228
  * @group Props
240
229
  */
241
230
  fluid = input(undefined, ...(ngDevMode ? [{ debugName: "fluid", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
231
+ iconSignal = contentChild(ButtonIcon, ...(ngDevMode ? [{ debugName: "iconSignal" }] : []));
232
+ labelSignal = contentChild(ButtonLabel, ...(ngDevMode ? [{ debugName: "labelSignal" }] : []));
233
+ isIconOnly = computed(() => !!(!this.labelSignal() && this.iconSignal()), ...(ngDevMode ? [{ debugName: "isIconOnly" }] : []));
242
234
  _label;
243
235
  _icon;
244
236
  _loading = false;
237
+ _severity;
238
+ _buttonProps;
245
239
  initialized;
246
240
  get htmlElement() {
247
241
  return this.el.nativeElement;
@@ -257,6 +251,14 @@ class ButtonDirective extends BaseComponent {
257
251
  get label() {
258
252
  return this._label;
259
253
  }
254
+ set label(val) {
255
+ this._label = val;
256
+ if (this.initialized) {
257
+ this.updateLabel();
258
+ this.updateIcon();
259
+ this.setStyleClass();
260
+ }
261
+ }
260
262
  /**
261
263
  * Name of the icon.
262
264
  * @deprecated use pButtonIcon directive instead
@@ -265,6 +267,27 @@ class ButtonDirective extends BaseComponent {
265
267
  get icon() {
266
268
  return this._icon;
267
269
  }
270
+ set icon(val) {
271
+ this._icon = val;
272
+ if (this.initialized) {
273
+ this.updateIcon();
274
+ this.setStyleClass();
275
+ }
276
+ }
277
+ /**
278
+ * Whether the button is in loading state.
279
+ * @group Props
280
+ */
281
+ get loading() {
282
+ return this._loading;
283
+ }
284
+ set loading(val) {
285
+ this._loading = val;
286
+ if (this.initialized) {
287
+ this.updateIcon();
288
+ this.setStyleClass();
289
+ }
290
+ }
268
291
  /**
269
292
  * Used to pass all properties of the ButtonProps to the Button component.
270
293
  * @deprecated assign props directly to the button element.
@@ -273,6 +296,26 @@ class ButtonDirective extends BaseComponent {
273
296
  get buttonProps() {
274
297
  return this._buttonProps;
275
298
  }
299
+ set buttonProps(val) {
300
+ this._buttonProps = val;
301
+ if (val && typeof val === 'object') {
302
+ //@ts-ignore
303
+ Object.entries(val).forEach(([k, v]) => this[`_${k}`] !== v && (this[`_${k}`] = v));
304
+ }
305
+ }
306
+ /**
307
+ * Defines the style of the button.
308
+ * @group Props
309
+ */
310
+ get severity() {
311
+ return this._severity;
312
+ }
313
+ set severity(value) {
314
+ this._severity = value;
315
+ if (this.initialized) {
316
+ this.setStyleClass();
317
+ }
318
+ }
276
319
  spinnerIcon = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg" class="p-icon-spin">
277
320
  <g clip-path="url(#clip0_417_21408)">
278
321
  <path
@@ -286,9 +329,7 @@ class ButtonDirective extends BaseComponent {
286
329
  </clipPath>
287
330
  </defs>
288
331
  </svg>`;
289
- _componentStyle = inject(ButtonStyle);
290
- ngAfterViewInit() {
291
- super.ngAfterViewInit();
332
+ onAfterViewInit() {
292
333
  addClass(this.htmlElement, this.getStyleClass().join(' '));
293
334
  this.createIcon();
294
335
  this.createLabel();
@@ -359,11 +400,7 @@ class ButtonDirective extends BaseComponent {
359
400
  createLabel() {
360
401
  const created = findSingle(this.htmlElement, '.p-button-label');
361
402
  if (!created && this.label) {
362
- let labelElement = this.document.createElement('span');
363
- if (this.icon && !this.label) {
364
- labelElement.setAttribute('aria-hidden', 'true');
365
- }
366
- labelElement.className = 'p-button-label';
403
+ let labelElement = createElement('span', { class: this.cx('label'), 'p-bind': this.ptm('label'), 'aria-hidden': this.icon && !this.label ? 'true' : null });
367
404
  labelElement.appendChild(this.document.createTextNode(this.label));
368
405
  this.htmlElement.appendChild(labelElement);
369
406
  }
@@ -371,17 +408,9 @@ class ButtonDirective extends BaseComponent {
371
408
  createIcon() {
372
409
  const created = findSingle(this.htmlElement, '.p-button-icon');
373
410
  if (!created && (this.icon || this.loading)) {
374
- let iconElement = this.document.createElement('span');
375
- iconElement.className = 'p-button-icon';
376
- iconElement.setAttribute('aria-hidden', 'true');
377
411
  let iconPosClass = this.label ? 'p-button-icon-' + this.iconPos : null;
378
- if (iconPosClass) {
379
- addClass(iconElement, iconPosClass);
380
- }
381
412
  let iconClass = this.getIconClass();
382
- if (iconClass) {
383
- addClass(iconElement, iconClass);
384
- }
413
+ let iconElement = createElement('span', { class: this.cn(this.cx('icon'), iconPosClass, iconClass), 'aria-hidden': 'true', 'p-bind': this.ptm('icon') });
385
414
  if (!this.loadingIcon && this.loading) {
386
415
  iconElement.innerHTML = this.spinnerIcon;
387
416
  }
@@ -420,101 +449,85 @@ class ButtonDirective extends BaseComponent {
420
449
  getIconClass() {
421
450
  return this.loading ? 'p-button-loading-icon ' + (this.loadingIcon ? this.loadingIcon : 'p-icon') : this.icon || 'p-hidden';
422
451
  }
423
- ngOnDestroy() {
452
+ onDestroy() {
424
453
  this.initialized = false;
425
- super.ngOnDestroy();
426
454
  }
427
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
428
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.2", type: ButtonDirective, isStandalone: true, selector: "[pButton]", inputs: { iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: false, isRequired: false, transformFunction: null }, loadingIcon: { classPropertyName: "loadingIcon", publicName: "loadingIcon", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, buttonProps: { classPropertyName: "buttonProps", publicName: "buttonProps", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.p-button-icon-only": "isIconOnly()", "class.p-button-text": "isTextButton()" } }, providers: [ButtonStyle], queries: [{ propertyName: "iconSignal", first: true, predicate: ButtonIcon, descendants: true, isSignal: true }, { propertyName: "labelSignal", first: true, predicate: ButtonLabel, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0 });
455
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
456
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.4", type: ButtonDirective, isStandalone: true, selector: "[pButton]", inputs: { ptButtonDirective: { classPropertyName: "ptButtonDirective", publicName: "ptButtonDirective", isSignal: true, isRequired: false, transformFunction: null }, hostName: { classPropertyName: "hostName", publicName: "hostName", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: false, isRequired: false, transformFunction: null }, loadingIcon: { classPropertyName: "loadingIcon", publicName: "loadingIcon", isSignal: false, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, buttonProps: { classPropertyName: "buttonProps", publicName: "buttonProps", isSignal: false, isRequired: false, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.p-button-icon-only": "isIconOnly()", "class.p-button-text": "isTextButton()" } }, providers: [ButtonStyle, { provide: BUTTON_DIRECTIVE_INSTANCE, useExisting: ButtonDirective }, { provide: PARENT_INSTANCE, useExisting: ButtonDirective }], queries: [{ propertyName: "iconSignal", first: true, predicate: ButtonIcon, descendants: true, isSignal: true }, { propertyName: "labelSignal", first: true, predicate: ButtonLabel, descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0 });
429
457
  }
430
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonDirective, decorators: [{
458
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonDirective, decorators: [{
431
459
  type: Directive,
432
460
  args: [{
433
461
  selector: '[pButton]',
434
462
  standalone: true,
435
- providers: [ButtonStyle],
463
+ providers: [ButtonStyle, { provide: BUTTON_DIRECTIVE_INSTANCE, useExisting: ButtonDirective }, { provide: PARENT_INSTANCE, useExisting: ButtonDirective }],
436
464
  host: {
437
465
  '[class.p-button-icon-only]': 'isIconOnly()',
438
466
  '[class.p-button-text]': 'isTextButton()'
439
- }
467
+ },
468
+ hostDirectives: [Bind]
440
469
  }]
441
- }], propDecorators: { iconPos: [{
442
- type: Input
443
- }], loadingIcon: [{
444
- type: Input
445
- }], loading: [{
446
- type: Input
447
- }], severity: [{
470
+ }], ctorParameters: () => [], propDecorators: { hostName: [{
448
471
  type: Input
449
- }], raised: [{
472
+ }], text: [{
450
473
  type: Input,
451
474
  args: [{ transform: booleanAttribute }]
452
- }], rounded: [{
475
+ }], plain: [{
453
476
  type: Input,
454
477
  args: [{ transform: booleanAttribute }]
455
- }], text: [{
478
+ }], raised: [{
456
479
  type: Input,
457
480
  args: [{ transform: booleanAttribute }]
481
+ }], size: [{
482
+ type: Input
458
483
  }], outlined: [{
459
484
  type: Input,
460
485
  args: [{ transform: booleanAttribute }]
461
- }], size: [{
462
- type: Input
463
- }], plain: [{
486
+ }], rounded: [{
464
487
  type: Input,
465
488
  args: [{ transform: booleanAttribute }]
489
+ }], iconPos: [{
490
+ type: Input
491
+ }], loadingIcon: [{
492
+ type: Input
466
493
  }], label: [{
467
494
  type: Input
468
495
  }], icon: [{
469
496
  type: Input
497
+ }], loading: [{
498
+ type: Input
470
499
  }], buttonProps: [{
471
500
  type: Input
501
+ }], severity: [{
502
+ type: Input
472
503
  }] } });
473
504
  /**
474
505
  * Button is an extension to standard button element with icons and theming.
475
506
  * @group Components
476
507
  */
477
508
  class Button extends BaseComponent {
509
+ hostName = '';
510
+ $pcButton = inject(BUTTON_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
511
+ bindDirectiveInstance = inject(Bind, { self: true });
512
+ _componentStyle = inject(ButtonStyle);
513
+ onAfterViewChecked() {
514
+ this.bindDirectiveInstance.setAttrs(this.ptm('host'));
515
+ }
478
516
  /**
479
517
  * Type of the button.
480
518
  * @group Props
481
519
  */
482
520
  type = 'button';
483
- /**
484
- * Position of the icon.
485
- * @group Props
486
- */
487
- iconPos = 'left';
488
- /**
489
- * Name of the icon.
490
- * @group Props
491
- */
492
- icon;
493
521
  /**
494
522
  * Value of the badge.
495
523
  * @group Props
496
524
  */
497
525
  badge;
498
- /**
499
- * Uses to pass attributes to the label's DOM element.
500
- * @group Props
501
- */
502
- label;
503
526
  /**
504
527
  * When present, it specifies that the component should be disabled.
505
528
  * @group Props
506
529
  */
507
530
  disabled;
508
- /**
509
- * Whether the button is in loading state.
510
- * @group Props
511
- */
512
- loading = false;
513
- /**
514
- * Icon to display in loading state.
515
- * @group Props
516
- */
517
- loadingIcon;
518
531
  /**
519
532
  * Add a shadow to indicate elevation.
520
533
  * @group Props
@@ -535,11 +548,6 @@ class Button extends BaseComponent {
535
548
  * @group Props
536
549
  */
537
550
  plain = false;
538
- /**
539
- * Defines the style of the button.
540
- * @group Props
541
- */
542
- severity;
543
551
  /**
544
552
  * Add a border class without a background initially.
545
553
  * @group Props
@@ -593,15 +601,45 @@ class Button extends BaseComponent {
593
601
  */
594
602
  ariaLabel;
595
603
  /**
596
- * Button props as an object.
604
+ * When present, it specifies that the component should automatically get focus on load.
597
605
  * @group Props
598
606
  */
599
- buttonProps;
607
+ autofocus;
600
608
  /**
601
- * When present, it specifies that the component should automatically get focus on load.
609
+ * Position of the icon.
602
610
  * @group Props
603
611
  */
604
- autofocus;
612
+ iconPos = 'left';
613
+ /**
614
+ * Name of the icon.
615
+ * @group Props
616
+ */
617
+ icon;
618
+ /**
619
+ * Text of the button.
620
+ * @group Props
621
+ */
622
+ label;
623
+ /**
624
+ * Whether the button is in loading state.
625
+ * @group Props
626
+ */
627
+ loading = false;
628
+ /**
629
+ * Icon to display in loading state.
630
+ * @group Props
631
+ */
632
+ loadingIcon;
633
+ /**
634
+ * Defines the style of the button.
635
+ * @group Props
636
+ */
637
+ severity;
638
+ /**
639
+ * Used to pass all properties of the ButtonProps to the Button component.
640
+ * @group Props
641
+ */
642
+ buttonProps;
605
643
  /**
606
644
  * Spans 100% width of the container when enabled.
607
645
  * @defaultValue undefined
@@ -649,11 +687,10 @@ class Button extends BaseComponent {
649
687
  get hasFluid() {
650
688
  return this.fluid() ?? !!this.pcFluid;
651
689
  }
652
- _componentStyle = inject(ButtonStyle);
653
690
  _contentTemplate;
654
691
  _iconTemplate;
655
692
  _loadingIconTemplate;
656
- ngAfterContentInit() {
693
+ onAfterContentInit() {
657
694
  this.templates?.forEach((item) => {
658
695
  switch (item.getType()) {
659
696
  case 'content':
@@ -687,8 +724,8 @@ class Button extends BaseComponent {
687
724
  'p-button-icon-bottom': this.iconPos === 'bottom' && this.label
688
725
  };
689
726
  }
690
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Button, deps: null, target: i0.ɵɵFactoryTarget.Component });
691
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.2", type: Button, isStandalone: true, selector: "p-button", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: false, isRequired: false, transformFunction: null }, iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: false, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, loadingIcon: { classPropertyName: "loadingIcon", publicName: "loadingIcon", isSignal: false, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, link: { classPropertyName: "link", publicName: "link", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, badgeClass: { classPropertyName: "badgeClass", publicName: "badgeClass", isSignal: false, isRequired: false, transformFunction: null }, badgeSeverity: { classPropertyName: "badgeSeverity", publicName: "badgeSeverity", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, buttonProps: { classPropertyName: "buttonProps", publicName: "buttonProps", isSignal: false, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, providers: [ButtonStyle], queries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], descendants: true }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"], descendants: true }, { propertyName: "iconTemplate", first: true, predicate: ["icon"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
727
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Button, deps: null, target: i0.ɵɵFactoryTarget.Component });
728
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: Button, isStandalone: true, selector: "p-button", inputs: { hostName: { classPropertyName: "hostName", publicName: "hostName", isSignal: false, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: false, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, rounded: { classPropertyName: "rounded", publicName: "rounded", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, link: { classPropertyName: "link", publicName: "link", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: false, isRequired: false, transformFunction: numberAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: false, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: false, isRequired: false, transformFunction: null }, badgeClass: { classPropertyName: "badgeClass", publicName: "badgeClass", isSignal: false, isRequired: false, transformFunction: null }, badgeSeverity: { classPropertyName: "badgeSeverity", publicName: "badgeSeverity", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, iconPos: { classPropertyName: "iconPos", publicName: "iconPos", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, loadingIcon: { classPropertyName: "loadingIcon", publicName: "loadingIcon", isSignal: false, isRequired: false, transformFunction: null }, severity: { classPropertyName: "severity", publicName: "severity", isSignal: false, isRequired: false, transformFunction: null }, buttonProps: { classPropertyName: "buttonProps", publicName: "buttonProps", isSignal: false, isRequired: false, transformFunction: null }, fluid: { classPropertyName: "fluid", publicName: "fluid", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, providers: [ButtonStyle, { provide: BUTTON_INSTANCE, useExisting: Button }, { provide: PARENT_INSTANCE, useExisting: Button }], queries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], descendants: true }, { propertyName: "loadingIconTemplate", first: true, predicate: ["loadingicon"], descendants: true }, { propertyName: "iconTemplate", first: true, predicate: ["icon"], descendants: true }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
692
729
  <button
693
730
  [attr.type]="type || buttonProps?.type"
694
731
  [attr.aria-label]="ariaLabel || buttonProps?.ariaLabel"
@@ -699,35 +736,34 @@ class Button extends BaseComponent {
699
736
  (focus)="onFocus.emit($event)"
700
737
  (blur)="onBlur.emit($event)"
701
738
  pRipple
702
- [attr.data-pc-name]="'button'"
703
- [attr.data-pc-section]="'root'"
704
739
  [attr.tabindex]="tabindex || buttonProps?.tabindex"
705
740
  [pAutoFocus]="autofocus || buttonProps?.autofocus"
741
+ [pBind]="ptm('root')"
706
742
  >
707
743
  <ng-content></ng-content>
708
744
  <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate"></ng-container>
709
745
  <ng-container *ngIf="loading">
710
746
  <ng-container *ngIf="!loadingIconTemplate && !_loadingIconTemplate">
711
- <span *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin', loadingIcon)" [attr.aria-hidden]="true" [attr.data-pc-section]="'loadingicon'"></span>
712
- <svg data-p-icon="spinner" *ngIf="!loadingIcon" [class]="cn(cx('loadingIcon'), spinnerIconClass())" [spin]="true" [attr.aria-hidden]="true" [attr.data-pc-section]="'loadingicon'" />
747
+ <span *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin', loadingIcon)" [pBind]="ptm('loadingIcon')" [attr.aria-hidden]="true"></span>
748
+ <svg data-p-icon="spinner" *ngIf="!loadingIcon" [class]="cn(cx('loadingIcon'), spinnerIconClass())" [pBind]="ptm('loadingIcon')" [spin]="true" [attr.aria-hidden]="true" />
713
749
  </ng-container>
714
- <ng-template [ngIf]="loadingIconTemplate || _loadingIconTemplate" *ngTemplateOutlet="loadingIconTemplate || _loadingIconTemplate; context: { class: cx('loadingIcon') }"></ng-template>
750
+ <ng-template [ngIf]="loadingIconTemplate || _loadingIconTemplate" *ngTemplateOutlet="loadingIconTemplate || _loadingIconTemplate; context: { class: cx('loadingIcon'), pt: ptm('loadingIcon') }"></ng-template>
715
751
  </ng-container>
716
752
  <ng-container *ngIf="!loading">
717
- <span *ngIf="icon && !iconTemplate && !_iconTemplate" [class]="cn('icon', iconClass())" [attr.data-pc-section]="'icon'"></span>
718
- <ng-template [ngIf]="!icon && (iconTemplate || _iconTemplate)" *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { class: cx('icon') }"></ng-template>
753
+ <span *ngIf="icon && !iconTemplate && !_iconTemplate" [class]="cn('icon', iconClass())" [pBind]="ptm('icon')"></span>
754
+ <ng-template [ngIf]="!icon && (iconTemplate || _iconTemplate)" *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { class: cx('icon'), pt: ptm('icon') }"></ng-template>
719
755
  </ng-container>
720
- <span [class]="cx('label')" [attr.aria-hidden]="icon && !label" *ngIf="!contentTemplate && !_contentTemplate && label" [attr.data-pc-section]="'label'">{{ label }}</span>
721
- <p-badge *ngIf="!contentTemplate && !_contentTemplate && badge" [value]="badge" [severity]="badgeSeverity"></p-badge>
756
+ <span [class]="cx('label')" [attr.aria-hidden]="icon && !label" *ngIf="!contentTemplate && !_contentTemplate && label" [pBind]="ptm('label')">{{ label }}</span>
757
+ <p-badge *ngIf="!contentTemplate && !_contentTemplate && badge" [value]="badge" [severity]="badgeSeverity" [pt]="ptm('pcBadge')"></p-badge>
722
758
  </button>
723
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "component", type: SpinnerIcon, selector: "[data-p-icon=\"spinner\"]" }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i2.Badge, selector: "p-badge", inputs: ["styleClass", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: SharedModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
759
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "directive", type: AutoFocus, selector: "[pAutoFocus]", inputs: ["pAutoFocus"] }, { kind: "component", type: SpinnerIcon, selector: "[data-p-icon=\"spinner\"]" }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i3.Badge, selector: "p-badge", inputs: ["styleClass", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
724
760
  }
725
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: Button, decorators: [{
761
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: Button, decorators: [{
726
762
  type: Component,
727
763
  args: [{
728
764
  selector: 'p-button',
729
765
  standalone: true,
730
- imports: [CommonModule, Ripple, AutoFocus, SpinnerIcon, BadgeModule, SharedModule],
766
+ imports: [CommonModule, Ripple, AutoFocus, SpinnerIcon, BadgeModule, SharedModule, Bind],
731
767
  template: `
732
768
  <button
733
769
  [attr.type]="type || buttonProps?.type"
@@ -739,50 +775,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
739
775
  (focus)="onFocus.emit($event)"
740
776
  (blur)="onBlur.emit($event)"
741
777
  pRipple
742
- [attr.data-pc-name]="'button'"
743
- [attr.data-pc-section]="'root'"
744
778
  [attr.tabindex]="tabindex || buttonProps?.tabindex"
745
779
  [pAutoFocus]="autofocus || buttonProps?.autofocus"
780
+ [pBind]="ptm('root')"
746
781
  >
747
782
  <ng-content></ng-content>
748
783
  <ng-container *ngTemplateOutlet="contentTemplate || _contentTemplate"></ng-container>
749
784
  <ng-container *ngIf="loading">
750
785
  <ng-container *ngIf="!loadingIconTemplate && !_loadingIconTemplate">
751
- <span *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin', loadingIcon)" [attr.aria-hidden]="true" [attr.data-pc-section]="'loadingicon'"></span>
752
- <svg data-p-icon="spinner" *ngIf="!loadingIcon" [class]="cn(cx('loadingIcon'), spinnerIconClass())" [spin]="true" [attr.aria-hidden]="true" [attr.data-pc-section]="'loadingicon'" />
786
+ <span *ngIf="loadingIcon" [class]="cn(cx('loadingIcon'), 'pi-spin', loadingIcon)" [pBind]="ptm('loadingIcon')" [attr.aria-hidden]="true"></span>
787
+ <svg data-p-icon="spinner" *ngIf="!loadingIcon" [class]="cn(cx('loadingIcon'), spinnerIconClass())" [pBind]="ptm('loadingIcon')" [spin]="true" [attr.aria-hidden]="true" />
753
788
  </ng-container>
754
- <ng-template [ngIf]="loadingIconTemplate || _loadingIconTemplate" *ngTemplateOutlet="loadingIconTemplate || _loadingIconTemplate; context: { class: cx('loadingIcon') }"></ng-template>
789
+ <ng-template [ngIf]="loadingIconTemplate || _loadingIconTemplate" *ngTemplateOutlet="loadingIconTemplate || _loadingIconTemplate; context: { class: cx('loadingIcon'), pt: ptm('loadingIcon') }"></ng-template>
755
790
  </ng-container>
756
791
  <ng-container *ngIf="!loading">
757
- <span *ngIf="icon && !iconTemplate && !_iconTemplate" [class]="cn('icon', iconClass())" [attr.data-pc-section]="'icon'"></span>
758
- <ng-template [ngIf]="!icon && (iconTemplate || _iconTemplate)" *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { class: cx('icon') }"></ng-template>
792
+ <span *ngIf="icon && !iconTemplate && !_iconTemplate" [class]="cn('icon', iconClass())" [pBind]="ptm('icon')"></span>
793
+ <ng-template [ngIf]="!icon && (iconTemplate || _iconTemplate)" *ngTemplateOutlet="iconTemplate || _iconTemplate; context: { class: cx('icon'), pt: ptm('icon') }"></ng-template>
759
794
  </ng-container>
760
- <span [class]="cx('label')" [attr.aria-hidden]="icon && !label" *ngIf="!contentTemplate && !_contentTemplate && label" [attr.data-pc-section]="'label'">{{ label }}</span>
761
- <p-badge *ngIf="!contentTemplate && !_contentTemplate && badge" [value]="badge" [severity]="badgeSeverity"></p-badge>
795
+ <span [class]="cx('label')" [attr.aria-hidden]="icon && !label" *ngIf="!contentTemplate && !_contentTemplate && label" [pBind]="ptm('label')">{{ label }}</span>
796
+ <p-badge *ngIf="!contentTemplate && !_contentTemplate && badge" [value]="badge" [severity]="badgeSeverity" [pt]="ptm('pcBadge')"></p-badge>
762
797
  </button>
763
798
  `,
764
799
  changeDetection: ChangeDetectionStrategy.OnPush,
765
800
  encapsulation: ViewEncapsulation.None,
766
- providers: [ButtonStyle]
801
+ providers: [ButtonStyle, { provide: BUTTON_INSTANCE, useExisting: Button }, { provide: PARENT_INSTANCE, useExisting: Button }],
802
+ hostDirectives: [Bind]
767
803
  }]
768
- }], propDecorators: { type: [{
804
+ }], propDecorators: { hostName: [{
769
805
  type: Input
770
- }], iconPos: [{
771
- type: Input
772
- }], icon: [{
806
+ }], type: [{
773
807
  type: Input
774
808
  }], badge: [{
775
809
  type: Input
776
- }], label: [{
777
- type: Input
778
810
  }], disabled: [{
779
811
  type: Input,
780
812
  args: [{ transform: booleanAttribute }]
781
- }], loading: [{
782
- type: Input,
783
- args: [{ transform: booleanAttribute }]
784
- }], loadingIcon: [{
785
- type: Input
786
813
  }], raised: [{
787
814
  type: Input,
788
815
  args: [{ transform: booleanAttribute }]
@@ -795,8 +822,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
795
822
  }], plain: [{
796
823
  type: Input,
797
824
  args: [{ transform: booleanAttribute }]
798
- }], severity: [{
799
- type: Input
800
825
  }], outlined: [{
801
826
  type: Input,
802
827
  args: [{ transform: booleanAttribute }]
@@ -820,11 +845,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
820
845
  type: Input
821
846
  }], ariaLabel: [{
822
847
  type: Input
823
- }], buttonProps: [{
824
- type: Input
825
848
  }], autofocus: [{
826
849
  type: Input,
827
850
  args: [{ transform: booleanAttribute }]
851
+ }], iconPos: [{
852
+ type: Input
853
+ }], icon: [{
854
+ type: Input
855
+ }], label: [{
856
+ type: Input
857
+ }], loading: [{
858
+ type: Input,
859
+ args: [{ transform: booleanAttribute }]
860
+ }], loadingIcon: [{
861
+ type: Input
862
+ }], severity: [{
863
+ type: Input
864
+ }], buttonProps: [{
865
+ type: Input
828
866
  }], onClick: [{
829
867
  type: Output
830
868
  }], onFocus: [{
@@ -845,11 +883,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
845
883
  args: [PrimeTemplate]
846
884
  }] } });
847
885
  class ButtonModule {
848
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
849
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: ButtonModule, imports: [CommonModule, ButtonDirective, Button, SharedModule, ButtonLabel, ButtonIcon], exports: [ButtonDirective, Button, ButtonLabel, ButtonIcon, SharedModule] });
850
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonModule, imports: [CommonModule, Button, SharedModule, SharedModule] });
886
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
887
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: ButtonModule, imports: [CommonModule, ButtonDirective, Button, SharedModule, ButtonLabel, ButtonIcon], exports: [ButtonDirective, Button, ButtonLabel, ButtonIcon, SharedModule] });
888
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonModule, imports: [CommonModule, Button, SharedModule, SharedModule] });
851
889
  }
852
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: ButtonModule, decorators: [{
890
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: ButtonModule, decorators: [{
853
891
  type: NgModule,
854
892
  args: [{
855
893
  imports: [CommonModule, ButtonDirective, Button, SharedModule, ButtonLabel, ButtonIcon],
@@ -857,6 +895,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImpor
857
895
  }]
858
896
  }] });
859
897
 
898
+ // Backward compatibility
899
+
860
900
  /**
861
901
  * Generated bundle index. Do not edit.
862
902
  */