primeng 22.1.0 → 22.1.2

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 (850) hide show
  1. package/fesm2022/primeng-accordion.mjs +998 -578
  2. package/fesm2022/primeng-accordion.mjs.map +1 -1
  3. package/fesm2022/primeng-animateonscroll.mjs +266 -165
  4. package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
  5. package/fesm2022/primeng-api.mjs +888 -847
  6. package/fesm2022/primeng-api.mjs.map +1 -1
  7. package/fesm2022/primeng-autocomplete.mjs +2534 -1592
  8. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  9. package/fesm2022/primeng-autofocus.mjs +114 -77
  10. package/fesm2022/primeng-autofocus.mjs.map +1 -1
  11. package/fesm2022/primeng-avatar.mjs +330 -189
  12. package/fesm2022/primeng-avatar.mjs.map +1 -1
  13. package/fesm2022/primeng-avatargroup.mjs +178 -95
  14. package/fesm2022/primeng-avatargroup.mjs.map +1 -1
  15. package/fesm2022/primeng-badge.mjs +290 -156
  16. package/fesm2022/primeng-badge.mjs.map +1 -1
  17. package/fesm2022/primeng-base.mjs +95 -101
  18. package/fesm2022/primeng-base.mjs.map +1 -1
  19. package/fesm2022/primeng-basecomponent.mjs +528 -489
  20. package/fesm2022/primeng-basecomponent.mjs.map +1 -1
  21. package/fesm2022/primeng-baseeditableholder.mjs +131 -69
  22. package/fesm2022/primeng-baseeditableholder.mjs.map +1 -1
  23. package/fesm2022/primeng-baseinput.mjs +214 -99
  24. package/fesm2022/primeng-baseinput.mjs.map +1 -1
  25. package/fesm2022/primeng-basemodelholder.mjs +39 -26
  26. package/fesm2022/primeng-basemodelholder.mjs.map +1 -1
  27. package/fesm2022/primeng-bind.mjs +156 -96
  28. package/fesm2022/primeng-bind.mjs.map +1 -1
  29. package/fesm2022/primeng-blockui.mjs +360 -228
  30. package/fesm2022/primeng-blockui.mjs.map +1 -1
  31. package/fesm2022/primeng-breadcrumb.mjs +458 -220
  32. package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
  33. package/fesm2022/primeng-button.mjs +1568 -703
  34. package/fesm2022/primeng-button.mjs.map +1 -1
  35. package/fesm2022/primeng-buttongroup.mjs +125 -73
  36. package/fesm2022/primeng-buttongroup.mjs.map +1 -1
  37. package/fesm2022/primeng-card.mjs +389 -178
  38. package/fesm2022/primeng-card.mjs.map +1 -1
  39. package/fesm2022/primeng-carousel.mjs +2393 -1773
  40. package/fesm2022/primeng-carousel.mjs.map +1 -1
  41. package/fesm2022/primeng-cascadeselect.mjs +2373 -1364
  42. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  43. package/fesm2022/primeng-chart.mjs +402 -231
  44. package/fesm2022/primeng-chart.mjs.map +1 -1
  45. package/fesm2022/primeng-checkbox.mjs +650 -353
  46. package/fesm2022/primeng-checkbox.mjs.map +1 -1
  47. package/fesm2022/primeng-chip.mjs +411 -224
  48. package/fesm2022/primeng-chip.mjs.map +1 -1
  49. package/fesm2022/primeng-classnames.mjs +95 -48
  50. package/fesm2022/primeng-classnames.mjs.map +1 -1
  51. package/fesm2022/primeng-colorpicker.mjs +890 -635
  52. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  53. package/fesm2022/primeng-commandmenu.mjs +568 -315
  54. package/fesm2022/primeng-commandmenu.mjs.map +1 -1
  55. package/fesm2022/primeng-compare.mjs +843 -480
  56. package/fesm2022/primeng-compare.mjs.map +1 -1
  57. package/fesm2022/primeng-config.mjs +415 -321
  58. package/fesm2022/primeng-config.mjs.map +1 -1
  59. package/fesm2022/primeng-confirmdialog.mjs +1188 -540
  60. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  61. package/fesm2022/primeng-confirmpopup.mjs +810 -531
  62. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  63. package/fesm2022/primeng-contextmenu.mjs +1862 -1051
  64. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  65. package/fesm2022/primeng-dataview.mjs +1130 -549
  66. package/fesm2022/primeng-dataview.mjs.map +1 -1
  67. package/fesm2022/primeng-datepicker.mjs +3750 -3354
  68. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  69. package/fesm2022/primeng-dialog.mjs +1635 -968
  70. package/fesm2022/primeng-dialog.mjs.map +1 -1
  71. package/fesm2022/primeng-divider.mjs +272 -148
  72. package/fesm2022/primeng-divider.mjs.map +1 -1
  73. package/fesm2022/primeng-dock.mjs +609 -385
  74. package/fesm2022/primeng-dock.mjs.map +1 -1
  75. package/fesm2022/primeng-dom.mjs +599 -761
  76. package/fesm2022/primeng-dom.mjs.map +1 -1
  77. package/fesm2022/primeng-dragdrop.mjs +323 -311
  78. package/fesm2022/primeng-dragdrop.mjs.map +1 -1
  79. package/fesm2022/primeng-drawer.mjs +913 -482
  80. package/fesm2022/primeng-drawer.mjs.map +1 -1
  81. package/fesm2022/primeng-dynamicdialog.mjs +828 -928
  82. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  83. package/fesm2022/primeng-editor.mjs +547 -390
  84. package/fesm2022/primeng-editor.mjs.map +1 -1
  85. package/fesm2022/primeng-fieldset.mjs +559 -274
  86. package/fesm2022/primeng-fieldset.mjs.map +1 -1
  87. package/fesm2022/primeng-fileupload.mjs +1836 -1047
  88. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  89. package/fesm2022/primeng-floatlabel.mjs +187 -102
  90. package/fesm2022/primeng-floatlabel.mjs.map +1 -1
  91. package/fesm2022/primeng-fluid.mjs +156 -85
  92. package/fesm2022/primeng-fluid.mjs.map +1 -1
  93. package/fesm2022/primeng-focustrap.mjs +150 -112
  94. package/fesm2022/primeng-focustrap.mjs.map +1 -1
  95. package/fesm2022/primeng-galleria.mjs +2589 -1406
  96. package/fesm2022/primeng-galleria.mjs.map +1 -1
  97. package/fesm2022/primeng-gallery.mjs +2768 -1798
  98. package/fesm2022/primeng-gallery.mjs.map +1 -1
  99. package/fesm2022/primeng-iconfield.mjs +192 -93
  100. package/fesm2022/primeng-iconfield.mjs.map +1 -1
  101. package/fesm2022/primeng-icons-angledoubledown.mjs +41 -23
  102. package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
  103. package/fesm2022/primeng-icons-angledoubleleft.mjs +41 -23
  104. package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
  105. package/fesm2022/primeng-icons-angledoubleright.mjs +41 -23
  106. package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
  107. package/fesm2022/primeng-icons-angledoubleup.mjs +41 -23
  108. package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
  109. package/fesm2022/primeng-icons-angledown.mjs +41 -23
  110. package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
  111. package/fesm2022/primeng-icons-angleleft.mjs +41 -23
  112. package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
  113. package/fesm2022/primeng-icons-angleright.mjs +41 -23
  114. package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
  115. package/fesm2022/primeng-icons-angleup.mjs +41 -23
  116. package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
  117. package/fesm2022/primeng-icons-arrowdown.mjs +46 -28
  118. package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
  119. package/fesm2022/primeng-icons-arrowdownleft.mjs +41 -23
  120. package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
  121. package/fesm2022/primeng-icons-arrowdownright.mjs +41 -23
  122. package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
  123. package/fesm2022/primeng-icons-arrowleft.mjs +46 -28
  124. package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
  125. package/fesm2022/primeng-icons-arrowright.mjs +41 -23
  126. package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
  127. package/fesm2022/primeng-icons-arrowup.mjs +46 -28
  128. package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
  129. package/fesm2022/primeng-icons-ban.mjs +46 -28
  130. package/fesm2022/primeng-icons-ban.mjs.map +1 -1
  131. package/fesm2022/primeng-icons-bars.mjs +41 -23
  132. package/fesm2022/primeng-icons-bars.mjs.map +1 -1
  133. package/fesm2022/primeng-icons-baseicon.mjs +111 -67
  134. package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
  135. package/fesm2022/primeng-icons-blank.mjs +40 -22
  136. package/fesm2022/primeng-icons-blank.mjs.map +1 -1
  137. package/fesm2022/primeng-icons-calendar.mjs +41 -23
  138. package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
  139. package/fesm2022/primeng-icons-caretleft.mjs +41 -23
  140. package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
  141. package/fesm2022/primeng-icons-caretright.mjs +41 -23
  142. package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
  143. package/fesm2022/primeng-icons-check.mjs +41 -23
  144. package/fesm2022/primeng-icons-check.mjs.map +1 -1
  145. package/fesm2022/primeng-icons-chevrondown.mjs +41 -23
  146. package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
  147. package/fesm2022/primeng-icons-chevronleft.mjs +41 -23
  148. package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
  149. package/fesm2022/primeng-icons-chevronright.mjs +41 -23
  150. package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
  151. package/fesm2022/primeng-icons-chevronup.mjs +41 -23
  152. package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
  153. package/fesm2022/primeng-icons-exclamationtriangle.mjs +46 -28
  154. package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
  155. package/fesm2022/primeng-icons-eye.mjs +41 -23
  156. package/fesm2022/primeng-icons-eye.mjs.map +1 -1
  157. package/fesm2022/primeng-icons-eyeslash.mjs +46 -28
  158. package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
  159. package/fesm2022/primeng-icons-filter.mjs +46 -28
  160. package/fesm2022/primeng-icons-filter.mjs.map +1 -1
  161. package/fesm2022/primeng-icons-filterfill.mjs +41 -23
  162. package/fesm2022/primeng-icons-filterfill.mjs.map +1 -1
  163. package/fesm2022/primeng-icons-filterslash.mjs +46 -28
  164. package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
  165. package/fesm2022/primeng-icons-home.mjs +46 -28
  166. package/fesm2022/primeng-icons-home.mjs.map +1 -1
  167. package/fesm2022/primeng-icons-infocircle.mjs +46 -28
  168. package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
  169. package/fesm2022/primeng-icons-minus.mjs +41 -23
  170. package/fesm2022/primeng-icons-minus.mjs.map +1 -1
  171. package/fesm2022/primeng-icons-pencil.mjs +46 -28
  172. package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
  173. package/fesm2022/primeng-icons-plus.mjs +46 -28
  174. package/fesm2022/primeng-icons-plus.mjs.map +1 -1
  175. package/fesm2022/primeng-icons-refresh.mjs +46 -28
  176. package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
  177. package/fesm2022/primeng-icons-search.mjs +46 -28
  178. package/fesm2022/primeng-icons-search.mjs.map +1 -1
  179. package/fesm2022/primeng-icons-searchminus.mjs +46 -28
  180. package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
  181. package/fesm2022/primeng-icons-searchplus.mjs +46 -28
  182. package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
  183. package/fesm2022/primeng-icons-sortalt.mjs +46 -28
  184. package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
  185. package/fesm2022/primeng-icons-sortamountdown.mjs +46 -28
  186. package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
  187. package/fesm2022/primeng-icons-sortamountupalt.mjs +46 -28
  188. package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
  189. package/fesm2022/primeng-icons-spinner.mjs +46 -28
  190. package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
  191. package/fesm2022/primeng-icons-star.mjs +46 -28
  192. package/fesm2022/primeng-icons-star.mjs.map +1 -1
  193. package/fesm2022/primeng-icons-starfill.mjs +46 -28
  194. package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
  195. package/fesm2022/primeng-icons-thlarge.mjs +46 -28
  196. package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
  197. package/fesm2022/primeng-icons-times.mjs +41 -23
  198. package/fesm2022/primeng-icons-times.mjs.map +1 -1
  199. package/fesm2022/primeng-icons-timescircle.mjs +46 -28
  200. package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
  201. package/fesm2022/primeng-icons-trash.mjs +46 -28
  202. package/fesm2022/primeng-icons-trash.mjs.map +1 -1
  203. package/fesm2022/primeng-icons-undo.mjs +46 -28
  204. package/fesm2022/primeng-icons-undo.mjs.map +1 -1
  205. package/fesm2022/primeng-icons-upload.mjs +46 -28
  206. package/fesm2022/primeng-icons-upload.mjs.map +1 -1
  207. package/fesm2022/primeng-icons-windowmaximize.mjs +46 -28
  208. package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
  209. package/fesm2022/primeng-icons-windowminimize.mjs +46 -28
  210. package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
  211. package/fesm2022/primeng-icons.mjs +53 -63
  212. package/fesm2022/primeng-iftalabel.mjs +153 -86
  213. package/fesm2022/primeng-iftalabel.mjs.map +1 -1
  214. package/fesm2022/primeng-image.mjs +1006 -534
  215. package/fesm2022/primeng-image.mjs.map +1 -1
  216. package/fesm2022/primeng-imagecompare.mjs +325 -165
  217. package/fesm2022/primeng-imagecompare.mjs.map +1 -1
  218. package/fesm2022/primeng-inplace.mjs +401 -199
  219. package/fesm2022/primeng-inplace.mjs.map +1 -1
  220. package/fesm2022/primeng-inputcolor.mjs +2631 -2180
  221. package/fesm2022/primeng-inputcolor.mjs.map +1 -1
  222. package/fesm2022/primeng-inputgroup.mjs +159 -91
  223. package/fesm2022/primeng-inputgroup.mjs.map +1 -1
  224. package/fesm2022/primeng-inputgroupaddon.mjs +153 -68
  225. package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
  226. package/fesm2022/primeng-inputicon.mjs +173 -72
  227. package/fesm2022/primeng-inputicon.mjs.map +1 -1
  228. package/fesm2022/primeng-inputmask.mjs +1607 -1379
  229. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  230. package/fesm2022/primeng-inputnumber.mjs +1646 -1305
  231. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  232. package/fesm2022/primeng-inputotp.mjs +571 -375
  233. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  234. package/fesm2022/primeng-inputpassword.mjs +179 -98
  235. package/fesm2022/primeng-inputpassword.mjs.map +1 -1
  236. package/fesm2022/primeng-inputtags.mjs +1212 -588
  237. package/fesm2022/primeng-inputtags.mjs.map +1 -1
  238. package/fesm2022/primeng-inputtext.mjs +325 -170
  239. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  240. package/fesm2022/primeng-keyfilter.mjs +268 -243
  241. package/fesm2022/primeng-keyfilter.mjs.map +1 -1
  242. package/fesm2022/primeng-knob.mjs +627 -403
  243. package/fesm2022/primeng-knob.mjs.map +1 -1
  244. package/fesm2022/primeng-label.mjs +143 -81
  245. package/fesm2022/primeng-label.mjs.map +1 -1
  246. package/fesm2022/primeng-license.mjs +10 -36
  247. package/fesm2022/primeng-license.mjs.map +1 -1
  248. package/fesm2022/primeng-listbox.mjs +2409 -1593
  249. package/fesm2022/primeng-listbox.mjs.map +1 -1
  250. package/fesm2022/primeng-megamenu.mjs +2006 -1117
  251. package/fesm2022/primeng-megamenu.mjs.map +1 -1
  252. package/fesm2022/primeng-menu.mjs +1437 -845
  253. package/fesm2022/primeng-menu.mjs.map +1 -1
  254. package/fesm2022/primeng-menubar.mjs +1832 -972
  255. package/fesm2022/primeng-menubar.mjs.map +1 -1
  256. package/fesm2022/primeng-message.mjs +474 -243
  257. package/fesm2022/primeng-message.mjs.map +1 -1
  258. package/fesm2022/primeng-metergroup.mjs +663 -331
  259. package/fesm2022/primeng-metergroup.mjs.map +1 -1
  260. package/fesm2022/primeng-motion.mjs +1179 -690
  261. package/fesm2022/primeng-motion.mjs.map +1 -1
  262. package/fesm2022/primeng-multiselect.mjs +3406 -1898
  263. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  264. package/fesm2022/primeng-orderlist.mjs +1308 -678
  265. package/fesm2022/primeng-orderlist.mjs.map +1 -1
  266. package/fesm2022/primeng-organizationchart.mjs +912 -597
  267. package/fesm2022/primeng-organizationchart.mjs.map +1 -1
  268. package/fesm2022/primeng-overlay.mjs +929 -610
  269. package/fesm2022/primeng-overlay.mjs.map +1 -1
  270. package/fesm2022/primeng-overlaybadge.mjs +291 -107
  271. package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
  272. package/fesm2022/primeng-paginator.mjs +961 -505
  273. package/fesm2022/primeng-paginator.mjs.map +1 -1
  274. package/fesm2022/primeng-panel.mjs +668 -347
  275. package/fesm2022/primeng-panel.mjs.map +1 -1
  276. package/fesm2022/primeng-panelmenu.mjs +1842 -966
  277. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  278. package/fesm2022/primeng-passthrough.mjs +10 -20
  279. package/fesm2022/primeng-passthrough.mjs.map +1 -1
  280. package/fesm2022/primeng-password.mjs +1518 -858
  281. package/fesm2022/primeng-password.mjs.map +1 -1
  282. package/fesm2022/primeng-picklist.mjs +2270 -1253
  283. package/fesm2022/primeng-picklist.mjs.map +1 -1
  284. package/fesm2022/primeng-popover.mjs +656 -434
  285. package/fesm2022/primeng-popover.mjs.map +1 -1
  286. package/fesm2022/primeng-progressbar.mjs +346 -168
  287. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  288. package/fesm2022/primeng-progressspinner.mjs +338 -188
  289. package/fesm2022/primeng-progressspinner.mjs.map +1 -1
  290. package/fesm2022/primeng-radiobutton.mjs +499 -294
  291. package/fesm2022/primeng-radiobutton.mjs.map +1 -1
  292. package/fesm2022/primeng-rating.mjs +583 -352
  293. package/fesm2022/primeng-rating.mjs.map +1 -1
  294. package/fesm2022/primeng-ripple.mjs +194 -170
  295. package/fesm2022/primeng-ripple.mjs.map +1 -1
  296. package/fesm2022/primeng-scrollarea.mjs +1018 -721
  297. package/fesm2022/primeng-scrollarea.mjs.map +1 -1
  298. package/fesm2022/primeng-scroller.mjs +1386 -1047
  299. package/fesm2022/primeng-scroller.mjs.map +1 -1
  300. package/fesm2022/primeng-scrollpanel.mjs +568 -454
  301. package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
  302. package/fesm2022/primeng-scrolltop.mjs +509 -261
  303. package/fesm2022/primeng-scrolltop.mjs.map +1 -1
  304. package/fesm2022/primeng-select.mjs +2948 -1714
  305. package/fesm2022/primeng-select.mjs.map +1 -1
  306. package/fesm2022/primeng-selectbutton.mjs +629 -339
  307. package/fesm2022/primeng-selectbutton.mjs.map +1 -1
  308. package/fesm2022/primeng-sidebar.mjs +2561 -1413
  309. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  310. package/fesm2022/primeng-skeleton.mjs +300 -157
  311. package/fesm2022/primeng-skeleton.mjs.map +1 -1
  312. package/fesm2022/primeng-slider.mjs +841 -604
  313. package/fesm2022/primeng-slider.mjs.map +1 -1
  314. package/fesm2022/primeng-speeddial.mjs +1115 -704
  315. package/fesm2022/primeng-speeddial.mjs.map +1 -1
  316. package/fesm2022/primeng-splitbutton.mjs +889 -340
  317. package/fesm2022/primeng-splitbutton.mjs.map +1 -1
  318. package/fesm2022/primeng-splitter.mjs +997 -762
  319. package/fesm2022/primeng-splitter.mjs.map +1 -1
  320. package/fesm2022/primeng-stepper.mjs +1355 -645
  321. package/fesm2022/primeng-stepper.mjs.map +1 -1
  322. package/fesm2022/primeng-steps.mjs +523 -407
  323. package/fesm2022/primeng-steps.mjs.map +1 -1
  324. package/fesm2022/primeng-styleclass.mjs +446 -330
  325. package/fesm2022/primeng-styleclass.mjs.map +1 -1
  326. package/fesm2022/primeng-table.mjs +9765 -5849
  327. package/fesm2022/primeng-table.mjs.map +1 -1
  328. package/fesm2022/primeng-tabs.mjs +1357 -815
  329. package/fesm2022/primeng-tabs.mjs.map +1 -1
  330. package/fesm2022/primeng-tag.mjs +305 -151
  331. package/fesm2022/primeng-tag.mjs.map +1 -1
  332. package/fesm2022/primeng-terminal.mjs +368 -216
  333. package/fesm2022/primeng-terminal.mjs.map +1 -1
  334. package/fesm2022/primeng-textarea.mjs +345 -204
  335. package/fesm2022/primeng-textarea.mjs.map +1 -1
  336. package/fesm2022/primeng-tieredmenu.mjs +1917 -1094
  337. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  338. package/fesm2022/primeng-timeline.mjs +304 -165
  339. package/fesm2022/primeng-timeline.mjs.map +1 -1
  340. package/fesm2022/primeng-toast.mjs +1369 -928
  341. package/fesm2022/primeng-toast.mjs.map +1 -1
  342. package/fesm2022/primeng-togglebutton.mjs +563 -309
  343. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  344. package/fesm2022/primeng-toggleswitch.mjs +464 -237
  345. package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
  346. package/fesm2022/primeng-toolbar.mjs +299 -129
  347. package/fesm2022/primeng-toolbar.mjs.map +1 -1
  348. package/fesm2022/primeng-tooltip.mjs +1018 -765
  349. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  350. package/fesm2022/primeng-tree.mjs +2681 -1888
  351. package/fesm2022/primeng-tree.mjs.map +1 -1
  352. package/fesm2022/primeng-treeselect.mjs +1678 -927
  353. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  354. package/fesm2022/primeng-treetable.mjs +5849 -3742
  355. package/fesm2022/primeng-treetable.mjs.map +1 -1
  356. package/fesm2022/primeng-ts-helpers.mjs +0 -4
  357. package/fesm2022/primeng-types-accordion.mjs +0 -4
  358. package/fesm2022/primeng-types-autocomplete.mjs +0 -4
  359. package/fesm2022/primeng-types-avatar.mjs +0 -4
  360. package/fesm2022/primeng-types-avatargroup.mjs +0 -4
  361. package/fesm2022/primeng-types-badge.mjs +0 -4
  362. package/fesm2022/primeng-types-blockui.mjs +0 -4
  363. package/fesm2022/primeng-types-breadcrumb.mjs +0 -4
  364. package/fesm2022/primeng-types-button.mjs +0 -4
  365. package/fesm2022/primeng-types-card.mjs +0 -4
  366. package/fesm2022/primeng-types-carousel.mjs +0 -4
  367. package/fesm2022/primeng-types-cascadeselect.mjs +0 -4
  368. package/fesm2022/primeng-types-chart.mjs +0 -4
  369. package/fesm2022/primeng-types-checkbox.mjs +0 -4
  370. package/fesm2022/primeng-types-chip.mjs +0 -4
  371. package/fesm2022/primeng-types-colorpicker.mjs +0 -4
  372. package/fesm2022/primeng-types-commandmenu.mjs +0 -4
  373. package/fesm2022/primeng-types-compare.mjs +0 -4
  374. package/fesm2022/primeng-types-confirmdialog.mjs +0 -4
  375. package/fesm2022/primeng-types-confirmpopup.mjs +0 -4
  376. package/fesm2022/primeng-types-contextmenu.mjs +0 -4
  377. package/fesm2022/primeng-types-dataview.mjs +0 -4
  378. package/fesm2022/primeng-types-datepicker.mjs +0 -4
  379. package/fesm2022/primeng-types-dialog.mjs +0 -4
  380. package/fesm2022/primeng-types-divider.mjs +0 -4
  381. package/fesm2022/primeng-types-dock.mjs +0 -4
  382. package/fesm2022/primeng-types-drawer.mjs +0 -4
  383. package/fesm2022/primeng-types-editor.mjs +0 -4
  384. package/fesm2022/primeng-types-fieldset.mjs +0 -4
  385. package/fesm2022/primeng-types-fileupload.mjs +0 -4
  386. package/fesm2022/primeng-types-floatlabel.mjs +0 -4
  387. package/fesm2022/primeng-types-fluid.mjs +0 -4
  388. package/fesm2022/primeng-types-galleria.mjs +0 -4
  389. package/fesm2022/primeng-types-gallery.mjs +0 -4
  390. package/fesm2022/primeng-types-iconfield.mjs +0 -4
  391. package/fesm2022/primeng-types-iftalabel.mjs +0 -4
  392. package/fesm2022/primeng-types-image.mjs +0 -4
  393. package/fesm2022/primeng-types-imagecompare.mjs +0 -4
  394. package/fesm2022/primeng-types-inplace.mjs +0 -4
  395. package/fesm2022/primeng-types-inputcolor.mjs +0 -4
  396. package/fesm2022/primeng-types-inputgroup.mjs +0 -4
  397. package/fesm2022/primeng-types-inputgroupaddon.mjs +0 -4
  398. package/fesm2022/primeng-types-inputicon.mjs +0 -4
  399. package/fesm2022/primeng-types-inputmask.mjs +0 -4
  400. package/fesm2022/primeng-types-inputnumber.mjs +0 -4
  401. package/fesm2022/primeng-types-inputotp.mjs +0 -4
  402. package/fesm2022/primeng-types-inputpassword.mjs +0 -4
  403. package/fesm2022/primeng-types-inputtags.mjs +0 -4
  404. package/fesm2022/primeng-types-inputtext.mjs +0 -4
  405. package/fesm2022/primeng-types-knob.mjs +0 -4
  406. package/fesm2022/primeng-types-label.mjs +0 -4
  407. package/fesm2022/primeng-types-listbox.mjs +0 -4
  408. package/fesm2022/primeng-types-megamenu.mjs +0 -4
  409. package/fesm2022/primeng-types-menu.mjs +0 -4
  410. package/fesm2022/primeng-types-menubar.mjs +0 -4
  411. package/fesm2022/primeng-types-message.mjs +0 -4
  412. package/fesm2022/primeng-types-metergroup.mjs +0 -4
  413. package/fesm2022/primeng-types-motion.mjs +0 -4
  414. package/fesm2022/primeng-types-multiselect.mjs +0 -4
  415. package/fesm2022/primeng-types-orderlist.mjs +0 -4
  416. package/fesm2022/primeng-types-organizationchart.mjs +0 -4
  417. package/fesm2022/primeng-types-overlay.mjs +0 -4
  418. package/fesm2022/primeng-types-overlaybadge.mjs +0 -4
  419. package/fesm2022/primeng-types-paginator.mjs +0 -4
  420. package/fesm2022/primeng-types-panel.mjs +0 -4
  421. package/fesm2022/primeng-types-panelmenu.mjs +0 -4
  422. package/fesm2022/primeng-types-password.mjs +0 -4
  423. package/fesm2022/primeng-types-picklist.mjs +0 -4
  424. package/fesm2022/primeng-types-popover.mjs +0 -4
  425. package/fesm2022/primeng-types-progressbar.mjs +0 -4
  426. package/fesm2022/primeng-types-progressspinner.mjs +0 -4
  427. package/fesm2022/primeng-types-radiobutton.mjs +0 -4
  428. package/fesm2022/primeng-types-rating.mjs +0 -4
  429. package/fesm2022/primeng-types-scrollarea.mjs +0 -4
  430. package/fesm2022/primeng-types-scroller.mjs +0 -4
  431. package/fesm2022/primeng-types-scrollpanel.mjs +0 -4
  432. package/fesm2022/primeng-types-scrolltop.mjs +0 -4
  433. package/fesm2022/primeng-types-select.mjs +0 -4
  434. package/fesm2022/primeng-types-selectbutton.mjs +0 -4
  435. package/fesm2022/primeng-types-shared.mjs +0 -4
  436. package/fesm2022/primeng-types-sidebar.mjs +0 -4
  437. package/fesm2022/primeng-types-skeleton.mjs +0 -4
  438. package/fesm2022/primeng-types-slider.mjs +0 -4
  439. package/fesm2022/primeng-types-speeddial.mjs +0 -4
  440. package/fesm2022/primeng-types-splitbutton.mjs +0 -4
  441. package/fesm2022/primeng-types-splitter.mjs +0 -4
  442. package/fesm2022/primeng-types-stepper.mjs +0 -4
  443. package/fesm2022/primeng-types-table.mjs +0 -4
  444. package/fesm2022/primeng-types-tabs.mjs +0 -4
  445. package/fesm2022/primeng-types-tag.mjs +0 -4
  446. package/fesm2022/primeng-types-terminal.mjs +0 -4
  447. package/fesm2022/primeng-types-textarea.mjs +0 -4
  448. package/fesm2022/primeng-types-tieredmenu.mjs +0 -4
  449. package/fesm2022/primeng-types-timeline.mjs +0 -4
  450. package/fesm2022/primeng-types-toast.mjs +0 -4
  451. package/fesm2022/primeng-types-togglebutton.mjs +0 -4
  452. package/fesm2022/primeng-types-toggleswitch.mjs +0 -4
  453. package/fesm2022/primeng-types-toolbar.mjs +0 -4
  454. package/fesm2022/primeng-types-tooltip.mjs +0 -4
  455. package/fesm2022/primeng-types-tree.mjs +0 -4
  456. package/fesm2022/primeng-types-treeselect.mjs +0 -4
  457. package/fesm2022/primeng-types-treetable.mjs +0 -4
  458. package/fesm2022/primeng-usestyle.mjs +105 -109
  459. package/fesm2022/primeng-usestyle.mjs.map +1 -1
  460. package/fesm2022/primeng-utils.mjs +238 -328
  461. package/fesm2022/primeng-utils.mjs.map +1 -1
  462. package/fesm2022/primeng.mjs +1 -5
  463. package/fesm2022/primeng.mjs.map +1 -1
  464. package/package.json +7 -2
  465. package/types/primeng-accordion.d.ts +289 -221
  466. package/types/primeng-animateonscroll.d.ts +89 -61
  467. package/types/primeng-api.d.ts +1760 -1790
  468. package/types/primeng-autocomplete.d.ts +1054 -757
  469. package/types/primeng-autofocus.d.ts +27 -24
  470. package/types/primeng-avatar.d.ts +153 -117
  471. package/types/primeng-avatargroup.d.ts +46 -43
  472. package/types/primeng-badge.d.ts +105 -81
  473. package/types/primeng-base.d.ts +49 -52
  474. package/types/primeng-basecomponent.d.ts +191 -174
  475. package/types/primeng-baseeditableholder.d.ts +63 -45
  476. package/types/primeng-baseinput.d.ts +122 -74
  477. package/types/primeng-basemodelholder.d.ts +9 -12
  478. package/types/primeng-bind.d.ts +36 -32
  479. package/types/primeng-blockui.d.ts +99 -80
  480. package/types/primeng-breadcrumb.d.ts +159 -133
  481. package/types/primeng-button.d.ts +690 -427
  482. package/types/primeng-buttongroup.d.ts +27 -33
  483. package/types/primeng-card.d.ts +131 -122
  484. package/types/primeng-carousel.d.ts +800 -632
  485. package/types/primeng-cascadeselect.d.ts +754 -565
  486. package/types/primeng-chart.d.ts +160 -116
  487. package/types/primeng-checkbox.d.ts +299 -211
  488. package/types/primeng-chip.d.ts +189 -147
  489. package/types/primeng-classnames.d.ts +23 -21
  490. package/types/primeng-colorpicker.d.ts +325 -272
  491. package/types/primeng-commandmenu.d.ts +213 -165
  492. package/types/primeng-compare.d.ts +267 -191
  493. package/types/primeng-config.d.ts +294 -304
  494. package/types/primeng-confirmdialog.d.ts +505 -328
  495. package/types/primeng-confirmpopup.d.ts +254 -214
  496. package/types/primeng-contextmenu.d.ts +522 -368
  497. package/types/primeng-dataview.d.ts +498 -345
  498. package/types/primeng-datepicker.d.ts +1269 -972
  499. package/types/primeng-dialog.d.ts +668 -465
  500. package/types/primeng-divider.d.ts +114 -100
  501. package/types/primeng-dock.d.ts +207 -175
  502. package/types/primeng-dom.d.ts +97 -100
  503. package/types/primeng-dragdrop.d.ts +142 -107
  504. package/types/primeng-drawer.d.ts +355 -257
  505. package/types/primeng-dynamicdialog.d.ts +528 -540
  506. package/types/primeng-editor.d.ts +211 -165
  507. package/types/primeng-fieldset.d.ts +199 -166
  508. package/types/primeng-fileupload.d.ts +727 -526
  509. package/types/primeng-floatlabel.d.ts +55 -51
  510. package/types/primeng-fluid.d.ts +37 -39
  511. package/types/primeng-focustrap.d.ts +30 -27
  512. package/types/primeng-galleria.d.ts +570 -433
  513. package/types/primeng-gallery.d.ts +754 -552
  514. package/types/primeng-iconfield.d.ts +54 -45
  515. package/types/primeng-icons-angledoubledown.d.ts +6 -9
  516. package/types/primeng-icons-angledoubleleft.d.ts +6 -9
  517. package/types/primeng-icons-angledoubleright.d.ts +6 -9
  518. package/types/primeng-icons-angledoubleup.d.ts +6 -9
  519. package/types/primeng-icons-angledown.d.ts +6 -9
  520. package/types/primeng-icons-angleleft.d.ts +6 -9
  521. package/types/primeng-icons-angleright.d.ts +6 -9
  522. package/types/primeng-icons-angleup.d.ts +6 -9
  523. package/types/primeng-icons-arrowdown.d.ts +8 -11
  524. package/types/primeng-icons-arrowdownleft.d.ts +6 -9
  525. package/types/primeng-icons-arrowdownright.d.ts +6 -9
  526. package/types/primeng-icons-arrowleft.d.ts +8 -11
  527. package/types/primeng-icons-arrowright.d.ts +6 -9
  528. package/types/primeng-icons-arrowup.d.ts +8 -11
  529. package/types/primeng-icons-ban.d.ts +8 -11
  530. package/types/primeng-icons-bars.d.ts +6 -9
  531. package/types/primeng-icons-baseicon.d.ts +24 -25
  532. package/types/primeng-icons-blank.d.ts +6 -9
  533. package/types/primeng-icons-calendar.d.ts +6 -9
  534. package/types/primeng-icons-caretleft.d.ts +6 -9
  535. package/types/primeng-icons-caretright.d.ts +6 -9
  536. package/types/primeng-icons-check.d.ts +6 -9
  537. package/types/primeng-icons-chevrondown.d.ts +6 -9
  538. package/types/primeng-icons-chevronleft.d.ts +6 -9
  539. package/types/primeng-icons-chevronright.d.ts +6 -9
  540. package/types/primeng-icons-chevronup.d.ts +6 -9
  541. package/types/primeng-icons-exclamationtriangle.d.ts +8 -11
  542. package/types/primeng-icons-eye.d.ts +6 -9
  543. package/types/primeng-icons-eyeslash.d.ts +8 -11
  544. package/types/primeng-icons-filter.d.ts +8 -11
  545. package/types/primeng-icons-filterfill.d.ts +6 -9
  546. package/types/primeng-icons-filterslash.d.ts +8 -11
  547. package/types/primeng-icons-home.d.ts +8 -11
  548. package/types/primeng-icons-infocircle.d.ts +8 -11
  549. package/types/primeng-icons-minus.d.ts +6 -9
  550. package/types/primeng-icons-pencil.d.ts +8 -11
  551. package/types/primeng-icons-plus.d.ts +8 -11
  552. package/types/primeng-icons-refresh.d.ts +8 -11
  553. package/types/primeng-icons-search.d.ts +8 -11
  554. package/types/primeng-icons-searchminus.d.ts +8 -11
  555. package/types/primeng-icons-searchplus.d.ts +8 -11
  556. package/types/primeng-icons-sortalt.d.ts +8 -11
  557. package/types/primeng-icons-sortamountdown.d.ts +8 -11
  558. package/types/primeng-icons-sortamountupalt.d.ts +8 -11
  559. package/types/primeng-icons-spinner.d.ts +8 -11
  560. package/types/primeng-icons-star.d.ts +8 -11
  561. package/types/primeng-icons-starfill.d.ts +8 -11
  562. package/types/primeng-icons-thlarge.d.ts +8 -11
  563. package/types/primeng-icons-times.d.ts +6 -9
  564. package/types/primeng-icons-timescircle.d.ts +8 -11
  565. package/types/primeng-icons-trash.d.ts +8 -11
  566. package/types/primeng-icons-undo.d.ts +8 -11
  567. package/types/primeng-icons-upload.d.ts +8 -11
  568. package/types/primeng-icons-windowmaximize.d.ts +8 -11
  569. package/types/primeng-icons-windowminimize.d.ts +8 -11
  570. package/types/primeng-icons.d.ts +53 -53
  571. package/types/primeng-iftalabel.d.ts +38 -40
  572. package/types/primeng-image.d.ts +404 -311
  573. package/types/primeng-imagecompare.d.ts +94 -80
  574. package/types/primeng-inplace.d.ts +126 -114
  575. package/types/primeng-inputcolor.d.ts +645 -508
  576. package/types/primeng-inputgroup.d.ts +42 -44
  577. package/types/primeng-inputgroupaddon.d.ts +31 -31
  578. package/types/primeng-inputicon.d.ts +38 -32
  579. package/types/primeng-inputmask.d.ts +520 -365
  580. package/types/primeng-inputnumber.d.ts +573 -408
  581. package/types/primeng-inputotp.d.ts +206 -159
  582. package/types/primeng-inputpassword.d.ts +60 -47
  583. package/types/primeng-inputtags.d.ts +453 -301
  584. package/types/primeng-inputtext.d.ts +130 -96
  585. package/types/primeng-keyfilter.d.ts +62 -53
  586. package/types/primeng-knob.d.ts +257 -186
  587. package/types/primeng-label.d.ts +37 -39
  588. package/types/primeng-license.d.ts +1 -3
  589. package/types/primeng-listbox.d.ts +1040 -786
  590. package/types/primeng-megamenu.d.ts +536 -386
  591. package/types/primeng-menu.d.ts +478 -363
  592. package/types/primeng-menubar.d.ts +495 -354
  593. package/types/primeng-message.d.ts +192 -151
  594. package/types/primeng-metergroup.d.ts +249 -189
  595. package/types/primeng-motion.d.ts +601 -385
  596. package/types/primeng-multiselect.d.ts +1193 -861
  597. package/types/primeng-orderlist.d.ts +539 -393
  598. package/types/primeng-organizationchart.d.ts +236 -195
  599. package/types/primeng-overlay.d.ts +394 -294
  600. package/types/primeng-overlaybadge.d.ts +95 -64
  601. package/types/primeng-paginator.d.ts +410 -314
  602. package/types/primeng-panel.d.ts +267 -217
  603. package/types/primeng-panelmenu.d.ts +255 -231
  604. package/types/primeng-passthrough.d.ts +5 -7
  605. package/types/primeng-password.d.ts +606 -433
  606. package/types/primeng-picklist.d.ts +1042 -759
  607. package/types/primeng-popover.d.ts +235 -176
  608. package/types/primeng-progressbar.d.ts +131 -102
  609. package/types/primeng-progressspinner.d.ts +145 -111
  610. package/types/primeng-radiobutton.d.ts +219 -171
  611. package/types/primeng-rating.d.ts +240 -192
  612. package/types/primeng-ripple.d.ts +39 -45
  613. package/types/primeng-scrollarea.d.ts +292 -243
  614. package/types/primeng-scroller.d.ts +523 -390
  615. package/types/primeng-scrollpanel.d.ts +135 -131
  616. package/types/primeng-scrolltop.d.ts +170 -126
  617. package/types/primeng-select.d.ts +1014 -741
  618. package/types/primeng-selectbutton.d.ts +239 -167
  619. package/types/primeng-sidebar.d.ts +793 -562
  620. package/types/primeng-skeleton.d.ts +116 -87
  621. package/types/primeng-slider.d.ts +378 -311
  622. package/types/primeng-speeddial.d.ts +495 -375
  623. package/types/primeng-splitbutton.d.ts +382 -243
  624. package/types/primeng-splitter.d.ts +392 -301
  625. package/types/primeng-stepper.d.ts +417 -257
  626. package/types/primeng-steps.d.ts +158 -137
  627. package/types/primeng-styleclass.d.ts +163 -105
  628. package/types/primeng-table.d.ts +2898 -1912
  629. package/types/primeng-tabs.d.ts +463 -307
  630. package/types/primeng-tag.d.ts +107 -88
  631. package/types/primeng-terminal.d.ts +132 -120
  632. package/types/primeng-textarea.d.ts +146 -110
  633. package/types/primeng-tieredmenu.d.ts +573 -401
  634. package/types/primeng-timeline.d.ts +126 -112
  635. package/types/primeng-toast.d.ts +313 -252
  636. package/types/primeng-togglebutton.d.ts +255 -185
  637. package/types/primeng-toggleswitch.d.ts +190 -144
  638. package/types/primeng-toolbar.d.ts +83 -79
  639. package/types/primeng-tooltip.d.ts +335 -235
  640. package/types/primeng-tree.d.ts +763 -562
  641. package/types/primeng-treeselect.d.ts +750 -544
  642. package/types/primeng-treetable.d.ts +1839 -1315
  643. package/types/primeng-ts-helpers.d.ts +4 -6
  644. package/types/primeng-types-accordion.d.ts +58 -62
  645. package/types/primeng-types-autocomplete.d.ts +230 -233
  646. package/types/primeng-types-avatar.d.ts +25 -28
  647. package/types/primeng-types-avatargroup.d.ts +11 -14
  648. package/types/primeng-types-badge.d.ts +13 -16
  649. package/types/primeng-types-blockui.d.ts +18 -21
  650. package/types/primeng-types-breadcrumb.d.ts +65 -68
  651. package/types/primeng-types-button.d.ts +106 -109
  652. package/types/primeng-types-card.d.ts +54 -57
  653. package/types/primeng-types-carousel.d.ts +143 -146
  654. package/types/primeng-types-cascadeselect.d.ts +186 -192
  655. package/types/primeng-types-chart.d.ts +34 -39
  656. package/types/primeng-types-checkbox.d.ts +52 -55
  657. package/types/primeng-types-chip.d.ts +48 -51
  658. package/types/primeng-types-colorpicker.d.ts +59 -62
  659. package/types/primeng-types-commandmenu.d.ts +98 -101
  660. package/types/primeng-types-compare.d.ts +33 -36
  661. package/types/primeng-types-confirmdialog.d.ts +124 -127
  662. package/types/primeng-types-confirmpopup.d.ts +75 -78
  663. package/types/primeng-types-contextmenu.d.ts +100 -103
  664. package/types/primeng-types-dataview.d.ts +180 -183
  665. package/types/primeng-types-datepicker.d.ts +442 -445
  666. package/types/primeng-types-dialog.d.ts +93 -96
  667. package/types/primeng-types-divider.d.ts +14 -17
  668. package/types/primeng-types-dock.d.ts +45 -48
  669. package/types/primeng-types-drawer.d.ts +62 -65
  670. package/types/primeng-types-editor.d.ts +143 -146
  671. package/types/primeng-types-fieldset.d.ts +83 -87
  672. package/types/primeng-types-fileupload.d.ts +296 -301
  673. package/types/primeng-types-floatlabel.d.ts +12 -15
  674. package/types/primeng-types-fluid.d.ts +11 -14
  675. package/types/primeng-types-galleria.d.ts +209 -212
  676. package/types/primeng-types-gallery.d.ts +195 -198
  677. package/types/primeng-types-iconfield.d.ts +12 -15
  678. package/types/primeng-types-iftalabel.d.ts +11 -14
  679. package/types/primeng-types-image.d.ts +118 -121
  680. package/types/primeng-types-imagecompare.d.ts +22 -25
  681. package/types/primeng-types-inplace.d.ts +46 -49
  682. package/types/primeng-types-inputcolor.d.ts +86 -89
  683. package/types/primeng-types-inputgroup.d.ts +11 -14
  684. package/types/primeng-types-inputgroupaddon.d.ts +11 -14
  685. package/types/primeng-types-inputicon.d.ts +11 -14
  686. package/types/primeng-types-inputmask.d.ts +30 -33
  687. package/types/primeng-types-inputnumber.d.ts +72 -75
  688. package/types/primeng-types-inputotp.d.ts +67 -70
  689. package/types/primeng-types-inputpassword.d.ts +7 -10
  690. package/types/primeng-types-inputtags.d.ts +122 -125
  691. package/types/primeng-types-inputtext.d.ts +7 -10
  692. package/types/primeng-types-knob.d.ts +23 -26
  693. package/types/primeng-types-label.d.ts +7 -10
  694. package/types/primeng-types-listbox.d.ts +262 -266
  695. package/types/primeng-types-megamenu.d.ts +135 -138
  696. package/types/primeng-types-menu.d.ts +98 -101
  697. package/types/primeng-types-menubar.d.ts +122 -125
  698. package/types/primeng-types-message.d.ts +69 -72
  699. package/types/primeng-types-metergroup.d.ts +137 -140
  700. package/types/primeng-types-motion.d.ts +11 -14
  701. package/types/primeng-types-multiselect.d.ts +329 -333
  702. package/types/primeng-types-orderlist.d.ts +126 -129
  703. package/types/primeng-types-organizationchart.d.ts +147 -153
  704. package/types/primeng-types-overlay.d.ts +31 -34
  705. package/types/primeng-types-overlaybadge.d.ts +17 -20
  706. package/types/primeng-types-paginator.d.ts +131 -134
  707. package/types/primeng-types-panel.d.ts +91 -95
  708. package/types/primeng-types-panelmenu.d.ts +150 -153
  709. package/types/primeng-types-password.d.ts +94 -97
  710. package/types/primeng-types-picklist.d.ts +250 -260
  711. package/types/primeng-types-popover.d.ts +33 -36
  712. package/types/primeng-types-progressbar.d.ts +33 -36
  713. package/types/primeng-types-progressspinner.d.ts +27 -30
  714. package/types/primeng-types-radiobutton.d.ts +29 -32
  715. package/types/primeng-types-rating.d.ts +62 -65
  716. package/types/primeng-types-scrollarea.d.ts +35 -38
  717. package/types/primeng-types-scroller.d.ts +142 -146
  718. package/types/primeng-types-scrollpanel.d.ts +31 -34
  719. package/types/primeng-types-scrolltop.d.ts +37 -40
  720. package/types/primeng-types-select.d.ts +251 -254
  721. package/types/primeng-types-selectbutton.d.ts +56 -59
  722. package/types/primeng-types-shared.d.ts +6 -9
  723. package/types/primeng-types-sidebar.d.ts +105 -108
  724. package/types/primeng-types-skeleton.d.ts +11 -14
  725. package/types/primeng-types-slider.d.ts +59 -62
  726. package/types/primeng-types-speeddial.d.ts +71 -74
  727. package/types/primeng-types-splitbutton.d.ts +35 -38
  728. package/types/primeng-types-splitter.d.ts +58 -63
  729. package/types/primeng-types-stepper.d.ts +77 -80
  730. package/types/primeng-types-table.d.ts +743 -749
  731. package/types/primeng-types-tabs.d.ts +48 -51
  732. package/types/primeng-types-tag.d.ts +27 -30
  733. package/types/primeng-types-terminal.d.ts +43 -46
  734. package/types/primeng-types-textarea.d.ts +11 -14
  735. package/types/primeng-types-tieredmenu.d.ts +154 -157
  736. package/types/primeng-types-timeline.d.ts +60 -63
  737. package/types/primeng-types-toast.d.ts +92 -95
  738. package/types/primeng-types-togglebutton.d.ts +52 -55
  739. package/types/primeng-types-toggleswitch.d.ts +41 -44
  740. package/types/primeng-types-toolbar.d.ts +34 -37
  741. package/types/primeng-types-tooltip.d.ts +17 -20
  742. package/types/primeng-types-tree.d.ts +237 -246
  743. package/types/primeng-types-treeselect.d.ts +198 -202
  744. package/types/primeng-types-treetable.d.ts +492 -497
  745. package/types/primeng-usestyle.d.ts +28 -31
  746. package/types/primeng-utils.d.ts +37 -40
  747. package/types/primeng.d.ts +2 -2
  748. package/fesm2022/primeng-icons.mjs.map +0 -1
  749. package/fesm2022/primeng-ts-helpers.mjs.map +0 -1
  750. package/fesm2022/primeng-types-accordion.mjs.map +0 -1
  751. package/fesm2022/primeng-types-autocomplete.mjs.map +0 -1
  752. package/fesm2022/primeng-types-avatar.mjs.map +0 -1
  753. package/fesm2022/primeng-types-avatargroup.mjs.map +0 -1
  754. package/fesm2022/primeng-types-badge.mjs.map +0 -1
  755. package/fesm2022/primeng-types-blockui.mjs.map +0 -1
  756. package/fesm2022/primeng-types-breadcrumb.mjs.map +0 -1
  757. package/fesm2022/primeng-types-button.mjs.map +0 -1
  758. package/fesm2022/primeng-types-card.mjs.map +0 -1
  759. package/fesm2022/primeng-types-carousel.mjs.map +0 -1
  760. package/fesm2022/primeng-types-cascadeselect.mjs.map +0 -1
  761. package/fesm2022/primeng-types-chart.mjs.map +0 -1
  762. package/fesm2022/primeng-types-checkbox.mjs.map +0 -1
  763. package/fesm2022/primeng-types-chip.mjs.map +0 -1
  764. package/fesm2022/primeng-types-colorpicker.mjs.map +0 -1
  765. package/fesm2022/primeng-types-commandmenu.mjs.map +0 -1
  766. package/fesm2022/primeng-types-compare.mjs.map +0 -1
  767. package/fesm2022/primeng-types-confirmdialog.mjs.map +0 -1
  768. package/fesm2022/primeng-types-confirmpopup.mjs.map +0 -1
  769. package/fesm2022/primeng-types-contextmenu.mjs.map +0 -1
  770. package/fesm2022/primeng-types-dataview.mjs.map +0 -1
  771. package/fesm2022/primeng-types-datepicker.mjs.map +0 -1
  772. package/fesm2022/primeng-types-dialog.mjs.map +0 -1
  773. package/fesm2022/primeng-types-divider.mjs.map +0 -1
  774. package/fesm2022/primeng-types-dock.mjs.map +0 -1
  775. package/fesm2022/primeng-types-drawer.mjs.map +0 -1
  776. package/fesm2022/primeng-types-editor.mjs.map +0 -1
  777. package/fesm2022/primeng-types-fieldset.mjs.map +0 -1
  778. package/fesm2022/primeng-types-fileupload.mjs.map +0 -1
  779. package/fesm2022/primeng-types-floatlabel.mjs.map +0 -1
  780. package/fesm2022/primeng-types-fluid.mjs.map +0 -1
  781. package/fesm2022/primeng-types-galleria.mjs.map +0 -1
  782. package/fesm2022/primeng-types-gallery.mjs.map +0 -1
  783. package/fesm2022/primeng-types-iconfield.mjs.map +0 -1
  784. package/fesm2022/primeng-types-iftalabel.mjs.map +0 -1
  785. package/fesm2022/primeng-types-image.mjs.map +0 -1
  786. package/fesm2022/primeng-types-imagecompare.mjs.map +0 -1
  787. package/fesm2022/primeng-types-inplace.mjs.map +0 -1
  788. package/fesm2022/primeng-types-inputcolor.mjs.map +0 -1
  789. package/fesm2022/primeng-types-inputgroup.mjs.map +0 -1
  790. package/fesm2022/primeng-types-inputgroupaddon.mjs.map +0 -1
  791. package/fesm2022/primeng-types-inputicon.mjs.map +0 -1
  792. package/fesm2022/primeng-types-inputmask.mjs.map +0 -1
  793. package/fesm2022/primeng-types-inputnumber.mjs.map +0 -1
  794. package/fesm2022/primeng-types-inputotp.mjs.map +0 -1
  795. package/fesm2022/primeng-types-inputpassword.mjs.map +0 -1
  796. package/fesm2022/primeng-types-inputtags.mjs.map +0 -1
  797. package/fesm2022/primeng-types-inputtext.mjs.map +0 -1
  798. package/fesm2022/primeng-types-knob.mjs.map +0 -1
  799. package/fesm2022/primeng-types-label.mjs.map +0 -1
  800. package/fesm2022/primeng-types-listbox.mjs.map +0 -1
  801. package/fesm2022/primeng-types-megamenu.mjs.map +0 -1
  802. package/fesm2022/primeng-types-menu.mjs.map +0 -1
  803. package/fesm2022/primeng-types-menubar.mjs.map +0 -1
  804. package/fesm2022/primeng-types-message.mjs.map +0 -1
  805. package/fesm2022/primeng-types-metergroup.mjs.map +0 -1
  806. package/fesm2022/primeng-types-motion.mjs.map +0 -1
  807. package/fesm2022/primeng-types-multiselect.mjs.map +0 -1
  808. package/fesm2022/primeng-types-orderlist.mjs.map +0 -1
  809. package/fesm2022/primeng-types-organizationchart.mjs.map +0 -1
  810. package/fesm2022/primeng-types-overlay.mjs.map +0 -1
  811. package/fesm2022/primeng-types-overlaybadge.mjs.map +0 -1
  812. package/fesm2022/primeng-types-paginator.mjs.map +0 -1
  813. package/fesm2022/primeng-types-panel.mjs.map +0 -1
  814. package/fesm2022/primeng-types-panelmenu.mjs.map +0 -1
  815. package/fesm2022/primeng-types-password.mjs.map +0 -1
  816. package/fesm2022/primeng-types-picklist.mjs.map +0 -1
  817. package/fesm2022/primeng-types-popover.mjs.map +0 -1
  818. package/fesm2022/primeng-types-progressbar.mjs.map +0 -1
  819. package/fesm2022/primeng-types-progressspinner.mjs.map +0 -1
  820. package/fesm2022/primeng-types-radiobutton.mjs.map +0 -1
  821. package/fesm2022/primeng-types-rating.mjs.map +0 -1
  822. package/fesm2022/primeng-types-scrollarea.mjs.map +0 -1
  823. package/fesm2022/primeng-types-scroller.mjs.map +0 -1
  824. package/fesm2022/primeng-types-scrollpanel.mjs.map +0 -1
  825. package/fesm2022/primeng-types-scrolltop.mjs.map +0 -1
  826. package/fesm2022/primeng-types-select.mjs.map +0 -1
  827. package/fesm2022/primeng-types-selectbutton.mjs.map +0 -1
  828. package/fesm2022/primeng-types-shared.mjs.map +0 -1
  829. package/fesm2022/primeng-types-sidebar.mjs.map +0 -1
  830. package/fesm2022/primeng-types-skeleton.mjs.map +0 -1
  831. package/fesm2022/primeng-types-slider.mjs.map +0 -1
  832. package/fesm2022/primeng-types-speeddial.mjs.map +0 -1
  833. package/fesm2022/primeng-types-splitbutton.mjs.map +0 -1
  834. package/fesm2022/primeng-types-splitter.mjs.map +0 -1
  835. package/fesm2022/primeng-types-stepper.mjs.map +0 -1
  836. package/fesm2022/primeng-types-table.mjs.map +0 -1
  837. package/fesm2022/primeng-types-tabs.mjs.map +0 -1
  838. package/fesm2022/primeng-types-tag.mjs.map +0 -1
  839. package/fesm2022/primeng-types-terminal.mjs.map +0 -1
  840. package/fesm2022/primeng-types-textarea.mjs.map +0 -1
  841. package/fesm2022/primeng-types-tieredmenu.mjs.map +0 -1
  842. package/fesm2022/primeng-types-timeline.mjs.map +0 -1
  843. package/fesm2022/primeng-types-toast.mjs.map +0 -1
  844. package/fesm2022/primeng-types-togglebutton.mjs.map +0 -1
  845. package/fesm2022/primeng-types-toggleswitch.mjs.map +0 -1
  846. package/fesm2022/primeng-types-toolbar.mjs.map +0 -1
  847. package/fesm2022/primeng-types-tooltip.mjs.map +0 -1
  848. package/fesm2022/primeng-types-tree.mjs.map +0 -1
  849. package/fesm2022/primeng-types-treeselect.mjs.map +0 -1
  850. package/fesm2022/primeng-types-treetable.mjs.map +0 -1
