@anguless/angulux 22.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (633) hide show
  1. package/LICENSE +22 -0
  2. package/NOTICE +40 -0
  3. package/fesm2022/anguless-angulux-api.mjs +843 -0
  4. package/fesm2022/anguless-angulux-api.mjs.map +1 -0
  5. package/fesm2022/anguless-angulux-autofocus.mjs +83 -0
  6. package/fesm2022/anguless-angulux-autofocus.mjs.map +1 -0
  7. package/fesm2022/anguless-angulux-avatar.mjs +212 -0
  8. package/fesm2022/anguless-angulux-avatar.mjs.map +1 -0
  9. package/fesm2022/anguless-angulux-avatargroup.mjs +104 -0
  10. package/fesm2022/anguless-angulux-avatargroup.mjs.map +1 -0
  11. package/fesm2022/anguless-angulux-badge.mjs +423 -0
  12. package/fesm2022/anguless-angulux-badge.mjs.map +1 -0
  13. package/fesm2022/anguless-angulux-base.mjs +124 -0
  14. package/fesm2022/anguless-angulux-base.mjs.map +1 -0
  15. package/fesm2022/anguless-angulux-basecomponent.mjs +443 -0
  16. package/fesm2022/anguless-angulux-basecomponent.mjs.map +1 -0
  17. package/fesm2022/anguless-angulux-baseeditableholder.mjs +70 -0
  18. package/fesm2022/anguless-angulux-baseeditableholder.mjs.map +1 -0
  19. package/fesm2022/anguless-angulux-baseinput.mjs +95 -0
  20. package/fesm2022/anguless-angulux-baseinput.mjs.map +1 -0
  21. package/fesm2022/anguless-angulux-basemodelholder.mjs +27 -0
  22. package/fesm2022/anguless-angulux-basemodelholder.mjs.map +1 -0
  23. package/fesm2022/anguless-angulux-bind.mjs +99 -0
  24. package/fesm2022/anguless-angulux-bind.mjs.map +1 -0
  25. package/fesm2022/anguless-angulux-button.mjs +1039 -0
  26. package/fesm2022/anguless-angulux-button.mjs.map +1 -0
  27. package/fesm2022/anguless-angulux-card.mjs +311 -0
  28. package/fesm2022/anguless-angulux-card.mjs.map +1 -0
  29. package/fesm2022/anguless-angulux-chart.mjs +268 -0
  30. package/fesm2022/anguless-angulux-chart.mjs.map +1 -0
  31. package/fesm2022/anguless-angulux-checkbox.mjs +469 -0
  32. package/fesm2022/anguless-angulux-checkbox.mjs.map +1 -0
  33. package/fesm2022/anguless-angulux-chip.mjs +376 -0
  34. package/fesm2022/anguless-angulux-chip.mjs.map +1 -0
  35. package/fesm2022/anguless-angulux-colorpicker.mjs +807 -0
  36. package/fesm2022/anguless-angulux-colorpicker.mjs.map +1 -0
  37. package/fesm2022/anguless-angulux-config.mjs +309 -0
  38. package/fesm2022/anguless-angulux-config.mjs.map +1 -0
  39. package/fesm2022/anguless-angulux-confirmdialog.mjs +858 -0
  40. package/fesm2022/anguless-angulux-confirmdialog.mjs.map +1 -0
  41. package/fesm2022/anguless-angulux-datepicker.mjs +4441 -0
  42. package/fesm2022/anguless-angulux-datepicker.mjs.map +1 -0
  43. package/fesm2022/anguless-angulux-dialog.mjs +1420 -0
  44. package/fesm2022/anguless-angulux-dialog.mjs.map +1 -0
  45. package/fesm2022/anguless-angulux-divider.mjs +160 -0
  46. package/fesm2022/anguless-angulux-divider.mjs.map +1 -0
  47. package/fesm2022/anguless-angulux-dom.mjs +778 -0
  48. package/fesm2022/anguless-angulux-dom.mjs.map +1 -0
  49. package/fesm2022/anguless-angulux-drawer.mjs +782 -0
  50. package/fesm2022/anguless-angulux-drawer.mjs.map +1 -0
  51. package/fesm2022/anguless-angulux-fileupload.mjs +1580 -0
  52. package/fesm2022/anguless-angulux-fileupload.mjs.map +1 -0
  53. package/fesm2022/anguless-angulux-fluid.mjs +87 -0
  54. package/fesm2022/anguless-angulux-fluid.mjs.map +1 -0
  55. package/fesm2022/anguless-angulux-focustrap.mjs +108 -0
  56. package/fesm2022/anguless-angulux-focustrap.mjs.map +1 -0
  57. package/fesm2022/anguless-angulux-iconfield.mjs +112 -0
  58. package/fesm2022/anguless-angulux-iconfield.mjs.map +1 -0
  59. package/fesm2022/anguless-angulux-icons-angledoubledown.mjs +38 -0
  60. package/fesm2022/anguless-angulux-icons-angledoubledown.mjs.map +1 -0
  61. package/fesm2022/anguless-angulux-icons-angledoubleleft.mjs +38 -0
  62. package/fesm2022/anguless-angulux-icons-angledoubleleft.mjs.map +1 -0
  63. package/fesm2022/anguless-angulux-icons-angledoubleright.mjs +38 -0
  64. package/fesm2022/anguless-angulux-icons-angledoubleright.mjs.map +1 -0
  65. package/fesm2022/anguless-angulux-icons-angledoubleup.mjs +38 -0
  66. package/fesm2022/anguless-angulux-icons-angledoubleup.mjs.map +1 -0
  67. package/fesm2022/anguless-angulux-icons-angledown.mjs +34 -0
  68. package/fesm2022/anguless-angulux-icons-angledown.mjs.map +1 -0
  69. package/fesm2022/anguless-angulux-icons-angleleft.mjs +34 -0
  70. package/fesm2022/anguless-angulux-icons-angleleft.mjs.map +1 -0
  71. package/fesm2022/anguless-angulux-icons-angleright.mjs +34 -0
  72. package/fesm2022/anguless-angulux-icons-angleright.mjs.map +1 -0
  73. package/fesm2022/anguless-angulux-icons-angleup.mjs +34 -0
  74. package/fesm2022/anguless-angulux-icons-angleup.mjs.map +1 -0
  75. package/fesm2022/anguless-angulux-icons-arrowdown.mjs +57 -0
  76. package/fesm2022/anguless-angulux-icons-arrowdown.mjs.map +1 -0
  77. package/fesm2022/anguless-angulux-icons-arrowdownleft.mjs +34 -0
  78. package/fesm2022/anguless-angulux-icons-arrowdownleft.mjs.map +1 -0
  79. package/fesm2022/anguless-angulux-icons-arrowdownright.mjs +34 -0
  80. package/fesm2022/anguless-angulux-icons-arrowdownright.mjs.map +1 -0
  81. package/fesm2022/anguless-angulux-icons-arrowleft.mjs +57 -0
  82. package/fesm2022/anguless-angulux-icons-arrowleft.mjs.map +1 -0
  83. package/fesm2022/anguless-angulux-icons-arrowright.mjs +38 -0
  84. package/fesm2022/anguless-angulux-icons-arrowright.mjs.map +1 -0
  85. package/fesm2022/anguless-angulux-icons-arrowup.mjs +57 -0
  86. package/fesm2022/anguless-angulux-icons-arrowup.mjs.map +1 -0
  87. package/fesm2022/anguless-angulux-icons-ban.mjs +53 -0
  88. package/fesm2022/anguless-angulux-icons-ban.mjs.map +1 -0
  89. package/fesm2022/anguless-angulux-icons-bars.mjs +38 -0
  90. package/fesm2022/anguless-angulux-icons-bars.mjs.map +1 -0
  91. package/fesm2022/anguless-angulux-icons-baseicon.mjs +101 -0
  92. package/fesm2022/anguless-angulux-icons-baseicon.mjs.map +1 -0
  93. package/fesm2022/anguless-angulux-icons-blank.mjs +24 -0
  94. package/fesm2022/anguless-angulux-icons-blank.mjs.map +1 -0
  95. package/fesm2022/anguless-angulux-icons-calendar.mjs +34 -0
  96. package/fesm2022/anguless-angulux-icons-calendar.mjs.map +1 -0
  97. package/fesm2022/anguless-angulux-icons-caretleft.mjs +34 -0
  98. package/fesm2022/anguless-angulux-icons-caretleft.mjs.map +1 -0
  99. package/fesm2022/anguless-angulux-icons-caretright.mjs +34 -0
  100. package/fesm2022/anguless-angulux-icons-caretright.mjs.map +1 -0
  101. package/fesm2022/anguless-angulux-icons-check.mjs +34 -0
  102. package/fesm2022/anguless-angulux-icons-check.mjs.map +1 -0
  103. package/fesm2022/anguless-angulux-icons-chevrondown.mjs +34 -0
  104. package/fesm2022/anguless-angulux-icons-chevrondown.mjs.map +1 -0
  105. package/fesm2022/anguless-angulux-icons-chevronleft.mjs +34 -0
  106. package/fesm2022/anguless-angulux-icons-chevronleft.mjs.map +1 -0
  107. package/fesm2022/anguless-angulux-icons-chevronright.mjs +34 -0
  108. package/fesm2022/anguless-angulux-icons-chevronright.mjs.map +1 -0
  109. package/fesm2022/anguless-angulux-icons-chevronup.mjs +34 -0
  110. package/fesm2022/anguless-angulux-icons-chevronup.mjs.map +1 -0
  111. package/fesm2022/anguless-angulux-icons-exclamationtriangle.mjs +69 -0
  112. package/fesm2022/anguless-angulux-icons-exclamationtriangle.mjs.map +1 -0
  113. package/fesm2022/anguless-angulux-icons-eye.mjs +38 -0
  114. package/fesm2022/anguless-angulux-icons-eye.mjs.map +1 -0
  115. package/fesm2022/anguless-angulux-icons-eyeslash.mjs +57 -0
  116. package/fesm2022/anguless-angulux-icons-eyeslash.mjs.map +1 -0
  117. package/fesm2022/anguless-angulux-icons-filter.mjs +53 -0
  118. package/fesm2022/anguless-angulux-icons-filter.mjs.map +1 -0
  119. package/fesm2022/anguless-angulux-icons-filterfill.mjs +34 -0
  120. package/fesm2022/anguless-angulux-icons-filterfill.mjs.map +1 -0
  121. package/fesm2022/anguless-angulux-icons-filterslash.mjs +57 -0
  122. package/fesm2022/anguless-angulux-icons-filterslash.mjs.map +1 -0
  123. package/fesm2022/anguless-angulux-icons-home.mjs +57 -0
  124. package/fesm2022/anguless-angulux-icons-home.mjs.map +1 -0
  125. package/fesm2022/anguless-angulux-icons-infocircle.mjs +57 -0
  126. package/fesm2022/anguless-angulux-icons-infocircle.mjs.map +1 -0
  127. package/fesm2022/anguless-angulux-icons-minus.mjs +34 -0
  128. package/fesm2022/anguless-angulux-icons-minus.mjs.map +1 -0
  129. package/fesm2022/anguless-angulux-icons-pencil.mjs +53 -0
  130. package/fesm2022/anguless-angulux-icons-pencil.mjs.map +1 -0
  131. package/fesm2022/anguless-angulux-icons-plus.mjs +53 -0
  132. package/fesm2022/anguless-angulux-icons-plus.mjs.map +1 -0
  133. package/fesm2022/anguless-angulux-icons-refresh.mjs +57 -0
  134. package/fesm2022/anguless-angulux-icons-refresh.mjs.map +1 -0
  135. package/fesm2022/anguless-angulux-icons-search.mjs +57 -0
  136. package/fesm2022/anguless-angulux-icons-search.mjs.map +1 -0
  137. package/fesm2022/anguless-angulux-icons-searchminus.mjs +57 -0
  138. package/fesm2022/anguless-angulux-icons-searchminus.mjs.map +1 -0
  139. package/fesm2022/anguless-angulux-icons-searchplus.mjs +57 -0
  140. package/fesm2022/anguless-angulux-icons-searchplus.mjs.map +1 -0
  141. package/fesm2022/anguless-angulux-icons-sortalt.mjs +65 -0
  142. package/fesm2022/anguless-angulux-icons-sortalt.mjs.map +1 -0
  143. package/fesm2022/anguless-angulux-icons-sortamountdown.mjs +53 -0
  144. package/fesm2022/anguless-angulux-icons-sortamountdown.mjs.map +1 -0
  145. package/fesm2022/anguless-angulux-icons-sortamountupalt.mjs +53 -0
  146. package/fesm2022/anguless-angulux-icons-sortamountupalt.mjs.map +1 -0
  147. package/fesm2022/anguless-angulux-icons-spinner.mjs +53 -0
  148. package/fesm2022/anguless-angulux-icons-spinner.mjs.map +1 -0
  149. package/fesm2022/anguless-angulux-icons-star.mjs +53 -0
  150. package/fesm2022/anguless-angulux-icons-star.mjs.map +1 -0
  151. package/fesm2022/anguless-angulux-icons-starfill.mjs +53 -0
  152. package/fesm2022/anguless-angulux-icons-starfill.mjs.map +1 -0
  153. package/fesm2022/anguless-angulux-icons-thlarge.mjs +57 -0
  154. package/fesm2022/anguless-angulux-icons-thlarge.mjs.map +1 -0
  155. package/fesm2022/anguless-angulux-icons-times.mjs +34 -0
  156. package/fesm2022/anguless-angulux-icons-times.mjs.map +1 -0
  157. package/fesm2022/anguless-angulux-icons-timescircle.mjs +57 -0
  158. package/fesm2022/anguless-angulux-icons-timescircle.mjs.map +1 -0
  159. package/fesm2022/anguless-angulux-icons-trash.mjs +57 -0
  160. package/fesm2022/anguless-angulux-icons-trash.mjs.map +1 -0
  161. package/fesm2022/anguless-angulux-icons-undo.mjs +57 -0
  162. package/fesm2022/anguless-angulux-icons-undo.mjs.map +1 -0
  163. package/fesm2022/anguless-angulux-icons-upload.mjs +57 -0
  164. package/fesm2022/anguless-angulux-icons-upload.mjs.map +1 -0
  165. package/fesm2022/anguless-angulux-icons-windowmaximize.mjs +57 -0
  166. package/fesm2022/anguless-angulux-icons-windowmaximize.mjs.map +1 -0
  167. package/fesm2022/anguless-angulux-icons-windowminimize.mjs +57 -0
  168. package/fesm2022/anguless-angulux-icons-windowminimize.mjs.map +1 -0
  169. package/fesm2022/anguless-angulux-icons.mjs +63 -0
  170. package/fesm2022/anguless-angulux-icons.mjs.map +1 -0
  171. package/fesm2022/anguless-angulux-inputicon.mjs +84 -0
  172. package/fesm2022/anguless-angulux-inputicon.mjs.map +1 -0
  173. package/fesm2022/anguless-angulux-inputnumber.mjs +1673 -0
  174. package/fesm2022/anguless-angulux-inputnumber.mjs.map +1 -0
  175. package/fesm2022/anguless-angulux-inputtext.mjs +199 -0
  176. package/fesm2022/anguless-angulux-inputtext.mjs.map +1 -0
  177. package/fesm2022/anguless-angulux-menu.mjs +1160 -0
  178. package/fesm2022/anguless-angulux-menu.mjs.map +1 -0
  179. package/fesm2022/anguless-angulux-message.mjs +409 -0
  180. package/fesm2022/anguless-angulux-message.mjs.map +1 -0
  181. package/fesm2022/anguless-angulux-motion.mjs +721 -0
  182. package/fesm2022/anguless-angulux-motion.mjs.map +1 -0
  183. package/fesm2022/anguless-angulux-multiselect.mjs +2712 -0
  184. package/fesm2022/anguless-angulux-multiselect.mjs.map +1 -0
  185. package/fesm2022/anguless-angulux-overlay.mjs +886 -0
  186. package/fesm2022/anguless-angulux-overlay.mjs.map +1 -0
  187. package/fesm2022/anguless-angulux-paginator.mjs +823 -0
  188. package/fesm2022/anguless-angulux-paginator.mjs.map +1 -0
  189. package/fesm2022/anguless-angulux-password.mjs +1181 -0
  190. package/fesm2022/anguless-angulux-password.mjs.map +1 -0
  191. package/fesm2022/anguless-angulux-popover.mjs +532 -0
  192. package/fesm2022/anguless-angulux-popover.mjs.map +1 -0
  193. package/fesm2022/anguless-angulux-progressbar.mjs +214 -0
  194. package/fesm2022/anguless-angulux-progressbar.mjs.map +1 -0
  195. package/fesm2022/anguless-angulux-progressspinner.mjs +146 -0
  196. package/fesm2022/anguless-angulux-progressspinner.mjs.map +1 -0
  197. package/fesm2022/anguless-angulux-radiobutton.mjs +381 -0
  198. package/fesm2022/anguless-angulux-radiobutton.mjs.map +1 -0
  199. package/fesm2022/anguless-angulux-ripple.mjs +194 -0
  200. package/fesm2022/anguless-angulux-ripple.mjs.map +1 -0
  201. package/fesm2022/anguless-angulux-scroller.mjs +1325 -0
  202. package/fesm2022/anguless-angulux-scroller.mjs.map +1 -0
  203. package/fesm2022/anguless-angulux-select.mjs +2408 -0
  204. package/fesm2022/anguless-angulux-select.mjs.map +1 -0
  205. package/fesm2022/anguless-angulux-selectbutton.mjs +434 -0
  206. package/fesm2022/anguless-angulux-selectbutton.mjs.map +1 -0
  207. package/fesm2022/anguless-angulux-skeleton.mjs +168 -0
  208. package/fesm2022/anguless-angulux-skeleton.mjs.map +1 -0
  209. package/fesm2022/anguless-angulux-splitbutton.mjs +643 -0
  210. package/fesm2022/anguless-angulux-splitbutton.mjs.map +1 -0
  211. package/fesm2022/anguless-angulux-table.mjs +7815 -0
  212. package/fesm2022/anguless-angulux-table.mjs.map +1 -0
  213. package/fesm2022/anguless-angulux-tabs.mjs +921 -0
  214. package/fesm2022/anguless-angulux-tabs.mjs.map +1 -0
  215. package/fesm2022/anguless-angulux-tag.mjs +196 -0
  216. package/fesm2022/anguless-angulux-tag.mjs.map +1 -0
  217. package/fesm2022/anguless-angulux-textarea.mjs +227 -0
  218. package/fesm2022/anguless-angulux-textarea.mjs.map +1 -0
  219. package/fesm2022/anguless-angulux-tieredmenu.mjs +1635 -0
  220. package/fesm2022/anguless-angulux-tieredmenu.mjs.map +1 -0
  221. package/fesm2022/anguless-angulux-timeline.mjs +248 -0
  222. package/fesm2022/anguless-angulux-timeline.mjs.map +1 -0
  223. package/fesm2022/anguless-angulux-toast.mjs +788 -0
  224. package/fesm2022/anguless-angulux-toast.mjs.map +1 -0
  225. package/fesm2022/anguless-angulux-togglebutton.mjs +391 -0
  226. package/fesm2022/anguless-angulux-togglebutton.mjs.map +1 -0
  227. package/fesm2022/anguless-angulux-toggleswitch.mjs +345 -0
  228. package/fesm2022/anguless-angulux-toggleswitch.mjs.map +1 -0
  229. package/fesm2022/anguless-angulux-tooltip.mjs +845 -0
  230. package/fesm2022/anguless-angulux-tooltip.mjs.map +1 -0
  231. package/fesm2022/anguless-angulux-treetable.mjs +5167 -0
  232. package/fesm2022/anguless-angulux-treetable.mjs.map +1 -0
  233. package/fesm2022/anguless-angulux-ts-helpers.mjs +4 -0
  234. package/fesm2022/anguless-angulux-ts-helpers.mjs.map +1 -0
  235. package/fesm2022/anguless-angulux-types-accordion.mjs +4 -0
  236. package/fesm2022/anguless-angulux-types-accordion.mjs.map +1 -0
  237. package/fesm2022/anguless-angulux-types-autocomplete.mjs +4 -0
  238. package/fesm2022/anguless-angulux-types-autocomplete.mjs.map +1 -0
  239. package/fesm2022/anguless-angulux-types-avatar.mjs +4 -0
  240. package/fesm2022/anguless-angulux-types-avatar.mjs.map +1 -0
  241. package/fesm2022/anguless-angulux-types-avatargroup.mjs +4 -0
  242. package/fesm2022/anguless-angulux-types-avatargroup.mjs.map +1 -0
  243. package/fesm2022/anguless-angulux-types-badge.mjs +4 -0
  244. package/fesm2022/anguless-angulux-types-badge.mjs.map +1 -0
  245. package/fesm2022/anguless-angulux-types-blockui.mjs +4 -0
  246. package/fesm2022/anguless-angulux-types-blockui.mjs.map +1 -0
  247. package/fesm2022/anguless-angulux-types-breadcrumb.mjs +4 -0
  248. package/fesm2022/anguless-angulux-types-breadcrumb.mjs.map +1 -0
  249. package/fesm2022/anguless-angulux-types-button.mjs +4 -0
  250. package/fesm2022/anguless-angulux-types-button.mjs.map +1 -0
  251. package/fesm2022/anguless-angulux-types-card.mjs +4 -0
  252. package/fesm2022/anguless-angulux-types-card.mjs.map +1 -0
  253. package/fesm2022/anguless-angulux-types-carousel.mjs +4 -0
  254. package/fesm2022/anguless-angulux-types-carousel.mjs.map +1 -0
  255. package/fesm2022/anguless-angulux-types-cascadeselect.mjs +4 -0
  256. package/fesm2022/anguless-angulux-types-cascadeselect.mjs.map +1 -0
  257. package/fesm2022/anguless-angulux-types-chart.mjs +4 -0
  258. package/fesm2022/anguless-angulux-types-chart.mjs.map +1 -0
  259. package/fesm2022/anguless-angulux-types-checkbox.mjs +4 -0
  260. package/fesm2022/anguless-angulux-types-checkbox.mjs.map +1 -0
  261. package/fesm2022/anguless-angulux-types-chip.mjs +4 -0
  262. package/fesm2022/anguless-angulux-types-chip.mjs.map +1 -0
  263. package/fesm2022/anguless-angulux-types-colorpicker.mjs +4 -0
  264. package/fesm2022/anguless-angulux-types-colorpicker.mjs.map +1 -0
  265. package/fesm2022/anguless-angulux-types-confirmdialog.mjs +4 -0
  266. package/fesm2022/anguless-angulux-types-confirmdialog.mjs.map +1 -0
  267. package/fesm2022/anguless-angulux-types-confirmpopup.mjs +4 -0
  268. package/fesm2022/anguless-angulux-types-confirmpopup.mjs.map +1 -0
  269. package/fesm2022/anguless-angulux-types-contextmenu.mjs +4 -0
  270. package/fesm2022/anguless-angulux-types-contextmenu.mjs.map +1 -0
  271. package/fesm2022/anguless-angulux-types-dataview.mjs +4 -0
  272. package/fesm2022/anguless-angulux-types-dataview.mjs.map +1 -0
  273. package/fesm2022/anguless-angulux-types-datepicker.mjs +4 -0
  274. package/fesm2022/anguless-angulux-types-datepicker.mjs.map +1 -0
  275. package/fesm2022/anguless-angulux-types-dialog.mjs +4 -0
  276. package/fesm2022/anguless-angulux-types-dialog.mjs.map +1 -0
  277. package/fesm2022/anguless-angulux-types-divider.mjs +4 -0
  278. package/fesm2022/anguless-angulux-types-divider.mjs.map +1 -0
  279. package/fesm2022/anguless-angulux-types-dock.mjs +4 -0
  280. package/fesm2022/anguless-angulux-types-dock.mjs.map +1 -0
  281. package/fesm2022/anguless-angulux-types-drawer.mjs +4 -0
  282. package/fesm2022/anguless-angulux-types-drawer.mjs.map +1 -0
  283. package/fesm2022/anguless-angulux-types-editor.mjs +4 -0
  284. package/fesm2022/anguless-angulux-types-editor.mjs.map +1 -0
  285. package/fesm2022/anguless-angulux-types-fieldset.mjs +4 -0
  286. package/fesm2022/anguless-angulux-types-fieldset.mjs.map +1 -0
  287. package/fesm2022/anguless-angulux-types-fileupload.mjs +4 -0
  288. package/fesm2022/anguless-angulux-types-fileupload.mjs.map +1 -0
  289. package/fesm2022/anguless-angulux-types-floatlabel.mjs +4 -0
  290. package/fesm2022/anguless-angulux-types-floatlabel.mjs.map +1 -0
  291. package/fesm2022/anguless-angulux-types-fluid.mjs +4 -0
  292. package/fesm2022/anguless-angulux-types-fluid.mjs.map +1 -0
  293. package/fesm2022/anguless-angulux-types-galleria.mjs +4 -0
  294. package/fesm2022/anguless-angulux-types-galleria.mjs.map +1 -0
  295. package/fesm2022/anguless-angulux-types-iconfield.mjs +4 -0
  296. package/fesm2022/anguless-angulux-types-iconfield.mjs.map +1 -0
  297. package/fesm2022/anguless-angulux-types-iftalabel.mjs +4 -0
  298. package/fesm2022/anguless-angulux-types-iftalabel.mjs.map +1 -0
  299. package/fesm2022/anguless-angulux-types-image.mjs +4 -0
  300. package/fesm2022/anguless-angulux-types-image.mjs.map +1 -0
  301. package/fesm2022/anguless-angulux-types-imagecompare.mjs +4 -0
  302. package/fesm2022/anguless-angulux-types-imagecompare.mjs.map +1 -0
  303. package/fesm2022/anguless-angulux-types-inplace.mjs +4 -0
  304. package/fesm2022/anguless-angulux-types-inplace.mjs.map +1 -0
  305. package/fesm2022/anguless-angulux-types-inputgroup.mjs +4 -0
  306. package/fesm2022/anguless-angulux-types-inputgroup.mjs.map +1 -0
  307. package/fesm2022/anguless-angulux-types-inputgroupaddon.mjs +4 -0
  308. package/fesm2022/anguless-angulux-types-inputgroupaddon.mjs.map +1 -0
  309. package/fesm2022/anguless-angulux-types-inputicon.mjs +4 -0
  310. package/fesm2022/anguless-angulux-types-inputicon.mjs.map +1 -0
  311. package/fesm2022/anguless-angulux-types-inputmask.mjs +4 -0
  312. package/fesm2022/anguless-angulux-types-inputmask.mjs.map +1 -0
  313. package/fesm2022/anguless-angulux-types-inputnumber.mjs +4 -0
  314. package/fesm2022/anguless-angulux-types-inputnumber.mjs.map +1 -0
  315. package/fesm2022/anguless-angulux-types-inputotp.mjs +4 -0
  316. package/fesm2022/anguless-angulux-types-inputotp.mjs.map +1 -0
  317. package/fesm2022/anguless-angulux-types-inputtext.mjs +4 -0
  318. package/fesm2022/anguless-angulux-types-inputtext.mjs.map +1 -0
  319. package/fesm2022/anguless-angulux-types-knob.mjs +4 -0
  320. package/fesm2022/anguless-angulux-types-knob.mjs.map +1 -0
  321. package/fesm2022/anguless-angulux-types-listbox.mjs +4 -0
  322. package/fesm2022/anguless-angulux-types-listbox.mjs.map +1 -0
  323. package/fesm2022/anguless-angulux-types-megamenu.mjs +4 -0
  324. package/fesm2022/anguless-angulux-types-megamenu.mjs.map +1 -0
  325. package/fesm2022/anguless-angulux-types-menu.mjs +4 -0
  326. package/fesm2022/anguless-angulux-types-menu.mjs.map +1 -0
  327. package/fesm2022/anguless-angulux-types-menubar.mjs +4 -0
  328. package/fesm2022/anguless-angulux-types-menubar.mjs.map +1 -0
  329. package/fesm2022/anguless-angulux-types-message.mjs +4 -0
  330. package/fesm2022/anguless-angulux-types-message.mjs.map +1 -0
  331. package/fesm2022/anguless-angulux-types-metergroup.mjs +4 -0
  332. package/fesm2022/anguless-angulux-types-metergroup.mjs.map +1 -0
  333. package/fesm2022/anguless-angulux-types-motion.mjs +4 -0
  334. package/fesm2022/anguless-angulux-types-motion.mjs.map +1 -0
  335. package/fesm2022/anguless-angulux-types-multiselect.mjs +4 -0
  336. package/fesm2022/anguless-angulux-types-multiselect.mjs.map +1 -0
  337. package/fesm2022/anguless-angulux-types-orderlist.mjs +4 -0
  338. package/fesm2022/anguless-angulux-types-orderlist.mjs.map +1 -0
  339. package/fesm2022/anguless-angulux-types-organizationchart.mjs +4 -0
  340. package/fesm2022/anguless-angulux-types-organizationchart.mjs.map +1 -0
  341. package/fesm2022/anguless-angulux-types-overlay.mjs +4 -0
  342. package/fesm2022/anguless-angulux-types-overlay.mjs.map +1 -0
  343. package/fesm2022/anguless-angulux-types-overlaybadge.mjs +4 -0
  344. package/fesm2022/anguless-angulux-types-overlaybadge.mjs.map +1 -0
  345. package/fesm2022/anguless-angulux-types-paginator.mjs +4 -0
  346. package/fesm2022/anguless-angulux-types-paginator.mjs.map +1 -0
  347. package/fesm2022/anguless-angulux-types-panel.mjs +4 -0
  348. package/fesm2022/anguless-angulux-types-panel.mjs.map +1 -0
  349. package/fesm2022/anguless-angulux-types-panelmenu.mjs +4 -0
  350. package/fesm2022/anguless-angulux-types-panelmenu.mjs.map +1 -0
  351. package/fesm2022/anguless-angulux-types-password.mjs +4 -0
  352. package/fesm2022/anguless-angulux-types-password.mjs.map +1 -0
  353. package/fesm2022/anguless-angulux-types-picklist.mjs +4 -0
  354. package/fesm2022/anguless-angulux-types-picklist.mjs.map +1 -0
  355. package/fesm2022/anguless-angulux-types-popover.mjs +4 -0
  356. package/fesm2022/anguless-angulux-types-popover.mjs.map +1 -0
  357. package/fesm2022/anguless-angulux-types-progressbar.mjs +4 -0
  358. package/fesm2022/anguless-angulux-types-progressbar.mjs.map +1 -0
  359. package/fesm2022/anguless-angulux-types-progressspinner.mjs +4 -0
  360. package/fesm2022/anguless-angulux-types-progressspinner.mjs.map +1 -0
  361. package/fesm2022/anguless-angulux-types-radiobutton.mjs +4 -0
  362. package/fesm2022/anguless-angulux-types-radiobutton.mjs.map +1 -0
  363. package/fesm2022/anguless-angulux-types-rating.mjs +4 -0
  364. package/fesm2022/anguless-angulux-types-rating.mjs.map +1 -0
  365. package/fesm2022/anguless-angulux-types-scroller.mjs +4 -0
  366. package/fesm2022/anguless-angulux-types-scroller.mjs.map +1 -0
  367. package/fesm2022/anguless-angulux-types-scrollpanel.mjs +4 -0
  368. package/fesm2022/anguless-angulux-types-scrollpanel.mjs.map +1 -0
  369. package/fesm2022/anguless-angulux-types-scrolltop.mjs +4 -0
  370. package/fesm2022/anguless-angulux-types-scrolltop.mjs.map +1 -0
  371. package/fesm2022/anguless-angulux-types-select.mjs +4 -0
  372. package/fesm2022/anguless-angulux-types-select.mjs.map +1 -0
  373. package/fesm2022/anguless-angulux-types-selectbutton.mjs +4 -0
  374. package/fesm2022/anguless-angulux-types-selectbutton.mjs.map +1 -0
  375. package/fesm2022/anguless-angulux-types-skeleton.mjs +4 -0
  376. package/fesm2022/anguless-angulux-types-skeleton.mjs.map +1 -0
  377. package/fesm2022/anguless-angulux-types-slider.mjs +4 -0
  378. package/fesm2022/anguless-angulux-types-slider.mjs.map +1 -0
  379. package/fesm2022/anguless-angulux-types-speeddial.mjs +4 -0
  380. package/fesm2022/anguless-angulux-types-speeddial.mjs.map +1 -0
  381. package/fesm2022/anguless-angulux-types-splitbutton.mjs +4 -0
  382. package/fesm2022/anguless-angulux-types-splitbutton.mjs.map +1 -0
  383. package/fesm2022/anguless-angulux-types-splitter.mjs +4 -0
  384. package/fesm2022/anguless-angulux-types-splitter.mjs.map +1 -0
  385. package/fesm2022/anguless-angulux-types-stepper.mjs +4 -0
  386. package/fesm2022/anguless-angulux-types-stepper.mjs.map +1 -0
  387. package/fesm2022/anguless-angulux-types-table.mjs +4 -0
  388. package/fesm2022/anguless-angulux-types-table.mjs.map +1 -0
  389. package/fesm2022/anguless-angulux-types-tabs.mjs +4 -0
  390. package/fesm2022/anguless-angulux-types-tabs.mjs.map +1 -0
  391. package/fesm2022/anguless-angulux-types-tag.mjs +4 -0
  392. package/fesm2022/anguless-angulux-types-tag.mjs.map +1 -0
  393. package/fesm2022/anguless-angulux-types-terminal.mjs +4 -0
  394. package/fesm2022/anguless-angulux-types-terminal.mjs.map +1 -0
  395. package/fesm2022/anguless-angulux-types-textarea.mjs +4 -0
  396. package/fesm2022/anguless-angulux-types-textarea.mjs.map +1 -0
  397. package/fesm2022/anguless-angulux-types-tieredmenu.mjs +4 -0
  398. package/fesm2022/anguless-angulux-types-tieredmenu.mjs.map +1 -0
  399. package/fesm2022/anguless-angulux-types-timeline.mjs +4 -0
  400. package/fesm2022/anguless-angulux-types-timeline.mjs.map +1 -0
  401. package/fesm2022/anguless-angulux-types-toast.mjs +4 -0
  402. package/fesm2022/anguless-angulux-types-toast.mjs.map +1 -0
  403. package/fesm2022/anguless-angulux-types-togglebutton.mjs +4 -0
  404. package/fesm2022/anguless-angulux-types-togglebutton.mjs.map +1 -0
  405. package/fesm2022/anguless-angulux-types-toggleswitch.mjs +4 -0
  406. package/fesm2022/anguless-angulux-types-toggleswitch.mjs.map +1 -0
  407. package/fesm2022/anguless-angulux-types-toolbar.mjs +4 -0
  408. package/fesm2022/anguless-angulux-types-toolbar.mjs.map +1 -0
  409. package/fesm2022/anguless-angulux-types-tooltip.mjs +4 -0
  410. package/fesm2022/anguless-angulux-types-tooltip.mjs.map +1 -0
  411. package/fesm2022/anguless-angulux-types-tree.mjs +4 -0
  412. package/fesm2022/anguless-angulux-types-tree.mjs.map +1 -0
  413. package/fesm2022/anguless-angulux-types-treeselect.mjs +4 -0
  414. package/fesm2022/anguless-angulux-types-treeselect.mjs.map +1 -0
  415. package/fesm2022/anguless-angulux-types-treetable.mjs +4 -0
  416. package/fesm2022/anguless-angulux-types-treetable.mjs.map +1 -0
  417. package/fesm2022/anguless-angulux-usestyle.mjs +54 -0
  418. package/fesm2022/anguless-angulux-usestyle.mjs.map +1 -0
  419. package/fesm2022/anguless-angulux-utils.mjs +332 -0
  420. package/fesm2022/anguless-angulux-utils.mjs.map +1 -0
  421. package/fesm2022/anguless-angulux.mjs +6 -0
  422. package/fesm2022/anguless-angulux.mjs.map +1 -0
  423. package/package.json +904 -0
  424. package/types/anguless-angulux-api.d.ts +1976 -0
  425. package/types/anguless-angulux-autofocus.d.ts +31 -0
  426. package/types/anguless-angulux-avatar.d.ts +138 -0
  427. package/types/anguless-angulux-avatargroup.d.ts +64 -0
  428. package/types/anguless-angulux-badge.d.ts +182 -0
  429. package/types/anguless-angulux-base.d.ts +58 -0
  430. package/types/anguless-angulux-basecomponent.d.ts +175 -0
  431. package/types/anguless-angulux-baseeditableholder.d.ts +45 -0
  432. package/types/anguless-angulux-baseinput.d.ts +73 -0
  433. package/types/anguless-angulux-basemodelholder.d.ts +12 -0
  434. package/types/anguless-angulux-bind.d.ts +38 -0
  435. package/types/anguless-angulux-button.d.ts +489 -0
  436. package/types/anguless-angulux-card.d.ts +155 -0
  437. package/types/anguless-angulux-chart.d.ts +133 -0
  438. package/types/anguless-angulux-checkbox.d.ts +229 -0
  439. package/types/anguless-angulux-chip.d.ts +165 -0
  440. package/types/anguless-angulux-colorpicker.d.ts +315 -0
  441. package/types/anguless-angulux-config.d.ts +268 -0
  442. package/types/anguless-angulux-confirmdialog.d.ts +358 -0
  443. package/types/anguless-angulux-datepicker.d.ts +1015 -0
  444. package/types/anguless-angulux-dialog.d.ts +553 -0
  445. package/types/anguless-angulux-divider.d.ts +120 -0
  446. package/types/anguless-angulux-dom.d.ts +109 -0
  447. package/types/anguless-angulux-drawer.d.ts +301 -0
  448. package/types/anguless-angulux-fileupload.d.ts +560 -0
  449. package/types/anguless-angulux-fluid.d.ts +52 -0
  450. package/types/anguless-angulux-focustrap.d.ts +36 -0
  451. package/types/anguless-angulux-iconfield.d.ts +71 -0
  452. package/types/anguless-angulux-icons-angledoubledown.d.ts +9 -0
  453. package/types/anguless-angulux-icons-angledoubleleft.d.ts +9 -0
  454. package/types/anguless-angulux-icons-angledoubleright.d.ts +9 -0
  455. package/types/anguless-angulux-icons-angledoubleup.d.ts +9 -0
  456. package/types/anguless-angulux-icons-angledown.d.ts +9 -0
  457. package/types/anguless-angulux-icons-angleleft.d.ts +9 -0
  458. package/types/anguless-angulux-icons-angleright.d.ts +9 -0
  459. package/types/anguless-angulux-icons-angleup.d.ts +9 -0
  460. package/types/anguless-angulux-icons-arrowdown.d.ts +11 -0
  461. package/types/anguless-angulux-icons-arrowdownleft.d.ts +9 -0
  462. package/types/anguless-angulux-icons-arrowdownright.d.ts +9 -0
  463. package/types/anguless-angulux-icons-arrowleft.d.ts +11 -0
  464. package/types/anguless-angulux-icons-arrowright.d.ts +9 -0
  465. package/types/anguless-angulux-icons-arrowup.d.ts +11 -0
  466. package/types/anguless-angulux-icons-ban.d.ts +11 -0
  467. package/types/anguless-angulux-icons-bars.d.ts +9 -0
  468. package/types/anguless-angulux-icons-baseicon.d.ts +31 -0
  469. package/types/anguless-angulux-icons-blank.d.ts +9 -0
  470. package/types/anguless-angulux-icons-calendar.d.ts +9 -0
  471. package/types/anguless-angulux-icons-caretleft.d.ts +9 -0
  472. package/types/anguless-angulux-icons-caretright.d.ts +9 -0
  473. package/types/anguless-angulux-icons-check.d.ts +9 -0
  474. package/types/anguless-angulux-icons-chevrondown.d.ts +9 -0
  475. package/types/anguless-angulux-icons-chevronleft.d.ts +9 -0
  476. package/types/anguless-angulux-icons-chevronright.d.ts +9 -0
  477. package/types/anguless-angulux-icons-chevronup.d.ts +9 -0
  478. package/types/anguless-angulux-icons-exclamationtriangle.d.ts +11 -0
  479. package/types/anguless-angulux-icons-eye.d.ts +9 -0
  480. package/types/anguless-angulux-icons-eyeslash.d.ts +11 -0
  481. package/types/anguless-angulux-icons-filter.d.ts +11 -0
  482. package/types/anguless-angulux-icons-filterfill.d.ts +9 -0
  483. package/types/anguless-angulux-icons-filterslash.d.ts +11 -0
  484. package/types/anguless-angulux-icons-home.d.ts +11 -0
  485. package/types/anguless-angulux-icons-infocircle.d.ts +11 -0
  486. package/types/anguless-angulux-icons-minus.d.ts +9 -0
  487. package/types/anguless-angulux-icons-pencil.d.ts +11 -0
  488. package/types/anguless-angulux-icons-plus.d.ts +11 -0
  489. package/types/anguless-angulux-icons-refresh.d.ts +11 -0
  490. package/types/anguless-angulux-icons-search.d.ts +11 -0
  491. package/types/anguless-angulux-icons-searchminus.d.ts +11 -0
  492. package/types/anguless-angulux-icons-searchplus.d.ts +11 -0
  493. package/types/anguless-angulux-icons-sortalt.d.ts +11 -0
  494. package/types/anguless-angulux-icons-sortamountdown.d.ts +11 -0
  495. package/types/anguless-angulux-icons-sortamountupalt.d.ts +11 -0
  496. package/types/anguless-angulux-icons-spinner.d.ts +11 -0
  497. package/types/anguless-angulux-icons-star.d.ts +11 -0
  498. package/types/anguless-angulux-icons-starfill.d.ts +11 -0
  499. package/types/anguless-angulux-icons-thlarge.d.ts +11 -0
  500. package/types/anguless-angulux-icons-times.d.ts +9 -0
  501. package/types/anguless-angulux-icons-timescircle.d.ts +11 -0
  502. package/types/anguless-angulux-icons-trash.d.ts +11 -0
  503. package/types/anguless-angulux-icons-undo.d.ts +11 -0
  504. package/types/anguless-angulux-icons-upload.d.ts +11 -0
  505. package/types/anguless-angulux-icons-windowmaximize.d.ts +11 -0
  506. package/types/anguless-angulux-icons-windowminimize.d.ts +11 -0
  507. package/types/anguless-angulux-icons.d.ts +53 -0
  508. package/types/anguless-angulux-inputicon.d.ts +44 -0
  509. package/types/anguless-angulux-inputnumber.d.ts +434 -0
  510. package/types/anguless-angulux-inputtext.d.ts +115 -0
  511. package/types/anguless-angulux-menu.d.ts +362 -0
  512. package/types/anguless-angulux-message.d.ts +211 -0
  513. package/types/anguless-angulux-motion.d.ts +398 -0
  514. package/types/anguless-angulux-multiselect.d.ts +902 -0
  515. package/types/anguless-angulux-overlay.d.ts +355 -0
  516. package/types/anguless-angulux-paginator.d.ts +361 -0
  517. package/types/anguless-angulux-password.d.ts +492 -0
  518. package/types/anguless-angulux-popover.d.ts +202 -0
  519. package/types/anguless-angulux-progressbar.d.ts +122 -0
  520. package/types/anguless-angulux-progressspinner.d.ts +90 -0
  521. package/types/anguless-angulux-radiobutton.d.ts +191 -0
  522. package/types/anguless-angulux-ripple.d.ts +61 -0
  523. package/types/anguless-angulux-scroller.d.ts +450 -0
  524. package/types/anguless-angulux-select.d.ts +790 -0
  525. package/types/anguless-angulux-selectbutton.d.ts +184 -0
  526. package/types/anguless-angulux-skeleton.d.ts +102 -0
  527. package/types/anguless-angulux-splitbutton.d.ts +292 -0
  528. package/types/anguless-angulux-table.d.ts +2087 -0
  529. package/types/anguless-angulux-tabs.d.ts +358 -0
  530. package/types/anguless-angulux-tag.d.ts +113 -0
  531. package/types/anguless-angulux-textarea.d.ts +125 -0
  532. package/types/anguless-angulux-tieredmenu.d.ts +430 -0
  533. package/types/anguless-angulux-timeline.d.ts +139 -0
  534. package/types/anguless-angulux-toast.d.ts +301 -0
  535. package/types/anguless-angulux-togglebutton.d.ts +203 -0
  536. package/types/anguless-angulux-toggleswitch.d.ts +166 -0
  537. package/types/anguless-angulux-tooltip.d.ts +284 -0
  538. package/types/anguless-angulux-treetable.d.ts +1276 -0
  539. package/types/anguless-angulux-ts-helpers.d.ts +6 -0
  540. package/types/anguless-angulux-types-accordion.d.ts +97 -0
  541. package/types/anguless-angulux-types-autocomplete.d.ts +312 -0
  542. package/types/anguless-angulux-types-avatar.d.ts +40 -0
  543. package/types/anguless-angulux-types-avatargroup.d.ts +28 -0
  544. package/types/anguless-angulux-types-badge.d.ts +26 -0
  545. package/types/anguless-angulux-types-blockui.d.ts +39 -0
  546. package/types/anguless-angulux-types-breadcrumb.d.ts +96 -0
  547. package/types/anguless-angulux-types-button.d.ts +124 -0
  548. package/types/anguless-angulux-types-card.d.ts +75 -0
  549. package/types/anguless-angulux-types-carousel.d.ts +143 -0
  550. package/types/anguless-angulux-types-cascadeselect.d.ts +215 -0
  551. package/types/anguless-angulux-types-chart.d.ts +32 -0
  552. package/types/anguless-angulux-types-checkbox.d.ts +81 -0
  553. package/types/anguless-angulux-types-chip.d.ts +71 -0
  554. package/types/anguless-angulux-types-colorpicker.d.ts +78 -0
  555. package/types/anguless-angulux-types-confirmdialog.d.ts +147 -0
  556. package/types/anguless-angulux-types-confirmpopup.d.ts +105 -0
  557. package/types/anguless-angulux-types-contextmenu.d.ts +102 -0
  558. package/types/anguless-angulux-types-dataview.d.ts +253 -0
  559. package/types/anguless-angulux-types-datepicker.d.ts +521 -0
  560. package/types/anguless-angulux-types-dialog.d.ts +107 -0
  561. package/types/anguless-angulux-types-divider.d.ts +28 -0
  562. package/types/anguless-angulux-types-dock.d.ts +70 -0
  563. package/types/anguless-angulux-types-drawer.d.ts +82 -0
  564. package/types/anguless-angulux-types-editor.d.ts +210 -0
  565. package/types/anguless-angulux-types-fieldset.d.ts +101 -0
  566. package/types/anguless-angulux-types-fileupload.d.ts +360 -0
  567. package/types/anguless-angulux-types-floatlabel.d.ts +26 -0
  568. package/types/anguless-angulux-types-fluid.d.ts +28 -0
  569. package/types/anguless-angulux-types-galleria.d.ts +250 -0
  570. package/types/anguless-angulux-types-iconfield.d.ts +26 -0
  571. package/types/anguless-angulux-types-iftalabel.d.ts +26 -0
  572. package/types/anguless-angulux-types-image.d.ts +144 -0
  573. package/types/anguless-angulux-types-imagecompare.d.ts +43 -0
  574. package/types/anguless-angulux-types-inplace.d.ts +72 -0
  575. package/types/anguless-angulux-types-inputgroup.d.ts +28 -0
  576. package/types/anguless-angulux-types-inputgroupaddon.d.ts +28 -0
  577. package/types/anguless-angulux-types-inputicon.d.ts +26 -0
  578. package/types/anguless-angulux-types-inputmask.d.ts +56 -0
  579. package/types/anguless-angulux-types-inputnumber.d.ts +95 -0
  580. package/types/anguless-angulux-types-inputotp.d.ts +101 -0
  581. package/types/anguless-angulux-types-inputtext.d.ts +24 -0
  582. package/types/anguless-angulux-types-knob.d.ts +40 -0
  583. package/types/anguless-angulux-types-listbox.d.ts +359 -0
  584. package/types/anguless-angulux-types-megamenu.d.ts +138 -0
  585. package/types/anguless-angulux-types-menu.d.ts +114 -0
  586. package/types/anguless-angulux-types-menubar.d.ts +124 -0
  587. package/types/anguless-angulux-types-message.d.ts +87 -0
  588. package/types/anguless-angulux-types-metergroup.d.ts +176 -0
  589. package/types/anguless-angulux-types-motion.d.ts +26 -0
  590. package/types/anguless-angulux-types-multiselect.d.ts +414 -0
  591. package/types/anguless-angulux-types-orderlist.d.ts +173 -0
  592. package/types/anguless-angulux-types-organizationchart.d.ts +138 -0
  593. package/types/anguless-angulux-types-overlay.d.ts +60 -0
  594. package/types/anguless-angulux-types-overlaybadge.d.ts +34 -0
  595. package/types/anguless-angulux-types-paginator.d.ts +167 -0
  596. package/types/anguless-angulux-types-panel.d.ts +129 -0
  597. package/types/anguless-angulux-types-panelmenu.d.ts +131 -0
  598. package/types/anguless-angulux-types-password.d.ts +120 -0
  599. package/types/anguless-angulux-types-picklist.d.ts +348 -0
  600. package/types/anguless-angulux-types-popover.d.ts +59 -0
  601. package/types/anguless-angulux-types-progressbar.d.ts +58 -0
  602. package/types/anguless-angulux-types-progressspinner.d.ts +36 -0
  603. package/types/anguless-angulux-types-radiobutton.d.ts +51 -0
  604. package/types/anguless-angulux-types-rating.d.ts +94 -0
  605. package/types/anguless-angulux-types-scroller.d.ts +231 -0
  606. package/types/anguless-angulux-types-scrollpanel.d.ts +51 -0
  607. package/types/anguless-angulux-types-scrolltop.d.ts +61 -0
  608. package/types/anguless-angulux-types-select.d.ts +319 -0
  609. package/types/anguless-angulux-types-selectbutton.d.ts +92 -0
  610. package/types/anguless-angulux-types-skeleton.d.ts +28 -0
  611. package/types/anguless-angulux-types-slider.d.ts +78 -0
  612. package/types/anguless-angulux-types-speeddial.d.ts +100 -0
  613. package/types/anguless-angulux-types-splitbutton.d.ts +70 -0
  614. package/types/anguless-angulux-types-splitter.d.ts +70 -0
  615. package/types/anguless-angulux-types-stepper.d.ts +162 -0
  616. package/types/anguless-angulux-types-table.d.ts +893 -0
  617. package/types/anguless-angulux-types-tabs.d.ts +119 -0
  618. package/types/anguless-angulux-types-tag.d.ts +47 -0
  619. package/types/anguless-angulux-types-terminal.d.ts +60 -0
  620. package/types/anguless-angulux-types-textarea.d.ts +28 -0
  621. package/types/anguless-angulux-types-tieredmenu.d.ts +95 -0
  622. package/types/anguless-angulux-types-timeline.d.ts +85 -0
  623. package/types/anguless-angulux-types-toast.d.ts +131 -0
  624. package/types/anguless-angulux-types-togglebutton.d.ts +86 -0
  625. package/types/anguless-angulux-types-toggleswitch.d.ts +73 -0
  626. package/types/anguless-angulux-types-toolbar.d.ts +55 -0
  627. package/types/anguless-angulux-types-tooltip.d.ts +32 -0
  628. package/types/anguless-angulux-types-tree.d.ts +342 -0
  629. package/types/anguless-angulux-types-treeselect.d.ts +251 -0
  630. package/types/anguless-angulux-types-treetable.d.ts +629 -0
  631. package/types/anguless-angulux-usestyle.d.ts +15 -0
  632. package/types/anguless-angulux-utils.d.ts +43 -0
  633. package/types/anguless-angulux.d.ts +2 -0
