UNPKG

tsparticles

Version:

Porting of the abandoned Vincent Garreau's particles.js, converted in TypeScript. Added many new cool features and various bug fixes.

39 lines (38 loc) 1.48 kB
import { InteractivityDetect } from "../../../Enums/InteractivityDetect"; import { Events } from "./Events/Events"; import { Modes } from "./Modes/Modes"; import { HoverMode } from "../../../Enums/Modes/HoverMode"; export class Interactivity { constructor() { this.detectsOn = InteractivityDetect.canvas; this.events = new Events(); this.modes = new Modes(); } get detect_on() { return this.detectsOn; } set detect_on(value) { this.detectsOn = value; } load(data) { var _a, _b, _c; if (data !== undefined) { const detectsOn = (_a = data.detectsOn) !== null && _a !== void 0 ? _a : data.detect_on; if (detectsOn !== undefined) { this.detectsOn = detectsOn; } this.events.load(data.events); this.modes.load(data.modes); if ((_c = (_b = data.modes) === null || _b === void 0 ? void 0 : _b.slow) === null || _c === void 0 ? void 0 : _c.active) { if (this.events.onHover.mode instanceof Array) { if (this.events.onHover.mode.indexOf(HoverMode.slow) < 0) { this.events.onHover.mode.push(HoverMode.slow); } } else if (this.events.onHover.mode !== HoverMode.slow) { this.events.onHover.mode = [this.events.onHover.mode, HoverMode.slow]; } } } } }