@tsparticles/plugin-canvas-mask
Version:
tsParticles canvas mask plugin
22 lines (21 loc) • 785 B
JavaScript
import { CanvasMask } from "./Options/Classes/CanvasMask.js";
export class CanvasMaskPlugin {
id = "canvas-mask";
async getPlugin(container) {
const { CanvasMaskPluginInstance } = await import("./CanvasMaskPluginInstance.js");
return new CanvasMaskPluginInstance(container);
}
loadOptions(_container, options, source) {
if (!this.needsPlugin(options) && !this.needsPlugin(source)) {
return;
}
let canvasMaskOptions = options.canvasMask;
if (canvasMaskOptions?.load === undefined) {
options.canvasMask = canvasMaskOptions = new CanvasMask();
}
canvasMaskOptions.load(source?.canvasMask);
}
needsPlugin(options) {
return options?.canvasMask?.enable ?? false;
}
}