@@ -1,15 +1,14 @@
1
- export * from 'primeng/types/scroller';
2
- import { isPlatformBrowser, NgTemplateOutlet } from '@angular/common';
3
- import * as i0 from '@angular/core';
4
- import { Injectable, InjectionToken, inject, input, computed, output, viewChild, signal, contentChild, effect, untracked, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
- import { isVisible, getWidth, getHeight, findSingle, isTouchDevice } from '@primeuix/utils';
6
- import { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';
7
- import * as i1 from 'primeng/bind';
8
- import { Bind } from 'primeng/bind';
9
- import { Spinner } from '@primeicons/angular/spinner';
10
- import { BaseStyle } from 'primeng/base';
11
-
12
- const css = /*css*/ `
1
+ import { NgTemplateOutlet, isPlatformBrowser } from "@angular/common";
2
+ import * as i0 from "@angular/core";
3
+ import { ChangeDetectionStrategy, Component, Injectable, InjectionToken, NgModule, ViewEncapsulation, computed, contentChild, effect, inject, input, output, signal, untracked, viewChild } from "@angular/core";
4
+ import { findSingle, getHeight, getWidth, isTouchDevice, isVisible } from "@primeuix/utils";
5
+ import { BaseComponent, PARENT_INSTANCE } from "primeng/basecomponent";
6
+ import * as i1 from "primeng/bind";
7
+ import { Bind } from "primeng/bind";
8
+ import { Spinner } from "@primeicons/angular/spinner";
9
+ import { BaseStyle } from "primeng/base";
10
+ export * from "primeng/types/scroller";
11
+ const css = `
13
12
  .p-virtualscroller {
14
13
  position: relative;
15
14
  overflow: auto;
@@ -69,1008 +68,1022 @@ const css = /*css*/ `
69
68
  }
70
69
  `;
71
70
  const classes = {
72
- root: ({ instance }) => [
73
- 'p-virtualscroller',
74
- {
75
- 'p-virtualscroller-inline': instance.inline(),
76
- 'p-virtualscroller-both p-both-scroll': instance.both(),
77
- 'p-virtualscroller-horizontal p-horizontal-scroll': instance.horizontal()
78
- }
79
- ],
80
- content: 'p-virtualscroller-content',
81
- spacer: 'p-virtualscroller-spacer',
82
- loader: ({ instance }) => [
83
- 'p-virtualscroller-loader',
84
- {
85
- 'p-virtualscroller-loader-mask': !instance.loaderTemplate()
86
- }
87
- ],
88
- loadingIcon: 'p-virtualscroller-loading-icon'
71
+ root: ({ instance }) => ["p-virtualscroller", {
72
+ "p-virtualscroller-inline": instance.inline(),
73
+ "p-virtualscroller-both p-both-scroll": instance.both(),
74
+ "p-virtualscroller-horizontal p-horizontal-scroll": instance.horizontal()
75
+ }],
76
+ content: "p-virtualscroller-content",
77
+ spacer: "p-virtualscroller-spacer",
78
+ loader: ({ instance }) => ["p-virtualscroller-loader", { "p-virtualscroller-loader-mask": !instance.loaderTemplate() }],
79
+ loadingIcon: "p-virtualscroller-loading-icon"
89
80
  };
90
- class ScrollerStyle extends BaseStyle {
91
- name = 'virtualscroller';
92
- css = css;
93
- classes = classes;
94
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
95
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerStyle });
96
- }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerStyle, decorators: [{
98
- type: Injectable
99
- }] });
100
- /**
101
- *
102
- * VirtualScroller is a performant approach to handle huge data efficiently.
103
- *
104
- * [Live Demo](https://www.primeng.org/scroller/)
105
- *
106
- * @module scrollerstyle
107
- *
108
- */
81
+ var ScrollerStyle = class ScrollerStyle extends BaseStyle {
82
+ name = "virtualscroller";
83
+ css = css;
84
+ classes = classes;
85
+ static ɵfac = i0.ɵɵngDeclareFactory({
86
+ minVersion: "12.0.0",
87
+ version: "22.2.0",
88
+ ngImport: i0,
89
+ type: ScrollerStyle,
90
+ deps: null,
91
+ target: i0.ɵɵFactoryTarget.Injectable
92
+ });
93
+ static ɵprov = i0.ɵɵngDeclareInjectable({
94
+ minVersion: "12.0.0",
95
+ version: "22.2.0",
96
+ ngImport: i0,
97
+ type: ScrollerStyle
98
+ });
99
+ };
100
+ i0.ɵɵngDeclareClassMetadata({
101
+ minVersion: "12.0.0",
102
+ version: "22.2.0",
103
+ ngImport: i0,
104
+ type: ScrollerStyle,
105
+ decorators: [{ type: Injectable }]
106
+ });
109
107
  var ScrollerClasses;
