primeng 22.1.1 → 22.1.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 (854) hide show
  1. package/fesm2022/primeng-accordion.mjs +999 -596
  2. package/fesm2022/primeng-animateonscroll.mjs +265 -174
  3. package/fesm2022/primeng-api.mjs +887 -848
  4. package/fesm2022/primeng-autocomplete.mjs +2535 -1633
  5. package/fesm2022/primeng-autofocus.mjs +113 -77
  6. package/fesm2022/primeng-avatar.mjs +329 -189
  7. package/fesm2022/primeng-avatargroup.mjs +177 -95
  8. package/fesm2022/primeng-badge.mjs +289 -156
  9. package/fesm2022/primeng-base.mjs +105 -83
  10. package/fesm2022/primeng-basecomponent.mjs +592 -478
  11. package/fesm2022/primeng-baseeditableholder.mjs +130 -74
  12. package/fesm2022/primeng-baseinput.mjs +213 -99
  13. package/fesm2022/primeng-basemodelholder.mjs +38 -26
  14. package/fesm2022/primeng-bind.mjs +157 -97
  15. package/fesm2022/primeng-blockui.mjs +359 -225
  16. package/fesm2022/primeng-breadcrumb.mjs +457 -220
  17. package/fesm2022/primeng-button.mjs +1562 -710
  18. package/fesm2022/primeng-buttongroup.mjs +126 -75
  19. package/fesm2022/primeng-card.mjs +388 -178
  20. package/fesm2022/primeng-carousel.mjs +2398 -1776
  21. package/fesm2022/primeng-cascadeselect.mjs +2380 -1407
  22. package/fesm2022/primeng-chart.mjs +401 -231
  23. package/fesm2022/primeng-checkbox.mjs +649 -351
  24. package/fesm2022/primeng-chip.mjs +410 -224
  25. package/fesm2022/primeng-classnames.mjs +94 -48
  26. package/fesm2022/primeng-colorpicker.mjs +889 -635
  27. package/fesm2022/primeng-commandmenu.mjs +567 -313
  28. package/fesm2022/primeng-compare.mjs +842 -481
  29. package/fesm2022/primeng-config.mjs +436 -321
  30. package/fesm2022/primeng-confirmdialog.mjs +1196 -536
  31. package/fesm2022/primeng-confirmpopup.mjs +815 -522
  32. package/fesm2022/primeng-contextmenu.mjs +1871 -1090
  33. package/fesm2022/primeng-dataview.mjs +1129 -550
  34. package/fesm2022/primeng-datepicker.mjs +3783 -3366
  35. package/fesm2022/primeng-dialog.mjs +1649 -977
  36. package/fesm2022/primeng-divider.mjs +271 -146
  37. package/fesm2022/primeng-dock.mjs +608 -391
  38. package/fesm2022/primeng-dom.mjs +611 -767
  39. package/fesm2022/primeng-dragdrop.mjs +324 -312
  40. package/fesm2022/primeng-drawer.mjs +911 -484
  41. package/fesm2022/primeng-dynamicdialog.mjs +829 -917
  42. package/fesm2022/primeng-editor.mjs +546 -391
  43. package/fesm2022/primeng-fieldset.mjs +559 -273
  44. package/fesm2022/primeng-fileupload.mjs +1843 -1062
  45. package/fesm2022/primeng-floatlabel.mjs +186 -102
  46. package/fesm2022/primeng-fluid.mjs +155 -85
  47. package/fesm2022/primeng-focustrap.mjs +149 -112
  48. package/fesm2022/primeng-galleria.mjs +2594 -1412
  49. package/fesm2022/primeng-gallery.mjs +2767 -1796
  50. package/fesm2022/primeng-iconfield.mjs +191 -93
  51. package/fesm2022/primeng-icons-angledoubledown.mjs +40 -23
  52. package/fesm2022/primeng-icons-angledoubleleft.mjs +40 -23
  53. package/fesm2022/primeng-icons-angledoubleright.mjs +40 -23
  54. package/fesm2022/primeng-icons-angledoubleup.mjs +40 -23
  55. package/fesm2022/primeng-icons-angledown.mjs +40 -23
  56. package/fesm2022/primeng-icons-angleleft.mjs +40 -23
  57. package/fesm2022/primeng-icons-angleright.mjs +40 -23
  58. package/fesm2022/primeng-icons-angleup.mjs +40 -23
  59. package/fesm2022/primeng-icons-arrowdown.mjs +44 -28
  60. package/fesm2022/primeng-icons-arrowdownleft.mjs +40 -23
  61. package/fesm2022/primeng-icons-arrowdownright.mjs +40 -23
  62. package/fesm2022/primeng-icons-arrowleft.mjs +44 -28
  63. package/fesm2022/primeng-icons-arrowright.mjs +40 -23
  64. package/fesm2022/primeng-icons-arrowup.mjs +44 -28
  65. package/fesm2022/primeng-icons-ban.mjs +44 -28
  66. package/fesm2022/primeng-icons-bars.mjs +40 -23
  67. package/fesm2022/primeng-icons-baseicon.mjs +110 -67
  68. package/fesm2022/primeng-icons-blank.mjs +39 -22
  69. package/fesm2022/primeng-icons-calendar.mjs +40 -23
  70. package/fesm2022/primeng-icons-caretleft.mjs +40 -23
  71. package/fesm2022/primeng-icons-caretright.mjs +40 -23
  72. package/fesm2022/primeng-icons-check.mjs +40 -23
  73. package/fesm2022/primeng-icons-chevrondown.mjs +40 -23
  74. package/fesm2022/primeng-icons-chevronleft.mjs +40 -23
  75. package/fesm2022/primeng-icons-chevronright.mjs +40 -23
  76. package/fesm2022/primeng-icons-chevronup.mjs +40 -23
  77. package/fesm2022/primeng-icons-exclamationtriangle.mjs +44 -28
  78. package/fesm2022/primeng-icons-eye.mjs +40 -23
  79. package/fesm2022/primeng-icons-eyeslash.mjs +44 -28
  80. package/fesm2022/primeng-icons-filter.mjs +44 -28
  81. package/fesm2022/primeng-icons-filterfill.mjs +40 -23
  82. package/fesm2022/primeng-icons-filterslash.mjs +44 -28
  83. package/fesm2022/primeng-icons-home.mjs +44 -28
  84. package/fesm2022/primeng-icons-infocircle.mjs +44 -28
  85. package/fesm2022/primeng-icons-minus.mjs +40 -23
  86. package/fesm2022/primeng-icons-pencil.mjs +44 -28
  87. package/fesm2022/primeng-icons-plus.mjs +44 -28
  88. package/fesm2022/primeng-icons-refresh.mjs +44 -28
  89. package/fesm2022/primeng-icons-search.mjs +44 -28
  90. package/fesm2022/primeng-icons-searchminus.mjs +44 -28
  91. package/fesm2022/primeng-icons-searchplus.mjs +44 -28
  92. package/fesm2022/primeng-icons-sortalt.mjs +44 -28
  93. package/fesm2022/primeng-icons-sortamountdown.mjs +44 -28
  94. package/fesm2022/primeng-icons-sortamountupalt.mjs +44 -28
  95. package/fesm2022/primeng-icons-spinner.mjs +44 -28
  96. package/fesm2022/primeng-icons-star.mjs +44 -28
  97. package/fesm2022/primeng-icons-starfill.mjs +44 -28
  98. package/fesm2022/primeng-icons-thlarge.mjs +44 -28
  99. package/fesm2022/primeng-icons-times.mjs +40 -23
  100. package/fesm2022/primeng-icons-timescircle.mjs +44 -28
  101. package/fesm2022/primeng-icons-trash.mjs +44 -28
  102. package/fesm2022/primeng-icons-undo.mjs +44 -28
  103. package/fesm2022/primeng-icons-upload.mjs +44 -28
  104. package/fesm2022/primeng-icons-windowmaximize.mjs +44 -28
  105. package/fesm2022/primeng-icons-windowminimize.mjs +44 -28
  106. package/fesm2022/primeng-icons.mjs +53 -63
  107. package/fesm2022/primeng-iftalabel.mjs +152 -86
  108. package/fesm2022/primeng-image.mjs +1022 -534
  109. package/fesm2022/primeng-imagecompare.mjs +324 -165
  110. package/fesm2022/primeng-inplace.mjs +400 -199
  111. package/fesm2022/primeng-inputcolor.mjs +2626 -2189
  112. package/fesm2022/primeng-inputgroup.mjs +158 -91
  113. package/fesm2022/primeng-inputgroupaddon.mjs +152 -68
  114. package/fesm2022/primeng-inputicon.mjs +172 -72
  115. package/fesm2022/primeng-inputmask.mjs +1606 -1387
  116. package/fesm2022/primeng-inputnumber.mjs +1645 -1305
  117. package/fesm2022/primeng-inputotp.mjs +570 -376
  118. package/fesm2022/primeng-inputpassword.mjs +178 -96
  119. package/fesm2022/primeng-inputtags.mjs +1211 -588
  120. package/fesm2022/primeng-inputtext.mjs +324 -175
  121. package/fesm2022/primeng-isolation.mjs +280 -0
  122. package/fesm2022/primeng-keyfilter.mjs +267 -244
  123. package/fesm2022/primeng-knob.mjs +625 -405
  124. package/fesm2022/primeng-label.mjs +142 -81
  125. package/fesm2022/primeng-license.mjs +9 -36
  126. package/fesm2022/primeng-listbox.mjs +2426 -1622
  127. package/fesm2022/primeng-megamenu.mjs +2008 -1143
  128. package/fesm2022/primeng-menu.mjs +1434 -852
  129. package/fesm2022/primeng-menubar.mjs +1836 -996
  130. package/fesm2022/primeng-message.mjs +471 -239
  131. package/fesm2022/primeng-metergroup.mjs +662 -331
  132. package/fesm2022/primeng-motion.mjs +1178 -690
  133. package/fesm2022/primeng-multiselect.mjs +3421 -1940
  134. package/fesm2022/primeng-orderlist.mjs +1320 -668
  135. package/fesm2022/primeng-organizationchart.mjs +911 -595
  136. package/fesm2022/primeng-overlay.mjs +933 -626
  137. package/fesm2022/primeng-overlaybadge.mjs +290 -107
  138. package/fesm2022/primeng-paginator.mjs +961 -503
  139. package/fesm2022/primeng-panel.mjs +668 -345
  140. package/fesm2022/primeng-panelmenu.mjs +1845 -1002
  141. package/fesm2022/primeng-passthrough.mjs +7 -16
  142. package/fesm2022/primeng-password.mjs +1517 -866
  143. package/fesm2022/primeng-picklist.mjs +2278 -1256
  144. package/fesm2022/primeng-popover.mjs +658 -438
  145. package/fesm2022/primeng-progressbar.mjs +345 -168
  146. package/fesm2022/primeng-progressspinner.mjs +337 -188
  147. package/fesm2022/primeng-radiobutton.mjs +498 -292
  148. package/fesm2022/primeng-rating.mjs +583 -354
  149. package/fesm2022/primeng-ripple.mjs +195 -184
  150. package/fesm2022/primeng-scrollarea.mjs +1017 -721
  151. package/fesm2022/primeng-scroller.mjs +1388 -1083
  152. package/fesm2022/primeng-scrollpanel.mjs +567 -480
  153. package/fesm2022/primeng-scrolltop.mjs +510 -262
  154. package/fesm2022/primeng-select.mjs +3073 -1793
  155. package/fesm2022/primeng-selectbutton.mjs +628 -339
  156. package/fesm2022/primeng-sidebar.mjs +2559 -1416
  157. package/fesm2022/primeng-skeleton.mjs +299 -157
  158. package/fesm2022/primeng-slider.mjs +840 -604
  159. package/fesm2022/primeng-speeddial.mjs +1118 -719
  160. package/fesm2022/primeng-splitbutton.mjs +887 -339
  161. package/fesm2022/primeng-splitter.mjs +996 -759
  162. package/fesm2022/primeng-stepper.mjs +1356 -643
  163. package/fesm2022/primeng-steps.mjs +396 -304
  164. package/fesm2022/primeng-styleclass.mjs +447 -334
  165. package/fesm2022/primeng-table.mjs +9827 -5913
  166. package/fesm2022/primeng-tabs.mjs +1356 -831
  167. package/fesm2022/primeng-tag.mjs +304 -151
  168. package/fesm2022/primeng-terminal.mjs +367 -216
  169. package/fesm2022/primeng-textarea.mjs +344 -208
  170. package/fesm2022/primeng-tieredmenu.mjs +1921 -1129
  171. package/fesm2022/primeng-timeline.mjs +303 -165
  172. package/fesm2022/primeng-toast.mjs +1384 -922
  173. package/fesm2022/primeng-togglebutton.mjs +562 -309
  174. package/fesm2022/primeng-toggleswitch.mjs +463 -237
  175. package/fesm2022/primeng-toolbar.mjs +298 -129
  176. package/fesm2022/primeng-tooltip.mjs +1017 -778
  177. package/fesm2022/primeng-tree.mjs +2680 -1877
  178. package/fesm2022/primeng-treeselect.mjs +1683 -945
  179. package/fesm2022/primeng-treetable.mjs +5868 -3768
  180. package/fesm2022/primeng-ts-helpers.mjs +0 -4
  181. package/fesm2022/primeng-types-accordion.mjs +0 -4
  182. package/fesm2022/primeng-types-autocomplete.mjs +0 -4
  183. package/fesm2022/primeng-types-avatar.mjs +0 -4
  184. package/fesm2022/primeng-types-avatargroup.mjs +0 -4
  185. package/fesm2022/primeng-types-badge.mjs +0 -4
  186. package/fesm2022/primeng-types-blockui.mjs +0 -4
  187. package/fesm2022/primeng-types-breadcrumb.mjs +0 -4
  188. package/fesm2022/primeng-types-button.mjs +0 -4
  189. package/fesm2022/primeng-types-card.mjs +0 -4
  190. package/fesm2022/primeng-types-carousel.mjs +0 -4
  191. package/fesm2022/primeng-types-cascadeselect.mjs +0 -4
  192. package/fesm2022/primeng-types-chart.mjs +0 -4
  193. package/fesm2022/primeng-types-checkbox.mjs +0 -4
  194. package/fesm2022/primeng-types-chip.mjs +0 -4
  195. package/fesm2022/primeng-types-colorpicker.mjs +0 -4
  196. package/fesm2022/primeng-types-commandmenu.mjs +0 -4
  197. package/fesm2022/primeng-types-compare.mjs +0 -4
  198. package/fesm2022/primeng-types-confirmdialog.mjs +0 -4
  199. package/fesm2022/primeng-types-confirmpopup.mjs +0 -4
  200. package/fesm2022/primeng-types-contextmenu.mjs +0 -4
  201. package/fesm2022/primeng-types-dataview.mjs +0 -4
  202. package/fesm2022/primeng-types-datepicker.mjs +0 -4
  203. package/fesm2022/primeng-types-dialog.mjs +0 -4
  204. package/fesm2022/primeng-types-divider.mjs +0 -4
  205. package/fesm2022/primeng-types-dock.mjs +0 -4
  206. package/fesm2022/primeng-types-drawer.mjs +0 -4
  207. package/fesm2022/primeng-types-editor.mjs +0 -4
  208. package/fesm2022/primeng-types-fieldset.mjs +0 -4
  209. package/fesm2022/primeng-types-fileupload.mjs +0 -4
  210. package/fesm2022/primeng-types-floatlabel.mjs +0 -4
  211. package/fesm2022/primeng-types-fluid.mjs +0 -4
  212. package/fesm2022/primeng-types-galleria.mjs +0 -4
  213. package/fesm2022/primeng-types-gallery.mjs +0 -4
  214. package/fesm2022/primeng-types-iconfield.mjs +0 -4
  215. package/fesm2022/primeng-types-iftalabel.mjs +0 -4
  216. package/fesm2022/primeng-types-image.mjs +0 -4
  217. package/fesm2022/primeng-types-imagecompare.mjs +0 -4
  218. package/fesm2022/primeng-types-inplace.mjs +0 -4
  219. package/fesm2022/primeng-types-inputcolor.mjs +0 -4
  220. package/fesm2022/primeng-types-inputgroup.mjs +0 -4
  221. package/fesm2022/primeng-types-inputgroupaddon.mjs +0 -4
  222. package/fesm2022/primeng-types-inputicon.mjs +0 -4
  223. package/fesm2022/primeng-types-inputmask.mjs +0 -4
  224. package/fesm2022/primeng-types-inputnumber.mjs +0 -4
  225. package/fesm2022/primeng-types-inputotp.mjs +0 -4
  226. package/fesm2022/primeng-types-inputpassword.mjs +0 -4
  227. package/fesm2022/primeng-types-inputtags.mjs +0 -4
  228. package/fesm2022/primeng-types-inputtext.mjs +0 -4
  229. package/fesm2022/primeng-types-knob.mjs +0 -4
  230. package/fesm2022/primeng-types-label.mjs +0 -4
  231. package/fesm2022/primeng-types-listbox.mjs +0 -4
  232. package/fesm2022/primeng-types-megamenu.mjs +0 -4
  233. package/fesm2022/primeng-types-menu.mjs +0 -4
  234. package/fesm2022/primeng-types-menubar.mjs +0 -4
  235. package/fesm2022/primeng-types-message.mjs +0 -4
  236. package/fesm2022/primeng-types-metergroup.mjs +0 -4
  237. package/fesm2022/primeng-types-motion.mjs +0 -4
  238. package/fesm2022/primeng-types-multiselect.mjs +0 -4
  239. package/fesm2022/primeng-types-orderlist.mjs +0 -4
  240. package/fesm2022/primeng-types-organizationchart.mjs +0 -4
  241. package/fesm2022/primeng-types-overlay.mjs +0 -4
  242. package/fesm2022/primeng-types-overlaybadge.mjs +0 -4
  243. package/fesm2022/primeng-types-paginator.mjs +0 -4
  244. package/fesm2022/primeng-types-panel.mjs +0 -4
  245. package/fesm2022/primeng-types-panelmenu.mjs +0 -4
  246. package/fesm2022/primeng-types-password.mjs +0 -4
  247. package/fesm2022/primeng-types-picklist.mjs +0 -4
  248. package/fesm2022/primeng-types-popover.mjs +0 -4
  249. package/fesm2022/primeng-types-progressbar.mjs +0 -4
  250. package/fesm2022/primeng-types-progressspinner.mjs +0 -4
  251. package/fesm2022/primeng-types-radiobutton.mjs +0 -4
  252. package/fesm2022/primeng-types-rating.mjs +0 -4
  253. package/fesm2022/primeng-types-scrollarea.mjs +0 -4
  254. package/fesm2022/primeng-types-scroller.mjs +0 -4
  255. package/fesm2022/primeng-types-scrollpanel.mjs +0 -4
  256. package/fesm2022/primeng-types-scrolltop.mjs +0 -4
  257. package/fesm2022/primeng-types-select.mjs +0 -4
  258. package/fesm2022/primeng-types-selectbutton.mjs +0 -4
  259. package/fesm2022/primeng-types-shared.mjs +0 -4
  260. package/fesm2022/primeng-types-sidebar.mjs +0 -4
  261. package/fesm2022/primeng-types-skeleton.mjs +0 -4
  262. package/fesm2022/primeng-types-slider.mjs +0 -4
  263. package/fesm2022/primeng-types-speeddial.mjs +0 -4
  264. package/fesm2022/primeng-types-splitbutton.mjs +0 -4
  265. package/fesm2022/primeng-types-splitter.mjs +0 -4
  266. package/fesm2022/primeng-types-stepper.mjs +0 -4
  267. package/fesm2022/primeng-types-table.mjs +0 -4
  268. package/fesm2022/primeng-types-tabs.mjs +0 -4
  269. package/fesm2022/primeng-types-tag.mjs +0 -4
  270. package/fesm2022/primeng-types-terminal.mjs +0 -4
  271. package/fesm2022/primeng-types-textarea.mjs +0 -4
  272. package/fesm2022/primeng-types-tieredmenu.mjs +0 -4
  273. package/fesm2022/primeng-types-timeline.mjs +0 -4
  274. package/fesm2022/primeng-types-toast.mjs +0 -4
  275. package/fesm2022/primeng-types-togglebutton.mjs +0 -4
  276. package/fesm2022/primeng-types-toggleswitch.mjs +0 -4
  277. package/fesm2022/primeng-types-toolbar.mjs +0 -4
  278. package/fesm2022/primeng-types-tooltip.mjs +0 -4
  279. package/fesm2022/primeng-types-tree.mjs +0 -4
  280. package/fesm2022/primeng-types-treeselect.mjs +0 -4
  281. package/fesm2022/primeng-types-treetable.mjs +0 -4
  282. package/fesm2022/primeng-useid.mjs +38 -0
  283. package/fesm2022/primeng-usestyle.mjs +325 -112
  284. package/fesm2022/primeng-utils.mjs +267 -317
  285. package/fesm2022/primeng.mjs +0 -5
  286. package/package.json +17 -4
  287. package/types/primeng-accordion.d.ts +280 -219
  288. package/types/primeng-animateonscroll.d.ts +89 -60
  289. package/types/primeng-api.d.ts +1755 -1789
  290. package/types/primeng-autocomplete.d.ts +1051 -754
  291. package/types/primeng-autofocus.d.ts +27 -24
  292. package/types/primeng-avatar.d.ts +152 -114
  293. package/types/primeng-avatargroup.d.ts +45 -40
  294. package/types/primeng-badge.d.ts +104 -78
  295. package/types/primeng-base.d.ts +51 -52
  296. package/types/primeng-basecomponent.d.ts +209 -174
  297. package/types/primeng-baseeditableholder.d.ts +63 -45
  298. package/types/primeng-baseinput.d.ts +122 -74
  299. package/types/primeng-basemodelholder.d.ts +9 -12
  300. package/types/primeng-bind.d.ts +36 -32
  301. package/types/primeng-blockui.d.ts +99 -80
  302. package/types/primeng-breadcrumb.d.ts +159 -133
  303. package/types/primeng-button.d.ts +688 -426
  304. package/types/primeng-buttongroup.d.ts +26 -30
  305. package/types/primeng-card.d.ts +130 -119
  306. package/types/primeng-carousel.d.ts +777 -629
  307. package/types/primeng-cascadeselect.d.ts +753 -562
  308. package/types/primeng-chart.d.ts +158 -112
  309. package/types/primeng-checkbox.d.ts +298 -208
  310. package/types/primeng-chip.d.ts +187 -143
  311. package/types/primeng-classnames.d.ts +23 -21
  312. package/types/primeng-colorpicker.d.ts +324 -269
  313. package/types/primeng-commandmenu.d.ts +213 -165
  314. package/types/primeng-compare.d.ts +258 -189
  315. package/types/primeng-config.d.ts +319 -304
  316. package/types/primeng-confirmdialog.d.ts +505 -325
  317. package/types/primeng-confirmpopup.d.ts +251 -207
  318. package/types/primeng-contextmenu.d.ts +522 -366
  319. package/types/primeng-dataview.d.ts +497 -342
  320. package/types/primeng-datepicker.d.ts +1258 -969
  321. package/types/primeng-dialog.d.ts +668 -462
  322. package/types/primeng-divider.d.ts +112 -96
  323. package/types/primeng-dock.d.ts +206 -172
  324. package/types/primeng-dom.d.ts +99 -107
  325. package/types/primeng-dragdrop.d.ts +143 -107
  326. package/types/primeng-drawer.d.ts +354 -254
  327. package/types/primeng-dynamicdialog.d.ts +528 -534
  328. package/types/primeng-editor.d.ts +210 -162
  329. package/types/primeng-fieldset.d.ts +198 -163
  330. package/types/primeng-fileupload.d.ts +726 -523
  331. package/types/primeng-floatlabel.d.ts +54 -48
  332. package/types/primeng-fluid.d.ts +36 -36
  333. package/types/primeng-focustrap.d.ts +30 -27
  334. package/types/primeng-galleria.d.ts +569 -430
  335. package/types/primeng-gallery.d.ts +668 -529
  336. package/types/primeng-iconfield.d.ts +53 -42
  337. package/types/primeng-icons-angledoubledown.d.ts +6 -9
  338. package/types/primeng-icons-angledoubleleft.d.ts +6 -9
  339. package/types/primeng-icons-angledoubleright.d.ts +6 -9
  340. package/types/primeng-icons-angledoubleup.d.ts +6 -9
  341. package/types/primeng-icons-angledown.d.ts +6 -9
  342. package/types/primeng-icons-angleleft.d.ts +6 -9
  343. package/types/primeng-icons-angleright.d.ts +6 -9
  344. package/types/primeng-icons-angleup.d.ts +6 -9
  345. package/types/primeng-icons-arrowdown.d.ts +8 -11
  346. package/types/primeng-icons-arrowdownleft.d.ts +6 -9
  347. package/types/primeng-icons-arrowdownright.d.ts +6 -9
  348. package/types/primeng-icons-arrowleft.d.ts +8 -11
  349. package/types/primeng-icons-arrowright.d.ts +6 -9
  350. package/types/primeng-icons-arrowup.d.ts +8 -11
  351. package/types/primeng-icons-ban.d.ts +8 -11
  352. package/types/primeng-icons-bars.d.ts +6 -9
  353. package/types/primeng-icons-baseicon.d.ts +23 -22
  354. package/types/primeng-icons-blank.d.ts +6 -9
  355. package/types/primeng-icons-calendar.d.ts +6 -9
  356. package/types/primeng-icons-caretleft.d.ts +6 -9
  357. package/types/primeng-icons-caretright.d.ts +6 -9
  358. package/types/primeng-icons-check.d.ts +6 -9
  359. package/types/primeng-icons-chevrondown.d.ts +6 -9
  360. package/types/primeng-icons-chevronleft.d.ts +6 -9
  361. package/types/primeng-icons-chevronright.d.ts +6 -9
  362. package/types/primeng-icons-chevronup.d.ts +6 -9
  363. package/types/primeng-icons-exclamationtriangle.d.ts +8 -11
  364. package/types/primeng-icons-eye.d.ts +6 -9
  365. package/types/primeng-icons-eyeslash.d.ts +8 -11
  366. package/types/primeng-icons-filter.d.ts +8 -11
  367. package/types/primeng-icons-filterfill.d.ts +6 -9
  368. package/types/primeng-icons-filterslash.d.ts +8 -11
  369. package/types/primeng-icons-home.d.ts +8 -11
  370. package/types/primeng-icons-infocircle.d.ts +8 -11
  371. package/types/primeng-icons-minus.d.ts +6 -9
  372. package/types/primeng-icons-pencil.d.ts +8 -11
  373. package/types/primeng-icons-plus.d.ts +8 -11
  374. package/types/primeng-icons-refresh.d.ts +8 -11
  375. package/types/primeng-icons-search.d.ts +8 -11
  376. package/types/primeng-icons-searchminus.d.ts +8 -11
  377. package/types/primeng-icons-searchplus.d.ts +8 -11
  378. package/types/primeng-icons-sortalt.d.ts +8 -11
  379. package/types/primeng-icons-sortamountdown.d.ts +8 -11
  380. package/types/primeng-icons-sortamountupalt.d.ts +8 -11
  381. package/types/primeng-icons-spinner.d.ts +8 -11
  382. package/types/primeng-icons-star.d.ts +8 -11
  383. package/types/primeng-icons-starfill.d.ts +8 -11
  384. package/types/primeng-icons-thlarge.d.ts +8 -11
  385. package/types/primeng-icons-times.d.ts +6 -9
  386. package/types/primeng-icons-timescircle.d.ts +8 -11
  387. package/types/primeng-icons-trash.d.ts +8 -11
  388. package/types/primeng-icons-undo.d.ts +8 -11
  389. package/types/primeng-icons-upload.d.ts +8 -11
  390. package/types/primeng-icons-windowmaximize.d.ts +8 -11
  391. package/types/primeng-icons-windowminimize.d.ts +8 -11
  392. package/types/primeng-icons.d.ts +53 -53
  393. package/types/primeng-iftalabel.d.ts +37 -37
  394. package/types/primeng-image.d.ts +403 -308
  395. package/types/primeng-imagecompare.d.ts +93 -77
  396. package/types/primeng-inplace.d.ts +125 -111
  397. package/types/primeng-inputcolor.d.ts +590 -484
  398. package/types/primeng-inputgroup.d.ts +41 -41
  399. package/types/primeng-inputgroupaddon.d.ts +31 -31
  400. package/types/primeng-inputicon.d.ts +38 -32
  401. package/types/primeng-inputmask.d.ts +519 -362
  402. package/types/primeng-inputnumber.d.ts +572 -405
  403. package/types/primeng-inputotp.d.ts +205 -156
  404. package/types/primeng-inputpassword.d.ts +59 -43
  405. package/types/primeng-inputtags.d.ts +451 -297
  406. package/types/primeng-inputtext.d.ts +129 -93
  407. package/types/primeng-isolation.d.ts +21 -0
  408. package/types/primeng-keyfilter.d.ts +62 -53
  409. package/types/primeng-knob.d.ts +256 -183
  410. package/types/primeng-label.d.ts +36 -36
  411. package/types/primeng-license.d.ts +1 -3
  412. package/types/primeng-listbox.d.ts +1041 -786
  413. package/types/primeng-megamenu.d.ts +539 -383
  414. package/types/primeng-menu.d.ts +477 -361
  415. package/types/primeng-menubar.d.ts +495 -354
  416. package/types/primeng-message.d.ts +191 -148
  417. package/types/primeng-metergroup.d.ts +249 -187
  418. package/types/primeng-motion.d.ts +596 -383
  419. package/types/primeng-multiselect.d.ts +1194 -858
  420. package/types/primeng-orderlist.d.ts +539 -390
  421. package/types/primeng-organizationchart.d.ts +235 -192
  422. package/types/primeng-overlay.d.ts +394 -294
  423. package/types/primeng-overlaybadge.d.ts +95 -64
  424. package/types/primeng-paginator.d.ts +409 -309
  425. package/types/primeng-panel.d.ts +267 -217
  426. package/types/primeng-panelmenu.d.ts +254 -228
  427. package/types/primeng-passthrough.d.ts +5 -7
  428. package/types/primeng-password.d.ts +605 -430
  429. package/types/primeng-picklist.d.ts +1042 -756
  430. package/types/primeng-popover.d.ts +235 -176
  431. package/types/primeng-progressbar.d.ts +130 -99
  432. package/types/primeng-progressspinner.d.ts +144 -108
  433. package/types/primeng-radiobutton.d.ts +218 -168
  434. package/types/primeng-rating.d.ts +239 -189
  435. package/types/primeng-ripple.d.ts +38 -42
  436. package/types/primeng-scrollarea.d.ts +275 -239
  437. package/types/primeng-scroller.d.ts +523 -387
  438. package/types/primeng-scrollpanel.d.ts +134 -128
  439. package/types/primeng-scrolltop.d.ts +169 -123
  440. package/types/primeng-select.d.ts +1054 -738
  441. package/types/primeng-selectbutton.d.ts +238 -164
  442. package/types/primeng-sidebar.d.ts +699 -535
  443. package/types/primeng-skeleton.d.ts +114 -83
  444. package/types/primeng-slider.d.ts +375 -306
  445. package/types/primeng-speeddial.d.ts +492 -370
  446. package/types/primeng-splitbutton.d.ts +381 -240
  447. package/types/primeng-splitter.d.ts +389 -299
  448. package/types/primeng-stepper.d.ts +405 -250
  449. package/types/primeng-steps.d.ts +157 -134
  450. package/types/primeng-styleclass.d.ts +163 -105
  451. package/types/primeng-table.d.ts +2826 -1912
  452. package/types/primeng-tabs.d.ts +452 -300
  453. package/types/primeng-tag.d.ts +106 -85
  454. package/types/primeng-terminal.d.ts +131 -117
  455. package/types/primeng-textarea.d.ts +145 -107
  456. package/types/primeng-tieredmenu.d.ts +572 -398
  457. package/types/primeng-timeline.d.ts +125 -109
  458. package/types/primeng-toast.d.ts +312 -247
  459. package/types/primeng-togglebutton.d.ts +254 -182
  460. package/types/primeng-toggleswitch.d.ts +188 -140
  461. package/types/primeng-toolbar.d.ts +82 -76
  462. package/types/primeng-tooltip.d.ts +334 -232
  463. package/types/primeng-tree.d.ts +762 -559
  464. package/types/primeng-treeselect.d.ts +749 -547
  465. package/types/primeng-treetable.d.ts +1752 -1314
  466. package/types/primeng-ts-helpers.d.ts +4 -6
  467. package/types/primeng-types-accordion.d.ts +58 -62
  468. package/types/primeng-types-autocomplete.d.ts +230 -233
  469. package/types/primeng-types-avatar.d.ts +25 -28
  470. package/types/primeng-types-avatargroup.d.ts +11 -14
  471. package/types/primeng-types-badge.d.ts +13 -16
  472. package/types/primeng-types-blockui.d.ts +18 -21
  473. package/types/primeng-types-breadcrumb.d.ts +65 -68
  474. package/types/primeng-types-button.d.ts +106 -109
  475. package/types/primeng-types-card.d.ts +54 -57
  476. package/types/primeng-types-carousel.d.ts +143 -146
  477. package/types/primeng-types-cascadeselect.d.ts +186 -192
  478. package/types/primeng-types-chart.d.ts +34 -39
  479. package/types/primeng-types-checkbox.d.ts +52 -55
  480. package/types/primeng-types-chip.d.ts +48 -51
  481. package/types/primeng-types-colorpicker.d.ts +59 -62
  482. package/types/primeng-types-commandmenu.d.ts +98 -101
  483. package/types/primeng-types-compare.d.ts +33 -36
  484. package/types/primeng-types-confirmdialog.d.ts +124 -127
  485. package/types/primeng-types-confirmpopup.d.ts +75 -78
  486. package/types/primeng-types-contextmenu.d.ts +100 -103
  487. package/types/primeng-types-dataview.d.ts +180 -183
  488. package/types/primeng-types-datepicker.d.ts +442 -445
  489. package/types/primeng-types-dialog.d.ts +93 -96
  490. package/types/primeng-types-divider.d.ts +14 -17
  491. package/types/primeng-types-dock.d.ts +45 -48
  492. package/types/primeng-types-drawer.d.ts +62 -65
  493. package/types/primeng-types-editor.d.ts +143 -146
  494. package/types/primeng-types-fieldset.d.ts +83 -87
  495. package/types/primeng-types-fileupload.d.ts +296 -301
  496. package/types/primeng-types-floatlabel.d.ts +12 -15
  497. package/types/primeng-types-fluid.d.ts +11 -14
  498. package/types/primeng-types-galleria.d.ts +209 -212
  499. package/types/primeng-types-gallery.d.ts +195 -198
  500. package/types/primeng-types-iconfield.d.ts +12 -15
  501. package/types/primeng-types-iftalabel.d.ts +11 -14
  502. package/types/primeng-types-image.d.ts +118 -121
  503. package/types/primeng-types-imagecompare.d.ts +22 -25
  504. package/types/primeng-types-inplace.d.ts +46 -49
  505. package/types/primeng-types-inputcolor.d.ts +86 -89
  506. package/types/primeng-types-inputgroup.d.ts +11 -14
  507. package/types/primeng-types-inputgroupaddon.d.ts +11 -14
  508. package/types/primeng-types-inputicon.d.ts +11 -14
  509. package/types/primeng-types-inputmask.d.ts +30 -33
  510. package/types/primeng-types-inputnumber.d.ts +72 -75
  511. package/types/primeng-types-inputotp.d.ts +67 -70
  512. package/types/primeng-types-inputpassword.d.ts +7 -10
  513. package/types/primeng-types-inputtags.d.ts +122 -125
  514. package/types/primeng-types-inputtext.d.ts +7 -10
  515. package/types/primeng-types-knob.d.ts +23 -26
  516. package/types/primeng-types-label.d.ts +7 -10
  517. package/types/primeng-types-listbox.d.ts +263 -267
  518. package/types/primeng-types-megamenu.d.ts +135 -138
  519. package/types/primeng-types-menu.d.ts +98 -101
  520. package/types/primeng-types-menubar.d.ts +122 -125
  521. package/types/primeng-types-message.d.ts +69 -72
  522. package/types/primeng-types-metergroup.d.ts +137 -140
  523. package/types/primeng-types-motion.d.ts +11 -14
  524. package/types/primeng-types-multiselect.d.ts +329 -333
  525. package/types/primeng-types-orderlist.d.ts +126 -129
  526. package/types/primeng-types-organizationchart.d.ts +147 -153
  527. package/types/primeng-types-overlay.d.ts +31 -34
  528. package/types/primeng-types-overlaybadge.d.ts +17 -20
  529. package/types/primeng-types-paginator.d.ts +131 -134
  530. package/types/primeng-types-panel.d.ts +91 -95
  531. package/types/primeng-types-panelmenu.d.ts +150 -153
  532. package/types/primeng-types-password.d.ts +94 -97
  533. package/types/primeng-types-picklist.d.ts +250 -260
  534. package/types/primeng-types-popover.d.ts +33 -36
  535. package/types/primeng-types-progressbar.d.ts +33 -36
  536. package/types/primeng-types-progressspinner.d.ts +27 -30
  537. package/types/primeng-types-radiobutton.d.ts +29 -32
  538. package/types/primeng-types-rating.d.ts +62 -65
  539. package/types/primeng-types-scrollarea.d.ts +35 -38
  540. package/types/primeng-types-scroller.d.ts +142 -146
  541. package/types/primeng-types-scrollpanel.d.ts +31 -34
  542. package/types/primeng-types-scrolltop.d.ts +37 -40
  543. package/types/primeng-types-select.d.ts +255 -254
  544. package/types/primeng-types-selectbutton.d.ts +56 -59
  545. package/types/primeng-types-shared.d.ts +6 -9
  546. package/types/primeng-types-sidebar.d.ts +105 -108
  547. package/types/primeng-types-skeleton.d.ts +11 -14
  548. package/types/primeng-types-slider.d.ts +59 -62
  549. package/types/primeng-types-speeddial.d.ts +71 -74
  550. package/types/primeng-types-splitbutton.d.ts +35 -38
  551. package/types/primeng-types-splitter.d.ts +58 -63
  552. package/types/primeng-types-stepper.d.ts +77 -80
  553. package/types/primeng-types-table.d.ts +743 -749
  554. package/types/primeng-types-tabs.d.ts +48 -51
  555. package/types/primeng-types-tag.d.ts +27 -30
  556. package/types/primeng-types-terminal.d.ts +43 -46
  557. package/types/primeng-types-textarea.d.ts +11 -14
  558. package/types/primeng-types-tieredmenu.d.ts +154 -157
  559. package/types/primeng-types-timeline.d.ts +60 -63
  560. package/types/primeng-types-toast.d.ts +92 -95
  561. package/types/primeng-types-togglebutton.d.ts +52 -55
  562. package/types/primeng-types-toggleswitch.d.ts +41 -44
  563. package/types/primeng-types-toolbar.d.ts +34 -37
  564. package/types/primeng-types-tooltip.d.ts +17 -20
  565. package/types/primeng-types-tree.d.ts +237 -246
  566. package/types/primeng-types-treeselect.d.ts +198 -202
  567. package/types/primeng-types-treetable.d.ts +492 -497
  568. package/types/primeng-useid.d.ts +15 -0
  569. package/types/primeng-usestyle.d.ts +107 -30
  570. package/types/primeng-utils.d.ts +79 -40
  571. package/types/primeng.d.ts +2 -2
  572. package/fesm2022/primeng-accordion.mjs.map +0 -1
  573. package/fesm2022/primeng-animateonscroll.mjs.map +0 -1
  574. package/fesm2022/primeng-api.mjs.map +0 -1
  575. package/fesm2022/primeng-autocomplete.mjs.map +0 -1
  576. package/fesm2022/primeng-autofocus.mjs.map +0 -1
  577. package/fesm2022/primeng-avatar.mjs.map +0 -1
  578. package/fesm2022/primeng-avatargroup.mjs.map +0 -1
  579. package/fesm2022/primeng-badge.mjs.map +0 -1
  580. package/fesm2022/primeng-base.mjs.map +0 -1
  581. package/fesm2022/primeng-basecomponent.mjs.map +0 -1
  582. package/fesm2022/primeng-baseeditableholder.mjs.map +0 -1
  583. package/fesm2022/primeng-baseinput.mjs.map +0 -1
  584. package/fesm2022/primeng-basemodelholder.mjs.map +0 -1
  585. package/fesm2022/primeng-bind.mjs.map +0 -1
  586. package/fesm2022/primeng-blockui.mjs.map +0 -1
  587. package/fesm2022/primeng-breadcrumb.mjs.map +0 -1
  588. package/fesm2022/primeng-button.mjs.map +0 -1
  589. package/fesm2022/primeng-buttongroup.mjs.map +0 -1
  590. package/fesm2022/primeng-card.mjs.map +0 -1
  591. package/fesm2022/primeng-carousel.mjs.map +0 -1
  592. package/fesm2022/primeng-cascadeselect.mjs.map +0 -1
  593. package/fesm2022/primeng-chart.mjs.map +0 -1
  594. package/fesm2022/primeng-checkbox.mjs.map +0 -1
  595. package/fesm2022/primeng-chip.mjs.map +0 -1
  596. package/fesm2022/primeng-classnames.mjs.map +0 -1
  597. package/fesm2022/primeng-colorpicker.mjs.map +0 -1
  598. package/fesm2022/primeng-commandmenu.mjs.map +0 -1
  599. package/fesm2022/primeng-compare.mjs.map +0 -1
  600. package/fesm2022/primeng-config.mjs.map +0 -1
  601. package/fesm2022/primeng-confirmdialog.mjs.map +0 -1
  602. package/fesm2022/primeng-confirmpopup.mjs.map +0 -1
  603. package/fesm2022/primeng-contextmenu.mjs.map +0 -1
  604. package/fesm2022/primeng-dataview.mjs.map +0 -1
  605. package/fesm2022/primeng-datepicker.mjs.map +0 -1
  606. package/fesm2022/primeng-dialog.mjs.map +0 -1
  607. package/fesm2022/primeng-divider.mjs.map +0 -1
  608. package/fesm2022/primeng-dock.mjs.map +0 -1
  609. package/fesm2022/primeng-dom.mjs.map +0 -1
  610. package/fesm2022/primeng-dragdrop.mjs.map +0 -1
  611. package/fesm2022/primeng-drawer.mjs.map +0 -1
  612. package/fesm2022/primeng-dynamicdialog.mjs.map +0 -1
  613. package/fesm2022/primeng-editor.mjs.map +0 -1
  614. package/fesm2022/primeng-fieldset.mjs.map +0 -1
  615. package/fesm2022/primeng-fileupload.mjs.map +0 -1
  616. package/fesm2022/primeng-floatlabel.mjs.map +0 -1
  617. package/fesm2022/primeng-fluid.mjs.map +0 -1
  618. package/fesm2022/primeng-focustrap.mjs.map +0 -1
  619. package/fesm2022/primeng-galleria.mjs.map +0 -1
  620. package/fesm2022/primeng-gallery.mjs.map +0 -1
  621. package/fesm2022/primeng-iconfield.mjs.map +0 -1
  622. package/fesm2022/primeng-icons-angledoubledown.mjs.map +0 -1
  623. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +0 -1
  624. package/fesm2022/primeng-icons-angledoubleright.mjs.map +0 -1
  625. package/fesm2022/primeng-icons-angledoubleup.mjs.map +0 -1
  626. package/fesm2022/primeng-icons-angledown.mjs.map +0 -1
  627. package/fesm2022/primeng-icons-angleleft.mjs.map +0 -1
  628. package/fesm2022/primeng-icons-angleright.mjs.map +0 -1
  629. package/fesm2022/primeng-icons-angleup.mjs.map +0 -1
  630. package/fesm2022/primeng-icons-arrowdown.mjs.map +0 -1
  631. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +0 -1
  632. package/fesm2022/primeng-icons-arrowdownright.mjs.map +0 -1
  633. package/fesm2022/primeng-icons-arrowleft.mjs.map +0 -1
  634. package/fesm2022/primeng-icons-arrowright.mjs.map +0 -1
  635. package/fesm2022/primeng-icons-arrowup.mjs.map +0 -1
  636. package/fesm2022/primeng-icons-ban.mjs.map +0 -1
  637. package/fesm2022/primeng-icons-bars.mjs.map +0 -1
  638. package/fesm2022/primeng-icons-baseicon.mjs.map +0 -1
  639. package/fesm2022/primeng-icons-blank.mjs.map +0 -1
  640. package/fesm2022/primeng-icons-calendar.mjs.map +0 -1
  641. package/fesm2022/primeng-icons-caretleft.mjs.map +0 -1
  642. package/fesm2022/primeng-icons-caretright.mjs.map +0 -1
  643. package/fesm2022/primeng-icons-check.mjs.map +0 -1
  644. package/fesm2022/primeng-icons-chevrondown.mjs.map +0 -1
  645. package/fesm2022/primeng-icons-chevronleft.mjs.map +0 -1
  646. package/fesm2022/primeng-icons-chevronright.mjs.map +0 -1
  647. package/fesm2022/primeng-icons-chevronup.mjs.map +0 -1
  648. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +0 -1
  649. package/fesm2022/primeng-icons-eye.mjs.map +0 -1
  650. package/fesm2022/primeng-icons-eyeslash.mjs.map +0 -1
  651. package/fesm2022/primeng-icons-filter.mjs.map +0 -1
  652. package/fesm2022/primeng-icons-filterfill.mjs.map +0 -1
  653. package/fesm2022/primeng-icons-filterslash.mjs.map +0 -1
  654. package/fesm2022/primeng-icons-home.mjs.map +0 -1
  655. package/fesm2022/primeng-icons-infocircle.mjs.map +0 -1
  656. package/fesm2022/primeng-icons-minus.mjs.map +0 -1
  657. package/fesm2022/primeng-icons-pencil.mjs.map +0 -1
  658. package/fesm2022/primeng-icons-plus.mjs.map +0 -1
  659. package/fesm2022/primeng-icons-refresh.mjs.map +0 -1
  660. package/fesm2022/primeng-icons-search.mjs.map +0 -1
  661. package/fesm2022/primeng-icons-searchminus.mjs.map +0 -1
  662. package/fesm2022/primeng-icons-searchplus.mjs.map +0 -1
  663. package/fesm2022/primeng-icons-sortalt.mjs.map +0 -1
  664. package/fesm2022/primeng-icons-sortamountdown.mjs.map +0 -1
  665. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +0 -1
  666. package/fesm2022/primeng-icons-spinner.mjs.map +0 -1
  667. package/fesm2022/primeng-icons-star.mjs.map +0 -1
  668. package/fesm2022/primeng-icons-starfill.mjs.map +0 -1
  669. package/fesm2022/primeng-icons-thlarge.mjs.map +0 -1
  670. package/fesm2022/primeng-icons-times.mjs.map +0 -1
  671. package/fesm2022/primeng-icons-timescircle.mjs.map +0 -1
  672. package/fesm2022/primeng-icons-trash.mjs.map +0 -1
  673. package/fesm2022/primeng-icons-undo.mjs.map +0 -1
  674. package/fesm2022/primeng-icons-upload.mjs.map +0 -1
  675. package/fesm2022/primeng-icons-windowmaximize.mjs.map +0 -1
  676. package/fesm2022/primeng-icons-windowminimize.mjs.map +0 -1
  677. package/fesm2022/primeng-icons.mjs.map +0 -1
  678. package/fesm2022/primeng-iftalabel.mjs.map +0 -1
  679. package/fesm2022/primeng-image.mjs.map +0 -1
  680. package/fesm2022/primeng-imagecompare.mjs.map +0 -1
  681. package/fesm2022/primeng-inplace.mjs.map +0 -1
  682. package/fesm2022/primeng-inputcolor.mjs.map +0 -1
  683. package/fesm2022/primeng-inputgroup.mjs.map +0 -1
  684. package/fesm2022/primeng-inputgroupaddon.mjs.map +0 -1
  685. package/fesm2022/primeng-inputicon.mjs.map +0 -1
  686. package/fesm2022/primeng-inputmask.mjs.map +0 -1
  687. package/fesm2022/primeng-inputnumber.mjs.map +0 -1
  688. package/fesm2022/primeng-inputotp.mjs.map +0 -1
  689. package/fesm2022/primeng-inputpassword.mjs.map +0 -1
  690. package/fesm2022/primeng-inputtags.mjs.map +0 -1
  691. package/fesm2022/primeng-inputtext.mjs.map +0 -1
  692. package/fesm2022/primeng-keyfilter.mjs.map +0 -1
  693. package/fesm2022/primeng-knob.mjs.map +0 -1
  694. package/fesm2022/primeng-label.mjs.map +0 -1
  695. package/fesm2022/primeng-license.mjs.map +0 -1
  696. package/fesm2022/primeng-listbox.mjs.map +0 -1
  697. package/fesm2022/primeng-megamenu.mjs.map +0 -1
  698. package/fesm2022/primeng-menu.mjs.map +0 -1
  699. package/fesm2022/primeng-menubar.mjs.map +0 -1
  700. package/fesm2022/primeng-message.mjs.map +0 -1
  701. package/fesm2022/primeng-metergroup.mjs.map +0 -1
  702. package/fesm2022/primeng-motion.mjs.map +0 -1
  703. package/fesm2022/primeng-multiselect.mjs.map +0 -1
  704. package/fesm2022/primeng-orderlist.mjs.map +0 -1
  705. package/fesm2022/primeng-organizationchart.mjs.map +0 -1
  706. package/fesm2022/primeng-overlay.mjs.map +0 -1
  707. package/fesm2022/primeng-overlaybadge.mjs.map +0 -1
  708. package/fesm2022/primeng-paginator.mjs.map +0 -1
  709. package/fesm2022/primeng-panel.mjs.map +0 -1
  710. package/fesm2022/primeng-panelmenu.mjs.map +0 -1
  711. package/fesm2022/primeng-passthrough.mjs.map +0 -1
  712. package/fesm2022/primeng-password.mjs.map +0 -1
  713. package/fesm2022/primeng-picklist.mjs.map +0 -1
  714. package/fesm2022/primeng-popover.mjs.map +0 -1
  715. package/fesm2022/primeng-progressbar.mjs.map +0 -1
  716. package/fesm2022/primeng-progressspinner.mjs.map +0 -1
  717. package/fesm2022/primeng-radiobutton.mjs.map +0 -1
  718. package/fesm2022/primeng-rating.mjs.map +0 -1
  719. package/fesm2022/primeng-ripple.mjs.map +0 -1
  720. package/fesm2022/primeng-scrollarea.mjs.map +0 -1
  721. package/fesm2022/primeng-scroller.mjs.map +0 -1
  722. package/fesm2022/primeng-scrollpanel.mjs.map +0 -1
  723. package/fesm2022/primeng-scrolltop.mjs.map +0 -1
  724. package/fesm2022/primeng-select.mjs.map +0 -1
  725. package/fesm2022/primeng-selectbutton.mjs.map +0 -1
  726. package/fesm2022/primeng-sidebar.mjs.map +0 -1
  727. package/fesm2022/primeng-skeleton.mjs.map +0 -1
  728. package/fesm2022/primeng-slider.mjs.map +0 -1
  729. package/fesm2022/primeng-speeddial.mjs.map +0 -1
  730. package/fesm2022/primeng-splitbutton.mjs.map +0 -1
  731. package/fesm2022/primeng-splitter.mjs.map +0 -1
  732. package/fesm2022/primeng-stepper.mjs.map +0 -1
  733. package/fesm2022/primeng-steps.mjs.map +0 -1
  734. package/fesm2022/primeng-styleclass.mjs.map +0 -1
  735. package/fesm2022/primeng-table.mjs.map +0 -1
  736. package/fesm2022/primeng-tabs.mjs.map +0 -1
  737. package/fesm2022/primeng-tag.mjs.map +0 -1
  738. package/fesm2022/primeng-terminal.mjs.map +0 -1
  739. package/fesm2022/primeng-textarea.mjs.map +0 -1
  740. package/fesm2022/primeng-tieredmenu.mjs.map +0 -1
  741. package/fesm2022/primeng-timeline.mjs.map +0 -1
  742. package/fesm2022/primeng-toast.mjs.map +0 -1
  743. package/fesm2022/primeng-togglebutton.mjs.map +0 -1
  744. package/fesm2022/primeng-toggleswitch.mjs.map +0 -1
  745. package/fesm2022/primeng-toolbar.mjs.map +0 -1
  746. package/fesm2022/primeng-tooltip.mjs.map +0 -1
  747. package/fesm2022/primeng-tree.mjs.map +0 -1
  748. package/fesm2022/primeng-treeselect.mjs.map +0 -1
  749. package/fesm2022/primeng-treetable.mjs.map +0 -1
  750. package/fesm2022/primeng-ts-helpers.mjs.map +0 -1
  751. package/fesm2022/primeng-types-accordion.mjs.map +0 -1
  752. package/fesm2022/primeng-types-autocomplete.mjs.map +0 -1
  753. package/fesm2022/primeng-types-avatar.mjs.map +0 -1
  754. package/fesm2022/primeng-types-avatargroup.mjs.map +0 -1
  755. package/fesm2022/primeng-types-badge.mjs.map +0 -1
  756. package/fesm2022/primeng-types-blockui.mjs.map +0 -1
  757. package/fesm2022/primeng-types-breadcrumb.mjs.map +0 -1
  758. package/fesm2022/primeng-types-button.mjs.map +0 -1
  759. package/fesm2022/primeng-types-card.mjs.map +0 -1
  760. package/fesm2022/primeng-types-carousel.mjs.map +0 -1
  761. package/fesm2022/primeng-types-cascadeselect.mjs.map +0 -1
  762. package/fesm2022/primeng-types-chart.mjs.map +0 -1
  763. package/fesm2022/primeng-types-checkbox.mjs.map +0 -1
  764. package/fesm2022/primeng-types-chip.mjs.map +0 -1
  765. package/fesm2022/primeng-types-colorpicker.mjs.map +0 -1
  766. package/fesm2022/primeng-types-commandmenu.mjs.map +0 -1
  767. package/fesm2022/primeng-types-compare.mjs.map +0 -1
  768. package/fesm2022/primeng-types-confirmdialog.mjs.map +0 -1
  769. package/fesm2022/primeng-types-confirmpopup.mjs.map +0 -1
  770. package/fesm2022/primeng-types-contextmenu.mjs.map +0 -1
  771. package/fesm2022/primeng-types-dataview.mjs.map +0 -1
  772. package/fesm2022/primeng-types-datepicker.mjs.map +0 -1
  773. package/fesm2022/primeng-types-dialog.mjs.map +0 -1
  774. package/fesm2022/primeng-types-divider.mjs.map +0 -1
  775. package/fesm2022/primeng-types-dock.mjs.map +0 -1
  776. package/fesm2022/primeng-types-drawer.mjs.map +0 -1
  777. package/fesm2022/primeng-types-editor.mjs.map +0 -1
  778. package/fesm2022/primeng-types-fieldset.mjs.map +0 -1
  779. package/fesm2022/primeng-types-fileupload.mjs.map +0 -1
  780. package/fesm2022/primeng-types-floatlabel.mjs.map +0 -1
  781. package/fesm2022/primeng-types-fluid.mjs.map +0 -1
  782. package/fesm2022/primeng-types-galleria.mjs.map +0 -1
  783. package/fesm2022/primeng-types-gallery.mjs.map +0 -1
  784. package/fesm2022/primeng-types-iconfield.mjs.map +0 -1
  785. package/fesm2022/primeng-types-iftalabel.mjs.map +0 -1
  786. package/fesm2022/primeng-types-image.mjs.map +0 -1
  787. package/fesm2022/primeng-types-imagecompare.mjs.map +0 -1
  788. package/fesm2022/primeng-types-inplace.mjs.map +0 -1
  789. package/fesm2022/primeng-types-inputcolor.mjs.map +0 -1
  790. package/fesm2022/primeng-types-inputgroup.mjs.map +0 -1
  791. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +0 -1
  792. package/fesm2022/primeng-types-inputicon.mjs.map +0 -1
  793. package/fesm2022/primeng-types-inputmask.mjs.map +0 -1
  794. package/fesm2022/primeng-types-inputnumber.mjs.map +0 -1
  795. package/fesm2022/primeng-types-inputotp.mjs.map +0 -1
  796. package/fesm2022/primeng-types-inputpassword.mjs.map +0 -1
  797. package/fesm2022/primeng-types-inputtags.mjs.map +0 -1
  798. package/fesm2022/primeng-types-inputtext.mjs.map +0 -1
  799. package/fesm2022/primeng-types-knob.mjs.map +0 -1
  800. package/fesm2022/primeng-types-label.mjs.map +0 -1
  801. package/fesm2022/primeng-types-listbox.mjs.map +0 -1
  802. package/fesm2022/primeng-types-megamenu.mjs.map +0 -1
  803. package/fesm2022/primeng-types-menu.mjs.map +0 -1
  804. package/fesm2022/primeng-types-menubar.mjs.map +0 -1
  805. package/fesm2022/primeng-types-message.mjs.map +0 -1
  806. package/fesm2022/primeng-types-metergroup.mjs.map +0 -1
  807. package/fesm2022/primeng-types-motion.mjs.map +0 -1
  808. package/fesm2022/primeng-types-multiselect.mjs.map +0 -1
  809. package/fesm2022/primeng-types-orderlist.mjs.map +0 -1
  810. package/fesm2022/primeng-types-organizationchart.mjs.map +0 -1
  811. package/fesm2022/primeng-types-overlay.mjs.map +0 -1
  812. package/fesm2022/primeng-types-overlaybadge.mjs.map +0 -1
  813. package/fesm2022/primeng-types-paginator.mjs.map +0 -1
  814. package/fesm2022/primeng-types-panel.mjs.map +0 -1
  815. package/fesm2022/primeng-types-panelmenu.mjs.map +0 -1
  816. package/fesm2022/primeng-types-password.mjs.map +0 -1
  817. package/fesm2022/primeng-types-picklist.mjs.map +0 -1
  818. package/fesm2022/primeng-types-popover.mjs.map +0 -1
  819. package/fesm2022/primeng-types-progressbar.mjs.map +0 -1
  820. package/fesm2022/primeng-types-progressspinner.mjs.map +0 -1
  821. package/fesm2022/primeng-types-radiobutton.mjs.map +0 -1
  822. package/fesm2022/primeng-types-rating.mjs.map +0 -1
  823. package/fesm2022/primeng-types-scrollarea.mjs.map +0 -1
  824. package/fesm2022/primeng-types-scroller.mjs.map +0 -1
  825. package/fesm2022/primeng-types-scrollpanel.mjs.map +0 -1
  826. package/fesm2022/primeng-types-scrolltop.mjs.map +0 -1
  827. package/fesm2022/primeng-types-select.mjs.map +0 -1
  828. package/fesm2022/primeng-types-selectbutton.mjs.map +0 -1
  829. package/fesm2022/primeng-types-shared.mjs.map +0 -1
  830. package/fesm2022/primeng-types-sidebar.mjs.map +0 -1
  831. package/fesm2022/primeng-types-skeleton.mjs.map +0 -1
  832. package/fesm2022/primeng-types-slider.mjs.map +0 -1
  833. package/fesm2022/primeng-types-speeddial.mjs.map +0 -1
  834. package/fesm2022/primeng-types-splitbutton.mjs.map +0 -1
  835. package/fesm2022/primeng-types-splitter.mjs.map +0 -1
  836. package/fesm2022/primeng-types-stepper.mjs.map +0 -1
  837. package/fesm2022/primeng-types-table.mjs.map +0 -1
  838. package/fesm2022/primeng-types-tabs.mjs.map +0 -1
  839. package/fesm2022/primeng-types-tag.mjs.map +0 -1
  840. package/fesm2022/primeng-types-terminal.mjs.map +0 -1
  841. package/fesm2022/primeng-types-textarea.mjs.map +0 -1
  842. package/fesm2022/primeng-types-tieredmenu.mjs.map +0 -1
  843. package/fesm2022/primeng-types-timeline.mjs.map +0 -1
  844. package/fesm2022/primeng-types-toast.mjs.map +0 -1
  845. package/fesm2022/primeng-types-togglebutton.mjs.map +0 -1
  846. package/fesm2022/primeng-types-toggleswitch.mjs.map +0 -1
  847. package/fesm2022/primeng-types-toolbar.mjs.map +0 -1
  848. package/fesm2022/primeng-types-tooltip.mjs.map +0 -1
  849. package/fesm2022/primeng-types-tree.mjs.map +0 -1
  850. package/fesm2022/primeng-types-treeselect.mjs.map +0 -1
  851. package/fesm2022/primeng-types-treetable.mjs.map +0 -1
  852. package/fesm2022/primeng-usestyle.mjs.map +0 -1
  853. package/fesm2022/primeng-utils.mjs.map +0 -1
  854. package/fesm2022/primeng.mjs.map +0 -1
