primevue 3.43.0 → 3.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (730) hide show
  1. package/accordion/Accordion.d.ts +4 -0
  2. package/accordion/Accordion.vue +1 -0
  3. package/accordion/accordion.cjs.js +3 -2
  4. package/accordion/accordion.cjs.min.js +1 -1
  5. package/accordion/accordion.esm.js +3 -2
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +3 -2
  8. package/accordion/accordion.min.js +1 -1
  9. package/accordiontab/AccordionTab.d.ts +4 -0
  10. package/animateonscroll/animateonscroll.cjs.js +2 -2
  11. package/animateonscroll/animateonscroll.cjs.min.js +1 -1
  12. package/animateonscroll/animateonscroll.esm.js +2 -2
  13. package/animateonscroll/animateonscroll.esm.min.js +1 -1
  14. package/animateonscroll/animateonscroll.js +2 -2
  15. package/animateonscroll/animateonscroll.min.js +1 -1
  16. package/autocomplete/AutoComplete.d.ts +4 -0
  17. package/autocomplete/AutoComplete.vue +2 -1
  18. package/autocomplete/autocomplete.cjs.js +5 -3
  19. package/autocomplete/autocomplete.cjs.min.js +1 -1
  20. package/autocomplete/autocomplete.esm.js +5 -3
  21. package/autocomplete/autocomplete.esm.min.js +1 -1
  22. package/autocomplete/autocomplete.js +5 -3
  23. package/autocomplete/autocomplete.min.js +1 -1
  24. package/avatar/Avatar.d.ts +4 -0
  25. package/badgedirective/BadgeDirective.d.ts +4 -0
  26. package/badgedirective/badgedirective.cjs.js +2 -2
  27. package/badgedirective/badgedirective.cjs.min.js +1 -1
  28. package/badgedirective/badgedirective.esm.js +2 -2
  29. package/badgedirective/badgedirective.esm.min.js +1 -1
  30. package/badgedirective/badgedirective.js +2 -2
  31. package/badgedirective/badgedirective.min.js +1 -1
  32. package/base/style/basestyle.cjs.js +2 -2
  33. package/base/style/basestyle.cjs.min.js +1 -1
  34. package/base/style/basestyle.esm.js +2 -2
  35. package/base/style/basestyle.esm.min.js +1 -1
  36. package/base/style/basestyle.js +2 -2
  37. package/base/style/basestyle.min.js +1 -1
  38. package/basecomponent/BaseComponent.vue +4 -2
  39. package/basecomponent/basecomponent.cjs.js +9 -7
  40. package/basecomponent/basecomponent.cjs.min.js +1 -1
  41. package/basecomponent/basecomponent.esm.js +9 -7
  42. package/basecomponent/basecomponent.esm.min.js +1 -1
  43. package/basecomponent/basecomponent.js +9 -7
  44. package/basecomponent/basecomponent.min.js +1 -1
  45. package/basecomponent/style/basecomponentstyle.cjs.js +3 -3
  46. package/basecomponent/style/basecomponentstyle.cjs.min.js +1 -1
  47. package/basecomponent/style/basecomponentstyle.esm.js +3 -3
  48. package/basecomponent/style/basecomponentstyle.esm.min.js +1 -1
  49. package/basecomponent/style/basecomponentstyle.js +3 -3
  50. package/basecomponent/style/basecomponentstyle.min.js +1 -1
  51. package/basedirective/basedirective.cjs.js +2 -3
  52. package/basedirective/basedirective.cjs.min.js +1 -1
  53. package/basedirective/basedirective.esm.js +2 -3
  54. package/basedirective/basedirective.esm.min.js +1 -1
  55. package/basedirective/basedirective.js +2 -3
  56. package/basedirective/basedirective.min.js +1 -1
  57. package/baseicon/BaseIcon.vue +8 -14
  58. package/baseicon/baseicon.cjs.js +10 -15
  59. package/baseicon/baseicon.cjs.min.js +1 -1
  60. package/baseicon/baseicon.esm.js +10 -15
  61. package/baseicon/baseicon.esm.min.js +1 -1
  62. package/baseicon/baseicon.js +10 -15
  63. package/baseicon/baseicon.min.js +1 -1
  64. package/blockui/BlockUI.d.ts +4 -0
  65. package/breadcrumb/Breadcrumb.d.ts +4 -0
  66. package/button/style/buttonstyle.cjs.js +2 -2
  67. package/button/style/buttonstyle.cjs.min.js +1 -1
  68. package/button/style/buttonstyle.esm.js +2 -2
  69. package/button/style/buttonstyle.esm.min.js +1 -1
  70. package/button/style/buttonstyle.js +2 -2
  71. package/button/style/buttonstyle.min.js +1 -1
  72. package/calendar/Calendar.d.ts +8 -0
  73. package/calendar/Calendar.vue +31 -15
  74. package/calendar/calendar.cjs.js +31 -17
  75. package/calendar/calendar.cjs.min.js +1 -1
  76. package/calendar/calendar.esm.js +31 -17
  77. package/calendar/calendar.esm.min.js +1 -1
  78. package/calendar/calendar.js +31 -17
  79. package/calendar/calendar.min.js +1 -1
  80. package/carousel/Carousel.d.ts +4 -0
  81. package/carousel/carousel.cjs.js +2 -2
  82. package/carousel/carousel.cjs.min.js +1 -1
  83. package/carousel/carousel.esm.js +2 -2
  84. package/carousel/carousel.esm.min.js +1 -1
  85. package/carousel/carousel.js +2 -2
  86. package/carousel/carousel.min.js +1 -1
  87. package/cascadeselect/CascadeSelect.d.ts +4 -0
  88. package/cascadeselect/CascadeSelect.vue +2 -1
  89. package/cascadeselect/CascadeSelectSub.vue +4 -1
  90. package/cascadeselect/cascadeselect.cjs.js +8 -4
  91. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  92. package/cascadeselect/cascadeselect.esm.js +8 -4
  93. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  94. package/cascadeselect/cascadeselect.js +8 -4
  95. package/cascadeselect/cascadeselect.min.js +1 -1
  96. package/cascadeselect/style/cascadeselectstyle.cjs.js +1 -1
  97. package/cascadeselect/style/cascadeselectstyle.cjs.min.js +1 -1
  98. package/cascadeselect/style/cascadeselectstyle.esm.js +1 -1
  99. package/cascadeselect/style/cascadeselectstyle.esm.min.js +1 -1
  100. package/cascadeselect/style/cascadeselectstyle.js +1 -1
  101. package/cascadeselect/style/cascadeselectstyle.min.js +1 -1
  102. package/chart/Chart.d.ts +4 -0
  103. package/chart/chart.cjs.js +2 -2
  104. package/chart/chart.cjs.min.js +1 -1
  105. package/chart/chart.esm.js +2 -2
  106. package/chart/chart.esm.min.js +1 -1
  107. package/chart/chart.js +2 -2
  108. package/chart/chart.min.js +1 -1
  109. package/checkbox/Checkbox.d.ts +4 -0
  110. package/checkbox/checkbox.cjs.js +2 -2
  111. package/checkbox/checkbox.cjs.min.js +1 -1
  112. package/checkbox/checkbox.esm.js +2 -2
  113. package/checkbox/checkbox.esm.min.js +1 -1
  114. package/checkbox/checkbox.js +2 -2
  115. package/checkbox/checkbox.min.js +1 -1
  116. package/chip/Chip.d.ts +4 -0
  117. package/chips/Chips.d.ts +4 -0
  118. package/chips/Chips.vue +1 -0
  119. package/chips/chips.cjs.js +3 -2
  120. package/chips/chips.cjs.min.js +1 -1
  121. package/chips/chips.esm.js +3 -2
  122. package/chips/chips.esm.min.js +1 -1
  123. package/chips/chips.js +3 -2
  124. package/chips/chips.min.js +1 -1
  125. package/colorpicker/ColorPicker.d.ts +4 -0
  126. package/column/Column.d.ts +4 -0
  127. package/column/Column.vue +7 -0
  128. package/column/column.cjs.js +9 -0
  129. package/column/column.cjs.min.js +1 -1
  130. package/column/column.esm.js +9 -0
  131. package/column/column.esm.min.js +1 -1
  132. package/column/column.js +9 -0
  133. package/column/column.min.js +1 -1
  134. package/columngroup/ColumnGroup.d.ts +4 -0
  135. package/columngroup/ColumnGroup.vue +7 -0
  136. package/columngroup/columngroup.cjs.js +9 -0
  137. package/columngroup/columngroup.cjs.min.js +1 -1
  138. package/columngroup/columngroup.esm.js +9 -0
  139. package/columngroup/columngroup.esm.min.js +1 -1
  140. package/columngroup/columngroup.js +9 -0
  141. package/columngroup/columngroup.min.js +1 -1
  142. package/config/config.cjs.js +2 -2
  143. package/config/config.cjs.min.js +1 -1
  144. package/config/config.esm.js +2 -2
  145. package/config/config.esm.min.js +1 -1
  146. package/config/config.js +2 -2
  147. package/config/config.min.js +1 -1
  148. package/confirmdialog/ConfirmDialog.d.ts +5 -1
  149. package/confirmpopup/ConfirmPopup.d.ts +4 -0
  150. package/confirmpopup/ConfirmPopup.vue +2 -2
  151. package/confirmpopup/confirmpopup.cjs.js +4 -4
  152. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  153. package/confirmpopup/confirmpopup.esm.js +4 -4
  154. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  155. package/confirmpopup/confirmpopup.js +4 -4
  156. package/confirmpopup/confirmpopup.min.js +1 -1
  157. package/contextmenu/ContextMenu.d.ts +4 -0
  158. package/contextmenu/ContextMenu.vue +1 -0
  159. package/contextmenu/contextmenu.cjs.js +3 -2
  160. package/contextmenu/contextmenu.cjs.min.js +1 -1
  161. package/contextmenu/contextmenu.esm.js +3 -2
  162. package/contextmenu/contextmenu.esm.min.js +1 -1
  163. package/contextmenu/contextmenu.js +3 -2
  164. package/contextmenu/contextmenu.min.js +1 -1
  165. package/core/core.js +358 -257
  166. package/core/core.min.js +36 -36
  167. package/datatable/BaseDataTable.vue +2 -2
  168. package/datatable/BodyRow.vue +578 -0
  169. package/datatable/ColumnFilter.vue +1 -0
  170. package/datatable/DataTable.d.ts +5 -1
  171. package/datatable/DataTable.vue +111 -132
  172. package/datatable/HeaderCell.vue +9 -7
  173. package/datatable/RowCheckbox.vue +1 -0
  174. package/datatable/TableBody.vue +74 -414
  175. package/datatable/TableFooter.vue +19 -26
  176. package/datatable/TableHeader.vue +19 -26
  177. package/datatable/datatable.cjs.js +908 -650
  178. package/datatable/datatable.cjs.min.js +1 -1
  179. package/datatable/datatable.esm.js +909 -651
  180. package/datatable/datatable.esm.min.js +1 -1
  181. package/datatable/datatable.js +908 -650
  182. package/datatable/datatable.min.js +1 -1
  183. package/datatable/style/datatablestyle.cjs.js +5 -4
  184. package/datatable/style/datatablestyle.cjs.min.js +1 -1
  185. package/datatable/style/datatablestyle.esm.js +5 -4
  186. package/datatable/style/datatablestyle.esm.min.js +1 -1
  187. package/datatable/style/datatablestyle.js +5 -4
  188. package/datatable/style/datatablestyle.min.js +1 -1
  189. package/dataview/DataView.d.ts +4 -0
  190. package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +4 -0
  191. package/deferredcontent/DeferredContent.d.ts +4 -0
  192. package/dialog/dialog.cjs.js +2 -2
  193. package/dialog/dialog.cjs.min.js +1 -1
  194. package/dialog/dialog.esm.js +2 -2
  195. package/dialog/dialog.esm.min.js +1 -1
  196. package/dialog/dialog.js +2 -2
  197. package/dialog/dialog.min.js +1 -1
  198. package/dialog/style/dialogstyle.cjs.js +1 -1
  199. package/dialog/style/dialogstyle.cjs.min.js +1 -1
  200. package/dialog/style/dialogstyle.esm.js +1 -1
  201. package/dialog/style/dialogstyle.esm.min.js +1 -1
  202. package/dialog/style/dialogstyle.js +1 -1
  203. package/dialog/style/dialogstyle.min.js +1 -1
  204. package/divider/Divider.d.ts +4 -0
  205. package/dock/Dock.d.ts +4 -0
  206. package/dock/DockSub.vue +1 -0
  207. package/dock/dock.cjs.js +1 -0
  208. package/dock/dock.cjs.min.js +1 -1
  209. package/dock/dock.esm.js +1 -0
  210. package/dock/dock.esm.min.js +1 -1
  211. package/dock/dock.js +1 -0
  212. package/dock/dock.min.js +1 -1
  213. package/dropdown/Dropdown.vue +29 -1
  214. package/dropdown/dropdown.cjs.js +55 -30
  215. package/dropdown/dropdown.cjs.min.js +1 -1
  216. package/dropdown/dropdown.esm.js +55 -30
  217. package/dropdown/dropdown.esm.min.js +1 -1
  218. package/dropdown/dropdown.js +55 -30
  219. package/dropdown/dropdown.min.js +1 -1
  220. package/dropdown/style/dropdownstyle.cjs.js +1 -1
  221. package/dropdown/style/dropdownstyle.cjs.min.js +1 -1
  222. package/dropdown/style/dropdownstyle.esm.js +1 -1
  223. package/dropdown/style/dropdownstyle.esm.min.js +1 -1
  224. package/dropdown/style/dropdownstyle.js +1 -1
  225. package/dropdown/style/dropdownstyle.min.js +1 -1
  226. package/dynamicdialog/DynamicDialog.vue +1 -1
  227. package/dynamicdialog/dynamicdialog.cjs.js +1 -3
  228. package/dynamicdialog/dynamicdialog.cjs.min.js +1 -1
  229. package/dynamicdialog/dynamicdialog.esm.js +1 -3
  230. package/dynamicdialog/dynamicdialog.esm.min.js +1 -1
  231. package/dynamicdialog/dynamicdialog.js +1 -3
  232. package/dynamicdialog/dynamicdialog.min.js +1 -1
  233. package/editor/Editor.d.ts +4 -0
  234. package/editor/editor.cjs.js +2 -2
  235. package/editor/editor.cjs.min.js +1 -1
  236. package/editor/editor.esm.js +2 -2
  237. package/editor/editor.esm.min.js +1 -1
  238. package/editor/editor.js +2 -2
  239. package/editor/editor.min.js +1 -1
  240. package/fieldset/Fieldset.d.ts +4 -0
  241. package/fieldset/Fieldset.vue +1 -1
  242. package/fieldset/fieldset.cjs.js +3 -3
  243. package/fieldset/fieldset.cjs.min.js +1 -1
  244. package/fieldset/fieldset.esm.js +3 -3
  245. package/fieldset/fieldset.esm.min.js +1 -1
  246. package/fieldset/fieldset.js +3 -3
  247. package/fieldset/fieldset.min.js +1 -1
  248. package/fileupload/FileUpload.d.ts +4 -0
  249. package/galleria/Galleria.d.ts +4 -0
  250. package/galleria/GalleriaItem.vue +1 -0
  251. package/galleria/GalleriaThumbnails.vue +1 -1
  252. package/galleria/galleria.cjs.js +8 -7
  253. package/galleria/galleria.cjs.min.js +1 -1
  254. package/galleria/galleria.esm.js +8 -7
  255. package/galleria/galleria.esm.min.js +1 -1
  256. package/galleria/galleria.js +8 -7
  257. package/galleria/galleria.min.js +1 -1
  258. package/icons/sortamountdown/index.cjs.js +10 -7
  259. package/icons/sortamountdown/index.cjs.min.js +1 -1
  260. package/icons/sortamountdown/index.esm.js +11 -8
  261. package/icons/sortamountdown/index.esm.min.js +1 -1
  262. package/icons/sortamountdown/index.js +10 -7
  263. package/icons/sortamountdown/index.min.js +1 -1
  264. package/icons/sortamountdown/index.vue +1 -21
  265. package/icons/sortamountupalt/index.cjs.js +10 -7
  266. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  267. package/icons/sortamountupalt/index.esm.js +11 -8
  268. package/icons/sortamountupalt/index.esm.min.js +1 -1
  269. package/icons/sortamountupalt/index.js +10 -7
  270. package/icons/sortamountupalt/index.min.js +1 -1
  271. package/icons/sortamountupalt/index.vue +1 -21
  272. package/image/Image.d.ts +4 -0
  273. package/image/Image.vue +2 -6
  274. package/image/image.cjs.js +4 -7
  275. package/image/image.cjs.min.js +1 -1
  276. package/image/image.esm.js +4 -7
  277. package/image/image.esm.min.js +1 -1
  278. package/image/image.js +4 -7
  279. package/image/image.min.js +1 -1
  280. package/image/style/imagestyle.cjs.js +1 -1
  281. package/image/style/imagestyle.cjs.min.js +1 -1
  282. package/image/style/imagestyle.esm.js +1 -1
  283. package/image/style/imagestyle.esm.min.js +1 -1
  284. package/image/style/imagestyle.js +1 -1
  285. package/image/style/imagestyle.min.js +1 -1
  286. package/inlinemessage/InlineMessage.d.ts +4 -0
  287. package/inplace/Inplace.d.ts +4 -0
  288. package/inplace/inplace.cjs.js +2 -2
  289. package/inplace/inplace.cjs.min.js +1 -1
  290. package/inplace/inplace.esm.js +2 -2
  291. package/inplace/inplace.esm.min.js +1 -1
  292. package/inplace/inplace.js +2 -2
  293. package/inplace/inplace.min.js +1 -1
  294. package/inputgroup/InputGroup.d.ts +4 -0
  295. package/inputgroupaddon/InputGroupAddon.d.ts +4 -0
  296. package/inputmask/InputMask.d.ts +4 -0
  297. package/inputnumber/BaseInputNumber.vue +7 -0
  298. package/inputnumber/InputNumber.d.ts +7 -0
  299. package/inputnumber/InputNumber.vue +4 -3
  300. package/inputnumber/inputnumber.cjs.js +15 -5
  301. package/inputnumber/inputnumber.cjs.min.js +1 -1
  302. package/inputnumber/inputnumber.esm.js +15 -5
  303. package/inputnumber/inputnumber.esm.min.js +1 -1
  304. package/inputnumber/inputnumber.js +15 -5
  305. package/inputnumber/inputnumber.min.js +1 -1
  306. package/inputswitch/InputSwitch.d.ts +4 -0
  307. package/inputswitch/inputswitch.cjs.js +2 -2
  308. package/inputswitch/inputswitch.cjs.min.js +1 -1
  309. package/inputswitch/inputswitch.esm.js +2 -2
  310. package/inputswitch/inputswitch.esm.min.js +1 -1
  311. package/inputswitch/inputswitch.js +2 -2
  312. package/inputswitch/inputswitch.min.js +1 -1
  313. package/knob/Knob.d.ts +4 -0
  314. package/knob/Knob.vue +1 -1
  315. package/knob/knob.cjs.js +1 -1
  316. package/knob/knob.cjs.min.js +1 -1
  317. package/knob/knob.esm.js +1 -1
  318. package/knob/knob.esm.min.js +1 -1
  319. package/knob/knob.js +1 -1
  320. package/knob/knob.min.js +1 -1
  321. package/listbox/BaseListbox.vue +1 -1
  322. package/listbox/Listbox.d.ts +5 -1
  323. package/listbox/Listbox.vue +2 -0
  324. package/listbox/listbox.cjs.js +5 -3
  325. package/listbox/listbox.cjs.min.js +1 -1
  326. package/listbox/listbox.esm.js +5 -3
  327. package/listbox/listbox.esm.min.js +1 -1
  328. package/listbox/listbox.js +5 -3
  329. package/listbox/listbox.min.js +1 -1
  330. package/megamenu/MegaMenu.d.ts +4 -0
  331. package/megamenu/MegaMenu.vue +2 -1
  332. package/megamenu/megamenu.cjs.js +2 -1
  333. package/megamenu/megamenu.cjs.min.js +1 -1
  334. package/megamenu/megamenu.esm.js +2 -1
  335. package/megamenu/megamenu.esm.min.js +1 -1
  336. package/megamenu/megamenu.js +2 -1
  337. package/megamenu/megamenu.min.js +1 -1
  338. package/menu/Menu.d.ts +4 -0
  339. package/menu/Menu.vue +1 -0
  340. package/menu/menu.cjs.js +3 -2
  341. package/menu/menu.cjs.min.js +1 -1
  342. package/menu/menu.esm.js +3 -2
  343. package/menu/menu.esm.min.js +1 -1
  344. package/menu/menu.js +3 -2
  345. package/menu/menu.min.js +1 -1
  346. package/menubar/Menubar.d.ts +4 -0
  347. package/menubar/Menubar.vue +2 -1
  348. package/menubar/menubar.cjs.js +4 -3
  349. package/menubar/menubar.cjs.min.js +1 -1
  350. package/menubar/menubar.esm.js +4 -3
  351. package/menubar/menubar.esm.min.js +1 -1
  352. package/menubar/menubar.js +4 -3
  353. package/menubar/menubar.min.js +1 -1
  354. package/menuitem/MenuItem.d.ts +0 -6
  355. package/message/message.cjs.js +2 -2
  356. package/message/message.cjs.min.js +1 -1
  357. package/message/message.esm.js +2 -2
  358. package/message/message.esm.min.js +1 -1
  359. package/message/message.js +2 -2
  360. package/message/message.min.js +1 -1
  361. package/message/style/messagestyle.cjs.js +1 -1
  362. package/message/style/messagestyle.cjs.min.js +1 -1
  363. package/message/style/messagestyle.esm.js +1 -1
  364. package/message/style/messagestyle.esm.min.js +1 -1
  365. package/message/style/messagestyle.js +1 -1
  366. package/message/style/messagestyle.min.js +1 -1
  367. package/multiselect/MultiSelect.d.ts +4 -0
  368. package/multiselect/MultiSelect.vue +2 -0
  369. package/multiselect/multiselect.cjs.js +6 -4
  370. package/multiselect/multiselect.cjs.min.js +1 -1
  371. package/multiselect/multiselect.esm.js +6 -4
  372. package/multiselect/multiselect.esm.min.js +1 -1
  373. package/multiselect/multiselect.js +6 -4
  374. package/multiselect/multiselect.min.js +1 -1
  375. package/orderlist/BaseOrderList.vue +1 -1
  376. package/orderlist/OrderList.d.ts +5 -1
  377. package/orderlist/OrderList.vue +1 -0
  378. package/orderlist/orderlist.cjs.js +4 -3
  379. package/orderlist/orderlist.cjs.min.js +1 -1
  380. package/orderlist/orderlist.esm.js +4 -3
  381. package/orderlist/orderlist.esm.min.js +1 -1
  382. package/orderlist/orderlist.js +4 -3
  383. package/orderlist/orderlist.min.js +1 -1
  384. package/organizationchart/OrganizationChart.d.ts +4 -0
  385. package/organizationchart/OrganizationChartNode.vue +1 -1
  386. package/organizationchart/organizationchart.cjs.js +3 -3
  387. package/organizationchart/organizationchart.cjs.min.js +1 -1
  388. package/organizationchart/organizationchart.esm.js +3 -3
  389. package/organizationchart/organizationchart.esm.min.js +1 -1
  390. package/organizationchart/organizationchart.js +3 -3
  391. package/organizationchart/organizationchart.min.js +1 -1
  392. package/overlaypanel/OverlayPanel.d.ts +4 -0
  393. package/overlaypanel/overlaypanel.cjs.js +2 -2
  394. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  395. package/overlaypanel/overlaypanel.esm.js +2 -2
  396. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  397. package/overlaypanel/overlaypanel.js +2 -2
  398. package/overlaypanel/overlaypanel.min.js +1 -1
  399. package/package.json +1 -1
  400. package/paginator/Paginator.vue +4 -4
  401. package/paginator/paginator.cjs.js +2 -2
  402. package/paginator/paginator.cjs.min.js +1 -1
  403. package/paginator/paginator.esm.js +2 -2
  404. package/paginator/paginator.esm.min.js +1 -1
  405. package/paginator/paginator.js +2 -2
  406. package/paginator/paginator.min.js +1 -1
  407. package/paginator/style/paginatorstyle.cjs.js +2 -2
  408. package/paginator/style/paginatorstyle.cjs.min.js +1 -1
  409. package/paginator/style/paginatorstyle.esm.js +2 -2
  410. package/paginator/style/paginatorstyle.esm.min.js +1 -1
  411. package/paginator/style/paginatorstyle.js +2 -2
  412. package/paginator/style/paginatorstyle.min.js +1 -1
  413. package/panel/Panel.d.ts +4 -0
  414. package/panel/Panel.vue +1 -1
  415. package/panel/panel.cjs.js +3 -3
  416. package/panel/panel.cjs.min.js +1 -1
  417. package/panel/panel.esm.js +3 -3
  418. package/panel/panel.esm.min.js +1 -1
  419. package/panel/panel.js +3 -3
  420. package/panel/panel.min.js +1 -1
  421. package/panelmenu/PanelMenu.d.ts +4 -0
  422. package/panelmenu/PanelMenu.vue +1 -0
  423. package/panelmenu/PanelMenuList.vue +1 -0
  424. package/panelmenu/panelmenu.cjs.js +4 -2
  425. package/panelmenu/panelmenu.cjs.min.js +1 -1
  426. package/panelmenu/panelmenu.esm.js +4 -2
  427. package/panelmenu/panelmenu.esm.min.js +1 -1
  428. package/panelmenu/panelmenu.js +4 -2
  429. package/panelmenu/panelmenu.min.js +1 -1
  430. package/passthrough/index.cjs.js +2 -2
  431. package/passthrough/index.cjs.min.js +1 -1
  432. package/passthrough/index.esm.js +2 -2
  433. package/passthrough/index.esm.min.js +1 -1
  434. package/passthrough/index.js +2 -2
  435. package/passthrough/index.min.js +1 -1
  436. package/passthrough/tailwind/index.cjs.js +2 -71
  437. package/passthrough/tailwind/index.cjs.min.js +1 -1
  438. package/passthrough/tailwind/index.esm.js +2 -71
  439. package/passthrough/tailwind/index.esm.min.js +1 -1
  440. package/passthrough/tailwind/index.js +2 -71
  441. package/passthrough/tailwind/index.min.js +1 -1
  442. package/password/Password.d.ts +4 -0
  443. package/password/password.cjs.js +2 -4
  444. package/password/password.cjs.min.js +1 -1
  445. package/password/password.esm.js +2 -4
  446. package/password/password.esm.min.js +1 -1
  447. package/password/password.js +2 -4
  448. package/password/password.min.js +1 -1
  449. package/picklist/BasePickList.vue +1 -1
  450. package/picklist/PickList.d.ts +5 -1
  451. package/picklist/PickList.vue +2 -1
  452. package/picklist/picklist.cjs.js +5 -4
  453. package/picklist/picklist.cjs.min.js +1 -1
  454. package/picklist/picklist.esm.js +5 -4
  455. package/picklist/picklist.esm.min.js +1 -1
  456. package/picklist/picklist.js +5 -4
  457. package/picklist/picklist.min.js +1 -1
  458. package/picklist/style/pickliststyle.cjs.js +1 -1
  459. package/picklist/style/pickliststyle.cjs.min.js +1 -1
  460. package/picklist/style/pickliststyle.esm.js +1 -1
  461. package/picklist/style/pickliststyle.esm.min.js +1 -1
  462. package/picklist/style/pickliststyle.js +1 -1
  463. package/picklist/style/pickliststyle.min.js +1 -1
  464. package/progressspinner/ProgressSpinner.d.ts +4 -0
  465. package/radiobutton/RadioButton.d.ts +4 -0
  466. package/radiobutton/radiobutton.cjs.js +2 -2
  467. package/radiobutton/radiobutton.cjs.min.js +1 -1
  468. package/radiobutton/radiobutton.esm.js +2 -2
  469. package/radiobutton/radiobutton.esm.min.js +1 -1
  470. package/radiobutton/radiobutton.js +2 -2
  471. package/radiobutton/radiobutton.min.js +1 -1
  472. package/rating/Rating.d.ts +4 -0
  473. package/resources/themes/arya-blue/theme.css +4 -4
  474. package/resources/themes/arya-green/theme.css +4 -4
  475. package/resources/themes/arya-orange/theme.css +4 -4
  476. package/resources/themes/arya-purple/theme.css +4 -4
  477. package/resources/themes/bootstrap4-dark-blue/theme.css +4 -4
  478. package/resources/themes/bootstrap4-dark-purple/theme.css +4 -4
  479. package/resources/themes/bootstrap4-light-blue/theme.css +4 -4
  480. package/resources/themes/bootstrap4-light-purple/theme.css +4 -4
  481. package/resources/themes/fluent-light/theme.css +4 -4
  482. package/resources/themes/lara-dark-amber/theme.css +4 -4
  483. package/resources/themes/lara-dark-blue/theme.css +4 -4
  484. package/resources/themes/lara-dark-cyan/theme.css +4 -4
  485. package/resources/themes/lara-dark-green/theme.css +4 -4
  486. package/resources/themes/lara-dark-indigo/theme.css +4 -4
  487. package/resources/themes/lara-dark-pink/theme.css +4 -4
  488. package/resources/themes/lara-dark-purple/theme.css +4 -4
  489. package/resources/themes/lara-dark-teal/theme.css +4 -4
  490. package/resources/themes/lara-light-amber/theme.css +4 -4
  491. package/resources/themes/lara-light-blue/theme.css +4 -4
  492. package/resources/themes/lara-light-cyan/theme.css +4 -4
  493. package/resources/themes/lara-light-green/theme.css +4 -4
  494. package/resources/themes/lara-light-indigo/theme.css +4 -4
  495. package/resources/themes/lara-light-pink/theme.css +4 -4
  496. package/resources/themes/lara-light-purple/theme.css +4 -4
  497. package/resources/themes/lara-light-teal/theme.css +44 -44
  498. package/resources/themes/luna-amber/theme.css +4 -4
  499. package/resources/themes/luna-blue/theme.css +4 -4
  500. package/resources/themes/luna-green/theme.css +4 -4
  501. package/resources/themes/luna-pink/theme.css +4 -4
  502. package/resources/themes/md-dark-deeppurple/theme.css +4 -4
  503. package/resources/themes/md-dark-indigo/theme.css +4 -4
  504. package/resources/themes/md-light-deeppurple/theme.css +4 -4
  505. package/resources/themes/md-light-indigo/theme.css +4 -4
  506. package/resources/themes/mdc-dark-deeppurple/theme.css +4 -4
  507. package/resources/themes/mdc-dark-indigo/theme.css +4 -4
  508. package/resources/themes/mdc-light-deeppurple/theme.css +4 -4
  509. package/resources/themes/mdc-light-indigo/theme.css +4 -4
  510. package/resources/themes/mira/theme.css +4 -4
  511. package/resources/themes/nano/theme.css +4 -4
  512. package/resources/themes/nova/theme.css +4 -4
  513. package/resources/themes/nova-accent/theme.css +4 -4
  514. package/resources/themes/nova-alt/theme.css +4 -4
  515. package/resources/themes/nova-vue/theme.css +4 -4
  516. package/resources/themes/rhea/theme.css +4 -4
  517. package/resources/themes/saga-blue/theme.css +4 -4
  518. package/resources/themes/saga-green/theme.css +4 -4
  519. package/resources/themes/saga-orange/theme.css +4 -4
  520. package/resources/themes/saga-purple/theme.css +4 -4
  521. package/resources/themes/soho-dark/theme.css +4 -4
  522. package/resources/themes/soho-light/theme.css +4 -4
  523. package/resources/themes/tailwind-light/theme.css +4 -4
  524. package/resources/themes/vela-blue/theme.css +4 -4
  525. package/resources/themes/vela-green/theme.css +4 -4
  526. package/resources/themes/vela-orange/theme.css +4 -4
  527. package/resources/themes/vela-purple/theme.css +4 -4
  528. package/resources/themes/viva-dark/theme.css +4 -4
  529. package/resources/themes/viva-light/theme.css +4 -4
  530. package/ripple/style/ripplestyle.cjs.js +1 -1
  531. package/ripple/style/ripplestyle.cjs.min.js +1 -1
  532. package/ripple/style/ripplestyle.esm.js +1 -1
  533. package/ripple/style/ripplestyle.esm.min.js +1 -1
  534. package/ripple/style/ripplestyle.js +1 -1
  535. package/ripple/style/ripplestyle.min.js +1 -1
  536. package/row/Row.d.ts +4 -0
  537. package/row/Row.vue +7 -0
  538. package/row/row.cjs.js +9 -0
  539. package/row/row.cjs.min.js +1 -1
  540. package/row/row.esm.js +9 -0
  541. package/row/row.esm.min.js +1 -1
  542. package/row/row.js +9 -0
  543. package/row/row.min.js +1 -1
  544. package/scrollpanel/ScrollPanel.d.ts +4 -0
  545. package/scrollpanel/ScrollPanel.vue +8 -1
  546. package/scrollpanel/scrollpanel.cjs.js +14 -5
  547. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  548. package/scrollpanel/scrollpanel.esm.js +14 -5
  549. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  550. package/scrollpanel/scrollpanel.js +14 -5
  551. package/scrollpanel/scrollpanel.min.js +1 -1
  552. package/scrolltop/ScrollTop.d.ts +4 -0
  553. package/selectbutton/SelectButton.d.ts +4 -0
  554. package/sidebar/Sidebar.d.ts +4 -0
  555. package/sidebar/sidebar.cjs.js +2 -2
  556. package/sidebar/sidebar.cjs.min.js +1 -1
  557. package/sidebar/sidebar.esm.js +2 -2
  558. package/sidebar/sidebar.esm.min.js +1 -1
  559. package/sidebar/sidebar.js +2 -2
  560. package/sidebar/sidebar.min.js +1 -1
  561. package/skeleton/Skeleton.d.ts +4 -0
  562. package/slider/Slider.d.ts +4 -0
  563. package/slider/Slider.vue +26 -19
  564. package/slider/slider.cjs.js +19 -11
  565. package/slider/slider.cjs.min.js +1 -1
  566. package/slider/slider.esm.js +19 -11
  567. package/slider/slider.esm.min.js +1 -1
  568. package/slider/slider.js +19 -11
  569. package/slider/slider.min.js +1 -1
  570. package/speeddial/SpeedDial.d.ts +4 -0
  571. package/speeddial/SpeedDial.vue +1 -0
  572. package/speeddial/speeddial.cjs.js +3 -2
  573. package/speeddial/speeddial.cjs.min.js +1 -1
  574. package/speeddial/speeddial.esm.js +3 -2
  575. package/speeddial/speeddial.esm.min.js +1 -1
  576. package/speeddial/speeddial.js +3 -2
  577. package/speeddial/speeddial.min.js +1 -1
  578. package/speeddial/style/speeddialstyle.cjs.js +2 -2
  579. package/speeddial/style/speeddialstyle.cjs.min.js +1 -1
  580. package/speeddial/style/speeddialstyle.esm.js +2 -2
  581. package/speeddial/style/speeddialstyle.esm.min.js +1 -1
  582. package/speeddial/style/speeddialstyle.js +2 -2
  583. package/speeddial/style/speeddialstyle.min.js +1 -1
  584. package/splitbutton/SplitButton.d.ts +4 -0
  585. package/splitbutton/style/splitbuttonstyle.cjs.js +2 -2
  586. package/splitbutton/style/splitbuttonstyle.cjs.min.js +1 -1
  587. package/splitbutton/style/splitbuttonstyle.esm.js +2 -2
  588. package/splitbutton/style/splitbuttonstyle.esm.min.js +1 -1
  589. package/splitbutton/style/splitbuttonstyle.js +2 -2
  590. package/splitbutton/style/splitbuttonstyle.min.js +1 -1
  591. package/splitter/Splitter.d.ts +4 -0
  592. package/splitterpanel/SplitterPanel.d.ts +4 -0
  593. package/steps/Steps.d.ts +4 -0
  594. package/steps/Steps.vue +1 -0
  595. package/steps/steps.cjs.js +1 -0
  596. package/steps/steps.cjs.min.js +1 -1
  597. package/steps/steps.esm.js +1 -0
  598. package/steps/steps.esm.min.js +1 -1
  599. package/steps/steps.js +1 -0
  600. package/steps/steps.min.js +1 -1
  601. package/tabmenu/TabMenu.d.ts +4 -0
  602. package/tabmenu/TabMenu.vue +1 -0
  603. package/tabmenu/tabmenu.cjs.js +1 -0
  604. package/tabmenu/tabmenu.cjs.min.js +1 -1
  605. package/tabmenu/tabmenu.esm.js +1 -0
  606. package/tabmenu/tabmenu.esm.min.js +1 -1
  607. package/tabmenu/tabmenu.js +1 -0
  608. package/tabmenu/tabmenu.min.js +1 -1
  609. package/tabpanel/TabPanel.d.ts +4 -0
  610. package/tabview/TabView.vue +1 -0
  611. package/tabview/tabview.cjs.js +3 -2
  612. package/tabview/tabview.cjs.min.js +1 -1
  613. package/tabview/tabview.esm.js +3 -2
  614. package/tabview/tabview.esm.min.js +1 -1
  615. package/tabview/tabview.js +3 -2
  616. package/tabview/tabview.min.js +1 -1
  617. package/tag/Tag.d.ts +4 -0
  618. package/terminal/Terminal.d.ts +4 -0
  619. package/terminal/Terminal.vue +1 -1
  620. package/terminal/terminal.cjs.js +1 -1
  621. package/terminal/terminal.cjs.min.js +1 -1
  622. package/terminal/terminal.esm.js +1 -1
  623. package/terminal/terminal.esm.min.js +1 -1
  624. package/terminal/terminal.js +1 -1
  625. package/terminal/terminal.min.js +1 -1
  626. package/textarea/Textarea.d.ts +4 -0
  627. package/tieredmenu/TieredMenu.vue +1 -0
  628. package/tieredmenu/tieredmenu.cjs.js +3 -2
  629. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  630. package/tieredmenu/tieredmenu.esm.js +3 -2
  631. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  632. package/tieredmenu/tieredmenu.js +3 -2
  633. package/tieredmenu/tieredmenu.min.js +1 -1
  634. package/timeline/Timeline.d.ts +4 -0
  635. package/toast/Toast.d.ts +4 -0
  636. package/toast/style/toaststyle.cjs.js +2 -2
  637. package/toast/style/toaststyle.cjs.min.js +1 -1
  638. package/toast/style/toaststyle.esm.js +2 -2
  639. package/toast/style/toaststyle.esm.min.js +1 -1
  640. package/toast/style/toaststyle.js +2 -2
  641. package/toast/style/toaststyle.min.js +1 -1
  642. package/toast/toast.cjs.js +4 -4
  643. package/toast/toast.cjs.min.js +1 -1
  644. package/toast/toast.esm.js +4 -4
  645. package/toast/toast.esm.min.js +1 -1
  646. package/toast/toast.js +4 -4
  647. package/toast/toast.min.js +1 -1
  648. package/togglebutton/ToggleButton.d.ts +4 -0
  649. package/togglebutton/togglebutton.cjs.js +2 -2
  650. package/togglebutton/togglebutton.cjs.min.js +1 -1
  651. package/togglebutton/togglebutton.esm.js +2 -2
  652. package/togglebutton/togglebutton.esm.min.js +1 -1
  653. package/togglebutton/togglebutton.js +2 -2
  654. package/togglebutton/togglebutton.min.js +1 -1
  655. package/toolbar/Toolbar.d.ts +4 -0
  656. package/tooltip/Tooltip.d.ts +4 -0
  657. package/tree/BaseTree.vue +1 -1
  658. package/tree/Tree.d.ts +1 -1
  659. package/tree/Tree.vue +1 -1
  660. package/tree/TreeNode.vue +1 -0
  661. package/tree/tree.cjs.js +7 -6
  662. package/tree/tree.cjs.min.js +1 -1
  663. package/tree/tree.esm.js +7 -6
  664. package/tree/tree.esm.min.js +1 -1
  665. package/tree/tree.js +7 -6
  666. package/tree/tree.min.js +1 -1
  667. package/treeselect/BaseTreeSelect.vue +1 -1
  668. package/treeselect/TreeSelect.d.ts +5 -1
  669. package/treeselect/TreeSelect.vue +1 -0
  670. package/treeselect/treeselect.cjs.js +6 -5
  671. package/treeselect/treeselect.cjs.min.js +1 -1
  672. package/treeselect/treeselect.esm.js +6 -5
  673. package/treeselect/treeselect.esm.min.js +1 -1
  674. package/treeselect/treeselect.js +6 -5
  675. package/treeselect/treeselect.min.js +1 -1
  676. package/treetable/BaseTreeTable.vue +5 -1
  677. package/treetable/HeaderCell.vue +1 -1
  678. package/treetable/TreeTable.d.ts +10 -1
  679. package/treetable/TreeTable.vue +32 -24
  680. package/treetable/TreeTableRow.vue +32 -20
  681. package/treetable/style/treetablestyle.cjs.js +1 -1
  682. package/treetable/style/treetablestyle.cjs.min.js +1 -1
  683. package/treetable/style/treetablestyle.esm.js +1 -1
  684. package/treetable/style/treetablestyle.esm.min.js +1 -1
  685. package/treetable/style/treetablestyle.js +1 -1
  686. package/treetable/style/treetablestyle.min.js +1 -1
  687. package/treetable/treetable.cjs.js +82 -55
  688. package/treetable/treetable.cjs.min.js +1 -1
  689. package/treetable/treetable.esm.js +83 -56
  690. package/treetable/treetable.esm.min.js +1 -1
  691. package/treetable/treetable.js +82 -55
  692. package/treetable/treetable.min.js +1 -1
  693. package/tristatecheckbox/TriStateCheckbox.d.ts +4 -0
  694. package/tristatecheckbox/TriStateCheckbox.vue +1 -1
  695. package/tristatecheckbox/tristatecheckbox.cjs.js +3 -3
  696. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  697. package/tristatecheckbox/tristatecheckbox.esm.js +3 -3
  698. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  699. package/tristatecheckbox/tristatecheckbox.js +3 -3
  700. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  701. package/usestyle/usestyle.cjs.js +2 -2
  702. package/usestyle/usestyle.cjs.min.js +1 -1
  703. package/usestyle/usestyle.esm.js +2 -2
  704. package/usestyle/usestyle.esm.min.js +1 -1
  705. package/usestyle/usestyle.js +2 -2
  706. package/usestyle/usestyle.min.js +1 -1
  707. package/utils/Utils.d.ts +10 -0
  708. package/utils/utils.cjs.js +167 -42
  709. package/utils/utils.cjs.min.js +1 -1
  710. package/utils/utils.esm.js +167 -43
  711. package/utils/utils.esm.min.js +1 -1
  712. package/utils/utils.js +167 -42
  713. package/utils/utils.min.js +1 -1
  714. package/vetur-attributes.json +4 -0
  715. package/vetur-tags.json +1 -0
  716. package/virtualscroller/VirtualScroller.d.ts +4 -0
  717. package/virtualscroller/VirtualScroller.vue +20 -16
  718. package/virtualscroller/style/virtualscrollerstyle.cjs.js +1 -1
  719. package/virtualscroller/style/virtualscrollerstyle.cjs.min.js +1 -1
  720. package/virtualscroller/style/virtualscrollerstyle.esm.js +1 -1
  721. package/virtualscroller/style/virtualscrollerstyle.esm.min.js +1 -1
  722. package/virtualscroller/style/virtualscrollerstyle.js +1 -1
  723. package/virtualscroller/style/virtualscrollerstyle.min.js +1 -1
  724. package/virtualscroller/virtualscroller.cjs.js +24 -20
  725. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  726. package/virtualscroller/virtualscroller.esm.js +24 -20
  727. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  728. package/virtualscroller/virtualscroller.js +24 -20
  729. package/virtualscroller/virtualscroller.min.js +1 -1
  730. package/web-types.json +11 -1
