vscroll 1.6.2 → 1.7.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 (321) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -1
  3. package/dist/bundles/vscroll.esm5.js +5704 -5694
  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 +5193 -5183
  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 +5712 -5703
  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 +300 -300
  18. package/dist/esm2015/classes/adapter/wanted.js +28 -28
  19. package/dist/esm2015/classes/adapter/wanted.js.map +1 -1
  20. package/dist/esm2015/classes/adapter.js +487 -487
  21. package/dist/esm2015/classes/adapter.js.map +1 -1
  22. package/dist/esm2015/classes/buffer/cache.js +246 -246
  23. package/dist/esm2015/classes/buffer/cache.js.map +1 -1
  24. package/dist/esm2015/classes/buffer/checkCall.js +48 -48
  25. package/dist/esm2015/classes/buffer/checkCall.js.map +1 -1
  26. package/dist/esm2015/classes/buffer/defaultSize.js +127 -127
  27. package/dist/esm2015/classes/buffer/defaultSize.js.map +1 -1
  28. package/dist/esm2015/classes/buffer.js +342 -342
  29. package/dist/esm2015/classes/buffer.js.map +1 -1
  30. package/dist/esm2015/classes/datasource.js +23 -24
  31. package/dist/esm2015/classes/datasource.js.map +1 -1
  32. package/dist/esm2015/classes/domRoutines.js +160 -160
  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/paddings.js.map +1 -1
  40. package/dist/esm2015/classes/reactive.js +54 -54
  41. package/dist/esm2015/classes/reactive.js.map +1 -1
  42. package/dist/esm2015/classes/settings.js +39 -39
  43. package/dist/esm2015/classes/settings.js.map +1 -1
  44. package/dist/esm2015/classes/state/clip.js +16 -16
  45. package/dist/esm2015/classes/state/clip.js.map +1 -1
  46. package/dist/esm2015/classes/state/cycle.js +60 -60
  47. package/dist/esm2015/classes/state/cycle.js.map +1 -1
  48. package/dist/esm2015/classes/state/fetch.js +122 -122
  49. package/dist/esm2015/classes/state/fetch.js.map +1 -1
  50. package/dist/esm2015/classes/state/render.js +14 -14
  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 +62 -62
  54. package/dist/esm2015/classes/state.js.map +1 -1
  55. package/dist/esm2015/classes/viewport.js +72 -72
  56. package/dist/esm2015/classes/viewport.js.map +1 -1
  57. package/dist/esm2015/index.js +9 -9
  58. package/dist/esm2015/inputs/adapter.js +242 -232
  59. package/dist/esm2015/inputs/adapter.js.map +1 -1
  60. package/dist/esm2015/inputs/common.js +11 -11
  61. package/dist/esm2015/inputs/datasource.js +20 -20
  62. package/dist/esm2015/inputs/index.js +7 -7
  63. package/dist/esm2015/inputs/settings.js +146 -146
  64. package/dist/esm2015/inputs/validation.js +371 -374
  65. package/dist/esm2015/inputs/validation.js.map +1 -1
  66. package/dist/esm2015/inputs/workflow.js +30 -30
  67. package/dist/esm2015/interfaces/adapter.js +1 -1
  68. package/dist/esm2015/interfaces/adapter.js.map +1 -1
  69. package/dist/esm2015/interfaces/datasource.js +1 -1
  70. package/dist/esm2015/interfaces/index.js +1 -1
  71. package/dist/esm2015/interfaces/item.js +1 -1
  72. package/dist/esm2015/interfaces/process.js +1 -1
  73. package/dist/esm2015/interfaces/process.js.map +1 -1
  74. package/dist/esm2015/interfaces/routines.js +1 -1
  75. package/dist/esm2015/interfaces/settings.js +1 -1
  76. package/dist/esm2015/interfaces/state.js +1 -1
  77. package/dist/esm2015/interfaces/validation.js +1 -1
  78. package/dist/esm2015/interfaces/workflow.js +1 -1
  79. package/dist/esm2015/processes/adapter/append.js +36 -35
  80. package/dist/esm2015/processes/adapter/append.js.map +1 -1
  81. package/dist/esm2015/processes/adapter/check.js +32 -32
  82. package/dist/esm2015/processes/adapter/check.js.map +1 -1
  83. package/dist/esm2015/processes/adapter/clip.js +12 -12
  84. package/dist/esm2015/processes/adapter/fix.js +77 -77
  85. package/dist/esm2015/processes/adapter/fix.js.map +1 -1
  86. package/dist/esm2015/processes/adapter/insert.js +73 -73
  87. package/dist/esm2015/processes/adapter/insert.js.map +1 -1
  88. package/dist/esm2015/processes/adapter/pause.js +22 -22
  89. package/dist/esm2015/processes/adapter/pause.js.map +1 -1
  90. package/dist/esm2015/processes/adapter/reload.js +19 -19
  91. package/dist/esm2015/processes/adapter/reload.js.map +1 -1
  92. package/dist/esm2015/processes/adapter/remove.js +102 -102
  93. package/dist/esm2015/processes/adapter/remove.js.map +1 -1
  94. package/dist/esm2015/processes/adapter/replace.js +39 -39
  95. package/dist/esm2015/processes/adapter/replace.js.map +1 -1
  96. package/dist/esm2015/processes/adapter/reset.js +35 -35
  97. package/dist/esm2015/processes/adapter/reset.js.map +1 -1
  98. package/dist/esm2015/processes/adapter/update.js +43 -43
  99. package/dist/esm2015/processes/adapter/update.js.map +1 -1
  100. package/dist/esm2015/processes/adjust.js +141 -141
  101. package/dist/esm2015/processes/adjust.js.map +1 -1
  102. package/dist/esm2015/processes/clip.js +49 -49
  103. package/dist/esm2015/processes/clip.js.map +1 -1
  104. package/dist/esm2015/processes/end.js +52 -52
  105. package/dist/esm2015/processes/end.js.map +1 -1
  106. package/dist/esm2015/processes/fetch.js +91 -91
  107. package/dist/esm2015/processes/fetch.js.map +1 -1
  108. package/dist/esm2015/processes/index.js +24 -24
  109. package/dist/esm2015/processes/init.js +14 -14
  110. package/dist/esm2015/processes/misc/base.js +30 -30
  111. package/dist/esm2015/processes/misc/base.js.map +1 -1
  112. package/dist/esm2015/processes/misc/enums.js +36 -36
  113. package/dist/esm2015/processes/misc/index.js +2 -2
  114. package/dist/esm2015/processes/postFetch.js +65 -65
  115. package/dist/esm2015/processes/postFetch.js.map +1 -1
  116. package/dist/esm2015/processes/preClip.js +85 -85
  117. package/dist/esm2015/processes/preClip.js.map +1 -1
  118. package/dist/esm2015/processes/preFetch.js +240 -240
  119. package/dist/esm2015/processes/preFetch.js.map +1 -1
  120. package/dist/esm2015/processes/render.js +54 -54
  121. package/dist/esm2015/processes/render.js.map +1 -1
  122. package/dist/esm2015/processes/scroll.js +97 -97
  123. package/dist/esm2015/processes/scroll.js.map +1 -1
  124. package/dist/esm2015/processes/start.js +11 -11
  125. package/dist/esm2015/scroller.js +86 -86
  126. package/dist/esm2015/scroller.js.map +1 -1
  127. package/dist/esm2015/version.js +4 -4
  128. package/dist/esm2015/version.js.map +1 -1
  129. package/dist/esm2015/workflow-transducer.js +218 -218
  130. package/dist/esm2015/workflow-transducer.js.map +1 -1
  131. package/dist/esm2015/workflow.js +174 -174
  132. package/dist/esm2015/workflow.js.map +1 -1
  133. package/dist/esm5/classes/adapter/context.js +50 -50
  134. package/dist/esm5/classes/adapter/context.js.map +1 -1
  135. package/dist/esm5/classes/adapter/props.js +300 -300
  136. package/dist/esm5/classes/adapter/wanted.js +29 -29
  137. package/dist/esm5/classes/adapter/wanted.js.map +1 -1
  138. package/dist/esm5/classes/adapter.js +535 -535
  139. package/dist/esm5/classes/adapter.js.map +1 -1
  140. package/dist/esm5/classes/buffer/cache.js +260 -260
  141. package/dist/esm5/classes/buffer/cache.js.map +1 -1
  142. package/dist/esm5/classes/buffer/checkCall.js +56 -56
  143. package/dist/esm5/classes/buffer/checkCall.js.map +1 -1
  144. package/dist/esm5/classes/buffer/defaultSize.js +145 -145
  145. package/dist/esm5/classes/buffer/defaultSize.js.map +1 -1
  146. package/dist/esm5/classes/buffer.js +409 -409
  147. package/dist/esm5/classes/buffer.js.map +1 -1
  148. package/dist/esm5/classes/datasource.js +30 -31
  149. package/dist/esm5/classes/datasource.js.map +1 -1
  150. package/dist/esm5/classes/domRoutines.js +165 -165
  151. package/dist/esm5/classes/domRoutines.js.map +1 -1
  152. package/dist/esm5/classes/item.js +76 -76
  153. package/dist/esm5/classes/item.js.map +1 -1
  154. package/dist/esm5/classes/logger.js +210 -210
  155. package/dist/esm5/classes/logger.js.map +1 -1
  156. package/dist/esm5/classes/paddings.js +80 -80
  157. package/dist/esm5/classes/paddings.js.map +1 -1
  158. package/dist/esm5/classes/reactive.js +69 -69
  159. package/dist/esm5/classes/reactive.js.map +1 -1
  160. package/dist/esm5/classes/settings.js +47 -47
  161. package/dist/esm5/classes/settings.js.map +1 -1
  162. package/dist/esm5/classes/state/clip.js +22 -22
  163. package/dist/esm5/classes/state/clip.js.map +1 -1
  164. package/dist/esm5/classes/state/cycle.js +75 -75
  165. package/dist/esm5/classes/state/cycle.js.map +1 -1
  166. package/dist/esm5/classes/state/fetch.js +148 -148
  167. package/dist/esm5/classes/state/fetch.js.map +1 -1
  168. package/dist/esm5/classes/state/render.js +20 -20
  169. package/dist/esm5/classes/state/scroll.js +32 -32
  170. package/dist/esm5/classes/state/scroll.js.map +1 -1
  171. package/dist/esm5/classes/state.js +69 -69
  172. package/dist/esm5/classes/state.js.map +1 -1
  173. package/dist/esm5/classes/viewport.js +79 -79
  174. package/dist/esm5/classes/viewport.js.map +1 -1
  175. package/dist/esm5/index.js +9 -9
  176. package/dist/esm5/inputs/adapter.js +243 -233
  177. package/dist/esm5/inputs/adapter.js.map +1 -1
  178. package/dist/esm5/inputs/common.js +11 -11
  179. package/dist/esm5/inputs/datasource.js +21 -21
  180. package/dist/esm5/inputs/index.js +7 -7
  181. package/dist/esm5/inputs/settings.js +147 -147
  182. package/dist/esm5/inputs/validation.js +393 -396
  183. package/dist/esm5/inputs/validation.js.map +1 -1
  184. package/dist/esm5/inputs/workflow.js +31 -31
  185. package/dist/esm5/interfaces/adapter.js +1 -1
  186. package/dist/esm5/interfaces/adapter.js.map +1 -1
  187. package/dist/esm5/interfaces/datasource.js +1 -1
  188. package/dist/esm5/interfaces/index.js +1 -1
  189. package/dist/esm5/interfaces/item.js +1 -1
  190. package/dist/esm5/interfaces/process.js +1 -1
  191. package/dist/esm5/interfaces/process.js.map +1 -1
  192. package/dist/esm5/interfaces/routines.js +1 -1
  193. package/dist/esm5/interfaces/settings.js +1 -1
  194. package/dist/esm5/interfaces/state.js +1 -1
  195. package/dist/esm5/interfaces/validation.js +1 -1
  196. package/dist/esm5/interfaces/workflow.js +1 -1
  197. package/dist/esm5/processes/adapter/append.js +44 -43
  198. package/dist/esm5/processes/adapter/append.js.map +1 -1
  199. package/dist/esm5/processes/adapter/check.js +39 -39
  200. package/dist/esm5/processes/adapter/check.js.map +1 -1
  201. package/dist/esm5/processes/adapter/clip.js +19 -19
  202. package/dist/esm5/processes/adapter/fix.js +89 -89
  203. package/dist/esm5/processes/adapter/fix.js.map +1 -1
  204. package/dist/esm5/processes/adapter/insert.js +81 -81
  205. package/dist/esm5/processes/adapter/insert.js.map +1 -1
  206. package/dist/esm5/processes/adapter/pause.js +29 -29
  207. package/dist/esm5/processes/adapter/pause.js.map +1 -1
  208. package/dist/esm5/processes/adapter/reload.js +26 -26
  209. package/dist/esm5/processes/adapter/reload.js.map +1 -1
  210. package/dist/esm5/processes/adapter/remove.js +115 -115
  211. package/dist/esm5/processes/adapter/remove.js.map +1 -1
  212. package/dist/esm5/processes/adapter/replace.js +47 -47
  213. package/dist/esm5/processes/adapter/replace.js.map +1 -1
  214. package/dist/esm5/processes/adapter/reset.js +42 -42
  215. package/dist/esm5/processes/adapter/reset.js.map +1 -1
  216. package/dist/esm5/processes/adapter/update.js +59 -59
  217. package/dist/esm5/processes/adapter/update.js.map +1 -1
  218. package/dist/esm5/processes/adjust.js +152 -152
  219. package/dist/esm5/processes/adjust.js.map +1 -1
  220. package/dist/esm5/processes/clip.js +60 -60
  221. package/dist/esm5/processes/clip.js.map +1 -1
  222. package/dist/esm5/processes/end.js +63 -63
  223. package/dist/esm5/processes/end.js.map +1 -1
  224. package/dist/esm5/processes/fetch.js +102 -102
  225. package/dist/esm5/processes/fetch.js.map +1 -1
  226. package/dist/esm5/processes/index.js +24 -24
  227. package/dist/esm5/processes/init.js +21 -21
  228. package/dist/esm5/processes/misc/base.js +44 -44
  229. package/dist/esm5/processes/misc/base.js.map +1 -1
  230. package/dist/esm5/processes/misc/enums.js +36 -36
  231. package/dist/esm5/processes/misc/index.js +2 -2
  232. package/dist/esm5/processes/postFetch.js +74 -74
  233. package/dist/esm5/processes/postFetch.js.map +1 -1
  234. package/dist/esm5/processes/preClip.js +94 -94
  235. package/dist/esm5/processes/preClip.js.map +1 -1
  236. package/dist/esm5/processes/preFetch.js +247 -247
  237. package/dist/esm5/processes/preFetch.js.map +1 -1
  238. package/dist/esm5/processes/render.js +63 -63
  239. package/dist/esm5/processes/render.js.map +1 -1
  240. package/dist/esm5/processes/scroll.js +107 -107
  241. package/dist/esm5/processes/scroll.js.map +1 -1
  242. package/dist/esm5/processes/start.js +18 -18
  243. package/dist/esm5/scroller.js +100 -100
  244. package/dist/esm5/scroller.js.map +1 -1
  245. package/dist/esm5/version.js +4 -4
  246. package/dist/esm5/version.js.map +1 -1
  247. package/dist/esm5/workflow-transducer.js +220 -220
  248. package/dist/esm5/workflow-transducer.js.map +1 -1
  249. package/dist/esm5/workflow.js +198 -198
  250. package/dist/esm5/workflow.js.map +1 -1
  251. package/dist/typings/classes/adapter/context.d.ts +4 -4
  252. package/dist/typings/classes/adapter/props.d.ts +52 -52
  253. package/dist/typings/classes/adapter/wanted.d.ts +14 -14
  254. package/dist/typings/classes/adapter.d.ts +79 -79
  255. package/dist/typings/classes/buffer/cache.d.ts +95 -95
  256. package/dist/typings/classes/buffer/checkCall.d.ts +12 -12
  257. package/dist/typings/classes/buffer/defaultSize.d.ts +32 -32
  258. package/dist/typings/classes/buffer.d.ts +64 -64
  259. package/dist/typings/classes/datasource.d.ts +11 -11
  260. package/dist/typings/classes/domRoutines.d.ts +36 -36
  261. package/dist/typings/classes/item.d.ts +28 -28
  262. package/dist/typings/classes/logger.d.ts +28 -28
  263. package/dist/typings/classes/paddings.d.ts +22 -22
  264. package/dist/typings/classes/reactive.d.ts +21 -21
  265. package/dist/typings/classes/settings.d.ts +119 -119
  266. package/dist/typings/classes/state/clip.d.ts +9 -9
  267. package/dist/typings/classes/state/cycle.d.ts +29 -29
  268. package/dist/typings/classes/state/fetch.d.ts +62 -62
  269. package/dist/typings/classes/state/render.d.ts +9 -9
  270. package/dist/typings/classes/state/scroll.d.ts +16 -16
  271. package/dist/typings/classes/state.d.ts +29 -29
  272. package/dist/typings/classes/viewport.d.ts +32 -32
  273. package/dist/typings/index.d.ts +10 -10
  274. package/dist/typings/inputs/adapter.d.ts +5 -5
  275. package/dist/typings/inputs/common.d.ts +9 -9
  276. package/dist/typings/inputs/datasource.d.ts +7 -7
  277. package/dist/typings/inputs/index.d.ts +7 -7
  278. package/dist/typings/inputs/settings.d.ts +41 -41
  279. package/dist/typings/inputs/validation.d.ts +82 -83
  280. package/dist/typings/inputs/workflow.d.ts +9 -9
  281. package/dist/typings/interfaces/adapter.d.ts +164 -161
  282. package/dist/typings/interfaces/datasource.d.ts +28 -28
  283. package/dist/typings/interfaces/index.d.ts +10 -10
  284. package/dist/typings/interfaces/item.d.ts +8 -8
  285. package/dist/typings/interfaces/process.d.ts +35 -35
  286. package/dist/typings/interfaces/routines.d.ts +166 -166
  287. package/dist/typings/interfaces/settings.d.ts +31 -31
  288. package/dist/typings/interfaces/state.d.ts +24 -24
  289. package/dist/typings/interfaces/validation.d.ts +33 -33
  290. package/dist/typings/interfaces/workflow.d.ts +53 -53
  291. package/dist/typings/processes/adapter/append.d.ts +14 -14
  292. package/dist/typings/processes/adapter/check.d.ts +6 -6
  293. package/dist/typings/processes/adapter/clip.d.ts +7 -7
  294. package/dist/typings/processes/adapter/fix.d.ts +13 -13
  295. package/dist/typings/processes/adapter/insert.d.ts +11 -11
  296. package/dist/typings/processes/adapter/pause.d.ts +8 -8
  297. package/dist/typings/processes/adapter/reload.d.ts +6 -6
  298. package/dist/typings/processes/adapter/remove.d.ts +11 -11
  299. package/dist/typings/processes/adapter/replace.d.ts +8 -8
  300. package/dist/typings/processes/adapter/reset.d.ts +7 -7
  301. package/dist/typings/processes/adapter/update.d.ts +8 -8
  302. package/dist/typings/processes/adjust.d.ts +10 -10
  303. package/dist/typings/processes/clip.d.ts +7 -7
  304. package/dist/typings/processes/end.d.ts +10 -10
  305. package/dist/typings/processes/fetch.d.ts +18 -18
  306. package/dist/typings/processes/index.d.ts +24 -24
  307. package/dist/typings/processes/init.d.ts +7 -7
  308. package/dist/typings/processes/misc/base.d.ts +4 -4
  309. package/dist/typings/processes/misc/enums.d.ts +33 -33
  310. package/dist/typings/processes/misc/index.d.ts +2 -2
  311. package/dist/typings/processes/postFetch.d.ts +8 -8
  312. package/dist/typings/processes/preClip.d.ts +12 -12
  313. package/dist/typings/processes/preFetch.d.ts +17 -17
  314. package/dist/typings/processes/render.d.ts +9 -9
  315. package/dist/typings/processes/scroll.d.ts +13 -13
  316. package/dist/typings/processes/start.d.ts +6 -6
  317. package/dist/typings/scroller.d.ts +26 -26
  318. package/dist/typings/version.d.ts +5 -5
  319. package/dist/typings/workflow-transducer.d.ts +2 -2
  320. package/dist/typings/workflow.d.ts +29 -29
  321. package/package.json +19 -18
