vevet 3.20.0 → 4.0.0-beta.1

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 (710) hide show
  1. package/README.md +81 -18
  2. package/lib/cjs/{Application → Vevet}/events/createOnPageLoad/index.js +7 -7
  3. package/lib/cjs/Vevet/events/createOnPageLoad/index.js.map +1 -0
  4. package/lib/cjs/Vevet/events/createOnPageLoad/types.js.map +1 -0
  5. package/lib/cjs/{Application → Vevet}/events/createViewport/index.js +19 -25
  6. package/lib/cjs/Vevet/events/createViewport/index.js.map +1 -0
  7. package/lib/cjs/Vevet/events/createViewport/types.js.map +1 -0
  8. package/lib/cjs/Vevet/exported.js +3 -0
  9. package/lib/cjs/Vevet/exported.js.map +1 -0
  10. package/lib/cjs/Vevet/global.js +3 -0
  11. package/lib/cjs/Vevet/global.js.map +1 -0
  12. package/lib/cjs/Vevet/index.js +94 -0
  13. package/lib/cjs/Vevet/index.js.map +1 -0
  14. package/lib/cjs/{Application → Vevet}/types.js.map +1 -1
  15. package/lib/cjs/{utils/internal → Vevet/utils}/fetchWebpSupport.js +1 -1
  16. package/lib/cjs/Vevet/utils/fetchWebpSupport.js.map +1 -0
  17. package/lib/cjs/Vevet/utils/getDeviceInfo.js.map +1 -0
  18. package/lib/cjs/base/Callbacks/index.js +65 -48
  19. package/lib/cjs/base/Callbacks/index.js.map +1 -1
  20. package/lib/cjs/base/Component/index.js +15 -4
  21. package/lib/cjs/base/Component/index.js.map +1 -1
  22. package/lib/cjs/base/Module/index.js +118 -64
  23. package/lib/cjs/base/Module/index.js.map +1 -1
  24. package/lib/cjs/base/MutableProps/index.js +30 -55
  25. package/lib/cjs/base/MutableProps/index.js.map +1 -1
  26. package/lib/cjs/base/Plugin/index.js +20 -1
  27. package/lib/cjs/base/Plugin/index.js.map +1 -1
  28. package/lib/cjs/components/AnimationFrame/index.js +14 -21
  29. package/lib/cjs/components/AnimationFrame/index.js.map +1 -1
  30. package/lib/cjs/components/Ctx2D/index.js +40 -25
  31. package/lib/cjs/components/Ctx2D/index.js.map +1 -1
  32. package/lib/cjs/components/Ctx2DPrerender/index.js +17 -7
  33. package/lib/cjs/components/Ctx2DPrerender/index.js.map +1 -1
  34. package/lib/cjs/components/CustomCursor/index.js +75 -51
  35. package/lib/cjs/components/CustomCursor/index.js.map +1 -1
  36. package/lib/cjs/components/{SmoothScroll → CustomScroll}/AnimatonFrame.js +2 -2
  37. package/lib/cjs/components/{SmoothScroll → CustomScroll}/AnimatonFrame.js.map +1 -1
  38. package/lib/cjs/components/{SmoothScroll → CustomScroll}/Elements.js +9 -9
  39. package/lib/cjs/components/{SmoothScroll → CustomScroll}/Elements.js.map +1 -1
  40. package/lib/cjs/components/{SmoothScroll → CustomScroll}/index.js +68 -62
  41. package/lib/cjs/components/CustomScroll/index.js.map +1 -0
  42. package/lib/cjs/components/CustomScroll/types.js.map +1 -0
  43. package/lib/cjs/components/{SmoothScrollDragPlugin → CustomScrollDragPlugin}/index.js +45 -44
  44. package/lib/cjs/components/CustomScrollDragPlugin/index.js.map +1 -0
  45. package/lib/cjs/components/CustomScrollDragPlugin/types.js.map +1 -0
  46. package/lib/cjs/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/index.js +51 -47
  47. package/lib/cjs/components/CustomScrollKeyboardPlugin/index.js.map +1 -0
  48. package/lib/cjs/components/CustomScrollKeyboardPlugin/types.js.map +1 -0
  49. package/lib/cjs/components/DraggerBase/index.js +74 -26
  50. package/lib/cjs/components/DraggerBase/index.js.map +1 -1
  51. package/lib/cjs/components/DraggerDirection/index.js +12 -6
  52. package/lib/cjs/components/DraggerDirection/index.js.map +1 -1
  53. package/lib/cjs/components/DraggerMove/index.js +44 -13
  54. package/lib/cjs/components/DraggerMove/index.js.map +1 -1
  55. package/lib/cjs/components/Marquee/index.js +240 -160
  56. package/lib/cjs/components/Marquee/index.js.map +1 -1
  57. package/lib/cjs/components/Preloader/index.js +45 -16
  58. package/lib/cjs/components/Preloader/index.js.map +1 -1
  59. package/lib/cjs/components/ProgressPreloader/index.js +79 -41
  60. package/lib/cjs/components/ProgressPreloader/index.js.map +1 -1
  61. package/lib/cjs/components/ProgressPreloader/utils/preloadCustomElement.js +12 -1
  62. package/lib/cjs/components/ProgressPreloader/utils/preloadCustomElement.js.map +1 -1
  63. package/lib/cjs/components/ScrollBar/Bar/index.js +90 -36
  64. package/lib/cjs/components/ScrollBar/Bar/index.js.map +1 -1
  65. package/lib/cjs/components/ScrollBar/index.js +66 -35
  66. package/lib/cjs/components/ScrollBar/index.js.map +1 -1
  67. package/lib/cjs/components/ScrollView/index.js +56 -20
  68. package/lib/cjs/components/ScrollView/index.js.map +1 -1
  69. package/lib/cjs/components/SectionScrollProgress/index.js +68 -31
  70. package/lib/cjs/components/SectionScrollProgress/index.js.map +1 -1
  71. package/lib/cjs/components/SlideProgress/index.js +72 -38
  72. package/lib/cjs/components/SlideProgress/index.js.map +1 -1
  73. package/lib/cjs/components/SplitText/index.js +52 -23
  74. package/lib/cjs/components/SplitText/index.js.map +1 -1
  75. package/lib/cjs/components/SplitText/utils/splitBase.js +6 -1
  76. package/lib/cjs/components/SplitText/utils/splitBase.js.map +1 -1
  77. package/lib/cjs/components/SplitText/utils/wrapLetters.js +11 -3
  78. package/lib/cjs/components/SplitText/utils/wrapLetters.js.map +1 -1
  79. package/lib/cjs/components/SplitText/utils/wrapLines.js +11 -5
  80. package/lib/cjs/components/SplitText/utils/wrapLines.js.map +1 -1
  81. package/lib/cjs/components/SplitText/utils/wrapWords.js +13 -2
  82. package/lib/cjs/components/SplitText/utils/wrapWords.js.map +1 -1
  83. package/lib/cjs/components/Timeline/index.js +77 -21
  84. package/lib/cjs/components/Timeline/index.js.map +1 -1
  85. package/lib/cjs/components/index.js +4 -4
  86. package/lib/cjs/components/index.js.map +1 -1
  87. package/lib/cjs/index.js +10 -3
  88. package/lib/cjs/index.js.map +1 -1
  89. package/lib/cjs/types/index.js +19 -0
  90. package/lib/cjs/types/index.js.map +1 -0
  91. package/lib/cjs/utils/common/PCancelable.js +16 -0
  92. package/lib/cjs/utils/common/PCancelable.js.map +1 -1
  93. package/lib/cjs/utils/common/normalizedTimeoutCallback.js +19 -4
  94. package/lib/cjs/utils/common/normalizedTimeoutCallback.js.map +1 -1
  95. package/lib/cjs/utils/common/objectKeys.js +11 -1
  96. package/lib/cjs/utils/common/objectKeys.js.map +1 -1
  97. package/lib/cjs/utils/common/pickObjectProps.js +14 -2
  98. package/lib/cjs/utils/common/pickObjectProps.js.map +1 -1
  99. package/lib/cjs/utils/common/times.js +12 -3
  100. package/lib/cjs/utils/common/times.js.map +1 -1
  101. package/lib/cjs/utils/common/uid.js +4 -2
  102. package/lib/cjs/utils/common/uid.js.map +1 -1
  103. package/lib/cjs/utils/image/load.js +3 -3
  104. package/lib/cjs/utils/image/load.js.map +1 -1
  105. package/lib/cjs/utils/image/pathsToProps.js +10 -4
  106. package/lib/cjs/utils/image/pathsToProps.js.map +1 -1
  107. package/lib/cjs/utils/image/sizesToSrcSet.js +7 -3
  108. package/lib/cjs/utils/image/sizesToSrcSet.js.map +1 -1
  109. package/lib/cjs/utils/internal/getApp.js +12 -0
  110. package/lib/cjs/utils/internal/getApp.js.map +1 -1
  111. package/lib/cjs/utils/listeners/isIntersectionObserverSupported.js +1 -1
  112. package/lib/cjs/utils/listeners/onResize.js +8 -10
  113. package/lib/cjs/utils/listeners/onResize.js.map +1 -1
  114. package/lib/cjs/utils/math/clamp.js +10 -5
  115. package/lib/cjs/utils/math/clamp.js.map +1 -1
  116. package/lib/cjs/utils/math/clampScope.js +8 -1
  117. package/lib/cjs/utils/math/clampScope.js.map +1 -1
  118. package/lib/cjs/utils/math/easing.js +4 -1
  119. package/lib/cjs/utils/math/easing.js.map +1 -1
  120. package/lib/cjs/utils/math/inScope.js +6 -3
  121. package/lib/cjs/utils/math/inScope.js.map +1 -1
  122. package/lib/cjs/utils/math/lerp.js +11 -3
  123. package/lib/cjs/utils/math/lerp.js.map +1 -1
  124. package/lib/cjs/utils/math/normalizeNestedScope.js +12 -3
  125. package/lib/cjs/utils/math/normalizeNestedScope.js.map +1 -1
  126. package/lib/cjs/utils/math/scoped.js +18 -7
  127. package/lib/cjs/utils/math/scoped.js.map +1 -1
  128. package/lib/cjs/utils/math/spreadScope.js +17 -3
  129. package/lib/cjs/utils/math/spreadScope.js.map +1 -1
  130. package/lib/cjs/utils/math/wrap.js +9 -3
  131. package/lib/cjs/utils/math/wrap.js.map +1 -1
  132. package/lib/cjs/utils/scroll/getScrollValues.js +13 -1
  133. package/lib/cjs/utils/scroll/getScrollValues.js.map +1 -1
  134. package/lib/cjs/utils/scroll/isPageScrolling.js +30 -0
  135. package/lib/cjs/utils/scroll/isPageScrolling.js.map +1 -1
  136. package/lib/cjs/utils/scroll/normalizeWheel.js +7 -2
  137. package/lib/cjs/utils/scroll/normalizeWheel.js.map +1 -1
  138. package/lib/cjs/utils/scroll/onScroll.js +14 -7
  139. package/lib/cjs/utils/scroll/onScroll.js.map +1 -1
  140. package/lib/cjs/utils/scroll/scrollTo.js +8 -7
  141. package/lib/cjs/utils/scroll/scrollTo.js.map +1 -1
  142. package/lib/cjs/utils/scroll/scrollToElement.js +8 -6
  143. package/lib/cjs/utils/scroll/scrollToElement.js.map +1 -1
  144. package/lib/esm/{Application → Vevet}/events/createOnPageLoad/index.js +7 -7
  145. package/lib/esm/Vevet/events/createOnPageLoad/index.js.map +1 -0
  146. package/lib/esm/Vevet/events/createOnPageLoad/types.js.map +1 -0
  147. package/lib/esm/{Application → Vevet}/events/createViewport/index.js +20 -26
  148. package/lib/esm/Vevet/events/createViewport/index.js.map +1 -0
  149. package/lib/esm/Vevet/events/createViewport/types.js.map +1 -0
  150. package/lib/esm/Vevet/exported.js +2 -0
  151. package/lib/esm/Vevet/exported.js.map +1 -0
  152. package/lib/esm/Vevet/global.js +2 -0
  153. package/lib/esm/Vevet/global.js.map +1 -0
  154. package/lib/esm/Vevet/index.js +72 -0
  155. package/lib/esm/Vevet/index.js.map +1 -0
  156. package/lib/esm/{Application → Vevet}/types.js.map +1 -1
  157. package/lib/esm/{utils/internal → Vevet/utils}/fetchWebpSupport.js +1 -1
  158. package/lib/esm/Vevet/utils/fetchWebpSupport.js.map +1 -0
  159. package/lib/esm/Vevet/utils/getDeviceInfo.js.map +1 -0
  160. package/lib/esm/base/Callbacks/index.js +66 -48
  161. package/lib/esm/base/Callbacks/index.js.map +1 -1
  162. package/lib/esm/base/Component/index.js +15 -4
  163. package/lib/esm/base/Component/index.js.map +1 -1
  164. package/lib/esm/base/Module/index.js +119 -65
  165. package/lib/esm/base/Module/index.js.map +1 -1
  166. package/lib/esm/base/MutableProps/index.js +35 -60
  167. package/lib/esm/base/MutableProps/index.js.map +1 -1
  168. package/lib/esm/base/Plugin/index.js +20 -1
  169. package/lib/esm/base/Plugin/index.js.map +1 -1
  170. package/lib/esm/components/AnimationFrame/index.js +14 -21
  171. package/lib/esm/components/AnimationFrame/index.js.map +1 -1
  172. package/lib/esm/components/Ctx2D/index.js +40 -25
  173. package/lib/esm/components/Ctx2D/index.js.map +1 -1
  174. package/lib/esm/components/Ctx2DPrerender/index.js +17 -7
  175. package/lib/esm/components/Ctx2DPrerender/index.js.map +1 -1
  176. package/lib/esm/components/CustomCursor/index.js +75 -51
  177. package/lib/esm/components/CustomCursor/index.js.map +1 -1
  178. package/lib/esm/components/{SmoothScroll → CustomScroll}/AnimatonFrame.js +2 -2
  179. package/lib/esm/components/{SmoothScroll → CustomScroll}/AnimatonFrame.js.map +1 -1
  180. package/lib/esm/components/{SmoothScroll → CustomScroll}/Elements.js +8 -8
  181. package/lib/esm/components/{SmoothScroll → CustomScroll}/Elements.js.map +1 -1
  182. package/lib/esm/components/{SmoothScroll → CustomScroll}/index.js +26 -20
  183. package/lib/esm/components/CustomScroll/index.js.map +1 -0
  184. package/lib/esm/components/CustomScroll/types.js.map +1 -0
  185. package/lib/esm/components/{SmoothScrollDragPlugin → CustomScrollDragPlugin}/index.js +28 -27
  186. package/lib/esm/components/CustomScrollDragPlugin/index.js.map +1 -0
  187. package/lib/esm/components/CustomScrollDragPlugin/types.js.map +1 -0
  188. package/lib/esm/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/index.js +37 -33
  189. package/lib/esm/components/CustomScrollKeyboardPlugin/index.js.map +1 -0
  190. package/lib/esm/components/CustomScrollKeyboardPlugin/types.js.map +1 -0
  191. package/lib/esm/components/DraggerBase/index.js +74 -28
  192. package/lib/esm/components/DraggerBase/index.js.map +1 -1
  193. package/lib/esm/components/DraggerDirection/index.js +12 -6
  194. package/lib/esm/components/DraggerDirection/index.js.map +1 -1
  195. package/lib/esm/components/DraggerMove/index.js +44 -13
  196. package/lib/esm/components/DraggerMove/index.js.map +1 -1
  197. package/lib/esm/components/Marquee/index.js +220 -161
  198. package/lib/esm/components/Marquee/index.js.map +1 -1
  199. package/lib/esm/components/Preloader/index.js +45 -16
  200. package/lib/esm/components/Preloader/index.js.map +1 -1
  201. package/lib/esm/components/ProgressPreloader/index.js +79 -40
  202. package/lib/esm/components/ProgressPreloader/index.js.map +1 -1
  203. package/lib/esm/components/ProgressPreloader/utils/preloadCustomElement.js +12 -1
  204. package/lib/esm/components/ProgressPreloader/utils/preloadCustomElement.js.map +1 -1
  205. package/lib/esm/components/ScrollBar/Bar/index.js +89 -32
  206. package/lib/esm/components/ScrollBar/Bar/index.js.map +1 -1
  207. package/lib/esm/components/ScrollBar/index.js +56 -26
  208. package/lib/esm/components/ScrollBar/index.js.map +1 -1
  209. package/lib/esm/components/ScrollView/index.js +56 -20
  210. package/lib/esm/components/ScrollView/index.js.map +1 -1
  211. package/lib/esm/components/SectionScrollProgress/index.js +68 -31
  212. package/lib/esm/components/SectionScrollProgress/index.js.map +1 -1
  213. package/lib/esm/components/SlideProgress/index.js +72 -38
  214. package/lib/esm/components/SlideProgress/index.js.map +1 -1
  215. package/lib/esm/components/SplitText/index.js +52 -23
  216. package/lib/esm/components/SplitText/index.js.map +1 -1
  217. package/lib/esm/components/SplitText/utils/splitBase.js +6 -1
  218. package/lib/esm/components/SplitText/utils/splitBase.js.map +1 -1
  219. package/lib/esm/components/SplitText/utils/wrapLetters.js +11 -3
  220. package/lib/esm/components/SplitText/utils/wrapLetters.js.map +1 -1
  221. package/lib/esm/components/SplitText/utils/wrapLines.js +11 -5
  222. package/lib/esm/components/SplitText/utils/wrapLines.js.map +1 -1
  223. package/lib/esm/components/SplitText/utils/wrapWords.js +13 -2
  224. package/lib/esm/components/SplitText/utils/wrapWords.js.map +1 -1
  225. package/lib/esm/components/Timeline/index.js +70 -22
  226. package/lib/esm/components/Timeline/index.js.map +1 -1
  227. package/lib/esm/components/index.js +4 -4
  228. package/lib/esm/components/index.js.map +1 -1
  229. package/lib/esm/index.js +9 -3
  230. package/lib/esm/index.js.map +1 -1
  231. package/lib/esm/types/index.js +3 -0
  232. package/lib/esm/types/index.js.map +1 -0
  233. package/lib/esm/utils/common/PCancelable.js +16 -0
  234. package/lib/esm/utils/common/PCancelable.js.map +1 -1
  235. package/lib/esm/utils/common/normalizedTimeoutCallback.js +19 -4
  236. package/lib/esm/utils/common/normalizedTimeoutCallback.js.map +1 -1
  237. package/lib/esm/utils/common/objectKeys.js +11 -1
  238. package/lib/esm/utils/common/objectKeys.js.map +1 -1
  239. package/lib/esm/utils/common/pickObjectProps.js +14 -2
  240. package/lib/esm/utils/common/pickObjectProps.js.map +1 -1
  241. package/lib/esm/utils/common/times.js +12 -3
  242. package/lib/esm/utils/common/times.js.map +1 -1
  243. package/lib/esm/utils/common/uid.js +4 -2
  244. package/lib/esm/utils/common/uid.js.map +1 -1
  245. package/lib/esm/utils/image/load.js +3 -3
  246. package/lib/esm/utils/image/load.js.map +1 -1
  247. package/lib/esm/utils/image/pathsToProps.js +10 -4
  248. package/lib/esm/utils/image/pathsToProps.js.map +1 -1
  249. package/lib/esm/utils/image/sizesToSrcSet.js +7 -3
  250. package/lib/esm/utils/image/sizesToSrcSet.js.map +1 -1
  251. package/lib/esm/utils/internal/getApp.js +12 -0
  252. package/lib/esm/utils/internal/getApp.js.map +1 -1
  253. package/lib/esm/utils/listeners/isIntersectionObserverSupported.js +1 -1
  254. package/lib/esm/utils/listeners/onResize.js +8 -10
  255. package/lib/esm/utils/listeners/onResize.js.map +1 -1
  256. package/lib/esm/utils/math/clamp.js +10 -5
  257. package/lib/esm/utils/math/clamp.js.map +1 -1
  258. package/lib/esm/utils/math/clampScope.js +8 -1
  259. package/lib/esm/utils/math/clampScope.js.map +1 -1
  260. package/lib/esm/utils/math/easing.js +4 -1
  261. package/lib/esm/utils/math/easing.js.map +1 -1
  262. package/lib/esm/utils/math/inScope.js +6 -3
  263. package/lib/esm/utils/math/inScope.js.map +1 -1
  264. package/lib/esm/utils/math/lerp.js +11 -3
  265. package/lib/esm/utils/math/lerp.js.map +1 -1
  266. package/lib/esm/utils/math/normalizeNestedScope.js +12 -3
  267. package/lib/esm/utils/math/normalizeNestedScope.js.map +1 -1
  268. package/lib/esm/utils/math/scoped.js +17 -6
  269. package/lib/esm/utils/math/scoped.js.map +1 -1
  270. package/lib/esm/utils/math/spreadScope.js +17 -3
  271. package/lib/esm/utils/math/spreadScope.js.map +1 -1
  272. package/lib/esm/utils/math/wrap.js +9 -3
  273. package/lib/esm/utils/math/wrap.js.map +1 -1
  274. package/lib/esm/utils/scroll/getScrollValues.js +13 -1
  275. package/lib/esm/utils/scroll/getScrollValues.js.map +1 -1
  276. package/lib/esm/utils/scroll/isPageScrolling.js +30 -0
  277. package/lib/esm/utils/scroll/isPageScrolling.js.map +1 -1
  278. package/lib/esm/utils/scroll/normalizeWheel.js +7 -2
  279. package/lib/esm/utils/scroll/normalizeWheel.js.map +1 -1
  280. package/lib/esm/utils/scroll/onScroll.js +14 -7
  281. package/lib/esm/utils/scroll/onScroll.js.map +1 -1
  282. package/lib/esm/utils/scroll/scrollTo.js +8 -7
  283. package/lib/esm/utils/scroll/scrollTo.js.map +1 -1
  284. package/lib/esm/utils/scroll/scrollToElement.js +8 -6
  285. package/lib/esm/utils/scroll/scrollToElement.js.map +1 -1
  286. package/lib/styles/base.scss +0 -2
  287. package/lib/styles/components/CustomCursor.scss +7 -7
  288. package/{src/styles/components/SmoothScroll.scss → lib/styles/components/CustomScroll.scss} +3 -3
  289. package/lib/styles/components/Preloader.scss +1 -1
  290. package/lib/styles/components/ScrollBar.scss +4 -4
  291. package/lib/styles/components/index.scss +1 -1
  292. package/lib/styles/index.scss +0 -1
  293. package/lib/types/Vevet/events/createOnPageLoad/index.d.ts +3 -0
  294. package/lib/types/Vevet/events/createOnPageLoad/index.d.ts.map +1 -0
  295. package/lib/types/Vevet/events/createOnPageLoad/types.d.ts +20 -0
  296. package/lib/types/Vevet/events/createOnPageLoad/types.d.ts.map +1 -0
  297. package/lib/types/Vevet/events/createViewport/index.d.ts +4 -0
  298. package/lib/types/Vevet/events/createViewport/index.d.ts.map +1 -0
  299. package/lib/types/Vevet/events/createViewport/types.d.ts +85 -0
  300. package/lib/types/Vevet/events/createViewport/types.d.ts.map +1 -0
  301. package/lib/types/Vevet/exported.d.ts +6 -0
  302. package/lib/types/Vevet/exported.d.ts.map +1 -0
  303. package/lib/types/Vevet/global.d.ts +51 -0
  304. package/lib/types/Vevet/global.d.ts.map +1 -0
  305. package/lib/types/Vevet/index.d.ts +4 -0
  306. package/lib/types/Vevet/index.d.ts.map +1 -0
  307. package/lib/types/Vevet/types.d.ts +43 -0
  308. package/lib/types/Vevet/types.d.ts.map +1 -0
  309. package/lib/types/Vevet/utils/fetchWebpSupport.d.ts +3 -0
  310. package/lib/types/Vevet/utils/fetchWebpSupport.d.ts.map +1 -0
  311. package/lib/types/Vevet/utils/getDeviceInfo.d.ts.map +1 -0
  312. package/lib/types/base/Callbacks/index.d.ts +67 -46
  313. package/lib/types/base/Callbacks/index.d.ts.map +1 -1
  314. package/lib/types/base/Callbacks/types.d.ts +46 -14
  315. package/lib/types/base/Callbacks/types.d.ts.map +1 -1
  316. package/lib/types/base/Component/index.d.ts +19 -5
  317. package/lib/types/base/Component/index.d.ts.map +1 -1
  318. package/lib/types/base/Component/types.d.ts +15 -3
  319. package/lib/types/base/Component/types.d.ts.map +1 -1
  320. package/lib/types/base/Module/index.d.ts +124 -74
  321. package/lib/types/base/Module/index.d.ts.map +1 -1
  322. package/lib/types/base/Module/types.d.ts +29 -3
  323. package/lib/types/base/Module/types.d.ts.map +1 -1
  324. package/lib/types/base/MutableProps/index.d.ts +34 -77
  325. package/lib/types/base/MutableProps/index.d.ts.map +1 -1
  326. package/lib/types/base/MutableProps/types.d.ts +14 -8
  327. package/lib/types/base/MutableProps/types.d.ts.map +1 -1
  328. package/lib/types/base/Plugin/index.d.ts +24 -1
  329. package/lib/types/base/Plugin/index.d.ts.map +1 -1
  330. package/lib/types/base/Plugin/types.d.ts +11 -0
  331. package/lib/types/base/Plugin/types.d.ts.map +1 -1
  332. package/lib/types/components/AnimationFrame/index.d.ts +20 -18
  333. package/lib/types/components/AnimationFrame/index.d.ts.map +1 -1
  334. package/lib/types/components/AnimationFrame/types.d.ts +18 -3
  335. package/lib/types/components/AnimationFrame/types.d.ts.map +1 -1
  336. package/lib/types/components/Ctx2D/index.d.ts +37 -15
  337. package/lib/types/components/Ctx2D/index.d.ts.map +1 -1
  338. package/lib/types/components/Ctx2D/types.d.ts +40 -13
  339. package/lib/types/components/Ctx2D/types.d.ts.map +1 -1
  340. package/lib/types/components/Ctx2DPrerender/index.d.ts +13 -4
  341. package/lib/types/components/Ctx2DPrerender/index.d.ts.map +1 -1
  342. package/lib/types/components/Ctx2DPrerender/types.d.ts +13 -2
  343. package/lib/types/components/Ctx2DPrerender/types.d.ts.map +1 -1
  344. package/lib/types/components/CustomCursor/index.d.ts +59 -36
  345. package/lib/types/components/CustomCursor/index.d.ts.map +1 -1
  346. package/lib/types/components/CustomCursor/types.d.ts +52 -12
  347. package/lib/types/components/CustomCursor/types.d.ts.map +1 -1
  348. package/lib/types/components/{SmoothScroll → CustomScroll}/AnimatonFrame.d.ts.map +1 -1
  349. package/lib/types/components/{SmoothScroll → CustomScroll}/Elements.d.ts +3 -3
  350. package/lib/types/components/{SmoothScroll → CustomScroll}/Elements.d.ts.map +1 -1
  351. package/lib/types/components/{SmoothScroll → CustomScroll}/index.d.ts +45 -32
  352. package/lib/types/components/CustomScroll/index.d.ts.map +1 -0
  353. package/lib/types/components/CustomScroll/types.d.ts +137 -0
  354. package/lib/types/components/CustomScroll/types.d.ts.map +1 -0
  355. package/lib/types/components/CustomScrollDragPlugin/index.d.ts +62 -0
  356. package/lib/types/components/CustomScrollDragPlugin/index.d.ts.map +1 -0
  357. package/lib/types/components/CustomScrollDragPlugin/types.d.ts +52 -0
  358. package/lib/types/components/CustomScrollDragPlugin/types.d.ts.map +1 -0
  359. package/lib/types/components/CustomScrollKeyboardPlugin/index.d.ts +47 -0
  360. package/lib/types/components/CustomScrollKeyboardPlugin/index.d.ts.map +1 -0
  361. package/lib/types/components/CustomScrollKeyboardPlugin/types.d.ts +16 -0
  362. package/lib/types/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/types.d.ts.map +1 -1
  363. package/lib/types/components/DraggerBase/index.d.ts +93 -28
  364. package/lib/types/components/DraggerBase/index.d.ts.map +1 -1
  365. package/lib/types/components/DraggerBase/types.d.ts +21 -3
  366. package/lib/types/components/DraggerBase/types.d.ts.map +1 -1
  367. package/lib/types/components/DraggerDirection/index.d.ts +6 -2
  368. package/lib/types/components/DraggerDirection/index.d.ts.map +1 -1
  369. package/lib/types/components/DraggerDirection/types.d.ts +15 -1
  370. package/lib/types/components/DraggerDirection/types.d.ts.map +1 -1
  371. package/lib/types/components/DraggerMove/index.d.ts +38 -8
  372. package/lib/types/components/DraggerMove/index.d.ts.map +1 -1
  373. package/lib/types/components/DraggerMove/types.d.ts +15 -2
  374. package/lib/types/components/DraggerMove/types.d.ts.map +1 -1
  375. package/lib/types/components/Marquee/index.d.ts +59 -36
  376. package/lib/types/components/Marquee/index.d.ts.map +1 -1
  377. package/lib/types/components/Marquee/types.d.ts +18 -8
  378. package/lib/types/components/Marquee/types.d.ts.map +1 -1
  379. package/lib/types/components/Preloader/index.d.ts +52 -15
  380. package/lib/types/components/Preloader/index.d.ts.map +1 -1
  381. package/lib/types/components/Preloader/types.d.ts +16 -5
  382. package/lib/types/components/Preloader/types.d.ts.map +1 -1
  383. package/lib/types/components/ProgressPreloader/index.d.ts +85 -25
  384. package/lib/types/components/ProgressPreloader/index.d.ts.map +1 -1
  385. package/lib/types/components/ProgressPreloader/types.d.ts +51 -14
  386. package/lib/types/components/ProgressPreloader/types.d.ts.map +1 -1
  387. package/lib/types/components/ProgressPreloader/utils/preloadCustomElement.d.ts +3 -0
  388. package/lib/types/components/ProgressPreloader/utils/preloadCustomElement.d.ts.map +1 -1
  389. package/lib/types/components/ScrollBar/Bar/index.d.ts +81 -16
  390. package/lib/types/components/ScrollBar/Bar/index.d.ts.map +1 -1
  391. package/lib/types/components/ScrollBar/Bar/types.d.ts +38 -16
  392. package/lib/types/components/ScrollBar/Bar/types.d.ts.map +1 -1
  393. package/lib/types/components/ScrollBar/index.d.ts +46 -13
  394. package/lib/types/components/ScrollBar/index.d.ts.map +1 -1
  395. package/lib/types/components/ScrollBar/types.d.ts +8 -6
  396. package/lib/types/components/ScrollBar/types.d.ts.map +1 -1
  397. package/lib/types/components/ScrollView/index.d.ts +65 -21
  398. package/lib/types/components/ScrollView/index.d.ts.map +1 -1
  399. package/lib/types/components/SectionScrollProgress/index.d.ts +83 -28
  400. package/lib/types/components/SectionScrollProgress/index.d.ts.map +1 -1
  401. package/lib/types/components/SectionScrollProgress/types.d.ts +15 -6
  402. package/lib/types/components/SectionScrollProgress/types.d.ts.map +1 -1
  403. package/lib/types/components/SlideProgress/index.d.ts +59 -24
  404. package/lib/types/components/SlideProgress/index.d.ts.map +1 -1
  405. package/lib/types/components/SlideProgress/types.d.ts +24 -15
  406. package/lib/types/components/SlideProgress/types.d.ts.map +1 -1
  407. package/lib/types/components/SplitText/index.d.ts +64 -18
  408. package/lib/types/components/SplitText/index.d.ts.map +1 -1
  409. package/lib/types/components/SplitText/types.d.ts +36 -8
  410. package/lib/types/components/SplitText/types.d.ts.map +1 -1
  411. package/lib/types/components/SplitText/utils/splitBase.d.ts +3 -1
  412. package/lib/types/components/SplitText/utils/splitBase.d.ts.map +1 -1
  413. package/lib/types/components/SplitText/utils/wrapLetters.d.ts +3 -1
  414. package/lib/types/components/SplitText/utils/wrapLetters.d.ts.map +1 -1
  415. package/lib/types/components/SplitText/utils/wrapLines.d.ts +3 -1
  416. package/lib/types/components/SplitText/utils/wrapLines.d.ts.map +1 -1
  417. package/lib/types/components/SplitText/utils/wrapWords.d.ts +3 -1
  418. package/lib/types/components/SplitText/utils/wrapWords.d.ts.map +1 -1
  419. package/lib/types/components/Timeline/index.d.ts +69 -21
  420. package/lib/types/components/Timeline/index.d.ts.map +1 -1
  421. package/lib/types/components/Timeline/types.d.ts +32 -7
  422. package/lib/types/components/Timeline/types.d.ts.map +1 -1
  423. package/lib/types/components/index.d.ts +4 -4
  424. package/lib/types/components/index.d.ts.map +1 -1
  425. package/lib/types/index.d.ts +16 -2
  426. package/lib/types/index.d.ts.map +1 -1
  427. package/lib/types/types/index.d.ts +3 -0
  428. package/lib/types/types/index.d.ts.map +1 -0
  429. package/lib/types/types/utility.d.ts +2 -3
  430. package/lib/types/types/utility.d.ts.map +1 -1
  431. package/lib/types/utils/common/PCancelable.d.ts +16 -0
  432. package/lib/types/utils/common/PCancelable.d.ts.map +1 -1
  433. package/lib/types/utils/common/normalizedTimeoutCallback.d.ts +19 -4
  434. package/lib/types/utils/common/normalizedTimeoutCallback.d.ts.map +1 -1
  435. package/lib/types/utils/common/objectKeys.d.ts +11 -1
  436. package/lib/types/utils/common/objectKeys.d.ts.map +1 -1
  437. package/lib/types/utils/common/pickObjectProps.d.ts +14 -2
  438. package/lib/types/utils/common/pickObjectProps.d.ts.map +1 -1
  439. package/lib/types/utils/common/times.d.ts +12 -3
  440. package/lib/types/utils/common/times.d.ts.map +1 -1
  441. package/lib/types/utils/common/uid.d.ts +4 -2
  442. package/lib/types/utils/common/uid.d.ts.map +1 -1
  443. package/lib/types/utils/image/load.d.ts +8 -5
  444. package/lib/types/utils/image/load.d.ts.map +1 -1
  445. package/lib/types/utils/image/pathsToProps.d.ts +10 -4
  446. package/lib/types/utils/image/pathsToProps.d.ts.map +1 -1
  447. package/lib/types/utils/image/sizesToSrcSet.d.ts +7 -3
  448. package/lib/types/utils/image/sizesToSrcSet.d.ts.map +1 -1
  449. package/lib/types/utils/internal/getApp.d.ts +1 -1
  450. package/lib/types/utils/internal/getApp.d.ts.map +1 -1
  451. package/lib/types/utils/listeners/isIntersectionObserverSupported.d.ts +1 -1
  452. package/lib/types/utils/listeners/onResize.d.ts +11 -12
  453. package/lib/types/utils/listeners/onResize.d.ts.map +1 -1
  454. package/lib/types/utils/math/clamp.d.ts +7 -2
  455. package/lib/types/utils/math/clamp.d.ts.map +1 -1
  456. package/lib/types/utils/math/clampScope.d.ts +8 -1
  457. package/lib/types/utils/math/clampScope.d.ts.map +1 -1
  458. package/lib/types/utils/math/easing.d.ts +4 -1
  459. package/lib/types/utils/math/easing.d.ts.map +1 -1
  460. package/lib/types/utils/math/inScope.d.ts +5 -2
  461. package/lib/types/utils/math/inScope.d.ts.map +1 -1
  462. package/lib/types/utils/math/lerp.d.ts +10 -2
  463. package/lib/types/utils/math/lerp.d.ts.map +1 -1
  464. package/lib/types/utils/math/normalizeNestedScope.d.ts +12 -3
  465. package/lib/types/utils/math/normalizeNestedScope.d.ts.map +1 -1
  466. package/lib/types/utils/math/scoped.d.ts +16 -5
  467. package/lib/types/utils/math/scoped.d.ts.map +1 -1
  468. package/lib/types/utils/math/spreadScope.d.ts +17 -3
  469. package/lib/types/utils/math/spreadScope.d.ts.map +1 -1
  470. package/lib/types/utils/math/wrap.d.ts +9 -3
  471. package/lib/types/utils/math/wrap.d.ts.map +1 -1
  472. package/lib/types/utils/scroll/getScrollValues.d.ts +13 -1
  473. package/lib/types/utils/scroll/getScrollValues.d.ts.map +1 -1
  474. package/lib/types/utils/scroll/isPageScrolling.d.ts +20 -0
  475. package/lib/types/utils/scroll/isPageScrolling.d.ts.map +1 -1
  476. package/lib/types/utils/scroll/normalizeWheel.d.ts +10 -2
  477. package/lib/types/utils/scroll/normalizeWheel.d.ts.map +1 -1
  478. package/lib/types/utils/scroll/onScroll.d.ts +10 -5
  479. package/lib/types/utils/scroll/onScroll.d.ts.map +1 -1
  480. package/lib/types/utils/scroll/scrollTo.d.ts +12 -9
  481. package/lib/types/utils/scroll/scrollTo.d.ts.map +1 -1
  482. package/lib/types/utils/scroll/scrollToElement.d.ts +9 -7
  483. package/lib/types/utils/scroll/scrollToElement.d.ts.map +1 -1
  484. package/package.json +7 -8
  485. package/src/{Application → Vevet}/events/createOnPageLoad/index.ts +8 -8
  486. package/src/Vevet/events/createOnPageLoad/types.ts +21 -0
  487. package/src/{Application → Vevet}/events/createViewport/index.ts +33 -35
  488. package/src/{Application → Vevet}/events/createViewport/stories/index.tsx +7 -5
  489. package/src/Vevet/events/createViewport/types.ts +93 -0
  490. package/src/Vevet/exported.ts +15 -0
  491. package/src/Vevet/global.ts +51 -0
  492. package/src/Vevet/index.ts +98 -0
  493. package/src/{Application → Vevet}/stories/index.tsx +2 -2
  494. package/src/Vevet/types.ts +48 -0
  495. package/src/base/Callbacks/index.ts +70 -51
  496. package/src/base/Callbacks/types.ts +53 -14
  497. package/src/base/Component/index.ts +19 -5
  498. package/src/base/Component/types.ts +15 -3
  499. package/src/base/Module/index.ts +125 -78
  500. package/src/base/Module/types.ts +32 -3
  501. package/src/base/MutableProps/index.ts +44 -73
  502. package/src/base/MutableProps/types.ts +15 -8
  503. package/src/base/Plugin/index.ts +24 -1
  504. package/src/base/Plugin/types.ts +11 -0
  505. package/src/components/AnimationFrame/index.ts +21 -28
  506. package/src/components/AnimationFrame/types.ts +23 -3
  507. package/src/components/Ctx2D/index.ts +46 -34
  508. package/src/components/Ctx2D/types.ts +53 -13
  509. package/src/components/Ctx2DPrerender/index.ts +18 -7
  510. package/src/components/Ctx2DPrerender/types.ts +13 -2
  511. package/src/components/CustomCursor/index.ts +85 -60
  512. package/src/components/CustomCursor/stories/index.tsx +0 -3
  513. package/src/components/CustomCursor/types.ts +63 -12
  514. package/src/components/{SmoothScroll → CustomScroll}/AnimatonFrame.ts +2 -2
  515. package/src/components/{SmoothScroll → CustomScroll}/Elements.ts +14 -14
  516. package/src/components/{SmoothScroll → CustomScroll}/index.ts +55 -42
  517. package/src/components/{SmoothScroll → CustomScroll}/stories/Default.tsx +8 -8
  518. package/src/components/{SmoothScroll → CustomScroll}/stories/WithHorizontal.tsx +9 -9
  519. package/src/components/{SmoothScroll → CustomScroll}/stories/WithInnerLerp.tsx +9 -9
  520. package/src/components/{SmoothScroll → CustomScroll}/stories/index.stories.tsx +1 -1
  521. package/src/components/CustomScroll/types.ts +165 -0
  522. package/src/components/{SmoothScrollDragPlugin → CustomScrollDragPlugin}/index.ts +41 -41
  523. package/src/components/{SmoothScrollDragPlugin → CustomScrollDragPlugin}/stories/index.stories.tsx +1 -1
  524. package/src/components/{SmoothScrollDragPlugin → CustomScrollDragPlugin}/stories/index.tsx +10 -10
  525. package/src/components/CustomScrollDragPlugin/types.ts +59 -0
  526. package/src/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/index.ts +47 -43
  527. package/src/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/stories/index.stories.tsx +1 -1
  528. package/src/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/stories/index.tsx +10 -10
  529. package/src/components/{SmoothScrollKeyboardPlugin → CustomScrollKeyboardPlugin}/types.ts +6 -2
  530. package/src/components/DraggerBase/index.ts +101 -37
  531. package/src/components/DraggerBase/types.ts +25 -3
  532. package/src/components/DraggerDirection/index.ts +12 -6
  533. package/src/components/DraggerDirection/types.ts +18 -1
  534. package/src/components/DraggerMove/index.ts +44 -13
  535. package/src/components/DraggerMove/types.ts +17 -2
  536. package/src/components/Marquee/index.ts +255 -186
  537. package/src/components/Marquee/stories/index.tsx +16 -2
  538. package/src/components/Marquee/types.ts +18 -8
  539. package/src/components/Preloader/index.ts +56 -20
  540. package/src/components/Preloader/types.ts +18 -5
  541. package/src/components/ProgressPreloader/index.ts +104 -48
  542. package/src/components/ProgressPreloader/types.ts +65 -14
  543. package/src/components/ProgressPreloader/utils/preloadCustomElement.ts +13 -2
  544. package/src/components/ScrollBar/Bar/index.ts +112 -62
  545. package/src/components/ScrollBar/Bar/types.ts +46 -17
  546. package/src/components/ScrollBar/index.ts +74 -39
  547. package/src/components/ScrollBar/stories/{WithSmoothScrollComponent.tsx → WithCustomScrollComponent.tsx} +5 -5
  548. package/src/components/ScrollBar/stories/index.stories.tsx +3 -3
  549. package/src/components/ScrollBar/types.ts +10 -6
  550. package/src/components/ScrollView/index.ts +73 -27
  551. package/src/components/ScrollView/stories/index.tsx +5 -2
  552. package/src/components/SectionScrollProgress/index.ts +97 -41
  553. package/src/components/SectionScrollProgress/stories/WithCustomScroll.tsx +6 -6
  554. package/src/components/SectionScrollProgress/types.ts +19 -6
  555. package/src/components/SlideProgress/index.ts +78 -45
  556. package/src/components/SlideProgress/types.ts +24 -15
  557. package/src/components/SplitText/index.ts +71 -31
  558. package/src/components/SplitText/types.ts +48 -8
  559. package/src/components/SplitText/utils/splitBase.ts +6 -2
  560. package/src/components/SplitText/utils/wrapLetters.ts +11 -3
  561. package/src/components/SplitText/utils/wrapLines.ts +11 -5
  562. package/src/components/SplitText/utils/wrapWords.ts +14 -3
  563. package/src/components/Timeline/index.ts +98 -26
  564. package/src/components/Timeline/stories/index.stories.tsx +0 -5
  565. package/src/components/Timeline/types.ts +37 -7
  566. package/src/components/index.ts +4 -4
  567. package/src/index.ts +22 -4
  568. package/src/styles/base.scss +0 -2
  569. package/src/styles/components/CustomCursor.scss +7 -7
  570. package/{lib/styles/components/SmoothScroll.scss → src/styles/components/CustomScroll.scss} +3 -3
  571. package/src/styles/components/Preloader.scss +1 -1
  572. package/src/styles/components/ScrollBar.scss +4 -4
  573. package/src/styles/components/index.scss +1 -1
  574. package/src/styles/index.scss +0 -1
  575. package/src/types/index.ts +2 -0
  576. package/src/types/utility.ts +2 -2
  577. package/src/utils/common/PCancelable.ts +17 -0
  578. package/src/utils/common/normalizedTimeoutCallback.ts +19 -4
  579. package/src/utils/common/objectKeys.ts +12 -2
  580. package/src/utils/common/pickObjectProps.ts +16 -4
  581. package/src/utils/common/times.ts +12 -3
  582. package/src/utils/common/uid.ts +5 -3
  583. package/src/utils/image/load.ts +9 -4
  584. package/src/utils/image/pathsToProps.ts +10 -4
  585. package/src/utils/image/sizesToSrcSet.ts +7 -3
  586. package/src/utils/internal/getApp.ts +16 -0
  587. package/src/utils/listeners/isIntersectionObserverSupported.ts +1 -1
  588. package/src/utils/listeners/onResize.ts +12 -17
  589. package/src/utils/math/clamp.ts +10 -5
  590. package/src/utils/math/clampScope.ts +9 -2
  591. package/src/utils/math/easing.ts +4 -1
  592. package/src/utils/math/inScope.ts +6 -3
  593. package/src/utils/math/lerp.ts +11 -3
  594. package/src/utils/math/normalizeNestedScope.ts +12 -3
  595. package/src/utils/math/scoped.ts +17 -6
  596. package/src/utils/math/spreadScope.ts +17 -3
  597. package/src/utils/math/wrap.ts +9 -3
  598. package/src/utils/scroll/getScrollValues.ts +13 -1
  599. package/src/utils/scroll/isPageScrolling.ts +31 -0
  600. package/src/utils/scroll/normalizeWheel.ts +10 -2
  601. package/src/utils/scroll/onScroll.ts +18 -11
  602. package/src/utils/scroll/scrollTo.ts +16 -10
  603. package/src/utils/scroll/scrollToElement.ts +9 -7
  604. package/lib/cjs/Application/events/createOnPageLoad/index.js.map +0 -1
  605. package/lib/cjs/Application/events/createOnPageLoad/types.js.map +0 -1
  606. package/lib/cjs/Application/events/createViewport/index.js.map +0 -1
  607. package/lib/cjs/Application/events/createViewport/types.js.map +0 -1
  608. package/lib/cjs/Application/index.js +0 -222
  609. package/lib/cjs/Application/index.js.map +0 -1
  610. package/lib/cjs/components/BaseTimeline/index.js +0 -125
  611. package/lib/cjs/components/BaseTimeline/index.js.map +0 -1
  612. package/lib/cjs/components/BaseTimeline/types.js.map +0 -1
  613. package/lib/cjs/components/SmoothScroll/index.js.map +0 -1
  614. package/lib/cjs/components/SmoothScroll/types.js.map +0 -1
  615. package/lib/cjs/components/SmoothScrollDragPlugin/index.js.map +0 -1
  616. package/lib/cjs/components/SmoothScrollDragPlugin/types.js.map +0 -1
  617. package/lib/cjs/components/SmoothScrollKeyboardPlugin/index.js.map +0 -1
  618. package/lib/cjs/components/SmoothScrollKeyboardPlugin/types.js +0 -3
  619. package/lib/cjs/components/SmoothScrollKeyboardPlugin/types.js.map +0 -1
  620. package/lib/cjs/utils/internal/fetchWebpSupport.js.map +0 -1
  621. package/lib/cjs/utils/internal/getDeviceInfo.js.map +0 -1
  622. package/lib/cjs/vevet.js +0 -6
  623. package/lib/cjs/vevet.js.map +0 -1
  624. package/lib/esm/Application/events/createOnPageLoad/index.js.map +0 -1
  625. package/lib/esm/Application/events/createOnPageLoad/types.js.map +0 -1
  626. package/lib/esm/Application/events/createViewport/index.js.map +0 -1
  627. package/lib/esm/Application/events/createViewport/types.js.map +0 -1
  628. package/lib/esm/Application/index.js +0 -134
  629. package/lib/esm/Application/index.js.map +0 -1
  630. package/lib/esm/components/BaseTimeline/index.js +0 -75
  631. package/lib/esm/components/BaseTimeline/index.js.map +0 -1
  632. package/lib/esm/components/BaseTimeline/types.js.map +0 -1
  633. package/lib/esm/components/SmoothScroll/index.js.map +0 -1
  634. package/lib/esm/components/SmoothScroll/types.js.map +0 -1
  635. package/lib/esm/components/SmoothScrollDragPlugin/index.js.map +0 -1
  636. package/lib/esm/components/SmoothScrollDragPlugin/types.js.map +0 -1
  637. package/lib/esm/components/SmoothScrollKeyboardPlugin/index.js.map +0 -1
  638. package/lib/esm/components/SmoothScrollKeyboardPlugin/types.js +0 -2
  639. package/lib/esm/components/SmoothScrollKeyboardPlugin/types.js.map +0 -1
  640. package/lib/esm/utils/internal/fetchWebpSupport.js.map +0 -1
  641. package/lib/esm/utils/internal/getDeviceInfo.js.map +0 -1
  642. package/lib/esm/vevet.js +0 -3
  643. package/lib/esm/vevet.js.map +0 -1
  644. package/lib/styles/globals/index.scss +0 -18
  645. package/lib/types/Application/events/createOnPageLoad/index.d.ts +0 -5
  646. package/lib/types/Application/events/createOnPageLoad/index.d.ts.map +0 -1
  647. package/lib/types/Application/events/createOnPageLoad/types.d.ts +0 -5
  648. package/lib/types/Application/events/createOnPageLoad/types.d.ts.map +0 -1
  649. package/lib/types/Application/events/createViewport/index.d.ts +0 -20
  650. package/lib/types/Application/events/createViewport/index.d.ts.map +0 -1
  651. package/lib/types/Application/events/createViewport/types.d.ts +0 -52
  652. package/lib/types/Application/events/createViewport/types.d.ts.map +0 -1
  653. package/lib/types/Application/index.d.ts +0 -89
  654. package/lib/types/Application/index.d.ts.map +0 -1
  655. package/lib/types/Application/types.d.ts +0 -41
  656. package/lib/types/Application/types.d.ts.map +0 -1
  657. package/lib/types/components/BaseTimeline/index.d.ts +0 -40
  658. package/lib/types/components/BaseTimeline/index.d.ts.map +0 -1
  659. package/lib/types/components/BaseTimeline/types.d.ts +0 -34
  660. package/lib/types/components/BaseTimeline/types.d.ts.map +0 -1
  661. package/lib/types/components/SmoothScroll/index.d.ts.map +0 -1
  662. package/lib/types/components/SmoothScroll/types.d.ts +0 -110
  663. package/lib/types/components/SmoothScroll/types.d.ts.map +0 -1
  664. package/lib/types/components/SmoothScrollDragPlugin/index.d.ts +0 -50
  665. package/lib/types/components/SmoothScrollDragPlugin/index.d.ts.map +0 -1
  666. package/lib/types/components/SmoothScrollDragPlugin/types.d.ts +0 -39
  667. package/lib/types/components/SmoothScrollDragPlugin/types.d.ts.map +0 -1
  668. package/lib/types/components/SmoothScrollKeyboardPlugin/index.d.ts +0 -31
  669. package/lib/types/components/SmoothScrollKeyboardPlugin/index.d.ts.map +0 -1
  670. package/lib/types/components/SmoothScrollKeyboardPlugin/types.d.ts +0 -12
  671. package/lib/types/utils/internal/fetchWebpSupport.d.ts +0 -3
  672. package/lib/types/utils/internal/fetchWebpSupport.d.ts.map +0 -1
  673. package/lib/types/utils/internal/getDeviceInfo.d.ts.map +0 -1
  674. package/lib/types/vevet.d.ts +0 -3
  675. package/lib/types/vevet.d.ts.map +0 -1
  676. package/src/Application/events/createOnPageLoad/types.ts +0 -5
  677. package/src/Application/events/createViewport/types.ts +0 -55
  678. package/src/Application/index.ts +0 -204
  679. package/src/Application/types.ts +0 -41
  680. package/src/components/BaseTimeline/index.ts +0 -123
  681. package/src/components/BaseTimeline/stories/Basic.tsx +0 -65
  682. package/src/components/BaseTimeline/stories/Nested.tsx +0 -108
  683. package/src/components/BaseTimeline/stories/index.stories.tsx +0 -16
  684. package/src/components/BaseTimeline/types.ts +0 -36
  685. package/src/components/SmoothScroll/types.ts +0 -119
  686. package/src/components/SmoothScrollDragPlugin/types.ts +0 -40
  687. package/src/components/Timeline/stories/Nested.tsx +0 -135
  688. package/src/styles/globals/index.scss +0 -18
  689. package/src/vevet.ts +0 -4
  690. /package/lib/cjs/{Application → Vevet}/events/createOnPageLoad/types.js +0 -0
  691. /package/lib/cjs/{Application → Vevet}/events/createViewport/types.js +0 -0
  692. /package/lib/cjs/{Application → Vevet}/types.js +0 -0
  693. /package/lib/cjs/{utils/internal → Vevet/utils}/getDeviceInfo.js +0 -0
  694. /package/lib/cjs/components/{BaseTimeline → CustomScroll}/types.js +0 -0
  695. /package/lib/cjs/components/{SmoothScroll → CustomScrollDragPlugin}/types.js +0 -0
  696. /package/lib/cjs/components/{SmoothScrollDragPlugin → CustomScrollKeyboardPlugin}/types.js +0 -0
  697. /package/lib/esm/{Application → Vevet}/events/createOnPageLoad/types.js +0 -0
  698. /package/lib/esm/{Application → Vevet}/events/createViewport/types.js +0 -0
  699. /package/lib/esm/{Application → Vevet}/types.js +0 -0
  700. /package/lib/esm/{utils/internal → Vevet/utils}/getDeviceInfo.js +0 -0
  701. /package/lib/esm/components/{BaseTimeline → CustomScroll}/types.js +0 -0
  702. /package/lib/esm/components/{SmoothScroll → CustomScrollDragPlugin}/types.js +0 -0
  703. /package/lib/esm/components/{SmoothScrollDragPlugin → CustomScrollKeyboardPlugin}/types.js +0 -0
  704. /package/lib/types/{utils/internal → Vevet/utils}/getDeviceInfo.d.ts +0 -0
  705. /package/lib/types/components/{SmoothScroll → CustomScroll}/AnimatonFrame.d.ts +0 -0
  706. /package/src/{Application → Vevet}/events/.eslintrc +0 -0
  707. /package/src/{Application → Vevet}/events/createViewport/stories/index.stories.tsx +0 -0
  708. /package/src/{Application → Vevet}/stories/index.stories.tsx +0 -0
  709. /package/src/{utils/internal → Vevet/utils}/fetchWebpSupport.ts +0 -0
  710. /package/src/{utils/internal → Vevet/utils}/getDeviceInfo.ts +0 -0
