tsparticles 3.7.0 → 3.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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
- * v3.7.0
7
+ * v3.7.1
8
8
  */
9
9
  /*
10
10
  * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
@@ -44,7 +44,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
44
44
  \*******************************/
45
45
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
46
46
 
47
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadFull: () => (/* binding */ loadFull)\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_absorbers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-absorbers */ \"../../plugins/absorbers/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_destroy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/updater-destroy */ \"../../updaters/destroy/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/plugin-emitters */ \"../../plugins/emitters/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters_shape_circle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/plugin-emitters-shape-circle */ \"../../plugins/emittersShapes/circle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters_shape_square__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/plugin-emitters-shape-square */ \"../../plugins/emittersShapes/square/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_trail__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/interaction-external-trail */ \"../../interactions/external/trail/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_roll__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/updater-roll */ \"../../updaters/roll/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_slim__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/slim */ \"../slim/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_text__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/shape-text */ \"../../shapes/text/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_tilt__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @tsparticles/updater-tilt */ \"../../updaters/tilt/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_twinkle__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @tsparticles/updater-twinkle */ \"../../updaters/twinkle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_wobble__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @tsparticles/updater-wobble */ \"../../updaters/wobble/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\nasync function loadFull(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await (0,_tsparticles_updater_destroy__WEBPACK_IMPORTED_MODULE_2__.loadDestroyUpdater)(engine, false);\n await (0,_tsparticles_updater_roll__WEBPACK_IMPORTED_MODULE_7__.loadRollUpdater)(engine, false);\n await (0,_tsparticles_updater_tilt__WEBPACK_IMPORTED_MODULE_10__.loadTiltUpdater)(engine, false);\n await (0,_tsparticles_updater_twinkle__WEBPACK_IMPORTED_MODULE_11__.loadTwinkleUpdater)(engine, false);\n await (0,_tsparticles_updater_wobble__WEBPACK_IMPORTED_MODULE_12__.loadWobbleUpdater)(engine, false);\n await (0,_tsparticles_shape_text__WEBPACK_IMPORTED_MODULE_9__.loadTextShape)(engine, false);\n await (0,_tsparticles_interaction_external_trail__WEBPACK_IMPORTED_MODULE_6__.loadExternalTrailInteraction)(engine, false);\n await (0,_tsparticles_plugin_absorbers__WEBPACK_IMPORTED_MODULE_1__.loadAbsorbersPlugin)(engine, false);\n await (0,_tsparticles_plugin_emitters__WEBPACK_IMPORTED_MODULE_3__.loadEmittersPlugin)(engine, false);\n await (0,_tsparticles_plugin_emitters_shape_circle__WEBPACK_IMPORTED_MODULE_4__.loadEmittersShapeCircle)(engine, false);\n await (0,_tsparticles_plugin_emitters_shape_square__WEBPACK_IMPORTED_MODULE_5__.loadEmittersShapeSquare)(engine, false);\n await (0,_tsparticles_slim__WEBPACK_IMPORTED_MODULE_8__.loadSlim)(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/./dist/browser/index.js?");
47
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadFull: () => (/* binding */ loadFull)\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_absorbers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-absorbers */ \"../../plugins/absorbers/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_destroy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/updater-destroy */ \"../../updaters/destroy/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/plugin-emitters */ \"../../plugins/emitters/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters_shape_circle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/plugin-emitters-shape-circle */ \"../../plugins/emittersShapes/circle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_emitters_shape_square__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/plugin-emitters-shape-square */ \"../../plugins/emittersShapes/square/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_trail__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/interaction-external-trail */ \"../../interactions/external/trail/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_roll__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/updater-roll */ \"../../updaters/roll/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_slim__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/slim */ \"../slim/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_text__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/shape-text */ \"../../shapes/text/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_tilt__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @tsparticles/updater-tilt */ \"../../updaters/tilt/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_twinkle__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @tsparticles/updater-twinkle */ \"../../updaters/twinkle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_wobble__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @tsparticles/updater-wobble */ \"../../updaters/wobble/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\nasync function loadFull(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await (0,_tsparticles_updater_destroy__WEBPACK_IMPORTED_MODULE_2__.loadDestroyUpdater)(engine, false);\n await (0,_tsparticles_updater_roll__WEBPACK_IMPORTED_MODULE_7__.loadRollUpdater)(engine, false);\n await (0,_tsparticles_updater_tilt__WEBPACK_IMPORTED_MODULE_10__.loadTiltUpdater)(engine, false);\n await (0,_tsparticles_updater_twinkle__WEBPACK_IMPORTED_MODULE_11__.loadTwinkleUpdater)(engine, false);\n await (0,_tsparticles_updater_wobble__WEBPACK_IMPORTED_MODULE_12__.loadWobbleUpdater)(engine, false);\n await (0,_tsparticles_shape_text__WEBPACK_IMPORTED_MODULE_9__.loadTextShape)(engine, false);\n await (0,_tsparticles_interaction_external_trail__WEBPACK_IMPORTED_MODULE_6__.loadExternalTrailInteraction)(engine, false);\n await (0,_tsparticles_plugin_absorbers__WEBPACK_IMPORTED_MODULE_1__.loadAbsorbersPlugin)(engine, false);\n await (0,_tsparticles_plugin_emitters__WEBPACK_IMPORTED_MODULE_3__.loadEmittersPlugin)(engine, false);\n await (0,_tsparticles_plugin_emitters_shape_circle__WEBPACK_IMPORTED_MODULE_4__.loadEmittersShapeCircle)(engine, false);\n await (0,_tsparticles_plugin_emitters_shape_square__WEBPACK_IMPORTED_MODULE_5__.loadEmittersShapeSquare)(engine, false);\n await (0,_tsparticles_slim__WEBPACK_IMPORTED_MODULE_8__.loadSlim)(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/./dist/browser/index.js?");
48
48
 
49
49
  /***/ }),
50
50
 
@@ -54,7 +54,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
54
54
  \**************************************/
55
55
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
56
56
 
57
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadBasic: () => (/* binding */ loadBasic)\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_move_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/move-base */ \"../../move/base/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_circle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/shape-circle */ \"../../shapes/circle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_color__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/updater-color */ \"../../updaters/color/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_hex_color__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/plugin-hex-color */ \"../../plugins/colors/hexColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_hsl_color__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/plugin-hsl-color */ \"../../plugins/colors/hslColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_opacity__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/updater-opacity */ \"../../updaters/opacity/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_out_modes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/updater-out-modes */ \"../../updaters/outModes/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_rgb_color__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/plugin-rgb-color */ \"../../plugins/colors/rgbColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_size__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/updater-size */ \"../../updaters/size/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\nasync function loadBasic(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await (0,_tsparticles_plugin_hex_color__WEBPACK_IMPORTED_MODULE_4__.loadHexColorPlugin)(engine, false);\n await (0,_tsparticles_plugin_hsl_color__WEBPACK_IMPORTED_MODULE_5__.loadHslColorPlugin)(engine, false);\n await (0,_tsparticles_plugin_rgb_color__WEBPACK_IMPORTED_MODULE_8__.loadRgbColorPlugin)(engine, false);\n await (0,_tsparticles_move_base__WEBPACK_IMPORTED_MODULE_1__.loadBaseMover)(engine, false);\n await (0,_tsparticles_shape_circle__WEBPACK_IMPORTED_MODULE_2__.loadCircleShape)(engine, false);\n await (0,_tsparticles_updater_color__WEBPACK_IMPORTED_MODULE_3__.loadColorUpdater)(engine, false);\n await (0,_tsparticles_updater_opacity__WEBPACK_IMPORTED_MODULE_6__.loadOpacityUpdater)(engine, false);\n await (0,_tsparticles_updater_out_modes__WEBPACK_IMPORTED_MODULE_7__.loadOutModesUpdater)(engine, false);\n await (0,_tsparticles_updater_size__WEBPACK_IMPORTED_MODULE_9__.loadSizeUpdater)(engine, false);\n await engine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../basic/dist/browser/index.js?");
57
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadBasic: () => (/* binding */ loadBasic)\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_move_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/move-base */ \"../../move/base/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_circle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/shape-circle */ \"../../shapes/circle/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_color__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/updater-color */ \"../../updaters/color/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_hex_color__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/plugin-hex-color */ \"../../plugins/colors/hexColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_hsl_color__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/plugin-hsl-color */ \"../../plugins/colors/hslColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_opacity__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/updater-opacity */ \"../../updaters/opacity/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_out_modes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/updater-out-modes */ \"../../updaters/outModes/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_rgb_color__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/plugin-rgb-color */ \"../../plugins/colors/rgbColor/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_size__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/updater-size */ \"../../updaters/size/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\nasync function loadBasic(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await (0,_tsparticles_plugin_hex_color__WEBPACK_IMPORTED_MODULE_4__.loadHexColorPlugin)(engine, false);\n await (0,_tsparticles_plugin_hsl_color__WEBPACK_IMPORTED_MODULE_5__.loadHslColorPlugin)(engine, false);\n await (0,_tsparticles_plugin_rgb_color__WEBPACK_IMPORTED_MODULE_8__.loadRgbColorPlugin)(engine, false);\n await (0,_tsparticles_move_base__WEBPACK_IMPORTED_MODULE_1__.loadBaseMover)(engine, false);\n await (0,_tsparticles_shape_circle__WEBPACK_IMPORTED_MODULE_2__.loadCircleShape)(engine, false);\n await (0,_tsparticles_updater_color__WEBPACK_IMPORTED_MODULE_3__.loadColorUpdater)(engine, false);\n await (0,_tsparticles_updater_opacity__WEBPACK_IMPORTED_MODULE_6__.loadOpacityUpdater)(engine, false);\n await (0,_tsparticles_updater_out_modes__WEBPACK_IMPORTED_MODULE_7__.loadOutModesUpdater)(engine, false);\n await (0,_tsparticles_updater_size__WEBPACK_IMPORTED_MODULE_9__.loadSizeUpdater)(engine, false);\n await engine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../basic/dist/browser/index.js?");
58
58
 
59
59
  /***/ }),
60
60
 
@@ -64,7 +64,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
64
64
  \*************************************/
65
65
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
66
66
 
67
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSlim: () => (/* binding */ loadSlim)\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_basic__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/basic */ \"../basic/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_easing_quad__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/plugin-easing-quad */ \"../../plugins/easings/quad/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_emoji__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/shape-emoji */ \"../../shapes/emoji/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_attract__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/interaction-external-attract */ \"../../interactions/external/attract/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_bounce__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/interaction-external-bounce */ \"../../interactions/external/bounce/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_bubble__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/interaction-external-bubble */ \"../../interactions/external/bubble/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_connect__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/interaction-external-connect */ \"../../interactions/external/connect/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_grab__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/interaction-external-grab */ \"../../interactions/external/grab/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_pause__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/interaction-external-pause */ \"../../interactions/external/pause/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_push__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @tsparticles/interaction-external-push */ \"../../interactions/external/push/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_remove__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @tsparticles/interaction-external-remove */ \"../../interactions/external/remove/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_repulse__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @tsparticles/interaction-external-repulse */ \"../../interactions/external/repulse/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_slow__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @tsparticles/interaction-external-slow */ \"../../interactions/external/slow/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_image__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @tsparticles/shape-image */ \"../../shapes/image/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_life__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @tsparticles/updater-life */ \"../../updaters/life/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_line__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @tsparticles/shape-line */ \"../../shapes/line/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_move_parallax__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @tsparticles/move-parallax */ \"../../move/parallax/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_attract__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @tsparticles/interaction-particles-attract */ \"../../interactions/particles/attract/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_collisions__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @tsparticles/interaction-particles-collisions */ \"../../interactions/particles/collisions/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_links__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @tsparticles/interaction-particles-links */ \"../../interactions/particles/links/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_polygon__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @tsparticles/shape-polygon */ \"../../shapes/polygon/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_rotate__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @tsparticles/updater-rotate */ \"../../updaters/rotate/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_square__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @tsparticles/shape-square */ \"../../shapes/square/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_star__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @tsparticles/shape-star */ \"../../shapes/star/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_stroke_color__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @tsparticles/updater-stroke-color */ \"../../updaters/strokeColor/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nasync function loadSlim(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await (0,_tsparticles_move_parallax__WEBPACK_IMPORTED_MODULE_17__.loadParallaxMover)(engine, false);\n await (0,_tsparticles_interaction_external_attract__WEBPACK_IMPORTED_MODULE_4__.loadExternalAttractInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_bounce__WEBPACK_IMPORTED_MODULE_5__.loadExternalBounceInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_bubble__WEBPACK_IMPORTED_MODULE_6__.loadExternalBubbleInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_connect__WEBPACK_IMPORTED_MODULE_7__.loadExternalConnectInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_grab__WEBPACK_IMPORTED_MODULE_8__.loadExternalGrabInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_pause__WEBPACK_IMPORTED_MODULE_9__.loadExternalPauseInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_push__WEBPACK_IMPORTED_MODULE_10__.loadExternalPushInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_remove__WEBPACK_IMPORTED_MODULE_11__.loadExternalRemoveInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_repulse__WEBPACK_IMPORTED_MODULE_12__.loadExternalRepulseInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_slow__WEBPACK_IMPORTED_MODULE_13__.loadExternalSlowInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_attract__WEBPACK_IMPORTED_MODULE_18__.loadParticlesAttractInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_collisions__WEBPACK_IMPORTED_MODULE_19__.loadParticlesCollisionsInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_links__WEBPACK_IMPORTED_MODULE_20__.loadParticlesLinksInteraction)(engine, false);\n await (0,_tsparticles_plugin_easing_quad__WEBPACK_IMPORTED_MODULE_2__.loadEasingQuadPlugin)(engine, false);\n await (0,_tsparticles_shape_emoji__WEBPACK_IMPORTED_MODULE_3__.loadEmojiShape)(engine, false);\n await (0,_tsparticles_shape_image__WEBPACK_IMPORTED_MODULE_14__.loadImageShape)(engine, false);\n await (0,_tsparticles_shape_line__WEBPACK_IMPORTED_MODULE_16__.loadLineShape)(engine, false);\n await (0,_tsparticles_shape_polygon__WEBPACK_IMPORTED_MODULE_21__.loadPolygonShape)(engine, false);\n await (0,_tsparticles_shape_square__WEBPACK_IMPORTED_MODULE_23__.loadSquareShape)(engine, false);\n await (0,_tsparticles_shape_star__WEBPACK_IMPORTED_MODULE_24__.loadStarShape)(engine, false);\n await (0,_tsparticles_updater_life__WEBPACK_IMPORTED_MODULE_15__.loadLifeUpdater)(engine, false);\n await (0,_tsparticles_updater_rotate__WEBPACK_IMPORTED_MODULE_22__.loadRotateUpdater)(engine, false);\n await (0,_tsparticles_updater_stroke_color__WEBPACK_IMPORTED_MODULE_25__.loadStrokeColorUpdater)(engine, false);\n await (0,_tsparticles_basic__WEBPACK_IMPORTED_MODULE_1__.loadBasic)(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../slim/dist/browser/index.js?");
67
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSlim: () => (/* binding */ loadSlim)\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_basic__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/basic */ \"../basic/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_easing_quad__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/plugin-easing-quad */ \"../../plugins/easings/quad/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_emoji__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tsparticles/shape-emoji */ \"../../shapes/emoji/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_attract__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @tsparticles/interaction-external-attract */ \"../../interactions/external/attract/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_bounce__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @tsparticles/interaction-external-bounce */ \"../../interactions/external/bounce/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_bubble__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @tsparticles/interaction-external-bubble */ \"../../interactions/external/bubble/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_connect__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @tsparticles/interaction-external-connect */ \"../../interactions/external/connect/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_grab__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @tsparticles/interaction-external-grab */ \"../../interactions/external/grab/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_pause__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tsparticles/interaction-external-pause */ \"../../interactions/external/pause/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_push__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @tsparticles/interaction-external-push */ \"../../interactions/external/push/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_remove__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @tsparticles/interaction-external-remove */ \"../../interactions/external/remove/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_repulse__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @tsparticles/interaction-external-repulse */ \"../../interactions/external/repulse/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_external_slow__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @tsparticles/interaction-external-slow */ \"../../interactions/external/slow/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_image__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @tsparticles/shape-image */ \"../../shapes/image/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_life__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @tsparticles/updater-life */ \"../../updaters/life/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_line__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @tsparticles/shape-line */ \"../../shapes/line/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_move_parallax__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @tsparticles/move-parallax */ \"../../move/parallax/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_attract__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @tsparticles/interaction-particles-attract */ \"../../interactions/particles/attract/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_collisions__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @tsparticles/interaction-particles-collisions */ \"../../interactions/particles/collisions/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_interaction_particles_links__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @tsparticles/interaction-particles-links */ \"../../interactions/particles/links/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_polygon__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @tsparticles/shape-polygon */ \"../../shapes/polygon/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_rotate__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @tsparticles/updater-rotate */ \"../../updaters/rotate/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_square__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @tsparticles/shape-square */ \"../../shapes/square/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_shape_star__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @tsparticles/shape-star */ \"../../shapes/star/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_updater_stroke_color__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @tsparticles/updater-stroke-color */ \"../../updaters/strokeColor/dist/browser/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nasync function loadSlim(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await (0,_tsparticles_move_parallax__WEBPACK_IMPORTED_MODULE_17__.loadParallaxMover)(engine, false);\n await (0,_tsparticles_interaction_external_attract__WEBPACK_IMPORTED_MODULE_4__.loadExternalAttractInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_bounce__WEBPACK_IMPORTED_MODULE_5__.loadExternalBounceInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_bubble__WEBPACK_IMPORTED_MODULE_6__.loadExternalBubbleInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_connect__WEBPACK_IMPORTED_MODULE_7__.loadExternalConnectInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_grab__WEBPACK_IMPORTED_MODULE_8__.loadExternalGrabInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_pause__WEBPACK_IMPORTED_MODULE_9__.loadExternalPauseInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_push__WEBPACK_IMPORTED_MODULE_10__.loadExternalPushInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_remove__WEBPACK_IMPORTED_MODULE_11__.loadExternalRemoveInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_repulse__WEBPACK_IMPORTED_MODULE_12__.loadExternalRepulseInteraction)(engine, false);\n await (0,_tsparticles_interaction_external_slow__WEBPACK_IMPORTED_MODULE_13__.loadExternalSlowInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_attract__WEBPACK_IMPORTED_MODULE_18__.loadParticlesAttractInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_collisions__WEBPACK_IMPORTED_MODULE_19__.loadParticlesCollisionsInteraction)(engine, false);\n await (0,_tsparticles_interaction_particles_links__WEBPACK_IMPORTED_MODULE_20__.loadParticlesLinksInteraction)(engine, false);\n await (0,_tsparticles_plugin_easing_quad__WEBPACK_IMPORTED_MODULE_2__.loadEasingQuadPlugin)(engine, false);\n await (0,_tsparticles_shape_emoji__WEBPACK_IMPORTED_MODULE_3__.loadEmojiShape)(engine, false);\n await (0,_tsparticles_shape_image__WEBPACK_IMPORTED_MODULE_14__.loadImageShape)(engine, false);\n await (0,_tsparticles_shape_line__WEBPACK_IMPORTED_MODULE_16__.loadLineShape)(engine, false);\n await (0,_tsparticles_shape_polygon__WEBPACK_IMPORTED_MODULE_21__.loadPolygonShape)(engine, false);\n await (0,_tsparticles_shape_square__WEBPACK_IMPORTED_MODULE_23__.loadSquareShape)(engine, false);\n await (0,_tsparticles_shape_star__WEBPACK_IMPORTED_MODULE_24__.loadStarShape)(engine, false);\n await (0,_tsparticles_updater_life__WEBPACK_IMPORTED_MODULE_15__.loadLifeUpdater)(engine, false);\n await (0,_tsparticles_updater_rotate__WEBPACK_IMPORTED_MODULE_22__.loadRotateUpdater)(engine, false);\n await (0,_tsparticles_updater_stroke_color__WEBPACK_IMPORTED_MODULE_25__.loadStrokeColorUpdater)(engine, false);\n await (0,_tsparticles_basic__WEBPACK_IMPORTED_MODULE_1__.loadBasic)(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../slim/dist/browser/index.js?");
68
68
 
