@tsparticles/updater-out-modes 3.0.3 → 3.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.
Files changed (58) hide show
  1. package/103.min.js +2 -0
  2. package/103.min.js.LICENSE.txt +1 -0
  3. package/388.min.js +2 -0
  4. package/388.min.js.LICENSE.txt +1 -0
  5. package/53.min.js +2 -0
  6. package/53.min.js.LICENSE.txt +1 -0
  7. package/569.min.js +2 -0
  8. package/569.min.js.LICENSE.txt +1 -0
  9. package/886.min.js +2 -0
  10. package/886.min.js.LICENSE.txt +1 -0
  11. package/920.min.js +2 -0
  12. package/920.min.js.LICENSE.txt +1 -0
  13. package/browser/BounceOutMode.js +3 -8
  14. package/browser/DestroyOutMode.js +8 -7
  15. package/browser/NoneOutMode.js +9 -9
  16. package/browser/OutOfCanvasUpdater.js +35 -19
  17. package/browser/OutOutMode.js +7 -2
  18. package/browser/Utils.js +15 -16
  19. package/browser/index.js +4 -2
  20. package/cjs/BounceOutMode.js +28 -10
  21. package/cjs/DestroyOutMode.js +8 -7
  22. package/cjs/NoneOutMode.js +9 -9
  23. package/cjs/OutOfCanvasUpdater.js +58 -19
  24. package/cjs/OutOutMode.js +7 -2
  25. package/cjs/Utils.js +15 -16
  26. package/cjs/index.js +27 -2
  27. package/dist_browser_BounceOutMode_js.js +30 -0
  28. package/dist_browser_DestroyOutMode_js.js +30 -0
  29. package/dist_browser_NoneOutMode_js.js +30 -0
  30. package/dist_browser_OutOfCanvasUpdater_js.js +30 -0
  31. package/dist_browser_OutOutMode_js.js +30 -0
  32. package/dist_browser_Utils_js.js +30 -0
  33. package/esm/BounceOutMode.js +3 -8
  34. package/esm/DestroyOutMode.js +8 -7
  35. package/esm/NoneOutMode.js +9 -9
  36. package/esm/OutOfCanvasUpdater.js +35 -19
  37. package/esm/OutOutMode.js +7 -2
  38. package/esm/Utils.js +15 -16
  39. package/esm/index.js +4 -2
  40. package/package.json +2 -2
  41. package/report.html +3 -3
  42. package/tsparticles.updater.out-modes.js +241 -354
  43. package/tsparticles.updater.out-modes.min.js +1 -1
  44. package/tsparticles.updater.out-modes.min.js.LICENSE.txt +1 -1
  45. package/types/BounceOutMode.d.ts +3 -3
  46. package/types/DestroyOutMode.d.ts +3 -3
  47. package/types/IBounceData.d.ts +2 -2
  48. package/types/IOutModeManager.d.ts +3 -3
  49. package/types/NoneOutMode.d.ts +3 -3
  50. package/types/OutOfCanvasUpdater.d.ts +3 -3
  51. package/types/OutOutMode.d.ts +3 -3
  52. package/umd/BounceOutMode.js +30 -11
  53. package/umd/DestroyOutMode.js +8 -7
  54. package/umd/NoneOutMode.js +9 -9
  55. package/umd/OutOfCanvasUpdater.js +60 -20
  56. package/umd/OutOutMode.js +7 -2
  57. package/umd/Utils.js +15 -16
  58. package/umd/index.js +29 -3
package/esm/Utils.js CHANGED
@@ -1,13 +1,11 @@
1
1
  import { getRangeValue } from "@tsparticles/engine";