@@ -1,102 +1,76 @@
1
1
  import { getApp } from '../../utils/internal/getApp';
2
2
  /**
3
- * A class for creating mutable properties that can change on window resize. <br><br>
4
- *
5
- * There are two ways to change properties:
6
- * - To set a resize-listener on window (or use {@linkcode Viewport}).
7
- * When the window is resized, change the properties with the help of
8
- * {@linkcode MutableProps.changeProps}
9
- *
10
- * - The second way is to use the MutableProps and add responsive properties
11
- * with help of {@linkcode MutableProps.addResponsiveProps}.
3
+ * A class for managing mutable properties that can change based on window size (responsive design).
4
+ * This allows certain properties to update dynamically when the window is resized or in response to manual changes.
12
5
  *
13
6
  * @example
14
7
  *
15
8
  * interface IStatic {
16
9
  * static: string;
17
10
  * }
18
-
11
+ *
19
12
  * interface IChangeable {
20
13
  * changeable: string;
21
14
  * }
22
-
15
+ *
23
16
  * const props = new MutableProps<IStatic, IChangeable>({
24
17
  * static: '',
25
18
  * changeable: 'something',
26
19
  * });
27
-
20
+ *
28
21
  * props.addResponsiveProps({
29
22
  * breakpoint: 'viewport_phone',
30
23
  * settings: {
31
24
  * changeable: 'phone',
32
25
  * },
33
26
  * });
34
-
27
+ *
35
28
  * props.changeProps({ changeable: 'changed' });
36
29
  */
