@tsparticles/plugin-emitters-shape-polygon 4.0.0-beta.0 → 4.0.0-beta.10
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/{621.min.js → 795.min.js} +1 -1
- package/README.md +22 -0
- package/browser/index.js +3 -3
- package/cjs/index.js +3 -3
- package/dist_browser_EmittersPolygonShapeGenerator_js.js +1 -1
- package/esm/index.js +3 -3
- package/package.json +5 -6
- package/report.html +84 -29
- package/tsparticles.plugin.emitters.shape.polygon.js +2 -2
- package/tsparticles.plugin.emitters.shape.polygon.min.js +1 -1
- package/umd/EmittersPolygonShape.js +0 -38
- package/umd/EmittersPolygonShapeGenerator.js +0 -23
- package/umd/Options/Classes/EmittersPolygonShapeOptions.js +0 -34
- package/umd/Options/Interfaces/IEmittersPolygonShapeOptions.js +0 -12
- package/umd/index.js +0 -56
- package/umd/utils.js +0 -89
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(this.webpackChunk_tsparticles_plugin_emitters_shape_polygon=this.webpackChunk_tsparticles_plugin_emitters_shape_polygon||[]).push([[
|
|
1
|
+
"use strict";(this.webpackChunk_tsparticles_plugin_emitters_shape_polygon=this.webpackChunk_tsparticles_plugin_emitters_shape_polygon||[]).push([[795],{795(e,t,s){s.d(t,{EmittersPolygonShapeGenerator:()=>a});var n=s(526),l=s(303);function i(e,t,s,n=0){let o=[],r=l.doublePI/t;for(let l=0;l<t;l++){let t=r*l+n;o.push({x:e.x+s*Math.cos(t),y:e.y+s*Math.sin(t)})}return o}class o extends n.EmitterShapeBase{angle;polygon;sides;constructor(e,t,s,n){super(e,t,s,n),this.sides=n.sides,this.angle=(0,l.degToRad)(n.angle),this.polygon=i(e,this.sides,t.width*l.half,this.angle)}async init(){}randomPosition(){let e=this.fill,t=this.polygon,s=e?function(e){let t=e[0];if(!t)return null;let s={...t},n={...t};for(let t of e)t.x<s.x&&(s.x=t.x),t.x>n.x&&(n.x=t.x),t.y<s.y&&(s.y=t.y),t.y>n.y&&(n.y=t.y);let i=null;for(let t=0;t<100;t++){let t={x:s.x+(0,l.getRandom)()*(n.x-s.x),y:s.y+(0,l.getRandom)()*(n.y-s.y)};if(function(e,t){let s=!1;for(let n=0,l=t.length-1;n<t.length;l=n++){let i=t[n],o=t[l];i&&o&&i.y>e.y!=o.y>e.y&&e.x<(o.x-i.x)*(e.y-i.y)/(o.y-i.y)+i.x&&(s=!s)}return s}(t,e)){i=t;break}}return i}(t):function(e){let t=Math.floor((0,l.getRandom)()*e.length),s=e[t];if(!s)return;let n=e[(t+1)%e.length];if(!n)return;let i=(0,l.getRandom)();return{x:s.x+(n.x-s.x)*i,y:s.y+(n.y-s.y)*i}}(t);return s?{position:s}:null}resize(e,t){super.resize(e,t),this.polygon=i(e,this.sides,t.width*l.half,this.angle)}}class r{angle;sides;constructor(){this.angle=0,this.sides=5}load(e){(0,l.isNull)(e)||(void 0!==e.angle&&(this.angle=e.angle),void 0!==e.sides&&(this.sides=e.sides))}}class a{generate(e,t,s,n,l){let i=new r;return i.load(l),new o(t,s,n,i)}}}}]);
|
package/README.md
CHANGED
|
@@ -8,6 +8,12 @@
|
|
|
8
8
|
|
|
9
9
|
[tsParticles](https://github.com/tsparticles/tsparticles) plugin for adding the emitters shape polygon support.
|
|
10
10
|
|
|
11
|
+
## Quick checklist
|
|
12
|
+
|
|
13
|
+
1. Install `@tsparticles/engine` (or use the CDN bundle below)
|
|
14
|
+
2. Call the package loader function(s) before `tsParticles.load(...)`
|
|
15
|
+
3. Apply the package options in your `tsParticles.load(...)` config
|
|
16
|
+
|
|
11
17
|
## How to use it
|
|
12
18
|
|
|
13
19
|
### CDN / Vanilla JS / jQuery
|
|
@@ -77,3 +83,19 @@ import { loadEmittersShapePolygonPlugin } from "@tsparticles/plugin-emitters-sha
|
|
|
77
83
|
await loadEmittersShapePolygonPlugin(tsParticles);
|
|
78
84
|
})();
|
|
79
85
|
```
|
|
86
|
+
|
|
87
|
+
## Option mapping
|
|
88
|
+
|
|
89
|
+
- This package primarily extends runtime behavior or rendering and may not expose a single dedicated root options key.
|
|
90
|
+
- Use the usage example in this README and combine with the nearest options section in the docs.
|
|
91
|
+
|
|
92
|
+
## Common pitfalls
|
|
93
|
+
|
|
94
|
+
- Calling `tsParticles.load(...)` before `loadEmittersPlugin(...)`
|
|
95
|
+
- Verify required peer packages before enabling advanced options
|
|
96
|
+
- Change one option group at a time to isolate regressions quickly
|
|
97
|
+
|
|
98
|
+
## Related docs
|
|
99
|
+
|
|
100
|
+
- All packages catalog: <https://github.com/tsparticles/tsparticles>
|
|
101
|
+
- Main docs: <https://particles.js.org/docs/>
|
package/browser/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export async function loadEmittersShapePolygon(engine) {
|
|
2
|
-
engine.checkVersion("4.0.0-beta.
|
|
3
|
-
await engine.register(async (e) => {
|
|
2
|
+
engine.checkVersion("4.0.0-beta.10");
|
|
3
|
+
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureEmittersPluginLoaded } = await import("@tsparticles/plugin-emitters");
|
|
5
5
|
ensureEmittersPluginLoaded(e);
|
|
6
6
|
const { EmittersPolygonShapeGenerator } = await import("./EmittersPolygonShapeGenerator.js");
|
|
7
|
-
e.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
7
|
+
e.pluginManager.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
8
8
|
});
|
|
9
9
|
}
|
package/cjs/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export async function loadEmittersShapePolygon(engine) {
|
|
2
|
-
engine.checkVersion("4.0.0-beta.
|
|
3
|
-
await engine.register(async (e) => {
|
|
2
|
+
engine.checkVersion("4.0.0-beta.10");
|
|
3
|
+
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureEmittersPluginLoaded } = await import("@tsparticles/plugin-emitters");
|
|
5
5
|
ensureEmittersPluginLoaded(e);
|
|
6
6
|
const { EmittersPolygonShapeGenerator } = await import("./EmittersPolygonShapeGenerator.js");
|
|
7
|
-
e.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
7
|
+
e.pluginManager.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
8
8
|
});
|
|
9
9
|
}
|
package/esm/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export async function loadEmittersShapePolygon(engine) {
|
|
2
|
-
engine.checkVersion("4.0.0-beta.
|
|
3
|
-
await engine.register(async (e) => {
|
|
2
|
+
engine.checkVersion("4.0.0-beta.10");
|
|
3
|
+
await engine.pluginManager.register(async (e) => {
|
|
4
4
|
const { ensureEmittersPluginLoaded } = await import("@tsparticles/plugin-emitters");
|
|
5
5
|
ensureEmittersPluginLoaded(e);
|
|
6
6
|
const { EmittersPolygonShapeGenerator } = await import("./EmittersPolygonShapeGenerator.js");
|
|
7
|
-
e.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
7
|
+
e.pluginManager.addEmitterShapeGenerator?.("polygon", new EmittersPolygonShapeGenerator());
|
|
8
8
|
});
|
|
9
9
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/plugin-emitters-shape-polygon",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.10",
|
|
4
4
|
"description": "tsParticles emitters shape polygon plugin",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -94,14 +94,13 @@
|
|
|
94
94
|
"browser": "./browser/index.js",
|
|
95
95
|
"import": "./esm/index.js",
|
|
96
96
|
"require": "./cjs/index.js",
|
|
97
|
-
"
|
|
98
|
-
"default": "./cjs/index.js"
|
|
97
|
+
"default": "./esm/index.js"
|
|
99
98
|
},
|
|
100
99
|
"./package.json": "./package.json"
|
|
101
100
|
},
|
|
102
|
-
"
|
|
103
|
-
"@tsparticles/engine": "4.0.0-beta.
|
|
104
|
-
"@tsparticles/plugin-emitters": "4.0.0-beta.
|
|
101
|
+
"peerDependencies": {
|
|
102
|
+
"@tsparticles/engine": "4.0.0-beta.10",
|
|
103
|
+
"@tsparticles/plugin-emitters": "4.0.0-beta.10"
|
|
105
104
|
},
|
|
106
105
|
"publishConfig": {
|
|
107
106
|
"access": "public"
|