69
69
  /***/ }),
70
70
 
@@ -74,7 +74,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
74
74
  \************************************************/
75
75
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
76
76
 
77
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Canvas: () => (/* binding */ Canvas)\n/* harmony export */ });\n/* harmony import */ var _Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Utils/CanvasUtils.js */ \"../../engine/dist/browser/Utils/CanvasUtils.js\");\n/* harmony import */ var _Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Utils/Utils.js */ \"../../engine/dist/browser/Utils/Utils.js\");\n/* harmony import */ var _Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Utils/ColorUtils.js */ \"../../engine/dist/browser/Utils/ColorUtils.js\");\n/* harmony import */ var _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Utils/Constants.js */ \"../../engine/dist/browser/Core/Utils/Constants.js\");\n\n\n\n\nfunction setTransformValue(factor, newFactor, key) {\n const newValue = newFactor[key],\n defaultValue = 1;\n if (newValue !== undefined) {\n factor[key] = (factor[key] ?? defaultValue) * newValue;\n }\n}\nfunction setStyle(canvas, style, important = false) {\n if (!style) {\n return;\n }\n const element = canvas;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n for (const key in style) {\n const value = style[key];\n elementStyle.setProperty(key, value, important ? \"important\" : \"\");\n }\n}\nclass Canvas {\n constructor(container, engine) {\n this.container = container;\n this._applyPostDrawUpdaters = particle => {\n for (const updater of this._postDrawUpdaters) {\n updater.afterDraw?.(particle);\n }\n };\n this._applyPreDrawUpdaters = (ctx, particle, radius, zOpacity, colorStyles, transform) => {\n for (const updater of this._preDrawUpdaters) {\n if (updater.getColorStyles) {\n const {\n fill,\n stroke\n } = updater.getColorStyles(particle, ctx, radius, zOpacity);\n if (fill) {\n colorStyles.fill = fill;\n }\n if (stroke) {\n colorStyles.stroke = stroke;\n }\n }\n if (updater.getTransformValues) {\n const updaterTransform = updater.getTransformValues(particle);\n for (const key in updaterTransform) {\n setTransformValue(transform, updaterTransform, key);\n }\n }\n updater.beforeDraw?.(particle);\n }\n };\n this._applyResizePlugins = () => {\n for (const plugin of this._resizePlugins) {\n plugin.resize?.();\n }\n };\n this._getPluginParticleColors = particle => {\n let fColor, sColor;\n for (const plugin of this._colorPlugins) {\n if (!fColor && plugin.particleFillColor) {\n fColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToHsl)(this._engine, plugin.particleFillColor(particle));\n }\n if (!sColor && plugin.particleStrokeColor) {\n sColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToHsl)(this._engine, plugin.particleStrokeColor(particle));\n }\n if (fColor && sColor) {\n break;\n }\n }\n return [fColor, sColor];\n };\n this._initCover = async () => {\n const options = this.container.actualOptions,\n cover = options.backgroundMask.cover,\n color = cover.color;\n if (color) {\n const coverRgb = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, color);\n if (coverRgb) {\n const coverColor = {\n ...coverRgb,\n a: cover.opacity\n };\n this._coverColorStyle = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(coverColor, coverColor.a);\n }\n } else {\n await new Promise((resolve, reject) => {\n if (!cover.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._coverImage = {\n image: img,\n opacity: cover.opacity\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = cover.image;\n });\n }\n };\n this._initStyle = () => {\n const element = this.element,\n options = this.container.actualOptions;\n if (!element) {\n return;\n }\n if (this._fullScreen) {\n this._originalStyle = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.deepExtend)({}, element.style);\n this._setFullScreenStyle();\n } else {\n this._resetOriginalStyle();\n }\n for (const key in options.style) {\n if (!key || !options.style) {\n continue;\n }\n const value = options.style[key];\n if (!value) {\n continue;\n }\n element.style.setProperty(key, value, \"important\");\n }\n };\n this._initTrail = async () => {\n const options = this.container.actualOptions,\n trail = options.particles.move.trail,\n trailFill = trail.fill;\n if (!trail.enable) {\n return;\n }\n const factorNumerator = 1,\n opacity = factorNumerator / trail.length;\n if (trailFill.color) {\n const fillColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, trailFill.color);\n if (!fillColor) {\n return;\n }\n this._trailFill = {\n color: {\n ...fillColor\n },\n opacity\n };\n } else {\n await new Promise((resolve, reject) => {\n if (!trailFill.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._trailFill = {\n image: img,\n opacity\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = trailFill.image;\n });\n }\n };\n this._paintBase = baseColor => {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.paintBase)(ctx, this.size, baseColor));\n };\n this._paintImage = (image, opacity) => {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.paintImage)(ctx, this.size, image, opacity));\n };\n this._repairStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n this._safeMutationObserver(observer => observer.disconnect());\n this._initStyle();\n this.initBackground();\n this._safeMutationObserver(observer => {\n if (!element || !(element instanceof Node)) {\n return;\n }\n observer.observe(element, {\n attributes: true\n });\n });\n };\n this._resetOriginalStyle = () => {\n const element = this.element,\n originalStyle = this._originalStyle;\n if (!(element && originalStyle)) {\n return;\n }\n setStyle(element, originalStyle);\n };\n this._safeMutationObserver = callback => {\n if (!this._mutationObserver) {\n return;\n }\n callback(this._mutationObserver);\n };\n this._setFullScreenStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n const radix = 10,\n zIndex = this.container.actualOptions.fullScreen.zIndex.toString(radix);\n setStyle(element, {\n position: \"fixed\",\n \"z-index\": zIndex,\n zIndex: zIndex,\n top: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\"\n }, true);\n };\n this._engine = engine;\n this._standardSize = {\n height: 0,\n width: 0\n };\n const pxRatio = container.retina.pixelRatio,\n stdSize = this._standardSize;\n this.size = {\n height: stdSize.height * pxRatio,\n width: stdSize.width * pxRatio\n };\n this._context = null;\n this._generated = false;\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n get _fullScreen() {\n return this.container.actualOptions.fullScreen.enable;\n }\n clear() {\n const options = this.container.actualOptions,\n trail = options.particles.move.trail,\n trailFill = this._trailFill,\n minimumLength = 0;\n if (options.backgroundMask.enable) {\n this.paint();\n } else if (trail.enable && trail.length > minimumLength && trailFill) {\n if (trailFill.color) {\n this._paintBase((0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(trailFill.color, trailFill.opacity));\n } else if (trailFill.image) {\n this._paintImage(trailFill.image, trailFill.opacity);\n }\n } else if (options.clear) {\n this.draw(ctx => {\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size);\n });\n }\n }\n destroy() {\n this.stop();\n if (this._generated) {\n const element = this.element;\n element?.remove();\n } else {\n this._resetOriginalStyle();\n }\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n draw(cb) {\n const ctx = this._context;\n if (!ctx) {\n return;\n }\n return cb(ctx);\n }\n drawAsync(cb) {\n const ctx = this._context;\n if (!ctx) {\n return undefined;\n }\n return cb(ctx);\n }\n drawParticle(particle, delta) {\n if (particle.spawning || particle.destroyed) {\n return;\n }\n const radius = particle.getRadius(),\n minimumSize = 0;\n if (radius <= minimumSize) {\n return;\n }\n const pfColor = particle.getFillColor(),\n psColor = particle.getStrokeColor() ?? pfColor;\n let [fColor, sColor] = this._getPluginParticleColors(particle);\n if (!fColor) {\n fColor = pfColor;\n }\n if (!sColor) {\n sColor = psColor;\n }\n if (!fColor && !sColor) {\n return;\n }\n this.draw(ctx => {\n const container = this.container,\n options = container.actualOptions,\n zIndexOptions = particle.options.zIndex,\n zIndexFactorOffset = 1,\n zIndexFactor = zIndexFactorOffset - particle.zIndexFactor,\n zOpacityFactor = zIndexFactor ** zIndexOptions.opacityRate,\n defaultOpacity = 1,\n opacity = particle.bubble.opacity ?? particle.opacity?.value ?? defaultOpacity,\n strokeOpacity = particle.strokeOpacity ?? opacity,\n zOpacity = opacity * zOpacityFactor,\n zStrokeOpacity = strokeOpacity * zOpacityFactor,\n transform = {},\n colorStyles = {\n fill: fColor ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromHsl)(fColor, zOpacity) : undefined\n };\n colorStyles.stroke = sColor ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromHsl)(sColor, zStrokeOpacity) : colorStyles.fill;\n this._applyPreDrawUpdaters(ctx, particle, radius, zOpacity, colorStyles, transform);\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawParticle)({\n container,\n context: ctx,\n particle,\n delta,\n colorStyles,\n backgroundMask: options.backgroundMask.enable,\n composite: options.backgroundMask.composite,\n radius: radius * zIndexFactor ** zIndexOptions.sizeRate,\n opacity: zOpacity,\n shadow: particle.options.shadow,\n transform\n });\n this._applyPostDrawUpdaters(particle);\n });\n }\n drawParticlePlugin(plugin, particle, delta) {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawParticlePlugin)(ctx, plugin, particle, delta));\n }\n drawPlugin(plugin, delta) {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawPlugin)(ctx, plugin, delta));\n }\n async init() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.safeMutationObserver)(records => {\n for (const record of records) {\n if (record.type === \"attributes\" && record.attributeName === \"style\") {\n this._repairStyle();\n }\n }\n });\n this.resize();\n this._initStyle();\n await this._initCover();\n try {\n await this._initTrail();\n } catch (e) {\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.getLogger)().error(e);\n }\n this.initBackground();\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, {\n attributes: true\n });\n });\n this.initUpdaters();\n this.initPlugins();\n this.paint();\n }\n initBackground() {\n const options = this.container.actualOptions,\n background = options.background,\n element = this.element;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n if (background.color) {\n const color = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, background.color);\n elementStyle.backgroundColor = color ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(color, background.opacity) : \"\";\n } else {\n elementStyle.backgroundColor = \"\";\n }\n elementStyle.backgroundImage = background.image || \"\";\n elementStyle.backgroundPosition = background.position || \"\";\n elementStyle.backgroundRepeat = background.repeat || \"\";\n elementStyle.backgroundSize = background.size || \"\";\n }\n initPlugins() {\n this._resizePlugins = [];\n for (const plugin of this.container.plugins.values()) {\n if (plugin.resize) {\n this._resizePlugins.push(plugin);\n }\n if (plugin.particleFillColor ?? plugin.particleStrokeColor) {\n this._colorPlugins.push(plugin);\n }\n }\n }\n initUpdaters() {\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n for (const updater of this.container.particles.updaters) {\n if (updater.afterDraw) {\n this._postDrawUpdaters.push(updater);\n }\n if (updater.getColorStyles ?? updater.getTransformValues ?? updater.beforeDraw) {\n this._preDrawUpdaters.push(updater);\n }\n }\n }\n loadCanvas(canvas) {\n if (this._generated && this.element) {\n this.element.remove();\n }\n this._generated = canvas.dataset && _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__.generatedAttribute in canvas.dataset ? canvas.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__.generatedAttribute] === \"true\" : this._generated;\n this.element = canvas;\n this.element.ariaHidden = \"true\";\n this._originalStyle = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.deepExtend)({}, this.element.style);\n const standardSize = this._standardSize;\n standardSize.height = canvas.offsetHeight;\n standardSize.width = canvas.offsetWidth;\n const pxRatio = this.container.retina.pixelRatio;\n const retinaSize = this.size;\n retinaSize.height = standardSize.height * pxRatio;\n retinaSize.width = standardSize.width * pxRatio;\n this._context = this.element.getContext(\"2d\");\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, {\n attributes: true\n });\n });\n this.container.retina.init();\n this.initBackground();\n }\n paint() {\n const options = this.container.actualOptions;\n this.draw(ctx => {\n if (options.backgroundMask.enable && options.backgroundMask.cover) {\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size);\n if (this._coverImage) {\n this._paintImage(this._coverImage.image, this._coverImage.opacity);\n } else if (this._coverColorStyle) {\n this._paintBase(this._coverColorStyle);\n } else {\n this._paintBase();\n }\n } else {\n this._paintBase();\n }\n });\n }\n resize() {\n if (!this.element) {\n return false;\n }\n const container = this.container,\n currentSize = container.canvas._standardSize,\n newSize = {\n width: this.element.offsetWidth,\n height: this.element.offsetHeight\n };\n if (newSize.height === currentSize.height && newSize.width === currentSize.width) {\n return false;\n }\n const oldSize = {\n ...currentSize\n },\n pxRatio = container.retina.pixelRatio;\n currentSize.height = newSize.height;\n currentSize.width = newSize.width;\n const retinaSize = this.size;\n this.element.width = retinaSize.width = currentSize.width * pxRatio;\n this.element.height = retinaSize.height = currentSize.height * pxRatio;\n if (this.container.started) {\n container.particles.setResizeFactor({\n width: currentSize.width / oldSize.width,\n height: currentSize.height / oldSize.height\n });\n }\n return true;\n }\n stop() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = undefined;\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size));\n }\n async windowResize() {\n if (!this.element || !this.resize()) {\n return;\n }\n const container = this.container,\n needsRefresh = container.updateActualOptions();\n container.particles.setDensity();\n this._applyResizePlugins();\n if (needsRefresh) {\n await container.refresh();\n }\n }\n}\n\n//# sourceURL=webpack://tsparticles/../../engine/dist/browser/Core/Canvas.js?");
77
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Canvas: () => (/* binding */ Canvas)\n/* harmony export */ });\n/* harmony import */ var _Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Utils/CanvasUtils.js */ \"../../engine/dist/browser/Utils/CanvasUtils.js\");\n/* harmony import */ var _Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Utils/Utils.js */ \"../../engine/dist/browser/Utils/Utils.js\");\n/* harmony import */ var _Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Utils/ColorUtils.js */ \"../../engine/dist/browser/Utils/ColorUtils.js\");\n/* harmony import */ var _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Utils/Constants.js */ \"../../engine/dist/browser/Core/Utils/Constants.js\");\n\n\n\n\nfunction setTransformValue(factor, newFactor, key) {\n const newValue = newFactor[key],\n defaultValue = 1;\n if (newValue !== undefined) {\n factor[key] = (factor[key] ?? defaultValue) * newValue;\n }\n}\nfunction setStyle(canvas, style, important = false) {\n if (!style) {\n return;\n }\n const element = canvas;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n for (const key in style) {\n const value = style[key];\n elementStyle.setProperty(key, value, important ? \"important\" : \"\");\n }\n}\nclass Canvas {\n constructor(container, engine) {\n this.container = container;\n this._applyPostDrawUpdaters = particle => {\n for (const updater of this._postDrawUpdaters) {\n updater.afterDraw?.(particle);\n }\n };\n this._applyPreDrawUpdaters = (ctx, particle, radius, zOpacity, colorStyles, transform) => {\n for (const updater of this._preDrawUpdaters) {\n if (updater.getColorStyles) {\n const {\n fill,\n stroke\n } = updater.getColorStyles(particle, ctx, radius, zOpacity);\n if (fill) {\n colorStyles.fill = fill;\n }\n if (stroke) {\n colorStyles.stroke = stroke;\n }\n }\n if (updater.getTransformValues) {\n const updaterTransform = updater.getTransformValues(particle);\n for (const key in updaterTransform) {\n setTransformValue(transform, updaterTransform, key);\n }\n }\n updater.beforeDraw?.(particle);\n }\n };\n this._applyResizePlugins = () => {\n for (const plugin of this._resizePlugins) {\n plugin.resize?.();\n }\n };\n this._getPluginParticleColors = particle => {\n let fColor, sColor;\n for (const plugin of this._colorPlugins) {\n if (!fColor && plugin.particleFillColor) {\n fColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToHsl)(this._engine, plugin.particleFillColor(particle));\n }\n if (!sColor && plugin.particleStrokeColor) {\n sColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToHsl)(this._engine, plugin.particleStrokeColor(particle));\n }\n if (fColor && sColor) {\n break;\n }\n }\n return [fColor, sColor];\n };\n this._initCover = async () => {\n const options = this.container.actualOptions,\n cover = options.backgroundMask.cover,\n color = cover.color;\n if (color) {\n const coverRgb = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, color);\n if (coverRgb) {\n const coverColor = {\n ...coverRgb,\n a: cover.opacity\n };\n this._coverColorStyle = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(coverColor, coverColor.a);\n }\n } else {\n await new Promise((resolve, reject) => {\n if (!cover.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._coverImage = {\n image: img,\n opacity: cover.opacity\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = cover.image;\n });\n }\n };\n this._initStyle = () => {\n const element = this.element,\n options = this.container.actualOptions;\n if (!element) {\n return;\n }\n if (this._fullScreen) {\n this._originalStyle = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.deepExtend)({}, element.style);\n this._setFullScreenStyle();\n } else {\n this._resetOriginalStyle();\n }\n for (const key in options.style) {\n if (!key || !options.style) {\n continue;\n }\n const value = options.style[key];\n if (!value) {\n continue;\n }\n element.style.setProperty(key, value, \"important\");\n }\n };\n this._initTrail = async () => {\n const options = this.container.actualOptions,\n trail = options.particles.move.trail,\n trailFill = trail.fill;\n if (!trail.enable) {\n return;\n }\n const factorNumerator = 1,\n opacity = factorNumerator / trail.length;\n if (trailFill.color) {\n const fillColor = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, trailFill.color);\n if (!fillColor) {\n return;\n }\n this._trailFill = {\n color: {\n ...fillColor\n },\n opacity\n };\n } else {\n await new Promise((resolve, reject) => {\n if (!trailFill.image) {\n return;\n }\n const img = document.createElement(\"img\");\n img.addEventListener(\"load\", () => {\n this._trailFill = {\n image: img,\n opacity\n };\n resolve();\n });\n img.addEventListener(\"error\", evt => {\n reject(evt.error);\n });\n img.src = trailFill.image;\n });\n }\n };\n this._paintBase = baseColor => {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.paintBase)(ctx, this.size, baseColor));\n };\n this._paintImage = (image, opacity) => {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.paintImage)(ctx, this.size, image, opacity));\n };\n this._repairStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n this._safeMutationObserver(observer => observer.disconnect());\n this._initStyle();\n this.initBackground();\n this._safeMutationObserver(observer => {\n if (!element || !(element instanceof Node)) {\n return;\n }\n observer.observe(element, {\n attributes: true\n });\n });\n };\n this._resetOriginalStyle = () => {\n const element = this.element,\n originalStyle = this._originalStyle;\n if (!(element && originalStyle)) {\n return;\n }\n setStyle(element, originalStyle);\n };\n this._safeMutationObserver = callback => {\n if (!this._mutationObserver) {\n return;\n }\n callback(this._mutationObserver);\n };\n this._setFullScreenStyle = () => {\n const element = this.element;\n if (!element) {\n return;\n }\n const radix = 10,\n zIndex = this.container.actualOptions.fullScreen.zIndex.toString(radix);\n setStyle(element, {\n position: \"fixed\",\n \"z-index\": zIndex,\n zIndex: zIndex,\n top: \"0\",\n left: \"0\",\n width: \"100%\",\n height: \"100%\"\n }, true);\n };\n this._engine = engine;\n this._standardSize = {\n height: 0,\n width: 0\n };\n const pxRatio = container.retina.pixelRatio,\n stdSize = this._standardSize;\n this.size = {\n height: stdSize.height * pxRatio,\n width: stdSize.width * pxRatio\n };\n this._context = null;\n this._generated = false;\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n get _fullScreen() {\n return this.container.actualOptions.fullScreen.enable;\n }\n clear() {\n const options = this.container.actualOptions,\n trail = options.particles.move.trail,\n trailFill = this._trailFill,\n minimumLength = 0;\n if (options.backgroundMask.enable) {\n this.paint();\n } else if (trail.enable && trail.length > minimumLength && trailFill) {\n if (trailFill.color) {\n this._paintBase((0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(trailFill.color, trailFill.opacity));\n } else if (trailFill.image) {\n this._paintImage(trailFill.image, trailFill.opacity);\n }\n } else if (options.clear) {\n this.draw(ctx => {\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size);\n });\n }\n }\n destroy() {\n this.stop();\n if (this._generated) {\n const element = this.element;\n element?.remove();\n } else {\n this._resetOriginalStyle();\n }\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n this._resizePlugins = [];\n this._colorPlugins = [];\n }\n draw(cb) {\n const ctx = this._context;\n if (!ctx) {\n return;\n }\n return cb(ctx);\n }\n drawAsync(cb) {\n const ctx = this._context;\n if (!ctx) {\n return undefined;\n }\n return cb(ctx);\n }\n drawParticle(particle, delta) {\n if (particle.spawning || particle.destroyed) {\n return;\n }\n const radius = particle.getRadius(),\n minimumSize = 0;\n if (radius <= minimumSize) {\n return;\n }\n const pfColor = particle.getFillColor(),\n psColor = particle.getStrokeColor() ?? pfColor;\n let [fColor, sColor] = this._getPluginParticleColors(particle);\n if (!fColor) {\n fColor = pfColor;\n }\n if (!sColor) {\n sColor = psColor;\n }\n if (!fColor && !sColor) {\n return;\n }\n this.draw(ctx => {\n const container = this.container,\n options = container.actualOptions,\n zIndexOptions = particle.options.zIndex,\n zIndexFactorOffset = 1,\n zIndexFactor = zIndexFactorOffset - particle.zIndexFactor,\n zOpacityFactor = zIndexFactor ** zIndexOptions.opacityRate,\n defaultOpacity = 1,\n opacity = particle.bubble.opacity ?? particle.opacity?.value ?? defaultOpacity,\n strokeOpacity = particle.strokeOpacity ?? opacity,\n zOpacity = opacity * zOpacityFactor,\n zStrokeOpacity = strokeOpacity * zOpacityFactor,\n transform = {},\n colorStyles = {\n fill: fColor ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromHsl)(fColor, zOpacity) : undefined\n };\n colorStyles.stroke = sColor ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromHsl)(sColor, zStrokeOpacity) : colorStyles.fill;\n this._applyPreDrawUpdaters(ctx, particle, radius, zOpacity, colorStyles, transform);\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawParticle)({\n container,\n context: ctx,\n particle,\n delta,\n colorStyles,\n backgroundMask: options.backgroundMask.enable,\n composite: options.backgroundMask.composite,\n radius: radius * zIndexFactor ** zIndexOptions.sizeRate,\n opacity: zOpacity,\n shadow: particle.options.shadow,\n transform\n });\n this._applyPostDrawUpdaters(particle);\n });\n }\n drawParticlePlugin(plugin, particle, delta) {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawParticlePlugin)(ctx, plugin, particle, delta));\n }\n drawPlugin(plugin, delta) {\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.drawPlugin)(ctx, plugin, delta));\n }\n async init() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.safeMutationObserver)(records => {\n for (const record of records) {\n if (record.type === \"attributes\" && record.attributeName === \"style\") {\n this._repairStyle();\n }\n }\n });\n this.resize();\n this._initStyle();\n await this._initCover();\n try {\n await this._initTrail();\n } catch (e) {\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.getLogger)().error(e);\n }\n this.initBackground();\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, {\n attributes: true\n });\n });\n this.initUpdaters();\n this.initPlugins();\n this.paint();\n }\n initBackground() {\n const options = this.container.actualOptions,\n background = options.background,\n element = this.element;\n if (!element) {\n return;\n }\n const elementStyle = element.style;\n if (!elementStyle) {\n return;\n }\n if (background.color) {\n const color = (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.rangeColorToRgb)(this._engine, background.color);\n elementStyle.backgroundColor = color ? (0,_Utils_ColorUtils_js__WEBPACK_IMPORTED_MODULE_2__.getStyleFromRgb)(color, background.opacity) : \"\";\n } else {\n elementStyle.backgroundColor = \"\";\n }\n elementStyle.backgroundImage = background.image || \"\";\n elementStyle.backgroundPosition = background.position || \"\";\n elementStyle.backgroundRepeat = background.repeat || \"\";\n elementStyle.backgroundSize = background.size || \"\";\n }\n initPlugins() {\n this._resizePlugins = [];\n for (const plugin of this.container.plugins.values()) {\n if (plugin.resize) {\n this._resizePlugins.push(plugin);\n }\n if (plugin.particleFillColor ?? plugin.particleStrokeColor) {\n this._colorPlugins.push(plugin);\n }\n }\n }\n initUpdaters() {\n this._preDrawUpdaters = [];\n this._postDrawUpdaters = [];\n for (const updater of this.container.particles.updaters) {\n if (updater.afterDraw) {\n this._postDrawUpdaters.push(updater);\n }\n if (updater.getColorStyles ?? updater.getTransformValues ?? updater.beforeDraw) {\n this._preDrawUpdaters.push(updater);\n }\n }\n }\n loadCanvas(canvas) {\n if (this._generated && this.element) {\n this.element.remove();\n }\n this._generated = canvas.dataset && _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__.generatedAttribute in canvas.dataset ? canvas.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_3__.generatedAttribute] === \"true\" : this._generated;\n this.element = canvas;\n this.element.ariaHidden = \"true\";\n this._originalStyle = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.deepExtend)({}, this.element.style);\n const standardSize = this._standardSize;\n standardSize.height = canvas.offsetHeight;\n standardSize.width = canvas.offsetWidth;\n const pxRatio = this.container.retina.pixelRatio,\n retinaSize = this.size;\n canvas.height = retinaSize.height = standardSize.height * pxRatio;\n canvas.width = retinaSize.width = standardSize.width * pxRatio;\n this._context = this.element.getContext(\"2d\");\n this._safeMutationObserver(obs => {\n if (!this.element || !(this.element instanceof Node)) {\n return;\n }\n obs.observe(this.element, {\n attributes: true\n });\n });\n this.container.retina.init();\n this.initBackground();\n }\n paint() {\n const options = this.container.actualOptions;\n this.draw(ctx => {\n if (options.backgroundMask.enable && options.backgroundMask.cover) {\n (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size);\n if (this._coverImage) {\n this._paintImage(this._coverImage.image, this._coverImage.opacity);\n } else if (this._coverColorStyle) {\n this._paintBase(this._coverColorStyle);\n } else {\n this._paintBase();\n }\n } else {\n this._paintBase();\n }\n });\n }\n resize() {\n if (!this.element) {\n return false;\n }\n const container = this.container,\n currentSize = container.canvas._standardSize,\n newSize = {\n width: this.element.offsetWidth,\n height: this.element.offsetHeight\n },\n pxRatio = container.retina.pixelRatio,\n retinaSize = {\n width: newSize.width * pxRatio,\n height: newSize.height * pxRatio\n };\n if (newSize.height === currentSize.height && newSize.width === currentSize.width && retinaSize.height === this.element.height && retinaSize.width === this.element.width) {\n return false;\n }\n const oldSize = {\n ...currentSize\n };\n currentSize.height = newSize.height;\n currentSize.width = newSize.width;\n const canvasSize = this.size;\n this.element.width = canvasSize.width = retinaSize.width;\n this.element.height = canvasSize.height = retinaSize.height;\n if (this.container.started) {\n container.particles.setResizeFactor({\n width: currentSize.width / oldSize.width,\n height: currentSize.height / oldSize.height\n });\n }\n return true;\n }\n stop() {\n this._safeMutationObserver(obs => obs.disconnect());\n this._mutationObserver = undefined;\n this.draw(ctx => (0,_Utils_CanvasUtils_js__WEBPACK_IMPORTED_MODULE_0__.clear)(ctx, this.size));\n }\n async windowResize() {\n if (!this.element || !this.resize()) {\n return;\n }\n const container = this.container,\n needsRefresh = container.updateActualOptions();\n container.particles.setDensity();\n this._applyResizePlugins();\n if (needsRefresh) {\n await container.refresh();\n }\n }\n}\n\n//# sourceURL=webpack://tsparticles/../../engine/dist/browser/Core/Canvas.js?");
78
78
 
