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,211 +1,211 @@
1
- import { CommonProcess, AdapterProcess, ProcessStatus as Status, Init, Scroll, Reset, Reload, Append, Check, Remove, UserClip, Insert, Replace, Update, Fix, Start, PreFetch, Fetch, PostFetch, Render, PreClip, Clip, Adjust, End, } from './processes/index';
2
- export const runStateMachine = ({ input: { process, status, payload = {} }, methods: { run, interrupt, done, onError } }) => {
3
- if (status === Status.error) {
4
- onError(process, payload);
5
- if (!process.startsWith('adapter')) {
6
- run(End)(payload);
7
- }
8
- return;
9
- }
10
- const { options } = payload;
11
- switch (process) {
12
- case CommonProcess.init:
13
- if (status === Status.start) { // App start
14
- run(Init)(process);
15
- }
16
- if (status === Status.next) {
17
- run(Start)();
18
- }
19
- break;
20
- case CommonProcess.scroll:
21
- if (status === Status.start) {
22
- run(Scroll)(payload);
23
- }
24
- if (status === Status.next) {
25
- run(Init)(process);
26
- }
27
- break;
28
- case AdapterProcess.reset:
29
- case AdapterProcess.reload:
30
- if (status === Status.start) {
31
- if (process === AdapterProcess.reset) {
32
- run(Reset)(options);
33
- }
34
- else {
35
- run(Reload)(options);
36
- }
37
- }
38
- if (status === Status.next) {
39
- interrupt(Object.assign({ process }, payload));
40
- if (payload.finalize) {
41
- run(End)();
42
- }
43
- else {
44
- run(Init)(process);
45
- }
46
- }
47
- break;
48
- case AdapterProcess.append:
49
- case AdapterProcess.prepend:
50
- if (status === Status.start) {
51
- run(Append)({ process, options });
52
- }
53
- if (status === Status.next) {
54
- run(Init)(process);
55
- }
56
- break;
57
- case AdapterProcess.check:
58
- if (status === Status.start) {
59
- run(Check)();
60
- }
61
- if (status === Status.next) {
62
- run(Init)(process);
63
- }
64
- break;
65
- case AdapterProcess.remove:
66
- if (status === Status.start) {
67
- run(Remove)(options);
68
- }
69
- if (status === Status.next) {
70
- run(Init)(process);
71
- }
72
- break;
73
- case AdapterProcess.clip:
74
- if (status === Status.start) {
75
- run(UserClip)(options);
76
- }
77
- if (status === Status.next) {
78
- run(Init)(process);
79
- }
80
- break;
81
- case AdapterProcess.insert:
82
- if (status === Status.start) {
83
- run(Insert)(options);
84
- }
85
- if (status === Status.next) {
86
- run(Init)(process);
87
- }
88
- break;
89
- case AdapterProcess.replace:
90
- if (status === Status.start) {
91
- run(Replace)(options);
92
- }
93
- if (status === Status.next) {
94
- run(Init)(process);
95
- }
96
- break;
97
- case AdapterProcess.update:
98
- if (status === Status.start) {
99
- run(Update)(options);
100
- }
101
- if (status === Status.next) {
102
- run(Init)(process);
103
- }
104
- break;
105
- case AdapterProcess.fix:
106
- if (status === Status.start) {
107
- run(Fix)(options);
108
- }
109
- if (status === Status.next) {
110
- run(Init)(process);
111
- }
112
- break;
113
- case CommonProcess.start:
114
- switch (payload.process) {
115
- case AdapterProcess.append:
116
- case AdapterProcess.insert:
117
- case AdapterProcess.replace:
118
- case AdapterProcess.update:
119
- if (payload.doRender) {
120
- run(Render)();
121
- }
122
- else {
123
- run(Adjust)();
124
- }
125
- break;
126
- case AdapterProcess.check:
127
- run(Render)();
128
- break;
129
- case AdapterProcess.remove:
130
- run(Adjust)();
131
- break;
132
- default:
133
- run(PreFetch)();
134
- }
135
- break;
136
- case CommonProcess.preFetch:
137
- if (status === Status.next) {
138
- switch (payload.process) {
139
- case AdapterProcess.clip:
140
- run(PreClip)();
141
- break;
142
- default:
143
- run(Fetch)();
144
- }
145
- }
146
- if (status === Status.done) {
147
- run(End)();
148
- }
149
- break;
150
- case CommonProcess.fetch:
151
- run(PostFetch)();
152
- break;
153
- case CommonProcess.postFetch:
154
- if (status === Status.next) {
155
- run(Render)();
156
- }
157
- if (status === Status.done) {
158
- run(End)();
159
- }
160
- break;
161
- case CommonProcess.render:
162
- if (status === Status.next) {
163
- switch (payload.process) {
164
- case AdapterProcess.append:
165
- case AdapterProcess.check:
166
- case AdapterProcess.insert:
167
- case AdapterProcess.replace:
168
- case AdapterProcess.update:
169
- run(Adjust)();
170
- break;
171
- default:
172
- run(PreClip)();
173
- }
174
- }
175
- if (status === Status.done) {
176
- run(End)();
177
- }
178
- break;
179
- case CommonProcess.preClip:
180
- if (payload.doClip) {
181
- run(Clip)();
182
- }
183
- else {
184
- run(Adjust)();
185
- }
186
- break;
187
- case CommonProcess.clip:
188
- run(Adjust)();
189
- break;
190
- case CommonProcess.adjust:
191
- run(End)();
192
- break;
193
- case CommonProcess.end:
194
- if (status === Status.next) {
195
- switch (payload.process) {
196
- case AdapterProcess.reset:
197
- case AdapterProcess.reload:
198
- done();
199
- run(Init)(payload.process);
200
- break;
201
- default:
202
- run(Start)();
203
- }
204
- }
205
- if (status === Status.done) {
206
- done();
207
- }
208
- break;
209
- }
210
- };
1
+ import { CommonProcess, AdapterProcess, ProcessStatus as Status, Init, Scroll, Reset, Reload, Append, Check, Remove, UserClip, Insert, Replace, Update, Fix, Start, PreFetch, Fetch, PostFetch, Render, PreClip, Clip, Adjust, End, } from './processes/index';
2
+ export const runStateMachine = ({ input: { process, status, payload = {} }, methods: { run, interrupt, done, onError } }) => {
3
+ if (status === Status.error) {
4
+ onError(process, payload);
5
+ if (!process.startsWith('adapter')) {
6
+ run(End)(payload);
7
+ }
8
+ return;
9
+ }
10
+ const { options } = payload;
11
+ switch (process) {
12
+ case CommonProcess.init:
13
+ if (status === Status.start) { // App start
14
+ run(Init)(process);
15
+ }
16
+ if (status === Status.next) {
17
+ run(Start)();
18
+ }
19
+ break;
20
+ case CommonProcess.scroll:
21
+ if (status === Status.start) {
22
+ run(Scroll)(payload);
23
+ }
24
+ if (status === Status.next) {
25
+ run(Init)(process);
26
+ }
27
+ break;
28
+ case AdapterProcess.reset:
29
+ case AdapterProcess.reload:
30
+ if (status === Status.start) {
31
+ if (process === AdapterProcess.reset) {
32
+ run(Reset)(options);
33
+ }
34
+ else {
35
+ run(Reload)(options);
36
+ }
37
+ }
38
+ if (status === Status.next) {
39
+ interrupt(Object.assign({ process }, payload));
40
+ if (payload.finalize) {
41
+ run(End)();
42
+ }
43
+ else {
44
+ run(Init)(process);
45
+ }
46
+ }
47
+ break;
48
+ case AdapterProcess.append:
49
+ case AdapterProcess.prepend:
50
+ if (status === Status.start) {
51
+ run(Append)({ process, options });
52
+ }
53
+ if (status === Status.next) {
54
+ run(Init)(process);
55
+ }
56
+ break;
57
+ case AdapterProcess.check:
58
+ if (status === Status.start) {
59
+ run(Check)();
60
+ }
61
+ if (status === Status.next) {
62
+ run(Init)(process);
63
+ }
64
+ break;
65
+ case AdapterProcess.remove:
66
+ if (status === Status.start) {
67
+ run(Remove)(options);
68
+ }
69
+ if (status === Status.next) {
70
+ run(Init)(process);
71
+ }
72
+ break;
73
+ case AdapterProcess.clip:
74
+ if (status === Status.start) {
75
+ run(UserClip)(options);
76
+ }
77
+ if (status === Status.next) {
78
+ run(Init)(process);
79
+ }
80
+ break;
81
+ case AdapterProcess.insert:
82
+ if (status === Status.start) {
83
+ run(Insert)(options);
84
+ }
85
+ if (status === Status.next) {
86
+ run(Init)(process);
87
+ }
88
+ break;
89
+ case AdapterProcess.replace:
90
+ if (status === Status.start) {
91
+ run(Replace)(options);
92
+ }
93
+ if (status === Status.next) {
94
+ run(Init)(process);
95
+ }
96
+ break;
97
+ case AdapterProcess.update:
98
+ if (status === Status.start) {
99
+ run(Update)(options);
100
+ }
101
+ if (status === Status.next) {
102
+ run(Init)(process);
103
+ }
104
+ break;
105
+ case AdapterProcess.fix:
106
+ if (status === Status.start) {
107
+ run(Fix)(options);
108
+ }
109
+ if (status === Status.next) {
110
+ run(Init)(process);
111
+ }
112
+ break;
113
+ case CommonProcess.start:
114
+ switch (payload.process) {
115
+ case AdapterProcess.append:
116
+ case AdapterProcess.insert:
117
+ case AdapterProcess.replace:
118
+ case AdapterProcess.update:
119
+ if (payload.doRender) {
120
+ run(Render)();
121
+ }
122
+ else {
123
+ run(Adjust)();
124
+ }
125
+ break;
126
+ case AdapterProcess.check:
127
+ run(Render)();
128
+ break;
129
+ case AdapterProcess.remove:
130
+ run(Adjust)();
131
+ break;
132
+ default:
133
+ run(PreFetch)();
134
+ }
135
+ break;
136
+ case CommonProcess.preFetch:
137
+ if (status === Status.next) {
138
+ switch (payload.process) {
139
+ case AdapterProcess.clip:
140
+ run(PreClip)();
141
+ break;
142
+ default:
143
+ run(Fetch)();
144
+ }
145
+ }
146
+ if (status === Status.done) {
147
+ run(End)();
148
+ }
149
+ break;
150
+ case CommonProcess.fetch:
151
+ run(PostFetch)();
152
+ break;
153
+ case CommonProcess.postFetch:
154
+ if (status === Status.next) {
155
+ run(Render)();
156
+ }
157
+ if (status === Status.done) {
158
+ run(End)();
159
+ }
160
+ break;
161
+ case CommonProcess.render:
162
+ if (status === Status.next) {
163
+ switch (payload.process) {
164
+ case AdapterProcess.append:
165
+ case AdapterProcess.check:
166
+ case AdapterProcess.insert:
167
+ case AdapterProcess.replace:
168
+ case AdapterProcess.update:
169
+ run(Adjust)();
170
+ break;
171
+ default:
172
+ run(PreClip)();
173
+ }
174
+ }
175
+ if (status === Status.done) {
176
+ run(End)();
177
+ }
178
+ break;
179
+ case CommonProcess.preClip:
180
+ if (payload.doClip) {
181
+ run(Clip)();
182
+ }
183
+ else {
184
+ run(Adjust)();
185
+ }
186
+ break;
187
+ case CommonProcess.clip:
188
+ run(Adjust)();
189
+ break;
190
+ case CommonProcess.adjust:
191
+ run(End)();
192
+ break;
193
+ case CommonProcess.end:
194
+ if (status === Status.next) {
195
+ switch (payload.process) {
196
+ case AdapterProcess.reset:
197
+ case AdapterProcess.reload:
198
+ done();
199
+ run(Init)(payload.process);
200
+ break;
201
+ default:
202
+ run(Start)();
203
+ }
204
+ }
205
+ if (status === Status.done) {
206
+ done();
207
+ }
208
+ break;
209
+ }
210
+ };
211
211
  //# sourceMappingURL=workflow-transducer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-transducer.js","sourceRoot":"","sources":["../../src/workflow-transducer.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CommonProcess,\n AdapterProcess,\n ProcessStatus as Status,\n Init,\n Scroll,\n Reset,\n Reload,\n Append,\n Check,\n Remove,\n UserClip,\n Insert,\n Replace,\n Update,\n Fix,\n Start,\n PreFetch,\n Fetch,\n PostFetch,\n Render,\n PreClip,\n Clip,\n Adjust,\n End,\n} from './processes/index';\n\nimport { StateMachineParams } from './interfaces/index';\n\nexport const runStateMachine = ({\n input: { process, status, payload = {} },\n methods: { run, interrupt, done, onError }\n}: StateMachineParams): void => {\n if (status === Status.error) {\n onError(process, payload);\n if (!process.startsWith('adapter')) {\n run(End)(payload);\n }\n return;\n }\n const { options } = payload;\n switch (process) {\n case CommonProcess.init:\n if (status === Status.start) { // App start\n run(Init)(process);\n }\n if (status === Status.next) {\n run(Start)();\n }\n break;\n case CommonProcess.scroll:\n if (status === Status.start) {\n run(Scroll)(payload);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.reset:\n case AdapterProcess.reload:\n if (status === Status.start) {\n if (process === AdapterProcess.reset) {\n run(Reset)(options);\n } else {\n run(Reload)(options);\n }\n }\n if (status === Status.next) {\n interrupt({ process, ...payload });\n if (payload.finalize) {\n run(End)();\n } else {\n run(Init)(process);\n }\n }\n break;\n case AdapterProcess.append:\n case AdapterProcess.prepend:\n if (status === Status.start) {\n run(Append)({ process, options });\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.check:\n if (status === Status.start) {\n run(Check)();\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.remove:\n if (status === Status.start) {\n run(Remove)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.clip:\n if (status === Status.start) {\n run(UserClip)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.insert:\n if (status === Status.start) {\n run(Insert)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.replace:\n if (status === Status.start) {\n run(Replace)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.update:\n if (status === Status.start) {\n run(Update)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case AdapterProcess.fix:\n if (status === Status.start) {\n run(Fix)(options);\n }\n if (status === Status.next) {\n run(Init)(process);\n }\n break;\n case CommonProcess.start:\n switch (payload.process) {\n case AdapterProcess.append:\n case AdapterProcess.insert:\n case AdapterProcess.replace:\n case AdapterProcess.update:\n if (payload.doRender) {\n run(Render)();\n } else {\n run(Adjust)();\n }\n break;\n case AdapterProcess.check:\n run(Render)();\n break;\n case AdapterProcess.remove:\n run(Adjust)();\n break;\n default:\n run(PreFetch)();\n }\n break;\n case CommonProcess.preFetch:\n if (status === Status.next) {\n switch (payload.process) {\n case AdapterProcess.clip:\n run(PreClip)();\n break;\n default:\n run(Fetch)();\n }\n }\n if (status === Status.done) {\n run(End)();\n }\n break;\n case CommonProcess.fetch:\n run(PostFetch)();\n break;\n case CommonProcess.postFetch:\n if (status === Status.next) {\n run(Render)();\n }\n if (status === Status.done) {\n run(End)();\n }\n break;\n case CommonProcess.render:\n if (status === Status.next) {\n switch (payload.process) {\n case AdapterProcess.append:\n case AdapterProcess.check:\n case AdapterProcess.insert:\n case AdapterProcess.replace:\n case AdapterProcess.update:\n run(Adjust)();\n break;\n default:\n run(PreClip)();\n }\n }\n if (status === Status.done) {\n run(End)();\n }\n break;\n case CommonProcess.preClip:\n if (payload.doClip) {\n run(Clip)();\n } else {\n run(Adjust)();\n }\n break;\n case CommonProcess.clip:\n run(Adjust)();\n break;\n case CommonProcess.adjust:\n run(End)();\n break;\n case CommonProcess.end:\n if (status === Status.next) {\n switch (payload.process) {\n case AdapterProcess.reset:\n case AdapterProcess.reload:\n done();\n run(Init)(payload.process);\n break;\n default:\n run(Start)();\n }\n }\n if (status === Status.done) {\n done();\n }\n break;\n }\n};\n"]}
