ng-virtual-list 18.11.2 → 18.12.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 (274) hide show
  1. package/README.md +115 -111
  2. package/esm2022/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +170 -61
  3. package/esm2022/lib/components/ng-list-item/const/index.mjs +41 -2
  4. package/esm2022/lib/components/ng-list-item/interfaces/template-context.mjs +1 -1
  5. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +55 -51
  6. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.module.mjs +5 -5
  7. package/esm2022/lib/components/ng-list-item/utils/create-display-id.mjs +7 -1
  8. package/esm2022/lib/components/ng-list-item/utils/get-element-by-index.mjs +17 -3
  9. package/esm2022/lib/components/ng-list-item/utils/index.mjs +3 -2
  10. package/esm2022/lib/components/ng-list-item/utils/matrix-3d.mjs +18 -0
  11. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.mjs +172 -47
  12. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +32 -16
  13. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.mjs +5 -5
  14. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.mjs +58 -34
  15. package/esm2022/lib/components/ng-prerender-container/core/prerender-track-box.mjs +37 -7
  16. package/esm2022/lib/components/ng-prerender-container/interfaces/refresh-params.mjs +1 -1
  17. package/esm2022/lib/components/ng-prerender-container/ng-prerender-container.component.mjs +58 -28
  18. package/esm2022/lib/components/ng-scroll-bar/const/index.mjs +8 -1
  19. package/esm2022/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.mjs +1 -1
  20. package/esm2022/lib/components/ng-scroll-bar/ng-scroll-bar.component.mjs +236 -88
  21. package/esm2022/lib/components/ng-scroll-view/base/base-scroll-view.component.mjs +170 -44
  22. package/esm2022/lib/components/ng-scroll-view/const/index.mjs +4 -2
  23. package/esm2022/lib/components/ng-scroll-view/interfaces/scroll-to-params.mjs +1 -1
  24. package/esm2022/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +610 -99
  25. package/esm2022/lib/components/ng-scroll-view/utils/calculate-direction.mjs +7 -1
  26. package/esm2022/lib/components/ng-scroll-view/utils/calculate-velocity.mjs +12 -0
  27. package/esm2022/lib/components/ng-scroll-view/utils/get-dir.mjs +10 -0
  28. package/esm2022/lib/components/ng-scroll-view/utils/index.mjs +4 -2
  29. package/esm2022/lib/components/ng-scroll-view/utils/matrix-3d.mjs +15 -0
  30. package/esm2022/lib/components/ng-scroller/enums/scroller-directions.mjs +1 -1
  31. package/esm2022/lib/components/ng-scroller/ng-scroller.component.mjs +342 -160
  32. package/esm2022/lib/const/index.mjs +50 -10
  33. package/esm2022/lib/core/cache-map.mjs +1 -54
  34. package/esm2022/lib/core/const/index.mjs +3 -0
  35. package/esm2022/lib/core/enums/index.mjs +3 -0
  36. package/esm2022/lib/core/enums/item-display-methods.mjs +14 -0
  37. package/esm2022/lib/core/events/index.mjs +3 -0
  38. package/esm2022/lib/core/events/track-box-events.mjs +12 -0
  39. package/esm2022/lib/core/interfaces/get-item-position-options.mjs +2 -0
  40. package/esm2022/lib/core/interfaces/get-metrics-returns.mjs +2 -0
  41. package/esm2022/lib/core/interfaces/index.mjs +2 -0
  42. package/esm2022/lib/core/interfaces/item.mjs +2 -0
  43. package/esm2022/lib/core/interfaces/metrics.mjs +2 -0
  44. package/esm2022/lib/core/interfaces/recalculate-metrics-options.mjs +2 -0
  45. package/esm2022/lib/core/interfaces/update-collection-options.mjs +2 -0
  46. package/esm2022/lib/core/interfaces/update-collection-returns.mjs +2 -0
  47. package/esm2022/lib/core/track-box.mjs +601 -191
  48. package/esm2022/lib/core/tracker.mjs +14 -8
  49. package/esm2022/lib/core/types/cache-map-events.mjs +2 -0
  50. package/esm2022/lib/core/types/cache-map-listeners.mjs +2 -0
  51. package/esm2022/lib/core/types/cache.mjs +2 -0
  52. package/esm2022/lib/core/types/index.mjs +2 -0
  53. package/esm2022/lib/core/types/on-change-event-listener.mjs +2 -0
  54. package/esm2022/lib/core/types/on-tick-event-listener.mjs +2 -0
  55. package/esm2022/lib/core/utils/get-service-id-prop.mjs +10 -0
  56. package/esm2022/lib/core/utils/index.mjs +3 -0
  57. package/esm2022/lib/directives/index.mjs +3 -3
  58. package/esm2022/lib/directives/locale-sensitive/locale-sensitive.directive.mjs +34 -13
  59. package/esm2022/lib/directives/virtual-click/virtual-click.directive.mjs +67 -0
  60. package/esm2022/lib/directives/virtual-click/virtual-click.module.mjs +19 -0
  61. package/esm2022/lib/enums/alignments.mjs +12 -0
  62. package/esm2022/lib/enums/collapsing-modes.mjs +22 -0
  63. package/esm2022/lib/enums/index.mjs +8 -4
  64. package/esm2022/lib/enums/selecting-modes-types.mjs +22 -0
  65. package/esm2022/lib/enums/selecting-modes.mjs +22 -0
  66. package/esm2022/lib/enums/snap-to-item-aligns.mjs +22 -0
  67. package/esm2022/lib/enums/spreading-modes.mjs +18 -0
  68. package/esm2022/lib/interfaces/animation-params.mjs +1 -1
  69. package/esm2022/lib/interfaces/base-virtual-list-item-component.mjs +2 -9
  70. package/esm2022/lib/interfaces/index.mjs +1 -1
  71. package/esm2022/lib/interfaces/item-transformation.mjs +2 -0
  72. package/esm2022/lib/interfaces/point.mjs +2 -0
  73. package/esm2022/lib/interfaces/scroll-options.mjs +1 -1
  74. package/esm2022/lib/interfaces/scroll-params.mjs +1 -1
  75. package/esm2022/lib/models/item-config-map.model.mjs +1 -1
  76. package/esm2022/lib/models/item.model.mjs +1 -1
  77. package/esm2022/lib/models/render-item-config.model.mjs +1 -1
  78. package/esm2022/lib/models/render-item-measures.model.mjs +1 -1
  79. package/esm2022/lib/ng-virtual-list-public.service.mjs +6 -7
  80. package/esm2022/lib/ng-virtual-list.component.mjs +2033 -903
  81. package/esm2022/lib/ng-virtual-list.service.mjs +91 -30
  82. package/esm2022/lib/transformations/deck-of-cards-3d.mjs +57 -0
  83. package/esm2022/lib/transformations/deck-of-cards.mjs +54 -0
  84. package/esm2022/lib/transformations/event-horizon.mjs +47 -0
  85. package/esm2022/lib/transformations/index.mjs +13 -0
  86. package/esm2022/lib/transformations/linear.mjs +47 -0
  87. package/esm2022/lib/transformations/swipe-3d.mjs +51 -0
  88. package/esm2022/lib/types/alignment.mjs +2 -0
  89. package/esm2022/lib/types/arithmetic-expression.mjs +2 -0
  90. package/esm2022/lib/types/collapsing-mode.mjs +2 -0
  91. package/esm2022/lib/types/collection-mode.mjs +2 -0
  92. package/esm2022/lib/types/color.mjs +2 -0
  93. package/esm2022/lib/types/direction.mjs +2 -0
  94. package/esm2022/lib/types/float-or-persentage-value.mjs +2 -0
  95. package/esm2022/lib/types/focus-item-params.mjs +1 -1
  96. package/esm2022/lib/types/gradient-color-position.mjs +1 -1
  97. package/esm2022/lib/types/index.mjs +1 -1
  98. package/esm2022/lib/types/item-transform.mjs +2 -0
  99. package/esm2022/lib/types/scroll-direction.mjs +1 -1
  100. package/esm2022/lib/types/selecting-mode.mjs +2 -0
  101. package/esm2022/lib/types/snap-to-item-align.mjs +2 -0
  102. package/esm2022/lib/types/snapping-distance.mjs +2 -0
  103. package/esm2022/lib/types/snapping-method.mjs +2 -0
  104. package/esm2022/lib/types/spreading-mode.mjs +2 -0
  105. package/esm2022/lib/types/text-direction.mjs +2 -0
  106. package/esm2022/lib/utils/animator/animator.mjs +28 -8
  107. package/esm2022/lib/utils/animator/const/index.mjs +2 -0
  108. package/esm2022/lib/utils/animator/index.mjs +3 -2
  109. package/esm2022/lib/utils/animator/interfaces/animator-params.mjs +2 -0
  110. package/esm2022/lib/utils/animator/interfaces/animator-update-data.mjs +2 -0
  111. package/esm2022/lib/utils/animator/interfaces/index.mjs +2 -0
  112. package/esm2022/lib/utils/animator/types/easing.mjs +1 -1
  113. package/esm2022/lib/utils/disposable-component.mjs +27 -0
  114. package/esm2022/lib/utils/event-emitter/event-emitter.mjs +1 -1
  115. package/esm2022/lib/utils/get-scroll-state-version.mjs +12 -0
  116. package/esm2022/lib/utils/is-collapse-mode.mjs +18 -0
  117. package/esm2022/lib/utils/is-collection-mode.mjs +1 -1
  118. package/esm2022/lib/utils/is-direction.mjs +1 -1
  119. package/esm2022/lib/utils/is-persentage-value.mjs +14 -0
  120. package/esm2022/lib/utils/is-select-mode.mjs +18 -0
  121. package/esm2022/lib/utils/is-spreading-mode.mjs +15 -0
  122. package/esm2022/lib/utils/list-validators.mjs +1 -1
  123. package/esm2022/lib/utils/normalize-collection.mjs +42 -0
  124. package/esm2022/lib/utils/object.mjs +1 -1
  125. package/esm2022/lib/utils/parse-arithmetic-expression.mjs +53 -0
  126. package/esm2022/lib/utils/parse-float-or-persentage-value.mjs +17 -0
  127. package/esm2022/lib/utils/scrolling-direction.mjs +29 -0
  128. package/esm2022/lib/utils/snapping-method.mjs +1 -1
  129. package/esm2022/public-api.mjs +4 -1
  130. package/fesm2022/ng-virtual-list.mjs +7545 -3904
  131. package/fesm2022/ng-virtual-list.mjs.map +1 -1
  132. package/lib/components/ng-list-item/base/base-virtual-list-item-component.d.ts +40 -16
  133. package/lib/components/ng-list-item/const/index.d.ts +3 -1
  134. package/lib/components/ng-list-item/interfaces/template-context.d.ts +1 -1
  135. package/lib/components/ng-list-item/ng-virtual-list-item.component.d.ts +5 -2
  136. package/lib/components/ng-list-item/ng-virtual-list-item.module.d.ts +2 -2
  137. package/lib/components/ng-list-item/utils/create-display-id.d.ts +6 -0
  138. package/lib/components/ng-list-item/utils/get-element-by-index.d.ts +15 -1
  139. package/lib/components/ng-list-item/utils/index.d.ts +2 -1
  140. package/lib/components/ng-list-item/utils/matrix-3d.d.ts +7 -0
  141. package/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.d.ts +69 -26
  142. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.d.ts +2 -2
  143. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.d.ts +2 -2
  144. package/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.d.ts +33 -12
  145. package/lib/components/ng-prerender-container/interfaces/refresh-params.d.ts +1 -0
  146. package/lib/components/ng-prerender-container/ng-prerender-container.component.d.ts +20 -17
  147. package/lib/components/ng-scroll-bar/const/index.d.ts +2 -0
  148. package/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.d.ts +2 -2
  149. package/lib/components/ng-scroll-bar/ng-scroll-bar.component.d.ts +75 -24
  150. package/lib/components/ng-scroll-view/base/base-scroll-view.component.d.ts +49 -16
  151. package/lib/components/ng-scroll-view/const/index.d.ts +3 -1
  152. package/lib/components/ng-scroll-view/interfaces/scroll-to-params.d.ts +4 -1
  153. package/lib/components/ng-scroll-view/ng-scroll-view.component.d.ts +79 -11
  154. package/lib/components/ng-scroll-view/utils/calculate-direction.d.ts +6 -0
  155. package/lib/components/ng-scroll-view/utils/calculate-velocity.d.ts +7 -0
  156. package/lib/components/ng-scroll-view/utils/get-dir.d.ts +7 -0
  157. package/lib/components/ng-scroll-view/utils/index.d.ts +3 -1
  158. package/lib/components/ng-scroll-view/utils/matrix-3d.d.ts +7 -0
  159. package/lib/components/ng-scroller/enums/scroller-directions.d.ts +2 -1
  160. package/lib/components/ng-scroller/ng-scroller.component.d.ts +111 -47
  161. package/lib/const/index.d.ts +46 -5
  162. package/lib/core/cache-map.d.ts +0 -10
  163. package/lib/core/const/index.d.ts +1 -0
  164. package/lib/core/enums/index.d.ts +2 -0
  165. package/lib/core/enums/item-display-methods.d.ts +12 -0
  166. package/lib/core/events/index.d.ts +2 -0
  167. package/lib/core/events/track-box-events.d.ts +10 -0
  168. package/lib/core/interfaces/get-item-position-options.d.ts +10 -0
  169. package/lib/core/interfaces/get-metrics-returns.d.ts +11 -0
  170. package/lib/core/interfaces/index.d.ts +8 -0
  171. package/lib/core/interfaces/item.d.ts +9 -0
  172. package/lib/core/interfaces/metrics.d.ts +51 -0
  173. package/lib/core/interfaces/recalculate-metrics-options.d.ts +32 -0
  174. package/lib/core/interfaces/update-collection-options.d.ts +10 -0
  175. package/lib/core/interfaces/update-collection-returns.d.ts +14 -0
  176. package/lib/core/track-box.d.ts +25 -95
  177. package/lib/core/tracker.d.ts +1 -1
  178. package/lib/core/types/cache-map-events.d.ts +8 -0
  179. package/lib/core/types/cache-map-listeners.d.ts +9 -0
  180. package/lib/core/types/cache.d.ts +12 -0
  181. package/lib/core/types/index.d.ts +6 -0
  182. package/lib/core/types/on-change-event-listener.d.ts +7 -0
  183. package/lib/core/types/on-tick-event-listener.d.ts +7 -0
  184. package/lib/core/utils/get-service-id-prop.d.ts +7 -0
  185. package/lib/core/utils/index.d.ts +2 -0
  186. package/lib/directives/index.d.ts +2 -2
  187. package/lib/directives/locale-sensitive/locale-sensitive.directive.d.ts +16 -6
  188. package/lib/directives/virtual-click/virtual-click.directive.d.ts +22 -0
  189. package/lib/directives/virtual-click/virtual-click.module.d.ts +8 -0
  190. package/lib/enums/alignments.d.ts +10 -0
  191. package/lib/enums/collapsing-modes.d.ts +20 -0
  192. package/lib/enums/index.d.ts +7 -9
  193. package/lib/enums/{method-for-selecting-types.d.ts → selecting-modes-types.d.ts} +3 -3
  194. package/lib/enums/{methods-for-selecting.d.ts → selecting-modes.d.ts} +3 -3
  195. package/lib/enums/snap-to-item-aligns.d.ts +20 -0
  196. package/lib/enums/spreading-modes.d.ts +16 -0
  197. package/lib/interfaces/animation-params.d.ts +1 -0
  198. package/lib/interfaces/base-virtual-list-item-component.d.ts +13 -13
  199. package/lib/interfaces/index.d.ts +3 -2
  200. package/lib/interfaces/item-transformation.d.ts +22 -0
  201. package/lib/interfaces/point.d.ts +16 -0
  202. package/lib/interfaces/scroll-options.d.ts +4 -0
  203. package/lib/interfaces/scroll-params.d.ts +3 -2
  204. package/lib/models/item-config-map.model.d.ts +5 -0
  205. package/lib/models/item.model.d.ts +7 -0
  206. package/lib/models/render-item-config.model.d.ts +50 -0
  207. package/lib/models/render-item-measures.model.d.ts +71 -0
  208. package/lib/ng-virtual-list-public.service.d.ts +4 -5
  209. package/lib/ng-virtual-list.component.d.ts +462 -135
  210. package/lib/ng-virtual-list.service.d.ts +33 -12
  211. package/lib/transformations/deck-of-cards-3d.d.ts +54 -0
  212. package/lib/transformations/deck-of-cards.d.ts +50 -0
  213. package/lib/transformations/event-horizon.d.ts +26 -0
  214. package/lib/transformations/index.d.ts +7 -0
  215. package/lib/transformations/linear.d.ts +26 -0
  216. package/lib/transformations/swipe-3d.d.ts +38 -0
  217. package/lib/types/alignment.d.ts +8 -0
  218. package/lib/types/arithmetic-expression.d.ts +10 -0
  219. package/lib/types/collapsing-mode.d.ts +8 -0
  220. package/lib/{enums → types}/collection-mode.d.ts +1 -1
  221. package/lib/types/color.d.ts +4 -0
  222. package/lib/{enums → types}/direction.d.ts +1 -1
  223. package/lib/types/float-or-persentage-value.d.ts +7 -0
  224. package/lib/types/focus-item-params.d.ts +6 -0
  225. package/lib/types/gradient-color-position.d.ts +1 -1
  226. package/lib/types/index.d.ts +15 -1
  227. package/lib/types/item-transform.d.ts +9 -0
  228. package/lib/types/scroll-direction.d.ts +2 -0
  229. package/lib/types/selecting-mode.d.ts +8 -0
  230. package/lib/types/snap-to-item-align.d.ts +8 -0
  231. package/lib/types/snapping-distance.d.ts +8 -0
  232. package/lib/{enums → types}/snapping-method.d.ts +1 -1
  233. package/lib/types/spreading-mode.d.ts +8 -0
  234. package/lib/{enums → types}/text-direction.d.ts +1 -1
  235. package/lib/utils/animator/animator.d.ts +10 -17
  236. package/lib/utils/animator/const/index.d.ts +1 -0
  237. package/lib/utils/animator/index.d.ts +2 -1
  238. package/lib/utils/animator/interfaces/animator-params.d.ts +18 -0
  239. package/lib/utils/animator/interfaces/animator-update-data.d.ts +13 -0
  240. package/lib/utils/animator/interfaces/index.d.ts +3 -0
  241. package/lib/utils/animator/types/easing.d.ts +6 -0
  242. package/lib/utils/disposable-component.d.ts +15 -0
  243. package/lib/utils/get-scroll-state-version.d.ts +1 -0
  244. package/lib/utils/is-collapse-mode.d.ts +8 -0
  245. package/lib/utils/is-collection-mode.d.ts +1 -1
  246. package/lib/utils/is-direction.d.ts +1 -1
  247. package/lib/utils/is-persentage-value.d.ts +7 -0
  248. package/lib/utils/is-select-mode.d.ts +8 -0
  249. package/lib/utils/is-spreading-mode.d.ts +8 -0
  250. package/lib/utils/list-validators.d.ts +1 -1
  251. package/lib/utils/normalize-collection.d.ts +8 -0
  252. package/lib/utils/object.d.ts +1 -1
  253. package/lib/utils/parse-arithmetic-expression.d.ts +8 -0
  254. package/lib/utils/parse-float-or-persentage-value.d.ts +7 -0
  255. package/lib/utils/scrolling-direction.d.ts +17 -0
  256. package/lib/utils/snapping-method.d.ts +1 -1
  257. package/package.json +1 -1
  258. package/public-api.d.ts +3 -0
  259. package/esm2022/lib/components/ng-scroller/const/index.mjs +0 -2
  260. package/esm2022/lib/directives/item-click/item-click.directive.mjs +0 -59
  261. package/esm2022/lib/directives/item-click/item-click.module.mjs +0 -19
  262. package/esm2022/lib/enums/collection-mode.mjs +0 -2
  263. package/esm2022/lib/enums/direction.mjs +0 -2
  264. package/esm2022/lib/enums/method-for-selecting-types.mjs +0 -22
  265. package/esm2022/lib/enums/method-for-selecting.mjs +0 -2
  266. package/esm2022/lib/enums/methods-for-selecting.mjs +0 -22
  267. package/esm2022/lib/enums/snapping-method.mjs +0 -2
  268. package/esm2022/lib/enums/text-direction.mjs +0 -2
  269. package/esm2022/lib/utils/is-method-for-selecting.mjs +0 -18
  270. package/lib/components/ng-scroller/const/index.d.ts +0 -1
  271. package/lib/directives/item-click/item-click.directive.d.ts +0 -19
  272. package/lib/directives/item-click/item-click.module.d.ts +0 -8
  273. package/lib/enums/method-for-selecting.d.ts +0 -8
  274. package/lib/utils/is-method-for-selecting.d.ts +0 -8