79
79
  /***/ }),
80
80
 
@@ -94,7 +94,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
94
94
  \************************************************/
95
95
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
96
96
 
97
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Engine: () => (/* binding */ Engine)\n/* harmony export */ });\n/* harmony import */ var _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utils/Constants.js */ \"../../engine/dist/browser/Core/Utils/Constants.js\");\n/* harmony import */ var _Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Utils/Utils.js */ \"../../engine/dist/browser/Utils/Utils.js\");\n/* harmony import */ var _Container_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Container.js */ \"../../engine/dist/browser/Core/Container.js\");\n/* harmony import */ var _Utils_EventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../Utils/EventDispatcher.js */ \"../../engine/dist/browser/Utils/EventDispatcher.js\");\n/* harmony import */ var _Enums_Types_EventType_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Enums/Types/EventType.js */ \"../../engine/dist/browser/Enums/Types/EventType.js\");\n/* harmony import */ var _Utils_NumberUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Utils/NumberUtils.js */ \"../../engine/dist/browser/Utils/NumberUtils.js\");\n\n\n\n\n\n\nasync function getItemsFromInitializer(container, map, initializers, force = false) {\n let res = map.get(container);\n if (!res || force) {\n res = await Promise.all([...initializers.values()].map(t => t(container)));\n map.set(container, res);\n }\n return res;\n}\nasync function getDataFromUrl(data) {\n const url = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.itemFromSingleOrMultiple)(data.url, data.index);\n if (!url) {\n return data.fallback;\n }\n const response = await fetch(url);\n if (response.ok) {\n return await response.json();\n }\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.getLogger)().error(`${_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.errorPrefix} ${response.status} while retrieving config file`);\n return data.fallback;\n}\nconst generatedTrue = \"true\",\n generatedFalse = \"false\",\n canvasTag = \"canvas\",\n getCanvasFromContainer = domContainer => {\n let canvasEl;\n if (domContainer instanceof HTMLCanvasElement || domContainer.tagName.toLowerCase() === canvasTag) {\n canvasEl = domContainer;\n if (!canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute]) {\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedFalse;\n }\n } else {\n const existingCanvases = domContainer.getElementsByTagName(canvasTag);\n if (existingCanvases.length) {\n const firstIndex = 0;\n canvasEl = existingCanvases[firstIndex];\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedFalse;\n } else {\n canvasEl = document.createElement(canvasTag);\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedTrue;\n domContainer.appendChild(canvasEl);\n }\n }\n const fullPercent = \"100%\";\n if (!canvasEl.style.width) {\n canvasEl.style.width = fullPercent;\n }\n if (!canvasEl.style.height) {\n canvasEl.style.height = fullPercent;\n }\n return canvasEl;\n },\n getDomContainer = (id, source) => {\n let domContainer = source ?? document.getElementById(id);\n if (domContainer) {\n return domContainer;\n }\n domContainer = document.createElement(\"div\");\n domContainer.id = id;\n domContainer.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedTrue;\n document.body.append(domContainer);\n return domContainer;\n };\nclass Engine {\n constructor() {\n this._configs = new Map();\n this._domArray = [];\n this._eventDispatcher = new _Utils_EventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__.EventDispatcher();\n this._initialized = false;\n this.plugins = [];\n this.colorManagers = new Map();\n this.easingFunctions = new Map();\n this._initializers = {\n interactors: new Map(),\n movers: new Map(),\n updaters: new Map()\n };\n this.interactors = new Map();\n this.movers = new Map();\n this.updaters = new Map();\n this.presets = new Map();\n this.effectDrawers = new Map();\n this.shapeDrawers = new Map();\n this.pathGenerators = new Map();\n }\n get configs() {\n const res = {};\n for (const [name, config] of this._configs) {\n res[name] = config;\n }\n return res;\n }\n get items() {\n return this._domArray;\n }\n get version() {\n return \"3.7.0\";\n }\n async addColorManager(manager, refresh = true) {\n this.colorManagers.set(manager.key, manager);\n await this.refresh(refresh);\n }\n addConfig(config) {\n const key = config.key ?? config.name ?? \"default\";\n this._configs.set(key, config);\n this._eventDispatcher.dispatchEvent(_Enums_Types_EventType_js__WEBPACK_IMPORTED_MODULE_4__.EventType.configAdded, {\n data: {\n name: key,\n config\n }\n });\n }\n async addEasing(name, easing, refresh = true) {\n if (this.getEasing(name)) {\n return;\n }\n this.easingFunctions.set(name, easing);\n await this.refresh(refresh);\n }\n async addEffect(effect, drawer, refresh = true) {\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.executeOnSingleOrMultiple)(effect, type => {\n if (!this.getEffectDrawer(type)) {\n this.effectDrawers.set(type, drawer);\n }\n });\n await this.refresh(refresh);\n }\n addEventListener(type, listener) {\n this._eventDispatcher.addEventListener(type, listener);\n }\n async addInteractor(name, interactorInitializer, refresh = true) {\n this._initializers.interactors.set(name, interactorInitializer);\n await this.refresh(refresh);\n }\n async addMover(name, moverInitializer, refresh = true) {\n this._initializers.movers.set(name, moverInitializer);\n await this.refresh(refresh);\n }\n async addParticleUpdater(name, updaterInitializer, refresh = true) {\n this._initializers.updaters.set(name, updaterInitializer);\n await this.refresh(refresh);\n }\n async addPathGenerator(name, generator, refresh = true) {\n if (!this.getPathGenerator(name)) {\n this.pathGenerators.set(name, generator);\n }\n await this.refresh(refresh);\n }\n async addPlugin(plugin, refresh = true) {\n if (!this.getPlugin(plugin.id)) {\n this.plugins.push(plugin);\n }\n await this.refresh(refresh);\n }\n async addPreset(preset, options, override = false, refresh = true) {\n if (override || !this.getPreset(preset)) {\n this.presets.set(preset, options);\n }\n await this.refresh(refresh);\n }\n async addShape(drawer, refresh = true) {\n for (const validType of drawer.validTypes) {\n if (this.getShapeDrawer(validType)) {\n continue;\n }\n this.shapeDrawers.set(validType, drawer);\n }\n await this.refresh(refresh);\n }\n clearPlugins(container) {\n this.updaters.delete(container);\n this.movers.delete(container);\n this.interactors.delete(container);\n }\n dispatchEvent(type, args) {\n this._eventDispatcher.dispatchEvent(type, args);\n }\n dom() {\n return this.items;\n }\n domItem(index) {\n return this.item(index);\n }\n async getAvailablePlugins(container) {\n const res = new Map();\n for (const plugin of this.plugins) {\n if (plugin.needsPlugin(container.actualOptions)) {\n res.set(plugin.id, await plugin.getPlugin(container));\n }\n }\n return res;\n }\n getEasing(name) {\n return this.easingFunctions.get(name) ?? (value => value);\n }\n getEffectDrawer(type) {\n return this.effectDrawers.get(type);\n }\n async getInteractors(container, force = false) {\n return getItemsFromInitializer(container, this.interactors, this._initializers.interactors, force);\n }\n async getMovers(container, force = false) {\n return getItemsFromInitializer(container, this.movers, this._initializers.movers, force);\n }\n getPathGenerator(type) {\n return this.pathGenerators.get(type);\n }\n getPlugin(plugin) {\n return this.plugins.find(t => t.id === plugin);\n }\n getPreset(preset) {\n return this.presets.get(preset);\n }\n getShapeDrawer(type) {\n return this.shapeDrawers.get(type);\n }\n getSupportedEffects() {\n return this.effectDrawers.keys();\n }\n getSupportedShapes() {\n return this.shapeDrawers.keys();\n }\n async getUpdaters(container, force = false) {\n return getItemsFromInitializer(container, this.updaters, this._initializers.updaters, force);\n }\n init() {\n if (this._initialized) {\n return;\n }\n this._initialized = true;\n }\n item(index) {\n const {\n items\n } = this,\n item = items[index];\n if (!item || item.destroyed) {\n const deleteCount = 1;\n items.splice(index, deleteCount);\n return;\n }\n return item;\n }\n async load(params) {\n const randomFactor = 10000,\n id = params.id ?? params.element?.id ?? `tsparticles${Math.floor((0,_Utils_NumberUtils_js__WEBPACK_IMPORTED_MODULE_5__.getRandom)() * randomFactor)}`,\n {\n index,\n url\n } = params,\n options = url ? await getDataFromUrl({\n fallback: params.options,\n url,\n index\n }) : params.options;\n const currentOptions = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.itemFromSingleOrMultiple)(options, index),\n {\n items\n } = this,\n oldIndex = items.findIndex(v => v.id.description === id),\n minIndex = 0,\n newItem = new _Container_js__WEBPACK_IMPORTED_MODULE_2__.Container(this, id, currentOptions);\n if (oldIndex >= minIndex) {\n const old = this.item(oldIndex),\n one = 1,\n none = 0,\n deleteCount = old ? one : none;\n if (old && !old.destroyed) {\n old.destroy(false);\n }\n items.splice(oldIndex, deleteCount, newItem);\n } else {\n items.push(newItem);\n }\n const domContainer = getDomContainer(id, params.element),\n canvasEl = getCanvasFromContainer(domContainer);\n newItem.canvas.loadCanvas(canvasEl);\n await newItem.start();\n return newItem;\n }\n loadOptions(options, sourceOptions) {\n this.plugins.forEach(plugin => plugin.loadOptions?.(options, sourceOptions));\n }\n loadParticlesOptions(container, options, ...sourceOptions) {\n const updaters = this.updaters.get(container);\n if (!updaters) {\n return;\n }\n updaters.forEach(updater => updater.loadOptions?.(options, ...sourceOptions));\n }\n async refresh(refresh = true) {\n if (!refresh) {\n return;\n }\n await Promise.all(this.items.map(t => t.refresh()));\n }\n removeEventListener(type, listener) {\n this._eventDispatcher.removeEventListener(type, listener);\n }\n setOnClickHandler(callback) {\n const {\n items\n } = this;\n if (!items.length) {\n throw new Error(`${_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.errorPrefix} can only set click handlers after calling tsParticles.load()`);\n }\n items.forEach(item => item.addClickHandler(callback));\n }\n}\n\n//# sourceURL=webpack://tsparticles/../../engine/dist/browser/Core/Engine.js?");
97
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Engine: () => (/* binding */ Engine)\n/* harmony export */ });\n/* harmony import */ var _Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utils/Constants.js */ \"../../engine/dist/browser/Core/Utils/Constants.js\");\n/* harmony import */ var _Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Utils/Utils.js */ \"../../engine/dist/browser/Utils/Utils.js\");\n/* harmony import */ var _Container_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Container.js */ \"../../engine/dist/browser/Core/Container.js\");\n/* harmony import */ var _Utils_EventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../Utils/EventDispatcher.js */ \"../../engine/dist/browser/Utils/EventDispatcher.js\");\n/* harmony import */ var _Enums_Types_EventType_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Enums/Types/EventType.js */ \"../../engine/dist/browser/Enums/Types/EventType.js\");\n/* harmony import */ var _Utils_NumberUtils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../Utils/NumberUtils.js */ \"../../engine/dist/browser/Utils/NumberUtils.js\");\n\n\n\n\n\n\nasync function getItemsFromInitializer(container, map, initializers, force = false) {\n let res = map.get(container);\n if (!res || force) {\n res = await Promise.all([...initializers.values()].map(t => t(container)));\n map.set(container, res);\n }\n return res;\n}\nasync function getDataFromUrl(data) {\n const url = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.itemFromSingleOrMultiple)(data.url, data.index);\n if (!url) {\n return data.fallback;\n }\n const response = await fetch(url);\n if (response.ok) {\n return await response.json();\n }\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.getLogger)().error(`${_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.errorPrefix} ${response.status} while retrieving config file`);\n return data.fallback;\n}\nconst generatedTrue = \"true\",\n generatedFalse = \"false\",\n canvasTag = \"canvas\",\n getCanvasFromContainer = domContainer => {\n let canvasEl;\n if (domContainer instanceof HTMLCanvasElement || domContainer.tagName.toLowerCase() === canvasTag) {\n canvasEl = domContainer;\n if (!canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute]) {\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedFalse;\n }\n } else {\n const existingCanvases = domContainer.getElementsByTagName(canvasTag);\n if (existingCanvases.length) {\n const firstIndex = 0;\n canvasEl = existingCanvases[firstIndex];\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedFalse;\n } else {\n canvasEl = document.createElement(canvasTag);\n canvasEl.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedTrue;\n domContainer.appendChild(canvasEl);\n }\n }\n const fullPercent = \"100%\";\n if (!canvasEl.style.width) {\n canvasEl.style.width = fullPercent;\n }\n if (!canvasEl.style.height) {\n canvasEl.style.height = fullPercent;\n }\n return canvasEl;\n },\n getDomContainer = (id, source) => {\n let domContainer = source ?? document.getElementById(id);\n if (domContainer) {\n return domContainer;\n }\n domContainer = document.createElement(\"div\");\n domContainer.id = id;\n domContainer.dataset[_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.generatedAttribute] = generatedTrue;\n document.body.append(domContainer);\n return domContainer;\n };\nclass Engine {\n constructor() {\n this._configs = new Map();\n this._domArray = [];\n this._eventDispatcher = new _Utils_EventDispatcher_js__WEBPACK_IMPORTED_MODULE_3__.EventDispatcher();\n this._initialized = false;\n this.plugins = [];\n this.colorManagers = new Map();\n this.easingFunctions = new Map();\n this._initializers = {\n interactors: new Map(),\n movers: new Map(),\n updaters: new Map()\n };\n this.interactors = new Map();\n this.movers = new Map();\n this.updaters = new Map();\n this.presets = new Map();\n this.effectDrawers = new Map();\n this.shapeDrawers = new Map();\n this.pathGenerators = new Map();\n }\n get configs() {\n const res = {};\n for (const [name, config] of this._configs) {\n res[name] = config;\n }\n return res;\n }\n get items() {\n return this._domArray;\n }\n get version() {\n return \"3.7.1\";\n }\n async addColorManager(manager, refresh = true) {\n this.colorManagers.set(manager.key, manager);\n await this.refresh(refresh);\n }\n addConfig(config) {\n const key = config.key ?? config.name ?? \"default\";\n this._configs.set(key, config);\n this._eventDispatcher.dispatchEvent(_Enums_Types_EventType_js__WEBPACK_IMPORTED_MODULE_4__.EventType.configAdded, {\n data: {\n name: key,\n config\n }\n });\n }\n async addEasing(name, easing, refresh = true) {\n if (this.getEasing(name)) {\n return;\n }\n this.easingFunctions.set(name, easing);\n await this.refresh(refresh);\n }\n async addEffect(effect, drawer, refresh = true) {\n (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.executeOnSingleOrMultiple)(effect, type => {\n if (!this.getEffectDrawer(type)) {\n this.effectDrawers.set(type, drawer);\n }\n });\n await this.refresh(refresh);\n }\n addEventListener(type, listener) {\n this._eventDispatcher.addEventListener(type, listener);\n }\n async addInteractor(name, interactorInitializer, refresh = true) {\n this._initializers.interactors.set(name, interactorInitializer);\n await this.refresh(refresh);\n }\n async addMover(name, moverInitializer, refresh = true) {\n this._initializers.movers.set(name, moverInitializer);\n await this.refresh(refresh);\n }\n async addParticleUpdater(name, updaterInitializer, refresh = true) {\n this._initializers.updaters.set(name, updaterInitializer);\n await this.refresh(refresh);\n }\n async addPathGenerator(name, generator, refresh = true) {\n if (!this.getPathGenerator(name)) {\n this.pathGenerators.set(name, generator);\n }\n await this.refresh(refresh);\n }\n async addPlugin(plugin, refresh = true) {\n if (!this.getPlugin(plugin.id)) {\n this.plugins.push(plugin);\n }\n await this.refresh(refresh);\n }\n async addPreset(preset, options, override = false, refresh = true) {\n if (override || !this.getPreset(preset)) {\n this.presets.set(preset, options);\n }\n await this.refresh(refresh);\n }\n async addShape(drawer, refresh = true) {\n for (const validType of drawer.validTypes) {\n if (this.getShapeDrawer(validType)) {\n continue;\n }\n this.shapeDrawers.set(validType, drawer);\n }\n await this.refresh(refresh);\n }\n clearPlugins(container) {\n this.updaters.delete(container);\n this.movers.delete(container);\n this.interactors.delete(container);\n }\n dispatchEvent(type, args) {\n this._eventDispatcher.dispatchEvent(type, args);\n }\n dom() {\n return this.items;\n }\n domItem(index) {\n return this.item(index);\n }\n async getAvailablePlugins(container) {\n const res = new Map();\n for (const plugin of this.plugins) {\n if (plugin.needsPlugin(container.actualOptions)) {\n res.set(plugin.id, await plugin.getPlugin(container));\n }\n }\n return res;\n }\n getEasing(name) {\n return this.easingFunctions.get(name) ?? (value => value);\n }\n getEffectDrawer(type) {\n return this.effectDrawers.get(type);\n }\n async getInteractors(container, force = false) {\n return getItemsFromInitializer(container, this.interactors, this._initializers.interactors, force);\n }\n async getMovers(container, force = false) {\n return getItemsFromInitializer(container, this.movers, this._initializers.movers, force);\n }\n getPathGenerator(type) {\n return this.pathGenerators.get(type);\n }\n getPlugin(plugin) {\n return this.plugins.find(t => t.id === plugin);\n }\n getPreset(preset) {\n return this.presets.get(preset);\n }\n getShapeDrawer(type) {\n return this.shapeDrawers.get(type);\n }\n getSupportedEffects() {\n return this.effectDrawers.keys();\n }\n getSupportedShapes() {\n return this.shapeDrawers.keys();\n }\n async getUpdaters(container, force = false) {\n return getItemsFromInitializer(container, this.updaters, this._initializers.updaters, force);\n }\n init() {\n if (this._initialized) {\n return;\n }\n this._initialized = true;\n }\n item(index) {\n const {\n items\n } = this,\n item = items[index];\n if (!item || item.destroyed) {\n const deleteCount = 1;\n items.splice(index, deleteCount);\n return;\n }\n return item;\n }\n async load(params) {\n const randomFactor = 10000,\n id = params.id ?? params.element?.id ?? `tsparticles${Math.floor((0,_Utils_NumberUtils_js__WEBPACK_IMPORTED_MODULE_5__.getRandom)() * randomFactor)}`,\n {\n index,\n url\n } = params,\n options = url ? await getDataFromUrl({\n fallback: params.options,\n url,\n index\n }) : params.options;\n const currentOptions = (0,_Utils_Utils_js__WEBPACK_IMPORTED_MODULE_1__.itemFromSingleOrMultiple)(options, index),\n {\n items\n } = this,\n oldIndex = items.findIndex(v => v.id.description === id),\n minIndex = 0,\n newItem = new _Container_js__WEBPACK_IMPORTED_MODULE_2__.Container(this, id, currentOptions);\n if (oldIndex >= minIndex) {\n const old = this.item(oldIndex),\n one = 1,\n none = 0,\n deleteCount = old ? one : none;\n if (old && !old.destroyed) {\n old.destroy(false);\n }\n items.splice(oldIndex, deleteCount, newItem);\n } else {\n items.push(newItem);\n }\n const domContainer = getDomContainer(id, params.element),\n canvasEl = getCanvasFromContainer(domContainer);\n newItem.canvas.loadCanvas(canvasEl);\n await newItem.start();\n return newItem;\n }\n loadOptions(options, sourceOptions) {\n this.plugins.forEach(plugin => plugin.loadOptions?.(options, sourceOptions));\n }\n loadParticlesOptions(container, options, ...sourceOptions) {\n const updaters = this.updaters.get(container);\n if (!updaters) {\n return;\n }\n updaters.forEach(updater => updater.loadOptions?.(options, ...sourceOptions));\n }\n async refresh(refresh = true) {\n if (!refresh) {\n return;\n }\n await Promise.all(this.items.map(t => t.refresh()));\n }\n removeEventListener(type, listener) {\n this._eventDispatcher.removeEventListener(type, listener);\n }\n setOnClickHandler(callback) {\n const {\n items\n } = this;\n if (!items.length) {\n throw new Error(`${_Utils_Constants_js__WEBPACK_IMPORTED_MODULE_0__.errorPrefix} can only set click handlers after calling tsParticles.load()`);\n }\n items.forEach(item => item.addClickHandler(callback));\n }\n}\n\n//# sourceURL=webpack://tsparticles/../../engine/dist/browser/Core/Engine.js?");
98
98
 
