@tsparticles/plugin-canvas-mask 3.0.0-beta.0 → 3.0.0-beta.2
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/README.md +1 -1
- package/browser/CanvasMaskInstance.js +1 -1
- package/browser/Options/Classes/CanvasMask.js +4 -4
- package/browser/Options/Classes/TextMask.js +2 -2
- package/browser/index.js +2 -2
- package/browser/package.json +1 -0
- package/cjs/CanvasMaskInstance.js +5 -5
- package/cjs/Options/Classes/CanvasMask.js +8 -8
- package/cjs/Options/Classes/TextMask.js +4 -4
- package/cjs/index.js +4 -4
- package/cjs/package.json +1 -0
- package/esm/CanvasMaskInstance.js +1 -1
- package/esm/Options/Classes/CanvasMask.js +4 -4
- package/esm/Options/Classes/TextMask.js +2 -2
- package/esm/index.js +2 -2
- package/esm/package.json +1 -0
- package/package.json +18 -6
- package/report.html +23 -5
- package/tsparticles.plugin.canvas-mask.js +1 -1
- package/tsparticles.plugin.canvas-mask.min.js.LICENSE.txt +1 -1
- package/types/CanvasMaskInstance.d.ts +1 -1
- package/types/Options/Classes/CanvasMask.d.ts +5 -5
- package/types/Options/Classes/CanvasMaskOverride.d.ts +1 -1
- package/types/Options/Classes/CanvasMaskPixels.d.ts +1 -1
- package/types/Options/Classes/FontTextMask.d.ts +1 -1
- package/types/Options/Classes/ImageMask.d.ts +1 -1
- package/types/Options/Classes/TextMask.d.ts +3 -3
- package/types/Options/Classes/TextMaskLine.d.ts +1 -1
- package/types/Options/Interfaces/ICanvasMask.d.ts +4 -4
- package/types/Options/Interfaces/ITextMask.d.ts +2 -2
- package/types/types.d.ts +2 -2
- package/types/utils.d.ts +2 -2
- package/umd/CanvasMaskInstance.js +6 -6
- package/umd/Options/Classes/CanvasMask.js +9 -9
- package/umd/Options/Classes/TextMask.js +5 -5
- package/umd/index.js +5 -5
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](https://www.npmjs.com/package/@tsparticles/plugin-canvas-mask)
|
|
7
7
|
[](https://www.npmjs.com/package/@tsparticles/plugin-canvas-mask) [](https://github.com/sponsors/matteobruni)
|
|
8
8
|
|
|
9
|
-
[tsParticles](https://github.com/
|
|
9
|
+
[tsParticles](https://github.com/tsparticles/tsparticles) plugin for particles canvas mask effect.
|
|
10
10
|
|
|
11
11
|
## How to use it
|
|
12
12
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { addParticlesFromCanvasPixels, getCanvasImageData, getImageData, getTextData } from "./utils";
|
|
1
|
+
import { addParticlesFromCanvasPixels, getCanvasImageData, getImageData, getTextData } from "./utils.js";
|
|
2
2
|
export class CanvasMaskInstance {
|
|
3
3
|
constructor(container, engine) {
|
|
4
4
|
this._container = container;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { CanvasMaskOverride } from "./CanvasMaskOverride";
|
|
2
|
-
import { CanvasMaskPixels } from "./CanvasMaskPixels";
|
|
3
|
-
import { ImageMask } from "./ImageMask";
|
|
4
|
-
import { TextMask } from "./TextMask";
|
|
1
|
+
import { CanvasMaskOverride } from "./CanvasMaskOverride.js";
|
|
2
|
+
import { CanvasMaskPixels } from "./CanvasMaskPixels.js";
|
|
3
|
+
import { ImageMask } from "./ImageMask.js";
|
|
4
|
+
import { TextMask } from "./TextMask.js";
|
|
5
5
|
export class CanvasMask {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.enable = false;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FontTextMask } from "./FontTextMask";
|
|
2
|
-
import { TextMaskLine } from "./TextMaskLine";
|
|
1
|
+
import { FontTextMask } from "./FontTextMask.js";
|
|
2
|
+
import { TextMaskLine } from "./TextMaskLine.js";
|
|
3
3
|
export class TextMask {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.color = "#000000";
|
package/browser/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CanvasMask } from "./Options/Classes/CanvasMask";
|
|
2
|
-
import { CanvasMaskInstance } from "./CanvasMaskInstance";
|
|
1
|
+
import { CanvasMask } from "./Options/Classes/CanvasMask.js";
|
|
2
|
+
import { CanvasMaskInstance } from "./CanvasMaskInstance.js";
|
|
3
3
|
class CanvasMaskPlugin {
|
|
4
4
|
constructor(engine) {
|
|
5
5
|
this.id = "canvasMask";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "module" }
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CanvasMaskInstance = void 0;
|
|
4
|
-
const
|
|
4
|
+
const utils_js_1 = require("./utils.js");
|
|
5
5
|
class CanvasMaskInstance {
|
|
6
6
|
constructor(container, engine) {
|
|
7
7
|
this._container = container;
|
|
@@ -23,11 +23,11 @@ class CanvasMaskInstance {
|
|
|
23
23
|
if (!url) {
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
|
-
pixelData = await (0,
|
|
26
|
+
pixelData = await (0, utils_js_1.getImageData)(url, offset);
|
|
27
27
|
}
|
|
28
28
|
else if (options.text) {
|
|
29
29
|
const textOptions = options.text;
|
|
30
|
-
const data = (0,
|
|
30
|
+
const data = (0, utils_js_1.getTextData)(textOptions, offset);
|
|
31
31
|
if (!data) {
|
|
32
32
|
return;
|
|
33
33
|
}
|
|
@@ -42,9 +42,9 @@ class CanvasMaskInstance {
|
|
|
42
42
|
if (!context) {
|
|
43
43
|
return;
|
|
44
44
|
}
|
|
45
|
-
pixelData = (0,
|
|
45
|
+
pixelData = (0, utils_js_1.getCanvasImageData)(context, canvas, offset);
|
|
46
46
|
}
|
|
47
|
-
(0,
|
|
47
|
+
(0, utils_js_1.addParticlesFromCanvasPixels)(container, pixelData, options.position, options.scale, options.override, options.pixels.filter);
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
exports.CanvasMaskInstance = CanvasMaskInstance;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CanvasMask = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
4
|
+
const CanvasMaskOverride_js_1 = require("./CanvasMaskOverride.js");
|
|
5
|
+
const CanvasMaskPixels_js_1 = require("./CanvasMaskPixels.js");
|
|
6
|
+
const ImageMask_js_1 = require("./ImageMask.js");
|
|
7
|
+
const TextMask_js_1 = require("./TextMask.js");
|
|
8
8
|
class CanvasMask {
|
|
9
9
|
constructor() {
|
|
10
10
|
this.enable = false;
|
|
11
|
-
this.override = new
|
|
12
|
-
this.pixels = new
|
|
11
|
+
this.override = new CanvasMaskOverride_js_1.CanvasMaskOverride();
|
|
12
|
+
this.pixels = new CanvasMaskPixels_js_1.CanvasMaskPixels();
|
|
13
13
|
this.position = {
|
|
14
14
|
x: 50,
|
|
15
15
|
y: 50,
|
|
@@ -28,7 +28,7 @@ class CanvasMask {
|
|
|
28
28
|
}
|
|
29
29
|
if (data.image) {
|
|
30
30
|
if (!this.image) {
|
|
31
|
-
this.image = new
|
|
31
|
+
this.image = new ImageMask_js_1.ImageMask();
|
|
32
32
|
}
|
|
33
33
|
this.image.load(data.image);
|
|
34
34
|
}
|
|
@@ -48,7 +48,7 @@ class CanvasMask {
|
|
|
48
48
|
}
|
|
49
49
|
if (data.text) {
|
|
50
50
|
if (!this.text) {
|
|
51
|
-
this.text = new
|
|
51
|
+
this.text = new TextMask_js_1.TextMask();
|
|
52
52
|
}
|
|
53
53
|
this.text.load(data.text);
|
|
54
54
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TextMask = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const FontTextMask_js_1 = require("./FontTextMask.js");
|
|
5
|
+
const TextMaskLine_js_1 = require("./TextMaskLine.js");
|
|
6
6
|
class TextMask {
|
|
7
7
|
constructor() {
|
|
8
8
|
this.color = "#000000";
|
|
9
|
-
this.font = new
|
|
10
|
-
this.lines = new
|
|
9
|
+
this.font = new FontTextMask_js_1.FontTextMask();
|
|
10
|
+
this.lines = new TextMaskLine_js_1.TextMaskLine();
|
|
11
11
|
this.text = "";
|
|
12
12
|
}
|
|
13
13
|
load(data) {
|
package/cjs/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadCanvasMaskPlugin = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const CanvasMask_js_1 = require("./Options/Classes/CanvasMask.js");
|
|
5
|
+
const CanvasMaskInstance_js_1 = require("./CanvasMaskInstance.js");
|
|
6
6
|
class CanvasMaskPlugin {
|
|
7
7
|
constructor(engine) {
|
|
8
8
|
this.id = "canvasMask";
|
|
9
9
|
this._engine = engine;
|
|
10
10
|
}
|
|
11
11
|
getPlugin(container) {
|
|
12
|
-
return new
|
|
12
|
+
return new CanvasMaskInstance_js_1.CanvasMaskInstance(container, this._engine);
|
|
13
13
|
}
|
|
14
14
|
loadOptions(options, source) {
|
|
15
15
|
if (!this.needsPlugin(options) && !this.needsPlugin(source)) {
|
|
@@ -17,7 +17,7 @@ class CanvasMaskPlugin {
|
|
|
17
17
|
}
|
|
18
18
|
let canvasMaskOptions = options.canvasMask;
|
|
19
19
|
if (canvasMaskOptions?.load === undefined) {
|
|
20
|
-
options.canvasMask = canvasMaskOptions = new
|
|
20
|
+
options.canvasMask = canvasMaskOptions = new CanvasMask_js_1.CanvasMask();
|
|
21
21
|
}
|
|
22
22
|
canvasMaskOptions.load(source?.canvasMask);
|
|
23
23
|
}
|
package/cjs/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "commonjs" }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { addParticlesFromCanvasPixels, getCanvasImageData, getImageData, getTextData } from "./utils";
|
|
1
|
+
import { addParticlesFromCanvasPixels, getCanvasImageData, getImageData, getTextData } from "./utils.js";
|
|
2
2
|
export class CanvasMaskInstance {
|
|
3
3
|
constructor(container, engine) {
|
|
4
4
|
this._container = container;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { CanvasMaskOverride } from "./CanvasMaskOverride";
|
|
2
|
-
import { CanvasMaskPixels } from "./CanvasMaskPixels";
|
|
3
|
-
import { ImageMask } from "./ImageMask";
|
|
4
|
-
import { TextMask } from "./TextMask";
|
|
1
|
+
import { CanvasMaskOverride } from "./CanvasMaskOverride.js";
|
|
2
|
+
import { CanvasMaskPixels } from "./CanvasMaskPixels.js";
|
|
3
|
+
import { ImageMask } from "./ImageMask.js";
|
|
4
|
+
import { TextMask } from "./TextMask.js";
|
|
5
5
|
export class CanvasMask {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.enable = false;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FontTextMask } from "./FontTextMask";
|
|
2
|
-
import { TextMaskLine } from "./TextMaskLine";
|
|
1
|
+
import { FontTextMask } from "./FontTextMask.js";
|
|
2
|
+
import { TextMaskLine } from "./TextMaskLine.js";
|
|
3
3
|
export class TextMask {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.color = "#000000";
|
package/esm/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CanvasMask } from "./Options/Classes/CanvasMask";
|
|
2
|
-
import { CanvasMaskInstance } from "./CanvasMaskInstance";
|
|
1
|
+
import { CanvasMask } from "./Options/Classes/CanvasMask.js";
|
|
2
|
+
import { CanvasMaskInstance } from "./CanvasMaskInstance.js";
|
|
3
3
|
class CanvasMaskPlugin {
|
|
4
4
|
constructor(engine) {
|
|
5
5
|
this.id = "canvasMask";
|
package/esm/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "module" }
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/plugin-canvas-mask",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.2",
|
|
4
4
|
"description": "tsParticles canvas mask plugin",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/
|
|
8
|
+
"url": "git+https://github.com/tsparticles/tsparticles.git",
|
|
9
9
|
"directory": "plugins/canvasMask"
|
|
10
10
|
},
|
|
11
11
|
"keywords": [
|
|
@@ -65,16 +65,28 @@
|
|
|
65
65
|
"author": "Matteo Bruni <matteo.bruni@me.com>",
|
|
66
66
|
"license": "MIT",
|
|
67
67
|
"bugs": {
|
|
68
|
-
"url": "https://github.com/
|
|
68
|
+
"url": "https://github.com/tsparticles/tsparticles/issues"
|
|
69
69
|
},
|
|
70
|
-
"
|
|
70
|
+
"sideEffects": false,
|
|
71
71
|
"jsdelivr": "tsparticles.plugin.canvas-mask.min.js",
|
|
72
72
|
"unpkg": "tsparticles.plugin.canvas-mask.min.js",
|
|
73
|
+
"browser": "browser/index.js",
|
|
74
|
+
"main": "cjs/index.js",
|
|
73
75
|
"module": "esm/index.js",
|
|
74
76
|
"types": "types/index.d.ts",
|
|
75
|
-
"
|
|
77
|
+
"exports": {
|
|
78
|
+
".": {
|
|
79
|
+
"types": "./types/index.d.ts",
|
|
80
|
+
"browser": "./browser/index.js",
|
|
81
|
+
"import": "./esm/index.js",
|
|
82
|
+
"require": "./cjs/index.js",
|
|
83
|
+
"umd": "./umd/index.js",
|
|
84
|
+
"default": "./cjs/index.js"
|
|
85
|
+
},
|
|
86
|
+
"./package.json": "./package.json"
|
|
87
|
+
},
|
|
76
88
|
"dependencies": {
|
|
77
|
-
"@tsparticles/engine": "^3.0.0-beta.
|
|
89
|
+
"@tsparticles/engine": "^3.0.0-beta.2"
|
|
78
90
|
},
|
|
79
91
|
"publishConfig": {
|
|
80
92
|
"access": "public"
|