1
+ {"version":3,"file":"workflow-transducer.js","sourceRoot":"","sources":["../../src/workflow-transducer.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n CommonProcess,\r\n AdapterProcess,\r\n ProcessStatus as Status,\r\n Init,\r\n Scroll,\r\n Reset,\r\n Reload,\r\n Append,\r\n Check,\r\n Remove,\r\n UserClip,\r\n Insert,\r\n Replace,\r\n Update,\r\n Fix,\r\n Start,\r\n PreFetch,\r\n Fetch,\r\n PostFetch,\r\n Render,\r\n PreClip,\r\n Clip,\r\n Adjust,\r\n End,\r\n} from './processes/index';\r\n\r\nimport { StateMachineParams } from './interfaces/index';\r\n\r\nexport const runStateMachine = ({\r\n input: { process, status, payload = {} },\r\n methods: { run, interrupt, done, onError }\r\n}: StateMachineParams): void => {\r\n if (status === Status.error) {\r\n onError(process, payload);\r\n if (!process.startsWith('adapter')) {\r\n run(End)(payload);\r\n }\r\n return;\r\n }\r\n const { options } = payload;\r\n switch (process) {\r\n case CommonProcess.init:\r\n if (status === Status.start) { // App start\r\n run(Init)(process);\r\n }\r\n if (status === Status.next) {\r\n run(Start)();\r\n }\r\n break;\r\n case CommonProcess.scroll:\r\n if (status === Status.start) {\r\n run(Scroll)(payload);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n if (status === Status.start) {\r\n if (process === AdapterProcess.reset) {\r\n run(Reset)(options);\r\n } else {\r\n run(Reload)(options);\r\n }\r\n }\r\n if (status === Status.next) {\r\n interrupt({ process, ...payload });\r\n if (payload.finalize) {\r\n run(End)();\r\n } else {\r\n run(Init)(process);\r\n }\r\n }\r\n break;\r\n case AdapterProcess.append:\r\n case AdapterProcess.prepend:\r\n if (status === Status.start) {\r\n run(Append)({ process, options });\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n if (status === Status.start) {\r\n run(Check)();\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.remove:\r\n if (status === Status.start) {\r\n run(Remove)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.clip:\r\n if (status === Status.start) {\r\n run(UserClip)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.insert:\r\n if (status === Status.start) {\r\n run(Insert)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.replace:\r\n if (status === Status.start) {\r\n run(Replace)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.update:\r\n if (status === Status.start) {\r\n run(Update)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case AdapterProcess.fix:\r\n if (status === Status.start) {\r\n run(Fix)(options);\r\n }\r\n if (status === Status.next) {\r\n run(Init)(process);\r\n }\r\n break;\r\n case CommonProcess.start:\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n if (payload.doRender) {\r\n run(Render)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case AdapterProcess.check:\r\n run(Render)();\r\n break;\r\n case AdapterProcess.remove:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreFetch)();\r\n }\r\n break;\r\n case CommonProcess.preFetch:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.clip:\r\n run(PreClip)();\r\n break;\r\n default:\r\n run(Fetch)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.fetch:\r\n run(PostFetch)();\r\n break;\r\n case CommonProcess.postFetch:\r\n if (status === Status.next) {\r\n run(Render)();\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.render:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.append:\r\n case AdapterProcess.check:\r\n case AdapterProcess.insert:\r\n case AdapterProcess.replace:\r\n case AdapterProcess.update:\r\n run(Adjust)();\r\n break;\r\n default:\r\n run(PreClip)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n run(End)();\r\n }\r\n break;\r\n case CommonProcess.preClip:\r\n if (payload.doClip) {\r\n run(Clip)();\r\n } else {\r\n run(Adjust)();\r\n }\r\n break;\r\n case CommonProcess.clip:\r\n run(Adjust)();\r\n break;\r\n case CommonProcess.adjust:\r\n run(End)();\r\n break;\r\n case CommonProcess.end:\r\n if (status === Status.next) {\r\n switch (payload.process) {\r\n case AdapterProcess.reset:\r\n case AdapterProcess.reload:\r\n done();\r\n run(Init)(payload.process);\r\n break;\r\n default:\r\n run(Start)();\r\n }\r\n }\r\n if (status === Status.done) {\r\n done();\r\n }\r\n break;\r\n }\r\n};\r\n"]}