vscroll 1.5.3 → 1.5.5

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 (335) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +283 -273
  3. package/dist/bundles/vscroll.esm5.js +5558 -5525
  4. package/dist/bundles/vscroll.esm5.js.map +1 -1
  5. package/dist/bundles/vscroll.esm5.min.js +2 -2
  6. package/dist/bundles/vscroll.esm5.min.js.map +1 -1
  7. package/dist/bundles/vscroll.esm6.js +5045 -5015
  8. package/dist/bundles/vscroll.esm6.js.map +1 -1
  9. package/dist/bundles/vscroll.esm6.min.js +2 -2
  10. package/dist/bundles/vscroll.esm6.min.js.map +1 -1
  11. package/dist/bundles/vscroll.umd.js +5559 -5526
  12. package/dist/bundles/vscroll.umd.js.map +1 -1
  13. package/dist/bundles/vscroll.umd.min.js +2 -2
  14. package/dist/bundles/vscroll.umd.min.js.map +1 -1
  15. package/dist/esm2015/classes/adapter/context.js +43 -43
  16. package/dist/esm2015/classes/adapter/context.js.map +1 -1
  17. package/dist/esm2015/classes/adapter/props.js +268 -268
  18. package/dist/esm2015/classes/adapter/props.js.map +1 -1
  19. package/dist/esm2015/classes/adapter/wanted.js +28 -28
  20. package/dist/esm2015/classes/adapter/wanted.js.map +1 -1
  21. package/dist/esm2015/classes/adapter.js +455 -442
  22. package/dist/esm2015/classes/adapter.js.map +1 -1
  23. package/dist/esm2015/classes/buffer/cache.js +246 -246
  24. package/dist/esm2015/classes/buffer/cache.js.map +1 -1
  25. package/dist/esm2015/classes/buffer/checkCall.js +48 -48
  26. package/dist/esm2015/classes/buffer/checkCall.js.map +1 -1
  27. package/dist/esm2015/classes/buffer/defaultSize.js +127 -127
  28. package/dist/esm2015/classes/buffer/defaultSize.js.map +1 -1
  29. package/dist/esm2015/classes/buffer.js +342 -342
  30. package/dist/esm2015/classes/buffer.js.map +1 -1
  31. package/dist/esm2015/classes/datasource.js +28 -28
  32. package/dist/esm2015/classes/domRoutines.js +166 -166
  33. package/dist/esm2015/classes/domRoutines.js.map +1 -1
  34. package/dist/esm2015/classes/item.js +61 -61
  35. package/dist/esm2015/classes/item.js.map +1 -1
  36. package/dist/esm2015/classes/logger.js +186 -186
  37. package/dist/esm2015/classes/logger.js.map +1 -1
  38. package/dist/esm2015/classes/paddings.js +72 -72
  39. package/dist/esm2015/classes/reactive.js +54 -54
  40. package/dist/esm2015/classes/reactive.js.map +1 -1
  41. package/dist/esm2015/classes/settings.js +39 -39
  42. package/dist/esm2015/classes/settings.js.map +1 -1
  43. package/dist/esm2015/classes/state/clip.js +16 -16
  44. package/dist/esm2015/classes/state/clip.js.map +1 -1
  45. package/dist/esm2015/classes/state/cycle.js +60 -60
  46. package/dist/esm2015/classes/state/cycle.js.map +1 -1
  47. package/dist/esm2015/classes/state/fetch.js +122 -122
  48. package/dist/esm2015/classes/state/fetch.js.map +1 -1
  49. package/dist/esm2015/classes/state/render.js +14 -14
  50. package/dist/esm2015/classes/state/render.js.map +1 -1
  51. package/dist/esm2015/classes/state/scroll.js +30 -30
  52. package/dist/esm2015/classes/state/scroll.js.map +1 -1
  53. package/dist/esm2015/classes/state.js +59 -59
  54. package/dist/esm2015/classes/viewport.js +72 -72
  55. package/dist/esm2015/classes/viewport.js.map +1 -1
  56. package/dist/esm2015/index.js +8 -8
  57. package/dist/esm2015/index.js.map +1 -1
  58. package/dist/esm2015/inputs/adapter.js +230 -230
  59. package/dist/esm2015/inputs/adapter.js.map +1 -1
  60. package/dist/esm2015/inputs/common.js +11 -11
  61. package/dist/esm2015/inputs/common.js.map +1 -1
  62. package/dist/esm2015/inputs/datasource.js +20 -20
  63. package/dist/esm2015/inputs/datasource.js.map +1 -1
  64. package/dist/esm2015/inputs/index.js +6 -6
  65. package/dist/esm2015/inputs/index.js.map +1 -1
  66. package/dist/esm2015/inputs/settings.js +146 -146
  67. package/dist/esm2015/inputs/settings.js.map +1 -1
  68. package/dist/esm2015/inputs/validation.js +374 -374
  69. package/dist/esm2015/inputs/validation.js.map +1 -1
  70. package/dist/esm2015/interfaces/adapter.js +1 -1
  71. package/dist/esm2015/interfaces/datasource.js +1 -1
  72. package/dist/esm2015/interfaces/datasource.js.map +1 -1
  73. package/dist/esm2015/interfaces/index.js +1 -1
  74. package/dist/esm2015/interfaces/index.js.map +1 -1
  75. package/dist/esm2015/interfaces/item.js +1 -1
  76. package/dist/esm2015/interfaces/item.js.map +1 -1
  77. package/dist/esm2015/interfaces/process.js +1 -1
  78. package/dist/esm2015/interfaces/routines.js +1 -1
  79. package/dist/esm2015/interfaces/routines.js.map +1 -1
  80. package/dist/esm2015/interfaces/settings.js +1 -1
  81. package/dist/esm2015/interfaces/state.js +1 -1
  82. package/dist/esm2015/interfaces/validation.js +1 -1
  83. package/dist/esm2015/interfaces/validation.js.map +1 -1
  84. package/dist/esm2015/interfaces/workflow.js +1 -1
  85. package/dist/esm2015/interfaces/workflow.js.map +1 -1
  86. package/dist/esm2015/processes/adapter/append.js +35 -35
  87. package/dist/esm2015/processes/adapter/append.js.map +1 -1
  88. package/dist/esm2015/processes/adapter/check.js +32 -32
  89. package/dist/esm2015/processes/adapter/check.js.map +1 -1
  90. package/dist/esm2015/processes/adapter/clip.js +12 -12
  91. package/dist/esm2015/processes/adapter/clip.js.map +1 -1
  92. package/dist/esm2015/processes/adapter/fix.js +77 -77
  93. package/dist/esm2015/processes/adapter/fix.js.map +1 -1
  94. package/dist/esm2015/processes/adapter/insert.js +73 -73
  95. package/dist/esm2015/processes/adapter/insert.js.map +1 -1
  96. package/dist/esm2015/processes/adapter/reload.js +19 -20
  97. package/dist/esm2015/processes/adapter/reload.js.map +1 -1
  98. package/dist/esm2015/processes/adapter/remove.js +102 -102
  99. package/dist/esm2015/processes/adapter/remove.js.map +1 -1
  100. package/dist/esm2015/processes/adapter/replace.js +39 -39
  101. package/dist/esm2015/processes/adapter/replace.js.map +1 -1
  102. package/dist/esm2015/processes/adapter/reset.js +35 -35
  103. package/dist/esm2015/processes/adapter/reset.js.map +1 -1
  104. package/dist/esm2015/processes/adapter/update.js +43 -43
  105. package/dist/esm2015/processes/adapter/update.js.map +1 -1
  106. package/dist/esm2015/processes/adjust.js +141 -141
  107. package/dist/esm2015/processes/clip.js +49 -49
  108. package/dist/esm2015/processes/end.js +52 -52
  109. package/dist/esm2015/processes/end.js.map +1 -1
  110. package/dist/esm2015/processes/fetch.js +91 -90
  111. package/dist/esm2015/processes/fetch.js.map +1 -1
  112. package/dist/esm2015/processes/index.js +23 -23
  113. package/dist/esm2015/processes/init.js +14 -14
  114. package/dist/esm2015/processes/init.js.map +1 -1
  115. package/dist/esm2015/processes/misc/base.js +30 -30
  116. package/dist/esm2015/processes/misc/base.js.map +1 -1
  117. package/dist/esm2015/processes/misc/enums.js +35 -35
  118. package/dist/esm2015/processes/misc/enums.js.map +1 -1
  119. package/dist/esm2015/processes/misc/index.js +2 -2
  120. package/dist/esm2015/processes/misc/index.js.map +1 -1
  121. package/dist/esm2015/processes/postFetch.js +64 -64
  122. package/dist/esm2015/processes/postFetch.js.map +1 -1
  123. package/dist/esm2015/processes/preClip.js +85 -85
  124. package/dist/esm2015/processes/preClip.js.map +1 -1
  125. package/dist/esm2015/processes/preFetch.js +240 -240
  126. package/dist/esm2015/processes/preFetch.js.map +1 -1
  127. package/dist/esm2015/processes/render.js +54 -54
  128. package/dist/esm2015/processes/render.js.map +1 -1
  129. package/dist/esm2015/processes/scroll.js +97 -97
  130. package/dist/esm2015/processes/scroll.js.map +1 -1
  131. package/dist/esm2015/processes/start.js +11 -11
  132. package/dist/esm2015/processes/start.js.map +1 -1
  133. package/dist/esm2015/scroller.js +76 -69
  134. package/dist/esm2015/scroller.js.map +1 -1
  135. package/dist/esm2015/version.js +4 -4
  136. package/dist/esm2015/version.js.map +1 -1
  137. package/dist/esm2015/workflow-transducer.js +210 -210
  138. package/dist/esm2015/workflow-transducer.js.map +1 -1
  139. package/dist/esm2015/workflow.js +161 -151
  140. package/dist/esm2015/workflow.js.map +1 -1
  141. package/dist/esm5/classes/adapter/context.js +50 -50
  142. package/dist/esm5/classes/adapter/context.js.map +1 -1
  143. package/dist/esm5/classes/adapter/props.js +268 -268
  144. package/dist/esm5/classes/adapter/props.js.map +1 -1
  145. package/dist/esm5/classes/adapter/wanted.js +29 -29
  146. package/dist/esm5/classes/adapter/wanted.js.map +1 -1
  147. package/dist/esm5/classes/adapter.js +504 -490
  148. package/dist/esm5/classes/adapter.js.map +1 -1
  149. package/dist/esm5/classes/buffer/cache.js +260 -260
  150. package/dist/esm5/classes/buffer/cache.js.map +1 -1
  151. package/dist/esm5/classes/buffer/checkCall.js +56 -56
  152. package/dist/esm5/classes/buffer/checkCall.js.map +1 -1
  153. package/dist/esm5/classes/buffer/defaultSize.js +145 -145
  154. package/dist/esm5/classes/buffer/defaultSize.js.map +1 -1
  155. package/dist/esm5/classes/buffer.js +409 -409
  156. package/dist/esm5/classes/buffer.js.map +1 -1
  157. package/dist/esm5/classes/datasource.js +37 -37
  158. package/dist/esm5/classes/domRoutines.js +182 -182
  159. package/dist/esm5/classes/domRoutines.js.map +1 -1
  160. package/dist/esm5/classes/item.js +76 -76
  161. package/dist/esm5/classes/item.js.map +1 -1
  162. package/dist/esm5/classes/logger.js +210 -210
  163. package/dist/esm5/classes/logger.js.map +1 -1
  164. package/dist/esm5/classes/paddings.js +80 -80
  165. package/dist/esm5/classes/reactive.js +69 -69
  166. package/dist/esm5/classes/reactive.js.map +1 -1
  167. package/dist/esm5/classes/settings.js +47 -47
  168. package/dist/esm5/classes/settings.js.map +1 -1
  169. package/dist/esm5/classes/state/clip.js +22 -22
  170. package/dist/esm5/classes/state/clip.js.map +1 -1
  171. package/dist/esm5/classes/state/cycle.js +75 -75
  172. package/dist/esm5/classes/state/cycle.js.map +1 -1
  173. package/dist/esm5/classes/state/fetch.js +148 -148
  174. package/dist/esm5/classes/state/fetch.js.map +1 -1
  175. package/dist/esm5/classes/state/render.js +20 -20
  176. package/dist/esm5/classes/state/render.js.map +1 -1
  177. package/dist/esm5/classes/state/scroll.js +32 -32
  178. package/dist/esm5/classes/state/scroll.js.map +1 -1
  179. package/dist/esm5/classes/state.js +66 -66
  180. package/dist/esm5/classes/viewport.js +79 -79
  181. package/dist/esm5/classes/viewport.js.map +1 -1
  182. package/dist/esm5/index.js +8 -8
  183. package/dist/esm5/index.js.map +1 -1
  184. package/dist/esm5/inputs/adapter.js +231 -231
  185. package/dist/esm5/inputs/adapter.js.map +1 -1
  186. package/dist/esm5/inputs/common.js +11 -11
  187. package/dist/esm5/inputs/common.js.map +1 -1
  188. package/dist/esm5/inputs/datasource.js +21 -21
  189. package/dist/esm5/inputs/datasource.js.map +1 -1
  190. package/dist/esm5/inputs/index.js +6 -6
  191. package/dist/esm5/inputs/index.js.map +1 -1
  192. package/dist/esm5/inputs/settings.js +147 -147
  193. package/dist/esm5/inputs/settings.js.map +1 -1
  194. package/dist/esm5/inputs/validation.js +396 -396
  195. package/dist/esm5/inputs/validation.js.map +1 -1
  196. package/dist/esm5/interfaces/adapter.js +1 -1
  197. package/dist/esm5/interfaces/datasource.js +1 -1
  198. package/dist/esm5/interfaces/datasource.js.map +1 -1
  199. package/dist/esm5/interfaces/index.js +1 -1
  200. package/dist/esm5/interfaces/index.js.map +1 -1
  201. package/dist/esm5/interfaces/item.js +1 -1
  202. package/dist/esm5/interfaces/item.js.map +1 -1
  203. package/dist/esm5/interfaces/process.js +1 -1
  204. package/dist/esm5/interfaces/routines.js +1 -1
  205. package/dist/esm5/interfaces/routines.js.map +1 -1
  206. package/dist/esm5/interfaces/settings.js +1 -1
  207. package/dist/esm5/interfaces/state.js +1 -1
  208. package/dist/esm5/interfaces/validation.js +1 -1
  209. package/dist/esm5/interfaces/validation.js.map +1 -1
  210. package/dist/esm5/interfaces/workflow.js +1 -1
  211. package/dist/esm5/interfaces/workflow.js.map +1 -1
  212. package/dist/esm5/processes/adapter/append.js +43 -43
  213. package/dist/esm5/processes/adapter/append.js.map +1 -1
  214. package/dist/esm5/processes/adapter/check.js +39 -39
  215. package/dist/esm5/processes/adapter/check.js.map +1 -1
  216. package/dist/esm5/processes/adapter/clip.js +19 -19
  217. package/dist/esm5/processes/adapter/clip.js.map +1 -1
  218. package/dist/esm5/processes/adapter/fix.js +89 -89
  219. package/dist/esm5/processes/adapter/fix.js.map +1 -1
  220. package/dist/esm5/processes/adapter/insert.js +81 -81
  221. package/dist/esm5/processes/adapter/insert.js.map +1 -1
  222. package/dist/esm5/processes/adapter/reload.js +26 -27
  223. package/dist/esm5/processes/adapter/reload.js.map +1 -1
  224. package/dist/esm5/processes/adapter/remove.js +115 -115
  225. package/dist/esm5/processes/adapter/remove.js.map +1 -1
  226. package/dist/esm5/processes/adapter/replace.js +47 -47
  227. package/dist/esm5/processes/adapter/replace.js.map +1 -1
  228. package/dist/esm5/processes/adapter/reset.js +42 -42
  229. package/dist/esm5/processes/adapter/reset.js.map +1 -1
  230. package/dist/esm5/processes/adapter/update.js +59 -59
  231. package/dist/esm5/processes/adapter/update.js.map +1 -1
  232. package/dist/esm5/processes/adjust.js +152 -152
  233. package/dist/esm5/processes/clip.js +60 -60
  234. package/dist/esm5/processes/end.js +63 -63
  235. package/dist/esm5/processes/end.js.map +1 -1
  236. package/dist/esm5/processes/fetch.js +102 -101
  237. package/dist/esm5/processes/fetch.js.map +1 -1
  238. package/dist/esm5/processes/index.js +23 -23
  239. package/dist/esm5/processes/init.js +21 -21
  240. package/dist/esm5/processes/init.js.map +1 -1
  241. package/dist/esm5/processes/misc/base.js +44 -44
  242. package/dist/esm5/processes/misc/base.js.map +1 -1
  243. package/dist/esm5/processes/misc/enums.js +35 -35
  244. package/dist/esm5/processes/misc/enums.js.map +1 -1
  245. package/dist/esm5/processes/misc/index.js +2 -2
  246. package/dist/esm5/processes/misc/index.js.map +1 -1
  247. package/dist/esm5/processes/postFetch.js +73 -73
  248. package/dist/esm5/processes/postFetch.js.map +1 -1
  249. package/dist/esm5/processes/preClip.js +94 -94
  250. package/dist/esm5/processes/preClip.js.map +1 -1
  251. package/dist/esm5/processes/preFetch.js +247 -247
  252. package/dist/esm5/processes/preFetch.js.map +1 -1
  253. package/dist/esm5/processes/render.js +63 -63
  254. package/dist/esm5/processes/render.js.map +1 -1
  255. package/dist/esm5/processes/scroll.js +107 -107
  256. package/dist/esm5/processes/scroll.js.map +1 -1
  257. package/dist/esm5/processes/start.js +18 -18
  258. package/dist/esm5/processes/start.js.map +1 -1
  259. package/dist/esm5/scroller.js +82 -73
  260. package/dist/esm5/scroller.js.map +1 -1
  261. package/dist/esm5/version.js +4 -4
  262. package/dist/esm5/version.js.map +1 -1
  263. package/dist/esm5/workflow-transducer.js +212 -212
  264. package/dist/esm5/workflow-transducer.js.map +1 -1
  265. package/dist/esm5/workflow.js +186 -176
  266. package/dist/esm5/workflow.js.map +1 -1
  267. package/dist/typings/classes/adapter/context.d.ts +4 -4
  268. package/dist/typings/classes/adapter/props.d.ts +47 -47
  269. package/dist/typings/classes/adapter/wanted.d.ts +14 -14
  270. package/dist/typings/classes/adapter.d.ts +74 -64
  271. package/dist/typings/classes/buffer/cache.d.ts +95 -95
  272. package/dist/typings/classes/buffer/checkCall.d.ts +12 -12
  273. package/dist/typings/classes/buffer/defaultSize.d.ts +32 -32
  274. package/dist/typings/classes/buffer.d.ts +64 -64
  275. package/dist/typings/classes/datasource.d.ts +27 -27
  276. package/dist/typings/classes/domRoutines.d.ts +33 -33
  277. package/dist/typings/classes/item.d.ts +28 -28
  278. package/dist/typings/classes/logger.d.ts +28 -28
  279. package/dist/typings/classes/paddings.d.ts +22 -22
  280. package/dist/typings/classes/reactive.d.ts +21 -21
  281. package/dist/typings/classes/settings.d.ts +119 -119
  282. package/dist/typings/classes/state/clip.d.ts +9 -9
  283. package/dist/typings/classes/state/cycle.d.ts +29 -29
  284. package/dist/typings/classes/state/fetch.d.ts +62 -62
  285. package/dist/typings/classes/state/render.d.ts +9 -9
  286. package/dist/typings/classes/state/scroll.d.ts +16 -16
  287. package/dist/typings/classes/state.d.ts +27 -27
  288. package/dist/typings/classes/viewport.d.ts +32 -32
  289. package/dist/typings/index.d.ts +9 -9
  290. package/dist/typings/inputs/adapter.d.ts +5 -5
  291. package/dist/typings/inputs/common.d.ts +9 -9
  292. package/dist/typings/inputs/datasource.d.ts +7 -7
  293. package/dist/typings/inputs/index.d.ts +6 -6
  294. package/dist/typings/inputs/settings.d.ts +41 -41
  295. package/dist/typings/inputs/validation.d.ts +83 -83
  296. package/dist/typings/interfaces/adapter.d.ts +156 -156
  297. package/dist/typings/interfaces/datasource.d.ts +26 -26
  298. package/dist/typings/interfaces/index.d.ts +10 -10
  299. package/dist/typings/interfaces/item.d.ts +8 -8
  300. package/dist/typings/interfaces/process.d.ts +35 -35
  301. package/dist/typings/interfaces/routines.d.ts +157 -157
  302. package/dist/typings/interfaces/settings.d.ts +31 -31
  303. package/dist/typings/interfaces/state.d.ts +22 -22
  304. package/dist/typings/interfaces/validation.d.ts +33 -33
  305. package/dist/typings/interfaces/workflow.d.ts +53 -53
  306. package/dist/typings/processes/adapter/append.d.ts +14 -14
  307. package/dist/typings/processes/adapter/check.d.ts +6 -6
  308. package/dist/typings/processes/adapter/clip.d.ts +7 -7
  309. package/dist/typings/processes/adapter/fix.d.ts +13 -13
  310. package/dist/typings/processes/adapter/insert.d.ts +11 -11
  311. package/dist/typings/processes/adapter/reload.d.ts +6 -6
  312. package/dist/typings/processes/adapter/remove.d.ts +11 -11
  313. package/dist/typings/processes/adapter/replace.d.ts +8 -8
  314. package/dist/typings/processes/adapter/reset.d.ts +7 -7
  315. package/dist/typings/processes/adapter/update.d.ts +8 -8
  316. package/dist/typings/processes/adjust.d.ts +10 -10
  317. package/dist/typings/processes/clip.d.ts +7 -7
  318. package/dist/typings/processes/end.d.ts +10 -10
  319. package/dist/typings/processes/fetch.d.ts +18 -18
  320. package/dist/typings/processes/index.d.ts +23 -23
  321. package/dist/typings/processes/init.d.ts +7 -7
  322. package/dist/typings/processes/misc/base.d.ts +4 -4
  323. package/dist/typings/processes/misc/enums.d.ts +32 -32
  324. package/dist/typings/processes/misc/index.d.ts +2 -2
  325. package/dist/typings/processes/postFetch.d.ts +8 -8
  326. package/dist/typings/processes/preClip.d.ts +12 -12
  327. package/dist/typings/processes/preFetch.d.ts +17 -17
  328. package/dist/typings/processes/render.d.ts +9 -9
  329. package/dist/typings/processes/scroll.d.ts +13 -13
  330. package/dist/typings/processes/start.d.ts +6 -6
  331. package/dist/typings/scroller.d.ts +26 -26
  332. package/dist/typings/version.d.ts +5 -5
  333. package/dist/typings/workflow-transducer.d.ts +2 -2
  334. package/dist/typings/workflow.d.ts +29 -28
  335. package/package.json +68 -68
