tsparticles 1.35.2 → 1.37.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 (663) hide show
  1. package/Core/Canvas.js +4 -6
  2. package/Core/Container.d.ts +4 -2
  3. package/Core/Container.js +21 -12
  4. package/Core/Loader.d.ts +19 -4
  5. package/Core/Loader.js +80 -18
  6. package/Enums/Modes/ResponsiveMode.d.ts +4 -0
  7. package/Enums/Modes/ResponsiveMode.js +8 -0
  8. package/Enums/Modes/index.d.ts +1 -0
  9. package/Enums/Modes/index.js +1 -0
  10. package/Interactions/External/Attract/index.d.ts +1 -1
  11. package/Interactions/External/Attract/index.js +2 -2
  12. package/Interactions/External/Bounce/index.d.ts +1 -1
  13. package/Interactions/External/Bounce/index.js +2 -2
  14. package/Interactions/External/Bubble/index.d.ts +1 -1
  15. package/Interactions/External/Bubble/index.js +2 -2
  16. package/Interactions/External/Connect/index.d.ts +1 -1
  17. package/Interactions/External/Connect/index.js +2 -2
  18. package/Interactions/External/Grab/index.d.ts +1 -1
  19. package/Interactions/External/Grab/index.js +2 -2
  20. package/Interactions/External/Repulse/index.d.ts +1 -1
  21. package/Interactions/External/Repulse/index.js +2 -2
  22. package/Interactions/External/Trail/index.d.ts +1 -1
  23. package/Interactions/External/Trail/index.js +2 -2
  24. package/Interactions/Particles/Attract/index.d.ts +1 -1
  25. package/Interactions/Particles/Attract/index.js +2 -2
  26. package/Interactions/Particles/Collisions/index.d.ts +1 -1
  27. package/Interactions/Particles/Collisions/index.js +2 -2
  28. package/Interactions/Particles/Links/index.d.ts +2 -2
  29. package/Interactions/Particles/Links/index.js +5 -5
  30. package/Interactions/Particles/Links/plugin.d.ts +1 -1
  31. package/Interactions/Particles/Links/plugin.js +2 -2
  32. package/Options/Classes/FullScreen/FullScreen.js +2 -2
  33. package/Options/Classes/Interactivity/Interactivity.js +1 -1
  34. package/Options/Classes/Options.d.ts +1 -1
  35. package/Options/Classes/Options.js +5 -2
  36. package/Options/Classes/Responsive.d.ts +2 -0
  37. package/Options/Classes/Responsive.js +10 -0
  38. package/Options/Interfaces/IResponsive.d.ts +2 -0
  39. package/Plugins/Absorbers/plugin.d.ts +1 -1
  40. package/Plugins/Absorbers/plugin.js +2 -2
  41. package/Plugins/Emitters/plugin.d.ts +1 -1
  42. package/Plugins/Emitters/plugin.js +2 -2
  43. package/Plugins/PolygonMask/plugin.js +1 -1
  44. package/README.md +1 -1
  45. package/Shapes/Circle/index.d.ts +1 -1
  46. package/Shapes/Circle/index.js +2 -2
  47. package/Shapes/Image/index.d.ts +1 -1
  48. package/Shapes/Image/index.js +3 -3
  49. package/Shapes/Line/index.d.ts +1 -1
  50. package/Shapes/Line/index.js +2 -2
  51. package/Shapes/Polygon/index.d.ts +3 -3
  52. package/Shapes/Polygon/index.js +7 -7
  53. package/Shapes/Square/index.d.ts +1 -1
  54. package/Shapes/Square/index.js +3 -3
  55. package/Shapes/Star/index.d.ts +1 -1
  56. package/Shapes/Star/index.js +2 -2
  57. package/Shapes/Text/index.d.ts +1 -1
  58. package/Shapes/Text/index.js +2 -2
  59. package/Updaters/Angle/index.d.ts +1 -1
  60. package/Updaters/Angle/index.js +2 -2
  61. package/Updaters/Color/index.d.ts +1 -1
  62. package/Updaters/Color/index.js +2 -2
  63. package/Updaters/Life/index.d.ts +1 -1
  64. package/Updaters/Life/index.js +2 -2
  65. package/Updaters/Opacity/index.d.ts +1 -1
  66. package/Updaters/Opacity/index.js +2 -2
  67. package/Updaters/OutModes/index.d.ts +1 -1
  68. package/Updaters/OutModes/index.js +2 -2
  69. package/Updaters/Roll/index.d.ts +1 -1
  70. package/Updaters/Roll/index.js +2 -2
  71. package/Updaters/Size/index.d.ts +1 -1
  72. package/Updaters/Size/index.js +2 -2
  73. package/Updaters/StrokeColor/index.d.ts +1 -1
  74. package/Updaters/StrokeColor/index.js +2 -2
  75. package/Updaters/Tilt/index.d.ts +1 -1
  76. package/Updaters/Tilt/index.js +2 -2
  77. package/Updaters/Wobble/index.d.ts +1 -1
  78. package/Updaters/Wobble/index.js +2 -2
  79. package/Utils/Utils.d.ts +1 -2
  80. package/browser/Core/Canvas.d.ts +29 -0
  81. package/browser/Core/Canvas.js +26 -6
  82. package/browser/Core/Container.d.ts +98 -2
  83. package/browser/Core/Container.js +104 -12
  84. package/browser/Core/FrameManager.d.ts +8 -0
  85. package/browser/Core/FrameManager.js +9 -0
  86. package/browser/Core/InteractionManager.d.ts +3 -0
  87. package/browser/Core/InteractionManager.js +4 -0
  88. package/browser/Core/Interfaces/Colors.d.ts +23 -0
  89. package/browser/Core/Interfaces/IAttract.d.ts +3 -0
  90. package/browser/Core/Interfaces/IBounds.d.ts +3 -0
  91. package/browser/Core/Interfaces/IBubble.d.ts +3 -0
  92. package/browser/Core/Interfaces/IBubbleParticleData.d.ts +3 -0
  93. package/browser/Core/Interfaces/IContainerInteractivity.d.ts +3 -0
  94. package/browser/Core/Interfaces/IContainerPlugin.d.ts +3 -0
  95. package/browser/Core/Interfaces/ICoordinates.d.ts +3 -0
  96. package/browser/Core/Interfaces/IDelta.d.ts +3 -0
  97. package/browser/Core/Interfaces/IDimension.d.ts +3 -0
  98. package/browser/Core/Interfaces/IExternalInteractor.d.ts +3 -0
  99. package/browser/Core/Interfaces/IInteractor.d.ts +3 -0
  100. package/browser/Core/Interfaces/IMouseData.d.ts +3 -0
  101. package/browser/Core/Interfaces/IMovePathGenerator.d.ts +3 -0
  102. package/browser/Core/Interfaces/IParticle.d.ts +3 -0
  103. package/browser/Core/Interfaces/IParticleValueAnimation.d.ts +3 -0
  104. package/browser/Core/Interfaces/IParticlesInteractor.d.ts +3 -0
  105. package/browser/Core/Interfaces/IPlugin.d.ts +8 -0
  106. package/browser/Core/Interfaces/IRepulse.d.ts +3 -0
  107. package/browser/Core/Interfaces/IShapeDrawer.d.ts +3 -0
  108. package/browser/Core/Interfaces/IShapeValues.d.ts +3 -0
  109. package/browser/Core/Loader.d.ts +64 -4
  110. package/browser/Core/Loader.js +131 -18
  111. package/browser/Core/Particle/Mover.d.ts +3 -0
  112. package/browser/Core/Particle/Mover.js +7 -2
  113. package/browser/Core/Particle.d.ts +7 -0
  114. package/browser/Core/Particle.js +13 -0
  115. package/browser/Core/Particles.d.ts +13 -0
  116. package/browser/Core/Particles.js +25 -0
  117. package/browser/Core/Retina.d.ts +6 -0
  118. package/browser/Core/Retina.js +9 -0
  119. package/browser/Enums/Directions/MoveDirection.d.ts +3 -0
  120. package/browser/Enums/Directions/MoveDirection.js +3 -0
  121. package/browser/Enums/Directions/RotateDirection.d.ts +3 -0
  122. package/browser/Enums/Directions/RotateDirection.js +3 -0
  123. package/browser/Enums/Directions/TiltDirection.d.ts +3 -0
  124. package/browser/Enums/Directions/TiltDirection.js +3 -0
  125. package/browser/Enums/InteractivityDetect.d.ts +3 -0
  126. package/browser/Enums/InteractivityDetect.js +3 -0
  127. package/browser/Enums/Modes/ClickMode.d.ts +3 -0
  128. package/browser/Enums/Modes/ClickMode.js +3 -0
  129. package/browser/Enums/Modes/CollisionMode.d.ts +3 -0
  130. package/browser/Enums/Modes/CollisionMode.js +3 -0
  131. package/browser/Enums/Modes/DivMode.d.ts +3 -0
  132. package/browser/Enums/Modes/DivMode.js +3 -0
  133. package/browser/Enums/Modes/HoverMode.d.ts +3 -0
  134. package/browser/Enums/Modes/HoverMode.js +3 -0
  135. package/browser/Enums/Modes/OutMode.d.ts +3 -0
  136. package/browser/Enums/Modes/OutMode.js +3 -0
  137. package/browser/Enums/Modes/ResponsiveMode.d.ts +4 -0
  138. package/browser/Enums/Modes/ResponsiveMode.js +5 -0
  139. package/browser/Enums/Modes/SizeMode.d.ts +3 -0
  140. package/browser/Enums/Modes/SizeMode.js +3 -0
  141. package/browser/Enums/Modes/index.d.ts +1 -0
  142. package/browser/Enums/Modes/index.js +1 -0
  143. package/browser/Enums/Types/DestroyType.d.ts +3 -0
  144. package/browser/Enums/Types/DestroyType.js +3 -0
  145. package/browser/Enums/Types/DivType.d.ts +3 -0
  146. package/browser/Enums/Types/DivType.js +3 -0
  147. package/browser/Enums/Types/OrbitType.d.ts +3 -0
  148. package/browser/Enums/Types/OrbitType.js +3 -0
  149. package/browser/Enums/Types/ShapeType.d.ts +3 -0
  150. package/browser/Enums/Types/ShapeType.js +3 -0
  151. package/browser/Enums/Types/StartValueType.d.ts +3 -0
  152. package/browser/Enums/Types/StartValueType.js +3 -0
  153. package/browser/Interactions/External/Attract/Attractor.d.ts +4 -0
  154. package/browser/Interactions/External/Attract/Attractor.js +5 -0
  155. package/browser/Interactions/External/Attract/index.d.ts +1 -1
  156. package/browser/Interactions/External/Attract/index.js +2 -2
  157. package/browser/Interactions/External/Bounce/Bouncer.js +1 -0
  158. package/browser/Interactions/External/Bounce/index.d.ts +1 -1
  159. package/browser/Interactions/External/Bounce/index.js +2 -2
  160. package/browser/Interactions/External/Bubble/Bubbler.d.ts +4 -0
  161. package/browser/Interactions/External/Bubble/Bubbler.js +14 -0
  162. package/browser/Interactions/External/Bubble/IBubblerProcessParam.d.ts +6 -0
  163. package/browser/Interactions/External/Bubble/ProcessBubbleType.d.ts +3 -0
  164. package/browser/Interactions/External/Bubble/ProcessBubbleType.js +3 -0
  165. package/browser/Interactions/External/Bubble/index.d.ts +1 -1
  166. package/browser/Interactions/External/Bubble/index.js +2 -2
  167. package/browser/Interactions/External/Connect/Connector.d.ts +7 -0
  168. package/browser/Interactions/External/Connect/Connector.js +8 -0
  169. package/browser/Interactions/External/Connect/index.d.ts +1 -1
  170. package/browser/Interactions/External/Connect/index.js +2 -2
  171. package/browser/Interactions/External/Grab/Grabber.d.ts +4 -0
  172. package/browser/Interactions/External/Grab/Grabber.js +9 -0
  173. package/browser/Interactions/External/Grab/index.d.ts +1 -1
  174. package/browser/Interactions/External/Grab/index.js +2 -2
  175. package/browser/Interactions/External/Repulse/Repulser.d.ts +4 -0
  176. package/browser/Interactions/External/Repulse/Repulser.js +162 -0
  177. package/browser/Interactions/External/Repulse/index.d.ts +1 -1
  178. package/browser/Interactions/External/Repulse/index.js +2 -2
  179. package/browser/Interactions/External/Trail/TrailMaker.d.ts +3 -0
  180. package/browser/Interactions/External/Trail/TrailMaker.js +4 -0
  181. package/browser/Interactions/External/Trail/index.d.ts +1 -1
  182. package/browser/Interactions/External/Trail/index.js +2 -2
  183. package/browser/Interactions/Particles/Attract/Attractor.d.ts +3 -0
  184. package/browser/Interactions/Particles/Attract/Attractor.js +4 -0
  185. package/browser/Interactions/Particles/Attract/index.d.ts +1 -1
  186. package/browser/Interactions/Particles/Attract/index.js +2 -2
  187. package/browser/Interactions/Particles/Collisions/Collider.d.ts +3 -0
  188. package/browser/Interactions/Particles/Collisions/Collider.js +4 -0
  189. package/browser/Interactions/Particles/Collisions/index.d.ts +1 -1
  190. package/browser/Interactions/Particles/Collisions/index.js +2 -2
  191. package/browser/Interactions/Particles/Links/ILink.d.ts +6 -0
  192. package/browser/Interactions/Particles/Links/LinkInstance.js +8 -0
  193. package/browser/Interactions/Particles/Links/Linker.js +2 -0
  194. package/browser/Interactions/Particles/Links/index.d.ts +2 -2
  195. package/browser/Interactions/Particles/Links/index.js +5 -5
  196. package/browser/Interactions/Particles/Links/plugin.d.ts +1 -1
  197. package/browser/Interactions/Particles/Links/plugin.js +3 -2
  198. package/browser/Options/Classes/AnimatableColor.d.ts +4 -0
  199. package/browser/Options/Classes/AnimatableColor.js +4 -0
  200. package/browser/Options/Classes/Background/Background.d.ts +4 -0
  201. package/browser/Options/Classes/Background/Background.js +4 -0
  202. package/browser/Options/Classes/BackgroundMask/BackgroundMask.d.ts +14 -0
  203. package/browser/Options/Classes/BackgroundMask/BackgroundMask.js +4 -0
  204. package/browser/Options/Classes/BackgroundMask/BackgroundMaskCover.d.ts +3 -0
  205. package/browser/Options/Classes/BackgroundMask/BackgroundMaskCover.js +3 -0
  206. package/browser/Options/Classes/ColorAnimation.d.ts +3 -0
  207. package/browser/Options/Classes/ColorAnimation.js +3 -0
  208. package/browser/Options/Classes/FullScreen/FullScreen.d.ts +16 -0
  209. package/browser/Options/Classes/FullScreen/FullScreen.js +8 -2
  210. package/browser/Options/Classes/Interactivity/Events/ClickEvent.d.ts +10 -0
  211. package/browser/Options/Classes/Interactivity/Events/ClickEvent.js +4 -0
  212. package/browser/Options/Classes/Interactivity/Events/DivEvent.d.ts +37 -0
  213. package/browser/Options/Classes/Interactivity/Events/DivEvent.js +33 -0
  214. package/browser/Options/Classes/Interactivity/Events/Events.d.ts +31 -0
  215. package/browser/Options/Classes/Interactivity/Events/Events.js +31 -0
  216. package/browser/Options/Classes/Interactivity/Events/HoverEvent.d.ts +4 -0
  217. package/browser/Options/Classes/Interactivity/Events/HoverEvent.js +4 -0
  218. package/browser/Options/Classes/Interactivity/Events/Parallax.d.ts +3 -0
  219. package/browser/Options/Classes/Interactivity/Events/Parallax.js +3 -0
  220. package/browser/Options/Classes/Interactivity/Interactivity.d.ts +13 -0
  221. package/browser/Options/Classes/Interactivity/Interactivity.js +14 -1
  222. package/browser/Options/Classes/Interactivity/Modes/Attract.d.ts +3 -0
  223. package/browser/Options/Classes/Interactivity/Modes/Attract.js +3 -0
  224. package/browser/Options/Classes/Interactivity/Modes/Bubble.d.ts +3 -0
  225. package/browser/Options/Classes/Interactivity/Modes/Bubble.js +3 -0
  226. package/browser/Options/Classes/Interactivity/Modes/BubbleBase.d.ts +3 -0
  227. package/browser/Options/Classes/Interactivity/Modes/BubbleBase.js +3 -0
  228. package/browser/Options/Classes/Interactivity/Modes/BubbleDiv.d.ts +9 -0
  229. package/browser/Options/Classes/Interactivity/Modes/BubbleDiv.js +9 -0
  230. package/browser/Options/Classes/Interactivity/Modes/Connect.d.ts +21 -0
  231. package/browser/Options/Classes/Interactivity/Modes/Connect.js +21 -0
  232. package/browser/Options/Classes/Interactivity/Modes/ConnectLinks.d.ts +3 -0
  233. package/browser/Options/Classes/Interactivity/Modes/ConnectLinks.js +3 -0
  234. package/browser/Options/Classes/Interactivity/Modes/Grab.d.ts +21 -0
  235. package/browser/Options/Classes/Interactivity/Modes/Grab.js +21 -0
  236. package/browser/Options/Classes/Interactivity/Modes/GrabLinks.d.ts +3 -0
  237. package/browser/Options/Classes/Interactivity/Modes/GrabLinks.js +3 -0
  238. package/browser/Options/Classes/Interactivity/Modes/Modes.d.ts +4 -0
  239. package/browser/Options/Classes/Interactivity/Modes/Modes.js +4 -0
  240. package/browser/Options/Classes/Interactivity/Modes/Push.d.ts +12 -0
  241. package/browser/Options/Classes/Interactivity/Modes/Push.js +12 -0
  242. package/browser/Options/Classes/Interactivity/Modes/Remove.d.ts +12 -0
  243. package/browser/Options/Classes/Interactivity/Modes/Remove.js +12 -0
  244. package/browser/Options/Classes/Interactivity/Modes/Repulse.d.ts +3 -0
  245. package/browser/Options/Classes/Interactivity/Modes/Repulse.js +3 -0
  246. package/browser/Options/Classes/Interactivity/Modes/RepulseBase.d.ts +3 -0
  247. package/browser/Options/Classes/Interactivity/Modes/RepulseBase.js +3 -0
  248. package/browser/Options/Classes/Interactivity/Modes/RepulseDiv.d.ts +9 -0
  249. package/browser/Options/Classes/Interactivity/Modes/RepulseDiv.js +11 -0
  250. package/browser/Options/Classes/Interactivity/Modes/Slow.d.ts +9 -0
  251. package/browser/Options/Classes/Interactivity/Modes/Slow.js +10 -0
  252. package/browser/Options/Classes/Interactivity/Modes/Trail.d.ts +3 -0
  253. package/browser/Options/Classes/Interactivity/Modes/Trail.js +3 -0
  254. package/browser/Options/Classes/Motion/Motion.d.ts +11 -0
  255. package/browser/Options/Classes/Motion/Motion.js +4 -0
  256. package/browser/Options/Classes/Motion/MotionReduce.d.ts +9 -0
  257. package/browser/Options/Classes/Motion/MotionReduce.js +3 -0
  258. package/browser/Options/Classes/Options.d.ts +31 -1
  259. package/browser/Options/Classes/Options.js +36 -3
  260. package/browser/Options/Classes/OptionsColor.d.ts +4 -0
  261. package/browser/Options/Classes/OptionsColor.js +4 -0
  262. package/browser/Options/Classes/Particles/Collisions/Collisions.d.ts +4 -0
  263. package/browser/Options/Classes/Particles/Collisions/Collisions.js +4 -0
  264. package/browser/Options/Classes/Particles/Links/Links.d.ts +4 -0
  265. package/browser/Options/Classes/Particles/Links/Links.js +4 -0
  266. package/browser/Options/Classes/Particles/Links/LinksShadow.d.ts +3 -0
  267. package/browser/Options/Classes/Particles/Links/LinksShadow.js +3 -0
  268. package/browser/Options/Classes/Particles/Links/LinksTriangle.d.ts +3 -0
  269. package/browser/Options/Classes/Particles/Links/LinksTriangle.js +3 -0
  270. package/browser/Options/Classes/Particles/Move/Attract.d.ts +21 -0
  271. package/browser/Options/Classes/Particles/Move/Attract.js +21 -0
  272. package/browser/Options/Classes/Particles/Move/Move.d.ts +42 -0
  273. package/browser/Options/Classes/Particles/Move/Move.js +43 -0
  274. package/browser/Options/Classes/Particles/Move/MoveAngle.d.ts +3 -0
  275. package/browser/Options/Classes/Particles/Move/MoveAngle.js +4 -1
  276. package/browser/Options/Classes/Particles/Move/Path/Path.d.ts +3 -0
  277. package/browser/Options/Classes/Particles/Move/Path/Path.js +3 -0
  278. package/browser/Options/Classes/Particles/Move/Trail.d.ts +3 -0
  279. package/browser/Options/Classes/Particles/Move/Trail.js +3 -0
  280. package/browser/Options/Classes/Particles/Number/Density.d.ts +12 -0
  281. package/browser/Options/Classes/Particles/Number/Density.js +12 -0
  282. package/browser/Options/Classes/Particles/Number/ParticlesNumber.d.ts +10 -0
  283. package/browser/Options/Classes/Particles/Number/ParticlesNumber.js +10 -0
  284. package/browser/Options/Classes/Particles/Opacity/Opacity.d.ts +13 -0
  285. package/browser/Options/Classes/Particles/Opacity/Opacity.js +13 -0
  286. package/browser/Options/Classes/Particles/Opacity/OpacityAnimation.d.ts +15 -0
  287. package/browser/Options/Classes/Particles/Opacity/OpacityAnimation.js +12 -0
  288. package/browser/Options/Classes/Particles/Orbit/Orbit.d.ts +4 -0
  289. package/browser/Options/Classes/Particles/Orbit/Orbit.js +4 -0
  290. package/browser/Options/Classes/Particles/Orbit/OrbitRotation.d.ts +3 -0
  291. package/browser/Options/Classes/Particles/Orbit/OrbitRotation.js +3 -0
  292. package/browser/Options/Classes/Particles/ParticlesOptions.d.ts +22 -0
  293. package/browser/Options/Classes/Particles/ParticlesOptions.js +22 -0
  294. package/browser/Options/Classes/Particles/Repulse/Repulse.d.ts +3 -0
  295. package/browser/Options/Classes/Particles/Repulse/Repulse.js +3 -0
  296. package/browser/Options/Classes/Particles/Rotate/Rotate.d.ts +4 -0
  297. package/browser/Options/Classes/Particles/Rotate/Rotate.js +4 -0
  298. package/browser/Options/Classes/Particles/Rotate/RotateAnimation.d.ts +3 -0
  299. package/browser/Options/Classes/Particles/Rotate/RotateAnimation.js +3 -0
  300. package/browser/Options/Classes/Particles/Shadow.d.ts +4 -0
  301. package/browser/Options/Classes/Particles/Shadow.js +4 -0
  302. package/browser/Options/Classes/Particles/Shape/Shape.d.ts +42 -0
  303. package/browser/Options/Classes/Particles/Shape/Shape.js +43 -0
  304. package/browser/Options/Classes/Particles/Size/Size.d.ts +13 -0
  305. package/browser/Options/Classes/Particles/Size/Size.js +13 -0
  306. package/browser/Options/Classes/Particles/Size/SizeAnimation.d.ts +15 -0
  307. package/browser/Options/Classes/Particles/Size/SizeAnimation.js +12 -0
  308. package/browser/Options/Classes/Particles/Stroke.d.ts +4 -0
  309. package/browser/Options/Classes/Particles/Stroke.js +4 -0
  310. package/browser/Options/Classes/Particles/Tilt/Tilt.d.ts +4 -0
  311. package/browser/Options/Classes/Particles/Tilt/Tilt.js +4 -0
  312. package/browser/Options/Classes/Particles/Tilt/TiltAnimation.d.ts +3 -0
  313. package/browser/Options/Classes/Particles/Tilt/TiltAnimation.js +3 -0
  314. package/browser/Options/Classes/Particles/Twinkle/Twinkle.d.ts +4 -0
  315. package/browser/Options/Classes/Particles/Twinkle/Twinkle.js +4 -0
  316. package/browser/Options/Classes/Particles/Twinkle/TwinkleValues.d.ts +3 -0
  317. package/browser/Options/Classes/Particles/Twinkle/TwinkleValues.js +3 -0
  318. package/browser/Options/Classes/Particles/ZIndex/ZIndex.d.ts +3 -0
  319. package/browser/Options/Classes/Particles/ZIndex/ZIndex.js +3 -0
  320. package/browser/Options/Classes/Responsive.d.ts +2 -0
  321. package/browser/Options/Classes/Responsive.js +11 -0
  322. package/browser/Options/Classes/ValueWithRandom.d.ts +3 -0
  323. package/browser/Options/Interfaces/Background/IBackground.d.ts +35 -0
  324. package/browser/Options/Interfaces/BackgroundMask/IBackgroundMask.d.ts +21 -0
  325. package/browser/Options/Interfaces/BackgroundMask/IBackgroundMaskCover.d.ts +10 -0
  326. package/browser/Options/Interfaces/FullScreen/IFullScreen.d.ts +16 -0
  327. package/browser/Options/Interfaces/IAnimatableColor.d.ts +8 -0
  328. package/browser/Options/Interfaces/IAnimation.d.ts +10 -0
  329. package/browser/Options/Interfaces/IColorAnimation.d.ts +7 -0
  330. package/browser/Options/Interfaces/IColorAnimation.js +4 -0
  331. package/browser/Options/Interfaces/IManualParticle.d.ts +11 -0
  332. package/browser/Options/Interfaces/IOptionLoader.d.ts +9 -0
  333. package/browser/Options/Interfaces/IOptions.d.ts +71 -0
  334. package/browser/Options/Interfaces/IOptionsColor.d.ts +5 -0
  335. package/browser/Options/Interfaces/IResponsive.d.ts +2 -0
  336. package/browser/Options/Interfaces/IValueWithRandom.d.ts +3 -0
  337. package/browser/Options/Interfaces/Interactivity/Events/IClickEvent.d.ts +12 -0
  338. package/browser/Options/Interfaces/Interactivity/Events/IDivEvent.d.ts +13 -0
  339. package/browser/Options/Interfaces/Interactivity/Events/IEvents.d.ts +13 -0
  340. package/browser/Options/Interfaces/Interactivity/Events/IHoverEvent.d.ts +4 -0
  341. package/browser/Options/Interfaces/Interactivity/Events/IParallax.d.ts +3 -0
  342. package/browser/Options/Interfaces/Interactivity/IInteractivity.d.ts +20 -0
  343. package/browser/Options/Interfaces/Interactivity/Modes/IAttract.d.ts +3 -0
  344. package/browser/Options/Interfaces/Interactivity/Modes/IBubble.d.ts +3 -0
  345. package/browser/Options/Interfaces/Interactivity/Modes/IBubbleBase.d.ts +3 -0
  346. package/browser/Options/Interfaces/Interactivity/Modes/IBubbleDiv.d.ts +3 -0
  347. package/browser/Options/Interfaces/Interactivity/Modes/IConnect.d.ts +9 -0
  348. package/browser/Options/Interfaces/Interactivity/Modes/IConnectLinks.d.ts +3 -0
  349. package/browser/Options/Interfaces/Interactivity/Modes/IGrab.d.ts +9 -0
  350. package/browser/Options/Interfaces/Interactivity/Modes/IGrabLinks.d.ts +3 -0
  351. package/browser/Options/Interfaces/Interactivity/Modes/IModeDiv.d.ts +6 -0
  352. package/browser/Options/Interfaces/Interactivity/Modes/IModes.d.ts +4 -0
  353. package/browser/Options/Interfaces/Interactivity/Modes/IPush.d.ts +6 -0
  354. package/browser/Options/Interfaces/Interactivity/Modes/IRemove.d.ts +6 -0
  355. package/browser/Options/Interfaces/Interactivity/Modes/IRepulse.d.ts +3 -0
  356. package/browser/Options/Interfaces/Interactivity/Modes/IRepulseBase.d.ts +3 -0
  357. package/browser/Options/Interfaces/Interactivity/Modes/IRepulseDiv.d.ts +3 -0
  358. package/browser/Options/Interfaces/Interactivity/Modes/ISlow.d.ts +6 -0
  359. package/browser/Options/Interfaces/Interactivity/Modes/ITrail.d.ts +3 -0
  360. package/browser/Options/Interfaces/Motion/IMotion.d.ts +11 -0
  361. package/browser/Options/Interfaces/Motion/IMotionReduce.d.ts +9 -0
  362. package/browser/Options/Interfaces/Particles/Collisions/ICollisions.d.ts +4 -0
  363. package/browser/Options/Interfaces/Particles/Destroy/IDestroy.d.ts +4 -0
  364. package/browser/Options/Interfaces/Particles/IParticles.d.ts +10 -0
  365. package/browser/Options/Interfaces/Particles/IShadow.d.ts +4 -0
  366. package/browser/Options/Interfaces/Particles/IStroke.d.ts +14 -0
  367. package/browser/Options/Interfaces/Particles/Links/ILinks.d.ts +43 -0
  368. package/browser/Options/Interfaces/Particles/Links/ILinksShadow.d.ts +3 -0
  369. package/browser/Options/Interfaces/Particles/Links/ILinksTriangle.d.ts +3 -0
  370. package/browser/Options/Interfaces/Particles/Move/IAttract.d.ts +9 -0
  371. package/browser/Options/Interfaces/Particles/Move/IMove.d.ts +19 -0
  372. package/browser/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +3 -0
  373. package/browser/Options/Interfaces/Particles/Move/ITrail.d.ts +3 -0
  374. package/browser/Options/Interfaces/Particles/Move/Path/iPath.d.ts +3 -0
  375. package/browser/Options/Interfaces/Particles/Number/IDensity.d.ts +6 -0
  376. package/browser/Options/Interfaces/Particles/Number/IParticlesNumber.d.ts +7 -0
  377. package/browser/Options/Interfaces/Particles/Opacity/IOpacity.d.ts +7 -0
  378. package/browser/Options/Interfaces/Particles/Opacity/IOpacityAnimation.d.ts +9 -0
  379. package/browser/Options/Interfaces/Particles/Orbit/IOrbit.d.ts +7 -0
  380. package/browser/Options/Interfaces/Particles/Repulse/IRepulse.d.ts +4 -0
  381. package/browser/Options/Interfaces/Particles/Rotate/IRotate.d.ts +4 -0
  382. package/browser/Options/Interfaces/Particles/Rotate/IRotateAnimation.d.ts +3 -0
  383. package/browser/Options/Interfaces/Particles/Shape/ICharacterShape.d.ts +3 -0
  384. package/browser/Options/Interfaces/Particles/Shape/IImageShape.d.ts +6 -0
  385. package/browser/Options/Interfaces/Particles/Shape/IPolygonShape.d.ts +6 -0
  386. package/browser/Options/Interfaces/Particles/Shape/IShape.d.ts +22 -0
  387. package/browser/Options/Interfaces/Particles/Shape/IStarShape.d.ts +6 -0
  388. package/browser/Options/Interfaces/Particles/Size/ISize.d.ts +7 -0
  389. package/browser/Options/Interfaces/Particles/Size/ISizeAnimation.d.ts +9 -0
  390. package/browser/Options/Interfaces/Particles/Tilt/ITilt.d.ts +4 -0
  391. package/browser/Options/Interfaces/Particles/Tilt/ITiltAnimation.d.ts +3 -0
  392. package/browser/Options/Interfaces/Particles/Twinkle/ITwinkle.d.ts +4 -0
  393. package/browser/Options/Interfaces/Particles/Twinkle/ITwinkleValues.d.ts +3 -0
  394. package/browser/Options/Interfaces/Particles/ZIndex/IZIndex.d.ts +4 -0
  395. package/browser/Options/Interfaces/Theme/ITheme.d.ts +14 -0
  396. package/browser/Options/Interfaces/Theme/IThemeDefault.d.ts +16 -0
  397. package/browser/Plugins/Absorbers/AbsorberInstance.d.ts +3 -0
  398. package/browser/Plugins/Absorbers/AbsorberInstance.js +3 -0
  399. package/browser/Plugins/Absorbers/Absorbers.d.ts +3 -0
  400. package/browser/Plugins/Absorbers/Absorbers.js +3 -0
  401. package/browser/Plugins/Absorbers/Enums/AbsorberClickMode.d.ts +3 -0
  402. package/browser/Plugins/Absorbers/Enums/AbsorberClickMode.js +3 -0
  403. package/browser/Plugins/Absorbers/Options/Classes/Absorber.d.ts +4 -0
  404. package/browser/Plugins/Absorbers/Options/Classes/Absorber.js +4 -0
  405. package/browser/Plugins/Absorbers/Options/Interfaces/IAbsorber.d.ts +29 -0
  406. package/browser/Plugins/Absorbers/Options/Interfaces/IAbsorberOptions.d.ts +3 -0
  407. package/browser/Plugins/Absorbers/plugin.d.ts +1 -1
  408. package/browser/Plugins/Absorbers/plugin.js +5 -2
  409. package/browser/Plugins/Emitters/EmitterInstance.d.ts +3 -0
  410. package/browser/Plugins/Emitters/EmitterInstance.js +3 -0
  411. package/browser/Plugins/Emitters/Emitters.d.ts +3 -0
  412. package/browser/Plugins/Emitters/Emitters.js +3 -0
  413. package/browser/Plugins/Emitters/Enums/EmitterClickMode.d.ts +3 -0
  414. package/browser/Plugins/Emitters/Enums/EmitterClickMode.js +3 -0
  415. package/browser/Plugins/Emitters/Options/Classes/Emitter.d.ts +4 -0
  416. package/browser/Plugins/Emitters/Options/Classes/Emitter.js +4 -0
  417. package/browser/Plugins/Emitters/Options/Classes/EmitterLife.d.ts +3 -0
  418. package/browser/Plugins/Emitters/Options/Classes/EmitterLife.js +3 -0
  419. package/browser/Plugins/Emitters/Options/Classes/EmitterRate.d.ts +3 -0
  420. package/browser/Plugins/Emitters/Options/Classes/EmitterRate.js +3 -0
  421. package/browser/Plugins/Emitters/Options/Classes/EmitterSize.d.ts +3 -0
  422. package/browser/Plugins/Emitters/Options/Classes/EmitterSize.js +3 -0
  423. package/browser/Plugins/Emitters/Options/Interfaces/IEmitter.d.ts +44 -0
  424. package/browser/Plugins/Emitters/Options/Interfaces/IEmitterLife.d.ts +19 -0
  425. package/browser/Plugins/Emitters/Options/Interfaces/IEmitterOptions.d.ts +3 -0
  426. package/browser/Plugins/Emitters/Options/Interfaces/IEmitterRate.d.ts +11 -0
  427. package/browser/Plugins/Emitters/Options/Interfaces/IEmitterSize.d.ts +3 -0
  428. package/browser/Plugins/Emitters/Shapes/Square/SquareShape.js +4 -0
  429. package/browser/Plugins/Emitters/plugin.d.ts +1 -1
  430. package/browser/Plugins/Emitters/plugin.js +5 -2
  431. package/browser/Plugins/PolygonMask/Options/Classes/Draw.d.ts +15 -0
  432. package/browser/Plugins/PolygonMask/Options/Classes/Draw.js +15 -0
  433. package/browser/Plugins/PolygonMask/Options/Classes/DrawStroke.d.ts +3 -0
  434. package/browser/Plugins/PolygonMask/Options/Classes/DrawStroke.js +3 -0
  435. package/browser/Plugins/PolygonMask/Options/Classes/Inline.d.ts +3 -0
  436. package/browser/Plugins/PolygonMask/Options/Classes/Inline.js +3 -0
  437. package/browser/Plugins/PolygonMask/Options/Classes/LocalSvg.d.ts +3 -0
  438. package/browser/Plugins/PolygonMask/Options/Classes/LocalSvg.js +3 -0
  439. package/browser/Plugins/PolygonMask/Options/Classes/Move.d.ts +3 -0
  440. package/browser/Plugins/PolygonMask/Options/Classes/Move.js +3 -0
  441. package/browser/Plugins/PolygonMask/Options/Classes/PolygonMask.d.ts +10 -0
  442. package/browser/Plugins/PolygonMask/Options/Classes/PolygonMask.js +10 -0
  443. package/browser/Plugins/PolygonMask/Options/Interfaces/IDraw.d.ts +9 -0
  444. package/browser/Plugins/PolygonMask/Options/Interfaces/IDrawStroke.d.ts +3 -0
  445. package/browser/Plugins/PolygonMask/Options/Interfaces/IInline.d.ts +3 -0
  446. package/browser/Plugins/PolygonMask/Options/Interfaces/ILocalSvg.d.ts +3 -0
  447. package/browser/Plugins/PolygonMask/Options/Interfaces/IMove.d.ts +3 -0
  448. package/browser/Plugins/PolygonMask/Options/Interfaces/IPolygonMask.d.ts +7 -0
  449. package/browser/Plugins/PolygonMask/Options/Interfaces/IPolygonMaskOptions.d.ts +3 -0
  450. package/browser/Plugins/PolygonMask/PolygonMaskInstance.d.ts +12 -0
  451. package/browser/Plugins/PolygonMask/PolygonMaskInstance.js +22 -0
  452. package/browser/Plugins/PolygonMask/pathseg.js +55 -1
  453. package/browser/Plugins/PolygonMask/plugin.js +8 -2
  454. package/browser/Plugins/PolygonMask/utils.js +14 -2
  455. package/browser/Shapes/Circle/CircleDrawer.d.ts +3 -0
  456. package/browser/Shapes/Circle/CircleDrawer.js +3 -0
  457. package/browser/Shapes/Circle/index.d.ts +1 -1
  458. package/browser/Shapes/Circle/index.js +2 -2
  459. package/browser/Shapes/Image/ImageDrawer.d.ts +3 -0
  460. package/browser/Shapes/Image/ImageDrawer.js +6 -0
  461. package/browser/Shapes/Image/Utils.d.ts +3 -0
  462. package/browser/Shapes/Image/Utils.js +1 -0
  463. package/browser/Shapes/Image/index.d.ts +1 -1
  464. package/browser/Shapes/Image/index.js +3 -3
  465. package/browser/Shapes/Line/LineDrawer.d.ts +3 -0
  466. package/browser/Shapes/Line/LineDrawer.js +3 -0
  467. package/browser/Shapes/Line/index.d.ts +1 -1
  468. package/browser/Shapes/Line/index.js +2 -2
  469. package/browser/Shapes/Polygon/PolygonDrawer.d.ts +3 -0
  470. package/browser/Shapes/Polygon/PolygonDrawer.js +3 -0
  471. package/browser/Shapes/Polygon/PolygonDrawerBase.d.ts +3 -0
  472. package/browser/Shapes/Polygon/PolygonDrawerBase.js +5 -1
  473. package/browser/Shapes/Polygon/TriangleDrawer.d.ts +3 -0
  474. package/browser/Shapes/Polygon/TriangleDrawer.js +3 -0
  475. package/browser/Shapes/Polygon/index.d.ts +3 -3
  476. package/browser/Shapes/Polygon/index.js +7 -7
  477. package/browser/Shapes/Square/SquareDrawer.d.ts +3 -0
  478. package/browser/Shapes/Square/SquareDrawer.js +3 -0
  479. package/browser/Shapes/Square/index.d.ts +1 -1
  480. package/browser/Shapes/Square/index.js +3 -3
  481. package/browser/Shapes/Star/StarDrawer.d.ts +3 -0
  482. package/browser/Shapes/Star/StarDrawer.js +3 -0
  483. package/browser/Shapes/Star/index.d.ts +1 -1
  484. package/browser/Shapes/Star/index.js +2 -2
  485. package/browser/Shapes/Text/TextDrawer.d.ts +3 -0
  486. package/browser/Shapes/Text/TextDrawer.js +3 -0
  487. package/browser/Shapes/Text/index.d.ts +1 -1
  488. package/browser/Shapes/Text/index.js +2 -2
  489. package/browser/Types/ParticlesGroups.d.ts +4 -0
  490. package/browser/Types/RecursivePartial.d.ts +3 -0
  491. package/browser/Types/ShapeData.d.ts +3 -0
  492. package/browser/Types/ShapeDrawerFunctions.d.ts +21 -0
  493. package/browser/Types/SingleOrMultiple.d.ts +3 -0
  494. package/browser/Updaters/Angle/index.d.ts +1 -1
  495. package/browser/Updaters/Angle/index.js +2 -2
  496. package/browser/Updaters/Color/ColorUpdater.js +1 -0
  497. package/browser/Updaters/Color/index.d.ts +1 -1
  498. package/browser/Updaters/Color/index.js +2 -2
  499. package/browser/Updaters/Life/LifeUpdater.js +1 -0
  500. package/browser/Updaters/Life/index.d.ts +1 -1
  501. package/browser/Updaters/Life/index.js +2 -2
  502. package/browser/Updaters/Opacity/OpacityUpdater.js +1 -0
  503. package/browser/Updaters/Opacity/index.d.ts +1 -1
  504. package/browser/Updaters/Opacity/index.js +2 -2
  505. package/browser/Updaters/OutModes/OutOfCanvasUpdater.js +1 -0
  506. package/browser/Updaters/OutModes/index.d.ts +1 -1
  507. package/browser/Updaters/OutModes/index.js +2 -2
  508. package/browser/Updaters/Roll/index.d.ts +1 -1
  509. package/browser/Updaters/Roll/index.js +2 -2
  510. package/browser/Updaters/Size/SizeUpdater.js +1 -0
  511. package/browser/Updaters/Size/index.d.ts +1 -1
  512. package/browser/Updaters/Size/index.js +2 -2
  513. package/browser/Updaters/StrokeColor/StrokeColorUpdater.js +1 -0
  514. package/browser/Updaters/StrokeColor/index.d.ts +1 -1
  515. package/browser/Updaters/StrokeColor/index.js +2 -2
  516. package/browser/Updaters/Tilt/index.d.ts +1 -1
  517. package/browser/Updaters/Tilt/index.js +2 -2
  518. package/browser/Updaters/Wobble/index.d.ts +1 -1
  519. package/browser/Updaters/Wobble/index.js +2 -2
  520. package/browser/Utils/CanvasUtils.js +4 -0
  521. package/browser/Utils/Circle.d.ts +3 -0
  522. package/browser/Utils/Circle.js +3 -0
  523. package/browser/Utils/CircleWarp.d.ts +3 -0
  524. package/browser/Utils/CircleWarp.js +3 -0
  525. package/browser/Utils/ColorUtils.d.ts +20 -0
  526. package/browser/Utils/ColorUtils.js +33 -1
  527. package/browser/Utils/Constants.d.ts +7 -0
  528. package/browser/Utils/Constants.js +7 -0
  529. package/browser/Utils/EventListeners.d.ts +32 -0
  530. package/browser/Utils/EventListeners.js +40 -0
  531. package/browser/Utils/NumberUtils.d.ts +27 -0
  532. package/browser/Utils/NumberUtils.js +27 -0
  533. package/browser/Utils/Plugins.d.ts +3 -0
  534. package/browser/Utils/Plugins.js +3 -0
  535. package/browser/Utils/Point.d.ts +3 -0
  536. package/browser/Utils/Point.js +3 -0
  537. package/browser/Utils/QuadTree.d.ts +3 -0
  538. package/browser/Utils/QuadTree.js +3 -0
  539. package/browser/Utils/Range.d.ts +3 -0
  540. package/browser/Utils/Range.js +3 -0
  541. package/browser/Utils/Rectangle.d.ts +3 -0
  542. package/browser/Utils/Rectangle.js +3 -0
  543. package/browser/Utils/Utils.d.ts +6 -2
  544. package/browser/Utils/Utils.js +14 -0
  545. package/browser/full.d.ts +1 -1
  546. package/browser/full.js +14 -6
  547. package/browser/index.d.ts +1 -2
  548. package/browser/index.js +2 -2
  549. package/browser/index.slim.d.ts +1 -2
  550. package/browser/index.slim.js +3 -2
  551. package/browser/main.d.ts +103 -10
  552. package/browser/main.js +114 -11
  553. package/browser/pjs.d.ts +27 -0
  554. package/browser/pjs.js +23 -0
  555. package/browser/slim.d.ts +1 -1
  556. package/browser/slim.js +39 -47
  557. package/esm/Core/Canvas.js +4 -6
  558. package/esm/Core/Container.d.ts +4 -2
  559. package/esm/Core/Container.js +21 -12
  560. package/esm/Core/Loader.d.ts +19 -4
  561. package/esm/Core/Loader.js +80 -18
  562. package/esm/Enums/Modes/ResponsiveMode.d.ts +4 -0
  563. package/esm/Enums/Modes/ResponsiveMode.js +5 -0
  564. package/esm/Enums/Modes/index.d.ts +1 -0
  565. package/esm/Enums/Modes/index.js +1 -0
  566. package/esm/Interactions/External/Attract/index.d.ts +1 -1
  567. package/esm/Interactions/External/Attract/index.js +2 -2
  568. package/esm/Interactions/External/Bounce/index.d.ts +1 -1
  569. package/esm/Interactions/External/Bounce/index.js +2 -2
  570. package/esm/Interactions/External/Bubble/index.d.ts +1 -1
  571. package/esm/Interactions/External/Bubble/index.js +2 -2
  572. package/esm/Interactions/External/Connect/index.d.ts +1 -1
  573. package/esm/Interactions/External/Connect/index.js +2 -2
  574. package/esm/Interactions/External/Grab/index.d.ts +1 -1
  575. package/esm/Interactions/External/Grab/index.js +2 -2
  576. package/esm/Interactions/External/Repulse/index.d.ts +1 -1
  577. package/esm/Interactions/External/Repulse/index.js +2 -2
  578. package/esm/Interactions/External/Trail/index.d.ts +1 -1
  579. package/esm/Interactions/External/Trail/index.js +2 -2
  580. package/esm/Interactions/Particles/Attract/index.d.ts +1 -1
  581. package/esm/Interactions/Particles/Attract/index.js +2 -2
  582. package/esm/Interactions/Particles/Collisions/index.d.ts +1 -1
  583. package/esm/Interactions/Particles/Collisions/index.js +2 -2
  584. package/esm/Interactions/Particles/Links/index.d.ts +2 -2
  585. package/esm/Interactions/Particles/Links/index.js +5 -5
  586. package/esm/Interactions/Particles/Links/plugin.d.ts +1 -1
  587. package/esm/Interactions/Particles/Links/plugin.js +2 -2
  588. package/esm/Options/Classes/FullScreen/FullScreen.js +2 -2
  589. package/esm/Options/Classes/Interactivity/Interactivity.js +1 -1
  590. package/esm/Options/Classes/Options.d.ts +1 -1
  591. package/esm/Options/Classes/Options.js +6 -3
  592. package/esm/Options/Classes/Responsive.d.ts +2 -0
  593. package/esm/Options/Classes/Responsive.js +10 -0
  594. package/esm/Options/Interfaces/IResponsive.d.ts +2 -0
  595. package/esm/Plugins/Absorbers/plugin.d.ts +1 -1
  596. package/esm/Plugins/Absorbers/plugin.js +2 -2
  597. package/esm/Plugins/Emitters/plugin.d.ts +1 -1
  598. package/esm/Plugins/Emitters/plugin.js +2 -2
  599. package/esm/Plugins/PolygonMask/plugin.js +1 -1
  600. package/esm/Shapes/Circle/index.d.ts +1 -1
  601. package/esm/Shapes/Circle/index.js +2 -2
  602. package/esm/Shapes/Image/index.d.ts +1 -1
  603. package/esm/Shapes/Image/index.js +3 -3
  604. package/esm/Shapes/Line/index.d.ts +1 -1
  605. package/esm/Shapes/Line/index.js +2 -2
  606. package/esm/Shapes/Polygon/index.d.ts +3 -3
  607. package/esm/Shapes/Polygon/index.js +7 -7
  608. package/esm/Shapes/Square/index.d.ts +1 -1
  609. package/esm/Shapes/Square/index.js +3 -3
  610. package/esm/Shapes/Star/index.d.ts +1 -1
  611. package/esm/Shapes/Star/index.js +2 -2
  612. package/esm/Shapes/Text/index.d.ts +1 -1
  613. package/esm/Shapes/Text/index.js +2 -2
  614. package/esm/Updaters/Angle/index.d.ts +1 -1
  615. package/esm/Updaters/Angle/index.js +2 -2
  616. package/esm/Updaters/Color/index.d.ts +1 -1
  617. package/esm/Updaters/Color/index.js +2 -2
  618. package/esm/Updaters/Life/index.d.ts +1 -1
  619. package/esm/Updaters/Life/index.js +2 -2
  620. package/esm/Updaters/Opacity/index.d.ts +1 -1
  621. package/esm/Updaters/Opacity/index.js +2 -2
  622. package/esm/Updaters/OutModes/index.d.ts +1 -1
  623. package/esm/Updaters/OutModes/index.js +2 -2
  624. package/esm/Updaters/Roll/index.d.ts +1 -1
  625. package/esm/Updaters/Roll/index.js +2 -2
  626. package/esm/Updaters/Size/index.d.ts +1 -1
  627. package/esm/Updaters/Size/index.js +2 -2
  628. package/esm/Updaters/StrokeColor/index.d.ts +1 -1
  629. package/esm/Updaters/StrokeColor/index.js +2 -2
  630. package/esm/Updaters/Tilt/index.d.ts +1 -1
  631. package/esm/Updaters/Tilt/index.js +2 -2
  632. package/esm/Updaters/Wobble/index.d.ts +1 -1
  633. package/esm/Updaters/Wobble/index.js +2 -2
  634. package/esm/Utils/Utils.d.ts +1 -2
  635. package/esm/full.d.ts +1 -1
  636. package/esm/full.js +14 -6
  637. package/esm/index.d.ts +1 -2
  638. package/esm/index.js +2 -2
  639. package/esm/index.slim.d.ts +1 -2
  640. package/esm/index.slim.js +2 -2
  641. package/esm/main.d.ts +11 -10
  642. package/esm/main.js +18 -7
  643. package/esm/slim.d.ts +1 -1
  644. package/esm/slim.js +39 -47
  645. package/full.d.ts +1 -1
  646. package/full.js +14 -6
  647. package/index.d.ts +1 -2
  648. package/index.js +2 -3
  649. package/index.slim.d.ts +1 -2
  650. package/index.slim.js +2 -3
  651. package/main.d.ts +11 -10
  652. package/main.js +18 -7
  653. package/package.json +1 -1
  654. package/report.html +2 -2
  655. package/report.slim.html +2 -2
  656. package/slim.d.ts +1 -1
  657. package/slim.js +39 -47
  658. package/tsparticles.js +10262 -13560
  659. package/tsparticles.min.js +2 -2
  660. package/tsparticles.pathseg.js +1472 -0
  661. package/tsparticles.slim.js +8305 -11259
  662. package/tsparticles.slim.min.js +2 -2
  663. package/167.js +0 -1779