@@ -1,164 +1,173 @@
1
- export * from 'primeng/types/fileupload';
2
- import { NgTemplateOutlet, isPlatformBrowser } from '@angular/common';
3
- import { HttpClient, HttpEventType } from '@angular/common/http';
4
- import * as i0 from '@angular/core';
5
- import { InjectionToken, Injectable, inject, output, input, ChangeDetectionStrategy, Component, booleanAttribute, numberAttribute, contentChild, computed, viewChild, signal, effect, ViewEncapsulation, NgModule } from '@angular/core';
6
- import { DomSanitizer } from '@angular/platform-browser';
7
- import { addClass, removeClass } from '@primeuix/utils';
8
- import { TranslationKeys, SharedModule } from 'primeng/api';
9
- import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
10
- import * as i1 from 'primeng/bind';
11
- import { Bind } from 'primeng/bind';
12
- import { ButtonDirective } from 'primeng/button';
13
- import { Plus } from '@primeicons/angular/plus';
14
- import { Times } from '@primeicons/angular/times';
15
- import { Upload } from '@primeicons/angular/upload';
16
- import { Message } from 'primeng/message';
17
- import { ProgressBar } from 'primeng/progressbar';
18
- import { Badge } from 'primeng/badge';
19
- import { style } from '@primeuix/styles/fileupload';
20
- import { BaseStyle } from 'primeng/base';
21
-
22
- const FILEUPLOAD_INSTANCE = new InjectionToken('FILEUPLOAD_INSTANCE');
23
-
1
+ import { NgTemplateOutlet, isPlatformBrowser } from "@angular/common";
2
+ import { HttpClient, HttpEventType } from "@angular/common/http";
3
+ import * as i0 from "@angular/core";
4
+ import { ChangeDetectionStrategy, Component, Injectable, InjectionToken, NgModule, ViewEncapsulation, booleanAttribute, computed, contentChild, effect, inject, input, numberAttribute, output, signal, viewChild } from "@angular/core";
5
+ import { DomSanitizer } from "@angular/platform-browser";
6
+ import { addClass, removeClass } from "@primeuix/utils";
7
+ import { SharedModule, TranslationKeys } from "primeng/api";
8
+ import { BaseComponent, PARENT_INSTANCE } from "primeng/basecomponent";
9
+ import * as i1 from "primeng/bind";
10
+ import { Bind } from "primeng/bind";
11
+ import { ButtonDirective } from "primeng/button";
12
+ import { Plus } from "@primeicons/angular/plus";
13
+ import { Times } from "@primeicons/angular/times";
14
+ import { Upload } from "@primeicons/angular/upload";
15
+ import { Message } from "primeng/message";
16
+ import { ProgressBar } from "primeng/progressbar";
17
+ import { Badge } from "primeng/badge";
18
+ import { style } from "@primeuix/styles/fileupload";
19
+ import { BaseStyle } from "primeng/base";
20
+ export * from "primeng/types/fileupload";
21
+ const FILEUPLOAD_INSTANCE = new InjectionToken("FILEUPLOAD_INSTANCE");
24
22
  const classes = {
25
- root: ({ instance }) => `p-fileupload p-fileupload-${instance.mode()} p-component`,
26
- header: 'p-fileupload-header',
27
- pcChooseButton: 'p-fileupload-choose-button',
28
- pcUploadButton: 'p-fileupload-upload-button',
29
- pcCancelButton: 'p-fileupload-cancel-button',
30
- content: 'p-fileupload-content',
31
- fileList: 'p-fileupload-file-list',
32
- file: 'p-fileupload-file',
33
- fileThumbnail: 'p-fileupload-file-thumbnail',
34
- fileInfo: 'p-fileupload-file-info',
35
- fileName: 'p-fileupload-file-name',
36
- fileSize: 'p-fileupload-file-size',
37
- pcFileBadge: 'p-fileupload-file-badge',
38
- fileActions: 'p-fileupload-file-actions',
39
- pcFileRemoveButton: 'p-fileupload-file-remove-button',
40
- basicContent: 'p-fileupload-basic-content'
23
+ root: ({ instance }) => `p-fileupload p-fileupload-${instance.mode()} p-component`,
24
+ header: "p-fileupload-header",
25
+ pcChooseButton: "p-fileupload-choose-button",
26
+ pcUploadButton: "p-fileupload-upload-button",
27
+ pcCancelButton: "p-fileupload-cancel-button",
28
+ content: "p-fileupload-content",
29
+ fileList: "p-fileupload-file-list",
30
+ file: "p-fileupload-file",
31
+ fileThumbnail: "p-fileupload-file-thumbnail",
32
+ fileInfo: "p-fileupload-file-info",
33
+ fileName: "p-fileupload-file-name",
34
+ fileSize: "p-fileupload-file-size",
35
+ pcFileBadge: "p-fileupload-file-badge",
36
+ fileActions: "p-fileupload-file-actions",
37
+ pcFileRemoveButton: "p-fileupload-file-remove-button",
38
+ basicContent: "p-fileupload-basic-content"
41
39
  };
