@tsparticles/plugin-canvas-mask 4.0.0-beta.0 → 4.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.
Files changed (37) hide show
  1. package/201.min.js +1 -0
  2. package/{597.min.js → 556.min.js} +2 -2
  3. package/browser/CanvasMaskPlugin.js +1 -0
  4. package/browser/CanvasMaskPluginInstance.js +3 -3
  5. package/browser/index.js +4 -3
  6. package/cjs/CanvasMaskPlugin.js +1 -0
  7. package/cjs/CanvasMaskPluginInstance.js +3 -3
  8. package/cjs/index.js +4 -3
  9. package/dist_browser_CanvasMaskPluginInstance_js.js +2 -2
  10. package/dist_browser_CanvasMaskPlugin_js.js +2 -2
  11. package/esm/CanvasMaskPlugin.js +1 -0
  12. package/esm/CanvasMaskPluginInstance.js +3 -3
  13. package/esm/index.js +4 -3
  14. package/package.json +5 -6
  15. package/report.html +84 -29
  16. package/tsparticles.plugin.canvas-mask.js +6 -6
  17. package/tsparticles.plugin.canvas-mask.min.js +2 -2
  18. package/565.min.js +0 -1
  19. package/umd/CanvasMaskPlugin.js +0 -69
  20. package/umd/CanvasMaskPluginInstance.js +0 -61
  21. package/umd/Options/Classes/CanvasMask.js +0 -73
  22. package/umd/Options/Classes/CanvasMaskOverride.js +0 -34
  23. package/umd/Options/Classes/CanvasMaskPixels.js +0 -45
  24. package/umd/Options/Classes/FontTextMask.js +0 -49
  25. package/umd/Options/Classes/ImageMask.js +0 -29
  26. package/umd/Options/Classes/TextMask.js +0 -47
  27. package/umd/Options/Classes/TextMaskLine.js +0 -34
  28. package/umd/Options/Interfaces/ICanvasMask.js +0 -12
  29. package/umd/Options/Interfaces/ICanvasMaskOverride.js +0 -12
  30. package/umd/Options/Interfaces/ICanvasMaskPixels.js +0 -12
  31. package/umd/Options/Interfaces/IFontTextMask.js +0 -12
  32. package/umd/Options/Interfaces/IImageMask.js +0 -12
  33. package/umd/Options/Interfaces/ITextMask.js +0 -12
  34. package/umd/Options/Interfaces/ITextMaskLine.js +0 -12
  35. package/umd/index.js +0 -54
  36. package/umd/types.js +0 -12
  37. package/umd/utils.js +0 -74
