@tsparticles/updater-wobble 3.2.1 → 3.3.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/497.min.js ADDED
@@ -0,0 +1,2 @@
1
+ /*! For license information please see 497.min.js.LICENSE.txt */
2
+ (this.webpackChunk_tsparticles_updater_wobble=this.webpackChunk_tsparticles_updater_wobble||[]).push([[497],{497:(e,a,n)=>{n.d(a,{WobbleUpdater:()=>d});var s=n(303);class t{constructor(){this.angle=50,this.move=10}load(e){e&&(void 0!==e.angle&&(this.angle=(0,s.setRangeValue)(e.angle)),void 0!==e.move&&(this.move=(0,s.setRangeValue)(e.move)))}}class o{constructor(){this.distance=5,this.enable=!1,this.speed=new t}load(e){if(e&&(void 0!==e.distance&&(this.distance=(0,s.setRangeValue)(e.distance)),void 0!==e.enable&&(this.enable=e.enable),void 0!==e.speed))if((0,s.isNumber)(e.speed))this.speed.load({angle:e.speed});else{const a=e.speed;void 0!==a.min?this.speed.load({angle:a}):this.speed.load(e.speed)}}}const l=2*Math.PI;const i=2*Math.PI;class d{constructor(e){this.container=e}init(e){const a=e.options.wobble;e.wobble=a?.enable?{angle:(0,s.getRandom)()*i,angleSpeed:(0,s.getRangeValue)(a.speed.angle)/360,moveSpeed:(0,s.getRangeValue)(a.speed.move)/10}:{angle:0,angleSpeed:0,moveSpeed:0},e.retina.wobbleDistance=(0,s.getRangeValue)(a?.distance??0)*this.container.retina.pixelRatio}isEnabled(e){return!e.destroyed&&!e.spawning&&!!e.options.wobble?.enable}loadOptions(e,...a){e.wobble||(e.wobble=new o);for(const n of a)e.wobble.load(n?.wobble)}update(e,a){this.isEnabled(e)&&function(e,a){const{wobble:n}=e.options,{wobble:t}=e;if(!n?.enable||!t)return;const o=t.angleSpeed*a.factor,i=t.moveSpeed*a.factor*((e.retina.wobbleDistance??0)*a.factor)/(s.millisecondsToSeconds/60),d=l,{position:b}=e;t.angle+=o,t.angle>d&&(t.angle-=d),b.x+=i*Math.cos(t.angle),b.y+=i*Math.abs(Math.sin(t.angle))}(e,a)}}}}]);
@@ -0,0 +1 @@
1
+ /*! tsParticles Wobble Updater v3.3.0 by Matteo Bruni */
@@ -1,11 +1,12 @@
1
1
  import { getRandom, getRangeValue, } from "@tsparticles/engine";
2
2
  import { Wobble } from "./Options/Classes/Wobble.js";
3
+ import { updateWobble } from "./Utils.js";
3
4
  const double = 2, doublePI = Math.PI * double, maxAngle = 360, moveSpeedFactor = 10, defaultDistance = 0;