@@ -0,0 +1,47 @@
1
+ import { PX } from '../const';
2
+ const UNSET = 'unset';
3
+ /**
4
+ * eventHorizon
5
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/transformations/event-horizon.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
9
+ export const eventHorizon = (options) => {
10
+ const dof = options?.dof ?? null, fogColor = options?.fogColor ?? null, fogWeight = options?.fogWeight ?? null, spacingBetweenItems = options?.spacingBetweenItems ?? .025;
11
+ return (index, measures, config) => {
12
+ const result = {
13
+ x: 0,
14
+ y: 0,
15
+ z: 0,
16
+ rotationX: 0,
17
+ rotationY: 0,
18
+ rotationZ: 0,
19
+ scaleX: 1,
20
+ scaleY: 1,
21
+ scaleZ: 1,
22
+ opacity: 1,
23
+ zIndex: 1,
24
+ }, isVertical = config.isVertical, boundsSize = measures.boundsSize, scrollSize = measures.scrollSize, itemSize = isVertical ? measures.height : measures.width, itemSizeHalf = itemSize * .5, boundsSizeHalf = boundsSize * .5, xx = isVertical ? measures.x : (measures.x + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize), yy = isVertical ? (measures.y + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize) : measures.y, pxOffset = isVertical ? boundsSizeHalf : xx, px = isVertical ? 1 : (pxOffset / boundsSizeHalf), pyOffset = isVertical ? yy : boundsSizeHalf, py = isVertical ? (pyOffset / boundsSizeHalf) : 1;
25
+ if (config.snapped || config.snappedOut) {
26
+ result.x = measures.x;
27
+ result.y = measures.y;
28
+ result.zIndex = config.zIndex;
29
+ }
30
+ else {
31
+ result.x = isVertical ? xx : (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + (xx * Math.pow(px, 2) * spacingBetweenItems));
32
+ result.y = isVertical ? (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + (yy * Math.pow(py, 2) * spacingBetweenItems)) : yy;
33
+ const s = (isVertical ? Math.abs(yy) : Math.abs(xx)) / boundsSize, scale = Math.pow(1 - s * .15, 4);
34
+ result.zIndex = 100 - Math.floor(Math.abs(isVertical ? py : px) * 100);
35
+ if (!!dof) {
36
+ const blur = (s * dof) - 1, actualBlur = blur > 0 ? blur : 0;
37
+ result.filter = actualBlur ? `blur(${actualBlur}${PX})` : UNSET;
38
+ }
39
+ if (!!fogColor) {
40
+ result.opacity = fogWeight ? Math.pow(scale, fogWeight) : scale;
41
+ result.blendColor = fogColor;
42
+ }
43
+ }
44
+ return result;
45
+ };
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaG9yaXpvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3RyYW5zZm9ybWF0aW9ucy9ldmVudC1ob3Jpem9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFLOUIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0FBcUJ0Qjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLE9BQThCLEVBQWlCLEVBQUU7SUFDMUUsTUFBTSxHQUFHLEdBQUcsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQzVCLFFBQVEsR0FBRyxPQUFPLEVBQUUsUUFBUSxJQUFJLElBQUksRUFDcEMsU0FBUyxHQUFHLE9BQU8sRUFBRSxTQUFTLElBQUksSUFBSSxFQUN0QyxtQkFBbUIsR0FBRyxPQUFPLEVBQUUsbUJBQW1CLElBQUksSUFBSSxDQUFDO0lBQy9ELE9BQU8sQ0FBQyxLQUFhLEVBQUUsUUFBd0MsRUFDM0QsTUFBb0MsRUFBdUIsRUFBRTtRQUM3RCxNQUFNLE1BQU0sR0FBd0I7WUFDaEMsQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osU0FBUyxFQUFFLENBQUM7WUFDWixTQUFTLEVBQUUsQ0FBQztZQUNaLFNBQVMsRUFBRSxDQUFDO1lBQ1osTUFBTSxFQUFFLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQztZQUNULE1BQU0sRUFBRSxDQUFDO1lBQ1QsT0FBTyxFQUFFLENBQUM7WUFDVixNQUFNLEVBQUUsQ0FBQztTQUNaLEVBQ0csVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQzlCLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxFQUNoQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFDaEMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssRUFDeEQsWUFBWSxHQUFHLFFBQVEsR0FBRyxFQUFFLEVBQzVCLGNBQWMsR0FBRyxVQUFVLEdBQUcsRUFBRSxFQUNoQyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksR0FBRyxZQUFZLEdBQUcsY0FBYyxHQUFHLFVBQVUsQ0FBQyxFQUM5RyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksR0FBRyxZQUFZLEdBQUcsY0FBYyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUM5RyxRQUFRLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQyxFQUM5RixRQUFRLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRW5HLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdEMsTUFBTSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN0QixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDbEMsQ0FBQzthQUFNLENBQUM7WUFDSixNQUFNLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxHQUFHLGNBQWMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1lBQy9JLE1BQU0sQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxHQUFHLGNBQWMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDL0ksTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxVQUFVLEVBQUUsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDcEcsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDUixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQ3RCLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckMsTUFBTSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsVUFBVSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDcEUsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNiLE1BQU0sQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUNoRSxNQUFNLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztZQUNqQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtBQUNMLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBYIH0gZnJvbSAnLi4vY29uc3QnO1xyXG5pbXBvcnQgeyBJSXRlbVRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1Db25maWcsIElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1NZWFzdXJlcyB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IENvbG9yLCBJdGVtVHJhbnNmb3JtIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuY29uc3QgVU5TRVQgPSAndW5zZXQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJRXZlbnRIb3Jpem9uT3B0aW9ucyB7XHJcbiAgICAvKipcclxuICAgICAqIERlcHRoIE9mIEZpZWxkLiBEZWZhdWx0IHZhbHVlIGlzIGBudWxsYC5cclxuICAgICAqL1xyXG4gICAgZG9mPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBGb2cgY29sb3IuIERlZmF1bHQgdmFsdWUgaXMgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBmb2dDb2xvcj86IENvbG9yO1xyXG4gICAgLyoqXHJcbiAgICAgKiBGb2cgd2VpZ2h0LiBEZWZhdWx0IHZhbHVlIGlzIGBudWxsYC5cclxuICAgICAqL1xyXG4gICAgZm9nV2VpZ2h0PzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTcGFjaW5nIGJldHdlZW4gaXRlbXMuIERlZmF1bHQgdmFsdWUgaXMgYDAuNWAuXHJcbiAgICAgKi9cclxuICAgIHNwYWNpbmdCZXR3ZWVuSXRlbXM/OiBudW1iZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBldmVudEhvcml6b25cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90cmFuc2Zvcm1hdGlvbnMvZXZlbnQtaG9yaXpvbi50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjb25zdCBldmVudEhvcml6b24gPSAob3B0aW9ucz86IElFdmVudEhvcml6b25PcHRpb25zKTogSXRlbVRyYW5zZm9ybSA9PiB7XHJcbiAgICBjb25zdCBkb2YgPSBvcHRpb25zPy5kb2YgPz8gbnVsbCxcclxuICAgICAgICBmb2dDb2xvciA9IG9wdGlvbnM/LmZvZ0NvbG9yID8/IG51bGwsXHJcbiAgICAgICAgZm9nV2VpZ2h0ID0gb3B0aW9ucz8uZm9nV2VpZ2h0ID8/IG51bGwsXHJcbiAgICAgICAgc3BhY2luZ0JldHdlZW5JdGVtcyA9IG9wdGlvbnM/LnNwYWNpbmdCZXR3ZWVuSXRlbXMgPz8gLjAyNTtcclxuICAgIHJldHVybiAoaW5kZXg6IG51bWJlciwgbWVhc3VyZXM6IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1NZWFzdXJlcyxcclxuICAgICAgICBjb25maWc6IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1Db25maWcpOiBJSXRlbVRyYW5zZm9ybWF0aW9uID0+IHtcclxuICAgICAgICBjb25zdCByZXN1bHQ6IElJdGVtVHJhbnNmb3JtYXRpb24gPSB7XHJcbiAgICAgICAgICAgIHg6IDAsXHJcbiAgICAgICAgICAgIHk6IDAsXHJcbiAgICAgICAgICAgIHo6IDAsXHJcbiAgICAgICAgICAgIHJvdGF0aW9uWDogMCxcclxuICAgICAgICAgICAgcm90YXRpb25ZOiAwLFxyXG4gICAgICAgICAgICByb3RhdGlvblo6IDAsXHJcbiAgICAgICAgICAgIHNjYWxlWDogMSxcclxuICAgICAgICAgICAgc2NhbGVZOiAxLFxyXG4gICAgICAgICAgICBzY2FsZVo6IDEsXHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHpJbmRleDogMSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICAgICBpc1ZlcnRpY2FsID0gY29uZmlnLmlzVmVydGljYWwsXHJcbiAgICAgICAgICAgIGJvdW5kc1NpemUgPSBtZWFzdXJlcy5ib3VuZHNTaXplLFxyXG4gICAgICAgICAgICBzY3JvbGxTaXplID0gbWVhc3VyZXMuc2Nyb2xsU2l6ZSxcclxuICAgICAgICAgICAgaXRlbVNpemUgPSBpc1ZlcnRpY2FsID8gbWVhc3VyZXMuaGVpZ2h0IDogbWVhc3VyZXMud2lkdGgsXHJcbiAgICAgICAgICAgIGl0ZW1TaXplSGFsZiA9IGl0ZW1TaXplICogLjUsXHJcbiAgICAgICAgICAgIGJvdW5kc1NpemVIYWxmID0gYm91bmRzU2l6ZSAqIC41LFxyXG4gICAgICAgICAgICB4eCA9IGlzVmVydGljYWwgPyBtZWFzdXJlcy54IDogKG1lYXN1cmVzLnggKyBjb25maWcubGF5b3V0T2Zmc2V0ICsgaXRlbVNpemVIYWxmIC0gYm91bmRzU2l6ZUhhbGYgLSBzY3JvbGxTaXplKSxcclxuICAgICAgICAgICAgeXkgPSBpc1ZlcnRpY2FsID8gKG1lYXN1cmVzLnkgKyBjb25maWcubGF5b3V0T2Zmc2V0ICsgaXRlbVNpemVIYWxmIC0gYm91bmRzU2l6ZUhhbGYgLSBzY3JvbGxTaXplKSA6IG1lYXN1cmVzLnksXHJcbiAgICAgICAgICAgIHB4T2Zmc2V0ID0gaXNWZXJ0aWNhbCA/IGJvdW5kc1NpemVIYWxmIDogeHgsIHB4ID0gaXNWZXJ0aWNhbCA/IDEgOiAocHhPZmZzZXQgLyBib3VuZHNTaXplSGFsZiksXHJcbiAgICAgICAgICAgIHB5T2Zmc2V0ID0gaXNWZXJ0aWNhbCA/IHl5IDogYm91bmRzU2l6ZUhhbGYsIHB5ID0gaXNWZXJ0aWNhbCA/IChweU9mZnNldCAvIGJvdW5kc1NpemVIYWxmKSA6IDE7XHJcblxyXG4gICAgICAgIGlmIChjb25maWcuc25hcHBlZCB8fCBjb25maWcuc25hcHBlZE91dCkge1xyXG4gICAgICAgICAgICByZXN1bHQueCA9IG1lYXN1cmVzLng7XHJcbiAgICAgICAgICAgIHJlc3VsdC55ID0gbWVhc3VyZXMueTtcclxuICAgICAgICAgICAgcmVzdWx0LnpJbmRleCA9IGNvbmZpZy56SW5kZXg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzdWx0LnggPSBpc1ZlcnRpY2FsID8geHggOiAoc2Nyb2xsU2l6ZSAtIGNvbmZpZy5sYXlvdXRPZmZzZXQgKyBib3VuZHNTaXplSGFsZiAtIGl0ZW1TaXplSGFsZiArICh4eCAqIE1hdGgucG93KHB4LCAyKSAqIHNwYWNpbmdCZXR3ZWVuSXRlbXMpKTtcclxuICAgICAgICAgICAgcmVzdWx0LnkgPSBpc1ZlcnRpY2FsID8gKHNjcm9sbFNpemUgLSBjb25maWcubGF5b3V0T2Zmc2V0ICsgYm91bmRzU2l6ZUhhbGYgLSBpdGVtU2l6ZUhhbGYgKyAoeXkgKiBNYXRoLnBvdyhweSwgMikgKiBzcGFjaW5nQmV0d2Vlbkl0ZW1zKSkgOiB5eTtcclxuICAgICAgICAgICAgY29uc3QgcyA9IChpc1ZlcnRpY2FsID8gTWF0aC5hYnMoeXkpIDogTWF0aC5hYnMoeHgpKSAvIGJvdW5kc1NpemUsIHNjYWxlID0gTWF0aC5wb3coMSAtIHMgKiAuMTUsIDQpO1xyXG4gICAgICAgICAgICByZXN1bHQuekluZGV4ID0gMTAwIC0gTWF0aC5mbG9vcihNYXRoLmFicyhpc1ZlcnRpY2FsID8gcHkgOiBweCkgKiAxMDApO1xyXG4gICAgICAgICAgICBpZiAoISFkb2YpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJsdXIgPSAocyAqIGRvZikgLSAxLFxyXG4gICAgICAgICAgICAgICAgICAgIGFjdHVhbEJsdXIgPSBibHVyID4gMCA/IGJsdXIgOiAwO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LmZpbHRlciA9IGFjdHVhbEJsdXIgPyBgYmx1cigke2FjdHVhbEJsdXJ9JHtQWH0pYCA6IFVOU0VUO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICghIWZvZ0NvbG9yKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQub3BhY2l0eSA9IGZvZ1dlaWdodCA/IE1hdGgucG93KHNjYWxlLCBmb2dXZWlnaHQpIDogc2NhbGU7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQuYmxlbmRDb2xvciA9IGZvZ0NvbG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,13 @@
1
+ import { linear } from "./linear";
2
+ import { eventHorizon } from "./event-horizon";
3
+ import { deckOfCards } from "./deck-of-cards";
4
+ import { deckOfCards3D } from "./deck-of-cards-3d";
5
+ import { swipe3D } from "./swipe-3d";
6
+ export const ItemTransformations = {
7
+ EVENT_HORIZON: eventHorizon,
8
+ LINEAR: linear,
9
+ DECK_OF_CARDS: deckOfCards,
10
+ DECK_OF_CARDS_3D: deckOfCards3D,
11
+ SWIPE_3D: swipe3D,
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90cmFuc2Zvcm1hdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQy9CLGFBQWEsRUFBRSxZQUFZO0lBQzNCLE1BQU0sRUFBRSxNQUFNO0lBQ2QsYUFBYSxFQUFFLFdBQVc7SUFDMUIsZ0JBQWdCLEVBQUUsYUFBYTtJQUMvQixRQUFRLEVBQUUsT0FBTztDQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGluZWFyIH0gZnJvbSBcIi4vbGluZWFyXCI7XHJcbmltcG9ydCB7IGV2ZW50SG9yaXpvbiB9IGZyb20gXCIuL2V2ZW50LWhvcml6b25cIjtcclxuaW1wb3J0IHsgZGVja09mQ2FyZHMgfSBmcm9tIFwiLi9kZWNrLW9mLWNhcmRzXCI7XHJcbmltcG9ydCB7IGRlY2tPZkNhcmRzM0QgfSBmcm9tIFwiLi9kZWNrLW9mLWNhcmRzLTNkXCI7XHJcbmltcG9ydCB7IHN3aXBlM0QgfSBmcm9tIFwiLi9zd2lwZS0zZFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IEl0ZW1UcmFuc2Zvcm1hdGlvbnMgPSB7XHJcbiAgICBFVkVOVF9IT1JJWk9OOiBldmVudEhvcml6b24sXHJcbiAgICBMSU5FQVI6IGxpbmVhcixcclxuICAgIERFQ0tfT0ZfQ0FSRFM6IGRlY2tPZkNhcmRzLFxyXG4gICAgREVDS19PRl9DQVJEU18zRDogZGVja09mQ2FyZHMzRCxcclxuICAgIFNXSVBFXzNEOiBzd2lwZTNELFxyXG59O1xyXG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { PX } from '../const';
2
+ const UNSET = 'unset';
3
+ /**
4
+ * linear
5
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/transformations/linear.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
9
+ export const linear = (options) => {
10
+ const dof = options?.dof ?? null, fogColor = options?.fogColor ?? null, fogWeight = options?.fogWeight ?? null, spacingBetweenItems = options?.spacingBetweenItems ?? .5;
11
+ return (index, measures, config) => {
12
+ const result = {
13
+ x: 0,
14
+ y: 0,
15
+ z: 0,
16
+ rotationX: 0,
17
+ rotationY: 0,
18
+ rotationZ: 0,
19
+ scaleX: 1,
20
+ scaleY: 1,
21
+ scaleZ: 1,
22
+ opacity: 1,
23
+ zIndex: 1,
24
+ }, isVertical = config.isVertical, boundsSize = measures.boundsSize, scrollSize = measures.scrollSize, itemSize = isVertical ? measures.height : measures.width, itemSizeHalf = itemSize * .5, boundsSizeHalf = boundsSize * .5, xx = isVertical ? measures.x : (measures.x + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize), yy = isVertical ? (measures.y + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize) : measures.y, pxOffset = isVertical ? boundsSizeHalf : xx, px = isVertical ? 1 : (pxOffset / boundsSizeHalf), pyOffset = isVertical ? yy : boundsSizeHalf, py = isVertical ? (pyOffset / boundsSizeHalf) : 1;
25
+ if (config.snapped || config.snappedOut) {
26
+ result.x = measures.x;
27
+ result.y = measures.y;
28
+ result.zIndex = config.zIndex;
29
+ }
30
+ else {
31
+ result.x = isVertical ? xx : (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + (xx * spacingBetweenItems));
32
+ result.y = isVertical ? (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + (yy * spacingBetweenItems)) : yy;
33
+ const s = (isVertical ? Math.abs(yy) : Math.abs(xx)) / boundsSize, scale = Math.pow(1 - s * .15, 4);
34
+ result.zIndex = 100 - Math.floor(Math.abs(isVertical ? py : px) * 100);
35
+ if (!!dof) {
36
+ const blur = (s * dof) - 1, actualBlur = blur > 0 ? blur : 0;
37
+ result.filter = actualBlur ? `blur(${actualBlur}${PX})` : UNSET;
38
+ }
39
+ if (!!fogColor) {
40
+ result.opacity = fogWeight ? Math.pow(scale, fogWeight) : scale;
41
+ result.blendColor = fogColor;
42
+ }
43
+ }
44
+ return result;
45
+ };
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZWFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHJhbnNmb3JtYXRpb25zL2xpbmVhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBSzlCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQztBQXFCdEI7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxPQUF5QixFQUFpQixFQUFFO0lBQy9ELE1BQU0sR0FBRyxHQUFHLE9BQU8sRUFBRSxHQUFHLElBQUksSUFBSSxFQUM1QixRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsSUFBSSxJQUFJLEVBQ3BDLFNBQVMsR0FBRyxPQUFPLEVBQUUsU0FBUyxJQUFJLElBQUksRUFDdEMsbUJBQW1CLEdBQUcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLEVBQUUsQ0FBQztJQUM3RCxPQUFPLENBQUMsS0FBYSxFQUFFLFFBQXdDLEVBQzNELE1BQW9DLEVBQXVCLEVBQUU7UUFDN0QsTUFBTSxNQUFNLEdBQXdCO1lBQ2hDLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztZQUNKLFNBQVMsRUFBRSxDQUFDO1lBQ1osU0FBUyxFQUFFLENBQUM7WUFDWixTQUFTLEVBQUUsQ0FBQztZQUNaLE1BQU0sRUFBRSxDQUFDO1lBQ1QsTUFBTSxFQUFFLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQztZQUNULE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxFQUFFLENBQUM7U0FDWixFQUNHLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUM5QixVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFDaEMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQ2hDLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQ3hELFlBQVksR0FBRyxRQUFRLEdBQUcsRUFBRSxFQUM1QixjQUFjLEdBQUcsVUFBVSxHQUFHLEVBQUUsRUFDaEMsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxHQUFHLGNBQWMsR0FBRyxVQUFVLENBQUMsRUFDOUcsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxHQUFHLGNBQWMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFDOUcsUUFBUSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUMsRUFDOUYsUUFBUSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVuRyxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN0QixNQUFNLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDdEIsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksR0FBRyxjQUFjLEdBQUcsWUFBWSxHQUFHLENBQUMsRUFBRSxHQUFHLG1CQUFtQixDQUFDLENBQUMsQ0FBQztZQUM3SCxNQUFNLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksR0FBRyxjQUFjLEdBQUcsWUFBWSxHQUFHLENBQUMsRUFBRSxHQUFHLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdILE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsVUFBVSxFQUFFLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BHLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ1IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUN0QixVQUFVLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLFVBQVUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3BFLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDYixNQUFNLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFDaEUsTUFBTSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUM7WUFDakMsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDLENBQUE7QUFDTCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQWCB9IGZyb20gJy4uL2NvbnN0JztcclxuaW1wb3J0IHsgSUl0ZW1UcmFuc2Zvcm1hdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBJUmVuZGVyVmlydHVhbExpc3RJdGVtQ29uZmlnLCBJUmVuZGVyVmlydHVhbExpc3RJdGVtTWVhc3VyZXMgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBDb2xvciwgSXRlbVRyYW5zZm9ybSB9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbmNvbnN0IFVOU0VUID0gJ3Vuc2V0JztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUxpbnRlYXJPcHRpb25zIHtcclxuICAgIC8qKlxyXG4gICAgICogRGVwdGggT2YgRmllbGQuIERlZmF1bHQgdmFsdWUgaXMgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBkb2Y/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIEZvZyBjb2xvci4gRGVmYXVsdCB2YWx1ZSBpcyBgbnVsbGAuXHJcbiAgICAgKi9cclxuICAgIGZvZ0NvbG9yPzogQ29sb3I7XHJcbiAgICAvKipcclxuICAgICAqIEZvZyB3ZWlnaHQuIERlZmF1bHQgdmFsdWUgaXMgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBmb2dXZWlnaHQ/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIFNwYWNpbmcgYmV0d2VlbiBpdGVtcy4gRGVmYXVsdCB2YWx1ZSBpcyBgMC41YC5cclxuICAgICAqL1xyXG4gICAgc3BhY2luZ0JldHdlZW5JdGVtcz86IG51bWJlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIGxpbmVhclxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3RyYW5zZm9ybWF0aW9ucy9saW5lYXIudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgbGluZWFyID0gKG9wdGlvbnM/OiBJTGludGVhck9wdGlvbnMpOiBJdGVtVHJhbnNmb3JtID0+IHtcclxuICAgIGNvbnN0IGRvZiA9IG9wdGlvbnM/LmRvZiA/PyBudWxsLFxyXG4gICAgICAgIGZvZ0NvbG9yID0gb3B0aW9ucz8uZm9nQ29sb3IgPz8gbnVsbCxcclxuICAgICAgICBmb2dXZWlnaHQgPSBvcHRpb25zPy5mb2dXZWlnaHQgPz8gbnVsbCxcclxuICAgICAgICBzcGFjaW5nQmV0d2Vlbkl0ZW1zID0gb3B0aW9ucz8uc3BhY2luZ0JldHdlZW5JdGVtcyA/PyAuNTtcclxuICAgIHJldHVybiAoaW5kZXg6IG51bWJlciwgbWVhc3VyZXM6IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1NZWFzdXJlcyxcclxuICAgICAgICBjb25maWc6IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1Db25maWcpOiBJSXRlbVRyYW5zZm9ybWF0aW9uID0+IHtcclxuICAgICAgICBjb25zdCByZXN1bHQ6IElJdGVtVHJhbnNmb3JtYXRpb24gPSB7XHJcbiAgICAgICAgICAgIHg6IDAsXHJcbiAgICAgICAgICAgIHk6IDAsXHJcbiAgICAgICAgICAgIHo6IDAsXHJcbiAgICAgICAgICAgIHJvdGF0aW9uWDogMCxcclxuICAgICAgICAgICAgcm90YXRpb25ZOiAwLFxyXG4gICAgICAgICAgICByb3RhdGlvblo6IDAsXHJcbiAgICAgICAgICAgIHNjYWxlWDogMSxcclxuICAgICAgICAgICAgc2NhbGVZOiAxLFxyXG4gICAgICAgICAgICBzY2FsZVo6IDEsXHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHpJbmRleDogMSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICAgICBpc1ZlcnRpY2FsID0gY29uZmlnLmlzVmVydGljYWwsXHJcbiAgICAgICAgICAgIGJvdW5kc1NpemUgPSBtZWFzdXJlcy5ib3VuZHNTaXplLFxyXG4gICAgICAgICAgICBzY3JvbGxTaXplID0gbWVhc3VyZXMuc2Nyb2xsU2l6ZSxcclxuICAgICAgICAgICAgaXRlbVNpemUgPSBpc1ZlcnRpY2FsID8gbWVhc3VyZXMuaGVpZ2h0IDogbWVhc3VyZXMud2lkdGgsXHJcbiAgICAgICAgICAgIGl0ZW1TaXplSGFsZiA9IGl0ZW1TaXplICogLjUsXHJcbiAgICAgICAgICAgIGJvdW5kc1NpemVIYWxmID0gYm91bmRzU2l6ZSAqIC41LFxyXG4gICAgICAgICAgICB4eCA9IGlzVmVydGljYWwgPyBtZWFzdXJlcy54IDogKG1lYXN1cmVzLnggKyBjb25maWcubGF5b3V0T2Zmc2V0ICsgaXRlbVNpemVIYWxmIC0gYm91bmRzU2l6ZUhhbGYgLSBzY3JvbGxTaXplKSxcclxuICAgICAgICAgICAgeXkgPSBpc1ZlcnRpY2FsID8gKG1lYXN1cmVzLnkgKyBjb25maWcubGF5b3V0T2Zmc2V0ICsgaXRlbVNpemVIYWxmIC0gYm91bmRzU2l6ZUhhbGYgLSBzY3JvbGxTaXplKSA6IG1lYXN1cmVzLnksXHJcbiAgICAgICAgICAgIHB4T2Zmc2V0ID0gaXNWZXJ0aWNhbCA/IGJvdW5kc1NpemVIYWxmIDogeHgsIHB4ID0gaXNWZXJ0aWNhbCA/IDEgOiAocHhPZmZzZXQgLyBib3VuZHNTaXplSGFsZiksXHJcbiAgICAgICAgICAgIHB5T2Zmc2V0ID0gaXNWZXJ0aWNhbCA/IHl5IDogYm91bmRzU2l6ZUhhbGYsIHB5ID0gaXNWZXJ0aWNhbCA/IChweU9mZnNldCAvIGJvdW5kc1NpemVIYWxmKSA6IDE7XHJcblxyXG4gICAgICAgIGlmIChjb25maWcuc25hcHBlZCB8fCBjb25maWcuc25hcHBlZE91dCkge1xyXG4gICAgICAgICAgICByZXN1bHQueCA9IG1lYXN1cmVzLng7XHJcbiAgICAgICAgICAgIHJlc3VsdC55ID0gbWVhc3VyZXMueTtcclxuICAgICAgICAgICAgcmVzdWx0LnpJbmRleCA9IGNvbmZpZy56SW5kZXg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmVzdWx0LnggPSBpc1ZlcnRpY2FsID8geHggOiAoc2Nyb2xsU2l6ZSAtIGNvbmZpZy5sYXlvdXRPZmZzZXQgKyBib3VuZHNTaXplSGFsZiAtIGl0ZW1TaXplSGFsZiArICh4eCAqIHNwYWNpbmdCZXR3ZWVuSXRlbXMpKTtcclxuICAgICAgICAgICAgcmVzdWx0LnkgPSBpc1ZlcnRpY2FsID8gKHNjcm9sbFNpemUgLSBjb25maWcubGF5b3V0T2Zmc2V0ICsgYm91bmRzU2l6ZUhhbGYgLSBpdGVtU2l6ZUhhbGYgKyAoeXkgKiBzcGFjaW5nQmV0d2Vlbkl0ZW1zKSkgOiB5eTtcclxuICAgICAgICAgICAgY29uc3QgcyA9IChpc1ZlcnRpY2FsID8gTWF0aC5hYnMoeXkpIDogTWF0aC5hYnMoeHgpKSAvIGJvdW5kc1NpemUsIHNjYWxlID0gTWF0aC5wb3coMSAtIHMgKiAuMTUsIDQpO1xyXG4gICAgICAgICAgICByZXN1bHQuekluZGV4ID0gMTAwIC0gTWF0aC5mbG9vcihNYXRoLmFicyhpc1ZlcnRpY2FsID8gcHkgOiBweCkgKiAxMDApO1xyXG4gICAgICAgICAgICBpZiAoISFkb2YpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJsdXIgPSAocyAqIGRvZikgLSAxLFxyXG4gICAgICAgICAgICAgICAgICAgIGFjdHVhbEJsdXIgPSBibHVyID4gMCA/IGJsdXIgOiAwO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LmZpbHRlciA9IGFjdHVhbEJsdXIgPyBgYmx1cigke2FjdHVhbEJsdXJ9JHtQWH0pYCA6IFVOU0VUO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICghIWZvZ0NvbG9yKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQub3BhY2l0eSA9IGZvZ1dlaWdodCA/IE1hdGgucG93KHNjYWxlLCBmb2dXZWlnaHQpIDogc2NhbGU7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQuYmxlbmRDb2xvciA9IGZvZ0NvbG9yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,51 @@
1
+ import { PX } from '../const';
2
+ const UNSET = 'unset', B_LIMIT = 0.5;
3
+ /**
4
+ * swipe3D
5
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/transformations/swipe-3d.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
9
+ export const swipe3D = (options) => {
10
+ const dof = options?.dof ?? null, fogColor = options?.fogColor ?? null, fogWeight = options?.fogWeight ?? null, spacingBetweenItems = options?.spacingBetweenItems ?? .35, angle = options?.angle ?? 25, depth = options?.depth ?? .15, depthPow = options?.depthPow ?? 4;
11
+ return (index, measures, config) => {
12
+ const result = {
13
+ x: 0,
14
+ y: 0,
15
+ z: 0,
16
+ rotationX: 0,
17
+ rotationY: 0,
18
+ rotationZ: 0,
19
+ scaleX: 1,
20
+ scaleY: 1,
21
+ scaleZ: 1,
22
+ opacity: 1,
23
+ zIndex: 1,
24
+ }, isVertical = config.isVertical, boundsSize = measures.boundsSize, scrollSize = measures.scrollSize, itemSize = isVertical ? measures.height : measures.width, itemSizeHalf = itemSize * .5, boundsSizeHalf = boundsSize * .5, xx = isVertical ? measures.x : (measures.x + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize), yy = isVertical ? (measures.y + config.layoutOffset + itemSizeHalf - boundsSizeHalf - scrollSize) : measures.y, pxOffset = isVertical ? boundsSizeHalf : xx, px = isVertical ? 1 : (pxOffset / boundsSizeHalf), pyOffset = isVertical ? yy : boundsSizeHalf, py = isVertical ? (pyOffset / boundsSizeHalf) : 1;
25
+ if (config.snapped || config.snappedOut) {
26
+ result.x = measures.x;
27
+ result.y = measures.y;
28
+ result.zIndex = config.zIndex;
29
+ }
30
+ else {
31
+ const rx = isVertical ? xx : (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + xx * Math.pow(px, 2) * spacingBetweenItems), ry = isVertical ? (scrollSize - config.layoutOffset + boundsSizeHalf - itemSizeHalf + yy * Math.pow(py, 2) * spacingBetweenItems) : yy;
32
+ result.x = rx;
33
+ result.y = ry;
34
+ const s = (isVertical ? Math.abs(yy) : Math.abs(xx)) / boundsSize, scale = Math.pow(1 - s * depth, depthPow);
35
+ const z = scale + .1;
36
+ result.z = z > 1 ? 1 : z;
37
+ result.rotationZ = (Math.pow(s, 4) * -angle);
38
+ result.zIndex = -index;
39
+ if (!!dof) {
40
+ const blur = (s * dof) - B_LIMIT, actualBlur = blur > 0 ? blur : 0;
41
+ result.filter = actualBlur ? `blur(${actualBlur}${PX})` : UNSET;
42
+ }
43
+ if (!!fogColor) {
44
+ result.opacity = fogWeight ? Math.pow(scale, fogWeight) : scale;
45
+ result.blendColor = fogColor;
46
+ }
47
+ }
48
+ return result;
49
+ };
50
+ };
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUtM2QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90cmFuc2Zvcm1hdGlvbnMvc3dpcGUtM2QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUs5QixNQUFNLEtBQUssR0FBRyxPQUFPLEVBQ2pCLE9BQU8sR0FBRyxHQUFHLENBQUM7QUFpQ2xCOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsT0FBeUIsRUFBaUIsRUFBRTtJQUNoRSxNQUFNLEdBQUcsR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksRUFDNUIsUUFBUSxHQUFHLE9BQU8sRUFBRSxRQUFRLElBQUksSUFBSSxFQUNwQyxTQUFTLEdBQUcsT0FBTyxFQUFFLFNBQVMsSUFBSSxJQUFJLEVBQ3RDLG1CQUFtQixHQUFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxHQUFHLEVBQ3pELEtBQUssR0FBRyxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUUsRUFDNUIsS0FBSyxHQUFHLE9BQU8sRUFBRSxLQUFLLElBQUksR0FBRyxFQUM3QixRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsSUFBSSxDQUFDLENBQUM7SUFDdEMsT0FBTyxDQUFDLEtBQWEsRUFBRSxRQUF3QyxFQUMzRCxNQUFvQyxFQUF1QixFQUFFO1FBQzdELE1BQU0sTUFBTSxHQUF3QjtZQUNoQyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixTQUFTLEVBQUUsQ0FBQztZQUNaLFNBQVMsRUFBRSxDQUFDO1lBQ1osU0FBUyxFQUFFLENBQUM7WUFDWixNQUFNLEVBQUUsQ0FBQztZQUNULE1BQU0sRUFBRSxDQUFDO1lBQ1QsTUFBTSxFQUFFLENBQUM7WUFDVCxPQUFPLEVBQUUsQ0FBQztZQUNWLE1BQU0sRUFBRSxDQUFDO1NBQ1osRUFDRyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFDOUIsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQ2hDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxFQUNoQyxRQUFRLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUN4RCxZQUFZLEdBQUcsUUFBUSxHQUFHLEVBQUUsRUFDNUIsY0FBYyxHQUFHLFVBQVUsR0FBRyxFQUFFLEVBQ2hDLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxHQUFHLFlBQVksR0FBRyxjQUFjLEdBQUcsVUFBVSxDQUFDLEVBQzlHLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxHQUFHLFlBQVksR0FBRyxjQUFjLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQzlHLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsY0FBYyxDQUFDLEVBQzlGLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkcsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN0QyxNQUFNLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDdEIsTUFBTSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxHQUFHLGNBQWMsR0FBRyxZQUFZLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFtQixDQUFDLEVBQ3hJLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEdBQUcsY0FBYyxHQUFHLFlBQVksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzNJLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZCxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFVBQVUsRUFBRSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztZQUM3RyxNQUFNLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekIsTUFBTSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0MsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDUixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxPQUFPLEVBQzVCLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckMsTUFBTSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsVUFBVSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDcEUsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNiLE1BQU0sQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUNoRSxNQUFNLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztZQUNqQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtBQUNMLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBYIH0gZnJvbSAnLi4vY29uc3QnO1xyXG5pbXBvcnQgeyBJSXRlbVRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1Db25maWcsIElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1NZWFzdXJlcyB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IENvbG9yLCBJdGVtVHJhbnNmb3JtIH0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuY29uc3QgVU5TRVQgPSAndW5zZXQnLFxyXG4gICAgQl9MSU1JVCA9IDAuNTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVN3aXBlM0RPcHRpb25zIHtcclxuICAgIC8qKlxyXG4gICAgICogRGVwdGggT2YgRmllbGQuIERlZmF1bHQgdmFsdWUgaXMgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBkb2Y/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIEZvZyBjb2xvci4gRGVmYXVsdCB2YWx1ZSBpcyBgbnVsbGAuXHJcbiAgICAgKi9cclxuICAgIGZvZ0NvbG9yPzogQ29sb3I7XHJcbiAgICAvKipcclxuICAgICAqIEZvZyB3ZWlnaHQuIERlZmF1bHQgdmFsdWUgaXMgYG51bGxgLlxyXG4gICAgICovXHJcbiAgICBmb2dXZWlnaHQ/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIFNwYWNpbmcgYmV0d2VlbiBpdGVtcy4gRGVmYXVsdCB2YWx1ZSBpcyBgMC41YC5cclxuICAgICAqL1xyXG4gICAgc3BhY2luZ0JldHdlZW5JdGVtcz86IG51bWJlcjtcclxuICAgIC8qKlxyXG4gICAgICogQW5nbGUgb2YgaW5jbGluYXRpb24uIERlZmF1bHQgdmFsdWUgaXMgYDFgLlxyXG4gICAgICovXHJcbiAgICBhbmdsZT86IG51bWJlcjtcclxuICAgIC8qKlxyXG4gICAgICogRGVwdGguIERlZmF1bHQgdmFsdWUgaXMgYDEuNWAuXHJcbiAgICAgKi9cclxuICAgIGRlcHRoPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBEZXB0aCBleHBvbmVudC4gRGVmYXVsdCB2YWx1ZSBpcyBgNGAuXHJcbiAgICAgKi9cclxuICAgIGRlcHRoUG93PzogbnVtYmVyO1xyXG59XHJcblxyXG4vKipcclxuICogc3dpcGUzRFxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3RyYW5zZm9ybWF0aW9ucy9zd2lwZS0zZC50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjb25zdCBzd2lwZTNEID0gKG9wdGlvbnM/OiBJU3dpcGUzRE9wdGlvbnMpOiBJdGVtVHJhbnNmb3JtID0+IHtcclxuICAgIGNvbnN0IGRvZiA9IG9wdGlvbnM/LmRvZiA/PyBudWxsLFxyXG4gICAgICAgIGZvZ0NvbG9yID0gb3B0aW9ucz8uZm9nQ29sb3IgPz8gbnVsbCxcclxuICAgICAgICBmb2dXZWlnaHQgPSBvcHRpb25zPy5mb2dXZWlnaHQgPz8gbnVsbCxcclxuICAgICAgICBzcGFjaW5nQmV0d2Vlbkl0ZW1zID0gb3B0aW9ucz8uc3BhY2luZ0JldHdlZW5JdGVtcyA/PyAuMzUsXHJcbiAgICAgICAgYW5nbGUgPSBvcHRpb25zPy5hbmdsZSA/PyAyNSxcclxuICAgICAgICBkZXB0aCA9IG9wdGlvbnM/LmRlcHRoID8/IC4xNSxcclxuICAgICAgICBkZXB0aFBvdyA9IG9wdGlvbnM/LmRlcHRoUG93ID8/IDQ7XHJcbiAgICByZXR1cm4gKGluZGV4OiBudW1iZXIsIG1lYXN1cmVzOiBJUmVuZGVyVmlydHVhbExpc3RJdGVtTWVhc3VyZXMsXHJcbiAgICAgICAgY29uZmlnOiBJUmVuZGVyVmlydHVhbExpc3RJdGVtQ29uZmlnKTogSUl0ZW1UcmFuc2Zvcm1hdGlvbiA9PiB7XHJcbiAgICAgICAgY29uc3QgcmVzdWx0OiBJSXRlbVRyYW5zZm9ybWF0aW9uID0ge1xyXG4gICAgICAgICAgICB4OiAwLFxyXG4gICAgICAgICAgICB5OiAwLFxyXG4gICAgICAgICAgICB6OiAwLFxyXG4gICAgICAgICAgICByb3RhdGlvblg6IDAsXHJcbiAgICAgICAgICAgIHJvdGF0aW9uWTogMCxcclxuICAgICAgICAgICAgcm90YXRpb25aOiAwLFxyXG4gICAgICAgICAgICBzY2FsZVg6IDEsXHJcbiAgICAgICAgICAgIHNjYWxlWTogMSxcclxuICAgICAgICAgICAgc2NhbGVaOiAxLFxyXG4gICAgICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICB6SW5kZXg6IDEsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAgICAgaXNWZXJ0aWNhbCA9IGNvbmZpZy5pc1ZlcnRpY2FsLFxyXG4gICAgICAgICAgICBib3VuZHNTaXplID0gbWVhc3VyZXMuYm91bmRzU2l6ZSxcclxuICAgICAgICAgICAgc2Nyb2xsU2l6ZSA9IG1lYXN1cmVzLnNjcm9sbFNpemUsXHJcbiAgICAgICAgICAgIGl0ZW1TaXplID0gaXNWZXJ0aWNhbCA/IG1lYXN1cmVzLmhlaWdodCA6IG1lYXN1cmVzLndpZHRoLFxyXG4gICAgICAgICAgICBpdGVtU2l6ZUhhbGYgPSBpdGVtU2l6ZSAqIC41LFxyXG4gICAgICAgICAgICBib3VuZHNTaXplSGFsZiA9IGJvdW5kc1NpemUgKiAuNSxcclxuICAgICAgICAgICAgeHggPSBpc1ZlcnRpY2FsID8gbWVhc3VyZXMueCA6IChtZWFzdXJlcy54ICsgY29uZmlnLmxheW91dE9mZnNldCArIGl0ZW1TaXplSGFsZiAtIGJvdW5kc1NpemVIYWxmIC0gc2Nyb2xsU2l6ZSksXHJcbiAgICAgICAgICAgIHl5ID0gaXNWZXJ0aWNhbCA/IChtZWFzdXJlcy55ICsgY29uZmlnLmxheW91dE9mZnNldCArIGl0ZW1TaXplSGFsZiAtIGJvdW5kc1NpemVIYWxmIC0gc2Nyb2xsU2l6ZSkgOiBtZWFzdXJlcy55LFxyXG4gICAgICAgICAgICBweE9mZnNldCA9IGlzVmVydGljYWwgPyBib3VuZHNTaXplSGFsZiA6IHh4LCBweCA9IGlzVmVydGljYWwgPyAxIDogKHB4T2Zmc2V0IC8gYm91bmRzU2l6ZUhhbGYpLFxyXG4gICAgICAgICAgICBweU9mZnNldCA9IGlzVmVydGljYWwgPyB5eSA6IGJvdW5kc1NpemVIYWxmLCBweSA9IGlzVmVydGljYWwgPyAocHlPZmZzZXQgLyBib3VuZHNTaXplSGFsZikgOiAxO1xyXG4gICAgICAgIGlmIChjb25maWcuc25hcHBlZCB8fCBjb25maWcuc25hcHBlZE91dCkge1xyXG4gICAgICAgICAgICByZXN1bHQueCA9IG1lYXN1cmVzLng7XHJcbiAgICAgICAgICAgIHJlc3VsdC55ID0gbWVhc3VyZXMueTtcclxuICAgICAgICAgICAgcmVzdWx0LnpJbmRleCA9IGNvbmZpZy56SW5kZXg7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgcnggPSBpc1ZlcnRpY2FsID8geHggOiAoc2Nyb2xsU2l6ZSAtIGNvbmZpZy5sYXlvdXRPZmZzZXQgKyBib3VuZHNTaXplSGFsZiAtIGl0ZW1TaXplSGFsZiArIHh4ICogTWF0aC5wb3cocHgsIDIpICogc3BhY2luZ0JldHdlZW5JdGVtcyksXHJcbiAgICAgICAgICAgICAgICByeSA9IGlzVmVydGljYWwgPyAoc2Nyb2xsU2l6ZSAtIGNvbmZpZy5sYXlvdXRPZmZzZXQgKyBib3VuZHNTaXplSGFsZiAtIGl0ZW1TaXplSGFsZiArIHl5ICogTWF0aC5wb3cocHksIDIpICogc3BhY2luZ0JldHdlZW5JdGVtcykgOiB5eTtcclxuICAgICAgICAgICAgcmVzdWx0LnggPSByeDtcclxuICAgICAgICAgICAgcmVzdWx0LnkgPSByeTtcclxuICAgICAgICAgICAgY29uc3QgcyA9IChpc1ZlcnRpY2FsID8gTWF0aC5hYnMoeXkpIDogTWF0aC5hYnMoeHgpKSAvIGJvdW5kc1NpemUsIHNjYWxlID0gTWF0aC5wb3coMSAtIHMgKiBkZXB0aCwgZGVwdGhQb3cpO1xyXG4gICAgICAgICAgICBjb25zdCB6ID0gc2NhbGUgKyAuMTtcclxuICAgICAgICAgICAgcmVzdWx0LnogPSB6ID4gMSA/IDEgOiB6O1xyXG4gICAgICAgICAgICByZXN1bHQucm90YXRpb25aID0gKE1hdGgucG93KHMsIDQpICogLWFuZ2xlKTtcclxuICAgICAgICAgICAgcmVzdWx0LnpJbmRleCA9IC1pbmRleDtcclxuICAgICAgICAgICAgaWYgKCEhZG9mKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBibHVyID0gKHMgKiBkb2YpIC0gQl9MSU1JVCxcclxuICAgICAgICAgICAgICAgICAgICBhY3R1YWxCbHVyID0gYmx1ciA+IDAgPyBibHVyIDogMDtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5maWx0ZXIgPSBhY3R1YWxCbHVyID8gYGJsdXIoJHthY3R1YWxCbHVyfSR7UFh9KWAgOiBVTlNFVDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoISFmb2dDb2xvcikge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0Lm9wYWNpdHkgPSBmb2dXZWlnaHQgPyBNYXRoLnBvdyhzY2FsZSwgZm9nV2VpZ2h0KSA6IHNjYWxlO1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LmJsZW5kQ29sb3IgPSBmb2dDb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpZ25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvYWxpZ25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbGlnbm1lbnRzIH0gZnJvbSBcIi4uL2VudW1zL2FsaWdubWVudHNcIjtcclxuXHJcbi8qKlxyXG4gKiBBbGlnbm1lbnRcclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9lbnVtcy9hbGlnbm1lbnQudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBBbGlnbm1lbnQgPSBBbGlnbm1lbnRzIHwgJ25vbmUnIHwgJ2NlbnRlcic7Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpdGhtZXRpYy1leHByZXNzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvYXJpdGhtZXRpYy1leHByZXNzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGbG9hdE9yUGVyc2VudGFnZVZhbHVlIH0gZnJvbSBcIi4vZmxvYXQtb3ItcGVyc2VudGFnZS12YWx1ZVwiO1xyXG5cclxudHlwZSBPcGVyYXRvciA9ICcrJyB8ICctJztcclxuXHJcbi8qKlxyXG4gKiBBcml0aG1ldGljRXhwcmVzc2lvblxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL2FyaXRobWV0aWMtZXhwcmVzc2lvbi50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCB0eXBlIEFyaXRobWV0aWNFeHByZXNzaW9uID0gRmxvYXRPclBlcnNlbnRhZ2VWYWx1ZSB8IGAke0Zsb2F0T3JQZXJzZW50YWdlVmFsdWV9JHtPcGVyYXRvcn0ke0Zsb2F0T3JQZXJzZW50YWdlVmFsdWV9YCB8IGAke0Zsb2F0T3JQZXJzZW50YWdlVmFsdWV9ICR7T3BlcmF0b3J9ICR7RmxvYXRPclBlcnNlbnRhZ2VWYWx1ZX1gO1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2luZy1tb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvY29sbGFwc2luZy1tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsYXBzaW5nTW9kZXMgfSBmcm9tIFwiLi4vZW51bXMvY29sbGFwc2luZy1tb2Rlc1wiO1xyXG5cclxuLyoqXHJcbiAqIE1vZGVzIGZvciBjb2xsYXBzaW5nIGxpc3QgaXRlbXMuXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvZW51bXMvY29sbGFwc2luZy1tb2RlLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgQ29sbGFwc2luZ01vZGUgPSBDb2xsYXBzaW5nTW9kZXMgfCAnbm9uZScgfCAnbXVsdGktY29sbGFwc2UnIHwgJ2FjY29yZGlvbic7XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1tb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvY29sbGVjdGlvbi1tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uTW9kZXMgfSBmcm9tIFwiLi4vZW51bXMvY29sbGVjdGlvbi1tb2Rlc1wiO1xyXG5cclxuLyoqXHJcbiAqIEFjdGlvbiBtb2RlcyBmb3IgY29sbGVjdGlvbiBlbGVtZW50cy5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9lbnVtcy9jb2xsZWN0aW9uLW1vZGUudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBDb2xsZWN0aW9uTW9kZSA9IENvbGxlY3Rpb25Nb2RlcyB8ICdub3JtYWwnIHwgJ2xhenknO1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9jb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlIENvcHlyaWdodCAoYykgMjAyNiBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3YgKGRqb25ueXhAZ21haWwuY29tIHRnOiBodHRwOi8vdC5tZS9kam9ubnl4KS5cclxuICovXHJcbmV4cG9ydCB0eXBlIENvbG9yID0gYCMke3N0cmluZ31gIHwgYHJnYigke251bWJlcn0sJHtudW1iZXJ9LCR7bnVtYmVyfSlgIHwgYHJnYmEoJHtudW1iZXJ9LCR7bnVtYmVyfSwke251bWJlcn0sJHtudW1iZXJ9KWBcclxuICAgIHwgYHJnYmEoIyR7c3RyaW5nfSwke251bWJlcn0pYDtcclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvZGlyZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3Rpb25zIH0gZnJvbSBcIi4uL2VudW1zL2RpcmVjdGlvbnNcIjtcclxuXHJcbi8qKlxyXG4gKiBBeGlzIG9mIHRoZSBhcnJhbmdlbWVudCBvZiB2aXJ0dWFsIGxpc3QgZWxlbWVudHMuXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvZW51bXMvZGlyZWN0aW9uLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgRGlyZWN0aW9uID0gRGlyZWN0aW9ucyB8ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc7XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvYXQtb3ItcGVyc2VudGFnZS12YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL2Zsb2F0LW9yLXBlcnNlbnRhZ2UtdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBGbG9hdE9yUGVyc2VudGFnZVZhbHVlXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvZmxvYXQtb3ItcGVyc2VudGFnZS12YWx1ZS50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCB0eXBlIEZsb2F0T3JQZXJzZW50YWdlVmFsdWUgPSBudW1iZXIgfCBgJHtudW1iZXJ9JWA7XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtaXRlbS1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9mb2N1cy1pdGVtLXBhcmFtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNBbGlnbm1lbnQgfSBmcm9tIFwiLi9mb2N1cy1hbGlnbm1lbnRcIjtcclxuXHJcbmV4cG9ydCB0eXBlIEZvY3VzSXRlbVBhcmFtcyA9IHtcclxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG4gICAgcG9zaXRpb246IG51bWJlcjtcclxuICAgIGFsaWduPzogRm9jdXNBbGlnbm1lbnQ7XHJcbiAgICBiZWhhdmlvcj86IFNjcm9sbEJlaGF2aW9yXHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtaXRlbS1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9mb2N1cy1pdGVtLXBhcmFtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNBbGlnbm1lbnQgfSBmcm9tIFwiLi9mb2N1cy1hbGlnbm1lbnRcIjtcclxuXHJcbi8qKlxyXG4gKiBGb2N1c0l0ZW1QYXJhbXNcclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9mb2N1cy1pdGVtLXBhcmFtcy50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCB0eXBlIEZvY3VzSXRlbVBhcmFtcyA9IHtcclxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG4gICAgcG9zaXRpb246IG51bWJlcjtcclxuICAgIGFsaWduPzogRm9jdXNBbGlnbm1lbnQ7XHJcbiAgICBiZWhhdmlvcj86IFNjcm9sbEJlaGF2aW9yXHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhZGllbnQtY29sb3ItcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9ncmFkaWVudC1jb2xvci1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEdyYWRpZW50Q29sb3JQb3NpdGlvblxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL2dyYWRpZW50LXBvc2l0aW9uLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgR3JhZGllbnRDb2xvclBvc2l0aW9uID0gYCR7c3RyaW5nfSVgIHwgYCR7bnVtYmVyfWAgfCBudW1iZXIgfCBzdHJpbmc7XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhZGllbnQtY29sb3ItcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9ncmFkaWVudC1jb2xvci1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEdyYWRpZW50Q29sb3JQb3NpdGlvblxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL2dyYWRpZW50LXBvc2l0aW9uLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgR3JhZGllbnRDb2xvclBvc2l0aW9uID0gYCR7bnVtYmVyfSVgIHwgYCR7bnVtYmVyfWAgfCBudW1iZXIgfCBzdHJpbmc7XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWQgfSBmcm9tICcuL2lkJztcclxuaW1wb3J0IHsgRm9jdXNBbGlnbm1lbnQgfSBmcm9tICcuL2ZvY3VzLWFsaWdubWVudCc7XHJcbmltcG9ydCB7IFNjcm9sbERpcmVjdGlvbiB9IGZyb20gJy4vc2Nyb2xsLWRpcmVjdGlvbic7XHJcbmltcG9ydCB7IEdyYWRpZW50Q29sb3JQb3NpdGlvbiB9IGZyb20gJy4vZ3JhZGllbnQtY29sb3ItcG9zaXRpb24nO1xyXG5pbXBvcnQgeyBHcmFkaWVudENvbG9yUG9zaXRpb25zIH0gZnJvbSAnLi9ncmFkaWVudC1jb2xvci1wb3NpdGlvbnMnO1xyXG5cclxuZXhwb3J0IHR5cGUge1xyXG4gICAgSWQsXHJcbiAgICBGb2N1c0FsaWdubWVudCxcclxuICAgIFNjcm9sbERpcmVjdGlvbixcclxuICAgIEdyYWRpZW50Q29sb3JQb3NpdGlvbixcclxuICAgIEdyYWRpZW50Q29sb3JQb3NpdGlvbnMsXHJcbn0iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWxpZ25tZW50IH0gZnJvbSAnLi9hbGlnbm1lbnQnO1xyXG5pbXBvcnQgeyBBcml0aG1ldGljRXhwcmVzc2lvbiB9IGZyb20gJy4vYXJpdGhtZXRpYy1leHByZXNzaW9uJztcclxuaW1wb3J0IHsgSWQgfSBmcm9tICcuL2lkJztcclxuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICcuL2NvbG9yJztcclxuaW1wb3J0IHsgRmxvYXRPclBlcnNlbnRhZ2VWYWx1ZSB9IGZyb20gJy4vZmxvYXQtb3ItcGVyc2VudGFnZS12YWx1ZSc7XHJcbmltcG9ydCB7IEl0ZW1UcmFuc2Zvcm0gfSBmcm9tICcuL2l0ZW0tdHJhbnNmb3JtJztcclxuaW1wb3J0IHsgRm9jdXNBbGlnbm1lbnQgfSBmcm9tICcuL2ZvY3VzLWFsaWdubWVudCc7XHJcbmltcG9ydCB7IFNjcm9sbERpcmVjdGlvbiB9IGZyb20gJy4vc2Nyb2xsLWRpcmVjdGlvbic7XHJcbmltcG9ydCB7IFNuYXBwaW5nRGlzdGFuY2UgfSBmcm9tICcuL3NuYXBwaW5nLWRpc3RhbmNlJztcclxuaW1wb3J0IHsgR3JhZGllbnRDb2xvclBvc2l0aW9uIH0gZnJvbSAnLi9ncmFkaWVudC1jb2xvci1wb3NpdGlvbic7XHJcbmltcG9ydCB7IEdyYWRpZW50Q29sb3JQb3NpdGlvbnMgfSBmcm9tICcuL2dyYWRpZW50LWNvbG9yLXBvc2l0aW9ucyc7XHJcbmltcG9ydCB7IENvbGxlY3Rpb25Nb2RlIH0gZnJvbSBcIi4uL3R5cGVzL2NvbGxlY3Rpb24tbW9kZVwiO1xyXG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tIFwiLi4vdHlwZXMvZGlyZWN0aW9uXCI7XHJcbmltcG9ydCB7IENvbGxhcHNpbmdNb2RlIH0gZnJvbSBcIi4vY29sbGFwc2luZy1tb2RlXCI7XHJcbmltcG9ydCB7IFNlbGVjdGluZ01vZGUgfSBmcm9tIFwiLi9zZWxlY3RpbmctbW9kZVwiO1xyXG5pbXBvcnQgeyBTbmFwVG9JdGVtQWxpZ24gfSBmcm9tICcuLi90eXBlcy9zbmFwLXRvLWl0ZW0tYWxpZ24nO1xyXG5pbXBvcnQgeyBTbmFwcGluZ01ldGhvZCB9IGZyb20gXCIuLi90eXBlcy9zbmFwcGluZy1tZXRob2RcIjtcclxuaW1wb3J0IHsgU3ByZWFkaW5nTW9kZSB9IGZyb20gXCIuLi90eXBlcy9zcHJlYWRpbmctbW9kZVwiO1xyXG5pbXBvcnQgeyBUZXh0RGlyZWN0aW9uIH0gZnJvbSBcIi4uL3R5cGVzL3RleHQtZGlyZWN0aW9uXCI7XHJcblxyXG5leHBvcnQgdHlwZSB7XHJcbiAgICBBbGlnbm1lbnQsXHJcbiAgICBBcml0aG1ldGljRXhwcmVzc2lvbixcclxuICAgIENvbGxhcHNpbmdNb2RlLFxyXG4gICAgQ29sbGVjdGlvbk1vZGUsXHJcbiAgICBDb2xvcixcclxuICAgIERpcmVjdGlvbixcclxuICAgIEdyYWRpZW50Q29sb3JQb3NpdGlvbixcclxuICAgIEdyYWRpZW50Q29sb3JQb3NpdGlvbnMsXHJcbiAgICBGbG9hdE9yUGVyc2VudGFnZVZhbHVlLFxyXG4gICAgRm9jdXNBbGlnbm1lbnQsXHJcbiAgICBJZCxcclxuICAgIEl0ZW1UcmFuc2Zvcm0sXHJcbiAgICBTY3JvbGxEaXJlY3Rpb24sXHJcbiAgICBTbmFwcGluZ0Rpc3RhbmNlLFxyXG4gICAgU2VsZWN0aW5nTW9kZSxcclxuICAgIFNuYXBwaW5nTWV0aG9kLFxyXG4gICAgU25hcFRvSXRlbUFsaWduLFxyXG4gICAgU3ByZWFkaW5nTW9kZSxcclxuICAgIFRleHREaXJlY3Rpb24sXHJcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS10cmFuc2Zvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9pdGVtLXRyYW5zZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUl0ZW1UcmFuc2Zvcm1hdGlvbiB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XHJcbmltcG9ydCB7IElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1Db25maWcsIElSZW5kZXJWaXJ0dWFsTGlzdEl0ZW1NZWFzdXJlcyB9IGZyb20gXCIuLi9tb2RlbHNcIjtcclxuXHJcbi8qKlxyXG4gKiBJdGVtVHJhbnNmb3JtXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvaXRlbS10cmFuc2Zvcm0udHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBJdGVtVHJhbnNmb3JtID0gKGluZGV4OiBudW1iZXIsIG1lYXN1cmVzOiBJUmVuZGVyVmlydHVhbExpc3RJdGVtTWVhc3VyZXMsIGNvbmZpZzogSVJlbmRlclZpcnR1YWxMaXN0SXRlbUNvbmZpZykgPT5cclxuICAgIElJdGVtVHJhbnNmb3JtYXRpb247XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWRpcmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL3Njcm9sbC1kaXJlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBBIHZhbHVlIG9mIC0xIGluZGljYXRlcyB0aGUgZGlyZWN0aW9uIGlzIHVwIG9yIGxlZnQgKGlmIHRoZSBsaXN0IGRpcmVjdGlvbiBpcyBob3Jpem9udGFsKS5cclxuICogQSB2YWx1ZSBvZiAxIGluZGljYXRlcyB0aGUgZGlyZWN0aW9uIGlzIGRvd24gb3IgcmlnaHQgKGlmIHRoZSBsaXN0IGRpcmVjdGlvbiBpcyBob3Jpem9udGFsKS5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9zY3JvbGwtZGlyZWN0aW9uLnRzXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBTY3JvbGxEaXJlY3Rpb24gPSAtMSB8IDEgfCAwO1xyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWRpcmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3R5cGVzL3Njcm9sbC1kaXJlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBBIHZhbHVlIG9mIC0xIGluZGljYXRlcyB0aGUgZGlyZWN0aW9uIGlzIHVwIG9yIGxlZnQgKGlmIHRoZSBsaXN0IGRpcmVjdGlvbiBpcyBob3Jpem9udGFsKS5cclxuICogQSB2YWx1ZSBvZiAxIGluZGljYXRlcyB0aGUgZGlyZWN0aW9uIGlzIGRvd24gb3IgcmlnaHQgKGlmIHRoZSBsaXN0IGRpcmVjdGlvbiBpcyBob3Jpem9udGFsKS5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9zY3JvbGwtZGlyZWN0aW9uLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgU2Nyb2xsRGlyZWN0aW9uID0gLTEgfCAxIHwgMDtcclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW5nLW1vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9zZWxlY3RpbmctbW9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW5nTW9kZXMgfSBmcm9tIFwiLi4vZW51bXMvc2VsZWN0aW5nLW1vZGVzXCI7XHJcblxyXG4vKipcclxuICogTW9kZXMgZm9yIHNlbGVjdGluZyBsaXN0IGl0ZW1zLlxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2VudW1zL3NlbGVjdGluZy1tb2RlLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgU2VsZWN0aW5nTW9kZSA9IFNlbGVjdGluZ01vZGVzIHwgJ25vbmUnIHwgJ3NlbGVjdCcgfCAnbXVsdGktc2VsZWN0JztcclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcC10by1pdGVtLWFsaWduLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvc25hcC10by1pdGVtLWFsaWduLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTbmFwVG9JdGVtQWxpZ25zIH0gZnJvbSBcIi4uL2VudW1zL3NuYXAtdG8taXRlbS1hbGlnbnNcIjtcclxuXHJcbi8qKlxyXG4gKiBTbmFwVG9JdGVtQWxpZ24uXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvZW51bXMvc25hcC10by1pdGVtLWFsaWduLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgU25hcFRvSXRlbUFsaWduID0gU25hcFRvSXRlbUFsaWducyB8ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnO1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHBpbmctZGlzdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9zbmFwcGluZy1kaXN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIFNuYXBwaW5nRGlzdGFuY2VcclxuICogU25hcHBpbmcgYWN0aXZhdGlvbiBkaXN0YW5jZS4gQ2FuIGJlIHNwZWNpZmllZCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIGVsZW1lbnQgc2l6ZSBvciBpbiBhYnNvbHV0ZSB2YWx1ZXMuXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvc25hcHBpbmctZGlzdGFuY2UudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBTbmFwcGluZ0Rpc3RhbmNlID0gYCR7bnVtYmVyfSVgIHwgbnVtYmVyOyJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHBpbmctbWV0aG9kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdHlwZXMvc25hcHBpbmctbWV0aG9kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTbmFwcGluZ01ldGhvZHMgfSBmcm9tIFwiLi4vZW51bXMvc25hcHBpbmctbWV0aG9kc1wiO1xyXG5cclxuLyoqXHJcbiAqIFNuYXBwaW5nIG1ldGhvZC5cclxuICogJ3N0YW5kYXJ0JyAtIENsYXNzaWMgZ3JvdXAgdmlzdWFsaXphdGlvbi5cclxuICogJ2FkdmFuY2VkJyAtIEEgbWFzayBpcyBhcHBsaWVkIHRvIHRoZSB2aWV3cG9ydCBhcmVhIHNvIHRoYXQgdGhlIGJhY2tncm91bmQgaXMgZGlzcGxheWVkIHVuZGVybmVhdGggdGhlIGF0dGFjaGVkIGdyb3VwLlxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2VudW1zL3NuYXBwaW5nLW1ldGhvZC50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCB0eXBlIFNuYXBwaW5nTWV0aG9kID0gU25hcHBpbmdNZXRob2RzIHwgJ3N0YW5kYXJ0JyB8ICdhZHZhbmNlZCc7Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ByZWFkaW5nLW1vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy9zcHJlYWRpbmctbW9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3ByZWFkaW5nTW9kZXMgfSBmcm9tIFwiLi4vZW51bXNcIjtcclxuXHJcbi8qKlxyXG4gKiBTcHJlYWRpbmdNb2RlXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvZW51bXMvc3ByZWFkaW5nLW1vZGUudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBTcHJlYWRpbmdNb2RlID0gU3ByZWFkaW5nTW9kZXMgfCAnbm9ybWFsJyB8ICdpbmZpbml0eSc7XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1kaXJlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi90eXBlcy90ZXh0LWRpcmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dERpcmVjdGlvbnMgfSBmcm9tIFwiLi4vZW51bXMvdGV4dC1kaXJlY3Rpb25zXCI7XHJcblxyXG4vKipcclxuICogVGV4dERpcmVjdGlvbi5cclxuICogJ3J0bCcgLSByaWdodC10by1sZWZ0LlxyXG4gKiAnbHRyJyAtIGxlZnQtdG8tcmlnaHQuXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvZW51bXMvdGV4dC1kaXJlY3Rpb24udHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBUZXh0RGlyZWN0aW9uID0gVGV4dERpcmVjdGlvbnMgfCAncnRsJyB8ICdsdHInO1xyXG4iXX0=
@@ -1,14 +1,30 @@
1
+ import { ANIMATOR_MIN_TIMESTAMP, DEFAULT_ANIMATION_DURATION, DEFAULT_WITH_DELTA } from './const';
1
2
  import { easeLinear } from './ease';
2
- export const DEFAULT_ANIMATION_DURATION = 500, ANIMATOR_MIN_TIMESTAMP = 1000 / 30, MIN_ANIMATED_VALUE = 10;
3
+ /**
4
+ * Animator
5
+ * @link https://github.com/DjonnyX/data-channel-router/blob/main/library/src/utils/animator/animator.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
3
9
  export class Animator {
10
+ static _nextId = 0;
4
11
  _animationId = 0;
12
+ _currentId = Animator._nextId;
13
+ generateId() {
14
+ return Animator._nextId = Animator._nextId === Number.MAX_SAFE_INTEGER
15
+ ? 0 : Animator._nextId + 1;
16
+ }
5
17
  animate(params) {
6
- const { startValue, endValue, duration = DEFAULT_ANIMATION_DURATION, getPropValue, easingFunction = easeLinear, onUpdate, onComplete, } = params;
7
18
  this.stop();
19
+ const id = this.generateId();
20
+ this._currentId = id;
21
+ const { withDelta = DEFAULT_WITH_DELTA, startValue, endValue, duration = DEFAULT_ANIMATION_DURATION, getPropValue, easingFunction = easeLinear, onUpdate, onComplete, } = params;
8
22
  const startTime = performance.now();
9
- let isCanceled = false, prevPos = startValue, start = startValue, startPosDelta = 0, delta = 0, prevTime = startTime, diff = endValue - start;
10
- let isFinished = false;
23
+ let isCanceled = false, prevPos = startValue, start = startValue, startPosDelta = 0, delta = 0, prevTime = startTime, diff = endValue - start, isFinished = false;
11
24
  const step = (currentTime) => {
25
+ if (id !== this._currentId) {
26
+ isCanceled = true;
27
+ }
12
28
  if (!!isCanceled) {
13
29
  return;
14
30
  }
@@ -18,7 +34,7 @@ export class Animator {
18
34
  startDelta = cPos - prevPos;
19
35
  startPosDelta += startDelta;
20
36
  }
21
- const elapsed = currentTime - startTime, progress = start === endValue ? 1 : Math.min(duration > 0 ? elapsed / duration : 0, 1), easedProgress = easingFunction(progress), val = startPosDelta + start + diff * easedProgress, currentValue = val, t = Date.now();
37
+ const elapsed = currentTime - startTime, progress = start === endValue ? 1 : Math.min(duration > 0 ? elapsed / duration : 0, 1), easedProgress = easingFunction(progress), val = (withDelta ? startPosDelta : 0) + start + diff * easedProgress, currentValue = val, t = performance.now();
22
38
  isFinished = progress === 1;
23
39
  delta = currentValue - startDelta - prevPos;
24
40
  const ts = t - prevTime, timestamp = ts < ANIMATOR_MIN_TIMESTAMP ? ANIMATOR_MIN_TIMESTAMP : ts;
@@ -26,8 +42,10 @@ export class Animator {
26
42
  prevPos = currentValue;
27
43
  if (onUpdate !== undefined) {
28
44
  const data = {
45
+ id,
29
46
  delta,
30
- value: currentValue,
47
+ elapsed,
48
+ value: !withDelta && isFinished ? endValue : currentValue,
31
49
  timestamp,
32
50
  };
33
51
  onUpdate(data);
@@ -35,8 +53,10 @@ export class Animator {
35
53
  if (isFinished) {
36
54
  if (onComplete !== undefined) {
37
55
  const data = {
56
+ id,
38
57
  delta,
39
- value: currentValue,
58
+ elapsed,
59
+ value: withDelta ? currentValue : endValue,
40
60
  timestamp,
41
61
  };
42
62
  onComplete(data);
@@ -55,4 +75,4 @@ export class Animator {
55
75
  this.stop();
56
76
  }
57
77
  }
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9hbmltYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBa0JwQyxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxHQUFHLEVBQzNDLHNCQUFzQixHQUFHLElBQUksR0FBRyxFQUFFLEVBQ2xDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztBQUUxQixNQUFNLE9BQU8sUUFBUTtJQUNYLFlBQVksR0FBVyxDQUFDLENBQUM7SUFFakMsT0FBTyxDQUFDLE1BQXVCO1FBQzdCLE1BQU0sRUFDSixVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsR0FBRywwQkFBMEIsRUFBRSxZQUFZLEVBQUUsY0FBYyxHQUFHLFVBQVUsRUFBRSxRQUFRLEVBQUUsVUFBVSxHQUM3SCxHQUFHLE1BQU0sQ0FBQztRQUVYLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVaLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNwQyxJQUFJLFVBQVUsR0FBRyxLQUFLLEVBQUUsT0FBTyxHQUFHLFVBQVUsRUFBRSxLQUFLLEdBQUcsVUFBVSxFQUFFLGFBQWEsR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxRQUFRLEdBQUcsU0FBUyxFQUNsSCxJQUFJLEdBQUcsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFFdkIsTUFBTSxJQUFJLEdBQUcsQ0FBQyxXQUFtQixFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2pCLE9BQU87WUFDVCxDQUFDO1lBRUQsTUFBTSxJQUFJLEdBQUcsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkMsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixVQUFVLEdBQUcsSUFBSSxHQUFHLE9BQU8sQ0FBQztnQkFDNUIsYUFBYSxJQUFJLFVBQVUsQ0FBQztZQUM5QixDQUFDO1lBRUQsTUFBTSxPQUFPLEdBQUcsV0FBVyxHQUFHLFNBQVMsRUFDckMsUUFBUSxHQUFHLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3RGLGFBQWEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQ3hDLEdBQUcsR0FBRyxhQUFhLEdBQUcsS0FBSyxHQUFHLElBQUksR0FBRyxhQUFhLEVBQ2xELFlBQVksR0FBRyxHQUFHLEVBQ2xCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFFakIsVUFBVSxHQUFHLFFBQVEsS0FBSyxDQUFDLENBQUM7WUFFNUIsS0FBSyxHQUFHLFlBQVksR0FBRyxVQUFVLEdBQUcsT0FBTyxDQUFDO1lBRTVDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxRQUFRLEVBQUUsU0FBUyxHQUFHLEVBQUUsR0FBRyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUUvRixRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQ2IsT0FBTyxHQUFHLFlBQVksQ0FBQztZQUV2QixJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDM0IsTUFBTSxJQUFJLEdBQXdCO29CQUNoQyxLQUFLO29CQUNMLEtBQUssRUFBRSxZQUFZO29CQUNuQixTQUFTO2lCQUNWLENBQUM7Z0JBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pCLENBQUM7WUFFRCxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNmLElBQUksVUFBVSxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUM3QixNQUFNLElBQUksR0FBd0I7d0JBQ2hDLEtBQUs7d0JBQ0wsS0FBSyxFQUFFLFlBQVk7d0JBQ25CLFNBQVM7cUJBQ1YsQ0FBQztvQkFDRixVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ25CLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxDQUFDO1FBQ0gsQ0FBQyxDQUFBO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBSTtRQUNGLG9CQUFvQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVhc2luZyB9IGZyb20gJy4vdHlwZXMnO1xyXG5pbXBvcnQgeyBlYXNlTGluZWFyIH0gZnJvbSAnLi9lYXNlJztcclxuXHJcbmludGVyZmFjZSBJQW5pbWF0b3JQYXJhbXMge1xyXG4gIHN0YXJ0VmFsdWU6IG51bWJlcjtcclxuICBlbmRWYWx1ZTogbnVtYmVyO1xyXG4gIGR1cmF0aW9uPzogbnVtYmVyO1xyXG4gIGdldFByb3BWYWx1ZT86ICgpID0+IG51bWJlcjtcclxuICBlYXNpbmdGdW5jdGlvbj86IEVhc2luZztcclxuICBvblVwZGF0ZT86IChkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhKSA9PiB2b2lkO1xyXG4gIG9uQ29tcGxldGU/OiAoZGF0YTogSUFuaW1hdG9yVXBkYXRlRGF0YSkgPT4gdm9pZDtcclxufVxyXG5cclxuaW50ZXJmYWNlIElBbmltYXRvclVwZGF0ZURhdGEge1xyXG4gIHRpbWVzdGFtcDogbnVtYmVyO1xyXG4gIGRlbHRhOiBudW1iZXI7XHJcbiAgdmFsdWU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfQU5JTUFUSU9OX0RVUkFUSU9OID0gNTAwLFxyXG4gIEFOSU1BVE9SX01JTl9USU1FU1RBTVAgPSAxMDAwIC8gMzAsXHJcbiAgTUlOX0FOSU1BVEVEX1ZBTFVFID0gMTA7XHJcblxyXG5leHBvcnQgY2xhc3MgQW5pbWF0b3Ige1xyXG4gIHByaXZhdGUgX2FuaW1hdGlvbklkOiBudW1iZXIgPSAwO1xyXG5cclxuICBhbmltYXRlKHBhcmFtczogSUFuaW1hdG9yUGFyYW1zKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN0YXJ0VmFsdWUsIGVuZFZhbHVlLCBkdXJhdGlvbiA9IERFRkFVTFRfQU5JTUFUSU9OX0RVUkFUSU9OLCBnZXRQcm9wVmFsdWUsIGVhc2luZ0Z1bmN0aW9uID0gZWFzZUxpbmVhciwgb25VcGRhdGUsIG9uQ29tcGxldGUsXHJcbiAgICB9ID0gcGFyYW1zO1xyXG5cclxuICAgIHRoaXMuc3RvcCgpO1xyXG5cclxuICAgIGNvbnN0IHN0YXJ0VGltZSA9IHBlcmZvcm1hbmNlLm5vdygpO1xyXG4gICAgbGV0IGlzQ2FuY2VsZWQgPSBmYWxzZSwgcHJldlBvcyA9IHN0YXJ0VmFsdWUsIHN0YXJ0ID0gc3RhcnRWYWx1ZSwgc3RhcnRQb3NEZWx0YSA9IDAsIGRlbHRhID0gMCwgcHJldlRpbWUgPSBzdGFydFRpbWUsXHJcbiAgICAgIGRpZmYgPSBlbmRWYWx1ZSAtIHN0YXJ0O1xyXG5cclxuICAgIGxldCBpc0ZpbmlzaGVkID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3Qgc3RlcCA9IChjdXJyZW50VGltZTogbnVtYmVyKSA9PiB7XHJcbiAgICAgIGlmICghIWlzQ2FuY2VsZWQpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGNQb3MgPSBnZXRQcm9wVmFsdWU/LigpIHx8IDA7XHJcbiAgICAgIGxldCBzdGFydERlbHRhID0gMDtcclxuICAgICAgaWYgKGNQb3MgIT09IHByZXZQb3MpIHtcclxuICAgICAgICBzdGFydERlbHRhID0gY1BvcyAtIHByZXZQb3M7XHJcbiAgICAgICAgc3RhcnRQb3NEZWx0YSArPSBzdGFydERlbHRhO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBlbGFwc2VkID0gY3VycmVudFRpbWUgLSBzdGFydFRpbWUsXHJcbiAgICAgICAgcHJvZ3Jlc3MgPSBzdGFydCA9PT0gZW5kVmFsdWUgPyAxIDogTWF0aC5taW4oZHVyYXRpb24gPiAwID8gZWxhcHNlZCAvIGR1cmF0aW9uIDogMCwgMSksXHJcbiAgICAgICAgZWFzZWRQcm9ncmVzcyA9IGVhc2luZ0Z1bmN0aW9uKHByb2dyZXNzKSxcclxuICAgICAgICB2YWwgPSBzdGFydFBvc0RlbHRhICsgc3RhcnQgKyBkaWZmICogZWFzZWRQcm9ncmVzcyxcclxuICAgICAgICBjdXJyZW50VmFsdWUgPSB2YWwsXHJcbiAgICAgICAgdCA9IERhdGUubm93KCk7XHJcblxyXG4gICAgICBpc0ZpbmlzaGVkID0gcHJvZ3Jlc3MgPT09IDE7XHJcblxyXG4gICAgICBkZWx0YSA9IGN1cnJlbnRWYWx1ZSAtIHN0YXJ0RGVsdGEgLSBwcmV2UG9zO1xyXG5cclxuICAgICAgY29uc3QgdHMgPSB0IC0gcHJldlRpbWUsIHRpbWVzdGFtcCA9IHRzIDwgQU5JTUFUT1JfTUlOX1RJTUVTVEFNUCA/IEFOSU1BVE9SX01JTl9USU1FU1RBTVAgOiB0cztcclxuXHJcbiAgICAgIHByZXZUaW1lID0gdDtcclxuICAgICAgcHJldlBvcyA9IGN1cnJlbnRWYWx1ZTtcclxuXHJcbiAgICAgIGlmIChvblVwZGF0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgY29uc3QgZGF0YTogSUFuaW1hdG9yVXBkYXRlRGF0YSA9IHtcclxuICAgICAgICAgIGRlbHRhLFxyXG4gICAgICAgICAgdmFsdWU6IGN1cnJlbnRWYWx1ZSxcclxuICAgICAgICAgIHRpbWVzdGFtcCxcclxuICAgICAgICB9O1xyXG4gICAgICAgIG9uVXBkYXRlKGRhdGEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXNGaW5pc2hlZCkge1xyXG4gICAgICAgIGlmIChvbkNvbXBsZXRlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIGNvbnN0IGRhdGE6IElBbmltYXRvclVwZGF0ZURhdGEgPSB7XHJcbiAgICAgICAgICAgIGRlbHRhLFxyXG4gICAgICAgICAgICB2YWx1ZTogY3VycmVudFZhbHVlLFxyXG4gICAgICAgICAgICB0aW1lc3RhbXAsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgb25Db21wbGV0ZShkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5fYW5pbWF0aW9uSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3RlcCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9hbmltYXRpb25JZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTtcclxuICB9XHJcblxyXG4gIHN0b3AoKSB7XHJcbiAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLl9hbmltYXRpb25JZCk7XHJcbiAgfVxyXG5cclxuICBkaXNwb3NlKCkge1xyXG4gICAgdGhpcy5zdG9wKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9hbmltYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsMEJBQTBCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDakcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUdwQzs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxRQUFRO0lBQ1gsTUFBTSxDQUFDLE9BQU8sR0FBVyxDQUFDLENBQUM7SUFFM0IsWUFBWSxHQUFXLENBQUMsQ0FBQztJQUV6QixVQUFVLEdBQVcsUUFBUSxDQUFDLE9BQU8sQ0FBQztJQUV0QyxVQUFVO1FBQ2hCLE9BQU8sUUFBUSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxLQUFLLE1BQU0sQ0FBQyxnQkFBZ0I7WUFDcEUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxNQUF1QjtRQUM3QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFWixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFFckIsTUFBTSxFQUNKLFNBQVMsR0FBRyxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsR0FBRywwQkFBMEIsRUFDM0YsWUFBWSxFQUFFLGNBQWMsR0FBRyxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsR0FDaEUsR0FBRyxNQUFNLENBQUM7UUFFWCxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDcEMsSUFBSSxVQUFV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LENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUk7UUFDRixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQU5JTUFUT1JfTUlOX1RJTUVTVEFNUCwgREVGQVVMVF9BTklNQVRJT05fRFVSQVRJT04sIERFRkFVTFRfV0lUSF9ERUxUQSB9IGZyb20gJy4vY29uc3QnO1xyXG5pbXBvcnQgeyBlYXNlTGluZWFyIH0gZnJvbSAnLi9lYXNlJztcclxuaW1wb3J0IHsgSUFuaW1hdG9yUGFyYW1zLCBJQW5pbWF0b3JVcGRhdGVEYXRhIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcclxuXHJcbi8qKlxyXG4gKiBBbmltYXRvclxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9kYXRhLWNoYW5uZWwtcm91dGVyL2Jsb2IvbWFpbi9saWJyYXJ5L3NyYy91dGlscy9hbmltYXRvci9hbmltYXRvci50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjbGFzcyBBbmltYXRvciB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX25leHRJZDogbnVtYmVyID0gMDtcclxuXHJcbiAgcHJpdmF0ZSBfYW5pbWF0aW9uSWQ6IG51bWJlciA9IDA7XHJcblxyXG4gIHByaXZhdGUgX2N1cnJlbnRJZDogbnVtYmVyID0gQW5pbWF0b3IuX25leHRJZDtcclxuXHJcbiAgcHJpdmF0ZSBnZW5lcmF0ZUlkKCkge1xyXG4gICAgcmV0dXJuIEFuaW1hdG9yLl9uZXh0SWQgPSBBbmltYXRvci5fbmV4dElkID09PSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxyXG4gICAgICA/IDAgOiBBbmltYXRvci5fbmV4dElkICsgMTtcclxuICB9XHJcblxyXG4gIGFuaW1hdGUocGFyYW1zOiBJQW5pbWF0b3JQYXJhbXMpIHtcclxuICAgIHRoaXMuc3RvcCgpO1xyXG5cclxuICAgIGNvbnN0IGlkID0gdGhpcy5nZW5lcmF0ZUlkKCk7XHJcbiAgICB0aGlzLl9jdXJyZW50SWQgPSBpZDtcclxuXHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHdpdGhEZWx0YSA9IERFRkFVTFRfV0lUSF9ERUxUQSwgc3RhcnRWYWx1ZSwgZW5kVmFsdWUsIGR1cmF0aW9uID0gREVGQVVMVF9BTklNQVRJT05fRFVSQVRJT04sXHJcbiAgICAgIGdldFByb3BWYWx1ZSwgZWFzaW5nRnVuY3Rpb24gPSBlYXNlTGluZWFyLCBvblVwZGF0ZSwgb25Db21wbGV0ZSxcclxuICAgIH0gPSBwYXJhbXM7XHJcblxyXG4gICAgY29uc3Qgc3RhcnRUaW1lID0gcGVyZm9ybWFuY2Uubm93KCk7XHJcbiAgICBsZXQgaXNDYW5jZWxlZCA9IGZhbHNlLCBwcmV2UG9zID0gc3RhcnRWYWx1ZSwgc3RhcnQgPSBzdGFydFZhbHVlLCBzdGFydFBvc0RlbHRhID0gMCwgZGVsdGEgPSAwLCBwcmV2VGltZSA9IHN0YXJ0VGltZSxcclxuICAgICAgZGlmZiA9IGVuZFZhbHVlIC0gc3RhcnQsIGlzRmluaXNoZWQgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdCBzdGVwID0gKGN1cnJlbnRUaW1lOiBudW1iZXIpID0+IHtcclxuICAgICAgaWYgKGlkICE9PSB0aGlzLl9jdXJyZW50SWQpIHtcclxuICAgICAgICBpc0NhbmNlbGVkID0gdHJ1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEhaXNDYW5jZWxlZCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgY1BvcyA9IGdldFByb3BWYWx1ZT8uKCkgfHwgMDtcclxuICAgICAgbGV0IHN0YXJ0RGVsdGEgPSAwO1xyXG4gICAgICBpZiAoY1BvcyAhPT0gcHJldlBvcykge1xyXG4gICAgICAgIHN0YXJ0RGVsdGEgPSBjUG9zIC0gcHJldlBvcztcclxuICAgICAgICBzdGFydFBvc0RlbHRhICs9IHN0YXJ0RGVsdGE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGVsYXBzZWQgPSBjdXJyZW50VGltZSAtIHN0YXJ0VGltZSxcclxuICAgICAgICBwcm9ncmVzcyA9IHN0YXJ0ID09PSBlbmRWYWx1ZSA/IDEgOiBNYXRoLm1pbihkdXJhdGlvbiA+IDAgPyBlbGFwc2VkIC8gZHVyYXRpb24gOiAwLCAxKSxcclxuICAgICAgICBlYXNlZFByb2dyZXNzID0gZWFzaW5nRnVuY3Rpb24ocHJvZ3Jlc3MpLFxyXG4gICAgICAgIHZhbCA9ICh3aXRoRGVsdGEgPyBzdGFydFBvc0RlbHRhIDogMCkgKyBzdGFydCArIGRpZmYgKiBlYXNlZFByb2dyZXNzLFxyXG4gICAgICAgIGN1cnJlbnRWYWx1ZSA9IHZhbCxcclxuICAgICAgICB0ID0gcGVyZm9ybWFuY2Uubm93KCk7XHJcblxyXG4gICAgICBpc0ZpbmlzaGVkID0gcHJvZ3Jlc3MgPT09IDE7XHJcblxyXG4gICAgICBkZWx0YSA9IGN1cnJlbnRWYWx1ZSAtIHN0YXJ0RGVsdGEgLSBwcmV2UG9zO1xyXG5cclxuICAgICAgY29uc3QgdHMgPSB0IC0gcHJldlRpbWUsIHRpbWVzdGFtcCA9IHRzIDwgQU5JTUFUT1JfTUlOX1RJTUVTVEFNUCA/IEFOSU1BVE9SX01JTl9USU1FU1RBTVAgOiB0cztcclxuXHJcbiAgICAgIHByZXZUaW1lID0gdDtcclxuICAgICAgcHJldlBvcyA9IGN1cnJlbnRWYWx1ZTtcclxuXHJcbiAgICAgIGlmIChvblVwZGF0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgY29uc3QgZGF0YTogSUFuaW1hdG9yVXBkYXRlRGF0YSA9IHtcclxuICAgICAgICAgIGlkLFxyXG4gICAgICAgICAgZGVsdGEsXHJcbiAgICAgICAgICBlbGFwc2VkLFxyXG4gICAgICAgICAgdmFsdWU6ICF3aXRoRGVsdGEgJiYgaXNGaW5pc2hlZCA/IGVuZFZhbHVlIDogY3VycmVudFZhbHVlLFxyXG4gICAgICAgICAgdGltZXN0YW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgb25VcGRhdGUoZGF0YSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChpc0ZpbmlzaGVkKSB7XHJcbiAgICAgICAgaWYgKG9uQ29tcGxldGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgY29uc3QgZGF0YTogSUFuaW1hdG9yVXBkYXRlRGF0YSA9IHtcclxuICAgICAgICAgICAgaWQsXHJcbiAgICAgICAgICAgIGRlbHRhLFxyXG4gICAgICAgICAgICBlbGFwc2VkLFxyXG4gICAgICAgICAgICB2YWx1ZTogd2l0aERlbHRhID8gY3VycmVudFZhbHVlIDogZW5kVmFsdWUsXHJcbiAgICAgICAgICAgIHRpbWVzdGFtcCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBvbkNvbXBsZXRlKGRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLl9hbmltYXRpb25JZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX2FuaW1hdGlvbklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApO1xyXG4gIH1cclxuXHJcbiAgc3RvcCgpIHtcclxuICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX2FuaW1hdGlvbklkKTtcclxuICB9XHJcblxyXG4gIGRpc3Bvc2UoKSB7XHJcbiAgICB0aGlzLnN0b3AoKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export const DEFAULT_WITH_DELTA = false, DEFAULT_ANIMATION_DURATION = 500, ANIMATOR_MIN_TIMESTAMP = 1000 / 30, MIN_ANIMATED_VALUE = 10;
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9jb25zdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLEVBQ25DLDBCQUEwQixHQUFHLEdBQUcsRUFDaEMsc0JBQXNCLEdBQUcsSUFBSSxHQUFHLEVBQUUsRUFDbEMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IERFRkFVTFRfV0lUSF9ERUxUQSA9IGZhbHNlLFxyXG4gICAgREVGQVVMVF9BTklNQVRJT05fRFVSQVRJT04gPSA1MDAsXHJcbiAgICBBTklNQVRPUl9NSU5fVElNRVNUQU1QID0gMTAwMCAvIDMwLFxyXG4gICAgTUlOX0FOSU1BVEVEX1ZBTFVFID0gMTA7XHJcbiJdfQ==
@@ -1,4 +1,5 @@
1
- import { Animator, ANIMATOR_MIN_TIMESTAMP } from "./animator";
1
+ import { Animator } from "./animator";
2
+ import { ANIMATOR_MIN_TIMESTAMP } from './const';
2
3
  import { easeLinear, easeOutQuad } from './ease';
3
4
  export { Animator, easeLinear, easeOutQuad, ANIMATOR_MIN_TIMESTAMP, };
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR2pELE9BQU8sRUFDSCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFdBQVcsRUFDWCxzQkFBc0IsR0FDekIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuaW1hdG9yLCBBTklNQVRPUl9NSU5fVElNRVNUQU1QIH0gZnJvbSBcIi4vYW5pbWF0b3JcIjtcclxuaW1wb3J0IHsgZWFzZUxpbmVhciwgZWFzZU91dFF1YWQgfSBmcm9tICcuL2Vhc2UnO1xyXG5pbXBvcnQgeyBFYXNpbmcgfSBmcm9tICcuL3R5cGVzJztcclxuXHJcbmV4cG9ydCB7XHJcbiAgICBBbmltYXRvcixcclxuICAgIGVhc2VMaW5lYXIsXHJcbiAgICBlYXNlT3V0UXVhZCxcclxuICAgIEFOSU1BVE9SX01JTl9USU1FU1RBTVAsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIHtcclxuICAgIEVhc2luZyxcclxufVxyXG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUdqRCxPQUFPLEVBQ0gsUUFBUSxFQUNSLFVBQVUsRUFDVixXQUFXLEVBQ1gsc0JBQXNCLEdBQ3pCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRvciB9IGZyb20gXCIuL2FuaW1hdG9yXCI7XHJcbmltcG9ydCB7IEFOSU1BVE9SX01JTl9USU1FU1RBTVAgfSBmcm9tICcuL2NvbnN0JztcclxuaW1wb3J0IHsgZWFzZUxpbmVhciwgZWFzZU91dFF1YWQgfSBmcm9tICcuL2Vhc2UnO1xyXG5pbXBvcnQgeyBFYXNpbmcgfSBmcm9tICcuL3R5cGVzJztcclxuXHJcbmV4cG9ydCB7XHJcbiAgICBBbmltYXRvcixcclxuICAgIGVhc2VMaW5lYXIsXHJcbiAgICBlYXNlT3V0UXVhZCxcclxuICAgIEFOSU1BVE9SX01JTl9USU1FU1RBTVAsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIHtcclxuICAgIEVhc2luZyxcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3ItcGFyYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdXRpbHMvYW5pbWF0b3IvaW50ZXJmYWNlcy9hbmltYXRvci1wYXJhbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVhc2luZyB9IGZyb20gXCIuLi90eXBlc1wiO1xyXG5pbXBvcnQgeyBJQW5pbWF0b3JVcGRhdGVEYXRhIH0gZnJvbSBcIi4vYW5pbWF0b3ItdXBkYXRlLWRhdGFcIjtcclxuXHJcbi8qKlxyXG4gKiBJQW5pbWF0b3JQYXJhbXNcclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvZGF0YS1jaGFubmVsLXJvdXRlci9ibG9iL21haW4vbGlicmFyeS9zcmMvdXRpbHMvYW5pbWF0b3IvaW50ZXJmYWNlcy9hbmltYXRvci1wYXJhbXMudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIElBbmltYXRvclBhcmFtcyB7XHJcbiAgICBzdGFydFZhbHVlOiBudW1iZXI7XHJcbiAgICBlbmRWYWx1ZTogbnVtYmVyO1xyXG4gICAgZHVyYXRpb24/OiBudW1iZXI7XHJcbiAgICB3aXRoRGVsdGE/OiBib29sZWFuO1xyXG4gICAgZ2V0UHJvcFZhbHVlPzogKCkgPT4gbnVtYmVyO1xyXG4gICAgZWFzaW5nRnVuY3Rpb24/OiBFYXNpbmc7XHJcbiAgICBvblVwZGF0ZT86IChkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhKSA9PiB2b2lkO1xyXG4gICAgb25Db21wbGV0ZT86IChkYXRhOiBJQW5pbWF0b3JVcGRhdGVEYXRhKSA9PiB2b2lkO1xyXG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0b3ItdXBkYXRlLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9pbnRlcmZhY2VzL2FuaW1hdG9yLXVwZGF0ZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogSUFuaW1hdG9yVXBkYXRlRGF0YVxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9kYXRhLWNoYW5uZWwtcm91dGVyL2Jsb2IvbWFpbi9saWJyYXJ5L3NyYy91dGlscy9hbmltYXRvci9pbnRlcmZhY2VzL2FuaW1hdG9yLXVwZGF0ZS1kYXRhLnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBBbGV4YW5kcm92aWNoIEdyZWJlbm5pa292XHJcbiAqIEBlbWFpbCBkam9ubnl4QGdtYWlsLmNvbVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJQW5pbWF0b3JVcGRhdGVEYXRhIHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICB0aW1lc3RhbXA6IG51bWJlcjtcclxuICAgIGVsYXBzZWQ6IG51bWJlcjtcclxuICAgIGRlbHRhOiBudW1iZXI7XHJcbiAgICB2YWx1ZTogbnVtYmVyO1xyXG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9hbmltYXRvci9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQW5pbWF0b3JQYXJhbXMgfSBmcm9tICcuL2FuaW1hdG9yLXBhcmFtcyc7XHJcbmltcG9ydCB7IElBbmltYXRvclVwZGF0ZURhdGEgfSBmcm9tICcuL2FuaW1hdG9yLXVwZGF0ZS1kYXRhJztcclxuXHJcbmV4cG9ydCB0eXBlIHtcclxuICAgIElBbmltYXRvclBhcmFtcyxcclxuICAgIElBbmltYXRvclVwZGF0ZURhdGEsXHJcbn0iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFzaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdXRpbHMvYW5pbWF0b3IvdHlwZXMvZWFzaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBFYXNpbmcgPSAodjogbnVtYmVyKSA9PiBudW1iZXI7XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFzaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdXRpbHMvYW5pbWF0b3IvdHlwZXMvZWFzaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogRWFzaW5nXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL2RhdGEtY2hhbm5lbC1yb3V0ZXIvYmxvYi9tYWluL2xpYnJhcnkvc3JjL3V0aWxzL2FuaW1hdG9yL3R5cGVzL2Vhc2luZy50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCB0eXBlIEVhc2luZyA9ICh2OiBudW1iZXIpID0+IG51bWJlcjtcclxuIl19
@@ -0,0 +1,27 @@
1
+ import { Component } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Base disposable component
6
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/utils/disposable-component.ts
7
+ * @author Evgenii Grebennikov
8
+ * @email djonnyx@gmail.com
9
+ */
10
+ export class DisposableComponent {
11
+ _$unsubscribe = new Subject();
12
+ ngOnDestroy() {
13
+ if (this._$unsubscribe) {
14
+ this._$unsubscribe.next();
15
+ this._$unsubscribe.complete();
16
+ }
17
+ }
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DisposableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DisposableComponent, selector: "ng-component", ngImport: i0, template: ``, isInline: true });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DisposableComponent, decorators: [{
22
+ type: Component,
23
+ args: [{
24
+ template: ``,
25
+ }]
26
+ }] });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcG9zYWJsZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi91dGlscy9kaXNwb3NhYmxlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRS9COzs7OztHQUtHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQUNsQixhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUU5QyxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDTCxDQUFDO3dHQVJRLG1CQUFtQjs0RkFBbkIsbUJBQW1CLG9EQUZsQixFQUFFOzs0RkFFSCxtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLEVBQUU7aUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKipcclxuICogQmFzZSBkaXNwb3NhYmxlIGNvbXBvbmVudFxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3V0aWxzL2Rpc3Bvc2FibGUtY29tcG9uZW50LnRzXHJcbiAqIEBhdXRob3IgRXZnZW5paSBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgdGVtcGxhdGU6IGBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBwcm90ZWN0ZWQgXyR1bnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuXyR1bnN1YnNjcmliZSkge1xyXG4gICAgICAgICAgICB0aGlzLl8kdW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgICAgICB0aGlzLl8kdW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iXX0=
@@ -102,4 +102,4 @@ export class EventEmitter {
102
102
  this.removeAllListeners();
103
103
  }
