@tsparticles/interaction-particles-attract 4.1.3 → 4.2.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.
- package/browser/Attractor.js +2 -5
- package/browser/Options/Classes/Attract.js +5 -11
- package/browser/index.js +1 -1
- package/browser/index.lazy.js +1 -1
- package/cjs/Attractor.js +2 -5
- package/cjs/Options/Classes/Attract.js +5 -11
- package/cjs/index.js +1 -1
- package/cjs/index.lazy.js +1 -1
- package/esm/Attractor.js +2 -5
- package/esm/Options/Classes/Attract.js +5 -11
- package/esm/index.js +1 -1
- package/esm/index.lazy.js +1 -1
- package/package.json +3 -3
- package/report.html +1 -1
- package/tsparticles.interaction.particles.attract.js +7 -16
- package/tsparticles.interaction.particles.attract.min.js +1 -1
package/browser/Attractor.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getDistances, getRangeValue, isNull } from "@tsparticles/engine";
|
|
1
|
+
import { getDistances, getRangeValue, isNull, loadOptionProperty, } from "@tsparticles/engine";
|
|
2
2
|
import { Attract } from "./Options/Classes/Attract.js";
|
|
3
3
|
import { ParticlesInteractorBase } from "@tsparticles/plugin-interactivity";
|
|
4
4
|
const attractFactor = 1000, identity = 1;
|
|
@@ -43,10 +43,7 @@ export class Attractor extends ParticlesInteractorBase {
|
|
|
43
43
|
return particle.options.attract?.enable ?? false;
|
|
44
44
|
}
|
|
45
45
|
loadParticlesOptions(options, ...sources) {
|
|
46
|
-
options
|
|
47
|
-
for (const source of sources) {
|
|
48
|
-
options.attract.load(source?.attract);
|
|
49
|
-
}
|
|
46
|
+
loadOptionProperty(options, "attract", Attract, ...sources);
|
|
50
47
|
}
|
|
51
48
|
reset() {
|
|
52
49
|
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { isNull,
|
|
1
|
+
import { isNull, loadProperty, loadRangeProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class Attract {
|
|
3
|
-
distance;
|
|
4
|
-
enable;
|
|
3
|
+
distance = 200;
|
|
4
|
+
enable = false;
|
|
5
5
|
rotate;
|
|
6
6
|
constructor() {
|
|
7
|
-
this.distance = 200;
|
|
8
|
-
this.enable = false;
|
|
9
7
|
this.rotate = {
|
|
10
8
|
x: 3000,
|
|
11
9
|
y: 3000,
|
|
@@ -15,12 +13,8 @@ export class Attract {
|
|
|
15
13
|
if (isNull(data)) {
|
|
16
14
|
return;
|
|
17
15
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
if (data.enable !== undefined) {
|
|
22
|
-
this.enable = data.enable;
|
|
23
|
-
}
|
|
16
|
+
loadRangeProperty(this, "distance", data.distance);
|
|
17
|
+
loadProperty(this, "enable", data.enable);
|
|
24
18
|
if (data.rotate) {
|
|
25
19
|
const rotateX = data.rotate.x;
|
|
26
20
|
if (rotateX !== undefined) {
|
package/browser/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { Attractor } from "./Attractor.js";
|
|
3
3
|
export async function loadParticlesAttractInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.1
|
|
4
|
+
engine.checkVersion("4.2.1");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("particlesAttract", container => {
|
package/browser/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadParticlesAttractInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.1
|
|
2
|
+
engine.checkVersion("4.2.1");
|
|
3
3
|
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureInteractivityPluginLoaded } = await import("@tsparticles/plugin-interactivity/lazy");
|
|
5
5
|
ensureInteractivityPluginLoaded(e);
|
package/cjs/Attractor.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getDistances, getRangeValue, isNull } from "@tsparticles/engine";
|
|
1
|
+
import { getDistances, getRangeValue, isNull, loadOptionProperty, } from "@tsparticles/engine";
|
|
2
2
|
import { Attract } from "./Options/Classes/Attract.js";
|
|
3
3
|
import { ParticlesInteractorBase } from "@tsparticles/plugin-interactivity";
|
|
4
4
|
const attractFactor = 1000, identity = 1;
|
|
@@ -43,10 +43,7 @@ export class Attractor extends ParticlesInteractorBase {
|
|
|
43
43
|
return particle.options.attract?.enable ?? false;
|
|
44
44
|
}
|
|
45
45
|
loadParticlesOptions(options, ...sources) {
|
|
46
|
-
options
|
|
47
|
-
for (const source of sources) {
|
|
48
|
-
options.attract.load(source?.attract);
|
|
49
|
-
}
|
|
46
|
+
loadOptionProperty(options, "attract", Attract, ...sources);
|
|
50
47
|
}
|
|
51
48
|
reset() {
|
|
52
49
|
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { isNull,
|
|
1
|
+
import { isNull, loadProperty, loadRangeProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class Attract {
|
|
3
|
-
distance;
|
|
4
|
-
enable;
|
|
3
|
+
distance = 200;
|
|
4
|
+
enable = false;
|
|
5
5
|
rotate;
|
|
6
6
|
constructor() {
|
|
7
|
-
this.distance = 200;
|
|
8
|
-
this.enable = false;
|
|
9
7
|
this.rotate = {
|
|
10
8
|
x: 3000,
|
|
11
9
|
y: 3000,
|
|
@@ -15,12 +13,8 @@ export class Attract {
|
|
|
15
13
|
if (isNull(data)) {
|
|
16
14
|
return;
|
|
17
15
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
if (data.enable !== undefined) {
|
|
22
|
-
this.enable = data.enable;
|
|
23
|
-
}
|
|
16
|
+
loadRangeProperty(this, "distance", data.distance);
|
|
17
|
+
loadProperty(this, "enable", data.enable);
|
|
24
18
|
if (data.rotate) {
|
|
25
19
|
const rotateX = data.rotate.x;
|
|
26
20
|
if (rotateX !== undefined) {
|
package/cjs/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { Attractor } from "./Attractor.js";
|
|
3
3
|
export async function loadParticlesAttractInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.1
|
|
4
|
+
engine.checkVersion("4.2.1");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("particlesAttract", container => {
|
package/cjs/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadParticlesAttractInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.1
|
|
2
|
+
engine.checkVersion("4.2.1");
|
|
3
3
|
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureInteractivityPluginLoaded } = await import("@tsparticles/plugin-interactivity/lazy");
|
|
5
5
|
ensureInteractivityPluginLoaded(e);
|
package/esm/Attractor.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getDistances, getRangeValue, isNull } from "@tsparticles/engine";
|
|
1
|
+
import { getDistances, getRangeValue, isNull, loadOptionProperty, } from "@tsparticles/engine";
|
|
2
2
|
import { Attract } from "./Options/Classes/Attract.js";
|
|
3
3
|
import { ParticlesInteractorBase } from "@tsparticles/plugin-interactivity";
|
|
4
4
|
const attractFactor = 1000, identity = 1;
|
|
@@ -43,10 +43,7 @@ export class Attractor extends ParticlesInteractorBase {
|
|
|
43
43
|
return particle.options.attract?.enable ?? false;
|
|
44
44
|
}
|
|
45
45
|
loadParticlesOptions(options, ...sources) {
|
|
46
|
-
options
|
|
47
|
-
for (const source of sources) {
|
|
48
|
-
options.attract.load(source?.attract);
|
|
49
|
-
}
|
|
46
|
+
loadOptionProperty(options, "attract", Attract, ...sources);
|
|
50
47
|
}
|
|
51
48
|
reset() {
|
|
52
49
|
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { isNull,
|
|
1
|
+
import { isNull, loadProperty, loadRangeProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class Attract {
|
|
3
|
-
distance;
|
|
4
|
-
enable;
|
|
3
|
+
distance = 200;
|
|
4
|
+
enable = false;
|
|
5
5
|
rotate;
|
|
6
6
|
constructor() {
|
|
7
|
-
this.distance = 200;
|
|
8
|
-
this.enable = false;
|
|
9
7
|
this.rotate = {
|
|
10
8
|
x: 3000,
|
|
11
9
|
y: 3000,
|
|
@@ -15,12 +13,8 @@ export class Attract {
|
|
|
15
13
|
if (isNull(data)) {
|
|
16
14
|
return;
|
|
17
15
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
if (data.enable !== undefined) {
|
|
22
|
-
this.enable = data.enable;
|
|
23
|
-
}
|
|
16
|
+
loadRangeProperty(this, "distance", data.distance);
|
|
17
|
+
loadProperty(this, "enable", data.enable);
|
|
24
18
|
if (data.rotate) {
|
|
25
19
|
const rotateX = data.rotate.x;
|
|
26
20
|
if (rotateX !== undefined) {
|
package/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { Attractor } from "./Attractor.js";
|
|
3
3
|
export async function loadParticlesAttractInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.1
|
|
4
|
+
engine.checkVersion("4.2.1");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("particlesAttract", container => {
|
package/esm/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadParticlesAttractInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.1
|
|
2
|
+
engine.checkVersion("4.2.1");
|
|
3
3
|
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureInteractivityPluginLoaded } = await import("@tsparticles/plugin-interactivity/lazy");
|
|
5
5
|
ensureInteractivityPluginLoaded(e);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/interaction-particles-attract",
|
|
3
|
-
"version": "4.1
|
|
3
|
+
"version": "4.2.1",
|
|
4
4
|
"description": "tsParticles attract particles interaction",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -93,8 +93,8 @@
|
|
|
93
93
|
"./package.json": "./package.json"
|
|
94
94
|
},
|
|
95
95
|
"peerDependencies": {
|
|
96
|
-
"@tsparticles/engine": "4.1
|
|
97
|
-
"@tsparticles/plugin-interactivity": "4.1
|
|
96
|
+
"@tsparticles/engine": "4.2.1",
|
|
97
|
+
"@tsparticles/plugin-interactivity": "4.2.1"
|
|
98
98
|
},
|
|
99
99
|
"publishConfig": {
|
|
100
100
|
"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.interaction.particles.attract.js","children":[{"name":"dist/browser","children":[{"name":"Options/Classes/Attract.js","uid":"
|
|
4933
|
+
const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.interaction.particles.attract.js","children":[{"name":"dist/browser","children":[{"name":"Options/Classes/Attract.js","uid":"fe095175-1"},{"uid":"fe095175-3","name":"Attractor.js"},{"uid":"fe095175-5","name":"index.js"},{"uid":"fe095175-7","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"fe095175-1":{"renderedLength":812,"gzipLength":0,"brotliLength":0,"metaUid":"fe095175-0"},"fe095175-3":{"renderedLength":2000,"gzipLength":0,"brotliLength":0,"metaUid":"fe095175-2"},"fe095175-5":{"renderedLength":398,"gzipLength":0,"brotliLength":0,"metaUid":"fe095175-4"},"fe095175-7":{"renderedLength":205,"gzipLength":0,"brotliLength":0,"metaUid":"fe095175-6"}},"nodeMetas":{"fe095175-0":{"id":"/dist/browser/Options/Classes/Attract.js","moduleParts":{"tsparticles.interaction.particles.attract.js":"fe095175-1"},"imported":[{"uid":"fe095175-9"}],"importedBy":[{"uid":"fe095175-2"}]},"fe095175-2":{"id":"/dist/browser/Attractor.js","moduleParts":{"tsparticles.interaction.particles.attract.js":"fe095175-3"},"imported":[{"uid":"fe095175-9"},{"uid":"fe095175-0"},{"uid":"fe095175-8"}],"importedBy":[{"uid":"fe095175-4"}]},"fe095175-4":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.interaction.particles.attract.js":"fe095175-5"},"imported":[{"uid":"fe095175-8"},{"uid":"fe095175-2"}],"importedBy":[{"uid":"fe095175-6"}]},"fe095175-6":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.interaction.particles.attract.js":"fe095175-7"},"imported":[{"uid":"fe095175-4"}],"importedBy":[],"isEntry":true},"fe095175-8":{"id":"@tsparticles/plugin-interactivity","moduleParts":{},"imported":[],"importedBy":[{"uid":"fe095175-4"},{"uid":"fe095175-2"}],"isExternal":true},"fe095175-9":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"fe095175-2"},{"uid":"fe095175-0"}],"isExternal":true}},"env":{"rollup":"4.62.0"},"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
|
-
/* Particles Interaction v4.1
|
|
2
|
+
/* Particles Interaction v4.2.1 */
|
|
3
3
|
(function (global, factory) {
|
|
4
4
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@tsparticles/plugin-interactivity'), require('@tsparticles/engine')) :
|
|
5
5
|
typeof define === 'function' && define.amd ? define(['exports', '@tsparticles/plugin-interactivity', '@tsparticles/engine'], factory) :
|
|
@@ -7,12 +7,10 @@
|
|
|
7
7
|
})(this, (function (exports, pluginInteractivity, engine) { 'use strict';
|
|
8
8
|
|
|
9
9
|
class Attract {
|
|
10
|
-
distance;
|
|
11
|
-
enable;
|
|
10
|
+
distance = 200;
|
|
11
|
+
enable = false;
|
|
12
12
|
rotate;
|
|
13
13
|
constructor() {
|
|
14
|
-
this.distance = 200;
|
|
15
|
-
this.enable = false;
|
|
16
14
|
this.rotate = {
|
|
17
15
|
x: 3000,
|
|
18
16
|
y: 3000,
|
|
@@ -22,12 +20,8 @@
|
|
|
22
20
|
if (engine.isNull(data)) {
|
|
23
21
|
return;
|
|
24
22
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
if (data.enable !== undefined) {
|
|
29
|
-
this.enable = data.enable;
|
|
30
|
-
}
|
|
23
|
+
engine.loadRangeProperty(this, "distance", data.distance);
|
|
24
|
+
engine.loadProperty(this, "enable", data.enable);
|
|
31
25
|
if (data.rotate) {
|
|
32
26
|
const rotateX = data.rotate.x;
|
|
33
27
|
if (rotateX !== undefined) {
|
|
@@ -83,17 +77,14 @@
|
|
|
83
77
|
return particle.options.attract?.enable ?? false;
|
|
84
78
|
}
|
|
85
79
|
loadParticlesOptions(options, ...sources) {
|
|
86
|
-
options
|
|
87
|
-
for (const source of sources) {
|
|
88
|
-
options.attract.load(source?.attract);
|
|
89
|
-
}
|
|
80
|
+
engine.loadOptionProperty(options, "attract", Attract, ...sources);
|
|
90
81
|
}
|
|
91
82
|
reset() {
|
|
92
83
|
}
|
|
93
84
|
}
|
|
94
85
|
|
|
95
86
|
async function loadParticlesAttractInteraction(engine) {
|
|
96
|
-
engine.checkVersion("4.1
|
|
87
|
+
engine.checkVersion("4.2.1");
|
|
97
88
|
await engine.pluginManager.register((e) => {
|
|
98
89
|
pluginInteractivity.ensureInteractivityPluginLoaded(e);
|
|
99
90
|
e.pluginManager.addInteractor?.("particlesAttract", 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 s="undefined"!=typeof Proxy?function(t){return new Proxy(t,{get:function(t,s){return s in t||(t[s]={}),t[s]}})}:function(t){return t};t.__tsParticlesInternals.bundles=s(t.__tsParticlesInternals.bundles),t.__tsParticlesInternals.effects=s(t.__tsParticlesInternals.effects),t.__tsParticlesInternals.interactions=s(t.__tsParticlesInternals.interactions),t.__tsParticlesInternals.palettes=s(t.__tsParticlesInternals.palettes),t.__tsParticlesInternals.paths=s(t.__tsParticlesInternals.paths),t.__tsParticlesInternals.plugins=s(t.__tsParticlesInternals.plugins),t.__tsParticlesInternals.plugins.emittersShapes=s(t.__tsParticlesInternals.plugins.emittersShapes),t.__tsParticlesInternals.presets=s(t.__tsParticlesInternals.presets),t.__tsParticlesInternals.shapes=s(t.__tsParticlesInternals.shapes),t.__tsParticlesInternals.updaters=s(t.__tsParticlesInternals.updaters),t.__tsParticlesInternals.utils=s(t.__tsParticlesInternals.utils),t.__tsParticlesInternals.canvas=s(t.__tsParticlesInternals.canvas),t.__tsParticlesInternals.path=s(t.__tsParticlesInternals.path),t.tsparticlesInternalExports=t.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(t,s){"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/plugin-interactivity","@tsparticles/engine"],s):s(((t="undefined"!=typeof globalThis?globalThis:t||self).__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.interactions=t.__tsParticlesInternals.interactions||{},t.__tsParticlesInternals.interactions.particlesAttract=t.__tsParticlesInternals.interactions.particlesAttract||{}),t.__tsParticlesInternals.plugins.interactivity,t.__tsParticlesInternals.engine)}(this,function(t,s,e){"use strict";class a{distance;enable;rotate;constructor(){this.
|
|
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 s="undefined"!=typeof Proxy?function(t){return new Proxy(t,{get:function(t,s){return s in t||(t[s]={}),t[s]}})}:function(t){return t};t.__tsParticlesInternals.bundles=s(t.__tsParticlesInternals.bundles),t.__tsParticlesInternals.effects=s(t.__tsParticlesInternals.effects),t.__tsParticlesInternals.interactions=s(t.__tsParticlesInternals.interactions),t.__tsParticlesInternals.palettes=s(t.__tsParticlesInternals.palettes),t.__tsParticlesInternals.paths=s(t.__tsParticlesInternals.paths),t.__tsParticlesInternals.plugins=s(t.__tsParticlesInternals.plugins),t.__tsParticlesInternals.plugins.emittersShapes=s(t.__tsParticlesInternals.plugins.emittersShapes),t.__tsParticlesInternals.presets=s(t.__tsParticlesInternals.presets),t.__tsParticlesInternals.shapes=s(t.__tsParticlesInternals.shapes),t.__tsParticlesInternals.updaters=s(t.__tsParticlesInternals.updaters),t.__tsParticlesInternals.utils=s(t.__tsParticlesInternals.utils),t.__tsParticlesInternals.canvas=s(t.__tsParticlesInternals.canvas),t.__tsParticlesInternals.path=s(t.__tsParticlesInternals.path),t.tsparticlesInternalExports=t.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(t,s){"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/plugin-interactivity","@tsparticles/engine"],s):s(((t="undefined"!=typeof globalThis?globalThis:t||self).__tsParticlesInternals=t.__tsParticlesInternals||{},t.__tsParticlesInternals.interactions=t.__tsParticlesInternals.interactions||{},t.__tsParticlesInternals.interactions.particlesAttract=t.__tsParticlesInternals.interactions.particlesAttract||{}),t.__tsParticlesInternals.plugins.interactivity,t.__tsParticlesInternals.engine)}(this,function(t,s,e){"use strict";class a{distance=200;enable=!1;rotate;constructor(){this.rotate={x:3e3,y:3e3}}load(t){if(!e.isNull(t)&&(e.loadRangeProperty(this,"distance",t.distance),e.loadProperty(this,"enable",t.enable),t.rotate)){const s=t.rotate.x;void 0!==s&&(this.rotate.x=s);const e=t.rotate.y;void 0!==e&&(this.rotate.y=e)}}}class n extends s.ParticlesInteractorBase{#t;constructor(t){super(t),this.#t=0}get maxDistance(){return this.#t}clear(){}init(){}interact(t){if(!t.options.attract?.enable)return;const s=this.container;if(e.isNull(t.attractDistance)){const a=e.getRangeValue(t.options.attract.distance);a>this.#t&&(this.#t=a),t.attractDistance=a*s.retina.pixelRatio}const a=t.attractDistance,n=t.getPosition(),r=s.particles.grid.queryCircle(n,a);for(const s of r){if(t===s||!s.options.attract?.enable||s.destroyed||s.spawning)continue;const a=s.getPosition(),{dx:r,dy:i}=e.getDistances(n,a),l=t.options.attract.rotate,c=r/(1e3*l.x),_=i/(1e3*l.y),o=s.size.value/t.size.value,P=1/o;t.velocity.x-=c*o,t.velocity.y-=_*o,s.velocity.x+=c*P,s.velocity.y+=_*P}}isEnabled(t){return t.options.attract?.enable??!1}loadParticlesOptions(t,...s){e.loadOptionProperty(t,"attract",a,...s)}reset(){}}async function r(t){t.checkVersion("4.2.1"),await t.pluginManager.register(t=>{s.ensureInteractivityPluginLoaded(t),t.pluginManager.addInteractor?.("particlesAttract",t=>Promise.resolve(new n(t)))})}const i=globalThis;i.__tsParticlesInternals=i.__tsParticlesInternals??{},i.loadParticlesAttractInteraction=r,t.loadParticlesAttractInteraction=r}),Object.assign(globalThis.window||globalThis,{loadParticlesAttractInteraction:(globalThis.__tsParticlesInternals.interactions.particlesAttract||{}).loadParticlesAttractInteraction}),delete(globalThis.window||globalThis).tsparticlesInternalExports;
|