@@ -1,3 +1,7 @@
1
+ /**
2
+ * [[include:Container.md]]
3
+ * @packageDocumentation
4
+ */
1
5
  import { Canvas } from "./Canvas";
2
6
  import { Particles } from "./Particles";
3
7
  import { Retina } from "./Retina";
@@ -5,7 +9,19 @@ import { FrameManager } from "./FrameManager";
5
9
  import { Options } from "../Options/Classes/Options";
6
10
  import { animate, cancelAnimation, EventListeners, getRangeValue, Plugins } from "../Utils";
7
11
  import { Vector } from "./Particle/Vector";
12
+ /**
13
+ * The object loaded into an HTML element, it'll contain options loaded and all data to let everything working
14
+ * [[include:Container.md]]
15
+ * @category Core
16
+ */
8
17
  export class Container {
18
+ /**
19
+ * This is the core class, create an instance to have a new working particles manager
20
+ * @constructor
21
+ * @param id the id to identify this instance
22
+ * @param sourceOptions the options to load
23
+ * @param presets all the presets to load with options
24
+ */
9
25
  constructor(id, sourceOptions, ...presets) {
10
26
  this.id = id;
11
27
  this.fpsLimit = 60;
@@ -23,6 +39,7 @@ export class Container {
23
39
  this.canvas = new Canvas(this);
24
40
  this.particles = new Particles(this);
25
41
  this.drawer = new FrameManager(this);
42
+ this.presets = presets;
26
43
  this.pathGenerator = {
27
44
  generate: () => {
28
45
  const v = Vector.create(0, 0);
@@ -31,8 +48,10 @@ export class Container {
31
48
  return v;
32
49
  },
33
50
  init: () => {
51
+ // nothing required
34
52
  },
35
53
  update: () => {
54
+ // nothing required
36
55
  },
37
56
  };
38
57
  this.interactivity = {
@@ -47,30 +66,28 @@ export class Container {
47
66
  this.plugins = new Map();
48
67
  this.drawers = new Map();
49
68
  this.density = 1;
69
+ /* tsParticles variables with default values */
50
70
  this._options = new Options();
51
71
  this.actualOptions = new Options();
52
- for (const preset of presets) {
53
- this._options.load(Plugins.getPreset(preset));
54
- }
55
- const shapes = Plugins.getSupportedShapes();
56
- for (const type of shapes) {
57
- const drawer = Plugins.getShapeDrawer(type);
58
- if (drawer) {
59
- this.drawers.set(type, drawer);
60
- }
61
- }
62
- this._options.load(this._sourceOptions);
72
+ /* ---------- tsParticles - start ------------ */
63
73
  this.eventListeners = new EventListeners(this);
64
74
  if (typeof IntersectionObserver !== "undefined" && IntersectionObserver) {
65
75
  this.intersectionObserver = new IntersectionObserver((entries) => this.intersectionManager(entries));
66
76
  }
67
77
  }
78
+ /**
79
+ * The options used by the container, it's a full [[Options]] object
80
+ */
68
81
  get options() {
69
82
  return this._options;
70
83
  }
71
84
  get sourceOptions() {
72
85
  return this._sourceOptions;
73
86
  }
87
+ /**
88
+ * Starts animations and resume from pause
89
+ * @param force
90
+ */
74
91
  play(force) {
75
92
  const needsUpdate = this.paused || force;
76
93
  if (this.firstStart && !this.actualOptions.autoPlay) {
@@ -89,6 +106,9 @@ export class Container {
89
106
  }
90
107
  this.draw(needsUpdate || false);
91
108
  }
109
+ /**
110
+ * Pauses animations
111
+ */
92
112
  pause() {
93
113
  if (this.drawAnimationFrame !== undefined) {
94
114
  cancelAnimation()(this.drawAnimationFrame);
@@ -106,6 +126,9 @@ export class Container {
106
126
  this.paused = true;
107
127
  }
108
128
  }
129
+ /**
130
+ * Draws a frame
131
+ */
109
132
  draw(force) {
110
133
  let refreshTime = force;
111
134
  this.drawAnimationFrame = animate()((timestamp) => {
@@ -116,12 +139,29 @@ export class Container {
116
139
  this.drawer.nextFrame(timestamp);
117
140
  });
118
141
  }
142
+ /**
143
+ * Gets the animation status
144
+ * @returns `true` is playing, `false` is paused
145
+ */
119
146
  getAnimationStatus() {
120
147
  return !this.paused && !this.pageHidden;
121
148
  }
149
+ /**
150
+ * Customise path generation
151
+ * @deprecated Use the new setPath
152
+ * @param noiseOrGenerator the [[IMovePathGenerator]] object or a function that generates a [[Vector]] object from [[Particle]]
153
+ * @param init the [[IMovePathGenerator]] init function, if the first parameter is a generator function
154
+ * @param update the [[IMovePathGenerator]] update function, if the first parameter is a generator function
155
+ */
122
156
  setNoise(noiseOrGenerator, init, update) {
123
157
  this.setPath(noiseOrGenerator, init, update);
124
158
  }
159
+ /**
160
+ * Customise path generation
161
+ * @param pathOrGenerator the [[IMovePathGenerator]] object or a function that generates a [[Vector]] object from [[Particle]]
162
+ * @param init the [[IMovePathGenerator]] init function, if the first parameter is a generator function
163
+ * @param update the [[IMovePathGenerator]] update function, if the first parameter is a generator function
164
+ */
125
165
  setPath(pathOrGenerator, init, update) {
126
166
  if (!pathOrGenerator) {
127
167
  return;
@@ -147,6 +187,9 @@ export class Container {
147
187
  }
148
188
  }
149
189
  }
190
+ /**
191
+ * Destroys the current container, invalidating it
192
+ */
150
193
  destroy() {
151
194
  this.stop();
152
195
  this.canvas.destroy();
@@ -160,17 +203,35 @@ export class Container {
160
203
  }
161
204
  this.destroyed = true;
162
205
  }
206
+ /**
207
+ * @deprecated this method is deprecated, please use the exportImage method
208
+ * @param callback The callback to handle the image
209
+ */
163
210
  exportImg(callback) {
164
211
  this.exportImage(callback);
165
212
  }
213
+ /**
214
+ * Exports the current canvas image, `background` property of `options` won't be rendered because it's css related
215
+ * @param callback The callback to handle the image
216
+ * @param type The exported image type
217
+ * @param quality The exported image quality
218
+ */
166
219
  exportImage(callback, type, quality) {
167
220
  var _a;
168
221
  return (_a = this.canvas.element) === null || _a === void 0 ? void 0 : _a.toBlob(callback, type !== null && type !== void 0 ? type : "image/png", quality);
169
222
  }
223
+ /**
224
+ * Exports the current configuration using `options` property
225
+ * @returns a JSON string created from `options` property
226
+ */
170
227
  exportConfiguration() {
171
228
  return JSON.stringify(this.actualOptions, undefined, 2);
172
229
  }
230
+ /**
231
+ * Restarts the container, just a [[stop]]/[[start]] alias
232
+ */
173
233
  refresh() {
234
+ /* restart */
174
235
  this.stop();
175
236
  return this.start();
176
237
  }
@@ -178,6 +239,9 @@ export class Container {
178
239
  this._options = new Options();
179
240
  return this.refresh();
180
241
  }
242
+ /**
243
+ * Stops the container, opposite to `start`. Clears some resources and stops events.
244
+ */
181
245
  stop() {
182
246
  if (!this.started) {
183
247
  return;
@@ -202,11 +266,19 @@ export class Container {
202
266
  this.particles.linksColors = new Map();
203
267
  delete this.particles.grabLineColor;
204
268
  delete this.particles.linksColor;
269
+ this._sourceOptions = this._options;
205
270
  }
271
+ /**
272
+ * Loads the given theme, overriding the options
273
+ * @param name the theme name, if `undefined` resets the default options or the default theme
274
+ */
206
275
  async loadTheme(name) {
207
276
  this.currentTheme = name;
208
277
  await this.refresh();
209
278
  }
279
+ /**
280
+ * Starts the container, initializes what are needed to create animations and event handling
281
+ */
210
282
  async start() {
211
283
  if (this.started) {
212
284
  return;
@@ -306,12 +378,32 @@ export class Container {
306
378
  el.addEventListener("touchcancel", touchCancelHandler);
307
379
  }
308
380
  updateActualOptions() {
309
- this.actualOptions.setResponsive(this.canvas.size.width, this.retina.pixelRatio, this._options);
381
+ this.actualOptions.responsive = [];
382
+ const newMaxWidth = this.actualOptions.setResponsive(this.canvas.size.width, this.retina.pixelRatio, this._options);
310
383
  this.actualOptions.setTheme(this.currentTheme);
384
+ if (this.responsiveMaxWidth != newMaxWidth) {
385
+ this.responsiveMaxWidth = newMaxWidth;
386
+ return true;
387
+ }
388
+ return false;
311
389
  }
312
390
  async init() {
391
+ this._options = new Options();
392
+ for (const preset of this.presets) {
393
+ this._options.load(Plugins.getPreset(preset));
394
+ }
395
+ const shapes = Plugins.getSupportedShapes();
396
+ for (const type of shapes) {
397
+ const drawer = Plugins.getShapeDrawer(type);
398
+ if (drawer) {
399
+ this.drawers.set(type, drawer);
400
+ }
401
+ }
402
+ /* options settings */
403
+ this._options.load(this._sourceOptions);
313
404
  this.actualOptions = new Options();
314
405
  this.actualOptions.load(this._options);
406
+ /* init canvas + particles */
315
407
  this.retina.init();
316
408
  this.canvas.init();
317
409
  this.updateActualOptions();
@@ -1,6 +1,14 @@
1
1
  import type { Container } from "./Container";
2
+ /**
3
+ * @category Core
4
+ */
2
5
  export declare class FrameManager {
3
6
  private readonly container;
4
7
  constructor(container: Container);
8
+ /**
9
+ * Handles the rAF method preparing the next animation frame to be drawn
10
+ * limiting it if it's needed by the current configuration
11
+ * @param timestamp
12
+ */
5
13
  nextFrame(timestamp: DOMHighResTimeStamp): void;
6
14
  }
@@ -1,11 +1,20 @@
1
+ /**
2
+ * @category Core
3
+ */
1
4
  export class FrameManager {
2
5
  constructor(container) {
3
6
  this.container = container;
4
7
  }
8
+ /**
9
+ * Handles the rAF method preparing the next animation frame to be drawn
10
+ * limiting it if it's needed by the current configuration
11
+ * @param timestamp
12
+ */
5
13
  nextFrame(timestamp) {
6
14
  var _a;
7
15
  try {
8
16
  const container = this.container;
17
+ // FPS limit logic - if we are too fast, just draw without updating
9
18
  if (container.lastFrameTime !== undefined &&
10
19
  timestamp < container.lastFrameTime + 1000 / container.fpsLimit) {
11
20
  container.draw(false);
@@ -1,6 +1,9 @@
1
1
  import type { Container } from "./Container";
2
2
  import type { Particle } from "./Particle";
3
3
  import type { IDelta } from "./Interfaces";
4
+ /**
5
+ * @category Core
6
+ */
4
7
  export declare class InteractionManager {
5
8
  private readonly container;
6
9
  private readonly externalInteractors;
@@ -1,5 +1,8 @@
1
1
  import { Plugins } from "../Utils";
2
2
  import { InteractorType } from "../Enums";
3
+ /**
4
+ * @category Core
5
+ */
3
6
  export class InteractionManager {
4
7
  constructor(container) {
5
8
  this.container = container;
@@ -28,6 +31,7 @@ export class InteractionManager {
28
31
  for (const interactor of this.externalInteractors) {
29
32
  interactor.reset(particle);
30
33
  }
34
+ /* interaction auto between particles */
31
35
  for (const interactor of this.particleInteractors) {
32
36
  if (interactor.isEnabled(particle)) {
33
37
  interactor.interact(particle, delta);
@@ -2,14 +2,28 @@ import type { SingleOrMultiple } from "../../Types";
2
2
  export interface IAlphaColor {
3
3
  a: number;
4
4
  }
5
+ /**
6
+ * Color
7
+ * [[include:Color.md]]
8
+ * @category Interfaces
9
+ */
5
10
  export interface IColor {
11
+ /**
12
+ * Color value, can be a single or an array of [[IValueColor]], [[IRgb]], [[IHsl]] or string
13
+ */
6
14
  value: SingleOrMultiple<IValueColor | IRgb | IHsl | IHsv | SingleOrMultiple<string>>;
7
15
  }
16
+ /**
17
+ * @category Interfaces
18
+ */
8
19
  export interface IHsl {
9
20
  h: number;
10
21
  s: number;
11
22
  l: number;
12
23
  }
24
+ /**
25
+ * @category Interfaces
26
+ */
13
27
  export interface IHsla extends IHsl, IAlphaColor {
14
28
  }
15
29
  export interface IHsv {
@@ -19,13 +33,22 @@ export interface IHsv {
19
33
  }
20
34
  export interface IHsva extends IHsv, IAlphaColor {
21
35
  }
36
+ /**
37
+ * @category Interfaces
38
+ */
22
39
  export interface IRgb {
23
40
  r: number;
24
41
  g: number;
25
42
  b: number;
26
43
  }
44
+ /**
45
+ * @category Interfaces
46
+ */
27
47
  export interface IRgba extends IRgb, IAlphaColor {
28
48
  }
49
+ /**
50
+ * @category Interfaces
51
+ */
29
52
  export interface IValueColor {
30
53
  rgb?: IRgb;
31
54
  hsl?: IHsl;
@@ -1,4 +1,7 @@
1
1
  import type { IParticle } from "./IParticle";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IAttract {
3
6
  particles: IParticle[];
4
7
  finish?: boolean;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @category Interfaces
3
+ */
1
4
  export interface IBounds {
2
5
  bottom: number;
3
6
  left: number;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @category Interfaces
3
+ */
1
4
  export interface IBubble {
2
5
  clicking?: boolean;
3
6
  durationEnd?: boolean;
@@ -1,4 +1,7 @@
1
1
  import type { IHsl } from "./Colors";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IBubbleParticleData {
3
6
  inRange: boolean;
4
7
  opacity?: number;
@@ -1,4 +1,7 @@
1
1
  import type { IMouseData } from "./IMouseData";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IContainerInteractivity {
3
6
  element?: HTMLElement | Window | Node | null;
4
7
  status?: string;
@@ -5,6 +5,9 @@ import type { RecursivePartial } from "../../Types";
5
5
  import type { IOptions } from "../../Options/Interfaces/IOptions";
6
6
  import type { IDelta } from "./IDelta";
7
7
  import type { IColor } from "./Colors";
8
+ /**
9
+ * @category Interfaces
10
+ */
8
11
  export interface IContainerPlugin {
9
12
  clickPositionValid?: (position: ICoordinates) => boolean;
10
13
  draw?: (context: CanvasRenderingContext2D, delta: IDelta) => void;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @category Interfaces
3
+ */
1
4
  export interface ICoordinates {
2
5
  x: number;
3
6
  y: number;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @category Interfaces
3
+ */
1
4
  export interface IDelta {
2
5
  value: number;
3
6
  factor: number;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @category Interfaces
3
+ */
1
4
  export interface IDimension {
2
5
  width: number;
3
6
  height: number;
@@ -1,5 +1,8 @@
1
1
  import type { IInteractor } from "./IInteractor";
2
2
  import type { IDelta } from "./IDelta";
3
+ /**
4
+ * @category Interfaces
5
+ */
3
6
  export interface IExternalInteractor extends IInteractor {
4
7
  isEnabled(): boolean;
5
8
  interact(delta: IDelta): void;
@@ -1,5 +1,8 @@
1
1
  import type { Particle } from "../Particle";
2
2
  import type { InteractorType } from "../../Enums";
3
+ /**
4
+ * @category Interfaces
5
+ */
3
6
  export interface IInteractor {
4
7
  type: InteractorType;
5
8
  reset(particle: Particle): void;
@@ -1,4 +1,7 @@
1
1
  import type { ICoordinates } from "./ICoordinates";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IMouseData {
3
6
  clickPosition?: ICoordinates;
4
7
  position?: ICoordinates;
@@ -1,6 +1,9 @@
1
1
  import type { Container } from "../Container";
2
2
  import type { Particle } from "../Particle";
3
3
  import { Vector } from "../Particle/Vector";
4
+ /**
5
+ * @category Interfaces
6
+ */
4
7
  export interface IMovePathGenerator {
5
8
  generate: (particle: Particle) => Vector;
6
9
  init: (container: Container) => void;
@@ -12,6 +12,9 @@ import type { IParticleGradientAnimation } from "./IParticleGradientAnimation";
12
12
  import type { IParticleRetinaProps } from "./IParticleRetinaProps";
13
13
  import type { IParticleRoll } from "./IParticleRoll";
14
14
  import type { IParticleWobble } from "./IParticleWobble";
15
+ /**
16
+ * @category Interfaces
17
+ */
15
18
  export interface IParticle {
16
19
  misplaced: boolean;
17
20
  randomIndexData?: number;
@@ -1,4 +1,7 @@
1
1
  import type { AnimationStatus } from "../../Enums";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IParticleValueAnimation<T> {
3
6
  enable: boolean;
4
7
  status?: AnimationStatus;
@@ -1,6 +1,9 @@
1
1
  import type { Particle } from "../Particle";
2
2
  import type { IInteractor } from "./IInteractor";
3
3
  import type { IDelta } from "./IDelta";
4
+ /**
5
+ * @category Interfaces
6
+ */
4
7
  export interface IParticlesInteractor extends IInteractor {
5
8
  isEnabled(particle: Particle): boolean;
6
9
  interact(particle: Particle, delta: IDelta): void;
@@ -1,8 +1,16 @@
1
+ /**
2
+ * [[include:Plugins.md]]
3
+ * @packageDocumentation
4
+ */
1
5
  import type { Container } from "../Container";
2
6
  import type { IContainerPlugin } from "./IContainerPlugin";
3
7
  import type { IOptions } from "../../Options/Interfaces/IOptions";
4
8
  import type { RecursivePartial } from "../../Types";
5
9
  import type { Options } from "../../Options/Classes/Options";
10
+ /**
11
+ * [[include:Plugins.md]]
12
+ * @category Interfaces
13
+ */
6
14
  export interface IPlugin {
7
15
  readonly id: string;
8
16
  needsPlugin(options?: RecursivePartial<IOptions>): boolean;
@@ -1,4 +1,7 @@
1
1
  import type { IParticle } from "./IParticle";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IRepulse {
3
6
  particles: IParticle[];
4
7
  finish?: boolean;
@@ -1,4 +1,7 @@
1
1
  import type { ShapeDrawerAfterEffectFunction, ShapeDrawerDestroyFunction, ShapeDrawerDrawFunction, ShapeDrawerInitFunction, ShapeDrawerLoadFunction, ShapeDrawerParticleInitFunction, ShapeDrawerSidesCountFunction } from "../../Types";
2
+ /**
3
+ * @category Interfaces
4
+ */
2
5
  export interface IShapeDrawer {
3
6
  getSidesCount?: ShapeDrawerSidesCountFunction;
4
7
  init?: ShapeDrawerInitFunction;
@@ -1,5 +1,8 @@
1
1
  import type { IParticles } from "../../Options/Interfaces/Particles/IParticles";
2
2
  import type { RecursivePartial } from "../../Types";
3
+ /**
4
+ * @category Options
5
+ */
3
6
  export interface IShapeValues {
4
7
  close?: boolean;
5
8
  fill?: boolean;
@@ -3,12 +3,72 @@ import type { IOptions } from "../Options/Interfaces/IOptions";
3
3
  import type { RecursivePartial } from "../Types";
4
4
  import type { Particle } from "./Particle";
5
5
  import type { SingleOrMultiple } from "../Types";
6
+ interface LoaderParams {
7
+ element?: HTMLElement;
8
+ index?: number;
9
+ options?: SingleOrMultiple<RecursivePartial<IOptions>>;
10
+ tagId?: string;
11
+ }
12
+ interface RemoteLoaderParams {
13
+ element?: HTMLElement;
14
+ index?: number;
15
+ tagId?: string;
16
+ url?: SingleOrMultiple<string>;
17
+ }
18
+ /**
19
+ * Main class for creating the [[Container]] objects
20
+ * @category Core
21
+ */
6
22
  export declare class Loader {
23
+ /**
24
+ * All the [[Container]] objects loaded
25
+ */
7
26
  static dom(): Container[];
27
+ /**
28
+ * Retrieves a [[Container]] from all the objects loaded
29
+ * @param index the object index
30
+ */
8
31
  static domItem(index: number): Container | undefined;
9
- static load(tagId: string, options?: SingleOrMultiple<RecursivePartial<IOptions>>, index?: number): Promise<Container | undefined>;
10
- static set(id: string, domContainer: HTMLElement, options?: SingleOrMultiple<RecursivePartial<IOptions>>, index?: number): Promise<Container | undefined>;
11
- static loadJSON(tagId: string, jsonUrl: SingleOrMultiple<string>, index?: number): Promise<Container | undefined>;
12
- static setJSON(id: string, domContainer: HTMLElement, jsonUrl: SingleOrMultiple<string>, index?: number): Promise<Container | undefined>;
32
+ static loadOptions(params: LoaderParams): Promise<Container | undefined>;
33
+ static loadRemoteOptions(params: RemoteLoaderParams): Promise<Container | undefined>;
34
+ /**
35
+ * Loads the provided options to create a [[Container]] object.
36
+ * @param tagId the particles container element id
37
+ * @param options the options object to initialize the [[Container]]
38
+ * @param index if an options array is provided, this will retrieve the exact index of that array
39
+ */
40
+ static load(tagId: string | SingleOrMultiple<RecursivePartial<IOptions>>, options?: SingleOrMultiple<RecursivePartial<IOptions>> | number, index?: number): Promise<Container | undefined>;
41
+ /**
42
+ * Loads the provided options to create a [[Container]] object.
43
+ * @param id the particles container element id
44
+ * @param domContainer the dom container
45
+ * @param options the options object to initialize the [[Container]]
46
+ * @param index if an options array is provided, this will retrieve the exact index of that array
47
+ */
48
+ static set(id: string | HTMLElement, domContainer: HTMLElement | SingleOrMultiple<RecursivePartial<IOptions>>, options?: SingleOrMultiple<RecursivePartial<IOptions>> | number, index?: number): Promise<Container | undefined>;
49
+ /**
50
+ * Loads the provided json with a GET request. The content will be used to create a [[Container]] object.
51
+ * This method is async, so if you need a callback refer to JavaScript function `fetch`
52
+ * @param tagId the particles container element id
53
+ * @param jsonUrl the json path (or paths array) to use in the GET request
54
+ * @param index the index of the paths array, if a single path is passed this value is ignored
55
+ * @returns A Promise with the [[Container]] object created
56
+ */
57
+ static loadJSON(tagId: string | SingleOrMultiple<string>, jsonUrl?: SingleOrMultiple<string> | number, index?: number): Promise<Container | undefined>;
58
+ /**
59
+ * Loads the provided json with a GET request. The content will be used to create a [[Container]] object.
60
+ * This method is async, so if you need a callback refer to JavaScript function `fetch`
61
+ * @param id the particles container element id
62
+ * @param domContainer the container used to contains the particles
63
+ * @param jsonUrl the json path (or paths array) to use in the GET request
64
+ * @param index the index of the paths array, if a single path is passed this value is ignored
65
+ * @returns A Promise with the [[Container]] object created
66
+ */
67
+ static setJSON(id: string | HTMLElement, domContainer: HTMLElement | SingleOrMultiple<string>, jsonUrl: SingleOrMultiple<string> | (number | undefined), index?: number): Promise<Container | undefined>;
68
+ /**
69
+ * Adds an additional click handler to all the loaded [[Container]] objects.
70
+ * @param callback the function called after the click event is fired
71
+ */
13
72
  static setOnClickHandler(callback: (evt: Event, particles?: Particle[]) => void): void;
14
73
  }
74
+ export {};