@tsparticles/engine 3.0.0-alpha.1 → 3.0.0-beta.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 (329) hide show
  1. package/README.md +244 -188
  2. package/browser/Core/Canvas.js +271 -241
  3. package/browser/Core/Container.js +90 -106
  4. package/browser/Core/Engine.js +271 -0
  5. package/browser/Core/Particle.js +158 -165
  6. package/browser/Core/Particles.js +148 -143
  7. package/browser/Core/Retina.js +15 -13
  8. package/browser/Core/Utils/Circle.js +10 -6
  9. package/browser/Core/Utils/Constants.js +4 -3
  10. package/browser/Core/Utils/EventListeners.js +258 -234
  11. package/browser/Core/Utils/InteractionManager.js +6 -16
  12. package/browser/Core/Utils/QuadTree.js +14 -20
  13. package/browser/Core/Utils/Vector3d.js +17 -9
  14. package/browser/Options/Classes/AnimatableColor.js +2 -1
  15. package/browser/Options/Classes/AnimationOptions.js +4 -3
  16. package/browser/Options/Classes/BackgroundMask/BackgroundMask.js +2 -1
  17. package/browser/Options/Classes/ColorAnimation.js +4 -0
  18. package/browser/Options/Classes/Interactivity/Events/DivEvent.js +0 -24
  19. package/browser/Options/Classes/Interactivity/Events/Events.js +5 -24
  20. package/browser/Options/Classes/Interactivity/Interactivity.js +1 -8
  21. package/browser/Options/Classes/Interactivity/Modes/Modes.js +11 -8
  22. package/browser/Options/Classes/ManualParticle.js +5 -6
  23. package/browser/Options/Classes/Options.js +19 -39
  24. package/browser/Options/Classes/OptionsColor.js +3 -2
  25. package/browser/Options/Classes/Particles/Collisions/Collisions.js +5 -0
  26. package/browser/Options/Classes/Particles/Move/Move.js +11 -41
  27. package/browser/Options/Classes/Particles/Move/MoveAttract.js +9 -20
  28. package/browser/Options/Classes/Particles/Move/MoveTrail.js +2 -8
  29. package/browser/Options/Classes/Particles/Move/OutModes.js +4 -5
  30. package/browser/Options/Classes/Particles/Move/Spin.js +3 -1
  31. package/browser/Options/Classes/Particles/Number/ParticlesDensity.js +2 -21
  32. package/browser/Options/Classes/Particles/Number/ParticlesNumber.js +2 -9
  33. package/browser/Options/Classes/Particles/Opacity/Opacity.js +11 -7
  34. package/browser/Options/Classes/Particles/Opacity/OpacityAnimation.js +0 -9
  35. package/browser/Options/Classes/Particles/ParticlesOptions.js +6 -11
  36. package/browser/Options/Classes/Particles/Shape/Shape.js +9 -10
  37. package/browser/Options/Classes/Particles/Size/Size.js +11 -7
  38. package/browser/Options/Classes/Particles/Size/SizeAnimation.js +0 -9
  39. package/browser/Options/Classes/ValueWithRandom.js +4 -17
  40. package/browser/Utils/CanvasUtils.js +18 -54
  41. package/browser/Utils/ColorUtils.js +17 -19
  42. package/browser/Utils/EventDispatcher.js +7 -6
  43. package/browser/Utils/HslColorManager.js +2 -4
  44. package/browser/Utils/NumberUtils.js +41 -45
  45. package/browser/Utils/RgbColorManager.js +2 -4
  46. package/browser/Utils/Utils.js +133 -62
  47. package/browser/bundle.js +4 -97
  48. package/browser/export-types.js +97 -0
  49. package/browser/exports.js +89 -0
  50. package/browser/index.js +8 -199
  51. package/browser/init.js +12 -0
  52. package/cjs/Core/Canvas.js +269 -239
  53. package/cjs/Core/Container.js +90 -106
  54. package/cjs/Core/Engine.js +275 -0
  55. package/cjs/Core/Particle.js +157 -164
  56. package/cjs/Core/Particles.js +148 -143
  57. package/cjs/Core/Retina.js +15 -13
  58. package/cjs/Core/Utils/Circle.js +10 -6
  59. package/cjs/Core/Utils/Constants.js +5 -4
  60. package/cjs/Core/Utils/EventListeners.js +257 -233
  61. package/cjs/Core/Utils/InteractionManager.js +6 -16
  62. package/cjs/Core/Utils/QuadTree.js +14 -20
  63. package/cjs/Core/Utils/Vector3d.js +17 -9
  64. package/cjs/Options/Classes/AnimatableColor.js +2 -1
  65. package/cjs/Options/Classes/AnimationOptions.js +4 -3
  66. package/cjs/Options/Classes/BackgroundMask/BackgroundMask.js +2 -1
  67. package/cjs/Options/Classes/ColorAnimation.js +4 -0
  68. package/cjs/Options/Classes/Interactivity/Events/DivEvent.js +0 -24
  69. package/cjs/Options/Classes/Interactivity/Events/Events.js +5 -24
  70. package/cjs/Options/Classes/Interactivity/Interactivity.js +1 -8
  71. package/cjs/Options/Classes/Interactivity/Modes/Modes.js +11 -8
  72. package/cjs/Options/Classes/ManualParticle.js +5 -6
  73. package/cjs/Options/Classes/Options.js +18 -38
  74. package/cjs/Options/Classes/OptionsColor.js +3 -2
  75. package/cjs/Options/Classes/Particles/Collisions/Collisions.js +5 -0
  76. package/cjs/Options/Classes/Particles/Move/Move.js +11 -41
  77. package/cjs/Options/Classes/Particles/Move/MoveAttract.js +9 -20
  78. package/cjs/Options/Classes/Particles/Move/MoveTrail.js +2 -8
  79. package/cjs/Options/Classes/Particles/Move/OutModes.js +4 -5
  80. package/cjs/Options/Classes/Particles/Move/Spin.js +3 -1
  81. package/cjs/Options/Classes/Particles/Number/ParticlesDensity.js +2 -21
  82. package/cjs/Options/Classes/Particles/Number/ParticlesNumber.js +2 -9
  83. package/cjs/Options/Classes/Particles/Opacity/Opacity.js +10 -6
  84. package/cjs/Options/Classes/Particles/Opacity/OpacityAnimation.js +0 -9
  85. package/cjs/Options/Classes/Particles/ParticlesOptions.js +6 -11
  86. package/cjs/Options/Classes/Particles/Shape/Shape.js +9 -10
  87. package/cjs/Options/Classes/Particles/Size/Size.js +11 -7
  88. package/cjs/Options/Classes/Particles/Size/SizeAnimation.js +0 -9
  89. package/cjs/Options/Classes/ValueWithRandom.js +4 -17
  90. package/cjs/Utils/CanvasUtils.js +21 -58
  91. package/cjs/Utils/ColorUtils.js +16 -18
  92. package/cjs/Utils/EventDispatcher.js +7 -6
  93. package/cjs/Utils/HslColorManager.js +2 -4
  94. package/cjs/Utils/NumberUtils.js +41 -45
  95. package/cjs/Utils/RgbColorManager.js +2 -4
  96. package/cjs/Utils/Utils.js +146 -66
  97. package/cjs/bundle.js +4 -97
  98. package/cjs/export-types.js +113 -0
  99. package/cjs/exports.js +105 -0
  100. package/cjs/index.js +8 -199
  101. package/cjs/init.js +16 -0
  102. package/esm/Core/Canvas.js +271 -241
  103. package/esm/Core/Container.js +90 -106
  104. package/esm/Core/Engine.js +271 -0
  105. package/esm/Core/Particle.js +158 -165
  106. package/esm/Core/Particles.js +148 -143
  107. package/esm/Core/Retina.js +15 -13
  108. package/esm/Core/Utils/Circle.js +10 -6
  109. package/esm/Core/Utils/Constants.js +4 -3
  110. package/esm/Core/Utils/EventListeners.js +258 -234
  111. package/esm/Core/Utils/InteractionManager.js +6 -16
  112. package/esm/Core/Utils/QuadTree.js +14 -20
  113. package/esm/Core/Utils/Vector3d.js +17 -9
  114. package/esm/Options/Classes/AnimatableColor.js +2 -1
  115. package/esm/Options/Classes/AnimationOptions.js +4 -3
  116. package/esm/Options/Classes/BackgroundMask/BackgroundMask.js +2 -1
  117. package/esm/Options/Classes/ColorAnimation.js +4 -0
  118. package/esm/Options/Classes/Interactivity/Events/DivEvent.js +0 -24
  119. package/esm/Options/Classes/Interactivity/Events/Events.js +5 -24
  120. package/esm/Options/Classes/Interactivity/Interactivity.js +1 -8
  121. package/esm/Options/Classes/Interactivity/Modes/Modes.js +11 -8
  122. package/esm/Options/Classes/ManualParticle.js +5 -6
  123. package/esm/Options/Classes/Options.js +19 -39
  124. package/esm/Options/Classes/OptionsColor.js +3 -2
  125. package/esm/Options/Classes/Particles/Collisions/Collisions.js +5 -0
  126. package/esm/Options/Classes/Particles/Move/Move.js +11 -41
  127. package/esm/Options/Classes/Particles/Move/MoveAttract.js +9 -20
  128. package/esm/Options/Classes/Particles/Move/MoveTrail.js +2 -8
  129. package/esm/Options/Classes/Particles/Move/OutModes.js +4 -5
  130. package/esm/Options/Classes/Particles/Move/Spin.js +3 -1
  131. package/esm/Options/Classes/Particles/Number/ParticlesDensity.js +2 -21
  132. package/esm/Options/Classes/Particles/Number/ParticlesNumber.js +2 -9
  133. package/esm/Options/Classes/Particles/Opacity/Opacity.js +11 -7
  134. package/esm/Options/Classes/Particles/Opacity/OpacityAnimation.js +0 -9
  135. package/esm/Options/Classes/Particles/ParticlesOptions.js +6 -11
  136. package/esm/Options/Classes/Particles/Shape/Shape.js +9 -10
  137. package/esm/Options/Classes/Particles/Size/Size.js +11 -7
  138. package/esm/Options/Classes/Particles/Size/SizeAnimation.js +0 -9
  139. package/esm/Options/Classes/ValueWithRandom.js +4 -17
  140. package/esm/Utils/CanvasUtils.js +18 -54
  141. package/esm/Utils/ColorUtils.js +17 -19
  142. package/esm/Utils/EventDispatcher.js +7 -6
  143. package/esm/Utils/HslColorManager.js +2 -4
  144. package/esm/Utils/NumberUtils.js +41 -45
  145. package/esm/Utils/RgbColorManager.js +2 -4
  146. package/esm/Utils/Utils.js +133 -62
  147. package/esm/bundle.js +4 -97
  148. package/esm/export-types.js +97 -0
  149. package/esm/exports.js +89 -0
  150. package/esm/index.js +8 -199
  151. package/esm/init.js +12 -0
  152. package/package.json +17 -2
  153. package/report.html +4 -4
  154. package/scripts/install.js +90 -33
  155. package/tsparticles.engine.js +1832 -2007
  156. package/tsparticles.engine.min.js +1 -1
  157. package/tsparticles.engine.min.js.LICENSE.txt +1 -10
  158. package/types/Core/Canvas.d.ts +20 -16
  159. package/types/Core/Container.d.ts +10 -14
  160. package/types/Core/Engine.d.ts +71 -0
  161. package/types/Core/Interfaces/IContainerPlugin.d.ts +2 -0
  162. package/types/Core/Interfaces/ICoordinates.d.ts +2 -2
  163. package/types/Core/Interfaces/IDimension.d.ts +2 -2
  164. package/types/Core/Interfaces/IMovePathGenerator.d.ts +2 -1
  165. package/types/Core/Interfaces/IParticleUpdater.d.ts +0 -2
  166. package/types/Core/Interfaces/IParticleValueAnimation.d.ts +2 -0
  167. package/types/Core/Interfaces/IPlugin.d.ts +4 -3
  168. package/types/Core/Particle.d.ts +7 -7
  169. package/types/Core/Particles.d.ts +14 -11
  170. package/types/Core/Utils/Constants.d.ts +4 -3
  171. package/types/Core/Utils/EventListeners.d.ts +20 -18
  172. package/types/Core/Utils/InteractionManager.d.ts +1 -1
  173. package/types/Core/Utils/QuadTree.d.ts +2 -5
  174. package/types/Core/Utils/Vector3d.d.ts +2 -1
  175. package/types/Enums/Modes/{SizeMode.d.ts → PixelMode.d.ts} +1 -1
  176. package/types/Options/Classes/AnimationOptions.d.ts +1 -1
  177. package/types/Options/Classes/ColorAnimation.d.ts +1 -0
  178. package/types/Options/Classes/Interactivity/Events/DivEvent.d.ts +0 -6
  179. package/types/Options/Classes/Interactivity/Events/Events.d.ts +0 -6
  180. package/types/Options/Classes/Interactivity/Interactivity.d.ts +1 -3
  181. package/types/Options/Classes/Interactivity/Modes/Modes.d.ts +1 -1
  182. package/types/Options/Classes/Options.d.ts +5 -12
  183. package/types/Options/Classes/Particles/Collisions/Collisions.d.ts +2 -0
  184. package/types/Options/Classes/Particles/Move/Move.d.ts +0 -11
  185. package/types/Options/Classes/Particles/Move/MoveAttract.d.ts +0 -4
  186. package/types/Options/Classes/Particles/Move/MoveCenter.d.ts +2 -2
  187. package/types/Options/Classes/Particles/Move/MoveTrail.d.ts +0 -3
  188. package/types/Options/Classes/Particles/Number/ParticlesDensity.d.ts +0 -6
  189. package/types/Options/Classes/Particles/Number/ParticlesNumber.d.ts +0 -2
  190. package/types/Options/Classes/Particles/Opacity/Opacity.d.ts +4 -4
  191. package/types/Options/Classes/Particles/Opacity/OpacityAnimation.d.ts +0 -2
  192. package/types/Options/Classes/Particles/ParticlesOptions.d.ts +1 -1
  193. package/types/Options/Classes/Particles/Size/Size.d.ts +4 -4
  194. package/types/Options/Classes/Particles/Size/SizeAnimation.d.ts +0 -2
  195. package/types/Options/Classes/Responsive.d.ts +3 -3
  196. package/types/Options/Classes/Theme/Theme.d.ts +2 -2
  197. package/types/Options/Classes/ValueWithRandom.d.ts +2 -6
  198. package/types/Options/Interfaces/IAnimation.d.ts +1 -1
  199. package/types/Options/Interfaces/IOptions.d.ts +1 -4
  200. package/types/Options/Interfaces/IResponsive.d.ts +4 -3
  201. package/types/Options/Interfaces/Interactivity/Events/IDivEvent.d.ts +0 -3
  202. package/types/Options/Interfaces/Interactivity/Events/IEvents.d.ts +0 -3
  203. package/types/Options/Interfaces/Interactivity/IInteractivity.d.ts +0 -1
  204. package/types/Options/Interfaces/Interactivity/Modes/IModeDiv.d.ts +0 -1
  205. package/types/Options/Interfaces/Particles/Collisions/ICollisions.d.ts +2 -0
  206. package/types/Options/Interfaces/Particles/IStroke.d.ts +2 -1
  207. package/types/Options/Interfaces/Particles/Move/IMove.d.ts +0 -5
  208. package/types/Options/Interfaces/Particles/Move/IMoveAttract.d.ts +0 -2
  209. package/types/Options/Interfaces/Particles/Move/IMoveTrail.d.ts +0 -2
  210. package/types/Options/Interfaces/Particles/Number/IParticlesDensity.d.ts +0 -3
  211. package/types/Options/Interfaces/Particles/Number/IParticlesNumber.d.ts +0 -1
  212. package/types/Options/Interfaces/Particles/Opacity/IOpacity.d.ts +0 -1
  213. package/types/Options/Interfaces/Particles/Opacity/IOpacityAnimation.d.ts +0 -1
  214. package/types/Options/Interfaces/Particles/Size/ISize.d.ts +0 -1
  215. package/types/Options/Interfaces/Particles/Size/ISizeAnimation.d.ts +0 -1
  216. package/types/Options/Interfaces/Theme/ITheme.d.ts +3 -2
  217. package/types/Types/ExportResult.d.ts +5 -0
  218. package/types/Utils/CanvasUtils.d.ts +2 -5
  219. package/types/Utils/OptionsUtils.d.ts +1 -1
  220. package/types/Utils/Utils.d.ts +22 -4
  221. package/types/bundle.d.ts +2 -91
  222. package/types/export-types.d.ts +107 -0
  223. package/types/exports.d.ts +89 -0
  224. package/types/index.d.ts +3 -204
  225. package/types/init.d.ts +2 -0
  226. package/umd/Core/Canvas.js +269 -239
  227. package/umd/Core/Container.js +91 -107
  228. package/umd/Core/Engine.js +285 -0
  229. package/umd/Core/Particle.js +158 -165
  230. package/umd/Core/Particles.js +149 -144
  231. package/umd/Core/Retina.js +15 -13
  232. package/umd/Core/Utils/Circle.js +11 -7
  233. package/umd/Core/Utils/Constants.js +5 -4
  234. package/umd/Core/Utils/EventListeners.js +257 -233
  235. package/umd/Core/Utils/InteractionManager.js +6 -16
  236. package/umd/Core/Utils/QuadTree.js +14 -20
  237. package/umd/Core/Utils/Vector3d.js +18 -10
  238. package/umd/Options/Classes/AnimatableColor.js +3 -2
  239. package/umd/Options/Classes/AnimationOptions.js +4 -3
  240. package/umd/Options/Classes/BackgroundMask/BackgroundMask.js +3 -2
  241. package/umd/Options/Classes/ColorAnimation.js +4 -0
  242. package/umd/Options/Classes/Interactivity/Events/DivEvent.js +1 -25
  243. package/umd/Options/Classes/Interactivity/Events/Events.js +6 -25
  244. package/umd/Options/Classes/Interactivity/Interactivity.js +1 -8
  245. package/umd/Options/Classes/Interactivity/Modes/Modes.js +11 -8
  246. package/umd/Options/Classes/ManualParticle.js +5 -6
  247. package/umd/Options/Classes/Options.js +18 -38
  248. package/umd/Options/Classes/OptionsColor.js +4 -3
  249. package/umd/Options/Classes/Particles/Collisions/Collisions.js +6 -1
  250. package/umd/Options/Classes/Particles/Move/Move.js +12 -42
  251. package/umd/Options/Classes/Particles/Move/MoveAttract.js +9 -20
  252. package/umd/Options/Classes/Particles/Move/MoveTrail.js +2 -8
  253. package/umd/Options/Classes/Particles/Move/OutModes.js +4 -5
  254. package/umd/Options/Classes/Particles/Move/Spin.js +3 -1
  255. package/umd/Options/Classes/Particles/Number/ParticlesDensity.js +2 -21
  256. package/umd/Options/Classes/Particles/Number/ParticlesNumber.js +2 -9
  257. package/umd/Options/Classes/Particles/Opacity/Opacity.js +10 -6
  258. package/umd/Options/Classes/Particles/Opacity/OpacityAnimation.js +0 -9
  259. package/umd/Options/Classes/Particles/ParticlesOptions.js +6 -11
  260. package/umd/Options/Classes/Particles/Shape/Shape.js +9 -10
  261. package/umd/Options/Classes/Particles/Size/Size.js +12 -8
  262. package/umd/Options/Classes/Particles/Size/SizeAnimation.js +0 -9
  263. package/umd/Options/Classes/ValueWithRandom.js +5 -18
  264. package/umd/Utils/CanvasUtils.js +21 -58
  265. package/umd/Utils/ColorUtils.js +16 -18
  266. package/umd/Utils/EventDispatcher.js +7 -6
  267. package/umd/Utils/HslColorManager.js +2 -4
  268. package/umd/Utils/NumberUtils.js +42 -46
  269. package/umd/Utils/RgbColorManager.js +2 -4
  270. package/umd/Utils/Utils.js +146 -66
  271. package/umd/bundle.js +5 -98
  272. package/umd/export-types.js +123 -0
  273. package/umd/exports.js +115 -0
  274. package/umd/index.js +9 -200
  275. package/umd/init.js +26 -0
  276. package/browser/Core/Utils/FrameManager.js +0 -42
  277. package/browser/Core/Utils/Plugins.js +0 -112
  278. package/browser/Options/Interfaces/Particles/Shape/IImageShape.js +0 -1
  279. package/browser/Options/Interfaces/Particles/Shape/IPolygonShape.js +0 -1
  280. package/browser/Options/Interfaces/Particles/Shape/IShapeValues.js +0 -1
  281. package/browser/Options/Interfaces/Particles/Shape/IStarShape.js +0 -1
  282. package/browser/engine.js +0 -175
  283. package/cjs/Core/Utils/FrameManager.js +0 -46
  284. package/cjs/Core/Utils/Plugins.js +0 -116
  285. package/cjs/Enums/Modes/SizeMode.js +0 -2
  286. package/cjs/Options/Interfaces/Particles/Shape/ICharacterShape.js +0 -2
  287. package/cjs/Options/Interfaces/Particles/Shape/IImageShape.js +0 -2
  288. package/cjs/Options/Interfaces/Particles/Shape/IPolygonShape.js +0 -2
  289. package/cjs/Options/Interfaces/Particles/Shape/IShapeValues.js +0 -17
  290. package/cjs/Options/Interfaces/Particles/Shape/IStarShape.js +0 -2
  291. package/cjs/engine.js +0 -179
  292. package/esm/Core/Interfaces/IParticleOverride.js +0 -1
  293. package/esm/Core/Interfaces/IParticlesMover.js +0 -1
  294. package/esm/Core/Utils/FrameManager.js +0 -42
  295. package/esm/Core/Utils/Plugins.js +0 -112
  296. package/esm/Enums/Modes/SizeMode.js +0 -1
  297. package/esm/Options/Interfaces/Particles/Shape/ICharacterShape.js +0 -1
  298. package/esm/Options/Interfaces/Particles/Shape/IImageShape.js +0 -1
  299. package/esm/Options/Interfaces/Particles/Shape/IPolygonShape.js +0 -1
  300. package/esm/Options/Interfaces/Particles/Shape/IShapeValues.js +0 -1
  301. package/esm/Options/Interfaces/Particles/Shape/IStarShape.js +0 -1
  302. package/esm/engine.js +0 -175
  303. package/types/Core/Interfaces/IParticleOverride.d.ts +0 -6
  304. package/types/Core/Interfaces/IParticlesMover.d.ts +0 -7
  305. package/types/Core/Utils/FrameManager.d.ts +0 -6
  306. package/types/Core/Utils/Plugins.d.ts +0 -51
  307. package/types/Options/Interfaces/Particles/Shape/ICharacterShape.d.ts +0 -8
  308. package/types/Options/Interfaces/Particles/Shape/IImageShape.d.ts +0 -8
  309. package/types/Options/Interfaces/Particles/Shape/IPolygonShape.d.ts +0 -5
  310. package/types/Options/Interfaces/Particles/Shape/IShapeValues.d.ts +0 -1
  311. package/types/Options/Interfaces/Particles/Shape/IStarShape.d.ts +0 -6
  312. package/types/engine.d.ts +0 -39
  313. package/umd/Core/Utils/FrameManager.js +0 -56
  314. package/umd/Core/Utils/Plugins.js +0 -126
  315. package/umd/Enums/Modes/SizeMode.js +0 -12
  316. package/umd/Options/Interfaces/Particles/Shape/ICharacterShape.js +0 -12
  317. package/umd/Options/Interfaces/Particles/Shape/IImageShape.js +0 -12
  318. package/umd/Options/Interfaces/Particles/Shape/IPolygonShape.js +0 -12
  319. package/umd/Options/Interfaces/Particles/Shape/IShapeValues.js +0 -27
  320. package/umd/Options/Interfaces/Particles/Shape/IStarShape.js +0 -12
  321. package/umd/engine.js +0 -189
  322. /package/browser/{Core/Interfaces/IParticleOverride.js → Enums/Modes/PixelMode.js} +0 -0
  323. /package/browser/{Core/Interfaces/IParticlesMover.js → Types/ExportResult.js} +0 -0
  324. /package/cjs/{Core/Interfaces/IParticleOverride.js → Enums/Modes/PixelMode.js} +0 -0
  325. /package/cjs/{Core/Interfaces/IParticlesMover.js → Types/ExportResult.js} +0 -0
  326. /package/{browser/Enums/Modes/SizeMode.js → esm/Enums/Modes/PixelMode.js} +0 -0
  327. /package/{browser/Options/Interfaces/Particles/Shape/ICharacterShape.js → esm/Types/ExportResult.js} +0 -0
  328. /package/umd/{Core/Interfaces/IParticleOverride.js → Enums/Modes/PixelMode.js} +0 -0
  329. /package/umd/{Core/Interfaces/IParticlesMover.js → Types/ExportResult.js} +0 -0
