UNPKG

@tsparticles/editor

Version:

tsParticles Configuration Editor

143 lines (142 loc) 6.83 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "object-gui", "./Bounce/BounceOptionsEditor", "./Collisions/CollisionsOptionsEditor", "./Color/ColorOptionsEditor", "./Destroy/DestroyOptionsEditor", "../../../EditorBase", "./Life/LifeOptionsEditor", "./Links/LinksOptionsEditor", "./Move/MoveOptionsEditor", "./Number/NumberOptionsEditor", "./Opacity/OpacityOptionsEditor", "./Roll/RollOptionsEditor", "./Rotate/RotateOptionsEditor", "./Shadow/ShadowOptionsEditor", "./Shape/ShapeOptionsEditor", "./Size/SizeOptionsEditor", "./Stroke/StrokeOptionsEditor", "./Tilt/TiltOptionsEditor", "./Twinkle/TwinkleOptionsEditor", "./Wobble/WobbleOptionsEditor"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ParticlesOptionsEditor = void 0; const object_gui_1 = require("object-gui"); const BounceOptionsEditor_1 = require("./Bounce/BounceOptionsEditor"); const CollisionsOptionsEditor_1 = require("./Collisions/CollisionsOptionsEditor"); const ColorOptionsEditor_1 = require("./Color/ColorOptionsEditor"); const DestroyOptionsEditor_1 = require("./Destroy/DestroyOptionsEditor"); const EditorBase_1 = require("../../../EditorBase"); const LifeOptionsEditor_1 = require("./Life/LifeOptionsEditor"); const LinksOptionsEditor_1 = require("./Links/LinksOptionsEditor"); const MoveOptionsEditor_1 = require("./Move/MoveOptionsEditor"); const NumberOptionsEditor_1 = require("./Number/NumberOptionsEditor"); const OpacityOptionsEditor_1 = require("./Opacity/OpacityOptionsEditor"); const RollOptionsEditor_1 = require("./Roll/RollOptionsEditor"); const RotateOptionsEditor_1 = require("./Rotate/RotateOptionsEditor"); const ShadowOptionsEditor_1 = require("./Shadow/ShadowOptionsEditor"); const ShapeOptionsEditor_1 = require("./Shape/ShapeOptionsEditor"); const SizeOptionsEditor_1 = require("./Size/SizeOptionsEditor"); const StrokeOptionsEditor_1 = require("./Stroke/StrokeOptionsEditor"); const TiltOptionsEditor_1 = require("./Tilt/TiltOptionsEditor"); const TwinkleOptionsEditor_1 = require("./Twinkle/TwinkleOptionsEditor"); const WobbleOptionsEditor_1 = require("./Wobble/WobbleOptionsEditor"); class ParticlesOptionsEditor extends EditorBase_1.EditorBase { constructor(particles) { super(particles); } addParticlesToGroup(parent, customName, parentData) { this.group = parent.addGroup(customName ?? "particles", "Particles", true, parentData); this.options = this.group.data; this.addBounce(); this.addCollisions(); this.addColor(); this.addDestroy(); this.addLife(); this.addLinks(); this.addMove(); this.addNumber(); this.addOpacity(); this.addRoll(); this.addRotate(); this.addShadow(); this.addShape(); this.addSize(); this.addStroke(); this.addTilt(); this.addTwinkle(); this.addWobble(); this.addProperties(); } addToGroup(parent, options) { this.addParticlesToGroup(parent, undefined, options); } addBounce() { const options = new BounceOptionsEditor_1.BounceOptionsEditor(this.particles); options.addToGroup(this.group); } addCollisions() { const options = new CollisionsOptionsEditor_1.CollisionsOptionsEditor(this.particles); options.addToGroup(this.group); } addColor() { const options = new ColorOptionsEditor_1.ColorOptionsEditor(this.particles); options.addToGroup(this.group); } addDestroy() { const options = new DestroyOptionsEditor_1.DestroyOptionsEditor(this.particles); options.addToGroup(this.group); } addLife() { const options = new LifeOptionsEditor_1.LifeOptionsEditor(this.particles); options.addToGroup(this.group); } addLinks() { const options = new LinksOptionsEditor_1.LinksOptionsEditor(this.particles); options.addToGroup(this.group); } addMove() { const options = new MoveOptionsEditor_1.MoveOptionsEditor(this.particles); options.addToGroup(this.group); } addNumber() { const options = new NumberOptionsEditor_1.NumberOptionsEditor(this.particles); options.addToGroup(this.group); } addOpacity() { const options = new OpacityOptionsEditor_1.OpacityOptionsEditor(this.particles); options.addToGroup(this.group); } addProperties() { this.group.addProperty("reduceDuplicates", "Reduce Duplicates", object_gui_1.EditorType.boolean).change(() => { void this.particles().refresh(); }); } addRoll() { const options = new RollOptionsEditor_1.RollOptionsEditor(this.particles); options.addToGroup(this.group); } addRotate() { const options = new RotateOptionsEditor_1.RotateOptionsEditor(this.particles); options.addToGroup(this.group); } addShadow() { const options = new ShadowOptionsEditor_1.ShadowOptionsEditor(this.particles); options.addToGroup(this.group); } addShape() { const options = new ShapeOptionsEditor_1.ShapeOptionsEditor(this.particles); options.addToGroup(this.group); } addSize() { const options = new SizeOptionsEditor_1.SizeOptionsEditor(this.particles); options.addToGroup(this.group); } addStroke() { const options = new StrokeOptionsEditor_1.StrokeOptionsEditor(this.particles); options.addToGroup(this.group); } addTilt() { const options = new TiltOptionsEditor_1.TiltOptionsEditor(this.particles); options.addToGroup(this.group); } addTwinkle() { const options = new TwinkleOptionsEditor_1.TwinkleOptionsEditor(this.particles); options.addToGroup(this.group); } addWobble() { const options = new WobbleOptionsEditor_1.WobbleOptionsEditor(this.particles); options.addToGroup(this.group); } } exports.ParticlesOptionsEditor = ParticlesOptionsEditor; });