4
5
  export class WobbleUpdater {
5
6
  constructor(container) {
6
7
  this.container = container;
7
8
  }
8
- async init(particle) {
9
+ init(particle) {
9
10
  const wobbleOpt = particle.options.wobble;
10
11
  if (wobbleOpt?.enable) {
11
12
  particle.wobble = {
@@ -23,7 +24,6 @@ export class WobbleUpdater {
23
24
  }
24
25
  particle.retina.wobbleDistance =
25
26
  getRangeValue(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;
26
- await Promise.resolve();
27
27
  }
28
28
  isEnabled(particle) {
29
29
  return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;
@@ -36,11 +36,10 @@ export class WobbleUpdater {
36
36
  options.wobble.load(source?.wobble);
37
37
  }
38
38
  }
39
- async update(particle, delta) {
39
+ update(particle, delta) {
40
40
  if (!this.isEnabled(particle)) {
41
41
  return;
42
42
  }
43
- const { updateWobble } = await import("./Utils.js");
44
43
  updateWobble(particle, delta);
45
44
  }
46
45
  }
@@ -1,37 +1,15 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
3
  exports.WobbleUpdater = void 0;
27
4
  const engine_1 = require("@tsparticles/engine");
28
5
  const Wobble_js_1 = require("./Options/Classes/Wobble.js");
6
+ const Utils_js_1 = require("./Utils.js");
29
7
  const double = 2, doublePI = Math.PI * double, maxAngle = 360, moveSpeedFactor = 10, defaultDistance = 0;
30
8
  class WobbleUpdater {
31
9
  constructor(container) {
32
10
  this.container = container;
33
11
  }
34
- async init(particle) {
12
+ init(particle) {
35
13
  const wobbleOpt = particle.options.wobble;
36
14
  if (wobbleOpt?.enable) {
37
15
  particle.wobble = {
@@ -49,7 +27,6 @@ class WobbleUpdater {
49
27
  }
50
28
  particle.retina.wobbleDistance =
51
29
  (0, engine_1.getRangeValue)(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;
52
- await Promise.resolve();
53
30
  }
54
31
  isEnabled(particle) {
55
32
  return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;
@@ -62,12 +39,11 @@ class WobbleUpdater {
62
39
  options.wobble.load(source?.wobble);
63
40
  }
64
41
  }
65
- async update(particle, delta) {
42
+ update(particle, delta) {
66
43
  if (!this.isEnabled(particle)) {
67
44
  return;
68
45
  }
69
- const { updateWobble } = await Promise.resolve().then(() => __importStar(require("./Utils.js")));
70
- updateWobble(particle, delta);
46
+ (0, Utils_js_1.updateWobble)(particle, delta);
71
47
  }
72
48
  }
73
49
  exports.WobbleUpdater = WobbleUpdater;
package/cjs/index.js CHANGED
@@ -1,32 +1,9 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
3
  exports.loadWobbleUpdater = void 0;
27
4
  async function loadWobbleUpdater(engine, refresh = true) {
28
5
  await engine.addParticleUpdater("wobble", async (container) => {
29
- const { WobbleUpdater } = await Promise.resolve().then(() => __importStar(require("./WobbleUpdater.js")));
6
+ const { WobbleUpdater } = await import("./WobbleUpdater.js");
30
7
  return new WobbleUpdater(container);
31
8
  }, refresh);
32
9
  }
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v3.2.1
7
+ * v3.3.0
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -37,13 +37,23 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
37
37
 
38
38
  /***/ }),
39
39
 
40
+ /***/ "./dist/browser/Utils.js":
41
+ /*!*******************************!*\
42
+ !*** ./dist/browser/Utils.js ***!
43
+ \*******************************/
44
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
45
+
46
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ updateWobble: () => (/* binding */ updateWobble)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__);\n\nconst defaultDistance = 0,\n double = 2,\n doublePI = Math.PI * double,\n distanceFactor = 60;\nfunction updateWobble(particle, delta) {\n const {\n wobble: wobbleOptions\n } = particle.options,\n {\n wobble\n } = particle;\n if (!wobbleOptions?.enable || !wobble) {\n return;\n }\n const angleSpeed = wobble.angleSpeed * delta.factor,\n moveSpeed = wobble.moveSpeed * delta.factor,\n distance = moveSpeed * ((particle.retina.wobbleDistance ?? defaultDistance) * delta.factor) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.millisecondsToSeconds / distanceFactor),\n max = doublePI,\n {\n position\n } = particle;\n wobble.angle += angleSpeed;\n if (wobble.angle > max) {\n wobble.angle -= max;\n }\n position.x += distance * Math.cos(wobble.angle);\n position.y += distance * Math.abs(Math.sin(wobble.angle));\n}\n\n//# sourceURL=webpack://@tsparticles/updater-wobble/./dist/browser/Utils.js?");
47
+
48
+ /***/ }),
49
+
40
50
  /***/ "./dist/browser/WobbleUpdater.js":
41
51
  /*!***************************************!*\
42
52
  !*** ./dist/browser/WobbleUpdater.js ***!
43
53
  \***************************************/
44
54
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
45
55
 
46
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WobbleUpdater: () => (/* binding */ WobbleUpdater)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _Options_Classes_Wobble_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Options/Classes/Wobble.js */ \"./dist/browser/Options/Classes/Wobble.js\");\n\n\nconst double = 2,\n doublePI = Math.PI * double,\n maxAngle = 360,\n moveSpeedFactor = 10,\n defaultDistance = 0;\nclass WobbleUpdater {\n constructor(container) {\n this.container = container;\n }\n async init(particle) {\n const wobbleOpt = particle.options.wobble;\n if (wobbleOpt?.enable) {\n particle.wobble = {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * doublePI,\n angleSpeed: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt.speed.angle) / maxAngle,\n moveSpeed: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt.speed.move) / moveSpeedFactor\n };\n } else {\n particle.wobble = {\n angle: 0,\n angleSpeed: 0,\n moveSpeed: 0\n };\n }\n particle.retina.wobbleDistance = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;\n await Promise.resolve();\n }\n isEnabled(particle) {\n return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;\n }\n loadOptions(options, ...sources) {\n if (!options.wobble) {\n options.wobble = new _Options_Classes_Wobble_js__WEBPACK_IMPORTED_MODULE_1__.Wobble();\n }\n for (const source of sources) {\n options.wobble.load(source?.wobble);\n }\n }\n async update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n const {\n updateWobble\n } = await __webpack_require__.e(/*! import() */ \"dist_browser_Utils_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./Utils.js */ \"./dist/browser/Utils.js\"));\n updateWobble(particle, delta);\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-wobble/./dist/browser/WobbleUpdater.js?");
56
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ WobbleUpdater: () => (/* binding */ WobbleUpdater)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _Options_Classes_Wobble_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Options/Classes/Wobble.js */ \"./dist/browser/Options/Classes/Wobble.js\");\n/* harmony import */ var _Utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Utils.js */ \"./dist/browser/Utils.js\");\n\n\n\nconst double = 2,\n doublePI = Math.PI * double,\n maxAngle = 360,\n moveSpeedFactor = 10,\n defaultDistance = 0;\nclass WobbleUpdater {\n constructor(container) {\n this.container = container;\n }\n init(particle) {\n const wobbleOpt = particle.options.wobble;\n if (wobbleOpt?.enable) {\n particle.wobble = {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * doublePI,\n angleSpeed: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt.speed.angle) / maxAngle,\n moveSpeed: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt.speed.move) / moveSpeedFactor\n };\n } else {\n particle.wobble = {\n angle: 0,\n angleSpeed: 0,\n moveSpeed: 0\n };\n }\n particle.retina.wobbleDistance = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;\n }\n isEnabled(particle) {\n return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;\n }\n loadOptions(options, ...sources) {\n if (!options.wobble) {\n options.wobble = new _Options_Classes_Wobble_js__WEBPACK_IMPORTED_MODULE_1__.Wobble();\n }\n for (const source of sources) {\n options.wobble.load(source?.wobble);\n }\n }\n update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n (0,_Utils_js__WEBPACK_IMPORTED_MODULE_2__.updateWobble)(particle, delta);\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-wobble/./dist/browser/WobbleUpdater.js?");
47
57
 
48
58
  /***/ })
