@tsparticles/all 4.0.0-beta.0 → 4.0.0-beta.2

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 (816) hide show
  1. package/1028.min.js +1 -0
  2. package/1030.min.js +1 -0
  3. package/1048.min.js +1 -0
  4. package/1051.min.js +1 -0
  5. package/1061.min.js +1 -0
  6. package/1089.min.js +1 -0
  7. package/1120.min.js +1 -0
  8. package/1121.min.js +1 -0
  9. package/1160.min.js +1 -0
  10. package/1167.min.js +1 -0
  11. package/117.min.js +1 -0
  12. package/1201.min.js +1 -0
  13. package/1255.min.js +1 -0
  14. package/143.min.js +1 -0
  15. package/1510.min.js +1 -1
  16. package/{1154.min.js → 1551.min.js} +1 -1
  17. package/1605.min.js +1 -0
  18. package/{6725.min.js → 1611.min.js} +1 -1
  19. package/1661.min.js +1 -0
  20. package/1707.min.js +2 -0
  21. package/{5964.min.js → 1744.min.js} +1 -1
  22. package/1767.min.js +1 -0
  23. package/1818.min.js +2 -0
  24. package/1841.min.js +1 -0
  25. package/1860.min.js +1 -0
  26. package/2004.min.js +1 -0
  27. package/2093.min.js +1 -0
  28. package/{4234.min.js → 2105.min.js} +1 -1
  29. package/2158.min.js +1 -0
  30. package/2177.min.js +1 -0
  31. package/2253.min.js +1 -0
  32. package/2261.min.js +1 -0
  33. package/2265.min.js +1 -0
  34. package/{6458.min.js → 2360.min.js} +1 -1
  35. package/2405.min.js +1 -0
  36. package/2413.min.js +1 -0
  37. package/2425.min.js +1 -0
  38. package/2429.min.js +1 -0
  39. package/2454.min.js +1 -0
  40. package/2554.min.js +1 -0
  41. package/264.min.js +1 -0
  42. package/2643.min.js +1 -0
  43. package/{9929.min.js → 2682.min.js} +1 -1
  44. package/2784.min.js +1 -0
  45. package/{2513.min.js → 2825.min.js} +1 -1
  46. package/2866.min.js +1 -0
  47. package/2908.min.js +1 -0
  48. package/2930.min.js +1 -0
  49. package/{5665.min.js → 2933.min.js} +1 -1
  50. package/2964.min.js +1 -0
  51. package/2971.min.js +1 -0
  52. package/2975.min.js +1 -0
  53. package/301.min.js +1 -0
  54. package/3041.min.js +1 -0
  55. package/{1821.min.js → 3057.min.js} +1 -1
  56. package/3088.min.js +1 -0
  57. package/3089.min.js +1 -0
  58. package/31.min.js +1 -0
  59. package/{2917.min.js → 3128.min.js} +1 -1
  60. package/3150.min.js +1 -1
  61. package/3152.min.js +1 -0
  62. package/3210.min.js +1 -0
  63. package/3248.min.js +1 -0
  64. package/3256.min.js +1 -0
  65. package/3285.min.js +1 -0
  66. package/{4588.min.js → 3304.min.js} +1 -1
  67. package/3323.min.js +1 -0
  68. package/{243.min.js → 335.min.js} +1 -1
  69. package/{9555.min.js → 3362.min.js} +1 -1
  70. package/3471.min.js +1 -0
  71. package/{5227.min.js → 3477.min.js} +1 -1
  72. package/349.min.js +1 -0
  73. package/350.min.js +1 -0
  74. package/{1812.min.js → 3595.min.js} +1 -1
  75. package/3693.min.js +1 -1
  76. package/370.min.js +2 -0
  77. package/{7982.min.js → 3706.min.js} +1 -1
  78. package/3719.min.js +1 -0
  79. package/3728.min.js +1 -0
  80. package/3737.min.js +1 -0
  81. package/3775.min.js +1 -0
  82. package/{4689.min.js → 3861.min.js} +1 -1
  83. package/3875.min.js +1 -0
  84. package/3895.min.js +1 -0
  85. package/394.min.js +1 -0
  86. package/3949.min.js +1 -0
  87. package/{5411.min.js → 3961.min.js} +1 -1
  88. package/3972.min.js +1 -0
  89. package/3983.min.js +1 -0
  90. package/4051.min.js +1 -0
  91. package/4054.min.js +1 -0
  92. package/4074.min.js +1 -0
  93. package/4075.min.js +1 -0
  94. package/4088.min.js +1 -0
  95. package/410.min.js +1 -0
  96. package/4117.min.js +1 -0
  97. package/4129.min.js +1 -0
  98. package/4159.min.js +1 -0
  99. package/4191.min.js +1 -1
  100. package/4198.min.js +1 -0
  101. package/4204.min.js +1 -1
  102. package/{7636.min.js → 4258.min.js} +1 -1
  103. package/4301.min.js +1 -0
  104. package/4306.min.js +1 -0
  105. package/4316.min.js +1 -0
  106. package/{3003.min.js → 4376.min.js} +1 -1
  107. package/{3413.min.js → 4468.min.js} +1 -1
  108. package/4473.min.js +1 -0
  109. package/4489.min.js +1 -0
  110. package/4537.min.js +1 -0
  111. package/{9202.min.js → 4550.min.js} +1 -1
  112. package/4567.min.js +1 -0
  113. package/4592.min.js +1 -0
  114. package/4601.min.js +1 -0
  115. package/465.min.js +1 -1
  116. package/{4724.min.js → 4656.min.js} +1 -1
  117. package/4701.min.js +1 -0
  118. package/4722.min.js +1 -0
  119. package/{7554.min.js → 4726.min.js} +1 -1
  120. package/4837.min.js +1 -0
  121. package/4839.min.js +1 -0
  122. package/4880.min.js +1 -0
  123. package/4887.min.js +1 -0
  124. package/4898.min.js +1 -0
  125. package/4917.min.js +1 -0
  126. package/4952.min.js +1 -0
  127. package/4991.min.js +1 -0
  128. package/5055.min.js +1 -1
  129. package/5077.min.js +1 -0
  130. package/5095.min.js +1 -0
  131. package/5136.min.js +1 -0
  132. package/5174.min.js +1 -0
  133. package/{3233.min.js → 5197.min.js} +1 -1
  134. package/5212.min.js +1 -0
  135. package/5232.min.js +1 -0
  136. package/{3750.min.js → 5260.min.js} +1 -1
  137. package/5264.min.js +1 -0
  138. package/5275.min.js +1 -0
  139. package/5313.min.js +1 -0
  140. package/5325.min.js +1 -0
  141. package/{3573.min.js → 5332.min.js} +1 -1
  142. package/{3793.min.js → 5341.min.js} +1 -1
  143. package/5347.min.js +1 -0
  144. package/5356.min.js +1 -0
  145. package/5402.min.js +1 -0
  146. package/5437.min.js +1 -0
  147. package/5447.min.js +1 -0
  148. package/5453.min.js +1 -0
  149. package/5532.min.js +1 -0
  150. package/5541.min.js +1 -0
  151. package/5589.min.js +1 -0
  152. package/{2926.min.js → 5602.min.js} +1 -1
  153. package/561.min.js +1 -0
  154. package/5641.min.js +1 -0
  155. package/5651.min.js +1 -0
  156. package/{3464.min.js → 5668.min.js} +1 -1
  157. package/5669.min.js +1 -0
  158. package/5686.min.js +1 -0
  159. package/5694.min.js +1 -0
  160. package/5700.min.js +1 -0
  161. package/5719.min.js +1 -0
  162. package/5732.min.js +1 -0
  163. package/5742.min.js +1 -0
  164. package/5816.min.js +1 -0
  165. package/5832.min.js +1 -0
  166. package/587.min.js +1 -0
  167. package/5976.min.js +1 -0
  168. package/6055.min.js +1 -0
  169. package/6056.min.js +1 -0
  170. package/607.min.js +1 -0
  171. package/6130.min.js +1 -0
  172. package/6202.min.js +1 -0
  173. package/6222.min.js +1 -0
  174. package/6227.min.js +1 -0
  175. package/6252.min.js +1 -0
  176. package/6280.min.js +1 -0
  177. package/6297.min.js +1 -0
  178. package/6340.min.js +1 -0
  179. package/6362.min.js +1 -0
  180. package/{3433.min.js → 6364.min.js} +1 -1
  181. package/6388.min.js +1 -0
  182. package/6412.min.js +1 -0
  183. package/649.min.js +1 -0
  184. package/6496.min.js +1 -0
  185. package/6502.min.js +1 -0
  186. package/6561.min.js +1 -0
  187. package/6598.min.js +1 -0
  188. package/{6361.min.js → 6613.min.js} +1 -1
  189. package/6693.min.js +1 -0
  190. package/6711.min.js +1 -0
  191. package/6808.min.js +1 -1
  192. package/6822.min.js +1 -0
  193. package/6827.min.js +1 -0
  194. package/686.min.js +1 -0
  195. package/6868.min.js +1 -0
  196. package/{5249.min.js → 6897.min.js} +1 -1
  197. package/{8639.min.js → 6907.min.js} +1 -1
  198. package/6938.min.js +1 -0
  199. package/{4662.min.js → 6940.min.js} +1 -1
  200. package/7017.min.js +1 -0
  201. package/7041.min.js +1 -33
  202. package/{8606.min.js → 7050.min.js} +1 -1
  203. package/706.min.js +1 -0
  204. package/7079.min.js +1 -0
  205. package/7149.min.js +1 -0
  206. package/7157.min.js +1 -0
  207. package/719.min.js +1 -0
  208. package/{5133.min.js → 7196.min.js} +1 -1
  209. package/7203.min.js +1 -0
  210. package/7206.min.js +1 -0
  211. package/7218.min.js +1 -0
  212. package/7359.min.js +1 -0
  213. package/7374.min.js +1 -0
  214. package/7386.min.js +1 -0
  215. package/7403.min.js +1 -0
  216. package/746.min.js +1 -0
  217. package/7462.min.js +1 -0
  218. package/748.min.js +1 -0
  219. package/7520.min.js +1 -1
  220. package/7522.min.js +1 -0
  221. package/7590.min.js +1 -0
  222. package/{4570.min.js → 7596.min.js} +1 -1
  223. package/{2382.min.js → 7604.min.js} +1 -1
  224. package/762.min.js +1 -0
  225. package/7721.min.js +1 -0
  226. package/7788.min.js +1 -0
  227. package/7817.min.js +1 -0
  228. package/7856.min.js +1 -0
  229. package/786.min.js +1 -0
  230. package/7921.min.js +1 -0
  231. package/803.min.js +1 -0
  232. package/8082.min.js +1 -0
  233. package/8096.min.js +1 -0
  234. package/{2295.min.js → 8111.min.js} +1 -1
  235. package/8173.min.js +1 -0
  236. package/{5855.min.js → 8243.min.js} +1 -1
  237. package/8258.min.js +1 -0
  238. package/8272.min.js +1 -0
  239. package/8274.min.js +1 -0
  240. package/{3338.min.js → 83.min.js} +2 -2
  241. package/830.min.js +1 -0
  242. package/8319.min.js +1 -1
  243. package/8342.min.js +1 -0
  244. package/8360.min.js +1 -1
  245. package/8421.min.js +1 -0
  246. package/{7258.min.js → 8446.min.js} +1 -1
  247. package/8536.min.js +1 -0
  248. package/8553.min.js +33 -1
  249. package/8569.min.js +1 -0
  250. package/8626.min.js +1 -0
  251. package/8627.min.js +1 -0
  252. package/8650.min.js +1 -0
  253. package/8684.min.js +1 -1
  254. package/8708.min.js +1 -0
  255. package/8775.min.js +1 -0
  256. package/{2940.min.js → 8776.min.js} +1 -1
  257. package/8796.min.js +1 -0
  258. package/8805.min.js +1 -0
  259. package/{4303.min.js → 8808.min.js} +1 -1
  260. package/886.min.js +1 -0
  261. package/8930.min.js +1 -0
  262. package/8957.min.js +1 -0
  263. package/{9398.min.js → 8977.min.js} +2 -2
  264. package/8989.min.js +1 -0
  265. package/9022.min.js +1 -0
  266. package/{1624.min.js → 9027.min.js} +1 -1
  267. package/9033.min.js +1 -0
  268. package/9072.min.js +1 -0
  269. package/9132.min.js +1 -0
  270. package/9134.min.js +1 -0
  271. package/9165.min.js +1 -0
  272. package/9208.min.js +1 -0
  273. package/9261.min.js +1 -0
  274. package/9293.min.js +1 -0
  275. package/9326.min.js +1 -0
  276. package/{7876.min.js → 9368.min.js} +1 -1
  277. package/938.min.js +1 -0
  278. package/9395.min.js +1 -0
  279. package/{3019.min.js → 9463.min.js} +1 -1
  280. package/{9761.min.js → 9479.min.js} +1 -1
  281. package/951.min.js +1 -0
  282. package/9630.min.js +1 -1
  283. package/9643.min.js +1 -0
  284. package/9654.min.js +1 -0
  285. package/{5997.min.js → 9673.min.js} +1 -1
  286. package/9720.min.js +1 -0
  287. package/9748.min.js +1 -0
  288. package/9782.min.js +1 -0
  289. package/9838.min.js +1 -0
  290. package/{9569.min.js → 9920.min.js} +1 -1
  291. package/9950.min.js +1 -0
  292. package/9994.min.js +1 -0
  293. package/basic_dist_browser_index_js.js +2 -2
  294. package/browser/index.js +6 -3
  295. package/cjs/index.js +6 -3
  296. package/effects_bubble_dist_browser_BubbleDrawer_js.js +1 -1
  297. package/effects_bubble_dist_browser_index_js.js +2 -2
  298. package/effects_particles_dist_browser_ParticlesDrawer_js.js +2 -2
  299. package/effects_particles_dist_browser_index_js.js +2 -2
  300. package/effects_shadow_dist_browser_ShadowDrawer_js.js +2 -2
  301. package/effects_shadow_dist_browser_index_js.js +2 -2
  302. package/effects_trail_dist_browser_TrailDrawer_js.js +2 -2
  303. package/effects_trail_dist_browser_index_js.js +2 -2
  304. package/engine_dist_browser_Core_Container_js.js +54 -14
  305. package/esm/index.js +6 -3
  306. package/full_dist_browser_index_js.js +2 -2
  307. package/interactions_external_attract_dist_browser_Attractor_js.js +28 -8
  308. package/interactions_external_attract_dist_browser_index_js.js +2 -2
  309. package/interactions_external_bounce_dist_browser_Bouncer_js.js +26 -6
  310. package/interactions_external_bounce_dist_browser_index_js.js +2 -2
  311. package/interactions_external_bubble_dist_browser_Bubbler_js.js +27 -7
  312. package/interactions_external_bubble_dist_browser_index_js.js +2 -2
  313. package/interactions_external_cannon_dist_browser_Cannoner_js.js +150 -0
  314. package/interactions_external_cannon_dist_browser_index_js.js +40 -0
  315. package/interactions_external_connect_dist_browser_Connector_js.js +28 -8
  316. package/interactions_external_connect_dist_browser_index_js.js +2 -2
  317. package/interactions_external_drag_dist_browser_Dragger_js.js +26 -6
  318. package/interactions_external_drag_dist_browser_index_js.js +2 -2
  319. package/interactions_external_grab_dist_browser_Grabber_js.js +29 -9
  320. package/interactions_external_grab_dist_browser_index_js.js +2 -2
  321. package/interactions_external_parallax_dist_browser_Parallaxer_js.js +26 -6
  322. package/interactions_external_parallax_dist_browser_index_js.js +2 -2
  323. package/interactions_external_particle_dist_browser_InteractivityParticleMaker_js.js +27 -7
  324. package/interactions_external_particle_dist_browser_index_js.js +2 -2
  325. package/interactions_external_pause_dist_browser_Pauser_js.js +26 -6
  326. package/interactions_external_pause_dist_browser_index_js.js +2 -2
  327. package/interactions_external_pop_dist_browser_Popper_js.js +27 -7
  328. package/interactions_external_pop_dist_browser_index_js.js +2 -2
  329. package/interactions_external_push_dist_browser_Pusher_js.js +26 -6
  330. package/interactions_external_push_dist_browser_index_js.js +2 -2
  331. package/interactions_external_remove_dist_browser_Remover_js.js +27 -7
  332. package/interactions_external_remove_dist_browser_index_js.js +2 -2
  333. package/interactions_external_repulse_dist_browser_Repulser_js.js +27 -7
  334. package/interactions_external_repulse_dist_browser_index_js.js +2 -2
  335. package/interactions_external_slow_dist_browser_Slower_js.js +26 -6
  336. package/interactions_external_slow_dist_browser_index_js.js +2 -2
  337. package/interactions_external_trail_dist_browser_TrailMaker_js.js +27 -7
  338. package/interactions_external_trail_dist_browser_index_js.js +2 -2
  339. package/interactions_light_dist_browser_ExternalLighter_js.js +27 -7
  340. package/interactions_light_dist_browser_ParticlesLighter_js.js +27 -7
  341. package/interactions_light_dist_browser_index_js.js +2 -2
  342. package/interactions_particles_attract_dist_browser_Attractor_js.js +26 -6
  343. package/interactions_particles_attract_dist_browser_index_js.js +2 -2
  344. package/interactions_particles_collisions_dist_browser_Collider_js.js +39 -9
  345. package/interactions_particles_collisions_dist_browser_OverlapPluginInstance_js.js +1 -1
  346. package/interactions_particles_collisions_dist_browser_OverlapPlugin_js.js +2 -2
  347. package/interactions_particles_collisions_dist_browser_index_js.js +2 -2
  348. package/interactions_particles_links_dist_browser_LinkInstance_js.js +2 -2
  349. package/interactions_particles_links_dist_browser_Linker_js.js +27 -7
  350. package/interactions_particles_links_dist_browser_LinksPlugin_js.js +2 -2
  351. package/interactions_particles_links_dist_browser_index_js.js +2 -2
  352. package/interactions_particles_repulse_dist_browser_Repulser_js.js +26 -6
  353. package/interactions_particles_repulse_dist_browser_index_js.js +2 -2
  354. package/package.json +79 -79
  355. package/paths_branches_dist_browser_BranchesPathGenerator_js.js +12 -2
  356. package/paths_branches_dist_browser_index_js.js +2 -2
  357. package/paths_brownian_dist_browser_BrownianPathGenerator_js.js +12 -2
  358. package/paths_brownian_dist_browser_index_js.js +2 -2
  359. package/paths_curlNoise_dist_browser_CurlNoiseGenerator_js.js +2 -2
  360. package/paths_curlNoise_dist_browser_index_js.js +12 -2
  361. package/paths_curves_dist_browser_CurvesPathGenerator_js.js +2 -2
  362. package/paths_curves_dist_browser_index_js.js +12 -2
  363. package/paths_fractalNoise_dist_browser_FractalNoiseGenerator_js.js +3 -3
  364. package/paths_fractalNoise_dist_browser_index_js.js +12 -2
  365. package/paths_grid_dist_browser_GridPathGenerator_js.js +12 -2
  366. package/paths_grid_dist_browser_index_js.js +2 -2
  367. package/paths_levy_dist_browser_LevyPathGenerator_js.js +12 -2
  368. package/paths_levy_dist_browser_index_js.js +2 -2
  369. package/paths_perlinNoise_dist_browser_PerlinNoiseGenerator_js.js +2 -2
  370. package/paths_perlinNoise_dist_browser_index_js.js +12 -2
  371. package/paths_polygon_dist_browser_PolygonPathGenerator_js.js +2 -2
  372. package/paths_polygon_dist_browser_index_js.js +12 -2
  373. package/paths_random_dist_browser_RandomPathGenerator_js.js +2 -2
  374. package/paths_random_dist_browser_index_js.js +12 -2
  375. package/paths_simplexNoise_dist_browser_SimplexNoiseGenerator_js.js +2 -2
  376. package/paths_simplexNoise_dist_browser_index_js.js +12 -2
  377. package/paths_spiral_dist_browser_SpiralPathGenerator_js.js +12 -2
  378. package/paths_spiral_dist_browser_index_js.js +2 -2
  379. package/paths_svg_dist_browser_SVGPathGenerator_js.js +2 -2
  380. package/paths_svg_dist_browser_index_js.js +12 -2
  381. package/paths_zigzag_dist_browser_ZigZagPathGenerator_js.js +2 -2
  382. package/paths_zigzag_dist_browser_index_js.js +12 -2
  383. package/plugins_absorbers_dist_browser_AbsorberInstance_js.js +2 -2
  384. package/plugins_absorbers_dist_browser_AbsorbersInstancesManager_js.js +2 -2
  385. package/plugins_absorbers_dist_browser_AbsorbersInteractor_js.js +26 -6
  386. package/plugins_absorbers_dist_browser_AbsorbersPluginInstance_js.js +1 -1
  387. package/plugins_absorbers_dist_browser_AbsorbersPlugin_js.js +1 -1
  388. package/plugins_absorbers_dist_browser_getAbsorbersInstancesManager_js.js +30 -0
  389. package/plugins_absorbers_dist_browser_index_js.js +22 -2
  390. package/plugins_backgroundMask_dist_browser_BackgroundMaskPluginInstance_js.js +2 -2
  391. package/plugins_backgroundMask_dist_browser_BackgroundMaskPlugin_js.js +2 -2
  392. package/plugins_backgroundMask_dist_browser_index_js.js +2 -2
  393. package/plugins_blend_dist_browser_BlendPluginInstance_js.js +1 -1
  394. package/plugins_blend_dist_browser_BlendPlugin_js.js +1 -1
  395. package/plugins_blend_dist_browser_index_js.js +2 -2
  396. package/plugins_canvasMask_dist_browser_CanvasMaskPluginInstance_js.js +3 -3
  397. package/plugins_canvasMask_dist_browser_CanvasMaskPlugin_js.js +2 -2
  398. package/plugins_canvasMask_dist_browser_index_js.js +2 -2
  399. package/plugins_colors_hex_dist_browser_HexColorManager_js.js +1 -1
  400. package/plugins_colors_hex_dist_browser_index_js.js +2 -2
  401. package/plugins_colors_hsl_dist_browser_HslColorManager_js.js +1 -1
  402. package/plugins_colors_hsl_dist_browser_index_js.js +2 -2
  403. package/plugins_colors_hsv_dist_browser_HsvColorManager_js.js +1 -1
  404. package/plugins_colors_hsv_dist_browser_index_js.js +2 -2
  405. package/plugins_colors_hwb_dist_browser_HwbColorManager_js.js +1 -1
  406. package/plugins_colors_hwb_dist_browser_index_js.js +2 -2
  407. package/plugins_colors_lab_dist_browser_LabColorManager_js.js +1 -1
  408. package/plugins_colors_lab_dist_browser_index_js.js +2 -2
  409. package/plugins_colors_lch_dist_browser_LchColorManager_js.js +1 -1
  410. package/plugins_colors_lch_dist_browser_index_js.js +2 -2
  411. package/plugins_colors_named_dist_browser_NamedColorManager_js.js +1 -1
  412. package/plugins_colors_named_dist_browser_index_js.js +2 -2
  413. package/plugins_colors_oklab_dist_browser_OklabColorManager_js.js +1 -1
  414. package/plugins_colors_oklab_dist_browser_index_js.js +2 -2
  415. package/plugins_colors_oklch_dist_browser_OklchColorManager_js.js +1 -1
  416. package/plugins_colors_oklch_dist_browser_index_js.js +2 -2
  417. package/plugins_colors_rgb_dist_browser_RgbColorManager_js.js +1 -1
  418. package/plugins_colors_rgb_dist_browser_index_js.js +2 -2
  419. package/plugins_easings_back_dist_browser_easingsFunctions_js.js +1 -1
  420. package/plugins_easings_back_dist_browser_index_js.js +2 -2
  421. package/plugins_easings_bounce_dist_browser_easingsFunctions_js.js +1 -1
  422. package/plugins_easings_bounce_dist_browser_index_js.js +2 -2
  423. package/plugins_easings_circ_dist_browser_easingsFunctions_js.js +1 -1
  424. package/plugins_easings_circ_dist_browser_index_js.js +2 -2
  425. package/plugins_easings_cubic_dist_browser_easingsFunctions_js.js +1 -1
  426. package/plugins_easings_cubic_dist_browser_index_js.js +2 -2
  427. package/plugins_easings_elastic_dist_browser_easingsFunctions_js.js +1 -1
  428. package/plugins_easings_elastic_dist_browser_index_js.js +2 -2
  429. package/plugins_easings_expo_dist_browser_easingsFunctions_js.js +1 -1
  430. package/plugins_easings_expo_dist_browser_index_js.js +2 -2
  431. package/plugins_easings_gaussian_dist_browser_easingsFunctions_js.js +1 -1
  432. package/plugins_easings_gaussian_dist_browser_index_js.js +2 -2
  433. package/plugins_easings_linear_dist_browser_easingsFunctions_js.js +1 -1
  434. package/plugins_easings_linear_dist_browser_index_js.js +2 -2
  435. package/plugins_easings_quad_dist_browser_easingsFunctions_js.js +1 -1
  436. package/plugins_easings_quad_dist_browser_index_js.js +2 -2
  437. package/plugins_easings_quart_dist_browser_easingsFunctions_js.js +1 -1
  438. package/plugins_easings_quart_dist_browser_index_js.js +2 -2
  439. package/plugins_easings_quint_dist_browser_easingsFunctions_js.js +1 -1
  440. package/plugins_easings_quint_dist_browser_index_js.js +2 -2
  441. package/plugins_easings_sigmoid_dist_browser_easingsFunctions_js.js +1 -1
  442. package/plugins_easings_sigmoid_dist_browser_index_js.js +2 -2
  443. package/plugins_easings_sine_dist_browser_easingsFunctions_js.js +1 -1
  444. package/plugins_easings_sine_dist_browser_index_js.js +2 -2
  445. package/plugins_easings_smoothstep_dist_browser_easingsFunctions_js.js +1 -1
  446. package/plugins_easings_smoothstep_dist_browser_index_js.js +2 -2
  447. package/plugins_emittersShapes_canvas_dist_browser_EmittersCanvasShapeGenerator_js.js +35 -5
  448. package/plugins_emittersShapes_canvas_dist_browser_index_js.js +2 -2
  449. package/plugins_emittersShapes_circle_dist_browser_EmittersCircleShapeGenerator_js.js +32 -2
  450. package/plugins_emittersShapes_circle_dist_browser_index_js.js +2 -2
  451. package/plugins_emittersShapes_path_dist_browser_EmittersPathShapeGenerator_js.js +33 -3
  452. package/plugins_emittersShapes_path_dist_browser_index_js.js +2 -2
  453. package/plugins_emittersShapes_polygon_dist_browser_EmittersPolygonShapeGenerator_js.js +32 -2
  454. package/plugins_emittersShapes_polygon_dist_browser_index_js.js +2 -2
  455. package/plugins_emittersShapes_square_dist_browser_EmittersSquareShapeGenerator_js.js +32 -2
  456. package/plugins_emittersShapes_square_dist_browser_index_js.js +2 -2
  457. package/plugins_emitters_dist_browser_EmitterInstance_js.js +2 -2
  458. package/plugins_emitters_dist_browser_EmittersInstancesManager_js.js +2 -2
  459. package/plugins_emitters_dist_browser_EmittersInteractor_js.js +26 -6
  460. package/plugins_emitters_dist_browser_EmittersPluginInstance_js.js +1 -1
  461. package/plugins_emitters_dist_browser_EmittersPlugin_js.js +1 -1
  462. package/plugins_emitters_dist_browser_ShapeManager_js.js +1 -1
  463. package/plugins_emitters_dist_browser_addEmittersShapesManager_js.js +30 -0
  464. package/plugins_emitters_dist_browser_getEmittersInstancesManager_js.js +30 -0
  465. package/plugins_emitters_dist_browser_index_js.js +32 -2
  466. package/plugins_exports_image_dist_browser_ExportImagePluginInstance_js.js +1 -1
  467. package/plugins_exports_image_dist_browser_ExportImagePlugin_js.js +1 -1
  468. package/plugins_exports_image_dist_browser_index_js.js +2 -2
  469. package/plugins_exports_json_dist_browser_ExportJSONPluginInstance_js.js +1 -1
  470. package/plugins_exports_json_dist_browser_ExportJSONPlugin_js.js +1 -1
  471. package/plugins_exports_json_dist_browser_index_js.js +2 -2
  472. package/plugins_exports_video_dist_browser_ExportVideoPluginInstance_js.js +1 -1
  473. package/plugins_exports_video_dist_browser_ExportVideoPlugin_js.js +1 -1
  474. package/plugins_exports_video_dist_browser_index_js.js +2 -2
  475. package/plugins_infection_dist_browser_InfectionPluginInstance_js.js +1 -1
  476. package/plugins_infection_dist_browser_InfectionPlugin_js.js +1 -1
  477. package/plugins_infection_dist_browser_ParticlesInfecter_js.js +26 -6
  478. package/plugins_infection_dist_browser_index_js.js +2 -2
  479. package/plugins_interactivity_dist_browser_InteractivityPluginInstance_js.js +4 -4
  480. package/plugins_interactivity_dist_browser_InteractivityPlugin_js.js +3 -3
  481. package/plugins_interactivity_dist_browser_index_js.js +26 -6
  482. package/plugins_manualParticles_dist_browser_ManualParticlesPluginInstance_js.js +1 -1
  483. package/plugins_manualParticles_dist_browser_ManualParticlesPlugin_js.js +2 -2
  484. package/plugins_manualParticles_dist_browser_index_js.js +2 -2
  485. package/plugins_motion_dist_browser_MotionPluginInstance_js.js +1 -1
  486. package/plugins_motion_dist_browser_MotionPlugin_js.js +1 -1
  487. package/plugins_motion_dist_browser_index_js.js +2 -2
  488. package/plugins_move_dist_browser_MovePluginInstance_js.js +3 -3
  489. package/plugins_move_dist_browser_MovePlugin_js.js +2 -2
  490. package/plugins_move_dist_browser_index_js.js +2 -2
  491. package/plugins_poisson_dist_browser_PoissonDiscPluginInstance_js.js +1 -1
  492. package/plugins_poisson_dist_browser_PoissonDiscPlugin_js.js +2 -2
  493. package/plugins_poisson_dist_browser_PoissonDisc_js.js +1 -1
  494. package/plugins_poisson_dist_browser_index_js.js +2 -2
  495. package/plugins_polygonMask_dist_browser_PolygonMaskInstance_js.js +3 -3
  496. package/plugins_polygonMask_dist_browser_PolygonMaskPlugin_js.js +5 -5
  497. package/plugins_polygonMask_dist_browser_index_js.js +2 -2
  498. package/plugins_responsive_dist_browser_ResponsivePluginInstance_js.js +2 -2
  499. package/plugins_responsive_dist_browser_ResponsivePlugin_js.js +2 -2
  500. package/plugins_responsive_dist_browser_index_js.js +2 -2
  501. package/plugins_sounds_dist_browser_SoundsPluginInstance_js.js +2 -2
  502. package/plugins_sounds_dist_browser_SoundsPlugin_js.js +2 -2
  503. package/plugins_sounds_dist_browser_index_js.js +2 -2
  504. package/plugins_themes_dist_browser_ThemesPluginInstance_js.js +1 -1
  505. package/plugins_themes_dist_browser_ThemesPlugin_js.js +1 -1
  506. package/plugins_themes_dist_browser_index_js.js +2 -2
  507. package/plugins_trail_dist_browser_TrailPluginInstance_js.js +2 -2
  508. package/plugins_trail_dist_browser_TrailPlugin_js.js +24 -4
  509. package/plugins_trail_dist_browser_index_js.js +2 -2
  510. package/plugins_zoom_dist_browser_ZoomPluginInstance_js.js +1 -1
  511. package/plugins_zoom_dist_browser_ZoomPlugin_js.js +1 -1
  512. package/plugins_zoom_dist_browser_index_js.js +2 -2
  513. package/report.html +84 -29
  514. package/shapes_arrow_dist_browser_ArrowDrawer_js.js +1 -1
  515. package/shapes_arrow_dist_browser_index_js.js +2 -2
  516. package/shapes_cards_dist_browser_cards_CardDrawer_js.js +2 -2
  517. package/shapes_cards_dist_browser_clubs_ClubDrawer_js.js +1 -1
  518. package/shapes_cards_dist_browser_diamonds_DiamondDrawer_js.js +1 -1
  519. package/shapes_cards_dist_browser_hearts_HeartDrawer_js.js +1 -1
  520. package/shapes_cards_dist_browser_index_js.js +17 -7
  521. package/shapes_cards_dist_browser_paths_js.js +1 -1
  522. package/shapes_cards_dist_browser_spades_SpadeDrawer_js.js +1 -1
  523. package/shapes_circle_dist_browser_CircleDrawer_js.js +1 -1
  524. package/shapes_circle_dist_browser_index_js.js +2 -2
  525. package/shapes_cog_dist_browser_CogDrawer_js.js +1 -1
  526. package/shapes_cog_dist_browser_index_js.js +2 -2
  527. package/shapes_emoji_dist_browser_EmojiDrawer_js.js +3 -3
  528. package/shapes_emoji_dist_browser_index_js.js +2 -2
  529. package/shapes_heart_dist_browser_HeartDrawer_js.js +1 -1
  530. package/shapes_heart_dist_browser_index_js.js +2 -2
  531. package/shapes_image_dist_browser_GifUtils_Utils_js.js +1 -1
  532. package/shapes_image_dist_browser_ImageDrawer_js.js +2 -2
  533. package/shapes_image_dist_browser_ImagePreloaderInstance_js.js +1 -1
  534. package/shapes_image_dist_browser_ImagePreloader_js.js +1 -1
  535. package/shapes_image_dist_browser_index_js.js +2 -2
  536. package/shapes_infinity_dist_browser_InfinityDrawer_js.js +2 -2
  537. package/shapes_infinity_dist_browser_index_js.js +2 -2
  538. package/shapes_line_dist_browser_LineDrawer_js.js +1 -1
  539. package/shapes_line_dist_browser_index_js.js +2 -2
  540. package/shapes_matrix_dist_browser_MatrixDrawer_js.js +1 -1
  541. package/shapes_matrix_dist_browser_index_js.js +2 -2
  542. package/shapes_path_dist_browser_PathDrawer_js.js +1 -1
  543. package/shapes_path_dist_browser_index_js.js +2 -2
  544. package/shapes_polygon_dist_browser_PolygonDrawer_js.js +1 -1
  545. package/shapes_polygon_dist_browser_TriangleDrawer_js.js +2 -2
  546. package/shapes_polygon_dist_browser_index_js.js +2 -2
  547. package/shapes_rounded-polygon_dist_browser_RoundedPolygonDrawer_js.js +1 -1
  548. package/shapes_rounded-polygon_dist_browser_index_js.js +2 -2
  549. package/shapes_rounded-rect_dist_browser_RoundedRectDrawer_js.js +1 -1
  550. package/shapes_rounded-rect_dist_browser_index_js.js +2 -2
  551. package/shapes_spiral_dist_browser_SpiralDrawer_js.js +1 -1
  552. package/shapes_spiral_dist_browser_index_js.js +2 -2
  553. package/shapes_square_dist_browser_SquareDrawer_js.js +1 -1
  554. package/shapes_square_dist_browser_index_js.js +2 -2
  555. package/shapes_squircle_dist_browser_SquircleDrawer_js.js +1 -1
  556. package/shapes_squircle_dist_browser_index_js.js +2 -2
  557. package/shapes_star_dist_browser_StarDrawer_js.js +1 -1
  558. package/shapes_star_dist_browser_index_js.js +2 -2
  559. package/shapes_text_dist_browser_TextDrawer_js.js +2 -2
  560. package/shapes_text_dist_browser_index_js.js +2 -2
  561. package/slim_dist_browser_index_js.js +2 -2
  562. package/tsparticles.all.bundle.js +19 -9
  563. package/tsparticles.all.bundle.min.js +2 -2
  564. package/tsparticles.all.js +26 -6
  565. package/tsparticles.all.min.js +1 -1
  566. package/updaters_destroy_dist_browser_DestroyUpdater_js.js +3 -3
  567. package/updaters_destroy_dist_browser_index_js.js +2 -2
  568. package/updaters_fillColor_dist_browser_FillColorUpdater_js.js +2 -2
  569. package/updaters_fillColor_dist_browser_index_js.js +2 -2
  570. package/updaters_gradient_dist_browser_GradientUpdater_js.js +2 -2
  571. package/updaters_gradient_dist_browser_index_js.js +2 -2
  572. package/updaters_life_dist_browser_LifeUpdater_js.js +1 -1
  573. package/updaters_life_dist_browser_index_js.js +2 -2
  574. package/updaters_opacity_dist_browser_OpacityUpdater_js.js +2 -2
  575. package/updaters_opacity_dist_browser_index_js.js +2 -2
  576. package/updaters_orbit_dist_browser_OrbitUpdater_js.js +3 -3
  577. package/updaters_orbit_dist_browser_index_js.js +2 -2
  578. package/updaters_outModes_dist_browser_OutOfCanvasUpdater_js.js +3 -3
  579. package/updaters_outModes_dist_browser_index_js.js +2 -2
  580. package/updaters_roll_dist_browser_RollUpdater_js.js +3 -3
  581. package/updaters_roll_dist_browser_index_js.js +2 -2
  582. package/updaters_rotate_dist_browser_RotateUpdater_js.js +1 -1
  583. package/updaters_rotate_dist_browser_index_js.js +2 -2
  584. package/updaters_size_dist_browser_SizeUpdater_js.js +2 -2
  585. package/updaters_size_dist_browser_index_js.js +2 -2
  586. package/updaters_strokeColor_dist_browser_StrokeColorUpdater_js.js +2 -2
  587. package/updaters_strokeColor_dist_browser_index_js.js +2 -2
  588. package/updaters_tilt_dist_browser_TiltUpdater_js.js +1 -1
  589. package/updaters_tilt_dist_browser_index_js.js +2 -2
  590. package/updaters_twinkle_dist_browser_TwinkleUpdater_js.js +2 -2
  591. package/updaters_twinkle_dist_browser_index_js.js +2 -2
  592. package/updaters_wobble_dist_browser_WobbleUpdater_js.js +3 -3
  593. package/updaters_wobble_dist_browser_index_js.js +2 -2
  594. package/utils_simplexNoise_dist_browser_index_js.js +4 -4
  595. package/102.min.js +0 -1
  596. package/1053.min.js +0 -1
  597. package/1060.min.js +0 -1
  598. package/1098.min.js +0 -1
  599. package/1146.min.js +0 -1
  600. package/1171.min.js +0 -1
  601. package/1196.min.js +0 -1
  602. package/1220.min.js +0 -1
  603. package/1276.min.js +0 -1
  604. package/1283.min.js +0 -1
  605. package/1298.min.js +0 -1
  606. package/1302.min.js +0 -1
  607. package/1304.min.js +0 -1
  608. package/134.min.js +0 -1
  609. package/1368.min.js +0 -1
  610. package/1411.min.js +0 -1
  611. package/1513.min.js +0 -1
  612. package/1553.min.js +0 -1
  613. package/1556.min.js +0 -1
  614. package/161.min.js +0 -1
  615. package/1667.min.js +0 -1
  616. package/1739.min.js +0 -1
  617. package/1766.min.js +0 -1
  618. package/1906.min.js +0 -1
  619. package/2086.min.js +0 -1
  620. package/2123.min.js +0 -2
  621. package/2142.min.js +0 -1
  622. package/2167.min.js +0 -1
  623. package/2217.min.js +0 -1
  624. package/2218.min.js +0 -1
  625. package/229.min.js +0 -1
  626. package/2292.min.js +0 -1
  627. package/2317.min.js +0 -1
  628. package/2346.min.js +0 -1
  629. package/2397.min.js +0 -1
  630. package/241.min.js +0 -1
  631. package/2418.min.js +0 -1
  632. package/2488.min.js +0 -1
  633. package/2541.min.js +0 -1
  634. package/2553.min.js +0 -1
  635. package/2569.min.js +0 -1
  636. package/2609.min.js +0 -1
  637. package/2616.min.js +0 -1
  638. package/2618.min.js +0 -1
  639. package/2642.min.js +0 -1
  640. package/2715.min.js +0 -1
  641. package/2738.min.js +0 -1
  642. package/2846.min.js +0 -1
  643. package/3037.min.js +0 -1
  644. package/3091.min.js +0 -1
  645. package/3093.min.js +0 -1
  646. package/3130.min.js +0 -1
  647. package/3136.min.js +0 -1
  648. package/3138.min.js +0 -1
  649. package/3194.min.js +0 -1
  650. package/3216.min.js +0 -1
  651. package/3257.min.js +0 -1
  652. package/3296.min.js +0 -1
  653. package/3391.min.js +0 -1
  654. package/3407.min.js +0 -1
  655. package/342.min.js +0 -1
  656. package/3455.min.js +0 -1
  657. package/3509.min.js +0 -1
  658. package/358.min.js +0 -1
  659. package/3618.min.js +0 -1
  660. package/3657.min.js +0 -1
  661. package/3659.min.js +0 -1
  662. package/366.min.js +0 -1
  663. package/3663.min.js +0 -1
  664. package/3713.min.js +0 -1
  665. package/3715.min.js +0 -1
  666. package/3747.min.js +0 -1
  667. package/3766.min.js +0 -1
  668. package/379.min.js +0 -1
  669. package/3813.min.js +0 -1
  670. package/3853.min.js +0 -1
  671. package/3912.min.js +0 -1
  672. package/3924.min.js +0 -1
  673. package/4067.min.js +0 -1
  674. package/4073.min.js +0 -1
  675. package/4082.min.js +0 -1
  676. package/4089.min.js +0 -1
  677. package/4141.min.js +0 -1
  678. package/4149.min.js +0 -1
  679. package/4257.min.js +0 -1
  680. package/4268.min.js +0 -1
  681. package/4270.min.js +0 -1
  682. package/4285.min.js +0 -1
  683. package/4292.min.js +0 -1
  684. package/4385.min.js +0 -1
  685. package/439.min.js +0 -1
  686. package/4413.min.js +0 -1
  687. package/4424.min.js +0 -1
  688. package/4433.min.js +0 -1
  689. package/4462.min.js +0 -1
  690. package/4463.min.js +0 -1
  691. package/449.min.js +0 -1
  692. package/4532.min.js +0 -1
  693. package/4572.min.js +0 -1
  694. package/4660.min.js +0 -1
  695. package/4669.min.js +0 -1
  696. package/4671.min.js +0 -1
  697. package/468.min.js +0 -1
  698. package/4683.min.js +0 -1
  699. package/4708.min.js +0 -1
  700. package/4792.min.js +0 -1
  701. package/485.min.js +0 -1
  702. package/4894.min.js +0 -1
  703. package/4932.min.js +0 -1
  704. package/514.min.js +0 -1
  705. package/5157.min.js +0 -1
  706. package/5206.min.js +0 -1
  707. package/521.min.js +0 -1
  708. package/5315.min.js +0 -1
  709. package/5322.min.js +0 -1
  710. package/533.min.js +0 -1
  711. package/5390.min.js +0 -1
  712. package/5406.min.js +0 -1
  713. package/5478.min.js +0 -1
  714. package/5531.min.js +0 -1
  715. package/5538.min.js +0 -1
  716. package/5552.min.js +0 -1
  717. package/5558.min.js +0 -1
  718. package/5638.min.js +0 -1
  719. package/5712.min.js +0 -1
  720. package/5723.min.js +0 -1
  721. package/5740.min.js +0 -1
  722. package/5833.min.js +0 -1
  723. package/5901.min.js +0 -1
  724. package/6041.min.js +0 -1
  725. package/6058.min.js +0 -1
  726. package/6066.min.js +0 -1
  727. package/608.min.js +0 -1
  728. package/6098.min.js +0 -1
  729. package/6101.min.js +0 -1
  730. package/6179.min.js +0 -1
  731. package/6193.min.js +0 -1
  732. package/6211.min.js +0 -1
  733. package/622.min.js +0 -1
  734. package/6221.min.js +0 -1
  735. package/6299.min.js +0 -1
  736. package/6351.min.js +0 -1
  737. package/6387.min.js +0 -1
  738. package/6405.min.js +0 -1
  739. package/644.min.js +0 -1
  740. package/6450.min.js +0 -1
  741. package/6465.min.js +0 -1
  742. package/65.min.js +0 -1
  743. package/653.min.js +0 -1
  744. package/6583.min.js +0 -1
  745. package/6638.min.js +0 -1
  746. package/6684.min.js +0 -1
  747. package/6839.min.js +0 -1
  748. package/6900.min.js +0 -1
  749. package/6970.min.js +0 -1
  750. package/6982.min.js +0 -1
  751. package/6986.min.js +0 -1
  752. package/701.min.js +0 -1
  753. package/702.min.js +0 -1
  754. package/7028.min.js +0 -1
  755. package/7116.min.js +0 -1
  756. package/7256.min.js +0 -1
  757. package/7318.min.js +0 -1
  758. package/7377.min.js +0 -1
  759. package/7398.min.js +0 -1
  760. package/742.min.js +0 -1
  761. package/7449.min.js +0 -1
  762. package/7475.min.js +0 -1
  763. package/7559.min.js +0 -1
  764. package/7622.min.js +0 -2
  765. package/7646.min.js +0 -1
  766. package/7724.min.js +0 -1
  767. package/7812.min.js +0 -1
  768. package/787.min.js +0 -1
  769. package/7922.min.js +0 -1
  770. package/7925.min.js +0 -1
  771. package/7937.min.js +0 -1
  772. package/7977.min.js +0 -1
  773. package/8032.min.js +0 -1
  774. package/8061.min.js +0 -1
  775. package/8109.min.js +0 -1
  776. package/811.min.js +0 -1
  777. package/8214.min.js +0 -1
  778. package/8222.min.js +0 -1
  779. package/8248.min.js +0 -1
  780. package/8315.min.js +0 -1
  781. package/8322.min.js +0 -1
  782. package/8383.min.js +0 -1
  783. package/8386.min.js +0 -1
  784. package/84.min.js +0 -1
  785. package/8476.min.js +0 -1
  786. package/8484.min.js +0 -1
  787. package/8517.min.js +0 -1
  788. package/8565.min.js +0 -1
  789. package/8589.min.js +0 -1
  790. package/8620.min.js +0 -1
  791. package/8689.min.js +0 -1
  792. package/8756.min.js +0 -1
  793. package/881.min.js +0 -1
  794. package/8815.min.js +0 -1
  795. package/8819.min.js +0 -1
  796. package/8826.min.js +0 -1
  797. package/8841.min.js +0 -1
  798. package/8843.min.js +0 -1
  799. package/8902.min.js +0 -1
  800. package/8926.min.js +0 -2
  801. package/9082.min.js +0 -1
  802. package/916.min.js +0 -1
  803. package/9177.min.js +0 -1
  804. package/9279.min.js +0 -1
  805. package/9345.min.js +0 -1
  806. package/9352.min.js +0 -1
  807. package/9544.min.js +0 -1
  808. package/9565.min.js +0 -1
  809. package/9578.min.js +0 -1
  810. package/9611.min.js +0 -1
  811. package/9613.min.js +0 -1
  812. package/9666.min.js +0 -1
  813. package/9739.min.js +0 -1
  814. package/9956.min.js +0 -1
  815. package/umd/bundle.js +0 -30
  816. package/umd/index.js +0 -210
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/all",
3
- "version": "4.0.0-beta.0",
3
+ "version": "4.0.0-beta.2",
4
4
  "description": "Easily create highly customizable particle animations and use them as animated backgrounds for your website. Ready to use components available also for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -93,88 +93,88 @@