99
99
  /***/ }),
100
100
 
@@ -2094,7 +2094,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2094
2094
  \*****************************************************************/
2095
2095
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2096
2096
 
2097
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Attract: () => (/* reexport safe */ _Options_Classes_Attract_js__WEBPACK_IMPORTED_MODULE_2__.Attract),\n/* harmony export */ loadExternalAttractInteraction: () => (/* binding */ loadExternalAttractInteraction)\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 _Attractor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Attractor.js */ \"../../interactions/external/attract/dist/browser/Attractor.js\");\n/* harmony import */ var _Options_Classes_Attract_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Attract.js */ \"../../interactions/external/attract/dist/browser/Options/Classes/Attract.js\");\n/* harmony import */ var _Options_Interfaces_IAttract_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IAttract.js */ \"../../interactions/external/attract/dist/browser/Options/Interfaces/IAttract.js\");\n\n\nasync function loadExternalAttractInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalAttract\", container => {\n return Promise.resolve(new _Attractor_js__WEBPACK_IMPORTED_MODULE_1__.Attractor(engine, container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/attract/dist/browser/index.js?");
2097
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Attract: () => (/* reexport safe */ _Options_Classes_Attract_js__WEBPACK_IMPORTED_MODULE_2__.Attract),\n/* harmony export */ loadExternalAttractInteraction: () => (/* binding */ loadExternalAttractInteraction)\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 _Attractor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Attractor.js */ \"../../interactions/external/attract/dist/browser/Attractor.js\");\n/* harmony import */ var _Options_Classes_Attract_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Attract.js */ \"../../interactions/external/attract/dist/browser/Options/Classes/Attract.js\");\n/* harmony import */ var _Options_Interfaces_IAttract_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IAttract.js */ \"../../interactions/external/attract/dist/browser/Options/Interfaces/IAttract.js\");\n\n\nasync function loadExternalAttractInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalAttract\", container => {\n return Promise.resolve(new _Attractor_js__WEBPACK_IMPORTED_MODULE_1__.Attractor(engine, container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/attract/dist/browser/index.js?");
2098
2098
 
2099
2099
  /***/ }),
2100
2100
 
@@ -2144,7 +2144,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2144
2144
  \****************************************************************/
2145
2145
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2146
2146
 
2147
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Bounce: () => (/* reexport safe */ _Options_Classes_Bounce_js__WEBPACK_IMPORTED_MODULE_2__.Bounce),\n/* harmony export */ loadExternalBounceInteraction: () => (/* binding */ loadExternalBounceInteraction)\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 _Bouncer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bouncer.js */ \"../../interactions/external/bounce/dist/browser/Bouncer.js\");\n/* harmony import */ var _Options_Classes_Bounce_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Bounce.js */ \"../../interactions/external/bounce/dist/browser/Options/Classes/Bounce.js\");\n/* harmony import */ var _Options_Interfaces_IBounce_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IBounce.js */ \"../../interactions/external/bounce/dist/browser/Options/Interfaces/IBounce.js\");\n\n\nasync function loadExternalBounceInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalBounce\", container => {\n return Promise.resolve(new _Bouncer_js__WEBPACK_IMPORTED_MODULE_1__.Bouncer(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/bounce/dist/browser/index.js?");
2147
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Bounce: () => (/* reexport safe */ _Options_Classes_Bounce_js__WEBPACK_IMPORTED_MODULE_2__.Bounce),\n/* harmony export */ loadExternalBounceInteraction: () => (/* binding */ loadExternalBounceInteraction)\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 _Bouncer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bouncer.js */ \"../../interactions/external/bounce/dist/browser/Bouncer.js\");\n/* harmony import */ var _Options_Classes_Bounce_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Bounce.js */ \"../../interactions/external/bounce/dist/browser/Options/Classes/Bounce.js\");\n/* harmony import */ var _Options_Interfaces_IBounce_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IBounce.js */ \"../../interactions/external/bounce/dist/browser/Options/Interfaces/IBounce.js\");\n\n\nasync function loadExternalBounceInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalBounce\", container => {\n return Promise.resolve(new _Bouncer_js__WEBPACK_IMPORTED_MODULE_1__.Bouncer(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/bounce/dist/browser/index.js?");
2148
2148
 
