@tsparticles/interaction-external-particle 4.1.3 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/InteractivityParticleMaker.js +2 -5
- package/browser/Options/Classes/InteractivityParticleOptions.js +7 -18
- package/browser/index.js +1 -1
- package/browser/index.lazy.js +1 -1
- package/cjs/InteractivityParticleMaker.js +2 -5
- package/cjs/Options/Classes/InteractivityParticleOptions.js +7 -18
- package/cjs/index.js +1 -1
- package/cjs/index.lazy.js +1 -1
- package/esm/InteractivityParticleMaker.js +2 -5
- package/esm/Options/Classes/InteractivityParticleOptions.js +7 -18
- 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.external.particle.js +9 -23
- package/tsparticles.interaction.external.particle.min.js +1 -1
- package/types/Options/Classes/InteractivityParticleOptions.d.ts +0 -1
- package/types/Options/Classes/InteractivityParticleOptionsData.d.ts +4 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExternalInteractorBase, } from "@tsparticles/plugin-interactivity";
|
|
2
|
-
import { deepExtend, isInArray, safeDocument, } from "@tsparticles/engine";
|
|
2
|
+
import { deepExtend, isInArray, loadOptionProperty, safeDocument, } from "@tsparticles/engine";
|
|
3
3
|
import { InteractivityParticleOptions } from "./Options/Classes/InteractivityParticleOptions.js";
|
|
4
4
|
const particleMode = "particle";
|
|
5
5
|
export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
@@ -96,10 +96,7 @@ export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
|
96
96
|
(mouse.inside && !!mouse.position && isInArray(particleMode, events.onHover.mode))));
|
|
97
97
|
}
|
|
98
98
|
loadModeOptions(options, ...sources) {
|
|
99
|
-
options
|
|
100
|
-
for (const source of sources) {
|
|
101
|
-
options.particle.load(source?.particle);
|
|
102
|
-
}
|
|
99
|
+
loadOptionProperty(options, "particle", InteractivityParticleOptions, ...sources);
|
|
103
100
|
}
|
|
104
101
|
reset() {
|
|
105
102
|
}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import { deepExtend, isNull, } from "@tsparticles/engine";
|
|
1
|
+
import { deepExtend, isNull, loadProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class InteractivityParticleOptions {
|
|
3
3
|
options;
|
|
4
|
-
pauseOnStop;
|
|
5
|
-
replaceCursor;
|
|
6
|
-
stopDelay;
|
|
7
|
-
constructor() {
|
|
8
|
-
this.replaceCursor = false;
|
|
9
|
-
this.pauseOnStop = false;
|
|
10
|
-
this.stopDelay = 0;
|
|
11
|
-
}
|
|
4
|
+
pauseOnStop = false;
|
|
5
|
+
replaceCursor = false;
|
|
6
|
+
stopDelay = 0;
|
|
12
7
|
load(data) {
|
|
13
8
|
if (isNull(data)) {
|
|
14
9
|
return;
|
|
@@ -16,14 +11,8 @@ export class InteractivityParticleOptions {
|
|
|
16
11
|
if (data.options !== undefined) {
|
|
17
12
|
this.options = deepExtend({}, data.options);
|
|
18
13
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (data.pauseOnStop !== undefined) {
|
|
23
|
-
this.pauseOnStop = data.pauseOnStop;
|
|
24
|
-
}
|
|
25
|
-
if (data.stopDelay !== undefined) {
|
|
26
|
-
this.stopDelay = data.stopDelay;
|
|
27
|
-
}
|
|
14
|
+
loadProperty(this, "replaceCursor", data.replaceCursor);
|
|
15
|
+
loadProperty(this, "pauseOnStop", data.pauseOnStop);
|
|
16
|
+
loadProperty(this, "stopDelay", data.stopDelay);
|
|
28
17
|
}
|
|
29
18
|
}
|
package/browser/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { InteractivityParticleMaker } from "./InteractivityParticleMaker.js";
|
|
3
3
|
export async function loadExternalParticleInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.
|
|
4
|
+
engine.checkVersion("4.2.0");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("externalParticle", container => {
|
package/browser/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadExternalParticleInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.
|
|
2
|
+
engine.checkVersion("4.2.0");
|
|
3
3
|
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureInteractivityPluginLoaded } = await import("@tsparticles/plugin-interactivity/lazy");
|
|
5
5
|
ensureInteractivityPluginLoaded(e);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExternalInteractorBase, } from "@tsparticles/plugin-interactivity";
|
|
2
|
-
import { deepExtend, isInArray, safeDocument, } from "@tsparticles/engine";
|
|
2
|
+
import { deepExtend, isInArray, loadOptionProperty, safeDocument, } from "@tsparticles/engine";
|
|
3
3
|
import { InteractivityParticleOptions } from "./Options/Classes/InteractivityParticleOptions.js";
|
|
4
4
|
const particleMode = "particle";
|
|
5
5
|
export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
@@ -96,10 +96,7 @@ export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
|
96
96
|
(mouse.inside && !!mouse.position && isInArray(particleMode, events.onHover.mode))));
|
|
97
97
|
}
|
|
98
98
|
loadModeOptions(options, ...sources) {
|
|
99
|
-
options
|
|
100
|
-
for (const source of sources) {
|
|
101
|
-
options.particle.load(source?.particle);
|
|
102
|
-
}
|
|
99
|
+
loadOptionProperty(options, "particle", InteractivityParticleOptions, ...sources);
|
|
103
100
|
}
|
|
104
101
|
reset() {
|
|
105
102
|
}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import { deepExtend, isNull, } from "@tsparticles/engine";
|
|
1
|
+
import { deepExtend, isNull, loadProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class InteractivityParticleOptions {
|
|
3
3
|
options;
|
|
4
|
-
pauseOnStop;
|
|
5
|
-
replaceCursor;
|
|
6
|
-
stopDelay;
|
|
7
|
-
constructor() {
|
|
8
|
-
this.replaceCursor = false;
|
|
9
|
-
this.pauseOnStop = false;
|
|
10
|
-
this.stopDelay = 0;
|
|
11
|
-
}
|
|
4
|
+
pauseOnStop = false;
|
|
5
|
+
replaceCursor = false;
|
|
6
|
+
stopDelay = 0;
|
|
12
7
|
load(data) {
|
|
13
8
|
if (isNull(data)) {
|
|
14
9
|
return;
|
|
@@ -16,14 +11,8 @@ export class InteractivityParticleOptions {
|
|
|
16
11
|
if (data.options !== undefined) {
|
|
17
12
|
this.options = deepExtend({}, data.options);
|
|
18
13
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (data.pauseOnStop !== undefined) {
|
|
23
|
-
this.pauseOnStop = data.pauseOnStop;
|
|
24
|
-
}
|
|
25
|
-
if (data.stopDelay !== undefined) {
|
|
26
|
-
this.stopDelay = data.stopDelay;
|
|
27
|
-
}
|
|
14
|
+
loadProperty(this, "replaceCursor", data.replaceCursor);
|
|
15
|
+
loadProperty(this, "pauseOnStop", data.pauseOnStop);
|
|
16
|
+
loadProperty(this, "stopDelay", data.stopDelay);
|
|
28
17
|
}
|
|
29
18
|
}
|
package/cjs/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { InteractivityParticleMaker } from "./InteractivityParticleMaker.js";
|
|
3
3
|
export async function loadExternalParticleInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.
|
|
4
|
+
engine.checkVersion("4.2.0");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("externalParticle", container => {
|
package/cjs/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadExternalParticleInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.
|
|
2
|
+
engine.checkVersion("4.2.0");
|
|
3
3
|
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureInteractivityPluginLoaded } = await import("@tsparticles/plugin-interactivity/lazy");
|
|
5
5
|
ensureInteractivityPluginLoaded(e);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExternalInteractorBase, } from "@tsparticles/plugin-interactivity";
|
|
2
|
-
import { deepExtend, isInArray, safeDocument, } from "@tsparticles/engine";
|
|
2
|
+
import { deepExtend, isInArray, loadOptionProperty, safeDocument, } from "@tsparticles/engine";
|
|
3
3
|
import { InteractivityParticleOptions } from "./Options/Classes/InteractivityParticleOptions.js";
|
|
4
4
|
const particleMode = "particle";
|
|
5
5
|
export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
@@ -96,10 +96,7 @@ export class InteractivityParticleMaker extends ExternalInteractorBase {
|
|
|
96
96
|
(mouse.inside && !!mouse.position && isInArray(particleMode, events.onHover.mode))));
|
|
97
97
|
}
|
|
98
98
|
loadModeOptions(options, ...sources) {
|
|
99
|
-
options
|
|
100
|
-
for (const source of sources) {
|
|
101
|
-
options.particle.load(source?.particle);
|
|
102
|
-
}
|
|
99
|
+
loadOptionProperty(options, "particle", InteractivityParticleOptions, ...sources);
|
|
103
100
|
}
|
|
104
101
|
reset() {
|
|
105
102
|
}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import { deepExtend, isNull, } from "@tsparticles/engine";
|
|
1
|
+
import { deepExtend, isNull, loadProperty, } from "@tsparticles/engine";
|
|
2
2
|
export class InteractivityParticleOptions {
|
|
3
3
|
options;
|
|
4
|
-
pauseOnStop;
|
|
5
|
-
replaceCursor;
|
|
6
|
-
stopDelay;
|
|
7
|
-
constructor() {
|
|
8
|
-
this.replaceCursor = false;
|
|
9
|
-
this.pauseOnStop = false;
|
|
10
|
-
this.stopDelay = 0;
|
|
11
|
-
}
|
|
4
|
+
pauseOnStop = false;
|
|
5
|
+
replaceCursor = false;
|
|
6
|
+
stopDelay = 0;
|
|
12
7
|
load(data) {
|
|
13
8
|
if (isNull(data)) {
|
|
14
9
|
return;
|
|
@@ -16,14 +11,8 @@ export class InteractivityParticleOptions {
|
|
|
16
11
|
if (data.options !== undefined) {
|
|
17
12
|
this.options = deepExtend({}, data.options);
|
|
18
13
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (data.pauseOnStop !== undefined) {
|
|
23
|
-
this.pauseOnStop = data.pauseOnStop;
|
|
24
|
-
}
|
|
25
|
-
if (data.stopDelay !== undefined) {
|
|
26
|
-
this.stopDelay = data.stopDelay;
|
|
27
|
-
}
|
|
14
|
+
loadProperty(this, "replaceCursor", data.replaceCursor);
|
|
15
|
+
loadProperty(this, "pauseOnStop", data.pauseOnStop);
|
|
16
|
+
loadProperty(this, "stopDelay", data.stopDelay);
|
|
28
17
|
}
|
|
29
18
|
}
|
package/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ensureInteractivityPluginLoaded } from "@tsparticles/plugin-interactivity";
|
|
2
2
|
import { InteractivityParticleMaker } from "./InteractivityParticleMaker.js";
|
|
3
3
|
export async function loadExternalParticleInteraction(engine) {
|
|
4
|
-
engine.checkVersion("4.
|
|
4
|
+
engine.checkVersion("4.2.0");
|
|
5
5
|
await engine.pluginManager.register((e) => {
|
|
6
6
|
ensureInteractivityPluginLoaded(e);
|
|
7
7
|
e.pluginManager.addInteractor?.("externalParticle", container => {
|
package/esm/index.lazy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export async function loadExternalParticleInteraction(engine) {
|
|
2
|
-
engine.checkVersion("4.
|
|
2
|
+
engine.checkVersion("4.2.0");
|
|
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-external-particle",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.0",
|
|
4
4
|
"description": "tsParticles particle external interaction",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
},
|
|
98
98
|
"type": "module",
|
|
99
99
|
"peerDependencies": {
|
|
100
|
-
"@tsparticles/engine": "4.
|
|
101
|
-
"@tsparticles/plugin-interactivity": "4.
|
|
100
|
+
"@tsparticles/engine": "4.2.0",
|
|
101
|
+
"@tsparticles/plugin-interactivity": "4.2.0"
|
|
102
102
|
}
|
|
103
103
|
}
|
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.external.particle.js","children":[{"name":"dist/browser","children":[{"name":"Options/Classes/InteractivityParticleOptions.js","uid":"
|
|
4933
|
+
const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.interaction.external.particle.js","children":[{"name":"dist/browser","children":[{"name":"Options/Classes/InteractivityParticleOptions.js","uid":"c74dada5-1"},{"uid":"c74dada5-3","name":"InteractivityParticleMaker.js"},{"uid":"c74dada5-5","name":"index.js"},{"uid":"c74dada5-7","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"c74dada5-1":{"renderedLength":598,"gzipLength":0,"brotliLength":0,"metaUid":"c74dada5-0"},"c74dada5-3":{"renderedLength":4332,"gzipLength":0,"brotliLength":0,"metaUid":"c74dada5-2"},"c74dada5-5":{"renderedLength":415,"gzipLength":0,"brotliLength":0,"metaUid":"c74dada5-4"},"c74dada5-7":{"renderedLength":205,"gzipLength":0,"brotliLength":0,"metaUid":"c74dada5-6"}},"nodeMetas":{"c74dada5-0":{"id":"/dist/browser/Options/Classes/InteractivityParticleOptions.js","moduleParts":{"tsparticles.interaction.external.particle.js":"c74dada5-1"},"imported":[{"uid":"c74dada5-9"}],"importedBy":[{"uid":"c74dada5-2"}]},"c74dada5-2":{"id":"/dist/browser/InteractivityParticleMaker.js","moduleParts":{"tsparticles.interaction.external.particle.js":"c74dada5-3"},"imported":[{"uid":"c74dada5-8"},{"uid":"c74dada5-9"},{"uid":"c74dada5-0"}],"importedBy":[{"uid":"c74dada5-4"}]},"c74dada5-4":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.interaction.external.particle.js":"c74dada5-5"},"imported":[{"uid":"c74dada5-8"},{"uid":"c74dada5-2"}],"importedBy":[{"uid":"c74dada5-6"}]},"c74dada5-6":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.interaction.external.particle.js":"c74dada5-7"},"imported":[{"uid":"c74dada5-4"}],"importedBy":[],"isEntry":true},"c74dada5-8":{"id":"@tsparticles/plugin-interactivity","moduleParts":{},"imported":[],"importedBy":[{"uid":"c74dada5-4"},{"uid":"c74dada5-2"}],"isExternal":true},"c74dada5-9":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"c74dada5-2"},{"uid":"c74dada5-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
|
-
/* External Interaction v4.
|
|
2
|
+
/* External Interaction v4.2.0 */
|
|
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) :
|
|
@@ -8,14 +8,9 @@
|
|
|
8
8
|
|
|
9
9
|
class InteractivityParticleOptions {
|
|
10
10
|
options;
|
|
11
|
-
pauseOnStop;
|
|
12
|
-
replaceCursor;
|
|
13
|
-
stopDelay;
|
|
14
|
-
constructor() {
|
|
15
|
-
this.replaceCursor = false;
|
|
16
|
-
this.pauseOnStop = false;
|
|
17
|
-
this.stopDelay = 0;
|
|
18
|
-
}
|
|
11
|
+
pauseOnStop = false;
|
|
12
|
+
replaceCursor = false;
|
|
13
|
+
stopDelay = 0;
|
|
19
14
|
load(data) {
|
|
20
15
|
if (engine.isNull(data)) {
|
|
21
16
|
return;
|
|
@@ -23,15 +18,9 @@
|
|
|
23
18
|
if (data.options !== undefined) {
|
|
24
19
|
this.options = engine.deepExtend({}, data.options);
|
|
25
20
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (data.pauseOnStop !== undefined) {
|
|
30
|
-
this.pauseOnStop = data.pauseOnStop;
|
|
31
|
-
}
|
|
32
|
-
if (data.stopDelay !== undefined) {
|
|
33
|
-
this.stopDelay = data.stopDelay;
|
|
34
|
-
}
|
|
21
|
+
engine.loadProperty(this, "replaceCursor", data.replaceCursor);
|
|
22
|
+
engine.loadProperty(this, "pauseOnStop", data.pauseOnStop);
|
|
23
|
+
engine.loadProperty(this, "stopDelay", data.stopDelay);
|
|
35
24
|
}
|
|
36
25
|
}
|
|
37
26
|
|
|
@@ -130,17 +119,14 @@
|
|
|
130
119
|
(mouse.inside && !!mouse.position && engine.isInArray(particleMode, events.onHover.mode))));
|
|
131
120
|
}
|
|
132
121
|
loadModeOptions(options, ...sources) {
|
|
133
|
-
options
|
|
134
|
-
for (const source of sources) {
|
|
135
|
-
options.particle.load(source?.particle);
|
|
136
|
-
}
|
|
122
|
+
engine.loadOptionProperty(options, "particle", InteractivityParticleOptions, ...sources);
|
|
137
123
|
}
|
|
138
124
|
reset() {
|
|
139
125
|
}
|
|
140
126
|
}
|
|
141
127
|
|
|
142
128
|
async function loadExternalParticleInteraction(engine) {
|
|
143
|
-
engine.checkVersion("4.
|
|
129
|
+
engine.checkVersion("4.2.0");
|
|
144
130
|
await engine.pluginManager.register((e) => {
|
|
145
131
|
pluginInteractivity.ensureInteractivityPluginLoaded(e);
|
|
146
132
|
e.pluginManager.addInteractor?.("externalParticle", 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.externalParticle=t.__tsParticlesInternals.interactions.externalParticle||{}),t.__tsParticlesInternals.plugins.interactivity,t.__tsParticlesInternals.engine)}(this,function(t,s,e){"use strict";class n{options;pauseOnStop;replaceCursor
|
|
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.externalParticle=t.__tsParticlesInternals.interactions.externalParticle||{}),t.__tsParticlesInternals.plugins.interactivity,t.__tsParticlesInternals.engine)}(this,function(t,s,e){"use strict";class n{options;pauseOnStop=!1;replaceCursor=!1;stopDelay=0;load(t){e.isNull(t)||(void 0!==t.options&&(this.options=e.deepExtend({},t.options)),e.loadProperty(this,"replaceCursor",t.replaceCursor),e.loadProperty(this,"pauseOnStop",t.pauseOnStop),e.loadProperty(this,"stopDelay",t.stopDelay))}}const a="particle";class i extends s.ExternalInteractorBase{maxDistance=0;#t;#s;#e;constructor(t){super(t)}clear(){}init(){}interact(t){const s=this.container,n=s.actualOptions;if(!s.retina.reduceFactor)return;const a=t.mouse.position,i=n.interactivity?.modes.particle;if(!i)return;const r=i.pauseOnStop&&(t.mouse.position===this.#s||t.mouse.position?.x===this.#s?.x&&t.mouse.position?.y===this.#s?.y),l=i.stopDelay;if(this.#s=a?{...a}:void 0,this.#s)if(r){if(this.#t)return;this.#t=setTimeout(()=>{if(this.#e){if(i.replaceCursor){const s=t.element;s&&(s instanceof Window||s instanceof Document?e.safeDocument().body.style.cursor="":s.style.cursor="")}this.#e.destroy(!0),this.#e=void 0}},l)}else{if(this.#t&&(clearTimeout(this.#t),this.#t=void 0),!this.#e){const n=e.deepExtend(i.options,{move:{enable:!1}});if(this.#e=s.particles.addParticle(this.#s,n),i.replaceCursor){const s=t.element;s&&(s instanceof Window||s instanceof Document?e.safeDocument().body.style.cursor="none":s.style.cursor="none")}}this.#e&&(this.#e.position.x=this.#s.x,this.#e.position.y=this.#s.y)}}isEnabled(t,s){const n=this.container.actualOptions,i=t.mouse,r=(s?.interactivity??n.interactivity)?.events;return!!r&&(i.clicking&&i.inside&&!!i.position&&e.isInArray(a,r.onClick.mode)||i.inside&&!!i.position&&e.isInArray(a,r.onHover.mode))}loadModeOptions(t,...s){e.loadOptionProperty(t,"particle",n,...s)}reset(){}}async function r(t){t.checkVersion("4.2.0"),await t.pluginManager.register(t=>{s.ensureInteractivityPluginLoaded(t),t.pluginManager.addInteractor?.("externalParticle",t=>Promise.resolve(new i(t)))})}const l=globalThis;l.__tsParticlesInternals=l.__tsParticlesInternals??{},l.loadExternalParticleInteraction=r,t.loadExternalParticleInteraction=r}),Object.assign(globalThis.window||globalThis,{loadExternalParticleInteraction:(globalThis.__tsParticlesInternals.interactions.externalParticle||{}).loadExternalParticleInteraction}),delete(globalThis.window||globalThis).tsparticlesInternalExports;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import type { InteractivityParticleOptions } from "./InteractivityParticleOptions.js";
|
|
1
2
|
import type { Options } from "@tsparticles/engine";
|
|
2
|
-
import type { ParticleMode } from "../../Types.js";
|
|
3
3
|
export type InteractivityParticleOptionsData = Options & {
|
|
4
4
|
interactivity?: {
|
|
5
|
-
modes:
|
|
5
|
+
modes: {
|
|
6
|
+
particle?: InteractivityParticleOptions;
|
|
7
|
+
};
|
|
6
8
|
};
|
|
7
9
|
};
|