@@ -0,0 +1,1580 @@
1
+ export * from '@anguless/angulux/types/fileupload';
2
+ import * as i1 from '@angular/common';
3
+ import { CommonModule, isPlatformBrowser } from '@angular/common';
4
+ import { HttpClient, HttpEventType } from '@angular/common/http';
5
+ import * as i0 from '@angular/core';
6
+ import { Injectable, InjectionToken, inject, output, input, ChangeDetectionStrategy, Component, EventEmitter, NgZone, numberAttribute, booleanAttribute, ContentChildren, Input, ViewChild, ContentChild, Output, ViewEncapsulation, NgModule } from '@angular/core';
7
+ import { DomSanitizer } from '@angular/platform-browser';
8
+ import { addClass, removeClass } from '@anguless/angulux-utils';
9
+ import { TranslationKeys, SharedModule, AglTemplate } from '@anguless/angulux/api';
10
+ import { Badge } from '@anguless/angulux/badge';
11
+ import { BaseComponent, PARENT_INSTANCE } from '@anguless/angulux/basecomponent';
12
+ import * as i2 from '@anguless/angulux/bind';
13
+ import { Bind } from '@anguless/angulux/bind';
14
+ import { Button } from '@anguless/angulux/button';
15
+ import { TimesIcon, PlusIcon, UploadIcon } from '@anguless/angulux/icons';
16
+ import { Message } from '@anguless/angulux/message';
17
+ import { ProgressBar } from '@anguless/angulux/progressbar';
18
+ import { style } from '@anguless/angulux-styles/fileupload';
19
+ import { BaseStyle } from '@anguless/angulux/base';
20
+
21
+ const classes = {
22
+ root: ({ instance }) => `p-fileupload p-fileupload-${instance.mode} p-component`,
23
+ header: 'p-fileupload-header',
24
+ pcChooseButton: 'p-fileupload-choose-button',
25
+ pcUploadButton: 'p-fileupload-upload-button',
26
+ pcCancelButton: 'p-fileupload-cancel-button',
27
+ content: 'p-fileupload-content',
28
+ fileList: 'p-fileupload-file-list',
29
+ file: 'p-fileupload-file',
30
+ fileThumbnail: 'p-fileupload-file-thumbnail',
31
+ fileInfo: 'p-fileupload-file-info',
32
+ fileName: 'p-fileupload-file-name',
33
+ fileSize: 'p-fileupload-file-size',
34
+ pcFileBadge: 'p-fileupload-file-badge',
35
+ fileActions: 'p-fileupload-file-actions',
36
+ pcFileRemoveButton: 'p-fileupload-file-remove-button',
37
+ basicContent: 'p-fileupload-basic-content'
38
+ };
39
+ class FileUploadStyle extends BaseStyle {
40
+ name = 'fileupload';
41
+ style = style;
42
+ classes = classes;
43
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
44
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadStyle });
45
+ }
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadStyle, decorators: [{
47
+ type: Injectable
48
+ }] });
49
+ /**
50
+ *
51
+ * FileUpload is an advanced uploader with dragdrop support, multi file uploads, auto uploading, progress tracking and validations.
52
+ *
53
+ * @module fileuploadstyle
54
+ *
55
+ */
56
+ var FileUploadClasses;
57
+ (function (FileUploadClasses) {
58
+ /**
59
+ * Class name of the root element
60
+ */
61
+ FileUploadClasses["root"] = "p-fileupload";
62
+ /**
63
+ * Class name of the header element
64
+ */
65
+ FileUploadClasses["header"] = "p-fileupload-header";
66
+ /**
67
+ * Class name of the choose button element
68
+ */
69
+ FileUploadClasses["pcChooseButton"] = "p-fileupload-choose-button";
70
+ /**
71
+ * Class name of the upload button element
72
+ */
73
+ FileUploadClasses["pcUploadButton"] = "p-fileupload-upload-button";
74
+ /**
75
+ * Class name of the cancel button element
76
+ */
77
+ FileUploadClasses["pcCancelButton"] = "p-fileupload-cancel-button";
78
+ /**
79
+ * Class name of the content element
80
+ */
81
+ FileUploadClasses["content"] = "p-fileupload-content";
82
+ /**
83
+ * Class name of the file list element
84
+ */
85
+ FileUploadClasses["fileList"] = "p-fileupload-file-list";
86
+ /**
87
+ * Class name of the file element
88
+ */
89
+ FileUploadClasses["file"] = "p-fileupload-file";
90
+ /**
91
+ * Class name of the file thumbnail element
92
+ */
93
+ FileUploadClasses["fileThumbnail"] = "p-fileupload-file-thumbnail";
94
+ /**
95
+ * Class name of the file info element
96
+ */
97
+ FileUploadClasses["fileInfo"] = "p-fileupload-file-info";
98
+ /**
99
+ * Class name of the file name element
100
+ */
101
+ FileUploadClasses["fileName"] = "p-fileupload-file-name";
102
+ /**
103
+ * Class name of the file size element
104
+ */
105
+ FileUploadClasses["fileSize"] = "p-fileupload-file-size";
106
+ /**
107
+ * Class name of the file badge element
108
+ */
109
+ FileUploadClasses["pcFileBadge"] = "p-fileupload-file-badge";
110
+ /**
111
+ * Class name of the file actions element
112
+ */
113
+ FileUploadClasses["fileActions"] = "p-fileupload-file-actions";
114
+ /**
115
+ * Class name of the file remove button element
116
+ */
117
+ FileUploadClasses["pcFileRemoveButton"] = "p-fileupload-file-remove-button";
118
+ /**
119
+ * Class name of the content in basic mode
120
+ */
121
+ FileUploadClasses["basicContent"] = "p-fileupload-basic-content";
122
+ })(FileUploadClasses || (FileUploadClasses = {}));
123
+
124
+ const FILEUPLOAD_INSTANCE = new InjectionToken('FILEUPLOAD_INSTANCE');
125
+ class FileContent extends BaseComponent {
126
+ _componentStyle = inject(FileUploadStyle);
127
+ $pcFileUpload = inject(FILEUPLOAD_INSTANCE);
128
+ onRemove = output();
129
+ files = input(/* @ts-ignore */
130
+ ...(ngDevMode ? [undefined, { debugName: "files" }] : /* istanbul ignore next */ []));
131
+ badgeSeverity = input('warn', /* @ts-ignore */
132
+ ...(ngDevMode ? [{ debugName: "badgeSeverity" }] : /* istanbul ignore next */ []));
133
+ badgeValue = input(/* @ts-ignore */
134
+ ...(ngDevMode ? [undefined, { debugName: "badgeValue" }] : /* istanbul ignore next */ []));
135
+ previewWidth = input(50, /* @ts-ignore */
136
+ ...(ngDevMode ? [{ debugName: "previewWidth" }] : /* istanbul ignore next */ []));
137
+ fileRemoveIconTemplate = input(/* @ts-ignore */
138
+ ...(ngDevMode ? [undefined, { debugName: "fileRemoveIconTemplate" }] : /* istanbul ignore next */ []));
139
+ onRemoveClick(event, index) {
140
+ this.onRemove.emit({ event, index });
141
+ }
142
+ formatSize(bytes) {
143
+ const k = 1024;
144
+ const dm = 3;
145
+ const sizes = this.config.getTranslation(TranslationKeys.FILE_SIZE_TYPES);
146
+ if (bytes === 0) {
147
+ return `0 ${sizes[0]}`;
148
+ }
149
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
150
+ const formattedSize = (bytes / Math.pow(k, i)).toFixed(dm);
151
+ return `${formattedSize} ${sizes[i]}`;
152
+ }
153
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileContent, deps: null, target: i0.ɵɵFactoryTarget.Component });
154
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: FileContent, isStandalone: true, selector: "[aglFileContent]", 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) {
155
+ <div [class]="cx('file')" [aglBind]="$pcFileUpload.ptm('file')">
156
+ <img role="presentation" [class]="cx('fileThumbnail')" [attr.alt]="file.name" [src]="file.objectURL" [width]="previewWidth()" [aglBind]="$pcFileUpload.ptm('fileThumbnail')" />
157
+ <div [class]="cx('fileInfo')" [aglBind]="$pcFileUpload.ptm('fileInfo')">
158
+ <div [class]="cx('fileName')" [aglBind]="$pcFileUpload.ptm('fileName')">{{ file.name }}</div>
159
+ <span [class]="cx('fileSize')" [aglBind]="$pcFileUpload.ptm('fileSize')">{{ formatSize(file.size) }}</span>
160
+ </div>
161
+ <agl-badge [value]="badgeValue()" [severity]="badgeSeverity()" [class]="cx('pcFileBadge')" [pt]="$pcFileUpload.ptm('pcFileBadge')" [unstyled]="unstyled()" />
162
+ <div [class]="cx('fileActions')" [aglBind]="$pcFileUpload.ptm('fileActions')">
163
+ <agl-button (onClick)="onRemoveClick($event, index)" [styleClass]="cx('pcFileRemoveButton')" text rounded severity="danger" [pt]="$pcFileUpload.ptm('pcFileRemoveButton')" [unstyled]="unstyled()">
164
+ <ng-template #icon let-iconClass="class">
165
+ @if (fileRemoveIconTemplate()) {
166
+ <ng-template *ngTemplateOutlet="fileRemoveIconTemplate(); context: { class: iconClass, file: file, index: index }"></ng-template>
167
+ } @else {
168
+ <svg data-p-icon="times" [class]="iconClass" [attr.aria-hidden]="true" />
169
+ }
170
+ </ng-template>
171
+ </agl-button>
172
+ </div>
173
+ </div>
174
+ }`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: Badge, selector: "agl-badge", inputs: ["styleClass", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "component", type: Button, selector: "agl-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "directive", type: Bind, selector: "[aglBind]", inputs: ["aglBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
175
+ }
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileContent, decorators: [{
177
+ type: Component,
178
+ args: [{
179
+ selector: '[aglFileContent]',
180
+ standalone: true,
181
+ template: `@for (file of files(); track file?.name + '-' + $index; let index = $index) {
182
+ <div [class]="cx('file')" [aglBind]="$pcFileUpload.ptm('file')">
183
+ <img role="presentation" [class]="cx('fileThumbnail')" [attr.alt]="file.name" [src]="file.objectURL" [width]="previewWidth()" [aglBind]="$pcFileUpload.ptm('fileThumbnail')" />
184
+ <div [class]="cx('fileInfo')" [aglBind]="$pcFileUpload.ptm('fileInfo')">
185
+ <div [class]="cx('fileName')" [aglBind]="$pcFileUpload.ptm('fileName')">{{ file.name }}</div>
186
+ <span [class]="cx('fileSize')" [aglBind]="$pcFileUpload.ptm('fileSize')">{{ formatSize(file.size) }}</span>
187
+ </div>
188
+ <agl-badge [value]="badgeValue()" [severity]="badgeSeverity()" [class]="cx('pcFileBadge')" [pt]="$pcFileUpload.ptm('pcFileBadge')" [unstyled]="unstyled()" />
189
+ <div [class]="cx('fileActions')" [aglBind]="$pcFileUpload.ptm('fileActions')">
190
+ <agl-button (onClick)="onRemoveClick($event, index)" [styleClass]="cx('pcFileRemoveButton')" text rounded severity="danger" [pt]="$pcFileUpload.ptm('pcFileRemoveButton')" [unstyled]="unstyled()">
191
+ <ng-template #icon let-iconClass="class">
192
+ @if (fileRemoveIconTemplate()) {
193
+ <ng-template *ngTemplateOutlet="fileRemoveIconTemplate(); context: { class: iconClass, file: file, index: index }"></ng-template>
194
+ } @else {
195
+ <svg data-p-icon="times" [class]="iconClass" [attr.aria-hidden]="true" />
196
+ }
197
+ </ng-template>
198
+ </agl-button>
199
+ </div>
200
+ </div>
201
+ }`,
202
+ changeDetection: ChangeDetectionStrategy.OnPush,
203
+ providers: [FileUploadStyle],
204
+ imports: [CommonModule, Badge, Button, TimesIcon, Bind]
205
+ }]
206
+ }], 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 }] }] } });
207
+ /**
208
+ * FileUpload is an advanced uploader with dragdrop support, multi file uploads, auto uploading, progress tracking and validations.
209
+ * @group Components
210
+ */
211
+ class FileUpload extends BaseComponent {
212
+ componentName = 'FileUpload';
213
+ bindDirectiveInstance = inject(Bind, { self: true });
214
+ onAfterViewChecked() {
215
+ this.bindDirectiveInstance.setAttrs(this.ptm('host'));
216
+ }
217
+ /**
218
+ * Name of the request parameter to identify the files at backend.
219
+ * @group Props
220
+ */
221
+ name;
222
+ /**
223
+ * Remote url to upload the files.
224
+ * @group Props
225
+ */
226
+ url;
227
+ /**
228
+ * HTTP method to send the files to the url such as "post" and "put".
229
+ * @group Props
230
+ */
231
+ method = 'post';
232
+ /**
233
+ * Used to select multiple files at once from file dialog.
234
+ * @group Props
235
+ */
236
+ multiple;
237
+ /**
238
+ * 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").
239
+ * @group Props
240
+ */
241
+ accept;
242
+ /**
243
+ * Disables the upload functionality.
244
+ * @group Props
245
+ */
246
+ disabled;
247
+ /**
248
+ * When enabled, upload begins automatically after selection is completed.
249
+ * @group Props
250
+ */
251
+ auto;
252
+ /**
253
+ * Cross-site Access-Control requests should be made using credentials such as cookies, authorization headers or TLS client certificates.
254
+ * @group Props
255
+ */
256
+ withCredentials;
257
+ /**
258
+ * Maximum file size allowed in bytes.
259
+ * @group Props
260
+ */
261
+ maxFileSize;
262
+ /**
263
+ * Summary message of the invalid file size.
264
+ * @group Props
265
+ */
266
+ invalidFileSizeMessageSummary = '{0}: Invalid file size, ';
267
+ /**
268
+ * Detail message of the invalid file size.
269
+ * @group Props
270
+ */
271
+ invalidFileSizeMessageDetail = 'maximum upload size is {0}.';
272
+ /**
273
+ * Summary message of the invalid file type.
274
+ * @group Props
275
+ */
276
+ invalidFileTypeMessageSummary = '{0}: Invalid file type, ';
277
+ /**
278
+ * Detail message of the invalid file type.
279
+ * @group Props
280
+ */
281
+ invalidFileTypeMessageDetail = 'allowed file types: {0}.';
282
+ /**
283
+ * Detail message of the invalid file type.
284
+ * @group Props
285
+ */
286
+ invalidFileLimitMessageDetail = 'limit is {0} at most.';
287
+ /**
288
+ * Summary message of the invalid file type.
289
+ * @group Props
290
+ */
291
+ invalidFileLimitMessageSummary = 'Maximum number of files exceeded, ';
292
+ /**
293
+ * Inline style of the element.
294
+ * @group Props
295
+ */
296
+ style;
297
+ /**
298
+ * Class of the element.
299
+ * @group Props
300
+ */
301
+ styleClass;
302
+ /**
303
+ * Width of the image thumbnail in pixels.
304
+ * @group Props
305
+ */
306
+ previewWidth = 50;
307
+ /**
308
+ * Label of the choose button. Defaults to AnguluxConfig Locale configuration.
309
+ * @group Props
310
+ */
311
+ chooseLabel;
312
+ /**
313
+ * Label of the upload button. Defaults to AnguluxConfig Locale configuration.
314
+ * @group Props
315
+ */
316
+ uploadLabel;
317
+ /**
318
+ * Label of the cancel button. Defaults to AnguluxConfig Locale configuration.
319
+ * @group Props
320
+ */
321
+ cancelLabel;
322
+ /**
323
+ * Icon of the choose button.
324
+ * @group Props
325
+ */
326
+ chooseIcon;
327
+ /**
328
+ * Icon of the upload button.
329
+ * @group Props
330
+ */
331
+ uploadIcon;
332
+ /**
333
+ * Icon of the cancel button.
334
+ * @group Props
335
+ */
336
+ cancelIcon;
337
+ /**
338
+ * Whether to show the upload button.
339
+ * @group Props
340
+ */
341
+ showUploadButton = true;
342
+ /**
343
+ * Whether to show the cancel button.
344
+ * @group Props
345
+ */
346
+ showCancelButton = true;
347
+ /**
348
+ * Defines the UI of the component.
349
+ * @group Props
350
+ */
351
+ mode = 'advanced';
352
+ /**
353
+ * HttpHeaders class represents the header configuration options for an HTTP request.
354
+ * @group Props
355
+ */
356
+ headers;
357
+ /**
358
+ * Whether to use the default upload or a manual implementation defined in uploadHandler callback. Defaults to AnguluxConfig Locale configuration.
359
+ * @group Props
360
+ */
361
+ customUpload;
362
+ /**
363
+ * Maximum number of files that can be uploaded.
364
+ * @group Props
365
+ */
366
+ fileLimit;
367
+ /**
368
+ * Style class of the upload button.
369
+ * @group Props
370
+ */
371
+ uploadStyleClass;
372
+ /**
373
+ * Style class of the cancel button.
374
+ * @group Props
375
+ */
376
+ cancelStyleClass;
377
+ /**
378
+ * Style class of the remove button.
379
+ * @group Props
380
+ */
381
+ removeStyleClass;
382
+ /**
383
+ * Style class of the choose button.
384
+ * @group Props
385
+ */
386
+ chooseStyleClass;
387
+ /**
388
+ * Used to pass all properties of the ButtonProps to the choose button inside the component.
389
+ * @group Props
390
+ */
391
+ chooseButtonProps;
392
+ /**
393
+ * Used to pass all properties of the ButtonProps to the upload button inside the component.
394
+ * @group Props
395
+ */
396
+ uploadButtonProps = { severity: 'secondary' };
397
+ /**
398
+ * Used to pass all properties of the ButtonProps to the cancel button inside the component.
399
+ * @group Props
400
+ */
401
+ cancelButtonProps = { severity: 'secondary' };
402
+ /**
403
+ * Callback to invoke before file upload is initialized.
404
+ * @param {FileBeforeUploadEvent} event - Custom upload event.
405
+ * @group Emits
406
+ */
407
+ onBeforeUpload = new EventEmitter();
408
+ /**
409
+ * 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.
410
+ * @param {FileSendEvent} event - Custom send event.
411
+ * @group Emits
412
+ */
413
+ onSend = new EventEmitter();
414
+ /**
415
+ * Callback to invoke when file upload is complete.
416
+ * @param {FileUploadEvent} event - Custom upload event.
417
+ * @group Emits
418
+ */
419
+ onUpload = new EventEmitter();
420
+ /**
421
+ * Callback to invoke if file upload fails.
422
+ * @param {FileUploadErrorEvent} event - Custom error event.
423
+ * @group Emits
424
+ */
425
+ onError = new EventEmitter();
426
+ /**
427
+ * Callback to invoke when files in queue are removed without uploading using clear all button.
428
+ * @param {Event} event - Browser event.
429
+ * @group Emits
430
+ */
431
+ onClear = new EventEmitter();
432
+ /**
433
+ * Callback to invoke when a file is removed without uploading using clear button of a file.
434
+ * @param {FileRemoveEvent} event - Remove event.
435
+ * @group Emits
436
+ */
437
+ onRemove = new EventEmitter();
438
+ /**
439
+ * Callback to invoke when files are selected.
440
+ * @param {FileSelectEvent} event - Select event.
441
+ * @group Emits
442
+ */
443
+ onSelect = new EventEmitter();
444
+ /**
445
+ * Callback to invoke when files are being uploaded.
446
+ * @param {FileProgressEvent} event - Progress event.
447
+ * @group Emits
448
+ */
449
+ onProgress = new EventEmitter();
450
+ /**
451
+ * Callback to invoke in custom upload mode to upload the files manually.
452
+ * @param {FileUploadHandlerEvent} event - Upload handler event.
453
+ * @group Emits
454
+ */
455
+ uploadHandler = new EventEmitter();
456
+ /**
457
+ * This event is triggered if an error occurs while loading an image file.
458
+ * @param {Event} event - Browser event.
459
+ * @group Emits
460
+ */
461
+ onImageError = new EventEmitter();
462
+ /**
463
+ * This event is triggered if an error occurs while loading an image file.
464
+ * @param {RemoveUploadedFileEvent} event - Remove event.
465
+ * @group Emits
466
+ */
467
+ onRemoveUploadedFile = new EventEmitter();
468
+ /**
469
+ * Custom file template.
470
+ * @group Templates
471
+ */
472
+ fileTemplate;
473
+ /**
474
+ * Custom header template.
475
+ * @param {FileUploadHeaderTemplateContext} context - header template context.
476
+ * @group Templates
477
+ */
478
+ headerTemplate;
479
+ /**
480
+ * Custom content template.
481
+ * @param {FileUploadContentTemplateContext} context - content template context.
482
+ * @group Templates
483
+ */
484
+ contentTemplate;
485
+ /**
486
+ * Custom toolbar template.
487
+ * @group Templates
488
+ */
489
+ toolbarTemplate;
490
+ /**
491
+ * Custom choose icon template.
492
+ * @group Templates
493
+ */
494
+ chooseIconTemplate;
495
+ /**
496
+ * Custom file label template.
497
+ * @param {FileUploadFileLabelTemplateContext} context - file label template context.
498
+ * @group Templates
499
+ */
500
+ fileLabelTemplate;
501
+ /**
502
+ * Custom upload icon template.
503
+ * @group Templates
504
+ */
505
+ uploadIconTemplate;
506
+ /**
507
+ * Custom cancel icon template.
508
+ * @group Templates
509
+ */
510
+ cancelIconTemplate;
511
+ /**
512
+ * Custom empty state template.
513
+ * @group Templates
514
+ */
515
+ emptyTemplate;
516
+ advancedFileInput;
517
+ basicFileInput;
518
+ content;
519
+ set files(files) {
520
+ this._files = [];
521
+ for (let i = 0; i < files.length; i++) {
522
+ let file = files[i];
523
+ if (this.validate(file)) {
524
+ if (this.isImage(file)) {
525
+ file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(files[i]));
526
+ }
527
+ this._files.push(files[i]);
528
+ }
529
+ }
530
+ }
531
+ get files() {
532
+ return this._files;
533
+ }
534
+ get basicButtonLabel() {
535
+ if (this.auto || !this.hasFiles()) {
536
+ return this.chooseLabel;
537
+ }
538
+ return this.uploadLabel ?? this.files[0].name;
539
+ }
540
+ _files = [];
541
+ progress = 0;
542
+ dragHighlight;
543
+ msgs;
544
+ uploadedFileCount = 0;
545
+ focus;
546
+ uploading;
547
+ duplicateIEEvent; // flag to recognize duplicate onchange event for file input
548
+ translationSubscription;
549
+ dragOverListener;
550
+ uploadedFiles = [];
551
+ sanitizer = inject(DomSanitizer);
552
+ zone = inject(NgZone);
553
+ http = inject(HttpClient);
554
+ _componentStyle = inject(FileUploadStyle);
555
+ onInit() {
556
+ this.translationSubscription = this.config.translationObserver.subscribe(() => {
557
+ this.cd.markForCheck();
558
+ });
559
+ }
560
+ onAfterViewInit() {
561
+ if (isPlatformBrowser(this.platformId)) {
562
+ if (this.mode === 'advanced') {
563
+ this.zone.runOutsideAngular(() => {
564
+ if (this.content) {
565
+ this.dragOverListener = this.renderer.listen(this.content.nativeElement, 'dragover', this.onDragOver.bind(this));
566
+ }
567
+ });
568
+ }
569
+ }
570
+ }
571
+ _headerTemplate;
572
+ _contentTemplate;
573
+ _toolbarTemplate;
574
+ _chooseIconTemplate;
575
+ _uploadIconTemplate;
576
+ _cancelIconTemplate;
577
+ _emptyTemplate;
578
+ _fileTemplate;
579
+ _fileLabelTemplate;
580
+ templates;
581
+ onAfterContentInit() {
582
+ this.templates?.forEach((item) => {
583
+ switch (item.getType()) {
584
+ case 'header':
585
+ this._headerTemplate = item.template;
586
+ break;
587
+ case 'file':
588
+ this._fileTemplate = item.template;
589
+ break;
590
+ case 'content':
591
+ this._contentTemplate = item.template;
592
+ break;
593
+ case 'toolbar':
594
+ this._toolbarTemplate = item.template;
595
+ break;
596
+ case 'chooseicon':
597
+ this._chooseIconTemplate = item.template;
598
+ break;
599
+ case 'uploadicon':
600
+ this._uploadIconTemplate = item.template;
601
+ break;
602
+ case 'cancelicon':
603
+ this._cancelIconTemplate = item.template;
604
+ break;
605
+ case 'empty':
606
+ this._emptyTemplate = item.template;
607
+ break;
608
+ case 'filelabel':
609
+ this._fileLabelTemplate = item.template;
610
+ break;
611
+ default:
612
+ this._fileTemplate = item.template;
613
+ break;
614
+ }
615
+ });
616
+ }
617
+ basicFileChosenLabel() {
618
+ if (this.auto)
619
+ return this.chooseButtonLabel;
620
+ else if (this.hasFiles()) {
621
+ if (this.files && this.files.length === 1)
622
+ return this.files[0].name;
623
+ return this.config.getTranslation('fileChosenMessage')?.replace('{0}', this.files.length);
624
+ }
625
+ return this.config.getTranslation('noFileChosenMessage') || '';
626
+ }
627
+ completedLabel() {
628
+ return this.config.getTranslation('completed') || '';
629
+ }
630
+ getTranslation(option) {
631
+ return this.config.getTranslation(option);
632
+ }
633
+ choose() {
634
+ this.advancedFileInput?.nativeElement.click();
635
+ }
636
+ onFileSelect(event) {
637
+ if (event.type !== 'drop' && this.isIE11() && this.duplicateIEEvent) {
638
+ this.duplicateIEEvent = false;
639
+ return;
640
+ }
641
+ if (!this.multiple) {
642
+ this.files = [];
643
+ }
644
+ this.msgs = [];
645
+ this.files = this.files || [];
646
+ let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
647
+ for (let i = 0; i < files.length; i++) {
648
+ let file = files[i];
649
+ if (!this.isFileSelected(file)) {
650
+ if (this.validate(file)) {
651
+ if (this.isImage(file)) {
652
+ file.objectURL = this.sanitizer.bypassSecurityTrustUrl(window.URL.createObjectURL(files[i]));
653
+ }
654
+ this.files.push(files[i]);
655
+ }
656
+ }
657
+ }
658
+ this.onSelect.emit({ originalEvent: event, files: files, currentFiles: this.files });
659
+ // this will check the fileLimit with the uploaded files
660
+ this.checkFileLimit(files);
661
+ if (this.hasFiles() && this.auto && (this.mode !== 'advanced' || !this.isFileLimitExceeded())) {
662
+ this.upload();
663
+ }
664
+ if (event.type !== 'drop' && this.isIE11()) {
665
+ this.clearIEInput();
666
+ }
667
+ else {
668
+ this.clearInputElement();
669
+ }
670
+ }
671
+ isFileSelected(file) {
672
+ for (let sFile of this.files) {
673
+ if (sFile.name + sFile.type + sFile.size === file.name + file.type + file.size) {
674
+ return true;
675
+ }
676
+ }
677
+ return false;
678
+ }
679
+ isIE11() {
680
+ if (isPlatformBrowser(this.platformId)) {
681
+ return !!this.document.defaultView['MSInputMethodContext'] && !!this.document['documentMode'];
682
+ }
683
+ }
684
+ validate(file) {
685
+ this.msgs = this.msgs || [];
686
+ if (this.accept && !this.isFileTypeValid(file)) {
687
+ const text = `${this.invalidFileTypeMessageSummary.replace('{0}', file.name)} ${this.invalidFileTypeMessageDetail.replace('{0}', this.accept)}`;
688
+ this.msgs.push({
689
+ severity: 'error',
690
+ text: text
691
+ });
692
+ return false;
693
+ }
694
+ if (this.maxFileSize && file.size > this.maxFileSize) {
695
+ const text = `${this.invalidFileSizeMessageSummary.replace('{0}', file.name)} ${this.invalidFileSizeMessageDetail.replace('{0}', this.formatSize(this.maxFileSize))}`;
696
+ this.msgs.push({
697
+ severity: 'error',
698
+ text: text
699
+ });
700
+ return false;
701
+ }
702
+ return true;
703
+ }
704
+ isFileTypeValid(file) {
705
+ let acceptableTypes = this.accept?.split(',').map((type) => type.trim());
706
+ for (let type of acceptableTypes) {
707
+ let acceptable = this.isWildcard(type) ? this.getTypeClass(file.type) === this.getTypeClass(type) : file.type == type || this.getFileExtension(file).toLowerCase() === type.toLowerCase();
708
+ if (acceptable) {
709
+ return true;
710
+ }
711
+ }
712
+ return false;
713
+ }
714
+ getTypeClass(fileType) {
715
+ return fileType.substring(0, fileType.indexOf('/'));
716
+ }
717
+ isWildcard(fileType) {
718
+ return fileType.indexOf('*') !== -1;
719
+ }
720
+ getFileExtension(file) {
721
+ return '.' + file.name.split('.').pop();
722
+ }
723
+ isImage(file) {
724
+ return /^image\//.test(file.type);
725
+ }
726
+ onImageLoad(img) {
727
+ window.URL.revokeObjectURL(img.src);
728
+ }
729
+ /**
730
+ * Uploads the selected files.
731
+ * @group Method
732
+ */
733
+ uploader() {
734
+ if (this.customUpload) {
735
+ if (this.fileLimit) {
736
+ this.uploadedFileCount += this.files.length;
737
+ }
738
+ this.uploadHandler.emit({
739
+ files: this.files
740
+ });
741
+ this.cd.markForCheck();
742
+ }
743
+ else {
744
+ this.uploading = true;
745
+ this.msgs = [];
746
+ let formData = new FormData();
747
+ this.onBeforeUpload.emit({
748
+ formData: formData
749
+ });
750
+ for (let i = 0; i < this.files.length; i++) {
751
+ formData.append(this.name, this.files[i], this.files[i].name);
752
+ }
753
+ this.http
754
+ .request(this.method, this.url, {
755
+ body: formData,
756
+ headers: this.headers,
757
+ reportProgress: true,
758
+ observe: 'events',
759
+ withCredentials: this.withCredentials
760
+ })
761
+ .subscribe((event) => {
762
+ switch (event.type) {
763
+ case HttpEventType.Sent:
764
+ this.onSend.emit({
765
+ originalEvent: event,
766
+ formData: formData
767
+ });
768
+ break;
769
+ case HttpEventType.Response:
770
+ this.uploading = false;
771
+ this.progress = 0;
772
+ if (event['status'] >= 200 && event['status'] < 300) {
773
+ if (this.fileLimit) {
774
+ this.uploadedFileCount += this.files.length;
775
+ }
776
+ this.onUpload.emit({ originalEvent: event, files: this.files });
777
+ }
778
+ else {
779
+ this.onError.emit({ files: this.files });
780
+ }
781
+ this.uploadedFiles = [...this.uploadedFiles, ...this.files];
782
+ this.clear();
783
+ break;
784
+ case HttpEventType.UploadProgress: {
785
+ if (event['loaded']) {
786
+ this.progress = Math.round((event['loaded'] * 100) / event['total']);
787
+ }
788
+ this.onProgress.emit({ originalEvent: event, progress: this.progress });
789
+ break;
790
+ }
791
+ }
792
+ this.cd.markForCheck();
793
+ }, (error) => {
794
+ this.uploading = false;
795
+ this.onError.emit({ files: this.files, error: error });
796
+ });
797
+ }
798
+ }
799
+ onRemoveClick(e) {
800
+ const { event, index } = e;
801
+ if (this.hasFiles()) {
802
+ this.remove(event, index);
803
+ }
804
+ }
805
+ onRemoveUploadedFileClick(e) {
806
+ const { index } = e;
807
+ if (this.hasUploadedFiles()) {
808
+ this.removeUploadedFile(index);
809
+ }
810
+ }
811
+ /**
812
+ * Clears the files list.
813
+ * @group Method
814
+ */
815
+ clear() {
816
+ this.files = [];
817
+ this.onClear.emit();
818
+ this.clearInputElement();
819
+ this.msgs = [];
820
+ this.cd.markForCheck();
821
+ }
822
+ /**
823
+ * Removes a single file.
824
+ * @param {Event} event - Browser event.
825
+ * @param {Number} index - Index of the file.
826
+ * @group Method
827
+ */
828
+ remove(event, index) {
829
+ this.clearInputElement();
830
+ this.onRemove.emit({ originalEvent: event, file: this.files[index] });
831
+ this.files.splice(index, 1);
832
+ this.checkFileLimit(this.files);
833
+ }
834
+ /**
835
+ * Removes uploaded file.
836
+ * @param {Number} index - Index of the file to be removed.
837
+ * @group Method
838
+ */
839
+ removeUploadedFile(index) {
840
+ let removedFile = this.uploadedFiles.splice(index, 1)[0];
841
+ this.uploadedFiles = [...this.uploadedFiles];
842
+ this.onRemoveUploadedFile.emit({ file: removedFile, files: this.uploadedFiles });
843
+ }
844
+ isFileLimitExceeded() {
845
+ const isAutoMode = this.auto;
846
+ const totalFileCount = isAutoMode ? this.files.length : this.files.length + this.uploadedFileCount;
847
+ if (this.fileLimit && this.fileLimit <= totalFileCount && this.focus) {
848
+ this.focus = false;
849
+ }
850
+ return this.fileLimit && this.fileLimit < totalFileCount;
851
+ }
852
+ isChooseDisabled() {
853
+ if (this.auto) {
854
+ return this.fileLimit && this.fileLimit <= this.files.length;
855
+ }
856
+ else {
857
+ return this.fileLimit && this.fileLimit <= this.files.length + this.uploadedFileCount;
858
+ }
859
+ }
860
+ checkFileLimit(files) {
861
+ this.msgs ??= [];
862
+ const hasExistingValidationMessages = this.msgs.length > 0 && this.fileLimit && this.fileLimit < files.length;
863
+ if (this.isFileLimitExceeded() || hasExistingValidationMessages) {
864
+ const text = `${this.invalidFileLimitMessageSummary.replace('{0}', this.fileLimit.toString())} ${this.invalidFileLimitMessageDetail.replace('{0}', this.fileLimit.toString())}`;
865
+ this.msgs.push({
866
+ severity: 'error',
867
+ text: text
868
+ });
869
+ }
870
+ else {
871
+ this.msgs = this.msgs.filter((msg) => !msg.text.includes(this.invalidFileLimitMessageSummary));
872
+ }
873
+ }
874
+ clearInputElement() {
875
+ if (this.advancedFileInput && this.advancedFileInput.nativeElement) {
876
+ this.advancedFileInput.nativeElement.value = '';
877
+ }
878
+ if (this.basicFileInput && this.basicFileInput.nativeElement) {
879
+ this.basicFileInput.nativeElement.value = '';
880
+ }
881
+ }
882
+ clearIEInput() {
883
+ if (this.advancedFileInput && this.advancedFileInput.nativeElement) {
884
+ this.duplicateIEEvent = true; //IE11 fix to prevent onFileChange trigger again
885
+ this.advancedFileInput.nativeElement.value = '';
886
+ }
887
+ }
888
+ hasFiles() {
889
+ return this.files && this.files.length > 0;
890
+ }
891
+ hasUploadedFiles() {
892
+ return this.uploadedFiles && this.uploadedFiles.length > 0;
893
+ }
894
+ onDragEnter(e) {
895
+ if (!this.disabled) {
896
+ e.stopPropagation();
897
+ e.preventDefault();
898
+ }
899
+ }
900
+ onDragOver(e) {
901
+ if (!this.disabled) {
902
+ !this.$unstyled() && addClass(this.content?.nativeElement, 'p-fileupload-highlight');
903
+ this.content?.nativeElement.setAttribute('data-p-highlight', true);
904
+ this.dragHighlight = true;
905
+ e.stopPropagation();
906
+ e.preventDefault();
907
+ }
908
+ }
909
+ onDragLeave(event) {
910
+ if (!this.disabled) {
911
+ !this.$unstyled() && removeClass(this.content?.nativeElement, 'p-fileupload-highlight');
912
+ this.content?.nativeElement.setAttribute('data-p-highlight', false);
913
+ }
914
+ }
915
+ onDrop(event) {
916
+ if (!this.disabled) {
917
+ !this.$unstyled() && removeClass(this.content?.nativeElement, 'p-fileupload-highlight');
918
+ this.content?.nativeElement.setAttribute('data-p-highlight', false);
919
+ event.stopPropagation();
920
+ event.preventDefault();
921
+ let files = event.dataTransfer ? event.dataTransfer.files : event.target.files;
922
+ let allowDrop = this.multiple || (files && files.length === 1);
923
+ if (allowDrop) {
924
+ this.onFileSelect(event);
925
+ }
926
+ }
927
+ }
928
+ onFocus() {
929
+ this.focus = true;
930
+ }
931
+ onBlur() {
932
+ this.focus = false;
933
+ }
934
+ formatSize(bytes) {
935
+ const k = 1024;
936
+ const dm = 3;
937
+ const sizes = this.getTranslation(TranslationKeys.FILE_SIZE_TYPES);
938
+ if (bytes === 0) {
939
+ return `0 ${sizes[0]}`;
940
+ }
941
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
942
+ const formattedSize = (bytes / Math.pow(k, i)).toFixed(dm);
943
+ return `${formattedSize} ${sizes[i]}`;
944
+ }
945
+ upload() {
946
+ if (this.hasFiles())
947
+ this.uploader();
948
+ }
949
+ onBasicUploaderClick() {
950
+ this.basicFileInput?.nativeElement.click();
951
+ }
952
+ onBasicKeydown(event) {
953
+ switch (event.code) {
954
+ case 'Space':
955
+ case 'Enter':
956
+ this.onBasicUploaderClick();
957
+ event.preventDefault();
958
+ break;
959
+ }
960
+ }
961
+ imageError(event) {
962
+ this.onImageError.emit(event);
963
+ }
964
+ getBlockableElement() {
965
+ return this.el.nativeElement.children[0];
966
+ }
967
+ get chooseButtonLabel() {
968
+ return this.chooseLabel || this.config.getTranslation(TranslationKeys.CHOOSE);
969
+ }
970
+ get uploadButtonLabel() {
971
+ return this.uploadLabel || this.config.getTranslation(TranslationKeys.UPLOAD);
972
+ }
973
+ get cancelButtonLabel() {
974
+ return this.cancelLabel || this.config.getTranslation(TranslationKeys.CANCEL);
975
+ }
976
+ get browseFilesLabel() {
977
+ return this.config.getTranslation(TranslationKeys.ARIA)[TranslationKeys.BROWSE_FILES];
978
+ }
979
+ get pendingLabel() {
980
+ return this.config.getTranslation(TranslationKeys.PENDING);
981
+ }
982
+ onDestroy() {
983
+ if (this.content && this.content.nativeElement) {
984
+ if (this.dragOverListener) {
985
+ this.dragOverListener();
986
+ this.dragOverListener = null;
987
+ }
988
+ }
989
+ if (this.translationSubscription) {
990
+ this.translationSubscription.unsubscribe();
991
+ }
992
+ }
993
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUpload, deps: null, target: i0.ɵɵFactoryTarget.Component });
994
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: FileUpload, isStandalone: true, selector: "agl-fileupload, agl-fileUpload", inputs: { name: "name", url: "url", method: "method", multiple: ["multiple", "multiple", booleanAttribute], accept: "accept", disabled: ["disabled", "disabled", booleanAttribute], auto: ["auto", "auto", booleanAttribute], withCredentials: ["withCredentials", "withCredentials", booleanAttribute], maxFileSize: ["maxFileSize", "maxFileSize", numberAttribute], invalidFileSizeMessageSummary: "invalidFileSizeMessageSummary", invalidFileSizeMessageDetail: "invalidFileSizeMessageDetail", invalidFileTypeMessageSummary: "invalidFileTypeMessageSummary", invalidFileTypeMessageDetail: "invalidFileTypeMessageDetail", invalidFileLimitMessageDetail: "invalidFileLimitMessageDetail", invalidFileLimitMessageSummary: "invalidFileLimitMessageSummary", style: "style", styleClass: "styleClass", previewWidth: ["previewWidth", "previewWidth", numberAttribute], chooseLabel: "chooseLabel", uploadLabel: "uploadLabel", cancelLabel: "cancelLabel", chooseIcon: "chooseIcon", uploadIcon: "uploadIcon", cancelIcon: "cancelIcon", showUploadButton: ["showUploadButton", "showUploadButton", booleanAttribute], showCancelButton: ["showCancelButton", "showCancelButton", booleanAttribute], mode: "mode", headers: "headers", customUpload: ["customUpload", "customUpload", booleanAttribute], fileLimit: ["fileLimit", "fileLimit", (value) => numberAttribute(value, undefined)], uploadStyleClass: "uploadStyleClass", cancelStyleClass: "cancelStyleClass", removeStyleClass: "removeStyleClass", chooseStyleClass: "chooseStyleClass", chooseButtonProps: "chooseButtonProps", uploadButtonProps: "uploadButtonProps", cancelButtonProps: "cancelButtonProps", files: "files" }, 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"] }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "contentTemplate", first: true, predicate: ["content"] }, { propertyName: "toolbarTemplate", first: true, predicate: ["toolbar"] }, { propertyName: "chooseIconTemplate", first: true, predicate: ["chooseicon"] }, { propertyName: "fileLabelTemplate", first: true, predicate: ["filelabel"] }, { propertyName: "uploadIconTemplate", first: true, predicate: ["uploadicon"] }, { propertyName: "cancelIconTemplate", first: true, predicate: ["cancelicon"] }, { propertyName: "emptyTemplate", first: true, predicate: ["empty"] }, { propertyName: "templates", predicate: AglTemplate }], viewQueries: [{ propertyName: "advancedFileInput", first: true, predicate: ["advancedfileinput"], descendants: true }, { propertyName: "basicFileInput", first: true, predicate: ["basicfileinput"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.Bind }], ngImport: i0, template: `
995
+ <div [class]="cn(cx('root'), styleClass)" [ngStyle]="style" *ngIf="mode === 'advanced'" [aglBind]="ptm('root')">
996
+ <input [attr.aria-label]="browseFilesLabel" #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple" [accept]="accept" [disabled]="disabled || isChooseDisabled()" [attr.title]="''" [aglBind]="ptm('input')" />
997
+ <div [class]="cx('header')" [aglBind]="ptm('header')">
998
+ <ng-container *ngIf="!headerTemplate && !_headerTemplate">
999
+ <agl-button
1000
+ [styleClass]="cn(cx('pcChooseButton'), chooseStyleClass)"
1001
+ [disabled]="disabled || isChooseDisabled()"
1002
+ (focus)="onFocus()"
1003
+ [label]="chooseButtonLabel"
1004
+ (blur)="onBlur()"
1005
+ (onClick)="choose()"
1006
+ (keydown.enter)="choose()"
1007
+ [buttonProps]="chooseButtonProps"
1008
+ [pt]="ptm('pcChooseButton')"
1009
+ [unstyled]="unstyled()"
1010
+ >
1011
+ <input
1012
+ [attr.aria-label]="browseFilesLabel"
1013
+ #advancedfileinput
1014
+ type="file"
1015
+ (change)="onFileSelect($event)"
1016
+ [multiple]="multiple"
1017
+ [accept]="accept"
1018
+ [disabled]="disabled || isChooseDisabled()"
1019
+ [attr.title]="''"
1020
+ [aglBind]="ptm('input')"
1021
+ />
1022
+ <ng-template #icon>
1023
+ <span *ngIf="chooseIcon" [class]="chooseIcon" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1024
+ <ng-container *ngIf="!chooseIcon">
1025
+ <svg data-p-icon="plus" *ngIf="!chooseIconTemplate && !_chooseIconTemplate" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon" />
1026
+ <span *ngIf="chooseIconTemplate || _chooseIconTemplate" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon">
1027
+ <ng-template *ngTemplateOutlet="chooseIconTemplate || _chooseIconTemplate"></ng-template>
1028
+ </span>
1029
+ </ng-container>
1030
+ </ng-template>
1031
+ </agl-button>
1032
+
1033
+ <agl-button
1034
+ *ngIf="!auto && showUploadButton"
1035
+ [label]="uploadButtonLabel"
1036
+ (onClick)="upload()"
1037
+ [disabled]="!hasFiles() || isFileLimitExceeded()"
1038
+ [styleClass]="cn(cx('pcUploadButton'), uploadStyleClass)"
1039
+ [buttonProps]="uploadButtonProps"
1040
+ [pt]="ptm('pcUploadButton')"
1041
+ [unstyled]="unstyled()"
1042
+ >
1043
+ <ng-template #icon>
1044
+ <span *ngIf="uploadIcon" [ngClass]="uploadIcon" [attr.aria-hidden]="true" [aglBind]="ptm('pcUploadButton')?.icon"></span>
1045
+ <ng-container *ngIf="!uploadIcon">
1046
+ <svg data-p-icon="upload" *ngIf="!uploadIconTemplate && !_uploadIconTemplate" [aglBind]="ptm('pcUploadButton')?.icon" />
1047
+ <span *ngIf="uploadIconTemplate || _uploadIconTemplate" [attr.aria-hidden]="true" [aglBind]="ptm('pcUploadButton')?.icon">
1048
+ <ng-template *ngTemplateOutlet="uploadIconTemplate || _uploadIconTemplate"></ng-template>
1049
+ </span>
1050
+ </ng-container>
1051
+ </ng-template>
1052
+ </agl-button>
1053
+ <agl-button
1054
+ *ngIf="!auto && showCancelButton"
1055
+ [label]="cancelButtonLabel"
1056
+ (onClick)="clear()"
1057
+ [disabled]="!hasFiles() || uploading"
1058
+ [styleClass]="cn(cx('pcCancelButton'), cancelStyleClass)"
1059
+ [buttonProps]="cancelButtonProps"
1060
+ [pt]="ptm('pcCancelButton')"
1061
+ [unstyled]="unstyled()"
1062
+ >
1063
+ <ng-template #icon>
1064
+ <span *ngIf="cancelIcon" [ngClass]="cancelIcon"></span>
1065
+ <ng-container *ngIf="!cancelIcon">
1066
+ <svg data-p-icon="times" *ngIf="!cancelIconTemplate && !_cancelIconTemplate" [attr.aria-hidden]="true" />
1067
+ <span *ngIf="cancelIconTemplate || _cancelIconTemplate" [attr.aria-hidden]="true">
1068
+ <ng-template *ngTemplateOutlet="cancelIconTemplate || _cancelIconTemplate"></ng-template>
1069
+ </span>
1070
+ </ng-container>
1071
+ </ng-template>
1072
+ </agl-button>
1073
+ </ng-container>
1074
+ <ng-container
1075
+ *ngTemplateOutlet="
1076
+ headerTemplate || _headerTemplate;
1077
+ context: {
1078
+ $implicit: files,
1079
+ uploadedFiles: uploadedFiles,
1080
+ chooseCallback: choose.bind(this),
1081
+ clearCallback: clear.bind(this),
1082
+ uploadCallback: upload.bind(this)
1083
+ }
1084
+ "
1085
+ ></ng-container>
1086
+ <ng-container *ngTemplateOutlet="toolbarTemplate || _toolbarTemplate"></ng-container>
1087
+ </div>
1088
+ <div #content [class]="cx('content')" (dragenter)="onDragEnter($event)" (dragleave)="onDragLeave($event)" (drop)="onDrop($event)" [aglBind]="ptm('content')">
1089
+ @if (contentTemplate || _contentTemplate) {
1090
+ <ng-container
1091
+ *ngTemplateOutlet="
1092
+ contentTemplate || _contentTemplate;
1093
+ context: {
1094
+ $implicit: files,
1095
+ uploadedFiles: uploadedFiles,
1096
+ chooseCallback: choose.bind(this),
1097
+ clearCallback: clear.bind(this),
1098
+ removeUploadedFileCallback: removeUploadedFile.bind(this),
1099
+ removeFileCallback: remove.bind(this),
1100
+ progress: progress,
1101
+ messages: msgs
1102
+ }
1103
+ "
1104
+ ></ng-container>
1105
+ } @else {
1106
+ <agl-progressbar [value]="progress" [showValue]="false" *ngIf="hasFiles()" [pt]="ptm('pcProgressBar')"></agl-progressbar>
1107
+ @for (message of msgs; track message) {
1108
+ <agl-message [severity]="message.severity" [text]="message.text" [pt]="ptm('pcMessage')" [unstyled]="unstyled()"></agl-message>
1109
+ }
1110
+
1111
+ @if (hasFiles()) {
1112
+ <div [class]="cx('fileList')" [aglBind]="ptm('fileList')">
1113
+ <ng-template ngFor [ngForOf]="files" [ngForTemplate]="fileTemplate || _fileTemplate"></ng-template>
1114
+ @if (!fileTemplate && !_fileTemplate) {
1115
+ <div
1116
+ aglFileContent
1117
+ [unstyled]="unstyled()"
1118
+ [files]="files"
1119
+ (onRemove)="onRemoveClick($event)"
1120
+ [badgeValue]="pendingLabel"
1121
+ [previewWidth]="previewWidth"
1122
+ [fileRemoveIconTemplate]="cancelIconTemplate || _cancelIconTemplate"
1123
+ ></div>
1124
+ }
1125
+ </div>
1126
+ }
1127
+ @if (hasUploadedFiles()) {
1128
+ <div [class]="cx('fileList')" [aglBind]="ptm('fileList')">
1129
+ <ng-template ngFor [ngForOf]="uploadedFiles" [ngForTemplate]="fileTemplate || _fileTemplate"></ng-template>
1130
+ @if (!fileTemplate && !_fileTemplate) {
1131
+ <div
1132
+ aglFileContent
1133
+ [unstyled]="unstyled()"
1134
+ [files]="uploadedFiles"
1135
+ (onRemove)="onRemoveUploadedFileClick($event)"
1136
+ [badgeValue]="completedLabel()"
1137
+ badgeSeverity="success"
1138
+ [previewWidth]="previewWidth"
1139
+ [fileRemoveIconTemplate]="cancelIconTemplate || _cancelIconTemplate"
1140
+ ></div>
1141
+ }
1142
+ </div>
1143
+ }
1144
+ }
1145
+ @if ((emptyTemplate || _emptyTemplate) && !hasFiles() && !hasUploadedFiles()) {
1146
+ <ng-container *ngTemplateOutlet="emptyTemplate || _emptyTemplate" [aglBind]="ptm('empty')"></ng-container>
1147
+ }
1148
+ </div>
1149
+ </div>
1150
+ <div [class]="cn(cx('root'), styleClass)" *ngIf="mode === 'basic'" [aglBind]="ptm('root')">
1151
+ @for (message of msgs; track message) {
1152
+ <agl-message [severity]="message.severity" [text]="message.text" [pt]="ptm('pcMessage')" [unstyled]="unstyled()"></agl-message>
1153
+ }
1154
+
1155
+ <div [class]="cx('basicContent')" [aglBind]="ptm('basicContent')">
1156
+ <agl-button
1157
+ [styleClass]="cn(cx('pcChooseButton'), chooseStyleClass)"
1158
+ [disabled]="disabled"
1159
+ [label]="chooseButtonLabel"
1160
+ [style]="style"
1161
+ (onClick)="onBasicUploaderClick()"
1162
+ (keydown)="onBasicKeydown($event)"
1163
+ [buttonProps]="chooseButtonProps"
1164
+ [pt]="ptm('pcChooseButton')"
1165
+ [unstyled]="unstyled()"
1166
+ >
1167
+ <ng-template #icon>
1168
+ @if (hasFiles() && !auto) {
1169
+ <span *ngIf="uploadIcon" class="p-button-icon p-button-icon-left" [ngClass]="uploadIcon" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1170
+ <ng-container *ngIf="!uploadIcon">
1171
+ <svg data-p-icon="upload" *ngIf="!uploadIconTemplate && !_uploadIconTemplate" [class]="'p-button-icon p-button-icon-left'" [aglBind]="ptm('pcChooseButton')?.icon" />
1172
+ <span *ngIf="_uploadIconTemplate || uploadIconTemplate" class="p-button-icon p-button-icon-left" [aglBind]="ptm('pcChooseButton')?.icon">
1173
+ <ng-template *ngTemplateOutlet="_uploadIconTemplate || uploadIconTemplate"></ng-template>
1174
+ </span>
1175
+ </ng-container>
1176
+ } @else {
1177
+ <span *ngIf="chooseIcon" class="p-button-icon p-button-icon-left pi" [ngClass]="chooseIcon" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1178
+ <ng-container *ngIf="!chooseIcon">
1179
+ <svg data-p-icon="plus" *ngIf="!chooseIconTemplate && !_chooseIconTemplate" [aglBind]="ptm('pcChooseButton')?.icon" />
1180
+ <ng-template *ngTemplateOutlet="chooseIconTemplate || _chooseIconTemplate"></ng-template>
1181
+ </ng-container>
1182
+ }
1183
+ </ng-template>
1184
+ <input [attr.aria-label]="browseFilesLabel" #basicfileinput type="file" [accept]="accept" [multiple]="multiple" [disabled]="disabled" (change)="onFileSelect($event)" (focus)="onFocus()" (blur)="onBlur()" [aglBind]="ptm('input')" />
1185
+ </agl-button>
1186
+ @if (!auto) {
1187
+ @if (!fileLabelTemplate && !_fileLabelTemplate) {
1188
+ <span>
1189
+ {{ basicFileChosenLabel() }}
1190
+ </span>
1191
+ } @else {
1192
+ <ng-container *ngTemplateOutlet="fileLabelTemplate || _fileLabelTemplate; context: { $implicit: files }"></ng-container>
1193
+ }
1194
+ }
1195
+ </div>
1196
+ </div>
1197
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: Button, selector: "agl-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ProgressBar, selector: "agl-progressBar, agl-progressbar, agl-progress-bar", inputs: ["value", "showValue", "styleClass", "valueStyleClass", "unit", "mode", "color"] }, { kind: "component", type: Message, selector: "agl-message", inputs: ["severity", "text", "escape", "style", "styleClass", "closable", "icon", "closeIcon", "life", "showTransitionOptions", "hideTransitionOptions", "size", "variant", "motionOptions"], outputs: ["onClose"] }, { kind: "component", type: PlusIcon, selector: "[data-p-icon=\"plus\"]" }, { kind: "component", type: UploadIcon, selector: "[data-p-icon=\"upload\"]" }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "ngmodule", type: SharedModule }, { kind: "component", type: FileContent, selector: "[aglFileContent]", inputs: ["files", "badgeSeverity", "badgeValue", "previewWidth", "fileRemoveIconTemplate"], outputs: ["onRemove"] }, { kind: "directive", type: Bind, selector: "[aglBind]", inputs: ["aglBind"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1198
+ }
1199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUpload, decorators: [{
1200
+ type: Component,
1201
+ args: [{
1202
+ selector: 'agl-fileupload, agl-fileUpload',
1203
+ standalone: true,
1204
+ imports: [CommonModule, Button, ProgressBar, Message, PlusIcon, UploadIcon, TimesIcon, SharedModule, FileContent, Bind],
1205
+ template: `
1206
+ <div [class]="cn(cx('root'), styleClass)" [ngStyle]="style" *ngIf="mode === 'advanced'" [aglBind]="ptm('root')">
1207
+ <input [attr.aria-label]="browseFilesLabel" #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple" [accept]="accept" [disabled]="disabled || isChooseDisabled()" [attr.title]="''" [aglBind]="ptm('input')" />
1208
+ <div [class]="cx('header')" [aglBind]="ptm('header')">
1209
+ <ng-container *ngIf="!headerTemplate && !_headerTemplate">
1210
+ <agl-button
1211
+ [styleClass]="cn(cx('pcChooseButton'), chooseStyleClass)"
1212
+ [disabled]="disabled || isChooseDisabled()"
1213
+ (focus)="onFocus()"
1214
+ [label]="chooseButtonLabel"
1215
+ (blur)="onBlur()"
1216
+ (onClick)="choose()"
1217
+ (keydown.enter)="choose()"
1218
+ [buttonProps]="chooseButtonProps"
1219
+ [pt]="ptm('pcChooseButton')"
1220
+ [unstyled]="unstyled()"
1221
+ >
1222
+ <input
1223
+ [attr.aria-label]="browseFilesLabel"
1224
+ #advancedfileinput
1225
+ type="file"
1226
+ (change)="onFileSelect($event)"
1227
+ [multiple]="multiple"
1228
+ [accept]="accept"
1229
+ [disabled]="disabled || isChooseDisabled()"
1230
+ [attr.title]="''"
1231
+ [aglBind]="ptm('input')"
1232
+ />
1233
+ <ng-template #icon>
1234
+ <span *ngIf="chooseIcon" [class]="chooseIcon" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1235
+ <ng-container *ngIf="!chooseIcon">
1236
+ <svg data-p-icon="plus" *ngIf="!chooseIconTemplate && !_chooseIconTemplate" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon" />
1237
+ <span *ngIf="chooseIconTemplate || _chooseIconTemplate" [attr.aria-label]="true" [aglBind]="ptm('pcChooseButton')?.icon">
1238
+ <ng-template *ngTemplateOutlet="chooseIconTemplate || _chooseIconTemplate"></ng-template>
1239
+ </span>
1240
+ </ng-container>
1241
+ </ng-template>
1242
+ </agl-button>
1243
+
1244
+ <agl-button
1245
+ *ngIf="!auto && showUploadButton"
1246
+ [label]="uploadButtonLabel"
1247
+ (onClick)="upload()"
1248
+ [disabled]="!hasFiles() || isFileLimitExceeded()"
1249
+ [styleClass]="cn(cx('pcUploadButton'), uploadStyleClass)"
1250
+ [buttonProps]="uploadButtonProps"
1251
+ [pt]="ptm('pcUploadButton')"
1252
+ [unstyled]="unstyled()"
1253
+ >
1254
+ <ng-template #icon>
1255
+ <span *ngIf="uploadIcon" [ngClass]="uploadIcon" [attr.aria-hidden]="true" [aglBind]="ptm('pcUploadButton')?.icon"></span>
1256
+ <ng-container *ngIf="!uploadIcon">
1257
+ <svg data-p-icon="upload" *ngIf="!uploadIconTemplate && !_uploadIconTemplate" [aglBind]="ptm('pcUploadButton')?.icon" />
1258
+ <span *ngIf="uploadIconTemplate || _uploadIconTemplate" [attr.aria-hidden]="true" [aglBind]="ptm('pcUploadButton')?.icon">
1259
+ <ng-template *ngTemplateOutlet="uploadIconTemplate || _uploadIconTemplate"></ng-template>
1260
+ </span>
1261
+ </ng-container>
1262
+ </ng-template>
1263
+ </agl-button>
1264
+ <agl-button
1265
+ *ngIf="!auto && showCancelButton"
1266
+ [label]="cancelButtonLabel"
1267
+ (onClick)="clear()"
1268
+ [disabled]="!hasFiles() || uploading"
1269
+ [styleClass]="cn(cx('pcCancelButton'), cancelStyleClass)"
1270
+ [buttonProps]="cancelButtonProps"
1271
+ [pt]="ptm('pcCancelButton')"
1272
+ [unstyled]="unstyled()"
1273
+ >
1274
+ <ng-template #icon>
1275
+ <span *ngIf="cancelIcon" [ngClass]="cancelIcon"></span>
1276
+ <ng-container *ngIf="!cancelIcon">
1277
+ <svg data-p-icon="times" *ngIf="!cancelIconTemplate && !_cancelIconTemplate" [attr.aria-hidden]="true" />
1278
+ <span *ngIf="cancelIconTemplate || _cancelIconTemplate" [attr.aria-hidden]="true">
1279
+ <ng-template *ngTemplateOutlet="cancelIconTemplate || _cancelIconTemplate"></ng-template>
1280
+ </span>
1281
+ </ng-container>
1282
+ </ng-template>
1283
+ </agl-button>
1284
+ </ng-container>
1285
+ <ng-container
1286
+ *ngTemplateOutlet="
1287
+ headerTemplate || _headerTemplate;
1288
+ context: {
1289
+ $implicit: files,
1290
+ uploadedFiles: uploadedFiles,
1291
+ chooseCallback: choose.bind(this),
1292
+ clearCallback: clear.bind(this),
1293
+ uploadCallback: upload.bind(this)
1294
+ }
1295
+ "
1296
+ ></ng-container>
1297
+ <ng-container *ngTemplateOutlet="toolbarTemplate || _toolbarTemplate"></ng-container>
1298
+ </div>
1299
+ <div #content [class]="cx('content')" (dragenter)="onDragEnter($event)" (dragleave)="onDragLeave($event)" (drop)="onDrop($event)" [aglBind]="ptm('content')">
1300
+ @if (contentTemplate || _contentTemplate) {
1301
+ <ng-container
1302
+ *ngTemplateOutlet="
1303
+ contentTemplate || _contentTemplate;
1304
+ context: {
1305
+ $implicit: files,
1306
+ uploadedFiles: uploadedFiles,
1307
+ chooseCallback: choose.bind(this),
1308
+ clearCallback: clear.bind(this),
1309
+ removeUploadedFileCallback: removeUploadedFile.bind(this),
1310
+ removeFileCallback: remove.bind(this),
1311
+ progress: progress,
1312
+ messages: msgs
1313
+ }
1314
+ "
1315
+ ></ng-container>
1316
+ } @else {
1317
+ <agl-progressbar [value]="progress" [showValue]="false" *ngIf="hasFiles()" [pt]="ptm('pcProgressBar')"></agl-progressbar>
1318
+ @for (message of msgs; track message) {
1319
+ <agl-message [severity]="message.severity" [text]="message.text" [pt]="ptm('pcMessage')" [unstyled]="unstyled()"></agl-message>
1320
+ }
1321
+
1322
+ @if (hasFiles()) {
1323
+ <div [class]="cx('fileList')" [aglBind]="ptm('fileList')">
1324
+ <ng-template ngFor [ngForOf]="files" [ngForTemplate]="fileTemplate || _fileTemplate"></ng-template>
1325
+ @if (!fileTemplate && !_fileTemplate) {
1326
+ <div
1327
+ aglFileContent
1328
+ [unstyled]="unstyled()"
1329
+ [files]="files"
1330
+ (onRemove)="onRemoveClick($event)"
1331
+ [badgeValue]="pendingLabel"
1332
+ [previewWidth]="previewWidth"
1333
+ [fileRemoveIconTemplate]="cancelIconTemplate || _cancelIconTemplate"
1334
+ ></div>
1335
+ }
1336
+ </div>
1337
+ }
1338
+ @if (hasUploadedFiles()) {
1339
+ <div [class]="cx('fileList')" [aglBind]="ptm('fileList')">
1340
+ <ng-template ngFor [ngForOf]="uploadedFiles" [ngForTemplate]="fileTemplate || _fileTemplate"></ng-template>
1341
+ @if (!fileTemplate && !_fileTemplate) {
1342
+ <div
1343
+ aglFileContent
1344
+ [unstyled]="unstyled()"
1345
+ [files]="uploadedFiles"
1346
+ (onRemove)="onRemoveUploadedFileClick($event)"
1347
+ [badgeValue]="completedLabel()"
1348
+ badgeSeverity="success"
1349
+ [previewWidth]="previewWidth"
1350
+ [fileRemoveIconTemplate]="cancelIconTemplate || _cancelIconTemplate"
1351
+ ></div>
1352
+ }
1353
+ </div>
1354
+ }
1355
+ }
1356
+ @if ((emptyTemplate || _emptyTemplate) && !hasFiles() && !hasUploadedFiles()) {
1357
+ <ng-container *ngTemplateOutlet="emptyTemplate || _emptyTemplate" [aglBind]="ptm('empty')"></ng-container>
1358
+ }
1359
+ </div>
1360
+ </div>
1361
+ <div [class]="cn(cx('root'), styleClass)" *ngIf="mode === 'basic'" [aglBind]="ptm('root')">
1362
+ @for (message of msgs; track message) {
1363
+ <agl-message [severity]="message.severity" [text]="message.text" [pt]="ptm('pcMessage')" [unstyled]="unstyled()"></agl-message>
1364
+ }
1365
+
1366
+ <div [class]="cx('basicContent')" [aglBind]="ptm('basicContent')">
1367
+ <agl-button
1368
+ [styleClass]="cn(cx('pcChooseButton'), chooseStyleClass)"
1369
+ [disabled]="disabled"
1370
+ [label]="chooseButtonLabel"
1371
+ [style]="style"
1372
+ (onClick)="onBasicUploaderClick()"
1373
+ (keydown)="onBasicKeydown($event)"
1374
+ [buttonProps]="chooseButtonProps"
1375
+ [pt]="ptm('pcChooseButton')"
1376
+ [unstyled]="unstyled()"
1377
+ >
1378
+ <ng-template #icon>
1379
+ @if (hasFiles() && !auto) {
1380
+ <span *ngIf="uploadIcon" class="p-button-icon p-button-icon-left" [ngClass]="uploadIcon" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1381
+ <ng-container *ngIf="!uploadIcon">
1382
+ <svg data-p-icon="upload" *ngIf="!uploadIconTemplate && !_uploadIconTemplate" [class]="'p-button-icon p-button-icon-left'" [aglBind]="ptm('pcChooseButton')?.icon" />
1383
+ <span *ngIf="_uploadIconTemplate || uploadIconTemplate" class="p-button-icon p-button-icon-left" [aglBind]="ptm('pcChooseButton')?.icon">
1384
+ <ng-template *ngTemplateOutlet="_uploadIconTemplate || uploadIconTemplate"></ng-template>
1385
+ </span>
1386
+ </ng-container>
1387
+ } @else {
1388
+ <span *ngIf="chooseIcon" class="p-button-icon p-button-icon-left pi" [ngClass]="chooseIcon" [aglBind]="ptm('pcChooseButton')?.icon"></span>
1389
+ <ng-container *ngIf="!chooseIcon">
1390
+ <svg data-p-icon="plus" *ngIf="!chooseIconTemplate && !_chooseIconTemplate" [aglBind]="ptm('pcChooseButton')?.icon" />
1391
+ <ng-template *ngTemplateOutlet="chooseIconTemplate || _chooseIconTemplate"></ng-template>
1392
+ </ng-container>
1393
+ }
1394
+ </ng-template>
1395
+ <input [attr.aria-label]="browseFilesLabel" #basicfileinput type="file" [accept]="accept" [multiple]="multiple" [disabled]="disabled" (change)="onFileSelect($event)" (focus)="onFocus()" (blur)="onBlur()" [aglBind]="ptm('input')" />
1396
+ </agl-button>
1397
+ @if (!auto) {
1398
+ @if (!fileLabelTemplate && !_fileLabelTemplate) {
1399
+ <span>
1400
+ {{ basicFileChosenLabel() }}
1401
+ </span>
1402
+ } @else {
1403
+ <ng-container *ngTemplateOutlet="fileLabelTemplate || _fileLabelTemplate; context: { $implicit: files }"></ng-container>
1404
+ }
1405
+ }
1406
+ </div>
1407
+ </div>
1408
+ `,
1409
+ changeDetection: ChangeDetectionStrategy.OnPush,
1410
+ encapsulation: ViewEncapsulation.None,
1411
+ providers: [FileUploadStyle, { provide: FILEUPLOAD_INSTANCE, useExisting: FileUpload }, { provide: PARENT_INSTANCE, useExisting: FileUpload }],
1412
+ hostDirectives: [Bind]
1413
+ }]
1414
+ }], propDecorators: { name: [{
1415
+ type: Input
1416
+ }], url: [{
1417
+ type: Input
1418
+ }], method: [{
1419
+ type: Input
1420
+ }], multiple: [{
1421
+ type: Input,
1422
+ args: [{ transform: booleanAttribute }]
1423
+ }], accept: [{
1424
+ type: Input
1425
+ }], disabled: [{
1426
+ type: Input,
1427
+ args: [{ transform: booleanAttribute }]
1428
+ }], auto: [{
1429
+ type: Input,
1430
+ args: [{ transform: booleanAttribute }]
1431
+ }], withCredentials: [{
1432
+ type: Input,
1433
+ args: [{ transform: booleanAttribute }]
1434
+ }], maxFileSize: [{
1435
+ type: Input,
1436
+ args: [{ transform: numberAttribute }]
1437
+ }], invalidFileSizeMessageSummary: [{
1438
+ type: Input
1439
+ }], invalidFileSizeMessageDetail: [{
1440
+ type: Input
1441
+ }], invalidFileTypeMessageSummary: [{
1442
+ type: Input
1443
+ }], invalidFileTypeMessageDetail: [{
1444
+ type: Input
1445
+ }], invalidFileLimitMessageDetail: [{
1446
+ type: Input
1447
+ }], invalidFileLimitMessageSummary: [{
1448
+ type: Input
1449
+ }], style: [{
1450
+ type: Input
1451
+ }], styleClass: [{
1452
+ type: Input
1453
+ }], previewWidth: [{
1454
+ type: Input,
1455
+ args: [{ transform: numberAttribute }]
1456
+ }], chooseLabel: [{
1457
+ type: Input
1458
+ }], uploadLabel: [{
1459
+ type: Input
1460
+ }], cancelLabel: [{
1461
+ type: Input
1462
+ }], chooseIcon: [{
1463
+ type: Input
1464
+ }], uploadIcon: [{
1465
+ type: Input
1466
+ }], cancelIcon: [{
1467
+ type: Input
1468
+ }], showUploadButton: [{
1469
+ type: Input,
1470
+ args: [{ transform: booleanAttribute }]
1471
+ }], showCancelButton: [{
1472
+ type: Input,
1473
+ args: [{ transform: booleanAttribute }]
1474
+ }], mode: [{
1475
+ type: Input
1476
+ }], headers: [{
1477
+ type: Input
1478
+ }], customUpload: [{
1479
+ type: Input,
1480
+ args: [{ transform: booleanAttribute }]
1481
+ }], fileLimit: [{
1482
+ type: Input,
1483
+ args: [{ transform: (value) => numberAttribute(value, undefined) }]
1484
+ }], uploadStyleClass: [{
1485
+ type: Input
1486
+ }], cancelStyleClass: [{
1487
+ type: Input
1488
+ }], removeStyleClass: [{
1489
+ type: Input
1490
+ }], chooseStyleClass: [{
1491
+ type: Input
1492
+ }], chooseButtonProps: [{
1493
+ type: Input
1494
+ }], uploadButtonProps: [{
1495
+ type: Input
1496
+ }], cancelButtonProps: [{
1497
+ type: Input
1498
+ }], onBeforeUpload: [{
1499
+ type: Output
1500
+ }], onSend: [{
1501
+ type: Output
1502
+ }], onUpload: [{
1503
+ type: Output
1504
+ }], onError: [{
1505
+ type: Output
1506
+ }], onClear: [{
1507
+ type: Output
1508
+ }], onRemove: [{
1509
+ type: Output
1510
+ }], onSelect: [{
1511
+ type: Output
1512
+ }], onProgress: [{
1513
+ type: Output
1514
+ }], uploadHandler: [{
1515
+ type: Output
1516
+ }], onImageError: [{
1517
+ type: Output
1518
+ }], onRemoveUploadedFile: [{
1519
+ type: Output
1520
+ }], fileTemplate: [{
1521
+ type: ContentChild,
1522
+ args: ['file', { descendants: false }]
1523
+ }], headerTemplate: [{
1524
+ type: ContentChild,
1525
+ args: ['header', { descendants: false }]
1526
+ }], contentTemplate: [{
1527
+ type: ContentChild,
1528
+ args: ['content', { descendants: false }]
1529
+ }], toolbarTemplate: [{
1530
+ type: ContentChild,
1531
+ args: ['toolbar', { descendants: false }]
1532
+ }], chooseIconTemplate: [{
1533
+ type: ContentChild,
1534
+ args: ['chooseicon', { descendants: false }]
1535
+ }], fileLabelTemplate: [{
1536
+ type: ContentChild,
1537
+ args: ['filelabel', { descendants: false }]
1538
+ }], uploadIconTemplate: [{
1539
+ type: ContentChild,
1540
+ args: ['uploadicon', { descendants: false }]
1541
+ }], cancelIconTemplate: [{
1542
+ type: ContentChild,
1543
+ args: ['cancelicon', { descendants: false }]
1544
+ }], emptyTemplate: [{
1545
+ type: ContentChild,
1546
+ args: ['empty', { descendants: false }]
1547
+ }], advancedFileInput: [{
1548
+ type: ViewChild,
1549
+ args: ['advancedfileinput']
1550
+ }], basicFileInput: [{
1551
+ type: ViewChild,
1552
+ args: ['basicfileinput']
1553
+ }], content: [{
1554
+ type: ViewChild,
1555
+ args: ['content']
1556
+ }], files: [{
1557
+ type: Input
1558
+ }], templates: [{
1559
+ type: ContentChildren,
1560
+ args: [AglTemplate]
1561
+ }] } });
1562
+ class FileUploadModule {
1563
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1564
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: FileUploadModule, imports: [FileUpload, SharedModule], exports: [FileUpload, SharedModule] });
1565
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadModule, imports: [FileUpload, SharedModule, SharedModule] });
1566
+ }
1567
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: FileUploadModule, decorators: [{
1568
+ type: NgModule,
1569
+ args: [{
1570
+ imports: [FileUpload, SharedModule],
1571
+ exports: [FileUpload, SharedModule]
1572
+ }]
1573
+ }] });
1574
+
1575
+ /**
1576
+ * Generated bundle index. Do not edit.
1577
+ */
1578
+
1579
+ export { FileContent, FileUpload, FileUploadClasses, FileUploadModule, FileUploadStyle };
1580
+ //# sourceMappingURL=anguless-angulux-fileupload.mjs.map