File: /home/adventp/www/wp-content/themes/brooklyn/js/noise/aurora.min.js
!function(t){"use strict";let{abs:s,round:i,random:a}=Math,h=t=>t*a();window.UT_Aurora_Effect=class{constructor(s,i){this.container=s,this.config=JSON.parse(this.container.dataset.effectConfig),this.canvas="",this.ctx="",this.center=[],this.tick=0,this.simplex="",this.rayProps="",t(this.container).css("mix-blend-mode",this.config.blend_mode),this.createCanvas(),this.resize(),this.initRays(),this.draw(),i&&"function"==typeof i&&i(this)}initRays(){this.simplex=new SimplexNoise,this.rayProps=new Float32Array(800);let t;for(t=0;t<800;t+=8)this.initRay(t)}initRay(t){let s,a,e,n,c,r,o,d,l,p;s=200+h(200),a=h(this.canvas.a.width),e=this.center[1]+100,n=this.center[1]+100-s,e+=c=100*this.simplex.noise3D(.0015*a,.0015*e,.0015*this.tick),n+=c,r=0,o=50+h(100),d=10+h(20),l=.05+h(.1)*(i(h(1))?1:-1),p=this.config.hue.H+h(this.config.rangeHue),this.rayProps.set([a,e,n,0,o,d,l,p],t)}drawRays(){let t;for(t=0;t<800;t+=8)this.updateRay(t)}updateRay(t){let s,i,a,h,e,n,c,r,o=1+t,d=2+t,l=3+t,p=4+t,x=5+t,y=6+t,g=7+t;s=this.rayProps[t],i=this.rayProps[o],a=this.rayProps[d],h=this.rayProps[l],e=this.rayProps[p],n=this.rayProps[x],c=this.rayProps[y],r=this.rayProps[g],this.drawRay(s,i,a,h,e,n,r),s+=c,h++,this.rayProps[t]=s,this.rayProps[l]=h,(this.checkBounds(s)||h>e)&&this.initRay(t)}drawRay(t,i,a,h,e,n,c){let r;(r=this.ctx.a.createLinearGradient(t,i,t,a)).addColorStop(0,`hsla(${c},${this.config.hue.S}%,${this.config.hue.L}%,0)`),r.addColorStop(.5,`hsla(${c},${this.config.hue.S}%,${this.config.hue.L}%,${((t,i)=>{let a=.5*i;return s((t+a)%i-a)/a})(h,e)})`),r.addColorStop(1,`hsla(${c},${this.config.hue.S}%,${this.config.hue.L}%,0)`),this.ctx.a.save(),this.ctx.a.beginPath(),this.ctx.a.strokeStyle=r,this.ctx.a.lineWidth=n,this.ctx.a.moveTo(t,i),this.ctx.a.lineTo(t,a),this.ctx.a.stroke(),this.ctx.a.closePath(),this.ctx.a.restore()}checkBounds(t){return t<0||t>this.canvas.a.width}createCanvas(){this.canvas={a:document.createElement("canvas"),b:document.createElement("canvas")},this.canvas.b.style="\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n ",this.container.appendChild(this.canvas.b),this.ctx={a:this.canvas.a.getContext("2d"),b:this.canvas.b.getContext("2d")}}resize(){const{clientWidth:t,clientHeight:s}=this.container;this.canvas.a.width=t,this.canvas.a.height=s,this.ctx.a.drawImage(this.canvas.b,0,0),this.canvas.b.width=t,this.canvas.b.height=s,this.ctx.b.drawImage(this.canvas.a,0,0),this.center[0]=.5*this.canvas.a.width,this.center[1]=.5*this.canvas.a.height}render(){this.ctx.b.save(),this.ctx.b.filter="blur(12px)",this.ctx.a.globalCompositeOperation="lighter",this.ctx.b.drawImage(this.canvas.a,0,0),this.ctx.b.restore()}draw(){this.tick++,this.ctx.a.clearRect(0,0,this.canvas.a.width,this.canvas.a.height),this.ctx.b.fillStyle=this.config.backgroundColor,this.ctx.b.fillRect(0,0,this.canvas.b.width,this.canvas.a.height),this.drawRays(),this.render()}}}(jQuery);