93
93
  "browser": "./browser/index.js",
94
94
  "import": "./esm/index.js",
95
95
  "require": "./cjs/index.js",
96
- "umd": "./umd/index.js",
97
- "default": "./cjs/index.js"
96
+ "default": "./esm/index.js"
98
97
  },
99
98
  "./package.json": "./package.json"
100
99
  },
101
100
  "dependencies": {
102
- "@tsparticles/effect-bubble": "4.0.0-beta.0",
103
- "@tsparticles/effect-particles": "4.0.0-beta.0",
104
- "@tsparticles/effect-shadow": "4.0.0-beta.0",
105
- "@tsparticles/effect-trail": "4.0.0-beta.0",
106
- "@tsparticles/engine": "4.0.0-beta.0",
107
- "@tsparticles/interaction-external-particle": "4.0.0-beta.0",
108
- "@tsparticles/interaction-external-pop": "4.0.0-beta.0",
109
- "@tsparticles/interaction-light": "4.0.0-beta.0",
110
- "@tsparticles/interaction-particles-repulse": "4.0.0-beta.0",
111
- "@tsparticles/path-branches": "4.0.0-beta.0",
112
- "@tsparticles/path-brownian": "4.0.0-beta.0",
113
- "@tsparticles/path-curl-noise": "4.0.0-beta.0",
114
- "@tsparticles/path-curves": "4.0.0-beta.0",
115
- "@tsparticles/path-fractal-noise": "4.0.0-beta.0",
116
- "@tsparticles/path-grid": "4.0.0-beta.0",
117
- "@tsparticles/path-levy": "4.0.0-beta.0",
118
- "@tsparticles/path-perlin-noise": "4.0.0-beta.0",
119
- "@tsparticles/path-polygon": "4.0.0-beta.0",
120
- "@tsparticles/path-random": "4.0.0-beta.0",
121
- "@tsparticles/path-simplex-noise": "4.0.0-beta.0",
122
- "@tsparticles/path-spiral": "4.0.0-beta.0",
123
- "@tsparticles/path-svg": "4.0.0-beta.0",
124
- "@tsparticles/path-zig-zag": "4.0.0-beta.0",
125
- "@tsparticles/plugin-background-mask": "4.0.0-beta.0",
126
- "@tsparticles/plugin-blend": "4.0.0-beta.0",
127
- "@tsparticles/plugin-canvas-mask": "4.0.0-beta.0",
128
- "@tsparticles/plugin-easing-back": "4.0.0-beta.0",
129
- "@tsparticles/plugin-easing-bounce": "4.0.0-beta.0",
130
- "@tsparticles/plugin-easing-circ": "4.0.0-beta.0",
131
- "@tsparticles/plugin-easing-cubic": "4.0.0-beta.0",
132
- "@tsparticles/plugin-easing-elastic": "4.0.0-beta.0",
133
- "@tsparticles/plugin-easing-expo": "4.0.0-beta.0",
134
- "@tsparticles/plugin-easing-gaussian": "4.0.0-beta.0",
135
- "@tsparticles/plugin-easing-linear": "4.0.0-beta.0",
136
- "@tsparticles/plugin-easing-quart": "4.0.0-beta.0",
137
- "@tsparticles/plugin-easing-quint": "4.0.0-beta.0",
138
- "@tsparticles/plugin-easing-sigmoid": "4.0.0-beta.0",
139
- "@tsparticles/plugin-easing-sine": "4.0.0-beta.0",
140
- "@tsparticles/plugin-easing-smoothstep": "4.0.0-beta.0",
141
- "@tsparticles/plugin-emitters-shape-canvas": "4.0.0-beta.0",
142
- "@tsparticles/plugin-emitters-shape-path": "4.0.0-beta.0",
143
- "@tsparticles/plugin-emitters-shape-polygon": "4.0.0-beta.0",
144
- "@tsparticles/plugin-export-image": "4.0.0-beta.0",
145
- "@tsparticles/plugin-export-json": "4.0.0-beta.0",
146
- "@tsparticles/plugin-export-video": "4.0.0-beta.0",
147
- "@tsparticles/plugin-hsv-color": "4.0.0-beta.0",
148
- "@tsparticles/plugin-hwb-color": "4.0.0-beta.0",
149
- "@tsparticles/plugin-infection": "4.0.0-beta.0",
150
- "@tsparticles/plugin-lab-color": "4.0.0-beta.0",
151
- "@tsparticles/plugin-lch-color": "4.0.0-beta.0",
152
- "@tsparticles/plugin-manual-particles": "4.0.0-beta.0",
153
- "@tsparticles/plugin-motion": "4.0.0-beta.0",
154
- "@tsparticles/plugin-named-color": "4.0.0-beta.0",
155
- "@tsparticles/plugin-oklab-color": "4.0.0-beta.0",
156
- "@tsparticles/plugin-oklch-color": "4.0.0-beta.0",
157
- "@tsparticles/plugin-poisson-disc": "4.0.0-beta.0",
158
- "@tsparticles/plugin-polygon-mask": "4.0.0-beta.0",
159
- "@tsparticles/plugin-responsive": "4.0.0-beta.0",
160
- "@tsparticles/plugin-sounds": "4.0.0-beta.0",
161
- "@tsparticles/plugin-themes": "4.0.0-beta.0",
162
- "@tsparticles/plugin-trail": "4.0.0-beta.0",
163
- "@tsparticles/plugin-zoom": "4.0.0-beta.0",
164
- "@tsparticles/shape-arrow": "4.0.0-beta.0",
165
- "@tsparticles/shape-cards": "4.0.0-beta.0",
166
- "@tsparticles/shape-cog": "4.0.0-beta.0",
167
- "@tsparticles/shape-heart": "4.0.0-beta.0",
168
- "@tsparticles/shape-infinity": "4.0.0-beta.0",
169
- "@tsparticles/shape-matrix": "4.0.0-beta.0",
170
- "@tsparticles/shape-path": "4.0.0-beta.0",
171
- "@tsparticles/shape-rounded-polygon": "4.0.0-beta.0",
172
- "@tsparticles/shape-rounded-rect": "4.0.0-beta.0",
173
- "@tsparticles/shape-spiral": "4.0.0-beta.0",
174
- "@tsparticles/shape-squircle": "4.0.0-beta.0",
175
- "@tsparticles/updater-gradient": "4.0.0-beta.0",
176
- "@tsparticles/updater-orbit": "4.0.0-beta.0",
177
- "tsparticles": "4.0.0-beta.0"
101
+ "@tsparticles/effect-bubble": "4.0.0-beta.2",
102
+ "@tsparticles/effect-particles": "4.0.0-beta.2",
103
+ "@tsparticles/effect-shadow": "4.0.0-beta.2",
104
+ "@tsparticles/effect-trail": "4.0.0-beta.2",
105
+ "@tsparticles/engine": "4.0.0-beta.2",
106
+ "@tsparticles/interaction-external-cannon": "4.0.0-beta.2",
107
+ "@tsparticles/interaction-external-particle": "4.0.0-beta.2",
108
+ "@tsparticles/interaction-external-pop": "4.0.0-beta.2",
109
+ "@tsparticles/interaction-light": "4.0.0-beta.2",
110
+ "@tsparticles/interaction-particles-repulse": "4.0.0-beta.2",
111
+ "@tsparticles/path-branches": "4.0.0-beta.2",
112
+ "@tsparticles/path-brownian": "4.0.0-beta.2",
113
+ "@tsparticles/path-curl-noise": "4.0.0-beta.2",
114
+ "@tsparticles/path-curves": "4.0.0-beta.2",
115
+ "@tsparticles/path-fractal-noise": "4.0.0-beta.2",
116
+ "@tsparticles/path-grid": "4.0.0-beta.2",
117
+ "@tsparticles/path-levy": "4.0.0-beta.2",
118
+ "@tsparticles/path-perlin-noise": "4.0.0-beta.2",
119
+ "@tsparticles/path-polygon": "4.0.0-beta.2",
120
+ "@tsparticles/path-random": "4.0.0-beta.2",
121
+ "@tsparticles/path-simplex-noise": "4.0.0-beta.2",
122
+ "@tsparticles/path-spiral": "4.0.0-beta.2",
123
+ "@tsparticles/path-svg": "4.0.0-beta.2",
124
+ "@tsparticles/path-zig-zag": "4.0.0-beta.2",
125
+ "@tsparticles/plugin-background-mask": "4.0.0-beta.2",
126
+ "@tsparticles/plugin-blend": "4.0.0-beta.2",
127
+ "@tsparticles/plugin-canvas-mask": "4.0.0-beta.2",
128
+ "@tsparticles/plugin-easing-back": "4.0.0-beta.2",
129
+ "@tsparticles/plugin-easing-bounce": "4.0.0-beta.2",
130
+ "@tsparticles/plugin-easing-circ": "4.0.0-beta.2",
131
+ "@tsparticles/plugin-easing-cubic": "4.0.0-beta.2",
132
+ "@tsparticles/plugin-easing-elastic": "4.0.0-beta.2",
133
+ "@tsparticles/plugin-easing-expo": "4.0.0-beta.2",
134
+ "@tsparticles/plugin-easing-gaussian": "4.0.0-beta.2",
135
+ "@tsparticles/plugin-easing-linear": "4.0.0-beta.2",
136
+ "@tsparticles/plugin-easing-quart": "4.0.0-beta.2",
137
+ "@tsparticles/plugin-easing-quint": "4.0.0-beta.2",
138
+ "@tsparticles/plugin-easing-sigmoid": "4.0.0-beta.2",
139
+ "@tsparticles/plugin-easing-sine": "4.0.0-beta.2",
140
+ "@tsparticles/plugin-easing-smoothstep": "4.0.0-beta.2",
141
+ "@tsparticles/plugin-emitters-shape-canvas": "4.0.0-beta.2",
142
+ "@tsparticles/plugin-emitters-shape-path": "4.0.0-beta.2",
143
+ "@tsparticles/plugin-emitters-shape-polygon": "4.0.0-beta.2",
144
+ "@tsparticles/plugin-export-image": "4.0.0-beta.2",
145
+ "@tsparticles/plugin-export-json": "4.0.0-beta.2",
146
+ "@tsparticles/plugin-export-video": "4.0.0-beta.2",
147
+ "@tsparticles/plugin-hsv-color": "4.0.0-beta.2",
148
+ "@tsparticles/plugin-hwb-color": "4.0.0-beta.2",
149
+ "@tsparticles/plugin-infection": "4.0.0-beta.2",
150
+ "@tsparticles/plugin-lab-color": "4.0.0-beta.2",
151
+ "@tsparticles/plugin-lch-color": "4.0.0-beta.2",
152
+ "@tsparticles/plugin-manual-particles": "4.0.0-beta.2",
153
+ "@tsparticles/plugin-motion": "4.0.0-beta.2",
154
+ "@tsparticles/plugin-named-color": "4.0.0-beta.2",
155
+ "@tsparticles/plugin-oklab-color": "4.0.0-beta.2",
156
+ "@tsparticles/plugin-oklch-color": "4.0.0-beta.2",
157
+ "@tsparticles/plugin-poisson-disc": "4.0.0-beta.2",
158
+ "@tsparticles/plugin-polygon-mask": "4.0.0-beta.2",
159
+ "@tsparticles/plugin-responsive": "4.0.0-beta.2",
160
+ "@tsparticles/plugin-sounds": "4.0.0-beta.2",
161
+ "@tsparticles/plugin-themes": "4.0.0-beta.2",
162
+ "@tsparticles/plugin-trail": "4.0.0-beta.2",
163
+ "@tsparticles/plugin-zoom": "4.0.0-beta.2",
164
+ "@tsparticles/shape-arrow": "4.0.0-beta.2",
165
+ "@tsparticles/shape-cards": "4.0.0-beta.2",
166
+ "@tsparticles/shape-cog": "4.0.0-beta.2",
167
+ "@tsparticles/shape-heart": "4.0.0-beta.2",
168
+ "@tsparticles/shape-infinity": "4.0.0-beta.2",
169
+ "@tsparticles/shape-matrix": "4.0.0-beta.2",
170
+ "@tsparticles/shape-path": "4.0.0-beta.2",
171
+ "@tsparticles/shape-rounded-polygon": "4.0.0-beta.2",
172
+ "@tsparticles/shape-rounded-rect": "4.0.0-beta.2",
173
+ "@tsparticles/shape-spiral": "4.0.0-beta.2",
174
+ "@tsparticles/shape-squircle": "4.0.0-beta.2",
175
+ "@tsparticles/updater-gradient": "4.0.0-beta.2",
176
+ "@tsparticles/updater-orbit": "4.0.0-beta.2",
177
+ "tsparticles": "4.0.0-beta.2"
178
178
  },