2149
2149
  /***/ }),
2150
2150
 
@@ -2244,7 +2244,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2244
2244
  \****************************************************************/
2245
2245
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2246
2246
 
2247
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Bubble: () => (/* reexport safe */ _Options_Classes_Bubble_js__WEBPACK_IMPORTED_MODULE_4__.Bubble),\n/* harmony export */ BubbleBase: () => (/* reexport safe */ _Options_Classes_BubbleBase_js__WEBPACK_IMPORTED_MODULE_2__.BubbleBase),\n/* harmony export */ BubbleDiv: () => (/* reexport safe */ _Options_Classes_BubbleDiv_js__WEBPACK_IMPORTED_MODULE_3__.BubbleDiv),\n/* harmony export */ loadExternalBubbleInteraction: () => (/* binding */ loadExternalBubbleInteraction)\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 _Bubbler_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bubbler.js */ \"../../interactions/external/bubble/dist/browser/Bubbler.js\");\n/* harmony import */ var _Options_Classes_BubbleBase_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/BubbleBase.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/BubbleBase.js\");\n/* harmony import */ var _Options_Classes_BubbleDiv_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/BubbleDiv.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/BubbleDiv.js\");\n/* harmony import */ var _Options_Classes_Bubble_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/Bubble.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/Bubble.js\");\n/* harmony import */ var _Options_Interfaces_IBubbleBase_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IBubbleBase.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubbleBase.js\");\n/* harmony import */ var _Options_Interfaces_IBubbleDiv_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/IBubbleDiv.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubbleDiv.js\");\n/* harmony import */ var _Options_Interfaces_IBubble_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/IBubble.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubble.js\");\n\n\nasync function loadExternalBubbleInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalBubble\", container => {\n return Promise.resolve(new _Bubbler_js__WEBPACK_IMPORTED_MODULE_1__.Bubbler(container, engine));\n }, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/bubble/dist/browser/index.js?");
2247
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Bubble: () => (/* reexport safe */ _Options_Classes_Bubble_js__WEBPACK_IMPORTED_MODULE_4__.Bubble),\n/* harmony export */ BubbleBase: () => (/* reexport safe */ _Options_Classes_BubbleBase_js__WEBPACK_IMPORTED_MODULE_2__.BubbleBase),\n/* harmony export */ BubbleDiv: () => (/* reexport safe */ _Options_Classes_BubbleDiv_js__WEBPACK_IMPORTED_MODULE_3__.BubbleDiv),\n/* harmony export */ loadExternalBubbleInteraction: () => (/* binding */ loadExternalBubbleInteraction)\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 _Bubbler_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Bubbler.js */ \"../../interactions/external/bubble/dist/browser/Bubbler.js\");\n/* harmony import */ var _Options_Classes_BubbleBase_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/BubbleBase.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/BubbleBase.js\");\n/* harmony import */ var _Options_Classes_BubbleDiv_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/BubbleDiv.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/BubbleDiv.js\");\n/* harmony import */ var _Options_Classes_Bubble_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/Bubble.js */ \"../../interactions/external/bubble/dist/browser/Options/Classes/Bubble.js\");\n/* harmony import */ var _Options_Interfaces_IBubbleBase_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IBubbleBase.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubbleBase.js\");\n/* harmony import */ var _Options_Interfaces_IBubbleDiv_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/IBubbleDiv.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubbleDiv.js\");\n/* harmony import */ var _Options_Interfaces_IBubble_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/IBubble.js */ \"../../interactions/external/bubble/dist/browser/Options/Interfaces/IBubble.js\");\n\n\nasync function loadExternalBubbleInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalBubble\", container => {\n return Promise.resolve(new _Bubbler_js__WEBPACK_IMPORTED_MODULE_1__.Bubbler(container, engine));\n }, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/bubble/dist/browser/index.js?");
2248
2248
 
2249
2249
  /***/ }),
2250
2250
 
@@ -2314,7 +2314,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2314
2314
  \*****************************************************************/
2315
2315
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2316
2316
 
2317
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Connect: () => (/* reexport safe */ _Options_Classes_Connect_js__WEBPACK_IMPORTED_MODULE_2__.Connect),\n/* harmony export */ ConnectLinks: () => (/* reexport safe */ _Options_Classes_ConnectLinks_js__WEBPACK_IMPORTED_MODULE_3__.ConnectLinks),\n/* harmony export */ loadExternalConnectInteraction: () => (/* binding */ loadExternalConnectInteraction)\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 _Connector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Connector.js */ \"../../interactions/external/connect/dist/browser/Connector.js\");\n/* harmony import */ var _Options_Classes_Connect_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Connect.js */ \"../../interactions/external/connect/dist/browser/Options/Classes/Connect.js\");\n/* harmony import */ var _Options_Classes_ConnectLinks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/ConnectLinks.js */ \"../../interactions/external/connect/dist/browser/Options/Classes/ConnectLinks.js\");\n/* harmony import */ var _Options_Interfaces_IConnect_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Interfaces/IConnect.js */ \"../../interactions/external/connect/dist/browser/Options/Interfaces/IConnect.js\");\n/* harmony import */ var _Options_Interfaces_IConnectLinks_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IConnectLinks.js */ \"../../interactions/external/connect/dist/browser/Options/Interfaces/IConnectLinks.js\");\n\n\nasync function loadExternalConnectInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalConnect\", container => {\n return Promise.resolve(new _Connector_js__WEBPACK_IMPORTED_MODULE_1__.Connector(container));\n }, refresh);\n}\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/connect/dist/browser/index.js?");
2317
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Connect: () => (/* reexport safe */ _Options_Classes_Connect_js__WEBPACK_IMPORTED_MODULE_2__.Connect),\n/* harmony export */ ConnectLinks: () => (/* reexport safe */ _Options_Classes_ConnectLinks_js__WEBPACK_IMPORTED_MODULE_3__.ConnectLinks),\n/* harmony export */ loadExternalConnectInteraction: () => (/* binding */ loadExternalConnectInteraction)\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 _Connector_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Connector.js */ \"../../interactions/external/connect/dist/browser/Connector.js\");\n/* harmony import */ var _Options_Classes_Connect_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Connect.js */ \"../../interactions/external/connect/dist/browser/Options/Classes/Connect.js\");\n/* harmony import */ var _Options_Classes_ConnectLinks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/ConnectLinks.js */ \"../../interactions/external/connect/dist/browser/Options/Classes/ConnectLinks.js\");\n/* harmony import */ var _Options_Interfaces_IConnect_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Interfaces/IConnect.js */ \"../../interactions/external/connect/dist/browser/Options/Interfaces/IConnect.js\");\n/* harmony import */ var _Options_Interfaces_IConnectLinks_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IConnectLinks.js */ \"../../interactions/external/connect/dist/browser/Options/Interfaces/IConnectLinks.js\");\n\n\nasync function loadExternalConnectInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalConnect\", container => {\n return Promise.resolve(new _Connector_js__WEBPACK_IMPORTED_MODULE_1__.Connector(container));\n }, refresh);\n}\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/connect/dist/browser/index.js?");
2318
2318
 
2319
2319
  /***/ }),
2320
2320
 
@@ -2384,7 +2384,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2384
2384
  \**************************************************************/
2385
2385
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2386
2386
 
2387
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Grab: () => (/* reexport safe */ _Options_Classes_Grab_js__WEBPACK_IMPORTED_MODULE_2__.Grab),\n/* harmony export */ GrabLinks: () => (/* reexport safe */ _Options_Classes_GrabLinks_js__WEBPACK_IMPORTED_MODULE_3__.GrabLinks),\n/* harmony export */ loadExternalGrabInteraction: () => (/* binding */ loadExternalGrabInteraction)\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 _Grabber_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Grabber.js */ \"../../interactions/external/grab/dist/browser/Grabber.js\");\n/* harmony import */ var _Options_Classes_Grab_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Grab.js */ \"../../interactions/external/grab/dist/browser/Options/Classes/Grab.js\");\n/* harmony import */ var _Options_Classes_GrabLinks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/GrabLinks.js */ \"../../interactions/external/grab/dist/browser/Options/Classes/GrabLinks.js\");\n/* harmony import */ var _Options_Interfaces_IGrab_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Interfaces/IGrab.js */ \"../../interactions/external/grab/dist/browser/Options/Interfaces/IGrab.js\");\n/* harmony import */ var _Options_Interfaces_IGrabLinks_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IGrabLinks.js */ \"../../interactions/external/grab/dist/browser/Options/Interfaces/IGrabLinks.js\");\n\n\nasync function loadExternalGrabInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalGrab\", container => {\n return Promise.resolve(new _Grabber_js__WEBPACK_IMPORTED_MODULE_1__.Grabber(container, engine));\n }, refresh);\n}\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/grab/dist/browser/index.js?");
2387
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Grab: () => (/* reexport safe */ _Options_Classes_Grab_js__WEBPACK_IMPORTED_MODULE_2__.Grab),\n/* harmony export */ GrabLinks: () => (/* reexport safe */ _Options_Classes_GrabLinks_js__WEBPACK_IMPORTED_MODULE_3__.GrabLinks),\n/* harmony export */ loadExternalGrabInteraction: () => (/* binding */ loadExternalGrabInteraction)\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 _Grabber_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Grabber.js */ \"../../interactions/external/grab/dist/browser/Grabber.js\");\n/* harmony import */ var _Options_Classes_Grab_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Grab.js */ \"../../interactions/external/grab/dist/browser/Options/Classes/Grab.js\");\n/* harmony import */ var _Options_Classes_GrabLinks_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/GrabLinks.js */ \"../../interactions/external/grab/dist/browser/Options/Classes/GrabLinks.js\");\n/* harmony import */ var _Options_Interfaces_IGrab_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Interfaces/IGrab.js */ \"../../interactions/external/grab/dist/browser/Options/Interfaces/IGrab.js\");\n/* harmony import */ var _Options_Interfaces_IGrabLinks_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IGrabLinks.js */ \"../../interactions/external/grab/dist/browser/Options/Interfaces/IGrabLinks.js\");\n\n\nasync function loadExternalGrabInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalGrab\", container => {\n return Promise.resolve(new _Grabber_js__WEBPACK_IMPORTED_MODULE_1__.Grabber(container, engine));\n }, refresh);\n}\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/grab/dist/browser/index.js?");
2388
2388
 
2389
2389
  /***/ }),
2390
2390
 
@@ -2404,7 +2404,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2404
2404
  \***************************************************************/
2405
2405
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2406
2406
 
2407
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadExternalPauseInteraction: () => (/* binding */ loadExternalPauseInteraction)\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 _Pauser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Pauser.js */ \"../../interactions/external/pause/dist/browser/Pauser.js\");\n\n\nasync function loadExternalPauseInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalPause\", container => {\n return Promise.resolve(new _Pauser_js__WEBPACK_IMPORTED_MODULE_1__.Pauser(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/pause/dist/browser/index.js?");
2407
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadExternalPauseInteraction: () => (/* binding */ loadExternalPauseInteraction)\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 _Pauser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Pauser.js */ \"../../interactions/external/pause/dist/browser/Pauser.js\");\n\n\nasync function loadExternalPauseInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalPause\", container => {\n return Promise.resolve(new _Pauser_js__WEBPACK_IMPORTED_MODULE_1__.Pauser(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/pause/dist/browser/index.js?");
2408
2408
 
2409
2409
  /***/ }),
2410
2410
 
@@ -2444,7 +2444,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2444
2444
  \**************************************************************/
2445
2445
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2446
2446
 
2447
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Push: () => (/* reexport safe */ _Options_Classes_Push_js__WEBPACK_IMPORTED_MODULE_2__.Push),\n/* harmony export */ loadExternalPushInteraction: () => (/* binding */ loadExternalPushInteraction)\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 _Pusher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Pusher.js */ \"../../interactions/external/push/dist/browser/Pusher.js\");\n/* harmony import */ var _Options_Classes_Push_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Push.js */ \"../../interactions/external/push/dist/browser/Options/Classes/Push.js\");\n/* harmony import */ var _Options_Interfaces_IPush_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IPush.js */ \"../../interactions/external/push/dist/browser/Options/Interfaces/IPush.js\");\n\n\nasync function loadExternalPushInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalPush\", container => {\n return Promise.resolve(new _Pusher_js__WEBPACK_IMPORTED_MODULE_1__.Pusher(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/push/dist/browser/index.js?");
2447
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Push: () => (/* reexport safe */ _Options_Classes_Push_js__WEBPACK_IMPORTED_MODULE_2__.Push),\n/* harmony export */ loadExternalPushInteraction: () => (/* binding */ loadExternalPushInteraction)\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 _Pusher_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Pusher.js */ \"../../interactions/external/push/dist/browser/Pusher.js\");\n/* harmony import */ var _Options_Classes_Push_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Push.js */ \"../../interactions/external/push/dist/browser/Options/Classes/Push.js\");\n/* harmony import */ var _Options_Interfaces_IPush_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IPush.js */ \"../../interactions/external/push/dist/browser/Options/Interfaces/IPush.js\");\n\n\nasync function loadExternalPushInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalPush\", container => {\n return Promise.resolve(new _Pusher_js__WEBPACK_IMPORTED_MODULE_1__.Pusher(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/push/dist/browser/index.js?");
2448
2448
 
2449
2449
  /***/ }),
2450
2450
 
@@ -2484,7 +2484,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2484
2484
  \****************************************************************/
2485
2485
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2486
2486
 
2487
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Remove: () => (/* reexport safe */ _Options_Classes_Remove_js__WEBPACK_IMPORTED_MODULE_2__.Remove),\n/* harmony export */ loadExternalRemoveInteraction: () => (/* binding */ loadExternalRemoveInteraction)\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 _Remover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Remover.js */ \"../../interactions/external/remove/dist/browser/Remover.js\");\n/* harmony import */ var _Options_Classes_Remove_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Remove.js */ \"../../interactions/external/remove/dist/browser/Options/Classes/Remove.js\");\n/* harmony import */ var _Options_Interfaces_IRemove_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IRemove.js */ \"../../interactions/external/remove/dist/browser/Options/Interfaces/IRemove.js\");\n\n\nasync function loadExternalRemoveInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalRemove\", container => {\n return Promise.resolve(new _Remover_js__WEBPACK_IMPORTED_MODULE_1__.Remover(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/remove/dist/browser/index.js?");
2487
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Remove: () => (/* reexport safe */ _Options_Classes_Remove_js__WEBPACK_IMPORTED_MODULE_2__.Remove),\n/* harmony export */ loadExternalRemoveInteraction: () => (/* binding */ loadExternalRemoveInteraction)\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 _Remover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Remover.js */ \"../../interactions/external/remove/dist/browser/Remover.js\");\n/* harmony import */ var _Options_Classes_Remove_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Remove.js */ \"../../interactions/external/remove/dist/browser/Options/Classes/Remove.js\");\n/* harmony import */ var _Options_Interfaces_IRemove_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/IRemove.js */ \"../../interactions/external/remove/dist/browser/Options/Interfaces/IRemove.js\");\n\n\nasync function loadExternalRemoveInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalRemove\", container => {\n return Promise.resolve(new _Remover_js__WEBPACK_IMPORTED_MODULE_1__.Remover(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/remove/dist/browser/index.js?");
2488
2488
 
2489
2489
  /***/ }),
2490
2490
 
@@ -2564,7 +2564,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2564
2564
  \*****************************************************************/
2565
2565
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2566
2566
 
2567
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Repulse: () => (/* reexport safe */ _Options_Classes_Repulse_js__WEBPACK_IMPORTED_MODULE_4__.Repulse),\n/* harmony export */ RepulseBase: () => (/* reexport safe */ _Options_Classes_RepulseBase_js__WEBPACK_IMPORTED_MODULE_2__.RepulseBase),\n/* harmony export */ RepulseDiv: () => (/* reexport safe */ _Options_Classes_RepulseDiv_js__WEBPACK_IMPORTED_MODULE_3__.RepulseDiv),\n/* harmony export */ loadExternalRepulseInteraction: () => (/* binding */ loadExternalRepulseInteraction)\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 _Repulser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Repulser.js */ \"../../interactions/external/repulse/dist/browser/Repulser.js\");\n/* harmony import */ var _Options_Classes_RepulseBase_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/RepulseBase.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/RepulseBase.js\");\n/* harmony import */ var _Options_Classes_RepulseDiv_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/RepulseDiv.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/RepulseDiv.js\");\n/* harmony import */ var _Options_Classes_Repulse_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/Repulse.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/Repulse.js\");\n/* harmony import */ var _Options_Interfaces_IRepulseBase_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IRepulseBase.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulseBase.js\");\n/* harmony import */ var _Options_Interfaces_IRepulseDiv_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/IRepulseDiv.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulseDiv.js\");\n/* harmony import */ var _Options_Interfaces_IRepulse_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/IRepulse.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulse.js\");\n\n\nasync function loadExternalRepulseInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalRepulse\", container => {\n return Promise.resolve(new _Repulser_js__WEBPACK_IMPORTED_MODULE_1__.Repulser(engine, container));\n }, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/repulse/dist/browser/index.js?");
2567
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Repulse: () => (/* reexport safe */ _Options_Classes_Repulse_js__WEBPACK_IMPORTED_MODULE_4__.Repulse),\n/* harmony export */ RepulseBase: () => (/* reexport safe */ _Options_Classes_RepulseBase_js__WEBPACK_IMPORTED_MODULE_2__.RepulseBase),\n/* harmony export */ RepulseDiv: () => (/* reexport safe */ _Options_Classes_RepulseDiv_js__WEBPACK_IMPORTED_MODULE_3__.RepulseDiv),\n/* harmony export */ loadExternalRepulseInteraction: () => (/* binding */ loadExternalRepulseInteraction)\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 _Repulser_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Repulser.js */ \"../../interactions/external/repulse/dist/browser/Repulser.js\");\n/* harmony import */ var _Options_Classes_RepulseBase_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/RepulseBase.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/RepulseBase.js\");\n/* harmony import */ var _Options_Classes_RepulseDiv_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/RepulseDiv.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/RepulseDiv.js\");\n/* harmony import */ var _Options_Classes_Repulse_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/Repulse.js */ \"../../interactions/external/repulse/dist/browser/Options/Classes/Repulse.js\");\n/* harmony import */ var _Options_Interfaces_IRepulseBase_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Interfaces/IRepulseBase.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulseBase.js\");\n/* harmony import */ var _Options_Interfaces_IRepulseDiv_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/IRepulseDiv.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulseDiv.js\");\n/* harmony import */ var _Options_Interfaces_IRepulse_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/IRepulse.js */ \"../../interactions/external/repulse/dist/browser/Options/Interfaces/IRepulse.js\");\n\n\nasync function loadExternalRepulseInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalRepulse\", container => {\n return Promise.resolve(new _Repulser_js__WEBPACK_IMPORTED_MODULE_1__.Repulser(engine, container));\n }, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/repulse/dist/browser/index.js?");
2568
2568
 