@@ -1,13 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseAlpha = exports.calcExactPositionOrRandomFromSizeRanged = exports.calcExactPositionOrRandomFromSize = exports.calcPositionOrRandomFromSizeRanged = exports.calcPositionOrRandomFromSize = exports.calcPositionFromSize = exports.collisionVelocity = exports.getParticleBaseVelocity = exports.getParticleDirectionAngle = exports.getDistance = exports.getDistances = exports.getValue = exports.setRangeValue = exports.getRangeMax = exports.getRangeMin = exports.getRangeValue = exports.randomInRange = exports.mix = exports.clamp = exports.getRandom = exports.setRandom = exports.getEasing = exports.addEasing = void 0;
4
+ const Utils_1 = require("./Utils");
4
5
  const Vector_1 = require("../Core/Utils/Vector");
5
6
  let _random = Math.random;
6
7
  const easings = new Map();
7
8
  function addEasing(name, easing) {
8
- if (!easings.get(name)) {
9
- easings.set(name, easing);
9
+ if (easings.get(name)) {
10
+ return;
10
11
  }
12
+ easings.set(name, easing);
11
13
  }
12
14
  exports.addEasing = addEasing;
13
15
  function getEasing(name) {
@@ -40,19 +42,19 @@ function randomInRange(r) {
40
42
  }
41
43
  exports.randomInRange = randomInRange;
42
44
  function getRangeValue(value) {
43
- return typeof value === "number" ? value : randomInRange(value);
45
+ return (0, Utils_1.isNumber)(value) ? value : randomInRange(value);
44
46
  }
45
47
  exports.getRangeValue = getRangeValue;
46
48
  function getRangeMin(value) {
47
- return typeof value === "number" ? value : value.min;
49
+ return (0, Utils_1.isNumber)(value) ? value : value.min;
48
50
  }
49
51
  exports.getRangeMin = getRangeMin;
50
52
  function getRangeMax(value) {
51
- return typeof value === "number" ? value : value.max;
53
+ return (0, Utils_1.isNumber)(value) ? value : value.max;
52
54
  }
53
55
  exports.getRangeMax = getRangeMax;
54
56
  function setRangeValue(source, value) {
55
- if (source === value || (value === undefined && typeof source === "number")) {
57
+ if (source === value || (value === undefined && (0, Utils_1.isNumber)(source))) {
56
58
  return source;
57
59
  }
58
60
  const min = getRangeMin(source), max = getRangeMax(source);
@@ -65,7 +67,7 @@ function setRangeValue(source, value) {
65
67
  }
66
68
  exports.setRangeValue = setRangeValue;
67
69
  function getValue(options) {
68
- const random = options.random, { enable, minimumValue } = typeof random === "boolean"
70
+ const random = options.random, { enable, minimumValue } = (0, Utils_1.isBoolean)(random)
69
71
  ? {
70
72
  enable: random,
71
73
  minimumValue: 0,
@@ -84,34 +86,32 @@ function getDistance(pointA, pointB) {
84
86
  }
85
87
  exports.getDistance = getDistance;
86
88
  function getParticleDirectionAngle(direction, position, center) {
87
- if (typeof direction === "number") {
89
+ if ((0, Utils_1.isNumber)(direction)) {
88
90
  return (direction * Math.PI) / 180;
89
91
  }
90
- else {
91
- switch (direction) {
92
- case "top":
93
- return -Math.PI / 2;
94
- case "top-right":
95
- return -Math.PI / 4;
96
- case "right":
97
- return 0;
98
- case "bottom-right":
99
- return Math.PI / 4;
100
- case "bottom":
101
- return Math.PI / 2;
102
- case "bottom-left":
103
- return (3 * Math.PI) / 4;
104
- case "left":
105
- return Math.PI;
106
- case "top-left":
107
- return (-3 * Math.PI) / 4;
108
- case "inside":
109
- return Math.atan2(center.y - position.y, center.x - position.x);
110
- case "outside":
111
- return Math.atan2(position.y - center.y, position.x - center.x);
112
- default:
113
- return getRandom() * Math.PI * 2;
114
- }
92
+ switch (direction) {
93
+ case "top":
94
+ return -Math.PI / 2;
95
+ case "top-right":
96
+ return -Math.PI / 4;
97
+ case "right":
98
+ return 0;
99
+ case "bottom-right":
100
+ return Math.PI / 4;
101
+ case "bottom":
102
+ return Math.PI / 2;
103
+ case "bottom-left":
104
+ return (3 * Math.PI) / 4;
105
+ case "left":
106
+ return Math.PI;
107
+ case "top-left":
108
+ return (-3 * Math.PI) / 4;
109
+ case "inside":
110
+ return Math.atan2(center.y - position.y, center.x - position.x);
111
+ case "outside":
112
+ return Math.atan2(position.y - center.y, position.x - center.x);
113
+ default:
114
+ return getRandom() * Math.PI * 2;
115
115
  }
116
116
  }
117
117
  exports.getParticleDirectionAngle = getParticleDirectionAngle;
@@ -136,35 +136,31 @@ function calcPositionFromSize(data) {
136
136
  }
137
137
  exports.calcPositionFromSize = calcPositionFromSize;
138
138
  function calcPositionOrRandomFromSize(data) {
139
- var _a, _b, _c, _d;
140
139
  return {
141
- x: (((_b = (_a = data.position) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : getRandom() * 100) * data.size.width) / 100,
142
- y: (((_d = (_c = data.position) === null || _c === void 0 ? void 0 : _c.y) !== null && _d !== void 0 ? _d : getRandom() * 100) * data.size.height) / 100,
140
+ x: ((data.position?.x ?? getRandom() * 100) * data.size.width) / 100,
141
+ y: ((data.position?.y ?? getRandom() * 100) * data.size.height) / 100,
143
142
  };
144
143
  }
145
144
  exports.calcPositionOrRandomFromSize = calcPositionOrRandomFromSize;
146
145
  function calcPositionOrRandomFromSizeRanged(data) {
147
- var _a, _b;
148
146
  const position = {
149
- x: ((_a = data.position) === null || _a === void 0 ? void 0 : _a.x) !== undefined ? getRangeValue(data.position.x) : undefined,
150
- y: ((_b = data.position) === null || _b === void 0 ? void 0 : _b.y) !== undefined ? getRangeValue(data.position.y) : undefined,
147
+ x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,
148
+ y: data.position?.y !== undefined ? getRangeValue(data.position.y) : undefined,
151
149
  };
152
150
  return calcPositionOrRandomFromSize({ size: data.size, position });
153
151
  }
154
152
  exports.calcPositionOrRandomFromSizeRanged = calcPositionOrRandomFromSizeRanged;
155
153
  function calcExactPositionOrRandomFromSize(data) {
156
- var _a, _b, _c, _d;
157
154
  return {
158
- x: (_b = (_a = data.position) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : getRandom() * data.size.width,
159
- y: (_d = (_c = data.position) === null || _c === void 0 ? void 0 : _c.y) !== null && _d !== void 0 ? _d : getRandom() * data.size.height,
155
+ x: data.position?.x ?? getRandom() * data.size.width,
156
+ y: data.position?.y ?? getRandom() * data.size.height,
160
157
  };
161
158
  }
162
159
  exports.calcExactPositionOrRandomFromSize = calcExactPositionOrRandomFromSize;
163
160
  function calcExactPositionOrRandomFromSizeRanged(data) {
164
- var _a, _b;
165
161
  const position = {
166
- x: ((_a = data.position) === null || _a === void 0 ? void 0 : _a.x) !== undefined ? getRangeValue(data.position.x) : undefined,
167
- y: ((_b = data.position) === null || _b === void 0 ? void 0 : _b.y) !== undefined ? getRangeValue(data.position.y) : undefined,
162
+ x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,
163
+ y: data.position?.y !== undefined ? getRangeValue(data.position.y) : undefined,
168
164
  };
169
165
  return calcExactPositionOrRandomFromSize({ size: data.size, position });
170
166
  }
@@ -8,15 +8,13 @@ class RgbColorManager {
8
8
  this.stringPrefix = "rgb";
9
9
  }
10
10
  handleColor(color) {
11
- var _a;
12
- const colorValue = color.value, rgbColor = (_a = colorValue.rgb) !== null && _a !== void 0 ? _a : color.value;
11
+ const colorValue = color.value, rgbColor = colorValue.rgb ?? color.value;
13
12
  if (rgbColor.r !== undefined) {
14
13
  return rgbColor;
15
14
  }
16
15
  }
17
16
  handleRangeColor(color) {
18
- var _a;
19
- const colorValue = color.value, rgbColor = (_a = colorValue.rgb) !== null && _a !== void 0 ? _a : color.value;
17
+ const colorValue = color.value, rgbColor = colorValue.rgb ?? color.value;
20
18
  if (rgbColor.r !== undefined) {
21
19
  return {
22
20
  r: (0, NumberUtils_1.getRangeValue)(rgbColor.r),
@@ -1,10 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.initParticleNumericAnimationValue = exports.findItemFromSingleOrMultiple = exports.itemFromSingleOrMultiple = exports.executeOnSingleOrMultiple = exports.rectBounce = exports.circleBounce = exports.circleBounceDataFromParticle = exports.divMode = exports.singleDivModeExecute = exports.divModeExecute = exports.isDivModeEnabled = exports.deepExtend = exports.calculateBounds = exports.areBoundsInside = exports.isPointInside = exports.itemFromArray = exports.arrayRandomIndex = exports.loadFont = exports.isInArray = exports.cancelAnimation = exports.animate = exports.safeMatchMedia = exports.hasMatchMedia = exports.isSsr = void 0;
3
+ exports.isArray = exports.isObject = exports.isFunction = exports.isNumber = exports.isString = exports.isBoolean = exports.getSize = exports.getPosition = exports.initParticleNumericAnimationValue = exports.findItemFromSingleOrMultiple = exports.itemFromSingleOrMultiple = exports.executeOnSingleOrMultiple = exports.rectBounce = exports.circleBounce = exports.circleBounceDataFromParticle = exports.divMode = exports.singleDivModeExecute = exports.divModeExecute = exports.isDivModeEnabled = exports.deepExtend = exports.calculateBounds = exports.areBoundsInside = exports.isPointInside = exports.itemFromArray = exports.arrayRandomIndex = exports.loadFont = exports.isInArray = exports.safeMutationObserver = exports.safeMatchMedia = exports.hasMatchMedia = exports.isSsr = exports.getLogger = exports.setLogger = void 0;
4
4
  const NumberUtils_1 = require("./NumberUtils");
5
5
  const Vector_1 = require("../Core/Utils/Vector");
6
- function rectSideBounce(pSide, pOtherSide, rectSide, rectOtherSide, velocity, factor) {
7
- const res = { bounced: false };
6
+ const _logger = {
7
+ debug: console.debug,
8
+ error: console.error,
9
+ info: console.info,
10
+ log: console.log,
11
+ verbose: console.log,
12
+ warning: console.warn,
13
+ };
14
+ function setLogger(logger) {
15
+ _logger.debug = logger.debug || _logger.debug;
16
+ _logger.error = logger.error || _logger.error;
17
+ _logger.info = logger.info || _logger.info;
18
+ _logger.log = logger.log || _logger.log;
19
+ _logger.verbose = logger.verbose || _logger.verbose;
20
+ _logger.warning = logger.warning || _logger.warning;
21
+ }
22
+ exports.setLogger = setLogger;
23
+ function getLogger() {
24
+ return _logger;
25
+ }
26
+ exports.getLogger = getLogger;
27
+ function rectSideBounce(data) {
28
+ const res = { bounced: false }, { pSide, pOtherSide, rectSide, rectOtherSide, velocity, factor } = data;
8
29
  if (pOtherSide.min < rectOtherSide.min ||
9
30
  pOtherSide.min > rectOtherSide.max ||
10
31
  pOtherSide.max < rectOtherSide.min ||
@@ -22,7 +43,7 @@ function checkSelector(element, selectors) {
22
43
  const res = executeOnSingleOrMultiple(selectors, (selector) => {
23
44
  return element.matches(selector);
24
45
  });
25
- return res instanceof Array ? res.some((t) => t) : res;
46
+ return isArray(res) ? res.some((t) => t) : res;
26
47
  }
27
48
  function isSsr() {
28
49
  return typeof window === "undefined" || !window || typeof window.document === "undefined" || !window.document;
@@ -39,27 +60,22 @@ function safeMatchMedia(query) {
39
60
  return matchMedia(query);
40
61
  }
41
62
  exports.safeMatchMedia = safeMatchMedia;
42
- function animate() {
43
- return isSsr()
44
- ? (callback) => setTimeout(callback)
45
- : (callback) => (requestAnimationFrame || setTimeout)(callback);
46
- }
47
- exports.animate = animate;
48
- function cancelAnimation() {
49
- return isSsr()
50
- ? (handle) => clearTimeout(handle)
51
- : (handle) => (cancelAnimationFrame || clearTimeout)(handle);
52
- }
53
- exports.cancelAnimation = cancelAnimation;
63
+ function safeMutationObserver(callback) {
64
+ if (isSsr() || typeof MutationObserver === "undefined") {
65
+ return;
66
+ }
67
+ return new MutationObserver(callback);
68
+ }
69
+ exports.safeMutationObserver = safeMutationObserver;
54
70
  function isInArray(value, array) {
55
- return value === array || (array instanceof Array && array.indexOf(value) > -1);
71
+ return value === array || (isArray(array) && array.indexOf(value) > -1);
56
72
  }
57
73
  exports.isInArray = isInArray;
58
74
  async function loadFont(font, weight) {
59
75
  try {
60
- await document.fonts.load(`${weight !== null && weight !== void 0 ? weight : "400"} 36px '${font !== null && font !== void 0 ? font : "Verdana"}'`);
76
+ await document.fonts.load(`${weight ?? "400"} 36px '${font ?? "Verdana"}'`);
61
77
  }
62
- catch (_a) {
78
+ catch {
63
79
  }
64
80
  }
65
81
  exports.loadFont = loadFont;
@@ -72,7 +88,7 @@ function itemFromArray(array, index, useIndex = true) {
72
88
  }
73
89
  exports.itemFromArray = itemFromArray;
74
90
  function isPointInside(point, size, offset, radius, direction) {
75
- return areBoundsInside(calculateBounds(point, radius !== null && radius !== void 0 ? radius : 0), size, offset, direction);
91
+ return areBoundsInside(calculateBounds(point, radius ?? 0), size, offset, direction);
76
92
  }
77
93
  exports.isPointInside = isPointInside;
78
94
  function areBoundsInside(bounds, size, offset, direction) {
@@ -106,24 +122,24 @@ function deepExtend(destination, ...sources) {
106
122
  if (source === undefined || source === null) {
107
123
  continue;
108
124
  }
109
- if (typeof source !== "object") {
125
+ if (!isObject(source)) {
110
126
  destination = source;
111
127
  continue;
112
128
  }
113
129
  const sourceIsArray = Array.isArray(source);
114
- if (sourceIsArray && (typeof destination !== "object" || !destination || !Array.isArray(destination))) {
130
+ if (sourceIsArray && (isObject(destination) || !destination || !Array.isArray(destination))) {
115
131
  destination = [];
116
132
  }
117
- else if (!sourceIsArray && (typeof destination !== "object" || !destination || Array.isArray(destination))) {
133
+ else if (!sourceIsArray && (isObject(destination) || !destination || Array.isArray(destination))) {
118
134
  destination = {};
119
135
  }
120
136
  for (const key in source) {
121
137
  if (key === "__proto__") {
122
138
  continue;
123
139
  }
124
- const sourceDict = source, value = sourceDict[key], isObject = typeof value === "object", destDict = destination;
140
+ const sourceDict = source, value = sourceDict[key], destDict = destination;
125
141
  destDict[key] =
126
- isObject && Array.isArray(value)
142
+ isObject(value) && Array.isArray(value)
127
143
  ? value.map((v) => deepExtend(destDict[key], v))
128
144
  : deepExtend(destDict[key], value);
129
145
  }
@@ -184,18 +200,25 @@ function circleBounce(p1, p2) {
184
200
  exports.circleBounce = circleBounce;
185
201
  function rectBounce(particle, divBounds) {
186
202
  const pPos = particle.getPosition(), size = particle.getRadius(), bounds = calculateBounds(pPos, size), resH = rectSideBounce({
187
- min: bounds.left,
188
- max: bounds.right,
189
- }, {
190
- min: bounds.top,
191
- max: bounds.bottom,
192
- }, {
193
- min: divBounds.left,
194
- max: divBounds.right,
195
- }, {
196
- min: divBounds.top,
197
- max: divBounds.bottom,
198
- }, particle.velocity.x, (0, NumberUtils_1.getValue)(particle.options.bounce.horizontal));
203
+ pSide: {
204
+ min: bounds.left,
205
+ max: bounds.right,
206
+ },
207
+ pOtherSide: {
208
+ min: bounds.top,
209
+ max: bounds.bottom,
210
+ },
211
+ rectSide: {
212
+ min: divBounds.left,
213
+ max: divBounds.right,
214
+ },
215
+ rectOtherSide: {
216
+ min: divBounds.top,
217
+ max: divBounds.bottom,
218
+ },
219
+ velocity: particle.velocity.x,
220
+ factor: (0, NumberUtils_1.getValue)(particle.options.bounce.horizontal),
221
+ });
199
222
  if (resH.bounced) {
200
223
  if (resH.velocity !== undefined) {
201
224
  particle.velocity.x = resH.velocity;
@@ -205,18 +228,25 @@ function rectBounce(particle, divBounds) {
205
228
  }
206
229
  }
207
230
  const resV = rectSideBounce({
208
- min: bounds.top,
209
- max: bounds.bottom,
210
- }, {
211
- min: bounds.left,
212
- max: bounds.right,
213
- }, {
214
- min: divBounds.top,
215
- max: divBounds.bottom,
216
- }, {
217
- min: divBounds.left,
218
- max: divBounds.right,
219
- }, particle.velocity.y, (0, NumberUtils_1.getValue)(particle.options.bounce.vertical));
231
+ pSide: {
232
+ min: bounds.top,
233
+ max: bounds.bottom,
234
+ },
235
+ pOtherSide: {
236
+ min: bounds.left,
237
+ max: bounds.right,
238
+ },
239
+ rectSide: {
240
+ min: divBounds.top,
241
+ max: divBounds.bottom,
242
+ },
243
+ rectOtherSide: {
244
+ min: divBounds.left,
245
+ max: divBounds.right,
246
+ },
247
+ velocity: particle.velocity.y,
248
+ factor: (0, NumberUtils_1.getValue)(particle.options.bounce.vertical),
249
+ });
220
250
  if (resV.bounced) {
221
251
  if (resV.velocity !== undefined) {
222
252
  particle.velocity.y = resV.velocity;
@@ -228,30 +258,30 @@ function rectBounce(particle, divBounds) {
228
258
  }
229
259
  exports.rectBounce = rectBounce;
230
260
  function executeOnSingleOrMultiple(obj, callback) {
231
- return obj instanceof Array ? obj.map((item, index) => callback(item, index)) : callback(obj, 0);
261
+ return isArray(obj) ? obj.map((item, index) => callback(item, index)) : callback(obj, 0);
232
262
  }
233
263
  exports.executeOnSingleOrMultiple = executeOnSingleOrMultiple;
234
264
  function itemFromSingleOrMultiple(obj, index, useIndex) {
235
- return obj instanceof Array ? itemFromArray(obj, index, useIndex) : obj;
265
+ return isArray(obj) ? itemFromArray(obj, index, useIndex) : obj;
236
266
  }
237
267
  exports.itemFromSingleOrMultiple = itemFromSingleOrMultiple;
238
268
  function findItemFromSingleOrMultiple(obj, callback) {
239
- return obj instanceof Array ? obj.find((t, index) => callback(t, index)) : callback(obj, 0) ? obj : undefined;
269
+ return isArray(obj) ? obj.find((t, index) => callback(t, index)) : callback(obj, 0) ? obj : undefined;
240
270
  }
241
271
  exports.findItemFromSingleOrMultiple = findItemFromSingleOrMultiple;
242
272
  function initParticleNumericAnimationValue(options, pxRatio) {
243
- const valueRange = options.value, animationOptions = options.animation;
244
- const res = {
245
- enable: options.animation.enable,
273
+ const valueRange = options.value, animationOptions = options.animation, res = {
274
+ delayTime: (0, NumberUtils_1.getRangeValue)(animationOptions.delay) * 1000,
275
+ enable: animationOptions.enable,
246
276
  value: (0, NumberUtils_1.getRangeValue)(options.value) * pxRatio,
247
277
  max: (0, NumberUtils_1.getRangeMax)(valueRange) * pxRatio,
248
278
  min: (0, NumberUtils_1.getRangeMin)(valueRange) * pxRatio,
249
279
  loops: 0,
250
- maxLoops: (0, NumberUtils_1.getRangeValue)(options.animation.count),
280
+ maxLoops: (0, NumberUtils_1.getRangeValue)(animationOptions.count),
281
+ time: 0,
251
282
  };
252
283
  if (animationOptions.enable) {
253
284
  res.decay = 1 - (0, NumberUtils_1.getRangeValue)(animationOptions.decay);
254
- let autoStatus = false;
255
285
  switch (animationOptions.mode) {
256
286
  case "increase":
257
287
  res.status = "increasing";
@@ -262,10 +292,8 @@ function initParticleNumericAnimationValue(options, pxRatio) {
262
292
  case "random":
263
293
  res.status = (0, NumberUtils_1.getRandom)() >= 0.5 ? "increasing" : "decreasing";
264
294
  break;
265
- case "auto":
266
- autoStatus = true;
267
- break;
268
295
  }
296
+ const autoStatus = animationOptions.mode === "auto";
269
297
  switch (animationOptions.startValue) {
270
298
  case "min":
271
299
  res.value = res.min;
@@ -273,17 +301,17 @@ function initParticleNumericAnimationValue(options, pxRatio) {
273
301
  res.status = "increasing";
274
302
  }
275
303
  break;
276
- case "random":
277
- res.value = (0, NumberUtils_1.randomInRange)(res);
304
+ case "max":
305
+ res.value = res.max;
278
306
  if (autoStatus) {
279
- res.status = (0, NumberUtils_1.getRandom)() >= 0.5 ? "increasing" : "decreasing";
307
+ res.status = "decreasing";
280
308
  }
281
309
  break;
282
- case "max":
310
+ case "random":
283
311
  default:
284
- res.value = res.max;
312
+ res.value = (0, NumberUtils_1.randomInRange)(res);
285
313
  if (autoStatus) {
286
- res.status = "decreasing";
314
+ res.status = (0, NumberUtils_1.getRandom)() >= 0.5 ? "increasing" : "decreasing";
287
315
  }
288
316
  break;
289
317
  }
@@ -292,3 +320,55 @@ function initParticleNumericAnimationValue(options, pxRatio) {
292
320
  return res;
293
321
  }
294
322
  exports.initParticleNumericAnimationValue = initParticleNumericAnimationValue;
323
+ function getPositionOrSize(positionOrSize, canvasSize) {
324
+ const isPercent = positionOrSize.mode === "percent";
325
+ if (!isPercent) {
326
+ const { mode: _, ...rest } = positionOrSize;
327
+ return rest;
328
+ }
329
+ const isPosition = "x" in positionOrSize;
330
+ if (isPosition) {
331
+ return {
332
+ x: (positionOrSize.x / 100) * canvasSize.width,
333
+ y: (positionOrSize.y / 100) * canvasSize.height,
334
+ };
335
+ }
336
+ else {
337
+ return {
338
+ width: (positionOrSize.width / 100) * canvasSize.width,
339
+ height: (positionOrSize.height / 100) * canvasSize.height,
340
+ };
341
+ }
342
+ }
343
+ function getPosition(position, canvasSize) {
344
+ return getPositionOrSize(position, canvasSize);
345
+ }
346
+ exports.getPosition = getPosition;
347
+ function getSize(size, canvasSize) {
348
+ return getPositionOrSize(size, canvasSize);
349
+ }
350
+ exports.getSize = getSize;
351
+ function isBoolean(arg) {
352
+ return typeof arg === "boolean";
353
+ }
354
+ exports.isBoolean = isBoolean;
355
+ function isString(arg) {
356
+ return typeof arg === "string";
357
+ }
358
+ exports.isString = isString;
359
+ function isNumber(arg) {
360
+ return typeof arg === "number";
361
+ }
362
+ exports.isNumber = isNumber;
363
+ function isFunction(arg) {
364
+ return typeof arg === "function";
365
+ }
366
+ exports.isFunction = isFunction;
367
+ function isObject(arg) {
368
+ return typeof arg === "object" && arg !== null;
369
+ }
370
+ exports.isObject = isObject;
371
+ function isArray(arg) {
372
+ return Array.isArray(arg);
373
+ }
374
+ exports.isArray = isArray;
package/cjs/bundle.js CHANGED
@@ -15,101 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.tsParticles = void 0;
18
- const engine_1 = require("./engine");
19
- const HslColorManager_1 = require("./Utils/HslColorManager");
20
- const RgbColorManager_1 = require("./Utils/RgbColorManager");
21
- const ColorUtils_1 = require("./Utils/ColorUtils");
22
- const rgbColorManager = new RgbColorManager_1.RgbColorManager(), hslColorManager = new HslColorManager_1.HslColorManager();
23
- (0, ColorUtils_1.addColorManager)(rgbColorManager);
24
- (0, ColorUtils_1.addColorManager)(hslColorManager);
25
- const tsParticles = new engine_1.Engine();
18
+ const init_1 = require("./init");
19
+ const tsParticles = (0, init_1.init)();
26
20
  exports.tsParticles = tsParticles;
27
- __exportStar(require("./Core/Utils/Circle"), exports);
28
- __exportStar(require("./Core/Utils/Constants"), exports);
29
- __exportStar(require("./Core/Utils/ExternalInteractorBase"), exports);
30
- __exportStar(require("./Core/Utils/ParticlesInteractorBase"), exports);
31
- __exportStar(require("./Core/Utils/Point"), exports);
32
- __exportStar(require("./Core/Utils/Range"), exports);
33
- __exportStar(require("./Core/Utils/Rectangle"), exports);
34
- __exportStar(require("./Core/Utils/Vector"), exports);
35
- __exportStar(require("./Core/Utils/Vector3d"), exports);
36
- __exportStar(require("./Enums/Directions/MoveDirection"), exports);
37
- __exportStar(require("./Enums/Directions/RotateDirection"), exports);
38
- __exportStar(require("./Enums/Directions/OutModeDirection"), exports);
39
- __exportStar(require("./Enums/Modes/AnimationMode"), exports);
40
- __exportStar(require("./Enums/Modes/ClickMode"), exports);
41
- __exportStar(require("./Enums/Modes/DivMode"), exports);
42
- __exportStar(require("./Enums/Modes/HoverMode"), exports);
43
- __exportStar(require("./Enums/Modes/CollisionMode"), exports);
44
- __exportStar(require("./Enums/Modes/OutMode"), exports);
45
- __exportStar(require("./Enums/Modes/SizeMode"), exports);
46
- __exportStar(require("./Enums/Modes/ThemeMode"), exports);
47
- __exportStar(require("./Enums/Modes/ResponsiveMode"), exports);
48
- __exportStar(require("./Enums/Types/AlterType"), exports);
49
- __exportStar(require("./Enums/Types/DestroyType"), exports);
50
- __exportStar(require("./Enums/Types/GradientType"), exports);
51
- __exportStar(require("./Enums/Types/InteractorType"), exports);
52
- __exportStar(require("./Enums/Types/ParticleOutType"), exports);
53
- __exportStar(require("./Enums/Types/StartValueType"), exports);
54
- __exportStar(require("./Enums/Types/DivType"), exports);
55
- __exportStar(require("./Enums/Types/EasingType"), exports);
56
- __exportStar(require("./Enums/AnimationStatus"), exports);
57
- __exportStar(require("./Enums/InteractivityDetect"), exports);
58
- __exportStar(require("./Options/Classes/AnimatableColor"), exports);
59
- __exportStar(require("./Options/Classes/AnimationOptions"), exports);
60
- __exportStar(require("./Options/Classes/Background/Background"), exports);
61
- __exportStar(require("./Options/Classes/BackgroundMask/BackgroundMask"), exports);
62
- __exportStar(require("./Options/Classes/BackgroundMask/BackgroundMaskCover"), exports);
63
- __exportStar(require("./Options/Classes/ColorAnimation"), exports);
64
- __exportStar(require("./Options/Classes/FullScreen/FullScreen"), exports);
65
- __exportStar(require("./Options/Classes/HslAnimation"), exports);
66
- __exportStar(require("./Options/Classes/Interactivity/Events/ClickEvent"), exports);
67
- __exportStar(require("./Options/Classes/Interactivity/Events/DivEvent"), exports);
68
- __exportStar(require("./Options/Classes/Interactivity/Events/ClickEvent"), exports);
69
- __exportStar(require("./Options/Classes/Interactivity/Events/DivEvent"), exports);
70
- __exportStar(require("./Options/Classes/Interactivity/Events/Events"), exports);
71
- __exportStar(require("./Options/Classes/Interactivity/Events/HoverEvent"), exports);
72
- __exportStar(require("./Options/Classes/Interactivity/Events/Parallax"), exports);
73
- __exportStar(require("./Options/Classes/Interactivity/Events/ResizeEvent"), exports);
74
- __exportStar(require("./Options/Classes/Interactivity/Interactivity"), exports);
75
- __exportStar(require("./Options/Classes/Interactivity/Modes/Modes"), exports);
76
- __exportStar(require("./Options/Classes/ManualParticle"), exports);
77
- __exportStar(require("./Options/Classes/Options"), exports);
78
- __exportStar(require("./Options/Classes/OptionsColor"), exports);
79
- __exportStar(require("./Options/Classes/Particles/Bounce/ParticlesBounce"), exports);
80
- __exportStar(require("./Options/Classes/Particles/Bounce/ParticlesBounceFactor"), exports);
81
- __exportStar(require("./Options/Classes/Particles/Collisions/Collisions"), exports);
82
- __exportStar(require("./Options/Classes/Particles/Collisions/CollisionsAbsorb"), exports);
83
- __exportStar(require("./Options/Classes/Particles/Collisions/CollisionsOverlap"), exports);
84
- __exportStar(require("./Options/Classes/Particles/ParticlesOptions"), exports);
85
- __exportStar(require("./Options/Classes/Particles/Shadow"), exports);
86
- __exportStar(require("./Options/Classes/Particles/Stroke"), exports);
87
- __exportStar(require("./Options/Classes/Particles/Move/MoveAttract"), exports);
88
- __exportStar(require("./Options/Classes/Particles/Move/Move"), exports);
89
- __exportStar(require("./Options/Classes/Particles/Move/MoveAngle"), exports);
90
- __exportStar(require("./Options/Classes/Particles/Move/MoveCenter"), exports);
91
- __exportStar(require("./Options/Classes/Particles/Move/MoveGravity"), exports);
92
- __exportStar(require("./Options/Classes/Particles/Move/MoveTrail"), exports);
93
- __exportStar(require("./Options/Classes/Particles/Move/MoveTrailFill"), exports);
94
- __exportStar(require("./Options/Classes/Particles/Move/OutModes"), exports);
95
- __exportStar(require("./Options/Classes/Particles/Move/Path/MovePath"), exports);
96
- __exportStar(require("./Options/Classes/Particles/Move/Spin"), exports);
97
- __exportStar(require("./Options/Classes/Particles/Number/ParticlesNumber"), exports);
98
- __exportStar(require("./Options/Classes/Particles/Number/ParticlesDensity"), exports);
99
- __exportStar(require("./Options/Classes/Particles/Opacity/Opacity"), exports);
100
- __exportStar(require("./Options/Classes/Particles/Opacity/OpacityAnimation"), exports);
101
- __exportStar(require("./Options/Classes/Particles/Shape/Shape"), exports);
102
- __exportStar(require("./Options/Classes/Particles/Size/Size"), exports);
103
- __exportStar(require("./Options/Classes/Particles/Size/SizeAnimation"), exports);
104
- __exportStar(require("./Options/Classes/Particles/ZIndex/ZIndex"), exports);
105
- __exportStar(require("./Options/Classes/Responsive"), exports);
106
- __exportStar(require("./Options/Classes/Theme/Theme"), exports);
107
- __exportStar(require("./Options/Classes/Theme/ThemeDefault"), exports);
108
- __exportStar(require("./Options/Classes/ValueWithRandom"), exports);
109
- __exportStar(require("./Utils/CanvasUtils"), exports);
110
- __exportStar(require("./Utils/ColorUtils"), exports);
111
- __exportStar(require("./Utils/HslColorManager"), exports);
112
- __exportStar(require("./Utils/NumberUtils"), exports);
113
- __exportStar(require("./Utils/OptionsUtils"), exports);
114
- __exportStar(require("./Utils/RgbColorManager"), exports);
115
- __exportStar(require("./Utils/Utils"), exports);
21
+ window.tsParticles = tsParticles;
22
+ __exportStar(require("./exports"), exports);