179
179
  "publishConfig": {
180
180
  "access": "public"
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,17 @@
23
23
  \******************************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BranchesPathGenerator: () => (/* binding */ BranchesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst defaultOptions = {\n segmentLength: 20,\n branchChance: 0.2,\n maxAngle: Math.PI / 3,\n speedVariation: 0.3,\n inertia: {\n enable: false,\n factor: 0.1\n }\n};\nclass BranchesPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n ...defaultOptions,\n inertia: {\n ...defaultOptions.inertia\n }\n };\n }\n generate(p) {\n const opts = this.options;\n p.branching ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI,\n remaining: opts.segmentLength,\n baseSpeed: p.velocity.length,\n speed: p.velocity.length\n };\n const b = p.branching;\n if (b.remaining <= 0) {\n const branch = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() < (opts.branchChance ?? 0), maxAngle = opts.maxAngle ?? defaultOptions.maxAngle, delta = ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (branch ? maxAngle : maxAngle * 0.3);\n b.angle += delta;\n b.remaining = opts.segmentLength;\n const speedFactor = 1 + ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (opts.speedVariation ?? 0);\n b.speed = b.baseSpeed * speedFactor;\n }\n b.remaining -= b.speed;\n const targetX = Math.cos(b.angle) * b.speed, targetY = Math.sin(b.angle) * b.speed, inertia = opts.inertia;\n if (inertia?.enable) {\n const factor = inertia.factor ?? 0.1;\n p.velocity.x += (targetX - p.velocity.x) * factor;\n p.velocity.y += (targetY - p.velocity.y) * factor;\n this._res.x = p.velocity.x;\n this._res.y = p.velocity.y;\n } else {\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.x = targetX;\n this._res.y = targetY;\n }\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.segmentLength = source[\"segmentLength\"] ?? this.options.segmentLength;\n this.options.branchChance = source[\"branchChance\"] ?? this.options.branchChance;\n this.options.maxAngle = source[\"maxAngle\"] ?? this.options.maxAngle;\n this.options.speedVariation = source[\"speedVariation\"] ?? this.options.speedVariation;\n const inertiaSource = source[\"inertia\"];\n if (inertiaSource) {\n const inertiaOptions = {\n ...defaultOptions.inertia\n };\n inertiaOptions.enable = inertiaSource.enable ?? inertiaOptions.enable;\n inertiaOptions.factor = inertiaSource.factor ?? inertiaOptions.factor;\n this.options.inertia = inertiaOptions;\n }\n }\n reset(p) {\n delete p.branching;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/branches/dist/browser/BranchesPathGenerator.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BranchesPathGenerator: () => (/* binding */ BranchesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst defaultOptions = {\n segmentLength: 20,\n branchChance: 0.2,\n maxAngle: Math.PI / 3,\n speedVariation: 0.3,\n inertia: {\n enable: false,\n factor: 0.1\n }\n};\nclass BranchesPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n ...defaultOptions,\n inertia: {\n ...defaultOptions.inertia\n }\n };\n }\n generate(p) {\n const opts = this.options;\n p.branching ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI,\n remaining: opts.segmentLength,\n baseSpeed: p.velocity.length,\n speed: p.velocity.length\n };\n const b = p.branching;\n if (b.remaining <= 0) {\n const branch = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() < (opts.branchChance ?? 0), maxAngle = opts.maxAngle ?? defaultOptions.maxAngle, delta = ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (branch ? maxAngle : maxAngle * 0.3);\n b.angle += delta;\n b.remaining = opts.segmentLength;\n const speedFactor = 1 + ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (opts.speedVariation ?? 0);\n b.speed = b.baseSpeed * speedFactor;\n }\n b.remaining -= b.speed;\n const targetX = Math.cos(b.angle) * b.speed, targetY = Math.sin(b.angle) * b.speed, inertia = opts.inertia;\n if (inertia?.enable) {\n const factor = inertia.factor ?? 0.1;\n p.velocity.x += (targetX - p.velocity.x) * factor;\n p.velocity.y += (targetY - p.velocity.y) * factor;\n this._res.x = p.velocity.x;\n this._res.y = p.velocity.y;\n } else {\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.x = targetX;\n this._res.y = targetY;\n }\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.segmentLength = source[\"segmentLength\"] ?? this.options.segmentLength;\n this.options.branchChance = source[\"branchChance\"] ?? this.options.branchChance;\n this.options.maxAngle = source[\"maxAngle\"] ?? this.options.maxAngle;\n this.options.speedVariation = source[\"speedVariation\"] ?? this.options.speedVariation;\n const inertiaSource = source[\"inertia\"];\n if (inertiaSource) {\n const inertiaOptions = {\n ...defaultOptions.inertia\n };\n inertiaOptions.enable = inertiaSource.enable ?? inertiaOptions.enable;\n inertiaOptions.factor = inertiaSource.factor ?? inertiaOptions.factor;\n this.options.inertia = inertiaOptions;\n }\n }\n reset(p) {\n delete p.branching;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/branches/dist/browser/BranchesPathGenerator.js?\n}");