42
- class FileUploadStyle extends BaseStyle {
43
- name = 'fileupload';
44
- style = style;
45
- classes = classes;
46
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
47
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadStyle });
48
- }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadStyle, decorators: [{
50
- type: Injectable
51
- }] });
52
- /**
53
- *
54
- * FileUpload is an advanced uploader with dragdrop support, multi file uploads, auto uploading, progress tracking and validations.
55
- *
56
- * [Live Demo](https://www.primeng.org/fileupload/)
57
- *
58
- * @module fileuploadstyle
59
- *
60
- */
40
+ var FileUploadStyle = class FileUploadStyle extends BaseStyle {
41
+ name = "fileupload";
42
+ style = style;
43
+ classes = classes;
44
+ static ɵfac = i0.ɵɵngDeclareFactory({
45
+ minVersion: "12.0.0",
46
+ version: "22.2.3",
47
+ ngImport: i0,
48
+ type: FileUploadStyle,
49
+ deps: null,
50
+ target: i0.ɵɵFactoryTarget.Injectable
51
+ });
52
+ static ɵprov = i0.ɵɵngDeclareInjectable({
53
+ minVersion: "12.0.0",
54
+ version: "22.2.3",
55
+ ngImport: i0,
56
+ type: FileUploadStyle
57
+ });
58
+ };
59
+ i0.ɵɵngDeclareClassMetadata({
60
+ minVersion: "12.0.0",
61
+ version: "22.2.3",
62
+ ngImport: i0,
63
+ type: FileUploadStyle,
64
+ decorators: [{ type: Injectable }]
65
+ });
61
66
  var FileUploadClasses;