package/201.min.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";(this.webpackChunk_tsparticles_plugin_canvas_mask=this.webpackChunk_tsparticles_plugin_canvas_mask||[]).push([[201],{201(e,t,a){a.d(t,{CanvasMaskPluginInstance:()=>l});var n=a(425),i=a(303);class l{_container;constructor(e){this._container=e}async init(){let e=this._container,t=e.actualOptions.canvasMask;if(!t?.enable)return;let a={pixels:[],height:0,width:0},l=t.pixels.offset;if(t.image){let i=t.image.src;if(!i)return;a=await (0,n.getImageData)(i,l,e.canvas.render.settings)}else if(t.text){let s=t.text,r=(0,n.getTextData)(s,l,s.fill,e.canvas.render.settings);if((0,i.isNull)(r))return;a=r}else if(t.element??t.selector){let s=t.element??(t.selector&&(0,i.safeDocument)().querySelector(t.selector));if(!s)return;let r=s.getContext("2d",e.canvas.render.settings);if(!r)return;a=(0,n.getCanvasImageData)(r,s,l)}!function(e,t,a,n,l,s){let{height:r,width:c}=t,o=r*c,u=function(e){for(let t=e.length-1;t>=0;t--){let a=Math.floor((0,i.getRandom)()*t),n=e[t],l=e[a];l!==n&&void 0!==l&&void 0!==n&&(e[t]=l,e[a]=n)}return e}([...Array(o).keys()]),f=Math.min(o,e.actualOptions.particles.number.value),p=e.canvas.size,h=0,g={x:p.width*a.x/i.percentDenominator-c*n*i.half,y:p.height*a.y/i.percentDenominator-r*n*i.half};for(;h<f&&u.length;){let a=u.pop()??0,i={x:a%c,y:Math.floor(a/c)},r=t.pixels[i.y];if(!r)continue;let o=r[i.x];if(!o||!s(o))continue;let f={x:i.x*n+g.x,y:i.y*n+g.y},p={};l.color&&(p.fill={color:{value:o},enable:!0}),l.opacity&&(p.opacity={value:o.a}),e.particles.addParticle(f,p),h++}}(e,a,t.position,t.scale,t.override,t.pixels.filter)}}}}]);
@@ -1,2 +1,2 @@
1
- "use strict";(this.webpackChunk_tsparticles_plugin_canvas_mask=this.webpackChunk_tsparticles_plugin_canvas_mask||[]).push([[597],{597(i,s,t){t.d(s,{CanvasMaskPlugin:()=>d});var e=t(303);class l{color;opacity;constructor(){this.color=!0,this.opacity=!1}load(i){(0,e.isNull)(i)||(void 0!==i.color&&(this.color=i.color),void 0!==i.opacity&&(this.opacity=i.opacity))}}class o{filter;offset;constructor(){this.filter=i=>i.a>0,this.offset=4}load(i){if(!(0,e.isNull)(i)){if(void 0!==i.filter)if((0,e.isString)(i.filter)){if(i.filter in globalThis){let s=globalThis[i.filter];(0,e.isFunction)(s)&&(this.filter=s)}}else this.filter=i.filter;void 0!==i.offset&&(this.offset=i.offset)}}}class a{src;constructor(){this.src=""}load(i){(0,e.isNull)(i)||void 0!==i.src&&(this.src=i.src)}}class n{family;size;style;variant;weight;constructor(){this.family="sans-serif",this.size=100,this.style="",this.variant="",this.weight=""}load(i){(0,e.isNull)(i)||(void 0!==i.family&&(this.family=i.family),void 0!==i.size&&(this.size=i.size),void 0!==i.style&&(this.style=i.style),void 0!==i.variant&&(this.variant=i.variant),void 0!==i.weight&&(this.weight=i.weight))}}class r{separator;spacing;constructor(){this.separator=`
2
- `,this.spacing=10}load(i){(0,e.isNull)(i)||(void 0!==i.separator&&(this.separator=i.separator),void 0!==i.spacing&&(this.spacing=i.spacing))}}class c{color;fill;font;lines;text;constructor(){this.color="#000000",this.fill=!0,this.font=new n,this.lines=new r,this.text=""}load(i){(0,e.isNull)(i)||(void 0!==i.color&&(this.color=i.color),void 0!==i.fill&&(this.fill=i.fill),this.font.load(i.font),this.lines.load(i.lines),void 0!==i.text&&(this.text=i.text))}}class h{element;enable;image;override;pixels;position;scale;selector;text;constructor(){this.enable=!1,this.override=new l,this.pixels=new o,this.position={x:50,y:50},this.scale=1}load(i){!(0,e.isNull)(i)&&(void 0!==i.element&&i.element instanceof HTMLCanvasElement&&(this.element=i.element),void 0!==i.enable&&(this.enable=i.enable),i.image&&(this.image??=new a,this.image.load(i.image)),this.pixels.load(i.pixels),i.position&&(this.position={x:i.position.x??this.position.x,y:i.position.y??this.position.y}),this.override.load(i.override),void 0!==i.scale&&(this.scale=i.scale),void 0!==i.selector&&(this.selector=i.selector),i.text&&(this.text??=new c,this.text.load(i.text)))}}class d{id="canvas-mask";async getPlugin(i){let{CanvasMaskPluginInstance:s}=await t.e(565).then(t.bind(t,565));return new s(i)}loadOptions(i,s,t){if(!this.needsPlugin(s)&&!this.needsPlugin(t))return;let e=s.canvasMask;e?.load===void 0&&(s.canvasMask=e=new h),e.load(t?.canvasMask)}needsPlugin(i){return i?.canvasMask?.enable??!1}}}}]);
1
+ "use strict";(this.webpackChunk_tsparticles_plugin_canvas_mask=this.webpackChunk_tsparticles_plugin_canvas_mask||[]).push([[556],{556(i,s,t){t.d(s,{CanvasMaskPlugin:()=>d});var e=t(303);class l{color;opacity;constructor(){this.color=!0,this.opacity=!1}load(i){(0,e.isNull)(i)||(void 0!==i.color&&(this.color=i.color),void 0!==i.opacity&&(this.opacity=i.opacity))}}class o{filter;offset;constructor(){this.filter=i=>i.a>0,this.offset=4}load(i){if(!(0,e.isNull)(i)){if(void 0!==i.filter)if((0,e.isString)(i.filter)){if(i.filter in globalThis){let s=globalThis[i.filter];(0,e.isFunction)(s)&&(this.filter=s)}}else this.filter=i.filter;void 0!==i.offset&&(this.offset=i.offset)}}}class a{src;constructor(){this.src=""}load(i){(0,e.isNull)(i)||void 0!==i.src&&(this.src=i.src)}}class n{family;size;style;variant;weight;constructor(){this.family="sans-serif",this.size=100,this.style="",this.variant="",this.weight=""}load(i){(0,e.isNull)(i)||(void 0!==i.family&&(this.family=i.family),void 0!==i.size&&(this.size=i.size),void 0!==i.style&&(this.style=i.style),void 0!==i.variant&&(this.variant=i.variant),void 0!==i.weight&&(this.weight=i.weight))}}class r{separator;spacing;constructor(){this.separator=`
2
+ `,this.spacing=10}load(i){(0,e.isNull)(i)||(void 0!==i.separator&&(this.separator=i.separator),void 0!==i.spacing&&(this.spacing=i.spacing))}}class c{color;fill;font;lines;text;constructor(){this.color="#000000",this.fill=!0,this.font=new n,this.lines=new r,this.text=""}load(i){(0,e.isNull)(i)||(void 0!==i.color&&(this.color=i.color),void 0!==i.fill&&(this.fill=i.fill),this.font.load(i.font),this.lines.load(i.lines),void 0!==i.text&&(this.text=i.text))}}class h{element;enable;image;override;pixels;position;scale;selector;text;constructor(){this.enable=!1,this.override=new l,this.pixels=new o,this.position={x:50,y:50},this.scale=1}load(i){!(0,e.isNull)(i)&&(void 0!==i.element&&i.element instanceof HTMLCanvasElement&&(this.element=i.element),void 0!==i.enable&&(this.enable=i.enable),i.image&&(this.image??=new a,this.image.load(i.image)),this.pixels.load(i.pixels),i.position&&(this.position={x:i.position.x??this.position.x,y:i.position.y??this.position.y}),this.override.load(i.override),void 0!==i.scale&&(this.scale=i.scale),void 0!==i.selector&&(this.selector=i.selector),i.text&&(this.text??=new c,this.text.load(i.text)))}}class d{id="canvas-mask";async getPlugin(i){let{CanvasMaskPluginInstance:s}=await t.e(201).then(t.bind(t,201));return new s(i)}loadOptions(i,s,t){if(!this.needsPlugin(s)&&!this.needsPlugin(t))return;let e=s.canvasMask;e?.load===void 0&&(s.canvasMask=e=new h),e.load(t?.canvasMask)}needsPlugin(i){return i?.canvasMask?.enable??!1}}}}]);
@@ -1,3 +1,4 @@
1
+ import {} from "@tsparticles/engine";
1
2
  import { CanvasMask } from "./Options/Classes/CanvasMask.js";
