UNPKG

iobroker.lovelace

Version:

With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI

1 lines 4.04 kB
export const __rspack_esm_id=77989;export const __rspack_esm_ids=[77989];export const __webpack_modules__={51300(e,t,i){i.d(t,{MovePluginInstance:()=>s});i(45367),i(92731);var a=i(61688);function n(e,t,i,n,s,o,r){!function(e,t){const i=e.options,n=i.move.path;if(!n.enable)return;const s=e.pathDelay??0;if(e.lastPathTime<=s)return void(e.lastPathTime+=t.value);const o=e.pathGenerator?.generate(e,t);o&&e.velocity.addTo(o);n.clamp&&(e.velocity.x=(0,a.qE8)(e.velocity.x,-1,1),e.velocity.y=(0,a.qE8)(e.velocity.y,-1,1));e.lastPathTime-=s}(e,r);const c=e.gravity,l=c?.enable&&c.inverse?-1:1;s&&i&&(e.velocity.x+=s*r.factor/(60*i)),c?.enable&&i&&(e.velocity.y+=l*(c.acceleration*r.factor)/(60*i));const p=e.moveDecay;e.velocity.multTo(p??1);const y=e.velocity.mult(i);c?.enable&&n>0&&(!c.inverse&&y.y>=0&&y.y>=n||c.inverse&&y.y<=0&&y.y<=-n)&&(y.y=l*n,i&&(e.velocity.y=y.y/i));const h=e.options.zIndex,v=(1-e.zIndexFactor)**h.velocityRate;y.multTo(v),y.multTo(o);const{position:d}=e;d.addTo(y),t.vibrate&&(d.x+=Math.sin(d.x*Math.cos(d.y))*o,d.y+=Math.cos(d.y*Math.sin(d.x))*o)}class s{destroy(){this.availablePathGenerators=new Map,this.pathGenerators=new Map}isEnabled(e){return!e.destroyed&&e.options.move.enable}particleCreated(e){const t=e.options.move,i=t.gravity,n=t.path;if(e.moveDecay=a.WH8-(0,a.VGA)(t.decay),e.pathDelay=(0,a.VGA)(n.delay.value)*a.XuV,n.generator){let t=this.pathGenerators.get(n.generator);t||(t=this.availablePathGenerators.get(n.generator),t&&(this.pathGenerators.set(n.generator,t),t.init())),e.pathGenerator=t}e.gravity={enable:i.enable,acceleration:(0,a.VGA)(i.acceleration),inverse:i.inverse},function(e,t){const i=t.options.move.spin;if(!i.enable)return;const n=i.position??{x:50,y:50},s={x:.01*n.x*e.canvas.size.width,y:.01*n.y*e.canvas.size.height},o=t.getPosition(),r=(0,a.YfF)(o,s),c=(0,a.VGA)(i.acceleration);t.retina.spinAcceleration=c*e.retina.pixelRatio,t.spin={center:s,direction:t.velocity.x>=0?a.pTR.clockwise:a.pTR.counterClockwise,angle:(0,a.G0i)()*a.R1e,radius:r,acceleration:t.retina.spinAcceleration}}(this._container,e)}particleDestroyed(e){const t=e.pathGenerator;t?.reset(e)}particleUpdate(e,t){const i=e.options,s=i.move;if(!s.enable)return;const o=this._container,r=o.retina.pixelRatio,c=function(e){return e.slow.inRange?e.slow.factor:1}(e),l=o.retina.reduceFactor,p=e.retina.moveSpeed,y=e.retina.moveDrift,h=(0,a.W9e)(i.size.value)*r,v=p*(s.size?e.getRadius()/h:1)*c*(t.factor||1)*a.MXx,d=e.retina.maxSpeed;s.spin.enable?function(e,t,i,n){if(!t.spin)return;const s=t.spin.direction===a.pTR.clockwise,o={x:s?Math.cos:Math.sin,y:s?Math.sin:Math.cos};t.position.x=t.spin.center.x+t.spin.radius*o.x(t.spin.angle)*n,t.position.y=t.spin.center.y+t.spin.radius*o.y(t.spin.angle)*n,t.spin.radius+=t.spin.acceleration*n;const r=Math.max(e.canvas.size.width,e.canvas.size.height),c=r*a.MXx;t.spin.radius>c?(t.spin.radius=c,t.spin.acceleration*=-1):t.spin.radius<0&&(t.spin.radius=0,t.spin.acceleration*=-1),t.spin.angle+=.01*i*(1-t.spin.radius/r)}(o,e,v,l):n(e,s,v,d,y,l,t),function(e){const t=e.initialPosition,{dx:i,dy:n}=(0,a.vrU)(t,e.position),s=Math.abs(i),o=Math.abs(n),{maxDistance:r}=e.retina,c=r.horizontal,l=r.vertical;if(!c&&!l)return;if((c&&s>=c||l&&o>=l)&&!e.misplaced)e.misplaced=!!c&&s>c||!!l&&o>l,c&&(e.velocity.x=e.velocity.y*a.MXx-e.velocity.x),l&&(e.velocity.y=e.velocity.x*a.MXx-e.velocity.y);else if((!c||s<c)&&(!l||o<l)&&e.misplaced)e.misplaced=!1;else if(e.misplaced){const i=e.position,n=e.velocity;c&&(i.x<t.x&&n.x<0||i.x>t.x&&n.x>0)&&(n.x*=-(0,a.G0i)()),l&&(i.y<t.y&&n.y<0||i.y>t.y&&n.y>0)&&(n.y*=-(0,a.G0i)())}}(e)}preInit(){return this._init()}redrawInit(){return this._init()}update(){for(const e of this.pathGenerators.values())e.update()}async _init(){const e=await(this._pluginManager.getPathGenerators?.(this._container,!0));if(e){this.availablePathGenerators=e,this.pathGenerators=new Map;for(const e of this.pathGenerators.values())e.init()}}constructor(e,t){this._pluginManager=e,this._container=t,this.availablePathGenerators=new Map,this.pathGenerators=new Map}}}};