110
- (function (ScrollerClasses) {
111
- /**
112
- * Class name of the root element
113
- */
114
- ScrollerClasses["root"] = "p-virtualscroller";
115
- /**
116
- * Class name of the content element
117
- */
118
- ScrollerClasses["content"] = "p-virtualscroller-content";
119
- /**
120
- * Class name of the spacer element
121
- */
122
- ScrollerClasses["spacer"] = "p-virtualscroller-spacer";
123
- /**
124
- * Class name of the loader element
125
- */
126
- ScrollerClasses["loader"] = "p-virtualscroller-loader";
127
- /**
128
- * Class name of the loading icon element
129
- */
130
- ScrollerClasses["loadingIcon"] = "p-virtualscroller-loading-icon";
108
+ (function(ScrollerClasses) {
109
+ ScrollerClasses["root"] = "p-virtualscroller";
110
+ ScrollerClasses["content"] = "p-virtualscroller-content";
111
+ ScrollerClasses["spacer"] = "p-virtualscroller-spacer";
112
+ ScrollerClasses["loader"] = "p-virtualscroller-loader";
113
+ ScrollerClasses["loadingIcon"] = "p-virtualscroller-loading-icon";
131
114
  })(ScrollerClasses || (ScrollerClasses = {}));
132
-
133
- const SCROLLER_INSTANCE = new InjectionToken('SCROLLER_INSTANCE');
134
- /**
135
- * Scroller is a performance-approach to handle huge data efficiently.
136
- * @group Components
137
- */
138
- class Scroller extends BaseComponent {
139
- componentName = 'VirtualScroller';
140
- bindDirectiveInstance = inject(Bind, { self: true });
141
- $pcScroller = inject(SCROLLER_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;
142
- hostName = input('', /* @ts-ignore */
143
- ...(ngDevMode ? [{ debugName: "hostName" }] : /* istanbul ignore next */ []));
144
- /**
145
- * Unique identifier of the element.
146
- * @group Props
147
- */
148
- id = input(/* @ts-ignore */
149
- ...(ngDevMode ? [undefined, { debugName: "id" }] : /* istanbul ignore next */ []));
150
- /**
151
- * Inline style of the component.
152
- * @group Props
153
- */
154
- style = input(/* @ts-ignore */
155
- ...(ngDevMode ? [undefined, { debugName: "style" }] : /* istanbul ignore next */ []));
156
- /**
157
- * Style class of the element.
158
- * @group Props
159
- */
160
- styleClass = input(/* @ts-ignore */
161
- ...(ngDevMode ? [undefined, { debugName: "styleClass" }] : /* istanbul ignore next */ []));
162
- /**
163
- * Index of the element in tabbing order.
164
- * @group Props
165
- */
166
- tabindex = input(0, /* @ts-ignore */
167
- ...(ngDevMode ? [{ debugName: "tabindex" }] : /* istanbul ignore next */ []));
168
- /**
169
- * An array of objects to display.
170
- * @group Props
171
- */
172
- items = input(/* @ts-ignore */
173
- ...(ngDevMode ? [undefined, { debugName: "items" }] : /* istanbul ignore next */ []));
174
- /**
175
- * The height/width of item according to orientation.
176
- * @group Props
177
- */
178
- itemSize = input(0, /* @ts-ignore */
179
- ...(ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []));
180
- /**
181
- * Height of the scroll viewport.
182
- * @group Props
183
- */
184
- scrollHeight = input(/* @ts-ignore */
185
- ...(ngDevMode ? [undefined, { debugName: "scrollHeight" }] : /* istanbul ignore next */ []));
186
- /**
187
- * Width of the scroll viewport.
188
- * @group Props
189
- */
190
- scrollWidth = input(/* @ts-ignore */
191
- ...(ngDevMode ? [undefined, { debugName: "scrollWidth" }] : /* istanbul ignore next */ []));
192
- /**
193
- * The orientation of scrollbar.
194
- * @group Props
195
- */
196
- orientation = input('vertical', /* @ts-ignore */
197
- ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
198
- /**
199
- * Used to specify how many items to load in each load method in lazy mode.
200
- * @group Props
201
- */
202
- step = input(0, /* @ts-ignore */
203
- ...(ngDevMode ? [{ debugName: "step" }] : /* istanbul ignore next */ []));
204
- /**
205
- * Delay in scroll before new data is loaded.
206
- * @group Props
207
- */
208
- delay = input(0, /* @ts-ignore */
209
- ...(ngDevMode ? [{ debugName: "delay" }] : /* istanbul ignore next */ []));
210
- /**
211
- * Delay after window's resize finishes.
212
- * @group Props
213
- */
214
- resizeDelay = input(10, /* @ts-ignore */
215
- ...(ngDevMode ? [{ debugName: "resizeDelay" }] : /* istanbul ignore next */ []));
216
- /**
217
- * Used to append each loaded item to top without removing any items from the DOM. Using very large data may cause the browser to crash.
218
- * @group Props
219
- */
220
- appendOnly = input(false, /* @ts-ignore */
221
- ...(ngDevMode ? [{ debugName: "appendOnly" }] : /* istanbul ignore next */ []));
222
- /**
223
- * Specifies whether the scroller should be displayed inline or not.
224
- * @group Props
225
- */
226
- inline = input(false, /* @ts-ignore */
227
- ...(ngDevMode ? [{ debugName: "inline" }] : /* istanbul ignore next */ []));
228
- /**
229
- * Defines if data is loaded and interacted with in lazy manner.
230
- * @group Props
231
- */
232
- lazy = input(false, /* @ts-ignore */
233
- ...(ngDevMode ? [{ debugName: "lazy" }] : /* istanbul ignore next */ []));
234
- /**
235
- * If disabled, the scroller feature is eliminated and the content is displayed directly.
236
- * @group Props
237
- */
238
- disabled = input(false, /* @ts-ignore */
239
- ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
240
- /**
241
- * Used to implement a custom loader instead of using the loader feature in the scroller.
242
- * @group Props
243
- */
244
- loaderDisabled = input(false, /* @ts-ignore */
245
- ...(ngDevMode ? [{ debugName: "loaderDisabled" }] : /* istanbul ignore next */ []));
246
- /**
247
- * Columns to display.
248
- * @group Props
249
- */
250
- columns = input(/* @ts-ignore */
251
- ...(ngDevMode ? [undefined, { debugName: "columns" }] : /* istanbul ignore next */ []));
252
- /**
253
- * Used to implement a custom spacer instead of using the spacer feature in the scroller.
254
- * @group Props
255
- */
256
- showSpacer = input(true, /* @ts-ignore */
257
- ...(ngDevMode ? [{ debugName: "showSpacer" }] : /* istanbul ignore next */ []));
258
- /**
259
- * Defines whether to show loader.
260
- * @group Props
261
- */
262
- showLoader = input(false, /* @ts-ignore */
263
- ...(ngDevMode ? [{ debugName: "showLoader" }] : /* istanbul ignore next */ []));
264
- /**
265
- * Determines how many additional elements to add to the DOM outside of the view. According to the scrolls made up and down, extra items are added in a certain algorithm in the form of multiples of this number. Default value is half the number of items shown in the view.
266
- * @group Props
267
- */
268
- numToleratedItems = input(/* @ts-ignore */
269
- ...(ngDevMode ? [undefined, { debugName: "numToleratedItems" }] : /* istanbul ignore next */ []));
270
- /**
271
- * Defines whether the data is loaded.
272
- * @group Props
273
- */
274
- loading = input(/* @ts-ignore */
275
- ...(ngDevMode ? [undefined, { debugName: "loading" }] : /* istanbul ignore next */ []));
276
- /**
277
- * Defines whether to dynamically change the height or width of scrollable container.
278
- * @group Props
279
- */
280
- autoSize = input(false, /* @ts-ignore */
281
- ...(ngDevMode ? [{ debugName: "autoSize" }] : /* istanbul ignore next */ []));
282
- /**
283
- * Function to optimize the dom operations by delegating to ngForTrackBy, default algoritm checks for object identity.
284
- * @group Props
285
- */
286
- trackBy = input(/* @ts-ignore */
287
- ...(ngDevMode ? [undefined, { debugName: "trackBy" }] : /* istanbul ignore next */ []));
288
- /**
289
- * Defines whether to use the scroller feature. The properties of scroller component can be used like an object in it.
290
- * @group Props
291
- */
292
- options = input(/* @ts-ignore */
293
- ...(ngDevMode ? [undefined, { debugName: "options" }] : /* istanbul ignore next */ []));
294
- // Computed: Options merge with individual inputs
295
- _id = computed(() => this.options()?.id ?? this.id(), /* @ts-ignore */
296
- ...(ngDevMode ? [{ debugName: "_id" }] : /* istanbul ignore next */ []));
297
- _style = computed(() => this.options()?.style ?? this.style(), /* @ts-ignore */
298
- ...(ngDevMode ? [{ debugName: "_style" }] : /* istanbul ignore next */ []));
299
- _styleClass = computed(() => this.options()?.styleClass ?? this.styleClass(), /* @ts-ignore */
300
- ...(ngDevMode ? [{ debugName: "_styleClass" }] : /* istanbul ignore next */ []));
301
- _tabindex = computed(() => this.options()?.tabindex ?? this.tabindex(), /* @ts-ignore */
302
- ...(ngDevMode ? [{ debugName: "_tabindex" }] : /* istanbul ignore next */ []));
303
- _items = computed(() => this.options()?.items ?? this.items(), /* @ts-ignore */
304
- ...(ngDevMode ? [{ debugName: "_items" }] : /* istanbul ignore next */ []));
305
- _itemSize = computed(() => this.options()?.itemSize ?? this.itemSize(), /* @ts-ignore */
306
- ...(ngDevMode ? [{ debugName: "_itemSize" }] : /* istanbul ignore next */ []));
307
- _scrollHeight = computed(() => this.options()?.scrollHeight ?? this.scrollHeight(), /* @ts-ignore */
308
- ...(ngDevMode ? [{ debugName: "_scrollHeight" }] : /* istanbul ignore next */ []));
309
- _scrollWidth = computed(() => this.options()?.scrollWidth ?? this.scrollWidth(), /* @ts-ignore */
310
- ...(ngDevMode ? [{ debugName: "_scrollWidth" }] : /* istanbul ignore next */ []));
311
- _orientation = computed(() => this.options()?.orientation ?? this.orientation(), /* @ts-ignore */
312
- ...(ngDevMode ? [{ debugName: "_orientation" }] : /* istanbul ignore next */ []));
313
- _step = computed(() => this.options()?.step ?? this.step(), /* @ts-ignore */
314
- ...(ngDevMode ? [{ debugName: "_step" }] : /* istanbul ignore next */ []));
315
- _delay = computed(() => this.options()?.delay ?? this.delay(), /* @ts-ignore */
316
- ...(ngDevMode ? [{ debugName: "_delay" }] : /* istanbul ignore next */ []));
317
- _resizeDelay = computed(() => this.options()?.resizeDelay ?? this.resizeDelay(), /* @ts-ignore */
318
- ...(ngDevMode ? [{ debugName: "_resizeDelay" }] : /* istanbul ignore next */ []));
319
- _appendOnly = computed(() => this.options()?.appendOnly ?? this.appendOnly(), /* @ts-ignore */
320
- ...(ngDevMode ? [{ debugName: "_appendOnly" }] : /* istanbul ignore next */ []));
321
- _inline = computed(() => this.options()?.inline ?? this.inline(), /* @ts-ignore */
322
- ...(ngDevMode ? [{ debugName: "_inline" }] : /* istanbul ignore next */ []));
323
- _lazy = computed(() => this.options()?.lazy ?? this.lazy(), /* @ts-ignore */
324
- ...(ngDevMode ? [{ debugName: "_lazy" }] : /* istanbul ignore next */ []));
325
- _disabled = computed(() => this.options()?.disabled ?? this.disabled(), /* @ts-ignore */
326
- ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
327
- _loaderDisabled = computed(() => this.options()?.loaderDisabled ?? this.loaderDisabled(), /* @ts-ignore */
328
- ...(ngDevMode ? [{ debugName: "_loaderDisabled" }] : /* istanbul ignore next */ []));
329
- _columns = computed(() => this.options()?.columns ?? this.columns(), /* @ts-ignore */
330
- ...(ngDevMode ? [{ debugName: "_columns" }] : /* istanbul ignore next */ []));
331
- _showSpacer = computed(() => this.options()?.showSpacer ?? this.showSpacer(), /* @ts-ignore */
332
- ...(ngDevMode ? [{ debugName: "_showSpacer" }] : /* istanbul ignore next */ []));
333
- _showLoader = computed(() => this.options()?.showLoader ?? this.showLoader(), /* @ts-ignore */
334
- ...(ngDevMode ? [{ debugName: "_showLoader" }] : /* istanbul ignore next */ []));
335
- _numToleratedItems = computed(() => this.options()?.numToleratedItems ?? this.numToleratedItems(), /* @ts-ignore */
336
- ...(ngDevMode ? [{ debugName: "_numToleratedItems" }] : /* istanbul ignore next */ []));
337
- _loading = computed(() => this.options()?.loading ?? this.loading(), /* @ts-ignore */
338
- ...(ngDevMode ? [{ debugName: "_loading" }] : /* istanbul ignore next */ []));
339
- _autoSize = computed(() => this.options()?.autoSize ?? this.autoSize(), /* @ts-ignore */
340
- ...(ngDevMode ? [{ debugName: "_autoSize" }] : /* istanbul ignore next */ []));
341
- _trackBy = computed(() => this.options()?.trackBy ?? this.trackBy(), /* @ts-ignore */
342
- ...(ngDevMode ? [{ debugName: "_trackBy" }] : /* istanbul ignore next */ []));
343
- contentStyleClass = computed(() => this.options()?.contentStyleClass, /* @ts-ignore */
344
- ...(ngDevMode ? [{ debugName: "contentStyleClass" }] : /* istanbul ignore next */ []));
345
- /**
346
- * Callback to invoke in lazy mode to load new data.
347
- * @param {ScrollerLazyLoadEvent} event - Custom lazy load event.
348
- * @group Emits
349
- */
350
- onLazyLoad = output();
351
- /**
352
- * Callback to invoke when scroll position changes.
353
- * @param {ScrollerScrollEvent} event - Custom scroll event.
354
- * @group Emits
355
- */
356
- onScroll = output();
357
- /**
358
- * Callback to invoke when scroll position and item's range in view changes.
359
- * @param {ScrollerScrollEvent} event - Custom scroll index change event.
360
- * @group Emits
361
- */
362
- onScrollIndexChange = output();
363
- elementViewChild = viewChild('element', /* @ts-ignore */
364
- ...(ngDevMode ? [{ debugName: "elementViewChild" }] : /* istanbul ignore next */ []));
365
- contentViewChild = viewChild('content', /* @ts-ignore */
366
- ...(ngDevMode ? [{ debugName: "contentViewChild" }] : /* istanbul ignore next */ []));
367
- hostHeight = signal(undefined, /* @ts-ignore */
368
- ...(ngDevMode ? [{ debugName: "hostHeight" }] : /* istanbul ignore next */ []));
369
- /**
370
- * Content template of the component.
371
- * @param {ScrollerContentTemplateContext} context - content context.
372
- * @see {@link ScrollerContentTemplateContext}
373
- * @group Templates
374
- */
375
- contentTemplate = contentChild('content', { ...(ngDevMode ? { debugName: "contentTemplate" } : /* istanbul ignore next */ {}), descendants: false });
376
- /**
377
- * Item template of the component.
378
- * @param {ScrollerItemTemplateContext} context - item context.
379
- * @see {@link ScrollerItemTemplateContext}
380
- * @group Templates
381
- */
382
- itemTemplate = contentChild('item', { ...(ngDevMode ? { debugName: "itemTemplate" } : /* istanbul ignore next */ {}), descendants: false });
383
- /**
384
- * Loader template of the component.
385
- * @param {ScrollerLoaderTemplateContext} context - loader context.
386
- * @see {@link ScrollerLoaderTemplateContext}
387
- * @group Templates
388
- */
389
- loaderTemplate = contentChild('loader', { ...(ngDevMode ? { debugName: "loaderTemplate" } : /* istanbul ignore next */ {}), descendants: false });
390
- /**
391
- * Loader icon template of the component.
392
- * @param {ScrollerLoaderIconTemplateContext} context - loader icon context.
393
- * @see {@link ScrollerLoaderIconTemplateContext}
394
- * @group Templates
395
- */
396
- loaderIconTemplate = contentChild('loadericon', { ...(ngDevMode ? { debugName: "loaderIconTemplate" } : /* istanbul ignore next */ {}), descendants: false });
397
- d_loading = false;
398
- d_numToleratedItems;
399
- contentEl;
400
- vertical = computed(() => this._orientation() === 'vertical', /* @ts-ignore */
401
- ...(ngDevMode ? [{ debugName: "vertical" }] : /* istanbul ignore next */ []));
402
- horizontal = computed(() => this._orientation() === 'horizontal', /* @ts-ignore */
403
- ...(ngDevMode ? [{ debugName: "horizontal" }] : /* istanbul ignore next */ []));
404
- both = computed(() => this._orientation() === 'both', /* @ts-ignore */
405
- ...(ngDevMode ? [{ debugName: "both" }] : /* istanbul ignore next */ []));
406
- get loadedItems() {
407
- const items = this._items();
408
- if (items && !this.d_loading) {
409
- if (this.both()) {
410
- return items.slice(this._appendOnly() ? 0 : this.first.rows, this.last.rows).map((item) => {
411
- if (this._columns()) {
412
- return item;
413
- }
414
- else if (Array.isArray(item)) {
415
- return item.slice(this._appendOnly() ? 0 : this.first.cols, this.last.cols);
416
- }
417
- else {
418
- return item;
419
- }
420
- });
421
- }
422
- else if (this.horizontal() && this._columns())
423
- return items;
424
- else
425
- return items.slice(this._appendOnly() ? 0 : this.first, this.last);
426
- }
427
- return [];
428
- }
429
- get loadedRows() {
430
- return this.d_loading ? (this._loaderDisabled() ? this.loaderArr : []) : this.loadedItems;
431
- }
432
- get loadedColumns() {
433
- const columns = this._columns();
434
- if (columns && (this.both() || this.horizontal())) {
435
- return this.d_loading && this._loaderDisabled() ? (this.both() ? this.loaderArr[0] : this.loaderArr) : columns.slice(this.both() ? this.first.cols : this.first, this.both() ? this.last.cols : this.last);
436
- }
437
- return columns;
438
- }
439
- first = 0;
440
- last = 0;
441
- page = 0;
442
- isRangeChanged = false;
443
- numItemsInViewport = 0;
444
- lastScrollPos = 0;
445
- lazyLoadState = {};
446
- loaderArr = [];
447
- spacerStyle;
448
- contentStyle;
449
- scrollTimeout;
450
- resizeTimeout;
451
- _destroyed = false;
452
- initialized = false;
453
- windowResizeListener;
454
- defaultWidth;
455
- defaultHeight;
456
- defaultContentWidth;
457
- defaultContentHeight;
458
- _componentStyle = inject(ScrollerStyle);
459
- constructor() {
460
- super();
461
- // hostHeight
462
- effect(() => {
463
- if (this._scrollHeight() === '100%') {
464
- this.hostHeight.set('100%');
465
- }
466
- });
467
- // loading sync
468
- effect(() => {
469
- const loading = this._loading();
470
- untracked(() => {
471
- if (this._lazy() && loading !== undefined && loading !== this.d_loading) {
472
- this.d_loading = loading;
473
- }
474
- });
475
- });
476
- // orientation reset
477
- effect(() => {
478
- this._orientation();
479
- untracked(() => {
480
- this.lastScrollPos = this.both() ? { top: 0, left: 0 } : 0;
481
- });
482
- });
483
- // numToleratedItems sync
484
- effect(() => {
485
- const numT = this._numToleratedItems();
486
- untracked(() => {
487
- if (numT !== undefined && numT !== this.d_numToleratedItems) {
488
- this.d_numToleratedItems = numT;
489
- }
490
- });
491
- });
492
- // reinit on size/scroll changes
493
- effect(() => {
494
- this._itemSize();
495
- this._scrollHeight();
496
- this._scrollWidth();
497
- untracked(() => {
498
- if (this.initialized) {
499
- this.init();
500
- this.calculateAutoSize();
501
- }
502
- });
503
- });
504
- // items change
505
- effect(() => {
506
- this._items();
507
- untracked(() => {
508
- if (this.initialized && !this._lazy()) {
509
- this.init();
510
- }
511
- });
512
- });
513
- // contentStyle sync from options
514
- effect(() => {
515
- const opts = this.options();
516
- untracked(() => {
517
- if (opts?.contentStyle !== undefined) {
518
- this.contentStyle = opts.contentStyle;
519
- }
520
- });
521
- });
522
- }
523
- onInit() {
524
- this.setInitialState();
525
- }
526
- onAfterViewInit() {
527
- Promise.resolve().then(() => {
528
- this.viewInit();
529
- });
530
- }
531
- onAfterViewChecked() {
532
- this.bindDirectiveInstance.setAttrs(this.ptm('host'));
533
- if (!this.initialized) {
534
- this.viewInit();
535
- }
536
- }
537
- onDestroy() {
538
- this._destroyed = true;
539
- this.unbindResizeListener();
540
- // Cancel pending scroll/resize debounce timers so handleEvents can't emit after destroy.
541
- if (this.scrollTimeout) {
542
- clearTimeout(this.scrollTimeout);
543
- }
544
- if (this.resizeTimeout) {
545
- clearTimeout(this.resizeTimeout);
546
- }
547
- this.contentEl = null;
548
- this.initialized = false;
549
- }
550
- viewInit() {
551
- if (isPlatformBrowser(this.platformId) && !this.initialized) {
552
- if (isVisible(this.elementViewChild()?.nativeElement)) {
553
- this.setInitialState();
554
- this.setContentEl(this.contentEl);
555
- this.init();
556
- this.defaultWidth = getWidth(this.elementViewChild()?.nativeElement);
557
- this.defaultHeight = getHeight(this.elementViewChild()?.nativeElement);
558
- this.defaultContentWidth = getWidth(this.contentEl);
559
- this.defaultContentHeight = getHeight(this.contentEl);
560
- this.initialized = true;
561
- }
562
- }
563
- }
564
- init() {
565
- if (!this._disabled()) {
566
- this.bindResizeListener();
567
- // wait for the next tick
568
- setTimeout(() => {
569
- this.setSpacerSize();
570
- this.setSize();
571
- this.calculateOptions();
572
- this.calculateAutoSize();
573
- this.cd.detectChanges();
574
- }, 1);
575
- }
576
- }
577
- setContentEl(el) {
578
- this.contentEl = el || this.contentViewChild()?.nativeElement || findSingle(this.elementViewChild()?.nativeElement, '.p-virtualscroller-content');
579
- }
580
- setInitialState() {
581
- this.first = this.both() ? { rows: 0, cols: 0 } : 0;
582
- this.last = this.both() ? { rows: 0, cols: 0 } : 0;
583
- this.numItemsInViewport = this.both() ? { rows: 0, cols: 0 } : 0;
584
- this.lastScrollPos = this.both() ? { top: 0, left: 0 } : 0;
585
- if (this.d_loading === undefined || this.d_loading === false) {
586
- this.d_loading = this._loading() || false;
587
- }
588
- this.d_numToleratedItems = this._numToleratedItems();
589
- this.loaderArr = this.loaderArr.length > 0 ? this.loaderArr : [];
590
- }
591
- getElementRef() {
592
- return this.elementViewChild();
593
- }
594
- getPageByFirst(first) {
595
- return Math.floor(((first ?? this.first) + this.d_numToleratedItems * 4) / (this._step() || 1));
596
- }
597
- isPageChanged(first) {
598
- return this._step() ? this.page !== this.getPageByFirst(first ?? this.first) : true;
599
- }
600
- scrollTo(options) {
601
- this.elementViewChild()?.nativeElement?.scrollTo(options);
602
- }
603
- scrollToIndex(index, behavior = 'auto') {
604
- const valid = this.both() ? index.every((i) => i > -1) : index > -1;
605
- if (valid) {
606
- const first = this.first;
607
- const { scrollTop = 0, scrollLeft = 0 } = this.elementViewChild()?.nativeElement;
608
- const { numToleratedItems } = this.calculateNumItems();
609
- const contentPos = this.getContentPosition();
610
- const itemSize = this._itemSize();
611
- const calculateFirst = (_index = 0, _numT) => (_index <= _numT ? 0 : _index);
612
- const calculateCoord = (_first, _size, _cpos) => _first * _size + _cpos;
613
- const scrollTo = (left = 0, top = 0) => this.scrollTo({ left, top, behavior });
614
- let newFirst = this.both() ? { rows: 0, cols: 0 } : 0;
615
- let isRangeChanged = false, isScrollChanged = false;
616
- if (this.both()) {
617
- newFirst = {
618
- rows: calculateFirst(index[0], numToleratedItems[0]),
619
- cols: calculateFirst(index[1], numToleratedItems[1])
620
- };
621
- scrollTo(calculateCoord(newFirst.cols, itemSize[1], contentPos.left), calculateCoord(newFirst.rows, itemSize[0], contentPos.top));
622
- isScrollChanged = this.lastScrollPos.top !== scrollTop || this.lastScrollPos.left !== scrollLeft;
623
- isRangeChanged = newFirst.rows !== first.rows || newFirst.cols !== first.cols;
624
- }
625
- else {
626
- newFirst = calculateFirst(index, numToleratedItems);
627
- this.horizontal() ? scrollTo(calculateCoord(newFirst, itemSize, contentPos.left), scrollTop) : scrollTo(scrollLeft, calculateCoord(newFirst, itemSize, contentPos.top));
628
- isScrollChanged = this.lastScrollPos !== (this.horizontal() ? scrollLeft : scrollTop);
629
- isRangeChanged = newFirst !== first;
630
- }
631
- this.isRangeChanged = isRangeChanged;
632
- isScrollChanged && (this.first = newFirst);
633
- }
634
- }
635
- scrollInView(index, to, behavior = 'auto') {
636
- if (to) {
637
- const { first, viewport } = this.getRenderedRange();
638
- const scrollTo = (left = 0, top = 0) => this.scrollTo({ left, top, behavior });
639
- const isToStart = to === 'to-start';
640
- const isToEnd = to === 'to-end';
641
- if (isToStart) {
642
- if (this.both()) {
643
- if (viewport.first.rows - first.rows > index[0]) {
644
- scrollTo(viewport.first.cols * this._itemSize()[1], (viewport.first.rows - 1) * this._itemSize()[0]);
645
- }
646
- else if (viewport.first.cols - first.cols > index[1]) {
647
- scrollTo((viewport.first.cols - 1) * this._itemSize()[1], viewport.first.rows * this._itemSize()[0]);
648
- }
649
- }
650
- else {
651
- if (viewport.first - first > index) {
652
- const pos = (viewport.first - 1) * this._itemSize();
653
- this.horizontal() ? scrollTo(pos, 0) : scrollTo(0, pos);
654
- }
655
- }
656
- }
657
- else if (isToEnd) {
658
- if (this.both()) {
659
- if (viewport.last.rows - first.rows <= index[0] + 1) {
660
- scrollTo(viewport.first.cols * this._itemSize()[1], (viewport.first.rows + 1) * this._itemSize()[0]);
661
- }
662
- else if (viewport.last.cols - first.cols <= index[1] + 1) {
663
- scrollTo((viewport.first.cols + 1) * this._itemSize()[1], viewport.first.rows * this._itemSize()[0]);
664
- }
665
- }
666
- else {
667
- if (viewport.last - first <= index + 1) {
668
- const pos = (viewport.first + 1) * this._itemSize();
669
- this.horizontal() ? scrollTo(pos, 0) : scrollTo(0, pos);
670
- }
671
- }
672
- }
673
- }
674
- else {
675
- this.scrollToIndex(index, behavior);
676
- }
677
- }
678
- getRenderedRange() {
679
- const calculateFirstInViewport = (_pos, _size) => (_size || _pos ? Math.floor(_pos / (_size || _pos)) : 0);
680
- let firstInViewport = this.first;
681
- let lastInViewport = 0;
682
- const el = this.elementViewChild()?.nativeElement;
683
- if (el) {
684
- const { scrollTop, scrollLeft } = el;
685
- if (this.both()) {
686
- firstInViewport = {
687
- rows: calculateFirstInViewport(scrollTop, this._itemSize()[0]),
688
- cols: calculateFirstInViewport(scrollLeft, this._itemSize()[1])
689
- };
690
- lastInViewport = {
691
- rows: firstInViewport.rows + this.numItemsInViewport.rows,
692
- cols: firstInViewport.cols + this.numItemsInViewport.cols
693
- };
694
- }
695
- else {
696
- const scrollPos = this.horizontal() ? scrollLeft : scrollTop;
697
- firstInViewport = calculateFirstInViewport(scrollPos, this._itemSize());
698
- lastInViewport = firstInViewport + this.numItemsInViewport;
699
- }
700
- }
701
- return {
702
- first: this.first,
703
- last: this.last,
704
- viewport: {
705
- first: firstInViewport,
706
- last: lastInViewport
707
- }
708
- };
709
- }
710
- calculateNumItems() {
711
- const contentPos = this.getContentPosition();
712
- const el = this.elementViewChild()?.nativeElement;
713
- const contentWidth = (el ? el.offsetWidth - contentPos.left : 0) || 0;
714
- const contentHeight = (el ? el.offsetHeight - contentPos.top : 0) || 0;
715
- const calculateNumItemsInViewport = (_contentSize, _itemSize) => (_itemSize || _contentSize ? Math.ceil(_contentSize / (_itemSize || _contentSize)) : 0);
716
- const calculateNumToleratedItems = (_numItems) => Math.ceil(_numItems / 2);
717
- const numItemsInViewport = this.both()
718
- ? {
719
- rows: calculateNumItemsInViewport(contentHeight, this._itemSize()[0]),
720
- cols: calculateNumItemsInViewport(contentWidth, this._itemSize()[1])
721
- }
722
- : calculateNumItemsInViewport(this.horizontal() ? contentWidth : contentHeight, this._itemSize());
723
- const numToleratedItems = this.d_numToleratedItems || (this.both() ? [calculateNumToleratedItems(numItemsInViewport.rows), calculateNumToleratedItems(numItemsInViewport.cols)] : calculateNumToleratedItems(numItemsInViewport));
724
- return { numItemsInViewport, numToleratedItems };
725
- }
726
- calculateOptions() {
727
- const { numItemsInViewport, numToleratedItems } = this.calculateNumItems();
728
- const calculateLast = (_first, _num, _numT, _isCols = false) => this.getLast(_first + _num + (_first < _numT ? 2 : 3) * _numT, _isCols);
729
- const first = this.first;
730
- const last = this.both()
731
- ? {
732
- rows: calculateLast(this.first.rows, numItemsInViewport.rows, numToleratedItems[0]),
733
- cols: calculateLast(this.first.cols, numItemsInViewport.cols, numToleratedItems[1], true)
734
- }
735
- : calculateLast(this.first, numItemsInViewport, numToleratedItems);
736
- this.last = last;
737
- this.numItemsInViewport = numItemsInViewport;
738
- this.d_numToleratedItems = numToleratedItems;
739
- if (this._showLoader()) {
740
- this.loaderArr = this.both() ? Array.from({ length: numItemsInViewport.rows }).map(() => Array.from({ length: numItemsInViewport.cols })) : Array.from({ length: numItemsInViewport });
741
- }
742
- if (this._lazy()) {
743
- Promise.resolve().then(() => {
744
- this.lazyLoadState = {
745
- first: this._step() ? (this.both() ? { rows: 0, cols: first.cols } : 0) : first,
746
- last: Math.min(this._step() ? this._step() : this.last, this._items().length)
747
- };
748
- this.handleEvents('onLazyLoad', this.lazyLoadState);
749
- });
750
- }
751
- }
752
- calculateAutoSize() {
753
- if (this._autoSize() && !this.d_loading) {
754
- Promise.resolve().then(() => {
755
- if (this.contentEl) {
756
- this.contentEl.style.minHeight = this.contentEl.style.minWidth = 'auto';
757
- this.contentEl.style.position = 'relative';
758
- this.elementViewChild().nativeElement.style.contain = 'none';
759
- const [contentWidth, contentHeight] = [getWidth(this.contentEl), getHeight(this.contentEl)];
760
- contentWidth !== this.defaultContentWidth && (this.elementViewChild().nativeElement.style.width = '');
761
- contentHeight !== this.defaultContentHeight && (this.elementViewChild().nativeElement.style.height = '');
762
- const [width, height] = [getWidth(this.elementViewChild().nativeElement), getHeight(this.elementViewChild().nativeElement)];
763
- (this.both() || this.horizontal()) && (this.elementViewChild().nativeElement.style.width = width < this.defaultWidth ? width + 'px' : this._scrollWidth() || this.defaultWidth + 'px');
764
- (this.both() || this.vertical()) && (this.elementViewChild().nativeElement.style.height = height < this.defaultHeight ? height + 'px' : this._scrollHeight() || this.defaultHeight + 'px');
765
- this.contentEl.style.minHeight = this.contentEl.style.minWidth = '';
766
- this.contentEl.style.position = '';
767
- this.elementViewChild().nativeElement.style.contain = '';
768
- }
769
- });
770
- }
771
- }
772
- getLast(last = 0, isCols = false) {
773
- const items = this._items();
774
- const columns = this._columns();
775
- return items ? Math.min(isCols ? (columns || items[0]).length : items.length, last) : 0;
776
- }
777
- getContentPosition() {
778
- if (this.contentEl) {
779
- const style = getComputedStyle(this.contentEl);
780
- const left = parseFloat(style.paddingLeft) + Math.max(parseFloat(style.left) || 0, 0);
781
- const right = parseFloat(style.paddingRight) + Math.max(parseFloat(style.right) || 0, 0);
782
- const top = parseFloat(style.paddingTop) + Math.max(parseFloat(style.top) || 0, 0);
783
- const bottom = parseFloat(style.paddingBottom) + Math.max(parseFloat(style.bottom) || 0, 0);
784
- return { left, right, top, bottom, x: left + right, y: top + bottom };
785
- }
786
- return { left: 0, right: 0, top: 0, bottom: 0, x: 0, y: 0 };
787
- }
788
- setSize() {
789
- const nativeElement = this.elementViewChild()?.nativeElement;
790
- if (nativeElement) {
791
- const parentElement = nativeElement.parentElement?.parentElement;
792
- const elementWidth = nativeElement.offsetWidth;
793
- const parentWidth = parentElement?.offsetWidth || 0;
794
- const width = this._scrollWidth() || `${elementWidth || parentWidth}px`;
795
- const elementHeight = nativeElement.offsetHeight;
796
- const parentHeight = parentElement?.offsetHeight || 0;
797
- const height = this._scrollHeight() || `${elementHeight || parentHeight}px`;
798
- const setProp = (_name, _value) => (nativeElement.style[_name] = _value);
799
- if (this.both() || this.horizontal()) {
800
- setProp('height', height);
801
- setProp('width', width);
802
- }
803
- else {
804
- setProp('height', height);
805
- }
806
- }
807
- }
808
- setSpacerSize() {
809
- const items = this._items();
810
- if (items) {
811
- const contentPos = this.getContentPosition();
812
- const setProp = (_name, _value, _size, _cpos = 0) => (this.spacerStyle = {
813
- ...this.spacerStyle,
814
- ...{ [`${_name}`]: (_value || []).length * _size + _cpos + 'px' }
815
- });
816
- if (this.both()) {
817
- setProp('height', items, this._itemSize()[0], contentPos.y);
818
- setProp('width', this._columns() || items[1], this._itemSize()[1], contentPos.x);
819
- }
820
- else {
821
- this.horizontal() ? setProp('width', this._columns() || items, this._itemSize(), contentPos.x) : setProp('height', items, this._itemSize(), contentPos.y);
822
- }
823
- }
824
- }
825
- setContentPosition(pos) {
826
- if (this.contentEl && !this._appendOnly()) {
827
- const first = pos ? pos.first : this.first;
828
- const calculateTranslateVal = (_first, _size) => _first * _size;
829
- const setTransform = (_x = 0, _y = 0) => (this.contentStyle = { ...this.contentStyle, ...{ transform: `translate3d(${_x}px, ${_y}px, 0)` } });
830
- if (this.both()) {
831
- setTransform(calculateTranslateVal(first.cols, this._itemSize()[1]), calculateTranslateVal(first.rows, this._itemSize()[0]));
832
- }
833
- else {
834
- const translateVal = calculateTranslateVal(first, this._itemSize());
835
- this.horizontal() ? setTransform(translateVal, 0) : setTransform(0, translateVal);
836
- }
837
- }
838
- }
839
- onScrollPositionChange(event) {
840
- const target = event.target;
841
- if (!target) {
842
- throw new Error('Event target is null');
843
- }
844
- const contentPos = this.getContentPosition();
845
- const calculateScrollPos = (_pos, _cpos) => (_pos ? (_pos > _cpos ? _pos - _cpos : _pos) : 0);
846
- const calculateCurrentIndex = (_pos, _size) => (_size || _pos ? Math.floor(_pos / (_size || _pos)) : 0);
847
- const calculateTriggerIndex = (_currentIndex, _first, _last, _num, _numT, _isScrollDownOrRight) => {
848
- return _currentIndex <= _numT ? _numT : _isScrollDownOrRight ? _last - _num - _numT : _first + _numT - 1;
849
- };
850
- const calculateFirst = (_currentIndex, _triggerIndex, _first, _last, _num, _numT, _isScrollDownOrRight) => {
851
- if (_currentIndex <= _numT)
852
- return 0;
853
- else
854
- return Math.max(0, _isScrollDownOrRight ? (_currentIndex < _triggerIndex ? _first : _currentIndex - _numT) : _currentIndex > _triggerIndex ? _first : _currentIndex - 2 * _numT);
855
- };
856
- const calculateLast = (_currentIndex, _first, _last, _num, _numT, _isCols = false) => {
857
- let lastValue = _first + _num + 2 * _numT;
858
- if (_currentIndex >= _numT) {
859
- lastValue += _numT + 1;
860
- }
861
- return this.getLast(lastValue, _isCols);
862
- };
863
- const scrollTop = calculateScrollPos(target.scrollTop, contentPos.top);
864
- const scrollLeft = calculateScrollPos(target.scrollLeft, contentPos.left);
865
- let newFirst = this.both() ? { rows: 0, cols: 0 } : 0;
866
- let newLast = this.last;
867
- let isRangeChanged = false;
868
- let newScrollPos = this.lastScrollPos;
869
- if (this.both()) {
870
- const isScrollDown = this.lastScrollPos.top <= scrollTop;
871
- const isScrollRight = this.lastScrollPos.left <= scrollLeft;
872
- if (!this._appendOnly() || (this._appendOnly() && (isScrollDown || isScrollRight))) {
873
- const currentIndex = {
874
- rows: calculateCurrentIndex(scrollTop, this._itemSize()[0]),
875
- cols: calculateCurrentIndex(scrollLeft, this._itemSize()[1])
876
- };
877
- const triggerIndex = {
878
- rows: calculateTriggerIndex(currentIndex.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], isScrollDown),
879
- cols: calculateTriggerIndex(currentIndex.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], isScrollRight)
880
- };
881
- newFirst = {
882
- rows: calculateFirst(currentIndex.rows, triggerIndex.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], isScrollDown),
883
- cols: calculateFirst(currentIndex.cols, triggerIndex.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], isScrollRight)
884
- };
885
- newLast = {
886
- rows: calculateLast(currentIndex.rows, newFirst.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0]),
887
- cols: calculateLast(currentIndex.cols, newFirst.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], true)
888
- };
889
- isRangeChanged = newFirst.rows !== this.first.rows || newLast.rows !== this.last.rows || newFirst.cols !== this.first.cols || newLast.cols !== this.last.cols || this.isRangeChanged;
890
- newScrollPos = { top: scrollTop, left: scrollLeft };
891
- }
892
- }
893
- else {
894
- const scrollPos = this.horizontal() ? scrollLeft : scrollTop;
895
- const isScrollDownOrRight = this.lastScrollPos <= scrollPos;
896
- if (!this._appendOnly() || (this._appendOnly() && isScrollDownOrRight)) {
897
- const currentIndex = calculateCurrentIndex(scrollPos, this._itemSize());
898
- const triggerIndex = calculateTriggerIndex(currentIndex, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, isScrollDownOrRight);
899
- newFirst = calculateFirst(currentIndex, triggerIndex, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, isScrollDownOrRight);
900
- newLast = calculateLast(currentIndex, newFirst, this.last, this.numItemsInViewport, this.d_numToleratedItems);
901
- isRangeChanged = newFirst !== this.first || newLast !== this.last || this.isRangeChanged;
902
- newScrollPos = scrollPos;
903
- }
904
- }
905
- return {
906
- first: newFirst,
907
- last: newLast,
908
- isRangeChanged,
909
- scrollPos: newScrollPos
910
- };
911
- }
912
- onScrollChange(event) {
913
- const { first, last, isRangeChanged, scrollPos } = this.onScrollPositionChange(event);
914
- if (isRangeChanged) {
915
- const newState = { first, last };
916
- this.setContentPosition(newState);
917
- this.first = first;
918
- this.last = last;
919
- this.lastScrollPos = scrollPos;
920
- this.handleEvents('onScrollIndexChange', newState);
921
- if (this._lazy() && this.isPageChanged(first)) {
922
- const lazyLoadState = {
923
- first: this._step() ? Math.min(this.getPageByFirst(first) * this._step(), this._items().length - this._step()) : first,
924
- last: Math.min(this._step() ? (this.getPageByFirst(first) + 1) * this._step() : last, this._items().length)
925
- };
926
- const isLazyStateChanged = this.lazyLoadState.first !== lazyLoadState.first || this.lazyLoadState.last !== lazyLoadState.last;
927
- isLazyStateChanged && this.handleEvents('onLazyLoad', lazyLoadState);
928
- this.lazyLoadState = lazyLoadState;
929
- }
930
- }
931
- }
932
- onContainerScroll(event) {
933
- this.handleEvents('onScroll', { originalEvent: event });
934
- if (this._delay()) {
935
- if (this.scrollTimeout) {
936
- clearTimeout(this.scrollTimeout);
937
- }
938
- if (!this.d_loading && this._showLoader()) {
939
- const { isRangeChanged } = this.onScrollPositionChange(event);
940
- const changed = isRangeChanged || (this._step() ? this.isPageChanged() : false);
941
- if (changed) {
942
- this.d_loading = true;
943
- this.cd.detectChanges();
944
- }
945
- }
946
- this.scrollTimeout = setTimeout(() => {
947
- this.onScrollChange(event);
948
- if (this.d_loading && this._showLoader() && (!this._lazy() || this._loading() === undefined)) {
949
- this.d_loading = false;
950
- this.page = this.getPageByFirst();
951
- }
952
- this.cd.detectChanges();
953
- }, this._delay());
954
- }
955
- else {
956
- !this.d_loading && this.onScrollChange(event);
957
- }
958
- }
959
- bindResizeListener() {
960
- if (isPlatformBrowser(this.platformId)) {
961
- if (!this.windowResizeListener) {
962
- const window = this.document.defaultView;
963
- const event = isTouchDevice() ? 'orientationchange' : 'resize';
964
- this.windowResizeListener = this.renderer.listen(window, event, this.onWindowResize.bind(this));
965
- }
966
- }
967
- }
968
- unbindResizeListener() {
969
- if (this.windowResizeListener) {
970
- this.windowResizeListener();
971
- this.windowResizeListener = null;
972
- }
973
- }
974
- onWindowResize() {
975
- if (this.resizeTimeout) {
976
- clearTimeout(this.resizeTimeout);
977
- }
978
- this.resizeTimeout = setTimeout(() => {
979
- if (isVisible(this.elementViewChild()?.nativeElement)) {
980
- const [width, height] = [getWidth(this.elementViewChild()?.nativeElement), getHeight(this.elementViewChild()?.nativeElement)];
981
- const [isDiffWidth, isDiffHeight] = [width !== this.defaultWidth, height !== this.defaultHeight];
982
- const reinit = this.both() ? isDiffWidth || isDiffHeight : this.horizontal() ? isDiffWidth : this.vertical() ? isDiffHeight : false;
983
- if (reinit) {
984
- this.d_numToleratedItems = this._numToleratedItems();
985
- this.defaultWidth = width;
986
- this.defaultHeight = height;
987
- this.defaultContentWidth = getWidth(this.contentEl);
988
- this.defaultContentHeight = getHeight(this.contentEl);
989
- this.init();
990
- }
991
- }
992
- }, this._resizeDelay());
993
- }
994
- handleEvents(name, params) {
995
- // Pending timers / promise microtasks (e.g. the lazy-load Promise.resolve callback) can
996
- // reach this after destroy; bail so we don't emit on a destroyed OutputRef.
997
- if (this._destroyed)
998
- return;
999
- const opts = this.options();
1000
- return opts && opts[name] ? opts[name](params) : this[name].emit(params);
1001
- }
1002
- loaderIconContext = { options: { styleClass: 'p-virtualscroller-loading-icon' } };
1003
- getContentTemplateContext() {
1004
- return {
1005
- $implicit: this.loadedItems,
1006
- options: this.getContentOptions()
1007
- };
1008
- }
1009
- getItemTemplateContext(item, index) {
1010
- return {
1011
- $implicit: item,
1012
- options: this.getOptions(index)
1013
- };
1014
- }
1015
- getLoaderTemplateContext(index) {
1016
- return {
1017
- options: this.getLoaderOptions(index, this.both() && { numCols: this.numItemsInViewport.cols })
1018
- };
1019
- }
1020
- getDisabledContentTemplateContext() {
1021
- return {
1022
- $implicit: this.items(),
1023
- options: { rows: this._items() ?? undefined, columns: this.loadedColumns }
1024
- };
1025
- }
1026
- getContentOptions() {
1027
- return {
1028
- contentStyleClass: `p-virtualscroller-content ${this.d_loading ? 'p-virtualscroller-loading' : ''}`,
1029
- items: this.loadedItems,
1030
- getItemOptions: (index) => this.getOptions(index),
1031
- loading: this.d_loading,
1032
- getLoaderOptions: (index, options) => this.getLoaderOptions(index, options),
1033
- itemSize: this._itemSize(),
1034
- rows: this.loadedRows,
1035
- columns: this.loadedColumns,
1036
- spacerStyle: this.spacerStyle,
1037
- contentStyle: this.contentStyle,
1038
- vertical: this.vertical(),
1039
- horizontal: this.horizontal(),
1040
- both: this.both(),
1041
- scrollTo: this.scrollTo.bind(this),
1042
- scrollToIndex: this.scrollToIndex.bind(this),
1043
- orientation: this._orientation(),
1044
- scrollableElement: this.elementViewChild()?.nativeElement
1045
- };
1046
- }
1047
- getOptions(renderedIndex) {
1048
- const count = (this._items() || []).length;
1049
- const index = this.both() ? this.first.rows + renderedIndex : this.first + renderedIndex;
1050
- return {
1051
- index,
1052
- count,
1053
- first: index === 0,
1054
- last: index === count - 1,
1055
- even: index % 2 === 0,
1056
- odd: index % 2 !== 0
1057
- };
1058
- }
1059
- getLoaderOptions(index, extOptions) {
1060
- const count = this.loaderArr.length;
1061
- return {
1062
- index,
1063
- count,
1064
- first: index === 0,
1065
- last: index === count - 1,
1066
- even: index % 2 === 0,
1067
- odd: index % 2 !== 0,
1068
- loading: this.d_loading,
1069
- ...extOptions
1070
- };
1071
- }
1072
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: Scroller, deps: [], target: i0.ɵɵFactoryTarget.Component });
1073
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: Scroller, isStandalone: true, selector: "p-scroller, p-virtualscroller, p-virtual-scroller", inputs: { hostName: { classPropertyName: "hostName", publicName: "hostName", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, scrollWidth: { classPropertyName: "scrollWidth", publicName: "scrollWidth", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, delay: { classPropertyName: "delay", publicName: "delay", isSignal: true, isRequired: false, transformFunction: null }, resizeDelay: { classPropertyName: "resizeDelay", publicName: "resizeDelay", isSignal: true, isRequired: false, transformFunction: null }, appendOnly: { classPropertyName: "appendOnly", publicName: "appendOnly", isSignal: true, isRequired: false, transformFunction: null }, inline: { classPropertyName: "inline", publicName: "inline", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, loaderDisabled: { classPropertyName: "loaderDisabled", publicName: "loaderDisabled", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, showSpacer: { classPropertyName: "showSpacer", publicName: "showSpacer", isSignal: true, isRequired: false, transformFunction: null }, showLoader: { classPropertyName: "showLoader", publicName: "showLoader", isSignal: true, isRequired: false, transformFunction: null }, numToleratedItems: { classPropertyName: "numToleratedItems", publicName: "numToleratedItems", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, autoSize: { classPropertyName: "autoSize", publicName: "autoSize", isSignal: true, isRequired: false, transformFunction: null }, trackBy: { classPropertyName: "trackBy", publicName: "trackBy", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onLazyLoad: "onLazyLoad", onScroll: "onScroll", onScrollIndexChange: "onScrollIndexChange" }, host: { properties: { "style.height": "hostHeight()" } }, providers: [ScrollerStyle, { provide: SCROLLER_INSTANCE, useExisting: Scroller }, { provide: PARENT_INSTANCE, useExisting: Scroller }], queries: [{ propertyName: "contentTemplate", first: true, predicate: ["content"], isSignal: true }, { propertyName: "itemTemplate", first: true, predicate: ["item"], isSignal: true }, { propertyName: "loaderTemplate", first: true, predicate: ["loader"], isSignal: true }, { propertyName: "loaderIconTemplate", first: true, predicate: ["loadericon"], isSignal: true }], viewQueries: [{ propertyName: "elementViewChild", first: true, predicate: ["element"], descendants: true, isSignal: true }, { propertyName: "contentViewChild", first: true, predicate: ["content"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.Bind }], ngImport: i0, template: `
115
+ const SCROLLER_INSTANCE = new InjectionToken("SCROLLER_INSTANCE");
116
+ var Scroller = class Scroller extends BaseComponent {
117
+ componentName = "VirtualScroller";
118
+ bindDirectiveInstance = inject(Bind, { self: true });
119
+ $pcScroller = inject(SCROLLER_INSTANCE, {
120
+ optional: true,
121
+ skipSelf: true
122
+ }) ?? void 0;
123
+ hostName = input("", ...ngDevMode ? [{ debugName: "hostName" }] : /* istanbul ignore next */ []);
124
+ id = input(...ngDevMode ? [void 0, { debugName: "id" }] : /* istanbul ignore next */ []);
125
+ style = input(...ngDevMode ? [void 0, { debugName: "style" }] : /* istanbul ignore next */ []);
126
+ styleClass = input(...ngDevMode ? [void 0, { debugName: "styleClass" }] : /* istanbul ignore next */ []);
127
+ tabindex = input(0, ...ngDevMode ? [{ debugName: "tabindex" }] : /* istanbul ignore next */ []);
128
+ items = input(...ngDevMode ? [void 0, { debugName: "items" }] : /* istanbul ignore next */ []);
129
+ itemSize = input(0, ...ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []);
130
+ scrollHeight = input(...ngDevMode ? [void 0, { debugName: "scrollHeight" }] : /* istanbul ignore next */ []);
131
+ scrollWidth = input(...ngDevMode ? [void 0, { debugName: "scrollWidth" }] : /* istanbul ignore next */ []);
132
+ orientation = input("vertical", ...ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []);
133
+ step = input(0, ...ngDevMode ? [{ debugName: "step" }] : /* istanbul ignore next */ []);
134
+ delay = input(0, ...ngDevMode ? [{ debugName: "delay" }] : /* istanbul ignore next */ []);
135
+ resizeDelay = input(10, ...ngDevMode ? [{ debugName: "resizeDelay" }] : /* istanbul ignore next */ []);
136
+ appendOnly = input(false, ...ngDevMode ? [{ debugName: "appendOnly" }] : /* istanbul ignore next */ []);
137
+ inline = input(false, ...ngDevMode ? [{ debugName: "inline" }] : /* istanbul ignore next */ []);
138
+ lazy = input(false, ...ngDevMode ? [{ debugName: "lazy" }] : /* istanbul ignore next */ []);
139
+ disabled = input(false, ...ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []);
140
+ loaderDisabled = input(false, ...ngDevMode ? [{ debugName: "loaderDisabled" }] : /* istanbul ignore next */ []);
141
+ columns = input(...ngDevMode ? [void 0, { debugName: "columns" }] : /* istanbul ignore next */ []);
142
+ showSpacer = input(true, ...ngDevMode ? [{ debugName: "showSpacer" }] : /* istanbul ignore next */ []);
143
+ showLoader = input(false, ...ngDevMode ? [{ debugName: "showLoader" }] : /* istanbul ignore next */ []);
144
+ numToleratedItems = input(...ngDevMode ? [void 0, { debugName: "numToleratedItems" }] : /* istanbul ignore next */ []);
145
+ loading = input(...ngDevMode ? [void 0, { debugName: "loading" }] : /* istanbul ignore next */ []);
146
+ autoSize = input(false, ...ngDevMode ? [{ debugName: "autoSize" }] : /* istanbul ignore next */ []);
147
+ trackBy = input(...ngDevMode ? [void 0, { debugName: "trackBy" }] : /* istanbul ignore next */ []);
148
+ options = input(...ngDevMode ? [void 0, { debugName: "options" }] : /* istanbul ignore next */ []);
149
+ _id = computed(() => this.options()?.id ?? this.id(), ...ngDevMode ? [{ debugName: "_id" }] : /* istanbul ignore next */ []);
150
+ _style = computed(() => this.options()?.style ?? this.style(), ...ngDevMode ? [{ debugName: "_style" }] : /* istanbul ignore next */ []);
151
+ _styleClass = computed(() => this.options()?.styleClass ?? this.styleClass(), ...ngDevMode ? [{ debugName: "_styleClass" }] : /* istanbul ignore next */ []);
152
+ _tabindex = computed(() => this.options()?.tabindex ?? this.tabindex(), ...ngDevMode ? [{ debugName: "_tabindex" }] : /* istanbul ignore next */ []);
153
+ _items = computed(() => this.options()?.items ?? this.items(), ...ngDevMode ? [{ debugName: "_items" }] : /* istanbul ignore next */ []);
154
+ _itemSize = computed(() => this.options()?.itemSize ?? this.itemSize(), ...ngDevMode ? [{ debugName: "_itemSize" }] : /* istanbul ignore next */ []);
155
+ _scrollHeight = computed(() => this.options()?.scrollHeight ?? this.scrollHeight(), ...ngDevMode ? [{ debugName: "_scrollHeight" }] : /* istanbul ignore next */ []);
156
+ _scrollWidth = computed(() => this.options()?.scrollWidth ?? this.scrollWidth(), ...ngDevMode ? [{ debugName: "_scrollWidth" }] : /* istanbul ignore next */ []);
157
+ _orientation = computed(() => this.options()?.orientation ?? this.orientation(), ...ngDevMode ? [{ debugName: "_orientation" }] : /* istanbul ignore next */ []);
158
+ _step = computed(() => this.options()?.step ?? this.step(), ...ngDevMode ? [{ debugName: "_step" }] : /* istanbul ignore next */ []);
159
+ _delay = computed(() => this.options()?.delay ?? this.delay(), ...ngDevMode ? [{ debugName: "_delay" }] : /* istanbul ignore next */ []);
160
+ _resizeDelay = computed(() => this.options()?.resizeDelay ?? this.resizeDelay(), ...ngDevMode ? [{ debugName: "_resizeDelay" }] : /* istanbul ignore next */ []);
161
+ _appendOnly = computed(() => this.options()?.appendOnly ?? this.appendOnly(), ...ngDevMode ? [{ debugName: "_appendOnly" }] : /* istanbul ignore next */ []);
162
+ _inline = computed(() => this.options()?.inline ?? this.inline(), ...ngDevMode ? [{ debugName: "_inline" }] : /* istanbul ignore next */ []);
163
+ _lazy = computed(() => this.options()?.lazy ?? this.lazy(), ...ngDevMode ? [{ debugName: "_lazy" }] : /* istanbul ignore next */ []);
164
+ _disabled = computed(() => this.options()?.disabled ?? this.disabled(), ...ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []);
165
+ _loaderDisabled = computed(() => this.options()?.loaderDisabled ?? this.loaderDisabled(), ...ngDevMode ? [{ debugName: "_loaderDisabled" }] : /* istanbul ignore next */ []);
166
+ _columns = computed(() => this.options()?.columns ?? this.columns(), ...ngDevMode ? [{ debugName: "_columns" }] : /* istanbul ignore next */ []);
167
+ _showSpacer = computed(() => this.options()?.showSpacer ?? this.showSpacer(), ...ngDevMode ? [{ debugName: "_showSpacer" }] : /* istanbul ignore next */ []);
168
+ _showLoader = computed(() => this.options()?.showLoader ?? this.showLoader(), ...ngDevMode ? [{ debugName: "_showLoader" }] : /* istanbul ignore next */ []);
169
+ _numToleratedItems = computed(() => this.options()?.numToleratedItems ?? this.numToleratedItems(), ...ngDevMode ? [{ debugName: "_numToleratedItems" }] : /* istanbul ignore next */ []);
170
+ _loading = computed(() => this.options()?.loading ?? this.loading(), ...ngDevMode ? [{ debugName: "_loading" }] : /* istanbul ignore next */ []);
171
+ _autoSize = computed(() => this.options()?.autoSize ?? this.autoSize(), ...ngDevMode ? [{ debugName: "_autoSize" }] : /* istanbul ignore next */ []);
172
+ _trackBy = computed(() => this.options()?.trackBy ?? this.trackBy(), ...ngDevMode ? [{ debugName: "_trackBy" }] : /* istanbul ignore next */ []);
173
+ contentStyleClass = computed(() => this.options()?.contentStyleClass, ...ngDevMode ? [{ debugName: "contentStyleClass" }] : /* istanbul ignore next */ []);
174
+ onLazyLoad = output();
175
+ onScroll = output();
176
+ onScrollIndexChange = output();
177
+ elementViewChild = viewChild("element", ...ngDevMode ? [{ debugName: "elementViewChild" }] : /* istanbul ignore next */ []);
178
+ contentViewChild = viewChild("content", ...ngDevMode ? [{ debugName: "contentViewChild" }] : /* istanbul ignore next */ []);
179
+ hostHeight = signal(void 0, ...ngDevMode ? [{ debugName: "hostHeight" }] : /* istanbul ignore next */ []);
180
+ contentTemplate = contentChild("content", {
181
+ ...ngDevMode ? { debugName: "contentTemplate" } : /* istanbul ignore next */ {},
182
+ descendants: false
183
+ });
184
+ itemTemplate = contentChild("item", {
185
+ ...ngDevMode ? { debugName: "itemTemplate" } : /* istanbul ignore next */ {},
186
+ descendants: false
187
+ });
188
+ loaderTemplate = contentChild("loader", {
189
+ ...ngDevMode ? { debugName: "loaderTemplate" } : /* istanbul ignore next */ {},
190
+ descendants: false
191
+ });
192
+ loaderIconTemplate = contentChild("loadericon", {
193
+ ...ngDevMode ? { debugName: "loaderIconTemplate" } : /* istanbul ignore next */ {},
194
+ descendants: false
195
+ });
196
+ d_loading = false;
197
+ d_numToleratedItems;
198
+ contentEl;
199
+ vertical = computed(() => this._orientation() === "vertical", ...ngDevMode ? [{ debugName: "vertical" }] : /* istanbul ignore next */ []);
200
+ horizontal = computed(() => this._orientation() === "horizontal", ...ngDevMode ? [{ debugName: "horizontal" }] : /* istanbul ignore next */ []);
201
+ both = computed(() => this._orientation() === "both", ...ngDevMode ? [{ debugName: "both" }] : /* istanbul ignore next */ []);
202
+ get loadedItems() {
203
+ const items = this._items();
204
+ if (items && !this.d_loading) {
205
+ if (this.both()) return items.slice(this._appendOnly() ? 0 : this.first.rows, this.last.rows).map((item) => {
206
+ if (this._columns()) return item;
207
+ else if (Array.isArray(item)) return item.slice(this._appendOnly() ? 0 : this.first.cols, this.last.cols);
208
+ else return item;
209
+ });
210
+ else if (this.horizontal() && this._columns()) return items;
211
+ else return items.slice(this._appendOnly() ? 0 : this.first, this.last);
212
+ }
213
+ return [];
214
+ }
215
+ get loadedRows() {
216
+ return this.d_loading ? this._loaderDisabled() ? this.loaderArr : [] : this.loadedItems;
217
+ }
218
+ get loadedColumns() {
219
+ const columns = this._columns();
220
+ if (columns && (this.both() || this.horizontal())) return this.d_loading && this._loaderDisabled() ? this.both() ? this.loaderArr[0] : this.loaderArr : columns.slice(this.both() ? this.first.cols : this.first, this.both() ? this.last.cols : this.last);
221
+ return columns;
222
+ }
223
+ first = 0;
224
+ last = 0;
225
+ page = 0;
226
+ isRangeChanged = false;
227
+ numItemsInViewport = 0;
228
+ lastScrollPos = 0;
229
+ lazyLoadState = {};
230
+ loaderArr = [];
231
+ spacerStyle;
232
+ contentStyle;
233
+ scrollTimeout;
234
+ resizeTimeout;
235
+ _destroyed = false;
236
+ initialized = false;
237
+ windowResizeListener;
238
+ defaultWidth;
239
+ defaultHeight;
240
+ defaultContentWidth;
241
+ defaultContentHeight;
242
+ _componentStyle = inject(ScrollerStyle);
243
+ constructor() {
244
+ super();
245
+ effect(() => {
246
+ if (this._scrollHeight() === "100%") this.hostHeight.set("100%");
247
+ });
248
+ effect(() => {
249
+ const loading = this._loading();
250
+ untracked(() => {
251
+ if (this._lazy() && loading !== void 0 && loading !== this.d_loading) this.d_loading = loading;
252
+ });
253
+ });
254
+ effect(() => {
255
+ this._orientation();
256
+ untracked(() => {
257
+ this.lastScrollPos = this.both() ? {
258
+ top: 0,
259
+ left: 0
260
+ } : 0;
261
+ });
262
+ });
263
+ effect(() => {
264
+ const numT = this._numToleratedItems();
265
+ untracked(() => {
266
+ if (numT !== void 0 && numT !== this.d_numToleratedItems) this.d_numToleratedItems = numT;
267
+ });
268
+ });
269
+ effect(() => {
270
+ this._itemSize();
271
+ this._scrollHeight();
272
+ this._scrollWidth();
273
+ untracked(() => {
274
+ if (this.initialized) {
275
+ this.init();
276
+ this.calculateAutoSize();
277
+ }
278
+ });
279
+ });
280
+ effect(() => {
281
+ this._items();
282
+ untracked(() => {
283
+ if (this.initialized && !this._lazy()) this.init();
284
+ });
285
+ });
286
+ effect(() => {
287
+ const opts = this.options();
288
+ untracked(() => {
289
+ if (opts?.contentStyle !== void 0) this.contentStyle = opts.contentStyle;
290
+ });
291
+ });
292
+ }
293
+ loaderIconContext = { options: { styleClass: "p-virtualscroller-loading-icon" } };
294
+ onInit() {
295
+ this.setInitialState();
296
+ }
297
+ onAfterViewInit() {
298
+ Promise.resolve().then(() => {
299
+ this.viewInit();
300
+ });
301
+ }
302
+ onAfterViewChecked() {
303
+ this.bindDirectiveInstance.setAttrs(this.ptm("host"));
304
+ if (!this.initialized) this.viewInit();
305
+ }
306
+ onDestroy() {
307
+ this._destroyed = true;
308
+ this.unbindResizeListener();
309
+ if (this.scrollTimeout) clearTimeout(this.scrollTimeout);
310
+ if (this.resizeTimeout) clearTimeout(this.resizeTimeout);
311
+ this.contentEl = null;
312
+ this.initialized = false;
313
+ }
314
+ viewInit() {
315
+ if (isPlatformBrowser(this.platformId) && !this.initialized) {
316
+ if (isVisible(this.elementViewChild()?.nativeElement)) {
317
+ this.setInitialState();
318
+ this.setContentEl(this.contentEl);
319
+ this.init();
320
+ this.defaultWidth = getWidth(this.elementViewChild()?.nativeElement);
321
+ this.defaultHeight = getHeight(this.elementViewChild()?.nativeElement);
322
+ this.defaultContentWidth = getWidth(this.contentEl);
323
+ this.defaultContentHeight = getHeight(this.contentEl);
324
+ this.initialized = true;
325
+ }
326
+ }
327
+ }
328
+ init() {
329
+ if (!this._disabled()) {
330
+ this.bindResizeListener();
331
+ setTimeout(() => {
332
+ this.setSpacerSize();
333
+ this.setSize();
334
+ this.calculateOptions();
335
+ this.calculateAutoSize();
336
+ this.cd.detectChanges();
337
+ }, 1);
338
+ }
339
+ }
340
+ setContentEl(el) {
341
+ this.contentEl = el || this.contentViewChild()?.nativeElement || findSingle(this.elementViewChild()?.nativeElement, ".p-virtualscroller-content");
342
+ }
343
+ setInitialState() {
344
+ this.first = this.both() ? {
345
+ rows: 0,
346
+ cols: 0
347
+ } : 0;
348
+ this.last = this.both() ? {
349
+ rows: 0,
350
+ cols: 0
351
+ } : 0;
352
+ this.numItemsInViewport = this.both() ? {
353
+ rows: 0,
354
+ cols: 0
355
+ } : 0;
356
+ this.lastScrollPos = this.both() ? {
357
+ top: 0,
358
+ left: 0
359
+ } : 0;
360
+ if (this.d_loading === void 0 || this.d_loading === false) this.d_loading = this._loading() || false;
361
+ this.d_numToleratedItems = this._numToleratedItems();
362
+ this.loaderArr = this.loaderArr.length > 0 ? this.loaderArr : [];
363
+ }
364
+ getElementRef() {
365
+ return this.elementViewChild();
366
+ }
367
+ getPageByFirst(first) {
368
+ return Math.floor(((first ?? this.first) + this.d_numToleratedItems * 4) / (this._step() || 1));
369
+ }
370
+ isPageChanged(first) {
371
+ return this._step() ? this.page !== this.getPageByFirst(first ?? this.first) : true;
372
+ }
373
+ scrollTo(options) {
374
+ this.elementViewChild()?.nativeElement?.scrollTo(options);
375
+ }
376
+ scrollToIndex(index, behavior = "auto") {
377
+ if (this.both() ? index.every((i) => i > -1) : index > -1) {
378
+ const first = this.first;
379
+ const { scrollTop = 0, scrollLeft = 0 } = this.elementViewChild()?.nativeElement ?? {};
380
+ const { numToleratedItems } = this.calculateNumItems();
381
+ const contentPos = this.getContentPosition();
382
+ const itemSize = this._itemSize();
383
+ const calculateFirst = (_index = 0, _numT) => _index <= _numT ? 0 : _index;
384
+ const calculateCoord = (_first, _size, _cpos) => _first * _size + _cpos;
385
+ const scrollTo = (left = 0, top = 0) => this.scrollTo({
386
+ left,
387
+ top,
388
+ behavior
389
+ });
390
+ let newFirst = this.both() ? {
391
+ rows: 0,
392
+ cols: 0
393
+ } : 0;
394
+ let isRangeChanged = false, isScrollChanged = false;
395
+ if (this.both()) {
396
+ newFirst = {
397
+ rows: calculateFirst(index[0], numToleratedItems[0]),
398
+ cols: calculateFirst(index[1], numToleratedItems[1])
399
+ };
400
+ scrollTo(calculateCoord(newFirst.cols, itemSize[1], contentPos.left), calculateCoord(newFirst.rows, itemSize[0], contentPos.top));
401
+ isScrollChanged = this.lastScrollPos.top !== scrollTop || this.lastScrollPos.left !== scrollLeft;
402
+ isRangeChanged = newFirst.rows !== first.rows || newFirst.cols !== first.cols;
403
+ } else {
404
+ newFirst = calculateFirst(index, numToleratedItems);
405
+ if (this.horizontal()) scrollTo(calculateCoord(newFirst, itemSize, contentPos.left), scrollTop);
406
+ else scrollTo(scrollLeft, calculateCoord(newFirst, itemSize, contentPos.top));
407
+ isScrollChanged = this.lastScrollPos !== (this.horizontal() ? scrollLeft : scrollTop);
408
+ isRangeChanged = newFirst !== first;
409
+ }
410
+ this.isRangeChanged = isRangeChanged;
411
+ if (isScrollChanged) this.first = newFirst;
412
+ }
413
+ }
414
+ scrollInView(index, to, behavior = "auto") {
415
+ if (to) {
416
+ const { first, viewport } = this.getRenderedRange();
417
+ const scrollTo = (left = 0, top = 0) => this.scrollTo({
418
+ left,
419
+ top,
420
+ behavior
421
+ });
422
+ const isToStart = to === "to-start";
423
+ const isToEnd = to === "to-end";
424
+ if (isToStart) {
425
+ if (this.both()) {
426
+ if (viewport.first.rows - first.rows > index[0]) scrollTo(viewport.first.cols * this._itemSize()[1], (viewport.first.rows - 1) * this._itemSize()[0]);
427
+ else if (viewport.first.cols - first.cols > index[1]) scrollTo((viewport.first.cols - 1) * this._itemSize()[1], viewport.first.rows * this._itemSize()[0]);
428
+ } else if (viewport.first - first > index) {
429
+ const pos = (viewport.first - 1) * this._itemSize();
430
+ if (this.horizontal()) scrollTo(pos, 0);
431
+ else scrollTo(0, pos);
432
+ }
433
+ } else if (isToEnd) {
434
+ if (this.both()) {
435
+ if (viewport.last.rows - first.rows <= index[0] + 1) scrollTo(viewport.first.cols * this._itemSize()[1], (viewport.first.rows + 1) * this._itemSize()[0]);
436
+ else if (viewport.last.cols - first.cols <= index[1] + 1) scrollTo((viewport.first.cols + 1) * this._itemSize()[1], viewport.first.rows * this._itemSize()[0]);
437
+ } else if (viewport.last - first <= index + 1) {
438
+ const pos = (viewport.first + 1) * this._itemSize();
439
+ if (this.horizontal()) scrollTo(pos, 0);
440
+ else scrollTo(0, pos);
441
+ }
442
+ }
443
+ } else this.scrollToIndex(index, behavior);
444
+ }
445
+ getRenderedRange() {
446
+ const calculateFirstInViewport = (_pos, _size) => _size || _pos ? Math.floor(_pos / (_size || _pos)) : 0;
447
+ let firstInViewport = this.first;
448
+ let lastInViewport = 0;
449
+ const el = this.elementViewChild()?.nativeElement;
450
+ if (el) {
451
+ const { scrollTop, scrollLeft } = el;
452
+ if (this.both()) {
453
+ firstInViewport = {
454
+ rows: calculateFirstInViewport(scrollTop, this._itemSize()[0]),
455
+ cols: calculateFirstInViewport(scrollLeft, this._itemSize()[1])
456
+ };
457
+ lastInViewport = {
458
+ rows: firstInViewport.rows + this.numItemsInViewport.rows,
459
+ cols: firstInViewport.cols + this.numItemsInViewport.cols
460
+ };
461
+ } else {
462
+ firstInViewport = calculateFirstInViewport(this.horizontal() ? scrollLeft : scrollTop, this._itemSize());
463
+ lastInViewport = firstInViewport + this.numItemsInViewport;
464
+ }
465
+ }
466
+ return {
467
+ first: this.first,
468
+ last: this.last,
469
+ viewport: {
470
+ first: firstInViewport,
471
+ last: lastInViewport
472
+ }
473
+ };
474
+ }
475
+ calculateNumItems() {
476
+ const contentPos = this.getContentPosition();
477
+ const el = this.elementViewChild()?.nativeElement;
478
+ const contentWidth = (el ? el.offsetWidth - contentPos.left : 0) || 0;
479
+ const contentHeight = (el ? el.offsetHeight - contentPos.top : 0) || 0;
480
+ const calculateNumItemsInViewport = (_contentSize, _itemSize) => _itemSize || _contentSize ? Math.ceil(_contentSize / (_itemSize || _contentSize)) : 0;
481
+ const calculateNumToleratedItems = (_numItems) => Math.ceil(_numItems / 2);
482
+ const numItemsInViewport = this.both() ? {
483
+ rows: calculateNumItemsInViewport(contentHeight, this._itemSize()[0]),
484
+ cols: calculateNumItemsInViewport(contentWidth, this._itemSize()[1])
485
+ } : calculateNumItemsInViewport(this.horizontal() ? contentWidth : contentHeight, this._itemSize());
486
+ return {
487
+ numItemsInViewport,
488
+ numToleratedItems: this.d_numToleratedItems || (this.both() ? [calculateNumToleratedItems(numItemsInViewport.rows), calculateNumToleratedItems(numItemsInViewport.cols)] : calculateNumToleratedItems(numItemsInViewport))
489
+ };
490
+ }
491
+ calculateOptions() {
492
+ const { numItemsInViewport, numToleratedItems } = this.calculateNumItems();
493
+ const calculateLast = (_first, _num, _numT, _isCols = false) => this.getLast(_first + _num + (_first < _numT ? 2 : 3) * _numT, _isCols);
494
+ const first = this.first;
495
+ const last = this.both() ? {
496
+ rows: calculateLast(this.first.rows, numItemsInViewport.rows, numToleratedItems[0]),
497
+ cols: calculateLast(this.first.cols, numItemsInViewport.cols, numToleratedItems[1], true)
498
+ } : calculateLast(this.first, numItemsInViewport, numToleratedItems);
499
+ this.last = last;
500
+ this.numItemsInViewport = numItemsInViewport;
501
+ this.d_numToleratedItems = numToleratedItems;
502
+ if (this._showLoader()) this.loaderArr = this.both() ? Array.from({ length: numItemsInViewport.rows }).map(() => Array.from({ length: numItemsInViewport.cols })) : Array.from({ length: numItemsInViewport });
503
+ if (this._lazy()) Promise.resolve().then(() => {
504
+ this.lazyLoadState = {
505
+ first: this._step() ? this.both() ? {
506
+ rows: 0,
507
+ cols: first.cols
508
+ } : 0 : first,
509
+ last: Math.min(this._step() ? this._step() : this.last, this._items().length)
510
+ };
511
+ this.handleEvents("onLazyLoad", this.lazyLoadState);
512
+ });
513
+ }
514
+ calculateAutoSize() {
515
+ if (this._autoSize() && !this.d_loading) Promise.resolve().then(() => {
516
+ if (this.contentEl) {
517
+ this.contentEl.style.minHeight = this.contentEl.style.minWidth = "auto";
518
+ this.contentEl.style.position = "relative";
519
+ this.elementViewChild().nativeElement.style.contain = "none";
520
+ const [contentWidth, contentHeight] = [getWidth(this.contentEl), getHeight(this.contentEl)];
521
+ if (contentWidth !== this.defaultContentWidth) this.elementViewChild().nativeElement.style.width = "";
522
+ if (contentHeight !== this.defaultContentHeight) this.elementViewChild().nativeElement.style.height = "";
523
+ const [width, height] = [getWidth(this.elementViewChild().nativeElement), getHeight(this.elementViewChild().nativeElement)];
524
+ if (this.both() || this.horizontal()) this.elementViewChild().nativeElement.style.width = width < this.defaultWidth ? width + "px" : this._scrollWidth() || this.defaultWidth + "px";
525
+ if (this.both() || this.vertical()) this.elementViewChild().nativeElement.style.height = height < this.defaultHeight ? height + "px" : this._scrollHeight() || this.defaultHeight + "px";
526
+ this.contentEl.style.minHeight = this.contentEl.style.minWidth = "";
527
+ this.contentEl.style.position = "";
528
+ this.elementViewChild().nativeElement.style.contain = "";
529
+ }
530
+ });
531
+ }
532
+ getLast(last = 0, isCols = false) {
533
+ const items = this._items();
534
+ const columns = this._columns();
535
+ return items ? Math.min(isCols ? (columns || items[0]).length : items.length, last) : 0;
536
+ }
537
+ getContentPosition() {
538
+ if (this.contentEl) {
539
+ const style = getComputedStyle(this.contentEl);
540
+ const left = parseFloat(style.paddingLeft) + Math.max(parseFloat(style.left) || 0, 0);
541
+ const right = parseFloat(style.paddingRight) + Math.max(parseFloat(style.right) || 0, 0);
542
+ const top = parseFloat(style.paddingTop) + Math.max(parseFloat(style.top) || 0, 0);
543
+ const bottom = parseFloat(style.paddingBottom) + Math.max(parseFloat(style.bottom) || 0, 0);
544
+ return {
545
+ left,
546
+ right,
547
+ top,
548
+ bottom,
549
+ x: left + right,
550
+ y: top + bottom
551
+ };
552
+ }
553
+ return {
554
+ left: 0,
555
+ right: 0,
556
+ top: 0,
557
+ bottom: 0,
558
+ x: 0,
559
+ y: 0
560
+ };
561
+ }
562
+ setSize() {
563
+ const nativeElement = this.elementViewChild()?.nativeElement;
564
+ if (nativeElement) {
565
+ const parentElement = nativeElement.parentElement?.parentElement;
566
+ const elementWidth = nativeElement.offsetWidth;
567
+ const parentWidth = parentElement?.offsetWidth || 0;
568
+ const width = this._scrollWidth() || `${elementWidth || parentWidth}px`;
569
+ const elementHeight = nativeElement.offsetHeight;
570
+ const parentHeight = parentElement?.offsetHeight || 0;
571
+ const height = this._scrollHeight() || `${elementHeight || parentHeight}px`;
572
+ const setProp = (_name, _value) => nativeElement.style[_name] = _value;
573
+ if (this.both() || this.horizontal()) {
574
+ setProp("height", height);
575
+ setProp("width", width);
576
+ } else setProp("height", height);
577
+ }
578
+ }
579
+ setSpacerSize() {
580
+ const items = this._items();
581
+ if (items) {
582
+ const contentPos = this.getContentPosition();
583
+ const setProp = (_name, _value, _size, _cpos = 0) => this.spacerStyle = {
584
+ ...this.spacerStyle,
585
+ [`${_name}`]: (_value || []).length * _size + _cpos + "px"
586
+ };
587
+ if (this.both()) {
588
+ setProp("height", items, this._itemSize()[0], contentPos.y);
589
+ setProp("width", this._columns() || items[1], this._itemSize()[1], contentPos.x);
590
+ } else if (this.horizontal()) setProp("width", this._columns() || items, this._itemSize(), contentPos.x);
591
+ else setProp("height", items, this._itemSize(), contentPos.y);
592
+ }
593
+ }
594
+ setContentPosition(pos) {
595
+ if (this.contentEl && !this._appendOnly()) {
596
+ const first = pos ? pos.first : this.first;
597
+ const calculateTranslateVal = (_first, _size) => _first * _size;
598
+ const setTransform = (_x = 0, _y = 0) => this.contentStyle = {
599
+ ...this.contentStyle,
600
+ transform: `translate3d(${_x}px, ${_y}px, 0)`
601
+ };
602
+ if (this.both()) setTransform(calculateTranslateVal(first.cols, this._itemSize()[1]), calculateTranslateVal(first.rows, this._itemSize()[0]));
603
+ else {
604
+ const translateVal = calculateTranslateVal(first, this._itemSize());
605
+ if (this.horizontal()) setTransform(translateVal, 0);
606
+ else setTransform(0, translateVal);
607
+ }
608
+ }
609
+ }
610
+ onScrollPositionChange(event) {
611
+ const target = event.target;
612
+ if (!target) throw new Error("Event target is null");
613
+ const contentPos = this.getContentPosition();
614
+ const calculateScrollPos = (_pos, _cpos) => _pos ? _pos > _cpos ? _pos - _cpos : _pos : 0;
615
+ const calculateCurrentIndex = (_pos, _size) => _size || _pos ? Math.floor(_pos / (_size || _pos)) : 0;
616
+ const calculateTriggerIndex = (_currentIndex, _first, _last, _num, _numT, _isScrollDownOrRight) => _currentIndex <= _numT ? _numT : _isScrollDownOrRight ? _last - _num - _numT : _first + _numT - 1;
617
+ const calculateFirst = (_currentIndex, _triggerIndex, _first, _last, _num, _numT, _isScrollDownOrRight) => {
618
+ if (_currentIndex <= _numT) return 0;
619
+ else return Math.max(0, _isScrollDownOrRight ? _currentIndex < _triggerIndex ? _first : _currentIndex - _numT : _currentIndex > _triggerIndex ? _first : _currentIndex - 2 * _numT);
620
+ };
621
+ const calculateLast = (_currentIndex, _first, _last, _num, _numT, _isCols = false) => {
622
+ let lastValue = _first + _num + 2 * _numT;
623
+ if (_currentIndex >= _numT) lastValue += _numT + 1;
624
+ return this.getLast(lastValue, _isCols);
625
+ };
626
+ const scrollTop = calculateScrollPos(target.scrollTop, contentPos.top);
627
+ const scrollLeft = calculateScrollPos(target.scrollLeft, contentPos.left);
628
+ let newFirst = this.both() ? {
629
+ rows: 0,
630
+ cols: 0
631
+ } : 0;
632
+ let newLast = this.last;
633
+ let isRangeChanged = false;
634
+ let newScrollPos = this.lastScrollPos;
635
+ if (this.both()) {
636
+ const isScrollDown = this.lastScrollPos.top <= scrollTop;
637
+ const isScrollRight = this.lastScrollPos.left <= scrollLeft;
638
+ if (!this._appendOnly() || this._appendOnly() && (isScrollDown || isScrollRight)) {
639
+ const currentIndex = {
640
+ rows: calculateCurrentIndex(scrollTop, this._itemSize()[0]),
641
+ cols: calculateCurrentIndex(scrollLeft, this._itemSize()[1])
642
+ };
643
+ const triggerIndex = {
644
+ rows: calculateTriggerIndex(currentIndex.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], isScrollDown),
645
+ cols: calculateTriggerIndex(currentIndex.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], isScrollRight)
646
+ };
647
+ newFirst = {
648
+ rows: calculateFirst(currentIndex.rows, triggerIndex.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], isScrollDown),
649
+ cols: calculateFirst(currentIndex.cols, triggerIndex.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], isScrollRight)
650
+ };
651
+ newLast = {
652
+ rows: calculateLast(currentIndex.rows, newFirst.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0]),
653
+ cols: calculateLast(currentIndex.cols, newFirst.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], true)
654
+ };
655
+ isRangeChanged = newFirst.rows !== this.first.rows || newLast.rows !== this.last.rows || newFirst.cols !== this.first.cols || newLast.cols !== this.last.cols || this.isRangeChanged;
656
+ newScrollPos = {
657
+ top: scrollTop,
658
+ left: scrollLeft
659
+ };
660
+ }
661
+ } else {
662
+ const scrollPos = this.horizontal() ? scrollLeft : scrollTop;
663
+ const isScrollDownOrRight = this.lastScrollPos <= scrollPos;
664
+ if (!this._appendOnly() || this._appendOnly() && isScrollDownOrRight) {
665
+ const currentIndex = calculateCurrentIndex(scrollPos, this._itemSize());
666
+ newFirst = calculateFirst(currentIndex, calculateTriggerIndex(currentIndex, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, isScrollDownOrRight), this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, isScrollDownOrRight);
667
+ newLast = calculateLast(currentIndex, newFirst, this.last, this.numItemsInViewport, this.d_numToleratedItems);
668
+ isRangeChanged = newFirst !== this.first || newLast !== this.last || this.isRangeChanged;
669
+ newScrollPos = scrollPos;
670
+ }
671
+ }
672
+ return {
673
+ first: newFirst,
674
+ last: newLast,
675
+ isRangeChanged,
676
+ scrollPos: newScrollPos
677
+ };
678
+ }
679
+ onScrollChange(event) {
680
+ const { first, last, isRangeChanged, scrollPos } = this.onScrollPositionChange(event);
681
+ if (isRangeChanged) {
682
+ const newState = {
683
+ first,
684
+ last
685
+ };
686
+ this.setContentPosition(newState);
687
+ this.first = first;
688
+ this.last = last;
689
+ this.lastScrollPos = scrollPos;
690
+ this.handleEvents("onScrollIndexChange", newState);
691
+ if (this._lazy() && this.isPageChanged(first)) {
692
+ const lazyLoadState = {
693
+ first: this._step() ? Math.min(this.getPageByFirst(first) * this._step(), this._items().length - this._step()) : first,
694
+ last: Math.min(this._step() ? (this.getPageByFirst(first) + 1) * this._step() : last, this._items().length)
695
+ };
696
+ if (this.lazyLoadState.first !== lazyLoadState.first || this.lazyLoadState.last !== lazyLoadState.last) this.handleEvents("onLazyLoad", lazyLoadState);
697
+ this.lazyLoadState = lazyLoadState;
698
+ }
699
+ }
700
+ }
701
+ onContainerScroll(event) {
702
+ this.handleEvents("onScroll", { originalEvent: event });
703
+ if (this._delay()) {
704
+ if (this.scrollTimeout) clearTimeout(this.scrollTimeout);
705
+ if (!this.d_loading && this._showLoader()) {
706
+ const { isRangeChanged } = this.onScrollPositionChange(event);
707
+ if (isRangeChanged || (this._step() ? this.isPageChanged() : false)) {
708
+ this.d_loading = true;
709
+ this.cd.detectChanges();
710
+ }
711
+ }
712
+ this.scrollTimeout = setTimeout(() => {
713
+ this.onScrollChange(event);
714
+ if (this.d_loading && this._showLoader() && (!this._lazy() || this._loading() === void 0)) {
715
+ this.d_loading = false;
716
+ this.page = this.getPageByFirst();
717
+ }
718
+ this.cd.detectChanges();
719
+ }, this._delay());
720
+ } else if (!this.d_loading) this.onScrollChange(event);
721
+ }
722
+ bindResizeListener() {
723
+ if (isPlatformBrowser(this.platformId)) {
724
+ if (!this.windowResizeListener) {
725
+ const window = this.document.defaultView;
726
+ const event = isTouchDevice() ? "orientationchange" : "resize";
727
+ this.windowResizeListener = this.renderer.listen(window, event, this.onWindowResize.bind(this));
728
+ }
729
+ }
730
+ }
731
+ unbindResizeListener() {
732
+ if (this.windowResizeListener) {
733
+ this.windowResizeListener();
734
+ this.windowResizeListener = null;
735
+ }
736
+ }
737
+ onWindowResize() {
738
+ if (this.resizeTimeout) clearTimeout(this.resizeTimeout);
739
+ this.resizeTimeout = setTimeout(() => {
740
+ if (isVisible(this.elementViewChild()?.nativeElement)) {
741
+ const [width, height] = [getWidth(this.elementViewChild()?.nativeElement), getHeight(this.elementViewChild()?.nativeElement)];
742
+ const [isDiffWidth, isDiffHeight] = [width !== this.defaultWidth, height !== this.defaultHeight];
743
+ if (this.both() ? isDiffWidth || isDiffHeight : this.horizontal() ? isDiffWidth : this.vertical() ? isDiffHeight : false) {
744
+ this.d_numToleratedItems = this._numToleratedItems();
745
+ this.defaultWidth = width;
746
+ this.defaultHeight = height;
747
+ this.defaultContentWidth = getWidth(this.contentEl);
748
+ this.defaultContentHeight = getHeight(this.contentEl);
749
+ this.init();
750
+ }
751
+ }
752
+ }, this._resizeDelay());
753
+ }
754
+ handleEvents(name, params) {
755
+ if (this._destroyed) return;
756
+ const opts = this.options();
757
+ return opts && opts[name] ? opts[name](params) : this[name].emit(params);
758
+ }
759
+ getContentTemplateContext() {
760
+ return {
761
+ $implicit: this.loadedItems,
762
+ options: this.getContentOptions()
763
+ };
764
+ }
765
+ getItemTemplateContext(item, index) {
766
+ return {
767
+ $implicit: item,
768
+ options: this.getOptions(index)
769
+ };
770
+ }
771
+ getLoaderTemplateContext(index) {
772
+ return { options: this.getLoaderOptions(index, this.both() && { numCols: this.numItemsInViewport.cols }) };
773
+ }
774
+ getDisabledContentTemplateContext() {
775
+ return {
776
+ $implicit: this.items(),
777
+ options: {
778
+ rows: this._items() ?? void 0,
779
+ columns: this.loadedColumns
780
+ }
781
+ };
782
+ }
783
+ getContentOptions() {
784
+ return {
785
+ contentStyleClass: `p-virtualscroller-content ${this.d_loading ? "p-virtualscroller-loading" : ""}`,
786
+ items: this.loadedItems,
787
+ getItemOptions: (index) => this.getOptions(index),
788
+ loading: this.d_loading,
789
+ getLoaderOptions: (index, options) => this.getLoaderOptions(index, options),
790
+ itemSize: this._itemSize(),
791
+ rows: this.loadedRows,
792
+ columns: this.loadedColumns,
793
+ spacerStyle: this.spacerStyle,
794
+ contentStyle: this.contentStyle,
795
+ vertical: this.vertical(),
796
+ horizontal: this.horizontal(),
797
+ both: this.both(),
798
+ scrollTo: this.scrollTo.bind(this),
799
+ scrollToIndex: this.scrollToIndex.bind(this),
800
+ orientation: this._orientation(),
801
+ scrollableElement: this.elementViewChild()?.nativeElement
802
+ };
803
+ }
804
+ getOptions(renderedIndex) {
805
+ const count = (this._items() || []).length;
806
+ const index = this.both() ? this.first.rows + renderedIndex : this.first + renderedIndex;
807
+ return {
808
+ index,
809
+ count,
810
+ first: index === 0,
811
+ last: index === count - 1,
812
+ even: index % 2 === 0,
813
+ odd: index % 2 !== 0
814
+ };
815
+ }
816
+ getLoaderOptions(index, extOptions) {
817
+ const count = this.loaderArr.length;
818
+ return {
819
+ index,
820
+ count,
821
+ first: index === 0,
822
+ last: index === count - 1,
823
+ even: index % 2 === 0,
824
+ odd: index % 2 !== 0,
825
+ loading: this.d_loading,
826
+ ...extOptions
827
+ };
828
+ }
829
+ static ɵfac = i0.ɵɵngDeclareFactory({
830
+ minVersion: "12.0.0",
831
+ version: "22.2.0",
832
+ ngImport: i0,
833
+ type: Scroller,
834
+ deps: [],
835
+ target: i0.ɵɵFactoryTarget.Component
836
+ });
837
+ static ɵcmp = i0.ɵɵngDeclareComponent({
838
+ minVersion: "17.0.0",
839
+ version: "22.2.0",
840
+ type: Scroller,
841
+ isStandalone: true,
842
+ selector: "p-scroller, p-virtualscroller, p-virtual-scroller",
843
+ inputs: {
844
+ hostName: {
845
+ classPropertyName: "hostName",
846
+ publicName: "hostName",
847
+ isSignal: true,
848
+ isRequired: false,
849
+ transformFunction: null
850
+ },
851
+ id: {
852
+ classPropertyName: "id",
853
+ publicName: "id",
854
+ isSignal: true,
855
+ isRequired: false,
856
+ transformFunction: null
857
+ },
858
+ style: {
859
+ classPropertyName: "style",
860
+ publicName: "style",
861
+ isSignal: true,
862
+ isRequired: false,
863
+ transformFunction: null
864
+ },
865
+ styleClass: {
866
+ classPropertyName: "styleClass",
867
+ publicName: "styleClass",
868
+ isSignal: true,
869
+ isRequired: false,
870
+ transformFunction: null
871
+ },
872
+ tabindex: {
873
+ classPropertyName: "tabindex",
874
+ publicName: "tabindex",
875
+ isSignal: true,
876
+ isRequired: false,
877
+ transformFunction: null
878
+ },
879
+ items: {
880
+ classPropertyName: "items",
881
+ publicName: "items",
882
+ isSignal: true,
883
+ isRequired: false,
884
+ transformFunction: null
885
+ },
886
+ itemSize: {
887
+ classPropertyName: "itemSize",
888
+ publicName: "itemSize",
889
+ isSignal: true,
890
+ isRequired: false,
891
+ transformFunction: null
892
+ },
893
+ scrollHeight: {
894
+ classPropertyName: "scrollHeight",
895
+ publicName: "scrollHeight",
896
+ isSignal: true,
897
+ isRequired: false,
898
+ transformFunction: null
899
+ },
900
+ scrollWidth: {
901
+ classPropertyName: "scrollWidth",
902
+ publicName: "scrollWidth",
903
+ isSignal: true,
904
+ isRequired: false,
905
+ transformFunction: null
906
+ },
907
+ orientation: {
908
+ classPropertyName: "orientation",
909
+ publicName: "orientation",
910
+ isSignal: true,
911
+ isRequired: false,
912
+ transformFunction: null
913
+ },
914
+ step: {
915
+ classPropertyName: "step",
916
+ publicName: "step",
917
+ isSignal: true,
918
+ isRequired: false,
919
+ transformFunction: null
920
+ },
921
+ delay: {
922
+ classPropertyName: "delay",
923
+ publicName: "delay",
924
+ isSignal: true,
925
+ isRequired: false,
926
+ transformFunction: null
927
+ },
928
+ resizeDelay: {
929
+ classPropertyName: "resizeDelay",
930
+ publicName: "resizeDelay",
931
+ isSignal: true,
932
+ isRequired: false,
933
+ transformFunction: null
934
+ },
935
+ appendOnly: {
936
+ classPropertyName: "appendOnly",
937
+ publicName: "appendOnly",
938
+ isSignal: true,
939
+ isRequired: false,
940
+ transformFunction: null
941
+ },
942
+ inline: {
943
+ classPropertyName: "inline",
944
+ publicName: "inline",
945
+ isSignal: true,
946
+ isRequired: false,
947
+ transformFunction: null
948
+ },
949
+ lazy: {
950
+ classPropertyName: "lazy",
951
+ publicName: "lazy",
952
+ isSignal: true,
953
+ isRequired: false,
954
+ transformFunction: null
955
+ },
956
+ disabled: {
957
+ classPropertyName: "disabled",
958
+ publicName: "disabled",
959
+ isSignal: true,
960
+ isRequired: false,
961
+ transformFunction: null
962
+ },
963
+ loaderDisabled: {
964
+ classPropertyName: "loaderDisabled",
965
+ publicName: "loaderDisabled",
966
+ isSignal: true,
967
+ isRequired: false,
968
+ transformFunction: null
969
+ },
970
+ columns: {
971
+ classPropertyName: "columns",
972
+ publicName: "columns",
973
+ isSignal: true,
974
+ isRequired: false,
975
+ transformFunction: null
976
+ },
977
+ showSpacer: {
978
+ classPropertyName: "showSpacer",
979
+ publicName: "showSpacer",
980
+ isSignal: true,
981
+ isRequired: false,
982
+ transformFunction: null
983
+ },
984
+ showLoader: {
985
+ classPropertyName: "showLoader",
986
+ publicName: "showLoader",
987
+ isSignal: true,
988
+ isRequired: false,
989
+ transformFunction: null
990
+ },
991
+ numToleratedItems: {
992
+ classPropertyName: "numToleratedItems",
993
+ publicName: "numToleratedItems",
994
+ isSignal: true,
995
+ isRequired: false,
996
+ transformFunction: null
997
+ },
998
+ loading: {
999
+ classPropertyName: "loading",
1000
+ publicName: "loading",
1001
+ isSignal: true,
1002
+ isRequired: false,
1003
+ transformFunction: null
1004
+ },
1005
+ autoSize: {
1006
+ classPropertyName: "autoSize",
1007
+ publicName: "autoSize",
1008
+ isSignal: true,
1009
+ isRequired: false,
1010
+ transformFunction: null
1011
+ },
1012
+ trackBy: {
1013
+ classPropertyName: "trackBy",
1014
+ publicName: "trackBy",
1015
+ isSignal: true,
1016
+ isRequired: false,
1017
+ transformFunction: null
1018
+ },
1019
+ options: {
1020
+ classPropertyName: "options",
1021
+ publicName: "options",
1022
+ isSignal: true,
1023
+ isRequired: false,
1024
+ transformFunction: null
1025
+ }
1026
+ },
1027
+ outputs: {
1028
+ onLazyLoad: "onLazyLoad",
1029
+ onScroll: "onScroll",
1030
+ onScrollIndexChange: "onScrollIndexChange"
1031
+ },
1032
+ host: { properties: { "style.height": "hostHeight()" } },
1033
+ providers: [
1034
+ ScrollerStyle,
1035
+ {
1036
+ provide: SCROLLER_INSTANCE,
1037
+ useExisting: Scroller
1038
+ },
1039
+ {
1040
+ provide: PARENT_INSTANCE,
1041
+ useExisting: Scroller
1042
+ }
1043
+ ],
1044
+ queries: [
1045
+ {
1046
+ propertyName: "contentTemplate",
1047
+ first: true,
1048
+ predicate: ["content"],
1049
+ isSignal: true
1050
+ },
1051
+ {
1052
+ propertyName: "itemTemplate",
1053
+ first: true,
1054
+ predicate: ["item"],
1055
+ isSignal: true
1056
+ },
1057
+ {
1058
+ propertyName: "loaderTemplate",
1059
+ first: true,
1060
+ predicate: ["loader"],
1061
+ isSignal: true
1062
+ },
1063
+ {
1064
+ propertyName: "loaderIconTemplate",
1065
+ first: true,
1066
+ predicate: ["loadericon"],
1067
+ isSignal: true
1068
+ }
1069
+ ],
1070
+ viewQueries: [{
1071
+ propertyName: "elementViewChild",
1072
+ first: true,
1073
+ predicate: ["element"],
1074
+ descendants: true,
1075
+ isSignal: true
1076
+ }, {
1077
+ propertyName: "contentViewChild",
1078
+ first: true,
1079
+ predicate: ["content"],
1080
+ descendants: true,
1081
+ isSignal: true
1082
+ }],
1083
+ usesInheritance: true,
1084
+ hostDirectives: [{ directive: i1.Bind }],
1085
+ ngImport: i0,
1086
+ template: `
1074
1087
  @if (!_disabled()) {
1075
1088
  <div #element [attr.id]="_id()" [attr.tabindex]="_tabindex()" [style]="_style()" [class]="cn(cx('root'), _styleClass())" (scroll)="onContainerScroll($event)" [pBind]="ptm('root')">
1076
1089
  @if (contentTemplate()) {
@@ -1107,15 +1120,51 @@ class Scroller extends BaseComponent {
1107
1120
  <ng-container *ngTemplateOutlet="contentTemplate(); context: getDisabledContentTemplateContext()"></ng-container>
1108
1121
  }
1109
1122
  }
1110
- `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: Spinner, selector: "svg[data-p-icon=\"spinner\"]" }, { kind: "directive", type: Bind, selector: "[pBind]", inputs: ["pBind"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
1111
- }
1112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: Scroller, decorators: [{
1113
- type: Component,
1114
- args: [{
1115
- selector: 'p-scroller, p-virtualscroller, p-virtual-scroller',
1116
- imports: [NgTemplateOutlet, Spinner, Bind],
1117
- standalone: true,
1118
- template: `
1123
+ `,
1124
+ isInline: true,
1125
+ dependencies: [
1126
+ {
1127
+ kind: "directive",
1128
+ type: NgTemplateOutlet,
1129
+ selector: "[ngTemplateOutlet]",
1130
+ inputs: [
1131
+ "ngTemplateOutletContext",
1132
+ "ngTemplateOutlet",
1133
+ "ngTemplateOutletInjector"
1134
+ ]
1135
+ },
1136
+ {
1137
+ kind: "component",
1138
+ type: Spinner,
1139
+ selector: "svg[data-p-icon=\"spinner\"]"
1140
+ },
1141
+ {
1142
+ kind: "directive",
1143
+ type: Bind,
1144
+ selector: "[pBind]",
1145
+ inputs: ["pBind"]
1146
+ }
1147
+ ],
1148
+ changeDetection: i0.ChangeDetectionStrategy.Eager,
1149
+ encapsulation: i0.ViewEncapsulation.None
1150
+ });
1151
+ };
1152
+ i0.ɵɵngDeclareClassMetadata({
1153
+ minVersion: "12.0.0",
1154
+ version: "22.2.0",
1155
+ ngImport: i0,
1156
+ type: Scroller,
1157
+ decorators: [{
1158
+ type: Component,
1159
+ args: [{
1160
+ selector: "p-scroller, p-virtualscroller, p-virtual-scroller",
1161
+ imports: [
1162
+ NgTemplateOutlet,
1163
+ Spinner,
1164
+ Bind
1165
+ ],
1166
+ standalone: true,
1167
+ template: `
1119
1168
  @if (!_disabled()) {
1120
1169
  <div #element [attr.id]="_id()" [attr.tabindex]="_tabindex()" [style]="_style()" [class]="cn(cx('root'), _styleClass())" (scroll)="onContainerScroll($event)" [pBind]="ptm('root')">
1121
1170
  @if (contentTemplate()) {
@@ -1153,31 +1202,321 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
1153
1202
  }
1154
1203
  }
1155
1204
  `,
1156
- changeDetection: ChangeDetectionStrategy.Default,
1157
- encapsulation: ViewEncapsulation.None,
1158
- providers: [ScrollerStyle, { provide: SCROLLER_INSTANCE, useExisting: Scroller }, { provide: PARENT_INSTANCE, useExisting: Scroller }],
1159
- hostDirectives: [Bind],
1160
- host: {
1161
- '[style.height]': 'hostHeight()'
1162
- }
1163
- }]
1164
- }], ctorParameters: () => [], propDecorators: { hostName: [{ type: i0.Input, args: [{ isSignal: true, alias: "hostName", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], styleClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "styleClass", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], itemSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemSize", required: false }] }], scrollHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollHeight", required: false }] }], scrollWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollWidth", required: false }] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], delay: [{ type: i0.Input, args: [{ isSignal: true, alias: "delay", required: false }] }], resizeDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "resizeDelay", required: false }] }], appendOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendOnly", required: false }] }], inline: [{ type: i0.Input, args: [{ isSignal: true, alias: "inline", required: false }] }], lazy: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazy", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], loaderDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "loaderDisabled", required: false }] }], columns: [{ type: i0.Input, args: [{ isSignal: true, alias: "columns", required: false }] }], showSpacer: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSpacer", required: false }] }], showLoader: [{ type: i0.Input, args: [{ isSignal: true, alias: "showLoader", required: false }] }], numToleratedItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "numToleratedItems", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], autoSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoSize", required: false }] }], trackBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "trackBy", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], onLazyLoad: [{ type: i0.Output, args: ["onLazyLoad"] }], onScroll: [{ type: i0.Output, args: ["onScroll"] }], onScrollIndexChange: [{ type: i0.Output, args: ["onScrollIndexChange"] }], elementViewChild: [{ type: i0.ViewChild, args: ['element', { isSignal: true }] }], contentViewChild: [{ type: i0.ViewChild, args: ['content', { isSignal: true }] }], contentTemplate: [{ type: i0.ContentChild, args: ['content', { ...{ descendants: false }, isSignal: true }] }], itemTemplate: [{ type: i0.ContentChild, args: ['item', { ...{ descendants: false }, isSignal: true }] }], loaderTemplate: [{ type: i0.ContentChild, args: ['loader', { ...{ descendants: false }, isSignal: true }] }], loaderIconTemplate: [{ type: i0.ContentChild, args: ['loadericon', { ...{ descendants: false }, isSignal: true }] }] } });
1165
- class ScrollerModule {
1166
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1167
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ScrollerModule, imports: [Scroller], exports: [Scroller] });
1168
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerModule, imports: [Scroller] });
1169
- }
1170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ScrollerModule, decorators: [{
1171
- type: NgModule,
1172
- args: [{
1173
- imports: [Scroller],
1174
- exports: [Scroller]
1175
- }]
1176
- }] });
1177
-
1178
- /**
1179
- * Generated bundle index. Do not edit.
1180
- */
1181
-
1205
+ changeDetection: ChangeDetectionStrategy.Default,
1206
+ encapsulation: ViewEncapsulation.None,
1207
+ providers: [
1208
+ ScrollerStyle,
1209
+ {
1210
+ provide: SCROLLER_INSTANCE,
1211
+ useExisting: Scroller
1212
+ },
1213
+ {
1214
+ provide: PARENT_INSTANCE,
1215
+ useExisting: Scroller
1216
+ }
1217
+ ],
1218
+ hostDirectives: [Bind],
1219
+ host: { "[style.height]": "hostHeight()" }
1220
+ }]
1221
+ }],
1222
+ ctorParameters: () => [],
1223
+ propDecorators: {
1224
+ hostName: [{
1225
+ type: i0.Input,
1226
+ args: [{
1227
+ isSignal: true,
1228
+ alias: "hostName",
1229
+ required: false
1230
+ }]
1231
+ }],
1232
+ id: [{
1233
+ type: i0.Input,
1234
+ args: [{
1235
+ isSignal: true,
1236
+ alias: "id",
1237
+ required: false
1238
+ }]
1239
+ }],
1240
+ style: [{
1241
+ type: i0.Input,
1242
+ args: [{
1243
+ isSignal: true,
1244
+ alias: "style",
1245
+ required: false
1246
+ }]
1247
+ }],
1248
+ styleClass: [{
1249
+ type: i0.Input,
1250
+ args: [{
1251
+ isSignal: true,
1252
+ alias: "styleClass",
1253
+ required: false
1254
+ }]
1255
+ }],
1256
+ tabindex: [{
1257
+ type: i0.Input,
1258
+ args: [{
1259
+ isSignal: true,
1260
+ alias: "tabindex",
1261
+ required: false
1262
+ }]
1263
+ }],
1264
+ items: [{
1265
+ type: i0.Input,
1266
+ args: [{
1267
+ isSignal: true,
1268
+ alias: "items",
1269
+ required: false
1270
+ }]
1271
+ }],
1272
+ itemSize: [{
1273
+ type: i0.Input,
1274
+ args: [{
1275
+ isSignal: true,
1276
+ alias: "itemSize",
1277
+ required: false
1278
+ }]
1279
+ }],
1280
+ scrollHeight: [{
1281
+ type: i0.Input,
1282
+ args: [{
1283
+ isSignal: true,
1284
+ alias: "scrollHeight",
1285
+ required: false
1286
+ }]
1287
+ }],
1288
+ scrollWidth: [{
1289
+ type: i0.Input,
1290
+ args: [{
1291
+ isSignal: true,
1292
+ alias: "scrollWidth",
1293
+ required: false
1294
+ }]
1295
+ }],
1296
+ orientation: [{
1297
+ type: i0.Input,
1298
+ args: [{
1299
+ isSignal: true,
1300
+ alias: "orientation",
1301
+ required: false
1302
+ }]
1303
+ }],
1304
+ step: [{
1305
+ type: i0.Input,
1306
+ args: [{
1307
+ isSignal: true,
1308
+ alias: "step",
1309
+ required: false
1310
+ }]
1311
+ }],
1312
+ delay: [{
1313
+ type: i0.Input,
1314
+ args: [{
1315
+ isSignal: true,
1316
+ alias: "delay",
1317
+ required: false
1318
+ }]
1319
+ }],
1320
+ resizeDelay: [{
1321
+ type: i0.Input,
1322
+ args: [{
1323
+ isSignal: true,
1324
+ alias: "resizeDelay",
1325
+ required: false
1326
+ }]
1327
+ }],
1328
+ appendOnly: [{
1329
+ type: i0.Input,
1330
+ args: [{
1331
+ isSignal: true,
1332
+ alias: "appendOnly",
1333
+ required: false
1334
+ }]
1335
+ }],
1336
+ inline: [{
1337
+ type: i0.Input,
1338
+ args: [{
1339
+ isSignal: true,
1340
+ alias: "inline",
1341
+ required: false
1342
+ }]
1343
+ }],
1344
+ lazy: [{
1345
+ type: i0.Input,
1346
+ args: [{
1347
+ isSignal: true,
1348
+ alias: "lazy",
1349
+ required: false
1350
+ }]
1351
+ }],
1352
+ disabled: [{
1353
+ type: i0.Input,
1354
+ args: [{
1355
+ isSignal: true,
1356
+ alias: "disabled",
1357
+ required: false
1358
+ }]
1359
+ }],
1360
+ loaderDisabled: [{
1361
+ type: i0.Input,
1362
+ args: [{
1363
+ isSignal: true,
1364
+ alias: "loaderDisabled",
1365
+ required: false
1366
+ }]
1367
+ }],
1368
+ columns: [{
1369
+ type: i0.Input,
1370
+ args: [{
1371
+ isSignal: true,
1372
+ alias: "columns",
1373
+ required: false
1374
+ }]
1375
+ }],
1376
+ showSpacer: [{
1377
+ type: i0.Input,
1378
+ args: [{
1379
+ isSignal: true,
1380
+ alias: "showSpacer",
1381
+ required: false
1382
+ }]
1383
+ }],
1384
+ showLoader: [{
1385
+ type: i0.Input,
1386
+ args: [{
1387
+ isSignal: true,
1388
+ alias: "showLoader",
1389
+ required: false
1390
+ }]
1391
+ }],
1392
+ numToleratedItems: [{
1393
+ type: i0.Input,
1394
+ args: [{
1395
+ isSignal: true,
1396
+ alias: "numToleratedItems",
1397
+ required: false
1398
+ }]
1399
+ }],
1400
+ loading: [{
1401
+ type: i0.Input,
1402
+ args: [{
1403
+ isSignal: true,
1404
+ alias: "loading",
1405
+ required: false
1406
+ }]
1407
+ }],
1408
+ autoSize: [{
1409
+ type: i0.Input,
1410
+ args: [{
1411
+ isSignal: true,
1412
+ alias: "autoSize",
1413
+ required: false
1414
+ }]
1415
+ }],
1416
+ trackBy: [{
1417
+ type: i0.Input,
1418
+ args: [{
1419
+ isSignal: true,
1420
+ alias: "trackBy",
1421
+ required: false
1422
+ }]
1423
+ }],
1424
+ options: [{
1425
+ type: i0.Input,
1426
+ args: [{
1427
+ isSignal: true,
1428
+ alias: "options",
1429
+ required: false
1430
+ }]
1431
+ }],
1432
+ onLazyLoad: [{
1433
+ type: i0.Output,
1434
+ args: ["onLazyLoad"]
1435
+ }],
1436
+ onScroll: [{
1437
+ type: i0.Output,
1438
+ args: ["onScroll"]
1439
+ }],
1440
+ onScrollIndexChange: [{
1441
+ type: i0.Output,
1442
+ args: ["onScrollIndexChange"]
1443
+ }],
1444
+ elementViewChild: [{
1445
+ type: i0.ViewChild,
1446
+ args: ["element", { isSignal: true }]
1447
+ }],
1448
+ contentViewChild: [{
1449
+ type: i0.ViewChild,
1450
+ args: ["content", { isSignal: true }]
1451
+ }],
1452
+ contentTemplate: [{
1453
+ type: i0.ContentChild,
1454
+ args: ["content", {
1455
+ descendants: false,
1456
+ isSignal: true
1457
+ }]
1458
+ }],
1459
+ itemTemplate: [{
1460
+ type: i0.ContentChild,
1461
+ args: ["item", {
1462
+ descendants: false,
1463
+ isSignal: true
1464
+ }]
1465
+ }],
1466
+ loaderTemplate: [{
1467
+ type: i0.ContentChild,
1468
+ args: ["loader", {
1469
+ descendants: false,
1470
+ isSignal: true
1471
+ }]
1472
+ }],
1473
+ loaderIconTemplate: [{
1474
+ type: i0.ContentChild,
1475
+ args: ["loadericon", {
1476
+ descendants: false,
1477
+ isSignal: true
1478
+ }]
1479
+ }]
1480
+ }
1481
+ });
1482
+ var ScrollerModule = class ScrollerModule {
1483
+ static ɵfac = i0.ɵɵngDeclareFactory({
1484
+ minVersion: "12.0.0",
1485
+ version: "22.2.0",
1486
+ ngImport: i0,
1487
+ type: ScrollerModule,
1488
+ deps: [],
1489
+ target: i0.ɵɵFactoryTarget.NgModule
1490
+ });
1491
+ static ɵmod = i0.ɵɵngDeclareNgModule({
1492
+ minVersion: "14.0.0",
1493
+ version: "22.2.0",
1494
+ ngImport: i0,
1495
+ type: ScrollerModule,
1496
+ imports: [Scroller],
1497
+ exports: [Scroller]
1498
+ });
1499
+ static ɵinj = i0.ɵɵngDeclareInjector({
1500
+ minVersion: "12.0.0",
1501
+ version: "22.2.0",
1502
+ ngImport: i0,
1503
+ type: ScrollerModule,
1504
+ imports: [Scroller]
1505
+ });
1506
+ };
1507
+ i0.ɵɵngDeclareClassMetadata({
1508
+ minVersion: "12.0.0",
1509
+ version: "22.2.0",
1510
+ ngImport: i0,
1511
+ type: ScrollerModule,
1512
+ decorators: [{
1513
+ type: NgModule,
1514
+ args: [{
1515
+ imports: [Scroller],
1516
+ exports: [Scroller]
1517
+ }]
1518
+ }]
1519
+ });
1182
1520
  export { Scroller, ScrollerClasses, ScrollerModule, ScrollerStyle };
1183
- //# sourceMappingURL=primeng-scroller.mjs.map
1521
+
1522
+ //# sourceMappingURL=primeng-scroller.mjs.map