2569
2569
  /***/ }),
2570
2570
 
@@ -2604,7 +2604,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2604
2604
  \**************************************************************/
2605
2605
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2606
2606
 
2607
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Slow: () => (/* reexport safe */ _Options_Classes_Slow_js__WEBPACK_IMPORTED_MODULE_2__.Slow),\n/* harmony export */ loadExternalSlowInteraction: () => (/* binding */ loadExternalSlowInteraction)\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 _Slower_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Slower.js */ \"../../interactions/external/slow/dist/browser/Slower.js\");\n/* harmony import */ var _Options_Classes_Slow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Slow.js */ \"../../interactions/external/slow/dist/browser/Options/Classes/Slow.js\");\n/* harmony import */ var _Options_Interfaces_ISlow_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/ISlow.js */ \"../../interactions/external/slow/dist/browser/Options/Interfaces/ISlow.js\");\n\n\nasync function loadExternalSlowInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalSlow\", container => {\n return Promise.resolve(new _Slower_js__WEBPACK_IMPORTED_MODULE_1__.Slower(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/slow/dist/browser/index.js?");
2607
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Slow: () => (/* reexport safe */ _Options_Classes_Slow_js__WEBPACK_IMPORTED_MODULE_2__.Slow),\n/* harmony export */ loadExternalSlowInteraction: () => (/* binding */ loadExternalSlowInteraction)\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 _Slower_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Slower.js */ \"../../interactions/external/slow/dist/browser/Slower.js\");\n/* harmony import */ var _Options_Classes_Slow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Slow.js */ \"../../interactions/external/slow/dist/browser/Options/Classes/Slow.js\");\n/* harmony import */ var _Options_Interfaces_ISlow_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/ISlow.js */ \"../../interactions/external/slow/dist/browser/Options/Interfaces/ISlow.js\");\n\n\nasync function loadExternalSlowInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalSlow\", container => {\n return Promise.resolve(new _Slower_js__WEBPACK_IMPORTED_MODULE_1__.Slower(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/slow/dist/browser/index.js?");
2608
2608
 
2609
2609
  /***/ }),
2610
2610
 
@@ -2644,7 +2644,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2644
2644
  \***************************************************************/
2645
2645
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2646
2646
 
2647
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Trail: () => (/* reexport safe */ _Options_Classes_Trail_js__WEBPACK_IMPORTED_MODULE_2__.Trail),\n/* harmony export */ loadExternalTrailInteraction: () => (/* binding */ loadExternalTrailInteraction)\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 _TrailMaker_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TrailMaker.js */ \"../../interactions/external/trail/dist/browser/TrailMaker.js\");\n/* harmony import */ var _Options_Classes_Trail_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Trail.js */ \"../../interactions/external/trail/dist/browser/Options/Classes/Trail.js\");\n/* harmony import */ var _Options_Interfaces_ITrail_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/ITrail.js */ \"../../interactions/external/trail/dist/browser/Options/Interfaces/ITrail.js\");\n\n\nasync function loadExternalTrailInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"externalTrail\", container => {\n return Promise.resolve(new _TrailMaker_js__WEBPACK_IMPORTED_MODULE_1__.TrailMaker(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/trail/dist/browser/index.js?");
2647
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Trail: () => (/* reexport safe */ _Options_Classes_Trail_js__WEBPACK_IMPORTED_MODULE_2__.Trail),\n/* harmony export */ loadExternalTrailInteraction: () => (/* binding */ loadExternalTrailInteraction)\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 _TrailMaker_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TrailMaker.js */ \"../../interactions/external/trail/dist/browser/TrailMaker.js\");\n/* harmony import */ var _Options_Classes_Trail_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Options/Classes/Trail.js */ \"../../interactions/external/trail/dist/browser/Options/Classes/Trail.js\");\n/* harmony import */ var _Options_Interfaces_ITrail_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Interfaces/ITrail.js */ \"../../interactions/external/trail/dist/browser/Options/Interfaces/ITrail.js\");\n\n\nasync function loadExternalTrailInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"externalTrail\", container => {\n return Promise.resolve(new _TrailMaker_js__WEBPACK_IMPORTED_MODULE_1__.TrailMaker(container));\n }, refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/external/trail/dist/browser/index.js?");
2648
2648
 
2649
2649
  /***/ }),
2650
2650
 
@@ -2664,7 +2664,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2664
2664
  \******************************************************************/
2665
2665
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2666
2666
 
2667
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParticlesAttractInteraction: () => (/* binding */ loadParticlesAttractInteraction)\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 _Attractor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Attractor.js */ \"../../interactions/particles/attract/dist/browser/Attractor.js\");\n\n\nasync function loadParticlesAttractInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"particlesAttract\", container => {\n return Promise.resolve(new _Attractor_js__WEBPACK_IMPORTED_MODULE_1__.Attractor(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/attract/dist/browser/index.js?");
2667
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParticlesAttractInteraction: () => (/* binding */ loadParticlesAttractInteraction)\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 _Attractor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Attractor.js */ \"../../interactions/particles/attract/dist/browser/Attractor.js\");\n\n\nasync function loadParticlesAttractInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"particlesAttract\", container => {\n return Promise.resolve(new _Attractor_js__WEBPACK_IMPORTED_MODULE_1__.Attractor(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/attract/dist/browser/index.js?");
2668
2668
 
2669
2669
  /***/ }),
2670
2670
 
@@ -2724,7 +2724,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2724
2724
  \*********************************************************************/
2725
2725
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2726
2726
 
2727
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParticlesCollisionsInteraction: () => (/* binding */ loadParticlesCollisionsInteraction)\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 _Collider_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Collider.js */ \"../../interactions/particles/collisions/dist/browser/Collider.js\");\n\n\nasync function loadParticlesCollisionsInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addInteractor(\"particlesCollisions\", container => {\n return Promise.resolve(new _Collider_js__WEBPACK_IMPORTED_MODULE_1__.Collider(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/collisions/dist/browser/index.js?");
2727
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParticlesCollisionsInteraction: () => (/* binding */ loadParticlesCollisionsInteraction)\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 _Collider_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Collider.js */ \"../../interactions/particles/collisions/dist/browser/Collider.js\");\n\n\nasync function loadParticlesCollisionsInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addInteractor(\"particlesCollisions\", container => {\n return Promise.resolve(new _Collider_js__WEBPACK_IMPORTED_MODULE_1__.Collider(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/collisions/dist/browser/index.js?");
2728
2728
 
2729
2729
  /***/ }),
2730
2730
 
@@ -2844,7 +2844,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2844
2844
  \****************************************************************/
2845
2845
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2846
2846
 
2847
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Links: () => (/* reexport safe */ _Options_Classes_Links_js__WEBPACK_IMPORTED_MODULE_3__.Links),\n/* harmony export */ LinksShadow: () => (/* reexport safe */ _Options_Classes_LinksShadow_js__WEBPACK_IMPORTED_MODULE_4__.LinksShadow),\n/* harmony export */ LinksTriangle: () => (/* reexport safe */ _Options_Classes_LinksTriangle_js__WEBPACK_IMPORTED_MODULE_5__.LinksTriangle),\n/* harmony export */ loadParticlesLinksInteraction: () => (/* binding */ loadParticlesLinksInteraction)\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 _interaction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./interaction.js */ \"../../interactions/particles/links/dist/browser/interaction.js\");\n/* harmony import */ var _plugin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./plugin.js */ \"../../interactions/particles/links/dist/browser/plugin.js\");\n/* harmony import */ var _Options_Classes_Links_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/Links.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/Links.js\");\n/* harmony import */ var _Options_Classes_LinksShadow_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/LinksShadow.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/LinksShadow.js\");\n/* harmony import */ var _Options_Classes_LinksTriangle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Classes/LinksTriangle.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/LinksTriangle.js\");\n/* harmony import */ var _Options_Interfaces_ILinks_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/ILinks.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinks.js\");\n/* harmony import */ var _Options_Interfaces_ILinksShadow_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/ILinksShadow.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinksShadow.js\");\n/* harmony import */ var _Options_Interfaces_ILinksTriangle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Options/Interfaces/ILinksTriangle.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinksTriangle.js\");\n\n\n\nasync function loadParticlesLinksInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await (0,_interaction_js__WEBPACK_IMPORTED_MODULE_1__.loadLinksInteraction)(engine, refresh);\n await (0,_plugin_js__WEBPACK_IMPORTED_MODULE_2__.loadLinksPlugin)(engine, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/links/dist/browser/index.js?");
2847
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Links: () => (/* reexport safe */ _Options_Classes_Links_js__WEBPACK_IMPORTED_MODULE_3__.Links),\n/* harmony export */ LinksShadow: () => (/* reexport safe */ _Options_Classes_LinksShadow_js__WEBPACK_IMPORTED_MODULE_4__.LinksShadow),\n/* harmony export */ LinksTriangle: () => (/* reexport safe */ _Options_Classes_LinksTriangle_js__WEBPACK_IMPORTED_MODULE_5__.LinksTriangle),\n/* harmony export */ loadParticlesLinksInteraction: () => (/* binding */ loadParticlesLinksInteraction)\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 _interaction_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./interaction.js */ \"../../interactions/particles/links/dist/browser/interaction.js\");\n/* harmony import */ var _plugin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./plugin.js */ \"../../interactions/particles/links/dist/browser/plugin.js\");\n/* harmony import */ var _Options_Classes_Links_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Options/Classes/Links.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/Links.js\");\n/* harmony import */ var _Options_Classes_LinksShadow_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Options/Classes/LinksShadow.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/LinksShadow.js\");\n/* harmony import */ var _Options_Classes_LinksTriangle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Options/Classes/LinksTriangle.js */ \"../../interactions/particles/links/dist/browser/Options/Classes/LinksTriangle.js\");\n/* harmony import */ var _Options_Interfaces_ILinks_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Options/Interfaces/ILinks.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinks.js\");\n/* harmony import */ var _Options_Interfaces_ILinksShadow_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Options/Interfaces/ILinksShadow.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinksShadow.js\");\n/* harmony import */ var _Options_Interfaces_ILinksTriangle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Options/Interfaces/ILinksTriangle.js */ \"../../interactions/particles/links/dist/browser/Options/Interfaces/ILinksTriangle.js\");\n\n\n\nasync function loadParticlesLinksInteraction(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await (0,_interaction_js__WEBPACK_IMPORTED_MODULE_1__.loadLinksInteraction)(engine, refresh);\n await (0,_plugin_js__WEBPACK_IMPORTED_MODULE_2__.loadLinksPlugin)(engine, refresh);\n}\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../interactions/particles/links/dist/browser/index.js?");
2848
2848
 
2849
2849
  /***/ }),
2850
2850
 
@@ -2894,7 +2894,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2894
2894
  \*********************************************/
2895
2895
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2896
2896
 
2897
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadBaseMover: () => (/* binding */ loadBaseMover)\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 _BaseMover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./BaseMover.js */ \"../../move/base/dist/browser/BaseMover.js\");\n\n\nasync function loadBaseMover(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addMover(\"base\", () => {\n return Promise.resolve(new _BaseMover_js__WEBPACK_IMPORTED_MODULE_1__.BaseMover());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../move/base/dist/browser/index.js?");
2897
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadBaseMover: () => (/* binding */ loadBaseMover)\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 _BaseMover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./BaseMover.js */ \"../../move/base/dist/browser/BaseMover.js\");\n\n\nasync function loadBaseMover(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addMover(\"base\", () => {\n return Promise.resolve(new _BaseMover_js__WEBPACK_IMPORTED_MODULE_1__.BaseMover());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../move/base/dist/browser/index.js?");
2898
2898
 
2899
2899
  /***/ }),
2900
2900
 
@@ -2914,7 +2914,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
2914
2914
  \*************************************************/
2915
2915
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
2916
2916
 
2917
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParallaxMover: () => (/* binding */ loadParallaxMover)\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 _ParallaxMover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ParallaxMover.js */ \"../../move/parallax/dist/browser/ParallaxMover.js\");\n\n\nasync function loadParallaxMover(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addMover(\"parallax\", () => {\n return Promise.resolve(new _ParallaxMover_js__WEBPACK_IMPORTED_MODULE_1__.ParallaxMover());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../move/parallax/dist/browser/index.js?");
2917
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadParallaxMover: () => (/* binding */ loadParallaxMover)\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 _ParallaxMover_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ParallaxMover.js */ \"../../move/parallax/dist/browser/ParallaxMover.js\");\n\n\nasync function loadParallaxMover(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addMover(\"parallax\", () => {\n return Promise.resolve(new _ParallaxMover_js__WEBPACK_IMPORTED_MODULE_1__.ParallaxMover());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../move/parallax/dist/browser/index.js?");
2918
2918
 
2919
2919
  /***/ }),
2920
2920
 
@@ -3004,7 +3004,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3004
3004
  \*****************************************************/
3005
3005
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3006
3006
 
3007
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbsorberClickMode: () => (/* reexport safe */ _Enums_AbsorberClickMode_js__WEBPACK_IMPORTED_MODULE_3__.AbsorberClickMode),\n/* harmony export */ loadAbsorbersPlugin: () => (/* binding */ loadAbsorbersPlugin)\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 _AbsorbersPlugin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AbsorbersPlugin.js */ \"../../plugins/absorbers/dist/browser/AbsorbersPlugin.js\");\n/* harmony import */ var _AbsorberContainer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AbsorberContainer.js */ \"../../plugins/absorbers/dist/browser/AbsorberContainer.js\");\n/* harmony import */ var _Enums_AbsorberClickMode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Enums/AbsorberClickMode.js */ \"../../plugins/absorbers/dist/browser/Enums/AbsorberClickMode.js\");\n\n\nasync function loadAbsorbersPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addPlugin(new _AbsorbersPlugin_js__WEBPACK_IMPORTED_MODULE_1__.AbsorbersPlugin(engine), refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../plugins/absorbers/dist/browser/index.js?");
3007
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AbsorberClickMode: () => (/* reexport safe */ _Enums_AbsorberClickMode_js__WEBPACK_IMPORTED_MODULE_3__.AbsorberClickMode),\n/* harmony export */ loadAbsorbersPlugin: () => (/* binding */ loadAbsorbersPlugin)\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 _AbsorbersPlugin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AbsorbersPlugin.js */ \"../../plugins/absorbers/dist/browser/AbsorbersPlugin.js\");\n/* harmony import */ var _AbsorberContainer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AbsorberContainer.js */ \"../../plugins/absorbers/dist/browser/AbsorberContainer.js\");\n/* harmony import */ var _Enums_AbsorberClickMode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Enums/AbsorberClickMode.js */ \"../../plugins/absorbers/dist/browser/Enums/AbsorberClickMode.js\");\n\n\nasync function loadAbsorbersPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addPlugin(new _AbsorbersPlugin_js__WEBPACK_IMPORTED_MODULE_1__.AbsorbersPlugin(engine), refresh);\n}\n\n\n\n//# sourceURL=webpack://tsparticles/../../plugins/absorbers/dist/browser/index.js?");
3008
3008
 
3009
3009
  /***/ }),
3010
3010
 
@@ -3024,7 +3024,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3024
3024
  \***********************************************************/
3025
3025
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3026
3026
 
3027
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadHexColorPlugin: () => (/* binding */ loadHexColorPlugin)\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 _HexColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HexColorManager.js */ \"../../plugins/colors/hexColor/dist/browser/HexColorManager.js\");\n\n\nasync function loadHexColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addColorManager(new _HexColorManager_js__WEBPACK_IMPORTED_MODULE_1__.HexColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/hexColor/dist/browser/index.js?");
3027
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadHexColorPlugin: () => (/* binding */ loadHexColorPlugin)\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 _HexColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HexColorManager.js */ \"../../plugins/colors/hexColor/dist/browser/HexColorManager.js\");\n\n\nasync function loadHexColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addColorManager(new _HexColorManager_js__WEBPACK_IMPORTED_MODULE_1__.HexColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/hexColor/dist/browser/index.js?");
3028
3028
 
3029
3029
  /***/ }),
3030
3030
 
@@ -3044,7 +3044,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3044
3044
  \***********************************************************/
3045
3045
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3046
3046
 
3047
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadHslColorPlugin: () => (/* binding */ loadHslColorPlugin)\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 _HslColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HslColorManager.js */ \"../../plugins/colors/hslColor/dist/browser/HslColorManager.js\");\n\n\nasync function loadHslColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addColorManager(new _HslColorManager_js__WEBPACK_IMPORTED_MODULE_1__.HslColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/hslColor/dist/browser/index.js?");
3047
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadHslColorPlugin: () => (/* binding */ loadHslColorPlugin)\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 _HslColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./HslColorManager.js */ \"../../plugins/colors/hslColor/dist/browser/HslColorManager.js\");\n\n\nasync function loadHslColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addColorManager(new _HslColorManager_js__WEBPACK_IMPORTED_MODULE_1__.HslColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/hslColor/dist/browser/index.js?");
3048
3048
 