2
3
  export class CanvasMaskPlugin {
3
4
  id = "canvas-mask";
@@ -22,10 +22,10 @@ export class CanvasMaskPluginInstance {
22
22
  if (!url) {
23
23
  return;
24
24
  }
25
- pixelData = await getImageData(url, offset, container.canvas.settings);
25
+ pixelData = await getImageData(url, offset, container.canvas.render.settings);
26
26
  }
27
27
  else if (options.text) {
28
- const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.settings);
28
+ const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.render.settings);
29
29
  if (isNull(data)) {
30
30
  return;
31
31
  }
@@ -36,7 +36,7 @@ export class CanvasMaskPluginInstance {
36
36
  if (!canvas) {
37
37
  return;
38
38
  }
39
- const context = canvas.getContext("2d", container.canvas.settings);
39
+ const context = canvas.getContext("2d", container.canvas.render.settings);
40
40
  if (!context) {
41
41
  return;
42
42
  }
package/browser/index.js CHANGED
@@ -1,7 +1,8 @@
1
+ import {} from "@tsparticles/engine";
1
2
  export async function loadCanvasMaskPlugin(engine) {
2
- engine.checkVersion("4.0.0-beta.0");
3
- await engine.register(async (e) => {
3
+ engine.checkVersion("4.0.0-beta.2");
4
+ await engine.pluginManager.register(async (e) => {
4
5
  const { CanvasMaskPlugin } = await import("./CanvasMaskPlugin.js");
5
- e.addPlugin(new CanvasMaskPlugin());
6
+ e.pluginManager.addPlugin(new CanvasMaskPlugin());
6
7
  });
7
8
  }
@@ -1,3 +1,4 @@
1
+ import {} from "@tsparticles/engine";
1
2
  import { CanvasMask } from "./Options/Classes/CanvasMask.js";
2
3
  export class CanvasMaskPlugin {
3
4
  id = "canvas-mask";
@@ -22,10 +22,10 @@ export class CanvasMaskPluginInstance {
22
22
  if (!url) {
23
23
  return;
24
24
  }
25
- pixelData = await getImageData(url, offset, container.canvas.settings);
25
+ pixelData = await getImageData(url, offset, container.canvas.render.settings);
26
26
  }
27
27
  else if (options.text) {
28
- const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.settings);
28
+ const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.render.settings);
29
29
  if (isNull(data)) {
30
30
  return;
31
31
  }
@@ -36,7 +36,7 @@ export class CanvasMaskPluginInstance {
36
36
  if (!canvas) {
37
37
  return;
38
38
  }
39
- const context = canvas.getContext("2d", container.canvas.settings);
39
+ const context = canvas.getContext("2d", container.canvas.render.settings);
40
40
  if (!context) {
41
41
  return;
42
42
  }
package/cjs/index.js CHANGED
@@ -1,7 +1,8 @@
1
+ import {} from "@tsparticles/engine";
1
2
  export async function loadCanvasMaskPlugin(engine) {
2
- engine.checkVersion("4.0.0-beta.0");
3
- await engine.register(async (e) => {
3
+ engine.checkVersion("4.0.0-beta.2");
4
+ await engine.pluginManager.register(async (e) => {
4
5
  const { CanvasMaskPlugin } = await import("./CanvasMaskPlugin.js");
5
- e.addPlugin(new CanvasMaskPlugin());
6
+ e.pluginManager.addPlugin(new CanvasMaskPlugin());
6
7
  });
7
8
  }
@@ -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.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,7 @@
23
23
  \**************************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CanvasMaskPluginInstance: () => (/* binding */ CanvasMaskPluginInstance)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/canvas-utils */ \"@tsparticles/canvas-utils\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"./dist/browser/utils.js\");\n\n\n\nclass CanvasMaskPluginInstance {\n _container;\n constructor(container){\n this._container = container;\n }\n async init() {\n const container = this._container, options = container.actualOptions.canvasMask;\n if (!options?.enable) {\n return;\n }\n let pixelData = {\n pixels: [],\n height: 0,\n width: 0\n };\n const offset = options.pixels.offset;\n if (options.image) {\n const url = options.image.src;\n if (!url) {\n return;\n }\n pixelData = await (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getImageData)(url, offset, container.canvas.settings);\n } else if (options.text) {\n const textOptions = options.text, data = (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getTextData)(textOptions, offset, textOptions.fill, container.canvas.settings);\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.isNull)(data)) {\n return;\n }\n pixelData = data;\n } else if (options.element ?? options.selector) {\n const canvas = options.element ?? (options.selector && (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.safeDocument)().querySelector(options.selector));\n if (!canvas) {\n return;\n }\n const context = canvas.getContext(\"2d\", container.canvas.settings);\n if (!context) {\n return;\n }\n pixelData = (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getCanvasImageData)(context, canvas, offset);\n }\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.addParticlesFromCanvasPixels)(container, pixelData, options.position, options.scale, options.override, options.pixels.filter);\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-canvas-mask/./dist/browser/CanvasMaskPluginInstance.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CanvasMaskPluginInstance: () => (/* binding */ CanvasMaskPluginInstance)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/canvas-utils */ \"@tsparticles/canvas-utils\");\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ \"./dist/browser/utils.js\");\n\n\n\nclass CanvasMaskPluginInstance {\n _container;\n constructor(container){\n this._container = container;\n }\n async init() {\n const container = this._container, options = container.actualOptions.canvasMask;\n if (!options?.enable) {\n return;\n }\n let pixelData = {\n pixels: [],\n height: 0,\n width: 0\n };\n const offset = options.pixels.offset;\n if (options.image) {\n const url = options.image.src;\n if (!url) {\n return;\n }\n pixelData = await (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getImageData)(url, offset, container.canvas.render.settings);\n } else if (options.text) {\n const textOptions = options.text, data = (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getTextData)(textOptions, offset, textOptions.fill, container.canvas.render.settings);\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.isNull)(data)) {\n return;\n }\n pixelData = data;\n } else if (options.element ?? options.selector) {\n const canvas = options.element ?? (options.selector && (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_1__.safeDocument)().querySelector(options.selector));\n if (!canvas) {\n return;\n }\n const context = canvas.getContext(\"2d\", container.canvas.render.settings);\n if (!context) {\n return;\n }\n pixelData = (0,_tsparticles_canvas_utils__WEBPACK_IMPORTED_MODULE_0__.getCanvasImageData)(context, canvas, offset);\n }\n (0,_utils_js__WEBPACK_IMPORTED_MODULE_2__.addParticlesFromCanvasPixels)(container, pixelData, options.position, options.scale, options.override, options.pixels.filter);\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-canvas-mask/./dist/browser/CanvasMaskPluginInstance.js?\n}");
27
27
 
28
28
  /***/ },
29
29
 
@@ -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.0
7
+ * v4.0.0-beta.2
8
8
  */
9
9
  "use strict";
10
10
  /*
@@ -23,7 +23,7 @@
23
23
  \******************************************/
24
24
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25
25
 
26
- eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CanvasMaskPlugin: () => (/* binding */ CanvasMaskPlugin)\n/* harmony export */ });\n/* harmony import */ var _Options_Classes_CanvasMask_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Options/Classes/CanvasMask.js */ \"./dist/browser/Options/Classes/CanvasMask.js\");\n\nclass CanvasMaskPlugin {\n id = \"canvas-mask\";\n async getPlugin(container) {\n const { CanvasMaskPluginInstance } = await __webpack_require__.e(/*! import() */ \"dist_browser_CanvasMaskPluginInstance_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./CanvasMaskPluginInstance.js */ \"./dist/browser/CanvasMaskPluginInstance.js\"));\n return new CanvasMaskPluginInstance(container);\n }\n loadOptions(_container, options, source) {\n if (!this.needsPlugin(options) && !this.needsPlugin(source)) {\n return;\n }\n let canvasMaskOptions = options.canvasMask;\n if (canvasMaskOptions?.load === undefined) {\n options.canvasMask = canvasMaskOptions = new _Options_Classes_CanvasMask_js__WEBPACK_IMPORTED_MODULE_0__.CanvasMask();\n }\n canvasMaskOptions.load(source?.canvasMask);\n }\n needsPlugin(options) {\n return options?.canvasMask?.enable ?? false;\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-canvas-mask/./dist/browser/CanvasMaskPlugin.js?\n}");
26
+ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CanvasMaskPlugin: () => (/* binding */ CanvasMaskPlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _Options_Classes_CanvasMask_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Options/Classes/CanvasMask.js */ \"./dist/browser/Options/Classes/CanvasMask.js\");\n\n\nclass CanvasMaskPlugin {\n id = \"canvas-mask\";\n async getPlugin(container) {\n const { CanvasMaskPluginInstance } = await __webpack_require__.e(/*! import() */ \"dist_browser_CanvasMaskPluginInstance_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./CanvasMaskPluginInstance.js */ \"./dist/browser/CanvasMaskPluginInstance.js\"));\n return new CanvasMaskPluginInstance(container);\n }\n loadOptions(_container, options, source) {\n if (!this.needsPlugin(options) && !this.needsPlugin(source)) {\n return;\n }\n let canvasMaskOptions = options.canvasMask;\n if (canvasMaskOptions?.load === undefined) {\n options.canvasMask = canvasMaskOptions = new _Options_Classes_CanvasMask_js__WEBPACK_IMPORTED_MODULE_1__.CanvasMask();\n }\n canvasMaskOptions.load(source?.canvasMask);\n }\n needsPlugin(options) {\n return options?.canvasMask?.enable ?? false;\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/plugin-canvas-mask/./dist/browser/CanvasMaskPlugin.js?\n}");
27
27
 
28
28
  /***/ },