27
+
28
+ /***/ },
29
+
30
+ /***/ "../../plugins/move/dist/browser/index.js"
31
+ /*!************************************************!*\
32
+ !*** ../../plugins/move/dist/browser/index.js ***!
33
+ \************************************************/
34
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
+
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
27
37
 
28
38
  /***/ }
29
39
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,7 @@
23
23
  \**************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ branchingPathName: () => (/* binding */ branchingPathName),\n/* harmony export */ loadBranchesPath: () => (/* binding */ loadBranchesPath)\n/* harmony export */ });\nconst branchingPathName = \"branchesPathGenerator\";\nasync function loadBranchesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.0\");\n await engine.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.addPathGenerator?.(branchingPathName, async (container)=>{\n const { BranchesPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_branches_dist_browser_BranchesPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./BranchesPathGenerator.js */ \"../../paths/branches/dist/browser/BranchesPathGenerator.js\"));\n return new BranchesPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/branches/dist/browser/index.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ branchingPathName: () => (/* binding */ branchingPathName),\n/* harmony export */ loadBranchesPath: () => (/* binding */ loadBranchesPath)\n/* harmony export */ });\nconst branchingPathName = \"branchesPathGenerator\";\nasync function loadBranchesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(branchingPathName, async (container)=>{\n const { BranchesPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_branches_dist_browser_BranchesPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./BranchesPathGenerator.js */ \"../../paths/branches/dist/browser/BranchesPathGenerator.js\"));\n return new BranchesPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/branches/dist/browser/index.js?\n}");
