@tsparticles/plugin-emitters 4.0.0-beta.1 → 4.0.0-beta.11
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/{815.min.js → 100.min.js} +1 -1
- package/106.min.js +1 -0
- package/443.min.js +1 -0
- package/475.min.js +1 -0
- package/{392.min.js → 515.min.js} +1 -1
- package/746.min.js +1 -0
- package/{414.min.js → 812.min.js} +1 -1
- package/903.min.js +1 -0
- package/README.md +27 -0
- package/browser/EmitterInstance.js +13 -9
- package/browser/addEmittersShapesManager.js +7 -0
- package/browser/ensureEmittersPluginLoaded.js +5 -0
- package/browser/getEmittersInstancesManager.js +15 -0
- package/browser/index.js +5 -24
- package/browser/interaction.js +18 -0
- package/browser/plugin.js +14 -0
- package/cjs/EmitterInstance.js +13 -9
- package/cjs/addEmittersShapesManager.js +7 -0
- package/cjs/ensureEmittersPluginLoaded.js +5 -0
- package/cjs/getEmittersInstancesManager.js +15 -0
- package/cjs/index.js +5 -24
- package/cjs/interaction.js +18 -0
- package/cjs/plugin.js +14 -0
- package/dist_browser_EmitterInstance_js.js +2 -2
- package/dist_browser_EmittersInstancesManager_js.js +1 -1
- package/dist_browser_EmittersInteractor_js.js +1 -1
- package/dist_browser_EmittersPluginInstance_js.js +1 -1
- package/dist_browser_EmittersPlugin_js.js +1 -1
- package/dist_browser_ShapeManager_js.js +1 -1
- package/dist_browser_addEmittersShapesManager_js.js +30 -0
- package/dist_browser_getEmittersInstancesManager_js.js +30 -0
- package/esm/EmitterInstance.js +13 -9
- package/esm/addEmittersShapesManager.js +7 -0
- package/esm/ensureEmittersPluginLoaded.js +5 -0
- package/esm/getEmittersInstancesManager.js +15 -0
- package/esm/index.js +5 -24
- package/esm/interaction.js +18 -0
- package/esm/plugin.js +14 -0
- package/package.json +24 -6
- package/report.html +1 -1
- package/tsparticles.plugin.emitters.js +32 -2
- package/tsparticles.plugin.emitters.min.js +2 -2
- package/types/addEmittersShapesManager.d.ts +2 -0
- package/types/ensureEmittersPluginLoaded.d.ts +2 -0
- package/types/getEmittersInstancesManager.d.ts +3 -0
- package/types/index.d.ts +1 -1
- package/types/interaction.d.ts +9 -0
- package/types/plugin.d.ts +9 -0
- package/399.min.js +0 -1
- package/592.min.js +0 -1
- package/764.min.js +0 -1
- package/umd/EmitterContainer.js +0 -12
- package/umd/EmitterInstance.js +0 -358
- package/umd/EmitterShapeBase.js +0 -30
- package/umd/EmittersEngine.js +0 -12
- package/umd/EmittersInstancesManager.js +0 -119
- package/umd/EmittersInteractor.js +0 -130
- package/umd/EmittersPlugin.js +0 -80
- package/umd/EmittersPluginInstance.js +0 -58
- package/umd/Enums/EmitterClickMode.js +0 -17
- package/umd/IEmitterShape.js +0 -12
- package/umd/IEmitterShapeGenerator.js +0 -12
- package/umd/IRandomPositionData.js +0 -12
- package/umd/Options/Classes/Emitter.js +0 -93
- package/umd/Options/Classes/EmitterLife.js +0 -41
- package/umd/Options/Classes/EmitterRate.js +0 -34
- package/umd/Options/Classes/EmitterShape.js +0 -38
- package/umd/Options/Classes/EmitterShapeReplace.js +0 -34
- package/umd/Options/Classes/EmitterSize.js +0 -39
- package/umd/Options/Classes/EmitterSpawn.js +0 -32
- package/umd/Options/Interfaces/IEmitter.js +0 -12
- package/umd/Options/Interfaces/IEmitterLife.js +0 -12
- package/umd/Options/Interfaces/IEmitterRate.js +0 -12
- package/umd/Options/Interfaces/IEmitterShape.js +0 -12
- package/umd/Options/Interfaces/IEmitterShapeReplace.js +0 -12
- package/umd/Options/Interfaces/IEmitterSize.js +0 -12
- package/umd/Options/Interfaces/IEmitterSpawn.js +0 -12
- package/umd/ShapeManager.js +0 -28
- package/umd/constants.js +0 -17
- package/umd/index.js +0 -79
- package/umd/types.js +0 -12
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Author : Matteo Bruni
|
|
3
|
+
* MIT license: https://opensource.org/licenses/MIT
|
|
4
|
+
* Demo / Generator : https://particles.js.org/
|
|
5
|
+
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
|
+
* How to use? : Check the GitHub README
|
|
7
|
+
* v4.0.0-beta.11
|
|
8
|
+
*/
|
|
9
|
+
"use strict";
|
|
10
|
+
/*
|
|
11
|
+
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
|
|
12
|
+
* This devtool is neither made for production nor for readable output files.
|
|
13
|
+
* It uses "eval()" calls to create a separate source file in the browser devtools.
|
|
14
|
+
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
|
|
15
|
+
* or disable the default devtool with "devtool: false".
|
|
16
|
+
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
|
|
17
|
+
*/
|
|
18
|
+
(this["webpackChunk_tsparticles_plugin_emitters"] = this["webpackChunk_tsparticles_plugin_emitters"] || []).push([["dist_browser_getEmittersInstancesManager_js"],{
|
|
19
|
+
|
|
20
|
+
/***/ "./dist/browser/getEmittersInstancesManager.js"
|
|
21
|
+
/*!*****************************************************!*\
|
|
22
|
+
!*** ./dist/browser/getEmittersInstancesManager.js ***!
|
|
23
|
+
\*****************************************************/
|
|
24
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
|
+
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getEmittersInstancesManager: () => (/* binding */ getEmittersInstancesManager)\n/* harmony export */ });\nconst instancesManagers = new WeakMap();\nfunction getEmittersInstancesManager(e) {\n const pluginManager = e.pluginManager;\n let manager = instancesManagers.get(pluginManager);\n if (!manager) {\n manager = __webpack_require__.e(/*! import() */ \"dist_browser_EmittersInstancesManager_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./EmittersInstancesManager.js */ \"./dist/browser/EmittersInstancesManager.js\")).then(({ EmittersInstancesManager })=>new EmittersInstancesManager(pluginManager)).catch((error)=>{\n instancesManagers.delete(pluginManager);\n throw error;\n });\n instancesManagers.set(pluginManager, manager);\n }\n return manager;\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-emitters/./dist/browser/getEmittersInstancesManager.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ }
|
|
29
|
+
|
|
30
|
+
}]);
|
package/esm/EmitterInstance.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import { AnimatableColor,
|
|
1
|
+
import { AnimatableColor, Paint, PixelMode, Vector, calcPositionOrRandomFromSizeRanged, deepExtend, defaultOpacity, getRangeValue, getSize, hMax, half, isPointInside, itemFromSingleOrMultiple, lMax, millisecondsToSeconds, randomInRangeValue, rangeColorToHsl, sMax, safeDocument, } from "@tsparticles/engine";
|
|
2
2
|
import { Emitter } from "./Options/Classes/Emitter.js";
|
|
3
3
|
import { EmitterSize } from "./Options/Classes/EmitterSize.js";
|
|
4
4
|
const defaultLifeDelay = 0, minLifeCount = 0, defaultSpawnDelay = 0, defaultEmitDelay = 0, defaultLifeCount = -1, defaultColorAnimationFactor = 1, colorFactor = 3.6, defaultStrokeWidth = 1;
|
|
5
5
|
function setParticlesOptionsFillColor(particlesOptions, color, opacity, enable) {
|
|
6
|
-
particlesOptions.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const paint = (particlesOptions.paint ??= new Paint());
|
|
7
|
+
paint.fill = {
|
|
8
|
+
color: AnimatableColor.create(undefined, { value: color }),
|
|
9
|
+
enable,
|
|
10
|
+
opacity,
|
|
11
|
+
};
|
|
10
12
|
}
|
|
11
13
|
function setParticlesOptionsStrokeColor(particlesOptions, color, opacity, width) {
|
|
12
|
-
particlesOptions.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const paint = (particlesOptions.paint ??= new Paint());
|
|
15
|
+
paint.stroke = {
|
|
16
|
+
color: AnimatableColor.create(undefined, { value: color }),
|
|
17
|
+
opacity,
|
|
18
|
+
width,
|
|
19
|
+
};
|
|
16
20
|
}
|
|
17
21
|
export class EmitterInstance {
|
|
18
22
|
fill;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export async function addEmittersShapesManager(e) {
|
|
2
|
+
const { ShapeManager } = await import("./ShapeManager.js"), pluginManager = e.pluginManager;
|
|
3
|
+
pluginManager.emitterShapeManager ??= new ShapeManager();
|
|
4
|
+
pluginManager.addEmitterShapeGenerator ??= (name, generator) => {
|
|
5
|
+
pluginManager.emitterShapeManager?.addShapeGenerator(name, generator);
|
|
6
|
+
};
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const instancesManagers = new WeakMap();
|
|
2
|
+
export function getEmittersInstancesManager(e) {
|
|
3
|
+
const pluginManager = e.pluginManager;
|
|
4
|
+
let manager = instancesManagers.get(pluginManager);
|
|
5
|
+
if (!manager) {
|
|
6
|
+
manager = import("./EmittersInstancesManager.js")
|
|
7
|
+
.then(({ EmittersInstancesManager }) => new EmittersInstancesManager(pluginManager))
|
|
8
|
+
.catch((error) => {
|
|
9
|
+
instancesManagers.delete(pluginManager);
|
|
10
|
+
throw error;
|
|
11
|
+
});
|
|
12
|
+
instancesManagers.set(pluginManager, manager);
|
|
13
|
+
}
|
|
14
|
+
return manager;
|
|
15
|
+
}
|
package/esm/index.js
CHANGED
|
@@ -1,28 +1,9 @@
|
|
|
1
|
+
import { loadEmittersInteraction } from "./interaction.js";
|
|
2
|
+
import { loadEmittersPluginSimple } from "./plugin.js";
|
|
1
3
|
export async function loadEmittersPlugin(engine) {
|
|
2
|
-
engine
|
|
3
|
-
await engine
|
|
4
|
-
const [{ ensureInteractivityPluginLoaded }, { ShapeManager }, { EmittersInstancesManager }, { EmittersPlugin },] = await Promise.all([
|
|
5
|
-
import("@tsparticles/plugin-interactivity"),
|
|
6
|
-
import("./ShapeManager.js"),
|
|
7
|
-
import("./EmittersInstancesManager.js"),
|
|
8
|
-
import("./EmittersPlugin.js"),
|
|
9
|
-
]), pluginManager = e.pluginManager, instancesManager = new EmittersInstancesManager(pluginManager);
|
|
10
|
-
ensureInteractivityPluginLoaded(e);
|
|
11
|
-
pluginManager.emitterShapeManager ??= new ShapeManager();
|
|
12
|
-
pluginManager.addEmitterShapeGenerator ??= (name, generator) => {
|
|
13
|
-
pluginManager.emitterShapeManager?.addShapeGenerator(name, generator);
|
|
14
|
-
};
|
|
15
|
-
pluginManager.addPlugin(new EmittersPlugin(instancesManager));
|
|
16
|
-
pluginManager.addInteractor?.("externalEmitters", async (container) => {
|
|
17
|
-
const { EmittersInteractor } = await import("./EmittersInteractor.js");
|
|
18
|
-
return new EmittersInteractor(instancesManager, container);
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
export function ensureEmittersPluginLoaded(e) {
|
|
23
|
-
if (!e.pluginManager.addEmitterShapeGenerator) {
|
|
24
|
-
throw new Error("tsParticles Emitters Plugin is not loaded");
|
|
25
|
-
}
|
|
4
|
+
await loadEmittersPluginSimple(engine);
|
|
5
|
+
await loadEmittersInteraction(engine);
|
|
26
6
|
}
|
|
7
|
+
export * from "./ensureEmittersPluginLoaded.js";
|
|
27
8
|
export * from "./EmitterShapeBase.js";
|
|
28
9
|
export * from "./Enums/EmitterClickMode.js";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export async function loadEmittersInteraction(engine) {
|
|
2
|
+
engine.checkVersion("4.0.0-beta.11");
|
|
3
|
+
await engine.pluginManager.register(async (e) => {
|
|
4
|
+
const [{ ensureInteractivityPluginLoaded }, { addEmittersShapesManager }, { getEmittersInstancesManager },] = await Promise.all([
|
|
5
|
+
import("@tsparticles/plugin-interactivity"),
|
|
6
|
+
import("./addEmittersShapesManager.js"),
|
|
7
|
+
import("./getEmittersInstancesManager.js"),
|
|
8
|
+
]), instancesManager = await getEmittersInstancesManager(e);
|
|
9
|
+
ensureInteractivityPluginLoaded(e);
|
|
10
|
+
await addEmittersShapesManager(e);
|
|
11
|
+
e.pluginManager.addInteractor?.("externalEmitters", async (container) => {
|
|
12
|
+
const { EmittersInteractor } = await import("./EmittersInteractor.js");
|
|
13
|
+
return new EmittersInteractor(instancesManager, container);
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
export * from "./EmitterShapeBase.js";
|
|
18
|
+
export * from "./Enums/EmitterClickMode.js";
|
package/esm/plugin.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export async function loadEmittersPluginSimple(engine) {
|
|
2
|
+
engine.checkVersion("4.0.0-beta.11");
|
|
3
|
+
await engine.pluginManager.register(async (e) => {
|
|
4
|
+
const [{ addEmittersShapesManager }, { getEmittersInstancesManager }, { EmittersPlugin },] = await Promise.all([
|
|
5
|
+
import("./addEmittersShapesManager.js"),
|
|
6
|
+
import("./getEmittersInstancesManager.js"),
|
|
7
|
+
import("./EmittersPlugin.js"),
|
|
8
|
+
]), instancesManager = await getEmittersInstancesManager(e);
|
|
9
|
+
await addEmittersShapesManager(e);
|
|
10
|
+
e.pluginManager.addPlugin(new EmittersPlugin(instancesManager));
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
export * from "./EmitterShapeBase.js";
|
|
14
|
+
export * from "./Enums/EmitterClickMode.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/plugin-emitters",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.11",
|
|
4
4
|
"description": "tsParticles emitters plugin",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -80,14 +80,32 @@
|
|
|
80
80
|
"browser": "./browser/index.js",
|
|
81
81
|
"import": "./esm/index.js",
|
|
82
82
|
"require": "./cjs/index.js",
|
|
83
|
-
"
|
|
84
|
-
|
|
83
|
+
"default": "./esm/index.js"
|
|
84
|
+
},
|
|
85
|
+
"./interaction": {
|
|
86
|
+
"types": "./types/interaction.d.ts",
|
|
87
|
+
"browser": "./browser/interaction.js",
|
|
88
|
+
"import": "./esm/interaction.js",
|
|
89
|
+
"require": "./cjs/interaction.js",
|
|
90
|
+
"default": "./esm/interaction.js"
|
|
91
|
+
},
|
|
92
|
+
"./plugin": {
|
|
93
|
+
"types": "./types/plugin.d.ts",
|
|
94
|
+
"browser": "./browser/plugin.js",
|
|
95
|
+
"import": "./esm/plugin.js",
|
|
96
|
+
"require": "./cjs/plugin.js",
|
|
97
|
+
"default": "./esm/plugin.js"
|
|
85
98
|
},
|
|
86
99
|
"./package.json": "./package.json"
|
|
87
100
|
},
|
|
88
|
-
"
|
|
89
|
-
"@tsparticles/engine": "4.0.0-beta.
|
|
90
|
-
"@tsparticles/plugin-interactivity": "4.0.0-beta.
|
|
101
|
+
"peerDependencies": {
|
|
102
|
+
"@tsparticles/engine": "4.0.0-beta.11",
|
|
103
|
+
"@tsparticles/plugin-interactivity": "4.0.0-beta.11"
|
|
104
|
+
},
|
|
105
|
+
"peerDependenciesMeta": {
|
|
106
|
+
"@tsparticles/plugin-interactivity": {
|
|
107
|
+
"optional": true
|
|
108
|
+
}
|
|
91
109
|
},
|
|
92
110
|
"publishConfig": {
|
|
93
111
|
"access": "public"
|
package/report.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
-
<title>@tsparticles/plugin-emitters [
|
|
6
|
+
<title>@tsparticles/plugin-emitters [8 Apr 2026 at 17:11]</title>
|
|
7
7
|
<link
|
|
8
8
|
rel="shortcut icon"
|
|
9
9
|
href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII="
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.11
|
|
8
8
|
*/
|
|
9
9
|
/*
|
|
10
10
|
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
|
|
@@ -68,13 +68,43 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
|
|
|
68
68
|
|
|
69
69
|
/***/ },
|
|
70
70
|
|
|
71
|
+
/***/ "./dist/browser/ensureEmittersPluginLoaded.js"
|
|
72
|
+
/*!****************************************************!*\
|
|
73
|
+
!*** ./dist/browser/ensureEmittersPluginLoaded.js ***!
|
|
74
|
+
\****************************************************/
|
|
75
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
76
|
+
|
|
77
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureEmittersPluginLoaded: () => (/* binding */ ensureEmittersPluginLoaded)\n/* harmony export */ });\nfunction ensureEmittersPluginLoaded(e) {\n if (!e.pluginManager.addEmitterShapeGenerator) {\n throw new Error(\"tsParticles Emitters Plugin is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-emitters/./dist/browser/ensureEmittersPluginLoaded.js?\n}");
|
|
78
|
+
|
|
79
|
+
/***/ },
|
|
80
|
+
|
|
71
81
|
/***/ "./dist/browser/index.js"
|
|
72
82
|
/*!*******************************!*\
|
|
73
83
|
!*** ./dist/browser/index.js ***!
|
|
74
84
|
\*******************************/
|
|
75
85
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
76
86
|
|
|
77
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EmitterClickMode: () => (/* reexport safe */
|
|
87
|
+
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_4__.EmitterClickMode),\n/* harmony export */ EmitterShapeBase: () => (/* reexport safe */ _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_3__.EmitterShapeBase),\n/* harmony export */ ensureEmittersPluginLoaded: () => (/* reexport safe */ _ensureEmittersPluginLoaded_js__WEBPACK_IMPORTED_MODULE_2__.ensureEmittersPluginLoaded),\n/* harmony export */ loadEmittersPlugin: () => (/* binding */ loadEmittersPlugin)\n/* harmony export */ });\n/* harmony import */ var _interaction_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./interaction.js */ \"./dist/browser/interaction.js\");\n/* harmony import */ var _plugin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./plugin.js */ \"./dist/browser/plugin.js\");\n/* harmony import */ var _ensureEmittersPluginLoaded_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ensureEmittersPluginLoaded.js */ \"./dist/browser/ensureEmittersPluginLoaded.js\");\n/* harmony import */ var _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./EmitterShapeBase.js */ \"./dist/browser/EmitterShapeBase.js\");\n/* harmony import */ var _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Enums/EmitterClickMode.js */ \"./dist/browser/Enums/EmitterClickMode.js\");\n\n\nasync function loadEmittersPlugin(engine) {\n await (0,_plugin_js__WEBPACK_IMPORTED_MODULE_1__.loadEmittersPluginSimple)(engine);\n await (0,_interaction_js__WEBPACK_IMPORTED_MODULE_0__.loadEmittersInteraction)(engine);\n}\n\n\n\n\n\n//# sourceURL=webpack://@tsparticles/plugin-emitters/./dist/browser/index.js?\n}");
|
|
88
|
+
|
|
89
|
+
/***/ },
|
|
90
|
+
|
|
91
|
+
/***/ "./dist/browser/interaction.js"
|
|
92
|
+
/*!*************************************!*\
|
|
93
|
+
!*** ./dist/browser/interaction.js ***!
|
|
94
|
+
\*************************************/
|
|
95
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
96
|
+
|
|
97
|
+
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_1__.EmitterClickMode),\n/* harmony export */ EmitterShapeBase: () => (/* reexport safe */ _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_0__.EmitterShapeBase),\n/* harmony export */ loadEmittersInteraction: () => (/* binding */ loadEmittersInteraction)\n/* harmony export */ });\n/* harmony import */ var _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmitterShapeBase.js */ \"./dist/browser/EmitterShapeBase.js\");\n/* harmony import */ var _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Enums/EmitterClickMode.js */ \"./dist/browser/Enums/EmitterClickMode.js\");\nasync function loadEmittersInteraction(engine) {\n engine.checkVersion(\"4.0.0-beta.11\");\n await engine.pluginManager.register(async (e)=>{\n const [{ ensureInteractivityPluginLoaded }, { addEmittersShapesManager }, { getEmittersInstancesManager }] = await Promise.all([\n Promise.resolve(/*! import() */).then(__webpack_require__.t.bind(__webpack_require__, /*! @tsparticles/plugin-interactivity */ \"@tsparticles/plugin-interactivity\", 19)),\n __webpack_require__.e(/*! import() */ \"dist_browser_addEmittersShapesManager_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./addEmittersShapesManager.js */ \"./dist/browser/addEmittersShapesManager.js\")),\n __webpack_require__.e(/*! import() */ \"dist_browser_getEmittersInstancesManager_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./getEmittersInstancesManager.js */ \"./dist/browser/getEmittersInstancesManager.js\"))\n ]), instancesManager = await getEmittersInstancesManager(e);\n ensureInteractivityPluginLoaded(e);\n await addEmittersShapesManager(e);\n e.pluginManager.addInteractor?.(\"externalEmitters\", async (container)=>{\n const { EmittersInteractor } = await __webpack_require__.e(/*! import() */ \"dist_browser_EmittersInteractor_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./EmittersInteractor.js */ \"./dist/browser/EmittersInteractor.js\"));\n return new EmittersInteractor(instancesManager, container);\n });\n });\n}\n\n\n\n\n//# sourceURL=webpack://@tsparticles/plugin-emitters/./dist/browser/interaction.js?\n}");
|
|
98
|
+
|
|
99
|
+
/***/ },
|
|
100
|
+
|
|
101
|
+
/***/ "./dist/browser/plugin.js"
|
|
102
|
+
/*!********************************!*\
|
|
103
|
+
!*** ./dist/browser/plugin.js ***!
|
|
104
|
+
\********************************/
|
|
105
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
106
|
+
|
|
107
|
+
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_1__.EmitterClickMode),\n/* harmony export */ EmitterShapeBase: () => (/* reexport safe */ _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_0__.EmitterShapeBase),\n/* harmony export */ loadEmittersPluginSimple: () => (/* binding */ loadEmittersPluginSimple)\n/* harmony export */ });\n/* harmony import */ var _EmitterShapeBase_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./EmitterShapeBase.js */ \"./dist/browser/EmitterShapeBase.js\");\n/* harmony import */ var _Enums_EmitterClickMode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Enums/EmitterClickMode.js */ \"./dist/browser/Enums/EmitterClickMode.js\");\nasync function loadEmittersPluginSimple(engine) {\n engine.checkVersion(\"4.0.0-beta.11\");\n await engine.pluginManager.register(async (e)=>{\n const [{ addEmittersShapesManager }, { getEmittersInstancesManager }, { EmittersPlugin }] = await Promise.all([\n __webpack_require__.e(/*! import() */ \"dist_browser_addEmittersShapesManager_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./addEmittersShapesManager.js */ \"./dist/browser/addEmittersShapesManager.js\")),\n __webpack_require__.e(/*! import() */ \"dist_browser_getEmittersInstancesManager_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./getEmittersInstancesManager.js */ \"./dist/browser/getEmittersInstancesManager.js\")),\n __webpack_require__.e(/*! import() */ \"dist_browser_EmittersPlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./EmittersPlugin.js */ \"./dist/browser/EmittersPlugin.js\"))\n ]), instancesManager = await getEmittersInstancesManager(e);\n await addEmittersShapesManager(e);\n e.pluginManager.addPlugin(new EmittersPlugin(instancesManager));\n });\n}\n\n\n\n\n//# sourceURL=webpack://@tsparticles/plugin-emitters/./dist/browser/plugin.js?\n}");
|
|
78
108
|
|
|
79
109
|
/***/ }
|
|
80
110
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine"));else if("function"==typeof define&&define.amd)define(["@tsparticles/plugin-interactivity","@tsparticles/engine"],t);else{var r="object"==typeof exports?t(require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine")):t(e.window,e.window);for(var i in r)("object"==typeof exports?exports:e)[i]=r[i]}}(this,(e,t)=>(()=>{"use strict";var r,i,n,o,a={303(e){e.exports=t},702(t){t.exports=e}},s={};function l(e){var t=s[e];if(void 0!==t)return t.exports;var r=s[e]={exports:{}};return a[e](r,r.exports,l),r.exports}l.m=a,
|
|
2
|
-
(`+n+": "+o+")",a.name="ChunkLoadError",a.type=n,a.request=o,i[1](a)}},"chunk-"+e,e)}},i=(e,t)=>{var i,n,[o,a,s]=t,
|
|
1
|
+
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine"));else if("function"==typeof define&&define.amd)define(["@tsparticles/plugin-interactivity","@tsparticles/engine"],t);else{var r="object"==typeof exports?t(require("@tsparticles/plugin-interactivity"),require("@tsparticles/engine")):t(e.window,e.window);for(var i in r)("object"==typeof exports?exports:e)[i]=r[i]}}(this,(e,t)=>(()=>{"use strict";var r,i,n,o,a={303(e){e.exports=t},702(t){t.exports=e}},s={};function l(e){var t=s[e];if(void 0!==t)return t.exports;var r=s[e]={exports:{}};return a[e](r,r.exports,l),r.exports}l.m=a,p=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(e,t){if(1&t&&(e=this(e)),8&t||"object"==typeof e&&e&&(4&t&&e.__esModule||16&t&&"function"==typeof e.then))return e;var r=Object.create(null);l.r(r);var i={};c=c||[null,p({}),p([]),p(p)];for(var n=2&t&&e;("object"==typeof n||"function"==typeof n)&&!~c.indexOf(n);n=p(n))Object.getOwnPropertyNames(n).forEach(t=>i[t]=()=>e[t]);return i.default=()=>e,l.d(r,i),r},l.d=(e,t)=>{for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce((t,r)=>(l.f[r](e,t),t),[])),l.u=e=>""+e+".min.js",l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),u={},l.l=(e,t,r,i)=>{if(u[e])return void u[e].push(t);if(void 0!==r)for(var n,o,a=document.getElementsByTagName("script"),s=0;s<a.length;s++){var c=a[s];if(c.getAttribute("src")==e||c.getAttribute("data-webpack")=="@tsparticles/plugin-emitters:"+r){n=c;break}}n||(o=!0,(n=document.createElement("script")).charset="utf-8",l.nc&&n.setAttribute("nonce",l.nc),n.setAttribute("data-webpack","@tsparticles/plugin-emitters:"+r),n.src=e),u[e]=[t];var p=(t,r)=>{n.onerror=n.onload=null,clearTimeout(d);var i=u[e];if(delete u[e],n.parentNode&&n.parentNode.removeChild(n),i&&i.forEach(e=>e(r)),t)return t(r)},d=setTimeout(p.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=p.bind(null,n.onerror),n.onload=p.bind(null,n.onload),o&&document.head.appendChild(n)},l.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.g.importScripts&&(d=l.g.location+"");var c,p,u,d,f=l.g.document;if(!d&&f&&(f.currentScript&&"SCRIPT"===f.currentScript.tagName.toUpperCase()&&(d=f.currentScript.src),!d)){var g=f.getElementsByTagName("script");if(g.length)for(var h=g.length-1;h>-1&&(!d||!/^http(s?):/.test(d));)d=g[h--].src}if(!d)throw Error("Automatic publicPath is not supported in this browser");l.p=d=d.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r={833:0},l.f.j=(e,t)=>{var i=l.o(r,e)?r[e]:void 0;if(0!==i)if(i)t.push(i[2]);else{var n=new Promise((t,n)=>i=r[e]=[t,n]);t.push(i[2]=n);var o=l.p+l.u(e),a=Error();l.l(o,t=>{if(l.o(r,e)&&(0!==(i=r[e])&&(r[e]=void 0),i)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;a.message="Loading chunk "+e+` failed.
|
|
2
|
+
(`+n+": "+o+")",a.name="ChunkLoadError",a.type=n,a.request=o,i[1](a)}},"chunk-"+e,e)}},i=(e,t)=>{var i,n,[o,a,s]=t,c=0;if(o.some(e=>0!==r[e])){for(i in a)l.o(a,i)&&(l.m[i]=a[i]);s&&s(l)}for(e&&e(t);c<o.length;c++)n=o[c],l.o(r,n)&&r[n]&&r[n][0](),r[n]=0},(n=this.webpackChunk_tsparticles_plugin_emitters=this.webpackChunk_tsparticles_plugin_emitters||[]).forEach(i.bind(null,0)),n.push=i.bind(null,n.push.bind(n));var b={};async function m(e){e.checkVersion("4.0.0-beta.11"),await e.pluginManager.register(async e=>{let[{ensureInteractivityPluginLoaded:t},{addEmittersShapesManager:r},{getEmittersInstancesManager:i}]=await Promise.all([Promise.resolve().then(l.t.bind(l,702,19)),l.e(106).then(l.bind(l,106)),l.e(903).then(l.bind(l,903))]),n=await i(e);t(e),await r(e),e.pluginManager.addInteractor?.("externalEmitters",async e=>{let{EmittersInteractor:t}=await l.e(812).then(l.bind(l,812));return new t(n,e)})})}async function y(e){e.checkVersion("4.0.0-beta.11"),await e.pluginManager.register(async e=>{let[{addEmittersShapesManager:t},{getEmittersInstancesManager:r},{EmittersPlugin:i}]=await Promise.all([l.e(106).then(l.bind(l,106)),l.e(903).then(l.bind(l,903)),l.e(515).then(l.bind(l,515))]),n=await r(e);await t(e),e.pluginManager.addPlugin(new i(n))})}function v(e){if(!e.pluginManager.addEmitterShapeGenerator)throw Error("tsParticles Emitters Plugin is not loaded")}l.r(b),l.d(b,{EmitterClickMode:()=>o,EmitterShapeBase:()=>w,ensureEmittersPluginLoaded:()=>v,loadEmittersPlugin:()=>j});class w{fill;options;position;size;constructor(e,t,r,i){this.position=e,this.size=t,this.fill=r,this.options=i}resize(e,t){this.position=e,this.size=t}}async function j(e){await y(e),await m(e)}return(o||(o={})).emitter="emitter",b})());
|
package/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { EmittersEngine } from "./EmittersEngine.js";
|
|
2
2
|
export declare function loadEmittersPlugin(engine: EmittersEngine): Promise<void>;
|
|
3
|
-
export
|
|
3
|
+
export * from "./ensureEmittersPluginLoaded.js";
|
|
4
4
|
export type * from "./EmitterContainer.js";
|
|
5
5
|
export * from "./EmitterShapeBase.js";
|
|
6
6
|
export type * from "./EmittersEngine.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EmittersEngine } from "./EmittersEngine.js";
|
|
2
|
+
export declare function loadEmittersInteraction(engine: EmittersEngine): Promise<void>;
|
|
3
|
+
export type * from "./EmitterContainer.js";
|
|
4
|
+
export * from "./EmitterShapeBase.js";
|
|
5
|
+
export type * from "./EmittersEngine.js";
|
|
6
|
+
export type * from "./IEmitterShape.js";
|
|
7
|
+
export type * from "./IEmitterShapeGenerator.js";
|
|
8
|
+
export * from "./Enums/EmitterClickMode.js";
|
|
9
|
+
export type * from "./IRandomPositionData.js";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EmittersEngine } from "./EmittersEngine.js";
|
|
2
|
+
export declare function loadEmittersPluginSimple(engine: EmittersEngine): Promise<void>;
|
|
3
|
+
export type * from "./EmitterContainer.js";
|
|
4
|
+
export * from "./EmitterShapeBase.js";
|
|
5
|
+
export type * from "./EmittersEngine.js";
|
|
6
|
+
export type * from "./IEmitterShape.js";
|
|
7
|
+
export type * from "./IEmitterShapeGenerator.js";
|
|
8
|
+
export * from "./Enums/EmitterClickMode.js";
|
|
9
|
+
export type * from "./IRandomPositionData.js";
|
package/399.min.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(this.webpackChunk_tsparticles_plugin_emitters=this.webpackChunk_tsparticles_plugin_emitters||[]).push([[399],{399(t,i,e){e.d(i,{EmitterInstance:()=>r});var s=e(303),o=e(565),a=e(143);let n=1;function l(t,i,e,o){t.fill=new s.Fill,t.fill.color=s.AnimatableColor.create(void 0,{value:i}),t.fill.enable=o,t.fill.opacity=e}class r{fill;name;options;position;size;spawnFillColor;spawnFillEnabled;spawnFillOpacity;spawnStrokeColor;spawnStrokeOpacity;spawnStrokeWidth;_container;_currentDuration;_currentEmitDelay;_currentSpawnDelay;_duration;_emitDelay;_firstSpawn;_immortal;_initialPosition;_lifeCount;_mutationObserver;_particlesOptions;_paused;_pluginManager;_removeCallback;_resizeObserver;_shape;_size;_spawnDelay;_startParticlesAdded;constructor(t,i,e,a,n){this._pluginManager=t,this._container=i,this._removeCallback=e,this._currentDuration=0,this._currentEmitDelay=0,this._currentSpawnDelay=0,this._initialPosition=n,a instanceof o.v?this.options=a:(this.options=new o.v,this.options.load(a)),this._spawnDelay=i.retina.reduceFactor?(0,s.getRangeValue)(this.options.life.delay??0)*s.millisecondsToSeconds/i.retina.reduceFactor:1/0,this.position=this._initialPosition??this._calcPosition(),this.name=this.options.name,this.fill=this.options.fill,this._firstSpawn=!this.options.life.wait,this._startParticlesAdded=!1;const l=(0,s.deepExtend)({},this.options.particles);if(l.move??={},l.move.direction??=this.options.direction,this.options.spawn.fill?.color&&(this.spawnFillColor=(0,s.rangeColorToHsl)(this._pluginManager,this.options.spawn.fill.color)),this.options.spawn.stroke?.color&&(this.spawnStrokeColor=(0,s.rangeColorToHsl)(this._pluginManager,this.options.spawn.stroke.color)),this._paused=!this.options.autoPlay,this._particlesOptions=l,this._size=this._calcSize(),this.size=(0,s.getSize)(this._size,this._container.canvas.size),this._lifeCount=this.options.life.count??-1,this._immortal=this._lifeCount<=0,this.options.domId){const t=(0,s.safeDocument)().getElementById(this.options.domId);t&&(this._mutationObserver=new MutationObserver(()=>{this.resize()}),this._resizeObserver=new ResizeObserver(()=>{this.resize()}),this._mutationObserver.observe(t,{attributes:!0,attributeFilter:["style","width","height"]}),this._resizeObserver.observe(t))}const r=this.options.shape,h=this._pluginManager.emitterShapeManager?.getShapeGenerator(r.type);h&&(this._shape=h.generate(this._container,this.position,this.size,this.fill,r.options)),this._container.dispatchEvent("emitterCreated",{emitter:this}),this.play()}externalPause(){this._paused=!0,this.pause()}externalPlay(){this._paused=!1,this.play()}async init(){await this._shape?.init()}pause(){this._paused||delete this._emitDelay}play(){if(this._paused||!((this._lifeCount>0||this._immortal||!this.options.life.count)&&(this._firstSpawn||this._currentSpawnDelay>=(this._spawnDelay??0))))return;let t=this._container;if(void 0===this._emitDelay){let i=(0,s.getRangeValue)(this.options.rate.delay);this._emitDelay=t.retina.reduceFactor?i*s.millisecondsToSeconds/t.retina.reduceFactor:1/0}(this._lifeCount>0||this._immortal)&&this._prepareToDie()}resize(){let t=this._initialPosition,i=this._container;this.position=t&&(0,s.isPointInside)(t,i.canvas.size,s.Vector.origin)?t:this._calcPosition(),this._size=this._calcSize(),this.size=(0,s.getSize)(this._size,i.canvas.size),this._shape?.resize(this.position,this.size)}update(t){if(this._paused)return;let i=this._container;this._firstSpawn&&(this._firstSpawn=!1,this._currentSpawnDelay=this._spawnDelay??0,this._currentEmitDelay=this._emitDelay??0),this._startParticlesAdded||(this._startParticlesAdded=!0,this._emitParticles(this.options.startCount)),void 0!==this._duration&&(this._currentDuration+=t.value,this._currentDuration>=this._duration&&(this.pause(),void 0!==this._spawnDelay&&delete this._spawnDelay,!this._immortal&&this._lifeCount--,this._lifeCount>0||this._immortal?(this.position=this._calcPosition(),this._shape?.resize(this.position,this.size),this._spawnDelay=i.retina.reduceFactor?(0,s.getRangeValue)(this.options.life.delay??0)*s.millisecondsToSeconds/i.retina.reduceFactor:1/0):this._destroy(),this._currentDuration-=this._duration,delete this._duration)),void 0!==this._spawnDelay&&(this._currentSpawnDelay+=t.value,this._currentSpawnDelay>=this._spawnDelay&&(this._container.dispatchEvent("emitterPlay"),this.play(),this._currentSpawnDelay-=this._spawnDelay,delete this._spawnDelay)),void 0!==this._emitDelay&&(this._currentEmitDelay+=t.value,this._currentEmitDelay>=this._emitDelay&&(this._emit(),this._currentEmitDelay-=this._emitDelay))}_calcPosition(){let t=this._container;if(this.options.domId){let i=(0,s.safeDocument)().getElementById(this.options.domId);if(i){let e=i.getBoundingClientRect(),o=t.retina.pixelRatio;return{x:(e.x+e.width*s.half)*o,y:(e.y+e.height*s.half)*o}}}return(0,s.calcPositionOrRandomFromSizeRanged)({size:t.canvas.size,position:this.options.position})}_calcSize(){let t,i=this._container;if(this.options.domId){let t=(0,s.safeDocument)().getElementById(this.options.domId);if(t){let e=t.getBoundingClientRect();return{width:e.width*i.retina.pixelRatio,height:e.height*i.retina.pixelRatio,mode:s.PixelMode.precise}}}return this.options.size??((t=new a.G).load({height:0,mode:s.PixelMode.percent,width:0}),t)}_destroy=()=>{this._mutationObserver?.disconnect(),this._mutationObserver=void 0,this._resizeObserver?.disconnect(),this._resizeObserver=void 0,this._removeCallback(this),this._container.dispatchEvent("emitterDestroyed",{emitter:this})};_emit(){if(this._paused)return;let t=(0,s.getRangeValue)(this.options.rate.quantity);this._emitParticles(t)}_emitParticles(t){let i=(0,s.itemFromSingleOrMultiple)(this._particlesOptions)??{},e=this.options.spawn.fill?.color.animation,o=this.options.spawn.fill?.enable??!!this.options.spawn.fill?.color,a=this.options.spawn.fill?.opacity===void 0?s.defaultOpacity:(0,s.getRangeValue)(this.options.spawn.fill.opacity),n=this.options.spawn.stroke?.color?.animation,r=this.options.spawn.stroke?.opacity===void 0?s.defaultOpacity:(0,s.getRangeValue)(this.options.spawn.stroke.opacity),h=this.options.spawn.stroke?.width===void 0?1:(0,s.getRangeValue)(this.options.spawn.stroke.width),p=this._container.retina.reduceFactor,c=!!e,_=!!n,d=!!this._shape,u=c||_,m=u||d,w=u?{h:s.hMax,s:s.sMax,l:s.lMax}:null,y=this.options.shape;for(let c=0;c<t*p;c++){let t=m?(0,s.deepExtend)({},i):i;if(this.spawnFillOpacity=a,this.spawnFillEnabled=o,this.spawnStrokeOpacity=r,this.spawnStrokeWidth=h,this.spawnFillColor&&(e&&w&&(this.spawnFillColor.h=this._setColorAnimation(e.h,this.spawnFillColor.h,w.h,3.6),this.spawnFillColor.s=this._setColorAnimation(e.s,this.spawnFillColor.s,w.s),this.spawnFillColor.l=this._setColorAnimation(e.l,this.spawnFillColor.l,w.l)),l(t,this.spawnFillColor,this.spawnFillOpacity,this.spawnFillEnabled)),this.spawnStrokeColor){var f,g,v;n&&w&&(this.spawnStrokeColor.h=this._setColorAnimation(n.h,this.spawnStrokeColor.h,w.h,3.6),this.spawnStrokeColor.s=this._setColorAnimation(n.s,this.spawnStrokeColor.s,w.s),this.spawnStrokeColor.l=this._setColorAnimation(n.l,this.spawnStrokeColor.l,w.l)),f=this.spawnStrokeColor,g=this.spawnStrokeOpacity,v=this.spawnStrokeWidth,t.stroke=new s.Stroke,t.stroke.color=s.AnimatableColor.create(void 0,{value:f}),t.stroke.opacity=g,t.stroke.width=v}let p=this.position;if(this._shape){let i=this._shape.randomPosition();if(i){p=i.position;let e=y.replace;e.color&&i.color&&l(t,i.color,e.opacity?i.opacity??s.defaultOpacity:s.defaultOpacity,!0)}else p=null}p&&this._container.particles.addParticle(p,t)}}_prepareToDie=()=>{if(this._paused)return;let t=void 0!==this.options.life.duration?(0,s.getRangeValue)(this.options.life.duration):void 0;(this._lifeCount>0||this._immortal)&&void 0!==t&&t>0&&(this._duration=t*s.millisecondsToSeconds)};_setColorAnimation=(t,i,e,o=n)=>{let a=this._container;if(!t.enable)return i;let l=(0,s.randomInRangeValue)(t.offset),r=(0,s.getRangeValue)(this.options.rate.delay),h=a.retina.reduceFactor?r*s.millisecondsToSeconds/a.retina.reduceFactor:1/0;return(i+(0,s.getRangeValue)(t.speed)*a.fpsLimit/h+l*o)%e}}}}]);
|
package/592.min.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(this.webpackChunk_tsparticles_plugin_emitters=this.webpackChunk_tsparticles_plugin_emitters||[]).push([[592],{592(e,t,r){r.r(t),r.d(t,{ShapeManager:()=>s});let a=new Map;class s{addShapeGenerator(e,t){this.getShapeGenerator(e)||a.set(e,t)}getShapeGenerator(e){return a.get(e)}getSupportedShapeGenerators(){return a.keys()}}}}]);
|
package/764.min.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(this.webpackChunk_tsparticles_plugin_emitters=this.webpackChunk_tsparticles_plugin_emitters||[]).push([[764],{764(t,i,e){e.r(i),e.d(i,{EmittersInstancesManager:()=>a});var s=e(303),o=e(565);class a{_containerArrays;_pluginManager;constructor(t){this._containerArrays=new Map,this._pluginManager=t}async addEmitter(t,i,s){let a=new o.v;a.load(i);let{EmitterInstance:l}=await e.e(399).then(e.bind(e,399)),r=new l(this._pluginManager,t,i=>{this.removeEmitter(t,i)},a,s);return await r.init(),this.getArray(t).push(r),r}clear(t){this.initContainer(t),this._containerArrays.set(t,[])}getArray(t){this.initContainer(t);let i=this._containerArrays.get(t);return i||(i=[],this._containerArrays.set(t,i)),i}initContainer(t){this._containerArrays.has(t)||(this._containerArrays.set(t,[]),t.getEmitter=i=>{let e=this.getArray(t);return void 0===i||(0,s.isNumber)(i)?e[i??0]:e.find(t=>t.name===i)},t.addEmitter=async(i,e)=>this.addEmitter(t,i,e),t.removeEmitter=i=>{let e=t.getEmitter?.(i);e&&this.removeEmitter(t,e)},t.playEmitter=i=>{let e=t.getEmitter?.(i);e&&e.externalPlay()},t.pauseEmitter=i=>{let e=t.getEmitter?.(i);e&&e.externalPause()})}removeEmitter(t,i){let e=this.getArray(t).indexOf(i);e>=0&&this.getArray(t).splice(e,1)}}},565(t,i,e){e.d(i,{v:()=>d});var s=e(303);class o{count;delay;duration;wait;constructor(){this.wait=!1}load(t){(0,s.isNull)(t)||(void 0!==t.count&&(this.count=t.count),void 0!==t.delay&&(this.delay=(0,s.setRangeValue)(t.delay)),void 0!==t.duration&&(this.duration=(0,s.setRangeValue)(t.duration)),void 0!==t.wait&&(this.wait=t.wait))}}class a{delay;quantity;constructor(){this.quantity=1,this.delay=.1}load(t){(0,s.isNull)(t)||(void 0!==t.quantity&&(this.quantity=(0,s.setRangeValue)(t.quantity)),void 0!==t.delay&&(this.delay=(0,s.setRangeValue)(t.delay)))}}class l{color;opacity;constructor(){this.color=!1,this.opacity=!1}load(t){(0,s.isNull)(t)||(void 0!==t.color&&(this.color=t.color),void 0!==t.opacity&&(this.opacity=t.opacity))}}class r{options;replace;type;constructor(){this.options={},this.replace=new l,this.type="square"}load(t){(0,s.isNull)(t)||(void 0!==t.options&&(this.options=(0,s.deepExtend)({},t.options??{})),this.replace.load(t.replace),void 0!==t.type&&(this.type=t.type))}}var n=e(143);class h{fill;stroke;load(t){!(0,s.isNull)(t)&&(t.fill&&(this.fill??=new s.Fill,this.fill.load(t.fill)),t.stroke&&(this.stroke??=new s.Stroke,this.stroke.load(t.stroke)))}}class d{autoPlay;direction;domId;fill;life;name;particles;position;rate;shape;size;spawn;spawnFillColor;spawnStrokeColor;startCount;constructor(){this.autoPlay=!0,this.fill=!0,this.life=new o,this.rate=new a,this.shape=new r,this.spawn=new h,this.startCount=0}load(t){(0,s.isNull)(t)||(void 0!==t.autoPlay&&(this.autoPlay=t.autoPlay),void 0!==t.size&&(this.size??=new n.G,this.size.load(t.size)),void 0!==t.direction&&(this.direction=t.direction),this.domId=t.domId,void 0!==t.fill&&(this.fill=t.fill),this.life.load(t.life),this.name=t.name,this.particles=(0,s.executeOnSingleOrMultiple)(t.particles,t=>(0,s.deepExtend)({},t)),this.rate.load(t.rate),this.shape.load(t.shape),this.spawn.load(t.spawn),void 0!==t.position&&(this.position={},void 0!==t.position.x&&(this.position.x=(0,s.setRangeValue)(t.position.x)),void 0!==t.position.y&&(this.position.y=(0,s.setRangeValue)(t.position.y))),void 0!==t.spawnFillColor&&(this.spawnFillColor??=new s.AnimatableColor,this.spawnFillColor.load(t.spawnFillColor)),void 0!==t.spawnStrokeColor&&(this.spawnStrokeColor??=new s.AnimatableColor,this.spawnStrokeColor.load(t.spawnStrokeColor)),void 0!==t.startCount&&(this.startCount=t.startCount))}}},143(t,i,e){e.d(i,{G:()=>o});var s=e(303);class o{height;mode;width;constructor(){this.mode=s.PixelMode.percent,this.height=0,this.width=0}load(t){(0,s.isNull)(t)||(void 0!==t.mode&&(this.mode=t.mode),void 0!==t.height&&(this.height=t.height),void 0!==t.width&&(this.width=t.width))}}}}]);
|
package/umd/EmitterContainer.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
(function (factory) {
|
|
2
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
-
var v = factory(require, exports);
|
|
4
|
-
if (v !== undefined) module.exports = v;
|
|
5
|
-
}
|
|
6
|
-
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports"], factory);
|
|
8
|
-
}
|
|
9
|
-
})(function (require, exports) {
|
|
10
|
-
"use strict";
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
});
|