104
104
  }
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZW1pdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3V0aWxzL2V2ZW50LWVtaXR0ZXIvZXZlbnQtZW1pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBQ1gsVUFBVSxHQUVoQixFQUFFLENBQUM7SUFFRyxTQUFTLEdBQVksS0FBSyxDQUFDO0lBRXJDLGdCQUFnQixDQUFDO0lBRWpCOztPQUVHO0lBQ0gsUUFBUSxDQUFDLEtBQVEsRUFBRSxHQUFHLElBQWdCO1FBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQztRQUNqQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQWUsQ0FBQyxDQUFDO1FBQ25ELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDL0MsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM5QixJQUFJLFFBQVEsRUFBRSxDQUFDO29CQUNYLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QixDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhLENBQUMsS0FBUSxFQUFFLEdBQUcsSUFBZ0I7UUFDdkMsY0FBYyxDQUFDLEdBQUcsRUFBRTtZQUNoQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDakIsT0FBTztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtB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O0lBQ0gsT0FBTztRQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXRCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRFdmVudEhhbmRsZXIgPSAoLi4uYXJnczogQXJyYXk8YW55PikgPT4gdm9pZDtcclxuXHJcbi8qKlxyXG4gKiBFdmVudCBlbWl0dGVyXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL2RhdGEtY2hhbm5lbC1yb3V0ZXIvYmxvYi9tYWluL2xpYnJhcnkvc3JjL3V0aWxzL2V2ZW50LWVtaXR0ZXIvZXZlbnQtZW1pdHRlci50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjbGFzcyBFdmVudEVtaXR0ZXI8RSA9IHN0cmluZywgSCA9IFRFdmVudEhhbmRsZXI+IHtcclxuICAgIHByb3RlY3RlZCBfbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgW2V2ZW50TmFtZTogc3RyaW5nXTogQXJyYXk8VEV2ZW50SGFuZGxlcj4sXHJcbiAgICB9ID0ge307XHJcblxyXG4gICAgcHJvdGVjdGVkIF9kaXNwb3NlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbWl0cyB0aGUgZXZlbnRcclxuICAgICAqL1xyXG4gICAgZGlzcGF0Y2goZXZlbnQ6IEUsIC4uLmFyZ3M6IEFycmF5PGFueT4pOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBjdHggPSB0aGlzO1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IHRoaXMuX2xpc3RlbmVyc1tldmVudCBhcyBzdHJpbmddO1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGxpc3RlbmVycykpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDAsIGwgPSBsaXN0ZW5lcnMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBsaXN0ZW5lciA9IGxpc3RlbmVyc1tpXTtcclxuICAgICAgICAgICAgICAgIGlmIChsaXN0ZW5lcikge1xyXG4gICAgICAgICAgICAgICAgICAgIGxpc3RlbmVyLmFwcGx5KGN0eCwgYXJncyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbWl0cyB0aGUgZXZlbnQgYXN5bmNcclxuICAgICAqL1xyXG4gICAgZGlzcGF0Y2hBc3luYyhldmVudDogRSwgLi4uYXJnczogQXJyYXk8YW55Pik6IHZvaWQge1xyXG4gICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX2Rpc3Bvc2VkKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5kaXNwYXRjaChldmVudCwgLi4uYXJncyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgdGhlIGV2ZW50IGxpc3RlbmVyIGlzIGFscmVhZHkgc3Vic2NyaWJlZC5cclxuICAgICAqL1xyXG4gICAgaGFzRXZlbnRMaXN0ZW5lcihldmVudE5hbWU6IEUsIGhhbmRsZXI6IEgpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCBldmVudCA9IGV2ZW50TmFtZSBhcyBzdHJpbmc7XHJcbiAgICAgICAgaWYgKHRoaXMuX2xpc3RlbmVyc1tldmVudF0gIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICBjb25zdCBsaXN0ZW5lcnMgPSB0aGlzLl9saXN0ZW5lcnNbZXZlbnRdO1xyXG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IGxpc3RlbmVycy5maW5kSW5kZXgodiA9PiB2ID09PSBoYW5kbGVyKTtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRkIGV2ZW50IGxpc3RlbmVyXHJcbiAgICAgKi9cclxuICAgIGFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lOiBFLCBoYW5kbGVyOiBIKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZXZlbnQgPSBldmVudE5hbWUgYXMgc3RyaW5nO1xyXG4gICAgICAgIGlmICghdGhpcy5fbGlzdGVuZXJzLmhhc093blByb3BlcnR5KGV2ZW50KSkge1xyXG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5lcnNbZXZlbnRdID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2xpc3RlbmVyc1tldmVudF0ucHVzaChoYW5kbGVyIGFzIFRFdmVudEhhbmRsZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVtb3ZlIGV2ZW50IGxpc3RlbmVyXHJcbiAgICAgKi9cclxuICAgIHJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lOiBFLCBoYW5kbGVyOiBIKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZXZlbnQgPSBldmVudE5hbWUgYXMgc3RyaW5nO1xyXG4gICAgICAgIGlmICghdGhpcy5fbGlzdGVuZXJzLmhhc093blByb3BlcnR5KGV2ZW50KSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IHRoaXMuX2xpc3RlbmVyc1tldmVudF0sIGluZGV4ID0gbGlzdGVuZXJzLmZpbmRJbmRleCh2ID0+IHYgPT09IGhhbmRsZXIpO1xyXG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICAgIGxpc3RlbmVycy5zcGxpY2UoaW5kZXgsIDEpO1xyXG5cclxuICAgICAgICAgICAgaWYgKGxpc3RlbmVycy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9saXN0ZW5lcnNbZXZlbnRdO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVtb3ZlIGFsbCBsaXN0ZW5lcnNcclxuICAgICAqL1xyXG4gICAgcmVtb3ZlQWxsTGlzdGVuZXJzKCkge1xyXG4gICAgICAgIGNvbnN0IGV2ZW50cyA9IE9iamVjdC5rZXlzKHRoaXMuX2xpc3RlbmVycyk7XHJcbiAgICAgICAgd2hpbGUgKGV2ZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGV2ZW50ID0gZXZlbnRzLnBvcCgpO1xyXG4gICAgICAgICAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IHRoaXMuX2xpc3RlbmVyc1tldmVudF07XHJcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShsaXN0ZW5lcnMpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGxpc3RlbmVycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVyID0gbGlzdGVuZXJzLnBvcCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudCBhcyBFLCBsaXN0ZW5lciBhcyBIKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCBvZiBkZXN0cm95aW5nIGhhbmRsZXJzXHJcbiAgICAgKi9cclxuICAgIGRpc3Bvc2UoKSB7XHJcbiAgICAgICAgdGhpcy5fZGlzcG9zZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLnJlbW92ZUFsbExpc3RlbmVycygpO1xyXG4gICAgfVxyXG59Il19
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZW1pdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL3V0aWxzL2V2ZW50LWVtaXR0ZXIvZXZlbnQtZW1pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBQ1gsVUFBVSxHQUVoQixFQUFFLENBQUM7SUFFRyxTQUFTLEdBQVksS0FBSyxDQUFDO0lBRXJDLGdCQUFnQixDQUFDO0lBRWpCOztPQUVHO0lBQ0gsUUFBUSxDQUFDLEtBQVEsRUFBRSxHQUFHLElBQWdCO1FBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQztRQUNqQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQTBCLENBQUMsQ0FBQztRQUM5RCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUMzQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQy9DLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDOUIsSUFBSSxRQUFRLEVBQUUsQ0FBQztvQkFDWCxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDOUIsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYSxDQUFDLEtBQVEsRUFBRSxHQUFHLElBQWdCO1FBQ3ZDLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2pCLE9BQU87WUFDWCxDQUFDO1lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLFNBQVksRUFBRSxPQUFVO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLFNBQThCLENBQUM7UUFDN0MsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBTSxPQUFlLENBQUMsQ0FBQztZQUMvRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNiLE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUE7SUFDaEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsU0FBWSxFQUFFLE9BQVU7UUFDckMsTUFBTSxLQUFLLEdBQUcsU0FBOEIsQ0FBQztRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBbUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7T0FFRztJQUNILG1CQUFtQixDQUFDLFNBQVksRUFBRSxPQUFVO1FBQ3hDLE1BQU0sS0FBSyxHQUFHLFNBQThCLENBQUM7UUFDN0MsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekMsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQWMsQ0FBQyxDQUFDO1FBQ2pHLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDYixTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUUzQixJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQjtRQUNkLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN2QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDM0IsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDUixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztvQkFDM0IsT0FBTyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUMxQixNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7d0JBQ2pDLElBQUksUUFBUSxFQUFFLENBQUM7NEJBQ1gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQXFCLEVBQUUsUUFBd0IsQ0FBQyxDQUFDO3dCQUM5RSxDQUFDO29CQUNMLENBQUM7Z0JBQ0wsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXRCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRFdmVudEhhbmRsZXIgPSAoLi4uYXJnczogQXJyYXk8YW55PikgPT4gdm9pZDtcclxuXHJcbi8qKlxyXG4gKiBFdmVudCBlbWl0dGVyXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL2RhdGEtY2hhbm5lbC1yb3V0ZXIvYmxvYi9tYWluL2xpYnJhcnkvc3JjL3V0aWxzL2V2ZW50LWVtaXR0ZXIvZXZlbnQtZW1pdHRlci50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBjbGFzcyBFdmVudEVtaXR0ZXI8RSA9IHN0cmluZywgSCA9IFRFdmVudEhhbmRsZXI+IHtcclxuICAgIHByb3RlY3RlZCBfbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgW2V2ZW50TmFtZTogc3RyaW5nXTogQXJyYXk8VEV2ZW50SGFuZGxlcj4sXHJcbiAgICB9ID0ge307XHJcblxyXG4gICAgcHJvdGVjdGVkIF9kaXNwb3NlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbWl0cyB0aGUgZXZlbnRcclxuICAgICAqL1xyXG4gICAgZGlzcGF0Y2goZXZlbnQ6IEUsIC4uLmFyZ3M6IEFycmF5PGFueT4pOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBjdHggPSB0aGlzO1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVycyA9IHRoaXMuX2xpc3RlbmVyc1tldmVudCBhcyB1bmtub3duIGFzIHN0cmluZ107XHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobGlzdGVuZXJzKSkge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgbCA9IGxpc3RlbmVycy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGxpc3RlbmVyID0gbGlzdGVuZXJzW2ldO1xyXG4gICAgICAgICAgICAgICAgaWYgKGxpc3RlbmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGlzdGVuZXIuYXBwbHkoY3R4LCBhcmdzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEVtaXRzIHRoZSBldmVudCBhc3luY1xyXG4gICAgICovXHJcbiAgICBkaXNwYXRjaEFzeW5jKGV2ZW50OiBFLCAuLi5hcmdzOiBBcnJheTxhbnk+KTogdm9pZCB7XHJcbiAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fZGlzcG9zZWQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmRpc3BhdGNoKGV2ZW50LCAuLi5hcmdzKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgZXZlbnQgbGlzdGVuZXIgaXMgYWxyZWFkeSBzdWJzY3JpYmVkLlxyXG4gICAgICovXHJcbiAgICBoYXNFdmVudExpc3RlbmVyKGV2ZW50TmFtZTogRSwgaGFuZGxlcjogSCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGV2ZW50ID0gZXZlbnROYW1lIGFzIHVua25vd24gYXMgc3RyaW5nO1xyXG4gICAgICAgIGlmICh0aGlzLl9saXN0ZW5lcnNbZXZlbnRdICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgY29uc3QgbGlzdGVuZXJzID0gdGhpcy5fbGlzdGVuZXJzW2V2ZW50XTtcclxuICAgICAgICAgICAgY29uc3QgaW5kZXggPSBsaXN0ZW5lcnMuZmluZEluZGV4KHYgPT4gdiA9PT0gKGhhbmRsZXIgYXMgYW55KSk7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEFkZCBldmVudCBsaXN0ZW5lclxyXG4gICAgICovXHJcbiAgICBhZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZTogRSwgaGFuZGxlcjogSCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGV2ZW50ID0gZXZlbnROYW1lIGFzIHVua25vd24gYXMgc3RyaW5nO1xyXG4gICAgICAgIGlmICghdGhpcy5fbGlzdGVuZXJzLmhhc093blByb3BlcnR5KGV2ZW50KSkge1xyXG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5lcnNbZXZlbnRdID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2xpc3RlbmVyc1tldmVudF0ucHVzaChoYW5kbGVyIGFzIHVua25vd24gYXMgVEV2ZW50SGFuZGxlcik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgZXZlbnQgbGlzdGVuZXJcclxuICAgICAqL1xyXG4gICAgcmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWU6IEUsIGhhbmRsZXI6IEgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBldmVudCA9IGV2ZW50TmFtZSBhcyB1bmtub3duIGFzIHN0cmluZztcclxuICAgICAgICBpZiAoIXRoaXMuX2xpc3RlbmVycy5oYXNPd25Qcm9wZXJ0eShldmVudCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsaXN0ZW5lcnMgPSB0aGlzLl9saXN0ZW5lcnNbZXZlbnRdLCBpbmRleCA9IGxpc3RlbmVycy5maW5kSW5kZXgodiA9PiB2ID09PSBoYW5kbGVyIGFzIGFueSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcclxuICAgICAgICAgICAgbGlzdGVuZXJzLnNwbGljZShpbmRleCwgMSk7XHJcblxyXG4gICAgICAgICAgICBpZiAobGlzdGVuZXJzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2xpc3RlbmVyc1tldmVudF07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgYWxsIGxpc3RlbmVyc1xyXG4gICAgICovXHJcbiAgICByZW1vdmVBbGxMaXN0ZW5lcnMoKSB7XHJcbiAgICAgICAgY29uc3QgZXZlbnRzID0gT2JqZWN0LmtleXModGhpcy5fbGlzdGVuZXJzKTtcclxuICAgICAgICB3aGlsZSAoZXZlbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc3QgZXZlbnQgPSBldmVudHMucG9wKCk7XHJcbiAgICAgICAgICAgIGlmIChldmVudCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbGlzdGVuZXJzID0gdGhpcy5fbGlzdGVuZXJzW2V2ZW50XTtcclxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGxpc3RlbmVycykpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aGlsZSAobGlzdGVuZXJzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlzdGVuZXIgPSBsaXN0ZW5lcnMucG9wKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaXN0ZW5lcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50IGFzIHVua25vd24gYXMgRSwgbGlzdGVuZXIgYXMgdW5rbm93biBhcyBIKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCBvZiBkZXN0cm95aW5nIGhhbmRsZXJzXHJcbiAgICAgKi9cclxuICAgIGRpc3Bvc2UoKSB7XHJcbiAgICAgICAgdGhpcy5fZGlzcG9zZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLnJlbW92ZUFsbExpc3RlbmVycygpO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,12 @@
1
+ import { EMPTY_SCROLL_STATE_VERSION } from "../const";
2
+ export const getScrollStateVersion = (totalSize, scrollSize) => {
3
+ if (totalSize === -1) {
4
+ return EMPTY_SCROLL_STATE_VERSION;
5
+ }
6
+ let scrollStateUpdateIndex = 0;
7
+ if (totalSize < scrollSize) {
8
+ scrollStateUpdateIndex = scrollStateUpdateIndex === Number.MAX_SAFE_INTEGER ? 0 : scrollStateUpdateIndex + 1;
9
+ }
10
+ return `${scrollStateUpdateIndex}_${totalSize}_${scrollSize}`;
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNjcm9sbC1zdGF0ZS12ZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvdXRpbHMvZ2V0LXNjcm9sbC1zdGF0ZS12ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV0RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFNBQWlCLEVBQUUsVUFBa0IsRUFBVSxFQUFFO0lBQ25GLElBQUksU0FBUyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkIsT0FBTywwQkFBMEIsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsSUFBSSxzQkFBc0IsR0FBRyxDQUFDLENBQUM7SUFDL0IsSUFBSSxTQUFTLEdBQUcsVUFBVSxFQUFFLENBQUM7UUFDekIsc0JBQXNCLEdBQUcsc0JBQXNCLEtBQUssTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixHQUFHLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBQ0QsT0FBTyxHQUFHLHNCQUFzQixJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztBQUNsRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTVBUWV9TQ1JPTExfU1RBVEVfVkVSU0lPTiB9IGZyb20gXCIuLi9jb25zdFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IGdldFNjcm9sbFN0YXRlVmVyc2lvbiA9ICh0b3RhbFNpemU6IG51bWJlciwgc2Nyb2xsU2l6ZTogbnVtYmVyKTogc3RyaW5nID0+IHtcclxuICAgIGlmICh0b3RhbFNpemUgPT09IC0xKSB7XHJcbiAgICAgICAgcmV0dXJuIEVNUFRZX1NDUk9MTF9TVEFURV9WRVJTSU9OO1xyXG4gICAgfVxyXG4gICAgbGV0IHNjcm9sbFN0YXRlVXBkYXRlSW5kZXggPSAwO1xyXG4gICAgaWYgKHRvdGFsU2l6ZSA8IHNjcm9sbFNpemUpIHtcclxuICAgICAgICBzY3JvbGxTdGF0ZVVwZGF0ZUluZGV4ID0gc2Nyb2xsU3RhdGVVcGRhdGVJbmRleCA9PT0gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIgPyAwIDogc2Nyb2xsU3RhdGVVcGRhdGVJbmRleCArIDE7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYCR7c2Nyb2xsU3RhdGVVcGRhdGVJbmRleH1fJHt0b3RhbFNpemV9XyR7c2Nyb2xsU2l6ZX1gO1xyXG59O1xyXG4iXX0=