27
27
 
28
28
  /***/ }
29
29
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,17 @@
23
23
  \******************************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BrownianPathGenerator: () => (/* binding */ BrownianPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nclass BrownianPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n angleDelta: Math.PI / 12,\n damping: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity\n };\n }\n generate(p) {\n p.brownian ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI,\n speed: p.velocity.length\n };\n const b = p.brownian, delta = ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (this.options.angleDelta ?? 0);\n b.angle += delta;\n const damping = this.options.damping ?? _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity;\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.length = b.speed * damping;\n this._res.angle = b.angle;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.angleDelta = source[\"angleDelta\"] ?? this.options.angleDelta;\n this.options.damping = source[\"damping\"] ?? this.options.damping;\n }\n reset(p) {\n delete p.brownian;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/brownian/dist/browser/BrownianPathGenerator.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ BrownianPathGenerator: () => (/* binding */ BrownianPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nclass BrownianPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n angleDelta: Math.PI / 12,\n damping: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity\n };\n }\n generate(p) {\n p.brownian ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI,\n speed: p.velocity.length\n };\n const b = p.brownian, delta = ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 2 - 1) * (this.options.angleDelta ?? 0);\n b.angle += delta;\n const damping = this.options.damping ?? _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity;\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.length = b.speed * damping;\n this._res.angle = b.angle;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.angleDelta = source[\"angleDelta\"] ?? this.options.angleDelta;\n this.options.damping = source[\"damping\"] ?? this.options.damping;\n }\n reset(p) {\n delete p.brownian;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/brownian/dist/browser/BrownianPathGenerator.js?\n}");