37
30
  export class MutableProps {
38
31
  /**
39
- * Get current properties
40
- */
41
- get props() {
42
- return this._props;
43
- }
44
- /**
45
- * @example
32
+ * Initializes the `MutableProps` instance with static and changeable properties,
33
+ * and sets up a mutation callback to be called when properties change.
46
34
  *
47
- * const static = {
48
- * myProp: true,
49
- * };
50
- *
51
- * const responsive = [
52
- * {
53
- * breakpoint: 'm',
54
- * settings: {
55
- * myProp: false
56
- * }
57
- * }
58
- * ];
59
- *
60
- * const props = new MutableProps(static, responsive);
35
+ * @param initProps - Initial properties, including both static and changeable properties.
36
+ * @param _onMutate - Callback function triggered whenever the properties change.
37
+ * @param _name - The name used to identify the set of responsive properties.
61
38
  */
62
- constructor(
63
- /**
64
- * The properties that were set while initialization.
65
- * These properties will nevet change.
66
- */
67
- _initProps,
68
- /**
69
- * A callback that is launched when properties are changed
70
- */
71
- _onMutate = () => { },
72
- /**
73
- * Name of the responsive properties.
74
- */
75
- _name = 'Responsive Props') {
76
- this._initProps = _initProps;
39
+ constructor(initProps, _onMutate = () => { }, _name = 'Responsive Props') {
77
40
  this._onMutate = _onMutate;
78
41
  this._name = _name;
79
42
  /**
80
- * A set of responsive rules
43
+ * A set of responsive rules defining how properties should change based on viewport size or device type.
44
+ * Each rule is defined by a breakpoint and corresponding property settings.
81
45
  */
82
46
  this._responsiveRules = [];
83
- this._refProps = Object.assign({}, _initProps);
84
- this._props = Object.assign({}, _initProps);
47
+ this._refProps = Object.assign({}, initProps);
48
+ this._props = Object.assign({}, initProps);
85
49
  this._activeBreakpoints = [];
86
50
  }
87
51
  /**
88
- * Add responsive rules
52
+ * Retrieves the current properties.
53
+ * These may change either due to responsive rules or through manual updates.
54
+ */
55
+ get props() {
56
+ return this._props;
57
+ }
58
+ /**
59
+ * Adds responsive rules that define how the properties should change based on viewport breakpoints.
60
+ *
61
+ * @param rules - Responsive rules specifying breakpoints and corresponding property settings.
89
62
  */
90
63
  addResponsiveProps(rules) {
91
64
  this._responsiveRules.push(rules);
92
65
  this._responseProps();
93
- if (typeof this._viewportCallback !== 'undefined') {
66
+ if (this._viewportCallback) {
94
67
  return;
95
68
  }
96
69
  this._viewportCallback = getApp().viewport.callbacks.add('width', this._responseProps.bind(this), { name: this._name });
97
70
  }
98
71
  /**
99
- * Change properties according to the "responsive" settings
72
+ * Handles updating the properties based on the current viewport size.
73
+ * It checks all responsive rules and applies the appropriate settings for active breakpoints.
100
74
  */
101
75
  _responseProps() {
102
76
  const app = getApp();
@@ -105,8 +79,7 @@ export class MutableProps {
105
79
  const statProp = Object.assign({}, this._refProps);
106
80
  const prevActiveBreakpointsString = [...this._activeBreakpoints].join('_');
107
81
  this._activeBreakpoints = [];
108
- // go through all breakpoints
109
- // and check if a proper breakpoint exists
82
+ // Evaluate each responsive rule to see if it should be applied
110
83
  this._responsiveRules.forEach(({ settings, breakpoint }) => {
111
84
  if (typeof breakpoint === 'number') {
112
85
  if (viewport.width <= breakpoint) {
@@ -142,13 +115,15 @@ export class MutableProps {
142
115
  // otherwise, change the properties
143
116
  this._props = Object.assign(Object.assign({}, this._props), newProps);
144
117
  }
145
- // callback
118
+ // Call the mutation callback if properties have changed
146
119
  if (isPropsChanged) {
147
120
  this._onMutate();
148
121
  }
149
122
  }
150
123
  /**
151
- * This method allows you to change the properties manually.
124
+ * Manually changes the properties. The updated properties persist and trigger the mutation callback.
125
+ *
126
+ * @param props - A partial set of changeable properties to be updated.
152
127
  */
153
128
  changeProps(props) {
154
129
  this._props = Object.assign(Object.assign({}, this._props), props);
@@ -156,7 +131,7 @@ export class MutableProps {
156
131
  this._onMutate();
157
132
  }
158
133
  /**
159
- * Destroy the responsive properties.
134
+ * Cleans up and destroys the responsive properties.
160
135
  */
161
136
  destroy() {
162
137
  if (this._viewportCallback) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/MutableProps/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/MutableProps/index.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,36 @@
1
1
  import { Module } from '../Module';
2
2
  /**
3
- * A class for Plugins.
3
+ * A base abstract class for Plugins that extend the functionality of components.
4
+ * A plugin is designed to attach to a component and modify or enhance its behavior.
5
+ * It inherits from the {@link Module} class and adds functionality to work with a component.
4
6
  */
5
7
  export class Plugin extends Module {
8
+ /**
9
+ * Constructs the plugin.
10
+ *
11
+ * @param initialProps - Initial static and changeable properties for the plugin.
12
+ */
6
13
  constructor(initialProps) {
7
14
  super(initialProps, false);
8
15
  }
16
+ /**
17
+ * Retrieves the component to which this plugin is attached.
18
+ */
9
19
  get component() {
10
20
  return this._component;
11
21
  }
22
+ /**
23
+ * Sets the component for this plugin. This method is called by the parent component when the plugin is added.
24
+ */
12
25
  set component(value) {
13
26
  this._component = value;
14
27
  }
28
+ /**
29
+ * Initializes the plugin and ensures it is properly associated with a component.
30
+ * If the component is not set before calling `init`, it throws an error.
31
+ *
32
+ * @throws {Error} If `component` is not set.
33
+ */
15
34
  init() {
16
35
  if (!this.component) {
17
36
  throw new Error('Component is unknown. Be sure that `plugin.component` is non-nullable.');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/Plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKnC;;GAEG;AACH,MAAM,OAAgB,MAKpB,SAAQ,MAAoD;IAC5D,YAAY,YAA4C;QACtD,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAID,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,SAAS,CAAC,KAAK;QACjB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAEM,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;SACH;QAED,KAAK,CAAC,IAAI,EAAE,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/Plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKnC;;;;GAIG;AACH,MAAM,OAAgB,MAKpB,SAAQ,MAAoD;IAC5D;;;;OAIG;IACH,YAAY,YAA4C;QACtD,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAQD;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,SAAS,CAAC,KAAK;QACjB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACI,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;SACH;QAED,KAAK,CAAC,IAAI,EAAE,CAAC;IACf,CAAC;CACF"}
@@ -1,20 +1,22 @@
1
1
  import { Component as ComponentClass } from '../../base/Component';
2
2
  /**
3
- * Launch an animation frame with a certain FPS
3
+ * Launches an animation frame with a specified FPS, allowing
4
+ * control over playback and FPS calculations in real-time.
4
5
  */
5
6
  export class AnimationFrame extends ComponentClass {
6
7
  _getDefaultProps() {
7
8
  return Object.assign(Object.assign({}, super._getDefaultProps()), { fps: 'auto', autoFpsFrames: 10, isEnabled: false });
8
9
  }
10
+ /** Returns the current playback state of the animation frame */
9
11
  get isPlaying() {
10
12
  return this._isPlaying;
11
13
  }
12
- /** Computed real time fps */
14
+ /** Returns the current computed FPS, which may differ from the set FPS */
13
15
  get computedFPS() {
14
16
  return this._computedFPS;
15
17
  }
16
- /** Coefficient of standard fps (60) divided by computed fps */
17
- get easeMultiplier() {
18
+ /** Coefficient that scales based on a target of 60 FPS compared to the computed FPS */
19
+ get fpsMultiplier() {
18
20
  return 60 / this.computedFPS;
19
21
  }
20
22
  constructor(initialProps, canInit = true) {
@@ -33,7 +35,7 @@ export class AnimationFrame extends ComponentClass {
33
35
  _init() {
34
36
  super._init();
35
37
  if (this.props.isEnabled) {
36
- this.play();
38
+ this._play();
37
39
  }
38
40
  }
39
41
  _onPropsMutate() {
@@ -48,7 +50,7 @@ export class AnimationFrame extends ComponentClass {
48
50
  this._pause();
49
51
  }
50
52
  }
51
- /** Play animation */
53
+ /** Begins the animation loop */
52
54
  play() {
53
55
  if (this.isDestroyed) {
54
56
  return;
@@ -58,7 +60,7 @@ export class AnimationFrame extends ComponentClass {
58
60
  }
59
61
  this.changeProps({ isEnabled: true });
60
62
  }
61
- /** Play animation */
63
+ /** Internal method to start the animation loop */
62
64
  _play() {
63
65
  if (this.isPlaying) {
64
66
  return;
@@ -68,14 +70,14 @@ export class AnimationFrame extends ComponentClass {
68
70
  this.callbacks.tbt('toggle', undefined);
69
71
  this._raf = window.requestAnimationFrame(this._animate.bind(this));
70
72
  }
71
- /** Pause animation */
73
+ /** Pauses the animation loop */
72
74
  pause() {
73
75
  if (!this.props.isEnabled) {
74
76
  return;
75
77
  }
76
78
  this.changeProps({ isEnabled: false });
77
79
  }
78
- /** Pause animation */
80
+ /** Internal method to pause the animation loop */
79
81
  _pause() {
80
82
  if (!this.isPlaying) {
81
83
  return;
@@ -88,38 +90,30 @@ export class AnimationFrame extends ComponentClass {
88
90
  this.callbacks.tbt('pause', undefined);
89
91
  this.callbacks.tbt('toggle', undefined);
90
92
  }
91
- /** Launch the animation frame */
93
+ /** Handles each frame of the animation, calculates FPS, and triggers callbacks */
92
94
  _animate() {
93
95
  if (!this._isPlaying) {
94
96
  return;
95
97
  }
96
98
  this._raf = window.requestAnimationFrame(this._animate.bind(this));
97
- // update time
98
99
  const startTime = Date.now();
99
100
  if (this._rafFirst === null) {
100
101
  this._rafFirst = startTime;
101
102
  }
102
- // calculate frame index
103
103
  const minFrameDuration = this.props.fps === 'auto' ? 1 : 1000 / this.props.fps;
104
104
  const newFrameIndex = Math.floor((startTime - this._rafFirst) / minFrameDuration);
105
- // break if frame index the same
106
105
  if (newFrameIndex <= this._rafIndex) {
107
106
  return;
108
107
  }
109
- // update frame index
110
108
  this._rafIndex = newFrameIndex;
111
- // compute fps
112
109
  this._computeFPS(startTime);
113
- // launch callbacks
114
110
  this.callbacks.tbt('frame', undefined);
115
- // update vars
116
111
  this._rafLast = startTime;
117
112
  }
118
- /** Compute real-time FPS */
113
+ /** Computes the real-time FPS based on the duration between frames */
119
114
  _computeFPS(startTime) {
120
115
  var _a;
121
116
  const lastFrameDuration = startTime - ((_a = this._rafLast) !== null && _a !== void 0 ? _a : startTime);
122
- // skip frames that seem not real
123
117
  if (lastFrameDuration <= 0 || lastFrameDuration > 250) {
124
118
  return;
125
119
  }
@@ -132,10 +126,9 @@ export class AnimationFrame extends ComponentClass {
132
126
  const computedFPS = Math.floor(1000 / approximateFrameDuration);
133
127
  const normalizedFPS = Math.round(computedFPS / 10) * 10;
134
128
  this._computedFPS = normalizedFPS;
135
- // clear durations
136
129
  this._durations = [];
137
130
  }
138
- /** Destroy the animation frame */
131
+ /** Destroys the animation frame and stops the loop */
139
132
  _destroy() {
140
133
  this.pause();
141
134
  super._destroy();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/AnimationFrame/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/AnimationFrame/index.ts"],"names":[],"mappings":"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"}
@@ -2,50 +2,53 @@ import { Component as ComponentClass } from '../../base/Component';
2
2
  import { onResize } from '../../utils/listeners/onResize';
3
3
  import { getApp } from '../../utils/internal/getApp';
4
4
  /**
5
- * Makes working with canvas easier.
6
- * It creates an HTML5 Canvas element and its 2d context and can
7
- * implement automatic resize.
5
+ * A class that simplifies working with an HTML5 Canvas element and its 2D context.
6
+ * It can handle automatic resizing and provides helper methods for rendering and managing canvas properties.
8
7
  */
9
8
  export class Ctx2D extends ComponentClass {
9
+ /** @inheritDoc */
10
10
  _getDefaultProps() {
11
11
  return Object.assign(Object.assign({}, super._getDefaultProps()), { container: false, shouldAppend: true, hasInitialResize: true, hasResize: false, viewportTarget: 'any', resizeDebounce: 0, width: 'auto', height: 'auto', dpr: 'auto' });
12
12
  }
13
- /** The parent element of the canvas */
13
+ /** The parent element of the canvas used to calculate size */
14
14
  get container() {
15
15
  return this.props.container;
16
16
  }
17
- /** The Canvas element itself */
17
+ /** Returns the current canvas element */
18
18
  get canvas() {
19
19
  return this._canvas;
20
20
  }
21
- /** 2D Context */
21
+ /** Returns the 2D rendering context */
22
22
  get ctx() {
23
23
  return this._ctx;
24
24
  }
25
- /* Canvas width (with DPR) */
25
+ /** Returns the current width of the canvas (with DPR applied) */
26
26
  get width() {
27
27
  return this._width;
28
28
  }
29
- /* Canvas width (without DPR) */
29
+ /** Returns the width of the canvas without the device pixel ratio (DPR) */
30
30
  get clientWidth() {
31
31
  return this.width / this.dpr;
32
32
  }
33
- /* Canvas height (with DPR) */
33
+ /** Returns the current height of the canvas (with DPR applied) */
34
34
  get height() {
35
35
  return this._height;
36
36
  }
37
- /* Canvas height (without DPR) */
37
+ /** Returns the height of the canvas without the device pixel ratio (DPR) */
38
38
  get clientHeight() {
39
39
  return this.height / this.dpr;
40
40
  }
41
- /** Device pixel ratio */
41
+ /** Returns the current device pixel ratio (DPR) */
42
42
  get dpr() {
43
43
  return this._dpr;
44
44
  }
45
- /** If content may be successfully rendered */
45
+ /** Checks if the canvas is ready to be rendered */
46
46
  get canRender() {
47
47
  return this.width > 0 && this.height > 0;
48
48
  }
49
+ /**
50
+ * Constructor for the Ctx2D class.
51
+ */
49
52
  constructor(initialProps, canInit = true) {
50
53
  super(initialProps, false);
51
54
  const { shouldAppend, container } = this.props;
@@ -53,33 +56,37 @@ export class Ctx2D extends ComponentClass {
53
56
  this._width = 0;
54
57
  this._height = 0;
55
58
  this._dpr = 1;
56
- // create canvas
59
+ // create canvas element
57
60
  this._canvas = document.createElement('canvas');
58
61
  this._canvas.style.position = 'absolute';
59
62
  this._canvas.style.top = '0';
60
63
  this._canvas.style.left = '0';
61
64
  this._canvas.style.width = '100%';
62
65
  this._canvas.style.height = '100%';
63
- // append canvas
66
+ // append canvas to container if required
64
67
  if (shouldAppend && container instanceof Element) {
65
68
  container.append(this._canvas);
66
69
  this.addDestroyableAction(() => this.canvas.remove());
67
70
  }
68
- // create context
71
+ // create 2D context
69
72
  this._ctx = this._canvas.getContext('2d');
70
73
  if (canInit) {
71
74
  this.init();
72
75
  }
73
76
  }
77
+ /** @inheritDoc */
74
78
  _onPropsMutate() {
75
79
  super._onPropsMutate();
76
80
  this.resize();
77
81
  }
82
+ /** @inheritDoc */
78
83
  _init() {
79
84
  super._init();
80
85
  this._setResize();
81
86
  }
82
- /** Set resize events */
87
+ /**
88
+ * Sets up the resize event listener for the canvas, if enabled.
89
+ */
83
90
  _setResize() {
84
91
  const { hasInitialResize, hasResize, viewportTarget, resizeDebounce } = this.props;
85
92
  if (!hasResize) {
@@ -96,21 +103,23 @@ export class Ctx2D extends ComponentClass {
96
103
  resizeHandler.resize();
97
104
  }
98
105
  }
99
- /** Resize the canvas */
106
+ /**
107
+ * Resizes the canvas based on the container or viewport size and applies the device pixel ratio (DPR).
108
+ */
100
109
  resize() {
101
110
  const { props, canvas } = this;
102
111
  if (!canvas) {
103
112
  return;
104
113
  }
105
114
  const { viewport } = getApp();
106
- // calculate dpr
115
+ // calculate DPR
107
116
  if (typeof props.dpr === 'number') {
108
117
  this._dpr = props.dpr;
109
118
  }
110
119
  else {
111
120
  this._dpr = viewport.dpr;
112
121
  }
113
- // calculate new width & height
122
+ // calculate new width and height
114
123
  let newWidth = 0;
115
124
  let newHeight = 0;
116
125
  if (typeof props.width === 'number' && typeof props.height === 'number') {
@@ -125,22 +134,28 @@ export class Ctx2D extends ComponentClass {
125
134
  newWidth = viewport.width;
126
135
  newHeight = viewport.height;
127
136
  }
128
- // apply dpr
137
+ // apply DPR
129
138
  newWidth *= this._dpr;
130
139
  newHeight *= this._dpr;
131
- // update sizes
140
+ // update canvas size
132
141
  this._width = newWidth;
133
142
  this._height = newHeight;
134
- // apply sizes
135
143
  canvas.width = newWidth;
136
144
  canvas.height = newHeight;
137
- // launch callbacks
145
+ // handle resize event and trigger callbacks
138
146
  this._handleResize();
139
147
  this.callbacks.tbt('resize', undefined);
140
148
  }
141
- /** Method called on resize */
149
+ /**
150
+ * A method called after the canvas has been resized.
151
+ * This can be extended or customized in subclasses.
152
+ */
142
153
  _handleResize() { }
143
- /** Render the scene if possible */
154
+ /**
155
+ * Renders content on the canvas if it is ready.
156
+ *
157
+ * @param renderProp - A function that performs the actual rendering on the canvas.
158
+ */
144
159
  render(renderProp) {
145
160
  if (!this.canRender) {
146
161
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Ctx2D/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Ctx2D/index.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,31 @@
1
1
  import { getPos } from 'get-image-pos';
2
2
  import { Ctx2D } from '../Ctx2D';
3
3
  /**
4
- * The class allows you to prerender media for further use with reduced payloads.
4
+ * The `Ctx2DPrerender` class allows pre-rendering of media (such as images or video) onto a canvas.
5
+ * This can be useful for reducing payloads by preparing the media for further use in a more optimized form.
5
6
  */
6
7
  export class Ctx2DPrerender extends Ctx2D {
7
8
  _getDefaultProps() {
8
9
  return Object.assign(Object.assign({}, super._getDefaultProps()), { media: false, posRule: 'cover' });
9
10
  }
10
- /** Method called on resize */
11
+ /**
12
+ * Handles the canvas resize event and triggers the prerender process.
13
+ * This method is called when the canvas size changes and recalculates the
14
+ * rendering dimensions.
15
+ */
11
16
  _handleResize() {
12
17
  super._handleResize();
18
+ // Trigger rendering after resize
13
19
  this.render((props) => this._prerender(props));
14
20
  }
15
- /** Prerender the scene */
21
+ /**
22
+ * Prerenders the media onto the canvas using the specified positioning rule.
23
+ * Clears the canvas, calculates the position and dimensions for the media,
24
+ * and then draws it on the canvas.
25
+ */
16
26
  _prerender({ width, height, ctx }) {
17
27
  const { media, posRule } = this.props;
18
- // get source info
28
+ // Determine the media source and its dimensions
19
29
  let source;
20
30
  let sourceWidth;
21
31
  let sourceHeight;
@@ -27,7 +37,7 @@ export class Ctx2DPrerender extends Ctx2D {
27
37
  else {
28
38
  source = media;
29
39
  }
30
- // get media sizes
40
+ // Calculate media position and size based on the posRule
31
41
  const size = getPos({
32
42
  source,
33
43
  sourceWidth,
@@ -37,10 +47,10 @@ export class Ctx2DPrerender extends Ctx2D {
37
47
  width,
38
48
  height,
39
49
  });
40
- // render media
50
+ // Clear the canvas and draw the media with the calculated size
41
51
  ctx.clearRect(0, 0, width, height);
42
52
  ctx.drawImage(source, size.x, size.y, size.width, size.height);
43
- // launch callbacks on prerender
53
+ // Trigger prerender callback
44
54
  this.callbacks.tbt('prerender', undefined);
45
55
  }
46
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Ctx2DPrerender/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,KAAK,EAAU,MAAM,UAAU,CAAC;AAKzC;;GAEG;AACH,MAAM,OAAO,cAOX,SAAQ,KAAmD;IACjD,gBAAgB;QACxB,uCACK,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,IAChB;IACJ,CAAC;IAED,8BAA8B;IACpB,aAAa;QACrB,KAAK,CAAC,aAAa,EAAE,CAAC;QAEtB,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,0BAA0B;IAChB,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAuB;QAC9D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAEtC,kBAAkB;QAClB,IAAI,MAA0B,CAAC;QAC/B,IAAI,WAA+B,CAAC;QACpC,IAAI,YAAgC,CAAC;QACrC,IAAI,KAAK,YAAY,KAAK,EAAE;YAC1B,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACtB,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;SAC7B;aAAM;YACL,MAAM,GAAG,KAAY,CAAC;SACvB;QAED,kBAAkB;QAClB,MAAM,IAAI,GAAG,MAAM,CAAC;YAClB,MAAM;YACN,WAAW;YACX,YAAY;YACZ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC;YACR,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QAEH,eAAe;QACf,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACnC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE/D,gCAAgC;QAChC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Ctx2DPrerender/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,KAAK,EAAU,MAAM,UAAU,CAAC;AAKzC;;;GAGG;AACH,MAAM,OAAO,cAOX,SAAQ,KAAmD;IACjD,gBAAgB;QACxB,uCACK,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,IAChB;IACJ,CAAC;IAED;;;;OAIG;IACO,aAAa;QACrB,KAAK,CAAC,aAAa,EAAE,CAAC;QAEtB,iCAAiC;QACjC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACO,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAuB;QAC9D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAEtC,gDAAgD;QAChD,IAAI,MAA0B,CAAC;QAC/B,IAAI,WAA+B,CAAC;QACpC,IAAI,YAAgC,CAAC;QAErC,IAAI,KAAK,YAAY,KAAK,EAAE;YAC1B,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YACtB,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;SAC7B;aAAM;YACL,MAAM,GAAG,KAAY,CAAC;SACvB;QAED,yDAAyD;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC;YAClB,MAAM;YACN,WAAW;YACX,YAAY;YACZ,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC;YACR,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QAEH,+DAA+D;QAC/D,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACnC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAE/D,6BAA6B;QAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;CACF"}