@@ -1,33 +1,33 @@
1
- import { Settings } from './settings';
2
- import { Direction } from '../inputs/index';
3
- import { IRoutines, CustomRoutinesClass } from '../interfaces/index';
4
- export declare class Routines implements IRoutines {
5
- readonly settings: IRoutines['settings'];
6
- readonly element: HTMLElement;
7
- readonly viewport: HTMLElement;
8
- constructor(element: HTMLElement, settings: Settings, CustomRoutines?: CustomRoutinesClass);
9
- checkElement(element: HTMLElement): void;
10
- getViewportElement(): HTMLElement;
11
- onInit(settings: Settings): void;
12
- findElementBySelector(element: HTMLElement, selector: string): HTMLElement | null;
13
- findPaddingElement(direction: Direction): HTMLElement | null;
14
- findItemElement(id: string): HTMLElement | null;
15
- getScrollPosition(): number;
16
- setScrollPosition(value: number): void;
17
- getElementParams(element: HTMLElement): DOMRect;
18
- getWindowParams(): DOMRect;
19
- getSize(element: HTMLElement): number;
20
- getScrollerSize(): number;
21
- getViewportSize(): number;
22
- getSizeStyle(element: HTMLElement): number;
23
- setSizeStyle(element: HTMLElement, value: number): void;
24
- getEdge(element: HTMLElement, direction: Direction): number;
25
- getViewportEdge(direction: Direction): number;
26
- makeElementVisible(element: HTMLElement): void;
27
- hideElement(element: HTMLElement): void;
28
- getOffset(): number;
29
- scrollTo(element: HTMLElement, argument?: boolean | ScrollIntoViewOptions): void;
30
- render(cb: () => void): () => void;
31
- animate(cb: () => void): () => void;
32
- onScroll(handler: EventListener): () => void;
33
- }
1
+ import { Settings } from './settings';
2
+ import { Direction } from '../inputs/index';
3
+ import { IRoutines, CustomRoutinesClass } from '../interfaces/index';
4
+ export declare class Routines implements IRoutines {
5
+ readonly settings: IRoutines['settings'];
6
+ readonly element: HTMLElement;
7
+ readonly viewport: HTMLElement;
8
+ constructor(element: HTMLElement, settings: Settings, CustomRoutines?: CustomRoutinesClass);
9
+ checkElement(element: HTMLElement): void;
10
+ getViewportElement(): HTMLElement;
11
+ onInit(settings: Settings): void;
12
+ findElementBySelector(element: HTMLElement, selector: string): HTMLElement | null;
13
+ findPaddingElement(direction: Direction): HTMLElement | null;
14
+ findItemElement(id: string): HTMLElement | null;
15
+ getScrollPosition(): number;
16
+ setScrollPosition(value: number): void;
17
+ getElementParams(element: HTMLElement): DOMRect;
18
+ getWindowParams(): DOMRect;
19
+ getSize(element: HTMLElement): number;
20
+ getScrollerSize(): number;
21
+ getViewportSize(): number;
22
+ getSizeStyle(element: HTMLElement): number;
23
+ setSizeStyle(element: HTMLElement, value: number): void;
24
+ getEdge(element: HTMLElement, direction: Direction): number;
25
+ getViewportEdge(direction: Direction): number;
26
+ makeElementVisible(element: HTMLElement): void;
27
+ hideElement(element: HTMLElement): void;
28
+ getOffset(): number;
29
+ scrollTo(element: HTMLElement, argument?: boolean | ScrollIntoViewOptions): void;
30
+ render(cb: () => void): () => void;
31
+ animate(cb: () => void): () => void;
32
+ onScroll(handler: EventListener): () => void;
33
+ }
@@ -1,28 +1,28 @@
1
- import { Routines } from './domRoutines';
2
- import { Direction } from '../inputs/index';
3
- import { Item as _Item, ItemAdapter } from '../interfaces/index';
4
- export declare class Item<Data = unknown> implements _Item<Data> {
5
- nodeId: string;
6
- routines: Routines;
7
- preSize: number;
8
- size: number;
9
- invisible: boolean;
10
- toRemove: boolean;
11
- toInsert: boolean;
12
- removeDirection: Direction;
13
- private container;
14
- get $index(): number;
15
- set $index(value: number);
16
- get data(): Data;
17
- set data(value: Data);
18
- get element(): HTMLElement;
19
- set element(value: HTMLElement);
20
- constructor($index: number, data: Data, routines: Routines);
21
- dispose(): void;
22
- setSize(preSize?: number): void;
23
- makeVisible(): void;
24
- hide(): void;
25
- scrollTo(argument?: boolean | ScrollIntoViewOptions): void;
26
- updateIndex(index: number): void;
27
- get(): ItemAdapter<Data>;
28
- }
1
+ import { Routines } from './domRoutines';
2
+ import { Direction } from '../inputs/index';
3
+ import { Item as _Item, ItemAdapter } from '../interfaces/index';
4
+ export declare class Item<Data = unknown> implements _Item<Data> {
5
+ nodeId: string;
6
+ routines: Routines;
7
+ preSize: number;
8
+ size: number;
9
+ invisible: boolean;
10
+ toRemove: boolean;
11
+ toInsert: boolean;
12
+ removeDirection: Direction;
13
+ private container;
14
+ get $index(): number;
15
+ set $index(value: number);
16
+ get data(): Data;
17
+ set data(value: Data);
18
+ get element(): HTMLElement;
19
+ set element(value: HTMLElement);
20
+ constructor($index: number, data: Data, routines: Routines);
21
+ dispose(): void;
22
+ setSize(preSize?: number): void;
23
+ makeVisible(): void;
24
+ hide(): void;
25
+ scrollTo(argument?: boolean | ScrollIntoViewOptions): void;
26
+ updateIndex(index: number): void;
27
+ get(): ItemAdapter<Data>;
28
+ }
@@ -1,28 +1,28 @@
1
- import { Scroller } from '../scroller';
2
- import { IPackages, ProcessSubject } from '../interfaces/index';
3
- export declare class Logger {
4
- readonly debug: boolean;
5
- readonly immediateLog: boolean;
6
- readonly logTime: boolean;
7
- readonly getTime: () => string;
8
- readonly getStat: () => string;
9
- readonly getFetchRange: () => string;
10
- readonly getWorkflowCycleData: () => string;
11
- readonly getLoopId: () => string;
12
- readonly getLoopIdNext: () => string;
13
- readonly getScrollPosition: () => number;
14
- private logs;
15
- constructor(scroller: Scroller, packageInfo: IPackages, adapter?: {
16
- id: number;
17
- });
18
- object(str: string, obj: unknown, stringify?: boolean): void;
19
- stat(str?: string): void;
20
- fetch(str?: string): void;
21
- prepareForLog(data: unknown): unknown;
22
- logProcess(data: ProcessSubject): void;
23
- logCycle(start?: boolean): void;
24
- logError(str: string): void;
25
- logAdapterMethod: (methodName: string, args?: unknown, add?: string | undefined) => void;
26
- log(...args: unknown[]): void;
27
- logForce(...args: unknown[]): void;
28
- }
1
+ import { Scroller } from '../scroller';
2
+ import { IPackages, ProcessSubject } from '../interfaces/index';
3
+ export declare class Logger {
4
+ readonly debug: boolean;
5
+ readonly immediateLog: boolean;
6
+ readonly logTime: boolean;
7
+ readonly getTime: () => string;
8
+ readonly getStat: () => string;
9
+ readonly getFetchRange: () => string;
10
+ readonly getWorkflowCycleData: () => string;
11
+ readonly getLoopId: () => string;
12
+ readonly getLoopIdNext: () => string;
13
+ readonly getScrollPosition: () => number;
14
+ private logs;
15
+ constructor(scroller: Scroller, packageInfo: IPackages, adapter?: {
16
+ id: number;
17
+ });
18
+ object(str: string, obj: unknown, stringify?: boolean): void;
19
+ stat(str?: string): void;
20
+ fetch(str?: string): void;
21
+ prepareForLog(data: unknown): unknown;
22
+ logProcess(data: ProcessSubject): void;
23
+ logCycle(start?: boolean): void;
24
+ logError(str: string): void;
25
+ logAdapterMethod: (methodName: string, args?: unknown, add?: string | undefined) => void;
26
+ log(...args: unknown[]): void;
27
+ logForce(...args: unknown[]): void;
28
+ }
@@ -1,22 +1,22 @@
1
- import { Routines } from './domRoutines';
2
- import { Settings } from './settings';
3
- import { Direction } from '../inputs/index';
4
- export declare class Padding {
5
- element: HTMLElement;
6
- direction: Direction;
7
- routines: Routines;
8
- constructor(direction: Direction, routines: Routines);
9
- reset(size?: number): void;
10
- get size(): number;
11
- set size(value: number);
12
- }
13
- export declare class Paddings {
14
- settings: Settings;
15
- forward: Padding;
16
- backward: Padding;
17
- constructor(routines: Routines, settings: Settings);
18
- byDirection(direction: Direction, opposite?: boolean): Padding;
19
- reset(viewportSize: number, startIndex: number, offset: number): void;
20
- getPositiveSize(startIndex: number, viewportSize: number, offset: number): number;
21
- getNegativeSize(startIndex: number): number;
22
- }
1
+ import { Routines } from './domRoutines';
2
+ import { Settings } from './settings';
3
+ import { Direction } from '../inputs/index';
4
+ export declare class Padding {
5
+ element: HTMLElement;
6
+ direction: Direction;
7
+ routines: Routines;
8
+ constructor(direction: Direction, routines: Routines);
9
+ reset(size?: number): void;
10
+ get size(): number;
11
+ set size(value: number);
12
+ }
13
+ export declare class Paddings {
14
+ settings: Settings;
15
+ forward: Padding;
16
+ backward: Padding;
17
+ constructor(routines: Routines, settings: Settings);
18
+ byDirection(direction: Direction, opposite?: boolean): Padding;
19
+ reset(viewportSize: number, startIndex: number, offset: number): void;
20
+ getPositiveSize(startIndex: number, viewportSize: number, offset: number): number;
21
+ getNegativeSize(startIndex: number): number;
22
+ }
@@ -1,21 +1,21 @@
1
- declare type On<T> = (value: T) => void;
2
- declare type Off = () => void;
3
- interface Options {
4
- emitOnSubscribe?: boolean;
5
- emitEqual?: boolean;
6
- }
7
- export declare class Reactive<T> {
8
- private initialValue;
9
- private value;
10
- private id;
11
- private options;
12
- private subscriptions;
13
- constructor(value?: T, options?: Options);
14
- set(value: T): void;
15
- get(): T;
16
- on(func: On<T>): Off;
17
- once(func: On<T>): Off;
18
- reset(): void;
19
- dispose(): void;
20
- }
21
- export {};
1
+ declare type On<T> = (value: T) => void;
2
+ declare type Off = () => void;
3
+ interface Options {
4
+ emitOnSubscribe?: boolean;
5
+ emitEqual?: boolean;
6
+ }
7
+ export declare class Reactive<T> {
8
+ private initialValue;
9
+ private value;
10
+ private id;
11
+ private options;
12
+ private subscriptions;
13
+ constructor(value?: T, options?: Options);
14
+ set(value: T): void;
15
+ get(): T;
16
+ on(func: On<T>): Off;
17
+ once(func: On<T>): Off;
18
+ reset(): void;
19
+ dispose(): void;
20
+ }
21
+ export {};
@@ -1,119 +1,119 @@
1
- import { SizeStrategy, Direction } from '../inputs/index';
2
- import { Settings as ISettings, DevSettings as IDevSettings, ICommonProps, ItemsProcessor } from '../interfaces/index';
3
- export declare class Settings<Data = unknown> implements ISettings, IDevSettings {
4
- adapter: boolean;
5
- startIndex: number;
6
- minIndex: number;
7
- maxIndex: number;
8
- itemSize: number;
9
- bufferSize: number;
10
- padding: number;
11
- infinite: boolean;
12
- horizontal: boolean;
13
- windowViewport: boolean;
14
- viewportElement: HTMLElement | (() => void) | null;
15
- inverse: boolean;
16
- onBeforeClip: ItemsProcessor | null;
17
- sizeStrategy: SizeStrategy;
18
- /**
19
- * Development setting.
20
- * If true, logging is enabled.
21
- * Default value: false.
22
- * @type {boolean}
23
- */
24
- debug: boolean;
25
- /**
26
- * Development setting.
27
- * If false, in-memory logging is enabled, Adapter.showLog() method should be called to print the log.
28
- * Default value: true.
29
- * @type {boolean}
30
- */
31
- immediateLog: boolean;
32
- /**
33
- * Development setting.
34
- * If true, time differences will be logged.
35
- * Default value: false.
36
- * @type {boolean}
37
- */
38
- logTime: boolean;
39
- /**
40
- * Development setting.
41
- * If true, process fire/run info will be logged.
42
- * Default value: false.
43
- * @type {boolean}
44
- */
45
- logProcessRun: boolean;
46
- /**
47
- * Development setting.
48
- * If set, scroll event handling is throttled (ms).
49
- * Default value: 40. Minimal value: 0.
50
- * @type {number} ms
51
- */
52
- throttle: number;
53
- /**
54
- * Development setting.
55
- * If set, the Workflow initialization will be postponed (ms).
56
- * Default value: 1. Minimal value: 0.
57
- * @type {number} ms
58
- */
59
- initDelay: number;
60
- /**
61
- * Development setting.
62
- * If set and the entire window is scrollable, the Workflow initialization will be postponed (ms).
63
- * Default value: 40. Minimal value: 0.
64
- * @type {number} ms
65
- */
66
- initWindowDelay: number;
67
- /**
68
- * Development setting.
69
- * If true, item's data will be cached along with item's size and index.
70
- * Default value: false.
71
- * @type {boolean}
72
- */
73
- cacheData: boolean;
74
- /**
75
- * Development setting.
76
- * If true, cache will not be flushed on reload.
77
- * Default value: false.
78
- * @type {boolean}
79
- */
80
- cacheOnReload: boolean;
81
- /**
82
- * Development setting.
83
- * If true, the viewport will receive "overflowAnchor: none" css property.
84
- * Default value: false.
85
- * @type {boolean}
86
- */
87
- dismissOverflowAnchor: boolean;
88
- /**
89
- * Development setting.
90
- * Determines the strategy of fixing the difference between estimated and real (rendered) sizes
91
- * on scroll position adjustments. If set to 'backward', the difference is always resolved in favour of the
92
- * backward direction: top/left content is fixed and appears in accordance with pre-render expectations.
93
- * If set to 'forward', both directions could be used, and there is a case when bottom/right content is fixed:
94
- * new items are to the left of the previously rendered
95
- * and at least one previously rendered item remains.
96
- * Default value: 'backward'. Allowed values: 'backward', 'forward'.
97
- * @type {string}
98
- */
99
- directionPriority: Direction;
100
- /**
101
- * Internal setting. Stores the index of the Scroller instance.
102
- * @type {number}
103
- */
104
- instanceIndex: number;
105
- /**
106
- * Internal setting. Stores the Workflow initialization delay based on initDelay and initWindowDelay settings.
107
- * @type {number}
108
- */
109
- initializeDelay: number;
110
- /**
111
- * Internal setting. Stores the viewport based on viewportElement setting (which can be element or function).
112
- * @type {HTMLElement|null}
113
- */
114
- viewport: HTMLElement | null;
115
- constructor(settings: ISettings<Data> | undefined, devSettings: IDevSettings | undefined, instanceIndex: number);
116
- parseInput(input: ISettings<Data> | IDevSettings | undefined, props: ICommonProps<PropertyKey>): void;
117
- getInitializeDelay(): number;
118
- getViewport(): HTMLElement | null;
119
- }
1
+ import { SizeStrategy, Direction } from '../inputs/index';
2
+ import { Settings as ISettings, DevSettings as IDevSettings, ICommonProps, ItemsProcessor } from '../interfaces/index';
3
+ export declare class Settings<Data = unknown> implements ISettings, IDevSettings {
4
+ adapter: boolean;
5
+ startIndex: number;
6
+ minIndex: number;
7
+ maxIndex: number;
8
+ itemSize: number;
9
+ bufferSize: number;
10
+ padding: number;
11
+ infinite: boolean;
12
+ horizontal: boolean;
13
+ windowViewport: boolean;
14
+ viewportElement: HTMLElement | (() => void) | null;
15
+ inverse: boolean;
16
+ onBeforeClip: ItemsProcessor | null;
17
+ sizeStrategy: SizeStrategy;
18
+ /**
19
+ * Development setting.
20
+ * If true, logging is enabled.
21
+ * Default value: false.
22
+ * @type {boolean}
23
+ */
24
+ debug: boolean;
25
+ /**
26
+ * Development setting.
27
+ * If false, in-memory logging is enabled, Adapter.showLog() method should be called to print the log.
28
+ * Default value: true.
29
+ * @type {boolean}
30
+ */
31
+ immediateLog: boolean;
32
+ /**
33
+ * Development setting.
34
+ * If true, time differences will be logged.
35
+ * Default value: false.
36
+ * @type {boolean}
37
+ */
38
+ logTime: boolean;
39
+ /**
40
+ * Development setting.
41
+ * If true, process fire/run info will be logged.
42
+ * Default value: false.
43
+ * @type {boolean}
44
+ */
45
+ logProcessRun: boolean;
46
+ /**
47
+ * Development setting.
48
+ * If set, scroll event handling is throttled (ms).
49
+ * Default value: 40. Minimal value: 0.
50
+ * @type {number} ms
51
+ */
52
+ throttle: number;
53
+ /**
54
+ * Development setting.
55
+ * If set, the Workflow initialization will be postponed (ms).
56
+ * Default value: 1. Minimal value: 0.
57
+ * @type {number} ms
58
+ */
59
+ initDelay: number;
60
+ /**
61
+ * Development setting.
62
+ * If set and the entire window is scrollable, the Workflow initialization will be postponed (ms).
63
+ * Default value: 40. Minimal value: 0.
64
+ * @type {number} ms
65
+ */
66
+ initWindowDelay: number;
67
+ /**
68
+ * Development setting.
69
+ * If true, item's data will be cached along with item's size and index.
70
+ * Default value: false.
71
+ * @type {boolean}
72
+ */
73
+ cacheData: boolean;
74
+ /**
75
+ * Development setting.
76
+ * If true, cache will not be flushed on reload.
77
+ * Default value: false.
78
+ * @type {boolean}
79
+ */
80
+ cacheOnReload: boolean;
81
+ /**
82
+ * Development setting.
83
+ * If true, the viewport will receive "overflowAnchor: none" css property.
84
+ * Default value: false.
85
+ * @type {boolean}
86
+ */
87
+ dismissOverflowAnchor: boolean;
88
+ /**
89
+ * Development setting.
90
+ * Determines the strategy of fixing the difference between estimated and real (rendered) sizes
91
+ * on scroll position adjustments. If set to 'backward', the difference is always resolved in favour of the
92
+ * backward direction: top/left content is fixed and appears in accordance with pre-render expectations.
93
+ * If set to 'forward', both directions could be used, and there is a case when bottom/right content is fixed:
94
+ * new items are to the left of the previously rendered
95
+ * and at least one previously rendered item remains.
96
+ * Default value: 'backward'. Allowed values: 'backward', 'forward'.
97
+ * @type {string}
98
+ */
99
+ directionPriority: Direction;
100
+ /**
101
+ * Internal setting. Stores the index of the Scroller instance.
102
+ * @type {number}
103
+ */
104
+ instanceIndex: number;
105
+ /**
106
+ * Internal setting. Stores the Workflow initialization delay based on initDelay and initWindowDelay settings.
107
+ * @type {number}
108
+ */
109
+ initializeDelay: number;
110
+ /**
111
+ * Internal setting. Stores the viewport based on viewportElement setting (which can be element or function).
112
+ * @type {HTMLElement|null}
113
+ */
114
+ viewport: HTMLElement | null;
115
+ constructor(settings: ISettings<Data> | undefined, devSettings: IDevSettings | undefined, instanceIndex: number);
116
+ parseInput(input: ISettings<Data> | IDevSettings | undefined, props: ICommonProps<PropertyKey>): void;
117
+ getInitializeDelay(): number;
118
+ getViewport(): HTMLElement | null;
119
+ }
@@ -1,9 +1,9 @@
1
- export declare class ClipModel {
2
- doClip: boolean;
3
- callCount: number;
4
- forceForward: boolean;
5
- forceBackward: boolean;
6
- get force(): boolean;
7
- constructor();
8
- reset(force?: boolean): void;
9
- }
1
+ export declare class ClipModel {
2
+ doClip: boolean;
3
+ callCount: number;
4
+ forceForward: boolean;
5
+ forceBackward: boolean;
6
+ get force(): boolean;
7
+ constructor();
8
+ reset(force?: boolean): void;
9
+ }
@@ -1,29 +1,29 @@
1
- import { ProcessName } from '../../interfaces/index';
2
- import { Reactive } from '../reactive';
3
- declare class InnerLoopModel {
4
- total: number;
5
- count: number;
6
- isInitial: boolean;
7
- busy: Reactive<boolean>;
8
- get first(): boolean;
9
- constructor(total: number);
10
- done(): void;
11
- start(): void;
12
- dispose(): void;
13
- }
14
- export declare class WorkflowCycleModel {
15
- instanceIndex: number;
16
- count: number;
17
- isInitial: boolean;
18
- initiator: ProcessName;
19
- innerLoop: InnerLoopModel;
20
- interrupter: ProcessName | null;
21
- busy: Reactive<boolean>;
22
- get loopId(): string;
23
- get loopIdNext(): string;
24
- constructor(instanceIndex: number, cycle?: WorkflowCycleModel);
25
- start(isInitial: boolean, initiator: ProcessName): void;
26
- end(count: number): void;
27
- dispose(forever?: boolean): void;
28
- }
29
- export {};
1
+ import { ProcessName } from '../../interfaces/index';
2
+ import { Reactive } from '../reactive';
3
+ declare class InnerLoopModel {
4
+ total: number;
5
+ count: number;
6
+ isInitial: boolean;
7
+ busy: Reactive<boolean>;
8
+ get first(): boolean;
9
+ constructor(total: number);
10
+ done(): void;
11
+ start(): void;
12
+ dispose(): void;
13
+ }
14
+ export declare class WorkflowCycleModel {
15
+ instanceIndex: number;
16
+ count: number;
17
+ isInitial: boolean;
18
+ initiator: ProcessName;
19
+ innerLoop: InnerLoopModel;
20
+ interrupter: ProcessName | null;
21
+ busy: Reactive<boolean>;
22
+ get loopId(): string;
23
+ get loopIdNext(): string;
24
+ constructor(instanceIndex: number, cycle?: WorkflowCycleModel);
25
+ start(isInitial: boolean, initiator: ProcessName): void;
26
+ end(count: number): void;
27
+ dispose(forever?: boolean): void;
28
+ }
29
+ export {};