@basmilius/apple-devices 0.0.68 → 0.0.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var ff=Object.defineProperty;var ho=(o,t)=>{for(var f in t)ff(o,f,{get:t[f],enumerable:!0,configurable:!0,set:(d)=>t[f]=()=>d})};var Uo=2000,E=Symbol("com.basmilius.airplay:protocol"),V=Symbol("com.basmilius.airplay:subscribe"),_=Symbol("com.basmilius.airplay:unsubscribe");import{EventEmitter as ui}from"node:events";import{AirPlay as Ei}from"@basmilius/apple-airplay";import{reporter as lo}from"@basmilius/apple-common";import{Proto as df}from"@basmilius/apple-airplay";import{waitFor as qo}from"@basmilius/apple-common";class Yo{get#o(){return this.#f.dataStream}get#f(){return this.#d[E]}#d;constructor(o){this.#d=o}async up(){await this.pressAndRelease(1,140)}async down(){await this.pressAndRelease(1,141)}async left(){await this.pressAndRelease(1,139)}async right(){await this.pressAndRelease(1,138)}async menu(){await this.pressAndRelease(1,134)}async play(){await this.pressAndRelease(12,176)}async playPause(){if(this.#d.state.nowPlayingClient?.playbackState===df.PlaybackState_Enum.Playing)await this.pause();else await this.play()}async pause(){await this.pressAndRelease(12,177)}async next(){await this.pressAndRelease(12,181)}async previous(){await this.pressAndRelease(12,182)}async suspend(){await this.pressAndRelease(1,130)}async select(){await this.pressAndRelease(1,137)}async wake(){await this.pressAndRelease(1,131)}async home(){await this.pressAndRelease(12,64)}async volumeUp(){await this.pressAndRelease(12,233)}async volumeDown(){await this.pressAndRelease(12,234)}async mute(){await this.pressAndRelease(12,226)}async doublePress(o,t){await this.pressAndRelease(o,t),await qo(150),await this.pressAndRelease(o,t)}async longPress(o,t,f=1000){await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!0)),await qo(f),await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!1))}async pressAndRelease(o,t){await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!0)),await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!1))}}import{EventEmitter as wi}from"node:events";import{Proto as ai}from"@basmilius/apple-airplay";import{Proto as si}from"@basmilius/apple-airplay";var mf=typeof global=="object"&&global&&global.Object===Object&&global,c=mf;var rf=typeof self=="object"&&self&&self.Object===Object&&self,xf=c||rf||Function("return this")(),w=xf;var pf=w.Symbol,K=pf;var Io=Object.prototype,nf=Io.hasOwnProperty,lf=Io.toString,z=K?K.toStringTag:void 0;function Pf(o){var t=nf.call(o,z),f=o[z];try{o[z]=void 0;var d=!0}catch(r){}var i=lf.call(o);if(d)if(t)o[z]=f;else delete o[z];return i}var Bo=Pf;var sf=Object.prototype,wf=sf.toString;function af(o){return wf.call(o)}var No=af;var uf="[object Null]",Ef="[object Undefined]",$o=K?K.toStringTag:void 0;function hf(o){if(o==null)return o===void 0?Ef:uf;return $o&&$o in Object(o)?Bo(o):No(o)}var h=hf;function Wf(o){return o!=null&&typeof o=="object"}var a=Wf;var Cf=Array.isArray,H=Cf;function Rf(o){var t=typeof o;return o!=null&&(t=="object"||t=="function")}var l=Rf;function Df(o){return o}var y=Df;var Sf="[object AsyncFunction]",Qf="[object Function]",Kf="[object GeneratorFunction]",Uf="[object Proxy]";function qf(o){if(!l(o))return!1;var t=h(o);return t==Qf||t==Kf||t==Sf||t==Uf}var U=qf;var Yf=w["__core-js_shared__"],v=Yf;var Zo=function(){var o=/[^.]+$/.exec(v&&v.keys&&v.keys.IE_PROTO||"");return o?"Symbol(src)_1."+o:""}();function If(o){return!!Zo&&Zo in o}var Jo=If;var Bf=Function.prototype,Nf=Bf.toString;function $f(o){if(o!=null){try{return Nf.call(o)}catch(t){}try{return o+""}catch(t){}}return""}var Xo=$f;var Zf=/[\\^$.*+?()[\]{}|]/g,Jf=/^\[object .+?Constructor\]$/,Xf=Function.prototype,Lf=Object.prototype,zf=Xf.toString,Hf=Lf.hasOwnProperty,Ff=RegExp("^"+zf.call(Hf).replace(Zf,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Mf(o){if(!l(o)||Jo(o))return!1;var t=U(o)?Ff:Jf;return t.test(Xo(o))}var Lo=Mf;function Gf(o,t){return o==null?void 0:o[t]}var zo=Gf;function Af(o,t){var f=zo(o,t);return Lo(f)?f:void 0}var q=Af;var Ho=Object.create,Of=function(){function o(){}return function(t){if(!l(t))return{};if(Ho)return Ho(t);o.prototype=t;var f=new o;return o.prototype=void 0,f}}(),Fo=Of;function Vf(o,t,f){switch(f.length){case 0:return o.call(t);case 1:return o.call(t,f[0]);case 2:return o.call(t,f[0],f[1]);case 3:return o.call(t,f[0],f[1],f[2])}return o.apply(t,f)}var Mo=Vf;function _f(o,t){var f=-1,d=o.length;t||(t=Array(d));while(++f<d)t[f]=o[f];return t}var Go=_f;var cf=800,yf=16,vf=Date.now;function Tf(o){var t=0,f=0;return function(){var d=vf(),i=yf-(d-f);if(f=d,i>0){if(++t>=cf)return arguments[0]}else t=0;return o.apply(void 0,arguments)}}var Ao=Tf;function kf(o){return function(){return o}}var Oo=kf;var bf=function(){try{var o=q(Object,"defineProperty");return o({},"",{}),o}catch(t){}}(),Y=bf;var gf=!Y?y:function(o,t){return Y(o,"toString",{configurable:!0,enumerable:!1,value:Oo(t),writable:!0})},Vo=gf;var jf=Ao(Vo),_o=jf;var ef=9007199254740991,od=/^(?:0|[1-9]\d*)$/;function td(o,t){var f=typeof o;return t=t==null?ef:t,!!t&&(f=="number"||f!="symbol"&&od.test(o))&&(o>-1&&o%1==0&&o<t)}var T=td;function fd(o,t,f){if(t=="__proto__"&&Y)Y(o,t,{configurable:!0,enumerable:!0,value:f,writable:!0});else o[t]=f}var I=fd;function dd(o,t){return o===t||o!==o&&t!==t}var W=dd;var md=Object.prototype,id=md.hasOwnProperty;function rd(o,t,f){var d=o[t];if(!(id.call(o,t)&&W(d,f))||f===void 0&&!(t in o))I(o,t,f)}var co=rd;function xd(o,t,f,d){var i=!f;f||(f={});var r=-1,p=t.length;while(++r<p){var m=t[r],n=d?d(f[m],o[m],m,f,o):void 0;if(n===void 0)n=o[m];if(i)I(f,m,n);else co(f,m,n)}return f}var yo=xd;var vo=Math.max;function pd(o,t,f){return t=vo(t===void 0?o.length-1:t,0),function(){var d=arguments,i=-1,r=vo(d.length-t,0),p=Array(r);while(++i<r)p[i]=d[t+i];i=-1;var m=Array(t+1);while(++i<t)m[i]=d[i];return m[t]=f(p),Mo(o,this,m)}}var To=pd;function nd(o,t){return _o(To(o,t,y),o+"")}var ko=nd;var ld=9007199254740991;function Pd(o){return typeof o=="number"&&o>-1&&o%1==0&&o<=ld}var k=Pd;function sd(o){return o!=null&&k(o.length)&&!U(o)}var B=sd;function wd(o,t,f){if(!l(f))return!1;var d=typeof t;if(d=="number"?B(f)&&T(t,f.length):d=="string"&&(t in f))return W(f[t],o);return!1}var bo=wd;function ad(o){return ko(function(t,f){var d=-1,i=f.length,r=i>1?f[i-1]:void 0,p=i>2?f[2]:void 0;if(r=o.length>3&&typeof r=="function"?(i--,r):void 0,p&&bo(f[0],f[1],p))r=i<3?void 0:r,i=1;t=Object(t);while(++d<i){var m=f[d];if(m)o(t,m,d,r)}return t})}var go=ad;var ud=Object.prototype;function Ed(o){var t=o&&o.constructor,f=typeof t=="function"&&t.prototype||ud;return o===f}var b=Ed;function hd(o,t){var f=-1,d=Array(o);while(++f<o)d[f]=t(f);return d}var jo=hd;var Wd="[object Arguments]";function Cd(o){return a(o)&&h(o)==Wd}var Wo=Cd;var eo=Object.prototype,Rd=eo.hasOwnProperty,Dd=eo.propertyIsEnumerable,Sd=Wo(function(){return arguments}())?Wo:function(o){return a(o)&&Rd.call(o,"callee")&&!Dd.call(o,"callee")},F=Sd;var j={};ho(j,{default:()=>M});function Qd(){return!1}var ot=Qd;var dt=typeof j=="object"&&j&&!j.nodeType&&j,tt=dt&&typeof g=="object"&&g&&!g.nodeType&&g,Kd=tt&&tt.exports===dt,ft=Kd?w.Buffer:void 0,Ud=ft?ft.isBuffer:void 0,qd=Ud||ot,M=qd;var Yd="[object Arguments]",Id="[object Array]",Bd="[object Boolean]",Nd="[object Date]",$d="[object Error]",Zd="[object Function]",Jd="[object Map]",Xd="[object Number]",Ld="[object Object]",zd="[object RegExp]",Hd="[object Set]",Fd="[object String]",Md="[object WeakMap]",Gd="[object ArrayBuffer]",Ad="[object DataView]",Od="[object Float32Array]",Vd="[object Float64Array]",_d="[object Int8Array]",cd="[object Int16Array]",yd="[object Int32Array]",vd="[object Uint8Array]",Td="[object Uint8ClampedArray]",kd="[object Uint16Array]",bd="[object Uint32Array]",x={};x[Od]=x[Vd]=x[_d]=x[cd]=x[yd]=x[vd]=x[Td]=x[kd]=x[bd]=!0;x[Yd]=x[Id]=x[Gd]=x[Bd]=x[Ad]=x[Nd]=x[$d]=x[Zd]=x[Jd]=x[Xd]=x[Ld]=x[zd]=x[Hd]=x[Fd]=x[Md]=!1;function gd(o){return a(o)&&k(o.length)&&!!x[h(o)]}var mt=gd;function jd(o){return function(t){return o(t)}}var it=jd;var oo={};ho(oo,{default:()=>to});var rt=typeof oo=="object"&&oo&&!oo.nodeType&&oo,G=rt&&typeof e=="object"&&e&&!e.nodeType&&e,ed=G&&G.exports===rt,Co=ed&&c.process,om=function(){try{var o=G&&G.require&&G.require("util").types;if(o)return o;return Co&&Co.binding&&Co.binding("util")}catch(t){}}(),to=om;var xt=to&&to.isTypedArray,tm=xt?it(xt):mt,fo=tm;var fm=Object.prototype,dm=fm.hasOwnProperty;function mm(o,t){var f=H(o),d=!f&&F(o),i=!f&&!d&&M(o),r=!f&&!d&&!i&&fo(o),p=f||d||i||r,m=p?jo(o.length,String):[],n=m.length;for(var s in o)if((t||dm.call(o,s))&&!(p&&(s=="length"||i&&(s=="offset"||s=="parent")||r&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||T(s,n))))m.push(s);return m}var pt=mm;function im(o,t){return function(f){return o(t(f))}}var nt=im;function rm(o){var t=[];if(o!=null)for(var f in Object(o))t.push(f);return t}var lt=rm;var xm=Object.prototype,pm=xm.hasOwnProperty;function nm(o){if(!l(o))return lt(o);var t=b(o),f=[];for(var d in o)if(!(d=="constructor"&&(t||!pm.call(o,d))))f.push(d);return f}var Pt=nm;function lm(o){return B(o)?pt(o,!0):Pt(o)}var mo=lm;var Pm=q(Object,"create"),u=Pm;function sm(){this.__data__=u?u(null):{},this.size=0}var st=sm;function wm(o){var t=this.has(o)&&delete this.__data__[o];return this.size-=t?1:0,t}var wt=wm;var am="__lodash_hash_undefined__",um=Object.prototype,Em=um.hasOwnProperty;function hm(o){var t=this.__data__;if(u){var f=t[o];return f===am?void 0:f}return Em.call(t,o)?t[o]:void 0}var at=hm;var Wm=Object.prototype,Cm=Wm.hasOwnProperty;function Rm(o){var t=this.__data__;return u?t[o]!==void 0:Cm.call(t,o)}var ut=Rm;var Dm="__lodash_hash_undefined__";function Sm(o,t){var f=this.__data__;return this.size+=this.has(o)?0:1,f[o]=u&&t===void 0?Dm:t,this}var Et=Sm;function N(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}N.prototype.clear=st;N.prototype.delete=wt;N.prototype.get=at;N.prototype.has=ut;N.prototype.set=Et;var Ro=N;function Qm(){this.__data__=[],this.size=0}var ht=Qm;function Km(o,t){var f=o.length;while(f--)if(W(o[f][0],t))return f;return-1}var C=Km;var Um=Array.prototype,qm=Um.splice;function Ym(o){var t=this.__data__,f=C(t,o);if(f<0)return!1;var d=t.length-1;if(f==d)t.pop();else qm.call(t,f,1);return--this.size,!0}var Wt=Ym;function Im(o){var t=this.__data__,f=C(t,o);return f<0?void 0:t[f][1]}var Ct=Im;function Bm(o){return C(this.__data__,o)>-1}var Rt=Bm;function Nm(o,t){var f=this.__data__,d=C(f,o);if(d<0)++this.size,f.push([o,t]);else f[d][1]=t;return this}var Dt=Nm;function $(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}$.prototype.clear=ht;$.prototype.delete=Wt;$.prototype.get=Ct;$.prototype.has=Rt;$.prototype.set=Dt;var R=$;var $m=q(w,"Map"),io=$m;function Zm(){this.size=0,this.__data__={hash:new Ro,map:new(io||R),string:new Ro}}var St=Zm;function Jm(o){var t=typeof o;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?o!=="__proto__":o===null}var Qt=Jm;function Xm(o,t){var f=o.__data__;return Qt(t)?f[typeof t=="string"?"string":"hash"]:f.map}var D=Xm;function Lm(o){var t=D(this,o).delete(o);return this.size-=t?1:0,t}var Kt=Lm;function zm(o){return D(this,o).get(o)}var Ut=zm;function Hm(o){return D(this,o).has(o)}var qt=Hm;function Fm(o,t){var f=D(this,o),d=f.size;return f.set(o,t),this.size+=f.size==d?0:1,this}var Yt=Fm;function Z(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}Z.prototype.clear=St;Z.prototype.delete=Kt;Z.prototype.get=Ut;Z.prototype.has=qt;Z.prototype.set=Yt;var It=Z;var Mm=nt(Object.getPrototypeOf,Object),ro=Mm;var Gm="[object Object]",Am=Function.prototype,Om=Object.prototype,Bt=Am.toString,Vm=Om.hasOwnProperty,_m=Bt.call(Object);function cm(o){if(!a(o)||h(o)!=Gm)return!1;var t=ro(o);if(t===null)return!0;var f=Vm.call(t,"constructor")&&t.constructor;return typeof f=="function"&&f instanceof f&&Bt.call(f)==_m}var Nt=cm;function ym(){this.__data__=new R,this.size=0}var $t=ym;function vm(o){var t=this.__data__,f=t.delete(o);return this.size=t.size,f}var Zt=vm;function Tm(o){return this.__data__.get(o)}var Jt=Tm;function km(o){return this.__data__.has(o)}var Xt=km;var bm=200;function gm(o,t){var f=this.__data__;if(f instanceof R){var d=f.__data__;if(!io||d.length<bm-1)return d.push([o,t]),this.size=++f.size,this;f=this.__data__=new It(d)}return f.set(o,t),this.size=f.size,this}var Lt=gm;function J(o){var t=this.__data__=new R(o);this.size=t.size}J.prototype.clear=$t;J.prototype.delete=Zt;J.prototype.get=Jt;J.prototype.has=Xt;J.prototype.set=Lt;var zt=J;var po={};ho(po,{default:()=>Do});var Gt=typeof po=="object"&&po&&!po.nodeType&&po,Ht=Gt&&typeof xo=="object"&&xo&&!xo.nodeType&&xo,jm=Ht&&Ht.exports===Gt,Ft=jm?w.Buffer:void 0,Mt=Ft?Ft.allocUnsafe:void 0;function em(o,t){if(t)return o.slice();var f=o.length,d=Mt?Mt(f):new o.constructor(f);return o.copy(d),d}var Do=em;var oi=w.Uint8Array,So=oi;function ti(o){var t=new o.constructor(o.byteLength);return new So(t).set(new So(o)),t}var At=ti;function fi(o,t){var f=t?At(o.buffer):o.buffer;return new o.constructor(f,o.byteOffset,o.length)}var Ot=fi;function di(o){return typeof o.constructor=="function"&&!b(o)?Fo(ro(o)):{}}var Vt=di;function mi(o){return function(t,f,d){var i=-1,r=Object(t),p=d(t),m=p.length;while(m--){var n=p[o?m:++i];if(f(r[n],n,r)===!1)break}return t}}var _t=mi;var ii=_t(),ct=ii;function ri(o,t,f){if(f!==void 0&&!W(o[t],f)||f===void 0&&!(t in o))I(o,t,f)}var A=ri;function xi(o){return a(o)&&B(o)}var yt=xi;function pi(o,t){if(t==="constructor"&&typeof o[t]==="function")return;if(t=="__proto__")return;return o[t]}var O=pi;function ni(o){return yo(o,mo(o))}var vt=ni;function li(o,t,f,d,i,r,p){var m=O(o,f),n=O(t,f),s=p.get(n);if(s){A(o,f,s);return}var P=r?r(m,n,f+"",o,t,p):void 0,L=P===void 0;if(L){var uo=H(n),Eo=!uo&&M(n),Ko=!uo&&!Eo&&fo(n);if(P=n,uo||Eo||Ko)if(H(m))P=m;else if(yt(m))P=Go(m);else if(Eo)L=!1,P=Do(n,!0);else if(Ko)L=!1,P=Ot(n,!0);else P=[];else if(Nt(n)||F(n)){if(P=m,F(m))P=vt(m);else if(!l(m)||U(m))P=Vt(n)}else L=!1}if(L)p.set(n,P),i(P,n,d,r,p),p.delete(n);A(o,f,P)}var Tt=li;function kt(o,t,f,d,i){if(o===t)return;ct(t,function(r,p){if(i||(i=new zt),l(r))Tt(o,t,p,f,kt,d,i);else{var m=d?d(O(o,p),r,p+"",o,t,i):void 0;if(m===void 0)m=r;A(o,p,m)}},mo)}var bt=kt;var Pi=go(function(o,t,f){bt(o,t,f)}),Qo=Pi;class no{get bundleIdentifier(){return this.#o}get displayName(){return this.#f}get playbackQueue(){return this.#d}get playbackState(){return this.#m}get playbackStateTimestamp(){return this.#t}get supportedCommands(){return this.#r}#o;#f;#d=null;#m;#t;#r=[];constructor(o,t){this.#o=o,this.#f=t,this.#m=si.PlaybackState_Enum.Unknown,this.#r=[]}isCommandSupported(o){return this.#r.some((t)=>t.command===o)}setPlaybackQueue(o){this.#d=o}setPlaybackState(o,t){this.#m=o,this.#t=t}setSupportedCommands(o){this.#r=o}updateContentItem(o){if(!this.#d)return;let t=this.#d.contentItems.findIndex((f)=>f.identifier===o.identifier);if(t===-1)return;this.#d.contentItems[t]=Qo(o,this.#d.contentItems[t])}}class gt extends wi{get#o(){return this.#f.dataStream}get#f(){return this.#d[E]}get clients(){return this.#m}get nowPlayingClient(){return this.#t?this.#m[this.#t]??null:null}get volume(){return this.#r}get volumeAvailable(){return this.#x}get volumeCapabilities(){return this.#p}#d;#m;#t;#r;#x;#p;constructor(o){super();this.#d=o,this.clear(),this.onDeviceInfo=this.onDeviceInfo.bind(this),this.onOriginClientProperties=this.onOriginClientProperties.bind(this),this.onPlayerClientProperties=this.onPlayerClientProperties.bind(this),this.onSendCommandResult=this.onSendCommandResult.bind(this),this.onSetArtwork=this.onSetArtwork.bind(this),this.onSetDefaultSupportedCommands=this.onSetDefaultSupportedCommands.bind(this),this.onSetNowPlayingClient=this.onSetNowPlayingClient.bind(this),this.onSetNowPlayingPlayer=this.onSetNowPlayingPlayer.bind(this),this.onSetState=this.onSetState.bind(this),this.onUpdateClient=this.onUpdateClient.bind(this),this.onUpdateContentItem=this.onUpdateContentItem.bind(this),this.onUpdateContentItemArtwork=this.onUpdateContentItemArtwork.bind(this),this.onUpdatePlayer=this.onUpdatePlayer.bind(this),this.onUpdateOutputDevice=this.onUpdateOutputDevice.bind(this),this.onVolumeControlAvailability=this.onVolumeControlAvailability.bind(this),this.onVolumeControlCapabilitiesDidChange=this.onVolumeControlCapabilitiesDidChange.bind(this),this.onVolumeDidChange=this.onVolumeDidChange.bind(this)}async[V](){this.#o.on("deviceInfo",this.onDeviceInfo),this.#o.on("originClientProperties",this.onOriginClientProperties),this.#o.on("playerClientProperties",this.onPlayerClientProperties),this.#o.on("sendCommandResult",this.onSendCommandResult),this.#o.on("setArtwork",this.onSetArtwork),this.#o.on("setDefaultSupportedCommands",this.onSetDefaultSupportedCommands),this.#o.on("setNowPlayingClient",this.onSetNowPlayingClient),this.#o.on("setNowPlayingPlayer",this.onSetNowPlayingPlayer),this.#o.on("setState",this.onSetState),this.#o.on("updateClient",this.onUpdateClient),this.#o.on("updateContentItem",this.onUpdateContentItem),this.#o.on("updateContentItemArtwork",this.onUpdateContentItemArtwork),this.#o.on("updatePlayer",this.onUpdatePlayer),this.#o.on("updateOutputDevice",this.onUpdateOutputDevice),this.#o.on("volumeControlAvailability",this.onVolumeControlAvailability),this.#o.on("volumeControlCapabilitiesDidChange",this.onVolumeControlCapabilitiesDidChange),this.#o.on("volumeDidChange",this.onVolumeDidChange)}async[_](){let o=this.#o;if(!o)return;o.off("deviceInfo",this.onDeviceInfo),o.off("originClientProperties",this.onOriginClientProperties),o.off("playerClientProperties",this.onPlayerClientProperties),o.off("sendCommandResult",this.onSendCommandResult),o.off("setArtwork",this.onSetArtwork),o.off("setDefaultSupportedCommands",this.onSetDefaultSupportedCommands),o.off("setNowPlayingClient",this.onSetNowPlayingClient),o.off("setNowPlayingPlayer",this.onSetNowPlayingPlayer),o.off("setState",this.onSetState),o.off("updateClient",this.onUpdateClient),o.off("updateContentItem",this.onUpdateContentItem),o.off("updateContentItemArtwork",this.onUpdateContentItemArtwork),o.off("updatePlayer",this.onUpdatePlayer),o.off("updateOutputDevice",this.onUpdateOutputDevice),o.off("volumeControlAvailability",this.onVolumeControlAvailability),o.off("volumeControlCapabilitiesDidChange",this.onVolumeControlCapabilitiesDidChange),o.off("volumeDidChange",this.onVolumeDidChange)}clear(){this.#m={},this.#t=void 0,this.#r=0,this.#x=!1,this.#p=ai.VolumeCapabilities_Enum.None}async onDeviceInfo(o){this.emit("deviceInfo",o)}async onOriginClientProperties(o){this.emit("originClientProperties",o)}async onPlayerClientProperties(o){this.emit("playerClientProperties",o)}async onSendCommandResult(o){this.emit("sendCommandResult",o)}async onSetArtwork(o){this.emit("setArtwork",o)}async onSetDefaultSupportedCommands(o){this.emit("setDefaultSupportedCommands",o)}async onSetNowPlayingClient(o){this.#t=o.client?.bundleIdentifier??null,this.emit("setNowPlayingClient",o)}async onSetNowPlayingPlayer(o){this.emit("setNowPlayingPlayer",o)}async onSetState(o){let t=this.#i(o.playerPath.client.bundleIdentifier,o.displayName);if(o.playbackState)t.setPlaybackState(o.playbackState,o.playbackStateTimestamp);if(o.supportedCommands)t.setSupportedCommands(o.supportedCommands.supportedCommands);if(o.playbackQueue)t.setPlaybackQueue(o.playbackQueue);this.emit("setState",o)}async onUpdateContentItem(o){let t=this.#i(o.playerPath.client.bundleIdentifier,o.playerPath.client.displayName);if(!t)return;for(let f of o.contentItems)t.updateContentItem(f);this.emit("updateContentItem",o)}async onUpdateContentItemArtwork(o){this.emit("updateContentItemArtwork",o)}async onUpdatePlayer(o){this.emit("updatePlayer",o)}async onUpdateClient(o){this.#i(o.client.bundleIdentifier,o.client.displayName),this.emit("clients",this.#m)}async onUpdateOutputDevice(o){this.emit("updateOutputDevice",o)}async onVolumeControlAvailability(o){this.#x=o.volumeControlAvailable,this.#p=o.volumeCapabilities,this.emit("volumeControlAvailability",o.volumeControlAvailable,o.volumeCapabilities)}async onVolumeControlCapabilitiesDidChange(o){this.#x=o.capabilities.volumeControlAvailable,this.#p=o.capabilities.volumeCapabilities,this.emit("volumeControlCapabilitiesDidChange",o.capabilities.volumeControlAvailable,o.capabilities.volumeCapabilities)}async onVolumeDidChange(o){this.#r=o.volume,this.emit("volumeDidChange",o.volume)}#i(o,t){if(o in this.#m)return this.#m[o];else{let f=new no(o,t);return this.#m[o]=f,this.emit("clients",this.#m),f}}}class X extends ui{get[E](){return this.#i}get#o(){return this.#i.dataStream}get isConnected(){return this.#i?.rtsp?.isConnected??!1}get remote(){return this.#d}get state(){return this.#m}get timingServer(){return this.#n}set timingServer(o){this.#n=o}#f;#d;#m;#t;#r=!1;#x;#p;#i;#n;constructor(o){super();this.#f=o,this.#d=new Yo(this),this.#m=new gt(this)}async connect(){if(this.#r=!1,this.#m.clear(),this.#i=new Ei(this.#f),this.#i.rtsp.on("close",async()=>this.#s()),this.#i.rtsp.on("error",async(o)=>this.#w(o)),this.#i.rtsp.on("timeout",async()=>this.#a()),await this.#i.connect(),this.#t)this.#p=await this.#i.verify.start(this.#t);else await this.#i.pairing.start(),this.#p=await this.#i.pairing.transient();await this.#u(),this.emit("connected")}async disconnect(){this.#r=!0,clearInterval(this.#x),await this.#P(),await this.#i.disconnect(),this.emit("disconnected",!1)}async disconnectSafely(){try{await this.disconnect()}catch(o){}}async requestPlaybackQueue(o){await this.#o.exchange(this.#o.messages.playbackQueueRequest(0,o))}async sendCommand(o,t){await this.#o.exchange(this.#o.messages.sendCommand(o,t))}async setVolume(o){await this.#o.exchange(this.#o.messages.setVolume(o))}async setCredentials(o){this.#t=o}async#l(){try{await this.#i.feedback()}catch(o){lo.error("Feedback error",o)}}async#s(){if(this.#r)return;clearInterval(this.#x),this.emit("disconnected",!0)}async#w(o){lo.error("AirPlay error",o),await this.disconnectSafely(),this.emit("disconnected",!0)}async#a(){lo.error("AirPlay timeout"),await this.disconnectSafely(),this.emit("disconnected",!0)}async#u(){let o=this.#p;if(await this.#i.rtsp.enableEncryption(o.accessoryToControllerKey,o.controllerToAccessoryKey),await this.#P(),this.#n)await this.#i.setupTimingServer(this.#n);await this.#i.setupEventStream(o.pairingId,o.sharedSecret),await this.#i.setupDataStream(o.sharedSecret),await this.#E(),this.#x=setInterval(async()=>await this.#l(),Uo);let t=this.#f.packet.additionals.find((f)=>("rdata"in f)&&typeof f.rdata==="object"&&("gid"in f.rdata))?.rdata.gid;if(t)await this.#o.exchange(this.#o.messages.configureConnection(t));await this.#o.exchange(this.#o.messages.deviceInfo(o.pairingId)),this.#o.on("deviceInfo",async()=>{await this.#o.exchange(this.#o.messages.setConnectionState()),await this.#o.exchange(this.#o.messages.clientUpdatesConfig())})}async#E(){await this.#m[V]()}async#P(){try{await this.#m[_]()}catch(o){lo.error("State unsubscribe error",o)}}}var Po=Symbol("com.basmilius.companion-link:protocol");import{EventEmitter as hi}from"node:events";import{reporter as so}from"@basmilius/apple-common";import{CompanionLink as Wi,convertAttentionState as jt}from"@basmilius/apple-companion-link";class wo extends hi{get[Po](){return this.#t}get isConnected(){return this.#t?.socket?.isConnected??!1}#o;#f=!1;#d;#m;#t;constructor(o){super();this.#d=o,this.onSystemStatus=this.onSystemStatus.bind(this),this.onTVSystemStatus=this.onTVSystemStatus.bind(this)}async connect(){if(!this.#o)throw Error("Credentials are required to connect to a Companion Link device.");this.#f=!1,this.#t=new Wi(this.#d),this.#t.socket.on("close",async()=>this.#r()),this.#t.socket.on("error",async(o)=>this.#x(o)),this.#t.socket.on("timeout",async()=>this.#p()),await this.#t.connect(),this.#m=await this.#t.verify.start(this.#o),await this.#i(),this.emit("connected")}async disconnect(){this.#f=!0,await this.#l(),await this.#t.disconnect(),this.emit("disconnected",!1)}async disconnectSafely(){try{await this.disconnect()}catch(o){}}async setCredentials(o){this.#o=o}async setDiscoveryResult(o){this.#d=o}async getAttentionState(){return await this.#t.api.getAttentionState()}async getLaunchableApps(){return await this.#t.api.getLaunchableApps()}async getUserAccounts(){return await this.#t.api.getUserAccounts()}async launchApp(o){await this.#t.api.launchApp(o)}async launchUrl(o){await this.#t.api.launchUrl(o)}async mediaControlCommand(o,t){await this.#t.api.mediaControlCommand(o,t)}async pressButton(o,t,f){await this.#t.api.pressButton(o,t,f)}async switchUserAccount(o){await this.#t.api.switchUserAccount(o)}async#r(){if(this.#f)return;this.emit("disconnected",!0)}async#x(o){so.error("Companion Link error",o);try{await this.disconnect()}catch(t){}this.emit("disconnected",!0)}async#p(){so.error("Companion Link timeout"),await this.disconnectSafely(),this.emit("disconnected",!0)}async#i(){let o=this.#m;await this.#t.socket.enableEncryption(o.accessoryToControllerKey,o.controllerToAccessoryKey),await this.#t.api._systemInfo(this.#o.pairingId),await this.#t.api._touchStart(),await this.#t.api._sessionStart(),await this.#t.api._tvrcSessionStart(),await this.#t.api._unsubscribe("_iMC"),await this.#n()}async#n(){await this.#t.api._subscribe("SystemStatus",this.onSystemStatus),await this.#t.api._subscribe("TVSystemStatus",this.onTVSystemStatus);let o=await this.getAttentionState();this.emit("power",o)}async#l(){await this.#t.api._unsubscribe("SystemStatus",this.onSystemStatus),await this.#t.api._unsubscribe("TVSystemStatus",this.onTVSystemStatus)}async onSystemStatus(o){so.info("System Status",o),this.emit("power",jt(o.state))}async onTVSystemStatus(o){so.info("TV System Status",o),this.emit("power",jt(o.state))}}import{EventEmitter as Ci}from"node:events";import{Proto as S}from"@basmilius/apple-airplay";class et extends Ci{get airplay(){return this.#o}get companionLink(){return this.#f}get bundleIdentifier(){return this.#o.state.nowPlayingClient?.bundleIdentifier??null}get displayName(){return this.#o.state.nowPlayingClient?.displayName??null}get isConnected(){return this.#o.isConnected&&this.#f.isConnected}get isPlaying(){return this.playbackState===S.PlaybackState_Enum.Playing}get playbackQueue(){return this.#o.state.nowPlayingClient?.playbackQueue??null}get playbackState(){return this.#o.state.nowPlayingClient?.playbackState??S.PlaybackState_Enum.Unknown}get playbackStateTimestamp(){return this.#o.state.nowPlayingClient?.playbackStateTimestamp??-1}#o;#f;#d=!1;constructor(o,t){super();this.#o=new X(o),this.#f=new wo(t),this.#o.on("connected",()=>this.#m()),this.#o.on("disconnected",(f)=>this.#t(f)),this.#f.on("connected",()=>this.#m()),this.#f.on("disconnected",(f)=>this.#t(f))}async connect(o){await this.#o.setCredentials(o),await this.#f.setCredentials(o),await this.#o.connect(),await this.#f.connect(),this.#d=!1}async disconnect(){await this.#o.disconnect(),await this.#f.disconnect()}async turnOff(){await this.#o.remote.suspend()}async turnOn(){await this.#o.remote.wake()}async pause(){await this.#o.sendCommand(S.Command.Pause)}async playPause(){await this.#o.sendCommand(S.Command.TogglePlayPause)}async play(){await this.#o.sendCommand(S.Command.Play)}async stop(){await this.#o.sendCommand(S.Command.Stop)}async next(){await this.#o.sendCommand(S.Command.NextInContext)}async previous(){await this.#o.sendCommand(S.Command.PreviousInContext)}async volumeDown(){await this.#o.remote.volumeDown()}async volumeMute(){await this.#o.remote.mute()}async volumeUp(){await this.#o.remote.volumeUp()}async getCommandInfo(o){let t=this.#o.state.nowPlayingClient;if(!t)return null;return t.supportedCommands.find((f)=>f.command===o)??null}async isCommandSupported(o){let t=this.#o.state.nowPlayingClient;if(!t)return!1;return t.isCommandSupported(o)}async#m(){if(!this.#o.isConnected||!this.#f.isConnected)return;this.emit("connected")}async#t(o){if(this.#d)return;this.#d=!0,await this.disconnect(),this.emit("disconnected",o)}}import{EventEmitter as Ri}from"node:events";import{Proto as Q}from"@basmilius/apple-airplay";class ao extends Ri{get airplay(){return this.#o}get bundleIdentifier(){return this.#o.state.nowPlayingClient?.bundleIdentifier??null}get displayName(){return this.#o.state.nowPlayingClient?.displayName??null}get isConnected(){return this.#o.isConnected}get isPlaying(){return this.playbackState===Q.PlaybackState_Enum.Playing}get playbackQueue(){return this.#o.state.nowPlayingClient?.playbackQueue??null}get playbackState(){return this.#o.state.nowPlayingClient?.playbackState??Q.PlaybackState_Enum.Unknown}get playbackStateTimestamp(){return this.#o.state.nowPlayingClient?.playbackStateTimestamp??-1}get volume(){return this.#o.state.volume??0}#o;#f=!1;constructor(o){super();this.#o=new X(o),this.#o.on("connected",()=>this.#d()),this.#o.on("disconnected",(t)=>this.#m(t))}async connect(){await this.#o.connect(),this.#f=!1}async disconnect(){await this.#o.disconnect()}async pause(){await this.#o.sendCommand(Q.Command.Pause)}async playPause(){await this.#o.sendCommand(Q.Command.TogglePlayPause)}async play(){await this.#o.sendCommand(Q.Command.Play)}async stop(){await this.#o.sendCommand(Q.Command.Stop)}async next(){await this.#o.sendCommand(Q.Command.NextInContext)}async previous(){await this.#o.sendCommand(Q.Command.PreviousInContext)}async setVolume(o){await this.#o.setVolume(o)}async getCommandInfo(o){let t=this.#o.state.nowPlayingClient;if(!t)return null;return t.supportedCommands.find((f)=>f.command===o)??null}async isCommandSupported(o){let t=this.#o.state.nowPlayingClient;if(!t)return!1;return t.isCommandSupported(o)}async#d(){this.emit("connected")}async#m(o){if(this.#f)return;this.#f=!0,await this.disconnect(),this.emit("disconnected",o)}}class of extends ao{}class tf extends ao{}export{tf as HomePodMini,of as HomePod,wo as CompanionLinkDevice,Po as COMPANION_LINK,et as AppleTV,X as AirPlayDevice,E as AIRPLAY};
1
+ var ff=Object.defineProperty;var ho=(o,t)=>{for(var f in t)ff(o,f,{get:t[f],enumerable:!0,configurable:!0,set:(d)=>t[f]=()=>d})};var Uo=2000,E=Symbol("com.basmilius.airplay:protocol"),V=Symbol("com.basmilius.airplay:subscribe"),_=Symbol("com.basmilius.airplay:unsubscribe");import{EventEmitter as ui}from"node:events";import{AirPlay as Ei}from"@basmilius/apple-airplay";import{reporter as lo}from"@basmilius/apple-common";import{Proto as df}from"@basmilius/apple-airplay";import{waitFor as qo}from"@basmilius/apple-common";class Yo{get#o(){return this.#f.dataStream}get#f(){return this.#d[E]}#d;constructor(o){this.#d=o}async up(){await this.pressAndRelease(1,140)}async down(){await this.pressAndRelease(1,141)}async left(){await this.pressAndRelease(1,139)}async right(){await this.pressAndRelease(1,138)}async menu(){await this.pressAndRelease(1,134)}async play(){await this.pressAndRelease(12,176)}async playPause(){if(this.#d.state.nowPlayingClient?.playbackState===df.PlaybackState_Enum.Playing)await this.pause();else await this.play()}async pause(){await this.pressAndRelease(12,177)}async next(){await this.pressAndRelease(12,181)}async previous(){await this.pressAndRelease(12,182)}async suspend(){await this.pressAndRelease(1,130)}async select(){await this.pressAndRelease(1,137)}async wake(){await this.pressAndRelease(1,131)}async home(){await this.pressAndRelease(12,64)}async volumeUp(){await this.pressAndRelease(12,233)}async volumeDown(){await this.pressAndRelease(12,234)}async mute(){await this.pressAndRelease(12,226)}async doublePress(o,t){await this.pressAndRelease(o,t),await qo(150),await this.pressAndRelease(o,t)}async longPress(o,t,f=1000){await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!0)),await qo(f),await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!1))}async pressAndRelease(o,t){await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!0)),await this.#o.exchange(this.#o.messages.sendHIDEvent(o,t,!1))}}import{EventEmitter as ai}from"node:events";import{Proto as wi}from"@basmilius/apple-airplay";import{Proto as si}from"@basmilius/apple-airplay";var mf=typeof global=="object"&&global&&global.Object===Object&&global,c=mf;var rf=typeof self=="object"&&self&&self.Object===Object&&self,xf=c||rf||Function("return this")(),a=xf;var pf=a.Symbol,K=pf;var Io=Object.prototype,nf=Io.hasOwnProperty,lf=Io.toString,z=K?K.toStringTag:void 0;function Pf(o){var t=nf.call(o,z),f=o[z];try{o[z]=void 0;var d=!0}catch(r){}var i=lf.call(o);if(d)if(t)o[z]=f;else delete o[z];return i}var Bo=Pf;var sf=Object.prototype,af=sf.toString;function wf(o){return af.call(o)}var No=wf;var uf="[object Null]",Ef="[object Undefined]",$o=K?K.toStringTag:void 0;function hf(o){if(o==null)return o===void 0?Ef:uf;return $o&&$o in Object(o)?Bo(o):No(o)}var h=hf;function Wf(o){return o!=null&&typeof o=="object"}var w=Wf;var Sf=Array.isArray,H=Sf;function Cf(o){var t=typeof o;return o!=null&&(t=="object"||t=="function")}var l=Cf;function Rf(o){return o}var y=Rf;var Df="[object AsyncFunction]",Qf="[object Function]",Kf="[object GeneratorFunction]",Uf="[object Proxy]";function qf(o){if(!l(o))return!1;var t=h(o);return t==Qf||t==Kf||t==Df||t==Uf}var U=qf;var Yf=a["__core-js_shared__"],v=Yf;var Zo=function(){var o=/[^.]+$/.exec(v&&v.keys&&v.keys.IE_PROTO||"");return o?"Symbol(src)_1."+o:""}();function If(o){return!!Zo&&Zo in o}var Jo=If;var Bf=Function.prototype,Nf=Bf.toString;function $f(o){if(o!=null){try{return Nf.call(o)}catch(t){}try{return o+""}catch(t){}}return""}var Xo=$f;var Zf=/[\\^$.*+?()[\]{}|]/g,Jf=/^\[object .+?Constructor\]$/,Xf=Function.prototype,Lf=Object.prototype,zf=Xf.toString,Hf=Lf.hasOwnProperty,Ff=RegExp("^"+zf.call(Hf).replace(Zf,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Mf(o){if(!l(o)||Jo(o))return!1;var t=U(o)?Ff:Jf;return t.test(Xo(o))}var Lo=Mf;function Gf(o,t){return o==null?void 0:o[t]}var zo=Gf;function Af(o,t){var f=zo(o,t);return Lo(f)?f:void 0}var q=Af;var Ho=Object.create,Of=function(){function o(){}return function(t){if(!l(t))return{};if(Ho)return Ho(t);o.prototype=t;var f=new o;return o.prototype=void 0,f}}(),Fo=Of;function Vf(o,t,f){switch(f.length){case 0:return o.call(t);case 1:return o.call(t,f[0]);case 2:return o.call(t,f[0],f[1]);case 3:return o.call(t,f[0],f[1],f[2])}return o.apply(t,f)}var Mo=Vf;function _f(o,t){var f=-1,d=o.length;t||(t=Array(d));while(++f<d)t[f]=o[f];return t}var Go=_f;var cf=800,yf=16,vf=Date.now;function Tf(o){var t=0,f=0;return function(){var d=vf(),i=yf-(d-f);if(f=d,i>0){if(++t>=cf)return arguments[0]}else t=0;return o.apply(void 0,arguments)}}var Ao=Tf;function kf(o){return function(){return o}}var Oo=kf;var bf=function(){try{var o=q(Object,"defineProperty");return o({},"",{}),o}catch(t){}}(),Y=bf;var gf=!Y?y:function(o,t){return Y(o,"toString",{configurable:!0,enumerable:!1,value:Oo(t),writable:!0})},Vo=gf;var jf=Ao(Vo),_o=jf;var ef=9007199254740991,od=/^(?:0|[1-9]\d*)$/;function td(o,t){var f=typeof o;return t=t==null?ef:t,!!t&&(f=="number"||f!="symbol"&&od.test(o))&&(o>-1&&o%1==0&&o<t)}var T=td;function fd(o,t,f){if(t=="__proto__"&&Y)Y(o,t,{configurable:!0,enumerable:!0,value:f,writable:!0});else o[t]=f}var I=fd;function dd(o,t){return o===t||o!==o&&t!==t}var W=dd;var md=Object.prototype,id=md.hasOwnProperty;function rd(o,t,f){var d=o[t];if(!(id.call(o,t)&&W(d,f))||f===void 0&&!(t in o))I(o,t,f)}var co=rd;function xd(o,t,f,d){var i=!f;f||(f={});var r=-1,p=t.length;while(++r<p){var m=t[r],n=d?d(f[m],o[m],m,f,o):void 0;if(n===void 0)n=o[m];if(i)I(f,m,n);else co(f,m,n)}return f}var yo=xd;var vo=Math.max;function pd(o,t,f){return t=vo(t===void 0?o.length-1:t,0),function(){var d=arguments,i=-1,r=vo(d.length-t,0),p=Array(r);while(++i<r)p[i]=d[t+i];i=-1;var m=Array(t+1);while(++i<t)m[i]=d[i];return m[t]=f(p),Mo(o,this,m)}}var To=pd;function nd(o,t){return _o(To(o,t,y),o+"")}var ko=nd;var ld=9007199254740991;function Pd(o){return typeof o=="number"&&o>-1&&o%1==0&&o<=ld}var k=Pd;function sd(o){return o!=null&&k(o.length)&&!U(o)}var B=sd;function ad(o,t,f){if(!l(f))return!1;var d=typeof t;if(d=="number"?B(f)&&T(t,f.length):d=="string"&&(t in f))return W(f[t],o);return!1}var bo=ad;function wd(o){return ko(function(t,f){var d=-1,i=f.length,r=i>1?f[i-1]:void 0,p=i>2?f[2]:void 0;if(r=o.length>3&&typeof r=="function"?(i--,r):void 0,p&&bo(f[0],f[1],p))r=i<3?void 0:r,i=1;t=Object(t);while(++d<i){var m=f[d];if(m)o(t,m,d,r)}return t})}var go=wd;var ud=Object.prototype;function Ed(o){var t=o&&o.constructor,f=typeof t=="function"&&t.prototype||ud;return o===f}var b=Ed;function hd(o,t){var f=-1,d=Array(o);while(++f<o)d[f]=t(f);return d}var jo=hd;var Wd="[object Arguments]";function Sd(o){return w(o)&&h(o)==Wd}var Wo=Sd;var eo=Object.prototype,Cd=eo.hasOwnProperty,Rd=eo.propertyIsEnumerable,Dd=Wo(function(){return arguments}())?Wo:function(o){return w(o)&&Cd.call(o,"callee")&&!Rd.call(o,"callee")},F=Dd;var j={};ho(j,{default:()=>M});function Qd(){return!1}var ot=Qd;var dt=typeof j=="object"&&j&&!j.nodeType&&j,tt=dt&&typeof g=="object"&&g&&!g.nodeType&&g,Kd=tt&&tt.exports===dt,ft=Kd?a.Buffer:void 0,Ud=ft?ft.isBuffer:void 0,qd=Ud||ot,M=qd;var Yd="[object Arguments]",Id="[object Array]",Bd="[object Boolean]",Nd="[object Date]",$d="[object Error]",Zd="[object Function]",Jd="[object Map]",Xd="[object Number]",Ld="[object Object]",zd="[object RegExp]",Hd="[object Set]",Fd="[object String]",Md="[object WeakMap]",Gd="[object ArrayBuffer]",Ad="[object DataView]",Od="[object Float32Array]",Vd="[object Float64Array]",_d="[object Int8Array]",cd="[object Int16Array]",yd="[object Int32Array]",vd="[object Uint8Array]",Td="[object Uint8ClampedArray]",kd="[object Uint16Array]",bd="[object Uint32Array]",x={};x[Od]=x[Vd]=x[_d]=x[cd]=x[yd]=x[vd]=x[Td]=x[kd]=x[bd]=!0;x[Yd]=x[Id]=x[Gd]=x[Bd]=x[Ad]=x[Nd]=x[$d]=x[Zd]=x[Jd]=x[Xd]=x[Ld]=x[zd]=x[Hd]=x[Fd]=x[Md]=!1;function gd(o){return w(o)&&k(o.length)&&!!x[h(o)]}var mt=gd;function jd(o){return function(t){return o(t)}}var it=jd;var oo={};ho(oo,{default:()=>to});var rt=typeof oo=="object"&&oo&&!oo.nodeType&&oo,G=rt&&typeof e=="object"&&e&&!e.nodeType&&e,ed=G&&G.exports===rt,So=ed&&c.process,om=function(){try{var o=G&&G.require&&G.require("util").types;if(o)return o;return So&&So.binding&&So.binding("util")}catch(t){}}(),to=om;var xt=to&&to.isTypedArray,tm=xt?it(xt):mt,fo=tm;var fm=Object.prototype,dm=fm.hasOwnProperty;function mm(o,t){var f=H(o),d=!f&&F(o),i=!f&&!d&&M(o),r=!f&&!d&&!i&&fo(o),p=f||d||i||r,m=p?jo(o.length,String):[],n=m.length;for(var s in o)if((t||dm.call(o,s))&&!(p&&(s=="length"||i&&(s=="offset"||s=="parent")||r&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||T(s,n))))m.push(s);return m}var pt=mm;function im(o,t){return function(f){return o(t(f))}}var nt=im;function rm(o){var t=[];if(o!=null)for(var f in Object(o))t.push(f);return t}var lt=rm;var xm=Object.prototype,pm=xm.hasOwnProperty;function nm(o){if(!l(o))return lt(o);var t=b(o),f=[];for(var d in o)if(!(d=="constructor"&&(t||!pm.call(o,d))))f.push(d);return f}var Pt=nm;function lm(o){return B(o)?pt(o,!0):Pt(o)}var mo=lm;var Pm=q(Object,"create"),u=Pm;function sm(){this.__data__=u?u(null):{},this.size=0}var st=sm;function am(o){var t=this.has(o)&&delete this.__data__[o];return this.size-=t?1:0,t}var at=am;var wm="__lodash_hash_undefined__",um=Object.prototype,Em=um.hasOwnProperty;function hm(o){var t=this.__data__;if(u){var f=t[o];return f===wm?void 0:f}return Em.call(t,o)?t[o]:void 0}var wt=hm;var Wm=Object.prototype,Sm=Wm.hasOwnProperty;function Cm(o){var t=this.__data__;return u?t[o]!==void 0:Sm.call(t,o)}var ut=Cm;var Rm="__lodash_hash_undefined__";function Dm(o,t){var f=this.__data__;return this.size+=this.has(o)?0:1,f[o]=u&&t===void 0?Rm:t,this}var Et=Dm;function N(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}N.prototype.clear=st;N.prototype.delete=at;N.prototype.get=wt;N.prototype.has=ut;N.prototype.set=Et;var Co=N;function Qm(){this.__data__=[],this.size=0}var ht=Qm;function Km(o,t){var f=o.length;while(f--)if(W(o[f][0],t))return f;return-1}var S=Km;var Um=Array.prototype,qm=Um.splice;function Ym(o){var t=this.__data__,f=S(t,o);if(f<0)return!1;var d=t.length-1;if(f==d)t.pop();else qm.call(t,f,1);return--this.size,!0}var Wt=Ym;function Im(o){var t=this.__data__,f=S(t,o);return f<0?void 0:t[f][1]}var St=Im;function Bm(o){return S(this.__data__,o)>-1}var Ct=Bm;function Nm(o,t){var f=this.__data__,d=S(f,o);if(d<0)++this.size,f.push([o,t]);else f[d][1]=t;return this}var Rt=Nm;function $(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}$.prototype.clear=ht;$.prototype.delete=Wt;$.prototype.get=St;$.prototype.has=Ct;$.prototype.set=Rt;var C=$;var $m=q(a,"Map"),io=$m;function Zm(){this.size=0,this.__data__={hash:new Co,map:new(io||C),string:new Co}}var Dt=Zm;function Jm(o){var t=typeof o;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?o!=="__proto__":o===null}var Qt=Jm;function Xm(o,t){var f=o.__data__;return Qt(t)?f[typeof t=="string"?"string":"hash"]:f.map}var R=Xm;function Lm(o){var t=R(this,o).delete(o);return this.size-=t?1:0,t}var Kt=Lm;function zm(o){return R(this,o).get(o)}var Ut=zm;function Hm(o){return R(this,o).has(o)}var qt=Hm;function Fm(o,t){var f=R(this,o),d=f.size;return f.set(o,t),this.size+=f.size==d?0:1,this}var Yt=Fm;function Z(o){var t=-1,f=o==null?0:o.length;this.clear();while(++t<f){var d=o[t];this.set(d[0],d[1])}}Z.prototype.clear=Dt;Z.prototype.delete=Kt;Z.prototype.get=Ut;Z.prototype.has=qt;Z.prototype.set=Yt;var It=Z;var Mm=nt(Object.getPrototypeOf,Object),ro=Mm;var Gm="[object Object]",Am=Function.prototype,Om=Object.prototype,Bt=Am.toString,Vm=Om.hasOwnProperty,_m=Bt.call(Object);function cm(o){if(!w(o)||h(o)!=Gm)return!1;var t=ro(o);if(t===null)return!0;var f=Vm.call(t,"constructor")&&t.constructor;return typeof f=="function"&&f instanceof f&&Bt.call(f)==_m}var Nt=cm;function ym(){this.__data__=new C,this.size=0}var $t=ym;function vm(o){var t=this.__data__,f=t.delete(o);return this.size=t.size,f}var Zt=vm;function Tm(o){return this.__data__.get(o)}var Jt=Tm;function km(o){return this.__data__.has(o)}var Xt=km;var bm=200;function gm(o,t){var f=this.__data__;if(f instanceof C){var d=f.__data__;if(!io||d.length<bm-1)return d.push([o,t]),this.size=++f.size,this;f=this.__data__=new It(d)}return f.set(o,t),this.size=f.size,this}var Lt=gm;function J(o){var t=this.__data__=new C(o);this.size=t.size}J.prototype.clear=$t;J.prototype.delete=Zt;J.prototype.get=Jt;J.prototype.has=Xt;J.prototype.set=Lt;var zt=J;var po={};ho(po,{default:()=>Ro});var Gt=typeof po=="object"&&po&&!po.nodeType&&po,Ht=Gt&&typeof xo=="object"&&xo&&!xo.nodeType&&xo,jm=Ht&&Ht.exports===Gt,Ft=jm?a.Buffer:void 0,Mt=Ft?Ft.allocUnsafe:void 0;function em(o,t){if(t)return o.slice();var f=o.length,d=Mt?Mt(f):new o.constructor(f);return o.copy(d),d}var Ro=em;var oi=a.Uint8Array,Do=oi;function ti(o){var t=new o.constructor(o.byteLength);return new Do(t).set(new Do(o)),t}var At=ti;function fi(o,t){var f=t?At(o.buffer):o.buffer;return new o.constructor(f,o.byteOffset,o.length)}var Ot=fi;function di(o){return typeof o.constructor=="function"&&!b(o)?Fo(ro(o)):{}}var Vt=di;function mi(o){return function(t,f,d){var i=-1,r=Object(t),p=d(t),m=p.length;while(m--){var n=p[o?m:++i];if(f(r[n],n,r)===!1)break}return t}}var _t=mi;var ii=_t(),ct=ii;function ri(o,t,f){if(f!==void 0&&!W(o[t],f)||f===void 0&&!(t in o))I(o,t,f)}var A=ri;function xi(o){return w(o)&&B(o)}var yt=xi;function pi(o,t){if(t==="constructor"&&typeof o[t]==="function")return;if(t=="__proto__")return;return o[t]}var O=pi;function ni(o){return yo(o,mo(o))}var vt=ni;function li(o,t,f,d,i,r,p){var m=O(o,f),n=O(t,f),s=p.get(n);if(s){A(o,f,s);return}var P=r?r(m,n,f+"",o,t,p):void 0,L=P===void 0;if(L){var uo=H(n),Eo=!uo&&M(n),Ko=!uo&&!Eo&&fo(n);if(P=n,uo||Eo||Ko)if(H(m))P=m;else if(yt(m))P=Go(m);else if(Eo)L=!1,P=Ro(n,!0);else if(Ko)L=!1,P=Ot(n,!0);else P=[];else if(Nt(n)||F(n)){if(P=m,F(m))P=vt(m);else if(!l(m)||U(m))P=Vt(n)}else L=!1}if(L)p.set(n,P),i(P,n,d,r,p),p.delete(n);A(o,f,P)}var Tt=li;function kt(o,t,f,d,i){if(o===t)return;ct(t,function(r,p){if(i||(i=new zt),l(r))Tt(o,t,p,f,kt,d,i);else{var m=d?d(O(o,p),r,p+"",o,t,i):void 0;if(m===void 0)m=r;A(o,p,m)}},mo)}var bt=kt;var Pi=go(function(o,t,f){bt(o,t,f)}),Qo=Pi;class no{get bundleIdentifier(){return this.#o}get displayName(){return this.#f}get playbackQueue(){return this.#d}get playbackState(){return this.#m}get playbackStateTimestamp(){return this.#t}get supportedCommands(){return this.#r}#o;#f;#d=null;#m;#t;#r=[];constructor(o,t){this.#o=o,this.#f=t,this.#m=si.PlaybackState_Enum.Unknown,this.#r=[]}isCommandSupported(o){return this.#r.some((t)=>t.command===o)}setPlaybackQueue(o){this.#d=o}setPlaybackState(o,t){this.#m=o,this.#t=t}setSupportedCommands(o){this.#r=o}updateContentItem(o){if(!this.#d)return;let t=this.#d.contentItems.findIndex((f)=>f.identifier===o.identifier);if(t===-1)return;this.#d.contentItems[t]=Qo(o,this.#d.contentItems[t])}}class gt extends ai{get#o(){return this.#f.dataStream}get#f(){return this.#d[E]}get clients(){return this.#m}get nowPlayingClient(){return this.#t?this.#m[this.#t]??null:null}get volume(){return this.#r}get volumeAvailable(){return this.#x}get volumeCapabilities(){return this.#p}#d;#m;#t;#r;#x;#p;constructor(o){super();this.#d=o,this.clear(),this.onDeviceInfo=this.onDeviceInfo.bind(this),this.onOriginClientProperties=this.onOriginClientProperties.bind(this),this.onPlayerClientProperties=this.onPlayerClientProperties.bind(this),this.onSendCommandResult=this.onSendCommandResult.bind(this),this.onSetArtwork=this.onSetArtwork.bind(this),this.onSetDefaultSupportedCommands=this.onSetDefaultSupportedCommands.bind(this),this.onSetNowPlayingClient=this.onSetNowPlayingClient.bind(this),this.onSetNowPlayingPlayer=this.onSetNowPlayingPlayer.bind(this),this.onSetState=this.onSetState.bind(this),this.onUpdateClient=this.onUpdateClient.bind(this),this.onUpdateContentItem=this.onUpdateContentItem.bind(this),this.onUpdateContentItemArtwork=this.onUpdateContentItemArtwork.bind(this),this.onUpdatePlayer=this.onUpdatePlayer.bind(this),this.onUpdateOutputDevice=this.onUpdateOutputDevice.bind(this),this.onVolumeControlAvailability=this.onVolumeControlAvailability.bind(this),this.onVolumeControlCapabilitiesDidChange=this.onVolumeControlCapabilitiesDidChange.bind(this),this.onVolumeDidChange=this.onVolumeDidChange.bind(this)}async[V](){this.#o.on("deviceInfo",this.onDeviceInfo),this.#o.on("originClientProperties",this.onOriginClientProperties),this.#o.on("playerClientProperties",this.onPlayerClientProperties),this.#o.on("sendCommandResult",this.onSendCommandResult),this.#o.on("setArtwork",this.onSetArtwork),this.#o.on("setDefaultSupportedCommands",this.onSetDefaultSupportedCommands),this.#o.on("setNowPlayingClient",this.onSetNowPlayingClient),this.#o.on("setNowPlayingPlayer",this.onSetNowPlayingPlayer),this.#o.on("setState",this.onSetState),this.#o.on("updateClient",this.onUpdateClient),this.#o.on("updateContentItem",this.onUpdateContentItem),this.#o.on("updateContentItemArtwork",this.onUpdateContentItemArtwork),this.#o.on("updatePlayer",this.onUpdatePlayer),this.#o.on("updateOutputDevice",this.onUpdateOutputDevice),this.#o.on("volumeControlAvailability",this.onVolumeControlAvailability),this.#o.on("volumeControlCapabilitiesDidChange",this.onVolumeControlCapabilitiesDidChange),this.#o.on("volumeDidChange",this.onVolumeDidChange)}async[_](){let o=this.#o;if(!o)return;o.off("deviceInfo",this.onDeviceInfo),o.off("originClientProperties",this.onOriginClientProperties),o.off("playerClientProperties",this.onPlayerClientProperties),o.off("sendCommandResult",this.onSendCommandResult),o.off("setArtwork",this.onSetArtwork),o.off("setDefaultSupportedCommands",this.onSetDefaultSupportedCommands),o.off("setNowPlayingClient",this.onSetNowPlayingClient),o.off("setNowPlayingPlayer",this.onSetNowPlayingPlayer),o.off("setState",this.onSetState),o.off("updateClient",this.onUpdateClient),o.off("updateContentItem",this.onUpdateContentItem),o.off("updateContentItemArtwork",this.onUpdateContentItemArtwork),o.off("updatePlayer",this.onUpdatePlayer),o.off("updateOutputDevice",this.onUpdateOutputDevice),o.off("volumeControlAvailability",this.onVolumeControlAvailability),o.off("volumeControlCapabilitiesDidChange",this.onVolumeControlCapabilitiesDidChange),o.off("volumeDidChange",this.onVolumeDidChange)}clear(){this.#m={},this.#t=void 0,this.#r=0,this.#x=!1,this.#p=wi.VolumeCapabilities_Enum.None}async onDeviceInfo(o){this.emit("deviceInfo",o)}async onOriginClientProperties(o){this.emit("originClientProperties",o)}async onPlayerClientProperties(o){this.emit("playerClientProperties",o)}async onSendCommandResult(o){this.emit("sendCommandResult",o)}async onSetArtwork(o){this.emit("setArtwork",o)}async onSetDefaultSupportedCommands(o){this.emit("setDefaultSupportedCommands",o)}async onSetNowPlayingClient(o){this.#t=o.client?.bundleIdentifier??null,this.emit("setNowPlayingClient",o)}async onSetNowPlayingPlayer(o){this.emit("setNowPlayingPlayer",o)}async onSetState(o){let t=this.#n(o.playerPath.client.bundleIdentifier,o.displayName);if(o.playbackState)t.setPlaybackState(o.playbackState,o.playbackStateTimestamp);if(o.supportedCommands)t.setSupportedCommands(o.supportedCommands.supportedCommands);if(o.playbackQueue)t.setPlaybackQueue(o.playbackQueue);this.emit("setState",o)}async onUpdateContentItem(o){let t=this.#n(o.playerPath.client.bundleIdentifier,o.playerPath.client.displayName);if(!t)return;for(let f of o.contentItems)t.updateContentItem(f);this.emit("updateContentItem",o)}async onUpdateContentItemArtwork(o){this.emit("updateContentItemArtwork",o)}async onUpdatePlayer(o){this.emit("updatePlayer",o)}async onUpdateClient(o){this.#n(o.client.bundleIdentifier,o.client.displayName),this.emit("clients",this.#m)}async onUpdateOutputDevice(o){this.emit("updateOutputDevice",o)}async onVolumeControlAvailability(o){this.#x=o.volumeControlAvailable,this.#p=o.volumeCapabilities,this.emit("volumeControlAvailability",o.volumeControlAvailable,o.volumeCapabilities)}async onVolumeControlCapabilitiesDidChange(o){this.#x=o.capabilities.volumeControlAvailable,this.#p=o.capabilities.volumeCapabilities,this.emit("volumeControlCapabilitiesDidChange",o.capabilities.volumeControlAvailable,o.capabilities.volumeCapabilities)}async onVolumeDidChange(o){this.#r=o.volume,this.emit("volumeDidChange",o.volume)}#n(o,t){if(o in this.#m)return this.#m[o];else{let f=new no(o,t);return this.#m[o]=f,this.emit("clients",this.#m),f}}}class X extends ui{get[E](){return this.#i}get#o(){return this.#i.dataStream}get#f(){return this.#i.eventStream}get isConnected(){return this.#i?.rtsp?.isConnected??!1}get remote(){return this.#m}get state(){return this.#t}get timingServer(){return this.#l}set timingServer(o){this.#l=o}#d;#m;#t;#r;#x=!1;#p;#n;#i;#l;constructor(o){super();this.#d=o,this.#m=new Yo(this),this.#t=new gt(this)}async connect(){if(this.#x=!1,this.#t.clear(),this.#i=new Ei(this.#d),this.#i.rtsp.on("close",async()=>this.#u()),this.#i.rtsp.on("error",async(o)=>this.#P(o)),this.#i.rtsp.on("timeout",async()=>this.#s()),await this.#i.connect(),this.#r)this.#n=await this.#i.verify.start(this.#r);else await this.#i.pairing.start(),this.#n=await this.#i.pairing.transient();await this.#E(),this.emit("connected")}async disconnect(){this.#x=!0,clearInterval(this.#p),await this.#a(),await this.#i.disconnect(),this.emit("disconnected",!1)}async disconnectSafely(){try{await this.disconnect()}catch(o){}}async requestPlaybackQueue(o){await this.#o.exchange(this.#o.messages.playbackQueueRequest(0,o))}async sendCommand(o,t){await this.#o.exchange(this.#o.messages.sendCommand(o,t))}async setVolume(o){await this.#o.exchange(this.#o.messages.setVolume(o))}async setCredentials(o){this.#r=o}async#w(){try{await this.#i.feedback()}catch(o){lo.error("Feedback error",o)}}async#u(){if(this.#x)return;clearInterval(this.#p),this.emit("disconnected",!0)}async#P(o){lo.error("AirPlay error",o),await this.disconnectSafely(),this.emit("disconnected",!0)}async#s(){lo.error("AirPlay timeout"),await this.disconnectSafely(),this.emit("disconnected",!0)}async#E(){let o=this.#n;if(await this.#i.rtsp.enableEncryption(o.accessoryToControllerKey,o.controllerToAccessoryKey),await this.#a(),this.#l)await this.#i.setupTimingServer(this.#l);await this.#i.setupEventStream(o.pairingId,o.sharedSecret),await this.#i.setupDataStream(o.sharedSecret),await this.#h(),this.#o.on("error",async(f)=>this.#P(f)),this.#o.on("timeout",async()=>this.#s()),this.#f.on("error",async(f)=>this.#P(f)),this.#f.on("timeout",async()=>this.#s()),this.#p=setInterval(async()=>await this.#w(),Uo);let t=this.#d.packet.additionals.find((f)=>("rdata"in f)&&typeof f.rdata==="object"&&("gid"in f.rdata))?.rdata.gid;if(t)await this.#o.exchange(this.#o.messages.configureConnection(t));await this.#o.exchange(this.#o.messages.deviceInfo(o.pairingId)),this.#o.on("deviceInfo",async()=>{await this.#o.exchange(this.#o.messages.setConnectionState()),await this.#o.exchange(this.#o.messages.clientUpdatesConfig())})}async#h(){await this.#t[V]()}async#a(){try{await this.#t[_]()}catch(o){lo.error("State unsubscribe error",o)}}}var Po=Symbol("com.basmilius.companion-link:protocol");import{EventEmitter as hi}from"node:events";import{reporter as so}from"@basmilius/apple-common";import{CompanionLink as Wi,convertAttentionState as jt}from"@basmilius/apple-companion-link";class ao extends hi{get[Po](){return this.#t}get isConnected(){return this.#t?.socket?.isConnected??!1}#o;#f=!1;#d;#m;#t;constructor(o){super();this.#d=o,this.onSystemStatus=this.onSystemStatus.bind(this),this.onTVSystemStatus=this.onTVSystemStatus.bind(this)}async connect(){if(!this.#o)throw Error("Credentials are required to connect to a Companion Link device.");this.#f=!1,this.#t=new Wi(this.#d),this.#t.socket.on("close",async()=>this.#r()),this.#t.socket.on("error",async(o)=>this.#x(o)),this.#t.socket.on("timeout",async()=>this.#p()),await this.#t.connect(),this.#m=await this.#t.verify.start(this.#o),await this.#n(),this.emit("connected")}async disconnect(){this.#f=!0,await this.#l(),await this.#t.disconnect(),this.emit("disconnected",!1)}async disconnectSafely(){try{await this.disconnect()}catch(o){}}async setCredentials(o){this.#o=o}async setDiscoveryResult(o){this.#d=o}async getAttentionState(){return await this.#t.api.getAttentionState()}async getLaunchableApps(){return await this.#t.api.getLaunchableApps()}async getUserAccounts(){return await this.#t.api.getUserAccounts()}async launchApp(o){await this.#t.api.launchApp(o)}async launchUrl(o){await this.#t.api.launchUrl(o)}async mediaControlCommand(o,t){await this.#t.api.mediaControlCommand(o,t)}async pressButton(o,t,f){await this.#t.api.pressButton(o,t,f)}async switchUserAccount(o){await this.#t.api.switchUserAccount(o)}async#r(){if(this.#f)return;this.emit("disconnected",!0)}async#x(o){so.error("Companion Link error",o);try{await this.disconnect()}catch(t){}this.emit("disconnected",!0)}async#p(){so.error("Companion Link timeout"),await this.disconnectSafely(),this.emit("disconnected",!0)}async#n(){let o=this.#m;await this.#t.socket.enableEncryption(o.accessoryToControllerKey,o.controllerToAccessoryKey),await this.#t.api._systemInfo(this.#o.pairingId),await this.#t.api._touchStart(),await this.#t.api._sessionStart(),await this.#t.api._tvrcSessionStart(),await this.#t.api._unsubscribe("_iMC"),await this.#i()}async#i(){await this.#t.api._subscribe("SystemStatus",this.onSystemStatus),await this.#t.api._subscribe("TVSystemStatus",this.onTVSystemStatus);let o=await this.getAttentionState();this.emit("power",o)}async#l(){await this.#t.api._unsubscribe("SystemStatus",this.onSystemStatus),await this.#t.api._unsubscribe("TVSystemStatus",this.onTVSystemStatus)}async onSystemStatus(o){so.info("System Status",o),this.emit("power",jt(o.state))}async onTVSystemStatus(o){so.info("TV System Status",o),this.emit("power",jt(o.state))}}import{EventEmitter as Si}from"node:events";import{Proto as D}from"@basmilius/apple-airplay";class et extends Si{get airplay(){return this.#o}get companionLink(){return this.#f}get bundleIdentifier(){return this.#o.state.nowPlayingClient?.bundleIdentifier??null}get displayName(){return this.#o.state.nowPlayingClient?.displayName??null}get isConnected(){return this.#o.isConnected&&this.#f.isConnected}get isPlaying(){return this.playbackState===D.PlaybackState_Enum.Playing}get playbackQueue(){return this.#o.state.nowPlayingClient?.playbackQueue??null}get playbackState(){return this.#o.state.nowPlayingClient?.playbackState??D.PlaybackState_Enum.Unknown}get playbackStateTimestamp(){return this.#o.state.nowPlayingClient?.playbackStateTimestamp??-1}#o;#f;#d=!1;constructor(o,t){super();this.#o=new X(o),this.#f=new ao(t),this.#o.on("connected",()=>this.#m()),this.#o.on("disconnected",(f)=>this.#t(f)),this.#f.on("connected",()=>this.#m()),this.#f.on("disconnected",(f)=>this.#t(f))}async connect(o){await this.#o.setCredentials(o),await this.#f.setCredentials(o),await this.#o.connect(),await this.#f.connect(),this.#d=!1}async disconnect(){await this.#o.disconnect(),await this.#f.disconnect()}async turnOff(){await this.#o.remote.suspend()}async turnOn(){await this.#o.remote.wake()}async pause(){await this.#o.sendCommand(D.Command.Pause)}async playPause(){await this.#o.sendCommand(D.Command.TogglePlayPause)}async play(){await this.#o.sendCommand(D.Command.Play)}async stop(){await this.#o.sendCommand(D.Command.Stop)}async next(){await this.#o.sendCommand(D.Command.NextInContext)}async previous(){await this.#o.sendCommand(D.Command.PreviousInContext)}async volumeDown(){await this.#o.remote.volumeDown()}async volumeMute(){await this.#o.remote.mute()}async volumeUp(){await this.#o.remote.volumeUp()}async getCommandInfo(o){let t=this.#o.state.nowPlayingClient;if(!t)return null;return t.supportedCommands.find((f)=>f.command===o)??null}async isCommandSupported(o){let t=this.#o.state.nowPlayingClient;if(!t)return!1;return t.isCommandSupported(o)}async#m(){if(!this.#o.isConnected||!this.#f.isConnected)return;this.emit("connected")}async#t(o){if(this.#d)return;this.#d=!0,await this.disconnect(),this.emit("disconnected",o)}}import{EventEmitter as Ci}from"node:events";import{Proto as Q}from"@basmilius/apple-airplay";class wo extends Ci{get airplay(){return this.#o}get bundleIdentifier(){return this.#o.state.nowPlayingClient?.bundleIdentifier??null}get displayName(){return this.#o.state.nowPlayingClient?.displayName??null}get isConnected(){return this.#o.isConnected}get isPlaying(){return this.playbackState===Q.PlaybackState_Enum.Playing}get playbackQueue(){return this.#o.state.nowPlayingClient?.playbackQueue??null}get playbackState(){return this.#o.state.nowPlayingClient?.playbackState??Q.PlaybackState_Enum.Unknown}get playbackStateTimestamp(){return this.#o.state.nowPlayingClient?.playbackStateTimestamp??-1}get volume(){return this.#o.state.volume??0}#o;#f=!1;constructor(o){super();this.#o=new X(o),this.#o.on("connected",()=>this.#d()),this.#o.on("disconnected",(t)=>this.#m(t))}async connect(){await this.#o.connect(),this.#f=!1}async disconnect(){await this.#o.disconnect()}async pause(){await this.#o.sendCommand(Q.Command.Pause)}async playPause(){await this.#o.sendCommand(Q.Command.TogglePlayPause)}async play(){await this.#o.sendCommand(Q.Command.Play)}async stop(){await this.#o.sendCommand(Q.Command.Stop)}async next(){await this.#o.sendCommand(Q.Command.NextInContext)}async previous(){await this.#o.sendCommand(Q.Command.PreviousInContext)}async setVolume(o){await this.#o.setVolume(o)}async getCommandInfo(o){let t=this.#o.state.nowPlayingClient;if(!t)return null;return t.supportedCommands.find((f)=>f.command===o)??null}async isCommandSupported(o){let t=this.#o.state.nowPlayingClient;if(!t)return!1;return t.isCommandSupported(o)}async#d(){this.emit("connected")}async#m(o){if(this.#f)return;this.#f=!0,await this.disconnect(),this.emit("disconnected",o)}}class of extends wo{}class tf extends wo{}export{tf as HomePodMini,of as HomePod,ao as CompanionLinkDevice,Po as COMPANION_LINK,et as AppleTV,X as AirPlayDevice,E as AIRPLAY};
2
2
 
3
- //# debugId=1A5CC99D946D160B64756E2164756E21
3
+ //# debugId=E2772216634083B664756E2164756E21
4
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -3,7 +3,7 @@
3
3
  "sources": ["../src/airplay/const.ts", "../src/airplay/device.ts", "../src/airplay/remote.ts", "../src/airplay/state.ts", "../src/airplay/client.ts", "../../../node_modules/lodash-es/_freeGlobal.js", "../../../node_modules/lodash-es/_root.js", "../../../node_modules/lodash-es/_Symbol.js", "../../../node_modules/lodash-es/_getRawTag.js", "../../../node_modules/lodash-es/_objectToString.js", "../../../node_modules/lodash-es/_baseGetTag.js", "../../../node_modules/lodash-es/isObjectLike.js", "../../../node_modules/lodash-es/isArray.js", "../../../node_modules/lodash-es/isObject.js", "../../../node_modules/lodash-es/identity.js", "../../../node_modules/lodash-es/isFunction.js", "../../../node_modules/lodash-es/_coreJsData.js", "../../../node_modules/lodash-es/_isMasked.js", "../../../node_modules/lodash-es/_toSource.js", "../../../node_modules/lodash-es/_baseIsNative.js", "../../../node_modules/lodash-es/_getValue.js", "../../../node_modules/lodash-es/_getNative.js", "../../../node_modules/lodash-es/_baseCreate.js", "../../../node_modules/lodash-es/_apply.js", "../../../node_modules/lodash-es/_copyArray.js", "../../../node_modules/lodash-es/_shortOut.js", "../../../node_modules/lodash-es/constant.js", "../../../node_modules/lodash-es/_defineProperty.js", "../../../node_modules/lodash-es/_baseSetToString.js", "../../../node_modules/lodash-es/_setToString.js", "../../../node_modules/lodash-es/_isIndex.js", "../../../node_modules/lodash-es/_baseAssignValue.js", "../../../node_modules/lodash-es/eq.js", "../../../node_modules/lodash-es/_assignValue.js", "../../../node_modules/lodash-es/_copyObject.js", "../../../node_modules/lodash-es/_overRest.js", "../../../node_modules/lodash-es/_baseRest.js", "../../../node_modules/lodash-es/isLength.js", "../../../node_modules/lodash-es/isArrayLike.js", "../../../node_modules/lodash-es/_isIterateeCall.js", "../../../node_modules/lodash-es/_createAssigner.js", "../../../node_modules/lodash-es/_isPrototype.js", "../../../node_modules/lodash-es/_baseTimes.js", "../../../node_modules/lodash-es/_baseIsArguments.js", "../../../node_modules/lodash-es/isArguments.js", "../../../node_modules/lodash-es/stubFalse.js", "../../../node_modules/lodash-es/isBuffer.js", "../../../node_modules/lodash-es/_baseIsTypedArray.js", "../../../node_modules/lodash-es/_baseUnary.js", "../../../node_modules/lodash-es/_nodeUtil.js", "../../../node_modules/lodash-es/isTypedArray.js", "../../../node_modules/lodash-es/_arrayLikeKeys.js", "../../../node_modules/lodash-es/_overArg.js", "../../../node_modules/lodash-es/_nativeKeysIn.js", "../../../node_modules/lodash-es/_baseKeysIn.js", "../../../node_modules/lodash-es/keysIn.js", "../../../node_modules/lodash-es/_nativeCreate.js", "../../../node_modules/lodash-es/_hashClear.js", "../../../node_modules/lodash-es/_hashDelete.js", "../../../node_modules/lodash-es/_hashGet.js", "../../../node_modules/lodash-es/_hashHas.js", "../../../node_modules/lodash-es/_hashSet.js", "../../../node_modules/lodash-es/_Hash.js", "../../../node_modules/lodash-es/_listCacheClear.js", "../../../node_modules/lodash-es/_assocIndexOf.js", "../../../node_modules/lodash-es/_listCacheDelete.js", "../../../node_modules/lodash-es/_listCacheGet.js", "../../../node_modules/lodash-es/_listCacheHas.js", "../../../node_modules/lodash-es/_listCacheSet.js", "../../../node_modules/lodash-es/_ListCache.js", "../../../node_modules/lodash-es/_Map.js", "../../../node_modules/lodash-es/_mapCacheClear.js", "../../../node_modules/lodash-es/_isKeyable.js", "../../../node_modules/lodash-es/_getMapData.js", "../../../node_modules/lodash-es/_mapCacheDelete.js", "../../../node_modules/lodash-es/_mapCacheGet.js", "../../../node_modules/lodash-es/_mapCacheHas.js", "../../../node_modules/lodash-es/_mapCacheSet.js", "../../../node_modules/lodash-es/_MapCache.js", "../../../node_modules/lodash-es/_getPrototype.js", "../../../node_modules/lodash-es/isPlainObject.js", "../../../node_modules/lodash-es/_stackClear.js", "../../../node_modules/lodash-es/_stackDelete.js", "../../../node_modules/lodash-es/_stackGet.js", "../../../node_modules/lodash-es/_stackHas.js", "../../../node_modules/lodash-es/_stackSet.js", "../../../node_modules/lodash-es/_Stack.js", "../../../node_modules/lodash-es/_cloneBuffer.js", "../../../node_modules/lodash-es/_Uint8Array.js", "../../../node_modules/lodash-es/_cloneArrayBuffer.js", "../../../node_modules/lodash-es/_cloneTypedArray.js", "../../../node_modules/lodash-es/_initCloneObject.js", "../../../node_modules/lodash-es/_createBaseFor.js", "../../../node_modules/lodash-es/_baseFor.js", "../../../node_modules/lodash-es/_assignMergeValue.js", "../../../node_modules/lodash-es/isArrayLikeObject.js", "../../../node_modules/lodash-es/_safeGet.js", "../../../node_modules/lodash-es/toPlainObject.js", "../../../node_modules/lodash-es/_baseMergeDeep.js", "../../../node_modules/lodash-es/_baseMerge.js", "../../../node_modules/lodash-es/merge.js", "../src/companion-link/const.ts", "../src/companion-link/device.ts", "../src/model/apple-tv.ts", "../src/model/homepod-base.ts", "../src/model/homepod.ts", "../src/model/homepod-mini.ts"],
4
4
  "sourcesContent": [
5
5
  "export const FEEDBACK_INTERVAL = 2000;\n\nexport const PROTOCOL = Symbol('com.basmilius.airplay:protocol');\nexport const STATE_SUBSCRIBE_SYMBOL = Symbol('com.basmilius.airplay:subscribe');\nexport const STATE_UNSUBSCRIBE_SYMBOL = Symbol('com.basmilius.airplay:unsubscribe');\n",
6
- "import { EventEmitter } from 'node:events';\nimport type { AirPlayDataStream } from '@basmilius/apple-airplay';\nimport { AirPlay, Proto } from '@basmilius/apple-airplay';\nimport type { AccessoryCredentials, AccessoryKeys, DiscoveryResult, TimingServer } from '@basmilius/apple-common';\nimport { reporter } from '@basmilius/apple-common';\nimport { FEEDBACK_INTERVAL, PROTOCOL, STATE_SUBSCRIBE_SYMBOL, STATE_UNSUBSCRIBE_SYMBOL } from './const';\nimport Remote from './remote';\nimport State from './state';\n\ntype EventMap = {\n connected: [];\n disconnected: [unexpected: boolean];\n};\n\nexport default class extends EventEmitter<EventMap> {\n get [PROTOCOL](): AirPlay {\n return this.#protocol;\n }\n\n get #dataStream(): AirPlayDataStream {\n return this.#protocol.dataStream;\n }\n\n get isConnected(): boolean {\n return this.#protocol?.rtsp?.isConnected ?? false;\n }\n\n get remote(): Remote {\n return this.#remote;\n }\n\n get state(): State {\n return this.#state;\n }\n\n get timingServer(): TimingServer | undefined {\n return this.#timingServer;\n }\n\n set timingServer(timingServer: TimingServer | undefined) {\n this.#timingServer = timingServer;\n }\n\n readonly #discoveryResult: DiscoveryResult;\n readonly #remote: Remote;\n readonly #state: State;\n #credentials?: AccessoryCredentials;\n #disconnect: boolean = false;\n #feedbackInterval: NodeJS.Timeout;\n #keys: AccessoryKeys;\n #protocol!: AirPlay;\n #timingServer?: TimingServer;\n\n constructor(discoveryResult: DiscoveryResult) {\n super();\n\n this.#discoveryResult = discoveryResult;\n this.#remote = new Remote(this);\n this.#state = new State(this);\n }\n\n async connect(): Promise<void> {\n this.#disconnect = false;\n this.#state.clear();\n\n this.#protocol = new AirPlay(this.#discoveryResult);\n this.#protocol.rtsp.on('close', async () => this.#onClose());\n this.#protocol.rtsp.on('error', async (err: Error) => this.#onError(err));\n this.#protocol.rtsp.on('timeout', async () => this.#onTimeout());\n\n await this.#protocol.connect();\n\n if (this.#credentials) {\n this.#keys = await this.#protocol.verify.start(this.#credentials);\n } else {\n await this.#protocol.pairing.start();\n this.#keys = await this.#protocol.pairing.transient();\n }\n\n await this.#setup();\n\n this.emit('connected');\n }\n\n async disconnect(): Promise<void> {\n this.#disconnect = true;\n\n clearInterval(this.#feedbackInterval);\n\n await this.#unsubscribe();\n await this.#protocol.disconnect();\n\n this.emit('disconnected', false);\n }\n\n async disconnectSafely(): Promise<void> {\n try {\n await this.disconnect();\n } catch (_) {\n }\n }\n\n async requestPlaybackQueue(length: number): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.playbackQueueRequest(0, length));\n }\n\n async sendCommand(command: Proto.Command, options?: Proto.CommandOptions): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.sendCommand(command, options));\n }\n\n async setVolume(volume: number): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.setVolume(volume));\n }\n\n async setCredentials(credentials: AccessoryCredentials): Promise<void> {\n this.#credentials = credentials;\n }\n\n async #feedback(): Promise<void> {\n try {\n await this.#protocol.feedback();\n } catch (err) {\n reporter.error('Feedback error', err);\n }\n }\n\n async #onClose(): Promise<void> {\n if (this.#disconnect) {\n return;\n }\n\n clearInterval(this.#feedbackInterval);\n\n this.emit('disconnected', true);\n }\n\n async #onError(err: Error): Promise<void> {\n reporter.error('AirPlay error', err);\n\n await this.disconnectSafely();\n\n this.emit('disconnected', true);\n }\n\n async #onTimeout(): Promise<void> {\n reporter.error('AirPlay timeout');\n\n await this.disconnectSafely();\n\n this.emit('disconnected', true);\n }\n\n async #setup(): Promise<void> {\n const keys = this.#keys;\n\n await this.#protocol.rtsp.enableEncryption(\n keys.accessoryToControllerKey,\n keys.controllerToAccessoryKey\n );\n\n await this.#unsubscribe();\n\n if (this.#timingServer) {\n await this.#protocol.setupTimingServer(this.#timingServer);\n }\n\n await this.#protocol.setupEventStream(keys.pairingId, keys.sharedSecret);\n await this.#protocol.setupDataStream(keys.sharedSecret);\n await this.#subscribe();\n\n this.#feedbackInterval = setInterval(async () => await this.#feedback(), FEEDBACK_INTERVAL);\n\n const gid = this.#discoveryResult.packet.additionals.find(a => 'rdata' in a && typeof a['rdata'] === 'object' && 'gid' in a['rdata'])?.['rdata']['gid'] as string;\n\n if (gid) {\n await this.#dataStream.exchange(this.#dataStream.messages.configureConnection(gid));\n }\n\n await this.#dataStream.exchange(this.#dataStream.messages.deviceInfo(keys.pairingId));\n\n this.#dataStream.on('deviceInfo', async () => {\n await this.#dataStream.exchange(this.#dataStream.messages.setConnectionState());\n await this.#dataStream.exchange(this.#dataStream.messages.clientUpdatesConfig());\n });\n }\n\n async #subscribe(): Promise<void> {\n await this.#state[STATE_SUBSCRIBE_SYMBOL]();\n }\n\n async #unsubscribe(): Promise<void> {\n try {\n await this.#state[STATE_UNSUBSCRIBE_SYMBOL]();\n } catch (err) {\n reporter.error('State unsubscribe error', err);\n }\n }\n}\n",
6
+ "import { EventEmitter } from 'node:events';\nimport type { AirPlayDataStream, AirPlayEventStream } from '@basmilius/apple-airplay';\nimport { AirPlay, Proto } from '@basmilius/apple-airplay';\nimport type { AccessoryCredentials, AccessoryKeys, DiscoveryResult, TimingServer } from '@basmilius/apple-common';\nimport { reporter } from '@basmilius/apple-common';\nimport { FEEDBACK_INTERVAL, PROTOCOL, STATE_SUBSCRIBE_SYMBOL, STATE_UNSUBSCRIBE_SYMBOL } from './const';\nimport Remote from './remote';\nimport State from './state';\n\ntype EventMap = {\n connected: [];\n disconnected: [unexpected: boolean];\n};\n\nexport default class extends EventEmitter<EventMap> {\n get [PROTOCOL](): AirPlay {\n return this.#protocol;\n }\n\n get #dataStream(): AirPlayDataStream {\n return this.#protocol.dataStream;\n }\n\n get #eventStream(): AirPlayEventStream {\n return this.#protocol.eventStream;\n }\n\n get isConnected(): boolean {\n return this.#protocol?.rtsp?.isConnected ?? false;\n }\n\n get remote(): Remote {\n return this.#remote;\n }\n\n get state(): State {\n return this.#state;\n }\n\n get timingServer(): TimingServer | undefined {\n return this.#timingServer;\n }\n\n set timingServer(timingServer: TimingServer | undefined) {\n this.#timingServer = timingServer;\n }\n\n readonly #discoveryResult: DiscoveryResult;\n readonly #remote: Remote;\n readonly #state: State;\n #credentials?: AccessoryCredentials;\n #disconnect: boolean = false;\n #feedbackInterval: NodeJS.Timeout;\n #keys: AccessoryKeys;\n #protocol!: AirPlay;\n #timingServer?: TimingServer;\n\n constructor(discoveryResult: DiscoveryResult) {\n super();\n\n this.#discoveryResult = discoveryResult;\n this.#remote = new Remote(this);\n this.#state = new State(this);\n }\n\n async connect(): Promise<void> {\n this.#disconnect = false;\n this.#state.clear();\n\n this.#protocol = new AirPlay(this.#discoveryResult);\n this.#protocol.rtsp.on('close', async () => this.#onClose());\n this.#protocol.rtsp.on('error', async (err: Error) => this.#onError(err));\n this.#protocol.rtsp.on('timeout', async () => this.#onTimeout());\n\n await this.#protocol.connect();\n\n if (this.#credentials) {\n this.#keys = await this.#protocol.verify.start(this.#credentials);\n } else {\n await this.#protocol.pairing.start();\n this.#keys = await this.#protocol.pairing.transient();\n }\n\n await this.#setup();\n\n this.emit('connected');\n }\n\n async disconnect(): Promise<void> {\n this.#disconnect = true;\n\n clearInterval(this.#feedbackInterval);\n\n await this.#unsubscribe();\n await this.#protocol.disconnect();\n\n this.emit('disconnected', false);\n }\n\n async disconnectSafely(): Promise<void> {\n try {\n await this.disconnect();\n } catch (_) {\n }\n }\n\n async requestPlaybackQueue(length: number): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.playbackQueueRequest(0, length));\n }\n\n async sendCommand(command: Proto.Command, options?: Proto.CommandOptions): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.sendCommand(command, options));\n }\n\n async setVolume(volume: number): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.setVolume(volume));\n }\n\n async setCredentials(credentials: AccessoryCredentials): Promise<void> {\n this.#credentials = credentials;\n }\n\n async #feedback(): Promise<void> {\n try {\n await this.#protocol.feedback();\n } catch (err) {\n reporter.error('Feedback error', err);\n }\n }\n\n async #onClose(): Promise<void> {\n if (this.#disconnect) {\n return;\n }\n\n clearInterval(this.#feedbackInterval);\n\n this.emit('disconnected', true);\n }\n\n async #onError(err: Error): Promise<void> {\n reporter.error('AirPlay error', err);\n\n await this.disconnectSafely();\n\n this.emit('disconnected', true);\n }\n\n async #onTimeout(): Promise<void> {\n reporter.error('AirPlay timeout');\n\n await this.disconnectSafely();\n\n this.emit('disconnected', true);\n }\n\n async #setup(): Promise<void> {\n const keys = this.#keys;\n\n await this.#protocol.rtsp.enableEncryption(\n keys.accessoryToControllerKey,\n keys.controllerToAccessoryKey\n );\n\n await this.#unsubscribe();\n\n if (this.#timingServer) {\n await this.#protocol.setupTimingServer(this.#timingServer);\n }\n\n await this.#protocol.setupEventStream(keys.pairingId, keys.sharedSecret);\n await this.#protocol.setupDataStream(keys.sharedSecret);\n await this.#subscribe();\n\n this.#dataStream.on('error', async (err: Error) => this.#onError(err));\n this.#dataStream.on('timeout', async () => this.#onTimeout());\n this.#eventStream.on('error', async (err: Error) => this.#onError(err));\n this.#eventStream.on('timeout', async () => this.#onTimeout());\n\n this.#feedbackInterval = setInterval(async () => await this.#feedback(), FEEDBACK_INTERVAL);\n\n const gid = this.#discoveryResult.packet.additionals.find(a => 'rdata' in a && typeof a['rdata'] === 'object' && 'gid' in a['rdata'])?.['rdata']['gid'] as string;\n\n if (gid) {\n await this.#dataStream.exchange(this.#dataStream.messages.configureConnection(gid));\n }\n\n await this.#dataStream.exchange(this.#dataStream.messages.deviceInfo(keys.pairingId));\n\n this.#dataStream.on('deviceInfo', async () => {\n await this.#dataStream.exchange(this.#dataStream.messages.setConnectionState());\n await this.#dataStream.exchange(this.#dataStream.messages.clientUpdatesConfig());\n });\n }\n\n async #subscribe(): Promise<void> {\n await this.#state[STATE_SUBSCRIBE_SYMBOL]();\n }\n\n async #unsubscribe(): Promise<void> {\n try {\n await this.#state[STATE_UNSUBSCRIBE_SYMBOL]();\n } catch (err) {\n reporter.error('State unsubscribe error', err);\n }\n }\n}\n",
7
7
  "import type { AirPlay, AirPlayDataStream } from '@basmilius/apple-airplay';\nimport { Proto } from '@basmilius/apple-airplay';\nimport { waitFor } from '@basmilius/apple-common';\nimport { PROTOCOL } from './const';\nimport type Device from './device';\n\nexport default class {\n get #dataStream(): AirPlayDataStream {\n return this.#protocol.dataStream;\n }\n\n get #protocol(): AirPlay {\n return this.#device[PROTOCOL];\n }\n\n readonly #device: Device;\n\n constructor(device: Device) {\n this.#device = device;\n }\n\n async up(): Promise<void> {\n await this.pressAndRelease(1, 0x8C);\n }\n\n async down(): Promise<void> {\n await this.pressAndRelease(1, 0x8D);\n }\n\n async left(): Promise<void> {\n await this.pressAndRelease(1, 0x8B);\n }\n\n async right(): Promise<void> {\n await this.pressAndRelease(1, 0x8A);\n }\n\n async menu(): Promise<void> {\n await this.pressAndRelease(1, 0x86);\n }\n\n async play(): Promise<void> {\n await this.pressAndRelease(12, 0xB0);\n }\n\n async playPause(): Promise<void> {\n if (this.#device.state.nowPlayingClient?.playbackState === Proto.PlaybackState_Enum.Playing) {\n await this.pause();\n } else {\n await this.play();\n }\n }\n\n async pause(): Promise<void> {\n await this.pressAndRelease(12, 0xB1);\n }\n\n async next(): Promise<void> {\n await this.pressAndRelease(12, 0xB5);\n }\n\n async previous(): Promise<void> {\n await this.pressAndRelease(12, 0xB6);\n }\n\n async suspend(): Promise<void> {\n await this.pressAndRelease(1, 0x82);\n }\n\n async select(): Promise<void> {\n await this.pressAndRelease(1, 0x89);\n }\n\n async wake(): Promise<void> {\n await this.pressAndRelease(1, 0x83);\n }\n\n async home(): Promise<void> {\n await this.pressAndRelease(12, 0x40);\n }\n\n async volumeUp(): Promise<void> {\n await this.pressAndRelease(12, 0xE9);\n }\n\n async volumeDown(): Promise<void> {\n await this.pressAndRelease(12, 0xEA);\n }\n\n async mute(): Promise<void> {\n await this.pressAndRelease(12, 0xE2);\n }\n\n async doublePress(usePage: number, usage: number): Promise<void> {\n await this.pressAndRelease(usePage, usage);\n await waitFor(150);\n await this.pressAndRelease(usePage, usage);\n }\n\n async longPress(usePage: number, usage: number, duration: number = 1000): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.sendHIDEvent(usePage, usage, true));\n await waitFor(duration);\n await this.#dataStream.exchange(this.#dataStream.messages.sendHIDEvent(usePage, usage, false));\n }\n\n async pressAndRelease(usePage: number, usage: number): Promise<void> {\n await this.#dataStream.exchange(this.#dataStream.messages.sendHIDEvent(usePage, usage, true));\n await this.#dataStream.exchange(this.#dataStream.messages.sendHIDEvent(usePage, usage, false));\n }\n}\n",
8
8
  "import { EventEmitter } from 'node:events';\nimport { type AirPlay, type AirPlayDataStream, Proto } from '@basmilius/apple-airplay';\nimport { PROTOCOL, STATE_SUBSCRIBE_SYMBOL, STATE_UNSUBSCRIBE_SYMBOL } from './const';\nimport Client from './client';\nimport type Device from './device';\n\ntype EventMap = {\n readonly clients: [Record<string, Client>];\n readonly deviceInfo: [Proto.DeviceInfoMessage];\n readonly originClientProperties: [Proto.OriginClientPropertiesMessage];\n readonly playerClientProperties: [Proto.PlayerClientPropertiesMessage];\n readonly sendCommandResult: [Proto.SendCommandResultMessage];\n readonly setArtwork: [Proto.SetArtworkMessage];\n readonly setDefaultSupportedCommands: [Proto.SetDefaultSupportedCommandsMessage];\n readonly setNowPlayingClient: [Proto.SetNowPlayingClientMessage];\n readonly setNowPlayingPlayer: [Proto.SetNowPlayingPlayerMessage];\n readonly setState: [Proto.SetStateMessage];\n readonly updateClient: [Proto.UpdateClientMessage];\n readonly updateContentItem: [Proto.UpdateContentItemMessage];\n readonly updateContentItemArtwork: [Proto.UpdateContentItemArtworkMessage];\n readonly updatePlayer: [Proto.UpdatePlayerMessage];\n readonly updateOutputDevice: [Proto.UpdateOutputDeviceMessage];\n readonly volumeControlAvailability: [boolean, Proto.VolumeCapabilities_Enum];\n readonly volumeControlCapabilitiesDidChange: [boolean, Proto.VolumeCapabilities_Enum];\n readonly volumeDidChange: [number];\n};\n\nexport default class extends EventEmitter<EventMap> {\n get #dataStream(): AirPlayDataStream {\n return this.#protocol.dataStream;\n }\n\n get #protocol(): AirPlay {\n return this.#device[PROTOCOL];\n }\n\n get clients(): Record<string, Client> {\n return this.#clients;\n }\n\n get nowPlayingClient(): Client | null {\n return this.#nowPlayingClientBundleIdentifier ? this.#clients[this.#nowPlayingClientBundleIdentifier] ?? null : null;\n }\n\n get volume(): number {\n return this.#volume;\n }\n\n get volumeAvailable(): boolean {\n return this.#volumeAvailable;\n }\n\n get volumeCapabilities(): Proto.VolumeCapabilities_Enum {\n return this.#volumeCapabilities;\n }\n\n readonly #device: Device;\n #clients: Record<string, Client>;\n #nowPlayingClientBundleIdentifier: string | null;\n #volume: number;\n #volumeAvailable: boolean;\n #volumeCapabilities: Proto.VolumeCapabilities_Enum;\n\n constructor(device: Device) {\n super();\n\n this.#device = device;\n this.clear();\n\n this.onDeviceInfo = this.onDeviceInfo.bind(this);\n this.onOriginClientProperties = this.onOriginClientProperties.bind(this);\n this.onPlayerClientProperties = this.onPlayerClientProperties.bind(this);\n this.onSendCommandResult = this.onSendCommandResult.bind(this);\n this.onSetArtwork = this.onSetArtwork.bind(this);\n this.onSetDefaultSupportedCommands = this.onSetDefaultSupportedCommands.bind(this);\n this.onSetNowPlayingClient = this.onSetNowPlayingClient.bind(this);\n this.onSetNowPlayingPlayer = this.onSetNowPlayingPlayer.bind(this);\n this.onSetState = this.onSetState.bind(this);\n this.onUpdateClient = this.onUpdateClient.bind(this);\n this.onUpdateContentItem = this.onUpdateContentItem.bind(this);\n this.onUpdateContentItemArtwork = this.onUpdateContentItemArtwork.bind(this);\n this.onUpdatePlayer = this.onUpdatePlayer.bind(this);\n this.onUpdateOutputDevice = this.onUpdateOutputDevice.bind(this);\n this.onVolumeControlAvailability = this.onVolumeControlAvailability.bind(this);\n this.onVolumeControlCapabilitiesDidChange = this.onVolumeControlCapabilitiesDidChange.bind(this);\n this.onVolumeDidChange = this.onVolumeDidChange.bind(this);\n }\n\n async [STATE_SUBSCRIBE_SYMBOL](): Promise<void> {\n this.#dataStream.on('deviceInfo', this.onDeviceInfo);\n this.#dataStream.on('originClientProperties', this.onOriginClientProperties);\n this.#dataStream.on('playerClientProperties', this.onPlayerClientProperties);\n this.#dataStream.on('sendCommandResult', this.onSendCommandResult);\n this.#dataStream.on('setArtwork', this.onSetArtwork);\n this.#dataStream.on('setDefaultSupportedCommands', this.onSetDefaultSupportedCommands);\n this.#dataStream.on('setNowPlayingClient', this.onSetNowPlayingClient);\n this.#dataStream.on('setNowPlayingPlayer', this.onSetNowPlayingPlayer);\n this.#dataStream.on('setState', this.onSetState);\n this.#dataStream.on('updateClient', this.onUpdateClient);\n this.#dataStream.on('updateContentItem', this.onUpdateContentItem);\n this.#dataStream.on('updateContentItemArtwork', this.onUpdateContentItemArtwork);\n this.#dataStream.on('updatePlayer', this.onUpdatePlayer);\n this.#dataStream.on('updateOutputDevice', this.onUpdateOutputDevice);\n this.#dataStream.on('volumeControlAvailability', this.onVolumeControlAvailability);\n this.#dataStream.on('volumeControlCapabilitiesDidChange', this.onVolumeControlCapabilitiesDidChange);\n this.#dataStream.on('volumeDidChange', this.onVolumeDidChange);\n }\n\n async [STATE_UNSUBSCRIBE_SYMBOL](): Promise<void> {\n const dataStream = this.#dataStream;\n\n if (!dataStream) {\n return;\n }\n\n dataStream.off('deviceInfo', this.onDeviceInfo);\n dataStream.off('originClientProperties', this.onOriginClientProperties);\n dataStream.off('playerClientProperties', this.onPlayerClientProperties);\n dataStream.off('sendCommandResult', this.onSendCommandResult);\n dataStream.off('setArtwork', this.onSetArtwork);\n dataStream.off('setDefaultSupportedCommands', this.onSetDefaultSupportedCommands);\n dataStream.off('setNowPlayingClient', this.onSetNowPlayingClient);\n dataStream.off('setNowPlayingPlayer', this.onSetNowPlayingPlayer);\n dataStream.off('setState', this.onSetState);\n dataStream.off('updateClient', this.onUpdateClient);\n dataStream.off('updateContentItem', this.onUpdateContentItem);\n dataStream.off('updateContentItemArtwork', this.onUpdateContentItemArtwork);\n dataStream.off('updatePlayer', this.onUpdatePlayer);\n dataStream.off('updateOutputDevice', this.onUpdateOutputDevice);\n dataStream.off('volumeControlAvailability', this.onVolumeControlAvailability);\n dataStream.off('volumeControlCapabilitiesDidChange', this.onVolumeControlCapabilitiesDidChange);\n dataStream.off('volumeDidChange', this.onVolumeDidChange);\n }\n\n clear(): void {\n this.#clients = {};\n this.#nowPlayingClientBundleIdentifier = undefined;\n this.#volume = 0;\n this.#volumeAvailable = false;\n this.#volumeCapabilities = Proto.VolumeCapabilities_Enum.None;\n }\n\n async onDeviceInfo(message: Proto.DeviceInfoMessage): Promise<void> {\n this.emit('deviceInfo', message);\n }\n\n async onOriginClientProperties(message: Proto.OriginClientPropertiesMessage): Promise<void> {\n this.emit('originClientProperties', message);\n }\n\n async onPlayerClientProperties(message: Proto.PlayerClientPropertiesMessage): Promise<void> {\n this.emit('playerClientProperties', message);\n }\n\n async onSendCommandResult(message: Proto.SendCommandResultMessage): Promise<void> {\n this.emit('sendCommandResult', message);\n }\n\n async onSetArtwork(message: Proto.SetArtworkMessage): Promise<void> {\n this.emit('setArtwork', message);\n }\n\n async onSetDefaultSupportedCommands(message: Proto.SetDefaultSupportedCommandsMessage): Promise<void> {\n this.emit('setDefaultSupportedCommands', message);\n }\n\n async onSetNowPlayingClient(message: Proto.SetNowPlayingClientMessage): Promise<void> {\n this.#nowPlayingClientBundleIdentifier = message.client?.bundleIdentifier ?? null;\n\n this.emit('setNowPlayingClient', message);\n }\n\n async onSetNowPlayingPlayer(message: Proto.SetNowPlayingPlayerMessage): Promise<void> {\n this.emit('setNowPlayingPlayer', message);\n }\n\n async onSetState(message: Proto.SetStateMessage): Promise<void> {\n const client = this.#client(message.playerPath.client.bundleIdentifier, message.displayName);\n\n if (message.playbackState) {\n client.setPlaybackState(message.playbackState, message.playbackStateTimestamp);\n }\n\n if (message.supportedCommands) {\n client.setSupportedCommands(message.supportedCommands.supportedCommands);\n }\n\n if (message.playbackQueue) {\n client.setPlaybackQueue(message.playbackQueue);\n }\n\n this.emit('setState', message);\n }\n\n async onUpdateContentItem(message: Proto.UpdateContentItemMessage): Promise<void> {\n const client = this.#client(message.playerPath.client.bundleIdentifier, message.playerPath.client.displayName);\n\n if (!client) {\n return;\n }\n\n for (const item of message.contentItems) {\n client.updateContentItem(item);\n }\n\n this.emit('updateContentItem', message);\n }\n\n async onUpdateContentItemArtwork(message: Proto.UpdateContentItemArtworkMessage): Promise<void> {\n this.emit('updateContentItemArtwork', message);\n }\n\n async onUpdatePlayer(message: Proto.UpdatePlayerMessage): Promise<void> {\n this.emit('updatePlayer', message);\n }\n\n async onUpdateClient(message: Proto.UpdateClientMessage): Promise<void> {\n this.#client(message.client.bundleIdentifier, message.client.displayName);\n\n this.emit('clients', this.#clients);\n }\n\n async onUpdateOutputDevice(message: Proto.UpdateOutputDeviceMessage): Promise<void> {\n this.emit('updateOutputDevice', message);\n }\n\n async onVolumeControlAvailability(message: Proto.VolumeControlAvailabilityMessage): Promise<void> {\n this.#volumeAvailable = message.volumeControlAvailable;\n this.#volumeCapabilities = message.volumeCapabilities;\n\n this.emit('volumeControlAvailability', message.volumeControlAvailable, message.volumeCapabilities);\n }\n\n async onVolumeControlCapabilitiesDidChange(message: Proto.VolumeControlCapabilitiesDidChangeMessage): Promise<void> {\n this.#volumeAvailable = message.capabilities.volumeControlAvailable;\n this.#volumeCapabilities = message.capabilities.volumeCapabilities;\n\n this.emit('volumeControlCapabilitiesDidChange', message.capabilities.volumeControlAvailable, message.capabilities.volumeCapabilities);\n }\n\n async onVolumeDidChange(message: Proto.VolumeDidChangeMessage): Promise<void> {\n this.#volume = message.volume;\n\n this.emit('volumeDidChange', message.volume);\n }\n\n #client(bundleIdentifier: string, displayName: string): Client {\n if (bundleIdentifier in this.#clients) {\n return this.#clients[bundleIdentifier];\n } else {\n const client = new Client(bundleIdentifier, displayName);\n this.#clients[bundleIdentifier] = client;\n\n this.emit('clients', this.#clients);\n\n return client;\n }\n }\n}\n",
9
9
  "import { Proto } from '@basmilius/apple-airplay';\nimport { merge } from 'lodash-es';\n\nexport default class Client {\n get bundleIdentifier(): string {\n return this.#bundleIdentifier;\n }\n\n get displayName(): string {\n return this.#displayName;\n }\n\n get playbackQueue(): Proto.PlaybackQueue | null {\n return this.#playbackQueue;\n }\n\n get playbackState(): Proto.PlaybackState_Enum {\n return this.#playbackState;\n }\n\n get playbackStateTimestamp(): number {\n return this.#playbackStateTimestamp;\n }\n\n get supportedCommands(): Proto.CommandInfo[] {\n return this.#supportedCommands;\n }\n\n readonly #bundleIdentifier: string;\n readonly #displayName: string;\n #playbackQueue: Proto.PlaybackQueue | null = null;\n #playbackState: Proto.PlaybackState_Enum;\n #playbackStateTimestamp: number;\n #supportedCommands: Proto.CommandInfo[] = [];\n\n constructor(bundleIdentifier: string, displayName: string) {\n this.#bundleIdentifier = bundleIdentifier;\n this.#displayName = displayName;\n this.#playbackState = Proto.PlaybackState_Enum.Unknown;\n this.#supportedCommands = [];\n }\n\n isCommandSupported(command: Proto.Command): boolean {\n return this.#supportedCommands.some(c => c.command === command);\n }\n\n setPlaybackQueue(playbackQueue: Proto.PlaybackQueue): void {\n this.#playbackQueue = playbackQueue;\n }\n\n setPlaybackState(playbackState: Proto.PlaybackState_Enum, playbackStateTimestamp: number): void {\n this.#playbackState = playbackState;\n this.#playbackStateTimestamp = playbackStateTimestamp;\n }\n\n setSupportedCommands(supportedCommands: Proto.CommandInfo[]): void {\n this.#supportedCommands = supportedCommands;\n }\n \n updateContentItem(item: Proto.ContentItem): void {\n if (!this.#playbackQueue) {\n return;\n }\n\n const index = this.#playbackQueue.contentItems.findIndex(i => i.identifier === item.identifier);\n if (index === -1) {\n return;\n }\n\n this.#playbackQueue.contentItems[index] = merge(\n item,\n this.#playbackQueue.contentItems[index]\n );\n }\n}\n",
@@ -110,7 +110,7 @@
110
110
  "import HomePodBase from './homepod-base';\n\nexport default class extends HomePodBase {}\n",
111
111
  "import HomePodBase from './homepod-base';\n\nexport default class extends HomePodBase {}\n"
112
112
  ],
113
- "mappings": "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",
114
- "debugId": "1A5CC99D946D160B64756E2164756E21",
113
+ "mappings": "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",
114
+ "debugId": "E2772216634083B664756E2164756E21",
115
115
  "names": []
116
116
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@basmilius/apple-devices",
3
3
  "description": "Exposes various Apple devices to connect with either AirPlay or Companion Link.",
4
- "version": "0.0.68",
4
+ "version": "0.0.69",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "author": {
@@ -43,9 +43,9 @@
43
43
  }
44
44
  },
45
45
  "dependencies": {
46
- "@basmilius/apple-airplay": "0.0.68",
47
- "@basmilius/apple-common": "0.0.68",
48
- "@basmilius/apple-companion-link": "0.0.68",
46
+ "@basmilius/apple-airplay": "0.0.69",
47
+ "@basmilius/apple-common": "0.0.69",
48
+ "@basmilius/apple-companion-link": "0.0.69",
49
49
  "lodash-es": "^4.17.22"
50
50
  },
51
51
  "devDependencies": {