49
59
 
@@ -1,11 +1,12 @@
1
1
  import { getRandom, getRangeValue, } from "@tsparticles/engine";
2
2
  import { Wobble } from "./Options/Classes/Wobble.js";
3
+ import { updateWobble } from "./Utils.js";
3
4
  const double = 2, doublePI = Math.PI * double, maxAngle = 360, moveSpeedFactor = 10, defaultDistance = 0;
4
5
  export class WobbleUpdater {
5
6
  constructor(container) {
6
7
  this.container = container;
7
8
  }
8
- async init(particle) {
9
+ init(particle) {
9
10
  const wobbleOpt = particle.options.wobble;
10
11
  if (wobbleOpt?.enable) {
11
12
  particle.wobble = {
@@ -23,7 +24,6 @@ export class WobbleUpdater {
23
24
  }
24
25
  particle.retina.wobbleDistance =
25
26
  getRangeValue(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;
26
- await Promise.resolve();
27
27
  }
28
28
  isEnabled(particle) {
29
29
  return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;
@@ -36,11 +36,10 @@ export class WobbleUpdater {
36
36
  options.wobble.load(source?.wobble);
37
37
  }
38
38
  }
39
- async update(particle, delta) {
39
+ update(particle, delta) {
40
40
  if (!this.isEnabled(particle)) {
41
41
  return;
42
42
  }
43
- const { updateWobble } = await import("./Utils.js");
44
43
  updateWobble(particle, delta);
45
44
  }
46
45
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/updater-wobble",
3
- "version": "3.2.1",
3
+ "version": "3.3.0",
4
4
  "description": "tsParticles particles wobble updater",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -87,7 +87,7 @@
87
87
  "./package.json": "./package.json"
88
88
  },
89
89
  "dependencies": {
90
- "@tsparticles/engine": "^3.2.1"
90
+ "@tsparticles/engine": "^3.3.0"
91
91
  },
92
92
  "publishConfig": {
93
93
  "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/updater-wobble [31 Jan 2024 at 09:57]</title>
6
+ <title>@tsparticles/updater-wobble [27 Feb 2024 at 12:23]</title>
7
7
  <link rel="shortcut icon" 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=" type="image/x-icon" />
8
8
 
9
9
  <script>
@@ -4,7 +4,7 @@
4
4
  * Demo / Generator : https://particles.js.org/
5
5
  * GitHub : https://www.github.com/matteobruni/tsparticles
6
6
  * How to use? : Check the GitHub README
7
- * v3.2.1
7
+ * v3.3.0
8
8
  */
9
9
  /*
10
10
  * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
@@ -210,7 +210,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__tsparticles_engine__;
210
210
  /******/ var scripts = document.getElementsByTagName("script");
211
211
  /******/ if(scripts.length) {
212
212
  /******/ var i = scripts.length - 1;
213
- /******/ while (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;
213
+ /******/ while (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;
214
214
  /******/ }
215
215
  /******/ }
216
216
  /******/ }
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see tsparticles.updater.wobble.min.js.LICENSE.txt */
2
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine"],t);else{var r="object"==typeof exports?t(require("@tsparticles/engine")):t(e.window);for(var o in r)("object"==typeof exports?exports:e)[o]=r[o]}}(this,(e=>(()=>{var t,r,o={533:t=>{t.exports=e}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={exports:{}};return o[e](r,r.exports,i),r.exports}i.m=o,i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>e+".min.js",i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},r="@tsparticles/updater-wobble:",i.l=(e,o,n,a)=>{if(t[e])t[e].push(o);else{var l,s;if(void 0!==n)for(var u=document.getElementsByTagName("script"),c=0;c<u.length;c++){var p=u[c];if(p.getAttribute("src")==e||p.getAttribute("data-webpack")==r+n){l=p;break}}l||(s=!0,(l=document.createElement("script")).charset="utf-8",l.timeout=120,i.nc&&l.setAttribute("nonce",i.nc),l.setAttribute("data-webpack",r+n),l.src=e),t[e]=[o];var d=(r,o)=>{l.onerror=l.onload=null,clearTimeout(f);var n=t[e];if(delete t[e],l.parentNode&&l.parentNode.removeChild(l),n&&n.forEach((e=>e(o))),r)return r(o)},f=setTimeout(d.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=d.bind(null,l.onerror),l.onload=d.bind(null,l.onload),s&&document.head.appendChild(l)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&!e;)e=r[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{var e={860:0};i.f.j=(t,r)=>{var o=i.o(e,t)?e[t]:void 0;if(0!==o)if(o)r.push(o[2]);else{var n=new Promise(((r,n)=>o=e[t]=[r,n]));r.push(o[2]=n);var a=i.p+i.u(t),l=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(o=e[t])&&(e[t]=void 0),o)){var n=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;l.message="Loading chunk "+t+" failed.\n("+n+": "+a+")",l.name="ChunkLoadError",l.type=n,l.request=a,o[1](l)}}),"chunk-"+t,t)}};var t=(t,r)=>{var o,n,a=r[0],l=r[1],s=r[2],u=0;if(a.some((t=>0!==e[t]))){for(o in l)i.o(l,o)&&(i.m[o]=l[o]);if(s)s(i)}for(t&&t(r);u<a.length;u++)n=a[u],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0},r=this.webpackChunk_tsparticles_updater_wobble=this.webpackChunk_tsparticles_updater_wobble||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var a={};return(()=>{async function e(e,t=!0){await e.addParticleUpdater("wobble",(async e=>{const{WobbleUpdater:t}=await i.e(998).then(i.bind(i,998));return new t(e)}),t)}i.r(a),i.d(a,{loadWobbleUpdater:()=>e})})(),a})()));
2
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine"],t);else{var r="object"==typeof exports?t(require("@tsparticles/engine")):t(e.window);for(var o in r)("object"==typeof exports?exports:e)[o]=r[o]}}(this,(e=>(()=>{var t,r,o={303:t=>{t.exports=e}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={exports:{}};return o[e](r,r.exports,i),r.exports}i.m=o,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>e+".min.js",i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},r="@tsparticles/updater-wobble:",i.l=(e,o,n,a)=>{if(t[e])t[e].push(o);else{var s,l;if(void 0!==n)for(var p=document.getElementsByTagName("script"),c=0;c<p.length;c++){var u=p[c];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==r+n){s=u;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",r+n),s.src=e),t[e]=[o];var d=(r,o)=>{s.onerror=s.onload=null,clearTimeout(f);var n=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach((e=>e(o))),r)return r(o)},f=setTimeout(d.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=d.bind(null,s.onerror),s.onload=d.bind(null,s.onload),l&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var t=i.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=r[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{var e={811:0};i.f.j=(t,r)=>{var o=i.o(e,t)?e[t]:void 0;if(0!==o)if(o)r.push(o[2]);else{var n=new Promise(((r,n)=>o=e[t]=[r,n]));r.push(o[2]=n);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(o=e[t])&&(e[t]=void 0),o)){var n=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+n+": "+a+")",s.name="ChunkLoadError",s.type=n,s.request=a,o[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var o,n,a=r[0],s=r[1],l=r[2],p=0;if(a.some((t=>0!==e[t]))){for(o in s)i.o(s,o)&&(i.m[o]=s[o]);if(l)l(i)}for(t&&t(r);p<a.length;p++)n=a[p],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0},r=this.webpackChunk_tsparticles_updater_wobble=this.webpackChunk_tsparticles_updater_wobble||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var a={};return(()=>{async function e(e,t=!0){await e.addParticleUpdater("wobble",(async e=>{const{WobbleUpdater:t}=await i.e(497).then(i.bind(i,497));return new t(e)}),t)}i.r(a),i.d(a,{loadWobbleUpdater:()=>e})})(),a})()));
@@ -1 +1 @@
1
- /*! tsParticles Wobble Updater v3.2.1 by Matteo Bruni */
1
+ /*! tsParticles Wobble Updater v3.3.0 by Matteo Bruni */
@@ -3,8 +3,8 @@ import type { IWobbleParticlesOptions, WobbleParticle, WobbleParticlesOptions }
3
3
  export declare class WobbleUpdater implements IParticleUpdater {
4
4
  private readonly container;
5
5
  constructor(container: Container);
6
- init(particle: WobbleParticle): Promise<void>;
6
+ init(particle: WobbleParticle): void;
7
7
  isEnabled(particle: WobbleParticle): boolean;
8
8
  loadOptions(options: WobbleParticlesOptions, ...sources: (RecursivePartial<IWobbleParticlesOptions> | undefined)[]): void;
9
- update(particle: WobbleParticle, delta: IDelta): Promise<void>;
9
+ update(particle: WobbleParticle, delta: IDelta): void;
10
10
  }
@@ -1,47 +1,24 @@
1
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
2
- if (k2 === undefined) k2 = k;
3
- var desc = Object.getOwnPropertyDescriptor(m, k);
4
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
5
- desc = { enumerable: true, get: function() { return m[k]; } };
6
- }
7
- Object.defineProperty(o, k2, desc);
8
- }) : (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- o[k2] = m[k];
11
- }));
12
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
13
- Object.defineProperty(o, "default", { enumerable: true, value: v });
14
- }) : function(o, v) {
15
- o["default"] = v;
16
- });
17
- var __importStar = (this && this.__importStar) || function (mod) {
18
- if (mod && mod.__esModule) return mod;
19
- var result = {};
20
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
21
- __setModuleDefault(result, mod);
22
- return result;
23
- };
24
1
  (function (factory) {
25
2
  if (typeof module === "object" && typeof module.exports === "object") {
26
3
  var v = factory(require, exports);
27
4
  if (v !== undefined) module.exports = v;
28
5
  }
29
6
  else if (typeof define === "function" && define.amd) {
30
- define(["require", "exports", "@tsparticles/engine", "./Options/Classes/Wobble.js"], factory);
7
+ define(["require", "exports", "@tsparticles/engine", "./Options/Classes/Wobble.js", "./Utils.js"], factory);
31
8
  }
32
9
  })(function (require, exports) {
33
10
  "use strict";
34
- var __syncRequire = typeof module === "object" && typeof module.exports === "object";
35
11
  Object.defineProperty(exports, "__esModule", { value: true });
36
12
  exports.WobbleUpdater = void 0;
37
13
  const engine_1 = require("@tsparticles/engine");
38
14
  const Wobble_js_1 = require("./Options/Classes/Wobble.js");
15
+ const Utils_js_1 = require("./Utils.js");
39
16
  const double = 2, doublePI = Math.PI * double, maxAngle = 360, moveSpeedFactor = 10, defaultDistance = 0;
40
17
  class WobbleUpdater {
41
18
  constructor(container) {
42
19
  this.container = container;
43
20
  }
44
- async init(particle) {
21
+ init(particle) {
45
22
  const wobbleOpt = particle.options.wobble;
46
23
  if (wobbleOpt?.enable) {
47
24
  particle.wobble = {
@@ -59,7 +36,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
59
36
  }
60
37
  particle.retina.wobbleDistance =
61
38
  (0, engine_1.getRangeValue)(wobbleOpt?.distance ?? defaultDistance) * this.container.retina.pixelRatio;
62
- await Promise.resolve();
63
39
  }
64
40
  isEnabled(particle) {
65
41
  return !particle.destroyed && !particle.spawning && !!particle.options.wobble?.enable;
@@ -72,12 +48,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
72
48
  options.wobble.load(source?.wobble);
73
49
  }
74
50
  }
75
- async update(particle, delta) {
51
+ update(particle, delta) {
76
52
  if (!this.isEnabled(particle)) {
77
53
  return;
78
54
  }
79
- const { updateWobble } = await (__syncRequire ? Promise.resolve().then(() => __importStar(require("./Utils.js"))) : new Promise((resolve_1, reject_1) => { require(["./Utils.js"], resolve_1, reject_1); }).then(__importStar));
80
- updateWobble(particle, delta);
55
+ (0, Utils_js_1.updateWobble)(particle, delta);
81
56
  }
82
57
  }
83
58
  exports.WobbleUpdater = WobbleUpdater;
package/103.min.js DELETED
@@ -1,2 +0,0 @@
1
- /*! For license information please see 103.min.js.LICENSE.txt */
2
- (this.webpackChunk_tsparticles_updater_wobble=this.webpackChunk_tsparticles_updater_wobble||[]).push([[103],{103:(e,a,t)=>{t.d(a,{updateWobble:()=>b});var n=t(533);const o=0,s=2*Math.PI,l=60;function b(e,a){const{wobble:t}=e.options,{wobble:b}=e;if(!t?.enable||!b)return;const c=b.angleSpeed*a.factor,i=b.moveSpeed*a.factor*((e.retina.wobbleDistance??o)*a.factor)/(n.millisecondsToSeconds/l),p=s,{position:r}=e;b.angle+=c,b.angle>p&&(b.angle-=p),r.x+=i*Math.cos(b.angle),r.y+=i*Math.abs(Math.sin(b.angle))}}}]);
@@ -1 +0,0 @@
1
- /*! tsParticles Wobble Updater v3.2.1 by Matteo Bruni */
package/998.min.js DELETED
@@ -1,2 +0,0 @@
1
- /*! For license information please see 998.min.js.LICENSE.txt */
2
- (this.webpackChunk_tsparticles_updater_wobble=this.webpackChunk_tsparticles_updater_wobble||[]).push([[998],{998:(e,a,s)=>{s.d(a,{WobbleUpdater:()=>l});var t=s(533);class n{constructor(){this.angle=50,this.move=10}load(e){e&&(void 0!==e.angle&&(this.angle=(0,t.setRangeValue)(e.angle)),void 0!==e.move&&(this.move=(0,t.setRangeValue)(e.move)))}}class o{constructor(){this.distance=5,this.enable=!1,this.speed=new n}load(e){if(e&&(void 0!==e.distance&&(this.distance=(0,t.setRangeValue)(e.distance)),void 0!==e.enable&&(this.enable=e.enable),void 0!==e.speed))if((0,t.isNumber)(e.speed))this.speed.load({angle:e.speed});else{const a=e.speed;void 0!==a.min?this.speed.load({angle:a}):this.speed.load(e.speed)}}}const i=2*Math.PI;class l{constructor(e){this.container=e}async init(e){const a=e.options.wobble;e.wobble=a?.enable?{angle:(0,t.getRandom)()*i,angleSpeed:(0,t.getRangeValue)(a.speed.angle)/360,moveSpeed:(0,t.getRangeValue)(a.speed.move)/10}:{angle:0,angleSpeed:0,moveSpeed:0},e.retina.wobbleDistance=(0,t.getRangeValue)(a?.distance??0)*this.container.retina.pixelRatio,await Promise.resolve()}isEnabled(e){return!e.destroyed&&!e.spawning&&!!e.options.wobble?.enable}loadOptions(e,...a){e.wobble||(e.wobble=new o);for(const s of a)e.wobble.load(s?.wobble)}async update(e,a){if(!this.isEnabled(e))return;const{updateWobble:t}=await s.e(103).then(s.bind(s,103));t(e,a)}}}}]);
@@ -1 +0,0 @@
1
- /*! tsParticles Wobble Updater v3.2.1 by Matteo Bruni */
@@ -1,30 +0,0 @@
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
- * v3.2.1
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_updater_wobble"] = this["webpackChunk_tsparticles_updater_wobble"] || []).push([["dist_browser_Utils_js"],{
19
-
20
- /***/ "./dist/browser/Utils.js":
21
- /*!*******************************!*\
22
- !*** ./dist/browser/Utils.js ***!
23
- \*******************************/
24
- /***/ ((__unused_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 */ updateWobble: () => (/* binding */ updateWobble)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__);\n\nconst defaultDistance = 0,\n double = 2,\n doublePI = Math.PI * double,\n distanceFactor = 60;\nfunction updateWobble(particle, delta) {\n const {\n wobble: wobbleOptions\n } = particle.options,\n {\n wobble\n } = particle;\n if (!wobbleOptions?.enable || !wobble) {\n return;\n }\n const angleSpeed = wobble.angleSpeed * delta.factor,\n moveSpeed = wobble.moveSpeed * delta.factor,\n distance = moveSpeed * ((particle.retina.wobbleDistance ?? defaultDistance) * delta.factor) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.millisecondsToSeconds / distanceFactor),\n max = doublePI,\n {\n position\n } = particle;\n wobble.angle += angleSpeed;\n if (wobble.angle > max) {\n wobble.angle -= max;\n }\n position.x += distance * Math.cos(wobble.angle);\n position.y += distance * Math.abs(Math.sin(wobble.angle));\n}\n\n//# sourceURL=webpack://@tsparticles/updater-wobble/./dist/browser/Utils.js?");
27
-
28
- /***/ })
29
-
30
- }]);