UNPKG

@tsparticles/fireworks

Version:

Easily create highly customizable particle animations and use them as animated backgrounds for your website. Ready to use components available also for React, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, Riot.js, Inferno.

2 lines 6.09 kB
/*! For license information please see tsparticles.fireworks.min.js.LICENSE.txt */ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("@tsparticles/engine"),require("@tsparticles/basic"),require("@tsparticles/updater-destroy"),require("@tsparticles/plugin-emitters"),require("@tsparticles/plugin-emitters-shape-square"),require("@tsparticles/updater-life"),require("@tsparticles/updater-rotate"),require("@tsparticles/plugin-sounds"),require("@tsparticles/effect-trail"));else if("function"==typeof define&&define.amd)define(["@tsparticles/engine","@tsparticles/basic","@tsparticles/updater-destroy","@tsparticles/plugin-emitters","@tsparticles/plugin-emitters-shape-square","@tsparticles/updater-life","@tsparticles/updater-rotate","@tsparticles/plugin-sounds","@tsparticles/effect-trail"],t);else{var i="object"==typeof exports?t(require("@tsparticles/engine"),require("@tsparticles/basic"),require("@tsparticles/updater-destroy"),require("@tsparticles/plugin-emitters"),require("@tsparticles/plugin-emitters-shape-square"),require("@tsparticles/updater-life"),require("@tsparticles/updater-rotate"),require("@tsparticles/plugin-sounds"),require("@tsparticles/effect-trail")):t(e.window,e.window,e.window,e.window,e.window,e.window,e.window,e.window,e.window);for(var s in i)("object"==typeof exports?exports:e)[s]=i[s]}}(this,((e,t,i,s,r,a,o,n,l)=>(()=>{var p={75:e=>{e.exports=a},140:e=>{e.exports=r},145:e=>{e.exports=t},173:e=>{e.exports=i},303:t=>{t.exports=e},526:e=>{e.exports=s},637:e=>{e.exports=l},668:e=>{e.exports=o},933:e=>{e.exports=n}},u={};function c(e){var t=u[e];if(void 0!==t)return t.exports;var i=u[e]={exports:{}};return p[e](i,i.exports,c),i.exports}c.d=(e,t)=>{for(var i in t)c.o(t,i)&&!c.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};c.r(d),c.d(d,{fireworks:()=>O});var m=c(303);class f{constructor(){this.background="none",this.brightness={min:-30,max:30},this.colors=["#ff595e","#ffca3a","#8ac926","#1982c4","#6a4c93"],this.gravity=5,this.minHeight={min:10,max:30},this.rate=10,this.saturation={min:-30,max:30},this.sounds=!0,this.speed={min:5,max:15},this.splitCount={min:75,max:150}}load(e){(0,m.isNull)(e)||(void 0!==e.background&&(this.background=e.background),void 0!==e.colors&&((0,m.isArray)(e.colors)?this.colors=[...e.colors]:this.colors=e.colors),void 0!==e.brightness&&(this.brightness=(0,m.setRangeValue)(e.brightness)),void 0!==e.gravity&&(this.gravity=(0,m.setRangeValue)(e.gravity)),void 0!==e.minHeight&&(this.minHeight=(0,m.setRangeValue)(e.minHeight)),void 0!==e.rate&&(this.rate=(0,m.setRangeValue)(e.rate)),void 0!==e.saturation&&(this.saturation=(0,m.setRangeValue)(e.saturation)),void 0!==e.sounds&&(this.sounds=e.sounds),void 0!==e.speed&&(this.speed=(0,m.setRangeValue)(e.speed)),void 0!==e.splitCount&&(this.splitCount=(0,m.setRangeValue)(e.splitCount)))}}var g=c(145),y=c(173),h=c(526),v=c(140),w=c(75),x=c(668),b=c(933),q=c(637);let R=!1,V=!1;const S=e=>{const t=e.data;return"circle"===t.particle.shape&&!!t.particle.splitCount&&t.particle.splitCount<2};class j{constructor(e){this._container=e}pause(){this._container.pause()}play(){this._container.play()}stop(){this._container.stop()}}async function k(e){if(!R){if(V)return new Promise((e=>{const t=setInterval((()=>{R&&(clearInterval(t),e())}),100)}));V=!0,e.checkVersion("3.9.1"),await(0,h.loadEmittersPlugin)(e,!1),await(0,v.loadEmittersShapeSquare)(e,!1),await(0,b.loadSoundsPlugin)(e,!1),await(0,x.loadRotateUpdater)(e,!1),await(0,y.loadDestroyUpdater)(e,!1),await(0,w.loadLifeUpdater)(e,!1),await(0,q.loadTrailEffect)(e,!1),await(0,g.loadBasic)(e,!1),V=!1,R=!0}}async function M(e,t,i){await k(m.tsParticles);const s=new f;s.load(t);const r=function(e,t){return{detectRetina:!0,background:{color:e.background},fullScreen:{enable:!!t},fpsLimit:60,emitters:{direction:m.MoveDirection.top,life:{count:0,duration:.1,delay:.1},rate:{delay:(0,m.isNumber)(e.rate)?1/e.rate:{min:1/(0,m.getRangeMin)(e.rate),max:1/(0,m.getRangeMax)(e.rate)},quantity:1},size:{width:100,height:0},position:{y:100,x:50}},particles:{number:{value:0},color:{value:"#fff"},destroy:{mode:"split",bounds:{top:(0,m.setRangeValue)(e.minHeight)},split:{sizeOffset:!1,count:1,factor:{value:.333333},rate:{value:e.splitCount},colorOffset:{s:e.saturation,l:e.brightness},particles:{color:{value:e.colors},number:{value:0},opacity:{value:{min:.1,max:1},animation:{enable:!0,speed:1,sync:!1,startValue:m.StartValueType.max,destroy:m.DestroyType.min}},effect:{type:"trail",options:{trail:{length:{min:5,max:10}}}},shape:{type:"circle"},size:{value:{min:1,max:2},animation:{enable:!0,speed:5,count:1,sync:!1,startValue:m.StartValueType.min,destroy:m.DestroyType.none}},life:{count:1,duration:{value:{min:.25,max:.5}}},move:{decay:{min:.05,max:.1},enable:!0,gravity:{enable:!0,inverse:!1,acceleration:(0,m.setRangeValue)(e.gravity)},speed:(0,m.setRangeValue)(e.speed),direction:"none",outModes:m.OutMode.destroy}}}},life:{count:1},effect:{type:"trail",options:{trail:{length:{min:10,max:30},minWidth:1,maxWidth:1}}},shape:{type:"circle"},size:{value:1},opacity:{value:.5},rotate:{path:!0},move:{enable:!0,gravity:{acceleration:15,enable:!0,inverse:!0,maxSpeed:100},speed:{min:10,max:20},outModes:{default:m.OutMode.destroy,top:m.OutMode.none}}},sounds:{enable:e.sounds,events:[{event:m.EventType.particleRemoved,filter:S,audio:["https://particles.js.org/audio/explosion0.mp3","https://particles.js.org/audio/explosion1.mp3","https://particles.js.org/audio/explosion2.mp3"]}],volume:50}}}(s,i),a=await m.tsParticles.load({id:e,element:i,options:r});if(a)return new j(a)}async function O(e,t){let i,s;return(0,m.isString)(e)?(i=e,s=t??{}):(i="fireworks",s=e??{}),M(i,s)}return O.create=async(e,t)=>M(e.id??"fireworks",t??{},e),O.init=async()=>{await k(m.tsParticles)},O.version="3.9.1",(0,m.isSsr)()||(window.fireworks=O),d})()));