27
+
28
+ /***/ },
29
+
30
+ /***/ "../../plugins/move/dist/browser/index.js"
31
+ /*!************************************************!*\
32
+ !*** ../../plugins/move/dist/browser/index.js ***!
33
+ \************************************************/
34
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
+
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
27
37
 
28
38
  /***/ }
29
39
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,7 @@
23
23
  \**************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ brownianPathName: () => (/* binding */ brownianPathName),\n/* harmony export */ loadBrownianPath: () => (/* binding */ loadBrownianPath)\n/* harmony export */ });\nconst brownianPathName = \"brownianPathGenerator\";\nasync function loadBrownianPath(engine) {\n engine.checkVersion(\"4.0.0-beta.0\");\n await engine.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.addPathGenerator?.(brownianPathName, async (container)=>{\n const { BrownianPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_brownian_dist_browser_BrownianPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./BrownianPathGenerator.js */ \"../../paths/brownian/dist/browser/BrownianPathGenerator.js\"));\n return new BrownianPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/brownian/dist/browser/index.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ brownianPathName: () => (/* binding */ brownianPathName),\n/* harmony export */ loadBrownianPath: () => (/* binding */ loadBrownianPath)\n/* harmony export */ });\nconst brownianPathName = \"brownianPathGenerator\";\nasync function loadBrownianPath(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(brownianPathName, async (container)=>{\n const { BrownianPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_brownian_dist_browser_BrownianPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./BrownianPathGenerator.js */ \"../../paths/brownian/dist/browser/BrownianPathGenerator.js\"));\n return new BrownianPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/brownian/dist/browser/index.js?\n}");