3049
3049
  /***/ }),
3050
3050
 
@@ -3064,7 +3064,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3064
3064
  \***********************************************************/
3065
3065
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3066
3066
 
3067
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRgbColorPlugin: () => (/* binding */ loadRgbColorPlugin)\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 _RgbColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RgbColorManager.js */ \"../../plugins/colors/rgbColor/dist/browser/RgbColorManager.js\");\n\n\nasync function loadRgbColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addColorManager(new _RgbColorManager_js__WEBPACK_IMPORTED_MODULE_1__.RgbColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/rgbColor/dist/browser/index.js?");
3067
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRgbColorPlugin: () => (/* binding */ loadRgbColorPlugin)\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 _RgbColorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RgbColorManager.js */ \"../../plugins/colors/rgbColor/dist/browser/RgbColorManager.js\");\n\n\nasync function loadRgbColorPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addColorManager(new _RgbColorManager_js__WEBPACK_IMPORTED_MODULE_1__.RgbColorManager(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/colors/rgbColor/dist/browser/index.js?");
3068
3068
 
3069
3069
  /***/ }),
3070
3070
 
@@ -3074,7 +3074,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3074
3074
  \********************************************************/
3075
3075
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3076
3076
 
3077
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEasingQuadPlugin: () => (/* binding */ loadEasingQuadPlugin)\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 loadEasingQuadPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeInQuad, value => value ** 2, false);\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeOutQuad, value => 1 - (1 - value) ** 2, false);\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeInOutQuad, value => value < 0.5 ? 2 * value ** 2 : 1 - (-2 * value + 2) ** 2 / 2, false);\n await engine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/easings/quad/dist/browser/index.js?");
3077
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEasingQuadPlugin: () => (/* binding */ loadEasingQuadPlugin)\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 loadEasingQuadPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeInQuad, value => value ** 2, false);\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeOutQuad, value => 1 - (1 - value) ** 2, false);\n await engine.addEasing(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.EasingType.easeInOutQuad, value => value < 0.5 ? 2 * value ** 2 : 1 - (-2 * value + 2) ** 2 / 2, false);\n await engine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/easings/quad/dist/browser/index.js?");
3078
3078
 
3079
3079
  /***/ }),
3080
3080
 
@@ -3254,7 +3254,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3254
3254
  \****************************************************/
3255
3255
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3256
3256
 
3257
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EmitterClickMode: () => (/* reexport safe */ _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_8__.EmitterClickMode),\n/* harmony export */ EmitterShapeBase: () => (/* reexport safe */ _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_4__.EmitterShapeBase),\n/* harmony export */ loadEmittersPlugin: () => (/* binding */ loadEmittersPlugin)\n/* harmony export */ });\n/* harmony import */ var _EmittersPlugin_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmittersPlugin.js */ \"../../plugins/emitters/dist/browser/EmittersPlugin.js\");\n/* harmony import */ var _ShapeManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ShapeManager.js */ \"../../plugins/emitters/dist/browser/ShapeManager.js\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _EmitterContainer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./EmitterContainer.js */ \"../../plugins/emitters/dist/browser/EmitterContainer.js\");\n/* harmony import */ var _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./EmitterShapeBase.js */ \"../../plugins/emitters/dist/browser/EmitterShapeBase.js\");\n/* harmony import */ var _EmittersEngine_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./EmittersEngine.js */ \"../../plugins/emitters/dist/browser/EmittersEngine.js\");\n/* harmony import */ var _IEmitterShape_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./IEmitterShape.js */ \"../../plugins/emitters/dist/browser/IEmitterShape.js\");\n/* harmony import */ var _IEmitterShapeGenerator_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./IEmitterShapeGenerator.js */ \"../../plugins/emitters/dist/browser/IEmitterShapeGenerator.js\");\n/* harmony import */ var _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Enums/EmitterClickMode.js */ \"../../plugins/emitters/dist/browser/Enums/EmitterClickMode.js\");\n/* harmony import */ var _IRandomPositionData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./IRandomPositionData.js */ \"../../plugins/emitters/dist/browser/IRandomPositionData.js\");\n\n\n\nasync function loadEmittersPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_2__.assertValidVersion)(engine, \"3.7.0\");\n if (!engine.emitterShapeManager) {\n engine.emitterShapeManager = new _ShapeManager_js__WEBPACK_IMPORTED_MODULE_1__.ShapeManager(engine);\n }\n if (!engine.addEmitterShapeGenerator) {\n engine.addEmitterShapeGenerator = (name, generator) => {\n engine.emitterShapeManager?.addShapeGenerator(name, generator);\n };\n }\n const plugin = new _EmittersPlugin_js__WEBPACK_IMPORTED_MODULE_0__.EmittersPlugin(engine);\n await engine.addPlugin(plugin, refresh);\n}\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../plugins/emitters/dist/browser/index.js?");
3257
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EmitterClickMode: () => (/* reexport safe */ _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_8__.EmitterClickMode),\n/* harmony export */ EmitterShapeBase: () => (/* reexport safe */ _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_4__.EmitterShapeBase),\n/* harmony export */ loadEmittersPlugin: () => (/* binding */ loadEmittersPlugin)\n/* harmony export */ });\n/* harmony import */ var _EmittersPlugin_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmittersPlugin.js */ \"../../plugins/emitters/dist/browser/EmittersPlugin.js\");\n/* harmony import */ var _ShapeManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ShapeManager.js */ \"../../plugins/emitters/dist/browser/ShapeManager.js\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _EmitterContainer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./EmitterContainer.js */ \"../../plugins/emitters/dist/browser/EmitterContainer.js\");\n/* harmony import */ var _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./EmitterShapeBase.js */ \"../../plugins/emitters/dist/browser/EmitterShapeBase.js\");\n/* harmony import */ var _EmittersEngine_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./EmittersEngine.js */ \"../../plugins/emitters/dist/browser/EmittersEngine.js\");\n/* harmony import */ var _IEmitterShape_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./IEmitterShape.js */ \"../../plugins/emitters/dist/browser/IEmitterShape.js\");\n/* harmony import */ var _IEmitterShapeGenerator_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./IEmitterShapeGenerator.js */ \"../../plugins/emitters/dist/browser/IEmitterShapeGenerator.js\");\n/* harmony import */ var _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Enums/EmitterClickMode.js */ \"../../plugins/emitters/dist/browser/Enums/EmitterClickMode.js\");\n/* harmony import */ var _IRandomPositionData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./IRandomPositionData.js */ \"../../plugins/emitters/dist/browser/IRandomPositionData.js\");\n\n\n\nasync function loadEmittersPlugin(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_2__.assertValidVersion)(engine, \"3.7.1\");\n if (!engine.emitterShapeManager) {\n engine.emitterShapeManager = new _ShapeManager_js__WEBPACK_IMPORTED_MODULE_1__.ShapeManager(engine);\n }\n if (!engine.addEmitterShapeGenerator) {\n engine.addEmitterShapeGenerator = (name, generator) => {\n engine.emitterShapeManager?.addShapeGenerator(name, generator);\n };\n }\n const plugin = new _EmittersPlugin_js__WEBPACK_IMPORTED_MODULE_0__.EmittersPlugin(engine);\n await engine.addPlugin(plugin, refresh);\n}\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://tsparticles/../../plugins/emitters/dist/browser/index.js?");
3258
3258
 
3259
3259
  /***/ }),
3260
3260
 
@@ -3284,7 +3284,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3284
3284
  \*****************************************************************/
3285
3285
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3286
3286
 
3287
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmittersShapeCircle: () => (/* binding */ loadEmittersShapeCircle)\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 _EmittersCircleShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmittersCircleShapeGenerator.js */ \"../../plugins/emittersShapes/circle/dist/browser/EmittersCircleShapeGenerator.js\");\n\n\nasync function loadEmittersShapeCircle(engine, refresh = true) {\n const emittersEngine = engine;\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(emittersEngine, \"3.7.0\");\n emittersEngine.addEmitterShapeGenerator?.(\"circle\", new _EmittersCircleShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__.EmittersCircleShapeGenerator());\n await emittersEngine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/emittersShapes/circle/dist/browser/index.js?");
3287
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmittersShapeCircle: () => (/* binding */ loadEmittersShapeCircle)\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 _EmittersCircleShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmittersCircleShapeGenerator.js */ \"../../plugins/emittersShapes/circle/dist/browser/EmittersCircleShapeGenerator.js\");\n\n\nasync function loadEmittersShapeCircle(engine, refresh = true) {\n const emittersEngine = engine;\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(emittersEngine, \"3.7.1\");\n emittersEngine.addEmitterShapeGenerator?.(\"circle\", new _EmittersCircleShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__.EmittersCircleShapeGenerator());\n await emittersEngine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/emittersShapes/circle/dist/browser/index.js?");
3288
3288
 
3289
3289
  /***/ }),
3290
3290
 
@@ -3314,7 +3314,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3314
3314
  \*****************************************************************/
3315
3315
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3316
3316
 
3317
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmittersShapeSquare: () => (/* binding */ loadEmittersShapeSquare)\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 _EmittersSquareShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmittersSquareShapeGenerator.js */ \"../../plugins/emittersShapes/square/dist/browser/EmittersSquareShapeGenerator.js\");\n\n\nasync function loadEmittersShapeSquare(engine, refresh = true) {\n const emittersEngine = engine;\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(emittersEngine, \"3.7.0\");\n emittersEngine.addEmitterShapeGenerator?.(\"square\", new _EmittersSquareShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__.EmittersSquareShapeGenerator());\n await emittersEngine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/emittersShapes/square/dist/browser/index.js?");
3317
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmittersShapeSquare: () => (/* binding */ loadEmittersShapeSquare)\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 _EmittersSquareShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmittersSquareShapeGenerator.js */ \"../../plugins/emittersShapes/square/dist/browser/EmittersSquareShapeGenerator.js\");\n\n\nasync function loadEmittersShapeSquare(engine, refresh = true) {\n const emittersEngine = engine;\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(emittersEngine, \"3.7.1\");\n emittersEngine.addEmitterShapeGenerator?.(\"square\", new _EmittersSquareShapeGenerator_js__WEBPACK_IMPORTED_MODULE_1__.EmittersSquareShapeGenerator());\n await emittersEngine.refresh(refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../plugins/emittersShapes/square/dist/browser/index.js?");
3318
3318
 
3319
3319
  /***/ }),
3320
3320
 
@@ -3344,7 +3344,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3344
3344
  \*************************************************/
3345
3345
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3346
3346
 
3347
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadCircleShape: () => (/* binding */ loadCircleShape)\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 _CircleDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CircleDrawer.js */ \"../../shapes/circle/dist/browser/CircleDrawer.js\");\n\n\nasync function loadCircleShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _CircleDrawer_js__WEBPACK_IMPORTED_MODULE_1__.CircleDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/circle/dist/browser/index.js?");
3347
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadCircleShape: () => (/* binding */ loadCircleShape)\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 _CircleDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CircleDrawer.js */ \"../../shapes/circle/dist/browser/CircleDrawer.js\");\n\n\nasync function loadCircleShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _CircleDrawer_js__WEBPACK_IMPORTED_MODULE_1__.CircleDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/circle/dist/browser/index.js?");
3348
3348
 
3349
3349
  /***/ }),
3350
3350
 
@@ -3374,7 +3374,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3374
3374
  \************************************************/
3375
3375
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3376
3376
 
3377
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmojiShape: () => (/* binding */ loadEmojiShape)\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 _EmojiDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmojiDrawer.js */ \"../../shapes/emoji/dist/browser/EmojiDrawer.js\");\n\n\nasync function loadEmojiShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _EmojiDrawer_js__WEBPACK_IMPORTED_MODULE_1__.EmojiDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/emoji/dist/browser/index.js?");
3377
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadEmojiShape: () => (/* binding */ loadEmojiShape)\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 _EmojiDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./EmojiDrawer.js */ \"../../shapes/emoji/dist/browser/EmojiDrawer.js\");\n\n\nasync function loadEmojiShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _EmojiDrawer_js__WEBPACK_IMPORTED_MODULE_1__.EmojiDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/emoji/dist/browser/index.js?");
3378
3378
 
3379
3379
  /***/ }),
3380
3380
 
@@ -3474,7 +3474,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3474
3474
  \************************************************/
3475
3475
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3476
3476
 
3477
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadImageShape: () => (/* binding */ loadImageShape)\n/* harmony export */ });\n/* harmony import */ var _Utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utils.js */ \"../../shapes/image/dist/browser/Utils.js\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _ImageDrawer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ImageDrawer.js */ \"../../shapes/image/dist/browser/ImageDrawer.js\");\n/* harmony import */ var _ImagePreloader_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ImagePreloader.js */ \"../../shapes/image/dist/browser/ImagePreloader.js\");\n/* harmony import */ var _GifUtils_Utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./GifUtils/Utils.js */ \"../../shapes/image/dist/browser/GifUtils/Utils.js\");\n\n\n\n\n\nconst extLength = 3;\nfunction addLoadImageToEngine(engine) {\n if (engine.loadImage) {\n return;\n }\n engine.loadImage = async data => {\n if (!data.name && !data.src) {\n throw new Error(`${_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.errorPrefix} no image source provided`);\n }\n if (!engine.images) {\n engine.images = [];\n }\n if (engine.images.find(t => t.name === data.name || t.source === data.src)) {\n return;\n }\n try {\n const image = {\n gif: data.gif ?? false,\n name: data.name ?? data.src,\n source: data.src,\n type: data.src.substring(data.src.length - extLength),\n error: false,\n loading: true,\n replaceColor: data.replaceColor,\n ratio: data.width && data.height ? data.width / data.height : undefined\n };\n engine.images.push(image);\n let imageFunc;\n if (data.gif) {\n imageFunc = _GifUtils_Utils_js__WEBPACK_IMPORTED_MODULE_4__.loadGifImage;\n } else {\n imageFunc = data.replaceColor ? _Utils_js__WEBPACK_IMPORTED_MODULE_0__.downloadSvgImage : _Utils_js__WEBPACK_IMPORTED_MODULE_0__.loadImage;\n }\n await imageFunc(image);\n } catch {\n throw new Error(`${_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.errorPrefix} ${data.name ?? data.src} not found`);\n }\n };\n}\nasync function loadImageShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.assertValidVersion)(engine, \"3.7.0\");\n addLoadImageToEngine(engine);\n const preloader = new _ImagePreloader_js__WEBPACK_IMPORTED_MODULE_3__.ImagePreloaderPlugin(engine);\n await engine.addPlugin(preloader, refresh);\n await engine.addShape(new _ImageDrawer_js__WEBPACK_IMPORTED_MODULE_2__.ImageDrawer(engine), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/image/dist/browser/index.js?");
3477
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadImageShape: () => (/* binding */ loadImageShape)\n/* harmony export */ });\n/* harmony import */ var _Utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utils.js */ \"../../shapes/image/dist/browser/Utils.js\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _ImageDrawer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ImageDrawer.js */ \"../../shapes/image/dist/browser/ImageDrawer.js\");\n/* harmony import */ var _ImagePreloader_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ImagePreloader.js */ \"../../shapes/image/dist/browser/ImagePreloader.js\");\n/* harmony import */ var _GifUtils_Utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./GifUtils/Utils.js */ \"../../shapes/image/dist/browser/GifUtils/Utils.js\");\n\n\n\n\n\nconst extLength = 3;\nfunction addLoadImageToEngine(engine) {\n if (engine.loadImage) {\n return;\n }\n engine.loadImage = async data => {\n if (!data.name && !data.src) {\n throw new Error(`${_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.errorPrefix} no image source provided`);\n }\n if (!engine.images) {\n engine.images = [];\n }\n if (engine.images.find(t => t.name === data.name || t.source === data.src)) {\n return;\n }\n try {\n const image = {\n gif: data.gif ?? false,\n name: data.name ?? data.src,\n source: data.src,\n type: data.src.substring(data.src.length - extLength),\n error: false,\n loading: true,\n replaceColor: data.replaceColor,\n ratio: data.width && data.height ? data.width / data.height : undefined\n };\n engine.images.push(image);\n let imageFunc;\n if (data.gif) {\n imageFunc = _GifUtils_Utils_js__WEBPACK_IMPORTED_MODULE_4__.loadGifImage;\n } else {\n imageFunc = data.replaceColor ? _Utils_js__WEBPACK_IMPORTED_MODULE_0__.downloadSvgImage : _Utils_js__WEBPACK_IMPORTED_MODULE_0__.loadImage;\n }\n await imageFunc(image);\n } catch {\n throw new Error(`${_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.errorPrefix} ${data.name ?? data.src} not found`);\n }\n };\n}\nasync function loadImageShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.assertValidVersion)(engine, \"3.7.1\");\n addLoadImageToEngine(engine);\n const preloader = new _ImagePreloader_js__WEBPACK_IMPORTED_MODULE_3__.ImagePreloaderPlugin(engine);\n await engine.addPlugin(preloader, refresh);\n await engine.addShape(new _ImageDrawer_js__WEBPACK_IMPORTED_MODULE_2__.ImageDrawer(engine), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/image/dist/browser/index.js?");
3478
3478
 
3479
3479
  /***/ }),
3480
3480
 
@@ -3504,7 +3504,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3504
3504
  \***********************************************/
3505
3505
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3506
3506
 
3507
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadLineShape: () => (/* binding */ loadLineShape)\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 _LineDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LineDrawer.js */ \"../../shapes/line/dist/browser/LineDrawer.js\");\n\n\nasync function loadLineShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _LineDrawer_js__WEBPACK_IMPORTED_MODULE_1__.LineDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/line/dist/browser/index.js?");
3507
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadLineShape: () => (/* binding */ loadLineShape)\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 _LineDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LineDrawer.js */ \"../../shapes/line/dist/browser/LineDrawer.js\");\n\n\nasync function loadLineShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _LineDrawer_js__WEBPACK_IMPORTED_MODULE_1__.LineDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/line/dist/browser/index.js?");
3508
3508
 