@@ -83,8 +83,10 @@ export default {
83
83
  numToleratedItems(newValue) {
84
84
  this.d_numToleratedItems = newValue;
85
85
  },
86
- loading(newValue) {
87
- this.d_loading = newValue;
86
+ loading(newValue, oldValue) {
87
+ if (this.lazy && newValue !== oldValue && newValue !== this.d_loading) {
88
+ this.d_loading = newValue;
89
+ }
88
90
  },
89
91
  items(newValue, oldValue) {
90
92
  if (!oldValue || oldValue.length !== (newValue || []).length) {
@@ -233,7 +235,7 @@ export default {
233
235
  if (this.element) {
234
236
  const both = this.isBoth();
235
237
  const horizontal = this.isHorizontal();
236
- const { scrollTop, scrollLeft } = this.element.scrollTop;
238
+ const { scrollTop, scrollLeft } = this.element;
237
239
 
238
240
  if (both) {
239
241
  firstInViewport = { rows: calculateFirstInViewport(scrollTop, this.itemSize[0]), cols: calculateFirstInViewport(scrollLeft, this.itemSize[1]) };
@@ -506,26 +508,28 @@ export default {
506
508
  onScroll(event) {
507
509
  this.$emit('scroll', event);
508
510
 
509
- if (this.delay && this.isPageChanged()) {
511
+ if (this.delay) {
510
512
  if (this.scrollTimeout) {
511
513
  clearTimeout(this.scrollTimeout);
512
514
  }
513
515
 
514
- if (!this.d_loading && this.showLoader) {
515
- const { isRangeChanged } = this.onScrollPositionChange(event);
516
- const changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
516
+ if (this.isPageChanged()) {
517
+ if (!this.d_loading && this.showLoader) {
518
+ const { isRangeChanged } = this.onScrollPositionChange(event);
519
+ const changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
517
520
 
518
- changed && (this.d_loading = true);
519
- }
521
+ changed && (this.d_loading = true);
522
+ }
520
523
 
521
- this.scrollTimeout = setTimeout(() => {
522
- this.onScrollChange(event);
524
+ this.scrollTimeout = setTimeout(() => {
525
+ this.onScrollChange(event);
523
526
 
524
- if (this.d_loading && this.showLoader && (!this.lazy || this.loading === undefined)) {
525
- this.d_loading = false;
526
- this.page = this.getPageByFirst();
527
- }
528
- }, this.delay);
527
+ if (this.d_loading && this.showLoader && (!this.lazy || this.loading === undefined)) {
528
+ this.d_loading = false;
529
+ this.page = this.getPageByFirst();
530
+ }
531
+ }, this.delay);
532
+ }
529
533
  } else {
530
534
  this.onScrollChange(event);
531
535
  }
@@ -6,7 +6,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
6
6
 
7
7
  var BaseStyle__default = /*#__PURE__*/_interopDefaultLegacy(BaseStyle);
8
8
 
9
- var css = "\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n";
9
+ var css = "\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n";
10
10
  var VirtualScrollerStyle = BaseStyle__default["default"].extend({
11
11
  name: 'virtualscroller',
12
12
  css: css
@@ -1 +1 @@
1
- "use strict";function n(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var t=n(require("primevue/base/style")).default.extend({name:"virtualscroller",css:"\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n"});module.exports=t;
1
+ "use strict";function n(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var t=n(require("primevue/base/style")).default.extend({name:"virtualscroller",css:"\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n"});module.exports=t;
@@ -1,6 +1,6 @@
1
1
  import BaseStyle from 'primevue/base/style';
2
2
 
3
- var css = "\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n";
3
+ var css = "\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n";
4
4
  var VirtualScrollerStyle = BaseStyle.extend({
5
5
  name: 'virtualscroller',
6
6
  css: css
@@ -1 +1 @@
1
- import n from"primevue/base/style";var t=n.extend({name:"virtualscroller",css:"\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n"});export{t as default};
1
+ import n from"primevue/base/style";var t=n.extend({name:"virtualscroller",css:"\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n"});export{t as default};
@@ -7,7 +7,7 @@ this.primevue.virtualscroller.style = (function (BaseStyle) {
7
7
 
8
8
  var BaseStyle__default = /*#__PURE__*/_interopDefaultLegacy(BaseStyle);
9
9
 
10
- var css = "\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n";
10
+ var css = "\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n";
11
11
  var VirtualScrollerStyle = BaseStyle__default["default"].extend({
12
12
  name: 'virtualscroller',
13
13
  css: css
@@ -1 +1 @@
1
- this.primevue=this.primevue||{},this.primevue.virtualscroller=this.primevue.virtualscroller||{},this.primevue.virtualscroller.style=function(n){"use strict";function t(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}return t(primevue.base.style).default.extend({name:"virtualscroller",css:"\n.p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n}\n\n.p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n}\n\n.p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n}\n\n.p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.p-virtualscroller-loading-icon {\n font-size: 2rem;\n}\n\n.p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n}\n\n.p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n}\n\n/* Inline */\n.p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n}\n"})}();
1
+ this.primevue=this.primevue||{},this.primevue.virtualscroller=this.primevue.virtualscroller||{},this.primevue.virtualscroller.style=function(n){"use strict";function t(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}return t(primevue.base.style).default.extend({name:"virtualscroller",css:"\n@layer primevue {\n .p-virtualscroller {\n position: relative;\n overflow: auto;\n contain: strict;\n transform: translateZ(0);\n will-change: scroll-position;\n outline: 0 none;\n }\n\n .p-virtualscroller-content {\n position: absolute;\n top: 0;\n left: 0;\n /* contain: content; */\n min-height: 100%;\n min-width: 100%;\n will-change: transform;\n }\n\n .p-virtualscroller-spacer {\n position: absolute;\n top: 0;\n left: 0;\n height: 1px;\n width: 1px;\n transform-origin: 0 0;\n pointer-events: none;\n }\n\n .p-virtualscroller .p-virtualscroller-loader {\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n .p-virtualscroller-loader.p-component-overlay {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .p-virtualscroller-loading-icon {\n font-size: 2rem;\n }\n\n .p-virtualscroller-loading-icon.p-icon {\n width: 2rem;\n height: 2rem;\n }\n\n .p-virtualscroller-horizontal > .p-virtualscroller-content {\n display: flex;\n }\n\n /* Inline */\n .p-virtualscroller-inline .p-virtualscroller-content {\n position: static;\n }\n}\n"})}();
@@ -112,8 +112,8 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
112
112
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
113
113
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
114
114
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
115
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
116
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
115
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
116
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
117
117
  var script = {
118
118
  name: 'VirtualScroller',
119
119
  "extends": script$1,
@@ -164,8 +164,10 @@ var script = {
164
164
  numToleratedItems: function numToleratedItems(newValue) {
165
165
  this.d_numToleratedItems = newValue;
166
166
  },
167
- loading: function loading(newValue) {
168
- this.d_loading = newValue;
167
+ loading: function loading(newValue, oldValue) {
168
+ if (this.lazy && newValue !== oldValue && newValue !== this.d_loading) {
169
+ this.d_loading = newValue;
170
+ }
169
171
  },
170
172
  items: function items(newValue, oldValue) {
171
173
  if (!oldValue || oldValue.length !== (newValue || []).length) {
@@ -350,9 +352,9 @@ var script = {
350
352
  if (this.element) {
351
353
  var both = this.isBoth();
352
354
  var horizontal = this.isHorizontal();
353
- var _this$element$scrollT = this.element.scrollTop,
354
- scrollTop = _this$element$scrollT.scrollTop,
355
- scrollLeft = _this$element$scrollT.scrollLeft;
355
+ var _this$element = this.element,
356
+ scrollTop = _this$element.scrollTop,
357
+ scrollLeft = _this$element.scrollLeft;
356
358
  if (both) {
357
359
  firstInViewport = {
358
360
  rows: calculateFirstInViewport(scrollTop, this.itemSize[0]),
@@ -672,23 +674,25 @@ var script = {
672
674
  onScroll: function onScroll(event) {
673
675
  var _this9 = this;
674
676
  this.$emit('scroll', event);
675
- if (this.delay && this.isPageChanged()) {
677
+ if (this.delay) {
676
678
  if (this.scrollTimeout) {
677
679
  clearTimeout(this.scrollTimeout);
678
680
  }
679
- if (!this.d_loading && this.showLoader) {
680
- var _this$onScrollPositio2 = this.onScrollPositionChange(event),
681
- isRangeChanged = _this$onScrollPositio2.isRangeChanged;
682
- var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
683
- changed && (this.d_loading = true);
684
- }
685
- this.scrollTimeout = setTimeout(function () {
686
- _this9.onScrollChange(event);
687
- if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
688
- _this9.d_loading = false;
689
- _this9.page = _this9.getPageByFirst();
681
+ if (this.isPageChanged()) {
682
+ if (!this.d_loading && this.showLoader) {
683
+ var _this$onScrollPositio2 = this.onScrollPositionChange(event),
684
+ isRangeChanged = _this$onScrollPositio2.isRangeChanged;
685
+ var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
686
+ changed && (this.d_loading = true);
690
687
  }
691
- }, this.delay);
688
+ this.scrollTimeout = setTimeout(function () {
689
+ _this9.onScrollChange(event);
690
+ if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
691
+ _this9.d_loading = false;
692
+ _this9.page = _this9.getPageByFirst();
693
+ }
694
+ }, this.delay);
695
+ }
692
696
  } else {
693
697
  this.onScrollChange(event);
694
698
  }
@@ -1 +1 @@
1
- "use strict";var t=require("primevue/icons/spinner"),e=require("primevue/utils"),i=require("primevue/basecomponent"),s=require("primevue/virtualscroller/style"),o=require("vue");function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var l=n(t),r=n(i),a=n(s);function h(t){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},h(t)}function c(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,s)}return i}function u(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?c(Object(i),!0).forEach((function(e){d(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):c(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function d(t,e,i){return(e=m(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function m(t){var e=f(t,"string");return"symbol"===h(e)?e:String(e)}function f(t,e){if("object"!==h(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var s=i.call(t,e||"default");if("object"!==h(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}var p={name:"VirtualScroller",extends:{name:"BaseVirtualScroller",extends:r.default,props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:a.default,provide:function(){return{$parentInstance:this}},beforeMount:function(){a.default.loadStyle()}},emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data:function(){return{first:this.isBoth()?{rows:0,cols:0}:0,last:this.isBoth()?{rows:0,cols:0}:0,page:this.isBoth()?{rows:0,cols:0}:0,numItemsInViewport:this.isBoth()?{rows:0,cols:0}:0,lastScrollPos:this.isBoth()?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,watch:{numToleratedItems:function(t){this.d_numToleratedItems=t},loading:function(t){this.d_loading=t},items:function(t,e){e&&e.length===(t||[]).length||(this.init(),this.calculateAutoSize())},itemSize:function(){this.init(),this.calculateAutoSize()},orientation:function(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight:function(){this.init(),this.calculateAutoSize()},scrollWidth:function(){this.init(),this.calculateAutoSize()}},mounted:function(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated:function(){!this.initialized&&this.viewInit()},unmounted:function(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit:function(){e.DomHandler.isVisible(this.element)&&(this.setContentEl(this.content),this.init(),this.bindResizeListener(),this.defaultWidth=e.DomHandler.getWidth(this.element),this.defaultHeight=e.DomHandler.getHeight(this.element),this.defaultContentWidth=e.DomHandler.getWidth(this.content),this.defaultContentHeight=e.DomHandler.getHeight(this.content),this.initialized=!0)},init:function(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical:function(){return"vertical"===this.orientation},isHorizontal:function(){return"horizontal"===this.orientation},isBoth:function(){return"both"===this.orientation},scrollTo:function(t){this.lastScrollPos=this.both?{top:0,left:0}:0,this.element&&this.element.scrollTo(t)},scrollToIndex:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",s=this.isBoth(),o=this.isHorizontal(),n=this.first,l=this.calculateNumItems().numToleratedItems,r=this.getContentPosition(),a=this.itemSize,h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t<=(arguments.length>1?arguments[1]:void 0)?0:t},c=function(t,e,i){return t*e+i},u=function(){return e.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:i})},d=s?{rows:0,cols:0}:0,m=!1;s?(u(c((d={rows:h(t[0],l[0]),cols:h(t[1],l[1])}).cols,a[1],r.left),c(d.rows,a[0],r.top)),m=d.rows!==n.rows||d.cols!==n.cols):(d=h(t,l),o?u(c(d,a,r.left),0):u(0,c(d,a,r.top)),m=d!==n),this.isRangeChanged=m,this.first=d},scrollInView:function(t,e){var i=this,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"auto";if(e){var o=this.isBoth(),n=this.isHorizontal(),l=this.getRenderedRange(),r=l.first,a=l.viewport,h=function(){return i.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:s})},c="to-end"===e;if("to-start"===e){if(o)a.first.rows-r.rows>t[0]?h(a.first.cols*this.itemSize[1],(a.first.rows-1)*this.itemSize[0]):a.first.cols-r.cols>t[1]&&h((a.first.cols-1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.first-r>t){var u=(a.first-1)*this.itemSize;n?h(u,0):h(0,u)}}else if(c)if(o)a.last.rows-r.rows<=t[0]+1?h(a.first.cols*this.itemSize[1],(a.first.rows+1)*this.itemSize[0]):a.last.cols-r.cols<=t[1]+1&&h((a.first.cols+1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.last-r<=t+1){var d=(a.first+1)*this.itemSize;n?h(d,0):h(0,d)}}else this.scrollToIndex(t,s)},getRenderedRange:function(){var t=function(t,e){return Math.floor(t/(e||t))},e=this.first,i=0;if(this.element){var s=this.isBoth(),o=this.isHorizontal(),n=this.element.scrollTop,l=n.scrollTop,r=n.scrollLeft;if(s)i={rows:(e={rows:t(l,this.itemSize[0]),cols:t(r,this.itemSize[1])}).rows+this.numItemsInViewport.rows,cols:e.cols+this.numItemsInViewport.cols};else i=(e=t(o?r:l,this.itemSize))+this.numItemsInViewport}return{first:this.first,last:this.last,viewport:{first:e,last:i}}},calculateNumItems:function(){var t=this.isBoth(),e=this.isHorizontal(),i=this.itemSize,s=this.getContentPosition(),o=this.element?this.element.offsetWidth-s.left:0,n=this.element?this.element.offsetHeight-s.top:0,l=function(t,e){return Math.ceil(t/(e||t))},r=function(t){return Math.ceil(t/2)},a=t?{rows:l(n,i[0]),cols:l(o,i[1])}:l(e?o:n,i);return{numItemsInViewport:a,numToleratedItems:this.d_numToleratedItems||(t?[r(a.rows),r(a.cols)]:r(a))}},calculateOptions:function(){var t=this,e=this.isBoth(),i=this.first,s=this.calculateNumItems(),o=s.numItemsInViewport,n=s.numToleratedItems,l=function(e,i,s){return t.getLast(e+i+(e<s?2:3)*s,arguments.length>3&&void 0!==arguments[3]&&arguments[3])},r=e?{rows:l(i.rows,o.rows,n[0]),cols:l(i.cols,o.cols,n[1],!0)}:l(i,o,n);this.last=r,this.numItemsInViewport=o,this.d_numToleratedItems=n,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=e?Array.from({length:o.rows}).map((function(){return Array.from({length:o.cols})})):Array.from({length:o})),this.lazy&&Promise.resolve().then((function(){t.lazyLoadState={first:t.step?e?{rows:0,cols:i.cols}:0:i,last:Math.min(t.step?t.step:r,t.items.length)},t.$emit("lazy-load",t.lazyLoadState)}))},calculateAutoSize:function(){var t=this;this.autoSize&&!this.d_loading&&Promise.resolve().then((function(){if(t.content){var i=t.isBoth(),s=t.isHorizontal(),o=t.isVertical();t.content.style.minHeight=t.content.style.minWidth="auto",t.content.style.position="relative",t.element.style.contain="none";var n=[e.DomHandler.getWidth(t.content),e.DomHandler.getHeight(t.content)],l=n[1];n[0]!==t.defaultContentWidth&&(t.element.style.width=""),l!==t.defaultContentHeight&&(t.element.style.height="");var r=[e.DomHandler.getWidth(t.element),e.DomHandler.getHeight(t.element)],a=r[0],h=r[1];(i||s)&&(t.element.style.width=a<t.defaultWidth?a+"px":t.scrollWidth||t.defaultWidth+"px"),(i||o)&&(t.element.style.height=h<t.defaultHeight?h+"px":t.scrollHeight||t.defaultHeight+"px"),t.content.style.minHeight=t.content.style.minWidth="",t.content.style.position="",t.element.style.contain=""}}))},getLast:function(){return this.items?Math.min((arguments.length>1?arguments[1]:void 0)?(this.columns||this.items[0]).length:this.items.length,arguments.length>0&&void 0!==arguments[0]?arguments[0]:0):0},getContentPosition:function(){if(this.content){var t=getComputedStyle(this.content),e=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),i=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),s=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),o=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:e,right:i,top:s,bottom:o,x:e+i,y:s+o}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize:function(){var t=this;if(this.element){var e=this.isBoth(),i=this.isHorizontal(),s=this.element.parentElement,o=this.scrollWidth||"".concat(this.element.offsetWidth||s.offsetWidth,"px"),n=this.scrollHeight||"".concat(this.element.offsetHeight||s.offsetHeight,"px"),l=function(e,i){return t.element.style[e]=i};e||i?(l("height",n),l("width",o)):l("height",n)}},setSpacerSize:function(){var t=this,e=this.items;if(e){var i=this.isBoth(),s=this.isHorizontal(),o=this.getContentPosition(),n=function(e,i,s){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return t.spacerStyle=u(u({},t.spacerStyle),d({},"".concat(e),(i||[]).length*s+o+"px"))};i?(n("height",e,this.itemSize[0],o.y),n("width",this.columns||e[1],this.itemSize[1],o.x)):s?n("width",this.columns||e,this.itemSize,o.x):n("height",e,this.itemSize,o.y)}},setContentPosition:function(t){var e=this;if(this.content&&!this.appendOnly){var i=this.isBoth(),s=this.isHorizontal(),o=t?t.first:this.first,n=function(t,e){return t*e},l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.contentStyle=u(u({},e.contentStyle),{transform:"translate3d(".concat(t,"px, ").concat(i,"px, 0)")})};if(i)l(n(o.cols,this.itemSize[1]),n(o.rows,this.itemSize[0]));else{var r=n(o,this.itemSize);s?l(r,0):l(0,r)}}},onScrollPositionChange:function(t){var e=this,i=t.target,s=this.isBoth(),o=this.isHorizontal(),n=this.getContentPosition(),l=function(t,e){return t?t>e?t-e:t:0},r=function(t,e){return Math.floor(t/(e||t))},a=function(t,e,i,s,o,n){return t<=o?o:n?i-s-o:e+o-1},h=function(t,e,i,s,o,n,l){return t<=n?0:Math.max(0,l?t<e?i:t-n:t>e?i:t-2*n)},c=function(t,i,s,o,n,l){var r=i+o+2*n;return t>=n&&(r+=n+1),e.getLast(r,l)},u=l(i.scrollTop,n.top),d=l(i.scrollLeft,n.left),m=s?{rows:0,cols:0}:0,f=this.last,p=!1,g=this.lastScrollPos;if(s){var y=this.lastScrollPos.top<=u,v=this.lastScrollPos.left<=d;if(!this.appendOnly||this.appendOnly&&(y||v)){var S={rows:r(u,this.itemSize[0]),cols:r(d,this.itemSize[1])},w={rows:a(S.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],y),cols:a(S.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],v)};m={rows:h(S.rows,w.rows,this.first.rows,0,0,this.d_numToleratedItems[0],y),cols:h(S.cols,w.cols,this.first.cols,0,0,this.d_numToleratedItems[1],v)},f={rows:c(S.rows,m.rows,0,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:c(S.cols,m.cols,0,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},p=m.rows!==this.first.rows||f.rows!==this.last.rows||m.cols!==this.first.cols||f.cols!==this.last.cols||this.isRangeChanged,g={top:u,left:d}}}else{var z=o?d:u,I=this.lastScrollPos<=z;if(!this.appendOnly||this.appendOnly&&I){var b=r(z,this.itemSize);f=c(b,m=h(b,a(b,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,I),this.first,0,0,this.d_numToleratedItems,I),0,this.numItemsInViewport,this.d_numToleratedItems),p=m!==this.first||f!==this.last||this.isRangeChanged,g=z}}return{first:m,last:f,isRangeChanged:p,scrollPos:g}},onScrollChange:function(t){var e=this.onScrollPositionChange(t),i=e.first,s=e.last,o=e.scrollPos;if(e.isRangeChanged){var n={first:i,last:s};if(this.setContentPosition(n),this.first=i,this.last=s,this.lastScrollPos=o,this.$emit("scroll-index-change",n),this.lazy&&this.isPageChanged(i)){var l={first:this.step?Math.min(this.getPageByFirst(i)*this.step,this.items.length-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:s,this.items.length)};(this.lazyLoadState.first!==l.first||this.lazyLoadState.last!==l.last)&&this.$emit("lazy-load",l),this.lazyLoadState=l}}},onScroll:function(t){var e=this;if(this.$emit("scroll",t),this.delay&&this.isPageChanged()){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),!this.d_loading&&this.showLoader)(this.onScrollPositionChange(t).isRangeChanged||!!this.step&&this.isPageChanged())&&(this.d_loading=!0);this.scrollTimeout=setTimeout((function(){e.onScrollChange(t),!e.d_loading||!e.showLoader||e.lazy&&void 0!==e.loading||(e.d_loading=!1,e.page=e.getPageByFirst())}),this.delay)}else this.onScrollChange(t)},onResize:function(){var t=this;this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((function(){if(e.DomHandler.isVisible(t.element)){var i=t.isBoth(),s=t.isVertical(),o=t.isHorizontal(),n=[e.DomHandler.getWidth(t.element),e.DomHandler.getHeight(t.element)],l=n[0],r=n[1],a=l!==t.defaultWidth,h=r!==t.defaultHeight;(i?a||h:o?a:!!s&&h)&&(t.d_numToleratedItems=t.numToleratedItems,t.defaultWidth=l,t.defaultHeight=r,t.defaultContentWidth=e.DomHandler.getWidth(t.content),t.defaultContentHeight=e.DomHandler.getHeight(t.content),t.init())}}),this.resizeDelay)},bindResizeListener:function(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions:function(t){var e=(this.items||[]).length,i=this.isBoth()?this.first.rows+t:this.first+t;return{index:i,count:e,first:0===i,last:i===e-1,even:i%2==0,odd:i%2!=0}},getLoaderOptions:function(t,e){var i=this.loaderArr.length;return u({index:t,count:i,first:0===t,last:t===i-1,even:t%2==0,odd:t%2!=0},e)},getPageByFirst:function(t){return Math.floor(((null!=t?t:this.first)+4*this.d_numToleratedItems)/(this.step||1))},isPageChanged:function(t){return!this.step||this.page!==this.getPageByFirst(null!=t?t:this.first)},setContentEl:function(t){this.content=t||this.content||e.DomHandler.findSingle(this.element,'[data-pc-section="content"]')},elementRef:function(t){this.element=t},contentRef:function(t){this.content=t}},computed:{containerClass:function(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal()}]},contentClass:function(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass:function(){return["p-virtualscroller-loader",{"p-component-overlay":!this.$slots.loader}]},loadedItems:function(){var t=this;return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map((function(e){return t.columns?e:e.slice(t.appendOnly?0:t.first.cols,t.last.cols)})):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows:function(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns:function(){if(this.columns){var t=this.isBoth(),e=this.isHorizontal();if(t||e)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},components:{SpinnerIcon:l.default}},g=["tabindex"];p.render=function(t,e,i,s,n,l){var r=o.resolveComponent("SpinnerIcon");return t.disabled?(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[o.renderSlot(t.$slots,"default"),o.renderSlot(t.$slots,"content",{items:t.items,rows:t.items,columns:l.loadedColumns})],64)):(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,ref:l.elementRef,class:l.containerClass,tabindex:t.tabindex,style:t.style,onScroll:e[0]||(e[0]=function(){return l.onScroll&&l.onScroll.apply(l,arguments)})},t.ptm("root"),{"data-pc-name":"virtualscroller"}),[o.renderSlot(t.$slots,"content",{styleClass:l.contentClass,items:l.loadedItems,getItemOptions:l.getOptions,loading:n.d_loading,getLoaderOptions:l.getLoaderOptions,itemSize:t.itemSize,rows:l.loadedRows,columns:l.loadedColumns,contentRef:l.contentRef,spacerStyle:n.spacerStyle,contentStyle:n.contentStyle,vertical:l.isVertical(),horizontal:l.isHorizontal(),both:l.isBoth()},(function(){return[o.createElementVNode("div",o.mergeProps({ref:l.contentRef,class:l.contentClass,style:n.contentStyle},t.ptm("content")),[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(l.loadedItems,(function(e,i){return o.renderSlot(t.$slots,"item",{key:i,item:e,options:l.getOptions(i)})})),128))],16)]})),t.showSpacer?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,class:"p-virtualscroller-spacer",style:n.spacerStyle},t.ptm("spacer")),null,16)):o.createCommentVNode("",!0),!t.loaderDisabled&&t.showLoader&&n.d_loading?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:1,class:l.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(o.openBlock(!0),o.createElementBlock(o.Fragment,{key:0},o.renderList(n.loaderArr,(function(e,i){return o.renderSlot(t.$slots,"loader",{key:i,options:l.getLoaderOptions(i,l.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})})),128)):o.createCommentVNode("",!0),o.renderSlot(t.$slots,"loadingicon",{},(function(){return[o.createVNode(r,o.mergeProps({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)]}))],16)):o.createCommentVNode("",!0)],16,g))},module.exports=p;
1
+ "use strict";var t=require("primevue/icons/spinner"),e=require("primevue/utils"),i=require("primevue/basecomponent"),s=require("primevue/virtualscroller/style"),o=require("vue");function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var l=n(t),r=n(i),a=n(s);function h(t){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},h(t)}function c(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,s)}return i}function d(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?c(Object(i),!0).forEach((function(e){u(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):c(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function u(t,e,i){var s;return(e="symbol"==h(s=m(e,"string"))?s:String(s))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function m(t,e){if("object"!=h(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var s=i.call(t,e||"default");if("object"!=h(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}var f={name:"VirtualScroller",extends:{name:"BaseVirtualScroller",extends:r.default,props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:a.default,provide:function(){return{$parentInstance:this}},beforeMount:function(){a.default.loadStyle()}},emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data:function(){return{first:this.isBoth()?{rows:0,cols:0}:0,last:this.isBoth()?{rows:0,cols:0}:0,page:this.isBoth()?{rows:0,cols:0}:0,numItemsInViewport:this.isBoth()?{rows:0,cols:0}:0,lastScrollPos:this.isBoth()?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,watch:{numToleratedItems:function(t){this.d_numToleratedItems=t},loading:function(t,e){this.lazy&&t!==e&&t!==this.d_loading&&(this.d_loading=t)},items:function(t,e){e&&e.length===(t||[]).length||(this.init(),this.calculateAutoSize())},itemSize:function(){this.init(),this.calculateAutoSize()},orientation:function(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight:function(){this.init(),this.calculateAutoSize()},scrollWidth:function(){this.init(),this.calculateAutoSize()}},mounted:function(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated:function(){!this.initialized&&this.viewInit()},unmounted:function(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit:function(){e.DomHandler.isVisible(this.element)&&(this.setContentEl(this.content),this.init(),this.bindResizeListener(),this.defaultWidth=e.DomHandler.getWidth(this.element),this.defaultHeight=e.DomHandler.getHeight(this.element),this.defaultContentWidth=e.DomHandler.getWidth(this.content),this.defaultContentHeight=e.DomHandler.getHeight(this.content),this.initialized=!0)},init:function(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical:function(){return"vertical"===this.orientation},isHorizontal:function(){return"horizontal"===this.orientation},isBoth:function(){return"both"===this.orientation},scrollTo:function(t){this.lastScrollPos=this.both?{top:0,left:0}:0,this.element&&this.element.scrollTo(t)},scrollToIndex:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",s=this.isBoth(),o=this.isHorizontal(),n=this.first,l=this.calculateNumItems().numToleratedItems,r=this.getContentPosition(),a=this.itemSize,h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t<=(arguments.length>1?arguments[1]:void 0)?0:t},c=function(t,e,i){return t*e+i},d=function(){return e.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:i})},u=s?{rows:0,cols:0}:0,m=!1;s?(d(c((u={rows:h(t[0],l[0]),cols:h(t[1],l[1])}).cols,a[1],r.left),c(u.rows,a[0],r.top)),m=u.rows!==n.rows||u.cols!==n.cols):(u=h(t,l),o?d(c(u,a,r.left),0):d(0,c(u,a,r.top)),m=u!==n),this.isRangeChanged=m,this.first=u},scrollInView:function(t,e){var i=this,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"auto";if(e){var o=this.isBoth(),n=this.isHorizontal(),l=this.getRenderedRange(),r=l.first,a=l.viewport,h=function(){return i.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:s})},c="to-end"===e;if("to-start"===e){if(o)a.first.rows-r.rows>t[0]?h(a.first.cols*this.itemSize[1],(a.first.rows-1)*this.itemSize[0]):a.first.cols-r.cols>t[1]&&h((a.first.cols-1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.first-r>t){var d=(a.first-1)*this.itemSize;n?h(d,0):h(0,d)}}else if(c)if(o)a.last.rows-r.rows<=t[0]+1?h(a.first.cols*this.itemSize[1],(a.first.rows+1)*this.itemSize[0]):a.last.cols-r.cols<=t[1]+1&&h((a.first.cols+1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.last-r<=t+1){var u=(a.first+1)*this.itemSize;n?h(u,0):h(0,u)}}else this.scrollToIndex(t,s)},getRenderedRange:function(){var t=function(t,e){return Math.floor(t/(e||t))},e=this.first,i=0;if(this.element){var s=this.isBoth(),o=this.isHorizontal(),n=this.element,l=n.scrollTop,r=n.scrollLeft;if(s)i={rows:(e={rows:t(l,this.itemSize[0]),cols:t(r,this.itemSize[1])}).rows+this.numItemsInViewport.rows,cols:e.cols+this.numItemsInViewport.cols};else i=(e=t(o?r:l,this.itemSize))+this.numItemsInViewport}return{first:this.first,last:this.last,viewport:{first:e,last:i}}},calculateNumItems:function(){var t=this.isBoth(),e=this.isHorizontal(),i=this.itemSize,s=this.getContentPosition(),o=this.element?this.element.offsetWidth-s.left:0,n=this.element?this.element.offsetHeight-s.top:0,l=function(t,e){return Math.ceil(t/(e||t))},r=function(t){return Math.ceil(t/2)},a=t?{rows:l(n,i[0]),cols:l(o,i[1])}:l(e?o:n,i);return{numItemsInViewport:a,numToleratedItems:this.d_numToleratedItems||(t?[r(a.rows),r(a.cols)]:r(a))}},calculateOptions:function(){var t=this,e=this.isBoth(),i=this.first,s=this.calculateNumItems(),o=s.numItemsInViewport,n=s.numToleratedItems,l=function(e,i,s){return t.getLast(e+i+(e<s?2:3)*s,arguments.length>3&&void 0!==arguments[3]&&arguments[3])},r=e?{rows:l(i.rows,o.rows,n[0]),cols:l(i.cols,o.cols,n[1],!0)}:l(i,o,n);this.last=r,this.numItemsInViewport=o,this.d_numToleratedItems=n,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=e?Array.from({length:o.rows}).map((function(){return Array.from({length:o.cols})})):Array.from({length:o})),this.lazy&&Promise.resolve().then((function(){t.lazyLoadState={first:t.step?e?{rows:0,cols:i.cols}:0:i,last:Math.min(t.step?t.step:r,t.items.length)},t.$emit("lazy-load",t.lazyLoadState)}))},calculateAutoSize:function(){var t=this;this.autoSize&&!this.d_loading&&Promise.resolve().then((function(){if(t.content){var i=t.isBoth(),s=t.isHorizontal(),o=t.isVertical();t.content.style.minHeight=t.content.style.minWidth="auto",t.content.style.position="relative",t.element.style.contain="none";var n=[e.DomHandler.getWidth(t.content),e.DomHandler.getHeight(t.content)],l=n[1];n[0]!==t.defaultContentWidth&&(t.element.style.width=""),l!==t.defaultContentHeight&&(t.element.style.height="");var r=[e.DomHandler.getWidth(t.element),e.DomHandler.getHeight(t.element)],a=r[0],h=r[1];(i||s)&&(t.element.style.width=a<t.defaultWidth?a+"px":t.scrollWidth||t.defaultWidth+"px"),(i||o)&&(t.element.style.height=h<t.defaultHeight?h+"px":t.scrollHeight||t.defaultHeight+"px"),t.content.style.minHeight=t.content.style.minWidth="",t.content.style.position="",t.element.style.contain=""}}))},getLast:function(){return this.items?Math.min((arguments.length>1?arguments[1]:void 0)?(this.columns||this.items[0]).length:this.items.length,arguments.length>0&&void 0!==arguments[0]?arguments[0]:0):0},getContentPosition:function(){if(this.content){var t=getComputedStyle(this.content),e=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),i=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),s=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),o=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:e,right:i,top:s,bottom:o,x:e+i,y:s+o}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize:function(){var t=this;if(this.element){var e=this.isBoth(),i=this.isHorizontal(),s=this.element.parentElement,o=this.scrollWidth||"".concat(this.element.offsetWidth||s.offsetWidth,"px"),n=this.scrollHeight||"".concat(this.element.offsetHeight||s.offsetHeight,"px"),l=function(e,i){return t.element.style[e]=i};e||i?(l("height",n),l("width",o)):l("height",n)}},setSpacerSize:function(){var t=this,e=this.items;if(e){var i=this.isBoth(),s=this.isHorizontal(),o=this.getContentPosition(),n=function(e,i,s){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return t.spacerStyle=d(d({},t.spacerStyle),u({},"".concat(e),(i||[]).length*s+o+"px"))};i?(n("height",e,this.itemSize[0],o.y),n("width",this.columns||e[1],this.itemSize[1],o.x)):s?n("width",this.columns||e,this.itemSize,o.x):n("height",e,this.itemSize,o.y)}},setContentPosition:function(t){var e=this;if(this.content&&!this.appendOnly){var i=this.isBoth(),s=this.isHorizontal(),o=t?t.first:this.first,n=function(t,e){return t*e},l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.contentStyle=d(d({},e.contentStyle),{transform:"translate3d(".concat(t,"px, ").concat(i,"px, 0)")})};if(i)l(n(o.cols,this.itemSize[1]),n(o.rows,this.itemSize[0]));else{var r=n(o,this.itemSize);s?l(r,0):l(0,r)}}},onScrollPositionChange:function(t){var e=this,i=t.target,s=this.isBoth(),o=this.isHorizontal(),n=this.getContentPosition(),l=function(t,e){return t?t>e?t-e:t:0},r=function(t,e){return Math.floor(t/(e||t))},a=function(t,e,i,s,o,n){return t<=o?o:n?i-s-o:e+o-1},h=function(t,e,i,s,o,n,l){return t<=n?0:Math.max(0,l?t<e?i:t-n:t>e?i:t-2*n)},c=function(t,i,s,o,n,l){var r=i+o+2*n;return t>=n&&(r+=n+1),e.getLast(r,l)},d=l(i.scrollTop,n.top),u=l(i.scrollLeft,n.left),m=s?{rows:0,cols:0}:0,f=this.last,p=!1,g=this.lastScrollPos;if(s){var y=this.lastScrollPos.top<=d,v=this.lastScrollPos.left<=u;if(!this.appendOnly||this.appendOnly&&(y||v)){var S={rows:r(d,this.itemSize[0]),cols:r(u,this.itemSize[1])},w={rows:a(S.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],y),cols:a(S.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],v)};m={rows:h(S.rows,w.rows,this.first.rows,0,0,this.d_numToleratedItems[0],y),cols:h(S.cols,w.cols,this.first.cols,0,0,this.d_numToleratedItems[1],v)},f={rows:c(S.rows,m.rows,0,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:c(S.cols,m.cols,0,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},p=m.rows!==this.first.rows||f.rows!==this.last.rows||m.cols!==this.first.cols||f.cols!==this.last.cols||this.isRangeChanged,g={top:d,left:u}}}else{var z=o?u:d,I=this.lastScrollPos<=z;if(!this.appendOnly||this.appendOnly&&I){var b=r(z,this.itemSize);f=c(b,m=h(b,a(b,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,I),this.first,0,0,this.d_numToleratedItems,I),0,this.numItemsInViewport,this.d_numToleratedItems),p=m!==this.first||f!==this.last||this.isRangeChanged,g=z}}return{first:m,last:f,isRangeChanged:p,scrollPos:g}},onScrollChange:function(t){var e=this.onScrollPositionChange(t),i=e.first,s=e.last,o=e.scrollPos;if(e.isRangeChanged){var n={first:i,last:s};if(this.setContentPosition(n),this.first=i,this.last=s,this.lastScrollPos=o,this.$emit("scroll-index-change",n),this.lazy&&this.isPageChanged(i)){var l={first:this.step?Math.min(this.getPageByFirst(i)*this.step,this.items.length-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:s,this.items.length)};(this.lazyLoadState.first!==l.first||this.lazyLoadState.last!==l.last)&&this.$emit("lazy-load",l),this.lazyLoadState=l}}},onScroll:function(t){var e=this;if(this.$emit("scroll",t),this.delay){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.isPageChanged()){if(!this.d_loading&&this.showLoader)(this.onScrollPositionChange(t).isRangeChanged||!!this.step&&this.isPageChanged())&&(this.d_loading=!0);this.scrollTimeout=setTimeout((function(){e.onScrollChange(t),!e.d_loading||!e.showLoader||e.lazy&&void 0!==e.loading||(e.d_loading=!1,e.page=e.getPageByFirst())}),this.delay)}}else this.onScrollChange(t)},onResize:function(){var t=this;this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((function(){if(e.DomHandler.isVisible(t.element)){var i=t.isBoth(),s=t.isVertical(),o=t.isHorizontal(),n=[e.DomHandler.getWidth(t.element),e.DomHandler.getHeight(t.element)],l=n[0],r=n[1],a=l!==t.defaultWidth,h=r!==t.defaultHeight;(i?a||h:o?a:!!s&&h)&&(t.d_numToleratedItems=t.numToleratedItems,t.defaultWidth=l,t.defaultHeight=r,t.defaultContentWidth=e.DomHandler.getWidth(t.content),t.defaultContentHeight=e.DomHandler.getHeight(t.content),t.init())}}),this.resizeDelay)},bindResizeListener:function(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions:function(t){var e=(this.items||[]).length,i=this.isBoth()?this.first.rows+t:this.first+t;return{index:i,count:e,first:0===i,last:i===e-1,even:i%2==0,odd:i%2!=0}},getLoaderOptions:function(t,e){var i=this.loaderArr.length;return d({index:t,count:i,first:0===t,last:t===i-1,even:t%2==0,odd:t%2!=0},e)},getPageByFirst:function(t){return Math.floor(((null!=t?t:this.first)+4*this.d_numToleratedItems)/(this.step||1))},isPageChanged:function(t){return!this.step||this.page!==this.getPageByFirst(null!=t?t:this.first)},setContentEl:function(t){this.content=t||this.content||e.DomHandler.findSingle(this.element,'[data-pc-section="content"]')},elementRef:function(t){this.element=t},contentRef:function(t){this.content=t}},computed:{containerClass:function(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal()}]},contentClass:function(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass:function(){return["p-virtualscroller-loader",{"p-component-overlay":!this.$slots.loader}]},loadedItems:function(){var t=this;return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map((function(e){return t.columns?e:e.slice(t.appendOnly?0:t.first.cols,t.last.cols)})):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows:function(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns:function(){if(this.columns){var t=this.isBoth(),e=this.isHorizontal();if(t||e)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},components:{SpinnerIcon:l.default}},p=["tabindex"];f.render=function(t,e,i,s,n,l){var r=o.resolveComponent("SpinnerIcon");return t.disabled?(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[o.renderSlot(t.$slots,"default"),o.renderSlot(t.$slots,"content",{items:t.items,rows:t.items,columns:l.loadedColumns})],64)):(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,ref:l.elementRef,class:l.containerClass,tabindex:t.tabindex,style:t.style,onScroll:e[0]||(e[0]=function(){return l.onScroll&&l.onScroll.apply(l,arguments)})},t.ptm("root"),{"data-pc-name":"virtualscroller"}),[o.renderSlot(t.$slots,"content",{styleClass:l.contentClass,items:l.loadedItems,getItemOptions:l.getOptions,loading:n.d_loading,getLoaderOptions:l.getLoaderOptions,itemSize:t.itemSize,rows:l.loadedRows,columns:l.loadedColumns,contentRef:l.contentRef,spacerStyle:n.spacerStyle,contentStyle:n.contentStyle,vertical:l.isVertical(),horizontal:l.isHorizontal(),both:l.isBoth()},(function(){return[o.createElementVNode("div",o.mergeProps({ref:l.contentRef,class:l.contentClass,style:n.contentStyle},t.ptm("content")),[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(l.loadedItems,(function(e,i){return o.renderSlot(t.$slots,"item",{key:i,item:e,options:l.getOptions(i)})})),128))],16)]})),t.showSpacer?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,class:"p-virtualscroller-spacer",style:n.spacerStyle},t.ptm("spacer")),null,16)):o.createCommentVNode("",!0),!t.loaderDisabled&&t.showLoader&&n.d_loading?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:1,class:l.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(o.openBlock(!0),o.createElementBlock(o.Fragment,{key:0},o.renderList(n.loaderArr,(function(e,i){return o.renderSlot(t.$slots,"loader",{key:i,options:l.getLoaderOptions(i,l.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})})),128)):o.createCommentVNode("",!0),o.renderSlot(t.$slots,"loadingicon",{},(function(){return[o.createVNode(r,o.mergeProps({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)]}))],16)):o.createCommentVNode("",!0)],16,p))},module.exports=f;
@@ -104,8 +104,8 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
104
104
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
105
105
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
106
106
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
107
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
108
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
107
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
108
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
109
109
  var script = {
110
110
  name: 'VirtualScroller',
111
111
  "extends": script$1,
@@ -156,8 +156,10 @@ var script = {
156
156
  numToleratedItems: function numToleratedItems(newValue) {
157
157
  this.d_numToleratedItems = newValue;
158
158
  },
159
- loading: function loading(newValue) {
160
- this.d_loading = newValue;
159
+ loading: function loading(newValue, oldValue) {
160
+ if (this.lazy && newValue !== oldValue && newValue !== this.d_loading) {
161
+ this.d_loading = newValue;
162
+ }
161
163
  },
162
164
  items: function items(newValue, oldValue) {
163
165
  if (!oldValue || oldValue.length !== (newValue || []).length) {
@@ -342,9 +344,9 @@ var script = {
342
344
  if (this.element) {
343
345
  var both = this.isBoth();
344
346
  var horizontal = this.isHorizontal();
345
- var _this$element$scrollT = this.element.scrollTop,
346
- scrollTop = _this$element$scrollT.scrollTop,
347
- scrollLeft = _this$element$scrollT.scrollLeft;
347
+ var _this$element = this.element,
348
+ scrollTop = _this$element.scrollTop,
349
+ scrollLeft = _this$element.scrollLeft;
348
350
  if (both) {
349
351
  firstInViewport = {
350
352
  rows: calculateFirstInViewport(scrollTop, this.itemSize[0]),
@@ -664,23 +666,25 @@ var script = {
664
666
  onScroll: function onScroll(event) {
665
667
  var _this9 = this;
666
668
  this.$emit('scroll', event);
667
- if (this.delay && this.isPageChanged()) {
669
+ if (this.delay) {
668
670
  if (this.scrollTimeout) {
669
671
  clearTimeout(this.scrollTimeout);
670
672
  }
671
- if (!this.d_loading && this.showLoader) {
672
- var _this$onScrollPositio2 = this.onScrollPositionChange(event),
673
- isRangeChanged = _this$onScrollPositio2.isRangeChanged;
674
- var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
675
- changed && (this.d_loading = true);
676
- }
677
- this.scrollTimeout = setTimeout(function () {
678
- _this9.onScrollChange(event);
679
- if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
680
- _this9.d_loading = false;
681
- _this9.page = _this9.getPageByFirst();
673
+ if (this.isPageChanged()) {
674
+ if (!this.d_loading && this.showLoader) {
675
+ var _this$onScrollPositio2 = this.onScrollPositionChange(event),
676
+ isRangeChanged = _this$onScrollPositio2.isRangeChanged;
677
+ var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
678
+ changed && (this.d_loading = true);
682
679
  }
683
- }, this.delay);
680
+ this.scrollTimeout = setTimeout(function () {
681
+ _this9.onScrollChange(event);
682
+ if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
683
+ _this9.d_loading = false;
684
+ _this9.page = _this9.getPageByFirst();
685
+ }
686
+ }, this.delay);
687
+ }
684
688
  } else {
685
689
  this.onScrollChange(event);
686
690
  }
@@ -1 +1 @@
1
- import t from"primevue/icons/spinner";import{DomHandler as e}from"primevue/utils";import i from"primevue/basecomponent";import s from"primevue/virtualscroller/style";import{resolveComponent as o,openBlock as n,createElementBlock as l,mergeProps as r,renderSlot as a,createElementVNode as h,Fragment as c,renderList as u,createCommentVNode as d,createVNode as m}from"vue";function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function p(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,s)}return i}function g(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?p(Object(i),!0).forEach((function(e){y(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):p(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function y(t,e,i){return(e=v(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function v(t){var e=w(t,"string");return"symbol"===f(e)?e:String(e)}function w(t,e){if("object"!==f(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var s=i.call(t,e||"default");if("object"!==f(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}var S={name:"VirtualScroller",extends:{name:"BaseVirtualScroller",extends:i,props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:s,provide:function(){return{$parentInstance:this}},beforeMount:function(){s.loadStyle()}},emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data:function(){return{first:this.isBoth()?{rows:0,cols:0}:0,last:this.isBoth()?{rows:0,cols:0}:0,page:this.isBoth()?{rows:0,cols:0}:0,numItemsInViewport:this.isBoth()?{rows:0,cols:0}:0,lastScrollPos:this.isBoth()?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,watch:{numToleratedItems:function(t){this.d_numToleratedItems=t},loading:function(t){this.d_loading=t},items:function(t,e){e&&e.length===(t||[]).length||(this.init(),this.calculateAutoSize())},itemSize:function(){this.init(),this.calculateAutoSize()},orientation:function(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight:function(){this.init(),this.calculateAutoSize()},scrollWidth:function(){this.init(),this.calculateAutoSize()}},mounted:function(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated:function(){!this.initialized&&this.viewInit()},unmounted:function(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit:function(){e.isVisible(this.element)&&(this.setContentEl(this.content),this.init(),this.bindResizeListener(),this.defaultWidth=e.getWidth(this.element),this.defaultHeight=e.getHeight(this.element),this.defaultContentWidth=e.getWidth(this.content),this.defaultContentHeight=e.getHeight(this.content),this.initialized=!0)},init:function(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical:function(){return"vertical"===this.orientation},isHorizontal:function(){return"horizontal"===this.orientation},isBoth:function(){return"both"===this.orientation},scrollTo:function(t){this.lastScrollPos=this.both?{top:0,left:0}:0,this.element&&this.element.scrollTo(t)},scrollToIndex:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",s=this.isBoth(),o=this.isHorizontal(),n=this.first,l=this.calculateNumItems().numToleratedItems,r=this.getContentPosition(),a=this.itemSize,h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t<=(arguments.length>1?arguments[1]:void 0)?0:t},c=function(t,e,i){return t*e+i},u=function(){return e.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:i})},d=s?{rows:0,cols:0}:0,m=!1;s?(u(c((d={rows:h(t[0],l[0]),cols:h(t[1],l[1])}).cols,a[1],r.left),c(d.rows,a[0],r.top)),m=d.rows!==n.rows||d.cols!==n.cols):(d=h(t,l),o?u(c(d,a,r.left),0):u(0,c(d,a,r.top)),m=d!==n),this.isRangeChanged=m,this.first=d},scrollInView:function(t,e){var i=this,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"auto";if(e){var o=this.isBoth(),n=this.isHorizontal(),l=this.getRenderedRange(),r=l.first,a=l.viewport,h=function(){return i.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:s})},c="to-end"===e;if("to-start"===e){if(o)a.first.rows-r.rows>t[0]?h(a.first.cols*this.itemSize[1],(a.first.rows-1)*this.itemSize[0]):a.first.cols-r.cols>t[1]&&h((a.first.cols-1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.first-r>t){var u=(a.first-1)*this.itemSize;n?h(u,0):h(0,u)}}else if(c)if(o)a.last.rows-r.rows<=t[0]+1?h(a.first.cols*this.itemSize[1],(a.first.rows+1)*this.itemSize[0]):a.last.cols-r.cols<=t[1]+1&&h((a.first.cols+1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.last-r<=t+1){var d=(a.first+1)*this.itemSize;n?h(d,0):h(0,d)}}else this.scrollToIndex(t,s)},getRenderedRange:function(){var t=function(t,e){return Math.floor(t/(e||t))},e=this.first,i=0;if(this.element){var s=this.isBoth(),o=this.isHorizontal(),n=this.element.scrollTop,l=n.scrollTop,r=n.scrollLeft;if(s)i={rows:(e={rows:t(l,this.itemSize[0]),cols:t(r,this.itemSize[1])}).rows+this.numItemsInViewport.rows,cols:e.cols+this.numItemsInViewport.cols};else i=(e=t(o?r:l,this.itemSize))+this.numItemsInViewport}return{first:this.first,last:this.last,viewport:{first:e,last:i}}},calculateNumItems:function(){var t=this.isBoth(),e=this.isHorizontal(),i=this.itemSize,s=this.getContentPosition(),o=this.element?this.element.offsetWidth-s.left:0,n=this.element?this.element.offsetHeight-s.top:0,l=function(t,e){return Math.ceil(t/(e||t))},r=function(t){return Math.ceil(t/2)},a=t?{rows:l(n,i[0]),cols:l(o,i[1])}:l(e?o:n,i);return{numItemsInViewport:a,numToleratedItems:this.d_numToleratedItems||(t?[r(a.rows),r(a.cols)]:r(a))}},calculateOptions:function(){var t=this,e=this.isBoth(),i=this.first,s=this.calculateNumItems(),o=s.numItemsInViewport,n=s.numToleratedItems,l=function(e,i,s){return t.getLast(e+i+(e<s?2:3)*s,arguments.length>3&&void 0!==arguments[3]&&arguments[3])},r=e?{rows:l(i.rows,o.rows,n[0]),cols:l(i.cols,o.cols,n[1],!0)}:l(i,o,n);this.last=r,this.numItemsInViewport=o,this.d_numToleratedItems=n,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=e?Array.from({length:o.rows}).map((function(){return Array.from({length:o.cols})})):Array.from({length:o})),this.lazy&&Promise.resolve().then((function(){t.lazyLoadState={first:t.step?e?{rows:0,cols:i.cols}:0:i,last:Math.min(t.step?t.step:r,t.items.length)},t.$emit("lazy-load",t.lazyLoadState)}))},calculateAutoSize:function(){var t=this;this.autoSize&&!this.d_loading&&Promise.resolve().then((function(){if(t.content){var i=t.isBoth(),s=t.isHorizontal(),o=t.isVertical();t.content.style.minHeight=t.content.style.minWidth="auto",t.content.style.position="relative",t.element.style.contain="none";var n=[e.getWidth(t.content),e.getHeight(t.content)],l=n[1];n[0]!==t.defaultContentWidth&&(t.element.style.width=""),l!==t.defaultContentHeight&&(t.element.style.height="");var r=[e.getWidth(t.element),e.getHeight(t.element)],a=r[0],h=r[1];(i||s)&&(t.element.style.width=a<t.defaultWidth?a+"px":t.scrollWidth||t.defaultWidth+"px"),(i||o)&&(t.element.style.height=h<t.defaultHeight?h+"px":t.scrollHeight||t.defaultHeight+"px"),t.content.style.minHeight=t.content.style.minWidth="",t.content.style.position="",t.element.style.contain=""}}))},getLast:function(){return this.items?Math.min((arguments.length>1?arguments[1]:void 0)?(this.columns||this.items[0]).length:this.items.length,arguments.length>0&&void 0!==arguments[0]?arguments[0]:0):0},getContentPosition:function(){if(this.content){var t=getComputedStyle(this.content),e=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),i=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),s=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),o=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:e,right:i,top:s,bottom:o,x:e+i,y:s+o}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize:function(){var t=this;if(this.element){var e=this.isBoth(),i=this.isHorizontal(),s=this.element.parentElement,o=this.scrollWidth||"".concat(this.element.offsetWidth||s.offsetWidth,"px"),n=this.scrollHeight||"".concat(this.element.offsetHeight||s.offsetHeight,"px"),l=function(e,i){return t.element.style[e]=i};e||i?(l("height",n),l("width",o)):l("height",n)}},setSpacerSize:function(){var t=this,e=this.items;if(e){var i=this.isBoth(),s=this.isHorizontal(),o=this.getContentPosition(),n=function(e,i,s){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return t.spacerStyle=g(g({},t.spacerStyle),y({},"".concat(e),(i||[]).length*s+o+"px"))};i?(n("height",e,this.itemSize[0],o.y),n("width",this.columns||e[1],this.itemSize[1],o.x)):s?n("width",this.columns||e,this.itemSize,o.x):n("height",e,this.itemSize,o.y)}},setContentPosition:function(t){var e=this;if(this.content&&!this.appendOnly){var i=this.isBoth(),s=this.isHorizontal(),o=t?t.first:this.first,n=function(t,e){return t*e},l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.contentStyle=g(g({},e.contentStyle),{transform:"translate3d(".concat(t,"px, ").concat(i,"px, 0)")})};if(i)l(n(o.cols,this.itemSize[1]),n(o.rows,this.itemSize[0]));else{var r=n(o,this.itemSize);s?l(r,0):l(0,r)}}},onScrollPositionChange:function(t){var e=this,i=t.target,s=this.isBoth(),o=this.isHorizontal(),n=this.getContentPosition(),l=function(t,e){return t?t>e?t-e:t:0},r=function(t,e){return Math.floor(t/(e||t))},a=function(t,e,i,s,o,n){return t<=o?o:n?i-s-o:e+o-1},h=function(t,e,i,s,o,n,l){return t<=n?0:Math.max(0,l?t<e?i:t-n:t>e?i:t-2*n)},c=function(t,i,s,o,n,l){var r=i+o+2*n;return t>=n&&(r+=n+1),e.getLast(r,l)},u=l(i.scrollTop,n.top),d=l(i.scrollLeft,n.left),m=s?{rows:0,cols:0}:0,f=this.last,p=!1,g=this.lastScrollPos;if(s){var y=this.lastScrollPos.top<=u,v=this.lastScrollPos.left<=d;if(!this.appendOnly||this.appendOnly&&(y||v)){var w={rows:r(u,this.itemSize[0]),cols:r(d,this.itemSize[1])},S={rows:a(w.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],y),cols:a(w.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],v)};m={rows:h(w.rows,S.rows,this.first.rows,0,0,this.d_numToleratedItems[0],y),cols:h(w.cols,S.cols,this.first.cols,0,0,this.d_numToleratedItems[1],v)},f={rows:c(w.rows,m.rows,0,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:c(w.cols,m.cols,0,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},p=m.rows!==this.first.rows||f.rows!==this.last.rows||m.cols!==this.first.cols||f.cols!==this.last.cols||this.isRangeChanged,g={top:u,left:d}}}else{var z=o?d:u,I=this.lastScrollPos<=z;if(!this.appendOnly||this.appendOnly&&I){var b=r(z,this.itemSize);f=c(b,m=h(b,a(b,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,I),this.first,0,0,this.d_numToleratedItems,I),0,this.numItemsInViewport,this.d_numToleratedItems),p=m!==this.first||f!==this.last||this.isRangeChanged,g=z}}return{first:m,last:f,isRangeChanged:p,scrollPos:g}},onScrollChange:function(t){var e=this.onScrollPositionChange(t),i=e.first,s=e.last,o=e.scrollPos;if(e.isRangeChanged){var n={first:i,last:s};if(this.setContentPosition(n),this.first=i,this.last=s,this.lastScrollPos=o,this.$emit("scroll-index-change",n),this.lazy&&this.isPageChanged(i)){var l={first:this.step?Math.min(this.getPageByFirst(i)*this.step,this.items.length-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:s,this.items.length)};(this.lazyLoadState.first!==l.first||this.lazyLoadState.last!==l.last)&&this.$emit("lazy-load",l),this.lazyLoadState=l}}},onScroll:function(t){var e=this;if(this.$emit("scroll",t),this.delay&&this.isPageChanged()){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),!this.d_loading&&this.showLoader)(this.onScrollPositionChange(t).isRangeChanged||!!this.step&&this.isPageChanged())&&(this.d_loading=!0);this.scrollTimeout=setTimeout((function(){e.onScrollChange(t),!e.d_loading||!e.showLoader||e.lazy&&void 0!==e.loading||(e.d_loading=!1,e.page=e.getPageByFirst())}),this.delay)}else this.onScrollChange(t)},onResize:function(){var t=this;this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((function(){if(e.isVisible(t.element)){var i=t.isBoth(),s=t.isVertical(),o=t.isHorizontal(),n=[e.getWidth(t.element),e.getHeight(t.element)],l=n[0],r=n[1],a=l!==t.defaultWidth,h=r!==t.defaultHeight;(i?a||h:o?a:!!s&&h)&&(t.d_numToleratedItems=t.numToleratedItems,t.defaultWidth=l,t.defaultHeight=r,t.defaultContentWidth=e.getWidth(t.content),t.defaultContentHeight=e.getHeight(t.content),t.init())}}),this.resizeDelay)},bindResizeListener:function(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions:function(t){var e=(this.items||[]).length,i=this.isBoth()?this.first.rows+t:this.first+t;return{index:i,count:e,first:0===i,last:i===e-1,even:i%2==0,odd:i%2!=0}},getLoaderOptions:function(t,e){var i=this.loaderArr.length;return g({index:t,count:i,first:0===t,last:t===i-1,even:t%2==0,odd:t%2!=0},e)},getPageByFirst:function(t){return Math.floor(((null!=t?t:this.first)+4*this.d_numToleratedItems)/(this.step||1))},isPageChanged:function(t){return!this.step||this.page!==this.getPageByFirst(null!=t?t:this.first)},setContentEl:function(t){this.content=t||this.content||e.findSingle(this.element,'[data-pc-section="content"]')},elementRef:function(t){this.element=t},contentRef:function(t){this.content=t}},computed:{containerClass:function(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal()}]},contentClass:function(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass:function(){return["p-virtualscroller-loader",{"p-component-overlay":!this.$slots.loader}]},loadedItems:function(){var t=this;return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map((function(e){return t.columns?e:e.slice(t.appendOnly?0:t.first.cols,t.last.cols)})):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows:function(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns:function(){if(this.columns){var t=this.isBoth(),e=this.isHorizontal();if(t||e)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},components:{SpinnerIcon:t}},z=["tabindex"];S.render=function(t,e,i,s,f,p){var g=o("SpinnerIcon");return t.disabled?(n(),l(c,{key:1},[a(t.$slots,"default"),a(t.$slots,"content",{items:t.items,rows:t.items,columns:p.loadedColumns})],64)):(n(),l("div",r({key:0,ref:p.elementRef,class:p.containerClass,tabindex:t.tabindex,style:t.style,onScroll:e[0]||(e[0]=function(){return p.onScroll&&p.onScroll.apply(p,arguments)})},t.ptm("root"),{"data-pc-name":"virtualscroller"}),[a(t.$slots,"content",{styleClass:p.contentClass,items:p.loadedItems,getItemOptions:p.getOptions,loading:f.d_loading,getLoaderOptions:p.getLoaderOptions,itemSize:t.itemSize,rows:p.loadedRows,columns:p.loadedColumns,contentRef:p.contentRef,spacerStyle:f.spacerStyle,contentStyle:f.contentStyle,vertical:p.isVertical(),horizontal:p.isHorizontal(),both:p.isBoth()},(function(){return[h("div",r({ref:p.contentRef,class:p.contentClass,style:f.contentStyle},t.ptm("content")),[(n(!0),l(c,null,u(p.loadedItems,(function(e,i){return a(t.$slots,"item",{key:i,item:e,options:p.getOptions(i)})})),128))],16)]})),t.showSpacer?(n(),l("div",r({key:0,class:"p-virtualscroller-spacer",style:f.spacerStyle},t.ptm("spacer")),null,16)):d("",!0),!t.loaderDisabled&&t.showLoader&&f.d_loading?(n(),l("div",r({key:1,class:p.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(n(!0),l(c,{key:0},u(f.loaderArr,(function(e,i){return a(t.$slots,"loader",{key:i,options:p.getLoaderOptions(i,p.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})})),128)):d("",!0),a(t.$slots,"loadingicon",{},(function(){return[m(g,r({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)]}))],16)):d("",!0)],16,z))};export{S as default};
1
+ import t from"primevue/icons/spinner";import{DomHandler as e}from"primevue/utils";import i from"primevue/basecomponent";import s from"primevue/virtualscroller/style";import{resolveComponent as o,openBlock as n,createElementBlock as l,mergeProps as r,renderSlot as a,createElementVNode as h,Fragment as c,renderList as u,createCommentVNode as d,createVNode as m}from"vue";function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function p(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);e&&(s=s.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,s)}return i}function g(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?p(Object(i),!0).forEach((function(e){y(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):p(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function y(t,e,i){var s;return(e="symbol"==f(s=v(e,"string"))?s:String(s))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function v(t,e){if("object"!=f(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var s=i.call(t,e||"default");if("object"!=f(s))return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}var w={name:"VirtualScroller",extends:{name:"BaseVirtualScroller",extends:i,props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:s,provide:function(){return{$parentInstance:this}},beforeMount:function(){s.loadStyle()}},emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data:function(){return{first:this.isBoth()?{rows:0,cols:0}:0,last:this.isBoth()?{rows:0,cols:0}:0,page:this.isBoth()?{rows:0,cols:0}:0,numItemsInViewport:this.isBoth()?{rows:0,cols:0}:0,lastScrollPos:this.isBoth()?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,watch:{numToleratedItems:function(t){this.d_numToleratedItems=t},loading:function(t,e){this.lazy&&t!==e&&t!==this.d_loading&&(this.d_loading=t)},items:function(t,e){e&&e.length===(t||[]).length||(this.init(),this.calculateAutoSize())},itemSize:function(){this.init(),this.calculateAutoSize()},orientation:function(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight:function(){this.init(),this.calculateAutoSize()},scrollWidth:function(){this.init(),this.calculateAutoSize()}},mounted:function(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated:function(){!this.initialized&&this.viewInit()},unmounted:function(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit:function(){e.isVisible(this.element)&&(this.setContentEl(this.content),this.init(),this.bindResizeListener(),this.defaultWidth=e.getWidth(this.element),this.defaultHeight=e.getHeight(this.element),this.defaultContentWidth=e.getWidth(this.content),this.defaultContentHeight=e.getHeight(this.content),this.initialized=!0)},init:function(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical:function(){return"vertical"===this.orientation},isHorizontal:function(){return"horizontal"===this.orientation},isBoth:function(){return"both"===this.orientation},scrollTo:function(t){this.lastScrollPos=this.both?{top:0,left:0}:0,this.element&&this.element.scrollTo(t)},scrollToIndex:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"auto",s=this.isBoth(),o=this.isHorizontal(),n=this.first,l=this.calculateNumItems().numToleratedItems,r=this.getContentPosition(),a=this.itemSize,h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t<=(arguments.length>1?arguments[1]:void 0)?0:t},c=function(t,e,i){return t*e+i},u=function(){return e.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:i})},d=s?{rows:0,cols:0}:0,m=!1;s?(u(c((d={rows:h(t[0],l[0]),cols:h(t[1],l[1])}).cols,a[1],r.left),c(d.rows,a[0],r.top)),m=d.rows!==n.rows||d.cols!==n.cols):(d=h(t,l),o?u(c(d,a,r.left),0):u(0,c(d,a,r.top)),m=d!==n),this.isRangeChanged=m,this.first=d},scrollInView:function(t,e){var i=this,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"auto";if(e){var o=this.isBoth(),n=this.isHorizontal(),l=this.getRenderedRange(),r=l.first,a=l.viewport,h=function(){return i.scrollTo({left:arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,top:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,behavior:s})},c="to-end"===e;if("to-start"===e){if(o)a.first.rows-r.rows>t[0]?h(a.first.cols*this.itemSize[1],(a.first.rows-1)*this.itemSize[0]):a.first.cols-r.cols>t[1]&&h((a.first.cols-1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.first-r>t){var u=(a.first-1)*this.itemSize;n?h(u,0):h(0,u)}}else if(c)if(o)a.last.rows-r.rows<=t[0]+1?h(a.first.cols*this.itemSize[1],(a.first.rows+1)*this.itemSize[0]):a.last.cols-r.cols<=t[1]+1&&h((a.first.cols+1)*this.itemSize[1],a.first.rows*this.itemSize[0]);else if(a.last-r<=t+1){var d=(a.first+1)*this.itemSize;n?h(d,0):h(0,d)}}else this.scrollToIndex(t,s)},getRenderedRange:function(){var t=function(t,e){return Math.floor(t/(e||t))},e=this.first,i=0;if(this.element){var s=this.isBoth(),o=this.isHorizontal(),n=this.element,l=n.scrollTop,r=n.scrollLeft;if(s)i={rows:(e={rows:t(l,this.itemSize[0]),cols:t(r,this.itemSize[1])}).rows+this.numItemsInViewport.rows,cols:e.cols+this.numItemsInViewport.cols};else i=(e=t(o?r:l,this.itemSize))+this.numItemsInViewport}return{first:this.first,last:this.last,viewport:{first:e,last:i}}},calculateNumItems:function(){var t=this.isBoth(),e=this.isHorizontal(),i=this.itemSize,s=this.getContentPosition(),o=this.element?this.element.offsetWidth-s.left:0,n=this.element?this.element.offsetHeight-s.top:0,l=function(t,e){return Math.ceil(t/(e||t))},r=function(t){return Math.ceil(t/2)},a=t?{rows:l(n,i[0]),cols:l(o,i[1])}:l(e?o:n,i);return{numItemsInViewport:a,numToleratedItems:this.d_numToleratedItems||(t?[r(a.rows),r(a.cols)]:r(a))}},calculateOptions:function(){var t=this,e=this.isBoth(),i=this.first,s=this.calculateNumItems(),o=s.numItemsInViewport,n=s.numToleratedItems,l=function(e,i,s){return t.getLast(e+i+(e<s?2:3)*s,arguments.length>3&&void 0!==arguments[3]&&arguments[3])},r=e?{rows:l(i.rows,o.rows,n[0]),cols:l(i.cols,o.cols,n[1],!0)}:l(i,o,n);this.last=r,this.numItemsInViewport=o,this.d_numToleratedItems=n,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=e?Array.from({length:o.rows}).map((function(){return Array.from({length:o.cols})})):Array.from({length:o})),this.lazy&&Promise.resolve().then((function(){t.lazyLoadState={first:t.step?e?{rows:0,cols:i.cols}:0:i,last:Math.min(t.step?t.step:r,t.items.length)},t.$emit("lazy-load",t.lazyLoadState)}))},calculateAutoSize:function(){var t=this;this.autoSize&&!this.d_loading&&Promise.resolve().then((function(){if(t.content){var i=t.isBoth(),s=t.isHorizontal(),o=t.isVertical();t.content.style.minHeight=t.content.style.minWidth="auto",t.content.style.position="relative",t.element.style.contain="none";var n=[e.getWidth(t.content),e.getHeight(t.content)],l=n[1];n[0]!==t.defaultContentWidth&&(t.element.style.width=""),l!==t.defaultContentHeight&&(t.element.style.height="");var r=[e.getWidth(t.element),e.getHeight(t.element)],a=r[0],h=r[1];(i||s)&&(t.element.style.width=a<t.defaultWidth?a+"px":t.scrollWidth||t.defaultWidth+"px"),(i||o)&&(t.element.style.height=h<t.defaultHeight?h+"px":t.scrollHeight||t.defaultHeight+"px"),t.content.style.minHeight=t.content.style.minWidth="",t.content.style.position="",t.element.style.contain=""}}))},getLast:function(){return this.items?Math.min((arguments.length>1?arguments[1]:void 0)?(this.columns||this.items[0]).length:this.items.length,arguments.length>0&&void 0!==arguments[0]?arguments[0]:0):0},getContentPosition:function(){if(this.content){var t=getComputedStyle(this.content),e=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),i=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),s=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),o=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:e,right:i,top:s,bottom:o,x:e+i,y:s+o}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize:function(){var t=this;if(this.element){var e=this.isBoth(),i=this.isHorizontal(),s=this.element.parentElement,o=this.scrollWidth||"".concat(this.element.offsetWidth||s.offsetWidth,"px"),n=this.scrollHeight||"".concat(this.element.offsetHeight||s.offsetHeight,"px"),l=function(e,i){return t.element.style[e]=i};e||i?(l("height",n),l("width",o)):l("height",n)}},setSpacerSize:function(){var t=this,e=this.items;if(e){var i=this.isBoth(),s=this.isHorizontal(),o=this.getContentPosition(),n=function(e,i,s){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return t.spacerStyle=g(g({},t.spacerStyle),y({},"".concat(e),(i||[]).length*s+o+"px"))};i?(n("height",e,this.itemSize[0],o.y),n("width",this.columns||e[1],this.itemSize[1],o.x)):s?n("width",this.columns||e,this.itemSize,o.x):n("height",e,this.itemSize,o.y)}},setContentPosition:function(t){var e=this;if(this.content&&!this.appendOnly){var i=this.isBoth(),s=this.isHorizontal(),o=t?t.first:this.first,n=function(t,e){return t*e},l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.contentStyle=g(g({},e.contentStyle),{transform:"translate3d(".concat(t,"px, ").concat(i,"px, 0)")})};if(i)l(n(o.cols,this.itemSize[1]),n(o.rows,this.itemSize[0]));else{var r=n(o,this.itemSize);s?l(r,0):l(0,r)}}},onScrollPositionChange:function(t){var e=this,i=t.target,s=this.isBoth(),o=this.isHorizontal(),n=this.getContentPosition(),l=function(t,e){return t?t>e?t-e:t:0},r=function(t,e){return Math.floor(t/(e||t))},a=function(t,e,i,s,o,n){return t<=o?o:n?i-s-o:e+o-1},h=function(t,e,i,s,o,n,l){return t<=n?0:Math.max(0,l?t<e?i:t-n:t>e?i:t-2*n)},c=function(t,i,s,o,n,l){var r=i+o+2*n;return t>=n&&(r+=n+1),e.getLast(r,l)},u=l(i.scrollTop,n.top),d=l(i.scrollLeft,n.left),m=s?{rows:0,cols:0}:0,f=this.last,p=!1,g=this.lastScrollPos;if(s){var y=this.lastScrollPos.top<=u,v=this.lastScrollPos.left<=d;if(!this.appendOnly||this.appendOnly&&(y||v)){var w={rows:r(u,this.itemSize[0]),cols:r(d,this.itemSize[1])},S={rows:a(w.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],y),cols:a(w.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],v)};m={rows:h(w.rows,S.rows,this.first.rows,0,0,this.d_numToleratedItems[0],y),cols:h(w.cols,S.cols,this.first.cols,0,0,this.d_numToleratedItems[1],v)},f={rows:c(w.rows,m.rows,0,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:c(w.cols,m.cols,0,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},p=m.rows!==this.first.rows||f.rows!==this.last.rows||m.cols!==this.first.cols||f.cols!==this.last.cols||this.isRangeChanged,g={top:u,left:d}}}else{var z=o?d:u,I=this.lastScrollPos<=z;if(!this.appendOnly||this.appendOnly&&I){var b=r(z,this.itemSize);f=c(b,m=h(b,a(b,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,I),this.first,0,0,this.d_numToleratedItems,I),0,this.numItemsInViewport,this.d_numToleratedItems),p=m!==this.first||f!==this.last||this.isRangeChanged,g=z}}return{first:m,last:f,isRangeChanged:p,scrollPos:g}},onScrollChange:function(t){var e=this.onScrollPositionChange(t),i=e.first,s=e.last,o=e.scrollPos;if(e.isRangeChanged){var n={first:i,last:s};if(this.setContentPosition(n),this.first=i,this.last=s,this.lastScrollPos=o,this.$emit("scroll-index-change",n),this.lazy&&this.isPageChanged(i)){var l={first:this.step?Math.min(this.getPageByFirst(i)*this.step,this.items.length-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:s,this.items.length)};(this.lazyLoadState.first!==l.first||this.lazyLoadState.last!==l.last)&&this.$emit("lazy-load",l),this.lazyLoadState=l}}},onScroll:function(t){var e=this;if(this.$emit("scroll",t),this.delay){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.isPageChanged()){if(!this.d_loading&&this.showLoader)(this.onScrollPositionChange(t).isRangeChanged||!!this.step&&this.isPageChanged())&&(this.d_loading=!0);this.scrollTimeout=setTimeout((function(){e.onScrollChange(t),!e.d_loading||!e.showLoader||e.lazy&&void 0!==e.loading||(e.d_loading=!1,e.page=e.getPageByFirst())}),this.delay)}}else this.onScrollChange(t)},onResize:function(){var t=this;this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((function(){if(e.isVisible(t.element)){var i=t.isBoth(),s=t.isVertical(),o=t.isHorizontal(),n=[e.getWidth(t.element),e.getHeight(t.element)],l=n[0],r=n[1],a=l!==t.defaultWidth,h=r!==t.defaultHeight;(i?a||h:o?a:!!s&&h)&&(t.d_numToleratedItems=t.numToleratedItems,t.defaultWidth=l,t.defaultHeight=r,t.defaultContentWidth=e.getWidth(t.content),t.defaultContentHeight=e.getHeight(t.content),t.init())}}),this.resizeDelay)},bindResizeListener:function(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions:function(t){var e=(this.items||[]).length,i=this.isBoth()?this.first.rows+t:this.first+t;return{index:i,count:e,first:0===i,last:i===e-1,even:i%2==0,odd:i%2!=0}},getLoaderOptions:function(t,e){var i=this.loaderArr.length;return g({index:t,count:i,first:0===t,last:t===i-1,even:t%2==0,odd:t%2!=0},e)},getPageByFirst:function(t){return Math.floor(((null!=t?t:this.first)+4*this.d_numToleratedItems)/(this.step||1))},isPageChanged:function(t){return!this.step||this.page!==this.getPageByFirst(null!=t?t:this.first)},setContentEl:function(t){this.content=t||this.content||e.findSingle(this.element,'[data-pc-section="content"]')},elementRef:function(t){this.element=t},contentRef:function(t){this.content=t}},computed:{containerClass:function(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal()}]},contentClass:function(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass:function(){return["p-virtualscroller-loader",{"p-component-overlay":!this.$slots.loader}]},loadedItems:function(){var t=this;return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map((function(e){return t.columns?e:e.slice(t.appendOnly?0:t.first.cols,t.last.cols)})):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows:function(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns:function(){if(this.columns){var t=this.isBoth(),e=this.isHorizontal();if(t||e)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},components:{SpinnerIcon:t}},S=["tabindex"];w.render=function(t,e,i,s,f,p){var g=o("SpinnerIcon");return t.disabled?(n(),l(c,{key:1},[a(t.$slots,"default"),a(t.$slots,"content",{items:t.items,rows:t.items,columns:p.loadedColumns})],64)):(n(),l("div",r({key:0,ref:p.elementRef,class:p.containerClass,tabindex:t.tabindex,style:t.style,onScroll:e[0]||(e[0]=function(){return p.onScroll&&p.onScroll.apply(p,arguments)})},t.ptm("root"),{"data-pc-name":"virtualscroller"}),[a(t.$slots,"content",{styleClass:p.contentClass,items:p.loadedItems,getItemOptions:p.getOptions,loading:f.d_loading,getLoaderOptions:p.getLoaderOptions,itemSize:t.itemSize,rows:p.loadedRows,columns:p.loadedColumns,contentRef:p.contentRef,spacerStyle:f.spacerStyle,contentStyle:f.contentStyle,vertical:p.isVertical(),horizontal:p.isHorizontal(),both:p.isBoth()},(function(){return[h("div",r({ref:p.contentRef,class:p.contentClass,style:f.contentStyle},t.ptm("content")),[(n(!0),l(c,null,u(p.loadedItems,(function(e,i){return a(t.$slots,"item",{key:i,item:e,options:p.getOptions(i)})})),128))],16)]})),t.showSpacer?(n(),l("div",r({key:0,class:"p-virtualscroller-spacer",style:f.spacerStyle},t.ptm("spacer")),null,16)):d("",!0),!t.loaderDisabled&&t.showLoader&&f.d_loading?(n(),l("div",r({key:1,class:p.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(n(!0),l(c,{key:0},u(f.loaderArr,(function(e,i){return a(t.$slots,"loader",{key:i,options:p.getLoaderOptions(i,p.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})})),128)):d("",!0),a(t.$slots,"loadingicon",{},(function(){return[m(g,r({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)]}))],16)):d("",!0)],16,S))};export{w as default};
@@ -108,8 +108,8 @@ this.primevue.virtualscroller = (function (SpinnerIcon, utils, BaseComponent, Vi
108
108
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
109
109
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
110
110
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
111
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
112
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
111
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
112
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
113
113
  var script = {
114
114
  name: 'VirtualScroller',
115
115
  "extends": script$1,
@@ -160,8 +160,10 @@ this.primevue.virtualscroller = (function (SpinnerIcon, utils, BaseComponent, Vi
160
160
  numToleratedItems: function numToleratedItems(newValue) {
161
161
  this.d_numToleratedItems = newValue;
162
162
  },
163
- loading: function loading(newValue) {
164
- this.d_loading = newValue;
163
+ loading: function loading(newValue, oldValue) {
164
+ if (this.lazy && newValue !== oldValue && newValue !== this.d_loading) {
165
+ this.d_loading = newValue;
166
+ }
165
167
  },
166
168
  items: function items(newValue, oldValue) {
167
169
  if (!oldValue || oldValue.length !== (newValue || []).length) {
@@ -346,9 +348,9 @@ this.primevue.virtualscroller = (function (SpinnerIcon, utils, BaseComponent, Vi
346
348
  if (this.element) {
347
349
  var both = this.isBoth();
348
350
  var horizontal = this.isHorizontal();
349
- var _this$element$scrollT = this.element.scrollTop,
350
- scrollTop = _this$element$scrollT.scrollTop,
351
- scrollLeft = _this$element$scrollT.scrollLeft;
351
+ var _this$element = this.element,
352
+ scrollTop = _this$element.scrollTop,
353
+ scrollLeft = _this$element.scrollLeft;
352
354
  if (both) {
353
355
  firstInViewport = {
354
356
  rows: calculateFirstInViewport(scrollTop, this.itemSize[0]),
@@ -668,23 +670,25 @@ this.primevue.virtualscroller = (function (SpinnerIcon, utils, BaseComponent, Vi
668
670
  onScroll: function onScroll(event) {
669
671
  var _this9 = this;
670
672
  this.$emit('scroll', event);
671
- if (this.delay && this.isPageChanged()) {
673
+ if (this.delay) {
672
674
  if (this.scrollTimeout) {
673
675
  clearTimeout(this.scrollTimeout);
674
676
  }
675
- if (!this.d_loading && this.showLoader) {
676
- var _this$onScrollPositio2 = this.onScrollPositionChange(event),
677
- isRangeChanged = _this$onScrollPositio2.isRangeChanged;
678
- var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
679
- changed && (this.d_loading = true);
680
- }
681
- this.scrollTimeout = setTimeout(function () {
682
- _this9.onScrollChange(event);
683
- if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
684
- _this9.d_loading = false;
685
- _this9.page = _this9.getPageByFirst();
677
+ if (this.isPageChanged()) {
678
+ if (!this.d_loading && this.showLoader) {
679
+ var _this$onScrollPositio2 = this.onScrollPositionChange(event),
680
+ isRangeChanged = _this$onScrollPositio2.isRangeChanged;
681
+ var changed = isRangeChanged || (this.step ? this.isPageChanged() : false);
682
+ changed && (this.d_loading = true);
686
683
  }
687
- }, this.delay);
684
+ this.scrollTimeout = setTimeout(function () {
685
+ _this9.onScrollChange(event);
686
+ if (_this9.d_loading && _this9.showLoader && (!_this9.lazy || _this9.loading === undefined)) {
687
+ _this9.d_loading = false;
688
+ _this9.page = _this9.getPageByFirst();
689
+ }
690
+ }, this.delay);
691
+ }
688
692
  } else {
689
693
  this.onScrollChange(event);
690
694
  }