@tsparticles/updater-out-modes 4.0.2 → 4.0.3

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.
package/browser/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { OutOfCanvasUpdater } from "./OutOfCanvasUpdater.js";
2
2
  export async function loadOutModesUpdater(engine) {
3
- engine.checkVersion("4.0.2");
3
+ engine.checkVersion("4.0.3");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addParticleUpdater("outModes", container => {
6
6
  return Promise.resolve(new OutOfCanvasUpdater(container));
@@ -1,5 +1,5 @@
1
1
  export async function loadOutModesUpdater(engine) {
2
- engine.checkVersion("4.0.2");
2
+ engine.checkVersion("4.0.3");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addParticleUpdater("outModes", async (container) => {
5
5
  const { OutOfCanvasUpdater } = await import("./OutOfCanvasUpdater.js");
package/cjs/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { OutOfCanvasUpdater } from "./OutOfCanvasUpdater.js";
2
2
  export async function loadOutModesUpdater(engine) {
3
- engine.checkVersion("4.0.2");
3
+ engine.checkVersion("4.0.3");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addParticleUpdater("outModes", container => {
6
6
  return Promise.resolve(new OutOfCanvasUpdater(container));
package/cjs/index.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadOutModesUpdater(engine) {
2
- engine.checkVersion("4.0.2");
2
+ engine.checkVersion("4.0.3");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addParticleUpdater("outModes", async (container) => {
5
5
  const { OutOfCanvasUpdater } = await import("./OutOfCanvasUpdater.js");
package/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { OutOfCanvasUpdater } from "./OutOfCanvasUpdater.js";
2
2
  export async function loadOutModesUpdater(engine) {
3
- engine.checkVersion("4.0.2");
3
+ engine.checkVersion("4.0.3");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addParticleUpdater("outModes", container => {
6
6
  return Promise.resolve(new OutOfCanvasUpdater(container));
package/esm/index.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadOutModesUpdater(engine) {
2
- engine.checkVersion("4.0.2");
2
+ engine.checkVersion("4.0.3");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addParticleUpdater("outModes", async (container) => {
5
5
  const { OutOfCanvasUpdater } = await import("./OutOfCanvasUpdater.js");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/updater-out-modes",
3
- "version": "4.0.2",
3
+ "version": "4.0.3",
4
4
  "description": "tsParticles particles out modes updater",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -93,7 +93,7 @@
93
93
  "./package.json": "./package.json"
94
94
  },
95
95
  "peerDependencies": {
96
- "@tsparticles/engine": "4.0.2"
96
+ "@tsparticles/engine": "4.0.3"
97
97
  },
98
98
  "publishConfig": {
99
99
  "access": "public"
package/report.html CHANGED
@@ -4930,7 +4930,7 @@ var drawChart = (function (exports) {
4930
4930
  </script>
4931
4931
  <script>
4932
4932
  /*<!--*/
4933
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.updater.out-modes.js","children":[{"name":"dist/browser","children":[{"uid":"04a3e160-1","name":"Utils.js"},{"uid":"04a3e160-3","name":"BounceOutMode.js"},{"uid":"04a3e160-5","name":"DestroyOutMode.js"},{"uid":"04a3e160-7","name":"NoneOutMode.js"},{"uid":"04a3e160-9","name":"OutOutMode.js"},{"uid":"04a3e160-11","name":"OutOfCanvasUpdater.js"},{"uid":"04a3e160-13","name":"index.js"},{"uid":"04a3e160-15","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"04a3e160-1":{"renderedLength":3622,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-0"},"04a3e160-3":{"renderedLength":1318,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-2"},"04a3e160-5":{"renderedLength":1473,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-4"},"04a3e160-7":{"renderedLength":2075,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-6"},"04a3e160-9":{"renderedLength":6841,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-8"},"04a3e160-11":{"renderedLength":2194,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-10"},"04a3e160-13":{"renderedLength":320,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-12"},"04a3e160-15":{"renderedLength":181,"gzipLength":0,"brotliLength":0,"metaUid":"04a3e160-14"}},"nodeMetas":{"04a3e160-0":{"id":"/dist/browser/Utils.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-1"},"imported":[{"uid":"04a3e160-16"}],"importedBy":[{"uid":"04a3e160-2"}]},"04a3e160-2":{"id":"/dist/browser/BounceOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-3"},"imported":[{"uid":"04a3e160-16"},{"uid":"04a3e160-0"}],"importedBy":[{"uid":"04a3e160-10"}]},"04a3e160-4":{"id":"/dist/browser/DestroyOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-5"},"imported":[{"uid":"04a3e160-16"}],"importedBy":[{"uid":"04a3e160-10"}]},"04a3e160-6":{"id":"/dist/browser/NoneOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-7"},"imported":[{"uid":"04a3e160-16"}],"importedBy":[{"uid":"04a3e160-10"}]},"04a3e160-8":{"id":"/dist/browser/OutOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-9"},"imported":[{"uid":"04a3e160-16"}],"importedBy":[{"uid":"04a3e160-10"}]},"04a3e160-10":{"id":"/dist/browser/OutOfCanvasUpdater.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-11"},"imported":[{"uid":"04a3e160-16"},{"uid":"04a3e160-2"},{"uid":"04a3e160-4"},{"uid":"04a3e160-6"},{"uid":"04a3e160-8"}],"importedBy":[{"uid":"04a3e160-12"}]},"04a3e160-12":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-13"},"imported":[{"uid":"04a3e160-10"}],"importedBy":[{"uid":"04a3e160-14"}]},"04a3e160-14":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.updater.out-modes.js":"04a3e160-15"},"imported":[{"uid":"04a3e160-12"}],"importedBy":[],"isEntry":true},"04a3e160-16":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"04a3e160-10"},{"uid":"04a3e160-2"},{"uid":"04a3e160-4"},{"uid":"04a3e160-6"},{"uid":"04a3e160-8"},{"uid":"04a3e160-0"}],"isExternal":true}},"env":{"rollup":"4.60.3"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4933
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.updater.out-modes.js","children":[{"name":"dist/browser","children":[{"uid":"8ac8c483-1","name":"Utils.js"},{"uid":"8ac8c483-3","name":"BounceOutMode.js"},{"uid":"8ac8c483-5","name":"DestroyOutMode.js"},{"uid":"8ac8c483-7","name":"NoneOutMode.js"},{"uid":"8ac8c483-9","name":"OutOutMode.js"},{"uid":"8ac8c483-11","name":"OutOfCanvasUpdater.js"},{"uid":"8ac8c483-13","name":"index.js"},{"uid":"8ac8c483-15","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"8ac8c483-1":{"renderedLength":3622,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-0"},"8ac8c483-3":{"renderedLength":1318,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-2"},"8ac8c483-5":{"renderedLength":1473,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-4"},"8ac8c483-7":{"renderedLength":2075,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-6"},"8ac8c483-9":{"renderedLength":6841,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-8"},"8ac8c483-11":{"renderedLength":2194,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-10"},"8ac8c483-13":{"renderedLength":320,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-12"},"8ac8c483-15":{"renderedLength":181,"gzipLength":0,"brotliLength":0,"metaUid":"8ac8c483-14"}},"nodeMetas":{"8ac8c483-0":{"id":"/dist/browser/Utils.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-1"},"imported":[{"uid":"8ac8c483-16"}],"importedBy":[{"uid":"8ac8c483-2"}]},"8ac8c483-2":{"id":"/dist/browser/BounceOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-3"},"imported":[{"uid":"8ac8c483-16"},{"uid":"8ac8c483-0"}],"importedBy":[{"uid":"8ac8c483-10"}]},"8ac8c483-4":{"id":"/dist/browser/DestroyOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-5"},"imported":[{"uid":"8ac8c483-16"}],"importedBy":[{"uid":"8ac8c483-10"}]},"8ac8c483-6":{"id":"/dist/browser/NoneOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-7"},"imported":[{"uid":"8ac8c483-16"}],"importedBy":[{"uid":"8ac8c483-10"}]},"8ac8c483-8":{"id":"/dist/browser/OutOutMode.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-9"},"imported":[{"uid":"8ac8c483-16"}],"importedBy":[{"uid":"8ac8c483-10"}]},"8ac8c483-10":{"id":"/dist/browser/OutOfCanvasUpdater.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-11"},"imported":[{"uid":"8ac8c483-16"},{"uid":"8ac8c483-2"},{"uid":"8ac8c483-4"},{"uid":"8ac8c483-6"},{"uid":"8ac8c483-8"}],"importedBy":[{"uid":"8ac8c483-12"}]},"8ac8c483-12":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-13"},"imported":[{"uid":"8ac8c483-10"}],"importedBy":[{"uid":"8ac8c483-14"}]},"8ac8c483-14":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.updater.out-modes.js":"8ac8c483-15"},"imported":[{"uid":"8ac8c483-12"}],"importedBy":[],"isEntry":true},"8ac8c483-16":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"8ac8c483-10"},{"uid":"8ac8c483-2"},{"uid":"8ac8c483-4"},{"uid":"8ac8c483-6"},{"uid":"8ac8c483-8"},{"uid":"8ac8c483-0"}],"isExternal":true}},"env":{"rollup":"4.60.4"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4934
4934
 
4935
4935
  const run = () => {
4936
4936
  const width = window.innerWidth;
@@ -1,5 +1,5 @@
1
1
  (function(g){g.__tsParticlesInternals=g.__tsParticlesInternals||{};g.__tsParticlesInternals.bundles=g.__tsParticlesInternals.bundles||{};g.__tsParticlesInternals.effects=g.__tsParticlesInternals.effects||{};g.__tsParticlesInternals.engine=g.__tsParticlesInternals.engine||{};g.__tsParticlesInternals.interactions=g.__tsParticlesInternals.interactions||{};g.__tsParticlesInternals.palettes=g.__tsParticlesInternals.palettes||{};g.__tsParticlesInternals.paths=g.__tsParticlesInternals.paths||{};g.__tsParticlesInternals.plugins=g.__tsParticlesInternals.plugins||{};g.__tsParticlesInternals.plugins=g.__tsParticlesInternals.plugins||{};g.__tsParticlesInternals.plugins.emittersShapes=g.__tsParticlesInternals.plugins.emittersShapes||{};g.__tsParticlesInternals.presets=g.__tsParticlesInternals.presets||{};g.__tsParticlesInternals.shapes=g.__tsParticlesInternals.shapes||{};g.__tsParticlesInternals.updaters=g.__tsParticlesInternals.updaters||{};g.__tsParticlesInternals.utils=g.__tsParticlesInternals.utils||{};g.__tsParticlesInternals.canvas=g.__tsParticlesInternals.canvas||{};g.__tsParticlesInternals.canvas=g.__tsParticlesInternals.canvas||{};g.__tsParticlesInternals.canvas.utils=g.__tsParticlesInternals.canvas.utils||{};g.__tsParticlesInternals.path=g.__tsParticlesInternals.path||{};g.__tsParticlesInternals.path=g.__tsParticlesInternals.path||{};g.__tsParticlesInternals.path.utils=g.__tsParticlesInternals.path.utils||{};var __tsProxyFactory=typeof Proxy!=="undefined"?function(obj){return new Proxy(obj,{get:function(target,key){if(!(key in target)){target[key]={};}return target[key];}});}:function(obj){return obj;};g.__tsParticlesInternals.bundles=__tsProxyFactory(g.__tsParticlesInternals.bundles);g.__tsParticlesInternals.effects=__tsProxyFactory(g.__tsParticlesInternals.effects);g.__tsParticlesInternals.interactions=__tsProxyFactory(g.__tsParticlesInternals.interactions);g.__tsParticlesInternals.palettes=__tsProxyFactory(g.__tsParticlesInternals.palettes);g.__tsParticlesInternals.paths=__tsProxyFactory(g.__tsParticlesInternals.paths);g.__tsParticlesInternals.plugins=__tsProxyFactory(g.__tsParticlesInternals.plugins);g.__tsParticlesInternals.plugins.emittersShapes=__tsProxyFactory(g.__tsParticlesInternals.plugins.emittersShapes);g.__tsParticlesInternals.presets=__tsProxyFactory(g.__tsParticlesInternals.presets);g.__tsParticlesInternals.shapes=__tsProxyFactory(g.__tsParticlesInternals.shapes);g.__tsParticlesInternals.updaters=__tsProxyFactory(g.__tsParticlesInternals.updaters);g.__tsParticlesInternals.utils=__tsProxyFactory(g.__tsParticlesInternals.utils);g.__tsParticlesInternals.canvas=__tsProxyFactory(g.__tsParticlesInternals.canvas);g.__tsParticlesInternals.path=__tsProxyFactory(g.__tsParticlesInternals.path);g.tsparticlesInternalExports=g.tsparticlesInternalExports||{};})(typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:this);
2
- /* Updater v4.0.2 */
2
+ /* Updater v4.0.3 */
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@tsparticles/engine')) :
5
5
  typeof define === 'function' && define.amd ? define(['exports', '@tsparticles/engine'], factory) :
@@ -350,7 +350,7 @@
350
350
  }
351
351
 
352
352
  async function loadOutModesUpdater(engine) {
353
- engine.checkVersion("4.0.2");
353
+ engine.checkVersion("4.0.3");
354
354
  await engine.pluginManager.register(e => {
355
355
  e.pluginManager.addParticleUpdater("outModes", container => {
356
356
  return Promise.resolve(new OutOfCanvasUpdater(container));
@@ -1 +1 @@
1
- !function(t){t.__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.bundles=t.__tsParticlesInternals.bundles||{},t.__tsParticlesInternals.effects=t.__tsParticlesInternals.effects||{},t.__tsParticlesInternals.engine=t.__tsParticlesInternals.engine||{},t.__tsParticlesInternals.interactions=t.__tsParticlesInternals.interactions||{},t.__tsParticlesInternals.palettes=t.__tsParticlesInternals.palettes||{},t.__tsParticlesInternals.paths=t.__tsParticlesInternals.paths||{},t.__tsParticlesInternals.plugins=t.__tsParticlesInternals.plugins||{},t.__tsParticlesInternals.plugins=t.__tsParticlesInternals.plugins||{},t.__tsParticlesInternals.plugins.emittersShapes=t.__tsParticlesInternals.plugins.emittersShapes||{},t.__tsParticlesInternals.presets=t.__tsParticlesInternals.presets||{},t.__tsParticlesInternals.shapes=t.__tsParticlesInternals.shapes||{},t.__tsParticlesInternals.updaters=t.__tsParticlesInternals.updaters||{},t.__tsParticlesInternals.utils=t.__tsParticlesInternals.utils||{},t.__tsParticlesInternals.canvas=t.__tsParticlesInternals.canvas||{},t.__tsParticlesInternals.canvas=t.__tsParticlesInternals.canvas||{},t.__tsParticlesInternals.canvas.utils=t.__tsParticlesInternals.canvas.utils||{},t.__tsParticlesInternals.path=t.__tsParticlesInternals.path||{},t.__tsParticlesInternals.path=t.__tsParticlesInternals.path||{},t.__tsParticlesInternals.path.utils=t.__tsParticlesInternals.path.utils||{};var e="undefined"!=typeof Proxy?function(t){return new Proxy(t,{get:function(t,e){return e in t||(t[e]={}),t[e]}})}:function(t){return t};t.__tsParticlesInternals.bundles=e(t.__tsParticlesInternals.bundles),t.__tsParticlesInternals.effects=e(t.__tsParticlesInternals.effects),t.__tsParticlesInternals.interactions=e(t.__tsParticlesInternals.interactions),t.__tsParticlesInternals.palettes=e(t.__tsParticlesInternals.palettes),t.__tsParticlesInternals.paths=e(t.__tsParticlesInternals.paths),t.__tsParticlesInternals.plugins=e(t.__tsParticlesInternals.plugins),t.__tsParticlesInternals.plugins.emittersShapes=e(t.__tsParticlesInternals.plugins.emittersShapes),t.__tsParticlesInternals.presets=e(t.__tsParticlesInternals.presets),t.__tsParticlesInternals.shapes=e(t.__tsParticlesInternals.shapes),t.__tsParticlesInternals.updaters=e(t.__tsParticlesInternals.updaters),t.__tsParticlesInternals.utils=e(t.__tsParticlesInternals.utils),t.__tsParticlesInternals.canvas=e(t.__tsParticlesInternals.canvas),t.__tsParticlesInternals.path=e(t.__tsParticlesInternals.path),t.tsparticlesInternalExports=t.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/engine"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.updaters=t.__tsParticlesInternals.updaters||{},t.__tsParticlesInternals.updaters.outModes=t.__tsParticlesInternals.updaters.outModes||{}),t.__tsParticlesInternals.engine)}(this,function(t,e){"use strict";class i{container;modes;_particleBouncePlugins;constructor(t){this.container=t,this.modes=[e.OutMode.bounce,e.OutMode.split],this._particleBouncePlugins=t.plugins.filter(t=>void 0!==t.particleBounce)}update(t,i,s,n){if(!this.modes.includes(n))return;const o=this.container;let a=!1;for(const e of this._particleBouncePlugins)if(a=e.particleBounce?.(t,s,i)??!1,a)break;if(a)return;const r=t.getPosition(),l=t.offset,c=t.getRadius(),d=e.calculateBounds(r,c),u=o.canvas.size;!function(t){if(t.outMode!==e.OutMode.bounce&&t.outMode!==e.OutMode.split||t.direction!==e.OutModeDirection.left&&t.direction!==e.OutModeDirection.right)return;t.bounds.right<0&&t.direction===e.OutModeDirection.left?t.particle.position.x=t.size+t.offset.x:t.bounds.left>t.canvasSize.width&&t.direction===e.OutModeDirection.right&&(t.particle.position.x=t.canvasSize.width-t.size-t.offset.x);const i=t.particle.velocity.x;let s=!1;if(t.direction===e.OutModeDirection.right&&t.bounds.right>=t.canvasSize.width&&i>0||t.direction===e.OutModeDirection.left&&t.bounds.left<=0&&i<0){const i=e.getRangeValue(t.particle.options.bounce.horizontal.value);t.particle.velocity.x*=-i,s=!0}if(!s)return;const n=t.offset.x+t.size;t.bounds.right>=t.canvasSize.width&&t.direction===e.OutModeDirection.right?t.particle.position.x=t.canvasSize.width-n:t.bounds.left<=0&&t.direction===e.OutModeDirection.left&&(t.particle.position.x=n),t.outMode===e.OutMode.split&&t.particle.destroy()}({particle:t,outMode:n,direction:i,bounds:d,canvasSize:u,offset:l,size:c}),function(t){if(t.outMode!==e.OutMode.bounce&&t.outMode!==e.OutMode.split||t.direction!==e.OutModeDirection.bottom&&t.direction!==e.OutModeDirection.top)return;t.bounds.bottom<0&&t.direction===e.OutModeDirection.top?t.particle.position.y=t.size+t.offset.y:t.bounds.top>t.canvasSize.height&&t.direction===e.OutModeDirection.bottom&&(t.particle.position.y=t.canvasSize.height-t.size-t.offset.y);const i=t.particle.velocity.y;let s=!1;if(t.direction===e.OutModeDirection.bottom&&t.bounds.bottom>=t.canvasSize.height&&i>0||t.direction===e.OutModeDirection.top&&t.bounds.top<=0&&i<0){const i=e.getRangeValue(t.particle.options.bounce.vertical.value);t.particle.velocity.y*=-i,s=!0}if(!s)return;const n=t.offset.y+t.size;t.bounds.bottom>=t.canvasSize.height&&t.direction===e.OutModeDirection.bottom?t.particle.position.y=t.canvasSize.height-n:t.bounds.top<=0&&t.direction===e.OutModeDirection.top&&(t.particle.position.y=n),t.outMode===e.OutMode.split&&t.particle.destroy()}({particle:t,outMode:n,direction:i,bounds:d,canvasSize:u,offset:l,size:c})}}class s{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.destroy]}update(t,i,s,n){if(!this.modes.includes(n))return;const o=this.container;switch(t.outType){case e.ParticleOutType.normal:case e.ParticleOutType.outside:if(e.isPointInside(t.position,o.canvas.size,e.originPoint,t.getRadius(),i))return;break;case e.ParticleOutType.inside:{const{dx:i,dy:s}=e.getDistances(t.position,t.moveCenter),{x:n,y:o}=t.velocity;if(n<0&&i>t.moveCenter.radius||o<0&&s>t.moveCenter.radius||n>=0&&i<-t.moveCenter.radius||o>=0&&s<-t.moveCenter.radius)return;break}}t.destroy(!0)}}class n{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.none]}update(t,i,s,n){if(!this.modes.includes(n))return;if((t.options.move.distance.horizontal&&(i===e.OutModeDirection.left||i===e.OutModeDirection.right))??(t.options.move.distance.vertical&&(i===e.OutModeDirection.top||i===e.OutModeDirection.bottom)))return;const o=t.options.move.gravity,a=this.container,r=a.canvas.size,l=t.getRadius();if(o.enable){const s=t.position;(!o.inverse&&s.y>r.height+l&&i===e.OutModeDirection.bottom||o.inverse&&s.y<-l&&i===e.OutModeDirection.top)&&t.destroy()}else{if(t.velocity.y>0&&t.position.y<=r.height+l||t.velocity.y<0&&t.position.y>=-l||t.velocity.x>0&&t.position.x<=r.width+l||t.velocity.x<0&&t.position.x>=-l)return;e.isPointInside(t.position,a.canvas.size,e.originPoint,l,i)||t.destroy()}}}const o=e.Vector.origin;class a{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.out]}update(t,i,s,n){if(!this.modes.includes(n))return;const a=this.container;switch(t.outType){case e.ParticleOutType.inside:{const{x:i,y:s}=t.velocity;o.setTo(e.originPoint),o.length=t.moveCenter.radius,o.angle=t.velocity.angle+Math.PI,o.addTo(t.moveCenter);const{dx:n,dy:r}=e.getDistances(t.position,o);if(i<=0&&n>=0||s<=0&&r>=0||i>=0&&n<=0||s>=0&&r<=0)return;t.position.x=Math.floor(e.randomInRangeValue({min:0,max:a.canvas.size.width})),t.position.y=Math.floor(e.randomInRangeValue({min:0,max:a.canvas.size.height}));const{dx:l,dy:c}=e.getDistances(t.position,t.moveCenter);t.direction=Math.atan2(-c,-l),t.velocity.angle=t.direction,t.justWarped=!0;break}default:if(e.isPointInside(t.position,a.canvas.size,e.originPoint,t.getRadius(),i))return;switch(t.outType){case e.ParticleOutType.outside:{t.position.x=Math.floor(e.randomInRangeValue({min:-t.moveCenter.radius,max:t.moveCenter.radius}))+t.moveCenter.x,t.position.y=Math.floor(e.randomInRangeValue({min:-t.moveCenter.radius,max:t.moveCenter.radius}))+t.moveCenter.y;const{dx:i,dy:s}=e.getDistances(t.position,t.moveCenter);t.moveCenter.radius&&(t.direction=Math.atan2(s,i),t.velocity.angle=t.direction),t.justWarped=!0;break}case e.ParticleOutType.normal:{const s=t.options.move.warp,n=a.canvas.size,o={bottom:n.height+t.getRadius()+t.offset.y,left:-t.getRadius()-t.offset.x,right:n.width+t.getRadius()+t.offset.x,top:-t.getRadius()-t.offset.y},r=t.getRadius(),l=e.calculateBounds(t.position,r);i===e.OutModeDirection.right&&l.left>n.width+t.offset.x?(t.position.x=o.left,t.initialPosition.x=t.position.x,s||(t.position.y=e.getRandom()*n.height,t.initialPosition.y=t.position.y),t.justWarped=!0):i===e.OutModeDirection.left&&l.right<-t.offset.x&&(t.position.x=o.right,t.initialPosition.x=t.position.x,s||(t.position.y=e.getRandom()*n.height,t.initialPosition.y=t.position.y),t.justWarped=!0),i===e.OutModeDirection.bottom&&l.top>n.height+t.offset.y?(s||(t.position.x=e.getRandom()*n.width,t.initialPosition.x=t.position.x),t.position.y=o.top,t.initialPosition.y=t.position.y,t.justWarped=!0):i===e.OutModeDirection.top&&l.bottom<-t.offset.y&&(s||(t.position.x=e.getRandom()*n.width,t.initialPosition.x=t.position.x),t.position.y=o.bottom,t.initialPosition.y=t.position.y,t.justWarped=!0);break}}}}}class r{updaters;container;constructor(t){this.container=t,this.updaters=new Map}init(t){this._addUpdaterIfMissing(t,e.OutMode.bounce,t=>new i(t)),this._addUpdaterIfMissing(t,e.OutMode.out,t=>new a(t)),this._addUpdaterIfMissing(t,e.OutMode.destroy,t=>new s(t)),this._addUpdaterIfMissing(t,e.OutMode.none,t=>new n(t))}isEnabled(t){return!t.destroyed&&!t.spawning}update(t,i){const s=t.options.move.outModes;t.justWarped=!1,this._updateOutMode(t,i,s.bottom??s.default,e.OutModeDirection.bottom),this._updateOutMode(t,i,s.left??s.default,e.OutModeDirection.left),this._updateOutMode(t,i,s.right??s.default,e.OutModeDirection.right),this._updateOutMode(t,i,s.top??s.default,e.OutModeDirection.top)}_addUpdaterIfMissing=(t,e,i)=>{const s=t.options.move.outModes;!this.updaters.has(e)&&((t,e)=>t.default===e||t.bottom===e||t.left===e||t.right===e||t.top===e)(s,e)&&this.updaters.set(e,i(this.container))};_updateOutMode=(t,e,i,s)=>{for(const n of this.updaters.values())n.update(t,s,e,i)}}async function l(t){t.checkVersion("4.0.2"),await t.pluginManager.register(t=>{t.pluginManager.addParticleUpdater("outModes",t=>Promise.resolve(new r(t)))})}const c=globalThis;c.__tsParticlesInternals=c.__tsParticlesInternals??{},c.loadOutModesUpdater=l,t.loadOutModesUpdater=l}),Object.assign(globalThis.window||globalThis,{loadOutModesUpdater:(globalThis.__tsParticlesInternals.updaters.outModes||{}).loadOutModesUpdater}),delete(globalThis.window||globalThis).tsparticlesInternalExports;
1
+ !function(t){t.__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.bundles=t.__tsParticlesInternals.bundles||{},t.__tsParticlesInternals.effects=t.__tsParticlesInternals.effects||{},t.__tsParticlesInternals.engine=t.__tsParticlesInternals.engine||{},t.__tsParticlesInternals.interactions=t.__tsParticlesInternals.interactions||{},t.__tsParticlesInternals.palettes=t.__tsParticlesInternals.palettes||{},t.__tsParticlesInternals.paths=t.__tsParticlesInternals.paths||{},t.__tsParticlesInternals.plugins=t.__tsParticlesInternals.plugins||{},t.__tsParticlesInternals.plugins=t.__tsParticlesInternals.plugins||{},t.__tsParticlesInternals.plugins.emittersShapes=t.__tsParticlesInternals.plugins.emittersShapes||{},t.__tsParticlesInternals.presets=t.__tsParticlesInternals.presets||{},t.__tsParticlesInternals.shapes=t.__tsParticlesInternals.shapes||{},t.__tsParticlesInternals.updaters=t.__tsParticlesInternals.updaters||{},t.__tsParticlesInternals.utils=t.__tsParticlesInternals.utils||{},t.__tsParticlesInternals.canvas=t.__tsParticlesInternals.canvas||{},t.__tsParticlesInternals.canvas=t.__tsParticlesInternals.canvas||{},t.__tsParticlesInternals.canvas.utils=t.__tsParticlesInternals.canvas.utils||{},t.__tsParticlesInternals.path=t.__tsParticlesInternals.path||{},t.__tsParticlesInternals.path=t.__tsParticlesInternals.path||{},t.__tsParticlesInternals.path.utils=t.__tsParticlesInternals.path.utils||{};var e="undefined"!=typeof Proxy?function(t){return new Proxy(t,{get:function(t,e){return e in t||(t[e]={}),t[e]}})}:function(t){return t};t.__tsParticlesInternals.bundles=e(t.__tsParticlesInternals.bundles),t.__tsParticlesInternals.effects=e(t.__tsParticlesInternals.effects),t.__tsParticlesInternals.interactions=e(t.__tsParticlesInternals.interactions),t.__tsParticlesInternals.palettes=e(t.__tsParticlesInternals.palettes),t.__tsParticlesInternals.paths=e(t.__tsParticlesInternals.paths),t.__tsParticlesInternals.plugins=e(t.__tsParticlesInternals.plugins),t.__tsParticlesInternals.plugins.emittersShapes=e(t.__tsParticlesInternals.plugins.emittersShapes),t.__tsParticlesInternals.presets=e(t.__tsParticlesInternals.presets),t.__tsParticlesInternals.shapes=e(t.__tsParticlesInternals.shapes),t.__tsParticlesInternals.updaters=e(t.__tsParticlesInternals.updaters),t.__tsParticlesInternals.utils=e(t.__tsParticlesInternals.utils),t.__tsParticlesInternals.canvas=e(t.__tsParticlesInternals.canvas),t.__tsParticlesInternals.path=e(t.__tsParticlesInternals.path),t.tsparticlesInternalExports=t.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/engine"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.updaters=t.__tsParticlesInternals.updaters||{},t.__tsParticlesInternals.updaters.outModes=t.__tsParticlesInternals.updaters.outModes||{}),t.__tsParticlesInternals.engine)}(this,function(t,e){"use strict";class i{container;modes;_particleBouncePlugins;constructor(t){this.container=t,this.modes=[e.OutMode.bounce,e.OutMode.split],this._particleBouncePlugins=t.plugins.filter(t=>void 0!==t.particleBounce)}update(t,i,s,n){if(!this.modes.includes(n))return;const o=this.container;let a=!1;for(const e of this._particleBouncePlugins)if(a=e.particleBounce?.(t,s,i)??!1,a)break;if(a)return;const r=t.getPosition(),l=t.offset,c=t.getRadius(),d=e.calculateBounds(r,c),u=o.canvas.size;!function(t){if(t.outMode!==e.OutMode.bounce&&t.outMode!==e.OutMode.split||t.direction!==e.OutModeDirection.left&&t.direction!==e.OutModeDirection.right)return;t.bounds.right<0&&t.direction===e.OutModeDirection.left?t.particle.position.x=t.size+t.offset.x:t.bounds.left>t.canvasSize.width&&t.direction===e.OutModeDirection.right&&(t.particle.position.x=t.canvasSize.width-t.size-t.offset.x);const i=t.particle.velocity.x;let s=!1;if(t.direction===e.OutModeDirection.right&&t.bounds.right>=t.canvasSize.width&&i>0||t.direction===e.OutModeDirection.left&&t.bounds.left<=0&&i<0){const i=e.getRangeValue(t.particle.options.bounce.horizontal.value);t.particle.velocity.x*=-i,s=!0}if(!s)return;const n=t.offset.x+t.size;t.bounds.right>=t.canvasSize.width&&t.direction===e.OutModeDirection.right?t.particle.position.x=t.canvasSize.width-n:t.bounds.left<=0&&t.direction===e.OutModeDirection.left&&(t.particle.position.x=n),t.outMode===e.OutMode.split&&t.particle.destroy()}({particle:t,outMode:n,direction:i,bounds:d,canvasSize:u,offset:l,size:c}),function(t){if(t.outMode!==e.OutMode.bounce&&t.outMode!==e.OutMode.split||t.direction!==e.OutModeDirection.bottom&&t.direction!==e.OutModeDirection.top)return;t.bounds.bottom<0&&t.direction===e.OutModeDirection.top?t.particle.position.y=t.size+t.offset.y:t.bounds.top>t.canvasSize.height&&t.direction===e.OutModeDirection.bottom&&(t.particle.position.y=t.canvasSize.height-t.size-t.offset.y);const i=t.particle.velocity.y;let s=!1;if(t.direction===e.OutModeDirection.bottom&&t.bounds.bottom>=t.canvasSize.height&&i>0||t.direction===e.OutModeDirection.top&&t.bounds.top<=0&&i<0){const i=e.getRangeValue(t.particle.options.bounce.vertical.value);t.particle.velocity.y*=-i,s=!0}if(!s)return;const n=t.offset.y+t.size;t.bounds.bottom>=t.canvasSize.height&&t.direction===e.OutModeDirection.bottom?t.particle.position.y=t.canvasSize.height-n:t.bounds.top<=0&&t.direction===e.OutModeDirection.top&&(t.particle.position.y=n),t.outMode===e.OutMode.split&&t.particle.destroy()}({particle:t,outMode:n,direction:i,bounds:d,canvasSize:u,offset:l,size:c})}}class s{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.destroy]}update(t,i,s,n){if(!this.modes.includes(n))return;const o=this.container;switch(t.outType){case e.ParticleOutType.normal:case e.ParticleOutType.outside:if(e.isPointInside(t.position,o.canvas.size,e.originPoint,t.getRadius(),i))return;break;case e.ParticleOutType.inside:{const{dx:i,dy:s}=e.getDistances(t.position,t.moveCenter),{x:n,y:o}=t.velocity;if(n<0&&i>t.moveCenter.radius||o<0&&s>t.moveCenter.radius||n>=0&&i<-t.moveCenter.radius||o>=0&&s<-t.moveCenter.radius)return;break}}t.destroy(!0)}}class n{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.none]}update(t,i,s,n){if(!this.modes.includes(n))return;if((t.options.move.distance.horizontal&&(i===e.OutModeDirection.left||i===e.OutModeDirection.right))??(t.options.move.distance.vertical&&(i===e.OutModeDirection.top||i===e.OutModeDirection.bottom)))return;const o=t.options.move.gravity,a=this.container,r=a.canvas.size,l=t.getRadius();if(o.enable){const s=t.position;(!o.inverse&&s.y>r.height+l&&i===e.OutModeDirection.bottom||o.inverse&&s.y<-l&&i===e.OutModeDirection.top)&&t.destroy()}else{if(t.velocity.y>0&&t.position.y<=r.height+l||t.velocity.y<0&&t.position.y>=-l||t.velocity.x>0&&t.position.x<=r.width+l||t.velocity.x<0&&t.position.x>=-l)return;e.isPointInside(t.position,a.canvas.size,e.originPoint,l,i)||t.destroy()}}}const o=e.Vector.origin;class a{container;modes;constructor(t){this.container=t,this.modes=[e.OutMode.out]}update(t,i,s,n){if(!this.modes.includes(n))return;const a=this.container;switch(t.outType){case e.ParticleOutType.inside:{const{x:i,y:s}=t.velocity;o.setTo(e.originPoint),o.length=t.moveCenter.radius,o.angle=t.velocity.angle+Math.PI,o.addTo(t.moveCenter);const{dx:n,dy:r}=e.getDistances(t.position,o);if(i<=0&&n>=0||s<=0&&r>=0||i>=0&&n<=0||s>=0&&r<=0)return;t.position.x=Math.floor(e.randomInRangeValue({min:0,max:a.canvas.size.width})),t.position.y=Math.floor(e.randomInRangeValue({min:0,max:a.canvas.size.height}));const{dx:l,dy:c}=e.getDistances(t.position,t.moveCenter);t.direction=Math.atan2(-c,-l),t.velocity.angle=t.direction,t.justWarped=!0;break}default:if(e.isPointInside(t.position,a.canvas.size,e.originPoint,t.getRadius(),i))return;switch(t.outType){case e.ParticleOutType.outside:{t.position.x=Math.floor(e.randomInRangeValue({min:-t.moveCenter.radius,max:t.moveCenter.radius}))+t.moveCenter.x,t.position.y=Math.floor(e.randomInRangeValue({min:-t.moveCenter.radius,max:t.moveCenter.radius}))+t.moveCenter.y;const{dx:i,dy:s}=e.getDistances(t.position,t.moveCenter);t.moveCenter.radius&&(t.direction=Math.atan2(s,i),t.velocity.angle=t.direction),t.justWarped=!0;break}case e.ParticleOutType.normal:{const s=t.options.move.warp,n=a.canvas.size,o={bottom:n.height+t.getRadius()+t.offset.y,left:-t.getRadius()-t.offset.x,right:n.width+t.getRadius()+t.offset.x,top:-t.getRadius()-t.offset.y},r=t.getRadius(),l=e.calculateBounds(t.position,r);i===e.OutModeDirection.right&&l.left>n.width+t.offset.x?(t.position.x=o.left,t.initialPosition.x=t.position.x,s||(t.position.y=e.getRandom()*n.height,t.initialPosition.y=t.position.y),t.justWarped=!0):i===e.OutModeDirection.left&&l.right<-t.offset.x&&(t.position.x=o.right,t.initialPosition.x=t.position.x,s||(t.position.y=e.getRandom()*n.height,t.initialPosition.y=t.position.y),t.justWarped=!0),i===e.OutModeDirection.bottom&&l.top>n.height+t.offset.y?(s||(t.position.x=e.getRandom()*n.width,t.initialPosition.x=t.position.x),t.position.y=o.top,t.initialPosition.y=t.position.y,t.justWarped=!0):i===e.OutModeDirection.top&&l.bottom<-t.offset.y&&(s||(t.position.x=e.getRandom()*n.width,t.initialPosition.x=t.position.x),t.position.y=o.bottom,t.initialPosition.y=t.position.y,t.justWarped=!0);break}}}}}class r{updaters;container;constructor(t){this.container=t,this.updaters=new Map}init(t){this._addUpdaterIfMissing(t,e.OutMode.bounce,t=>new i(t)),this._addUpdaterIfMissing(t,e.OutMode.out,t=>new a(t)),this._addUpdaterIfMissing(t,e.OutMode.destroy,t=>new s(t)),this._addUpdaterIfMissing(t,e.OutMode.none,t=>new n(t))}isEnabled(t){return!t.destroyed&&!t.spawning}update(t,i){const s=t.options.move.outModes;t.justWarped=!1,this._updateOutMode(t,i,s.bottom??s.default,e.OutModeDirection.bottom),this._updateOutMode(t,i,s.left??s.default,e.OutModeDirection.left),this._updateOutMode(t,i,s.right??s.default,e.OutModeDirection.right),this._updateOutMode(t,i,s.top??s.default,e.OutModeDirection.top)}_addUpdaterIfMissing=(t,e,i)=>{const s=t.options.move.outModes;!this.updaters.has(e)&&((t,e)=>t.default===e||t.bottom===e||t.left===e||t.right===e||t.top===e)(s,e)&&this.updaters.set(e,i(this.container))};_updateOutMode=(t,e,i,s)=>{for(const n of this.updaters.values())n.update(t,s,e,i)}}async function l(t){t.checkVersion("4.0.3"),await t.pluginManager.register(t=>{t.pluginManager.addParticleUpdater("outModes",t=>Promise.resolve(new r(t)))})}const c=globalThis;c.__tsParticlesInternals=c.__tsParticlesInternals??{},c.loadOutModesUpdater=l,t.loadOutModesUpdater=l}),Object.assign(globalThis.window||globalThis,{loadOutModesUpdater:(globalThis.__tsParticlesInternals.updaters.outModes||{}).loadOutModesUpdater}),delete(globalThis.window||globalThis).tsparticlesInternalExports;