3509
3509
  /***/ }),
3510
3510
 
@@ -3554,7 +3554,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3554
3554
  \**************************************************/
3555
3555
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3556
3556
 
3557
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadGenericPolygonShape: () => (/* binding */ loadGenericPolygonShape),\n/* harmony export */ loadPolygonShape: () => (/* binding */ loadPolygonShape),\n/* harmony export */ loadTriangleShape: () => (/* binding */ loadTriangleShape)\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 _PolygonDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PolygonDrawer.js */ \"../../shapes/polygon/dist/browser/PolygonDrawer.js\");\n/* harmony import */ var _TriangleDrawer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TriangleDrawer.js */ \"../../shapes/polygon/dist/browser/TriangleDrawer.js\");\n\n\n\nasync function loadGenericPolygonShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _PolygonDrawer_js__WEBPACK_IMPORTED_MODULE_1__.PolygonDrawer(), refresh);\n}\nasync function loadTriangleShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _TriangleDrawer_js__WEBPACK_IMPORTED_MODULE_2__.TriangleDrawer(), refresh);\n}\nasync function loadPolygonShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await loadGenericPolygonShape(engine, refresh);\n await loadTriangleShape(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/polygon/dist/browser/index.js?");
3557
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadGenericPolygonShape: () => (/* binding */ loadGenericPolygonShape),\n/* harmony export */ loadPolygonShape: () => (/* binding */ loadPolygonShape),\n/* harmony export */ loadTriangleShape: () => (/* binding */ loadTriangleShape)\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 _PolygonDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PolygonDrawer.js */ \"../../shapes/polygon/dist/browser/PolygonDrawer.js\");\n/* harmony import */ var _TriangleDrawer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TriangleDrawer.js */ \"../../shapes/polygon/dist/browser/TriangleDrawer.js\");\n\n\n\nasync function loadGenericPolygonShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _PolygonDrawer_js__WEBPACK_IMPORTED_MODULE_1__.PolygonDrawer(), refresh);\n}\nasync function loadTriangleShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _TriangleDrawer_js__WEBPACK_IMPORTED_MODULE_2__.TriangleDrawer(), refresh);\n}\nasync function loadPolygonShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await loadGenericPolygonShape(engine, refresh);\n await loadTriangleShape(engine, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/polygon/dist/browser/index.js?");
3558
3558
 
3559
3559
  /***/ }),
3560
3560
 
@@ -3584,7 +3584,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3584
3584
  \*************************************************/
3585
3585
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3586
3586
 
3587
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSquareShape: () => (/* binding */ loadSquareShape)\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 _SquareDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SquareDrawer.js */ \"../../shapes/square/dist/browser/SquareDrawer.js\");\n\n\nasync function loadSquareShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _SquareDrawer_js__WEBPACK_IMPORTED_MODULE_1__.SquareDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/square/dist/browser/index.js?");
3587
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSquareShape: () => (/* binding */ loadSquareShape)\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 _SquareDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SquareDrawer.js */ \"../../shapes/square/dist/browser/SquareDrawer.js\");\n\n\nasync function loadSquareShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _SquareDrawer_js__WEBPACK_IMPORTED_MODULE_1__.SquareDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/square/dist/browser/index.js?");
3588
3588
 
3589
3589
  /***/ }),
3590
3590
 
@@ -3614,7 +3614,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3614
3614
  \***********************************************/
3615
3615
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3616
3616
 
3617
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadStarShape: () => (/* binding */ loadStarShape)\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 _StarDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./StarDrawer.js */ \"../../shapes/star/dist/browser/StarDrawer.js\");\n\n\nasync function loadStarShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _StarDrawer_js__WEBPACK_IMPORTED_MODULE_1__.StarDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/star/dist/browser/index.js?");
3617
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadStarShape: () => (/* binding */ loadStarShape)\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 _StarDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./StarDrawer.js */ \"../../shapes/star/dist/browser/StarDrawer.js\");\n\n\nasync function loadStarShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _StarDrawer_js__WEBPACK_IMPORTED_MODULE_1__.StarDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/star/dist/browser/index.js?");
3618
3618
 
3619
3619
  /***/ }),
3620
3620
 
@@ -3644,7 +3644,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3644
3644
  \***********************************************/
3645
3645
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3646
3646
 
3647
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTextShape: () => (/* binding */ loadTextShape)\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 _TextDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TextDrawer.js */ \"../../shapes/text/dist/browser/TextDrawer.js\");\n\n\nasync function loadTextShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addShape(new _TextDrawer_js__WEBPACK_IMPORTED_MODULE_1__.TextDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/text/dist/browser/index.js?");
3647
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTextShape: () => (/* binding */ loadTextShape)\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 _TextDrawer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TextDrawer.js */ \"../../shapes/text/dist/browser/TextDrawer.js\");\n\n\nasync function loadTextShape(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addShape(new _TextDrawer_js__WEBPACK_IMPORTED_MODULE_1__.TextDrawer(), refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../shapes/text/dist/browser/index.js?");
3648
3648
 
3649
3649
  /***/ }),
3650
3650
 
@@ -3664,7 +3664,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3664
3664
  \**************************************************/
3665
3665
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3666
3666
 
3667
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadColorUpdater: () => (/* binding */ loadColorUpdater)\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 _ColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ColorUpdater.js */ \"../../updaters/color/dist/browser/ColorUpdater.js\");\n\n\nasync function loadColorUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"color\", container => {\n return Promise.resolve(new _ColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__.ColorUpdater(container, engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/color/dist/browser/index.js?");
3667
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadColorUpdater: () => (/* binding */ loadColorUpdater)\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 _ColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ColorUpdater.js */ \"../../updaters/color/dist/browser/ColorUpdater.js\");\n\n\nasync function loadColorUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"color\", container => {\n return Promise.resolve(new _ColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__.ColorUpdater(container, engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/color/dist/browser/index.js?");
3668
3668
 
3669
3669
  /***/ }),
3670
3670
 
@@ -3754,7 +3754,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3754
3754
  \****************************************************/
3755
3755
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3756
3756
 
3757
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadDestroyUpdater: () => (/* binding */ loadDestroyUpdater)\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 _DestroyUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DestroyUpdater.js */ \"../../updaters/destroy/dist/browser/DestroyUpdater.js\");\n\n\nasync function loadDestroyUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"destroy\", container => {\n return Promise.resolve(new _DestroyUpdater_js__WEBPACK_IMPORTED_MODULE_1__.DestroyUpdater(engine, container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/destroy/dist/browser/index.js?");
3757
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadDestroyUpdater: () => (/* binding */ loadDestroyUpdater)\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 _DestroyUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DestroyUpdater.js */ \"../../updaters/destroy/dist/browser/DestroyUpdater.js\");\n\n\nasync function loadDestroyUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"destroy\", container => {\n return Promise.resolve(new _DestroyUpdater_js__WEBPACK_IMPORTED_MODULE_1__.DestroyUpdater(engine, container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/destroy/dist/browser/index.js?");
3758
3758
 
3759
3759
  /***/ }),
3760
3760
 
@@ -3814,7 +3814,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3814
3814
  \*************************************************/
3815
3815
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3816
3816
 
3817
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadLifeUpdater: () => (/* binding */ loadLifeUpdater)\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 _LifeUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LifeUpdater.js */ \"../../updaters/life/dist/browser/LifeUpdater.js\");\n\n\nasync function loadLifeUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"life\", async container => {\n return Promise.resolve(new _LifeUpdater_js__WEBPACK_IMPORTED_MODULE_1__.LifeUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/life/dist/browser/index.js?");
3817
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadLifeUpdater: () => (/* binding */ loadLifeUpdater)\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 _LifeUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LifeUpdater.js */ \"../../updaters/life/dist/browser/LifeUpdater.js\");\n\n\nasync function loadLifeUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"life\", async container => {\n return Promise.resolve(new _LifeUpdater_js__WEBPACK_IMPORTED_MODULE_1__.LifeUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/life/dist/browser/index.js?");
3818
3818
 
3819
3819
  /***/ }),
3820
3820
 
@@ -3834,7 +3834,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3834
3834
  \****************************************************/
3835
3835
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3836
3836
 
3837
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadOpacityUpdater: () => (/* binding */ loadOpacityUpdater)\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 _OpacityUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./OpacityUpdater.js */ \"../../updaters/opacity/dist/browser/OpacityUpdater.js\");\n\n\nasync function loadOpacityUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"opacity\", container => {\n return Promise.resolve(new _OpacityUpdater_js__WEBPACK_IMPORTED_MODULE_1__.OpacityUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/opacity/dist/browser/index.js?");
3837
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadOpacityUpdater: () => (/* binding */ loadOpacityUpdater)\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 _OpacityUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./OpacityUpdater.js */ \"../../updaters/opacity/dist/browser/OpacityUpdater.js\");\n\n\nasync function loadOpacityUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"opacity\", container => {\n return Promise.resolve(new _OpacityUpdater_js__WEBPACK_IMPORTED_MODULE_1__.OpacityUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/opacity/dist/browser/index.js?");
3838
3838
 
3839
3839
  /***/ }),
3840
3840
 
@@ -3904,7 +3904,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3904
3904
  \*****************************************************/
3905
3905
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3906
3906
 
3907
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadOutModesUpdater: () => (/* binding */ loadOutModesUpdater)\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 _OutOfCanvasUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./OutOfCanvasUpdater.js */ \"../../updaters/outModes/dist/browser/OutOfCanvasUpdater.js\");\n\n\nasync function loadOutModesUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"outModes\", container => {\n return Promise.resolve(new _OutOfCanvasUpdater_js__WEBPACK_IMPORTED_MODULE_1__.OutOfCanvasUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/outModes/dist/browser/index.js?");
3907
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadOutModesUpdater: () => (/* binding */ loadOutModesUpdater)\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 _OutOfCanvasUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./OutOfCanvasUpdater.js */ \"../../updaters/outModes/dist/browser/OutOfCanvasUpdater.js\");\n\n\nasync function loadOutModesUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"outModes\", container => {\n return Promise.resolve(new _OutOfCanvasUpdater_js__WEBPACK_IMPORTED_MODULE_1__.OutOfCanvasUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/outModes/dist/browser/index.js?");
3908
3908
 
3909
3909
  /***/ }),
3910
3910
 
@@ -3964,7 +3964,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
3964
3964
  \*************************************************/
3965
3965
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
3966
3966
 
3967
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRollUpdater: () => (/* binding */ loadRollUpdater)\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 _RollUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RollUpdater.js */ \"../../updaters/roll/dist/browser/RollUpdater.js\");\n\n\nasync function loadRollUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"roll\", () => {\n return Promise.resolve(new _RollUpdater_js__WEBPACK_IMPORTED_MODULE_1__.RollUpdater(engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/roll/dist/browser/index.js?");
3967
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRollUpdater: () => (/* binding */ loadRollUpdater)\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 _RollUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RollUpdater.js */ \"../../updaters/roll/dist/browser/RollUpdater.js\");\n\n\nasync function loadRollUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"roll\", () => {\n return Promise.resolve(new _RollUpdater_js__WEBPACK_IMPORTED_MODULE_1__.RollUpdater(engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/roll/dist/browser/index.js?");
3968
3968
 
3969
3969
  /***/ }),
3970
3970
 
@@ -4004,7 +4004,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4004
4004
  \***************************************************/
4005
4005
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4006
4006
 
4007
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRotateUpdater: () => (/* binding */ loadRotateUpdater)\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 _RotateUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RotateUpdater.js */ \"../../updaters/rotate/dist/browser/RotateUpdater.js\");\n\n\nasync function loadRotateUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"rotate\", container => {\n return Promise.resolve(new _RotateUpdater_js__WEBPACK_IMPORTED_MODULE_1__.RotateUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/rotate/dist/browser/index.js?");
4007
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadRotateUpdater: () => (/* binding */ loadRotateUpdater)\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 _RotateUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RotateUpdater.js */ \"../../updaters/rotate/dist/browser/RotateUpdater.js\");\n\n\nasync function loadRotateUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"rotate\", container => {\n return Promise.resolve(new _RotateUpdater_js__WEBPACK_IMPORTED_MODULE_1__.RotateUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/rotate/dist/browser/index.js?");
4008
4008
 
4009
4009
  /***/ }),
4010
4010
 
@@ -4024,7 +4024,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4024
4024
  \*************************************************/
4025
4025
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4026
4026
 
4027
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSizeUpdater: () => (/* binding */ loadSizeUpdater)\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 _SizeUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SizeUpdater.js */ \"../../updaters/size/dist/browser/SizeUpdater.js\");\n\n\nasync function loadSizeUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"size\", () => {\n return Promise.resolve(new _SizeUpdater_js__WEBPACK_IMPORTED_MODULE_1__.SizeUpdater());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/size/dist/browser/index.js?");
4027
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadSizeUpdater: () => (/* binding */ loadSizeUpdater)\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 _SizeUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SizeUpdater.js */ \"../../updaters/size/dist/browser/SizeUpdater.js\");\n\n\nasync function loadSizeUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"size\", () => {\n return Promise.resolve(new _SizeUpdater_js__WEBPACK_IMPORTED_MODULE_1__.SizeUpdater());\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/size/dist/browser/index.js?");
4028
4028
 
4029
4029
  /***/ }),
4030
4030
 
@@ -4044,7 +4044,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4044
4044
  \********************************************************/
4045
4045
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4046
4046
 
4047
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadStrokeColorUpdater: () => (/* binding */ loadStrokeColorUpdater)\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 _StrokeColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./StrokeColorUpdater.js */ \"../../updaters/strokeColor/dist/browser/StrokeColorUpdater.js\");\n\n\nasync function loadStrokeColorUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"strokeColor\", container => {\n return Promise.resolve(new _StrokeColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__.StrokeColorUpdater(container, engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/strokeColor/dist/browser/index.js?");
4047
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadStrokeColorUpdater: () => (/* binding */ loadStrokeColorUpdater)\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 _StrokeColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./StrokeColorUpdater.js */ \"../../updaters/strokeColor/dist/browser/StrokeColorUpdater.js\");\n\n\nasync function loadStrokeColorUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"strokeColor\", container => {\n return Promise.resolve(new _StrokeColorUpdater_js__WEBPACK_IMPORTED_MODULE_1__.StrokeColorUpdater(container, engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/strokeColor/dist/browser/index.js?");
4048
4048
 
4049
4049
  /***/ }),
4050
4050
 
@@ -4094,7 +4094,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4094
4094
  \*************************************************/
4095
4095
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4096
4096
 
4097
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTiltUpdater: () => (/* binding */ loadTiltUpdater)\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 _TiltUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiltUpdater.js */ \"../../updaters/tilt/dist/browser/TiltUpdater.js\");\n\n\nasync function loadTiltUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"tilt\", container => {\n return Promise.resolve(new _TiltUpdater_js__WEBPACK_IMPORTED_MODULE_1__.TiltUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/tilt/dist/browser/index.js?");
4097
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTiltUpdater: () => (/* binding */ loadTiltUpdater)\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 _TiltUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TiltUpdater.js */ \"../../updaters/tilt/dist/browser/TiltUpdater.js\");\n\n\nasync function loadTiltUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"tilt\", container => {\n return Promise.resolve(new _TiltUpdater_js__WEBPACK_IMPORTED_MODULE_1__.TiltUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/tilt/dist/browser/index.js?");
4098
4098
 
4099
4099
  /***/ }),
4100
4100
 
@@ -4134,7 +4134,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4134
4134
  \****************************************************/
4135
4135
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4136
4136
 
4137
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTwinkleUpdater: () => (/* binding */ loadTwinkleUpdater)\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 _TwinkleUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TwinkleUpdater.js */ \"../../updaters/twinkle/dist/browser/TwinkleUpdater.js\");\n\n\nasync function loadTwinkleUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"twinkle\", () => {\n return Promise.resolve(new _TwinkleUpdater_js__WEBPACK_IMPORTED_MODULE_1__.TwinkleUpdater(engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/twinkle/dist/browser/index.js?");
4137
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadTwinkleUpdater: () => (/* binding */ loadTwinkleUpdater)\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 _TwinkleUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TwinkleUpdater.js */ \"../../updaters/twinkle/dist/browser/TwinkleUpdater.js\");\n\n\nasync function loadTwinkleUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"twinkle\", () => {\n return Promise.resolve(new _TwinkleUpdater_js__WEBPACK_IMPORTED_MODULE_1__.TwinkleUpdater(engine));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/twinkle/dist/browser/index.js?");
4138
4138
 
4139
4139
  /***/ }),
4140
4140
 
@@ -4184,7 +4184,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
4184
4184
  \***************************************************/
4185
4185
  /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
4186
4186
 
4187
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadWobbleUpdater: () => (/* binding */ loadWobbleUpdater)\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 _WobbleUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./WobbleUpdater.js */ \"../../updaters/wobble/dist/browser/WobbleUpdater.js\");\n\n\nasync function loadWobbleUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.0\");\n await engine.addParticleUpdater(\"wobble\", container => {\n return Promise.resolve(new _WobbleUpdater_js__WEBPACK_IMPORTED_MODULE_1__.WobbleUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/wobble/dist/browser/index.js?");
4187
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadWobbleUpdater: () => (/* binding */ loadWobbleUpdater)\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 _WobbleUpdater_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./WobbleUpdater.js */ \"../../updaters/wobble/dist/browser/WobbleUpdater.js\");\n\n\nasync function loadWobbleUpdater(engine, refresh = true) {\n (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.assertValidVersion)(engine, \"3.7.1\");\n await engine.addParticleUpdater(\"wobble\", container => {\n return Promise.resolve(new _WobbleUpdater_js__WEBPACK_IMPORTED_MODULE_1__.WobbleUpdater(container));\n }, refresh);\n}\n\n//# sourceURL=webpack://tsparticles/../../updaters/wobble/dist/browser/index.js?");
4188
4188
 
4189
4189
  /***/ })
4190
4190