29
29
 
@@ -1,3 +1,4 @@
1
+ import {} from "@tsparticles/engine";
1
2
  import { CanvasMask } from "./Options/Classes/CanvasMask.js";
2
3
  export class CanvasMaskPlugin {
3
4
  id = "canvas-mask";
@@ -22,10 +22,10 @@ export class CanvasMaskPluginInstance {
22
22
  if (!url) {
23
23
  return;
24
24
  }
25
- pixelData = await getImageData(url, offset, container.canvas.settings);
25
+ pixelData = await getImageData(url, offset, container.canvas.render.settings);
26
26
  }
27
27
  else if (options.text) {
28
- const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.settings);
28
+ const textOptions = options.text, data = getTextData(textOptions, offset, textOptions.fill, container.canvas.render.settings);
29
29
  if (isNull(data)) {
30
30
  return;
31
31
  }
@@ -36,7 +36,7 @@ export class CanvasMaskPluginInstance {
36
36
  if (!canvas) {
37
37
  return;
38
38
  }
39
- const context = canvas.getContext("2d", container.canvas.settings);
39
+ const context = canvas.getContext("2d", container.canvas.render.settings);
40
40
  if (!context) {
41
41
  return;
42
42
  }
package/esm/index.js CHANGED
@@ -1,7 +1,8 @@
1
+ import {} from "@tsparticles/engine";
1
2
  export async function loadCanvasMaskPlugin(engine) {
2
- engine.checkVersion("4.0.0-beta.0");
3
- await engine.register(async (e) => {
3
+ engine.checkVersion("4.0.0-beta.2");
4
+ await engine.pluginManager.register(async (e) => {
4
5
  const { CanvasMaskPlugin } = await import("./CanvasMaskPlugin.js");
5
- e.addPlugin(new CanvasMaskPlugin());
6
+ e.pluginManager.addPlugin(new CanvasMaskPlugin());
6
7
  });
7
8
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/plugin-canvas-mask",
3
- "version": "4.0.0-beta.0",
3
+ "version": "4.0.0-beta.2",
4
4
  "description": "tsParticles canvas mask plugin",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -80,14 +80,13 @@
80
80
  "browser": "./browser/index.js",
81
81
  "import": "./esm/index.js",
82
82
  "require": "./cjs/index.js",
83
- "umd": "./umd/index.js",
84
- "default": "./cjs/index.js"
83
+ "default": "./esm/index.js"
85
84
  },
86
85
  "./package.json": "./package.json"
87
86
  },
88
- "dependencies": {
89
- "@tsparticles/canvas-utils": "4.0.0-beta.0",
90
- "@tsparticles/engine": "4.0.0-beta.0"
87
+ "peerDependencies": {
88
+ "@tsparticles/canvas-utils": "4.0.0-beta.1",
89
+ "@tsparticles/engine": "4.0.0-beta.1"
91
90
  },
92
91
  "publishConfig": {
93
92
  "access": "public"