27
27
 
28
28
  /***/ }
29
29
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,7 @@
23
23
  \****************************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurlNoiseGenerator: () => (/* binding */ CurlNoiseGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/simplex-noise */ \"../../utils/simplexNoise/dist/browser/index.js\");\n\n\nconst defaultOptions = {\n speed: 0.2,\n step: 250\n};\nclass CurlNoiseGenerator {\n options;\n _container;\n _res;\n _simplex;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n const simplex = new _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_1__.SimplexNoise();\n this._simplex = simplex.noise2d;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { speed, step } = this.options, x = pos.x / step, y = pos.y / step, eps = 0.001, n1a = this._simplex.noise(x, y + eps), n2a = this._simplex.noise(x, y - eps), a = (n1a - n2a) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps), n1b = this._simplex.noise(x + eps, y), n2b = this._simplex.noise(x - eps, y), b = (n1b - n2b) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps);\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n this._res.x = speed * a;\n this._res.y = speed * -b;\n return this._res;\n }\n init() {\n const container = this._container, sourceOptions = container.actualOptions.particles.move.path.options;\n this.options.seed = sourceOptions[\"seed\"];\n this.options.speed = (sourceOptions[\"speed\"] ?? defaultOptions.speed) * container.retina.pixelRatio;\n this.options.step = sourceOptions[\"step\"] ?? defaultOptions.step;\n this._simplex.seed(this.options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n }\n reset() {}\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurlNoiseGenerator: () => (/* binding */ CurlNoiseGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/simplex-noise */ \"../../utils/simplexNoise/dist/browser/index.js\");\n\n\n\nconst defaultOptions = {\n speed: 0.2,\n step: 250\n};\nclass CurlNoiseGenerator {\n options;\n _container;\n _res;\n _simplex;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n const simplex = new _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_2__.SimplexNoise();\n this._simplex = simplex.noise2d;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { speed, step } = this.options, x = pos.x / step, y = pos.y / step, eps = 0.001, n1a = this._simplex.noise(x, y + eps), n2a = this._simplex.noise(x, y - eps), a = (n1a - n2a) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps), n1b = this._simplex.noise(x + eps, y), n2b = this._simplex.noise(x - eps, y), b = (n1b - n2b) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps);\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n this._res.x = speed * a;\n this._res.y = speed * -b;\n return this._res;\n }\n init() {\n const container = this._container, sourceOptions = container.actualOptions.particles.move.path.options;\n this.options.seed = sourceOptions[\"seed\"];\n this.options.speed = (sourceOptions[\"speed\"] ?? defaultOptions.speed) * container.retina.pixelRatio;\n this.options.step = sourceOptions[\"step\"] ?? defaultOptions.step;\n this._simplex.seed(this.options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n }\n reset() {}\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js?\n}");
27
27
 
28
28
  /***/ }
29
29
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,17 @@
23
23
  \***************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curlNoisePathName: () => (/* binding */ curlNoisePathName),\n/* harmony export */ loadCurlNoisePath: () => (/* binding */ loadCurlNoisePath)\n/* harmony export */ });\nconst curlNoisePathName = \"curlNoise\";\nasync function loadCurlNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.0\");\n await engine.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.addPathGenerator?.(curlNoisePathName, async (container)=>{\n const { CurlNoiseGenerator } = await Promise.all(/*! import() */[__webpack_require__.e(\"utils_simplexNoise_dist_browser_index_js\"), __webpack_require__.e(\"paths_curlNoise_dist_browser_CurlNoiseGenerator_js\")]).then(__webpack_require__.bind(__webpack_require__, /*! ./CurlNoiseGenerator.js */ \"../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js\"));\n return new CurlNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/index.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curlNoisePathName: () => (/* binding */ curlNoisePathName),\n/* harmony export */ loadCurlNoisePath: () => (/* binding */ loadCurlNoisePath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst curlNoisePathName = \"curlNoise\";\nasync function loadCurlNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(curlNoisePathName, async (container)=>{\n const { CurlNoiseGenerator } = await Promise.all(/*! import() */[__webpack_require__.e(\"utils_simplexNoise_dist_browser_index_js\"), __webpack_require__.e(\"paths_curlNoise_dist_browser_CurlNoiseGenerator_js\")]).then(__webpack_require__.bind(__webpack_require__, /*! ./CurlNoiseGenerator.js */ \"../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js\"));\n return new CurlNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/index.js?\n}");
27
+
28
+ /***/ },
29
+
30
+ /***/ "../../plugins/move/dist/browser/index.js"
31
+ /*!************************************************!*\
32
+ !*** ../../plugins/move/dist/browser/index.js ***!
33
+ \************************************************/
34
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
+
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
27
37
 