@@ -1,9 +1,9 @@
1
- import { ICommonProps } from '../interfaces/index';
2
- export declare enum WorkflowProps {
3
- consumer = "consumer",
4
- element = "element",
5
- datasource = "datasource",
6
- run = "run",
7
- Routines = "Routines"
8
- }
9
- export declare const WORKFLOW: ICommonProps<WorkflowProps>;
1
+ import { ICommonProps } from '../interfaces/index';
2
+ export declare enum WorkflowProps {
3
+ consumer = "consumer",
4
+ element = "element",
5
+ datasource = "datasource",
6
+ run = "run",
7
+ Routines = "Routines"
8
+ }
9
+ export declare const WORKFLOW: ICommonProps<WorkflowProps>;
@@ -1,161 +1,164 @@
1
- import { AdapterPropName, AdapterPropType } from '../classes/adapter/props';
2
- import { Reactive } from '../classes/reactive';
3
- import { IDatasourceOptional } from './datasource';
4
- import { IValidatedData } from './validation';
5
- export interface IReactivePropConfig {
6
- source: unknown;
7
- emit: (source: unknown, value: unknown) => void;
8
- }
9
- interface IReactivePropStore extends IReactivePropConfig {
10
- default: Reactive<unknown>;
11
- }
12
- export type IReactivePropsConfig = {
13
- [key in AdapterPropName]?: IReactivePropConfig;
14
- };
15
- export type IReactivePropsStore = {
16
- [key in AdapterPropName]?: IReactivePropStore;
17
- };
18
- export interface IWanted {
19
- box: {
20
- [key: string]: boolean;
21
- };
22
- block: boolean;
23
- }
24
- export interface IAdapterConfig {
25
- mock: boolean;
26
- reactive?: IReactivePropsConfig;
27
- }
28
- export interface IAdapterProp {
29
- name: AdapterPropName;
30
- type: AdapterPropType;
31
- value: unknown;
32
- reactive?: AdapterPropName;
33
- wanted?: boolean;
34
- onDemand?: boolean;
35
- permanent?: boolean;
36
- allowedWhenPaused?: boolean;
37
- }
38
- export interface ItemAdapter<Data = unknown> {
39
- $index: number;
40
- data: Data;
41
- element?: HTMLElement;
42
- }
43
- export type ItemsPredicate<T = unknown> = (item: ItemAdapter<T>) => boolean;
44
- export type ItemsUpdater<T = unknown> = (item: ItemAdapter<T>, update: () => void) => void;
45
- export type ItemsProcessor<T = unknown> = (items: ItemAdapter<T>[]) => void;
46
- export type BufferUpdater<T = unknown> = (item: ItemAdapter<T>) => unknown;
47
- export interface IPackage {
48
- name: string;
49
- version: string;
50
- }
51
- export interface IPackages {
52
- core: IPackage;
53
- consumer: IPackage;
54
- }
55
- export interface IBufferInfo {
56
- firstIndex: number;
57
- lastIndex: number;
58
- minIndex: number;
59
- maxIndex: number;
60
- absMinIndex: number;
61
- absMaxIndex: number;
62
- defaultSize: number;
63
- }
64
- export interface IAdapterInput<T> {
65
- data: IValidatedData;
66
- params?: T;
67
- }
68
- export interface AdapterAppendOptions<Data = unknown> {
69
- items: Data[];
70
- eof?: boolean;
71
- decrease?: boolean;
72
- }
73
- export interface AdapterPrependOptions<Data = unknown> {
74
- items: Data[];
75
- bof?: boolean;
76
- increase?: boolean;
77
- }
78
- export interface AdapterRemoveOptions<Data = unknown> {
79
- predicate?: ItemsPredicate<Data>;
80
- indexes?: number[];
81
- increase?: boolean;
82
- }
83
- export interface AdapterClipOptions {
84
- forwardOnly?: boolean;
85
- backwardOnly?: boolean;
86
- }
87
- export interface AdapterInsertOptions<Data = unknown> {
88
- items: Data[];
89
- before?: ItemsPredicate<Data>;
90
- after?: ItemsPredicate<Data>;
91
- beforeIndex?: number;
92
- afterIndex?: number;
93
- decrease?: boolean;
94
- }
95
- export interface AdapterReplaceOptions<Data = unknown> {
96
- items: Data[];
97
- predicate: ItemsPredicate<Data>;
98
- fixRight?: boolean;
99
- }
100
- export interface AdapterUpdateOptions<Data = unknown> {
101
- predicate: BufferUpdater<Data>;
102
- fixRight?: boolean;
103
- }
104
- export interface AdapterFixOptions<Data = unknown> {
105
- scrollPosition?: number;
106
- minIndex?: number;
107
- maxIndex?: number;
108
- updater?: ItemsUpdater<Data>;
109
- scrollToItem?: ItemsPredicate<Data>;
110
- scrollToItemOpt?: boolean | ScrollIntoViewOptions;
111
- }
112
- export interface AdapterMethodResult {
113
- success: boolean;
114
- immediate: boolean;
115
- details: string | null;
116
- }
117
- type MethodResult = Promise<AdapterMethodResult>;
118
- export interface IAdapter<Data = unknown> {
119
- readonly id: number;
120
- readonly mock: boolean;
121
- readonly augmented: boolean;
122
- readonly version: string;
123
- readonly init: boolean;
124
- readonly init$: Reactive<boolean>;
125
- readonly packageInfo: IPackages;
126
- readonly itemsCount: number;
127
- readonly bufferInfo: IBufferInfo;
128
- readonly isLoading: boolean;
129
- readonly isLoading$: Reactive<boolean>;
130
- readonly loopPending: boolean;
131
- readonly loopPending$: Reactive<boolean>;
132
- readonly firstVisible: ItemAdapter<Data>;
133
- readonly firstVisible$: Reactive<ItemAdapter<Data>>;
134
- readonly lastVisible: ItemAdapter<Data>;
135
- readonly lastVisible$: Reactive<ItemAdapter<Data>>;
136
- readonly bof: boolean;
137
- readonly bof$: Reactive<boolean>;
138
- readonly eof: boolean;
139
- readonly eof$: Reactive<boolean>;
140
- readonly paused: boolean;
141
- readonly paused$: Reactive<boolean>;
142
- reset(datasource?: IDatasourceOptional): MethodResult;
143
- reload(reloadIndex?: number | string): MethodResult;
144
- append(options: AdapterAppendOptions<Data>): MethodResult;
145
- append(items: Data | Data[], eof?: boolean): MethodResult;
146
- prepend(options: AdapterPrependOptions<Data>): MethodResult;
147
- prepend(items: Data | Data[], bof?: boolean): MethodResult;
148
- check(): MethodResult;
149
- remove(args: AdapterRemoveOptions<Data>): MethodResult;
150
- remove(args: ItemsPredicate<Data>): MethodResult;
151
- clip(options?: AdapterClipOptions): MethodResult;
152
- insert(options: AdapterInsertOptions<Data>): MethodResult;
153
- replace(options: AdapterReplaceOptions<Data>): MethodResult;
154
- update(options: AdapterUpdateOptions<Data>): MethodResult;
155
- pause(): MethodResult;
156
- resume(): MethodResult;
157
- fix(options: AdapterFixOptions<Data>): MethodResult;
158
- relax(callback?: () => void): MethodResult;
159
- showLog(): void;
160
- }
161
- export {};
1
+ import { AdapterPropName, AdapterPropType } from '../classes/adapter/props';
2
+ import { Reactive } from '../classes/reactive';
3
+ import { IDatasourceOptional } from './datasource';
4
+ import { IValidatedData } from './validation';
5
+ export interface IReactivePropConfig {
6
+ source: unknown;
7
+ emit: (source: unknown, value: unknown) => void;
8
+ }
9
+ interface IReactivePropStore extends IReactivePropConfig {
10
+ default: Reactive<unknown>;
11
+ }
12
+ export type IReactivePropsConfig = {
13
+ [key in AdapterPropName]?: IReactivePropConfig;
14
+ };
15
+ export type IReactivePropsStore = {
16
+ [key in AdapterPropName]?: IReactivePropStore;
17
+ };
18
+ export interface IWanted {
19
+ box: {
20
+ [key: string]: boolean;
21
+ };
22
+ block: boolean;
23
+ }
24
+ export interface IAdapterConfig {
25
+ mock: boolean;
26
+ reactive?: IReactivePropsConfig;
27
+ }
28
+ export interface IAdapterProp {
29
+ name: AdapterPropName;
30
+ type: AdapterPropType;
31
+ value: unknown;
32
+ reactive?: AdapterPropName;
33
+ wanted?: boolean;
34
+ onDemand?: boolean;
35
+ permanent?: boolean;
36
+ allowedWhenPaused?: boolean;
37
+ }
38
+ export interface ItemAdapter<Data = unknown> {
39
+ $index: number;
40
+ data: Data;
41
+ element?: HTMLElement;
42
+ }
43
+ export type ItemsPredicate<T = unknown> = (item: ItemAdapter<T>) => boolean;
44
+ export type ItemsUpdater<T = unknown> = (item: ItemAdapter<T>, update: () => void) => void;
45
+ export type ItemsProcessor<T = unknown> = (items: ItemAdapter<T>[]) => void;
46
+ export type BufferUpdater<T = unknown> = (item: ItemAdapter<T>) => unknown;
47
+ export interface IPackage {
48
+ name: string;
49
+ version: string;
50
+ }
51
+ export interface IPackages {
52
+ core: IPackage;
53
+ consumer: IPackage;
54
+ }
55
+ export interface IBufferInfo {
56
+ firstIndex: number;
57
+ lastIndex: number;
58
+ minIndex: number;
59
+ maxIndex: number;
60
+ absMinIndex: number;
61
+ absMaxIndex: number;
62
+ defaultSize: number;
63
+ }
64
+ export interface IAdapterInput<T> {
65
+ data: IValidatedData;
66
+ params?: T;
67
+ }
68
+ export interface AdapterAppendOptions<Data = unknown> {
69
+ items: Data[];
70
+ eof?: boolean;
71
+ decrease?: boolean;
72
+ virtualize?: boolean;
73
+ }
74
+ export interface AdapterPrependOptions<Data = unknown> {
75
+ items: Data[];
76
+ bof?: boolean;
77
+ increase?: boolean;
78
+ virtualize?: boolean;
79
+ }
80
+ export interface AdapterRemoveOptions<Data = unknown> {
81
+ predicate?: ItemsPredicate<Data>;
82
+ indexes?: number[];
83
+ increase?: boolean;
84
+ }
85
+ export interface AdapterClipOptions {
86
+ forwardOnly?: boolean;
87
+ backwardOnly?: boolean;
88
+ }
89
+ export interface AdapterInsertOptions<Data = unknown> {
90
+ items: Data[];
91
+ before?: ItemsPredicate<Data>;
92
+ after?: ItemsPredicate<Data>;
93
+ beforeIndex?: number;
94
+ afterIndex?: number;
95
+ decrease?: boolean;
96
+ virtualize?: boolean;
97
+ }
98
+ export interface AdapterReplaceOptions<Data = unknown> {
99
+ items: Data[];
100
+ predicate: ItemsPredicate<Data>;
101
+ fixRight?: boolean;
102
+ }
103
+ export interface AdapterUpdateOptions<Data = unknown> {
104
+ predicate: BufferUpdater<Data>;
105
+ fixRight?: boolean;
106
+ }
107
+ export interface AdapterFixOptions<Data = unknown> {
108
+ scrollPosition?: number;
109
+ minIndex?: number;
110
+ maxIndex?: number;
111
+ updater?: ItemsUpdater<Data>;
112
+ scrollToItem?: ItemsPredicate<Data>;
113
+ scrollToItemOpt?: boolean | ScrollIntoViewOptions;
114
+ }
115
+ export interface AdapterMethodResult {
116
+ success: boolean;
117
+ immediate: boolean;
118
+ details: string | null;
119
+ }
120
+ type MethodResult = Promise<AdapterMethodResult>;
121
+ export interface IAdapter<Data = unknown> {
122
+ readonly id: number;
123
+ readonly mock: boolean;
124
+ readonly augmented: boolean;
125
+ readonly version: string;
126
+ readonly init: boolean;
127
+ readonly init$: Reactive<boolean>;
128
+ readonly packageInfo: IPackages;
129
+ readonly itemsCount: number;
130
+ readonly bufferInfo: IBufferInfo;
131
+ readonly isLoading: boolean;
132
+ readonly isLoading$: Reactive<boolean>;
133
+ readonly loopPending: boolean;
134
+ readonly loopPending$: Reactive<boolean>;
135
+ readonly firstVisible: ItemAdapter<Data>;
136
+ readonly firstVisible$: Reactive<ItemAdapter<Data>>;
137
+ readonly lastVisible: ItemAdapter<Data>;
138
+ readonly lastVisible$: Reactive<ItemAdapter<Data>>;
139
+ readonly bof: boolean;
140
+ readonly bof$: Reactive<boolean>;
141
+ readonly eof: boolean;
142
+ readonly eof$: Reactive<boolean>;
143
+ readonly paused: boolean;
144
+ readonly paused$: Reactive<boolean>;
145
+ reset(datasource?: IDatasourceOptional): MethodResult;
146
+ reload(reloadIndex?: number | string): MethodResult;
147
+ append(options: AdapterAppendOptions<Data>): MethodResult;
148
+ append(items: Data | Data[], eof?: boolean): MethodResult;
149
+ prepend(options: AdapterPrependOptions<Data>): MethodResult;
150
+ prepend(items: Data | Data[], bof?: boolean): MethodResult;
151
+ check(): MethodResult;
152
+ remove(args: AdapterRemoveOptions<Data>): MethodResult;
153
+ remove(args: ItemsPredicate<Data>): MethodResult;
154
+ clip(options?: AdapterClipOptions): MethodResult;
155
+ insert(options: AdapterInsertOptions<Data>): MethodResult;
156
+ replace(options: AdapterReplaceOptions<Data>): MethodResult;
157
+ update(options: AdapterUpdateOptions<Data>): MethodResult;
158
+ pause(): MethodResult;
159
+ resume(): MethodResult;
160
+ fix(options: AdapterFixOptions<Data>): MethodResult;
161
+ relax(callback?: () => void): MethodResult;
162
+ showLog(): void;
163
+ }
164
+ export {};
@@ -1,28 +1,28 @@
1
- import { Settings, DevSettings } from './settings';
2
- import { IAdapter } from './adapter';
3
- type SuccessFn<T = unknown> = (data: T[]) => void;
4
- type ErrorFn = (error: unknown) => void;
5
- export interface ObservableLike<T = unknown> {
6
- subscribe(next: SuccessFn<T>, error: ErrorFn, complete: () => void): {
7
- unsubscribe: () => void;
8
- };
9
- }
10
- type DSGetCallback<T> = (index: number, count: number, success: SuccessFn<T>, fail?: ErrorFn) => void;
11
- type DSGetObservable<T> = (index: number, count: number) => ObservableLike<T[]>;
12
- type DSGetPromise<T> = (index: number, count: number) => PromiseLike<T[]>;
13
- export type DatasourceGet<T> = DSGetCallback<T> | DSGetObservable<T> | DSGetPromise<T>;
14
- export interface IDatasourceParams<T = unknown> {
15
- get: DatasourceGet<T>;
16
- settings?: Settings<T>;
17
- devSettings?: DevSettings;
18
- }
19
- export interface IDatasourceOptional<T = unknown> extends Omit<IDatasourceParams<T>, 'get'> {
20
- get?: DatasourceGet<T>;
21
- }
22
- export interface IDatasource<T = unknown> extends IDatasourceParams<T> {
23
- adapter?: IAdapter<T>;
24
- }
25
- export interface IDatasourceConstructed<T = unknown> extends IDatasource<T> {
26
- adapter: IAdapter<T>;
27
- }
28
- export {};
1
+ import { Settings, DevSettings } from './settings';
2
+ import { IAdapter } from './adapter';
3
+ type SuccessFn<T = unknown> = (data: T[]) => void;
4
+ type ErrorFn = (error: unknown) => void;
5
+ export interface ObservableLike<T = unknown> {
6
+ subscribe(next: SuccessFn<T>, error: ErrorFn, complete: () => void): {
7
+ unsubscribe: () => void;
8
+ };
9
+ }
10
+ type DSGetCallback<T> = (index: number, count: number, success: SuccessFn<T>, fail?: ErrorFn) => void;
11
+ type DSGetObservable<T> = (index: number, count: number) => ObservableLike<T[]>;
12
+ type DSGetPromise<T> = (index: number, count: number) => PromiseLike<T[]>;
13
+ export type DatasourceGet<T> = DSGetCallback<T> | DSGetObservable<T> | DSGetPromise<T>;
14
+ export interface IDatasourceParams<T = unknown> {
15
+ get: DatasourceGet<T>;
16
+ settings?: Settings<T>;
17
+ devSettings?: DevSettings;
18
+ }
19
+ export interface IDatasourceOptional<T = unknown> extends Omit<IDatasourceParams<T>, 'get'> {
20
+ get?: DatasourceGet<T>;
21
+ }
22
+ export interface IDatasource<T = unknown> extends IDatasourceParams<T> {
23
+ adapter?: IAdapter<T>;
24
+ }
25
+ export interface IDatasourceConstructed<T = unknown> extends IDatasource<T> {
26
+ adapter: IAdapter<T>;
27
+ }
28
+ export {};
@@ -1,10 +1,10 @@
1
- import { ObservableLike, DatasourceGet, IDatasourceParams, IDatasourceOptional, IDatasource, IDatasourceConstructed } from './datasource';
2
- import { OnDataChanged, WorkflowParams, ScrollerWorkflow, ScrollerParams, WorkflowGetter, WorkflowError, InterruptParams, StateMachineMethods, StateMachineParams } from './workflow';
3
- import { Item } from './item';
4
- import { IReactivePropConfig, IReactivePropsConfig, IReactivePropsStore, IWanted, IAdapterConfig, IAdapterProp, ItemAdapter, ItemsPredicate, ItemsUpdater, ItemsProcessor, BufferUpdater, IPackage, IPackages, IBufferInfo, IAdapterInput, AdapterAppendOptions, AdapterPrependOptions, AdapterRemoveOptions, AdapterClipOptions, AdapterInsertOptions, AdapterReplaceOptions, AdapterUpdateOptions, AdapterFixOptions, AdapterMethodResult, IAdapter } from './adapter';
5
- import { Settings, DevSettings } from './settings';
6
- import { IRoutines, RoutinesClassType } from './routines';
7
- import { ScrollEventData, State } from './state';
8
- import { ProcessName, ProcessClass, ProcessPayload, ProcessSubject, AdapterProcessMap, IBaseProcess, IBaseAdapterProcess } from './process';
9
- import { ValidatedValue, IValidator, ICommonProp, ICommonProps, IValidatedCommonProps, IValidatedData } from './validation';
10
- export { ObservableLike, DatasourceGet, IDatasourceParams, IDatasourceOptional, IDatasource, IDatasourceConstructed, OnDataChanged, WorkflowParams, ScrollerWorkflow, ScrollerParams, WorkflowGetter, WorkflowError, InterruptParams, StateMachineMethods, StateMachineParams, Item, IReactivePropConfig, IReactivePropsConfig, IReactivePropsStore, IWanted, IAdapterConfig, IAdapterProp, ItemAdapter, AdapterMethodResult, IAdapter, ItemsPredicate, ItemsUpdater, ItemsProcessor, BufferUpdater, IPackage, IPackages, IBufferInfo, IAdapterInput, AdapterAppendOptions, AdapterPrependOptions, AdapterRemoveOptions, AdapterClipOptions, AdapterInsertOptions, AdapterReplaceOptions, AdapterUpdateOptions, AdapterFixOptions, Settings, DevSettings, IRoutines, RoutinesClassType, ScrollEventData, State, ProcessName, ProcessClass, ProcessPayload, ProcessSubject, AdapterProcessMap, IBaseProcess, IBaseAdapterProcess, ValidatedValue, IValidator, ICommonProp, ICommonProps, IValidatedCommonProps, IValidatedData, };
1
+ import { ObservableLike, DatasourceGet, IDatasourceParams, IDatasourceOptional, IDatasource, IDatasourceConstructed } from './datasource';
2
+ import { OnDataChanged, WorkflowParams, ScrollerWorkflow, ScrollerParams, WorkflowGetter, WorkflowError, InterruptParams, StateMachineMethods, StateMachineParams } from './workflow';
3
+ import { Item } from './item';
4
+ import { IReactivePropConfig, IReactivePropsConfig, IReactivePropsStore, IWanted, IAdapterConfig, IAdapterProp, ItemAdapter, ItemsPredicate, ItemsUpdater, ItemsProcessor, BufferUpdater, IPackage, IPackages, IBufferInfo, IAdapterInput, AdapterAppendOptions, AdapterPrependOptions, AdapterRemoveOptions, AdapterClipOptions, AdapterInsertOptions, AdapterReplaceOptions, AdapterUpdateOptions, AdapterFixOptions, AdapterMethodResult, IAdapter } from './adapter';
5
+ import { Settings, DevSettings } from './settings';
6
+ import { IRoutines, RoutinesClassType } from './routines';
7
+ import { ScrollEventData, State } from './state';
8
+ import { ProcessName, ProcessClass, ProcessPayload, ProcessSubject, AdapterProcessMap, IBaseProcess, IBaseAdapterProcess } from './process';
9
+ import { ValidatedValue, IValidator, ICommonProp, ICommonProps, IValidatedCommonProps, IValidatedData } from './validation';
10
+ export { ObservableLike, DatasourceGet, IDatasourceParams, IDatasourceOptional, IDatasource, IDatasourceConstructed, OnDataChanged, WorkflowParams, ScrollerWorkflow, ScrollerParams, WorkflowGetter, WorkflowError, InterruptParams, StateMachineMethods, StateMachineParams, Item, IReactivePropConfig, IReactivePropsConfig, IReactivePropsStore, IWanted, IAdapterConfig, IAdapterProp, ItemAdapter, AdapterMethodResult, IAdapter, ItemsPredicate, ItemsUpdater, ItemsProcessor, BufferUpdater, IPackage, IPackages, IBufferInfo, IAdapterInput, AdapterAppendOptions, AdapterPrependOptions, AdapterRemoveOptions, AdapterClipOptions, AdapterInsertOptions, AdapterReplaceOptions, AdapterUpdateOptions, AdapterFixOptions, Settings, DevSettings, IRoutines, RoutinesClassType, ScrollEventData, State, ProcessName, ProcessClass, ProcessPayload, ProcessSubject, AdapterProcessMap, IBaseProcess, IBaseAdapterProcess, ValidatedValue, IValidator, ICommonProp, ICommonProps, IValidatedCommonProps, IValidatedData, };
@@ -1,8 +1,8 @@
1
- import { ItemAdapter } from './adapter';
2
- export interface Item<Data = unknown> {
3
- $index: number;
4
- element: HTMLElement;
5
- data: Data;
6
- invisible: boolean;
7
- get: () => ItemAdapter<Data>;
8
- }
1
+ import { ItemAdapter } from './adapter';
2
+ export interface Item<Data = unknown> {
3
+ $index: number;
4
+ element: HTMLElement;
5
+ data: Data;
6
+ invisible: boolean;
7
+ get: () => ItemAdapter<Data>;
8
+ }
@@ -1,35 +1,35 @@
1
- import { Scroller } from '../scroller';
2
- import { CommonProcess, AdapterProcess, ProcessStatus } from '../processes/index';
3
- import { IDatasourceConstructed } from './datasource';
4
- import { IAdapterInput } from './adapter';
5
- export type ProcessName = CommonProcess | AdapterProcess;
6
- export interface ProcessClass {
7
- process: ProcessName;
8
- run: (scroller: Scroller, ...args: any[]) => void;
9
- name: string;
10
- }
11
- export interface ProcessPayload {
12
- process?: ProcessName;
13
- options?: unknown;
14
- event?: Event;
15
- finalize?: boolean;
16
- doClip?: boolean;
17
- doRender?: boolean;
18
- datasource?: IDatasourceConstructed;
19
- error?: unknown;
20
- }
21
- export interface ProcessSubject {
22
- process: ProcessName;
23
- status: ProcessStatus;
24
- payload?: ProcessPayload;
25
- }
26
- export type AdapterProcessMap<T> = {
27
- [key in AdapterProcess]: T;
28
- };
29
- export interface IBaseProcess {
30
- new (): any;
31
- process: ProcessName;
32
- }
33
- export interface IBaseAdapterProcess extends IBaseProcess {
34
- parseInput: <T>(scroller: Scroller, options: T, ignoreErrors?: boolean, process?: AdapterProcess) => IAdapterInput<T>;
35
- }
1
+ import { Scroller } from '../scroller';
2
+ import { CommonProcess, AdapterProcess, ProcessStatus } from '../processes/index';
3
+ import { IDatasourceConstructed } from './datasource';
4
+ import { IAdapterInput } from './adapter';
5
+ export type ProcessName = CommonProcess | AdapterProcess;
6
+ export interface ProcessClass {
7
+ process: ProcessName;
8
+ run: (scroller: Scroller, ...args: any[]) => void;
9
+ name: string;
10
+ }
11
+ export interface ProcessPayload {
12
+ process?: ProcessName;
13
+ options?: unknown;
14
+ event?: Event;
15
+ finalize?: boolean;
16
+ doClip?: boolean;
17
+ doRender?: boolean;
18
+ datasource?: IDatasourceConstructed;
19
+ error?: unknown;
20
+ }
21
+ export interface ProcessSubject {
22
+ process: ProcessName;
23
+ status: ProcessStatus;
24
+ payload?: ProcessPayload;
25
+ }
26
+ export type AdapterProcessMap<T> = {
27
+ [key in AdapterProcess]: T;
28
+ };
29
+ export interface IBaseProcess {
30
+ new (): any;
31
+ process: ProcessName;
32
+ }
33
+ export interface IBaseAdapterProcess extends IBaseProcess {
34
+ parseInput: <T>(scroller: Scroller, options: T, ignoreErrors?: boolean, process?: AdapterProcess) => IAdapterInput<T>;
35
+ }