@tsparticles/editor
Version:
tsParticles Configuration Editor
133 lines (132 loc) • 5.36 kB
JavaScript
"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;