28
38
  /***/ }
29
39
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -33,7 +33,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
33
33
  \**************************************************************/
34
34
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
35
 
36
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurvesPathGenerator: () => (/* binding */ CurvesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _Curves_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Curves.js */ \"../../paths/curves/dist/browser/Curves.js\");\n\n\nconst defaultOptions = {\n rndFunc: null,\n period: 100,\n nbHarmonics: 2,\n attenHarmonics: 0.8,\n lowValue: -0.03,\n highValue: 0.03\n};\nfunction randomVelocity() {\n const offset = 0.8, factor = 0.6;\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * factor + offset;\n}\nclass CurvesPathGenerator {\n options;\n _container;\n constructor(container){\n this._container = container;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n if (!particle.pathGen) {\n const { options } = this;\n particle.pathGen = (0,_Curves_js__WEBPACK_IMPORTED_MODULE_1__.CurvesPathGen)(options.rndFunc, options.period, options.nbHarmonics, options.attenHarmonics, options.lowValue, options.highValue);\n }\n if (particle.curveVelocity) {\n particle.curveVelocity.length += 0.01;\n particle.curveVelocity.angle = (particle.curveVelocity.angle + particle.pathGen()) % _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n } else {\n particle.curveVelocity = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n particle.curveVelocity.length = randomVelocity();\n particle.curveVelocity.angle = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n return particle.curveVelocity;\n }\n init() {\n const sourceOptions = this._container.actualOptions.particles.move.path.options;\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isFunction)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = sourceOptions[\"rndFunc\"];\n } else if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isString)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = globalThis[sourceOptions[\"rndFunc\"]] ?? this.options.rndFunc;\n }\n this.options.period = sourceOptions[\"period\"] ?? this.options.period;\n this.options.nbHarmonics = sourceOptions[\"nbHarmonics\"] ?? this.options.nbHarmonics;\n this.options.attenHarmonics = sourceOptions[\"attenHarmonics\"] ?? this.options.attenHarmonics;\n this.options.lowValue = sourceOptions[\"lowValue\"] ?? this.options.lowValue;\n this.options.highValue = sourceOptions[\"highValue\"] ?? this.options.highValue;\n }\n reset(particle) {\n delete particle.pathGen;\n delete particle.curveVelocity;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/CurvesPathGenerator.js?\n}");
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurvesPathGenerator: () => (/* binding */ CurvesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _Curves_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Curves.js */ \"../../paths/curves/dist/browser/Curves.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\n\nconst defaultOptions = {\n rndFunc: null,\n period: 100,\n nbHarmonics: 2,\n attenHarmonics: 0.8,\n lowValue: -0.03,\n highValue: 0.03\n};\nfunction randomVelocity() {\n const offset = 0.8, factor = 0.6;\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * factor + offset;\n}\nclass CurvesPathGenerator {\n options;\n _container;\n constructor(container){\n this._container = container;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n if (!particle.pathGen) {\n const { options } = this;\n particle.pathGen = (0,_Curves_js__WEBPACK_IMPORTED_MODULE_1__.CurvesPathGen)(options.rndFunc, options.period, options.nbHarmonics, options.attenHarmonics, options.lowValue, options.highValue);\n }\n if (particle.curveVelocity) {\n particle.curveVelocity.length += 0.01;\n particle.curveVelocity.angle = (particle.curveVelocity.angle + particle.pathGen()) % _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n } else {\n particle.curveVelocity = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n particle.curveVelocity.length = randomVelocity();\n particle.curveVelocity.angle = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n return particle.curveVelocity;\n }\n init() {\n const sourceOptions = this._container.actualOptions.particles.move.path.options;\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isFunction)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = sourceOptions[\"rndFunc\"];\n } else if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isString)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = globalThis[sourceOptions[\"rndFunc\"]] ?? this.options.rndFunc;\n }\n this.options.period = sourceOptions[\"period\"] ?? this.options.period;\n this.options.nbHarmonics = sourceOptions[\"nbHarmonics\"] ?? this.options.nbHarmonics;\n this.options.attenHarmonics = sourceOptions[\"attenHarmonics\"] ?? this.options.attenHarmonics;\n this.options.lowValue = sourceOptions[\"lowValue\"] ?? this.options.lowValue;\n this.options.highValue = sourceOptions[\"highValue\"] ?? this.options.highValue;\n }\n reset(particle) {\n delete particle.pathGen;\n delete particle.curveVelocity;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/CurvesPathGenerator.js?\n}");
37
37
 
38
38
  /***/ }
39
39
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,17 @@
23
23
  \************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curvesPathName: () => (/* binding */ curvesPathName),\n/* harmony export */ loadCurvesPath: () => (/* binding */ loadCurvesPath)\n/* harmony export */ });\nconst curvesPathName = \"curvesPathGenerator\";\nasync function loadCurvesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.0\");\n await engine.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.addPathGenerator?.(curvesPathName, async (container)=>{\n const { CurvesPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_curves_dist_browser_CurvesPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./CurvesPathGenerator.js */ \"../../paths/curves/dist/browser/CurvesPathGenerator.js\"));\n return new CurvesPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/index.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curvesPathName: () => (/* binding */ curvesPathName),\n/* harmony export */ loadCurvesPath: () => (/* binding */ loadCurvesPath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst curvesPathName = \"curvesPathGenerator\";\nasync function loadCurvesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(curvesPathName, async (container)=>{\n const { CurvesPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_curves_dist_browser_CurvesPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./CurvesPathGenerator.js */ \"../../paths/curves/dist/browser/CurvesPathGenerator.js\"));\n return new CurvesPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/index.js?\n}");
27
+
28
+ /***/ },
29
+
30
+ /***/ "../../plugins/move/dist/browser/index.js"
31
+ /*!************************************************!*\
32
+ !*** ../../plugins/move/dist/browser/index.js ***!
33
+ \************************************************/
34
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
+
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
27
37
 
28
38
  /***/ }
29
39
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -33,7 +33,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
33
33
  \*************************************************************/
34
34
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
35
 
36
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FractalNoise: () => (/* binding */ FractalNoise)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_smooth_value_noise__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/smooth-value-noise */ \"../../utils/smoothValueNoise/dist/browser/index.js\");\n\nclass FractalNoise {\n _smoothValueNoise;\n constructor(){\n this._smoothValueNoise = new _tsparticles_smooth_value_noise__WEBPACK_IMPORTED_MODULE_0__.SmoothValueNoise();\n }\n noise2d(x, y, octaves = 5, persistence = 0.5, lacunarity = 2.0) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise2d(x * frequency, y * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n noise3d(x, y, z, octaves = 5, persistence = 0.5, lacunarity = 2.0) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise3d(x * frequency, y * frequency, z * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n noise4d(x, y, z, w, octaves = 5, persistence = 0.5, lacunarity = 2.0) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise4d(x * frequency, y * frequency, z * frequency, w * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n seed(seed) {\n this._smoothValueNoise.seed(seed);\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/fractalNoise/dist/browser/FractalNoise.js?\n}");
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FractalNoise: () => (/* binding */ FractalNoise)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_smooth_value_noise__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/smooth-value-noise */ \"../../utils/smoothValueNoise/dist/browser/index.js\");\n\nclass FractalNoise {\n _smoothValueNoise;\n constructor(){\n this._smoothValueNoise = new _tsparticles_smooth_value_noise__WEBPACK_IMPORTED_MODULE_0__.SmoothValueNoise();\n }\n noise2d(x, y, octaves = 5, persistence = 0.5, lacunarity = 2) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise2d(x * frequency, y * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n noise3d(x, y, z, octaves = 5, persistence = 0.5, lacunarity = 2) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise3d(x * frequency, y * frequency, z * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n noise4d(x, y, z, w, octaves = 5, persistence = 0.5, lacunarity = 2) {\n let total = 0, frequency = 1, amplitude = 1, maxValue = 0;\n for(let i = 0; i < octaves; i++){\n total += this._smoothValueNoise.noise4d(x * frequency, y * frequency, z * frequency, w * frequency) * amplitude;\n maxValue += amplitude;\n amplitude *= persistence;\n frequency *= lacunarity;\n }\n return total / maxValue;\n }\n seed(seed) {\n this._smoothValueNoise.seed(seed);\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/fractalNoise/dist/browser/FractalNoise.js?\n}");
37
37
 
38
38
  /***/ },
39
39
 
@@ -53,7 +53,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
53
53
  \******************************************************************/
54
54
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
55
55
 
56
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, point = {\n x: Math.max(Math.floor(pos.x / size), originCoordinate),\n y: Math.max(Math.floor(pos.y / size), originCoordinate),\n z: Math.max(Math.floor(pos.z / size), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
56
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, sizeFactor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity / size, point = {\n x: Math.max(Math.floor(pos.x * sizeFactor), originCoordinate),\n y: Math.max(Math.floor(pos.y * sizeFactor), originCoordinate),\n z: Math.max(Math.floor(pos.z * sizeFactor), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.render.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
57
57
 
58
58
  /***/ },
59
59
 
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v4.0.0-beta.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,17 @@
23
23
  \******************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fractalNoisePathName: () => (/* binding */ fractalNoisePathName),\n/* harmony export */ loadFractalNoisePath: () => (/* binding */ loadFractalNoisePath)\n/* harmony export */ });\nconst fractalNoisePathName = \"fractalNoise\";\nasync function loadFractalNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.0\");\n await engine.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.addPathGenerator?.(fractalNoisePathName, async (container)=>{\n const { FractalNoiseGenerator } = await __webpack_require__.e(/*! import() */ \"paths_fractalNoise_dist_browser_FractalNoiseGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./FractalNoiseGenerator.js */ \"../../paths/fractalNoise/dist/browser/FractalNoiseGenerator.js\"));\n return new FractalNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/fractalNoise/dist/browser/index.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fractalNoisePathName: () => (/* binding */ fractalNoisePathName),\n/* harmony export */ loadFractalNoisePath: () => (/* binding */ loadFractalNoisePath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst fractalNoisePathName = \"fractalNoise\";\nasync function loadFractalNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(fractalNoisePathName, async (container)=>{\n const { FractalNoiseGenerator } = await __webpack_require__.e(/*! import() */ \"paths_fractalNoise_dist_browser_FractalNoiseGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./FractalNoiseGenerator.js */ \"../../paths/fractalNoise/dist/browser/FractalNoiseGenerator.js\"));\n return new FractalNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/fractalNoise/dist/browser/index.js?\n}");
27
+
28
+ /***/ },
29
+
30
+ /***/ "../../plugins/move/dist/browser/index.js"
31
+ /*!************************************************!*\
32
+ !*** ../../plugins/move/dist/browser/index.js ***!
33
+ \************************************************/
34
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
35
+
36
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.2\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
27
37
 
28
38
  /***/ }
29
39