62
- (function (FileUploadClasses) {
63
- /**
64
- * Class name of the root element
65
- */
66
- FileUploadClasses["root"] = "p-fileupload";
67
- /**
68
- * Class name of the header element
69
- */
70
- FileUploadClasses["header"] = "p-fileupload-header";
71
- /**
72
- * Class name of the choose button element
73
- */
74
- FileUploadClasses["pcChooseButton"] = "p-fileupload-choose-button";
75
- /**
76
- * Class name of the upload button element
77
- */
78
- FileUploadClasses["pcUploadButton"] = "p-fileupload-upload-button";
79
- /**
80
- * Class name of the cancel button element
81
- */
82
- FileUploadClasses["pcCancelButton"] = "p-fileupload-cancel-button";
83
- /**
84
- * Class name of the content element
85
- */
86
- FileUploadClasses["content"] = "p-fileupload-content";
87
- /**
88
- * Class name of the file list element
89
- */
90
- FileUploadClasses["fileList"] = "p-fileupload-file-list";
91
- /**
92
- * Class name of the file element
93
- */
94
- FileUploadClasses["file"] = "p-fileupload-file";
95
- /**
96
- * Class name of the file thumbnail element
97
- */
98
- FileUploadClasses["fileThumbnail"] = "p-fileupload-file-thumbnail";
99
- /**
100
- * Class name of the file info element
101
- */
102
- FileUploadClasses["fileInfo"] = "p-fileupload-file-info";
103
- /**
104
- * Class name of the file name element
105
- */
106
- FileUploadClasses["fileName"] = "p-fileupload-file-name";
107
- /**
108
- * Class name of the file size element
109
- */
110
- FileUploadClasses["fileSize"] = "p-fileupload-file-size";
111
- /**
112
- * Class name of the file badge element
113
- */
114
- FileUploadClasses["pcFileBadge"] = "p-fileupload-file-badge";
115
- /**
116
- * Class name of the file actions element
117
- */
118
- FileUploadClasses["fileActions"] = "p-fileupload-file-actions";
119
- /**
120
- * Class name of the file remove button element
121
- */
122
- FileUploadClasses["pcFileRemoveButton"] = "p-fileupload-file-remove-button";
123
- /**
124
- * Class name of the content in basic mode
125
- */
126
- FileUploadClasses["basicContent"] = "p-fileupload-basic-content";
67
+ (function(FileUploadClasses) {
68
+ FileUploadClasses["root"] = "p-fileupload";
69
+ FileUploadClasses["header"] = "p-fileupload-header";
70
+ FileUploadClasses["pcChooseButton"] = "p-fileupload-choose-button";
71
+ FileUploadClasses["pcUploadButton"] = "p-fileupload-upload-button";
72
+ FileUploadClasses["pcCancelButton"] = "p-fileupload-cancel-button";
73
+ FileUploadClasses["content"] = "p-fileupload-content";
74
+ FileUploadClasses["fileList"] = "p-fileupload-file-list";
75
+ FileUploadClasses["file"] = "p-fileupload-file";
76
+ FileUploadClasses["fileThumbnail"] = "p-fileupload-file-thumbnail";
77
+ FileUploadClasses["fileInfo"] = "p-fileupload-file-info";
78
+ FileUploadClasses["fileName"] = "p-fileupload-file-name";
79
+ FileUploadClasses["fileSize"] = "p-fileupload-file-size";
80
+ FileUploadClasses["pcFileBadge"] = "p-fileupload-file-badge";
81
+ FileUploadClasses["fileActions"] = "p-fileupload-file-actions";
82
+ FileUploadClasses["pcFileRemoveButton"] = "p-fileupload-file-remove-button";
83
+ FileUploadClasses["basicContent"] = "p-fileupload-basic-content";
127
84
  })(FileUploadClasses || (FileUploadClasses = {}));
128
-
129
- class FileContent extends BaseComponent {
130
- _componentStyle = inject(FileUploadStyle);
131
- $pcFileUpload = inject(FILEUPLOAD_INSTANCE);
132
- onRemove = output();
133
- files = input(/* @ts-ignore */
134
- ...(ngDevMode ? [undefined, { debugName: "files" }] : /* istanbul ignore next */ []));
135
- badgeSeverity = input('warn', /* @ts-ignore */
136
- ...(ngDevMode ? [{ debugName: "badgeSeverity" }] : /* istanbul ignore next */ []));
137
- badgeValue = input(/* @ts-ignore */
138
- ...(ngDevMode ? [undefined, { debugName: "badgeValue" }] : /* istanbul ignore next */ []));
139
- previewWidth = input(50, /* @ts-ignore */
140
- ...(ngDevMode ? [{ debugName: "previewWidth" }] : /* istanbul ignore next */ []));
141
- fileRemoveIconTemplate = input(/* @ts-ignore */
142
- ...(ngDevMode ? [undefined, { debugName: "fileRemoveIconTemplate" }] : /* istanbul ignore next */ []));
143
- onRemoveClick(event, index) {
144
- this.onRemove.emit({ event, index });
145
- }
146
- getRemoveIconContext(iconClass, file, index) {
147
- return { class: iconClass, file, index };
148
- }
149
- formatSize(bytes) {
150
- const k = 1024;
151
- const dm = 3;
152
- const sizes = this.translate(TranslationKeys.FILE_SIZE_TYPES);
153
- if (bytes === 0) {
154
- return `0 ${sizes[0]}`;
155
- }
156
- const i = Math.floor(Math.log(bytes) / Math.log(k));
157
- const formattedSize = (bytes / Math.pow(k, i)).toFixed(dm);
158
- return `${formattedSize} ${sizes[i]}`;
159
- }
160
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileContent, deps: null, target: i0.ɵɵFactoryTarget.Component });
161
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: FileContent, isStandalone: true, selector: "[pFileContent]", inputs: { files: { classPropertyName: "files", publicName: "files", isSignal: true, isRequired: false, transformFunction: null }, badgeSeverity: { classPropertyName: "badgeSeverity", publicName: "badgeSeverity", isSignal: true, isRequired: false, transformFunction: null }, badgeValue: { classPropertyName: "badgeValue", publicName: "badgeValue", isSignal: true, isRequired: false, transformFunction: null }, previewWidth: { classPropertyName: "previewWidth", publicName: "previewWidth", isSignal: true, isRequired: false, transformFunction: null }, fileRemoveIconTemplate: { classPropertyName: "fileRemoveIconTemplate", publicName: "fileRemoveIconTemplate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onRemove: "onRemove" }, providers: [FileUploadStyle], usesInheritance: true, ngImport: i0, template: `@for (file of files(); track file?.name + '-' + $index; let index = $index) {
85
+ var FileContent = class FileContent extends BaseComponent {
86
+ _componentStyle = inject(FileUploadStyle);
87
+ $pcFileUpload = inject(FILEUPLOAD_INSTANCE);
88
+ onRemove = output();
89
+ files = input(...ngDevMode ? [void 0, { debugName: "files" }] : /* istanbul ignore next */ []);
90
+ badgeSeverity = input("warn", ...ngDevMode ? [{ debugName: "badgeSeverity" }] : /* istanbul ignore next */ []);
91
+ badgeValue = input(...ngDevMode ? [void 0, { debugName: "badgeValue" }] : /* istanbul ignore next */ []);
92
+ previewWidth = input(50, ...ngDevMode ? [{ debugName: "previewWidth" }] : /* istanbul ignore next */ []);
93
+ fileRemoveIconTemplate = input(...ngDevMode ? [void 0, { debugName: "fileRemoveIconTemplate" }] : /* istanbul ignore next */ []);
94
+ onRemoveClick(event, index) {
95
+ this.onRemove.emit({
96
+ event,
97
+ index
98
+ });
99
+ }
100
+ getRemoveIconContext(iconClass, file, index) {
101
+ return {
102
+ class: iconClass,
103
+ file,
104
+ index
105
+ };
106
+ }
107
+ formatSize(bytes) {
108
+ const k = 1024;
109
+ const dm = 3;
110
+ const sizes = this.translate(TranslationKeys.FILE_SIZE_TYPES);
111
+ if (bytes === 0) return `0 ${sizes[0]}`;
112
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
113
+ return `${(bytes / Math.pow(k, i)).toFixed(dm)} ${sizes[i]}`;
114
+ }
115
+ static ɵfac = i0.ɵɵngDeclareFactory({
116
+ minVersion: "12.0.0",
117
+ version: "22.2.3",
118
+ ngImport: i0,
119
+ type: FileContent,
120
+ deps: null,
121
+ target: i0.ɵɵFactoryTarget.Component
122
+ });
123
+ static ɵcmp = i0.ɵɵngDeclareComponent({
124
+ minVersion: "17.0.0",
125
+ version: "22.2.3",
126
+ type: FileContent,
127
+ isStandalone: true,
128
+ selector: "[pFileContent]",
129
+ inputs: {
130
+ files: {
131
+ classPropertyName: "files",
132
+ publicName: "files",
133
+ isSignal: true,
134
+ isRequired: false,
135
+ transformFunction: null
136
+ },
137
+ badgeSeverity: {
138
+ classPropertyName: "badgeSeverity",
139
+ publicName: "badgeSeverity",
140
+ isSignal: true,
141
+ isRequired: false,
142
+ transformFunction: null
143
+ },
144
+ badgeValue: {
145
+ classPropertyName: "badgeValue",
146
+ publicName: "badgeValue",
147
+ isSignal: true,
148
+ isRequired: false,
149
+ transformFunction: null
150
+ },
151
+ previewWidth: {
152
+ classPropertyName: "previewWidth",
153
+ publicName: "previewWidth",
154
+ isSignal: true,
155
+ isRequired: false,
156
+ transformFunction: null
157
+ },
158
+ fileRemoveIconTemplate: {
159
+ classPropertyName: "fileRemoveIconTemplate",
160
+ publicName: "fileRemoveIconTemplate",
161
+ isSignal: true,
162
+ isRequired: false,
163
+ transformFunction: null
164
+ }
165
+ },
166
+ outputs: { onRemove: "onRemove" },
167
+ providers: [FileUploadStyle],
168
+ usesInheritance: true,
169
+ ngImport: i0,
170
+ template: `@for (file of files(); track file?.name + '-' + $index; let index = $index) {
162
171
  <div [class]="cx('file')" [pBind]="$pcFileUpload.ptm('file')">
163
172
  <img role="presentation" [class]="cx('fileThumbnail')" [attr.alt]="file.name" [src]="file.objectURL" [width]="previewWidth()" [pBind]="$pcFileUpload.ptm('fileThumbnail')" />
164
173
  <div [class]="cx('fileInfo')" [pBind]="$pcFileUpload.ptm('fileInfo')">
@@ -176,14 +185,80 @@ class FileContent extends BaseComponent {
176
185
  </button>
177
186
  </div>
178
187
  </div>
179
- }`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: Badge, selector: "p-badge", inputs: ["badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "directive", type: ButtonDirective, selector: "[pButton]", inputs: ["pButton", "pButtonPT", "pButtonUnstyled", "hostName", "text", "plain", "raised", "size", "outlined", "link", "rounded", "fluid", "variant", "iconOnly", "loading", "severity"] }, { kind: "component", type: Times, selector: "svg[data-p-icon=\"times\"]" }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
180
- }
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileContent, decorators: [{
182
- type: Component,
183
- args: [{
184
- selector: '[pFileContent]',
185
- standalone: true,
186
- template: `@for (file of files(); track file?.name + '-' + $index; let index = $index) {
188
+ }`,
189
+ isInline: true,
190
+ dependencies: [
191
+ {
192
+ kind: "directive",
193
+ type: NgTemplateOutlet,
194
+ selector: "[ngTemplateOutlet]",
195
+ inputs: [
196
+ "ngTemplateOutletContext",
197
+ "ngTemplateOutlet",
198
+ "ngTemplateOutletInjector"
199
+ ]
200
+ },
201
+ {
202
+ kind: "component",
203
+ type: Badge,
204
+ selector: "p-badge",
205
+ inputs: [
206
+ "badgeSize",
207
+ "size",
208
+ "severity",
209
+ "value",
210
+ "badgeDisabled"
211
+ ]
212
+ },
213
+ {
214
+ kind: "directive",
215
+ type: ButtonDirective,
216
+ selector: "[pButton]",
217
+ inputs: [
218
+ "pButton",
219
+ "pButtonPT",
220
+ "pButtonUnstyled",
221
+ "hostName",
222
+ "text",
223
+ "plain",
224
+ "raised",
225
+ "size",
226
+ "outlined",
227
+ "link",
228
+ "rounded",
229
+ "fluid",
230
+ "variant",
231
+ "iconOnly",
232
+ "loading",
233
+ "severity"
234
+ ]
235
+ },
236
+ {
237
+ kind: "component",
238
+ type: Times,
239
+ selector: "svg[data-p-icon=\"times\"]"
240
+ },
241
+ {
242
+ kind: "directive",
243
+ type: Bind,
244
+ selector: "[pBind]",
245
+ inputs: ["pBind"]
246
+ }
247
+ ],
248
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
249
+ });
250
+ };
251
+ i0.ɵɵngDeclareClassMetadata({
252
+ minVersion: "12.0.0",
253
+ version: "22.2.3",
254
+ ngImport: i0,
255
+ type: FileContent,
256
+ decorators: [{
257
+ type: Component,
258
+ args: [{
259
+ selector: "[pFileContent]",
260
+ standalone: true,
261
+ template: `@for (file of files(); track file?.name + '-' + $index; let index = $index) {
187
262
  <div [class]="cx('file')" [pBind]="$pcFileUpload.ptm('file')">
188
263
  <img role="presentation" [class]="cx('fileThumbnail')" [attr.alt]="file.name" [src]="file.objectURL" [width]="previewWidth()" [pBind]="$pcFileUpload.ptm('fileThumbnail')" />
189
264
  <div [class]="cx('fileInfo')" [pBind]="$pcFileUpload.ptm('fileInfo')">
@@ -202,862 +277,984 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImpor
202
277
  </div>
203
278
  </div>
204
279
  }`,
205
- changeDetection: ChangeDetectionStrategy.OnPush,
206
- providers: [FileUploadStyle],
207
- imports: [NgTemplateOutlet, Badge, ButtonDirective, Times, Bind]
208
- }]
209
- }], propDecorators: { onRemove: [{ type: i0.Output, args: ["onRemove"] }], files: [{ type: i0.Input, args: [{ isSignal: true, alias: "files", required: false }] }], badgeSeverity: [{ type: i0.Input, args: [{ isSignal: true, alias: "badgeSeverity", required: false }] }], badgeValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "badgeValue", required: false }] }], previewWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "previewWidth", required: false }] }], fileRemoveIconTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "fileRemoveIconTemplate", required: false }] }] } });
210
-
211
- /**
212
- * FileUpload is an advanced uploader with dragdrop support, multi file uploads, auto uploading, progress tracking and validations.
213
- * @group Components
214
- */
215
- class FileUpload extends BaseComponent {
216
- componentName = 'FileUpload';
217
- bindDirectiveInstance = inject(Bind, { self: true });
218
- /**
219
- * Name of the request parameter to identify the files at backend.
220
- * @group Props
221
- */
222
- name = input(/* @ts-ignore */
223
- ...(ngDevMode ? [undefined, { debugName: "name" }] : /* istanbul ignore next */ []));
224
- /**
225
- * Remote url to upload the files.
226
- * @group Props
227
- */
228
- url = input(/* @ts-ignore */
229
- ...(ngDevMode ? [undefined, { debugName: "url" }] : /* istanbul ignore next */ []));
230
- /**
231
- * HTTP method to send the files to the url such as "post" and "put".
232
- * @group Props
233
- */
234
- method = input('post', /* @ts-ignore */
235
- ...(ngDevMode ? [{ debugName: "method" }] : /* istanbul ignore next */ []));
236
- /**
237
- * Used to select multiple files at once from file dialog.
238
- * @group Props
239
- */
240
- multiple = input(false, { ...(ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
241
- /**
242
- * Comma-separated list of pattern to restrict the allowed file types. Can be any combination of either the MIME types (such as "image/*") or the file extensions (such as ".jpg").
243
- * @group Props
244
- */
245
- accept = input(/* @ts-ignore */
246
- ...(ngDevMode ? [undefined, { debugName: "accept" }] : /* istanbul ignore next */ []));
247
- /**
248
- * Disables the upload functionality.
249
- * @group Props
250
- */
251
- disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
252
- /**
253
- * When enabled, upload begins automatically after selection is completed.
254
- * @group Props
255
- */
256
- auto = input(false, { ...(ngDevMode ? { debugName: "auto" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
257
- /**
258
- * Cross-site Access-Control requests should be made using credentials such as cookies, authorization headers or TLS client certificates.
259
- * @group Props
260
- */
261
- withCredentials = input(false, { ...(ngDevMode ? { debugName: "withCredentials" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
262
- /**
263
- * Maximum file size allowed in bytes.
264
- * @group Props
265
- */
266
- maxFileSize = input(undefined, { ...(ngDevMode ? { debugName: "maxFileSize" } : /* istanbul ignore next */ {}), transform: numberAttribute });
267
- /**
268
- * Summary message of the invalid file size.
269
- * @group Props
270
- */
271
- invalidFileSizeMessageSummary = input('{0}: Invalid file size, ', /* @ts-ignore */
272
- ...(ngDevMode ? [{ debugName: "invalidFileSizeMessageSummary" }] : /* istanbul ignore next */ []));
273
- /**
274
- * Detail message of the invalid file size.
275
- * @group Props
276
- */
277
- invalidFileSizeMessageDetail = input('maximum upload size is {0}.', /* @ts-ignore */
278
- ...(ngDevMode ? [{ debugName: "invalidFileSizeMessageDetail" }] : /* istanbul ignore next */ []));
279
- /**
280
- * Summary message of the invalid file type.
281
- * @group Props
282
- */
283
- invalidFileTypeMessageSummary = input('{0}: Invalid file type, ', /* @ts-ignore */
284
- ...(ngDevMode ? [{ debugName: "invalidFileTypeMessageSummary" }] : /* istanbul ignore next */ []));
285
- /**
286
- * Detail message of the invalid file type.
287
- * @group Props
288
- */
289
- invalidFileTypeMessageDetail = input('allowed file types: {0}.', /* @ts-ignore */
290
- ...(ngDevMode ? [{ debugName: "invalidFileTypeMessageDetail" }] : /* istanbul ignore next */ []));
291
- /**
292
- * Detail message of the invalid file type.
293
- * @group Props
294
- */
295
- invalidFileLimitMessageDetail = input('limit is {0} at most.', /* @ts-ignore */
296
- ...(ngDevMode ? [{ debugName: "invalidFileLimitMessageDetail" }] : /* istanbul ignore next */ []));
297
- /**
298
- * Summary message of the invalid file type.
299
- * @group Props
300
- */
301
- invalidFileLimitMessageSummary = input('Maximum number of files exceeded, ', /* @ts-ignore */
302
- ...(ngDevMode ? [{ debugName: "invalidFileLimitMessageSummary" }] : /* istanbul ignore next */ []));
303
- /**
304
- * Inline style of the element.
305
- * @group Props
306
- */
307
- style = input(/* @ts-ignore */
308
- ...(ngDevMode ? [undefined, { debugName: "style" }] : /* istanbul ignore next */ []));
309
- /**
310
- * Class of the element.
311
- * @group Props
312
- */
313
- styleClass = input(/* @ts-ignore */
314
- ...(ngDevMode ? [undefined, { debugName: "styleClass" }] : /* istanbul ignore next */ []));
315
- /**
316
- * Width of the image thumbnail in pixels.
317
- * @group Props
318
- */
319
- previewWidth = input(50, { ...(ngDevMode ? { debugName: "previewWidth" } : /* istanbul ignore next */ {}), transform: numberAttribute });
320
- /**
321
- * Label of the choose button. Defaults to PrimeNG Locale configuration.
322
- * @group Props
323
- */
324
- chooseLabel = input(/* @ts-ignore */
325
- ...(ngDevMode ? [undefined, { debugName: "chooseLabel" }] : /* istanbul ignore next */ []));
326
- /**
327
- * Label of the upload button. Defaults to PrimeNG Locale configuration.
328
- * @group Props
329
- */
330
- uploadLabel = input(/* @ts-ignore */
331
- ...(ngDevMode ? [undefined, { debugName: "uploadLabel" }] : /* istanbul ignore next */ []));
332
- /**
333
- * Label of the cancel button. Defaults to PrimeNG Locale configuration.
334
- * @group Props
335
- */
336
- cancelLabel = input(/* @ts-ignore */
337
- ...(ngDevMode ? [undefined, { debugName: "cancelLabel" }] : /* istanbul ignore next */ []));
338
- /**
339
- * Icon of the choose button.
340
- * @group Props
341
- */
342
- chooseIcon = input(/* @ts-ignore */
343
- ...(ngDevMode ? [undefined, { debugName: "chooseIcon" }] : /* istanbul ignore next */ []));
344
- /**
345
- * Icon of the upload button.
346
- * @group Props
347
- */
348
- uploadIcon = input(/* @ts-ignore */
349
- ...(ngDevMode ? [undefined, { debugName: "uploadIcon" }] : /* istanbul ignore next */ []));
350
- /**
351
- * Icon of the cancel button.
352
- * @group Props
353
- */
354
- cancelIcon = input(/* @ts-ignore */
355
- ...(ngDevMode ? [undefined, { debugName: "cancelIcon" }] : /* istanbul ignore next */ []));
356
- /**
357
- * Whether to show the upload button.
358
- * @group Props
359
- */
360
- showUploadButton = input(true, { ...(ngDevMode ? { debugName: "showUploadButton" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
361
- /**
362
- * Whether to show the cancel button.
363
- * @group Props
364
- */
365
- showCancelButton = input(true, { ...(ngDevMode ? { debugName: "showCancelButton" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
366
- /**
367
- * Defines the UI of the component.
368
- * @group Props
369
- */
370
- mode = input('advanced', /* @ts-ignore */
371
- ...(ngDevMode ? [{ debugName: "mode" }] : /* istanbul ignore next */ []));
372
- /**
373
- * HttpHeaders class represents the header configuration options for an HTTP request.
374
- * @group Props
375
- */
376
- headers = input(/* @ts-ignore */
377
- ...(ngDevMode ? [undefined, { debugName: "headers" }] : /* istanbul ignore next */ []));
378
- /**
379
- * Whether to use the default upload or a manual implementation defined in uploadHandler callback. Defaults to PrimeNG Locale configuration.
380
- * @group Props
381
- */
382
- customUpload = input(false, { ...(ngDevMode ? { debugName: "customUpload" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
383
- /**
384
- * Maximum number of files that can be uploaded.
385
- * @group Props
386
- */
387
- fileLimit = input(undefined, { ...(ngDevMode ? { debugName: "fileLimit" } : /* istanbul ignore next */ {}), transform: numberAttribute });
388
- /**
389
- * Style class of the upload button.
390
- * @group Props
391
- */
392
- uploadStyleClass = input(/* @ts-ignore */
393
- ...(ngDevMode ? [undefined, { debugName: "uploadStyleClass" }] : /* istanbul ignore next */ []));
394
- /**
395
- * Style class of the cancel button.
396
- * @group Props
397
- */
398
- cancelStyleClass = input(/* @ts-ignore */
399
- ...(ngDevMode ? [undefined, { debugName: "cancelStyleClass" }] : /* istanbul ignore next */ []));
400
- /**
401
- * Style class of the remove button.
402
- * @group Props
403
- */
404
- removeStyleClass = input(/* @ts-ignore */
405
- ...(ngDevMode ? [undefined, { debugName: "removeStyleClass" }] : /* istanbul ignore next */ []));
406
- /**
407
- * Style class of the choose button.
408
- * @group Props
409
- */
410
- chooseStyleClass = input(/* @ts-ignore */
411
- ...(ngDevMode ? [undefined, { debugName: "chooseStyleClass" }] : /* istanbul ignore next */ []));
412
- /**
413
- * Configuration object forwarded to the choose button.
414
- * @group Props
415
- */
416
- chooseButtonProps = input(/* @ts-ignore */
417
- ...(ngDevMode ? [undefined, { debugName: "chooseButtonProps" }] : /* istanbul ignore next */ []));
418
- /**
419
- * Configuration object forwarded to the upload button.
420
- * @group Props
421
- */
422
- uploadButtonProps = input({ severity: 'secondary' }, /* @ts-ignore */
423
- ...(ngDevMode ? [{ debugName: "uploadButtonProps" }] : /* istanbul ignore next */ []));
424
- /**
425
- * Configuration object forwarded to the cancel button.
426
- * @group Props
427
- */
428
- cancelButtonProps = input({ severity: 'secondary' }, /* @ts-ignore */
429
- ...(ngDevMode ? [{ debugName: "cancelButtonProps" }] : /* istanbul ignore next */ []));
430
- /**
431
- * Callback to invoke before file upload is initialized.
432
- * @param {FileBeforeUploadEvent} event - Custom upload event.
433
- * @group Emits
434
- */
435
- onBeforeUpload = output();
436
- /**
437
- * An event indicating that the request was sent to the server. Useful when a request may be retried multiple times, to distinguish between retries on the final event stream.
438
- * @param {FileSendEvent} event - Custom send event.
439
- * @group Emits
440
- */
441
- onSend = output();
442
- /**
443
- * Callback to invoke when file upload is complete.
444
- * @param {FileUploadEvent} event - Custom upload event.
445
- * @group Emits
446
- */
447
- onUpload = output();
448
- /**
449
- * Callback to invoke if file upload fails.
450
- * @param {FileUploadErrorEvent} event - Custom error event.
451
- * @group Emits
452
- */
453
- onError = output();
454
- /**
455
- * Callback to invoke when files in queue are removed without uploading using clear all button.
456
- * @param {Event} event - Browser event.
457
- * @group Emits
458
- */
459
- onClear = output();
460
- /**
461
- * Callback to invoke when a file is removed without uploading using clear button of a file.
462
- * @param {FileRemoveEvent} event - Remove event.
463
- * @group Emits
464
- */
465
- onRemove = output();
466
- /**
467
- * Callback to invoke when files are selected.
468
- * @param {FileSelectEvent} event - Select event.
469
- * @group Emits
470
- */
471
- onSelect = output();
472
- /**
473
- * Callback to invoke when files are being uploaded.
474
- * @param {FileProgressEvent} event - Progress event.
475
- * @group Emits
476
- */
477
- onProgress = output();
478
- /**
479
- * Callback to invoke in custom upload mode to upload the files manually.
480
- * @param {FileUploadHandlerEvent} event - Upload handler event.
481
- * @group Emits
482
- */
483
- uploadHandler = output();
484
- /**
485
- * This event is triggered if an error occurs while loading an image file.
486
- * @param {Event} event - Browser event.
487
- * @group Emits
488
- */
489
- onImageError = output();
490
- /**
491
- * This event is triggered if an error occurs while loading an image file.
492
- * @param {RemoveUploadedFileEvent} event - Remove event.
493
- * @group Emits
494
- */
495
- onRemoveUploadedFile = output();
496
- /**
497
- * Custom file template.
498
- * @group Templates
499
- */
500
- fileTemplate = contentChild('file', { ...(ngDevMode ? { debugName: "fileTemplate" } : /* istanbul ignore next */ {}), descendants: false });
501
- /**
502
- * Custom header template.
503
- * @param {FileUploadHeaderTemplateContext} context - header template context.
504
- * @group Templates
505
- */
506
- headerTemplate = contentChild('header', { ...(ngDevMode ? { debugName: "headerTemplate" } : /* istanbul ignore next */ {}), descendants: false });
507
- /**
508
- * Custom content template.
509
- * @param {FileUploadContentTemplateContext} context - content template context.
510
- * @group Templates
511
- */
512
- contentTemplate = contentChild('content', { ...(ngDevMode ? { debugName: "contentTemplate" } : /* istanbul ignore next */ {}), descendants: false });
513
- /**
514
- * Custom toolbar template.
515
- * @group Templates
516
- */
517
- toolbarTemplate = contentChild('toolbar', { ...(ngDevMode ? { debugName: "toolbarTemplate" } : /* istanbul ignore next */ {}), descendants: false });
518
- /**
519
- * Custom choose icon template.
520
- * @group Templates
521
- */
522
- chooseIconTemplate = contentChild('chooseicon', { ...(ngDevMode ? { debugName: "chooseIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
523
- /**
524
- * Custom file label template.
525
- * @param {FileUploadFileLabelTemplateContext} context - file label template context.
526
- * @group Templates
527
- */
528
- fileLabelTemplate = contentChild('filelabel', { ...(ngDevMode ? { debugName: "fileLabelTemplate" } : /* istanbul ignore next */ {}), descendants: false });
529
- /**
530
- * Custom upload icon template.
531
- * @group Templates
532
- */
533
- uploadIconTemplate = contentChild('uploadicon', { ...(ngDevMode ? { debugName: "uploadIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
534
- /**
535
- * Custom cancel icon template.
536
- * @group Templates
537
- */
538
- cancelIconTemplate = contentChild('cancelicon', { ...(ngDevMode ? { debugName: "cancelIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
539
- /**
540
- * Custom empty state template.
541
- * @group Templates
542
- */
543
- emptyTemplate = contentChild('empty', { ...(ngDevMode ? { debugName: "emptyTemplate" } : /* istanbul ignore next */ {}), descendants: false });
544
- isAdvancedMode = computed(() => this.mode() === 'advanced', /* @ts-ignore */
545
- ...(ngDevMode ? [{ debugName: "isAdvancedMode" }] : /* istanbul ignore next */ []));
546
- isBasicMode = computed(() => this.mode() === 'basic', /* @ts-ignore */
547
- ...(ngDevMode ? [{ debugName: "isBasicMode" }] : /* istanbul ignore next */ []));
548
- showUploadBtn = computed(() => !this.auto() && this.showUploadButton(), /* @ts-ignore */
549
- ...(ngDevMode ? [{ debugName: "showUploadBtn" }] : /* istanbul ignore next */ []));
550
- showCancelBtn = computed(() => !this.auto() && this.showCancelButton(), /* @ts-ignore */
551
- ...(ngDevMode ? [{ debugName: "showCancelBtn" }] : /* istanbul ignore next */ []));
552
- chooseButtonDisabled = computed(() => this.disabled() || this.isChooseDisabled(), /* @ts-ignore */
553
- ...(ngDevMode ? [{ debugName: "chooseButtonDisabled" }] : /* istanbul ignore next */ []));
554
- uploadButtonDisabled = computed(() => !this.hasFiles() || this.isFileLimitExceeded(), /* @ts-ignore */
555
- ...(ngDevMode ? [{ debugName: "uploadButtonDisabled" }] : /* istanbul ignore next */ []));
556
- cancelButtonDisabled = computed(() => !this.hasFiles() || this.uploading(), /* @ts-ignore */
557
- ...(ngDevMode ? [{ debugName: "cancelButtonDisabled" }] : /* istanbul ignore next */ []));
558
- showEmpty = computed(() => !!this.emptyTemplate() && !this.hasFiles() && !this.hasUploadedFiles(), /* @ts-ignore */
559
- ...(ngDevMode ? [{ debugName: "showEmpty" }] : /* istanbul ignore next */ []));
560
- get headerTemplateContext() {
561
- return {
562
- $implicit: this.files,
563
- uploadedFiles: this.uploadedFiles(),
564
- chooseCallback: this.choose.bind(this),
565
- clearCallback: this.clear.bind(this),
566
- uploadCallback: this.upload.bind(this)
567
- };
568
- }
569
- get contentTemplateContext() {
570
- return {
571
- $implicit: this.files,
572
- uploadedFiles: this.uploadedFiles(),
573
- chooseCallback: this.choose.bind(this),
574
- clearCallback: this.clear.bind(this),
575
- removeUploadedFileCallback: this.removeUploadedFile.bind(this),
576
- removeFileCallback: this.remove.bind(this),
577
- progress: this.progress(),
578
- messages: this.msgs()
579
- };
580
- }
581
- get fileLabelTemplateContext() {
582
- return {
583
- $implicit: this.files
584
- };
585
- }
586
- advancedFileInput = viewChild('advancedfileinput', /* @ts-ignore */
587
- ...(ngDevMode ? [{ debugName: "advancedFileInput" }] : /* istanbul ignore next */ []));
588
- basicFileInput = viewChild('basicfileinput', /* @ts-ignore */
589
- ...(ngDevMode ? [{ debugName: "basicFileInput" }] : /* istanbul ignore next */ []));
590
- contentEl = viewChild('content', /* @ts-ignore */
591
- ...(ngDevMode ? [{ debugName: "contentEl" }] : /* istanbul ignore next */ []));
592
- /**
593
- * Files input.
594
- * @group Props
595
- */
596
- // eslint-disable-next-line @angular-eslint/no-input-rename
597
- filesInput = input([], { ...(ngDevMode ? { debugName: "filesInput" } : /* istanbul ignore next */ {}), alias: 'files' });
598
- get files() {
599
- return this._files();
600
- }
601
- set files(value) {
602
- this._files.set(value);
603
- }
604
- get basicButtonLabel() {
605
- if (this.auto() || !this.hasFiles()) {
606
- return this.chooseLabel();
607
- }
608
- return this.uploadLabel() ?? this.files[0].name;
609
- }
610
- _files = signal([], /* @ts-ignore */
611
- ...(ngDevMode ? [{ debugName: "_files" }] : /* istanbul ignore next */ []));
612
- progress = signal(0, /* @ts-ignore */
613
- ...(ngDevMode ? [{ debugName: "progress" }] : /* istanbul ignore next */ []));
614
- dragHighlight = signal(false, /* @ts-ignore */
615
- ...(ngDevMode ? [{ debugName: "dragHighlight" }] : /* istanbul ignore next */ []));
616
- msgs = signal([], /* @ts-ignore */
617
- ...(ngDevMode ? [{ debugName: "msgs" }] : /* istanbul ignore next */ []));
618
- uploadedFileCount = 0;
619
- focus = signal(false, /* @ts-ignore */
620
- ...(ngDevMode ? [{ debugName: "focus" }] : /* istanbul ignore next */ []));
621
- uploading = signal(false, /* @ts-ignore */
622
- ...(ngDevMode ? [{ debugName: "uploading" }] : /* istanbul ignore next */ []));
623
- duplicateIEEvent; // flag to recognize duplicate onchange event for file input
624
- translationSubscription;
625
- dragOverListener;
626
- uploadedFiles = signal([], /* @ts-ignore */
627
- ...(ngDevMode ? [{ debugName: "uploadedFiles" }] : /* istanbul ignore next */ []));
628
- sanitizer = inject(DomSanitizer);
629
- http = inject(HttpClient);
630
- _componentStyle = inject(FileUploadStyle);
631
- constructor() {
632
- super();
633
- effect(() => {
634
- const inputFiles = this.filesInput();
635
- if (inputFiles && inputFiles.length > 0) {
636
- const newFiles = [];
637
- for (let i = 0; i < inputFiles.length; i++) {
638
- let file = inputFiles[i];
639
- if (this.validate(file)) {
640
- if (this.isImage(file)) {
641
- file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(inputFiles[i]));
642
- }
643
- newFiles.push(inputFiles[i]);
644
- }
645
- }
646
- this._files.set(newFiles);
647
- }
648
- });
649
- }
650
- onAfterViewChecked() {
651
- this.bindDirectiveInstance.setAttrs(this.ptm('host'));
652
- }
653
- onInit() {
654
- this.translationSubscription = this.config.translationObserver.subscribe(() => {
655
- this.cd.markForCheck();
656
- });
657
- }
658
- onAfterViewInit() {
659
- if (isPlatformBrowser(this.platformId)) {
660
- if (this.mode() === 'advanced') {
661
- const contentEl = this.contentEl();
662
- if (contentEl) {
663
- this.dragOverListener = this.renderer.listen(contentEl.nativeElement, 'dragover', this.onDragOver.bind(this));
664
- }
665
- }
666
- }
667
- }
668
- basicFileChosenLabel() {
669
- if (this.auto())
670
- return this.chooseButtonLabel;
671
- else if (this.hasFiles()) {
672
- if (this.files && this.files.length === 1)
673
- return this.files[0].name;
674
- return this.translate('fileChosenMessage')?.replace('{0}', this.files.length.toString());
675
- }
676
- return this.translate('noFileChosenMessage') || '';
677
- }
678
- completedLabel() {
679
- return this.translate('completed') || '';
680
- }
681
- choose() {
682
- this.advancedFileInput()?.nativeElement.click();
683
- }
684
- onFileSelect(event) {
685
- if (event.type !== 'drop' && this.isIE11() && this.duplicateIEEvent) {
686
- this.duplicateIEEvent = false;
687
- return;
688
- }
689
- if (!this.multiple()) {
690
- this.files = [];
691
- }
692
- this.msgs.set([]);
693
- this.files = this.files || [];
694
- let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
695
- for (let i = 0; i < files.length; i++) {
696
- let file = files[i];
697
- if (!this.isFileSelected(file)) {
698
- if (this.validate(file)) {
699
- if (this.isImage(file)) {
700
- file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(files[i]));
701
- }
702
- this.files.push(files[i]);
703
- }
704
- }
705
- }
706
- this.files = [...this.files];
707
- this.onSelect.emit({ originalEvent: event, files: files, currentFiles: this.files });
708
- // this will check the fileLimit with the uploaded files
709
- this.checkFileLimit(files);
710
- if (this.hasFiles() && this.auto() && (this.mode() !== 'advanced' || !this.isFileLimitExceeded())) {
711
- this.upload();
712
- }
713
- if (event.type !== 'drop' && this.isIE11()) {
714
- this.clearIEInput();
715
- }
716
- else {
717
- this.clearInputElement();
718
- }
719
- }
720
- isFileSelected(file) {
721
- for (let sFile of this.files) {
722
- if (sFile.name + sFile.type + sFile.size === file.name + file.type + file.size) {
723
- return true;
724
- }
725
- }
726
- return false;
727
- }
728
- isIE11() {
729
- if (isPlatformBrowser(this.platformId)) {
730
- return !!this.document.defaultView['MSInputMethodContext'] && !!this.document['documentMode'];
731
- }
732
- }
733
- validate(file) {
734
- const acceptVal = this.accept();
735
- if (acceptVal && !this.isFileTypeValid(file)) {
736
- const text = `${this.invalidFileTypeMessageSummary().replace('{0}', file.name)} ${this.invalidFileTypeMessageDetail().replace('{0}', acceptVal)}`;
737
- this.msgs.update((msgs) => [...msgs, { severity: 'error', text }]);
738
- return false;
739
- }
740
- const maxFileSizeVal = this.maxFileSize();
741
- if (maxFileSizeVal && file.size > maxFileSizeVal) {
742
- const text = `${this.invalidFileSizeMessageSummary().replace('{0}', file.name)} ${this.invalidFileSizeMessageDetail().replace('{0}', this.formatSize(maxFileSizeVal))}`;
743
- this.msgs.update((msgs) => [...msgs, { severity: 'error', text }]);
744
- return false;
745
- }
746
- return true;
747
- }
748
- isFileTypeValid(file) {
749
- const acceptVal = this.accept();
750
- let acceptableTypes = acceptVal?.split(',').map((type) => type.trim());
751
- for (let type of acceptableTypes) {
752
- let acceptable = this.isWildcard(type) ? this.getTypeClass(file.type) === this.getTypeClass(type) : file.type == type || this.getFileExtension(file).toLowerCase() === type.toLowerCase();
753
- if (acceptable) {
754
- return true;
755
- }
756
- }
757
- return false;
758
- }
759
- getTypeClass(fileType) {
760
- return fileType.substring(0, fileType.indexOf('/'));
761
- }
762
- isWildcard(fileType) {
763
- return fileType.indexOf('*') !== -1;
764
- }
765
- getFileExtension(file) {
766
- return '.' + file.name.split('.').pop();
767
- }
768
- isImage(file) {
769
- return /^image\//.test(file.type);
770
- }
771
- onImageLoad(img) {
772
- window.URL.revokeObjectURL(img.src);
773
- }
774
- /**
775
- * Uploads the selected files.
776
- * @group Method
777
- */
778
- uploader() {
779
- if (this.customUpload()) {
780
- const fileLimitVal = this.fileLimit();
781
- if (fileLimitVal) {
782
- this.uploadedFileCount += this.files.length;
783
- }
784
- this.uploadHandler.emit({
785
- files: this.files
786
- });
787
- }
788
- else {
789
- this.uploading.set(true);
790
- this.msgs.set([]);
791
- let formData = new FormData();
792
- this.onBeforeUpload.emit({
793
- formData: formData
794
- });
795
- const nameVal = this.name();
796
- for (let i = 0; i < this.files.length; i++) {
797
- formData.append(nameVal, this.files[i], this.files[i].name);
798
- }
799
- this.http
800
- .request(this.method(), this.url(), {
801
- body: formData,
802
- headers: this.headers(),
803
- reportProgress: true,
804
- observe: 'events',
805
- withCredentials: this.withCredentials()
806
- })
807
- .subscribe({
808
- next: (event) => {
809
- switch (event.type) {
810
- case HttpEventType.Sent:
811
- this.onSend.emit({
812
- originalEvent: event,
813
- formData: formData
814
- });
815
- break;
816
- case HttpEventType.Response:
817
- this.uploading.set(false);
818
- this.progress.set(0);
819
- if (event['status'] >= 200 && event['status'] < 300) {
820
- const fileLimitVal = this.fileLimit();
821
- if (fileLimitVal) {
822
- this.uploadedFileCount += this.files.length;
823
- }
824
- this.onUpload.emit({ originalEvent: event, files: this.files });
825
- }
826
- else {
827
- this.onError.emit({ files: this.files });
828
- }
829
- this.uploadedFiles.update((files) => [...files, ...this.files]);
830
- this.clear();
831
- break;
832
- case HttpEventType.UploadProgress: {
833
- if (event['loaded']) {
834
- this.progress.set(Math.round((event['loaded'] * 100) / event['total']));
835
- }
836
- this.onProgress.emit({ originalEvent: event, progress: this.progress() });
837
- break;
838
- }
839
- }
840
- },
841
- error: (error) => {
842
- this.uploading.set(false);
843
- this.onError.emit({ files: this.files, error: error });
844
- }
845
- });
846
- }
847
- }
848
- onRemoveClick(e) {
849
- const { event, index } = e;
850
- if (this.hasFiles()) {
851
- this.remove(event, index);
852
- }
853
- }
854
- onRemoveUploadedFileClick(e) {
855
- const { index } = e;
856
- if (this.hasUploadedFiles()) {
857
- this.removeUploadedFile(index);
858
- }
859
- }
860
- /**
861
- * Clears the files list.
862
- * @group Method
863
- */
864
- clear() {
865
- this.files = [];
866
- this.onClear.emit();
867
- this.clearInputElement();
868
- this.msgs.set([]);
869
- }
870
- /**
871
- * Removes a single file.
872
- * @param {Event} event - Browser event.
873
- * @param {Number} index - Index of the file.
874
- * @group Method
875
- */
876
- remove(event, index) {
877
- this.clearInputElement();
878
- this.onRemove.emit({ originalEvent: event, file: this.files[index] });
879
- this.files.splice(index, 1);
880
- this.files = [...this.files];
881
- this.checkFileLimit(this.files);
882
- }
883
- /**
884
- * Removes uploaded file.
885
- * @param {Number} index - Index of the file to be removed.
886
- * @group Method
887
- */
888
- removeUploadedFile(index) {
889
- const currentFiles = this.uploadedFiles();
890
- const removedFile = currentFiles[index];
891
- this.uploadedFiles.set(currentFiles.filter((_, i) => i !== index));
892
- this.onRemoveUploadedFile.emit({ file: removedFile, files: this.uploadedFiles() });
893
- }
894
- isFileLimitExceeded() {
895
- const isAutoMode = this.auto();
896
- const totalFileCount = isAutoMode ? this.files.length : this.files.length + this.uploadedFileCount;
897
- const fileLimitVal = this.fileLimit();
898
- if (fileLimitVal && fileLimitVal <= totalFileCount && this.focus()) {
899
- this.focus.set(false);
900
- }
901
- return fileLimitVal && fileLimitVal < totalFileCount;
902
- }
903
- isChooseDisabled() {
904
- const fileLimitVal = this.fileLimit();
905
- if (this.auto()) {
906
- return fileLimitVal && fileLimitVal <= this.files.length;
907
- }
908
- else {
909
- return fileLimitVal && fileLimitVal <= this.files.length + this.uploadedFileCount;
910
- }
911
- }
912
- checkFileLimit(files) {
913
- const fileLimitVal = this.fileLimit();
914
- const currentMsgs = this.msgs();
915
- const hasExistingValidationMessages = currentMsgs.length > 0 && fileLimitVal && fileLimitVal < files.length;
916
- if (this.isFileLimitExceeded() || hasExistingValidationMessages) {
917
- const text = `${this.invalidFileLimitMessageSummary().replace('{0}', fileLimitVal.toString())} ${this.invalidFileLimitMessageDetail().replace('{0}', fileLimitVal.toString())}`;
918
- this.msgs.update((msgs) => [...msgs, { severity: 'error', text }]);
919
- }
920
- else {
921
- this.msgs.update((msgs) => msgs.filter((msg) => !msg.text.includes(this.invalidFileLimitMessageSummary())));
922
- }
923
- }
924
- clearInputElement() {
925
- const advancedInput = this.advancedFileInput();
926
- if (advancedInput && advancedInput.nativeElement) {
927
- advancedInput.nativeElement.value = '';
928
- }
929
- const basicInput = this.basicFileInput();
930
- if (basicInput && basicInput.nativeElement) {
931
- basicInput.nativeElement.value = '';
932
- }
933
- }
934
- clearIEInput() {
935
- const advancedInput = this.advancedFileInput();
936
- if (advancedInput && advancedInput.nativeElement) {
937
- this.duplicateIEEvent = true; //IE11 fix to prevent onFileChange trigger again
938
- advancedInput.nativeElement.value = '';
939
- }
940
- }
941
- hasFiles() {
942
- return this.files && this.files.length > 0;
943
- }
944
- hasUploadedFiles() {
945
- return this.uploadedFiles().length > 0;
946
- }
947
- getFileTemplateContext(file) {
948
- return { $implicit: file };
949
- }
950
- onDragEnter(e) {
951
- if (!this.disabled()) {
952
- e.stopPropagation();
953
- e.preventDefault();
954
- }
955
- }
956
- onDragOver(e) {
957
- if (!this.disabled()) {
958
- const contentEl = this.contentEl();
959
- if (!this.$unstyled()) {
960
- addClass(contentEl?.nativeElement, 'p-fileupload-highlight');
961
- }
962
- contentEl?.nativeElement.setAttribute('data-p-highlight', true);
963
- this.dragHighlight.set(true);
964
- e.stopPropagation();
965
- e.preventDefault();
966
- }
967
- }
968
- onDragLeave(_event) {
969
- if (!this.disabled()) {
970
- const contentEl = this.contentEl();
971
- if (!this.$unstyled()) {
972
- removeClass(contentEl?.nativeElement, 'p-fileupload-highlight');
973
- }
974
- contentEl?.nativeElement.setAttribute('data-p-highlight', false);
975
- }
976
- }
977
- onDrop(event) {
978
- if (!this.disabled()) {
979
- const contentEl = this.contentEl();
980
- if (!this.$unstyled()) {
981
- removeClass(contentEl?.nativeElement, 'p-fileupload-highlight');
982
- }
983
- contentEl?.nativeElement.setAttribute('data-p-highlight', false);
984
- event.stopPropagation();
985
- event.preventDefault();
986
- let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
987
- let allowDrop = this.multiple() || (files && files.length === 1);
988
- if (allowDrop) {
989
- this.onFileSelect(event);
990
- }
991
- }
992
- }
993
- onFocus() {
994
- this.focus.set(true);
995
- }
996
- onBlur() {
997
- this.focus.set(false);
998
- }
999
- formatSize(bytes) {
1000
- const k = 1024;
1001
- const dm = 3;
1002
- const sizes = this.translate(TranslationKeys.FILE_SIZE_TYPES);
1003
- if (bytes === 0) {
1004
- return `0 ${sizes[0]}`;
1005
- }
1006
- const i = Math.floor(Math.log(bytes) / Math.log(k));
1007
- const formattedSize = (bytes / Math.pow(k, i)).toFixed(dm);
1008
- return `${formattedSize} ${sizes[i]}`;
1009
- }
1010
- upload() {
1011
- if (this.hasFiles())
1012
- this.uploader();
1013
- }
1014
- onBasicUploaderClick() {
1015
- this.basicFileInput()?.nativeElement.click();
1016
- }
1017
- onBasicKeydown(event) {
1018
- switch (event.code) {
1019
- case 'Space':
1020
- case 'Enter':
1021
- this.onBasicUploaderClick();
1022
- event.preventDefault();
1023
- break;
1024
- }
1025
- }
1026
- imageError(event) {
1027
- this.onImageError.emit(event);
1028
- }
1029
- getBlockableElement() {
1030
- return this.el.nativeElement.children[0];
1031
- }
1032
- get chooseButtonLabel() {
1033
- return this.chooseLabel() || this.translate(TranslationKeys.CHOOSE);
1034
- }
1035
- get uploadButtonLabel() {
1036
- return this.uploadLabel() || this.translate(TranslationKeys.UPLOAD);
1037
- }
1038
- get cancelButtonLabel() {
1039
- return this.cancelLabel() || this.translate(TranslationKeys.CANCEL);
1040
- }
1041
- get browseFilesLabel() {
1042
- return this.translate(TranslationKeys.ARIA, TranslationKeys.BROWSE_FILES);
1043
- }
1044
- get pendingLabel() {
1045
- return this.translate(TranslationKeys.PENDING);
1046
- }
1047
- onDestroy() {
1048
- const contentEl = this.contentEl();
1049
- if (contentEl && contentEl.nativeElement) {
1050
- if (this.dragOverListener) {
1051
- this.dragOverListener();
1052
- this.dragOverListener = null;
1053
- }
1054
- }
1055
- if (this.translationSubscription) {
1056
- this.translationSubscription.unsubscribe();
1057
- }
1058
- }
1059
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUpload, deps: [], target: i0.ɵɵFactoryTarget.Component });
1060
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.5", type: FileUpload, isStandalone: true, selector: "p-fileupload", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, method: { classPropertyName: "method", publicName: "method", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, auto: { classPropertyName: "auto", publicName: "auto", isSignal: true, isRequired: false, transformFunction: null }, withCredentials: { classPropertyName: "withCredentials", publicName: "withCredentials", isSignal: true, isRequired: false, transformFunction: null }, maxFileSize: { classPropertyName: "maxFileSize", publicName: "maxFileSize", isSignal: true, isRequired: false, transformFunction: null }, invalidFileSizeMessageSummary: { classPropertyName: "invalidFileSizeMessageSummary", publicName: "invalidFileSizeMessageSummary", isSignal: true, isRequired: false, transformFunction: null }, invalidFileSizeMessageDetail: { classPropertyName: "invalidFileSizeMessageDetail", publicName: "invalidFileSizeMessageDetail", isSignal: true, isRequired: false, transformFunction: null }, invalidFileTypeMessageSummary: { classPropertyName: "invalidFileTypeMessageSummary", publicName: "invalidFileTypeMessageSummary", isSignal: true, isRequired: false, transformFunction: null }, invalidFileTypeMessageDetail: { classPropertyName: "invalidFileTypeMessageDetail", publicName: "invalidFileTypeMessageDetail", isSignal: true, isRequired: false, transformFunction: null }, invalidFileLimitMessageDetail: { classPropertyName: "invalidFileLimitMessageDetail", publicName: "invalidFileLimitMessageDetail", isSignal: true, isRequired: false, transformFunction: null }, invalidFileLimitMessageSummary: { classPropertyName: "invalidFileLimitMessageSummary", publicName: "invalidFileLimitMessageSummary", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, previewWidth: { classPropertyName: "previewWidth", publicName: "previewWidth", isSignal: true, isRequired: false, transformFunction: null }, chooseLabel: { classPropertyName: "chooseLabel", publicName: "chooseLabel", isSignal: true, isRequired: false, transformFunction: null }, uploadLabel: { classPropertyName: "uploadLabel", publicName: "uploadLabel", isSignal: true, isRequired: false, transformFunction: null }, cancelLabel: { classPropertyName: "cancelLabel", publicName: "cancelLabel", isSignal: true, isRequired: false, transformFunction: null }, chooseIcon: { classPropertyName: "chooseIcon", publicName: "chooseIcon", isSignal: true, isRequired: false, transformFunction: null }, uploadIcon: { classPropertyName: "uploadIcon", publicName: "uploadIcon", isSignal: true, isRequired: false, transformFunction: null }, cancelIcon: { classPropertyName: "cancelIcon", publicName: "cancelIcon", isSignal: true, isRequired: false, transformFunction: null }, showUploadButton: { classPropertyName: "showUploadButton", publicName: "showUploadButton", isSignal: true, isRequired: false, transformFunction: null }, showCancelButton: { classPropertyName: "showCancelButton", publicName: "showCancelButton", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, headers: { classPropertyName: "headers", publicName: "headers", isSignal: true, isRequired: false, transformFunction: null }, customUpload: { classPropertyName: "customUpload", publicName: "customUpload", isSignal: true, isRequired: false, transformFunction: null }, fileLimit: { classPropertyName: "fileLimit", publicName: "fileLimit", isSignal: true, isRequired: false, transformFunction: null }, uploadStyleClass: { classPropertyName: "uploadStyleClass", publicName: "uploadStyleClass", isSignal: true, isRequired: false, transformFunction: null }, cancelStyleClass: { classPropertyName: "cancelStyleClass", publicName: "cancelStyleClass", isSignal: true, isRequired: false, transformFunction: null }, removeStyleClass: { classPropertyName: "removeStyleClass", publicName: "removeStyleClass", isSignal: true, isRequired: false, transformFunction: null }, chooseStyleClass: { classPropertyName: "chooseStyleClass", publicName: "chooseStyleClass", isSignal: true, isRequired: false, transformFunction: null }, chooseButtonProps: { classPropertyName: "chooseButtonProps", publicName: "chooseButtonProps", isSignal: true, isRequired: false, transformFunction: null }, uploadButtonProps: { classPropertyName: "uploadButtonProps", publicName: "uploadButtonProps", isSignal: true, isRequired: false, transformFunction: null }, cancelButtonProps: { classPropertyName: "cancelButtonProps", publicName: "cancelButtonProps", isSignal: true, isRequired: false, transformFunction: null }, filesInput: { classPropertyName: "filesInput", publicName: "files", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBeforeUpload: "onBeforeUpload", onSend: "onSend", onUpload: "onUpload", onError: "onError", onClear: "onClear", onRemove: "onRemove", onSelect: "onSelect", onProgress: "onProgress", uploadHandler: "uploadHandler", onImageError: "onImageError", onRemoveUploadedFile: "onRemoveUploadedFile" }, providers: [FileUploadStyle, { provide: FILEUPLOAD_INSTANCE, useExisting: FileUpload }, { provide: PARENT_INSTANCE, useExisting: FileUpload }], queries: [{ propertyName: "fileTemplate", first: true, predicate: ["file"], isSignal: true }, { propertyName: "headerTemplate", first: true, predicate: ["header"], isSignal: true }, { propertyName: "contentTemplate", first: true, predicate: ["content"], isSignal: true }, { propertyName: "toolbarTemplate", first: true, predicate: ["toolbar"], isSignal: true }, { propertyName: "chooseIconTemplate", first: true, predicate: ["chooseicon"], isSignal: true }, { propertyName: "fileLabelTemplate", first: true, predicate: ["filelabel"], isSignal: true }, { propertyName: "uploadIconTemplate", first: true, predicate: ["uploadicon"], isSignal: true }, { propertyName: "cancelIconTemplate", first: true, predicate: ["cancelicon"], isSignal: true }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"], isSignal: true }], viewQueries: [{ propertyName: "advancedFileInput", first: true, predicate: ["advancedfileinput"], descendants: true, isSignal: true }, { propertyName: "basicFileInput", first: true, predicate: ["basicfileinput"], descendants: true, isSignal: true }, { propertyName: "contentEl", first: true, predicate: ["content"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
280
+ changeDetection: ChangeDetectionStrategy.OnPush,
281
+ providers: [FileUploadStyle],
282
+ imports: [
283
+ NgTemplateOutlet,
284
+ Badge,
285
+ ButtonDirective,
286
+ Times,
287
+ Bind
288
+ ]
289
+ }]
290
+ }],
291
+ propDecorators: {
292
+ onRemove: [{
293
+ type: i0.Output,
294
+ args: ["onRemove"]
295
+ }],
296
+ files: [{
297
+ type: i0.Input,
298
+ args: [{
299
+ isSignal: true,
300
+ alias: "files",
301
+ required: false
302
+ }]
303
+ }],
304
+ badgeSeverity: [{
305
+ type: i0.Input,
306
+ args: [{
307
+ isSignal: true,
308
+ alias: "badgeSeverity",
309
+ required: false
310
+ }]
311
+ }],
312
+ badgeValue: [{
313
+ type: i0.Input,
314
+ args: [{
315
+ isSignal: true,
316
+ alias: "badgeValue",
317
+ required: false
318
+ }]
319
+ }],
320
+ previewWidth: [{
321
+ type: i0.Input,
322
+ args: [{
323
+ isSignal: true,
324
+ alias: "previewWidth",
325
+ required: false
326
+ }]
327
+ }],
328
+ fileRemoveIconTemplate: [{
329
+ type: i0.Input,
330
+ args: [{
331
+ isSignal: true,
332
+ alias: "fileRemoveIconTemplate",
333
+ required: false
334
+ }]
335
+ }]
336
+ }
337
+ });
338
+ var FileUpload = class FileUpload extends BaseComponent {
339
+ componentName = "FileUpload";
340
+ bindDirectiveInstance = inject(Bind, { self: true });
341
+ name = input(...ngDevMode ? [void 0, { debugName: "name" }] : /* istanbul ignore next */ []);
342
+ url = input(...ngDevMode ? [void 0, { debugName: "url" }] : /* istanbul ignore next */ []);
343
+ method = input("post", ...ngDevMode ? [{ debugName: "method" }] : /* istanbul ignore next */ []);
344
+ multiple = input(false, {
345
+ ...ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {},
346
+ transform: booleanAttribute
347
+ });
348
+ accept = input(...ngDevMode ? [void 0, { debugName: "accept" }] : /* istanbul ignore next */ []);
349
+ disabled = input(false, {
350
+ ...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
351
+ transform: booleanAttribute
352
+ });
353
+ auto = input(false, {
354
+ ...ngDevMode ? { debugName: "auto" } : /* istanbul ignore next */ {},
355
+ transform: booleanAttribute
356
+ });
357
+ withCredentials = input(false, {
358
+ ...ngDevMode ? { debugName: "withCredentials" } : /* istanbul ignore next */ {},
359
+ transform: booleanAttribute
360
+ });
361
+ maxFileSize = input(void 0, {
362
+ ...ngDevMode ? { debugName: "maxFileSize" } : /* istanbul ignore next */ {},
363
+ transform: numberAttribute
364
+ });
365
+ invalidFileSizeMessageSummary = input("{0}: Invalid file size, ", ...ngDevMode ? [{ debugName: "invalidFileSizeMessageSummary" }] : /* istanbul ignore next */ []);
366
+ invalidFileSizeMessageDetail = input("maximum upload size is {0}.", ...ngDevMode ? [{ debugName: "invalidFileSizeMessageDetail" }] : /* istanbul ignore next */ []);
367
+ invalidFileTypeMessageSummary = input("{0}: Invalid file type, ", ...ngDevMode ? [{ debugName: "invalidFileTypeMessageSummary" }] : /* istanbul ignore next */ []);
368
+ invalidFileTypeMessageDetail = input("allowed file types: {0}.", ...ngDevMode ? [{ debugName: "invalidFileTypeMessageDetail" }] : /* istanbul ignore next */ []);
369
+ invalidFileLimitMessageDetail = input("limit is {0} at most.", ...ngDevMode ? [{ debugName: "invalidFileLimitMessageDetail" }] : /* istanbul ignore next */ []);
370
+ invalidFileLimitMessageSummary = input("Maximum number of files exceeded, ", ...ngDevMode ? [{ debugName: "invalidFileLimitMessageSummary" }] : /* istanbul ignore next */ []);
371
+ style = input(...ngDevMode ? [void 0, { debugName: "style" }] : /* istanbul ignore next */ []);
372
+ styleClass = input(...ngDevMode ? [void 0, { debugName: "styleClass" }] : /* istanbul ignore next */ []);
373
+ previewWidth = input(50, {
374
+ ...ngDevMode ? { debugName: "previewWidth" } : /* istanbul ignore next */ {},
375
+ transform: numberAttribute
376
+ });
377
+ chooseLabel = input(...ngDevMode ? [void 0, { debugName: "chooseLabel" }] : /* istanbul ignore next */ []);
378
+ uploadLabel = input(...ngDevMode ? [void 0, { debugName: "uploadLabel" }] : /* istanbul ignore next */ []);
379
+ cancelLabel = input(...ngDevMode ? [void 0, { debugName: "cancelLabel" }] : /* istanbul ignore next */ []);
380
+ chooseIcon = input(...ngDevMode ? [void 0, { debugName: "chooseIcon" }] : /* istanbul ignore next */ []);
381
+ uploadIcon = input(...ngDevMode ? [void 0, { debugName: "uploadIcon" }] : /* istanbul ignore next */ []);
382
+ cancelIcon = input(...ngDevMode ? [void 0, { debugName: "cancelIcon" }] : /* istanbul ignore next */ []);
383
+ showUploadButton = input(true, {
384
+ ...ngDevMode ? { debugName: "showUploadButton" } : /* istanbul ignore next */ {},
385
+ transform: booleanAttribute
386
+ });
387
+ showCancelButton = input(true, {
388
+ ...ngDevMode ? { debugName: "showCancelButton" } : /* istanbul ignore next */ {},
389
+ transform: booleanAttribute
390
+ });
391
+ mode = input("advanced", ...ngDevMode ? [{ debugName: "mode" }] : /* istanbul ignore next */ []);
392
+ headers = input(...ngDevMode ? [void 0, { debugName: "headers" }] : /* istanbul ignore next */ []);
393
+ customUpload = input(false, {
394
+ ...ngDevMode ? { debugName: "customUpload" } : /* istanbul ignore next */ {},
395
+ transform: booleanAttribute
396
+ });
397
+ fileLimit = input(void 0, {
398
+ ...ngDevMode ? { debugName: "fileLimit" } : /* istanbul ignore next */ {},
399
+ transform: numberAttribute
400
+ });
401
+ uploadStyleClass = input(...ngDevMode ? [void 0, { debugName: "uploadStyleClass" }] : /* istanbul ignore next */ []);
402
+ cancelStyleClass = input(...ngDevMode ? [void 0, { debugName: "cancelStyleClass" }] : /* istanbul ignore next */ []);
403
+ removeStyleClass = input(...ngDevMode ? [void 0, { debugName: "removeStyleClass" }] : /* istanbul ignore next */ []);
404
+ chooseStyleClass = input(...ngDevMode ? [void 0, { debugName: "chooseStyleClass" }] : /* istanbul ignore next */ []);
405
+ chooseButtonProps = input(...ngDevMode ? [void 0, { debugName: "chooseButtonProps" }] : /* istanbul ignore next */ []);
406
+ uploadButtonProps = input({ severity: "secondary" }, ...ngDevMode ? [{ debugName: "uploadButtonProps" }] : /* istanbul ignore next */ []);
407
+ cancelButtonProps = input({ severity: "secondary" }, ...ngDevMode ? [{ debugName: "cancelButtonProps" }] : /* istanbul ignore next */ []);
408
+ onBeforeUpload = output();
409
+ onSend = output();
410
+ onUpload = output();
411
+ onError = output();
412
+ onClear = output();
413
+ onRemove = output();
414
+ onSelect = output();
415
+ onProgress = output();
416
+ uploadHandler = output();
417
+ onImageError = output();
418
+ onRemoveUploadedFile = output();
419
+ fileTemplate = contentChild("file", {
420
+ ...ngDevMode ? { debugName: "fileTemplate" } : /* istanbul ignore next */ {},
421
+ descendants: false
422
+ });
423
+ headerTemplate = contentChild("header", {
424
+ ...ngDevMode ? { debugName: "headerTemplate" } : /* istanbul ignore next */ {},
425
+ descendants: false
426
+ });
427
+ contentTemplate = contentChild("content", {
428
+ ...ngDevMode ? { debugName: "contentTemplate" } : /* istanbul ignore next */ {},
429
+ descendants: false
430
+ });
431
+ toolbarTemplate = contentChild("toolbar", {
432
+ ...ngDevMode ? { debugName: "toolbarTemplate" } : /* istanbul ignore next */ {},
433
+ descendants: false
434
+ });
435
+ chooseIconTemplate = contentChild("chooseicon", {
436
+ ...ngDevMode ? { debugName: "chooseIconTemplate" } : /* istanbul ignore next */ {},
437
+ descendants: false
438
+ });
439
+ fileLabelTemplate = contentChild("filelabel", {
440
+ ...ngDevMode ? { debugName: "fileLabelTemplate" } : /* istanbul ignore next */ {},
441
+ descendants: false
442
+ });
443
+ uploadIconTemplate = contentChild("uploadicon", {
444
+ ...ngDevMode ? { debugName: "uploadIconTemplate" } : /* istanbul ignore next */ {},
445
+ descendants: false
446
+ });
447
+ cancelIconTemplate = contentChild("cancelicon", {
448
+ ...ngDevMode ? { debugName: "cancelIconTemplate" } : /* istanbul ignore next */ {},
449
+ descendants: false
450
+ });
451
+ emptyTemplate = contentChild("empty", {
452
+ ...ngDevMode ? { debugName: "emptyTemplate" } : /* istanbul ignore next */ {},
453
+ descendants: false
454
+ });
455
+ isAdvancedMode = computed(() => this.mode() === "advanced", ...ngDevMode ? [{ debugName: "isAdvancedMode" }] : /* istanbul ignore next */ []);
456
+ isBasicMode = computed(() => this.mode() === "basic", ...ngDevMode ? [{ debugName: "isBasicMode" }] : /* istanbul ignore next */ []);
457
+ showUploadBtn = computed(() => !this.auto() && this.showUploadButton(), ...ngDevMode ? [{ debugName: "showUploadBtn" }] : /* istanbul ignore next */ []);
458
+ showCancelBtn = computed(() => !this.auto() && this.showCancelButton(), ...ngDevMode ? [{ debugName: "showCancelBtn" }] : /* istanbul ignore next */ []);
459
+ chooseButtonDisabled = computed(() => this.disabled() || this.isChooseDisabled(), ...ngDevMode ? [{ debugName: "chooseButtonDisabled" }] : /* istanbul ignore next */ []);
460
+ uploadButtonDisabled = computed(() => !this.hasFiles() || this.isFileLimitExceeded(), ...ngDevMode ? [{ debugName: "uploadButtonDisabled" }] : /* istanbul ignore next */ []);
461
+ cancelButtonDisabled = computed(() => !this.hasFiles() || this.uploading(), ...ngDevMode ? [{ debugName: "cancelButtonDisabled" }] : /* istanbul ignore next */ []);
462
+ showEmpty = computed(() => !!this.emptyTemplate() && !this.hasFiles() && !this.hasUploadedFiles(), ...ngDevMode ? [{ debugName: "showEmpty" }] : /* istanbul ignore next */ []);
463
+ get headerTemplateContext() {
464
+ return {
465
+ $implicit: this.files,
466
+ uploadedFiles: this.uploadedFiles(),
467
+ chooseCallback: this.choose.bind(this),
468
+ clearCallback: this.clear.bind(this),
469
+ uploadCallback: this.upload.bind(this)
470
+ };
471
+ }
472
+ get contentTemplateContext() {
473
+ return {
474
+ $implicit: this.files,
475
+ uploadedFiles: this.uploadedFiles(),
476
+ chooseCallback: this.choose.bind(this),
477
+ clearCallback: this.clear.bind(this),
478
+ removeUploadedFileCallback: this.removeUploadedFile.bind(this),
479
+ removeFileCallback: this.remove.bind(this),
480
+ progress: this.progress(),
481
+ messages: this.msgs()
482
+ };
483
+ }
484
+ get fileLabelTemplateContext() {
485
+ return { $implicit: this.files };
486
+ }
487
+ advancedFileInput = viewChild("advancedfileinput", ...ngDevMode ? [{ debugName: "advancedFileInput" }] : /* istanbul ignore next */ []);
488
+ basicFileInput = viewChild("basicfileinput", ...ngDevMode ? [{ debugName: "basicFileInput" }] : /* istanbul ignore next */ []);
489
+ contentEl = viewChild("content", ...ngDevMode ? [{ debugName: "contentEl" }] : /* istanbul ignore next */ []);
490
+ filesInput = input([], {
491
+ ...ngDevMode ? { debugName: "filesInput" } : /* istanbul ignore next */ {},
492
+ alias: "files"
493
+ });
494
+ get files() {
495
+ return this._files();
496
+ }
497
+ set files(value) {
498
+ this._files.set(value);
499
+ }
500
+ get basicButtonLabel() {
501
+ if (this.auto() || !this.hasFiles()) return this.chooseLabel();
502
+ return this.uploadLabel() ?? this.files[0].name;
503
+ }
504
+ _files = signal([], ...ngDevMode ? [{ debugName: "_files" }] : /* istanbul ignore next */ []);
505
+ progress = signal(0, ...ngDevMode ? [{ debugName: "progress" }] : /* istanbul ignore next */ []);
506
+ dragHighlight = signal(false, ...ngDevMode ? [{ debugName: "dragHighlight" }] : /* istanbul ignore next */ []);
507
+ msgs = signal([], ...ngDevMode ? [{ debugName: "msgs" }] : /* istanbul ignore next */ []);
508
+ uploadedFileCount = 0;
509
+ focus = signal(false, ...ngDevMode ? [{ debugName: "focus" }] : /* istanbul ignore next */ []);
510
+ uploading = signal(false, ...ngDevMode ? [{ debugName: "uploading" }] : /* istanbul ignore next */ []);
511
+ duplicateIEEvent;
512
+ translationSubscription;
513
+ dragOverListener;
514
+ uploadedFiles = signal([], ...ngDevMode ? [{ debugName: "uploadedFiles" }] : /* istanbul ignore next */ []);
515
+ sanitizer = inject(DomSanitizer);
516
+ http = inject(HttpClient);
517
+ _componentStyle = inject(FileUploadStyle);
518
+ constructor() {
519
+ super();
520
+ effect(() => {
521
+ const inputFiles = this.filesInput();
522
+ if (inputFiles && inputFiles.length > 0) {
523
+ const newFiles = [];
524
+ for (let i = 0; i < inputFiles.length; i++) {
525
+ let file = inputFiles[i];
526
+ if (this.validate(file)) {
527
+ if (this.isImage(file)) file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(inputFiles[i]));
528
+ newFiles.push(inputFiles[i]);
529
+ }
530
+ }
531
+ this._files.set(newFiles);
532
+ }
533
+ });
534
+ }
535
+ onAfterViewChecked() {
536
+ this.bindDirectiveInstance.setAttrs(this.ptm("host"));
537
+ }
538
+ onInit() {
539
+ this.translationSubscription = this.config.translationObserver.subscribe(() => {
540
+ this.cd.markForCheck();
541
+ });
542
+ }
543
+ onAfterViewInit() {
544
+ if (isPlatformBrowser(this.platformId)) {
545
+ if (this.mode() === "advanced") {
546
+ const contentEl = this.contentEl();
547
+ if (contentEl) this.dragOverListener = this.renderer.listen(contentEl.nativeElement, "dragover", this.onDragOver.bind(this));
548
+ }
549
+ }
550
+ }
551
+ basicFileChosenLabel() {
552
+ if (this.auto()) return this.chooseButtonLabel;
553
+ else if (this.hasFiles()) {
554
+ if (this.files && this.files.length === 1) return this.files[0].name;
555
+ return this.translate("fileChosenMessage")?.replace("{0}", this.files.length.toString());
556
+ }
557
+ return this.translate("noFileChosenMessage") || "";
558
+ }
559
+ completedLabel() {
560
+ return this.translate("completed") || "";
561
+ }
562
+ choose() {
563
+ this.advancedFileInput()?.nativeElement.click();
564
+ }
565
+ onFileSelect(event) {
566
+ if (event.type !== "drop" && this.isIE11() && this.duplicateIEEvent) {
567
+ this.duplicateIEEvent = false;
568
+ return;
569
+ }
570
+ if (!this.multiple()) this.files = [];
571
+ this.msgs.set([]);
572
+ this.files = this.files || [];
573
+ let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
574
+ for (let i = 0; i < files.length; i++) {
575
+ let file = files[i];
576
+ if (!this.isFileSelected(file)) {
577
+ if (this.validate(file)) {
578
+ if (this.isImage(file)) file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(files[i]));
579
+ this.files.push(files[i]);
580
+ }
581
+ }
582
+ }
583
+ this.files = [...this.files];
584
+ this.onSelect.emit({
585
+ originalEvent: event,
586
+ files,
587
+ currentFiles: this.files
588
+ });
589
+ this.checkFileLimit(files);
590
+ if (this.hasFiles() && this.auto() && (this.mode() !== "advanced" || !this.isFileLimitExceeded())) this.upload();
591
+ if (event.type !== "drop" && this.isIE11()) this.clearIEInput();
592
+ else this.clearInputElement();
593
+ }
594
+ isFileSelected(file) {
595
+ for (let sFile of this.files) if (sFile.name + sFile.type + sFile.size === file.name + file.type + file.size) return true;
596
+ return false;
597
+ }
598
+ isIE11() {
599
+ if (isPlatformBrowser(this.platformId)) return !!this.document.defaultView["MSInputMethodContext"] && !!this.document["documentMode"];
600
+ }
601
+ validate(file) {
602
+ const acceptVal = this.accept();
603
+ if (acceptVal && !this.isFileTypeValid(file)) {
604
+ const text = `${this.invalidFileTypeMessageSummary().replace("{0}", file.name)} ${this.invalidFileTypeMessageDetail().replace("{0}", acceptVal)}`;
605
+ this.msgs.update((msgs) => [...msgs, {
606
+ severity: "error",
607
+ text
608
+ }]);
609
+ return false;
610
+ }
611
+ const maxFileSizeVal = this.maxFileSize();
612
+ if (maxFileSizeVal && file.size > maxFileSizeVal) {
613
+ const text = `${this.invalidFileSizeMessageSummary().replace("{0}", file.name)} ${this.invalidFileSizeMessageDetail().replace("{0}", this.formatSize(maxFileSizeVal))}`;
614
+ this.msgs.update((msgs) => [...msgs, {
615
+ severity: "error",
616
+ text
617
+ }]);
618
+ return false;
619
+ }
620
+ return true;
621
+ }
622
+ isFileTypeValid(file) {
623
+ let acceptableTypes = this.accept()?.split(",").map((type) => type.trim());
624
+ for (let type of acceptableTypes) if (this.isWildcard(type) ? this.getTypeClass(file.type) === this.getTypeClass(type) : file.type == type || this.getFileExtension(file).toLowerCase() === type.toLowerCase()) return true;
625
+ return false;
626
+ }
627
+ getTypeClass(fileType) {
628
+ return fileType.substring(0, fileType.indexOf("/"));
629
+ }
630
+ isWildcard(fileType) {
631
+ return fileType.indexOf("*") !== -1;
632
+ }
633
+ getFileExtension(file) {
634
+ return "." + file.name.split(".").pop();
635
+ }
636
+ isImage(file) {
637
+ return /^image\//.test(file.type);
638
+ }
639
+ onImageLoad(img) {
640
+ window.URL.revokeObjectURL(img.src);
641
+ }
642
+ uploader() {
643
+ if (this.customUpload()) {
644
+ if (this.fileLimit()) this.uploadedFileCount += this.files.length;
645
+ this.uploadHandler.emit({ files: this.files });
646
+ } else {
647
+ this.uploading.set(true);
648
+ this.msgs.set([]);
649
+ let formData = new FormData();
650
+ this.onBeforeUpload.emit({ formData });
651
+ const nameVal = this.name();
652
+ for (let i = 0; i < this.files.length; i++) formData.append(nameVal, this.files[i], this.files[i].name);
653
+ this.http.request(this.method(), this.url(), {
654
+ body: formData,
655
+ headers: this.headers(),
656
+ reportProgress: true,
657
+ observe: "events",
658
+ withCredentials: this.withCredentials()
659
+ }).subscribe({
660
+ next: (event) => {
661
+ switch (event.type) {
662
+ case HttpEventType.Sent:
663
+ this.onSend.emit({
664
+ originalEvent: event,
665
+ formData
666
+ });
667
+ break;
668
+ case HttpEventType.Response:
669
+ this.uploading.set(false);
670
+ this.progress.set(0);
671
+ if (event["status"] >= 200 && event["status"] < 300) {
672
+ if (this.fileLimit()) this.uploadedFileCount += this.files.length;
673
+ this.onUpload.emit({
674
+ originalEvent: event,
675
+ files: this.files
676
+ });
677
+ } else this.onError.emit({ files: this.files });
678
+ this.uploadedFiles.update((files) => [...files, ...this.files]);
679
+ this.clear();
680
+ break;
681
+ case HttpEventType.UploadProgress:
682
+ if (event["loaded"]) this.progress.set(Math.round(event["loaded"] * 100 / event["total"]));
683
+ this.onProgress.emit({
684
+ originalEvent: event,
685
+ progress: this.progress()
686
+ });
687
+ }
688
+ },
689
+ error: (error) => {
690
+ this.uploading.set(false);
691
+ this.onError.emit({
692
+ files: this.files,
693
+ error
694
+ });
695
+ }
696
+ });
697
+ }
698
+ }
699
+ onRemoveClick(e) {
700
+ const { event, index } = e;
701
+ if (this.hasFiles()) this.remove(event, index);
702
+ }
703
+ onRemoveUploadedFileClick(e) {
704
+ const { index } = e;
705
+ if (this.hasUploadedFiles()) this.removeUploadedFile(index);
706
+ }
707
+ clear() {
708
+ this.files = [];
709
+ this.onClear.emit();
710
+ this.clearInputElement();
711
+ this.msgs.set([]);
712
+ }
713
+ remove(event, index) {
714
+ this.clearInputElement();
715
+ this.onRemove.emit({
716
+ originalEvent: event,
717
+ file: this.files[index]
718
+ });
719
+ this.files.splice(index, 1);
720
+ this.files = [...this.files];
721
+ this.checkFileLimit(this.files);
722
+ }
723
+ removeUploadedFile(index) {
724
+ const currentFiles = this.uploadedFiles();
725
+ const removedFile = currentFiles[index];
726
+ this.uploadedFiles.set(currentFiles.filter((_, i) => i !== index));
727
+ this.onRemoveUploadedFile.emit({
728
+ file: removedFile,
729
+ files: this.uploadedFiles()
730
+ });
731
+ }
732
+ isFileLimitExceeded() {
733
+ const totalFileCount = this.auto() ? this.files.length : this.files.length + this.uploadedFileCount;
734
+ const fileLimitVal = this.fileLimit();
735
+ if (fileLimitVal && fileLimitVal <= totalFileCount && this.focus()) this.focus.set(false);
736
+ return fileLimitVal && fileLimitVal < totalFileCount;
737
+ }
738
+ isChooseDisabled() {
739
+ const fileLimitVal = this.fileLimit();
740
+ if (this.auto()) return fileLimitVal && fileLimitVal <= this.files.length;
741
+ else return fileLimitVal && fileLimitVal <= this.files.length + this.uploadedFileCount;
742
+ }
743
+ checkFileLimit(files) {
744
+ const fileLimitVal = this.fileLimit();
745
+ const hasExistingValidationMessages = this.msgs().length > 0 && fileLimitVal && fileLimitVal < files.length;
746
+ if (this.isFileLimitExceeded() || hasExistingValidationMessages) {
747
+ const text = `${this.invalidFileLimitMessageSummary().replace("{0}", fileLimitVal.toString())} ${this.invalidFileLimitMessageDetail().replace("{0}", fileLimitVal.toString())}`;
748
+ this.msgs.update((msgs) => [...msgs, {
749
+ severity: "error",
750
+ text
751
+ }]);
752
+ } else this.msgs.update((msgs) => msgs.filter((msg) => !msg.text.includes(this.invalidFileLimitMessageSummary())));
753
+ }
754
+ clearInputElement() {
755
+ const advancedInput = this.advancedFileInput();
756
+ if (advancedInput && advancedInput.nativeElement) advancedInput.nativeElement.value = "";
757
+ const basicInput = this.basicFileInput();
758
+ if (basicInput && basicInput.nativeElement) basicInput.nativeElement.value = "";
759
+ }
760
+ clearIEInput() {
761
+ const advancedInput = this.advancedFileInput();
762
+ if (advancedInput && advancedInput.nativeElement) {
763
+ this.duplicateIEEvent = true;
764
+ advancedInput.nativeElement.value = "";
765
+ }
766
+ }
767
+ hasFiles() {
768
+ return this.files && this.files.length > 0;
769
+ }
770
+ hasUploadedFiles() {
771
+ return this.uploadedFiles().length > 0;
772
+ }
773
+ getFileTemplateContext(file) {
774
+ return { $implicit: file };
775
+ }
776
+ onDragEnter(e) {
777
+ if (!this.disabled()) {
778
+ e.stopPropagation();
779
+ e.preventDefault();
780
+ }
781
+ }
782
+ onDragOver(e) {
783
+ if (!this.disabled()) {
784
+ const contentEl = this.contentEl();
785
+ if (!this.$unstyled()) addClass(contentEl?.nativeElement, this.pcn("p-fileupload-highlight"));
786
+ contentEl?.nativeElement.setAttribute("data-p-highlight", true);
787
+ this.dragHighlight.set(true);
788
+ e.stopPropagation();
789
+ e.preventDefault();
790
+ }
791
+ }
792
+ onDragLeave(_event) {
793
+ if (!this.disabled()) {
794
+ const contentEl = this.contentEl();
795
+ if (!this.$unstyled()) removeClass(contentEl?.nativeElement, this.pcn("p-fileupload-highlight"));
796
+ contentEl?.nativeElement.setAttribute("data-p-highlight", false);
797
+ }
798
+ }
799
+ onDrop(event) {
800
+ if (!this.disabled()) {
801
+ const contentEl = this.contentEl();
802
+ if (!this.$unstyled()) removeClass(contentEl?.nativeElement, this.pcn("p-fileupload-highlight"));
803
+ contentEl?.nativeElement.setAttribute("data-p-highlight", false);
804
+ event.stopPropagation();
805
+ event.preventDefault();
806
+ let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
807
+ if (this.multiple() || files && files.length === 1) this.onFileSelect(event);
808
+ }
809
+ }
810
+ onFocus() {
811
+ this.focus.set(true);
812
+ }
813
+ onBlur() {
814
+ this.focus.set(false);
815
+ }
816
+ formatSize(bytes) {
817
+ const k = 1024;
818
+ const dm = 3;
819
+ const sizes = this.translate(TranslationKeys.FILE_SIZE_TYPES);
820
+ if (bytes === 0) return `0 ${sizes[0]}`;
821
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
822
+ return `${(bytes / Math.pow(k, i)).toFixed(dm)} ${sizes[i]}`;
823
+ }
824
+ upload() {
825
+ if (this.hasFiles()) this.uploader();
826
+ }
827
+ onBasicUploaderClick() {
828
+ this.basicFileInput()?.nativeElement.click();
829
+ }
830
+ onBasicKeydown(event) {
831
+ switch (event.code) {
832
+ case "Space":
833
+ case "Enter":
834
+ this.onBasicUploaderClick();
835
+ event.preventDefault();
836
+ }
837
+ }
838
+ imageError(event) {
839
+ this.onImageError.emit(event);
840
+ }
841
+ getBlockableElement() {
842
+ return this.el.nativeElement.children[0];
843
+ }
844
+ get chooseButtonLabel() {
845
+ return this.chooseLabel() || this.translate(TranslationKeys.CHOOSE);
846
+ }
847
+ get uploadButtonLabel() {
848
+ return this.uploadLabel() || this.translate(TranslationKeys.UPLOAD);
849
+ }
850
+ get cancelButtonLabel() {
851
+ return this.cancelLabel() || this.translate(TranslationKeys.CANCEL);
852
+ }
853
+ get browseFilesLabel() {
854
+ return this.translate(TranslationKeys.ARIA, TranslationKeys.BROWSE_FILES);
855
+ }
856
+ get pendingLabel() {
857
+ return this.translate(TranslationKeys.PENDING);
858
+ }
859
+ onDestroy() {
860
+ const contentEl = this.contentEl();
861
+ if (contentEl && contentEl.nativeElement) {
862
+ if (this.dragOverListener) {
863
+ this.dragOverListener();
864
+ this.dragOverListener = null;
865
+ }
866
+ }
867
+ if (this.translationSubscription) this.translationSubscription.unsubscribe();
868
+ }
869
+ static ɵfac = i0.ɵɵngDeclareFactory({
870
+ minVersion: "12.0.0",
871
+ version: "22.2.3",
872
+ ngImport: i0,
873
+ type: FileUpload,
874
+ deps: [],
875
+ target: i0.ɵɵFactoryTarget.Component
876
+ });
877
+ static ɵcmp = i0.ɵɵngDeclareComponent({
878
+ minVersion: "17.0.0",
879
+ version: "22.2.3",
880
+ type: FileUpload,
881
+ isStandalone: true,
882
+ selector: "p-fileupload",
883
+ inputs: {
884
+ name: {
885
+ classPropertyName: "name",
886
+ publicName: "name",
887
+ isSignal: true,
888
+ isRequired: false,
889
+ transformFunction: null
890
+ },
891
+ url: {
892
+ classPropertyName: "url",
893
+ publicName: "url",
894
+ isSignal: true,
895
+ isRequired: false,
896
+ transformFunction: null
897
+ },
898
+ method: {
899
+ classPropertyName: "method",
900
+ publicName: "method",
901
+ isSignal: true,
902
+ isRequired: false,
903
+ transformFunction: null
904
+ },
905
+ multiple: {
906
+ classPropertyName: "multiple",
907
+ publicName: "multiple",
908
+ isSignal: true,
909
+ isRequired: false,
910
+ transformFunction: null
911
+ },
912
+ accept: {
913
+ classPropertyName: "accept",
914
+ publicName: "accept",
915
+ isSignal: true,
916
+ isRequired: false,
917
+ transformFunction: null
918
+ },
919
+ disabled: {
920
+ classPropertyName: "disabled",
921
+ publicName: "disabled",
922
+ isSignal: true,
923
+ isRequired: false,
924
+ transformFunction: null
925
+ },
926
+ auto: {
927
+ classPropertyName: "auto",
928
+ publicName: "auto",
929
+ isSignal: true,
930
+ isRequired: false,
931
+ transformFunction: null
932
+ },
933
+ withCredentials: {
934
+ classPropertyName: "withCredentials",
935
+ publicName: "withCredentials",
936
+ isSignal: true,
937
+ isRequired: false,
938
+ transformFunction: null
939
+ },
940
+ maxFileSize: {
941
+ classPropertyName: "maxFileSize",
942
+ publicName: "maxFileSize",
943
+ isSignal: true,
944
+ isRequired: false,
945
+ transformFunction: null
946
+ },
947
+ invalidFileSizeMessageSummary: {
948
+ classPropertyName: "invalidFileSizeMessageSummary",
949
+ publicName: "invalidFileSizeMessageSummary",
950
+ isSignal: true,
951
+ isRequired: false,
952
+ transformFunction: null
953
+ },
954
+ invalidFileSizeMessageDetail: {
955
+ classPropertyName: "invalidFileSizeMessageDetail",
956
+ publicName: "invalidFileSizeMessageDetail",
957
+ isSignal: true,
958
+ isRequired: false,
959
+ transformFunction: null
960
+ },
961
+ invalidFileTypeMessageSummary: {
962
+ classPropertyName: "invalidFileTypeMessageSummary",
963
+ publicName: "invalidFileTypeMessageSummary",
964
+ isSignal: true,
965
+ isRequired: false,
966
+ transformFunction: null
967
+ },
968
+ invalidFileTypeMessageDetail: {
969
+ classPropertyName: "invalidFileTypeMessageDetail",
970
+ publicName: "invalidFileTypeMessageDetail",
971
+ isSignal: true,
972
+ isRequired: false,
973
+ transformFunction: null
974
+ },
975
+ invalidFileLimitMessageDetail: {
976
+ classPropertyName: "invalidFileLimitMessageDetail",
977
+ publicName: "invalidFileLimitMessageDetail",
978
+ isSignal: true,
979
+ isRequired: false,
980
+ transformFunction: null
981
+ },
982
+ invalidFileLimitMessageSummary: {
983
+ classPropertyName: "invalidFileLimitMessageSummary",
984
+ publicName: "invalidFileLimitMessageSummary",
985
+ isSignal: true,
986
+ isRequired: false,
987
+ transformFunction: null
988
+ },
989
+ style: {
990
+ classPropertyName: "style",
991
+ publicName: "style",
992
+ isSignal: true,
993
+ isRequired: false,
994
+ transformFunction: null
995
+ },
996
+ styleClass: {
997
+ classPropertyName: "styleClass",
998
+ publicName: "styleClass",
999
+ isSignal: true,
1000
+ isRequired: false,
1001
+ transformFunction: null
1002
+ },
1003
+ previewWidth: {
1004
+ classPropertyName: "previewWidth",
1005
+ publicName: "previewWidth",
1006
+ isSignal: true,
1007
+ isRequired: false,
1008
+ transformFunction: null
1009
+ },
1010
+ chooseLabel: {
1011
+ classPropertyName: "chooseLabel",
1012
+ publicName: "chooseLabel",
1013
+ isSignal: true,
1014
+ isRequired: false,
1015
+ transformFunction: null
1016
+ },
1017
+ uploadLabel: {
1018
+ classPropertyName: "uploadLabel",
1019
+ publicName: "uploadLabel",
1020
+ isSignal: true,
1021
+ isRequired: false,
1022
+ transformFunction: null
1023
+ },
1024
+ cancelLabel: {
1025
+ classPropertyName: "cancelLabel",
1026
+ publicName: "cancelLabel",
1027
+ isSignal: true,
1028
+ isRequired: false,
1029
+ transformFunction: null
1030
+ },
1031
+ chooseIcon: {
1032
+ classPropertyName: "chooseIcon",
1033
+ publicName: "chooseIcon",
1034
+ isSignal: true,
1035
+ isRequired: false,
1036
+ transformFunction: null
1037
+ },
1038
+ uploadIcon: {
1039
+ classPropertyName: "uploadIcon",
1040
+ publicName: "uploadIcon",
1041
+ isSignal: true,
1042
+ isRequired: false,
1043
+ transformFunction: null
1044
+ },
1045
+ cancelIcon: {
1046
+ classPropertyName: "cancelIcon",
1047
+ publicName: "cancelIcon",
1048
+ isSignal: true,
1049
+ isRequired: false,
1050
+ transformFunction: null
1051
+ },
1052
+ showUploadButton: {
1053
+ classPropertyName: "showUploadButton",
1054
+ publicName: "showUploadButton",
1055
+ isSignal: true,
1056
+ isRequired: false,
1057
+ transformFunction: null
1058
+ },
1059
+ showCancelButton: {
1060
+ classPropertyName: "showCancelButton",
1061
+ publicName: "showCancelButton",
1062
+ isSignal: true,
1063
+ isRequired: false,
1064
+ transformFunction: null
1065
+ },
1066
+ mode: {
1067
+ classPropertyName: "mode",
1068
+ publicName: "mode",
1069
+ isSignal: true,
1070
+ isRequired: false,
1071
+ transformFunction: null
1072
+ },
1073
+ headers: {
1074
+ classPropertyName: "headers",
1075
+ publicName: "headers",
1076
+ isSignal: true,
1077
+ isRequired: false,
1078
+ transformFunction: null
1079
+ },
1080
+ customUpload: {
1081
+ classPropertyName: "customUpload",
1082
+ publicName: "customUpload",
1083
+ isSignal: true,
1084
+ isRequired: false,
1085
+ transformFunction: null
1086
+ },
1087
+ fileLimit: {
1088
+ classPropertyName: "fileLimit",
1089
+ publicName: "fileLimit",
1090
+ isSignal: true,
1091
+ isRequired: false,
1092
+ transformFunction: null
1093
+ },
1094
+ uploadStyleClass: {
1095
+ classPropertyName: "uploadStyleClass",
1096
+ publicName: "uploadStyleClass",
1097
+ isSignal: true,
1098
+ isRequired: false,
1099
+ transformFunction: null
1100
+ },
1101
+ cancelStyleClass: {
1102
+ classPropertyName: "cancelStyleClass",
1103
+ publicName: "cancelStyleClass",
1104
+ isSignal: true,
1105
+ isRequired: false,
1106
+ transformFunction: null
1107
+ },
1108
+ removeStyleClass: {
1109
+ classPropertyName: "removeStyleClass",
1110
+ publicName: "removeStyleClass",
1111
+ isSignal: true,
1112
+ isRequired: false,
1113
+ transformFunction: null
1114
+ },
1115
+ chooseStyleClass: {
1116
+ classPropertyName: "chooseStyleClass",
1117
+ publicName: "chooseStyleClass",
1118
+ isSignal: true,
1119
+ isRequired: false,
1120
+ transformFunction: null
1121
+ },
1122
+ chooseButtonProps: {
1123
+ classPropertyName: "chooseButtonProps",
1124
+ publicName: "chooseButtonProps",
1125
+ isSignal: true,
1126
+ isRequired: false,
1127
+ transformFunction: null
1128
+ },
1129
+ uploadButtonProps: {
1130
+ classPropertyName: "uploadButtonProps",
1131
+ publicName: "uploadButtonProps",
1132
+ isSignal: true,
1133
+ isRequired: false,
1134
+ transformFunction: null
1135
+ },
1136
+ cancelButtonProps: {
1137
+ classPropertyName: "cancelButtonProps",
1138
+ publicName: "cancelButtonProps",
1139
+ isSignal: true,
1140
+ isRequired: false,
1141
+ transformFunction: null
1142
+ },
1143
+ filesInput: {
1144
+ classPropertyName: "filesInput",
1145
+ publicName: "files",
1146
+ isSignal: true,
1147
+ isRequired: false,
1148
+ transformFunction: null
1149
+ }
1150
+ },
1151
+ outputs: {
1152
+ onBeforeUpload: "onBeforeUpload",
1153
+ onSend: "onSend",
1154
+ onUpload: "onUpload",
1155
+ onError: "onError",
1156
+ onClear: "onClear",
1157
+ onRemove: "onRemove",
1158
+ onSelect: "onSelect",
1159
+ onProgress: "onProgress",
1160
+ uploadHandler: "uploadHandler",
1161
+ onImageError: "onImageError",
1162
+ onRemoveUploadedFile: "onRemoveUploadedFile"
1163
+ },
1164
+ providers: [
1165
+ FileUploadStyle,
1166
+ {
1167
+ provide: FILEUPLOAD_INSTANCE,
1168
+ useExisting: FileUpload
1169
+ },
1170
+ {
1171
+ provide: PARENT_INSTANCE,
1172
+ useExisting: FileUpload
1173
+ }
1174
+ ],
1175
+ queries: [
1176
+ {
1177
+ propertyName: "fileTemplate",
1178
+ first: true,
1179
+ predicate: ["file"],
1180
+ isSignal: true
1181
+ },
1182
+ {
1183
+ propertyName: "headerTemplate",
1184
+ first: true,
1185
+ predicate: ["header"],
1186
+ isSignal: true
1187
+ },
1188
+ {
1189
+ propertyName: "contentTemplate",
1190
+ first: true,
1191
+ predicate: ["content"],
1192
+ isSignal: true
1193
+ },
1194
+ {
1195
+ propertyName: "toolbarTemplate",
1196
+ first: true,
1197
+ predicate: ["toolbar"],
1198
+ isSignal: true
1199
+ },
1200
+ {
1201
+ propertyName: "chooseIconTemplate",
1202
+ first: true,
1203
+ predicate: ["chooseicon"],
1204
+ isSignal: true
1205
+ },
1206
+ {
1207
+ propertyName: "fileLabelTemplate",
1208
+ first: true,
1209
+ predicate: ["filelabel"],
1210
+ isSignal: true
1211
+ },
1212
+ {
1213
+ propertyName: "uploadIconTemplate",
1214
+ first: true,
1215
+ predicate: ["uploadicon"],
1216
+ isSignal: true
1217
+ },
1218
+ {
1219
+ propertyName: "cancelIconTemplate",
1220
+ first: true,
1221
+ predicate: ["cancelicon"],
1222
+ isSignal: true
1223
+ },
1224
+ {
1225
+ propertyName: "emptyTemplate",
1226
+ first: true,
1227
+ predicate: ["empty"],
1228
+ isSignal: true
1229
+ }
1230
+ ],
1231
+ viewQueries: [
1232
+ {
1233
+ propertyName: "advancedFileInput",
1234
+ first: true,
1235
+ predicate: ["advancedfileinput"],
1236
+ descendants: true,
1237
+ isSignal: true
1238
+ },
1239
+ {
1240
+ propertyName: "basicFileInput",
1241
+ first: true,
1242
+ predicate: ["basicfileinput"],
1243
+ descendants: true,
1244
+ isSignal: true
1245
+ },
1246
+ {
1247
+ propertyName: "contentEl",
1248
+ first: true,
1249
+ predicate: ["content"],
1250
+ descendants: true,
1251
+ isSignal: true
1252
+ }
1253
+ ],
1254
+ usesInheritance: true,
1255
+ hostDirectives: [{ directive: i1.Bind }],
1256
+ ngImport: i0,
1257
+ template: `
1061
1258
  @if (isAdvancedMode()) {
1062
1259
  <div [class]="cn(cx('root'), styleClass())" [style]="style()" [pBind]="ptm('root')">
1063
1260
  <input [attr.aria-label]="browseFilesLabel" #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple()" [accept]="accept()" [disabled]="chooseButtonDisabled()" [attr.title]="''" [pBind]="ptm('input')" />
@@ -1210,19 +1407,19 @@ class FileUpload extends BaseComponent {
1210
1407
  >
1211
1408
  @if (hasFiles() && !auto()) {
1212
1409
  @if (uploadIcon()) {
1213
- <span [class]="cn('p-button-icon p-button-icon-left', uploadIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1410
+ <span [class]="cn(pcn('p-button-icon p-button-icon-left'), uploadIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1214
1411
  } @else {
1215
1412
  @if (!uploadIconTemplate()) {
1216
- <svg data-p-icon="upload" [class]="'p-button-icon p-button-icon-left'" [pBind]="ptm('pcChooseButton')?.icon" />
1413
+ <svg data-p-icon="upload" [class]="pcn('p-button-icon p-button-icon-left')" [pBind]="ptm('pcChooseButton')?.icon" />
1217
1414
  } @else {
1218
- <span class="p-button-icon p-button-icon-left" [pBind]="ptm('pcChooseButton')?.icon">
1415
+ <span [class]="pcn('p-button-icon p-button-icon-left')" [pBind]="ptm('pcChooseButton')?.icon">
1219
1416
  <ng-container *ngTemplateOutlet="uploadIconTemplate()"></ng-container>
1220
1417
  </span>
1221
1418
  }
1222
1419
  }
1223
1420
  } @else {
1224
1421
  @if (chooseIcon()) {
1225
- <span [class]="cn('p-button-icon p-button-icon-left pi', chooseIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1422
+ <span [class]="cn(pcn('p-button-icon p-button-icon-left'), 'pi', chooseIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1226
1423
  } @else {
1227
1424
  @if (!chooseIconTemplate()) {
1228
1425
  <svg data-p-icon="plus" [pBind]="ptm('pcChooseButton')?.icon" />
@@ -1257,15 +1454,137 @@ class FileUpload extends BaseComponent {
1257
1454
  </div>
1258
1455
  </div>
1259
1456
  }
1260
- `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ButtonDirective, selector: "[pButton]", inputs: ["pButton", "pButtonPT", "pButtonUnstyled", "hostName", "text", "plain", "raised", "size", "outlined", "link", "rounded", "fluid", "variant", "iconOnly", "loading", "severity"] }, { kind: "component", type: ProgressBar, selector: "p-progressbar, p-progress-bar", inputs: ["value", "showValue", "valueStyleClass", "unit", "mode", "color"] }, { kind: "component", type: Message, selector: "p-message", inputs: ["severity", "closable", "icon", "closeIcon", "life", "size", "variant", "motionOptions"], outputs: ["onClose"] }, { kind: "component", type: Plus, selector: "svg[data-p-icon=\"plus\"]" }, { kind: "component", type: Upload, selector: "svg[data-p-icon=\"upload\"]" }, { kind: "component", type: Times, selector: "svg[data-p-icon=\"times\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: FileContent, selector: "[pFileContent]", inputs: ["files", "badgeSeverity", "badgeValue", "previewWidth", "fileRemoveIconTemplate"], outputs: ["onRemove"] }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1261
- }
1262
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUpload, decorators: [{
1263
- type: Component,
1264
- args: [{
1265
- selector: 'p-fileupload',
1266
- standalone: true,
1267
- imports: [NgTemplateOutlet, ButtonDirective, ProgressBar, Message, Plus, Upload, Times, SharedModule, FileContent, Bind],
1268
- template: `
1457
+ `,
1458
+ isInline: true,
1459
+ dependencies: [
1460
+ {
1461
+ kind: "directive",
1462
+ type: NgTemplateOutlet,
1463
+ selector: "[ngTemplateOutlet]",
1464
+ inputs: [
1465
+ "ngTemplateOutletContext",
1466
+ "ngTemplateOutlet",
1467
+ "ngTemplateOutletInjector"
1468
+ ]
1469
+ },
1470
+ {
1471
+ kind: "directive",
1472
+ type: ButtonDirective,
1473
+ selector: "[pButton]",
1474
+ inputs: [
1475
+ "pButton",
1476
+ "pButtonPT",
1477
+ "pButtonUnstyled",
1478
+ "hostName",
1479
+ "text",
1480
+ "plain",
1481
+ "raised",
1482
+ "size",
1483
+ "outlined",
1484
+ "link",
1485
+ "rounded",
1486
+ "fluid",
1487
+ "variant",
1488
+ "iconOnly",
1489
+ "loading",
1490
+ "severity"
1491
+ ]
1492
+ },
1493
+ {
1494
+ kind: "component",
1495
+ type: ProgressBar,
1496
+ selector: "p-progressbar, p-progress-bar",
1497
+ inputs: [
1498
+ "value",
1499
+ "showValue",
1500
+ "valueStyleClass",
1501
+ "unit",
1502
+ "mode",
1503
+ "color"
1504
+ ]
1505
+ },
1506
+ {
1507
+ kind: "component",
1508
+ type: Message,
1509
+ selector: "p-message",
1510
+ inputs: [
1511
+ "severity",
1512
+ "closable",
1513
+ "icon",
1514
+ "closeIcon",
1515
+ "life",
1516
+ "size",
1517
+ "variant",
1518
+ "motionOptions"
1519
+ ],
1520
+ outputs: ["onClose"]
1521
+ },
1522
+ {
1523
+ kind: "component",
1524
+ type: Plus,
1525
+ selector: "svg[data-p-icon=\"plus\"]"
1526
+ },
1527
+ {
1528
+ kind: "component",
1529
+ type: Upload,
1530
+ selector: "svg[data-p-icon=\"upload\"]"
1531
+ },
1532
+ {
1533
+ kind: "component",
1534
+ type: Times,
1535
+ selector: "svg[data-p-icon=\"times\"]"
1536
+ },
1537
+ {
1538
+ kind: "ngmodule",
1539
+ type: SharedModule
1540
+ },
1541
+ {
1542
+ kind: "component",
1543
+ type: FileContent,
1544
+ selector: "[pFileContent]",
1545
+ inputs: [
1546
+ "files",
1547
+ "badgeSeverity",
1548
+ "badgeValue",
1549
+ "previewWidth",
1550
+ "fileRemoveIconTemplate"
1551
+ ],
1552
+ outputs: ["onRemove"]
1553
+ },
1554
+ {
1555
+ kind: "directive",
1556
+ type: Bind,
1557
+ selector: "[pBind]",
1558
+ inputs: ["pBind"]
1559
+ }
1560
+ ],
1561
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
1562
+ encapsulation: i0.ViewEncapsulation.None
1563
+ });
1564
+ };
1565
+ i0.ɵɵngDeclareClassMetadata({
1566
+ minVersion: "12.0.0",
1567
+ version: "22.2.3",
1568
+ ngImport: i0,
1569
+ type: FileUpload,
1570
+ decorators: [{
1571
+ type: Component,
1572
+ args: [{
1573
+ selector: "p-fileupload",
1574
+ standalone: true,
1575
+ imports: [
1576
+ NgTemplateOutlet,
1577
+ ButtonDirective,
1578
+ ProgressBar,
1579
+ Message,
1580
+ Plus,
1581
+ Upload,
1582
+ Times,
1583
+ SharedModule,
1584
+ FileContent,
1585
+ Bind
1586
+ ],
1587
+ template: `
1269
1588
  @if (isAdvancedMode()) {
1270
1589
  <div [class]="cn(cx('root'), styleClass())" [style]="style()" [pBind]="ptm('root')">
1271
1590
  <input [attr.aria-label]="browseFilesLabel" #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple()" [accept]="accept()" [disabled]="chooseButtonDisabled()" [attr.title]="''" [pBind]="ptm('input')" />
@@ -1418,19 +1737,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImpor
1418
1737
  >
1419
1738
  @if (hasFiles() && !auto()) {
1420
1739
  @if (uploadIcon()) {
1421
- <span [class]="cn('p-button-icon p-button-icon-left', uploadIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1740
+ <span [class]="cn(pcn('p-button-icon p-button-icon-left'), uploadIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1422
1741
  } @else {
1423
1742
  @if (!uploadIconTemplate()) {
1424
- <svg data-p-icon="upload" [class]="'p-button-icon p-button-icon-left'" [pBind]="ptm('pcChooseButton')?.icon" />
1743
+ <svg data-p-icon="upload" [class]="pcn('p-button-icon p-button-icon-left')" [pBind]="ptm('pcChooseButton')?.icon" />
1425
1744
  } @else {
1426
- <span class="p-button-icon p-button-icon-left" [pBind]="ptm('pcChooseButton')?.icon">
1745
+ <span [class]="pcn('p-button-icon p-button-icon-left')" [pBind]="ptm('pcChooseButton')?.icon">
1427
1746
  <ng-container *ngTemplateOutlet="uploadIconTemplate()"></ng-container>
1428
1747
  </span>
1429
1748
  }
1430
1749
  }
1431
1750
  } @else {
1432
1751
  @if (chooseIcon()) {
1433
- <span [class]="cn('p-button-icon p-button-icon-left pi', chooseIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1752
+ <span [class]="cn(pcn('p-button-icon p-button-icon-left'), 'pi', chooseIcon())" [pBind]="ptm('pcChooseButton')?.icon"></span>
1434
1753
  } @else {
1435
1754
  @if (!chooseIconTemplate()) {
1436
1755
  <svg data-p-icon="plus" [pBind]="ptm('pcChooseButton')?.icon" />
@@ -1466,28 +1785,490 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImpor
1466
1785
  </div>
1467
1786
  }
1468
1787
  `,
1469
- changeDetection: ChangeDetectionStrategy.OnPush,
1470
- encapsulation: ViewEncapsulation.None,
1471
- providers: [FileUploadStyle, { provide: FILEUPLOAD_INSTANCE, useExisting: FileUpload }, { provide: PARENT_INSTANCE, useExisting: FileUpload }],
1472
- hostDirectives: [Bind]
1473
- }]
1474
- }], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], url: [{ type: i0.Input, args: [{ isSignal: true, alias: "url", required: false }] }], method: [{ type: i0.Input, args: [{ isSignal: true, alias: "method", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], accept: [{ type: i0.Input, args: [{ isSignal: true, alias: "accept", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], auto: [{ type: i0.Input, args: [{ isSignal: true, alias: "auto", required: false }] }], withCredentials: [{ type: i0.Input, args: [{ isSignal: true, alias: "withCredentials", required: false }] }], maxFileSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxFileSize", required: false }] }], invalidFileSizeMessageSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileSizeMessageSummary", required: false }] }], invalidFileSizeMessageDetail: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileSizeMessageDetail", required: false }] }], invalidFileTypeMessageSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileTypeMessageSummary", required: false }] }], invalidFileTypeMessageDetail: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileTypeMessageDetail", required: false }] }], invalidFileLimitMessageDetail: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileLimitMessageDetail", required: false }] }], invalidFileLimitMessageSummary: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalidFileLimitMessageSummary", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], styleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "styleClass", required: false }] }], previewWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "previewWidth", required: false }] }], chooseLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "chooseLabel", required: false }] }], uploadLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "uploadLabel", required: false }] }], cancelLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelLabel", required: false }] }], chooseIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "chooseIcon", required: false }] }], uploadIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "uploadIcon", required: false }] }], cancelIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelIcon", required: false }] }], showUploadButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showUploadButton", required: false }] }], showCancelButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showCancelButton", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], headers: [{ type: i0.Input, args: [{ isSignal: true, alias: "headers", required: false }] }], customUpload: [{ type: i0.Input, args: [{ isSignal: true, alias: "customUpload", required: false }] }], fileLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "fileLimit", required: false }] }], uploadStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "uploadStyleClass", required: false }] }], cancelStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelStyleClass", required: false }] }], removeStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "removeStyleClass", required: false }] }], chooseStyleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "chooseStyleClass", required: false }] }], chooseButtonProps: [{ type: i0.Input, args: [{ isSignal: true, alias: "chooseButtonProps", required: false }] }], uploadButtonProps: [{ type: i0.Input, args: [{ isSignal: true, alias: "uploadButtonProps", required: false }] }], cancelButtonProps: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelButtonProps", required: false }] }], onBeforeUpload: [{ type: i0.Output, args: ["onBeforeUpload"] }], onSend: [{ type: i0.Output, args: ["onSend"] }], onUpload: [{ type: i0.Output, args: ["onUpload"] }], onError: [{ type: i0.Output, args: ["onError"] }], onClear: [{ type: i0.Output, args: ["onClear"] }], onRemove: [{ type: i0.Output, args: ["onRemove"] }], onSelect: [{ type: i0.Output, args: ["onSelect"] }], onProgress: [{ type: i0.Output, args: ["onProgress"] }], uploadHandler: [{ type: i0.Output, args: ["uploadHandler"] }], onImageError: [{ type: i0.Output, args: ["onImageError"] }], onRemoveUploadedFile: [{ type: i0.Output, args: ["onRemoveUploadedFile"] }], fileTemplate: [{ type: i0.ContentChild, args: ['file', { ...{ descendants: false }, isSignal: true }] }], headerTemplate: [{ type: i0.ContentChild, args: ['header', { ...{ descendants: false }, isSignal: true }] }], contentTemplate: [{ type: i0.ContentChild, args: ['content', { ...{ descendants: false }, isSignal: true }] }], toolbarTemplate: [{ type: i0.ContentChild, args: ['toolbar', { ...{ descendants: false }, isSignal: true }] }], chooseIconTemplate: [{ type: i0.ContentChild, args: ['chooseicon', { ...{ descendants: false }, isSignal: true }] }], fileLabelTemplate: [{ type: i0.ContentChild, args: ['filelabel', { ...{ descendants: false }, isSignal: true }] }], uploadIconTemplate: [{ type: i0.ContentChild, args: ['uploadicon', { ...{ descendants: false }, isSignal: true }] }], cancelIconTemplate: [{ type: i0.ContentChild, args: ['cancelicon', { ...{ descendants: false }, isSignal: true }] }], emptyTemplate: [{ type: i0.ContentChild, args: ['empty', { ...{ descendants: false }, isSignal: true }] }], advancedFileInput: [{ type: i0.ViewChild, args: ['advancedfileinput', { isSignal: true }] }], basicFileInput: [{ type: i0.ViewChild, args: ['basicfileinput', { isSignal: true }] }], contentEl: [{ type: i0.ViewChild, args: ['content', { isSignal: true }] }], filesInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "files", required: false }] }] } });
1475
- class FileUploadModule {
1476
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1477
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.5", ngImport: i0, type: FileUploadModule, imports: [FileUpload, SharedModule], exports: [FileUpload, SharedModule] });
1478
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadModule, imports: [FileUpload, SharedModule, SharedModule] });
1479
- }
1480
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.5", ngImport: i0, type: FileUploadModule, decorators: [{
1481
- type: NgModule,
1482
- args: [{
1483
- imports: [FileUpload, SharedModule],
1484
- exports: [FileUpload, SharedModule]
1485
- }]
1486
- }] });
1487
-
1488
- /**
1489
- * Generated bundle index. Do not edit.
1490
- */
1491
-
1788
+ changeDetection: ChangeDetectionStrategy.OnPush,
1789
+ encapsulation: ViewEncapsulation.None,
1790
+ providers: [
1791
+ FileUploadStyle,
1792
+ {
1793
+ provide: FILEUPLOAD_INSTANCE,
1794
+ useExisting: FileUpload
1795
+ },
1796
+ {
1797
+ provide: PARENT_INSTANCE,
1798
+ useExisting: FileUpload
1799
+ }
1800
+ ],
1801
+ hostDirectives: [Bind]
1802
+ }]
1803
+ }],
1804
+ ctorParameters: () => [],
1805
+ propDecorators: {
1806
+ name: [{
1807
+ type: i0.Input,
1808
+ args: [{
1809
+ isSignal: true,
1810
+ alias: "name",
1811
+ required: false
1812
+ }]
1813
+ }],
1814
+ url: [{
1815
+ type: i0.Input,
1816
+ args: [{
1817
+ isSignal: true,
1818
+ alias: "url",
1819
+ required: false
1820
+ }]
1821
+ }],
1822
+ method: [{
1823
+ type: i0.Input,
1824
+ args: [{
1825
+ isSignal: true,
1826
+ alias: "method",
1827
+ required: false
1828
+ }]
1829
+ }],
1830
+ multiple: [{
1831
+ type: i0.Input,
1832
+ args: [{
1833
+ isSignal: true,
1834
+ alias: "multiple",
1835
+ required: false
1836
+ }]
1837
+ }],
1838
+ accept: [{
1839
+ type: i0.Input,
1840
+ args: [{
1841
+ isSignal: true,
1842
+ alias: "accept",
1843
+ required: false
1844
+ }]
1845
+ }],
1846
+ disabled: [{
1847
+ type: i0.Input,
1848
+ args: [{
1849
+ isSignal: true,
1850
+ alias: "disabled",
1851
+ required: false
1852
+ }]
1853
+ }],
1854
+ auto: [{
1855
+ type: i0.Input,
1856
+ args: [{
1857
+ isSignal: true,
1858
+ alias: "auto",
1859
+ required: false
1860
+ }]
1861
+ }],
1862
+ withCredentials: [{
1863
+ type: i0.Input,
1864
+ args: [{
1865
+ isSignal: true,
1866
+ alias: "withCredentials",
1867
+ required: false
1868
+ }]
1869
+ }],
1870
+ maxFileSize: [{
1871
+ type: i0.Input,
1872
+ args: [{
1873
+ isSignal: true,
1874
+ alias: "maxFileSize",
1875
+ required: false
1876
+ }]
1877
+ }],
1878
+ invalidFileSizeMessageSummary: [{
1879
+ type: i0.Input,
1880
+ args: [{
1881
+ isSignal: true,
1882
+ alias: "invalidFileSizeMessageSummary",
1883
+ required: false
1884
+ }]
1885
+ }],
1886
+ invalidFileSizeMessageDetail: [{
1887
+ type: i0.Input,
1888
+ args: [{
1889
+ isSignal: true,
1890
+ alias: "invalidFileSizeMessageDetail",
1891
+ required: false
1892
+ }]
1893
+ }],
1894
+ invalidFileTypeMessageSummary: [{
1895
+ type: i0.Input,
1896
+ args: [{
1897
+ isSignal: true,
1898
+ alias: "invalidFileTypeMessageSummary",
1899
+ required: false
1900
+ }]
1901
+ }],
1902
+ invalidFileTypeMessageDetail: [{
1903
+ type: i0.Input,
1904
+ args: [{
1905
+ isSignal: true,
1906
+ alias: "invalidFileTypeMessageDetail",
1907
+ required: false
1908
+ }]
1909
+ }],
1910
+ invalidFileLimitMessageDetail: [{
1911
+ type: i0.Input,
1912
+ args: [{
1913
+ isSignal: true,
1914
+ alias: "invalidFileLimitMessageDetail",
1915
+ required: false
1916
+ }]
1917
+ }],
1918
+ invalidFileLimitMessageSummary: [{
1919
+ type: i0.Input,
1920
+ args: [{
1921
+ isSignal: true,
1922
+ alias: "invalidFileLimitMessageSummary",
1923
+ required: false
1924
+ }]
1925
+ }],
1926
+ style: [{
1927
+ type: i0.Input,
1928
+ args: [{
1929
+ isSignal: true,
1930
+ alias: "style",
1931
+ required: false
1932
+ }]
1933
+ }],
1934
+ styleClass: [{
1935
+ type: i0.Input,
1936
+ args: [{
1937
+ isSignal: true,
1938
+ alias: "styleClass",
1939
+ required: false
1940
+ }]
1941
+ }],
1942
+ previewWidth: [{
1943
+ type: i0.Input,
1944
+ args: [{
1945
+ isSignal: true,
1946
+ alias: "previewWidth",
1947
+ required: false
1948
+ }]
1949
+ }],
1950
+ chooseLabel: [{
1951
+ type: i0.Input,
1952
+ args: [{
1953
+ isSignal: true,
1954
+ alias: "chooseLabel",
1955
+ required: false
1956
+ }]
1957
+ }],
1958
+ uploadLabel: [{
1959
+ type: i0.Input,
1960
+ args: [{
1961
+ isSignal: true,
1962
+ alias: "uploadLabel",
1963
+ required: false
1964
+ }]
1965
+ }],
1966
+ cancelLabel: [{
1967
+ type: i0.Input,
1968
+ args: [{
1969
+ isSignal: true,
1970
+ alias: "cancelLabel",
1971
+ required: false
1972
+ }]
1973
+ }],
1974
+ chooseIcon: [{
1975
+ type: i0.Input,
1976
+ args: [{
1977
+ isSignal: true,
1978
+ alias: "chooseIcon",
1979
+ required: false
1980
+ }]
1981
+ }],
1982
+ uploadIcon: [{
1983
+ type: i0.Input,
1984
+ args: [{
1985
+ isSignal: true,
1986
+ alias: "uploadIcon",
1987
+ required: false
1988
+ }]
1989
+ }],
1990
+ cancelIcon: [{
1991
+ type: i0.Input,
1992
+ args: [{
1993
+ isSignal: true,
1994
+ alias: "cancelIcon",
1995
+ required: false
1996
+ }]
1997
+ }],
1998
+ showUploadButton: [{
1999
+ type: i0.Input,
2000
+ args: [{
2001
+ isSignal: true,
2002
+ alias: "showUploadButton",
2003
+ required: false
2004
+ }]
2005
+ }],
2006
+ showCancelButton: [{
2007
+ type: i0.Input,
2008
+ args: [{
2009
+ isSignal: true,
2010
+ alias: "showCancelButton",
2011
+ required: false
2012
+ }]
2013
+ }],
2014
+ mode: [{
2015
+ type: i0.Input,
2016
+ args: [{
2017
+ isSignal: true,
2018
+ alias: "mode",
2019
+ required: false
2020
+ }]
2021
+ }],
2022
+ headers: [{
2023
+ type: i0.Input,
2024
+ args: [{
2025
+ isSignal: true,
2026
+ alias: "headers",
2027
+ required: false
2028
+ }]
2029
+ }],
2030
+ customUpload: [{
2031
+ type: i0.Input,
2032
+ args: [{
2033
+ isSignal: true,
2034
+ alias: "customUpload",
2035
+ required: false
2036
+ }]
2037
+ }],
2038
+ fileLimit: [{
2039
+ type: i0.Input,
2040
+ args: [{
2041
+ isSignal: true,
2042
+ alias: "fileLimit",
2043
+ required: false
2044
+ }]
2045
+ }],
2046
+ uploadStyleClass: [{
2047
+ type: i0.Input,
2048
+ args: [{
2049
+ isSignal: true,
2050
+ alias: "uploadStyleClass",
2051
+ required: false
2052
+ }]
2053
+ }],
2054
+ cancelStyleClass: [{
2055
+ type: i0.Input,
2056
+ args: [{
2057
+ isSignal: true,
2058
+ alias: "cancelStyleClass",
2059
+ required: false
2060
+ }]
2061
+ }],
2062
+ removeStyleClass: [{
2063
+ type: i0.Input,
2064
+ args: [{
2065
+ isSignal: true,
2066
+ alias: "removeStyleClass",
2067
+ required: false
2068
+ }]
2069
+ }],
2070
+ chooseStyleClass: [{
2071
+ type: i0.Input,
2072
+ args: [{
2073
+ isSignal: true,
2074
+ alias: "chooseStyleClass",
2075
+ required: false
2076
+ }]
2077
+ }],
2078
+ chooseButtonProps: [{
2079
+ type: i0.Input,
2080
+ args: [{
2081
+ isSignal: true,
2082
+ alias: "chooseButtonProps",
2083
+ required: false
2084
+ }]
2085
+ }],
2086
+ uploadButtonProps: [{
2087
+ type: i0.Input,
2088
+ args: [{
2089
+ isSignal: true,
2090
+ alias: "uploadButtonProps",
2091
+ required: false
2092
+ }]
2093
+ }],
2094
+ cancelButtonProps: [{
2095
+ type: i0.Input,
2096
+ args: [{
2097
+ isSignal: true,
2098
+ alias: "cancelButtonProps",
2099
+ required: false
2100
+ }]
2101
+ }],
2102
+ onBeforeUpload: [{
2103
+ type: i0.Output,
2104
+ args: ["onBeforeUpload"]
2105
+ }],
2106
+ onSend: [{
2107
+ type: i0.Output,
2108
+ args: ["onSend"]
2109
+ }],
2110
+ onUpload: [{
2111
+ type: i0.Output,
2112
+ args: ["onUpload"]
2113
+ }],
2114
+ onError: [{
2115
+ type: i0.Output,
2116
+ args: ["onError"]
2117
+ }],
2118
+ onClear: [{
2119
+ type: i0.Output,
2120
+ args: ["onClear"]
2121
+ }],
2122
+ onRemove: [{
2123
+ type: i0.Output,
2124
+ args: ["onRemove"]
2125
+ }],
2126
+ onSelect: [{
2127
+ type: i0.Output,
2128
+ args: ["onSelect"]
2129
+ }],
2130
+ onProgress: [{
2131
+ type: i0.Output,
2132
+ args: ["onProgress"]
2133
+ }],
2134
+ uploadHandler: [{
2135
+ type: i0.Output,
2136
+ args: ["uploadHandler"]
2137
+ }],
2138
+ onImageError: [{
2139
+ type: i0.Output,
2140
+ args: ["onImageError"]
2141
+ }],
2142
+ onRemoveUploadedFile: [{
2143
+ type: i0.Output,
2144
+ args: ["onRemoveUploadedFile"]
2145
+ }],
2146
+ fileTemplate: [{
2147
+ type: i0.ContentChild,
2148
+ args: ["file", {
2149
+ descendants: false,
2150
+ isSignal: true
2151
+ }]
2152
+ }],
2153
+ headerTemplate: [{
2154
+ type: i0.ContentChild,
2155
+ args: ["header", {
2156
+ descendants: false,
2157
+ isSignal: true
2158
+ }]
2159
+ }],
2160
+ contentTemplate: [{
2161
+ type: i0.ContentChild,
2162
+ args: ["content", {
2163
+ descendants: false,
2164
+ isSignal: true
2165
+ }]
2166
+ }],
2167
+ toolbarTemplate: [{
2168
+ type: i0.ContentChild,
2169
+ args: ["toolbar", {
2170
+ descendants: false,
2171
+ isSignal: true
2172
+ }]
2173
+ }],
2174
+ chooseIconTemplate: [{
2175
+ type: i0.ContentChild,
2176
+ args: ["chooseicon", {
2177
+ descendants: false,
2178
+ isSignal: true
2179
+ }]
2180
+ }],
2181
+ fileLabelTemplate: [{
2182
+ type: i0.ContentChild,
2183
+ args: ["filelabel", {
2184
+ descendants: false,
2185
+ isSignal: true
2186
+ }]
2187
+ }],
2188
+ uploadIconTemplate: [{
2189
+ type: i0.ContentChild,
2190
+ args: ["uploadicon", {
2191
+ descendants: false,
2192
+ isSignal: true
2193
+ }]
2194
+ }],
2195
+ cancelIconTemplate: [{
2196
+ type: i0.ContentChild,
2197
+ args: ["cancelicon", {
2198
+ descendants: false,
2199
+ isSignal: true
2200
+ }]
2201
+ }],
2202
+ emptyTemplate: [{
2203
+ type: i0.ContentChild,
2204
+ args: ["empty", {
2205
+ descendants: false,
2206
+ isSignal: true
2207
+ }]
2208
+ }],
2209
+ advancedFileInput: [{
2210
+ type: i0.ViewChild,
2211
+ args: ["advancedfileinput", { isSignal: true }]
2212
+ }],
2213
+ basicFileInput: [{
2214
+ type: i0.ViewChild,
2215
+ args: ["basicfileinput", { isSignal: true }]
2216
+ }],
2217
+ contentEl: [{
2218
+ type: i0.ViewChild,
2219
+ args: ["content", { isSignal: true }]
2220
+ }],
2221
+ filesInput: [{
2222
+ type: i0.Input,
2223
+ args: [{
2224
+ isSignal: true,
2225
+ alias: "files",
2226
+ required: false
2227
+ }]
2228
+ }]
2229
+ }
2230
+ });
2231
+ var FileUploadModule = class FileUploadModule {
2232
+ static ɵfac = i0.ɵɵngDeclareFactory({
2233
+ minVersion: "12.0.0",
2234
+ version: "22.2.3",
2235
+ ngImport: i0,
2236
+ type: FileUploadModule,
2237
+ deps: [],
2238
+ target: i0.ɵɵFactoryTarget.NgModule
2239
+ });
2240
+ static ɵmod = i0.ɵɵngDeclareNgModule({
2241
+ minVersion: "14.0.0",
2242
+ version: "22.2.3",
2243
+ ngImport: i0,
2244
+ type: FileUploadModule,
2245
+ imports: [FileUpload, SharedModule],
2246
+ exports: [FileUpload, SharedModule]
2247
+ });
2248
+ static ɵinj = i0.ɵɵngDeclareInjector({
2249
+ minVersion: "12.0.0",
2250
+ version: "22.2.3",
2251
+ ngImport: i0,
2252
+ type: FileUploadModule,
2253
+ imports: [
2254
+ FileUpload,
2255
+ SharedModule,
2256
+ SharedModule
2257
+ ]
2258
+ });
2259
+ };
2260
+ i0.ɵɵngDeclareClassMetadata({
2261
+ minVersion: "12.0.0",
2262
+ version: "22.2.3",
2263
+ ngImport: i0,
2264
+ type: FileUploadModule,
2265
+ decorators: [{
2266
+ type: NgModule,
2267
+ args: [{
2268
+ imports: [FileUpload, SharedModule],
2269
+ exports: [FileUpload, SharedModule]
2270
+ }]
2271
+ }]
2272
+ });
1492
2273
  export { FileUpload, FileUploadClasses, FileUploadModule, FileUploadStyle };
1493
- //# sourceMappingURL=primeng-fileupload.mjs.map
2274
+