2
+ const minVelocity = 0, boundsMin = 0;
2
3
  export function bounceHorizontal(data) {
3
- if ((data.outMode !== "bounce" &&
4
- data.outMode !== "bounce-horizontal" &&
5
- data.outMode !== "bounceHorizontal" &&
6
- data.outMode !== "split") ||
4
+ if ((data.outMode !== "bounce" && data.outMode !== "split") ||
7
5
  (data.direction !== "left" && data.direction !== "right")) {
8
6
  return;
9
7
  }
10
- if (data.bounds.right < 0 && data.direction === "left") {
8
+ if (data.bounds.right < boundsMin && data.direction === "left") {
11
9
  data.particle.position.x = data.size + data.offset.x;
12
10
  }
13
11
  else if (data.bounds.left > data.canvasSize.width && data.direction === "right") {
@@ -15,8 +13,10 @@ export function bounceHorizontal(data) {
15
13
  }
16
14
  const velocity = data.particle.velocity.x;
17
15
  let bounced = false;
18
- if ((data.direction === "right" && data.bounds.right >= data.canvasSize.width && velocity > 0) ||
19
- (data.direction === "left" && data.bounds.left <= 0 && velocity < 0)) {
16
+ if ((data.direction === "right" &&
17
+ data.bounds.right >= data.canvasSize.width &&
18
+ velocity > minVelocity) ||
19
+ (data.direction === "left" && data.bounds.left <= boundsMin && velocity < minVelocity)) {
20
20
  const newVelocity = getRangeValue(data.particle.options.bounce.horizontal.value);
21
21
  data.particle.velocity.x *= -newVelocity;
22
22
  bounced = true;
@@ -28,7 +28,7 @@ export function bounceHorizontal(data) {
28
28
  if (data.bounds.right >= data.canvasSize.width && data.direction === "right") {
29
29
  data.particle.position.x = data.canvasSize.width - minPos;
30
30
  }
31
- else if (data.bounds.left <= 0 && data.direction === "left") {
31
+ else if (data.bounds.left <= boundsMin && data.direction === "left") {
32
32
  data.particle.position.x = minPos;
33
33
  }
34
34
  if (data.outMode === "split") {
@@ -36,14 +36,11 @@ export function bounceHorizontal(data) {
36
36
  }
37
37
  }
38
38
  export function bounceVertical(data) {
39
- if ((data.outMode !== "bounce" &&
40
- data.outMode !== "bounce-vertical" &&
41
- data.outMode !== "bounceVertical" &&
42
- data.outMode !== "split") ||
39
+ if ((data.outMode !== "bounce" && data.outMode !== "split") ||
43
40
  (data.direction !== "bottom" && data.direction !== "top")) {
44
41
  return;
45
42
  }
46
- if (data.bounds.bottom < 0 && data.direction === "top") {
43
+ if (data.bounds.bottom < boundsMin && data.direction === "top") {
47
44
  data.particle.position.y = data.size + data.offset.y;
48
45
  }
49
46
  else if (data.bounds.top > data.canvasSize.height && data.direction === "bottom") {
@@ -51,8 +48,10 @@ export function bounceVertical(data) {
51
48
  }
52
49
  const velocity = data.particle.velocity.y;
53
50
  let bounced = false;
54
- if ((data.direction === "bottom" && data.bounds.bottom >= data.canvasSize.height && velocity > 0) ||
55
- (data.direction === "top" && data.bounds.top <= 0 && velocity < 0)) {
51
+ if ((data.direction === "bottom" &&
52
+ data.bounds.bottom >= data.canvasSize.height &&
53
+ velocity > minVelocity) ||
54
+ (data.direction === "top" && data.bounds.top <= boundsMin && velocity < minVelocity)) {
56
55
  const newVelocity = getRangeValue(data.particle.options.bounce.vertical.value);
57
56
  data.particle.velocity.y *= -newVelocity;
58
57
  bounced = true;
@@ -64,7 +63,7 @@ export function bounceVertical(data) {
64
63
  if (data.bounds.bottom >= data.canvasSize.height && data.direction === "bottom") {
65
64
  data.particle.position.y = data.canvasSize.height - minPos;
66
65
  }
67
- else if (data.bounds.top <= 0 && data.direction === "top") {
66
+ else if (data.bounds.top <= boundsMin && data.direction === "top") {
68
67
  data.particle.position.y = minPos;
69
68
  }
70
69
  if (data.outMode === "split") {
package/esm/index.js CHANGED
@@ -1,4 +1,6 @@
1
- import { OutOfCanvasUpdater } from "./OutOfCanvasUpdater.js";
2
1
  export async function loadOutModesUpdater(engine, refresh = true) {
3
- await engine.addParticleUpdater("outModes", (container) => new OutOfCanvasUpdater(container), refresh);
2
+ await engine.addParticleUpdater("outModes", async (container) => {
3
+ const { OutOfCanvasUpdater } = await import("./OutOfCanvasUpdater.js");
4
+ return new OutOfCanvasUpdater(container);
5
+ }, refresh);
4
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/updater-out-modes",
3
- "version": "3.0.3",
3
+ "version": "3.2.0",
4
4
  "description": "tsParticles particles out modes 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.0.3"
90
+ "@tsparticles/engine": "^3.2.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-out-modes [26 Dec 2023 at 19:32]</title>
6
+ <title>@tsparticles/updater-out-modes [31 Jan 2024 at 02:11]</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>
@@ -31,8 +31,8 @@
31
31
  <body>
32
32
  <div id="app"></div>
33
33
  <script>
34
- window.chartData = [{"label":"tsparticles.updater.out-modes.js","isAsset":true,"statSize":13062,"parsedSize":17066,"gzipSize":3419,"groups":[{"label":"dist/browser","path":"./dist/browser","statSize":13020,"groups":[{"id":1,"label":"index.js + 6 modules (concatenated)","path":"./dist/browser/index.js + 6 modules (concatenated)","statSize":13020,"parsedSize":17066,"gzipSize":3419,"concatenated":true,"groups":[{"label":"dist/browser","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser","statSize":13020,"groups":[{"id":null,"label":"index.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/index.js","statSize":235,"parsedSize":308,"gzipSize":61,"inaccurateSizes":true},{"id":null,"label":"OutOfCanvasUpdater.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/OutOfCanvasUpdater.js","statSize":1149,"parsedSize":1506,"gzipSize":301,"inaccurateSizes":true},{"id":null,"label":"BounceOutMode.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/BounceOutMode.js","statSize":1230,"parsedSize":1612,"gzipSize":322,"inaccurateSizes":true},{"id":null,"label":"DestroyOutMode.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/DestroyOutMode.js","statSize":1146,"parsedSize":1502,"gzipSize":300,"inaccurateSizes":true},{"id":null,"label":"OutOutMode.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/OutOutMode.js","statSize":5027,"parsedSize":6589,"gzipSize":1320,"inaccurateSizes":true},{"id":null,"label":"NoneOutMode.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/NoneOutMode.js","statSize":1498,"parsedSize":1963,"gzipSize":393,"inaccurateSizes":true},{"id":null,"label":"Utils.js","path":"./dist/browser/index.js + 6 modules (concatenated)/dist/browser/Utils.js","statSize":2735,"parsedSize":3584,"gzipSize":718,"inaccurateSizes":true}],"parsedSize":17066,"gzipSize":3419,"inaccurateSizes":true}]}],"parsedSize":17066,"gzipSize":3419},{"label":"engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles","statSize":42,"groups":[{"id":533,"label":"engine\",\"root\":\"window\"}","path":"./engine\",\"commonjs2\":\"@tsparticles/engine\",\"amd\":\"@tsparticles/engine\",\"root\":\"window\"}","statSize":42}],"parsedSize":0,"gzipSize":0}],"isInitialByEntrypoint":{"tsparticles.updater.out-modes":true}}];
35
- window.entrypoints = ["tsparticles.updater.out-modes","tsparticles.updater.out-modes.min"];
34
+ window.chartData = [];
35
+ window.entrypoints = ["tsparticles.updater.out-modes.min"];
36
36
  window.defaultSizes = "parsed";
37
37
  </script>
38
38
  </body>