vscroll 1.7.0 → 1.8.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 (250) hide show
  1. package/dist/bundles/vscroll.esm5.js +517 -367
  2. package/dist/bundles/vscroll.esm5.js.map +1 -1
  3. package/dist/bundles/vscroll.esm5.min.js +2 -2
  4. package/dist/bundles/vscroll.esm5.min.js.map +1 -1
  5. package/dist/bundles/vscroll.esm6.js +407 -259
  6. package/dist/bundles/vscroll.esm6.js.map +1 -1
  7. package/dist/bundles/vscroll.esm6.min.js +2 -2
  8. package/dist/bundles/vscroll.esm6.min.js.map +1 -1
  9. package/dist/bundles/vscroll.umd.js +518 -368
  10. package/dist/bundles/vscroll.umd.js.map +1 -1
  11. package/dist/bundles/vscroll.umd.min.js +2 -2
  12. package/dist/bundles/vscroll.umd.min.js.map +1 -1
  13. package/dist/esm2015/classes/adapter/context.js +2 -1
  14. package/dist/esm2015/classes/adapter/context.js.map +1 -1
  15. package/dist/esm2015/classes/adapter/props.js +1 -1
  16. package/dist/esm2015/classes/adapter/props.js.map +1 -1
  17. package/dist/esm2015/classes/adapter/wanted.js.map +1 -1
  18. package/dist/esm2015/classes/adapter.js +17 -18
  19. package/dist/esm2015/classes/adapter.js.map +1 -1
  20. package/dist/esm2015/classes/buffer/cache.js +11 -8
  21. package/dist/esm2015/classes/buffer/cache.js.map +1 -1
  22. package/dist/esm2015/classes/buffer/checkCall.js +4 -5
  23. package/dist/esm2015/classes/buffer/checkCall.js.map +1 -1
  24. package/dist/esm2015/classes/buffer/defaultSize.js +2 -1
  25. package/dist/esm2015/classes/buffer/defaultSize.js.map +1 -1
  26. package/dist/esm2015/classes/buffer.js +12 -11
  27. package/dist/esm2015/classes/buffer.js.map +1 -1
  28. package/dist/esm2015/classes/datasource.js +16 -3
  29. package/dist/esm2015/classes/datasource.js.map +1 -1
  30. package/dist/esm2015/classes/domRoutines.js +14 -14
  31. package/dist/esm2015/classes/domRoutines.js.map +1 -1
  32. package/dist/esm2015/classes/item.js.map +1 -1
  33. package/dist/esm2015/classes/logger.js +74 -31
  34. package/dist/esm2015/classes/logger.js.map +1 -1
  35. package/dist/esm2015/classes/paddings.js +6 -2
  36. package/dist/esm2015/classes/paddings.js.map +1 -1
  37. package/dist/esm2015/classes/reactive.js.map +1 -1
  38. package/dist/esm2015/classes/settings.js.map +1 -1
  39. package/dist/esm2015/classes/state/clip.js.map +1 -1
  40. package/dist/esm2015/classes/state/cycle.js.map +1 -1
  41. package/dist/esm2015/classes/state/fetch.js +4 -2
  42. package/dist/esm2015/classes/state/fetch.js.map +1 -1
  43. package/dist/esm2015/classes/state/render.js.map +1 -1
  44. package/dist/esm2015/classes/state/scroll.js.map +1 -1
  45. package/dist/esm2015/classes/state.js +6 -4
  46. package/dist/esm2015/classes/state.js.map +1 -1
  47. package/dist/esm2015/classes/viewport.js +4 -2
  48. package/dist/esm2015/classes/viewport.js.map +1 -1
  49. package/dist/esm2015/index.js +1 -1
  50. package/dist/esm2015/index.js.map +1 -1
  51. package/dist/esm2015/inputs/adapter.js +44 -24
  52. package/dist/esm2015/inputs/adapter.js.map +1 -1
  53. package/dist/esm2015/inputs/common.js.map +1 -1
  54. package/dist/esm2015/inputs/datasource.js.map +1 -1
  55. package/dist/esm2015/inputs/index.js +1 -1
  56. package/dist/esm2015/inputs/index.js.map +1 -1
  57. package/dist/esm2015/inputs/settings.js +8 -3
  58. package/dist/esm2015/inputs/settings.js.map +1 -1
  59. package/dist/esm2015/inputs/validation.js +8 -14
  60. package/dist/esm2015/inputs/validation.js.map +1 -1
  61. package/dist/esm2015/inputs/workflow.js.map +1 -1
  62. package/dist/esm2015/interfaces/adapter.js.map +1 -1
  63. package/dist/esm2015/interfaces/datasource.js.map +1 -1
  64. package/dist/esm2015/interfaces/index.js.map +1 -1
  65. package/dist/esm2015/interfaces/item.js.map +1 -1
  66. package/dist/esm2015/interfaces/process.js.map +1 -1
  67. package/dist/esm2015/interfaces/routines.js.map +1 -1
  68. package/dist/esm2015/interfaces/settings.js.map +1 -1
  69. package/dist/esm2015/interfaces/state.js.map +1 -1
  70. package/dist/esm2015/interfaces/validation.js.map +1 -1
  71. package/dist/esm2015/interfaces/workflow.js.map +1 -1
  72. package/dist/esm2015/processes/adapter/append.js +2 -1
  73. package/dist/esm2015/processes/adapter/append.js.map +1 -1
  74. package/dist/esm2015/processes/adapter/check.js +2 -1
  75. package/dist/esm2015/processes/adapter/check.js.map +1 -1
  76. package/dist/esm2015/processes/adapter/clip.js.map +1 -1
  77. package/dist/esm2015/processes/adapter/fix.js +4 -2
  78. package/dist/esm2015/processes/adapter/fix.js.map +1 -1
  79. package/dist/esm2015/processes/adapter/insert.js +4 -3
  80. package/dist/esm2015/processes/adapter/insert.js.map +1 -1
  81. package/dist/esm2015/processes/adapter/pause.js.map +1 -1
  82. package/dist/esm2015/processes/adapter/reload.js.map +1 -1
  83. package/dist/esm2015/processes/adapter/remove.js +8 -5
  84. package/dist/esm2015/processes/adapter/remove.js.map +1 -1
  85. package/dist/esm2015/processes/adapter/replace.js +1 -1
  86. package/dist/esm2015/processes/adapter/replace.js.map +1 -1
  87. package/dist/esm2015/processes/adapter/reset.js +5 -5
  88. package/dist/esm2015/processes/adapter/reset.js.map +1 -1
  89. package/dist/esm2015/processes/adapter/update.js +4 -3
  90. package/dist/esm2015/processes/adapter/update.js.map +1 -1
  91. package/dist/esm2015/processes/adjust.js +15 -10
  92. package/dist/esm2015/processes/adjust.js.map +1 -1
  93. package/dist/esm2015/processes/clip.js +4 -4
  94. package/dist/esm2015/processes/clip.js.map +1 -1
  95. package/dist/esm2015/processes/end.js +2 -1
  96. package/dist/esm2015/processes/end.js.map +1 -1
  97. package/dist/esm2015/processes/fetch.js +6 -4
  98. package/dist/esm2015/processes/fetch.js.map +1 -1
  99. package/dist/esm2015/processes/index.js +1 -1
  100. package/dist/esm2015/processes/index.js.map +1 -1
  101. package/dist/esm2015/processes/init.js.map +1 -1
  102. package/dist/esm2015/processes/misc/base.js +1 -2
  103. package/dist/esm2015/processes/misc/base.js.map +1 -1
  104. package/dist/esm2015/processes/misc/enums.js.map +1 -1
  105. package/dist/esm2015/processes/misc/index.js.map +1 -1
  106. package/dist/esm2015/processes/postFetch.js +13 -12
  107. package/dist/esm2015/processes/postFetch.js.map +1 -1
  108. package/dist/esm2015/processes/preClip.js +6 -5
  109. package/dist/esm2015/processes/preClip.js.map +1 -1
  110. package/dist/esm2015/processes/preFetch.js +28 -15
  111. package/dist/esm2015/processes/preFetch.js.map +1 -1
  112. package/dist/esm2015/processes/render.js +6 -4
  113. package/dist/esm2015/processes/render.js.map +1 -1
  114. package/dist/esm2015/processes/scroll.js +19 -10
  115. package/dist/esm2015/processes/scroll.js.map +1 -1
  116. package/dist/esm2015/processes/start.js.map +1 -1
  117. package/dist/esm2015/scroller.js +14 -9
  118. package/dist/esm2015/scroller.js.map +1 -1
  119. package/dist/esm2015/version.js +1 -1
  120. package/dist/esm2015/version.js.map +1 -1
  121. package/dist/esm2015/workflow-transducer.js +3 -2
  122. package/dist/esm2015/workflow-transducer.js.map +1 -1
  123. package/dist/esm2015/workflow.js +28 -17
  124. package/dist/esm2015/workflow.js.map +1 -1
  125. package/dist/esm5/classes/adapter/context.js +2 -1
  126. package/dist/esm5/classes/adapter/context.js.map +1 -1
  127. package/dist/esm5/classes/adapter/props.js +1 -1
  128. package/dist/esm5/classes/adapter/props.js.map +1 -1
  129. package/dist/esm5/classes/adapter/wanted.js.map +1 -1
  130. package/dist/esm5/classes/adapter.js +22 -19
  131. package/dist/esm5/classes/adapter.js.map +1 -1
  132. package/dist/esm5/classes/buffer/cache.js +11 -9
  133. package/dist/esm5/classes/buffer/cache.js.map +1 -1
  134. package/dist/esm5/classes/buffer/checkCall.js +4 -7
  135. package/dist/esm5/classes/buffer/checkCall.js.map +1 -1
  136. package/dist/esm5/classes/buffer/defaultSize.js +2 -1
  137. package/dist/esm5/classes/buffer/defaultSize.js.map +1 -1
  138. package/dist/esm5/classes/buffer.js +15 -14
  139. package/dist/esm5/classes/buffer.js.map +1 -1
  140. package/dist/esm5/classes/datasource.js +20 -3
  141. package/dist/esm5/classes/datasource.js.map +1 -1
  142. package/dist/esm5/classes/domRoutines.js +14 -14
  143. package/dist/esm5/classes/domRoutines.js.map +1 -1
  144. package/dist/esm5/classes/item.js.map +1 -1
  145. package/dist/esm5/classes/logger.js +75 -34
  146. package/dist/esm5/classes/logger.js.map +1 -1
  147. package/dist/esm5/classes/paddings.js +6 -2
  148. package/dist/esm5/classes/paddings.js.map +1 -1
  149. package/dist/esm5/classes/reactive.js.map +1 -1
  150. package/dist/esm5/classes/settings.js.map +1 -1
  151. package/dist/esm5/classes/state/clip.js.map +1 -1
  152. package/dist/esm5/classes/state/cycle.js.map +1 -1
  153. package/dist/esm5/classes/state/fetch.js +4 -2
  154. package/dist/esm5/classes/state/fetch.js.map +1 -1
  155. package/dist/esm5/classes/state/render.js.map +1 -1
  156. package/dist/esm5/classes/state/scroll.js.map +1 -1
  157. package/dist/esm5/classes/state.js +6 -4
  158. package/dist/esm5/classes/state.js.map +1 -1
  159. package/dist/esm5/classes/viewport.js +3 -2
  160. package/dist/esm5/classes/viewport.js.map +1 -1
  161. package/dist/esm5/index.js +1 -1
  162. package/dist/esm5/index.js.map +1 -1
  163. package/dist/esm5/inputs/adapter.js +32 -12
  164. package/dist/esm5/inputs/adapter.js.map +1 -1
  165. package/dist/esm5/inputs/common.js.map +1 -1
  166. package/dist/esm5/inputs/datasource.js.map +1 -1
  167. package/dist/esm5/inputs/index.js +1 -1
  168. package/dist/esm5/inputs/index.js.map +1 -1
  169. package/dist/esm5/inputs/settings.js +5 -0
  170. package/dist/esm5/inputs/settings.js.map +1 -1
  171. package/dist/esm5/inputs/validation.js +99 -93
  172. package/dist/esm5/inputs/validation.js.map +1 -1
  173. package/dist/esm5/inputs/workflow.js.map +1 -1
  174. package/dist/esm5/interfaces/adapter.js.map +1 -1
  175. package/dist/esm5/interfaces/datasource.js.map +1 -1
  176. package/dist/esm5/interfaces/index.js.map +1 -1
  177. package/dist/esm5/interfaces/item.js.map +1 -1
  178. package/dist/esm5/interfaces/process.js.map +1 -1
  179. package/dist/esm5/interfaces/routines.js.map +1 -1
  180. package/dist/esm5/interfaces/settings.js.map +1 -1
  181. package/dist/esm5/interfaces/state.js.map +1 -1
  182. package/dist/esm5/interfaces/validation.js.map +1 -1
  183. package/dist/esm5/interfaces/workflow.js.map +1 -1
  184. package/dist/esm5/processes/adapter/append.js +2 -1
  185. package/dist/esm5/processes/adapter/append.js.map +1 -1
  186. package/dist/esm5/processes/adapter/check.js +7 -6
  187. package/dist/esm5/processes/adapter/check.js.map +1 -1
  188. package/dist/esm5/processes/adapter/clip.js.map +1 -1
  189. package/dist/esm5/processes/adapter/fix.js +4 -2
  190. package/dist/esm5/processes/adapter/fix.js.map +1 -1
  191. package/dist/esm5/processes/adapter/insert.js +4 -3
  192. package/dist/esm5/processes/adapter/insert.js.map +1 -1
  193. package/dist/esm5/processes/adapter/pause.js.map +1 -1
  194. package/dist/esm5/processes/adapter/reload.js.map +1 -1
  195. package/dist/esm5/processes/adapter/remove.js +11 -10
  196. package/dist/esm5/processes/adapter/remove.js.map +1 -1
  197. package/dist/esm5/processes/adapter/replace.js +1 -1
  198. package/dist/esm5/processes/adapter/replace.js.map +1 -1
  199. package/dist/esm5/processes/adapter/reset.js +5 -5
  200. package/dist/esm5/processes/adapter/reset.js.map +1 -1
  201. package/dist/esm5/processes/adapter/update.js +20 -15
  202. package/dist/esm5/processes/adapter/update.js.map +1 -1
  203. package/dist/esm5/processes/adjust.js +16 -11
  204. package/dist/esm5/processes/adjust.js.map +1 -1
  205. package/dist/esm5/processes/clip.js +4 -4
  206. package/dist/esm5/processes/clip.js.map +1 -1
  207. package/dist/esm5/processes/end.js +2 -1
  208. package/dist/esm5/processes/end.js.map +1 -1
  209. package/dist/esm5/processes/fetch.js +5 -3
  210. package/dist/esm5/processes/fetch.js.map +1 -1
  211. package/dist/esm5/processes/index.js +1 -1
  212. package/dist/esm5/processes/index.js.map +1 -1
  213. package/dist/esm5/processes/init.js.map +1 -1
  214. package/dist/esm5/processes/misc/base.js +1 -2
  215. package/dist/esm5/processes/misc/base.js.map +1 -1
  216. package/dist/esm5/processes/misc/enums.js.map +1 -1
  217. package/dist/esm5/processes/misc/index.js.map +1 -1
  218. package/dist/esm5/processes/postFetch.js +14 -15
  219. package/dist/esm5/processes/postFetch.js.map +1 -1
  220. package/dist/esm5/processes/preClip.js +5 -4
  221. package/dist/esm5/processes/preClip.js.map +1 -1
  222. package/dist/esm5/processes/preFetch.js +26 -14
  223. package/dist/esm5/processes/preFetch.js.map +1 -1
  224. package/dist/esm5/processes/render.js +7 -7
  225. package/dist/esm5/processes/render.js.map +1 -1
  226. package/dist/esm5/processes/scroll.js +18 -12
  227. package/dist/esm5/processes/scroll.js.map +1 -1
  228. package/dist/esm5/processes/start.js.map +1 -1
  229. package/dist/esm5/scroller.js +11 -7
  230. package/dist/esm5/scroller.js.map +1 -1
  231. package/dist/esm5/version.js +1 -1
  232. package/dist/esm5/version.js.map +1 -1
  233. package/dist/esm5/workflow-transducer.js +3 -2
  234. package/dist/esm5/workflow-transducer.js.map +1 -1
  235. package/dist/esm5/workflow.js +31 -25
  236. package/dist/esm5/workflow.js.map +1 -1
  237. package/dist/typings/classes/buffer/cache.d.ts +0 -1
  238. package/dist/typings/classes/datasource.d.ts +1 -1
  239. package/dist/typings/classes/domRoutines.d.ts +1 -1
  240. package/dist/typings/classes/logger.d.ts +4 -0
  241. package/dist/typings/classes/settings.d.ts +7 -0
  242. package/dist/typings/index.d.ts +2 -2
  243. package/dist/typings/inputs/index.d.ts +1 -1
  244. package/dist/typings/inputs/settings.d.ts +1 -0
  245. package/dist/typings/interfaces/index.d.ts +1 -1
  246. package/dist/typings/interfaces/settings.d.ts +1 -0
  247. package/dist/typings/processes/index.d.ts +1 -1
  248. package/dist/typings/processes/scroll.d.ts +1 -1
  249. package/dist/typings/workflow.d.ts +1 -0
  250. package/package.json +72 -70
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/classes/logger.ts"],"names":[],"mappings":"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","sourcesContent":["import { Scroller } from '../scroller';\r\nimport { CommonProcess, AdapterProcess, ProcessStatus as Status } from '../processes/index';\r\nimport { IPackages, ProcessSubject } from '../interfaces/index';\r\n\r\ntype LogType = [unknown?, ...unknown[]];\r\n\r\nexport class Logger {\r\n\r\n readonly debug: boolean;\r\n readonly immediateLog: boolean;\r\n readonly logTime: boolean;\r\n readonly getTime: () => string;\r\n readonly getStat: () => string;\r\n readonly getFetchRange: () => string;\r\n readonly getWorkflowCycleData: () => string;\r\n readonly getLoopId: () => string;\r\n readonly getLoopIdNext: () => string;\r\n readonly getScrollPosition: () => number;\r\n private logs: unknown[][] = [];\r\n\r\n constructor(scroller: Scroller, packageInfo: IPackages, adapter?: { id: number }) {\r\n const { settings } = scroller;\r\n this.debug = settings.debug;\r\n this.immediateLog = settings.immediateLog;\r\n this.logTime = settings.logTime;\r\n this.getTime = (): string =>\r\n scroller.state && ` // time: ${scroller.state.time}`;\r\n this.getStat = (): string => {\r\n const { buffer, viewport } = scroller;\r\n const first = buffer.getFirstVisibleItem();\r\n const last = buffer.getLastVisibleItem();\r\n return 'pos: ' + viewport.scrollPosition + ', ' +\r\n 'size: ' + viewport.getScrollableSize() + ', ' +\r\n 'bwd_p: ' + viewport.paddings.backward.size + ', ' +\r\n 'fwd_p: ' + viewport.paddings.forward.size + ', ' +\r\n 'default: ' + (buffer.defaultSize || 'no') + ', ' +\r\n 'items: ' + buffer.getVisibleItemsCount() + ', ' +\r\n 'range: ' + (first && last ? `[${first.$index}..${last.$index}]` : 'no');\r\n };\r\n this.getFetchRange = (): string => {\r\n const { first: { index: first }, last: { index: last } } = scroller.state.fetch;\r\n return !Number.isNaN(first) && !Number.isNaN(last)\r\n ? `[${first}..${last}]`\r\n : 'no';\r\n };\r\n this.getLoopId = (): string => scroller.state.cycle.loopId;\r\n this.getLoopIdNext = (): string => scroller.state.cycle.loopIdNext;\r\n this.getWorkflowCycleData = (): string =>\r\n `${settings.instanceIndex}-${scroller.state.cycle.count}`;\r\n this.getScrollPosition = () => scroller.routines.getScrollPosition();\r\n this.log(() =>\r\n 'vscroll Workflow has been started, ' +\r\n `core: ${packageInfo.core.name} v${packageInfo.core.version}, ` +\r\n `consumer: ${packageInfo.consumer.name} v${packageInfo.consumer.version}, ` +\r\n `scroller instance: ${settings.instanceIndex}, adapter ` +\r\n (!adapter ? 'is not instantiated' : `instance: ${adapter.id}`)\r\n );\r\n }\r\n\r\n object(str: string, obj: unknown, stringify?: boolean): void {\r\n this.log(() => [\r\n str,\r\n stringify\r\n ? JSON.stringify(obj, (k, v) => {\r\n if (Number.isNaN(v)) {\r\n return 'NaN';\r\n }\r\n if (v === Infinity) {\r\n return 'Infinity';\r\n }\r\n if (v === -Infinity) {\r\n return '-Infinity';\r\n }\r\n if (v instanceof Element) {\r\n return 'HTMLElement';\r\n }\r\n if (v instanceof HTMLDocument) {\r\n return 'HTMLDocument';\r\n }\r\n if (typeof v === 'function') {\r\n return 'Function';\r\n }\r\n return v;\r\n })\r\n .replace(/\"/g, '')\r\n .replace(/(\\{|:|,)/g, '$1 ')\r\n .replace(/(\\})/g, ' $1')\r\n : obj\r\n ]);\r\n }\r\n\r\n stat(str?: string): void {\r\n if (this.debug) {\r\n const logStyles = [\r\n 'color: #888; border: dashed #888 0; border-bottom-width: 0px',\r\n 'color: #000; border-width: 0'\r\n ];\r\n this.log(() => ['%cstat' + (str ? ` ${str}` : '') + ',%c ' + this.getStat(), ...logStyles]);\r\n }\r\n }\r\n\r\n fetch(str?: string): void {\r\n if (this.debug) {\r\n const _text = 'fetch interval' + (str ? ` ${str}` : '');\r\n const logStyles = ['color: #888', 'color: #000'];\r\n this.log(() => [`%c${_text}: %c${this.getFetchRange()}`, ...logStyles]);\r\n }\r\n }\r\n\r\n prepareForLog(data: unknown): unknown {\r\n return data instanceof Event && data.target\r\n ? this.getScrollPosition()\r\n : data;\r\n }\r\n\r\n logProcess(data: ProcessSubject): void {\r\n if (!this.debug) {\r\n return;\r\n }\r\n const { process, status, payload } = data;\r\n\r\n // inner loop start-end log\r\n const loopLog: string[] = [];\r\n if (\r\n process === CommonProcess.init && status === Status.next\r\n ) {\r\n loopLog.push(`%c---=== loop ${this.getLoopIdNext()} start`);\r\n } else if (\r\n process === CommonProcess.end\r\n ) {\r\n loopLog.push(`%c---=== loop ${this.getLoopId()} done`);\r\n const parent = payload && payload.process;\r\n if (status === Status.next && (parent !== AdapterProcess.reset && parent !== AdapterProcess.reload)) {\r\n loopLog[0] += `, loop ${this.getLoopIdNext()} start`;\r\n }\r\n }\r\n if (loopLog.length) {\r\n this.log(() => [...loopLog, 'color: #006600;']);\r\n }\r\n }\r\n\r\n logCycle(start = true): void {\r\n const logData = this.getWorkflowCycleData();\r\n const border = start ? '1px 0 0 1px' : '0 0 1px 1px';\r\n const logStyles = `color: #0000aa; border: solid #555 1px; border-width: ${border}; margin-left: -2px`;\r\n this.log(() => [`%c ~~~ WF Cycle ${logData} ${start ? 'STARTED' : 'FINALIZED'} ~~~ `, logStyles]);\r\n }\r\n\r\n logError(str: string): void {\r\n if (this.debug) {\r\n const logStyles = ['color: #a00;', 'color: #000'];\r\n this.log(() => ['error:%c' + (str ? ` ${str}` : '') + `%c (loop ${this.getLoopIdNext()})`, ...logStyles]);\r\n }\r\n }\r\n\r\n logAdapterMethod = (methodName: string, args?: unknown, add?: string): void => {\r\n if (!this.debug) {\r\n return;\r\n }\r\n const params = (\r\n args === void 0 ? [] : (Array.isArray(args) ? args : [args])\r\n )\r\n .map((arg: unknown) => {\r\n if (typeof arg === 'function') {\r\n return 'func';\r\n } else if (typeof arg !== 'object' || !arg) {\r\n return arg;\r\n } else if (Array.isArray(arg)) {\r\n return `[of ${arg.length}]`;\r\n }\r\n return '{ ' + Object.keys(arg).join(', ') + ' }';\r\n })\r\n .join(', ');\r\n this.log(`adapter: ${methodName}(${params || ''})${add || ''}`);\r\n };\r\n\r\n log(...args: unknown[]): void {\r\n if (this.debug) {\r\n if (typeof args[0] === 'function') {\r\n args = args[0]();\r\n if (!Array.isArray(args)) {\r\n args = [args];\r\n }\r\n }\r\n if (args.every(item => item === void 0)) {\r\n return;\r\n }\r\n if (this.logTime) {\r\n args = [...args, this.getTime()];\r\n }\r\n args = args.map((arg: unknown) => this.prepareForLog(arg));\r\n if (this.immediateLog) {\r\n console.log.apply(this, args as LogType);\r\n } else {\r\n this.logs.push(args);\r\n }\r\n }\r\n }\r\n\r\n // logNow(...args: unknown[]) {\r\n // const immediateLog = this.immediateLog;\r\n // const debug = this.debug;\r\n // (this as any).debug = true;\r\n // (this as any).immediateLog = true;\r\n // this.log.apply(this, args);\r\n // (this as any).debug = debug;\r\n // (this as any).immediateLog = immediateLog;\r\n // }\r\n\r\n logForce(...args: unknown[]): void {\r\n if (this.debug) {\r\n if (!this.immediateLog && this.logs.length) {\r\n this.logs.forEach(logArgs => console.log.apply(this, logArgs));\r\n this.logs = [];\r\n }\r\n if (args.length) {\r\n console.log.apply(this, args as LogType);\r\n }\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/classes/logger.ts"],"names":[],"mappings":"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","sourcesContent":["import { Scroller } from '../scroller';\nimport { CommonProcess, AdapterProcess, ProcessStatus as Status } from '../processes/index';\nimport { IPackages, ProcessSubject } from '../interfaces/index';\n\ntype LogType = [unknown?, ...unknown[]];\n\nexport class Logger {\n readonly debug: boolean;\n readonly immediateLog: boolean;\n readonly logTime: boolean;\n readonly logColor: boolean;\n readonly getTime: () => string;\n readonly getStat: () => string;\n readonly getFetchRange: () => string;\n readonly getWorkflowCycleData: () => string;\n readonly getLoopId: () => string;\n readonly getLoopIdNext: () => string;\n readonly getScrollPosition: () => number;\n private logs: LogType[] = [];\n\n constructor(scroller: Scroller, packageInfo: IPackages, adapter?: { id: number }) {\n const { settings } = scroller;\n this.debug = settings.debug;\n this.immediateLog = settings.immediateLog;\n this.logTime = settings.logTime;\n this.logColor = settings.logColor;\n this.getTime = (): string => scroller.state && ` // time: ${scroller.state.time}`;\n this.getStat = (): string => {\n const { buffer, viewport } = scroller;\n const first = buffer.getFirstVisibleItem();\n const last = buffer.getLastVisibleItem();\n return (\n 'pos: ' +\n viewport.scrollPosition +\n ', ' +\n 'size: ' +\n viewport.getScrollableSize() +\n ', ' +\n 'bwd_p: ' +\n viewport.paddings.backward.size +\n ', ' +\n 'fwd_p: ' +\n viewport.paddings.forward.size +\n ', ' +\n 'default: ' +\n (buffer.defaultSize || 'no') +\n ', ' +\n 'items: ' +\n buffer.getVisibleItemsCount() +\n ', ' +\n 'range: ' +\n (first && last ? `[${first.$index}..${last.$index}]` : 'no')\n );\n };\n this.getFetchRange = (): string => {\n const {\n first: { index: first },\n last: { index: last }\n } = scroller.state.fetch;\n return !Number.isNaN(first) && !Number.isNaN(last) ? `[${first}..${last}]` : 'no';\n };\n this.getLoopId = (): string => scroller.state.cycle.loopId;\n this.getLoopIdNext = (): string => scroller.state.cycle.loopIdNext;\n this.getWorkflowCycleData = (): string =>\n `${settings.instanceIndex}-${scroller.state.cycle.count}`;\n this.getScrollPosition = () => scroller.routines.getScrollPosition();\n this.log(\n () =>\n 'vscroll Workflow has been started, ' +\n `core: ${packageInfo.core.name} v${packageInfo.core.version}, ` +\n `consumer: ${packageInfo.consumer.name} v${packageInfo.consumer.version}, ` +\n `scroller instance: ${settings.instanceIndex}, adapter ` +\n (!adapter ? 'is not instantiated' : `instance: ${adapter.id}`)\n );\n }\n\n object(str: string, obj: unknown, stringify?: boolean): void {\n this.log(() => [\n str,\n stringify\n ? JSON.stringify(obj, (_, v) => {\n if (Number.isNaN(v)) {\n return 'NaN';\n }\n if (v === Infinity) {\n return 'Infinity';\n }\n if (v === -Infinity) {\n return '-Infinity';\n }\n if (v instanceof Element) {\n return 'HTMLElement';\n }\n if (v instanceof HTMLDocument) {\n return 'HTMLDocument';\n }\n if (typeof v === 'function') {\n return 'Function';\n }\n return v;\n })\n .replace(/\"/g, '')\n .replace(/(\\{|:|,)/g, '$1 ')\n .replace(/(\\})/g, ' $1')\n : obj\n ]);\n }\n\n stat(str?: string): void {\n if (this.debug) {\n if (this.logColor) {\n const logStyles = [\n 'color: #888; border: dashed #888 0; border-bottom-width: 0px',\n 'color: #000; border-width: 0'\n ];\n this.log(() => ['%cstat' + (str ? ` ${str}` : '') + ',%c ' + this.getStat(), ...logStyles]);\n } else {\n this.log(() => ['stat' + (str ? ` ${str}` : '') + ', ' + this.getStat()]);\n }\n }\n }\n\n fetch(str?: string): void {\n if (this.debug) {\n const _text = 'fetch interval' + (str ? ` ${str}` : '');\n if (this.logColor) {\n const logStyles = ['color: #888', 'color: #000'];\n this.log(() => [`%c${_text}: %c${this.getFetchRange()}`, ...logStyles]);\n } else {\n this.log(() => [`${_text}: ${this.getFetchRange()}`]);\n }\n }\n }\n\n prepareForLog(data: unknown): unknown {\n return data instanceof Event && data.target ? this.getScrollPosition() : data;\n }\n\n logProcess(data: ProcessSubject): void {\n if (!this.debug) {\n return;\n }\n const { process, status, payload } = data;\n\n // inner loop start-end log\n const loopLog: string[] = [];\n if (process === CommonProcess.init && status === Status.next) {\n const loopStart = `---=== loop ${this.getLoopIdNext()} start`;\n loopLog.push(this.logColor ? `%c${loopStart}` : loopStart);\n } else if (process === CommonProcess.end) {\n const loopDone = `---=== loop ${this.getLoopId()} done`;\n loopLog.push(this.logColor ? `%c${loopDone}` : loopDone);\n const parent = payload && payload.process;\n if (\n status === Status.next &&\n parent !== AdapterProcess.reset &&\n parent !== AdapterProcess.reload\n ) {\n loopLog[0] += `, loop ${this.getLoopIdNext()} start`;\n }\n }\n if (loopLog.length) {\n this.log(() => (this.logColor ? [...loopLog, 'color: #006600;'] : loopLog));\n }\n }\n\n logCycle(start = true): void {\n const logData = this.getWorkflowCycleData();\n if (this.logColor) {\n const border = start ? '1px 0 0 1px' : '0 0 1px 1px';\n const logStyles = `color: #0000aa; border: solid #555 1px; border-width: ${border}; margin-left: -2px`;\n this.log(() => [\n `%c ~~~ WF Cycle ${logData} ${start ? 'STARTED' : 'FINALIZED'} ~~~ `,\n logStyles\n ]);\n } else {\n this.log(() => [` ~~~ WF Cycle ${logData} ${start ? 'STARTED' : 'FINALIZED'} ~~~ `]);\n }\n }\n\n logError(str: string): void {\n if (this.debug) {\n if (this.logColor) {\n const logStyles = ['color: #a00;', 'color: #000'];\n this.log(() => [\n 'error:%c' + (str ? ` ${str}` : '') + `%c (loop ${this.getLoopIdNext()})`,\n ...logStyles\n ]);\n } else {\n this.log(() => ['error:' + (str ? ` ${str}` : '') + ` (loop ${this.getLoopIdNext()})`]);\n }\n }\n }\n\n logAdapterMethod = (methodName: string, args?: unknown, add?: string): void => {\n if (!this.debug) {\n return;\n }\n const params = (args === void 0 ? [] : Array.isArray(args) ? args : [args])\n .map((arg: unknown) => {\n if (typeof arg === 'function') {\n return 'func';\n } else if (typeof arg !== 'object' || !arg) {\n return arg;\n } else if (Array.isArray(arg)) {\n return `[of ${arg.length}]`;\n }\n return '{ ' + Object.keys(arg).join(', ') + ' }';\n })\n .join(', ');\n this.log(`adapter: ${methodName}(${params || ''})${add || ''}`);\n };\n\n log(...args: unknown[]): void {\n if (this.debug) {\n if (typeof args[0] === 'function') {\n args = args[0]();\n if (!Array.isArray(args)) {\n args = [args];\n }\n }\n if (args.every(item => item === void 0)) {\n return;\n }\n if (this.logTime) {\n args = [...args, this.getTime()];\n }\n args = args.map((arg: unknown) => this.prepareForLog(arg));\n if (this.immediateLog) {\n console.log.apply(this, args as LogType);\n } else {\n this.logs.push(args);\n }\n }\n }\n\n // logNow(...args: unknown[]) {\n // const immediateLog = this.immediateLog;\n // const debug = this.debug;\n // (this as any).debug = true;\n // (this as any).immediateLog = true;\n // this.log.apply(this, args);\n // (this as any).debug = debug;\n // (this as any).immediateLog = immediateLog;\n // }\n\n logForce(...args: unknown[]): void {\n if (this.debug) {\n if (!this.immediateLog && this.logs.length) {\n this.logs.forEach(logArgs => console.log.apply(this, logArgs));\n this.logs = [];\n }\n if (args.length) {\n console.log.apply(this, args as LogType);\n }\n }\n }\n\n getLogs(): LogType[] {\n return this.logs;\n }\n}\n"]}
@@ -31,8 +31,12 @@ var Paddings = /** @class */ (function () {
31
31
  }
32
32
  Paddings.prototype.byDirection = function (direction, opposite) {
33
33
  return direction === Direction.backward
34
- ? (opposite ? this.forward : this.backward)
35
- : (opposite ? this.backward : this.forward);
34
+ ? opposite
35
+ ? this.forward
36
+ : this.backward
37
+ : opposite
38
+ ? this.backward
39
+ : this.forward;
36
40
  };
37
41
  Paddings.prototype.reset = function (viewportSize, startIndex, offset) {
38
42
  var positive = this.getPositiveSize(startIndex, viewportSize, offset);
@@ -1 +1 @@
1
- {"version":3,"file":"paddings.js","sourceRoot":"","sources":["../../../src/classes/paddings.ts"],"names":[],"mappings":"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","sourcesContent":["import { Routines } from './domRoutines';\r\nimport { Settings } from './settings';\r\nimport { Direction } from '../inputs/index';\r\n\r\nexport class Padding {\r\n\r\n element: HTMLElement;\r\n direction: Direction;\r\n routines: Routines;\r\n\r\n constructor(direction: Direction, routines: Routines) {\r\n const found = routines.findPaddingElement(direction);\r\n routines.checkElement(found as HTMLElement);\r\n this.element = found as HTMLElement;\r\n this.direction = direction;\r\n this.routines = routines;\r\n }\r\n\r\n reset(size?: number): void {\r\n this.size = size || 0;\r\n }\r\n\r\n get size(): number {\r\n return this.routines.getSizeStyle(this.element);\r\n }\r\n\r\n set size(value: number) {\r\n this.routines.setSizeStyle(this.element, value);\r\n }\r\n\r\n}\r\n\r\nexport class Paddings {\r\n settings: Settings;\r\n forward: Padding;\r\n backward: Padding;\r\n\r\n constructor(routines: Routines, settings: Settings) {\r\n this.settings = settings;\r\n this.forward = new Padding(Direction.forward, routines);\r\n this.backward = new Padding(Direction.backward, routines);\r\n }\r\n\r\n byDirection(direction: Direction, opposite?: boolean): Padding {\r\n return direction === Direction.backward\r\n ? (opposite ? this.forward : this.backward)\r\n : (opposite ? this.backward : this.forward);\r\n }\r\n\r\n reset(viewportSize: number, startIndex: number, offset: number): void {\r\n const positive = this.getPositiveSize(startIndex, viewportSize, offset);\r\n const negative = this.getNegativeSize(startIndex);\r\n if (this.settings.inverse) {\r\n this.forward.reset(negative);\r\n this.backward.reset(positive);\r\n const diff = viewportSize - this.backward.size - offset;\r\n if (diff > 0) {\r\n this.backward.size += diff;\r\n this.forward.size -= diff;\r\n }\r\n } else {\r\n this.forward.reset(positive);\r\n this.backward.reset(negative);\r\n const diff = viewportSize - this.forward.size - offset;\r\n if (diff > 0) {\r\n this.backward.size -= diff;\r\n this.forward.size += diff;\r\n }\r\n }\r\n\r\n }\r\n\r\n getPositiveSize(startIndex: number, viewportSize: number, offset: number): number {\r\n const { settings } = this;\r\n let positiveSize = viewportSize;\r\n if (isFinite(settings.maxIndex)) {\r\n positiveSize = (settings.maxIndex - startIndex + 1) * settings.itemSize;\r\n }\r\n if (offset) {\r\n positiveSize = Math.max(positiveSize - offset, 0);\r\n }\r\n return positiveSize;\r\n }\r\n\r\n getNegativeSize(startIndex: number): number {\r\n const { settings } = this;\r\n let negativeSize = 0;\r\n if (isFinite(settings.minIndex)) {\r\n negativeSize = (startIndex - settings.minIndex) * settings.itemSize;\r\n }\r\n return negativeSize;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"paddings.js","sourceRoot":"","sources":["../../../src/classes/paddings.ts"],"names":[],"mappings":"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","sourcesContent":["import { Routines } from './domRoutines';\nimport { Settings } from './settings';\nimport { Direction } from '../inputs/index';\n\nexport class Padding {\n element: HTMLElement;\n direction: Direction;\n routines: Routines;\n\n constructor(direction: Direction, routines: Routines) {\n const found = routines.findPaddingElement(direction);\n routines.checkElement(found as HTMLElement);\n this.element = found as HTMLElement;\n this.direction = direction;\n this.routines = routines;\n }\n\n reset(size?: number): void {\n this.size = size || 0;\n }\n\n get size(): number {\n return this.routines.getSizeStyle(this.element);\n }\n\n set size(value: number) {\n this.routines.setSizeStyle(this.element, value);\n }\n}\n\nexport class Paddings {\n settings: Settings;\n forward: Padding;\n backward: Padding;\n\n constructor(routines: Routines, settings: Settings) {\n this.settings = settings;\n this.forward = new Padding(Direction.forward, routines);\n this.backward = new Padding(Direction.backward, routines);\n }\n\n byDirection(direction: Direction, opposite?: boolean): Padding {\n return direction === Direction.backward\n ? opposite\n ? this.forward\n : this.backward\n : opposite\n ? this.backward\n : this.forward;\n }\n\n reset(viewportSize: number, startIndex: number, offset: number): void {\n const positive = this.getPositiveSize(startIndex, viewportSize, offset);\n const negative = this.getNegativeSize(startIndex);\n if (this.settings.inverse) {\n this.forward.reset(negative);\n this.backward.reset(positive);\n const diff = viewportSize - this.backward.size - offset;\n if (diff > 0) {\n this.backward.size += diff;\n this.forward.size -= diff;\n }\n } else {\n this.forward.reset(positive);\n this.backward.reset(negative);\n const diff = viewportSize - this.forward.size - offset;\n if (diff > 0) {\n this.backward.size -= diff;\n this.forward.size += diff;\n }\n }\n }\n\n getPositiveSize(startIndex: number, viewportSize: number, offset: number): number {\n const { settings } = this;\n let positiveSize = viewportSize;\n if (isFinite(settings.maxIndex)) {\n positiveSize = (settings.maxIndex - startIndex + 1) * settings.itemSize;\n }\n if (offset) {\n positiveSize = Math.max(positiveSize - offset, 0);\n }\n return positiveSize;\n }\n\n getNegativeSize(startIndex: number): number {\n const { settings } = this;\n let negativeSize = 0;\n if (isFinite(settings.minIndex)) {\n negativeSize = (startIndex - settings.minIndex) * settings.itemSize;\n }\n return negativeSize;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../../../src/classes/reactive.ts"],"names":[],"mappings":";AAaA;IAQE,kBAAY,KAAS,EAAE,OAAiB;QACtC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,sBAAG,GAAH,UAAI,KAAQ;;QACV,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACpD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;;YACnB,KAAsB,IAAA,KAAA,SAAA,IAAI,CAAC,aAAa,CAAA,gBAAA,4BAAE,CAAC;gBAAhC,IAAA,KAAA,mBAAO,EAAJ,GAAG,QAAA;gBACf,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChB,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;oBACzB,MAAM;gBACR,CAAC;YACH,CAAC;;;;;;;;;IACH,CAAC;IAED,sBAAG,GAAH;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,qBAAE,GAAF,UAAG,IAAW;QAAd,iBAcC;QAbC,IAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,IAAM,YAAY,GAAoB;YACpC,IAAI,EAAE,IAAI;YACV,GAAG,EAAE;gBACH,YAAY,CAAC,IAAI,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC;gBAC/B,KAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;SACF,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACjC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,cAAM,OAAA,YAAY,CAAC,GAAG,EAAE,EAAlB,CAAkB,CAAC;IAClC,CAAC;IAED,uBAAI,GAAJ,UAAK,IAAW;QACd,IAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,UAAA,CAAC;YACnB,GAAG,EAAE,CAAC;YACN,IAAI,CAAC,CAAC,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC;IAED,wBAAK,GAAL;QACE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IAED,0BAAO,GAAP;QACE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,GAAG,EAAE,EAAT,CAAS,CAAC,CAAC;IAC/C,CAAC;IACH,eAAC;AAAD,CAAC,AAlED,IAkEC","sourcesContent":["type On<T> = (value: T) => void;\r\ntype Off = () => void;\r\n\r\ninterface Subscription<T> {\r\n emit: On<T>;\r\n off: Off;\r\n}\r\n\r\ninterface Options {\r\n emitOnSubscribe?: boolean; // if set, emit right on subscribe (like rxjs BehaviorSubject)\r\n emitEqual?: boolean; // if set, emit when new value is equal to the old one\r\n}\r\n\r\nexport class Reactive<T> {\r\n\r\n private initialValue: T;\r\n private value: T;\r\n private id: number;\r\n private options: Options;\r\n private subscriptions: Map<number, Subscription<T>>;\r\n\r\n constructor(value?: T, options?: Options) {\r\n this.id = 0;\r\n if (value !== void 0) {\r\n this.value = value;\r\n this.initialValue = value;\r\n }\r\n this.options = options || {};\r\n this.subscriptions = new Map();\r\n }\r\n\r\n set(value: T): void {\r\n if (this.value === value && !this.options.emitEqual) {\r\n return;\r\n }\r\n this.value = value;\r\n for (const [, sub] of this.subscriptions) {\r\n sub.emit(value);\r\n if (this.value !== value) {\r\n break;\r\n }\r\n }\r\n }\r\n\r\n get(): T {\r\n return this.value;\r\n }\r\n\r\n on(func: On<T>): Off {\r\n const id = this.id++;\r\n const subscription: Subscription<T> = {\r\n emit: func,\r\n off: () => {\r\n subscription.emit = () => null;\r\n this.subscriptions.delete(id);\r\n }\r\n };\r\n this.subscriptions.set(id, subscription);\r\n if (this.options.emitOnSubscribe) {\r\n subscription.emit(this.value);\r\n }\r\n return () => subscription.off();\r\n }\r\n\r\n once(func: On<T>): Off {\r\n const off = this.on(v => {\r\n off();\r\n func(v);\r\n });\r\n return off;\r\n }\r\n\r\n reset(): void {\r\n this.set(this.initialValue);\r\n }\r\n\r\n dispose(): void {\r\n this.subscriptions.forEach(sub => sub.off());\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"reactive.js","sourceRoot":"","sources":["../../../src/classes/reactive.ts"],"names":[],"mappings":";AAaA;IAOE,kBAAY,KAAS,EAAE,OAAiB;QACtC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,sBAAG,GAAH,UAAI,KAAQ;;QACV,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACpD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;;YACnB,KAAsB,IAAA,KAAA,SAAA,IAAI,CAAC,aAAa,CAAA,gBAAA,4BAAE,CAAC;gBAAhC,IAAA,KAAA,mBAAO,EAAJ,GAAG,QAAA;gBACf,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChB,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;oBACzB,MAAM;gBACR,CAAC;YACH,CAAC;;;;;;;;;IACH,CAAC;IAED,sBAAG,GAAH;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,qBAAE,GAAF,UAAG,IAAW;QAAd,iBAcC;QAbC,IAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,IAAM,YAAY,GAAoB;YACpC,IAAI,EAAE,IAAI;YACV,GAAG,EAAE;gBACH,YAAY,CAAC,IAAI,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC;gBAC/B,KAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;SACF,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACjC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,cAAM,OAAA,YAAY,CAAC,GAAG,EAAE,EAAlB,CAAkB,CAAC;IAClC,CAAC;IAED,uBAAI,GAAJ,UAAK,IAAW;QACd,IAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,UAAA,CAAC;YACnB,GAAG,EAAE,CAAC;YACN,IAAI,CAAC,CAAC,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC;IAED,wBAAK,GAAL;QACE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IAED,0BAAO,GAAP;QACE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,GAAG,EAAE,EAAT,CAAS,CAAC,CAAC;IAC/C,CAAC;IACH,eAAC;AAAD,CAAC,AAjED,IAiEC","sourcesContent":["type On<T> = (value: T) => void;\ntype Off = () => void;\n\ninterface Subscription<T> {\n emit: On<T>;\n off: Off;\n}\n\ninterface Options {\n emitOnSubscribe?: boolean; // if set, emit right on subscribe (like rxjs BehaviorSubject)\n emitEqual?: boolean; // if set, emit when new value is equal to the old one\n}\n\nexport class Reactive<T> {\n private initialValue: T;\n private value: T;\n private id: number;\n private options: Options;\n private subscriptions: Map<number, Subscription<T>>;\n\n constructor(value?: T, options?: Options) {\n this.id = 0;\n if (value !== void 0) {\n this.value = value;\n this.initialValue = value;\n }\n this.options = options || {};\n this.subscriptions = new Map();\n }\n\n set(value: T): void {\n if (this.value === value && !this.options.emitEqual) {\n return;\n }\n this.value = value;\n for (const [, sub] of this.subscriptions) {\n sub.emit(value);\n if (this.value !== value) {\n break;\n }\n }\n }\n\n get(): T {\n return this.value;\n }\n\n on(func: On<T>): Off {\n const id = this.id++;\n const subscription: Subscription<T> = {\n emit: func,\n off: () => {\n subscription.emit = () => null;\n this.subscriptions.delete(id);\n }\n };\n this.subscriptions.set(id, subscription);\n if (this.options.emitOnSubscribe) {\n subscription.emit(this.value);\n }\n return () => subscription.off();\n }\n\n once(func: On<T>): Off {\n const off = this.on(v => {\n off();\n func(v);\n });\n return off;\n }\n\n reset(): void {\n this.set(this.initialValue);\n }\n\n dispose(): void {\n this.subscriptions.forEach(sub => sub.off());\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/classes/settings.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AAGrH;IAiIE,kBACE,QAAqC,EAAE,WAAqC,EAAE,aAAqB;QAEnG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,uEAAuE;IACzE,CAAC;IAED,6BAAU,GAAV,UAAW,KAAiD,EAAE,KAAgC;QAA9F,iBAQC;QAPC,IAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,EAAU;;gBAAV,KAAA,aAAU,EAAT,GAAG,QAAA,EAAE,GAAG,QAAA;YAC9C,OAAA,MAAM,CAAC,MAAM,CAAC,KAAI,YAAI,GAAC,GAAG,IAAG,GAAG,CAAC,KAAK,MAAG;QAAzC,CAAyC,CAC1C,CAAC;IACJ,CAAC;IAED,qCAAkB,GAAlB;QACE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC;YACrF,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAAW,GAAX;QACE,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,IAAM,MAAM,GAAG,WAAW,CAAC,EAAE,KAAK,OAAA,EAAE,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,CAAC,kFAAkF;QACjG,CAAC;QACD,OAAO,MAAM,CAAC,KAAoB,CAAC;IACrC,CAAC;IACH,eAAC;AAAD,CAAC,AA5KD,IA4KC","sourcesContent":["import { SETTINGS, DEV_SETTINGS, validate, validateOne, VALIDATORS, SizeStrategy, Direction } from '../inputs/index';\r\nimport { Settings as ISettings, DevSettings as IDevSettings, ICommonProps, ItemsProcessor } from '../interfaces/index';\r\n\r\nexport class Settings<Data = unknown> implements ISettings, IDevSettings {\r\n\r\n // user settings\r\n adapter: boolean;\r\n startIndex: number;\r\n minIndex: number;\r\n maxIndex: number;\r\n itemSize: number;\r\n bufferSize: number;\r\n padding: number;\r\n infinite: boolean;\r\n horizontal: boolean;\r\n windowViewport: boolean;\r\n viewportElement: HTMLElement | (() => void) | null;\r\n inverse: boolean; // if true, bwd padding element will have a priority when filling the viewport (if lack of items)\r\n onBeforeClip: ItemsProcessor | null; // if set, it will be run before clipping items from Buffer after they are hidden\r\n sizeStrategy: SizeStrategy; // \"average\" | \"frequent\", determines behavior of unknown items\r\n\r\n /**\r\n * Development setting.\r\n * If true, logging is enabled.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n debug: boolean; // if true, \r\n\r\n /**\r\n * Development setting.\r\n * If false, in-memory logging is enabled, Adapter.showLog() method should be called to print the log.\r\n * Default value: true.\r\n * @type {boolean}\r\n */\r\n immediateLog: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * If true, time differences will be logged.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n logTime: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * If true, process fire/run info will be logged.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n logProcessRun: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * If set, scroll event handling is throttled (ms).\r\n * Default value: 40. Minimal value: 0.\r\n * @type {number} ms\r\n */\r\n throttle: number;\r\n\r\n /**\r\n * Development setting.\r\n * If set, the Workflow initialization will be postponed (ms).\r\n * Default value: 1. Minimal value: 0.\r\n * @type {number} ms\r\n */\r\n initDelay: number;\r\n\r\n /**\r\n * Development setting.\r\n * If set and the entire window is scrollable, the Workflow initialization will be postponed (ms).\r\n * Default value: 40. Minimal value: 0.\r\n * @type {number} ms\r\n */\r\n initWindowDelay: number;\r\n\r\n /**\r\n * Development setting.\r\n * If true, item's data will be cached along with item's size and index.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n cacheData: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * If true, cache will not be flushed on reload.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n cacheOnReload: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * If true, the viewport will receive \"overflowAnchor: none\" css property.\r\n * Default value: false.\r\n * @type {boolean}\r\n */\r\n dismissOverflowAnchor: boolean;\r\n\r\n /**\r\n * Development setting.\r\n * Determines the strategy of fixing the difference between estimated and real (rendered) sizes\r\n * on scroll position adjustments. If set to 'backward', the difference is always resolved in favour of the\r\n * backward direction: top/left content is fixed and appears in accordance with pre-render expectations.\r\n * If set to 'forward', both directions could be used, and there is a case when bottom/right content is fixed:\r\n * new items are to the left of the previously rendered\r\n * and at least one previously rendered item remains.\r\n * Default value: 'backward'. Allowed values: 'backward', 'forward'.\r\n * @type {string}\r\n */\r\n directionPriority: Direction;\r\n\r\n /**\r\n * Internal setting. Stores the index of the Scroller instance.\r\n * @type {number}\r\n */\r\n instanceIndex: number;\r\n\r\n /**\r\n * Internal setting. Stores the Workflow initialization delay based on initDelay and initWindowDelay settings.\r\n * @type {number}\r\n */\r\n initializeDelay: number;\r\n\r\n /**\r\n * Internal setting. Stores the viewport based on viewportElement setting (which can be element or function).\r\n * @type {HTMLElement|null}\r\n */\r\n viewport: HTMLElement | null;\r\n\r\n constructor(\r\n settings: ISettings<Data> | undefined, devSettings: IDevSettings | undefined, instanceIndex: number\r\n ) {\r\n this.parseInput(settings, SETTINGS);\r\n this.parseInput(devSettings, DEV_SETTINGS);\r\n this.instanceIndex = instanceIndex;\r\n this.initializeDelay = this.getInitializeDelay();\r\n this.viewport = this.getViewport();\r\n // todo: min/max indexes must be ignored if infinite mode is enabled ??\r\n }\r\n\r\n parseInput(input: ISettings<Data> | IDevSettings | undefined, props: ICommonProps<PropertyKey>): void {\r\n const result = validate(input, props);\r\n if (!result.isValid) {\r\n throw new Error('Invalid settings');\r\n }\r\n Object.entries(result.params).forEach(([key, par]) =>\r\n Object.assign(this, { [key]: par.value })\r\n );\r\n }\r\n\r\n getInitializeDelay(): number {\r\n let result = 0;\r\n if (this.windowViewport && this.initWindowDelay && !('scrollRestoration' in history)) {\r\n result = this.initWindowDelay;\r\n }\r\n if (this.initDelay > 0) {\r\n result = Math.max(result, this.initDelay);\r\n }\r\n return result;\r\n }\r\n\r\n getViewport(): HTMLElement | null {\r\n if (typeof this.viewportElement !== 'function') {\r\n return this.viewportElement;\r\n }\r\n const value = this.viewportElement();\r\n const result = validateOne({ value }, 'value', { validators: [VALIDATORS.ELEMENT] });\r\n if (!result.isValid) {\r\n return null; // fallback to default (null) if Function didn't return HTML element synchronously\r\n }\r\n return result.value as HTMLElement;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/classes/settings.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,UAAU,EAGX,MAAM,iBAAiB,CAAC;AAQzB;IAwIE,kBACE,QAAqC,EACrC,WAAqC,EACrC,aAAqB;QAErB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,uEAAuE;IACzE,CAAC;IAED,6BAAU,GAAV,UACE,KAAiD,EACjD,KAAgC;QAFlC,iBAWC;QAPC,IAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,EAAU;;gBAAV,KAAA,aAAU,EAAT,GAAG,QAAA,EAAE,GAAG,QAAA;YAC9C,OAAA,MAAM,CAAC,MAAM,CAAC,KAAI,YAAI,GAAC,GAAG,IAAG,GAAG,CAAC,KAAK,MAAG;QAAzC,CAAyC,CAC1C,CAAC;IACJ,CAAC;IAED,qCAAkB,GAAlB;QACE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC;YACrF,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC;QAChC,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAAW,GAAX;QACE,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,IAAM,MAAM,GAAG,WAAW,CAAC,EAAE,KAAK,OAAA,EAAE,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,CAAC,kFAAkF;QACjG,CAAC;QACD,OAAO,MAAM,CAAC,KAAoB,CAAC;IACrC,CAAC;IACH,eAAC;AAAD,CAAC,AAxLD,IAwLC","sourcesContent":["import {\n SETTINGS,\n DEV_SETTINGS,\n validate,\n validateOne,\n VALIDATORS,\n SizeStrategy,\n Direction\n} from '../inputs/index';\nimport {\n Settings as ISettings,\n DevSettings as IDevSettings,\n ICommonProps,\n ItemsProcessor\n} from '../interfaces/index';\n\nexport class Settings<Data = unknown> implements ISettings, IDevSettings {\n // user settings\n adapter: boolean;\n startIndex: number;\n minIndex: number;\n maxIndex: number;\n itemSize: number;\n bufferSize: number;\n padding: number;\n infinite: boolean;\n horizontal: boolean;\n windowViewport: boolean;\n viewportElement: HTMLElement | (() => void) | null;\n inverse: boolean; // if true, bwd padding element will have a priority when filling the viewport (if lack of items)\n onBeforeClip: ItemsProcessor | null; // if set, it will be run before clipping items from Buffer after they are hidden\n sizeStrategy: SizeStrategy; // \"average\" | \"frequent\", determines behavior of unknown items\n\n /**\n * Development setting.\n * If true, logging is enabled.\n * Default value: false.\n * @type {boolean}\n */\n debug: boolean; // if true,\n\n /**\n * Development setting.\n * If false, in-memory logging is enabled, Adapter.showLog() method should be called to print the log.\n * Default value: true.\n * @type {boolean}\n */\n immediateLog: boolean;\n\n /**\n * Development setting.\n * If true, time differences will be logged.\n * Default value: false.\n * @type {boolean}\n */\n logTime: boolean;\n\n /**\n * Development setting.\n * If true, process fire/run info will be logged.\n * Default value: false.\n * @type {boolean}\n */\n logProcessRun: boolean;\n\n /**\n * Development setting.\n * If true, console color formatting will be used in logs.\n * Default value: true.\n * @type {boolean}\n */\n logColor: boolean;\n\n /**\n * Development setting.\n * If set, scroll event handling is throttled (ms).\n * Default value: 40. Minimal value: 0.\n * @type {number} ms\n */\n throttle: number;\n\n /**\n * Development setting.\n * If set, the Workflow initialization will be postponed (ms).\n * Default value: 1. Minimal value: 0.\n * @type {number} ms\n */\n initDelay: number;\n\n /**\n * Development setting.\n * If set and the entire window is scrollable, the Workflow initialization will be postponed (ms).\n * Default value: 40. Minimal value: 0.\n * @type {number} ms\n */\n initWindowDelay: number;\n\n /**\n * Development setting.\n * If true, item's data will be cached along with item's size and index.\n * Default value: false.\n * @type {boolean}\n */\n cacheData: boolean;\n\n /**\n * Development setting.\n * If true, cache will not be flushed on reload.\n * Default value: false.\n * @type {boolean}\n */\n cacheOnReload: boolean;\n\n /**\n * Development setting.\n * If true, the viewport will receive \"overflowAnchor: none\" css property.\n * Default value: false.\n * @type {boolean}\n */\n dismissOverflowAnchor: boolean;\n\n /**\n * Development setting.\n * Determines the strategy of fixing the difference between estimated and real (rendered) sizes\n * on scroll position adjustments. If set to 'backward', the difference is always resolved in favour of the\n * backward direction: top/left content is fixed and appears in accordance with pre-render expectations.\n * If set to 'forward', both directions could be used, and there is a case when bottom/right content is fixed:\n * new items are to the left of the previously rendered\n * and at least one previously rendered item remains.\n * Default value: 'backward'. Allowed values: 'backward', 'forward'.\n * @type {string}\n */\n directionPriority: Direction;\n\n /**\n * Internal setting. Stores the index of the Scroller instance.\n * @type {number}\n */\n instanceIndex: number;\n\n /**\n * Internal setting. Stores the Workflow initialization delay based on initDelay and initWindowDelay settings.\n * @type {number}\n */\n initializeDelay: number;\n\n /**\n * Internal setting. Stores the viewport based on viewportElement setting (which can be element or function).\n * @type {HTMLElement|null}\n */\n viewport: HTMLElement | null;\n\n constructor(\n settings: ISettings<Data> | undefined,\n devSettings: IDevSettings | undefined,\n instanceIndex: number\n ) {\n this.parseInput(settings, SETTINGS);\n this.parseInput(devSettings, DEV_SETTINGS);\n this.instanceIndex = instanceIndex;\n this.initializeDelay = this.getInitializeDelay();\n this.viewport = this.getViewport();\n // todo: min/max indexes must be ignored if infinite mode is enabled ??\n }\n\n parseInput(\n input: ISettings<Data> | IDevSettings | undefined,\n props: ICommonProps<PropertyKey>\n ): void {\n const result = validate(input, props);\n if (!result.isValid) {\n throw new Error('Invalid settings');\n }\n Object.entries(result.params).forEach(([key, par]) =>\n Object.assign(this, { [key]: par.value })\n );\n }\n\n getInitializeDelay(): number {\n let result = 0;\n if (this.windowViewport && this.initWindowDelay && !('scrollRestoration' in history)) {\n result = this.initWindowDelay;\n }\n if (this.initDelay > 0) {\n result = Math.max(result, this.initDelay);\n }\n return result;\n }\n\n getViewport(): HTMLElement | null {\n if (typeof this.viewportElement !== 'function') {\n return this.viewportElement;\n }\n const value = this.viewportElement();\n const result = validateOne({ value }, 'value', { validators: [VALIDATORS.ELEMENT] });\n if (!result.isValid) {\n return null; // fallback to default (null) if Function didn't return HTML element synchronously\n }\n return result.value as HTMLElement;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"clip.js","sourceRoot":"","sources":["../../../../src/classes/state/clip.ts"],"names":[],"mappings":"AAAA;IAUE;QACE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAPD,sBAAI,4BAAK;aAAT;YACE,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;QACjD,CAAC;;;OAAA;IAOD,yBAAK,GAAL,UAAM,KAAe;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;IAEH,gBAAC;AAAD,CAAC,AAvBD,IAuBC","sourcesContent":["export class ClipModel {\r\n doClip: boolean;\r\n callCount: number;\r\n forceForward: boolean;\r\n forceBackward: boolean;\r\n\r\n get force(): boolean {\r\n return this.forceForward || this.forceBackward;\r\n }\r\n\r\n constructor() {\r\n this.callCount = 0;\r\n this.reset();\r\n }\r\n\r\n reset(force?: boolean): void {\r\n this.doClip = false;\r\n if (!force) {\r\n this.forceForward = false;\r\n this.forceBackward = false;\r\n }\r\n }\r\n\r\n}\r\n"]}
1
+ {"version":3,"file":"clip.js","sourceRoot":"","sources":["../../../../src/classes/state/clip.ts"],"names":[],"mappings":"AAAA;IAUE;QACE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAPD,sBAAI,4BAAK;aAAT;YACE,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;QACjD,CAAC;;;OAAA;IAOD,yBAAK,GAAL,UAAM,KAAe;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AAtBD,IAsBC","sourcesContent":["export class ClipModel {\n doClip: boolean;\n callCount: number;\n forceForward: boolean;\n forceBackward: boolean;\n\n get force(): boolean {\n return this.forceForward || this.forceBackward;\n }\n\n constructor() {\n this.callCount = 0;\n this.reset();\n }\n\n reset(force?: boolean): void {\n this.doClip = false;\n if (!force) {\n this.forceForward = false;\n this.forceBackward = false;\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"cycle.js","sourceRoot":"","sources":["../../../../src/classes/state/cycle.ts"],"names":[],"mappings":"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","sourcesContent":["import { ProcessName } from '../../interfaces/index';\r\nimport { Reactive } from '../reactive';\r\n\r\nclass InnerLoopModel {\r\n total: number;\r\n count: number;\r\n isInitial: boolean;\r\n busy: Reactive<boolean>;\r\n\r\n get first(): boolean {\r\n return this.count === 0;\r\n }\r\n\r\n constructor(total: number) {\r\n this.total = total;\r\n this.isInitial = false;\r\n this.busy = new Reactive<boolean>(false);\r\n }\r\n\r\n done() {\r\n this.isInitial = false;\r\n this.count++;\r\n this.total++;\r\n this.busy.set(false);\r\n }\r\n\r\n start() {\r\n this.busy.set(true);\r\n }\r\n\r\n dispose() {\r\n this.busy.dispose();\r\n }\r\n}\r\n\r\nexport class WorkflowCycleModel {\r\n instanceIndex: number;\r\n count: number;\r\n isInitial: boolean;\r\n initiator: ProcessName;\r\n innerLoop: InnerLoopModel;\r\n interrupter: ProcessName | null;\r\n busy: Reactive<boolean>;\r\n\r\n get loopId(): string {\r\n return `${this.instanceIndex}-${this.count}-${this.innerLoop.total}`;\r\n }\r\n\r\n get loopIdNext(): string {\r\n return `${this.instanceIndex}-${this.count}-${this.innerLoop.total + 1}`;\r\n }\r\n\r\n constructor(instanceIndex: number, cycle?: WorkflowCycleModel) {\r\n const cycleCount = cycle ? cycle.count : 1;\r\n const loopCount = cycle ? cycle.innerLoop.count : 0;\r\n\r\n this.instanceIndex = instanceIndex;\r\n this.innerLoop = new InnerLoopModel(loopCount);\r\n this.interrupter = null;\r\n this.busy = new Reactive<boolean>(false);\r\n this.end(cycleCount);\r\n }\r\n\r\n start(isInitial: boolean, initiator: ProcessName): void {\r\n this.isInitial = isInitial;\r\n this.initiator = initiator;\r\n this.innerLoop.isInitial = isInitial;\r\n this.innerLoop.count = 0;\r\n this.interrupter = null;\r\n this.busy.set(true);\r\n }\r\n\r\n end(count: number): void {\r\n this.count = count;\r\n this.isInitial = false;\r\n this.busy.set(false);\r\n }\r\n\r\n dispose(forever?: boolean): void {\r\n if (forever) {\r\n // otherwise the value will be persisted during re-instantiation\r\n this.busy.dispose();\r\n }\r\n this.innerLoop.dispose();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"cycle.js","sourceRoot":"","sources":["../../../../src/classes/state/cycle.ts"],"names":[],"mappings":"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","sourcesContent":["import { ProcessName } from '../../interfaces/index';\nimport { Reactive } from '../reactive';\n\nclass InnerLoopModel {\n total: number;\n count: number;\n isInitial: boolean;\n busy: Reactive<boolean>;\n\n get first(): boolean {\n return this.count === 0;\n }\n\n constructor(total: number) {\n this.total = total;\n this.isInitial = false;\n this.busy = new Reactive<boolean>(false);\n }\n\n done() {\n this.isInitial = false;\n this.count++;\n this.total++;\n this.busy.set(false);\n }\n\n start() {\n this.busy.set(true);\n }\n\n dispose() {\n this.busy.dispose();\n }\n}\n\nexport class WorkflowCycleModel {\n instanceIndex: number;\n count: number;\n isInitial: boolean;\n initiator: ProcessName;\n innerLoop: InnerLoopModel;\n interrupter: ProcessName | null;\n busy: Reactive<boolean>;\n\n get loopId(): string {\n return `${this.instanceIndex}-${this.count}-${this.innerLoop.total}`;\n }\n\n get loopIdNext(): string {\n return `${this.instanceIndex}-${this.count}-${this.innerLoop.total + 1}`;\n }\n\n constructor(instanceIndex: number, cycle?: WorkflowCycleModel) {\n const cycleCount = cycle ? cycle.count : 1;\n const loopCount = cycle ? cycle.innerLoop.count : 0;\n\n this.instanceIndex = instanceIndex;\n this.innerLoop = new InnerLoopModel(loopCount);\n this.interrupter = null;\n this.busy = new Reactive<boolean>(false);\n this.end(cycleCount);\n }\n\n start(isInitial: boolean, initiator: ProcessName): void {\n this.isInitial = isInitial;\n this.initiator = initiator;\n this.innerLoop.isInitial = isInitial;\n this.innerLoop.count = 0;\n this.interrupter = null;\n this.busy.set(true);\n }\n\n end(count: number): void {\n this.count = count;\n this.isInitial = false;\n this.busy.set(false);\n }\n\n dispose(forever?: boolean): void {\n if (forever) {\n // otherwise the value will be persisted during re-instantiation\n this.busy.dispose();\n }\n this.innerLoop.dispose();\n }\n}\n"]}
@@ -86,7 +86,7 @@ var FetchModel = /** @class */ (function () {
86
86
  });
87
87
  Object.defineProperty(FetchModel.prototype, "hasNewItems", {
88
88
  get: function () {
89
- return !!((this._newItemsData && this._newItemsData.length));
89
+ return !!(this._newItemsData && this._newItemsData.length);
90
90
  },
91
91
  enumerable: false,
92
92
  configurable: true
@@ -100,7 +100,9 @@ var FetchModel = /** @class */ (function () {
100
100
  });
101
101
  Object.defineProperty(FetchModel.prototype, "count", {
102
102
  get: function () {
103
- return !isNaN(this.first.index) && !isNaN(this.last.index) ? this.last.index - this.first.index + 1 : 0;
103
+ return !isNaN(this.first.index) && !isNaN(this.last.index)
104
+ ? this.last.index - this.first.index + 1
105
+ : 0;
104
106
  },
105
107
  enumerable: false,
106
108
  configurable: true
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../src/classes/state/fetch.ts"],"names":[],"mappings":"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","sourcesContent":["import { Item } from '../item';\r\nimport { Direction } from '../../inputs/index';\r\n\r\nclass Positions {\r\n startDelta: number;\r\n before: number;\r\n relative: number;\r\n start: number;\r\n end: number;\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset() {\r\n this.startDelta = 0;\r\n this.before = 0;\r\n }\r\n}\r\n\r\nclass First {\r\n index: number;\r\n indexBuffer: number;\r\n position: number;\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset() {\r\n this.index = NaN;\r\n this.indexBuffer = NaN;\r\n this.position = NaN;\r\n }\r\n}\r\n\r\nclass Last {\r\n index: number;\r\n indexBuffer: number;\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset() {\r\n this.index = NaN;\r\n this.indexBuffer = NaN;\r\n }\r\n}\r\n\r\nclass FirstVisible {\r\n index: number;\r\n delta: number;\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset() {\r\n this.index = NaN;\r\n this.delta = 0;\r\n }\r\n}\r\n\r\nexport class FetchModel {\r\n private readonly directionPriority: Direction;\r\n private _newItemsData: unknown[] | null; // there are public setter and getter\r\n\r\n items: Item[];\r\n positions: Positions;\r\n first: First;\r\n last: Last;\r\n hasAnotherPack: boolean;\r\n callCount: number;\r\n minIndex: number;\r\n firstVisible: FirstVisible;\r\n direction: Direction | null;\r\n cancel: (() => void) | null;\r\n\r\n simulate: boolean;\r\n isCheck: boolean;\r\n doRemove: boolean;\r\n\r\n constructor(directionPriority: Direction) {\r\n this.directionPriority = directionPriority;\r\n this.callCount = 0;\r\n this.positions = new Positions();\r\n this.first = new First();\r\n this.last = new Last();\r\n this.firstVisible = new FirstVisible();\r\n this.reset();\r\n }\r\n\r\n reset(): void {\r\n this._newItemsData = null;\r\n this.items = [];\r\n this.positions.reset();\r\n this.first.reset();\r\n this.last.reset();\r\n this.firstVisible.reset();\r\n this.hasAnotherPack = false;\r\n this.direction = null;\r\n this.cancel = null;\r\n this.simulate = false;\r\n this.isCheck = false;\r\n this.doRemove = false;\r\n }\r\n\r\n get newItemsData(): unknown[] | null {\r\n return this._newItemsData;\r\n }\r\n\r\n set newItemsData(items: unknown[] | null) {\r\n this._newItemsData = items;\r\n if (items && items.length) {\r\n this.callCount++;\r\n }\r\n }\r\n\r\n get shouldFetch(): boolean {\r\n return !!this.count;\r\n }\r\n\r\n get hasNewItems(): boolean {\r\n return !!((this._newItemsData && this._newItemsData.length));\r\n }\r\n\r\n get index(): number {\r\n return this.first.index;\r\n }\r\n\r\n get count(): number {\r\n return !isNaN(this.first.index) && !isNaN(this.last.index) ? this.last.index - this.first.index + 1 : 0;\r\n }\r\n\r\n shouldCheckPreSizeExpectation(lastBufferedIndex: number): boolean {\r\n if (this.directionPriority === Direction.backward) {\r\n return false;\r\n }\r\n const lastFetched = this.items[this.items.length - 1];\r\n return lastFetched && lastFetched.$index < lastBufferedIndex;\r\n }\r\n\r\n startSimulate(items: Item[]): void {\r\n this.simulate = true;\r\n this._newItemsData = items.map(item => item.data);\r\n this.items = items;\r\n this.hasAnotherPack = false;\r\n }\r\n\r\n stopSimulate(): void {\r\n this.simulate = false;\r\n this.isCheck = false;\r\n this.doRemove = false;\r\n }\r\n\r\n fill(items: Item[], start: number): void {\r\n this.startSimulate(items);\r\n this.first.index = items[0].$index;\r\n this.last.index = items[items.length - 1].$index;\r\n this.direction = Direction.forward;\r\n this.firstVisible.index = start;\r\n this.firstVisible.delta = 0;\r\n }\r\n\r\n check(items: Item[]): void {\r\n this.startSimulate(items);\r\n this.last.index = items[0].$index;\r\n this.first.index = items[items.length - 1].$index;\r\n this.isCheck = true;\r\n }\r\n\r\n update(index: number, delta: number, items: Item[], itemsToRemove: Item[]): void {\r\n this.startSimulate(items);\r\n this.firstVisible.index = index;\r\n this.firstVisible.delta = delta;\r\n this.doRemove = itemsToRemove.length > 0;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../src/classes/state/fetch.ts"],"names":[],"mappings":"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","sourcesContent":["import { Item } from '../item';\nimport { Direction } from '../../inputs/index';\n\nclass Positions {\n startDelta: number;\n before: number;\n relative: number;\n start: number;\n end: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.startDelta = 0;\n this.before = 0;\n }\n}\n\nclass First {\n index: number;\n indexBuffer: number;\n position: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.index = NaN;\n this.indexBuffer = NaN;\n this.position = NaN;\n }\n}\n\nclass Last {\n index: number;\n indexBuffer: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.index = NaN;\n this.indexBuffer = NaN;\n }\n}\n\nclass FirstVisible {\n index: number;\n delta: number;\n\n constructor() {\n this.reset();\n }\n\n reset() {\n this.index = NaN;\n this.delta = 0;\n }\n}\n\nexport class FetchModel {\n private readonly directionPriority: Direction;\n private _newItemsData: unknown[] | null; // there are public setter and getter\n\n items: Item[];\n positions: Positions;\n first: First;\n last: Last;\n hasAnotherPack: boolean;\n callCount: number;\n minIndex: number;\n firstVisible: FirstVisible;\n direction: Direction | null;\n cancel: (() => void) | null;\n\n simulate: boolean;\n isCheck: boolean;\n doRemove: boolean;\n\n constructor(directionPriority: Direction) {\n this.directionPriority = directionPriority;\n this.callCount = 0;\n this.positions = new Positions();\n this.first = new First();\n this.last = new Last();\n this.firstVisible = new FirstVisible();\n this.reset();\n }\n\n reset(): void {\n this._newItemsData = null;\n this.items = [];\n this.positions.reset();\n this.first.reset();\n this.last.reset();\n this.firstVisible.reset();\n this.hasAnotherPack = false;\n this.direction = null;\n this.cancel = null;\n this.simulate = false;\n this.isCheck = false;\n this.doRemove = false;\n }\n\n get newItemsData(): unknown[] | null {\n return this._newItemsData;\n }\n\n set newItemsData(items: unknown[] | null) {\n this._newItemsData = items;\n if (items && items.length) {\n this.callCount++;\n }\n }\n\n get shouldFetch(): boolean {\n return !!this.count;\n }\n\n get hasNewItems(): boolean {\n return !!(this._newItemsData && this._newItemsData.length);\n }\n\n get index(): number {\n return this.first.index;\n }\n\n get count(): number {\n return !isNaN(this.first.index) && !isNaN(this.last.index)\n ? this.last.index - this.first.index + 1\n : 0;\n }\n\n shouldCheckPreSizeExpectation(lastBufferedIndex: number): boolean {\n if (this.directionPriority === Direction.backward) {\n return false;\n }\n const lastFetched = this.items[this.items.length - 1];\n return lastFetched && lastFetched.$index < lastBufferedIndex;\n }\n\n startSimulate(items: Item[]): void {\n this.simulate = true;\n this._newItemsData = items.map(item => item.data);\n this.items = items;\n this.hasAnotherPack = false;\n }\n\n stopSimulate(): void {\n this.simulate = false;\n this.isCheck = false;\n this.doRemove = false;\n }\n\n fill(items: Item[], start: number): void {\n this.startSimulate(items);\n this.first.index = items[0].$index;\n this.last.index = items[items.length - 1].$index;\n this.direction = Direction.forward;\n this.firstVisible.index = start;\n this.firstVisible.delta = 0;\n }\n\n check(items: Item[]): void {\n this.startSimulate(items);\n this.last.index = items[0].$index;\n this.first.index = items[items.length - 1].$index;\n this.isCheck = true;\n }\n\n update(index: number, delta: number, items: Item[], itemsToRemove: Item[]): void {\n this.startSimulate(items);\n this.firstVisible.index = index;\n this.firstVisible.delta = delta;\n this.doRemove = itemsToRemove.length > 0;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../src/classes/state/render.ts"],"names":[],"mappings":"AAAA;IAUE;QACE,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAND,sBAAI,+BAAM;aAAV;YACE,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC;QAC5C,CAAC;;;OAAA;IAMD,2BAAK,GAAL;QACE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IACH,kBAAC;AAAD,CAAC,AApBD,IAoBC","sourcesContent":["export class RenderModel {\r\n sizeBefore: number;\r\n sizeAfter: number;\r\n positionBefore: number;\r\n cancel: (() => void) | null;\r\n\r\n get noSize(): boolean {\r\n return this.sizeBefore === this.sizeAfter;\r\n }\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset(): void {\r\n this.sizeBefore = 0;\r\n this.sizeAfter = 0;\r\n this.positionBefore = 0;\r\n this.cancel = null;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../src/classes/state/render.ts"],"names":[],"mappings":"AAAA;IAUE;QACE,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAND,sBAAI,+BAAM;aAAV;YACE,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC;QAC5C,CAAC;;;OAAA;IAMD,2BAAK,GAAL;QACE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IACH,kBAAC;AAAD,CAAC,AApBD,IAoBC","sourcesContent":["export class RenderModel {\n sizeBefore: number;\n sizeAfter: number;\n positionBefore: number;\n cancel: (() => void) | null;\n\n get noSize(): boolean {\n return this.sizeBefore === this.sizeAfter;\n }\n\n constructor() {\n this.reset();\n }\n\n reset(): void {\n this.sizeBefore = 0;\n this.sizeAfter = 0;\n this.positionBefore = 0;\n this.cancel = null;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../../src/classes/state/scroll.ts"],"names":[],"mappings":"AAEA;IAaE;QACE,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,2BAAK,GAAL;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,0BAAI,GAAJ;QACE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,wCAAkB,GAAlB,UAAmB,QAAgB;QACjC,IAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACzC,IAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACvC,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,QAAQ,CAAC;IACxF,CAAC;IACH,kBAAC;AAAD,CAAC,AA5CD,IA4CC","sourcesContent":["import { ScrollEventData as IScrollEventData } from '../../interfaces/index';\r\n\r\nexport class ScrollModel {\r\n previous: IScrollEventData | null;\r\n current: IScrollEventData | null;\r\n\r\n scrollTimer: ReturnType<typeof setTimeout> | null;\r\n\r\n syntheticPosition: number | null;\r\n syntheticFulfill: boolean;\r\n cancelAnimation: (() => void) | null;\r\n positionBeforeAsync: number | null;\r\n positionBeforeAdjust: number | null;\r\n positionAfterAdjust: number | null;\r\n\r\n constructor() {\r\n this.reset();\r\n }\r\n\r\n reset(): void {\r\n this.previous = null;\r\n this.current = null;\r\n this.syntheticPosition = null;\r\n this.syntheticFulfill = false;\r\n this.positionBeforeAsync = null;\r\n this.positionBeforeAdjust = null;\r\n this.positionAfterAdjust = null;\r\n this.stop();\r\n }\r\n\r\n stop(): void {\r\n if (this.scrollTimer) {\r\n clearTimeout(this.scrollTimer);\r\n this.scrollTimer = null;\r\n }\r\n if (this.cancelAnimation) {\r\n this.cancelAnimation();\r\n this.cancelAnimation = null;\r\n }\r\n }\r\n\r\n hasPositionChanged(position: number): boolean {\r\n const before = this.positionBeforeAdjust;\r\n const after = this.positionAfterAdjust;\r\n return before === null || before !== position || after === null || after !== position;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../../src/classes/state/scroll.ts"],"names":[],"mappings":"AAEA;IAaE;QACE,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,2BAAK,GAAL;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED,0BAAI,GAAJ;QACE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,wCAAkB,GAAlB,UAAmB,QAAgB;QACjC,IAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACzC,IAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACvC,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,QAAQ,CAAC;IACxF,CAAC;IACH,kBAAC;AAAD,CAAC,AA5CD,IA4CC","sourcesContent":["import { ScrollEventData as IScrollEventData } from '../../interfaces/index';\n\nexport class ScrollModel {\n previous: IScrollEventData | null;\n current: IScrollEventData | null;\n\n scrollTimer: ReturnType<typeof setTimeout> | null;\n\n syntheticPosition: number | null;\n syntheticFulfill: boolean;\n cancelAnimation: (() => void) | null;\n positionBeforeAsync: number | null;\n positionBeforeAdjust: number | null;\n positionAfterAdjust: number | null;\n\n constructor() {\n this.reset();\n }\n\n reset(): void {\n this.previous = null;\n this.current = null;\n this.syntheticPosition = null;\n this.syntheticFulfill = false;\n this.positionBeforeAsync = null;\n this.positionBeforeAdjust = null;\n this.positionAfterAdjust = null;\n this.stop();\n }\n\n stop(): void {\n if (this.scrollTimer) {\n clearTimeout(this.scrollTimer);\n this.scrollTimer = null;\n }\n if (this.cancelAnimation) {\n this.cancelAnimation();\n this.cancelAnimation = null;\n }\n }\n\n hasPositionChanged(position: number): boolean {\n const before = this.positionBeforeAdjust;\n const after = this.positionAfterAdjust;\n return before === null || before !== position || after === null || after !== position;\n }\n}\n"]}
@@ -39,10 +39,12 @@ var State = /** @class */ (function () {
39
39
  }
40
40
  clip.reset(clip.force);
41
41
  render.reset();
42
- return __assign({}, (cycle.innerLoop.first ? {
43
- process: cycle.initiator,
44
- doRender: fetch.simulate && fetch.items.length > 0
45
- } : {}));
42
+ return __assign({}, (cycle.innerLoop.first
43
+ ? {
44
+ process: cycle.initiator,
45
+ doRender: fetch.simulate && fetch.items.length > 0
46
+ }
47
+ : {}));
46
48
  };
47
49
  State.prototype.endInnerLoop = function () {
48
50
  var _a = this, fetch = _a.fetch, clip = _a.clip, render = _a.render, cycle = _a.cycle;
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/classes/state.ts"],"names":[],"mappings":"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","sourcesContent":["import { Settings } from './settings';\r\nimport { Reactive } from './reactive';\r\nimport { WorkflowCycleModel } from './state/cycle';\r\nimport { FetchModel } from './state/fetch';\r\nimport { ClipModel } from './state/clip';\r\nimport { RenderModel } from './state/render';\r\nimport { ScrollModel } from './state/scroll';\r\nimport { State as IState, IPackages, ProcessName } from '../interfaces/index';\r\n\r\nexport class State implements IState {\r\n\r\n readonly packageInfo: IPackages;\r\n private settings: Settings;\r\n initTime: number;\r\n paused: Reactive<boolean>;\r\n\r\n cycle: WorkflowCycleModel;\r\n fetch: FetchModel;\r\n clip: ClipModel;\r\n render: RenderModel;\r\n scroll: ScrollModel;\r\n\r\n get time(): number {\r\n return Number(new Date()) - this.initTime;\r\n }\r\n\r\n constructor(packageInfo: IPackages, settings: Settings, state?: IState) {\r\n this.packageInfo = packageInfo;\r\n this.settings = settings;\r\n this.initTime = Number(new Date());\r\n this.paused = new Reactive(false);\r\n\r\n this.cycle = new WorkflowCycleModel(this.settings.instanceIndex, state ? state.cycle : void 0);\r\n this.fetch = new FetchModel(settings.directionPriority);\r\n this.clip = new ClipModel();\r\n this.render = new RenderModel();\r\n this.scroll = new ScrollModel();\r\n }\r\n\r\n startWorkflowCycle(isInitial: boolean, initiator: ProcessName): void {\r\n this.cycle.start(isInitial, initiator);\r\n }\r\n\r\n endWorkflowCycle(count: number): void {\r\n this.cycle.end(count);\r\n }\r\n\r\n startInnerLoop(): { process?: ProcessName, doRender?: boolean } {\r\n const { cycle, scroll: scroll, fetch, render, clip } = this;\r\n\r\n cycle.innerLoop.start();\r\n scroll.positionBeforeAsync = null;\r\n\r\n if (!fetch.simulate) {\r\n fetch.reset();\r\n }\r\n clip.reset(clip.force);\r\n render.reset();\r\n\r\n return {\r\n ...(cycle.innerLoop.first ? {\r\n process: cycle.initiator,\r\n doRender: fetch.simulate && fetch.items.length > 0\r\n } : {})\r\n };\r\n }\r\n\r\n endInnerLoop(): void {\r\n const { fetch, clip, render, cycle } = this;\r\n fetch.stopSimulate();\r\n clip.reset(true);\r\n if (fetch.cancel) {\r\n fetch.cancel();\r\n fetch.cancel = null;\r\n }\r\n if (render.cancel) {\r\n render.cancel();\r\n render.cancel = null;\r\n }\r\n cycle.innerLoop.done();\r\n }\r\n\r\n dispose(): void {\r\n this.scroll.stop();\r\n this.cycle.dispose();\r\n this.paused.dispose();\r\n this.endInnerLoop();\r\n }\r\n\r\n}\r\n"]}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/classes/state.ts"],"names":[],"mappings":"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","sourcesContent":["import { Settings } from './settings';\nimport { Reactive } from './reactive';\nimport { WorkflowCycleModel } from './state/cycle';\nimport { FetchModel } from './state/fetch';\nimport { ClipModel } from './state/clip';\nimport { RenderModel } from './state/render';\nimport { ScrollModel } from './state/scroll';\nimport { State as IState, IPackages, ProcessName } from '../interfaces/index';\n\nexport class State implements IState {\n readonly packageInfo: IPackages;\n private settings: Settings;\n initTime: number;\n paused: Reactive<boolean>;\n\n cycle: WorkflowCycleModel;\n fetch: FetchModel;\n clip: ClipModel;\n render: RenderModel;\n scroll: ScrollModel;\n\n get time(): number {\n return Number(new Date()) - this.initTime;\n }\n\n constructor(packageInfo: IPackages, settings: Settings, state?: IState) {\n this.packageInfo = packageInfo;\n this.settings = settings;\n this.initTime = Number(new Date());\n this.paused = new Reactive(false);\n\n this.cycle = new WorkflowCycleModel(this.settings.instanceIndex, state ? state.cycle : void 0);\n this.fetch = new FetchModel(settings.directionPriority);\n this.clip = new ClipModel();\n this.render = new RenderModel();\n this.scroll = new ScrollModel();\n }\n\n startWorkflowCycle(isInitial: boolean, initiator: ProcessName): void {\n this.cycle.start(isInitial, initiator);\n }\n\n endWorkflowCycle(count: number): void {\n this.cycle.end(count);\n }\n\n startInnerLoop(): { process?: ProcessName; doRender?: boolean } {\n const { cycle, scroll: scroll, fetch, render, clip } = this;\n\n cycle.innerLoop.start();\n scroll.positionBeforeAsync = null;\n\n if (!fetch.simulate) {\n fetch.reset();\n }\n clip.reset(clip.force);\n render.reset();\n\n return {\n ...(cycle.innerLoop.first\n ? {\n process: cycle.initiator,\n doRender: fetch.simulate && fetch.items.length > 0\n }\n : {})\n };\n }\n\n endInnerLoop(): void {\n const { fetch, clip, render, cycle } = this;\n fetch.stopSimulate();\n clip.reset(true);\n if (fetch.cancel) {\n fetch.cancel();\n fetch.cancel = null;\n }\n if (render.cancel) {\n render.cancel();\n render.cancel = null;\n }\n cycle.innerLoop.done();\n }\n\n dispose(): void {\n this.scroll.stop();\n this.cycle.dispose();\n this.paused.dispose();\n this.endInnerLoop();\n }\n}\n"]}
@@ -24,7 +24,8 @@ var Viewport = /** @class */ (function () {
24
24
  this.routines.setScrollPosition(value);
25
25
  var position = this.scrollPosition;
26
26
  this.logger.log(function () { return __spreadArray([
27
- 'setting scroll position at', position
27
+ 'setting scroll position at',
28
+ position
28
29
  ], __read((position !== value ? ["(".concat(value, ")")] : [])), false); });
29
30
  return position;
30
31
  };
@@ -67,7 +68,7 @@ var Viewport = /** @class */ (function () {
67
68
  for (var i = bwd ? 0 : items.length - 1; bwd ? i <= items.length - 1 : i >= 0; i += bwd ? 1 : -1) {
68
69
  var itemEdge = this.routines.getEdge(items[i].element, opposite);
69
70
  diff = itemEdge - viewportEdge;
70
- if (bwd && diff > 0 || !bwd && diff < 0) {
71
+ if ((bwd && diff > 0) || (!bwd && diff < 0)) {
71
72
  item = items[i];
72
73
  break;
73
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../src/classes/viewport.ts"],"names":[],"mappings":"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","sourcesContent":["import { Paddings } from './paddings';\r\nimport { Settings } from './settings';\r\nimport { Routines } from './domRoutines';\r\nimport { Item } from './item';\r\nimport { State } from './state';\r\nimport { Logger } from './logger';\r\nimport { Direction } from '../inputs/index';\r\n\r\nexport class Viewport {\r\n\r\n offset: number;\r\n paddings: Paddings;\r\n\r\n readonly settings: Settings;\r\n readonly routines: Routines;\r\n readonly state: State;\r\n readonly logger: Logger;\r\n\r\n constructor(settings: Settings, routines: Routines, state: State, logger: Logger) {\r\n this.settings = settings;\r\n this.routines = routines;\r\n this.state = state;\r\n this.logger = logger;\r\n this.paddings = new Paddings(this.routines, settings);\r\n }\r\n\r\n reset(startIndex: number): void {\r\n this.setOffset();\r\n this.paddings.reset(this.getSize(), startIndex, this.offset);\r\n this.scrollPosition = this.paddings.backward.size || 0;\r\n this.state.scroll.reset();\r\n }\r\n\r\n setPosition(value: number): number {\r\n const oldPosition = this.scrollPosition;\r\n if (oldPosition === value) {\r\n this.logger.log(() => ['setting scroll position at', value, '[cancelled]']);\r\n return value;\r\n }\r\n this.routines.setScrollPosition(value);\r\n const position = this.scrollPosition;\r\n this.logger.log(() => [\r\n 'setting scroll position at', position, ...(position !== value ? [`(${value})`] : [])\r\n ]);\r\n return position;\r\n }\r\n\r\n get scrollPosition(): number {\r\n return this.routines.getScrollPosition();\r\n }\r\n\r\n set scrollPosition(value: number) {\r\n this.setPosition(value);\r\n }\r\n\r\n getSize(): number {\r\n return this.routines.getViewportSize();\r\n }\r\n\r\n getScrollableSize(): number {\r\n return this.routines.getScrollerSize();\r\n }\r\n\r\n getMaxScrollPosition(): number {\r\n return this.getScrollableSize() - this.getSize();\r\n }\r\n\r\n getBufferPadding(): number {\r\n return this.getSize() * this.settings.padding;\r\n }\r\n\r\n getEdge(direction: Direction): number {\r\n return this.routines.getViewportEdge(direction);\r\n }\r\n\r\n setOffset(): void {\r\n this.offset = this.routines.getOffset();\r\n }\r\n\r\n findItemElementById(id: string): HTMLElement | null {\r\n return this.routines.findItemElement(id);\r\n }\r\n\r\n getEdgeVisibleItem(items: Item[], direction: Direction): { item?: Item, index: number, diff: number } {\r\n const bwd = direction === Direction.backward;\r\n const opposite = bwd ? Direction.forward : Direction.backward;\r\n const viewportEdge = this.getEdge(direction);\r\n let item, diff = 0;\r\n for (\r\n let i = bwd ? 0 : items.length - 1;\r\n bwd ? i <= items.length - 1 : i >= 0;\r\n i += bwd ? 1 : -1\r\n ) {\r\n const itemEdge = this.routines.getEdge(items[i].element, opposite);\r\n diff = itemEdge - viewportEdge;\r\n if (bwd && diff > 0 || !bwd && diff < 0) {\r\n item = items[i];\r\n break;\r\n }\r\n }\r\n return { item, index: item ? item.$index : NaN, diff };\r\n }\r\n\r\n}\r\n"]}
1
+ {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../src/classes/viewport.ts"],"names":[],"mappings":"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","sourcesContent":["import { Paddings } from './paddings';\nimport { Settings } from './settings';\nimport { Routines } from './domRoutines';\nimport { Item } from './item';\nimport { State } from './state';\nimport { Logger } from './logger';\nimport { Direction } from '../inputs/index';\n\nexport class Viewport {\n offset: number;\n paddings: Paddings;\n\n readonly settings: Settings;\n readonly routines: Routines;\n readonly state: State;\n readonly logger: Logger;\n\n constructor(settings: Settings, routines: Routines, state: State, logger: Logger) {\n this.settings = settings;\n this.routines = routines;\n this.state = state;\n this.logger = logger;\n this.paddings = new Paddings(this.routines, settings);\n }\n\n reset(startIndex: number): void {\n this.setOffset();\n this.paddings.reset(this.getSize(), startIndex, this.offset);\n this.scrollPosition = this.paddings.backward.size || 0;\n this.state.scroll.reset();\n }\n\n setPosition(value: number): number {\n const oldPosition = this.scrollPosition;\n if (oldPosition === value) {\n this.logger.log(() => ['setting scroll position at', value, '[cancelled]']);\n return value;\n }\n this.routines.setScrollPosition(value);\n const position = this.scrollPosition;\n this.logger.log(() => [\n 'setting scroll position at',\n position,\n ...(position !== value ? [`(${value})`] : [])\n ]);\n return position;\n }\n\n get scrollPosition(): number {\n return this.routines.getScrollPosition();\n }\n\n set scrollPosition(value: number) {\n this.setPosition(value);\n }\n\n getSize(): number {\n return this.routines.getViewportSize();\n }\n\n getScrollableSize(): number {\n return this.routines.getScrollerSize();\n }\n\n getMaxScrollPosition(): number {\n return this.getScrollableSize() - this.getSize();\n }\n\n getBufferPadding(): number {\n return this.getSize() * this.settings.padding;\n }\n\n getEdge(direction: Direction): number {\n return this.routines.getViewportEdge(direction);\n }\n\n setOffset(): void {\n this.offset = this.routines.getOffset();\n }\n\n findItemElementById(id: string): HTMLElement | null {\n return this.routines.findItemElement(id);\n }\n\n getEdgeVisibleItem(\n items: Item[],\n direction: Direction\n ): { item?: Item; index: number; diff: number } {\n const bwd = direction === Direction.backward;\n const opposite = bwd ? Direction.forward : Direction.backward;\n const viewportEdge = this.getEdge(direction);\n let item,\n diff = 0;\n for (\n let i = bwd ? 0 : items.length - 1;\n bwd ? i <= items.length - 1 : i >= 0;\n i += bwd ? 1 : -1\n ) {\n const itemEdge = this.routines.getEdge(items[i].element, opposite);\n diff = itemEdge - viewportEdge;\n if ((bwd && diff > 0) || (!bwd && diff < 0)) {\n item = items[i];\n break;\n }\n }\n return { item, index: item ? item.$index : NaN, diff };\n }\n}\n"]}
@@ -6,5 +6,5 @@ import { INVALID_DATASOURCE_PREFIX } from './scroller';
6
6
  import { AdapterPropName, EMPTY_ITEM, getDefaultAdapterProps } from './classes/adapter/props';
7
7
  import { Direction, SizeStrategy } from './inputs/index';
8
8
  // export entities
9
- export { Workflow, makeDatasource, Routines, packageInfo, INVALID_DATASOURCE_PREFIX, AdapterPropName, EMPTY_ITEM, getDefaultAdapterProps, Direction, SizeStrategy, };
9
+ export { Workflow, makeDatasource, Routines, packageInfo, INVALID_DATASOURCE_PREFIX, AdapterPropName, EMPTY_ITEM, getDefaultAdapterProps, Direction, SizeStrategy };
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,WAAW,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAazD,kBAAkB;AAClB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,UAAU,EACV,sBAAsB,EACtB,SAAS,EACT,YAAY,GACb,CAAC","sourcesContent":["import { Workflow } from './workflow';\r\nimport { makeDatasource } from './classes/datasource';\r\nimport { Routines } from './classes/domRoutines';\r\nimport packageInfo from './version';\r\nimport { INVALID_DATASOURCE_PREFIX } from './scroller';\r\nimport { AdapterPropName, EMPTY_ITEM, getDefaultAdapterProps } from './classes/adapter/props';\r\nimport { Direction, SizeStrategy } from './inputs/index';\r\n\r\nimport {\r\n IDatasource,\r\n IDatasourceConstructed,\r\n IRoutines,\r\n IReactivePropConfig,\r\n IAdapterConfig,\r\n ItemAdapter,\r\n IAdapter,\r\n Item,\r\n} from './interfaces/index';\r\n\r\n// export entities\r\nexport {\r\n Workflow,\r\n makeDatasource,\r\n Routines,\r\n packageInfo,\r\n INVALID_DATASOURCE_PREFIX,\r\n AdapterPropName,\r\n EMPTY_ITEM,\r\n getDefaultAdapterProps,\r\n Direction,\r\n SizeStrategy,\r\n};\r\n\r\n// export interfaces\r\nexport {\r\n IDatasource,\r\n IDatasourceConstructed,\r\n IRoutines,\r\n IReactivePropConfig,\r\n IAdapterConfig,\r\n ItemAdapter as IAdapterItem,\r\n IAdapter,\r\n Item,\r\n};\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,WAAW,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAazD,kBAAkB;AAClB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,UAAU,EACV,sBAAsB,EACtB,SAAS,EACT,YAAY,EACb,CAAC","sourcesContent":["import { Workflow } from './workflow';\nimport { makeDatasource } from './classes/datasource';\nimport { Routines } from './classes/domRoutines';\nimport packageInfo from './version';\nimport { INVALID_DATASOURCE_PREFIX } from './scroller';\nimport { AdapterPropName, EMPTY_ITEM, getDefaultAdapterProps } from './classes/adapter/props';\nimport { Direction, SizeStrategy } from './inputs/index';\n\nimport {\n IDatasource,\n IDatasourceConstructed,\n IRoutines,\n IReactivePropConfig,\n IAdapterConfig,\n ItemAdapter,\n IAdapter,\n Item\n} from './interfaces/index';\n\n// export entities\nexport {\n Workflow,\n makeDatasource,\n Routines,\n packageInfo,\n INVALID_DATASOURCE_PREFIX,\n AdapterPropName,\n EMPTY_ITEM,\n getDefaultAdapterProps,\n Direction,\n SizeStrategy\n};\n\n// export interfaces\nexport {\n IDatasource,\n IDatasourceConstructed,\n IRoutines,\n IReactivePropConfig,\n IAdapterConfig,\n ItemAdapter as IAdapterItem,\n IAdapter,\n Item\n};\n"]}
@@ -125,24 +125,44 @@ var INSERT_METHOD_PARAMS = (_g = {},
125
125
  mandatory: true
126
126
  },
127
127
  _g[AdapterInsertParams.before] = {
128
- validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([
129
- AdapterInsertParams.after, AdapterInsertParams.beforeIndex, AdapterInsertParams.afterIndex
130
- ])]
128
+ validators: [
129
+ FUNC_WITH_X_ARGUMENTS(1),
130
+ ONE_OF_MUST([
131
+ AdapterInsertParams.after,
132
+ AdapterInsertParams.beforeIndex,
133
+ AdapterInsertParams.afterIndex
134
+ ])
135
+ ]
131
136
  },
132
137
  _g[AdapterInsertParams.after] = {
133
- validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([
134
- AdapterInsertParams.before, AdapterInsertParams.beforeIndex, AdapterInsertParams.afterIndex
135
- ])]
138
+ validators: [
139
+ FUNC_WITH_X_ARGUMENTS(1),
140
+ ONE_OF_MUST([
141
+ AdapterInsertParams.before,
142
+ AdapterInsertParams.beforeIndex,
143
+ AdapterInsertParams.afterIndex
144
+ ])
145
+ ]
136
146
  },
137
147
  _g[AdapterInsertParams.beforeIndex] = {
138
- validators: [INTEGER, ONE_OF_MUST([
139
- AdapterInsertParams.before, AdapterInsertParams.after, AdapterInsertParams.afterIndex
140
- ])]
148
+ validators: [
149
+ INTEGER,
150
+ ONE_OF_MUST([
151
+ AdapterInsertParams.before,
152
+ AdapterInsertParams.after,
153
+ AdapterInsertParams.afterIndex
154
+ ])
155
+ ]
141
156
  },
142
157
  _g[AdapterInsertParams.afterIndex] = {
143
- validators: [INTEGER, ONE_OF_MUST([
144
- AdapterInsertParams.before, AdapterInsertParams.after, AdapterInsertParams.beforeIndex
145
- ])]
158
+ validators: [
159
+ INTEGER,
160
+ ONE_OF_MUST([
161
+ AdapterInsertParams.before,
162
+ AdapterInsertParams.after,
163
+ AdapterInsertParams.beforeIndex
164
+ ])
165
+ ]
146
166
  },
147
167
  _g[AdapterInsertParams.decrease] = {
148
168
  validators: [BOOLEAN],
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/inputs/adapter.ts"],"names":[],"mappings":"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","sourcesContent":["import { VALIDATORS } from './validation';\r\nimport { DatasourceProps as AdapterResetParams } from './datasource';\r\nimport { AdapterProcess as Process } from '../processes/misc/enums';\r\nimport { ICommonProps, AdapterProcessMap } from '../interfaces/index';\r\n\r\nconst {\r\n INTEGER,\r\n INTEGER_UNLIMITED,\r\n BOOLEAN,\r\n OBJECT,\r\n ITEM_LIST,\r\n FUNC_WITH_X_ARGUMENTS,\r\n FUNC_WITH_X_AND_MORE_ARGUMENTS,\r\n FUNC_WITH_X_TO_Y_ARGUMENTS,\r\n ONE_OF_MUST,\r\n ONE_OF_CAN,\r\n OR,\r\n} = VALIDATORS;\r\n\r\nenum AdapterNoParams { }\r\nconst NO_METHOD_PARAMS: ICommonProps<AdapterNoParams> = {};\r\n\r\nconst RESET_METHOD_PARAMS: ICommonProps<AdapterResetParams> = {\r\n [AdapterResetParams.get]: {\r\n validators: [FUNC_WITH_X_AND_MORE_ARGUMENTS(2)]\r\n },\r\n [AdapterResetParams.settings]: {\r\n validators: [OBJECT]\r\n },\r\n [AdapterResetParams.devSettings]: {\r\n validators: [OBJECT]\r\n },\r\n};\r\n\r\nenum AdapterReloadParams {\r\n reloadIndex = 'reloadIndex',\r\n}\r\n\r\nconst RELOAD_METHOD_PARAMS: ICommonProps<AdapterReloadParams> = {\r\n [AdapterReloadParams.reloadIndex]: {\r\n validators: [INTEGER]\r\n },\r\n};\r\n\r\nenum AdapterPrependParams {\r\n items = 'items',\r\n bof = 'bof',\r\n increase = 'increase',\r\n virtualize = 'virtualize',\r\n}\r\n\r\nconst PREPEND_METHOD_PARAMS: ICommonProps<AdapterPrependParams> = {\r\n [AdapterPrependParams.items]: {\r\n validators: [ITEM_LIST],\r\n mandatory: true\r\n },\r\n [AdapterPrependParams.bof]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterPrependParams.virtualize])],\r\n defaultValue: false\r\n },\r\n [AdapterPrependParams.increase]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n },\r\n [AdapterPrependParams.virtualize]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterPrependParams.bof])],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterAppendParams {\r\n items = 'items',\r\n eof = 'eof',\r\n decrease = 'decrease',\r\n virtualize = 'virtualize',\r\n}\r\n\r\nconst APPEND_METHOD_PARAMS: ICommonProps<AdapterAppendParams> = {\r\n [AdapterAppendParams.items]: {\r\n validators: [ITEM_LIST],\r\n mandatory: true\r\n },\r\n [AdapterAppendParams.eof]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterAppendParams.virtualize])],\r\n defaultValue: false\r\n },\r\n [AdapterAppendParams.decrease]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n },\r\n [AdapterPrependParams.virtualize]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterAppendParams.eof])],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterRemoveParams {\r\n predicate = 'predicate',\r\n indexes = 'indexes',\r\n increase = 'increase',\r\n}\r\n\r\nconst REMOVE_METHOD_PARAMS: ICommonProps<AdapterRemoveParams> = {\r\n [AdapterRemoveParams.predicate]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([AdapterRemoveParams.indexes])]\r\n },\r\n [AdapterRemoveParams.indexes]: {\r\n validators: [ITEM_LIST, ONE_OF_MUST([AdapterRemoveParams.predicate])]\r\n },\r\n [AdapterRemoveParams.increase]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterClipParams {\r\n backwardOnly = 'backwardOnly',\r\n forwardOnly = 'forwardOnly',\r\n}\r\n\r\nconst CLIP_METHOD_PARAMS: ICommonProps<AdapterClipParams> = {\r\n [AdapterClipParams.backwardOnly]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterClipParams.forwardOnly])],\r\n defaultValue: false\r\n },\r\n [AdapterClipParams.forwardOnly]: {\r\n validators: [BOOLEAN, ONE_OF_CAN([AdapterClipParams.backwardOnly])],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterInsertParams {\r\n items = 'items',\r\n before = 'before',\r\n after = 'after',\r\n beforeIndex = 'beforeIndex',\r\n afterIndex = 'afterIndex',\r\n decrease = 'decrease',\r\n}\r\n\r\nconst INSERT_METHOD_PARAMS: ICommonProps<AdapterInsertParams> = {\r\n [AdapterInsertParams.items]: {\r\n validators: [ITEM_LIST],\r\n mandatory: true\r\n },\r\n [AdapterInsertParams.before]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([\r\n AdapterInsertParams.after, AdapterInsertParams.beforeIndex, AdapterInsertParams.afterIndex\r\n ])]\r\n },\r\n [AdapterInsertParams.after]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([\r\n AdapterInsertParams.before, AdapterInsertParams.beforeIndex, AdapterInsertParams.afterIndex\r\n ])]\r\n },\r\n [AdapterInsertParams.beforeIndex]: {\r\n validators: [INTEGER, ONE_OF_MUST([\r\n AdapterInsertParams.before, AdapterInsertParams.after, AdapterInsertParams.afterIndex\r\n ])]\r\n },\r\n [AdapterInsertParams.afterIndex]: {\r\n validators: [INTEGER, ONE_OF_MUST([\r\n AdapterInsertParams.before, AdapterInsertParams.after, AdapterInsertParams.beforeIndex\r\n ])]\r\n },\r\n [AdapterInsertParams.decrease]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterReplaceParams {\r\n items = 'items',\r\n predicate = 'predicate',\r\n fixRight = 'fixRight',\r\n}\r\n\r\nconst REPLACE_METHOD_PARAMS: ICommonProps<AdapterReplaceParams> = {\r\n [AdapterInsertParams.items]: {\r\n validators: [ITEM_LIST],\r\n mandatory: true\r\n },\r\n [AdapterReplaceParams.predicate]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1)],\r\n mandatory: true\r\n },\r\n [AdapterReplaceParams.fixRight]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n }\r\n};\r\n\r\nenum AdapterUpdateParams {\r\n predicate = 'predicate',\r\n fixRight = 'fixRight',\r\n}\r\n\r\nconst UPDATE_METHOD_PARAMS: ICommonProps<AdapterUpdateParams> = {\r\n [AdapterUpdateParams.predicate]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1)],\r\n mandatory: true\r\n },\r\n [AdapterUpdateParams.fixRight]: {\r\n validators: [BOOLEAN],\r\n defaultValue: false\r\n },\r\n};\r\n\r\nenum AdapterFixParams {\r\n scrollPosition = 'scrollPosition',\r\n minIndex = 'minIndex',\r\n maxIndex = 'maxIndex',\r\n updater = 'updater',\r\n scrollToItem = 'scrollToItem',\r\n scrollToItemOpt = 'scrollToItemOpt',\r\n}\r\n\r\nconst FIX_METHOD_PARAMS: ICommonProps<AdapterFixParams> = {\r\n [AdapterFixParams.scrollPosition]: {\r\n validators: [INTEGER_UNLIMITED]\r\n },\r\n [AdapterFixParams.minIndex]: {\r\n validators: [INTEGER_UNLIMITED]\r\n },\r\n [AdapterFixParams.maxIndex]: {\r\n validators: [INTEGER_UNLIMITED]\r\n },\r\n [AdapterFixParams.updater]: {\r\n validators: [FUNC_WITH_X_TO_Y_ARGUMENTS(1, 2)]\r\n },\r\n [AdapterFixParams.scrollToItem]: {\r\n validators: [FUNC_WITH_X_ARGUMENTS(1)]\r\n },\r\n [AdapterFixParams.scrollToItemOpt]: {\r\n validators: [OR([BOOLEAN, OBJECT])]\r\n },\r\n};\r\n\r\nexport const AdapterMethods: AdapterProcessMap<{ [key: string]: string }> = {\r\n [Process.reset]: AdapterResetParams,\r\n [Process.reload]: AdapterReloadParams,\r\n [Process.prepend]: AdapterPrependParams,\r\n [Process.append]: AdapterAppendParams,\r\n [Process.check]: AdapterNoParams,\r\n [Process.remove]: AdapterRemoveParams,\r\n [Process.clip]: AdapterClipParams,\r\n [Process.insert]: AdapterInsertParams,\r\n [Process.replace]: AdapterReplaceParams,\r\n [Process.update]: AdapterUpdateParams,\r\n [Process.pause]: AdapterNoParams,\r\n [Process.fix]: AdapterFixParams,\r\n};\r\n\r\nexport const ADAPTER_METHODS: AdapterProcessMap<ICommonProps<PropertyKey>> = {\r\n [Process.reset]: RESET_METHOD_PARAMS,\r\n [Process.reload]: RELOAD_METHOD_PARAMS,\r\n [Process.prepend]: PREPEND_METHOD_PARAMS,\r\n [Process.append]: APPEND_METHOD_PARAMS,\r\n [Process.check]: NO_METHOD_PARAMS,\r\n [Process.remove]: REMOVE_METHOD_PARAMS,\r\n [Process.clip]: CLIP_METHOD_PARAMS,\r\n [Process.insert]: INSERT_METHOD_PARAMS,\r\n [Process.replace]: REPLACE_METHOD_PARAMS,\r\n [Process.update]: UPDATE_METHOD_PARAMS,\r\n [Process.pause]: NO_METHOD_PARAMS,\r\n [Process.fix]: FIX_METHOD_PARAMS,\r\n};\r\n"]}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/inputs/adapter.ts"],"names":[],"mappings":"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","sourcesContent":["import { VALIDATORS } from './validation';\nimport { DatasourceProps as AdapterResetParams } from './datasource';\nimport { AdapterProcess as Process } from '../processes/misc/enums';\nimport { ICommonProps, AdapterProcessMap } from '../interfaces/index';\n\nconst {\n INTEGER,\n INTEGER_UNLIMITED,\n BOOLEAN,\n OBJECT,\n ITEM_LIST,\n FUNC_WITH_X_ARGUMENTS,\n FUNC_WITH_X_AND_MORE_ARGUMENTS,\n FUNC_WITH_X_TO_Y_ARGUMENTS,\n ONE_OF_MUST,\n ONE_OF_CAN,\n OR\n} = VALIDATORS;\n\nenum AdapterNoParams {}\nconst NO_METHOD_PARAMS: ICommonProps<AdapterNoParams> = {};\n\nconst RESET_METHOD_PARAMS: ICommonProps<AdapterResetParams> = {\n [AdapterResetParams.get]: {\n validators: [FUNC_WITH_X_AND_MORE_ARGUMENTS(2)]\n },\n [AdapterResetParams.settings]: {\n validators: [OBJECT]\n },\n [AdapterResetParams.devSettings]: {\n validators: [OBJECT]\n }\n};\n\nenum AdapterReloadParams {\n reloadIndex = 'reloadIndex'\n}\n\nconst RELOAD_METHOD_PARAMS: ICommonProps<AdapterReloadParams> = {\n [AdapterReloadParams.reloadIndex]: {\n validators: [INTEGER]\n }\n};\n\nenum AdapterPrependParams {\n items = 'items',\n bof = 'bof',\n increase = 'increase',\n virtualize = 'virtualize'\n}\n\nconst PREPEND_METHOD_PARAMS: ICommonProps<AdapterPrependParams> = {\n [AdapterPrependParams.items]: {\n validators: [ITEM_LIST],\n mandatory: true\n },\n [AdapterPrependParams.bof]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterPrependParams.virtualize])],\n defaultValue: false\n },\n [AdapterPrependParams.increase]: {\n validators: [BOOLEAN],\n defaultValue: false\n },\n [AdapterPrependParams.virtualize]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterPrependParams.bof])],\n defaultValue: false\n }\n};\n\nenum AdapterAppendParams {\n items = 'items',\n eof = 'eof',\n decrease = 'decrease',\n virtualize = 'virtualize'\n}\n\nconst APPEND_METHOD_PARAMS: ICommonProps<AdapterAppendParams> = {\n [AdapterAppendParams.items]: {\n validators: [ITEM_LIST],\n mandatory: true\n },\n [AdapterAppendParams.eof]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterAppendParams.virtualize])],\n defaultValue: false\n },\n [AdapterAppendParams.decrease]: {\n validators: [BOOLEAN],\n defaultValue: false\n },\n [AdapterPrependParams.virtualize]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterAppendParams.eof])],\n defaultValue: false\n }\n};\n\nenum AdapterRemoveParams {\n predicate = 'predicate',\n indexes = 'indexes',\n increase = 'increase'\n}\n\nconst REMOVE_METHOD_PARAMS: ICommonProps<AdapterRemoveParams> = {\n [AdapterRemoveParams.predicate]: {\n validators: [FUNC_WITH_X_ARGUMENTS(1), ONE_OF_MUST([AdapterRemoveParams.indexes])]\n },\n [AdapterRemoveParams.indexes]: {\n validators: [ITEM_LIST, ONE_OF_MUST([AdapterRemoveParams.predicate])]\n },\n [AdapterRemoveParams.increase]: {\n validators: [BOOLEAN],\n defaultValue: false\n }\n};\n\nenum AdapterClipParams {\n backwardOnly = 'backwardOnly',\n forwardOnly = 'forwardOnly'\n}\n\nconst CLIP_METHOD_PARAMS: ICommonProps<AdapterClipParams> = {\n [AdapterClipParams.backwardOnly]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterClipParams.forwardOnly])],\n defaultValue: false\n },\n [AdapterClipParams.forwardOnly]: {\n validators: [BOOLEAN, ONE_OF_CAN([AdapterClipParams.backwardOnly])],\n defaultValue: false\n }\n};\n\nenum AdapterInsertParams {\n items = 'items',\n before = 'before',\n after = 'after',\n beforeIndex = 'beforeIndex',\n afterIndex = 'afterIndex',\n decrease = 'decrease'\n}\n\nconst INSERT_METHOD_PARAMS: ICommonProps<AdapterInsertParams> = {\n [AdapterInsertParams.items]: {\n validators: [ITEM_LIST],\n mandatory: true\n },\n [AdapterInsertParams.before]: {\n validators: [\n FUNC_WITH_X_ARGUMENTS(1),\n ONE_OF_MUST([\n AdapterInsertParams.after,\n AdapterInsertParams.beforeIndex,\n AdapterInsertParams.afterIndex\n ])\n ]\n },\n [AdapterInsertParams.after]: {\n validators: [\n FUNC_WITH_X_ARGUMENTS(1),\n ONE_OF_MUST([\n AdapterInsertParams.before,\n AdapterInsertParams.beforeIndex,\n AdapterInsertParams.afterIndex\n ])\n ]\n },\n [AdapterInsertParams.beforeIndex]: {\n validators: [\n INTEGER,\n ONE_OF_MUST([\n AdapterInsertParams.before,\n AdapterInsertParams.after,\n AdapterInsertParams.afterIndex\n ])\n ]\n },\n [AdapterInsertParams.afterIndex]: {\n validators: [\n INTEGER,\n ONE_OF_MUST([\n AdapterInsertParams.before,\n AdapterInsertParams.after,\n AdapterInsertParams.beforeIndex\n ])\n ]\n },\n [AdapterInsertParams.decrease]: {\n validators: [BOOLEAN],\n defaultValue: false\n }\n};\n\nenum AdapterReplaceParams {\n items = 'items',\n predicate = 'predicate',\n fixRight = 'fixRight'\n}\n\nconst REPLACE_METHOD_PARAMS: ICommonProps<AdapterReplaceParams> = {\n [AdapterInsertParams.items]: {\n validators: [ITEM_LIST],\n mandatory: true\n },\n [AdapterReplaceParams.predicate]: {\n validators: [FUNC_WITH_X_ARGUMENTS(1)],\n mandatory: true\n },\n [AdapterReplaceParams.fixRight]: {\n validators: [BOOLEAN],\n defaultValue: false\n }\n};\n\nenum AdapterUpdateParams {\n predicate = 'predicate',\n fixRight = 'fixRight'\n}\n\nconst UPDATE_METHOD_PARAMS: ICommonProps<AdapterUpdateParams> = {\n [AdapterUpdateParams.predicate]: {\n validators: [FUNC_WITH_X_ARGUMENTS(1)],\n mandatory: true\n },\n [AdapterUpdateParams.fixRight]: {\n validators: [BOOLEAN],\n defaultValue: false\n }\n};\n\nenum AdapterFixParams {\n scrollPosition = 'scrollPosition',\n minIndex = 'minIndex',\n maxIndex = 'maxIndex',\n updater = 'updater',\n scrollToItem = 'scrollToItem',\n scrollToItemOpt = 'scrollToItemOpt'\n}\n\nconst FIX_METHOD_PARAMS: ICommonProps<AdapterFixParams> = {\n [AdapterFixParams.scrollPosition]: {\n validators: [INTEGER_UNLIMITED]\n },\n [AdapterFixParams.minIndex]: {\n validators: [INTEGER_UNLIMITED]\n },\n [AdapterFixParams.maxIndex]: {\n validators: [INTEGER_UNLIMITED]\n },\n [AdapterFixParams.updater]: {\n validators: [FUNC_WITH_X_TO_Y_ARGUMENTS(1, 2)]\n },\n [AdapterFixParams.scrollToItem]: {\n validators: [FUNC_WITH_X_ARGUMENTS(1)]\n },\n [AdapterFixParams.scrollToItemOpt]: {\n validators: [OR([BOOLEAN, OBJECT])]\n }\n};\n\nexport const AdapterMethods: AdapterProcessMap<{ [key: string]: string }> = {\n [Process.reset]: AdapterResetParams,\n [Process.reload]: AdapterReloadParams,\n [Process.prepend]: AdapterPrependParams,\n [Process.append]: AdapterAppendParams,\n [Process.check]: AdapterNoParams,\n [Process.remove]: AdapterRemoveParams,\n [Process.clip]: AdapterClipParams,\n [Process.insert]: AdapterInsertParams,\n [Process.replace]: AdapterReplaceParams,\n [Process.update]: AdapterUpdateParams,\n [Process.pause]: AdapterNoParams,\n [Process.fix]: AdapterFixParams\n};\n\nexport const ADAPTER_METHODS: AdapterProcessMap<ICommonProps<PropertyKey>> = {\n [Process.reset]: RESET_METHOD_PARAMS,\n [Process.reload]: RELOAD_METHOD_PARAMS,\n [Process.prepend]: PREPEND_METHOD_PARAMS,\n [Process.append]: APPEND_METHOD_PARAMS,\n [Process.check]: NO_METHOD_PARAMS,\n [Process.remove]: REMOVE_METHOD_PARAMS,\n [Process.clip]: CLIP_METHOD_PARAMS,\n [Process.insert]: INSERT_METHOD_PARAMS,\n [Process.replace]: REPLACE_METHOD_PARAMS,\n [Process.update]: UPDATE_METHOD_PARAMS,\n [Process.pause]: NO_METHOD_PARAMS,\n [Process.fix]: FIX_METHOD_PARAMS\n};\n"]}