@exezt-/webamp 1.5.0-0x725 → 1.5.0-0x726

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.
@@ -8,7 +8,7 @@
8
8
  object-assign
9
9
  (c) Sindre Sorhus
10
10
  @license MIT
11
- */var n=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var A={},t=0;t<10;t++)A["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(A).map((function(e){return A[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,A){for(var t,o,l=i(e),s=1;s<arguments.length;s++){for(var c in t=Object(arguments[s]))r.call(t,c)&&(l[c]=t[c]);if(n){o=n(t);for(var u=0;u<o.length;u++)a.call(t,o[u])&&(l[o[u]]=t[o[u]])}}return l}},,function(e,A,t){var n=t(82).Symbol;e.exports=n},function(e,A,t){"use strict";e.exports=t(66)},function(e,A,t){"use strict";var n=t(28),r={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},o={};function l(e){return n.isMemo(e)?i:o[e.$$typeof]||r}o[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},o[n.Memo]=i;var s=Object.defineProperty,c=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,g=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(A,t,n){if("string"!=typeof t){if(p){var r=g(t);r&&r!==p&&e(A,r,n)}var i=c(t);u&&(i=i.concat(u(t)));for(var o=l(A),h=l(t),f=0;f<i.length;++f){var m=i[f];if(!(a[m]||n&&n[m]||h&&h[m]||o&&o[m])){var E=d(t,m);try{s(A,m,E)}catch(e){}}}}return A}},function(e,A,t){"use strict";(function(e,n){var r,a=t(39);r="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:n;var i=Object(a.a)(r);A.a=i}).call(this,t(19),t(67)(e))},function(e,A,t){var n=t(69),r=t(70);e.exports={parser:n,creator:r}},,,function(e,A,t){"use strict";t.d(A,"a",(function(){return i}));var n=t(4),r=t.n(n),a=t(3);class i{constructor(e,A){var t,n,i;r()(this,"webamp",void 0),r()(this,"maxFileSize",20971520),r()(this,"applicationStorage",null!==(t=null===(n=window)||void 0===n||null===(i=n.Telegram)||void 0===i?void 0:i.WebApp.DeviceStorage)&&void 0!==t?t:window.localStorage),r()(this,"telegram",void 0),r()(this,"loadCustomTracks",e=>{var A;(null!==(A=this.webamp)&&void 0!==A?A:window.__webamp).setTracksToPlay(e)}),r()(this,"updateAppState",()=>{this.applicationStorage.setItem("appState",JSON.stringify(this.webamp.__getSerializedState())),localStorage.setItem("appState",JSON.stringify(this.webamp.__getSerializedState()))}),r()(this,"getTrackListFromYandexDisk",async e=>{fetch("https://cloud-api.yandex.net/v1/disk/public/resources?public_key="+encodeURIComponent(e),{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json"}}).then(async e=>200===e.status?e.text():null).then(async A=>{if(null!==A){var t;const n=null===(t=JSON.parse(A))||void 0===t?void 0:t._embedded.items;let r=0;this.saveLastPlaylist(e);for(const e of n)0===r?this.webamp.setTracksToPlay([{defaultName:e.name,url:`${e.file}&public_key=${e.public_key}`}]):this.webamp.appendTracks([{defaultName:e.name,url:`${e.file}&public_key=${e.public_key}`}]),r++}})}),r()(this,"loadTrackFromYandexDisk",async e=>{let A=new URL(e.url).searchParams.get("public_key");await fetch(e.url,{method:"GET"}).then(e=>e).then(e=>fetch(e.url)).then(async e=>302===e.status?await fetch(`${e.headers.get("Location")}&public_key=${A}`):e).then(e=>{var A;console.log(e);const t=null===(A=e.body)||void 0===A?void 0:A.getReader();return new ReadableStream({start:e=>function A(){return null==t?void 0:t.read().then(({done:t,value:n})=>{if(!t)return e.enqueue(n),A();e.close()})}()})}).then(e=>new Response(e)).then(e=>e.blob()).then(e=>URL.createObjectURL(e)).then(A=>{let t=this.getAllTracks();this.replaceTrack(e,t)}).catch(e=>e)}),r()(this,"getCurrentTrack",()=>{let e=this.webamp.store.getState().playlist.currentTrack;return this.webamp.store.getState().tracks[e]}),r()(this,"getAllTracks",()=>this.webamp.store.getState().tracks),r()(this,"replaceTrack",(e,A)=>{let t=[];Object.entries(A).forEach(([A,n])=>{n.id===e.id?t.push(e):t.push(n)}),this.webamp.setTracksToPlay(t)}),r()(this,"saveLastPlaylist",e=>{document.cookie=`lastlist=${e}; path=/; expires=Tue, 19 Jan 2038 03:14:07 GMT; domain=win-amp.ru; secure`}),r()(this,"getCookie",e=>{const A=new RegExp(`(^| )${e}=([^;]+)`),t=document.cookie.match(A);if(t)return t[2]}),r()(this,"loadOptions",e=>{this.webamp.__loadSerializedState(e)}),r()(this,"loadOptions2",e=>{let A=0,t=e.media.volume,n=e.media.balance,r=[e.equalizer.sliders.preamp,e.equalizer.sliders[60],e.equalizer.sliders[170],e.equalizer.sliders[310],e.equalizer.sliders[600],e.equalizer.sliders[1e3],e.equalizer.sliders[3e3],e.equalizer.sliders[6e3],e.equalizer.sliders[12e3],e.equalizer.sliders[14e3],e.equalizer.sliders[16e3]],i=[60,170,310,600,1e3,3e3,6e3,12e3,14e3,16e3];this.webamp.store.dispatch({type:"SET_VOLUME",volume:Object(a.d)(t,0,100)}),this.webamp.store.dispatch({type:"SET_BALANCE",balance:n}),this.webamp.store.dispatch({type:"SET_BAND_VALUE",band:"preamp",value:e.equalizer.sliders.preamp});for(const e of i)this.webamp.store.dispatch({type:"SET_BAND_VALUE",band:e,value:r[A]}),A++;window.__webamp.store.getState().media.shuffle!==e.media.shuffle&&this.webamp.store.dispatch({type:"TOGGLE_SHUFFLE"}),window.__webamp.store.getState().media.repeat!==e.media.repeat&&this.webamp.store.dispatch({type:"TOGGLE_REPEAT"})}),setTimeout(()=>{if(!window.__webamp)throw new Error("Webamp __webamp is undefined!!");if(this.webamp=window.__webamp,void 0!==localStorage.getItem("app-state"))this.loadOptions(JSON.parse(localStorage.getItem("app-state")));else try{this.applicationStorage.getItem("app-state",e=>{this.loadOptions(JSON.parse(e))})}catch(e){}if(!1!==e){var A,t;const e=this.getCookie("lastlist");var n,r;if(void 0!==e&&this.getTrackListFromYandexDisk(e),null!==(A=window)&&void 0!==A&&null!==(t=A.Telegram)&&void 0!==t&&t.WebApp)this.telegram=null===(n=window)||void 0===n||null===(r=n.Telegram)||void 0===r?void 0:r.WebApp,this.initializeTelegramWebAppEvents();else console.error("Telegram is undefined!! Skipping Telegram.WebApp event handler...");this.initializeApplicationHandlers()}},1e3)}initializeTelegramWebAppEvents(){this.telegram.offEvent("deactivated",()=>{this.updateAppState()})}initializeApplicationHandlers(){["unload","beforeunload","pagehide"].forEach(e=>{window.addEventListener(e,()=>{this.updateAppState()})}),this.webamp.onTrackDidChange(()=>{console.log(this.webamp.store.getState()),this.updateAppState()}),this.webamp.onWillClose(()=>{this.updateAppState()}),this.webamp.onClose(()=>{this.updateAppState()}),this.webamp.onMinimize(()=>{this.updateAppState()}),this.webamp.store.dispatch({type:"ENABLE_MILKDROP",open:!1});this.webamp.__onStateChange(()=>{this.updateAppState()}),["ended","playing","timeupdate","fileLoaded","waiting","stopWaiting"].forEach(e=>this.webamp.media.on(e,()=>{this.updateAppState()}))}}new i(!0)},,,,function(e,A){e.exports={PRESET_VALUES:["hz60","hz170","hz310","hz600","hz1000","hz3000","hz6000","hz12000","hz14000","hz16000","preamp"],HEADER:"Winamp EQ library file v1.1"}},function(e,A,t){"use strict";function n(e){var A,t=e.Symbol;return"function"==typeof t?t.observable?A=t.observable:(A=t("observable"),t.observable=A):A="@@observable",A}t.d(A,"a",(function(){return n}))},function(e,A,t){"use strict";var n=t(14).compose;A.__esModule=!0,A.composeWithDevTools="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?n:n.apply(null,arguments)},A.devToolsEnhancer="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__?window.__REDUX_DEVTOOLS_EXTENSION__:function(){return function(e){return e}}},function(e){e.exports=JSON.parse('{"images":{"EQ_PREAMP_LINE":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAABCAYAAADpXEERAAAAE0lEQVQoU2Pcdfruf4ZRMKRDAAD1lwNjTqcaUQAAAABJRU5ErkJggg==","EQ_GRAPH_LINE_COLORS":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAATCAYAAABRC2cZAAAAR0lEQVQYV2O4rCT9n+F9kOJ/hvfViv8ZHkzSQCE2afxneH/HEJm49Nr0PwOYWPLIAkp0PjL4z1B41uQ/Q9QGnf8MWrPEIAQANWYwvnlToNIAAAAASUVORK5CYII="},"colors":["rgb(0,0,0)","rgb(24,33,41)","rgb(239,49,16)","rgb(206,41,16)","rgb(214,90,0)","rgb(214,102,0)","rgb(214,115,0)","rgb(198,123,8)","rgb(222,165,24)","rgb(214,181,33)","rgb(189,222,41)","rgb(148,222,33)","rgb(41,206,16)","rgb(50,190,16)","rgb(57,181,16)","rgb(49,156,8)","rgb(41,148,0)","rgb(24,132,8)","rgb(255,255,255)","rgb(214,214,222)","rgb(181,189,189)","rgb(160,170,175)","rgb(148,156,165)","rgb(150,150,150)"],"playlistStyle":{"normal":"#00FF00","current":"#FFFFFF","normalbg":"#000000","selectedbg":"#0000FF","font":"Arial"}}')},function(e,A,t){"use strict";function n(e,A){if(!(this instanceof n))return new n(e,A);if(this.data=e||[],this.length=this.data.length,this.compare=A||r,this.length>0)for(var t=(this.length>>1)-1;t>=0;t--)this._down(t)}function r(e,A){return e<A?-1:e>A?1:0}e.exports=n,e.exports.default=n,n.prototype={push:function(e){this.data.push(e),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var e=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),e}},peek:function(){return this.data[0]},_up:function(e){for(var A=this.data,t=this.compare,n=A[e];e>0;){var r=e-1>>1,a=A[r];if(t(n,a)>=0)break;A[e]=a,e=r}A[e]=n},_down:function(e){for(var A=this.data,t=this.compare,n=this.length>>1,r=A[e];e<n;){var a=1+(e<<1),i=a+1,o=A[a];if(i<this.length&&t(A[i],o)<0&&(a=i,o=A[i]),t(o,r)>=0)break;A[e]=o,e=a}A[e]=r}}},function(e,A,t){var n=t(78),r=t(80),a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,i=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g");e.exports=function(e){return(e=r(e))&&e.replace(a,n).replace(i,"")}},function(e){e.exports=JSON.parse('{"type":"Winamp EQ library file v1.1","presets":[{"name":"Classical","hz60":33,"hz170":33,"hz310":33,"hz600":33,"hz1000":33,"hz3000":33,"hz6000":20,"hz12000":20,"hz14000":20,"hz16000":16,"preamp":33},{"name":"Club","hz60":33,"hz170":33,"hz310":38,"hz600":42,"hz1000":42,"hz3000":42,"hz6000":38,"hz12000":33,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Dance","hz60":48,"hz170":44,"hz310":36,"hz600":32,"hz1000":32,"hz3000":22,"hz6000":20,"hz12000":20,"hz14000":32,"hz16000":32,"preamp":33},{"name":"Laptop speakers/headphones","hz60":40,"hz170":50,"hz310":41,"hz600":26,"hz1000":28,"hz3000":35,"hz6000":40,"hz12000":48,"hz14000":53,"hz16000":56,"preamp":33},{"name":"Large hall","hz60":49,"hz170":49,"hz310":42,"hz600":42,"hz1000":33,"hz3000":24,"hz6000":24,"hz12000":24,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Party","hz60":44,"hz170":44,"hz310":33,"hz600":33,"hz1000":33,"hz3000":33,"hz6000":33,"hz12000":33,"hz14000":44,"hz16000":44,"preamp":33},{"name":"Pop","hz60":29,"hz170":40,"hz310":44,"hz600":45,"hz1000":41,"hz3000":30,"hz6000":28,"hz12000":28,"hz14000":29,"hz16000":29,"preamp":33},{"name":"Reggae","hz60":33,"hz170":33,"hz310":31,"hz600":22,"hz1000":33,"hz3000":43,"hz6000":43,"hz12000":33,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Rock","hz60":45,"hz170":40,"hz310":23,"hz600":19,"hz1000":26,"hz3000":39,"hz6000":47,"hz12000":50,"hz14000":50,"hz16000":50,"preamp":33},{"name":"Soft","hz60":40,"hz170":35,"hz310":30,"hz600":28,"hz1000":30,"hz3000":39,"hz6000":46,"hz12000":48,"hz14000":50,"hz16000":52,"preamp":33},{"name":"Ska","hz60":28,"hz170":24,"hz310":25,"hz600":31,"hz1000":39,"hz3000":42,"hz6000":47,"hz12000":48,"hz14000":50,"hz16000":48,"preamp":33},{"name":"Full Bass","hz60":48,"hz170":48,"hz310":48,"hz600":42,"hz1000":35,"hz3000":25,"hz6000":18,"hz12000":15,"hz14000":14,"hz16000":14,"preamp":33},{"name":"Soft Rock","hz60":39,"hz170":39,"hz310":36,"hz600":31,"hz1000":25,"hz3000":23,"hz6000":26,"hz12000":31,"hz14000":37,"hz16000":47,"preamp":33},{"name":"Full Treble","hz60":16,"hz170":16,"hz310":16,"hz600":25,"hz1000":37,"hz3000":50,"hz6000":58,"hz12000":58,"hz14000":58,"hz16000":60,"preamp":33},{"name":"Full Bass & Treble","hz60":44,"hz170":42,"hz310":33,"hz600":20,"hz1000":24,"hz3000":35,"hz6000":46,"hz12000":50,"hz14000":52,"hz16000":52,"preamp":33},{"name":"Live","hz60":24,"hz170":33,"hz310":39,"hz600":41,"hz1000":42,"hz3000":42,"hz6000":39,"hz12000":37,"hz14000":37,"hz16000":36,"preamp":33},{"name":"Techno","hz60":45,"hz170":42,"hz310":33,"hz600":23,"hz1000":24,"hz3000":33,"hz6000":45,"hz12000":48,"hz14000":48,"hz16000":47,"preamp":33}]}')},function(e,A,t){"use strict";var n=this&&this.__read||function(e,A){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,r,a=t.call(e),i=[];try{for(;(void 0===A||A-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(r)throw r.error}}return i},r=this&&this.__spread||function(){for(var e=[],A=0;A<arguments.length;A++)e=e.concat(n(arguments[A]));return e};Object.defineProperty(A,"__esModule",{value:!0}),A.convertAniBinaryToCSS=void 0;var a=t(99);A.convertAniBinaryToCSS=function(e,A){var t=function(e){var A,t=a.parseAni(e),n=null!==(A=t.rate)&&void 0!==A?A:t.images.map((function(){return t.metadata.iDispRate})),i=(s=n,s.reduce((function(e,A){return e+A}),0)),o=t.images.map((function(e){return{url:(t=e,A=t,n=window.btoa(String.fromCharCode.apply(String,r(A))),"data:image/x-win-bitmap;base64,"+n),percents:[]};var A,t,n})),l=0;var s;return n.forEach((function(e,A){var n=t.seq?t.seq[A]:A;o[n].percents.push(l/i*100),l+=e})),{duration:i*(1e3/60),frames:o}}(A),n="ani-cursor-"+o();return"\n @keyframes "+n+" {\n "+t.frames.map((function(e){var A=e.url;return e.percents.map((function(e){return e+"%"})).join(", ")+" { cursor: url("+A+"), auto; }"})).join("\n")+"\n }\n "+e+":hover {\n animation: "+n+" "+t.duration+"ms step-end infinite;\n }\n "};var i=0,o=function(){return i++}},,,,,,function(e,A,t){"use strict";t.r(A);var n=t(4),r=t.n(n),a=t(0),i=t(1),o=t.n(i),l=t(7),s=t.n(l),c=(t(63),o.a.createContext(null));var u=function(e){e()},d={notify:function(){}};function g(){var e=u,A=null,t=null;return{clear:function(){A=null,t=null},notify:function(){e((function(){for(var e=A;e;)e.callback(),e=e.next}))},get:function(){for(var e=[],t=A;t;)e.push(t),t=t.next;return e},subscribe:function(e){var n=!0,r=t={callback:e,next:null,prev:t};return r.prev?r.prev.next=r:A=r,function(){n&&null!==A&&(n=!1,r.next?r.next.prev=r.prev:t=r.prev,r.prev?r.prev.next=r.next:A=r.next)}}}}var p=function(){function e(e,A){this.store=e,this.parentSub=A,this.unsubscribe=null,this.listeners=d,this.handleChangeWrapper=this.handleChangeWrapper.bind(this)}var A=e.prototype;return A.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},A.notifyNestedSubs=function(){this.listeners.notify()},A.handleChangeWrapper=function(){this.onStateChange&&this.onStateChange()},A.isSubscribed=function(){return Boolean(this.unsubscribe)},A.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.handleChangeWrapper):this.store.subscribe(this.handleChangeWrapper),this.listeners=g())},A.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=d)},e}();var h=function(e){var A=e.store,t=e.context,n=e.children,r=Object(i.useMemo)((function(){var e=new p(A);return e.onStateChange=e.notifyNestedSubs,{store:A,subscription:e}}),[A]),a=Object(i.useMemo)((function(){return A.getState()}),[A]);Object(i.useEffect)((function(){var e=r.subscription;return e.trySubscribe(),a!==A.getState()&&e.notifyNestedSubs(),function(){e.tryUnsubscribe(),e.onStateChange=null}}),[r,a]);var l=t||c;return o.a.createElement(l.Provider,{value:r},n)};t(29),t(28);var f="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?i.useLayoutEffect:i.useEffect;var m=t(14);function E(){return Object(i.useContext)(c)}function b(e){void 0===e&&(e=c);var A=e===c?E:function(){return Object(i.useContext)(e)};return function(){return A().store}}var w=b();function y(e){void 0===e&&(e=c);var A=e===c?w:b(e);return function(){return A().dispatch}}var O=y(),I=function(e,A){return e===A};function S(e){void 0===e&&(e=c);var A=e===c?E:function(){return Object(i.useContext)(e)};return function(e,t){void 0===t&&(t=I);var n=A(),r=function(e,A,t,n){var r,a=Object(i.useReducer)((function(e){return e+1}),0)[1],o=Object(i.useMemo)((function(){return new p(t,n)}),[t,n]),l=Object(i.useRef)(),s=Object(i.useRef)(),c=Object(i.useRef)(),u=Object(i.useRef)(),d=t.getState();try{r=e!==s.current||d!==c.current||l.current?e(d):u.current}catch(e){throw l.current&&(e.message+="\nThe error may be correlated with this previous error:\n"+l.current.stack+"\n\n"),e}return f((function(){s.current=e,c.current=d,u.current=r,l.current=void 0})),f((function(){function e(){try{var e=s.current(t.getState());if(A(e,u.current))return;u.current=e}catch(e){l.current=e}a()}return o.onStateChange=e,o.trySubscribe(),e(),function(){return o.tryUnsubscribe()}}),[t,o]),r}(e,t,n.store,n.subscription);return Object(i.useDebugValue)(r),r}}var k,U=S();function v(e){return function(A){var t=A.dispatch,n=A.getState;return function(A){return function(r){return"function"==typeof r?r(t,n,e):A(r)}}}}k=l.unstable_batchedUpdates,u=k;var C=v();C.withExtraArgument=v;var B=C,x=t(40);var M=t(3);function N(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function T(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?N(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):N(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Q={trackOrder:[],currentTrack:null,lastSelectedIndex:null,selectedTracks:new Set};var L=(e=Q,A)=>{switch(A.type){case"CLICKED_TRACK":return T(T({},e),{},{selectedTracks:new Set([e.trackOrder[A.index]]),lastSelectedIndex:A.index});case"CTRL_CLICKED_TRACK":{const r=e.trackOrder[A.index],a=new Set(e.selectedTracks);return n=r,(t=a).has(n)?t.delete(n):t.add(n),T(T({},e),{},{selectedTracks:a,lastSelectedIndex:A.index})}case"SHIFT_CLICKED_TRACK":if(null==e.lastSelectedIndex)return e;const r=A.index,a=Math.min(r,e.lastSelectedIndex),i=Math.max(r,e.lastSelectedIndex),o=new Set(e.trackOrder.slice(a,i+1));return T(T({},e),{},{selectedTracks:o});case"SELECT_ALL":return T(T({},e),{},{selectedTracks:new Set(e.trackOrder)});case"SELECT_ZERO":return T(T({},e),{},{selectedTracks:new Set});case"INVERT_SELECTION":return T(T({},e),{},{selectedTracks:new Set(e.trackOrder.filter(A=>!e.selectedTracks.has(A)))});case"REMOVE_ALL_TRACKS":return T(T({},e),{},{trackOrder:[],currentTrack:null,selectedTracks:new Set,lastSelectedIndex:null});case"REMOVE_TRACKS":const l=new Set(A.ids.map(Number)),{currentTrack:s}=e;return T(T({},e),{},{trackOrder:e.trackOrder.filter(e=>!l.has(e)),currentTrack:l.has(Number(s))?null:s,selectedTracks:new Set(Array.from(e.selectedTracks).filter(e=>l.has(e))),lastSelectedIndex:null});case"REVERSE_LIST":return T(T({},e),{},{trackOrder:[...e.trackOrder].reverse(),lastSelectedIndex:null});case"RANDOMIZE_LIST":return T(T({},e),{},{trackOrder:Object(M.A)(e.trackOrder)});case"SET_TRACK_ORDER":const{trackOrder:c}=A;return T(T({},e),{},{trackOrder:c});case"ADD_TRACK_FROM_URL":const u=null==A.atIndex?e.trackOrder.length:A.atIndex;return T(T({},e),{},{trackOrder:[...e.trackOrder.slice(0,u),Number(A.id),...e.trackOrder.slice(u)],lastSelectedIndex:null});case"PLAY_TRACK":case"BUFFER_TRACK":return T(T({},e),{},{currentTrack:A.id});case"DRAG_SELECTED":return T(T({},e),{},{trackOrder:Object(M.p)(e.trackOrder,A=>e.selectedTracks.has(e.trackOrder[A]),A.offset),lastSelectedIndex:null});default:return e}var t,n},j=t(9),D=t.n(j),R=t(2);function V(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function F(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?V(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):V(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const G={focused:R.m.MAIN,positionsAreRelative:!0,genWindows:{[R.m.MAIN]:{title:"Main Window",size:[0,0],open:!0,shade:!1,canResize:!1,canShade:!0,canDouble:!0,hotkey:"Alt+W",position:{x:0,y:0}},[R.m.EQUALIZER]:{title:"Equalizer",size:[0,0],open:!0,shade:!1,canResize:!1,canShade:!0,canDouble:!0,hotkey:"Alt+G",position:{x:0,y:0}},[R.m.PLAYLIST]:{title:"Playlist Editor",size:[0,0],open:!0,shade:!1,canResize:!0,canShade:!0,canDouble:!1,hotkey:"Alt+E",position:{x:0,y:0}}},browserWindowSize:{width:0,height:0},windowOrder:[R.m.PLAYLIST,R.m.EQUALIZER,R.m.MILKDROP,R.m.MAIN]};function P(e){return{positionsAreRelative:e.positionsAreRelative,genWindows:M.t(e.genWindows,e=>({size:e.size,open:e.open,hidden:!1,shade:e.shade||!1,position:e.position})),focused:e.focused}}var K=(e=G,A)=>{switch(A.type){case"ENABLE_MILKDROP":return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[R.m.MILKDROP]:{title:"Milkdrop",size:[0,0],open:A.open,shade:!1,canResize:!0,canShade:!1,canDouble:!1,position:{x:0,y:0}}})});case"SET_FOCUSED_WINDOW":let t=e.windowOrder;return null!=A.window&&(t=[...e.windowOrder.filter(e=>e!==A.window),A.window]),F(F({},e),{},{focused:A.window,windowOrder:t});case"TOGGLE_WINDOW_SHADE_MODE":const{canShade:n}=e.genWindows[A.windowId];if(!n)throw new Error("Tried to shade/unshade a window that cannot be shaded: "+A.windowId);return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{shade:!e.genWindows[A.windowId].shade})})});case"TOGGLE_WINDOW":const r=e.genWindows[A.windowId];return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},r),{},{open:!r.open})})});case"CLOSE_WINDOW":return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{open:!1})})});case"WINDOW_SIZE_CHANGED":const{canResize:a}=e.genWindows[A.windowId];if(!a)throw new Error("Tried to resize a window that cannot be resized: "+A.windowId);return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{size:A.size})})});case"UPDATE_WINDOW_POSITIONS":return F(F({},e),{},{positionsAreRelative:!0!==A.absolute&&e.positionsAreRelative,genWindows:M.t(e.genWindows,(e,t)=>{const n=A.positions[t];return null==n?e:F(F({},e),{},{position:n})})});case"RESET_WINDOW_SIZES":return F(F({},e),{},{genWindows:M.t(e.genWindows,e=>F(F({},e),{},{size:[0,0]}))});case"LOAD_SERIALIZED_STATE":{const{genWindows:t,focused:n,positionsAreRelative:r}=A.serializedState.windows;return F(F({},e),{},{positionsAreRelative:r,genWindows:M.t(e.genWindows,(e,A)=>{const n=t[A];if(null==n)return e;const{hidden:r}=n,a=D()(n,["hidden"]);return F(F({},e),a)}),focused:n})}case"BROWSER_WINDOW_SIZE_CHANGED":return F(F({},e),{},{browserWindowSize:{height:A.height,width:A.width}});default:return e}};function z(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Y(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?z(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):z(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const J={timeMode:R.h.ELAPSED,timeElapsed:0,volume:Math.round(200/255*100),balance:0,shuffle:!1,repeat:!1,status:R.f.STOPPED};function _(e){const{volume:A,balance:t,shuffle:n,repeat:r}=e;return{volume:A,balance:t,shuffle:n,repeat:r}}var H=(e=J,A)=>{switch(A.type){case"PLAY":case"IS_PLAYING":return Y(Y({},e),{},{status:R.f.PLAYING});case"PAUSE":return Y(Y({},e),{},{status:R.f.PAUSED});case"STOP":case"IS_STOPPED":return Y(Y({},e),{},{status:R.f.STOPPED});case"TOGGLE_TIME_MODE":const t=e.timeMode===R.h.REMAINING?R.h.ELAPSED:R.h.REMAINING;return Y(Y({},e),{},{timeMode:t});case"UPDATE_TIME_ELAPSED":return Y(Y({},e),{},{timeElapsed:A.elapsed});case"SET_MEDIA":return Y({},e);case"SET_VOLUME":return Y(Y({},e),{},{volume:A.volume});case"SET_BALANCE":return Y(Y({},e),{},{balance:A.balance});case"TOGGLE_REPEAT":return Y(Y({},e),{},{repeat:!e.repeat});case"TOGGLE_SHUFFLE":return Y(Y({},e),{},{shuffle:!e.shuffle});case"LOAD_SERIALIZED_STATE":return Y(Y({},e),A.serializedState.media);default:return e}},q=t(5);function Z(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function W(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Z(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Z(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const X={itemBackground:"rgb(0,0,0)",itemForeground:"rgb(0,255,0)",windowBackground:"rgb(56,55,87)",buttonText:"rgb(57,57,66)",windowText:"rgb(255,255,255)",divider:"rgb(117,116,139)",playlistSelection:"rgb(0,0,198)",listHeaderBackground:"rgb(72,72,120)",listHeaderText:"rgb(255,255,255)",listHeaderFrameTopAndLeft:"rgb(108,108,180)",listHeaderFrameBottomAndRight:"rgb(36,36,60)",listHeaderFramePressed:"rgb(18,18,30)",listHeaderDeadArea:"rgb(36,36,60)",scrollbarOne:"rgb(36,36,60)",scrollbarTwo:"rgb(36,36,60)",pressedScrollbarOne:"rgb(121,130,150)",pressedScrollbarTwo:"rgb(78,88,110)",scrollbarDeadArea:"rgb(36,36,60)",listTextHighlighted:"rgb(0,198,255)",listTextHighlightedBackground:"rgb(0,198,255)",listTextSelected:"rgb(0,198,255)",listTextSelectedBackground:"rgb(0,198,255)"},$={doubled:!1,marqueeStep:0,disableMarquee:!1,loading:!0,llama:!1,closed:!1,working:!1,skinImages:R.c.images,skinColors:R.c.colors,skinCursors:null,skinPlaylistStyle:null,skinRegion:{},visualizerStyle:0,dummyVizData:null,playlistScrollPosition:0,skinGenLetterWidths:null,skinGenExColors:X,additionalVisualizers:[],zIndex:0};var ee=(e=$,A)=>{switch(A.type){case"LOAD_DEFAULT_SKIN":{const{skinImages:A,skinColors:t,skinCursors:n,skinPlaylistStyle:r,skinRegion:a,skinGenLetterWidths:i,skinGenExColors:o}=$;return W(W({},e),{},{skinImages:A,skinColors:t,skinCursors:n,skinPlaylistStyle:r,skinRegion:a,skinGenLetterWidths:i,skinGenExColors:o})}case"TOGGLE_DOUBLESIZE_MODE":return W(W({},e),{},{doubled:!e.doubled});case"TOGGLE_LLAMA_MODE":return W(W({},e),{},{llama:!e.llama});case"STEP_MARQUEE":return e.disableMarquee?e:W(W({},e),{},{marqueeStep:e.marqueeStep+1});case"DISABLE_MARQUEE":return W(W({},e),{},{disableMarquee:!0});case"STOP_WORKING":return W(W({},e),{},{working:!1});case"START_WORKING":return W(W({},e),{},{working:!0});case"CLOSE_WINAMP":return W(W({},e),{},{closed:!0});case"OPEN_WINAMP":return W(W({},e),{},{closed:!1});case"LOADING":return W(W({},e),{},{loading:!0});case"LOADED":return W(W({},e),{},{loading:!1});case"SET_SKIN_DATA":const{data:t}=A;return W(W({},e),{},{loading:!1,skinImages:t.skinImages,skinColors:t.skinColors,skinPlaylistStyle:t.skinPlaylistStyle,skinCursors:t.skinCursors,skinRegion:t.skinRegion,skinGenLetterWidths:t.skinGenLetterWidths,skinGenExColors:t.skinGenExColors||X});case"TOGGLE_VISUALIZER_STYLE":return W(W({},e),{},{visualizerStyle:(e.visualizerStyle+1)%R.l.length});case"SET_PLAYLIST_SCROLL_POSITION":return W(W({},e),{},{playlistScrollPosition:A.position});case"SET_Z_INDEX":return W(W({},e),{},{zIndex:A.zIndex});case"SET_DUMMY_VIZ_DATA":return W(W({},e),{},{dummyVizData:A.data});case"LOAD_SERIALIZED_STATE":{const t=A.serializedState.display,{skinCursors:n}=t,r=D()(t,["skinCursors"]),a=e=>({type:"cur",url:e}),i=null==n?null:M.t(n,a);return W(W({},e),{},{skinCursors:i},r)}default:return e}};const Ae=e=>{const{visualizerStyle:A,doubled:t,llama:n,marqueeStep:r,skinImages:a,skinCursors:i,skinRegion:o,skinGenLetterWidths:l,skinColors:s,skinPlaylistStyle:c}=e;let u=null;return null!=i&&(u=M.t(i,e=>"cur"===e.type?e.url:void 0)),{visualizerStyle:A,doubled:t,llama:n,marqueeStep:r,skinImages:a,skinCursors:u,skinRegion:o,skinGenLetterWidths:l,skinColors:s,skinPlaylistStyle:c}},te=Object(q.createSelector)(e=>e.visualizerStyle,e=>R.l[e]);function ne(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function re(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ne(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ne(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const ae={focus:null,bandFocused:null,scrubPosition:0,userMessage:null};var ie=(e=ae,A)=>{switch(A.type){case"SET_FOCUS":return re(re({},e),{},{focus:A.input,bandFocused:null});case"SET_BAND_FOCUS":return re(re({},e),{},{focus:A.input,bandFocused:A.bandFocused});case"UNSET_FOCUS":return re(re({},e),{},{focus:null,bandFocused:null});case"SET_SCRUB_POSITION":return re(re({},e),{},{scrubPosition:A.position});case"SET_USER_MESSAGE":return re(re({},e),{},{userMessage:A.message});case"UNSET_USER_MESSAGE":return re(re({},e),{},{userMessage:null});default:return e}};function oe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function le(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?oe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):oe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const se={on:!0,auto:!1,sliders:{preamp:50,60:50,170:50,310:50,600:50,1e3:50,3e3:50,6e3:50,12e3:50,14e3:50,16e3:50}};var ce=(e=se,A)=>{switch(A.type){case"SET_BAND_VALUE":const t=le(le({},e.sliders),{},{[A.band]:A.value});return le(le({},e),{},{sliders:t});case"SET_EQ_ON":return le(le({},e),{},{on:!0});case"SET_EQ_OFF":return le(le({},e),{},{on:!1});case"SET_EQ_AUTO":return le(le({},e),{},{auto:A.value});case"LOAD_SERIALIZED_STATE":return A.serializedState.equalizer||e;default:return e}};function ue(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function de(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ue(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ue(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var ge=(e={connected:!0},A)=>{switch(A.type){case"NETWORK_CONNECTED":return de(de({},e),{},{connected:!0});case"NETWORK_DISCONNECTED":return de(de({},e),{},{connected:!1});default:return e}};function pe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function he(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?pe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):pe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const fe={availableSkins:[]};var me=(e=fe,A)=>{switch(A.type){case"SET_AVAILABLE_SKINS":return he(he({},e),{},{availableSkins:A.skins});default:return e}},Ee=t(21),be=t.n(Ee);async function we(e){return new Promise((A,t)=>{const n=new FileReader;n.onload=()=>{A(n.result)},n.onerror=t,n.readAsText(e)})}async function ye({accept:e,directory:A=!1}={accept:null,directory:!1}){return new Promise(t=>{const n=document.createElement("input");e&&n.setAttribute("accept",e),n.type="file",n.multiple=!0,n.webkitdirectory=A,n.directory=A,n.mozdirectory=A,n.value=null,n.addEventListener("change",e=>{const A=e.target.files;t(A)}),n.click()})}function Oe(e){return"data:image/x-win-bitmap;base64,"+M.b(e)}function Ie(e){if(function(e){return/^blob:/.test(e)}(e))return null;const A=e.split("/").pop();return null==A?null:A.split("#")[0].split("?")[0]}const Se=M.E(e=>{const{artist:A,title:t,defaultName:n,url:r}=e;if(A&&t)return`${A} - ${t}`;if(t)return t;if(n)return n;if(r){const e=Ie(r);if(e)return e}return"???"});M.E(e=>{if(e.url){const A=Ie(e.url);if(null!=A)return A}return e.defaultName?e.defaultName:"???"});function ke(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ue(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ke(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ke(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const ve={};var Ce=(e=ve,A)=>{var t;switch(A.type){case"ADD_TRACK_FROM_URL":return Ue(Ue({},e),{},{[A.id]:{id:A.id,defaultName:A.defaultName||null,duration:null!==(t=A.duration)&&void 0!==t?t:null,url:A.url,mediaTagsRequestStatus:R.g.INITIALIZED}});case"SET_MEDIA":{const t=Ue(Ue({},e[A.id]),{},{duration:A.length});return Ue(Ue({},e),{},{[A.id]:t})}case"MEDIA_TAG_REQUEST_INITIALIZED":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{mediaTagsRequestStatus:R.g.INITIALIZED})});case"MEDIA_TAG_REQUEST_FAILED":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{mediaTagsRequestStatus:R.g.FAILED})});case"SET_MEDIA_DURATION":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{duration:A.duration})});case"SET_MEDIA_TAGS":const n=e[A.id],{sampleRate:r,bitrate:a,numberOfChannels:i,title:o,artist:l,album:s,albumArtUrl:c}=A,{kbps:u,khz:d,channels:g}=n;return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},n),{},{mediaTagsRequestStatus:R.g.COMPLETE,title:o,artist:l,album:s,albumArtUrl:c,kbps:null!=a?String(Math.round(a/1e3)):u,khz:null!=r?String(Math.round(r/1e3)):d,channels:null!=i?i:g})});default:return e}};let Be;function xe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Me(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?xe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):xe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}!function(e){e[e.IMMEDIATE=0]="IMMEDIATE",e[e.DEFAULT=1]="DEFAULT",e[e.USER_PRESET=2]="USER_PRESET"}(Be||(Be={}));const Ne={display:"WINDOW",overlay:!1,presetHistory:[],presets:[],currentPresetIndex:null,butterchurn:null,transitionType:Be.DEFAULT,randomize:!0,cycling:!0,message:null};var Te=(e=Ne,A)=>{switch(A.type){case"SET_MILKDROP_DESKTOP":return Me(Me({},e),{},{display:A.enabled?"DESKTOP":"WINDOW"});case"SET_MILKDROP_FULLSCREEN":return Me(Me({},e),{},{display:A.enabled?"FULLSCREEN":"WINDOW"});case"GOT_BUTTERCHURN":return Me(Me({},e),{},{butterchurn:A.butterchurn});case"GOT_BUTTERCHURN_PRESETS":return Me(Me({},e),{},{presets:e.presets.concat(A.presets)});case"PRESET_REQUESTED":return A.addToHistory?Me(Me({},e),{},{presetHistory:[...e.presetHistory,A.index]}):Me(Me({},e),{},{presetHistory:e.presetHistory.slice(0,-1)});case"RESOLVE_PRESET_AT_INDEX":const t=e.presets[A.index];return Me(Me({},e),{},{presets:M.y(e.presets,A.index,{type:"RESOLVED",name:t.name,preset:A.json})});case"SELECT_PRESET_AT_INDEX":return Me(Me({},e),{},{currentPresetIndex:A.index,transitionType:A.transitionType});case"TOGGLE_PRESET_OVERLAY":return Me(Me({},e),{},{overlay:!e.overlay});case"TOGGLE_RANDOMIZE_PRESETS":return Me(Me({},e),{},{randomize:!e.randomize});case"TOGGLE_PRESET_CYCLING":return Me(Me({},e),{},{cycling:!e.cycling});case"SCHEDULE_MILKDROP_MESSAGE":return Me(Me({},e),{},{message:{text:A.message,time:Date.now()}});default:return e}};var Qe=Object(m.combineReducers)({userInput:ie,windows:K,display:ee,settings:me,equalizer:ce,playlist:L,media:H,network:ge,tracks:Ce,milkdrop:Te});function Le(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function je(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Le(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Le(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const De={height:"2px",borderWidth:0,color:"gray",backgroundColor:"gray"},Re=e=>Object(a.jsx)("body",je({},e)),Ve=e=>Object(a.jsx)("font",je({},e)),Fe=e=>Object(a.jsx)("hr",je({},e)),Ge=e=>Object(a.jsx)("div",je({},e)),Pe=e=>Object(a.jsx)("table",je({},e)),Ke=e=>Object(a.jsxs)("html",{children:[Object(a.jsxs)("head",{children:[Object(a.jsx)("link",{rel:"stylesheet",href:"null"}),Object(a.jsx)("style",{type:"text/css",children:'\n body { background: #000040; }\n .para1 { margin-top: -42px; margin-left: 145px; margin-right: 10px; font-family: "font2, Arial"; font-size: 30px; line-height: 35px; text-align: left; color: #E1E1E1; }\n .para2 { margin-top: 15px; margin-left: 15px; margin-right: 50px; font-family: "font1, Arial Black"; font-size: 50px; line-height: 40px; text-align: left; color: #004080; }\n '}),Object(a.jsx)("title",{children:"Winamp Generated PlayList"})]}),Object(a.jsxs)(Re,{bgcolor:"#000080",topmargin:"0",leftmargin:"0",text:"#FFFFFF",children:[Object(a.jsxs)(Ge,{align:"center",children:[Object(a.jsx)(Ge,{className:"para2",align:"center",children:Object(a.jsx)("p",{children:"WINAMP"})}),Object(a.jsx)(Ge,{className:"para1",align:"center",children:Object(a.jsx)("p",{children:"playlist"})})]}),Object(a.jsx)(Fe,{align:"left",width:"90%",size:"1",color:"#FFBF00",style:De}),Object(a.jsx)(Ge,{align:"right",children:Object(a.jsx)(Pe,{border:"0",cellSpacing:"0",cellPadding:"0",width:"98%",children:Object(a.jsx)("tbody",{children:Object(a.jsx)("tr",{children:Object(a.jsxs)("td",{children:[Object(a.jsx)("small",{children:Object(a.jsxs)("small",{children:[Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.numberOfTracks}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" track in playlist, average track length: "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.averageTrackLength})]})}),Object(a.jsx)("br",{}),Object(a.jsx)("small",{children:Object(a.jsxs)("small",{children:[Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:"Playlist length: "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.playlistLengthMinutes}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" minutes "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.playlistLengthSeconds}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" second "}),Object(a.jsx)("br",{}),Object(a.jsxs)(Ve,{color:"#409FFF",face:"Arial",children:["Right-click ",Object(a.jsx)("a",{href:"./",children:"here"})," to save this HTML file."]})]})})]})})})})}),Object(a.jsxs)("blockquote",{children:[Object(a.jsx)("p",{children:Object(a.jsx)(Ve,{color:"#FFBF00",face:"Arial",children:Object(a.jsx)("big",{children:"Playlist files:"})})}),Object(a.jsx)("ul",{children:Object(a.jsx)(Ve,{face:"Arial",color:"#FFFFFF",children:Object(a.jsx)("small",{children:e.tracks.map(e=>Object(a.jsxs)("span",{children:[e,Object(a.jsx)("br",{})]},e))})})})]}),Object(a.jsx)(Fe,{align:"left",width:"90%",size:"1",color:"#FFBF00",style:De})]})]}),ze=e=>{return A=(e=>{const A=document.createElement("div");return Object(l.render)(Object(a.jsx)(Ke,je({},e)),A),A.innerHTML})(e),"data:text/html;base64,"+window.btoa(A);var A},Ye=(e,A)=>{const t=(n=(A-50)/50*12,(Math.round(10*n)/10).toFixed(1));var n;var r;return`EQ: ${"preamp"===e?"Preamp":(r=e)<1e3?r+"HZ":r/1e3+"KHZ"} ${(e=>e>0?"+"+e:e.toString())(t)} DB`};function Je(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function _e(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Je(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Je(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const He=e=>e.equalizer.sliders,qe=Object(q.createSelector)(He,e=>{const A={name:"Entry1",preamp:M.e(e.preamp)};R.a.forEach(t=>{A["hz"+t]=M.e(e[t])});return{presets:[A],type:"Winamp EQ library file v1.1"}}),Ze=e=>e.tracks,We=e=>A=>{var t;return null===(t=e.tracks[A])||void 0===t?void 0:t.url},Xe=e=>e.playlist.trackOrder,$e=Object(q.createSelector)(Xe,e=>e.length),eA=Object(q.createSelector)(Ze,Xe,(e,A)=>A.filter(A=>e[A])),AA=Object(q.createSelector)(Ze,Xe,(e,A)=>A.map(A=>{const t=e[A];return{url:t.url,metaData:{artist:t.artist||"",title:t.title||"",album:t.album,albumArtUrl:t.albumArtUrl||""}}})),tA=Object(q.createSelector)(Ze,eA,(e,A)=>A.map(A=>e[A])),nA=e=>e.playlist.selectedTracks,rA=Object(q.createSelector)(tA,nA,(e,A)=>e.filter(e=>A.has(e.id))),aA=e=>e.reduce((e,A)=>e+Number(A.duration),0),iA=Object(q.createSelector)(tA,aA),oA=Object(q.createSelector)(rA,aA),lA=Object(q.createSelector)(iA,oA,(e,A)=>`${M.j(A)}/${M.j(e)}`),sA=e=>{const{playlist:A}=e;return null==A.currentTrack?-1:A.trackOrder.indexOf(A.currentTrack)},cA=Object(q.createSelector)(sA,e=>e+1),uA=e=>e.playlist.currentTrack,dA=(e,A=1)=>{const{playlist:{trackOrder:t},media:{repeat:n,shuffle:r}}=e;if(r)return(e=>{const{playlist:{trackOrder:A,currentTrack:t}}=e;if(0===A.length)return null;let n;do{n=A[Math.floor(A.length*Math.random())]}while(n===t&&A.length>1);return n})(e);const a=$e(e);if(0===a)return null;const i=sA(e);let o=i+A;return n?(o%=a,o<0&&(o+=a),t[o]):i===a-1&&A>0||0===i&&A<0?null:(o=M.d(o,0,a-1),t[o])},gA=e=>e.windows.genWindows,pA=Object(q.createSelector)(gA,e=>A=>e[A].open),hA=Object(q.createSelector)((function(e){return"WINDOW"===e.milkdrop.display}),e=>A=>A===R.m.MILKDROP&&!e),fA=Object(q.createSelector)(gA,e=>A=>e[A].shade),mA=Object(q.createSelector)(gA,e=>A=>e[A].size),EA=Object(q.createSelector)(gA,e=>M.t(e,e=>e.position)),bA=Object(q.createSelector)(mA,e=>{const A=e("playlist");return Math.floor((58+R.n*A[1])/R.i)}),wA=Object(q.createSelector)($e,bA,(e,A)=>Math.max(0,e-A)),yA=e=>e.display.playlistScrollPosition,OA=Object(q.createSelector)(wA,yA,(e,A)=>0===e?0:Math.round(Math.round(e*A/100)/e*100)),IA=Object(q.createSelector)(yA,$e,bA,(e,A,t)=>{const n=Math.max(0,A-t);return M.w(e/100,n+1)}),SA=Object(q.createSelector)(IA,Xe,bA,(e,A,t)=>A.slice(e,e+t));function kA(e){return SA(e).length===e.playlist.trackOrder.length}const UA=Object(q.createSelector)(SA,e=>A=>e.includes(A)),vA=(Object(q.createSelector)(SA,Ze,(e,A)=>e.map(e=>A[e])),e=>{const{playlist:A,tracks:t}=e;if(null==A.currentTrack)return null;const n=t[A.currentTrack];return n&&n.duration}),CA=Object(q.createSelector)(Ze,e=>Object(q.defaultMemoize)(A=>((e,A=null)=>{if(null==A)return null;const t=e[A];return null==t?null:Se(t)})(e,A))),BA=Object(q.createSelector)(uA,CA,(e,A)=>A(e)),xA=e=>e.media.status,MA=e=>e.media.status===R.f.PLAYING,NA=Object(q.createSelector)(uA,Ze,(e,A)=>null==e?null:A[e]),TA=Object(q.createSelector)(MA,NA,(e,A)=>e&&A&&A.mediaTagsRequestStatus!==R.g.INITIALIZED?A.id:null),QA=Object(q.createSelector)(NA,e=>null==e?null:{url:e.url,metaData:{title:e.title||null,artist:e.artist||null,album:e.album||null,albumArtUrl:e.albumArtUrl||null}}),LA=Object(q.createSelector)(cA,BA,(e,A)=>null==A?null:`${e}. ${A}`),jA=Object(q.createSelector)(LA,vA,(e,A)=>null==e?null:`${e} (${M.j(A)})`),DA=e=>Xe(e).length,RA=Object(q.createSelector)(Ze,e=>Object.values(e).reduce((e,A)=>e+(A.duration||0),0)),VA=Object(q.createSelector)(DA,RA,Xe,Ze,CA,(e,A,t,n,r)=>ze({numberOfTracks:e,averageTrackLength:M.j(A/e),playlistLengthMinutes:Math.floor(A/60),playlistLengthSeconds:Math.floor(A%60),tracks:t.map((e,A)=>`${A+1}. ${r(e)} (${M.j(n[e].duration)})`)}));function FA(e,A){const[t,n]=e.size,r=A&&e.canDouble?2:1,a=116+n*R.n,i=R.p+t*R.o;return{height:(e.shade?14:a)*r,width:i*r}}function GA(e){return e.windows.focused}function PA(e){return e.display.doubled}function KA(e){return e.display.llama}function zA(e){return e.display.zIndex}const YA=Object(q.createSelector)(gA,PA,(e,A)=>M.t(e,e=>FA(e,A))),JA=Object(q.createSelector)(YA,e=>A=>e[A]),_A=Object(q.createSelector)(e=>e.windows.windowOrder,gA,(e,A)=>[R.m.MAIN,...e.filter(e=>e!==R.m.MAIN&&null!=A[e])]),HA=Object(q.createSelector)(YA,EA,_A,(e,A,t)=>t.map(t=>_e(_e({key:t},e[t]),A[t]))),qA=Object(q.createSelector)(HA,(function(e){const A={},t={};for(const n of e){const e=n.y+n.height;A[e]?A[e].push(n):A[e]=[n];const r=n.x+n.width;t[r]?t[r].push(n):t[r]=[n]}const n={};for(const r of e){const e={},a=r.y,i=r.x,o=A[a],l=t[i];if(o)for(const A of o){const t=A.x+A.width<r.x,n=A.x>r.x+r.width;if(!(t||n)){e.below=A.key;break}}if(l)for(const A of l){const t=A.y+A.height<r.y,n=A.y>r.y+r.height;if(!(t||n)){e.right=A.key;break}}n[r.key]=e}return n})),ZA={normal:"#00FF00",current:"#FFFFFF",normalbg:"#000000",selectedbg:"#0000C6",font:"Arial"};function WA(e){return e.display.skinColors}const XA=e=>e.display.skinPlaylistStyle||ZA,$A=e=>{const A=e.windows.genWindows[R.m.MILKDROP];return null!=A&&A.open?R.k.MILKDROP:te(e.display)},et=e=>e.media.volume,At=e=>e.media.balance,tt=e=>e.media.shuffle,nt=e=>e.media.repeat,rt=Object(q.createSelector)(NA,e=>null!=e&&e.channels||null),at=e=>e.media.timeElapsed;function it(e){return e.equalizer.on}function ot(e){return e.windows.browserWindowSize}const lt=Object(q.createSelector)(gA,e=>M.r(e,e=>e.open)),st=Object(q.createSelector)(lt,PA,(e,A)=>{let t=0;return M.t(e,e=>{const n={x:0,y:t};return t+=FA(e,A).height,n})}),ct=e=>e.userInput.focus,ut=e=>e.userInput.scrubPosition,dt=e=>{if(null!=e.userInput.userMessage)return e.userInput.userMessage;switch(ct(e)){case"balance":return(e=>{if(0===e)return"Balance: Center";const A=e>0?"Right":"Left";return`Balance: ${Math.abs(e)}% ${A}`})(e.media.balance);case"volume":return`Volume: ${e.media.volume}%`;case"position":const A=vA(e);return null==A?"Winamp 2.91":((e,A)=>`Seek to: ${M.j(e*A/100,!1)}/${M.j(e,!1)} (${A}%)`)(A,ut(e));case"double":return(e.display.doubled?"Disable":"Enable")+" doublesize mode";case"eq":const t=e.userInput.bandFocused;return null==t?"Winamp 2.91":Ye(t,e.equalizer.sliders[t])}if(null!=e.playlist.currentTrack){const A=jA(e);return null==A?"Winamp 2.91":A}return"Winamp 2.91"},gt=Object(q.createSelector)(NA,e=>null!=e&&e.kbps||null),pt=Object(q.createSelector)(NA,e=>null!=e&&e.khz||null);function ht(e){return e.milkdrop.message}function ft(e){return"DESKTOP"===e.milkdrop.display}function mt(e){return"FULLSCREEN"===e.milkdrop.display}function Et(e){return e.milkdrop.butterchurn}function bt(e){return e.milkdrop.transitionType}function wt(e){return e.milkdrop.currentPresetIndex}function yt(e){const A=wt(e);if(null==A)return null;const t=e.milkdrop.presets[A];return null==t||"UNRESOLVED"===t.type?null:t.preset}function Ot(e){return e.milkdrop.presets.map(e=>e.name)}function It(e){return e.milkdrop.overlay}function St(e){return e.milkdrop.cycling}function kt(e){return e.milkdrop.randomize}function Ut(e){return e.display.closed}function vt(e){return e.display.skinRegion}const Ct=Object(q.createSelector)((function(e){return e.display.skinImages.EQ_PREAMP_LINE}),async e=>null==e?null:M.n(e)),Bt=Object(q.createSelector)((function(e){return e.display.skinImages.EQ_GRAPH_LINE_COLORS}),async e=>null==e?null:M.n(e));function xt(e){return e.display.dummyVizData}function Mt(e){return e.display.marqueeStep}function Nt(e){return e.network.connected}function Tt(e){return e.media.timeMode}function Qt(e){return e.display.loading}function Lt(e){return e.display.working}function jt(e){return e.settings.availableSkins}const Dt=e=>e.y,Rt=e=>e.y+e.height,Vt=e=>e.x,Ft=e=>e.x+e.width,Gt=(e,A)=>Math.abs(e-A)<15,Pt=(e,A)=>{let t,n;var r,a;return a=A,Dt(r=e)<=Rt(a)+15&&Dt(a)<=Rt(r)+15&&(Gt(Vt(e),Ft(A))?t=Ft(A):Gt(Ft(e),Vt(A))?t=Vt(A)-e.width:Gt(Vt(e),Vt(A))?t=Vt(A):Gt(Ft(e),Ft(A))&&(t=Ft(A)-e.width)),((e,A)=>Vt(e)<=Ft(A)+15&&Vt(A)<=Ft(e)+15)(e,A)&&(Gt(Dt(e),Rt(A))?n=Rt(A):Gt(Rt(e),Dt(A))?n=Dt(A)-e.height:Gt(Dt(e),Dt(A))?n=Dt(A):Gt(Rt(e),Rt(A))&&(n=Rt(A)-e.height)),{x:t,y:n}},Kt=(e,A)=>{const t=Pt(e,A);return{x:void 0===t.x?0:t.x-e.x,y:void 0===t.y?0:t.y-e.y}};const zt=(e,A)=>({x:e.x+A.x,y:e.y+A.y});function Yt(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Jt(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Yt(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yt(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function _t(e){return(A,t)=>{const n=t(),r=qA(n),a=YA(n);A(e);const i=YA(t()),o={};for(const e of Object.keys(i)){const A=a[e],t=i[e];o[e]={height:t.height-A.height,width:t.width-A.width}}const l=function(e,A){const t={},n={};for(const A of Object.keys(e))t[A]={above:[],left:[]},n[A]={x:0,y:0};for(const[A,n]of Object.entries(e)){const{below:e,right:r}=n;null!=r&&t[r].left.push(A),null!=e&&t[e].above.push(A)}function r(e){const a=t[e],i=A[e];a.left.forEach(A=>{n[A].x+=i.width+n[e].x,r(A)})}function a(e){const r=t[e],i=A[e];r.above.forEach(A=>{n[A].y+=i.height+n[e].y,a(A)})}for(const[A,t]of Object.entries(e))null==t.below&&a(A),null==t.right&&r(A);return n}(r,o),s=EA(n);A(tn(M.t(s,(e,A)=>zt(e,l[A]))))}}function Ht(){return _t({type:"TOGGLE_DOUBLESIZE_MODE"})}function qt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"equalizer"})}function Zt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"main"})}function Wt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"playlist"})}function Xt(e){return{type:"CLOSE_WINDOW",windowId:e}}function $t(e){return{type:"SET_FOCUSED_WINDOW",window:e}}function en(e,A){return{type:"WINDOW_SIZE_CHANGED",windowId:e,size:A}}function An(e){return{type:"TOGGLE_WINDOW",windowId:e}}function tn(e,A){return{type:"UPDATE_WINDOW_POSITIONS",positions:e,absolute:A}}function nn(e){return(A,t)=>{const n=t(),r=HA(n),a=pA(n),{top:i,left:o,width:l,height:s}=e,c=o+window.scrollX,u=i+window.scrollY,d=M.c(r.filter(e=>a(e.key)));if(null==d)return;const g=d.bottom-d.top,p=d.right-d.left,h=Math.ceil(c-d.left+(l-p)/2),f=Math.ceil(u-d.top+(s-g)/2);A(tn(r.reduce((e,A)=>Jt(Jt({},e),{},{[A.key]:{x:h+A.x,y:f+A.y}}),{}),!0))}}function rn(e){return A=>{A(Jt({type:"BROWSER_WINDOW_SIZE_CHANGED"},e)),A(on())}}function an(){return(e,A)=>{e(tn(st(A())))}}function on(){return(e,A)=>{const t=A(),n=HA(t),r=pA(t),{height:a,width:i}=M.k(),o=M.c(n.filter(e=>r(e.key)));if(null==o)return;const l=EA(t);if(o.left>=0&&o.top>=0&&o.right<=i&&o.bottom<=a)return;const s=o.bottom-o.top;if(o.right-o.left<=i&&s<=a){let A=0,t=0;o.top<=0?A=o.top:o.bottom>a&&(A=o.bottom-a),o.left<=0?t=o.left:o.right>i&&(t=o.right-i);e(tn(M.t(l,e=>({x:e.x-t,y:e.y-A}))))}else e({type:"RESET_WINDOW_SIZES"}),e(an()),e(nn({left:window.scrollX,top:window.scrollY,width:window.innerWidth,height:window.innerHeight}))}}function ln(e){return{type:"PLAY_TRACK",id:e}}function sn(){return(e,A)=>{const t=A();t.media.status===R.f.STOPPED&&null==t.playlist.currentTrack&&0===t.playlist.trackOrder.length?e(Tr()):e({type:"PLAY"})}}function cn(){return(e,A)=>{const{status:t}=A().media;t===R.f.PLAYING?e({type:"PAUSE"}):e({type:"PLAY"})}}function un(){return{type:"STOP"}}function dn(e){return(A,t)=>{const n=dA(t(),e);var r;null!=n?A((r=n,(e,A)=>{const t=A();e(xA(t)===R.f.STOPPED?{type:"BUFFER_TRACK",id:r}:{type:"PLAY_TRACK",id:r})})):A({type:"IS_STOPPED"})}}function gn(){return dn(1)}function pn(){return dn(-1)}function hn(e){return function(A,t){const n=t(),r=vA(n);null!=r&&A({type:"SEEK_TO_PERCENT_COMPLETE",percent:e/r*100})}}function fn(e){return function(A,t){A(hn(at(t())+e))}}function mn(e){return fn(-e)}function En(e){return{type:"SET_VOLUME",volume:Object(M.d)(e,0,100)}}function bn(e){return(A,t)=>A(En(t().media.volume+e))}function wn(e){return e.preventDefault(),(A,t)=>A(En(t().media.volume+e.deltaY))}function yn(e){return e=Object(M.d)(e,-100,100),Math.abs(e)<25&&(e=0),{type:"SET_BALANCE",balance:e}}function On(){return{type:"TOGGLE_REPEAT"}}function In(){return{type:"TOGGLE_SHUFFLE"}}function Sn(){return{type:"TOGGLE_TIME_MODE"}}function kn(e){return e<55&&e>45?50:e}function Un(e,A){return{type:"SET_BAND_VALUE",band:e,value:kn(A)}}function vn(e){return A=>{Object.values(R.a).forEach(t=>{A({type:"SET_BAND_VALUE",value:e,band:t})})}}function Cn(){return vn(100)}function Bn(){return vn(50)}function xn(){return vn(0)}function Mn(e){return{type:"SET_BAND_VALUE",band:"preamp",value:kn(e)}}function Nn(){return(e,A)=>{A().equalizer.on?e({type:"SET_EQ_OFF"}):e({type:"SET_EQ_ON"})}}function Tn(){return e=>{e({type:"SET_EQ_AUTO",value:!1})}}var Qn=t(31);const Ln={a:[0,0],b:[0,1],c:[0,2],d:[0,3],e:[0,4],f:[0,5],g:[0,6],h:[0,7],i:[0,8],j:[0,9],k:[0,10],l:[0,11],m:[0,12],n:[0,13],o:[0,14],p:[0,15],q:[0,16],r:[0,17],s:[0,18],t:[0,19],u:[0,20],v:[0,21],w:[0,22],x:[0,23],y:[0,24],z:[0,25],'"':[0,26],"@":[0,27]," ":[0,30],0:[1,0],1:[1,1],2:[1,2],3:[1,3],4:[1,4],5:[1,5],6:[1,6],7:[1,7],8:[1,8],9:[1,9],[R.j]:[1,10],".":[1,11],":":[1,12],"(":[1,13],")":[1,14],"-":[1,15],"'":[1,16],"!":[1,17],_:[1,18],"+":[1,19],"\\":[1,20],"/":[1,21],"[":[1,22],"]":[1,23],"^":[1,24],"&":[1,25],"%":[1,26],",":[1,27],"=":[1,28],$:[1,29],"#":[1,30],"Å":[2,0],"Ö":[2,1],"Ä":[2,2],"?":[2,3],"*":[2,4],"<":[1,22],">":[1,23],"{":[1,22],"}":[1,23]},jn=e=>"CHARACTER_"+e.charCodeAt(0),Dn=[];for(const e in Ln)if(Ln.hasOwnProperty(e)){const A=Ln[e];Dn.push({name:jn(e),y:6*A[0],x:5*A[1],width:5,height:6})}var Rn={BALANCE:[{name:"MAIN_BALANCE_BACKGROUND",x:9,y:0,width:38,height:420},{name:"MAIN_BALANCE_THUMB",x:15,y:422,width:14,height:11},{name:"MAIN_BALANCE_THUMB_ACTIVE",x:0,y:422,width:14,height:11}],CBUTTONS:[{name:"MAIN_PREVIOUS_BUTTON",x:0,y:0,width:23,height:18},{name:"MAIN_PREVIOUS_BUTTON_ACTIVE",x:0,y:18,width:23,height:18},{name:"MAIN_PLAY_BUTTON",x:23,y:0,width:23,height:18},{name:"MAIN_PLAY_BUTTON_ACTIVE",x:23,y:18,width:23,height:18},{name:"MAIN_PAUSE_BUTTON",x:46,y:0,width:23,height:18},{name:"MAIN_PAUSE_BUTTON_ACTIVE",x:46,y:18,width:23,height:18},{name:"MAIN_STOP_BUTTON",x:69,y:0,width:23,height:18},{name:"MAIN_STOP_BUTTON_ACTIVE",x:69,y:18,width:23,height:18},{name:"MAIN_NEXT_BUTTON",x:92,y:0,width:23,height:18},{name:"MAIN_NEXT_BUTTON_ACTIVE",x:92,y:18,width:22,height:18},{name:"MAIN_EJECT_BUTTON",x:114,y:0,width:22,height:16},{name:"MAIN_EJECT_BUTTON_ACTIVE",x:114,y:16,width:22,height:16}],MAIN:[{name:"MAIN_WINDOW_BACKGROUND",x:0,y:0,width:275,height:116}],MONOSTER:[{name:"MAIN_STEREO",x:0,y:12,width:29,height:12},{name:"MAIN_STEREO_SELECTED",x:0,y:0,width:29,height:12},{name:"MAIN_MONO",x:29,y:12,width:27,height:12},{name:"MAIN_MONO_SELECTED",x:29,y:0,width:27,height:12}],NUMBERS:[{name:"NO_MINUS_SIGN",x:9,y:6,width:5,height:1},{name:"MINUS_SIGN",x:20,y:6,width:5,height:1},{name:"DIGIT_0",x:0,y:0,width:9,height:13},{name:"DIGIT_1",x:9,y:0,width:9,height:13},{name:"DIGIT_2",x:18,y:0,width:9,height:13},{name:"DIGIT_3",x:27,y:0,width:9,height:13},{name:"DIGIT_4",x:36,y:0,width:9,height:13},{name:"DIGIT_5",x:45,y:0,width:9,height:13},{name:"DIGIT_6",x:54,y:0,width:9,height:13},{name:"DIGIT_7",x:63,y:0,width:9,height:13},{name:"DIGIT_8",x:72,y:0,width:9,height:13},{name:"DIGIT_9",x:81,y:0,width:9,height:13}],NUMS_EX:[{name:"NO_MINUS_SIGN_EX",x:90,y:0,width:9,height:13},{name:"MINUS_SIGN_EX",x:99,y:0,width:9,height:13},{name:"DIGIT_0_EX",x:0,y:0,width:9,height:13},{name:"DIGIT_1_EX",x:9,y:0,width:9,height:13},{name:"DIGIT_2_EX",x:18,y:0,width:9,height:13},{name:"DIGIT_3_EX",x:27,y:0,width:9,height:13},{name:"DIGIT_4_EX",x:36,y:0,width:9,height:13},{name:"DIGIT_5_EX",x:45,y:0,width:9,height:13},{name:"DIGIT_6_EX",x:54,y:0,width:9,height:13},{name:"DIGIT_7_EX",x:63,y:0,width:9,height:13},{name:"DIGIT_8_EX",x:72,y:0,width:9,height:13},{name:"DIGIT_9_EX",x:81,y:0,width:9,height:13}],PLAYPAUS:[{name:"MAIN_PLAYING_INDICATOR",x:0,y:0,width:9,height:9},{name:"MAIN_PAUSED_INDICATOR",x:9,y:0,width:9,height:9},{name:"MAIN_STOPPED_INDICATOR",x:18,y:0,width:9,height:9},{name:"MAIN_NOT_WORKING_INDICATOR",x:36,y:0,width:9,height:9},{name:"MAIN_WORKING_INDICATOR",x:39,y:0,width:9,height:9}],PLEDIT:[{name:"PLAYLIST_TOP_TILE",x:127,y:21,width:25,height:20},{name:"PLAYLIST_TOP_LEFT_CORNER",x:0,y:21,width:25,height:20},{name:"PLAYLIST_TITLE_BAR",x:26,y:21,width:100,height:20},{name:"PLAYLIST_TOP_RIGHT_CORNER",x:153,y:21,width:25,height:20},{name:"PLAYLIST_TOP_TILE_SELECTED",x:127,y:0,width:25,height:20},{name:"PLAYLIST_TOP_LEFT_SELECTED",x:0,y:0,width:25,height:20},{name:"PLAYLIST_TITLE_BAR_SELECTED",x:26,y:0,width:100,height:20},{name:"PLAYLIST_TOP_RIGHT_CORNER_SELECTED",x:153,y:0,width:25,height:20},{name:"PLAYLIST_LEFT_TILE",x:0,y:42,width:12,height:29},{name:"PLAYLIST_RIGHT_TILE",x:31,y:42,width:20,height:29},{name:"PLAYLIST_BOTTOM_TILE",x:179,y:0,width:25,height:38},{name:"PLAYLIST_BOTTOM_LEFT_CORNER",x:0,y:72,width:125,height:38},{name:"PLAYLIST_BOTTOM_RIGHT_CORNER",x:126,y:72,width:150,height:38},{name:"PLAYLIST_VISUALIZER_BACKGROUND",x:205,y:0,width:75,height:38},{name:"PLAYLIST_SHADE_BACKGROUND",x:72,y:57,width:25,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_LEFT",x:72,y:42,width:25,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_RIGHT",x:99,y:57,width:50,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_RIGHT_SELECTED",x:99,y:42,width:50,height:14},{name:"PLAYLIST_SCROLL_HANDLE_SELECTED",x:61,y:53,width:8,height:18},{name:"PLAYLIST_SCROLL_HANDLE",x:52,y:53,width:8,height:18},{name:"PLAYLIST_ADD_URL",x:0,y:111,width:22,height:18},{name:"PLAYLIST_ADD_URL_SELECTED",x:23,y:111,width:22,height:18},{name:"PLAYLIST_ADD_DIR",x:0,y:130,width:22,height:18},{name:"PLAYLIST_ADD_DIR_SELECTED",x:23,y:130,width:22,height:18},{name:"PLAYLIST_ADD_FILE",x:0,y:149,width:22,height:18},{name:"PLAYLIST_ADD_FILE_SELECTED",x:23,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_ALL",x:54,y:111,width:22,height:18},{name:"PLAYLIST_REMOVE_ALL_SELECTED",x:77,y:111,width:22,height:18},{name:"PLAYLIST_CROP",x:54,y:130,width:22,height:18},{name:"PLAYLIST_CROP_SELECTED",x:77,y:130,width:22,height:18},{name:"PLAYLIST_REMOVE_SELECTED",x:54,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_SELECTED_SELECTED",x:77,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_MISC",x:54,y:168,width:22,height:18},{name:"PLAYLIST_REMOVE_MISC_SELECTED",x:77,y:168,width:22,height:18},{name:"PLAYLIST_INVERT_SELECTION",x:104,y:111,width:22,height:18},{name:"PLAYLIST_INVERT_SELECTION_SELECTED",x:127,y:111,width:22,height:18},{name:"PLAYLIST_SELECT_ZERO",x:104,y:130,width:22,height:18},{name:"PLAYLIST_SELECT_ZERO_SELECTED",x:127,y:130,width:22,height:18},{name:"PLAYLIST_SELECT_ALL",x:104,y:149,width:22,height:18},{name:"PLAYLIST_SELECT_ALL_SELECTED",x:127,y:149,width:22,height:18},{name:"PLAYLIST_SORT_LIST",x:154,y:111,width:22,height:18},{name:"PLAYLIST_SORT_LIST_SELECTED",x:177,y:111,width:22,height:18},{name:"PLAYLIST_FILE_INFO",x:154,y:130,width:22,height:18},{name:"PLAYLIST_FILE_INFO_SELECTED",x:177,y:130,width:22,height:18},{name:"PLAYLIST_MISC_OPTIONS",x:154,y:149,width:22,height:18},{name:"PLAYLIST_MISC_OPTIONS_SELECTED",x:177,y:149,width:22,height:18},{name:"PLAYLIST_NEW_LIST",x:204,y:111,width:22,height:18},{name:"PLAYLIST_NEW_LIST_SELECTED",x:227,y:111,width:22,height:18},{name:"PLAYLIST_SAVE_LIST",x:204,y:130,width:22,height:18},{name:"PLAYLIST_SAVE_LIST_SELECTED",x:227,y:130,width:22,height:18},{name:"PLAYLIST_LOAD_LIST",x:204,y:149,width:22,height:18},{name:"PLAYLIST_LOAD_LIST_SELECTED",x:227,y:149,width:22,height:18},{name:"PLAYLIST_ADD_MENU_BAR",x:48,y:111,width:3,height:54},{name:"PLAYLIST_REMOVE_MENU_BAR",x:100,y:111,width:3,height:72},{name:"PLAYLIST_SELECT_MENU_BAR",x:150,y:111,width:3,height:54},{name:"PLAYLIST_MISC_MENU_BAR",x:200,y:111,width:3,height:54},{name:"PLAYLIST_LIST_BAR",x:250,y:111,width:3,height:54},{name:"PLAYLIST_CLOSE_SELECTED",x:52,y:42,width:9,height:9},{name:"PLAYLIST_COLLAPSE_SELECTED",x:62,y:42,width:9,height:9},{name:"PLAYLIST_EXPAND_SELECTED",x:150,y:42,width:9,height:9}],EQ_EX:[{name:"EQ_SHADE_BACKGROUND_SELECTED",x:0,y:0,width:275,height:14},{name:"EQ_SHADE_BACKGROUND",x:0,y:15,width:275,height:14},{name:"EQ_SHADE_VOLUME_SLIDER_LEFT",x:1,y:30,width:3,height:7},{name:"EQ_SHADE_VOLUME_SLIDER_CENTER",x:4,y:30,width:3,height:7},{name:"EQ_SHADE_VOLUME_SLIDER_RIGHT",x:7,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_LEFT",x:11,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_CENTER",x:14,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_RIGHT",x:17,y:30,width:3,height:7},{name:"EQ_MAXIMIZE_BUTTON_ACTIVE",x:1,y:38,width:9,height:9},{name:"EQ_MINIMIZE_BUTTON_ACTIVE",x:1,y:47,width:9,height:9},{name:"EQ_SHADE_CLOSE_BUTTON",x:11,y:38,width:9,height:9},{name:"EQ_SHADE_CLOSE_BUTTON_ACTIVE",x:11,y:47,width:9,height:9}],EQMAIN:[{name:"EQ_WINDOW_BACKGROUND",x:0,y:0,width:275,height:116},{name:"EQ_TITLE_BAR",x:0,y:149,width:275,height:14},{name:"EQ_TITLE_BAR_SELECTED",x:0,y:134,width:275,height:14},{name:"EQ_SLIDER_BACKGROUND",x:13,y:164,width:209,height:129},{name:"EQ_SLIDER_THUMB",x:0,y:164,width:11,height:11},{name:"EQ_SLIDER_THUMB_SELECTED",x:0,y:176,width:11,height:11},{name:"EQ_CLOSE_BUTTON",x:0,y:116,width:9,height:9},{name:"EQ_CLOSE_BUTTON_ACTIVE",x:0,y:125,width:9,height:9},{name:"EQ_MAXIMIZE_BUTTON_ACTIVE_FALLBACK",x:254,y:152,width:9,height:9},{name:"EQ_ON_BUTTON",x:10,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_DEPRESSED",x:128,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_SELECTED",x:69,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_SELECTED_DEPRESSED",x:187,y:119,width:26,height:12},{name:"EQ_AUTO_BUTTON",x:36,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_DEPRESSED",x:154,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_SELECTED",x:95,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_SELECTED_DEPRESSED",x:213,y:119,width:32,height:12},{name:"EQ_GRAPH_BACKGROUND",x:0,y:294,width:113,height:19},{name:"EQ_GRAPH_LINE_COLORS",x:115,y:294,width:1,height:19},{name:"EQ_PRESETS_BUTTON",x:224,y:164,width:44,height:12},{name:"EQ_PRESETS_BUTTON_SELECTED",x:224,y:176,width:44,height:12},{name:"EQ_PREAMP_LINE",x:0,y:314,width:113,height:1}],POSBAR:[{name:"MAIN_POSITION_SLIDER_BACKGROUND",x:0,y:0,width:248,height:10},{name:"MAIN_POSITION_SLIDER_THUMB",x:248,y:0,width:29,height:10},{name:"MAIN_POSITION_SLIDER_THUMB_SELECTED",x:278,y:0,width:29,height:10}],SHUFREP:[{name:"MAIN_SHUFFLE_BUTTON",x:28,y:0,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_DEPRESSED",x:28,y:15,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_SELECTED",x:28,y:30,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_SELECTED_DEPRESSED",x:28,y:45,width:47,height:15},{name:"MAIN_REPEAT_BUTTON",x:0,y:0,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_DEPRESSED",x:0,y:15,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_SELECTED",x:0,y:30,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_SELECTED_DEPRESSED",x:0,y:45,width:28,height:15},{name:"MAIN_EQ_BUTTON",x:0,y:61,width:23,height:12},{name:"MAIN_EQ_BUTTON_SELECTED",x:0,y:73,width:23,height:12},{name:"MAIN_EQ_BUTTON_DEPRESSED",x:46,y:61,width:23,height:12},{name:"MAIN_EQ_BUTTON_DEPRESSED_SELECTED",x:46,y:73,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON",x:23,y:61,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_SELECTED",x:23,y:73,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_DEPRESSED",x:69,y:61,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_DEPRESSED_SELECTED",x:69,y:73,width:23,height:12}],TEXT:Dn,TITLEBAR:[{name:"MAIN_TITLE_BAR",x:27,y:15,width:275,height:14},{name:"MAIN_TITLE_BAR_SELECTED",x:27,y:0,width:275,height:14},{name:"MAIN_EASTER_EGG_TITLE_BAR",x:27,y:72,width:275,height:14},{name:"MAIN_EASTER_EGG_TITLE_BAR_SELECTED",x:27,y:57,width:275,height:14},{name:"MAIN_OPTIONS_BUTTON",x:0,y:0,width:9,height:9},{name:"MAIN_OPTIONS_BUTTON_DEPRESSED",x:0,y:9,width:9,height:9},{name:"MAIN_MINIMIZE_BUTTON",x:9,y:0,width:9,height:9},{name:"MAIN_MINIMIZE_BUTTON_DEPRESSED",x:9,y:9,width:9,height:9},{name:"MAIN_SHADE_BUTTON",x:0,y:18,width:9,height:9},{name:"MAIN_SHADE_BUTTON_DEPRESSED",x:9,y:18,width:9,height:9},{name:"MAIN_CLOSE_BUTTON",x:18,y:0,width:9,height:9},{name:"MAIN_CLOSE_BUTTON_DEPRESSED",x:18,y:9,width:9,height:9},{name:"MAIN_CLUTTER_BAR_BACKGROUND",x:304,y:0,width:8,height:43},{name:"MAIN_CLUTTER_BAR_BACKGROUND_DISABLED",x:312,y:0,width:8,height:43},{name:"MAIN_CLUTTER_BAR_BUTTON_O_SELECTED",x:304,y:47,width:8,height:8},{name:"MAIN_CLUTTER_BAR_BUTTON_A_SELECTED",x:312,y:55,width:8,height:7},{name:"MAIN_CLUTTER_BAR_BUTTON_I_SELECTED",x:320,y:62,width:8,height:7},{name:"MAIN_CLUTTER_BAR_BUTTON_D_SELECTED",x:328,y:69,width:8,height:8},{name:"MAIN_CLUTTER_BAR_BUTTON_V_SELECTED",x:336,y:77,width:8,height:7},{name:"MAIN_SHADE_BACKGROUND",x:27,y:42,width:275,height:14},{name:"MAIN_SHADE_BACKGROUND_SELECTED",x:27,y:29,width:275,height:14},{name:"MAIN_SHADE_BUTTON_SELECTED",x:0,y:27,width:9,height:9},{name:"MAIN_SHADE_BUTTON_SELECTED_DEPRESSED",x:9,y:27,width:9,height:9},{name:"MAIN_SHADE_POSITION_BACKGROUND",x:0,y:36,width:17,height:7},{name:"MAIN_SHADE_POSITION_THUMB",x:20,y:36,width:3,height:7},{name:"MAIN_SHADE_POSITION_THUMB_LEFT",x:17,y:36,width:3,height:7},{name:"MAIN_SHADE_POSITION_THUMB_RIGHT",x:23,y:36,width:3,height:7}],VOLUME:[{name:"MAIN_VOLUME_BACKGROUND",x:0,y:0,width:68,height:420},{name:"MAIN_VOLUME_THUMB",x:15,y:422,width:14,height:11},{name:"MAIN_VOLUME_THUMB_SELECTED",x:0,y:422,width:14,height:11}],GEN:[{name:"GEN_TOP_LEFT_SELECTED",x:0,y:0,width:25,height:20},{name:"GEN_TOP_LEFT_END_SELECTED",x:26,y:0,width:25,height:20},{name:"GEN_TOP_CENTER_FILL_SELECTED",x:52,y:0,width:25,height:20},{name:"GEN_TOP_RIGHT_END_SELECTED",x:78,y:0,width:25,height:20},{name:"GEN_TOP_LEFT_RIGHT_FILL_SELECTED",x:104,y:0,width:25,height:20},{name:"GEN_TOP_RIGHT_SELECTED",x:130,y:0,width:25,height:20},{name:"GEN_TOP_LEFT",x:0,y:21,width:25,height:20},{name:"GEN_TOP_LEFT_END",x:26,y:21,width:25,height:20},{name:"GEN_TOP_CENTER_FILL",x:52,y:21,width:25,height:20},{name:"GEN_TOP_RIGHT_END",x:78,y:21,width:25,height:20},{name:"GEN_TOP_LEFT_RIGHT_FILL",x:104,y:21,width:25,height:20},{name:"GEN_TOP_RIGHT",x:130,y:21,width:25,height:20},{name:"GEN_BOTTOM_LEFT",x:0,y:42,width:125,height:14},{name:"GEN_BOTTOM_RIGHT",x:0,y:57,width:125,height:14},{name:"GEN_BOTTOM_FILL",x:127,y:72,width:25,height:14},{name:"GEN_MIDDLE_LEFT",x:127,y:42,width:11,height:29},{name:"GEN_MIDDLE_LEFT_BOTTOM",x:158,y:42,width:11,height:24},{name:"GEN_MIDDLE_RIGHT",x:139,y:42,width:8,height:29},{name:"GEN_MIDDLE_RIGHT_BOTTOM",x:170,y:42,width:8,height:24},{name:"GEN_CLOSE_SELECTED",x:148,y:42,width:9,height:9}]};function Vn(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Fn(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Vn(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Vn(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function Gn(e,A){return new RegExp(`^(.*[/\\\\])?${e}.(${A})$`,"i")}async function Pn(e,A,t,n){const r=e.file(Gn(A,t));if(!r.length)return null;const a=r[r.length-1];try{return{contents:await a.async(n),name:a.name}}catch(e){return console.warn(`Failed to extract "${A}.${t}" from the skin archive.`),null}}async function Kn(e){try{return await window.createImageBitmap(e)}catch(A){try{return await function(e){return M.n(URL.createObjectURL(e))}(e)}catch(e){return null}}}function zn(e,A){const t=document.createElement("canvas"),n=t.getContext("2d");if(null==n)throw new Error("Failed to get canvas context");const r={};return A.forEach(A=>{t.height=A.height,t.width=A.width,n.drawImage(e,-A.x,-A.y);const a=t.toDataURL();r[A.name]=a}),r}async function Yn(e,A){const t=await Pn(e,A,"(png|bmp)","blob");if(!t)return null;const n="image/"+((e=>{const A=/\.([a-z]{3,4})$/i.exec(e);return A?A[1].toLowerCase():null})(t.name)||"*");return Kn(new Blob([t.contents],{type:n}))}const Jn="RIFF".split("").map(e=>e.charCodeAt(0));async function _n(e,A){const t=await Pn(e,A,"CUR","uint8array");if(null==t)return null;const n=t.contents;return r=n,Jn.every((e,A)=>r[A]===e)?{type:"ani",aniData:n}:{type:"cur",url:Oe(n)};var r}async function Hn(e){const A=e.file(Gn("PLEDIT","txt"))[0];if(null==A)return R.c.playlistStyle;const t=await A.async("text");if(null==t)return R.c.playlistStyle;const n=t&&M.u(t).text;return n?(["normal","current","normalbg","selectedbg","mbFG","mbBG"].forEach(e=>{let A=n[e];A&&("#"!==A[0]&&(A="#"+A),n[e]=A.slice(0,7))}),Fn(Fn({},R.c.playlistStyle),n)):R.c.playlistStyle}async function qn(e){const A=await Yn(e,"GENEX");if(null==A)return null;const t=document.createElement("canvas"),n=t.getContext("2d");if(null==n)return null;t.width=A.width,t.height=A.height,n.drawImage(A,0,0);const r=e=>`rgb(${n.getImageData(e,0,1,1).data.slice(0,3).join(",")})`;return{itemBackground:r(48),itemForeground:r(50),windowBackground:r(52),buttonText:r(54),windowText:r(56),divider:r(58),playlistSelection:r(60),listHeaderBackground:r(62),listHeaderText:r(64),listHeaderFrameTopAndLeft:r(66),listHeaderFrameBottomAndRight:r(68),listHeaderFramePressed:r(70),listHeaderDeadArea:r(72),scrollbarOne:r(74),scrollbarTwo:r(76),pressedScrollbarOne:r(78),pressedScrollbarTwo:r(80),scrollbarDeadArea:r(82),listTextHighlighted:r(84),listTextHighlightedBackground:r(86),listTextSelected:r(88),listTextSelectedBackground:r(90)}}function Zn(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Wn(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Zn(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Zn(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Xn=e=>e.reduce((e,A)=>Object.assign(e,A),{}),$n=["CLOSE","EQCLOSE","EQNORMAL","EQSLID","EQTITLE","MAINMENU","MMENU","MIN","NORMAL","PCLOSE","PNORMAL","POSBAR","PSIZE","PTBAR","PVSCROLL","PWINBUT","PWSNORM","PWSSIZE","SONGNAME","TITLEBAR","VOLBAL","WINBUT","WSNORMAL","WSPOSBAR"];async function er(e){const A=await Pn(e,"VISCOLOR","txt","text");return A?Object(M.v)(A.contents):R.c.colors}async function Ar(e){const A=await Promise.all(Object.keys(Rn).map(A=>async function(e,A){const t=await Yn(e,A);return null==t?{}:zn(t,Rn[A])}(e,A)));return Xn(A)}async function tr(e){const A=await Promise.all($n.map(async A=>({[A]:await _n(e,A)})));return Xn(A)}async function nr(e){const A=await Pn(e,"REGION","txt","text");return A?function(e){const A=Object(M.u)(e),t={};return Object.keys(A).forEach(e=>{const{numpoints:n,pointlist:r}=A[e];if(!n||!r)return;const a=n.split(/\s*,\s*/).filter(e=>""!==e),i=function(e){const A=[];for(let t=0;t<e.length;t+=2)A.push(`${e[t]},${e[t+1]}`);return A}(r.split(/\s*[, ]\s*/).filter(e=>""!==e));let o=0;const l=a.map(e=>{const A=Number(e);if(A<3)return o+=A,null;const t=i.slice(o,o+A).join(" ");return t.length?(o+=A,t):null}).filter(e=>null!=e);l.length&&(t[e]=l)}),t}(A.contents):{}}async function rr(e){const A=await Yn(e,"GEN");if(null==A)return null;const t=document.createElement("canvas"),n=t.getContext("2d");t.width=A.width,t.height=A.height,n.drawImage(A,0,0);const r=(e,A)=>{const r=A=>n.getImageData(A,e,1,1).data.join(",");let a=1;const i=r(0);return R.d.map(n=>{let o=a;for(;r(o)!==i&&o<t.width;)o++;const l={x:a,y:e,height:7,width:o-a,name:`${A}_${n}`};return a=o+1,l})},a={},i=[...r(88,"GEN_TEXT_SELECTED"),...r(96,"GEN_TEXT")];return i.forEach(e=>{a[e.name]=e.width}),[a,zn(A,i)]}var ar=async function(e,A){const t=await A.loadAsync(e),[n,r,a,i,o,l,s]=await Promise.all([er(t),Hn(t),Ar(t),tr(t),nr(t),rr(t),qn(t)]),[c,u]=l||[null,{}];return{colors:n,playlistStyle:r,images:Wn(Wn({},a),u),genLetterWidths:c,cursors:i,region:o,genExColors:s}},ir=t(42),or=t.n(ir);function lr(){return(e,A)=>{const t=A();if(0===rA(t).length)return;const n=nA(t),{playlist:{trackOrder:r}}=t;e({type:"REMOVE_TRACKS",ids:r.filter(e=>!n.has(e))})}}function sr(){return(e,A)=>{e({type:"REMOVE_TRACKS",ids:Array.from(nA(A()))})}}function cr(){return e=>{e({type:"STOP"}),e({type:"REMOVE_ALL_TRACKS"})}}function ur(){return{type:"REVERSE_LIST"}}function dr(){return{type:"RANDOMIZE_LIST"}}function gr(){return(e,A)=>{const t=A(),n=Ze(t);return e({type:"SET_TRACK_ORDER",trackOrder:Object(M.B)(Xe(t),e=>(""+n[e].title).toLowerCase())})}}function pr(e){return{type:"SET_PLAYLIST_SCROLL_POSITION",position:e}}function hr(e){return(A,t)=>{const n=t(),r=wA(n),a=IA(n);return A({type:"SET_PLAYLIST_SCROLL_POSITION",position:100*(r?Object(M.d)((a+e)/r,0,1):0)})}}function fr(e){return e.preventDefault(),(A,t)=>{const n=t();wA(n)&&e.stopPropagation();const r=n.playlist.trackOrder.length*R.i,a=e.deltaY/r*100;A({type:"SET_PLAYLIST_SCROLL_POSITION",position:Object(M.d)(n.display.playlistScrollPosition+a,0,100)})}}function mr(){return hr(-4)}function Er(){return hr(4)}function br(e){return(A,t)=>{const n=t(),r=Ze(n),a=Xe(n),i=nA(n),o=a.findIndex(e=>r[e]&&i.has(e));if(-1===o)return;const l=Object(M.g)(a,e=>r[e]&&i.has(e));if(-1===l)throw new Error("We found a first selected, but not a last selected.");const s=-o,c=a.length-1-l,u=Object(M.d)(e,s,c);0!==u&&A({type:"DRAG_SELECTED",offset:u})}}function wr(){return{type:"INVERT_SELECTION"}}function yr(){return{type:"SELECT_ZERO"}}function Or(){return{type:"SELECT_ALL"}}var Ir=t(34);const Sr=new class{constructor({threads:e}){this._queue=new or.a([],(e,A)=>e.priority()-A.priority()),this._availableThreads=e}push(e,A){const t={task:e,priority:A};return this._queue.push(t),setTimeout(()=>{this._run()},0),()=>{this._queue=this._queue.filter(e=>e!==t)}}_run(){for(;this._availableThreads>0;){if(0===this._queue.length)return;this._availableThreads--;const e=this._queue.pop().task();be()("function"==typeof e.then,"LoadQueue only supports loading Promises. Got "+e),e.then(()=>{this._availableThreads++,this._run()})}}}({threads:4});function kr(e,A,t){return Dr(Array.from(e).map(e=>({blob:e,defaultName:e.name})),A,t)}const Ur=new RegExp("(wsz|zip)$","i"),vr=new RegExp("eqf$","i");function Cr(e,A=R.e.PLAY,t){return n=>{if(!(e.length<1)){if(1===e.length){const A=e[0];if(Ur.test(A.name))return void n(Br(A));if(vr.test(A.name))return void n(function(e){return async A=>{const t=await async function(e){return be()(null!=e,"Attempt to get an ArrayBuffer without assigning a fileReference"),new Promise((A,t)=>{const n=new FileReader;n.onload=()=>{A(n.result)},n.onerror=t,n.readAsArrayBuffer(e)})}(e);A(Vr(Object(Qn.parser)(t).presets[0]))}}(A))}n(kr(e,A,t))}}}function Br(e){return async(A,t,{requireJSZip:n})=>{if(!n)return void alert("Webamp has not been configured to support custom skins.");let r;A({type:"LOADING"});try{r=await n()}catch(e){return console.error(e),A({type:"LOADED"}),void alert("Failed to load the skin parser.")}try{const t=await ar(e,r);A({type:"SET_SKIN_DATA",data:{skinImages:t.images,skinColors:t.colors,skinPlaylistStyle:t.playlistStyle,skinCursors:t.cursors,skinRegion:t.region,skinGenLetterWidths:t.genLetterWidths,skinGenExColors:t.genExColors}})}catch(e){console.error(e),A({type:"LOADED"}),alert("Failed to parse skin")}}}function xr(e){return async A=>{A({type:"LOADING"});try{const t=await fetch(e);if(!t.ok)throw new Error(t.statusText);A(Br(t.blob()))}catch(t){console.error(t),A({type:"LOADED"}),alert("Failed to download skin from "+e)}}}function Mr(e,A){return async t=>{var n;const r=await ye({accept:e});t({type:"OPENED_FILES",expectedType:A,count:r.length,firstFileName:null===(n=r[0])||void 0===n?void 0:n.name}),t(Cr(r))}}function Nr(){return Mr(".eqf","EQ")}function Tr(){return Mr(null,"MEDIA")}function Qr(){return Mr(".zip, .wsz","SKIN")}function Lr(e,A){return(t,n)=>{Sr.push(async()=>{try{const n=await function(e){return be()("string"==typeof e,"Attempted to get the duration of media file without passing a url"),new Promise((A,t)=>{const n=document.createElement("audio");n.crossOrigin="anonymous";const r=()=>{A(n.duration),n.removeEventListener("durationchange",r),n.src=""};n.addEventListener("durationchange",r),n.addEventListener("error",e=>{t(e)}),n.src=e})}(e);t({type:"SET_MEDIA_DURATION",duration:n,id:A})}catch(e){}},()=>UA(n())(A)?5:15)}}function jr(e,A=R.e.NONE,t=0){const{files:n}=e.dataTransfer;return async(r,a,{handleTrackDropEvent:i})=>{if(i){const n=await i(e);if(null!=n)return void r(Dr(n,A,t))}r(Cr(n,A,t))}}function Dr(e,A=R.e.NONE,t=0){return n=>{A===R.e.PLAY&&n(e=>{e({type:"STOP"}),e({type:"REMOVE_ALL_TRACKS"})}),e.forEach((e,r)=>{const a=0===r?A:R.e.NONE;n(function(e,A=R.e.NONE,t=0){return n=>{const r=M.D(),{defaultName:a,metaData:i,duration:o}=e;let l;if("url"in e)l=e.url.toString();else{if(!("blob"in e))throw new Error("Expected track to have either a blob or a url");l=URL.createObjectURL(e.blob)}switch(n({type:"ADD_TRACK_FROM_URL",url:l,duration:e.duration,defaultName:a,id:r,atIndex:t}),A){case R.e.BUFFER:n({type:"BUFFER_TRACK",id:r});break;case R.e.PLAY:n({type:"PLAY_TRACK",id:r});break;case R.e.NONE:default:n(null!=o?{type:"SET_MEDIA_DURATION",duration:o,id:r}:Lr(l,r))}if(null!=i){const{artist:e,title:A,album:t}=i;n({type:"SET_MEDIA_TAGS",artist:e,title:A,album:t,sampleRate:44e3,bitrate:192e3,numberOfChannels:2,id:r})}else n("blob"in e?Rr(e.blob,r):function(e){return(A,t)=>{const n=Ze(t())[e];Sr.push(()=>A(Rr(n.url,e)),()=>UA(t())(e)?10:20)}}(r))}}(e,a,t+r))})}}function Rr(e,A){return async(t,n,{requireMusicMetadata:r})=>{t({type:"MEDIA_TAG_REQUEST_INITIALIZED",id:A});try{const n=await function(e,A){be()(null!=e,"Attempted to get the tags of media file without passing a file");const t={duration:!0,skipPostHeaders:!0};return"string"==typeof e?A.fetchFromUrl(e,t):A.parseBlob(e,t)}(e,await r()),{artist:a,title:i,album:o,picture:l}=n.common,{numberOfChannels:s,bitrate:c,sampleRate:u}=n.format;let d=null;if(l&&l.length>=1){const e=new Uint8Array(l[0].data),A=new Blob([e],{type:l[0].format});d=URL.createObjectURL(A)}t({type:"SET_MEDIA_TAGS",artist:a||"",title:i||"",album:o,albumArtUrl:d,numberOfChannels:s,bitrate:c,sampleRate:u,id:A})}catch(e){t({type:"MEDIA_TAG_REQUEST_FAILED",id:A})}}}function Vr(e){return A=>{A(Mn(M.q(e.preamp))),R.a.forEach(t=>{A(Un(t,M.q(e["hz"+t])))})}}function Fr(){return(e,A)=>{const t=A(),n=qe(t),r=Object(Qn.creator)(n),a="data:application/zip;base64,"+M.a(r);M.f(a,"entry.eqf")}}function Gr(){return(e,A)=>{const t=VA(A());M.f(t,"Winamp Playlist.html")}}let Pr=document.createElement("input");Pr.type="file";const Kr=void 0!==Pr.webkitdirectory||void 0!==Pr.mozdirectory||void 0!==Pr.directory;function zr(e){return async A=>{A(kr(await ye(),R.e.NONE,e))}}function Yr(e){return async A=>{if(!Kr)return void alert("Not supported in your browser");A(kr(await ye({directory:!0}),R.e.NONE,e))}}function Jr(e=0){new Ir.a(!1).getTrackListFromYandexDisk(prompt("Введите ссылку на Яндекс Диск"))}function _r(){}function Hr(){return(e,A,{handleSaveListEvent:t})=>{t?t(AA(A())):alert("Not supported in Webamp")}}function qr(e,A){return t=>{var n;return t({type:"DROPPED_FILES",count:e.dataTransfer.files.length,firstFileName:null===(n=e.dataTransfer.files[0])||void 0===n?void 0:n.name,windowId:A})}}function Zr(e){const{name:A}=e;if("butterchurnPresetObject"in e)return{type:"RESOLVED",name:A,preset:e.butterchurnPresetObject};if("getButterchrunPresetObject"in e)return{type:"UNRESOLVED",name:A,getPreset:e.getButterchrunPresetObject};if("butterchurnPresetUrl"in e)return{type:"UNRESOLVED",name:A,getPreset:async()=>(await fetch(e.butterchurnPresetUrl)).json()};throw new Error("Invalid preset object")}function Wr(e){return(A,t)=>{const n=t(),r=n.milkdrop.presets.length;A({type:"GOT_BUTTERCHURN_PRESETS",presets:e}),0===r&&kt(n)?A(Aa()):A(ta(r,Be.IMMEDIATE,!0))}}function Xr(e){return async(A,t,{convertPreset:n})=>{A(Wr(Array.from(e).map(e=>{const A=e.name.toLowerCase();if(A.endsWith(".milk")){if(null==n)throw new Error("Invalid type");return{type:"UNRESOLVED",name:e.name.slice(0,e.name.length-".milk".length),getPreset:()=>n(e)}}return A.endsWith(".json")?{type:"UNRESOLVED",name:e.name.slice(0,e.name.length-".json".length),getPreset:async()=>{const A=await we(e);return JSON.parse(A)}}:(console.error("Invalid type preset when loading directory"),null)}).filter(Boolean)))}}function $r(e=Be.DEFAULT){return(A,t)=>{const n=t();if(kt(n))return A(Aa(e));const r=wt(n);if(null==r)return;A(ta(r+1,e,!0))}}function ea(e=Be.DEFAULT){return(A,t)=>{const n=t(),{presetHistory:r}=n.milkdrop;if(r.length<1)return;A(ta(r[r.length-2],e,!1))}}function Aa(e=Be.DEFAULT){return(A,t)=>{const n=t();A(ta(Math.floor(Math.random()*n.milkdrop.presets.length),e,!0))}}function ta(e,A,t){return async(n,r)=>{const a=r().milkdrop.presets[e];if(null!=a)switch(n({type:"PRESET_REQUESTED",index:e,addToHistory:t}),a.type){case"RESOLVED":return void n({type:"SELECT_PRESET_AT_INDEX",index:e,transitionType:A});case"UNRESOLVED":const t=await a.getPreset();return n({type:"RESOLVE_PRESET_AT_INDEX",index:e,json:t}),void n({type:"SELECT_PRESET_AT_INDEX",index:e,transitionType:A})}}}function na(e){return Xr(e.dataTransfer.files)}function ra(){return{type:"TOGGLE_RANDOMIZE_PRESETS"}}function aa(){return{type:"TOGGLE_PRESET_CYCLING"}}function ia(e){return{type:"SCHEDULE_MILKDROP_MESSAGE",message:e}}function oa(){return e=>{let A=!1;e({type:"CLOSE_REQUESTED",cancel:()=>{A=!0}}),A||(e({type:"STOP"}),e({type:"CLOSE_WINAMP"}))}}function la(){return{type:"TOGGLE_VISUALIZER_STYLE"}}function sa(){return{type:"MINIMIZE_WINAMP"}}function ca(e){return{type:"SET_FOCUS",input:e}}function ua(){return{type:"UNSET_FOCUS"}}function da(e){return{type:"SET_BAND_FOCUS",input:"eq",bandFocused:e}}function ga(){return{type:"LOAD_DEFAULT_SKIN"}}function pa(){return(e,A)=>{ft(A())?e({type:"SET_MILKDROP_DESKTOP",enabled:!1}):e({type:"SET_MILKDROP_DESKTOP",enabled:!0})}}function ha(e){return{type:"SET_MILKDROP_FULLSCREEN",enabled:e}}function fa(){return(e,A)=>{e(ha(!mt(A())))}}function ma(){return(e,A)=>{It(A())&&e($t(R.m.MILKDROP)),e({type:"TOGGLE_PRESET_OVERLAY"})}}function Ea(){return{type:"STEP_MARQUEE"}}Pr=null;var ba=e=>A=>{const{media:{volume:t,balance:n},equalizer:{sliders:r}}=A.getState();return e.setVolume(t),e.setBalance(n),e.setPreamp(r.preamp),e.on("timeupdate",()=>{A.dispatch({type:"UPDATE_TIME_ELAPSED",elapsed:e.timeElapsed()})}),e.on("ended",()=>{A.dispatch(gn())}),e.on("playing",()=>{A.dispatch({type:"IS_PLAYING"})}),e.on("waiting",()=>{A.dispatch({type:"START_WORKING"})}),e.on("stopWaiting",()=>{A.dispatch({type:"STOP_WORKING"})}),e.on("fileLoaded",()=>{const t=uA(A.getState());null!=t&&A.dispatch({id:t,type:"SET_MEDIA",kbps:"128",khz:"44",channels:2,length:e.duration()})}),t=>n=>{const r=t(n),a=A.getState();switch(n.type){case"PLAY":e.play();break;case"PAUSE":e.pause();break;case"STOP":e.stop();break;case"SET_VOLUME":e.setVolume(et(a));break;case"SET_BALANCE":e.setBalance(At(a));break;case"SEEK_TO_PERCENT_COMPLETE":e.seekToPercentComplete(n.percent);break;case"PLAY_TRACK":{const t=We(A.getState())(n.id);null!=t&&e.loadFromUrl(t,!0);break}case"BUFFER_TRACK":{const t=We(A.getState())(n.id);null!=t&&e.loadFromUrl(t,!1);break}case"SET_BAND_VALUE":"preamp"===n.band?e.setPreamp(n.value):e.setEqBand(n.band,n.value);break;case"SET_EQ_OFF":e.disableEq();break;case"SET_EQ_ON":e.enableEq();break;case"LOAD_SERIALIZED_STATE":it(a)?e.enableEq():e.disableEq(),e.setVolume(et(a)),e.setBalance(At(a)),Object(M.s)(a.equalizer.sliders,(A,t)=>{"preamp"===t?e.setPreamp(A):e.setEqBand(t,A)})}return r}};const wa=Object(x.composeWithDevTools)({actionsBlacklist:["UPDATE_TIME_ELAPSED","STEP_MARQUEE"]});var ya=t(15),Oa=t.n(ya);var Ia=function(e){const{onChange:A,enabled:t}=e,n=Object(i.useRef)(null);return Object(i.useEffect)(()=>{function e(){A&&A(Oa.a.fullscreenElement===n.current)}return Oa.a.addEventListener("fullscreenchange",e),()=>{Oa.a.removeEventListener("fullscreenchange",e)}},[A]),Object(i.useLayoutEffect)(()=>{const e=Oa.a.fullscreenElement===n.current;var A;e&&!t?Oa.a.fullscreenEnabled&&Oa.a.exitFullscreen():!e&&t&&null!=n.current&&(A=n.current,Oa.a.fullscreenEnabled&&Oa.a.requestFullscreen(A))},[t]),Object(a.jsx)("div",{ref:n,style:e.enabled?{height:"100%",width:"100%"}:void 0,children:e.children})};function Sa(e){const[A,t]=Object(i.useState)(null);return Object(i.useEffect)(()=>{let A=!1;return e.then(e=>{A||t(e)}),()=>{A=!0}},[e]),A}const ka={current:{pageX:0,pageY:0}};function Ua(){const e=ka,[A,t]=Object(i.useState)(!1),[n,r]=Object(i.useState)(null);return Object(i.useLayoutEffect)(()=>{if(null==n)return void t(!1);const A=n.getBoundingClientRect(),{pageX:r,pageY:a}=e.current;t(r>=A.left&&r<=A.right&&a>=A.top&&a<=A.bottom);const i=()=>t(!0),o=()=>t(!1);return n.addEventListener("mouseenter",i),n.addEventListener("mouseleave",o),()=>{n.removeEventListener("mouseenter",i),n.removeEventListener("mouseleave",o)}},[n,e]),{ref:r,hover:A}}function va(e){return U(e)}function Ca(e){const A=O();return Object(i.useCallback)((...t)=>A(e(...t)),[A,e])}function Ba(){return O()}window.document.addEventListener("mousemove",({pageX:e,pageY:A})=>{ka.current={pageX:e,pageY:A}});var xa=t(6),Ma=t.n(xa);t(71);function Na(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}var Ta=Object(i.memo)((function(e){const{currentSize:A,setWindowSize:t,widthOnly:n}=e,o=D()(e,["currentSize","setWindowSize","widthOnly"]),[l,s]=Object(i.useState)(!1),[c,u]=Object(i.useState)(null);Object(i.useEffect)(()=>{if(!1===l||null==c)return;const[t,r]=A,a=A=>{const a=M.l(A)-c.x,i=M.m(A)-c.y,o=[Math.max(0,t+Math.round(a/R.o)),n?t:Math.max(0,r+Math.round(i/R.n))];e.setWindowSize(o)};window.addEventListener("mousemove",a),window.addEventListener("touchmove",a);const i=()=>s(!1);return window.addEventListener("mouseup",i),window.addEventListener("touchend",i),()=>{window.removeEventListener("mousemove",a),window.removeEventListener("touchmove",a),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",i)}},[c,l]);const d=e=>{u({x:M.l(e),y:M.m(e)}),s(!0)};return Object(a.jsx)("div",function(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Na(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Na(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}({onMouseDown:d,onTouchStart:d},o))}));var Qa=function({onKeyDown:e,windowId:A,children:t}){const n=va(GA),r=Ca($t),o=Object(i.useCallback)(()=>{A!==n&&r(A)},[A,n,r]),[l,s]=Object(i.useState)(null);return Object(i.useEffect)(()=>{if(null!=l&&null!=e)return l.addEventListener("keydown",e),()=>l.removeEventListener("keydown",e)},[e,A,n,l]),Object(i.useEffect)(()=>{if(null==l||A!==n)return;const e=new MutationObserver(e=>{document.activeElement===document.body&&e.some(e=>e.removedNodes.length>0)&&l.focus()});return e.observe(l,{subtree:!0,attributes:!1,childList:!0}),()=>e.disconnect()},[A,n,l]),Object(a.jsx)("div",{ref:s,onMouseDown:o,onTouchStart:o,onFocus:o,tabIndex:-1,style:{height:"100%",width:"100%"},children:t})};const La=({children:e})=>{const A=e.split("");return Object(a.jsx)(i.Fragment,{children:A.map((e,A)=>Object(a.jsx)("div",{className:"draggable gen-text-letter gen-text-"+(" "===e?"space":e.toLowerCase())},A))})};var ja=({children:e,title:A,windowId:t,onKeyDown:n})=>{const r=Ca(en),i=Ca(Xt),o=va(JA),l=va(GA),s=va(mA)(t),c=l===t,{width:u,height:d}=o(t);return Object(a.jsx)(Qa,{windowId:t,onKeyDown:n,children:Object(a.jsxs)("div",{className:Ma()("gen-window","window",{selected:c}),style:{width:u,height:d},children:[Object(a.jsxs)("div",{className:"gen-top draggable",children:[Object(a.jsx)("div",{className:"gen-top-left draggable"}),Object(a.jsx)("div",{className:"gen-top-left-fill draggable"}),Object(a.jsx)("div",{className:"gen-top-left-end draggable"}),Object(a.jsx)("div",{className:"gen-top-title draggable",children:Object(a.jsx)(La,{children:A})}),Object(a.jsx)("div",{className:"gen-top-right-end draggable"}),Object(a.jsx)("div",{className:"gen-top-right-fill draggable"}),Object(a.jsx)("div",{className:"gen-top-right draggable",children:Object(a.jsx)("div",{className:"gen-close selected",onClick:()=>i(t)})})]}),Object(a.jsxs)("div",{className:"gen-middle",children:[Object(a.jsx)("div",{className:"gen-middle-left draggable",children:Object(a.jsx)("div",{className:"gen-middle-left-bottom draggable"})}),Object(a.jsx)("div",{className:"gen-middle-center",children:e({width:u-19,height:d-34})}),Object(a.jsx)("div",{className:"gen-middle-right draggable",children:Object(a.jsx)("div",{className:"gen-middle-right-bottom draggable"})})]}),Object(a.jsxs)("div",{className:"gen-bottom draggable",children:[Object(a.jsx)("div",{className:"gen-bottom-left draggable"}),Object(a.jsx)("div",{className:"gen-bottom-right draggable",children:Object(a.jsx)(Ta,{currentSize:s,setWindowSize:e=>r(t,e),id:"gen-resize-target"})})]})]})})};const Da={[Be.DEFAULT]:2.7,[Be.IMMEDIATE]:0,[Be.USER_PRESET]:5.7};var Ra=function({analyser:e,width:A,height:t}){const n=va($A),r=va(MA),o=va(Et),l=va(BA),s=va(yt),c=va(bt),u=va(ht),d=n===R.k.MILKDROP,g=Object(i.useRef)(null),[p,h]=Object(i.useState)(null);Object(i.useEffect)(()=>{if(null==g.current||null==o)return;if(null!=p)return;const n=o.createVisualizer(e.context,g.current,{width:A,height:t,meshWidth:32,meshHeight:24,pixelRatio:window.devicePixelRatio||1});n.connectAudio(e),h(n)},[o,e,t,A,p]),Object(i.useEffect)(()=>{null!=p&&p.setRendererSize(A,t)},[p,A,t]);const f=Object(i.useRef)(!1);Object(i.useEffect)(()=>{null!=p&&null!=s&&(f.current?p.loadPreset(s,Da[c]):(p.loadPreset(s,Da[Be.IMMEDIATE]),f.current=!0))},[p,s]),Object(i.useEffect)(()=>{null!=p&&l&&p.launchSongTitleAnim(l)},[p,l]);const m=Object(i.useRef)(null);Object(i.useEffect)(()=>{null!=p&&null!=u&&(null==m.current||u.time>m.current)&&(m.current=Date.now(),p.launchSongTitleAnim(u.text))},[p,u]);const E=r&&d;return Object(i.useEffect)(()=>{if(!E||null==p)return;let e=null;const A=()=>{p.render(),e=window.requestAnimationFrame(A)};return A(),()=>{null!=e&&window.cancelAnimationFrame(e)}},[p,E]),Object(a.jsx)("canvas",{height:t,width:A,style:{height:"100%",width:"100%",display:d?"block":"none"},ref:g})};t(74);var Va=e=>{const{innerRef:A}=e;return Object(a.jsx)("div",{ref:A,className:"draggable",style:{backgroundColor:"#000",position:"absolute",top:0,bottom:0,left:0,right:0,height:"100%",width:"100%"},tabIndex:0,children:e.children})};function Fa(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ga(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Fa(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Fa(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Pa={position:"absolute",top:0,left:0,color:"white",background:"rgba(0.33, 0.33, 0.33, 0.33)"},Ka={position:"absolute",top:0,left:0,padding:"15px 10px 0 10px"},za={display:"inline-block",whiteSpace:"nowrap",overflow:"hidden",background:"rgba(0, 0, 0, 0.815)",fontSize:"12px"};function Ya(e){return e-1}var Ja=function({height:e,width:A}){const t=va(Ot),n=va(wt),r=Ca(ta),o=Ca(ma),l=Ca(Xr),s=function(){const e=Object(i.useRef)(!1);return Object(i.useEffect)(()=>()=>{e.current=!0},[]),e}(),[c,u]=Object(i.useState)(()=>null!=n?n+1:0),d=t.length,g=Object(i.useCallback)(()=>{const A=Math.floor((e-15)/14),r=Math.floor(.75*A),[i,o]=function(e,A,t){const n=Math.min(e,A),r=Math.floor(n/2),a=t-r,i=Object(M.d)(a,0,e-n);return[i,i+n-1]}(d+1,r,c),l=[];for(let e=i;e<=o;e++){const A=Ya(e),r=A===n;let i;i=e===c?r?"#FFCC22":"#FF5050":r?"#CCFF03":"#CCCCCC",l.push(Object(a.jsx)("li",{style:{color:i,lineHeight:"14px"},children:0===e?"Load Local Directory":t[A]},e))}return l},[n,e,d,t,c]),p=Object(i.useCallback)(async()=>{const e=await ye({directory:!0});s.current||l(e)},[l,s]),h=Object(i.useCallback)(e=>{switch(e.keyCode){case 38:u(e=>Math.max(e-1,0)),e.stopPropagation();break;case 40:u(e=>Math.min(e+1,d)),e.stopPropagation();break;case 13:0===c?p():r(Ya(c),Be.DEFAULT,!0),e.stopPropagation();break;case 27:o(),e.stopPropagation()}},[p,d,r,c,o]),f=Object(i.useCallback)(e=>{null!=e&&document.activeElement!==e&&e.focus()},[]);return null==t?Object(a.jsx)("div",{style:Pa,children:Object(a.jsx)("span",{children:"Loading presets"})}):Object(a.jsx)("div",{ref:f,tabIndex:-1,style:Ka,onKeyDown:h,children:Object(a.jsx)("div",{style:Ga(Ga({},za),{},{width:A-20-20,maxHeight:e-15}),children:Object(a.jsx)("ul",{style:{listStyleType:"none",padding:0,margin:0},children:g()})})})};function _a(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ha(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?_a(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):_a(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function qa(e){e.stopPropagation(),e.preventDefault(),e.dataTransfer.dropEffect="link",e.dataTransfer.effectAllowed="link"}var Za=e=>{const{handleDrop:A,windowId:t}=e,n=D()(e,["handleDrop","windowId"]),r=Ca(qr),o=Object(i.useCallback)(e=>{qa(e),r(e,t);const{currentTarget:n}=e;if(!(n instanceof Element))return;const{left:a,top:i}=n.getBoundingClientRect();A(e,{x:a,y:i})},[A,r,t]);return Object(a.jsx)("div",Ha(Ha({},n),{},{onDragStart:qa,onDragEnter:qa,onDragOver:qa,onDrop:o}))};t(76);function Wa(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Xa(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Wa(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Wa(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const $a=e=>{const A=Object(i.useMemo)(()=>{const A=document.createElement("div");return A.id="webamp-context-menu",A.style.position="absolute",A.style.top="0",A.style.left="0",A.style.zIndex=String(e.zIndex+1),A},[e.zIndex]);Object(i.useEffect)(()=>(document.body.appendChild(A),()=>{document.body.removeChild(A)}),[A]);const t={top:e.top,left:e.left,position:"absolute"};return Object(l.createPortal)(Object(a.jsx)("div",{style:t,children:e.children}),A)},ei=()=>Object(a.jsx)("li",{className:"hr",children:Object(a.jsx)("hr",{})}),Ai=({children:e,label:A})=>Object(a.jsxs)("li",{className:"parent",children:[Object(a.jsx)("ul",{children:e}),A]}),ti=e=>Object(a.jsx)("li",{children:Object(a.jsx)("a",Xa(Xa({},e),{},{children:e.label}))}),ni=e=>{const{label:A,checked:t,className:n=""}=e,r=D()(e,["label","checked","className"]);return Object(a.jsx)("li",Xa(Xa({className:Ma()(n,{checked:t})},r),{},{children:A}))};function ri({children:e,offsetTop:A,offsetLeft:t,top:n,bottom:r,selected:i}){const o=va(zA);return i?Object(a.jsx)($a,{top:A,left:t,zIndex:o,children:Object(a.jsx)("ul",{className:Ma()("context-menu",{top:n,bottom:r}),children:e})}):null}function ai(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ii(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ai(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ai(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function oi(e){var A,t;let{children:n,renderContents:r}=e,o=D()(e,["children","renderContents"]);const[l,s]=Object(i.useState)(null),c=Object(i.useCallback)(()=>{s(null)},[]),u=Object(i.useCallback)(e=>{2!==e.button&&c()},[c]),d=Object(i.useCallback)(e=>{const{pageX:A,pageY:t}=e;s({x:A,y:t}),e.preventDefault(),e.stopPropagation()},[]);return Object(i.useEffect)(()=>{if(null!=l)return document.addEventListener("click",u),document.body.addEventListener("contextmenu",c),()=>{document.removeEventListener("click",u),document.body.removeEventListener("contextmenu",c)}},[l,c,u]),Object(a.jsxs)("div",ii(ii({onContextMenu:d,style:{width:"100%",height:"100%"}},o),{},{children:[Object(a.jsx)(ri,{selected:null!=l,offsetTop:null!==(A=null==l?void 0:l.y)&&void 0!==A?A:0,offsetLeft:null!==(t=null==l?void 0:l.x)&&void 0!==t?t:0,children:r()}),n]}))}var li=e=>{const A=va(ft),t=Ca(Xt),n=Ca(pa),r=Ca(fa);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(ni,{onClick:r,label:"Fullscreen",hotkey:"Alt+Enter"}),Object(a.jsx)(ni,{onClick:n,checked:A,label:"Desktop Mode",hotkey:"Alt+D"}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:()=>t(R.m.MILKDROP),label:"Quit"})]}),children:e.children})};var si=i.memo(({children:e})=>{const[A]=i.useState(()=>document.createElement("div"));return i.useEffect(()=>(A.classList.add("webamp-desktop"),document.body.appendChild(A),()=>{document.body.removeChild(A)}),[A]),s.a.createPortal(e,A)});function ci(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ui(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ci(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ci(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var di=function({analyser:e}){const A=va(ft),t=va(mt),n=va(It),r=va(St),o=va(wt),l=va(MA),s=Ca(fa),c=Ca($r),u=Ca(na),d=Ca(ha),g=function(){const e=va(BA),A=Ca($r),t=Ca(ea),n=Ca(ra),r=Ca(ma),a=Ca(ia),o=Ca(aa);return Object(i.useCallback)(i=>{switch(i.keyCode){case 32:A();break;case 8:t(Be.IMMEDIATE);break;case 72:A(Be.IMMEDIATE);break;case 82:n();break;case 76:r(),i.stopPropagation();break;case 84:null!=e&&a(e),i.stopPropagation();break;case 145:case 125:o()}},[a,A,t,o,r,n,e])}();Object(i.useEffect)(()=>{if(!r||!l)return;const e=setInterval(c,15e3);return()=>clearInterval(e)},[r,o,l,c]);const p=function(){const[e]=Object(i.useState)(M.h());return e}(),h=function(){const[e,A]=Object(i.useState)(M.k()),t=Object(i.useCallback)(M.C(()=>{A(M.k())},100),[]);return Object(i.useEffect)(()=>(window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t)}),[t]),e}();return A?Object(a.jsx)(si,{children:Object(a.jsx)(li,{children:Object(a.jsx)(Ra,ui(ui({},h),{},{analyser:e}))})}):Object(a.jsx)(ja,{title:"Milkdrop",windowId:R.m.MILKDROP,onKeyDown:g,children:A=>{const r=t?p:A;return Object(a.jsx)(li,{children:Object(a.jsx)(Va,{children:Object(a.jsxs)(Za,{windowId:R.m.MILKDROP,handleDrop:u,children:[n&&Object(a.jsx)(Ja,ui({},r)),Object(a.jsx)(Ia,{enabled:t,onChange:d,children:Object(a.jsx)("div",{onDoubleClick:s,children:Object(a.jsx)(Ra,ui(ui({},r),{},{analyser:e}))})})]})})})}})};var gi=()=>{const e=Ca(pn),A=Ca(sn),t=Ca(cn),n=Ca(un),r=Ca(gn),o=Ca(fn),l=Ca(mn),s=Ca(dn);return Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(ni,{label:"Previous",hotkey:"Z",onClick:e}),Object(a.jsx)(ni,{label:"Play",hotkey:"X",onClick:A}),Object(a.jsx)(ni,{label:"Pause",hotkey:"C",onClick:t}),Object(a.jsx)(ni,{label:"Stop",hotkey:"V",onClick:n}),Object(a.jsx)(ni,{label:"Next",hotkey:"B",onClick:r}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Back 5 seconds",hotkey:"Left",onClick:()=>l(5)}),Object(a.jsx)(ni,{label:"Fwd 5 seconds",hotkey:"Right",onClick:()=>o(5)}),Object(a.jsx)(ni,{label:"10 tracks back",hotkey:"Num. 1",onClick:()=>s(-10)}),Object(a.jsx)(ni,{label:"10 tracks fwd",hotkey:"Num. 3",onClick:()=>s(10)})]})};var pi=()=>{const e=Ca(ga),A=Ca(Qr),t=Ca(xr),n=va(jt);return Object(a.jsxs)(Ai,{label:"Skins",children:[Object(a.jsx)(ni,{onClick:A,label:"Load Skin..."}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:e,label:"<Base Skin>"}),n.map(e=>Object(a.jsx)(ni,{onClick:()=>t(e.url),label:e.name},e.url))]})};var hi=()=>{const e=Ca(Sn),A=Ca(Ht),t=Ca(On),n=Ca(In),r=va(PA),i=va(Tt),o=va(nt),l=va(tt);return Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(pi,{}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Time elapsed",hotkey:"(Ctrl+T toggles)",onClick:e,checked:i===R.h.ELAPSED}),Object(a.jsx)(ni,{label:"Time remaining",hotkey:"(Ctrl+T toggles)",onClick:e,checked:i===R.h.REMAINING}),Object(a.jsx)(ni,{label:"Double Size",hotkey:"Ctrl+D",onClick:A,checked:r}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Repeat",hotkey:"R",onClick:t,checked:o}),Object(a.jsx)(ni,{label:"Shuffle",hotkey:"S",onClick:n,checked:l})]})};var fi=Object(i.memo)(({filePickers:e})=>{const A=va(Nt),t=va(gA),n=Ca(oa),r=Ca(Tr),o=Ca(Dr),l=Ca(An),s=Ca(()=>({type:"MAIN_CONTEXT_MENU_OPENED"}));return Object(i.useEffect)(()=>{s()},[s]),Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(ti,{href:"https://webamp.org/about",target:"_blank",label:"Webamp..."}),Object(a.jsx)(ei,{}),Object(a.jsxs)(Ai,{label:"Play",children:[Object(a.jsx)(ni,{onClick:r,label:"File...",hotkey:"L"}),null!=e&&e.map((e,t)=>(A||!e.requiresNetwork)&&Object(a.jsx)(ni,{onClick:async()=>{let A;try{A=await e.filePicker()}catch(e){console.error("Error loading from file picker",e)}o(A||[],R.e.PLAY)},label:e.contextMenuName},t))]}),Object(a.jsx)(ei,{}),Object.keys(t).map(e=>Object(a.jsx)(ni,{label:t[e].title,checked:t[e].open,onClick:()=>l(e),hotkey:t[e].hotkey},e)),Object(a.jsx)(ei,{}),Object(a.jsx)(pi,{}),Object(a.jsx)(ei,{}),Object(a.jsx)(Ai,{label:"Options",children:Object(a.jsx)(hi,{})}),Object(a.jsx)(Ai,{label:"Playback",children:Object(a.jsx)(gi,{})}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:n,label:"Exit"})]})});function mi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ei(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?mi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):mi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const bi=(e,A)=>{const t=Pt(e,A);return void 0!==t.x||void 0!==t.y};function wi(e){const A=va(HA),t=va(hA),n=va(ot),r=Ca(tn),[a,o]=Object(i.useState)(null);return Object(i.useEffect)(()=>{if(null==a)return;const{boundingBox:e,moving:A,stationary:t,mouseStart:i}=a,l=a=>{const o={x:M.l(a)-i.x,y:M.m(a)-i.y},l=A.map(e=>Ei(Ei({},e),zt(e,o))),s=Ei(Ei({},e),zt(e,o)),c=((e,A)=>{let t=0,n=0;for(const r of e)for(const e of A){const A=Kt(r,e);if(t=t||A.x,n=n||A.y,void 0!==t&&t>0&&void 0!==n&&n>0)break}return{x:t,y:n}})(l,t),u=((e,A)=>{const t=((e,A)=>{let t,n;return e.x-15<0?t=0:e.x+e.width+15>A.width&&(t=A.width-e.width),e.y-15<0?n=0:e.y+e.height+15>A.height&&(n=A.height-e.height),{x:t,y:n}})(e,A);return{x:void 0===t.x?0:t.x-e.x,y:void 0===t.y?0:t.y-e.y}})(s,n),d=((e,...A)=>{const t=A.reduce((e,A)=>({x:0===e.x||0===A.x?e.x+A.x:Math.min(e.x,A.x),y:0===e.y||0===A.y?e.y+A.y:Math.min(e.y,A.y)}));return zt(e,t)})(o,c,u),g={};A.forEach(e=>{g[e.key]=zt(e,d)}),r(g,!1)};function s(){o(null)}return window.addEventListener("mouseup",s),window.addEventListener("touchend",s),window.addEventListener("mousemove",l,{passive:!1}),window.addEventListener("touchmove",l,{passive:!1}),()=>{window.removeEventListener("mousemove",l),window.removeEventListener("touchmove",l),window.removeEventListener("mouseup",s),window.removeEventListener("touchend",s)}},[n,a,r]),Object(i.useCallback)((n,r)=>{if(!r.target.classList.contains("draggable"))return;const a=M.l(r),i=M.m(r);if(t(n))return;const l=A.filter(A=>null!=e[A.key]&&!t(A.key)),s=l.find(e=>e.key===n);if(null==s)throw new Error("Tried to move a node that does not exist: "+n);let c=new Set([s]);if("main"===n){const e=(u=bi,(e,A)=>{const t=new Set,n=A=>{for(const r of e)!t.has(r)&&u(r,A)&&(t.add(r),n(r))};return n(A),t});c=e(l,s)}var u;const d=l.filter(e=>!c.has(e)),g=Array.from(c),p={x:a,y:i},h=(e=>{const A=e.slice(),t=A.pop();if(null==t)throw new Error("boundingBox must be called with at least one node");const n={top:Dt(t),right:Ft(t),bottom:Rt(t),left:Vt(t)};return A.forEach(e=>{n.top=Math.min(n.top,Dt(e)),n.right=Math.max(n.right,Ft(e)),n.bottom=Math.max(n.bottom,Rt(e)),n.left=Math.min(n.left,Vt(e))}),{x:n.left,y:n.top,width:n.right-n.left,height:n.bottom-n.top}})(g);o({boundingBox:h,moving:g,stationary:d,mouseStart:p})},[t,e,A])}function yi({windows:e}){const A=va(HA),t=Ca($t),n=wi(e),r=A.filter(A=>e[A.key]),o=Object(i.useCallback)(e=>{const{currentTarget:A,relatedTarget:n}=e;A===n||A.contains(n)||t(null)},[t]);return Object(a.jsx)(a.Fragment,{children:r.map(A=>Object(a.jsx)("div",{onBlur:o,onMouseDown:e=>{n(A.key,e)},onTouchStart:e=>{n(A.key,e)},style:{position:"absolute",top:0,left:0,transform:`translate(${A.x}px, ${A.y}px)`,touchAction:"none"},children:e[A.key]},A.key))})}var Oi=t(43),Ii=t.n(Oi);function Si(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ki(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Si(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Si(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Ui=e=>"character-"+Ii()(e.toString()).toLowerCase().charCodeAt(0);var vi=i.memo(e=>{let{children:A,className:t}=e,n=D()(e,["children","className"]);return Object(a.jsx)("span",ki(ki({},n),{},{className:`${t||""} character ${Ui(A)}`,children:A}))});t(91);const Ci=()=>Object(a.jsx)(i.Fragment,{children:[1,7,12,20,25].map((e,A)=>Object(a.jsx)(vi,{style:{left:e},className:"background-character",children:" "},A))});var Bi=()=>{const e=va(xA),A=va(vA),t=va(at),n=va(Tt),r=Ca(Sn);let i=null;e!==R.f.STOPPED&&null!=A&&(i=n===R.h.ELAPSED?t:A-t);const o=Object(M.i)(i),l=n===R.h.REMAINING&&e!==R.f.STOPPED;return Object(a.jsxs)("div",{onClick:r,className:Ma()("mini-time","countdown",{blinking:e===R.f.PAUSED}),children:[Object(a.jsx)(Ci,{}),Object(a.jsx)(vi,{style:{left:1},children:l?"-":" "}),Object(a.jsx)(vi,{style:{left:7},children:o.minutesFirstDigit}),Object(a.jsx)(vi,{style:{left:12},children:o.minutesSecondDigit}),Object(a.jsx)(vi,{style:{left:20},children:o.secondsFirstDigit}),Object(a.jsx)(vi,{style:{left:25},children:o.secondsSecondDigit})]})};function xi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Mi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?xi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var Ni=function(e){const[A,t]=Object(i.useState)(!1);return Object(a.jsx)("div",Mi(Mi({},e),{},{className:Ma()(e.className,{clicked:A}),onMouseDown:function(A){t(!0),e.onMouseDown&&e.onMouseDown(A)}}))};function Ti(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Qi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Ti(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ti(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var Li=function(e){const A=Object(i.useRef)(null),[t,n]=Object(i.useState)(!1);Object(i.useEffect)(()=>{if(t)return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)};function e(e){t&&e.target instanceof Element&&t&&A.current&&!A.current.contains(e.target)&&n(!1)}},[t]);const r=Object(i.useMemo)(()=>t?function(e){if(null==e)return{top:0,left:0};const A=e.getBoundingClientRect(),t=window.pageXOffset||document.documentElement.scrollLeft,n=window.pageYOffset||document.documentElement.scrollTop;return{top:A.top+n,left:A.left+t}}(A.current):{top:0,left:0},[t]),{renderMenu:o,children:l,top:s,bottom:c}=e,u=D()(e,["renderMenu","children","top","bottom"]);return Object(a.jsxs)("div",Qi(Qi({},u),{},{children:[Object(a.jsx)("div",{className:"handle",style:{width:"100%",height:"100%"},ref:A,onClick:()=>n(!t),children:l}),Object(a.jsx)(ri,{selected:t,offsetTop:r.top,offsetLeft:r.left,top:s,bottom:c,children:o()})]}))};function ji(e,A,t){const n=A*t,r=n+A;let a=0;for(let A=n;A<r;A++)a+=e[A];return a/A}function Di({renderHeight:e,height:A}){const t=va(WA),n=va(fA)("main"),r=Object(i.useMemo)(()=>function(e,A,t){const n=document.createElement("canvas");n.width=6,n.height=e;const r=A.slice(2,18),a=n.getContext("2d");if(null==a)throw new Error("Could not construct canvas context");const i=16/t;for(let A=0;A<t;A++){const t=15-Math.floor(A*i);a.fillStyle=r[t];const n=e-2*A;a.fillRect(0,n,6,2)}return n}(A,t,e),[t,A,e]);return Object(i.useCallback)((e,a,i,o)=>{if(i=2*Math.ceil(i),o=2*Math.ceil(o),i>0||o>0){const l=A-i,s=6;if(A>0&&e.drawImage(r,0,l,s,A,a,l,s,A),!n){const n=A-o;e.fillStyle=t[23],e.fillRect(a,n,s,2)}}},[r,t,A,n])}function Ri({renderHeight:e,height:A,analyser:t}){const[n]=Object(i.useState)(()=>new Array(20).fill(0)),[r]=Object(i.useState)(()=>new Array(20).fill(0)),a=t.frequencyBinCount,o=Object(i.useMemo)(()=>function(e){const A=new Array(20).fill(0),t=Math.pow(110.25,.05);A[0]=0,A[1]=200;for(let e=2;e<19;e++)A[e]=A[e-1]*t;A[19]=22050;for(let t=0;t<20;t++){const n=Math.floor(A[t]/22050*e);A[t]=n}return A}(a),[a]),l=Object(i.useMemo)(()=>new Uint8Array(a),[a]),s=Di({height:A,renderHeight:e});return Object(i.useCallback)(A=>{t.getByteFrequencyData(l);const a=e/256;for(let e=0;e<19;e++){const t=o[e],i=o[e+1];let c=0;for(let e=t;e<i;e++)c+=l[e];c/=i-t;let u=n[e]-.01*Math.pow(r[e],2);u<c?(u=c,r[e]=0):r[e]+=1,n[e]=u,s(A,8*e,c*a,u*a)}},[t,r,n,l,o,s,e])}var Vi=function({analyser:e}){Object(i.useLayoutEffect)(()=>{e.fftSize=2048},[e.fftSize]);const A=va(WA),t=va($A),n=va(xA),r=va(fA),o=va(xt),l=Ca(la),s=r("main"),c=s?38:76,u=s?5:16,d=2*c,g=2*u,p=Object(i.useMemo)(()=>function(e,A,t,n,r){const a=document.createElement("canvas");a.width=e,a.height=A;const i=a.getContext("2d");if(null==i)throw new Error("Could not construct canvas context");if(i.fillStyle=t,i.fillRect(0,0,e,A),!r){i.fillStyle=n;for(let t=0;t<e;t+=4)for(let e=2;e<A;e+=4)i.fillRect(t,e,2,2)}return a}(d,g,A[0],A[1],Boolean(s)),[A,g,d,s]),h=function({analyser:e,height:A,width:t,renderWidth:n}){const r=va(WA),a=e.fftSize,o=Object(i.useMemo)(()=>new Uint8Array(a),[a]);return Object(i.useCallback)(i=>{e.getByteTimeDomainData(o),i.lineWidth=2,i.strokeStyle=r[18];const l=2*Math.floor(a/t),s=A;i.beginPath();for(let e=0;e<=n;e++){const A=(1-ji(o,l,e)/255)*s,t=2*e;0===t?i.moveTo(t,A):i.lineTo(t,A)}i.stroke()},[e,a,r,o,A,n,t])}({analyser:e,height:g,width:d,renderWidth:c}),f=Ri({analyser:e,height:g,renderHeight:u}),m=Di({height:g,renderHeight:u}),E=Object(i.useCallback)(e=>{if(n===R.f.PLAYING){if(o)return e.drawImage(p,0,0),void Object.entries(o).forEach(([A,t])=>{m(e,Number(A),t,-1)});switch(t){case R.k.OSCILLOSCOPE:e.drawImage(p,0,0),h(e);break;case R.k.BAR:e.drawImage(p,0,0),f(e);break;default:e.clearRect(0,0,d,g)}}},[p,o,g,m,f,h,n,t,d]),[b,w]=Object(i.useState)(null);return Object(i.useLayoutEffect)(()=>{if(null==b)return;const e=b.getContext("2d");if(null==e)return;e.imageSmoothingEnabled=!1;let A=null;const t=()=>{E(e),A=window.requestAnimationFrame(t)};return t(),()=>{null!=A&&window.cancelAnimationFrame(A)}},[b,E]),n===R.f.STOPPED?null:Object(a.jsx)("canvas",{id:"visualizer",ref:w,style:{width:c,height:u},width:d,height:g,onClick:l})};var Fi=Object(i.memo)(()=>{const e=Ca(pn),A=Ca(sn),t=Ca(cn),n=Ca(gn),r=Ca(un);return Object(a.jsxs)("div",{className:"actions",children:[Object(a.jsx)("div",{id:"previous",onClick:e,title:"Previous Track"}),Object(a.jsx)("div",{id:"play",onClick:A,title:"Play"}),Object(a.jsx)("div",{id:"pause",onClick:t,title:"Pause"}),Object(a.jsx)("div",{id:"stop",onClick:r,title:"Stop"}),Object(a.jsx)("div",{id:"next",onClick:n,title:"Next Track"})]})});function Gi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Pi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Gi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function Ki({style:e,className:A,id:t}){const n=va(At),r=Ca(yn),i=Ca(ca),o=Ca(ua);return Object(a.jsx)("input",{id:t,className:A,type:"range",min:"-100",max:"100",step:"1",value:n,style:Pi(Pi({},e),{},{touchAction:"none"}),onChange:e=>r(Number(e.target.value)),onMouseDown:()=>i("balance"),onMouseUp:o,title:"Balance"})}const zi=e=>{const A=Math.abs(e)/100;return 15*Math.floor(27*A)};var Yi=Object(i.memo)(()=>{const e=va(At);return Object(a.jsx)(Ki,{id:"balance",style:{backgroundPosition:`0 -${zi(e)}px`}})});var Ji=Object(i.memo)(()=>{const e=Ca(oa);return Object(a.jsx)(Ni,{id:"close",onClick:e,title:"Close"})});function _i(){return ca("double")}function Hi(){return e=>{e(Ht()),e({type:"UNSET_FOCUS"})}}var qi=Object(i.memo)(()=>{const e=Ca(_i),A=Ca(Hi),t=va(PA);return Object(a.jsxs)("div",{id:"clutter-bar",children:[Object(a.jsx)(Li,{bottom:!0,renderMenu:()=>Object(a.jsx)(hi,{}),children:Object(a.jsx)("div",{id:"button-o"})}),Object(a.jsx)("div",{id:"button-a"}),Object(a.jsx)("div",{id:"button-i"}),Object(a.jsx)("div",{title:"Toggle Doublesize Mode",id:"button-d",className:Ma()({selected:t}),onMouseUp:A,onMouseDown:e}),Object(a.jsx)("div",{id:"button-v"})]})});var Zi=Object(i.memo)(()=>{const e=Ca(Tr);return Object(a.jsx)("div",{id:"eject",onClick:e,title:"Open File(s)"})});function Wi(){return An("equalizer")}var Xi=Object(i.memo)(()=>{const e=Ca(Wi),A=va(pA)("equalizer");return Object(a.jsx)("div",{id:"equalizer-button",className:Ma()({selected:A}),onClick:e,title:"Toggle Graphical Equalizer"})});function $i(){return An("playlist")}var eo=Object(i.memo)(()=>{const e=va(pA)("playlist"),A=Ca($i);return Object(a.jsx)("div",{id:"playlist-button",className:Ma()({selected:e}),onClick:A,title:"Toggle Playlist Editor"})});var Ao=Object(i.memo)(e=>{const A=(""+e.children||"").split("");return Object(a.jsx)(i.Fragment,{children:A.map((e,A)=>Object(a.jsx)(vi,{children:e},A+e))})});var to=Object(i.memo)(()=>{const e=va(gt);return Object(a.jsx)("div",{id:"kbps",children:Object(a.jsx)(Ao,{children:e||""})})});var no=Object(i.memo)(()=>{const e=va(pt);return Object(a.jsx)("div",{id:"khz",children:Object(a.jsx)(Ao,{children:e||""})})});const ro=e=>e.length>=31,ao=e=>ro(e)?`${e} *** ${e}`:e.padEnd(31," ");var io=i.memo(()=>{const e=va(dt),A=va(PA),t=va(Mt),n=Ca(Ea),{handleMouseDown:r,dragOffset:o,dragging:l}=function(){const[e,A]=i.useState(null),[t,n]=i.useState(0);return i.useEffect(()=>{if(null==e)return;const t=e,r=e=>{const A=M.l(e)-t;n(-A)};let a=!1;const i=()=>{a||(document.removeEventListener("mousemove",r),document.removeEventListener("touchmove",r),document.removeEventListener("mouseup",i),document.removeEventListener("touchend",i),A(null),a=!0)};return document.addEventListener("mousemove",r),document.addEventListener("touchmove",r),document.addEventListener("touseup",i),document.addEventListener("touchend",i),i},[e]),{handleMouseDown:i.useCallback(e=>{A(M.l(e))},[]),dragOffset:t,dragging:null!=e}}(),s=((e,A,t)=>{if(!ro(e))return 0;const n=5*A+t,r=5*(e.length+" *** ".length);return(n%(a=r)+a)%a;var a})(e,t,o),c=-s+"px";return function({step:e,dragging:A}){const[t,n]=i.useState(!0);i.useEffect(()=>{if(!1===t)return;const A=setInterval(e,220);return()=>clearInterval(A)},[e,t]),i.useEffect(()=>{if(A)return void n(!1);const e=window.setTimeout(()=>{n(!0)},1e3);return()=>{window.clearTimeout(e)}},[A])}({step:n,dragging:l}),Object(a.jsx)("div",{id:"marquee",className:"text",onMouseDown:r,onTouchStart:r,title:"Song Title",children:Object(a.jsx)("div",{style:{whiteSpace:"nowrap",willChange:"transform",transform:`translateX(${c})`},children:Object(a.jsx)(Ao,{children:ao(e)})},A?"doubled":"not-doubled")})});var oo=Object(i.memo)(()=>{const e=va(rt);return Object(a.jsxs)("div",{className:"mono-stereo",children:[Object(a.jsx)("div",{id:"stereo",className:Ma()({selected:2===e})}),Object(a.jsx)("div",{id:"mono",className:Ma()({selected:1===e})})]})});var lo=Object(i.memo)(()=>{const[e,A]=function(){const e=va(vA),A=va(at),t=e?Math.floor(A)/e*100:0,n=va(ut);return[t,"position"===va(ct)?n:t]}(),t=Ba(),n=Object(i.useCallback)(e=>{t({type:"SEEK_TO_PERCENT_COMPLETE",percent:Number(e.target.value)}),t({type:"UNSET_FOCUS"})},[t]),r=Object(i.useCallback)(e=>{t({type:"SET_FOCUS",input:"position"}),t({type:"SET_SCRUB_POSITION",position:Number(e.target.value)})},[t]);let o="";return e<=33?o="left":e>=66&&(o="right"),Object(a.jsx)("input",{id:"position",className:o,type:"range",min:"0",max:"100",step:"1",style:{touchAction:"none"},value:A,onInput:r,onChange:()=>{},onMouseUp:n,onMouseDown:r,title:"Seeking Bar"})});var so=Object(i.memo)(()=>{const e=va(nt),A=Ca(On);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(ni,{checked:e,label:"Repeat",onClick:A,hotkey:"(R)"}),children:Object(a.jsx)("div",{id:"repeat",className:Ma()({selected:e}),onClick:A,title:"Toggle Repeat"})})});var co=Object(i.memo)(()=>{const e=Ca(Zt);return Object(a.jsx)(Ni,{id:"shade",onMouseDown:e,onDoubleClick:e=>e.stopPropagation(),title:"Toggle Windowshade Mode"})});var uo=Object(i.memo)(()=>{const e=Ca(sa);return Object(a.jsx)(Ni,{id:"minimize",title:"Minimize",onClick:e})});var go=Object(i.memo)(()=>{const e=va(tt),A=Ca(In);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(ni,{checked:e,label:"Shuffle",onClick:A,hotkey:"(S)"}),children:Object(a.jsx)("div",{id:"shuffle",className:Ma()({selected:e}),onClick:A,title:"Toggle Shuffle"})})});var po=Object(i.memo)(()=>{const e=Ca(Sn),A=va(at),t=va(vA)||0,n=va(Tt),r=n===R.h.ELAPSED?A:t-A,i=M.i(r);return Object(a.jsxs)("div",{id:"time",onClick:e,className:"countdown",children:[n===R.h.REMAINING&&Object(a.jsx)("div",{id:"minus-sign"}),Object(a.jsx)("div",{id:"minute-first-digit",className:"digit digit-"+i.minutesFirstDigit}),Object(a.jsx)("div",{id:"minute-second-digit",className:"digit digit-"+i.minutesSecondDigit}),Object(a.jsx)("div",{id:"second-first-digit",className:"digit digit-"+i.secondsFirstDigit}),Object(a.jsx)("div",{id:"second-second-digit",className:"digit digit-"+i.secondsSecondDigit})]})});function ho(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function fo(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ho(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ho(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function mo({id:e,style:A,className:t}){const n=va(et),r=Ca(ca),i=Ca(ua),o=Ca(En);return Object(a.jsx)("input",{id:e,type:"range",min:"0",max:"100",step:"1",value:n,style:fo(fo({},A),{},{touchAction:"none"}),className:t,onChange:e=>o(Number(e.target.value)),onMouseDown:()=>r("volume"),onTouchStart:()=>{r("volume")},onMouseUp:i,onTouchEnd:i,title:"Volume Bar"})}var Eo=Object(i.memo)(()=>{const e=va(et)/100,A={backgroundPosition:`0 -${15*(Math.round(28*e)-1)}px`};return Object(a.jsx)("div",{id:"volume",style:A,children:Object(a.jsx)(mo,{})})});t(93);function bo(e){return jr(e,R.e.PLAY)}var wo=i.memo(({analyser:e,filePickers:A})=>{const t=va(fA)("main"),n=va(xA),r=va(GA),i=va(Qt),o=va(PA),l=va(KA),s=va(Lt),c=Ma()({window:!0,play:n===R.f.PLAYING,stop:n===R.f.STOPPED,pause:n===R.f.PAUSED,selected:r===R.m.MAIN,shade:t,draggable:!0,loading:i,doubled:o,llama:l}),u=Ca(Zt),d=Ca(wn),g=Ca(bo);return Object(a.jsx)(Za,{id:"main-window",windowId:R.m.MAIN,className:c,handleDrop:g,onWheel:d,children:Object(a.jsxs)(Qa,{windowId:R.m.MAIN,children:[Object(a.jsxs)("div",{id:"title-bar",className:"selected draggable",onDoubleClick:u,children:[Object(a.jsx)(Li,{id:"option-context",bottom:!0,renderMenu:()=>Object(a.jsx)(fi,{filePickers:A}),children:Object(a.jsx)(Ni,{id:"option",title:"Winamp Menu"})}),t&&Object(a.jsx)(Bi,{}),Object(a.jsx)(uo,{}),Object(a.jsx)(co,{}),Object(a.jsx)(Ji,{})]}),Object(a.jsxs)("div",{className:"webamp-status",children:[Object(a.jsx)(qi,{}),!s&&Object(a.jsx)("div",{id:"play-pause"}),Object(a.jsx)("div",{id:"work-indicator",className:Ma()({selected:s})}),Object(a.jsx)(po,{})]}),Object(a.jsx)(Vi,{analyser:e}),Object(a.jsxs)("div",{className:"media-info",children:[Object(a.jsx)(io,{}),Object(a.jsx)(to,{}),Object(a.jsx)(no,{}),Object(a.jsx)(oo,{})]}),Object(a.jsx)(Eo,{}),Object(a.jsx)(Yi,{}),Object(a.jsxs)("div",{className:"windows",children:[Object(a.jsx)(Xi,{}),Object(a.jsx)(eo,{})]}),Object(a.jsx)(lo,{}),Object(a.jsx)(Fi,{}),Object(a.jsx)(Zi,{}),Object(a.jsxs)("div",{className:"shuffle-repeat",children:[Object(a.jsx)(go,{}),Object(a.jsx)(so,{})]}),Object(a.jsx)("a",{id:"about",target:"_blank",href:"https://webamp.org/about",title:"About"})]})})});var yo=function({widthOnly:e}){const A=va(mA),t=Ca(en),n=A("playlist");return Object(a.jsx)(Ta,{currentSize:n,id:"playlist-resize-target",setWindowSize:e=>{t("playlist",e)},widthOnly:e})};var Oo=function(){const e=va(GA),A=va(mA)("playlist"),t=va(vA),n=va(LA),r=Ca(Xt),o=Ca(Wt),l=Ca($t),s=A[0]*R.o,c=Object(i.useMemo)(()=>{if(null==n)return"[No file]";const e=(205+s)/R.b;return n.length>e?n.slice(0,e-1)+R.j:n},[s,n]),u=Object(i.useMemo)(()=>null==n?"":Object(M.j)(t),[t,n]);return Object(a.jsx)("div",{id:"playlist-window-shade",className:Ma()("window","draggable",{selected:e===R.m.PLAYLIST}),style:{width:R.p+s+"px"},onMouseDown:()=>l("playlist"),onDoubleClick:o,children:Object(a.jsx)("div",{className:"left",children:Object(a.jsxs)("div",{className:"right draggable",children:[Object(a.jsx)("div",{id:"playlist-shade-track-title",children:Object(a.jsx)(Ao,{children:c})}),Object(a.jsx)("div",{id:"playlist-shade-time",children:Object(a.jsx)(Ao,{children:u})}),Object(a.jsx)(yo,{widthOnly:!0}),Object(a.jsx)("div",{id:"playlist-shade-button",onClick:o}),Object(a.jsx)("div",{id:"playlist-close-button",onClick:()=>r("playlist")})]})})})};var Io=Object(i.memo)((function({children:e}){const{ref:A,hover:t}=Ua();return Object(a.jsx)("li",{ref:A,className:Ma()({hover:t}),children:e})}));var So=Object(i.memo)((function(e){const[A,t]=Object(i.useState)(!1),[n,r]=Object(i.useState)(null),o=Object(i.useCallback)(()=>{setTimeout(()=>{t(!1)},0)},[]);return function(e,A){Object(i.useEffect)(()=>{if(null==e||null==A)return;const t=n=>{const r=n.target;r instanceof Element&&(e.contains(r)||(A(),window.document.removeEventListener("click",t,{capture:!0})))};return window.document.addEventListener("click",t,{capture:!0}),()=>{window.document.removeEventListener("click",t,{capture:!0})}},[e,A])}(n,A?o:null),Object(a.jsxs)("div",{id:e.id,className:Ma()("playlist-menu",{selected:A}),ref:r,onClick:()=>t(e=>!e),children:[Object(a.jsx)("div",{className:"bar"}),A&&Object(a.jsx)("ul",{children:i.Children.map(e.children,(e,A)=>Object(a.jsx)(Io,{children:e},A))})]})}));var ko=()=>{const e=va($e),A=Ca(Yr),t=Ca(zr),n=Ca(Jr);return Object(a.jsxs)(So,{id:"playlist-add-menu",children:[Object(a.jsx)("div",{className:"add-url",onClick:()=>n(e)}),Object(a.jsx)("div",{className:"add-dir",onClick:()=>A(e)}),Object(a.jsx)("div",{className:"add-file",onClick:()=>t(e)})]})};var Uo=()=>{const e=Ca(sr),A=Ca(cr),t=Ca(lr);return Object(a.jsxs)(So,{id:"playlist-remove-menu",children:[Object(a.jsx)("div",{className:"remove-misc",onClick:()=>alert("Not supported in Webamp")}),Object(a.jsx)("div",{className:"remove-all",onClick:A}),Object(a.jsx)("div",{className:"crop",onClick:t}),Object(a.jsx)("div",{className:"remove-selected",onClick:e})]})};function vo(){const e=Ca(wr),A=Ca(yr),t=Ca(Or);return Object(a.jsxs)(So,{id:"playlist-selection-menu",children:[Object(a.jsx)("div",{className:"invert-selection",onClick:e}),Object(a.jsx)("div",{className:"select-zero",onClick:A}),Object(a.jsx)("div",{className:"select-all",onClick:t})]})}function Co(){const e=Ca(ur),A=Ca(dr),t=Ca(gr);return Object(a.jsx)(Li,{style:{width:"100%",height:"100%"},top:!0,renderMenu:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(ni,{label:"Sort list by title",onClick:t}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Reverse list",onClick:e}),Object(a.jsx)(ni,{label:"Randomize list",onClick:A})]}),children:Object(a.jsx)("div",{})})}var Bo=()=>{const e=Ca(Gr);return Object(a.jsx)(Li,{style:{width:"100%",height:"100%"},top:!0,renderMenu:()=>Object(a.jsx)(ni,{onClick:e,label:"Generate HTML playlist"}),children:Object(a.jsx)("div",{})})};var xo=()=>Object(a.jsxs)(So,{id:"playlist-misc-menu",children:[Object(a.jsx)("div",{className:"sort-list",onClick:e=>e.stopPropagation(),children:Object(a.jsx)(Co,{})}),Object(a.jsx)("div",{className:"file-info",onClick:()=>alert("Not supported in Webamp")}),Object(a.jsx)("div",{className:"misc-options",onClick:e=>e.stopPropagation(),children:Object(a.jsx)(Bo,{})})]});function Mo(){const e=Ca(cr),A=(Ca(_r),Ca(Hr));return Object(a.jsxs)(So,{id:"playlist-list-menu",children:[Object(a.jsx)("div",{className:"new-list",onClick:e}),Object(a.jsx)("div",{className:"save-list",onClick:A}),Object(a.jsx)("div",{className:"load-list"})]})}var No=()=>{const e=va(lA),A=Object(i.useMemo)(()=>function(e,A,t){for(;e.length<A;)e+=t;return e}(e,18," "),[e]);return Object(a.jsx)("div",{className:"playlist-running-time-display draggable",children:Object(a.jsx)("div",{children:Object(a.jsx)(Ao,{children:A})})})};var To=()=>{const e=Ca(sn),A=Ca(cn),t=Ca(un),n=Ca(Tr),r=Ca(gn),o=Ca(pn);return Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(No,{}),Object(a.jsxs)("div",{className:"playlist-action-buttons",children:[Object(a.jsx)("div",{className:"playlist-previous-button",onClick:o}),Object(a.jsx)("div",{className:"playlist-play-button",onClick:e}),Object(a.jsx)("div",{className:"playlist-pause-button",onClick:A}),Object(a.jsx)("div",{className:"playlist-stop-button",onClick:t}),Object(a.jsx)("div",{className:"playlist-next-button",onClick:r}),Object(a.jsx)("div",{className:"playlist-eject-button",onClick:n})]}),Object(a.jsx)(Bi,{})]})};var Qo=function({children:e,handleMoveClick:A,index:t,id:n}){const r=va(XA),o=va(nA),l=va(uA),s=o.has(n),c=l===n,u=Ba(),d=Ca(ln),g=Object(i.useCallback)(e=>e.shiftKey?(e.preventDefault(),void u({type:"SHIFT_CLICKED_TRACK",index:t})):e.metaKey||e.ctrlKey?(e.preventDefault(),void u({type:"CTRL_CLICKED_TRACK",index:t})):(s||u({type:"CLICKED_TRACK",index:t}),void A(e)),[u,A,t,s]),p=Object(i.useCallback)(e=>{function r(){d(n)}s||u({type:"CLICKED_TRACK",index:t}),A(e),e.target.addEventListener("touchstart",r),setTimeout(()=>{e.target.removeEventListener("touchstart",r)},250)},[u,A,n,t,d,s]),h={backgroundColor:s?r.selectedbg:void 0,color:c?r.current:void 0};return Object(a.jsx)("div",{className:Ma()("track-cell",{selected:s,current:c}),style:h,onClick:e=>e.stopPropagation(),onMouseDown:g,onTouchStart:p,onContextMenu:e=>e.preventDefault(),onDoubleClick:()=>d(n),children:e})};var Lo=({id:e,paddedTrackNumber:A})=>{const t=va(CA)(e);return Object(a.jsxs)("span",{children:[A,". ",t]})};var jo=function(){const e=va(IA),A=va(SA),t=va(Ze),n=va(DA),r=Ca(yr),o=Ca(br),l=Ca(fr),[s,c]=Object(i.useState)(null),[u,d]=Object(i.useState)(!1),[g,p]=Object(i.useState)(null),h=e=>{d(!0),p(M.m(e))};function f(t){return A.map((A,n)=>Object(a.jsx)(Qo,{id:A,index:e+n,handleMoveClick:h,children:t(A,n)},A))}Object(i.useEffect)(()=>{if(null==s||null==g||!1===u)return;const{top:e,bottom:A,left:t,right:n}=s.getBoundingClientRect();let r=0;const a=a=>{const i=M.l(a),l=M.m(a);if(l<e||l>A||i<t||i>n)return;const s=Math.floor((l-g)/R.i);if(s!==r){o(s-r),r=s}},i=()=>d(!1);return window.addEventListener("mouseup",i),window.addEventListener("mousemove",a),window.addEventListener("touchend",i),window.addEventListener("touchmove",a),()=>{window.removeEventListener("mousemove",a),window.removeEventListener("touchmove",a),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",i)}},[u]);const m=n.toString().length,E=A=>(A+1+e).toString().padStart(m," ");return Object(i.useEffect)(()=>{if(null!=s)return s.addEventListener("wheel",l,{passive:!1}),()=>{s.removeEventListener("wheel",l)}},[s,l]),Object(a.jsxs)("div",{ref:c,className:"playlist-tracks",style:{height:"100%",userSelect:"none"},onClick:r,children:[Object(a.jsx)("div",{className:"playlist-track-titles",children:f((e,A)=>Object(a.jsx)(Lo,{id:e,paddedTrackNumber:E(A)}))}),Object(a.jsx)("div",{className:"playlist-track-durations",children:f(e=>M.j(t[e].duration))})]})};function Do({value:e,height:A,width:t,handle:n,handleHeight:r,onBeforeChange:o,onChange:l,onAfterChange:s,disabled:c}){const u=Object(i.useRef)(null),d=Object(i.useRef)(null);function g({target:e,clientY:A,touch:t}){const n=u.current,r=d.current;if(null==n||null==r)return null;const a=n.getBoundingClientRect(),i=r.getBoundingClientRect(),{top:c,height:g}=a,{top:p,height:h}=i,f=c+(r.contains(e)?A-p:h/2),m=g-h;function E(e){const A=e-f;l(M.d(A/m,0,1))}if(t){const e=e=>{e.cancelable&&e.preventDefault(),E(e.touches[0].clientY)},A=()=>{null!=s&&s(),document.removeEventListener("touchmove",e),document.removeEventListener("touchend",A)};document.addEventListener("touchmove",e,{passive:!1}),document.addEventListener("touchend",A)}else{const e=e=>{e.preventDefault(),E(e.clientY)},A=()=>{null!=s&&s(),document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",A)};document.addEventListener("mousemove",e),document.addEventListener("mouseup",A)}null!=o&&o(),E(A)}const p=Math.floor((A-r)*e);return Object(a.jsx)("div",{style:{height:A,width:t},onMouseDown:c?void 0:function(e){e.preventDefault(),g({target:e.target,clientY:e.clientY,touch:!1})},onTouchStart:c?void 0:function(e){g({target:e.target,clientY:e.touches[0].clientY,touch:!0})},ref:u,children:Object(a.jsx)("div",{style:{transform:`translateY(${p}px)`},ref:d,children:n})})}const Ro=()=>Object(a.jsx)("div",{className:"playlist-scrollbar-handle",style:{height:18}});function Vo(){const e=va(JA)(R.m.PLAYLIST).height,A=va(OA),t=va(kA),n=Ca(pr);return Object(a.jsx)("div",{className:"playlist-scrollbar",style:{marginLeft:5},children:Object(a.jsx)(Do,{height:e-58,handleHeight:18,width:8,value:A/100,onChange:e=>n(100*e),handle:Object(a.jsx)(Ro,{}),disabled:t})})}t(95);function Fo(e){return e.playlist.trackOrder.length-1}var Go=function({analyser:e}){const A=va(IA),t=va(mA),n=va(GA),r=va(fA),o=va(pA),l=va(Fo),s=va(XA),c=va(JA),u=n===R.m.PLAYLIST,d=Boolean(r(R.m.PLAYLIST)),g=t(R.m.PLAYLIST),p=c(R.m.PLAYLIST),h=Ca(Xt),f=Ca(Wt),m=Ca(mr),E=Ca(Er),b=Ca(wn),w=Ca(jr),y=g[0]>2,O=!o(R.m.MAIN),I=Object(i.useCallback)((e,t)=>{const n=e.clientY-t.y,r=Object(M.d)(A+Math.round((n-23)/R.i),0,l+1);w(e,R.e.NONE,r)},[w,l,A]);if(d)return Object(a.jsx)(Oo,{});const S={color:s.normal,backgroundColor:s.normalbg,fontFamily:s.font+", Arial, sans-serif",height:p.height+"px",width:p.width+"px"},k=Ma()("window","draggable",{selected:u}),U=g[0]%2==0;return Object(a.jsx)(Qa,{windowId:R.m.PLAYLIST,children:Object(a.jsxs)(Za,{id:"playlist-window",windowId:R.m.PLAYLIST,className:k,style:S,handleDrop:I,onWheel:b,children:[Object(a.jsxs)("div",{className:"playlist-top draggable",onDoubleClick:f,children:[Object(a.jsx)("div",{className:"playlist-top-left draggable"}),U&&Object(a.jsx)("div",{className:"playlist-top-left-spacer draggable"}),Object(a.jsx)("div",{className:"playlist-top-left-fill draggable"}),Object(a.jsx)("div",{className:"playlist-top-title draggable"}),U&&Object(a.jsx)("div",{className:"playlist-top-right-spacer draggable"}),Object(a.jsx)("div",{className:"playlist-top-right-fill draggable"}),Object(a.jsxs)("div",{className:"playlist-top-right draggable",children:[Object(a.jsx)("div",{id:"playlist-shade-button",onClick:f}),Object(a.jsx)("div",{id:"playlist-close-button",onClick:()=>h(R.m.PLAYLIST)})]})]}),Object(a.jsxs)("div",{className:"playlist-middle draggable",children:[Object(a.jsx)("div",{className:"playlist-middle-left draggable"}),Object(a.jsx)("div",{className:"playlist-middle-center",children:Object(a.jsx)(jo,{})}),Object(a.jsx)("div",{className:"playlist-middle-right draggable",children:Object(a.jsx)(Vo,{})})]}),Object(a.jsxs)("div",{className:"playlist-bottom draggable",children:[Object(a.jsxs)("div",{className:"playlist-bottom-left draggable",children:[Object(a.jsx)(ko,{}),Object(a.jsx)(Uo,{}),Object(a.jsx)(vo,{}),Object(a.jsx)(xo,{})]}),Object(a.jsx)("div",{className:"playlist-bottom-center draggable"}),Object(a.jsxs)("div",{className:"playlist-bottom-right draggable",children:[y&&Object(a.jsx)("div",{className:"playlist-visualizer",children:O&&Object(a.jsx)("div",{className:"visualizer-wrapper",children:Object(a.jsx)(Vi,{analyser:e})})}),Object(a.jsx)(To,{}),Object(a.jsx)(Mo,{}),Object(a.jsx)("div",{id:"playlist-scroll-up-button",onClick:m}),Object(a.jsx)("div",{id:"playlist-scroll-down-button",onClick:E}),Object(a.jsx)(yo,{})]})]})]})})};const Po=()=>Object(a.jsx)("div",{style:{width:11,height:11,marginLeft:1},className:"slider-handle"});function Ko({id:e,onChange:A,band:t}){const n=va(He)[t],r=Object(i.useMemo)(()=>{const{x:e,y:A}={x:(t=(e=>{const A=e/100;return Math.round(27*A)})(n))%14,y:Math.floor(t/14)};var t;return`-${15*e}px -${65*A}px`},[n]),o=Ca(da),l=Ca(ua);return Object(a.jsx)("div",{id:e,className:"band",style:{backgroundPosition:r,height:63},children:Object(a.jsx)(Do,{height:62,width:14,handleHeight:11,value:1-n/100,onBeforeChange:()=>o(t),onChange:e=>A(100*(1-e)),onAfterChange:l,handle:Object(a.jsx)(Po,{})})})}var zo=()=>{const e=Ca(Nn),A=va(it);return Object(a.jsx)("div",{id:"on",className:Ma()({selected:A}),onClick:e})};var Yo=Object(i.memo)(()=>{const e=va(e=>e.equalizer.auto),A=Ca(Tn);return Object(a.jsx)("div",{id:"auto",className:Ma()({selected:e}),onClick:A})});function Jo(e,A){const t=function(e,A){const t=e.map(()=>0),n=e.length-1,r=function(e,A){const t=[];for(let n=0;n<e;n++){t.push([]);for(let e=0;e<A;e++)t[n].push(0)}return t}(n+1,n+2);for(let t=1;t<n;t++)r[t][t-1]=1/(e[t]-e[t-1]),r[t][t]=2*(1/(e[t]-e[t-1])+1/(e[t+1]-e[t])),r[t][t+1]=1/(e[t+1]-e[t]),r[t][n+1]=3*((A[t]-A[t-1])/((e[t]-e[t-1])*(e[t]-e[t-1]))+(A[t+1]-A[t])/((e[t+1]-e[t])*(e[t+1]-e[t])));return r[0][0]=2/(e[1]-e[0]),r[0][1]=1/(e[1]-e[0]),r[0][n+1]=3*(A[1]-A[0])/((e[1]-e[0])*(e[1]-e[0])),r[n][n-1]=1/(e[n]-e[n-1]),r[n][n]=2/(e[n]-e[n-1]),r[n][n+1]=3*(A[n]-A[n-1])/((e[n]-e[n-1])*(e[n]-e[n-1])),function(e,A){const t=e.length;for(let A=0;A<t;A++){let n=0,r=Number.NEGATIVE_INFINITY;for(let a=A;a<t;a++)e[a][A]>r&&(n=a,r=e[a][A]);_o(e,A,n);for(let n=A+1;n<t;n++){for(let r=A+1;r<t+1;r++)e[n][r]=e[n][r]-e[A][r]*(e[n][A]/e[A][A]);e[n][A]=0}}for(let n=t-1;n>=0;n--){const r=e[n][t]/e[n][n];A[n]=r;for(let A=n-1;A>=0;A--)e[A][t]-=e[A][n]*r,e[A][n]=0}return A}(r,t)}(e,A),n=e[e.length-1],r=[];let a=1;for(let i=0;i<=n;i++){for(;e[a]<i;)a++;const n=(i-e[a-1])/(e[a]-e[a-1]),o=t[a-1]*(e[a]-e[a-1])-(A[a]-A[a-1]),l=-t[a]*(e[a]-e[a-1])+(A[a]-A[a-1]),s=(1-n)*A[a-1]+n*A[a]+n*(1-n)*(o*(1-n)+l*n);r.push(s)}return r}function _o(e,A,t){const n=e[A];e[A]=e[t],e[t]=n}var Ho=function(){const e=va(He),A=Sa(va(Ct)),[t,n]=Object(i.useState)(null),r=Object(i.useMemo)(()=>{var e;return null!==(e=null==t?void 0:t.getContext("2d"))&&void 0!==e?e:null},[t]),o=function(e){const A=Sa(va(Bt));return Object(i.useMemo)(()=>null==e||null==A?null:e.createPattern(A,"repeat-x"),[e,A])}(r);return Object(i.useLayoutEffect)(()=>{if(null==r||null==t||null==A||null==o)return;const n=Number(t.width),a=Number(t.height);r.clearRect(0,0,n,a),function({colorPattern:e,sliders:A,canvasCtx:t,preampLineImage:n}){const r=Object(M.x)(A.preamp/100,0,18);t.drawImage(n,0,r,n.width,n.height);const a=R.a.map(e=>A[e]);t.fillStyle=e;const i=[],o=[];a.forEach((e,A)=>{const t=(100-e)/100;i.push(12*A),o.push(Object(M.x)(t,0,18))});const l=Jo(i,o),s=i[i.length-1];let c=o[0];for(let e=0;e<=s;e++){const A=Object(M.d)(Math.round(l[e]),0,18),n=Math.min(A,c),r=1+Math.abs(c-A);t.fillRect(2+e,n,1,r),c=A}}({colorPattern:o,sliders:e,canvasCtx:r,preampLineImage:A})},[r,t,o,A,e]),Object(a.jsx)("canvas",{id:"eqGraph",ref:n,width:113,height:19})},qo=t(44);var Zo=()=>{const e=Ca(Nr),A=Ca(Fr),t=Ca(Vr);return Object(a.jsx)(Li,{top:!0,id:"presets-context",renderMenu:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsxs)(Ai,{label:"Load",children:[qo.presets.map(e=>Object(a.jsx)(ni,{onClick:()=>t(e),label:e.name},e.name)),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:e,label:"From Eqf..."})]}),Object(a.jsx)(ni,{onClick:A,label:"Save"})]}),children:Object(a.jsx)("div",{id:"presets"})})};function Wo(){const e=va(GA)===R.m.EQUALIZER,A=Ca(Xt),t=Ca(qt);return Object(a.jsxs)(Ni,{id:"eq-buttons",children:[Object(a.jsx)("div",{id:"equalizer-shade",onClick:t}),Object(a.jsx)("div",{id:"equalizer-close",onClick:()=>A(R.m.EQUALIZER)})]},e?"selected":"unselected")}var Xo=()=>{const e=va(et),A=va(At),t=Ca(qt),n=["left","center","right"],r=Object(M.z)(0,100,e,n),i=Object(M.z)(-100,100,A,n);return Object(a.jsxs)("div",{className:"draggable",onDoubleClick:t,style:{width:"100%",height:"100%"},children:[Object(a.jsx)(Wo,{}),Object(a.jsx)(mo,{id:"equalizer-volume",className:r}),Object(a.jsx)(Ki,{id:"equalizer-balance",className:i})]})};t(97);var $o=()=>{const e=va(PA),A=va(GA),t=va(fA),n=A===R.m.EQUALIZER,r=t(R.m.EQUALIZER),i=Ca(Mn),o=Ca(xn),l=Ca(Bn),s=Ca(Cn),c=Ca(Un),u=Ca(qt),d=Ma()({selected:n,doubled:e,shade:r,window:!0,draggable:!0});return Object(a.jsx)("div",{id:"equalizer-window",className:d,children:Object(a.jsx)(Qa,{windowId:R.m.EQUALIZER,children:r?Object(a.jsx)(Xo,{}):Object(a.jsxs)("div",{children:[Object(a.jsx)("div",{className:"equalizer-top title-bar draggable",onDoubleClick:u,children:Object(a.jsx)(Wo,{})}),Object(a.jsx)(zo,{}),Object(a.jsx)(Yo,{}),Object(a.jsx)(Ho,{}),Object(a.jsx)(Zo,{}),Object(a.jsx)(Ko,{id:"preamp",band:"preamp",onChange:i}),Object(a.jsx)("div",{id:"plus12db",onClick:s}),Object(a.jsx)("div",{id:"zerodb",onClick:l}),Object(a.jsx)("div",{id:"minus12db",onClick:o}),R.a.map(e=>{return Object(a.jsx)(Ko,{id:(A=e,"band-"+A),band:e,onChange:A=>c(e,A)},e);var A})]})})})};const el={MAIN_BALANCE_BACKGROUND:["#balance"],MAIN_BALANCE_THUMB:["#balance::-webkit-slider-thumb","#balance::-moz-range-thumb"],MAIN_BALANCE_THUMB_ACTIVE:["#balance:active::-webkit-slider-thumb","#balance:active::-moz-range-thumb"],MAIN_PREVIOUS_BUTTON:[".actions #previous"],MAIN_PREVIOUS_BUTTON_ACTIVE:[".actions #previous:active"],MAIN_PLAY_BUTTON:[".actions #play"],MAIN_PLAY_BUTTON_ACTIVE:[".actions #play:active"],MAIN_PAUSE_BUTTON:[".actions #pause"],MAIN_PAUSE_BUTTON_ACTIVE:[".actions #pause:active"],MAIN_STOP_BUTTON:[".actions #stop"],MAIN_STOP_BUTTON_ACTIVE:[".actions #stop:active"],MAIN_NEXT_BUTTON:[".actions #next"],MAIN_NEXT_BUTTON_ACTIVE:[".actions #next:active"],MAIN_EJECT_BUTTON:["#eject"],MAIN_EJECT_BUTTON_ACTIVE:["#eject:active"],MAIN_WINDOW_BACKGROUND:["#main-window"],MAIN_STEREO:[".media-info #stereo",".stop .media-info #stereo.selected"],MAIN_STEREO_SELECTED:[".media-info #stereo.selected"],MAIN_MONO:[".media-info #mono",".stop .media-info #mono.selected"],MAIN_MONO_SELECTED:[".media-info #mono.selected"],NO_MINUS_SIGN:["#time #minus-sign"],MINUS_SIGN:["#time.countdown #minus-sign"],DIGIT_0:[".digit-0"],DIGIT_1:[".digit-1"],DIGIT_2:[".digit-2"],DIGIT_3:[".digit-3"],DIGIT_4:[".digit-4"],DIGIT_5:[".digit-5"],DIGIT_6:[".digit-6"],DIGIT_7:[".digit-7"],DIGIT_8:[".digit-8"],DIGIT_9:[".digit-9"],NO_MINUS_SIGN_EX:["#time #minus-sign"],MINUS_SIGN_EX:["#time.countdown #minus-sign"],DIGIT_0_EX:[".digit-0"],DIGIT_1_EX:[".digit-1"],DIGIT_2_EX:[".digit-2"],DIGIT_3_EX:[".digit-3"],DIGIT_4_EX:[".digit-4"],DIGIT_5_EX:[".digit-5"],DIGIT_6_EX:[".digit-6"],DIGIT_7_EX:[".digit-7"],DIGIT_8_EX:[".digit-8"],DIGIT_9_EX:[".digit-9"],MAIN_PLAYING_INDICATOR:[".play #play-pause"],MAIN_PAUSED_INDICATOR:[".pause #play-pause"],MAIN_STOPPED_INDICATOR:[".stop #play-pause"],MAIN_NOT_WORKING_INDICATOR:["#work-indicator"],MAIN_WORKING_INDICATOR:["#work-indicator.selected"],PLAYLIST_TOP_TILE:[".playlist-top-left-fill",".playlist-top-left-spacer",".playlist-top-right-fill",".playlist-top-right-spacer"],PLAYLIST_TOP_LEFT_CORNER:[".playlist-top-left"],PLAYLIST_TITLE_BAR:[".playlist-top-title"],PLAYLIST_TOP_RIGHT_CORNER:[".playlist-top-right"],PLAYLIST_TOP_TILE_SELECTED:[".selected .playlist-top-left-fill",".selected .playlist-top-left-spacer",".selected .playlist-top-right-fill",".selected .playlist-top-right-spacer"],PLAYLIST_TOP_LEFT_SELECTED:[".selected .playlist-top-left"],PLAYLIST_TITLE_BAR_SELECTED:[".selected .playlist-top-title"],PLAYLIST_TOP_RIGHT_CORNER_SELECTED:[".selected .playlist-top-right"],PLAYLIST_LEFT_TILE:[".playlist-middle-left"],PLAYLIST_RIGHT_TILE:[".playlist-middle-right"],PLAYLIST_SCROLL_HANDLE:[".playlist-scrollbar-handle"],PLAYLIST_SCROLL_HANDLE_SELECTED:[".playlist-middle-right:active .playlist-scrollbar-handle"],PLAYLIST_BOTTOM_TILE:[".playlist-bottom"],PLAYLIST_BOTTOM_LEFT_CORNER:[".playlist-bottom-left"],PLAYLIST_BOTTOM_RIGHT_CORNER:[".playlist-bottom-right"],PLAYLIST_VISUALIZER_BACKGROUND:[".playlist-visualizer"],PLAYLIST_SHADE_BACKGROUND:["#playlist-window-shade"],PLAYLIST_SHADE_BACKGROUND_LEFT:["#playlist-window-shade .left"],PLAYLIST_SHADE_BACKGROUND_RIGHT:["#playlist-window-shade .right"],PLAYLIST_SHADE_BACKGROUND_RIGHT_SELECTED:["#playlist-window-shade.selected .right"],PLAYLIST_ADD_MENU_BAR:["#playlist-add-menu.selected .bar"],PLAYLIST_ADD_URL:["#playlist-add-menu .add-url"],PLAYLIST_ADD_URL_SELECTED:["#playlist-add-menu .hover .add-url"],PLAYLIST_ADD_DIR:["#playlist-add-menu .add-dir"],PLAYLIST_ADD_DIR_SELECTED:["#playlist-add-menu .hover .add-dir"],PLAYLIST_ADD_FILE:["#playlist-add-menu .add-file"],PLAYLIST_ADD_FILE_SELECTED:["#playlist-add-menu .hover .add-file"],PLAYLIST_REMOVE_MENU_BAR:["#playlist-remove-menu.selected .bar"],PLAYLIST_REMOVE_ALL:["#playlist-remove-menu .remove-all"],PLAYLIST_REMOVE_ALL_SELECTED:["#playlist-remove-menu .hover .remove-all"],PLAYLIST_CROP:["#playlist-remove-menu .crop"],PLAYLIST_CROP_SELECTED:["#playlist-remove-menu .hover .crop"],PLAYLIST_REMOVE_SELECTED:["#playlist-remove-menu .remove-selected"],PLAYLIST_REMOVE_SELECTED_SELECTED:["#playlist-remove-menu .hover .remove-selected"],PLAYLIST_REMOVE_MISC:["#playlist-remove-menu .remove-misc"],PLAYLIST_REMOVE_MISC_SELECTED:["#playlist-remove-menu .hover .remove-misc"],PLAYLIST_SELECT_MENU_BAR:["#playlist-selection-menu.selected .bar"],PLAYLIST_INVERT_SELECTION:["#playlist-selection-menu .invert-selection"],PLAYLIST_INVERT_SELECTION_SELECTED:["#playlist-selection-menu .hover .invert-selection"],PLAYLIST_SELECT_ZERO:["#playlist-selection-menu .select-zero"],PLAYLIST_SELECT_ZERO_SELECTED:["#playlist-selection-menu .hover .select-zero"],PLAYLIST_SELECT_ALL:["#playlist-selection-menu .select-all"],PLAYLIST_SELECT_ALL_SELECTED:["#playlist-selection-menu .hover .select-all"],PLAYLIST_CLOSE_SELECTED:["#playlist-close-button:active"],PLAYLIST_COLLAPSE_SELECTED:["#playlist-window #playlist-shade-button:active"],PLAYLIST_EXPAND_SELECTED:["#playlist-window-shade #playlist-shade-button:active"],PLAYLIST_MISC_MENU_BAR:["#playlist-misc-menu.selected .bar"],PLAYLIST_MISC_OPTIONS:["#playlist-misc-menu .misc-options"],PLAYLIST_MISC_OPTIONS_SELECTED:["#playlist-misc-menu .hover .misc-options"],PLAYLIST_FILE_INFO:["#playlist-misc-menu .file-info"],PLAYLIST_FILE_INFO_SELECTED:["#playlist-misc-menu .hover .file-info"],PLAYLIST_SORT_LIST:["#playlist-misc-menu .sort-list"],PLAYLIST_SORT_LIST_SELECTED:["#playlist-misc-menu .hover .sort-list"],PLAYLIST_LIST_BAR:["#playlist-list-menu.selected .bar"],PLAYLIST_NEW_LIST:["#playlist-list-menu .new-list"],PLAYLIST_NEW_LIST_SELECTED:["#playlist-list-menu .hover .new-list"],PLAYLIST_LOAD_LIST:["#playlist-list-menu .load-list"],PLAYLIST_LOAD_LIST_SELECTED:["#playlist-list-menu .hover .load-list"],PLAYLIST_SAVE_LIST:["#playlist-list-menu .save-list"],PLAYLIST_SAVE_LIST_SELECTED:["#playlist-list-menu .hover .save-list"],EQ_WINDOW_BACKGROUND:["#equalizer-window:not(.shade)"],EQ_TITLE_BAR:[".equalizer-top"],EQ_TITLE_BAR_SELECTED:[".selected .equalizer-top"],EQ_SLIDER_BACKGROUND:[".band"],EQ_SLIDER_THUMB:[".band .slider-handle"],EQ_SLIDER_THUMB_SELECTED:[".band:active .slider-handle"],EQ_ON_BUTTON:["#on"],EQ_ON_BUTTON_DEPRESSED:["#on:active"],EQ_ON_BUTTON_SELECTED:["#on.selected"],EQ_ON_BUTTON_SELECTED_DEPRESSED:["#on.selected:active"],EQ_AUTO_BUTTON:["#auto"],EQ_AUTO_BUTTON_DEPRESSED:["#auto:active"],EQ_AUTO_BUTTON_SELECTED:["#auto.selected"],EQ_AUTO_BUTTON_SELECTED_DEPRESSED:["#auto.selected:active"],EQ_GRAPH_BACKGROUND:["#eqGraph"],EQ_PRESETS_BUTTON:["#presets"],EQ_PRESETS_BUTTON_SELECTED:["#presets:active"],EQ_PREAMP_LINE:["#preamp-line"],EQ_SHADE_BACKGROUND:["#equalizer-window.shade"],EQ_SHADE_BACKGROUND_SELECTED:["#equalizer-window.shade.selected"],EQ_SHADE_VOLUME_SLIDER_LEFT:["#equalizer-volume.left::-webkit-slider-thumb","#equalizer-volume.left::-moz-range-thumb"],EQ_SHADE_VOLUME_SLIDER_CENTER:["#equalizer-volume.center::-webkit-slider-thumb","#equalizer-volume.center::-moz-range-thumb"],EQ_SHADE_VOLUME_SLIDER_RIGHT:["#equalizer-volume.right::-webkit-slider-thumb","#equalizer-volume.right::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_LEFT:["#equalizer-balance.left::-webkit-slider-thumb","#equalizer-balance.left::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_CENTER:["#equalizer-balance.center::-webkit-slider-thumb","#equalizer-balance.center::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_RIGHT:["#equalizer-balance.right::-webkit-slider-thumb","#equalizer-balance.right::-moz-range-thumb"],EQ_MAXIMIZE_BUTTON_ACTIVE:["#equalizer-shade:active"],EQ_MINIMIZE_BUTTON_ACTIVE:["#equalizer-window.shade #equalizer-shade:active"],EQ_CLOSE_BUTTON:["#equalizer-window.selected #eq-buttons.clicked #equalizer-close"],EQ_CLOSE_BUTTON_ACTIVE:["#equalizer-window.selected #eq-buttons.clicked #equalizer-close:active"],EQ_SHADE_CLOSE_BUTTON:["#equalizer-window.shade.selected #eq-buttons.clicked #equalizer-close"],EQ_SHADE_CLOSE_BUTTON_ACTIVE:["#equalizer-window.shade.selected #eq-buttons.clicked #equalizer-close:active"],MAIN_POSITION_SLIDER_BACKGROUND:["#position"],MAIN_POSITION_SLIDER_THUMB:["#position::-webkit-slider-thumb","#position::-moz-range-thumb"],MAIN_POSITION_SLIDER_THUMB_SELECTED:["#position:active::-webkit-slider-thumb","#position:active::-moz-range-thumb"],MAIN_SHUFFLE_BUTTON:["#shuffle"],MAIN_SHUFFLE_BUTTON_DEPRESSED:["#shuffle:active"],MAIN_SHUFFLE_BUTTON_SELECTED:["#shuffle.selected"],MAIN_SHUFFLE_BUTTON_SELECTED_DEPRESSED:["#shuffle.selected:active"],MAIN_REPEAT_BUTTON:["#repeat"],MAIN_REPEAT_BUTTON_DEPRESSED:["#repeat:active"],MAIN_REPEAT_BUTTON_SELECTED:["#repeat.selected"],MAIN_REPEAT_BUTTON_SELECTED_DEPRESSED:["#repeat.selected:active"],MAIN_EQ_BUTTON:["#equalizer-button"],MAIN_EQ_BUTTON_SELECTED:["#equalizer-button.selected"],MAIN_EQ_BUTTON_DEPRESSED:["#equalizer-button:active"],MAIN_EQ_BUTTON_DEPRESSED_SELECTED:["#equalizer-button.selected:active"],MAIN_PLAYLIST_BUTTON:["#playlist-button"],MAIN_PLAYLIST_BUTTON_SELECTED:["#playlist-button.selected"],MAIN_PLAYLIST_BUTTON_DEPRESSED:["#playlist-button:active"],MAIN_PLAYLIST_BUTTON_DEPRESSED_SELECTED:["#playlist-button.selected:active"],MAIN_TITLE_BAR:["#title-bar"],MAIN_TITLE_BAR_SELECTED:[".selected #title-bar"],MAIN_EASTER_EGG_TITLE_BAR:[".llama #title-bar"],MAIN_EASTER_EGG_TITLE_BAR_SELECTED:[".llama.selected #title-bar"],MAIN_OPTIONS_BUTTON:[".selected #title-bar #option.clicked"],MAIN_OPTIONS_BUTTON_DEPRESSED:[".selected #title-bar #option:active",".selected #title-bar #option.selected"],MAIN_MINIMIZE_BUTTON:[".selected #title-bar #minimize.clicked"],MAIN_MINIMIZE_BUTTON_DEPRESSED:[".selected #title-bar #minimize:active"],MAIN_SHADE_BUTTON:[".selected #title-bar #shade.clicked"],MAIN_SHADE_BUTTON_DEPRESSED:[".selected #title-bar #shade:active"],MAIN_CLOSE_BUTTON:[".selected #title-bar #close.clicked"],MAIN_CLOSE_BUTTON_DEPRESSED:[".selected #title-bar #close:active"],MAIN_CLUTTER_BAR_BACKGROUND:["#clutter-bar"],MAIN_CLUTTER_BAR_BACKGROUND_DISABLED:["#clutter-bar.disabled"],MAIN_CLUTTER_BAR_BUTTON_O_SELECTED:["#button-o:active","#button-0.selected"],MAIN_CLUTTER_BAR_BUTTON_A_SELECTED:["#button-a:active","#button-a.selected"],MAIN_CLUTTER_BAR_BUTTON_I_SELECTED:["#button-i:active","#button-i.selected"],MAIN_CLUTTER_BAR_BUTTON_D_SELECTED:["#button-d:active","#button-d.selected"],MAIN_CLUTTER_BAR_BUTTON_V_SELECTED:["#button-v:active","#button-v.selected"],MAIN_SHADE_BACKGROUND:[".shade #title-bar"],MAIN_SHADE_BACKGROUND_SELECTED:[".shade.selected #title-bar"],MAIN_SHADE_BUTTON_SELECTED:[".shade.selected #title-bar #shade"],MAIN_SHADE_BUTTON_SELECTED_DEPRESSED:[".shade #title-bar #shade:active"],MAIN_SHADE_POSITION_BACKGROUND:[".shade #position"],MAIN_SHADE_POSITION_THUMB:[".shade #position::-moz-range-thumb",".shade #position::-webkit-slider-thumb"],MAIN_SHADE_POSITION_THUMB_LEFT:[".shade #position.left::-moz-range-thumb",".shade #position.left::-webkit-slider-thumb"],MAIN_SHADE_POSITION_THUMB_RIGHT:[".shade #position.right::-moz-range-thumb",".shade #position.right::-webkit-slider-thumb"],MAIN_VOLUME_BACKGROUND:["#volume"],MAIN_VOLUME_THUMB:["#volume input::-webkit-slider-thumb","#volume input::-moz-range-thumb"],MAIN_VOLUME_THUMB_SELECTED:["#volume input:active::-webkit-slider-thumb","#volume input:active::-moz-range-thumb"],GEN_TOP_CENTER_FILL:[".gen-window .gen-top"],GEN_TOP_LEFT:[".gen-window .gen-top-left"],GEN_TOP_LEFT_END:[".gen-window .gen-top-left-end"],GEN_TOP_RIGHT:[".gen-window .gen-top-right"],GEN_TOP_RIGHT_END:[".gen-window .gen-top-right-end"],GEN_TOP_LEFT_RIGHT_FILL:[".gen-window .gen-top-left-fill",".gen-window .gen-top-right-fill"],GEN_TOP_CENTER_FILL_SELECTED:[".gen-window.selected .gen-top"],GEN_TOP_LEFT_SELECTED:[".gen-window.selected .gen-top-left"],GEN_TOP_LEFT_END_SELECTED:[".gen-window.selected .gen-top-left-end"],GEN_TOP_RIGHT_SELECTED:[".gen-window.selected .gen-top-right"],GEN_TOP_RIGHT_END_SELECTED:[".gen-window.selected .gen-top-right-end"],GEN_TOP_LEFT_RIGHT_FILL_SELECTED:[".gen-window.selected .gen-top-left-fill",".gen-window.selected .gen-top-right-fill"],GEN_BOTTOM_LEFT:[".gen-window .gen-bottom-left"],GEN_BOTTOM_RIGHT:[".gen-window .gen-bottom-right"],GEN_BOTTOM_FILL:[".gen-window .gen-bottom"],GEN_MIDDLE_LEFT:[".gen-window .gen-middle-left"],GEN_MIDDLE_LEFT_BOTTOM:[".gen-window .gen-middle-left-bottom"],GEN_MIDDLE_RIGHT:[".gen-window .gen-middle-right"],GEN_MIDDLE_RIGHT_BOTTOM:[".gen-window .gen-middle-right-bottom"],GEN_CLOSE_SELECTED:[".gen-window .gen-close:active"]};Object.keys(Ln).forEach(e=>{const A=jn(e),t=e.charCodeAt(0);el[A]=[".character-"+t]}),R.d.forEach(e=>{el["GEN_TEXT_"+e]=[".gen-text-"+e.toLowerCase()],el["GEN_TEXT_SELECTED_"+e]=[".gen-window.selected .gen-text-"+e.toLowerCase()]});const Al={CLOSE:["#title-bar #close"],EQSLID:["#equalizer-window .band"],EQNORMAL:["#equalizer-window"],EQCLOSE:["#equalizer-window #equalizer-close"],EQTITLE:["#equalizer-window .title-bar","#equalizer-window.shade","#equalizer-window.shade input"],MAINMENU:["#main-window #option","#webamp-context-menu .context-menu"],MIN:["#main-window #minimize"],NORMAL:[".window",".window input","#main-window","#main-window.shade #title-bar"],MMENU:["#main-window.shade #option"],PNORMAL:["#playlist-window"],PTBAR:["#playlist-window .playlist-top"],PCLOSE:["#playlist-window #playlist-close-button","#playlist-window-shade #playlist-close-button"],PWINBUT:["#playlist-window #playlist-shade-button","#playlist-window-shade #playlist-shade-button"],POSBAR:["#main-window #position"],PSIZE:["#playlist-window #playlist-resize-target"],PWSSIZE:["#playlist-window-shade #playlist-resize-target"],PWSNORM:["#playlist-window-shade"],PVSCROLL:["#playlist-window .playlist-scrollbar"],SONGNAME:["#main-window #marquee"],TITLEBAR:["#main-window #title-bar"],VOLBAL:["#volume","#volume input","#balance"],WINBUT:["#main-window #shade"],WSNORMAL:["#main-window.shade #title-bar"],WSPOSBAR:["#main-window.shade #position"]};function tl({children:e,id:A}){const t=Object(i.useMemo)(()=>{const e=document.createElement("style");return e.type="text/css",e.id=A,e},[A]);return Object(i.useLayoutEffect)(()=>(document.head.appendChild(t),()=>t.remove()),[t]),Object(l.createPortal)(e,t)}function nl({children:e}){const A=Object(i.useMemo)(()=>document.createElement("div"),[]);return Object(i.useLayoutEffect)(()=>(document.body.appendChild(A),()=>A.remove()),[A]),Object(l.createPortal)(Object(a.jsx)("svg",{height:0,width:0,children:Object(a.jsx)("defs",{children:Object.keys(e).map(A=>Object(a.jsx)("clipPath",{id:A,children:e[A].map((e,A)=>Object(a.jsx)("polygon",{points:e},A))},A))})}),A)}var rl=t(45);const al={normal:"mainWindowClipPath",windowshade:"shadeMainWindowClipPath",equalizer:"equalizerWindowClipPath",equalizerws:"shadeEqualizerWindowClipPath"},il={normal:"#main-window:not(.shade)",windowshade:"#main-window.shade",equalizer:"#equalizer-window:not(.shade)",equalizerws:"#equalizer-window.shade"},ol={MAIN_BALANCE_BACKGROUND:"MAIN_VOLUME_BACKGROUND",MAIN_BALANCE_THUMB:"MAIN_VOLUME_THUMB",MAIN_BALANCE_THUMB_ACTIVE:"MAIN_VOLUME_THUMB_SELECTED",EQ_MAXIMIZE_BUTTON_ACTIVE:"EQ_MAXIMIZE_BUTTON_ACTIVE_FALLBACK"};function ll(e){return`${e.startsWith("#webamp-context-menu")?"":"#webamp"} ${e}`}const sl=Object(q.createSelector)((function(e){return e.display.skinImages}),(function(e){return e.display.skinCursors}),(function(e){return e.display.skinGenLetterWidths}),vt,(e,A,t,n)=>{if(!e||!A)return null;const r=[];Object.keys(el).forEach(A=>{const t=e[A]||e[ol[A]];t&&el[A].forEach(e=>{r.push(`#webamp ${e} {background-image: url(${t})}`)})}),null!=t&&R.d.forEach(e=>{const A=t["GEN_TEXT_"+e],n=t["GEN_TEXT_SELECTED_"+e];r.push(`#webamp .gen-text-${e.toLowerCase()} {width: ${A}px;}`),r.push(`#webamp .selected .gen-text-${e.toLowerCase()} {width: ${n}px;}`)}),Object.entries(Al).forEach(([e,t])=>{const n=A[e];if(null==n)return;const a=t.map(ll).map(e=>{switch(n.type){case"cur":return`${e} {cursor: url(${n.url}), auto}`;case"ani":try{return Object(rl.convertAniBinaryToCSS)(e,n.aniData)}catch(e){return console.error(e),null}}}).filter(Boolean);r.push(...a)}),(e=>Boolean(e.DIGIT_0_EX))(e)&&r.push("#webamp .webamp-status #time #minus-sign { top: 0px; left: -1px; width: 9px; height: 13px; }");for(const[e,A]of Object.entries(n))if(A){const A=il[e],t=al[e];r.push(`#webamp ${A} { clip-path: url(#${t}); }`)}return r.join("\n")}),cl=Object(q.createSelector)(vt,e=>{const A={};for(const[t,n]of Object.entries(e))if(n){A[al[t]]=n}return A});function ul(){const e=va(sl),A=va(cl);return null==e?null:Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(tl,{id:"webamp-skin",children:e}),Object(a.jsx)(nl,{children:A})]})}t(101);function dl({media:e,filePickers:A}){const t=va(Ut),n=va(gA),r=va(zA),o=Ca(rn),l=Ca($t),[c]=Object(i.useState)(()=>{const e=document.createElement("div");return e.id="webamp",e.role="application",e});Object(i.useLayoutEffect)(()=>{c.style.zIndex=String(r)},[c,r]),Object(i.useLayoutEffect)(()=>(document.body.appendChild(c),()=>{document.body.removeChild(c)}),[c]),Object(i.useEffect)(()=>{const e=()=>{null!=c&&(c.style.right="0",c.style.bottom="0",c.style.overflow="hidden",o(M.k()),c.style.right="auto",c.style.bottom="auto",c.style.overflow="visible")};return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}},[o,c]);const u=Object(i.useCallback)(()=>M.t(n,(t,n)=>{if(!t.open)return null;switch(n){case R.m.MAIN:return Object(a.jsx)(wo,{analyser:e.getAnalyser(),filePickers:A});case R.m.EQUALIZER:return Object(a.jsx)($o,{});case R.m.PLAYLIST:return Object(a.jsx)(Go,{analyser:e.getAnalyser()});case R.m.MILKDROP:return Object(a.jsx)(di,{analyser:e.getAnalyser()});default:throw new Error("Tried to render an unknown window: "+n)}}),[e,A,n]);return t?null:s.a.createPortal(Object(a.jsx)(i.StrictMode,{children:Object(a.jsxs)("div",{onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||l(null)},children:[Object(a.jsx)(ul,{}),Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(fi,{filePickers:A}),children:Object(a.jsx)(yi,{windows:u()})})]})}),c)}const gl=new Set(["input","textarea","select"]);class pl{constructor(){r()(this,"_listeners",void 0),this._listeners={}}on(e,A){const t=this._listeners[e]||[];t.push(A),this._listeners[e]=t;return()=>{this._listeners[e]=t.filter(e=>e!==A)}}trigger(e,...A){const t=this._listeners[e];t&&t.forEach(e=>e(...A))}dispose(){this._listeners={}}}function hl(e,A={balance:0}){let t=0;const n=e.createGain();n.channelCount=2,n.channelCountMode="explicit",n.channelInterpretation="speakers";const r=e.createChannelSplitter(2),a=e.createGain(),i=e.createGain(),o=e.createChannelMerger(2);function l(e){const A=Number(e);a.gain.value=A>0?1-A:1,i.gain.value=A>0?1:1+A,t=A}n.connect(r),r.connect(a,0),r.connect(i,1),a.connect(o,0,0),i.connect(o,0,1);const s={};return Object.defineProperties(s,{value:{get:function(){return t},set:l,enumerable:!0,configurable:!0}}),Object.defineProperties(n,{balance:{value:s,enumerable:!0,writable:!1,configurable:!0},connect:{value:AudioNode.prototype.connect.bind(o),enumerable:!1,writable:!1,configurable:!0},disconnect:{value:AudioNode.prototype.disconnect.bind(o),enumerable:!1,writable:!1,configurable:!0}}),t!==A.balance&&l(A.balance),n}class fl{on(e,A){return this._emitter.on(e,A)}constructor(e,A){r()(this,"_emitter",void 0),r()(this,"_context",void 0),r()(this,"_source",void 0),r()(this,"_destination",void 0),r()(this,"_audio",void 0),r()(this,"_stalled",void 0),r()(this,"_status",void 0),this._emitter=new pl,this._context=e,this._destination=A,this._audio=document.createElement("audio"),this._audio.crossOrigin="anonymous",this._stalled=!1,this._status=R.f.STOPPED,this._audio.addEventListener("suspend",()=>{this._setStalled(!0)}),this._audio.addEventListener("durationchange",()=>{this._emitter.trigger("loaded"),this._setStalled(!1)}),this._audio.addEventListener("ended",()=>{this._emitter.trigger("ended"),this._setStatus(R.f.STOPPED)}),this._audio.addEventListener("timeupdate",()=>{this._emitter.trigger("positionChange")}),this._audio.addEventListener("error",e=>{switch(this._audio.error.code){case 1:console.error("MEDIA_ERR_ABORTED",e);break;case 2:console.error("MEDIA_ERR_NETWORK",e);break;case 3:console.error("PIPELINE_ERROR_DECODE",e);break;case 4:console.error("MEDIA_ERR_SRC_NOT_SUPPORTED",e)}this._emitter.trigger("ended"),this._setStatus(R.f.STOPPED)}),this._source=this._context.createMediaElementSource(this._audio),this._source.connect(A)}_setStalled(e){this._stalled=e,this._emitter.trigger("stallChanged")}disconnect(){this._source.disconnect()}async loadUrl(e){this._audio.src=e}async play(){this._status!==R.f.PAUSED&&this.seekToTime(0);try{await this._audio.play()}catch(e){}this._setStatus(R.f.PLAYING)}pause(){this._audio.pause(),this._setStatus(R.f.PAUSED)}stop(){this._audio.pause(),this._audio.currentTime=0,this._setStatus(R.f.STOPPED)}seekToTime(e){this._audio.currentTime=Object(M.d)(e,0,this.getDuration()),this._emitter.trigger("positionChange")}getStalled(){return this._stalled}getStatus(){return this._status}getDuration(){const{duration:e}=this._audio;return isNaN(e)||e===1/0?0:e}getTimeElapsed(){return this._audio.currentTime}_setStatus(e){this._status=e,this._emitter.trigger("statusChange")}dispose(){this.stop(),this._emitter.dispose()}}class ml{constructor(){if(r()(this,"_emitter",void 0),r()(this,"_context",void 0),r()(this,"_balance",void 0),r()(this,"_staticSource",void 0),r()(this,"_preamp",void 0),r()(this,"_analyser",void 0),r()(this,"_gainNode",void 0),r()(this,"_source",void 0),r()(this,"_bands",void 0),this._emitter=new pl,this._context=new(window.AudioContext||window.webkitAudioContext),"suspended"===this._context.state){const e=async()=>{await this._context.resume(),"running"===this._context.state&&(document.body.removeEventListener("touchend",e,!1),document.body.removeEventListener("click",e,!1),document.body.removeEventListener("keydown",e,!1))};document.body.addEventListener("touchend",e,!1),document.body.addEventListener("click",e,!1),document.body.addEventListener("keydown",e,!1)}this._staticSource=this._context.createGain(),this._balance=new hl(this._context),this._preamp=this._context.createGain(),this._analyser=this._context.createAnalyser(),this._analyser.fftSize=2048,this._analyser.smoothingTimeConstant=0,this._gainNode=this._context.createGain(),this._source=new fl(this._context,this._staticSource),this._source.on("positionChange",()=>{this._emitter.trigger("timeupdate")}),this._source.on("ended",()=>{this._emitter.trigger("ended")}),this._source.on("statusChange",()=>{switch(this._source.getStatus()){case R.f.PLAYING:this._emitter.trigger("playing")}this._emitter.trigger("timeupdate")}),this._source.on("loaded",()=>{this._emitter.trigger("fileLoaded")}),this._staticSource.connect(this._preamp);let e=this._preamp;this._bands={},R.a.forEach((A,t)=>{const n=this._context.createBiquadFilter();this._bands[A]=n,0===t?n.type="lowshelf":t===R.a.length-1?n.type="highshelf":n.type="peaking",n.frequency.value=A,n.gain.value=0,e.connect(n),e=n}),e.connect(this._balance),this._balance.connect(this._gainNode),this._balance.connect(this._analyser),this._gainNode.connect(this._context.destination)}getAnalyser(){return this._analyser}duration(){return this._source.getDuration()}timeElapsed(){return this._source.getTimeElapsed()}timeRemaining(){return this.duration()-this.timeElapsed()}percentComplete(){return this.timeElapsed()/this.duration()*100}async play(){await this._source.play()}pause(){this._source.pause()}stop(){this._source.stop()}seekToPercentComplete(e){const A=this.duration()*(e/100);this.seekToTime(A)}setVolume(e){this._gainNode.gain.value=e/100}setPreamp(e){const A=e/100*24-12;this._preamp.gain.value=Math.pow(10,A/20)}setBalance(e){this._balance.balance.value=e/100}setEqBand(e,A){const t=A/100*24-12;this._bands[e].gain.value=t}disableEq(){this._staticSource.disconnect(),this._staticSource.connect(this._balance)}enableEq(){this._staticSource.disconnect(),this._staticSource.connect(this._preamp)}on(e,A){this._emitter.on(e,A)}seekToTime(e){this._source.seekToTime(e)}async loadFromUrl(e,A){this._emitter.trigger("waiting"),await this._source.loadUrl(e),this._emitter.trigger("stopWaiting"),A&&this.play()}dispose(){this._source.dispose(),this._emitter.dispose()}}t(103);class El{constructor(){r()(this,"_teardowns",[]),r()(this,"disposed",void 0),this.disposed=!1}add(...e){if(this.disposed)throw new Error("Attempted to add a new teardown to a disposed disposable.");this._teardowns.push(...e)}dispose(){if(this.disposed)throw new Error("Attempted to dispose disposable which is already disposed.");this._teardowns.forEach(e=>{"function"==typeof e?e():"function"==typeof e.dispose&&e.dispose()}),this._teardowns=[],this.disposed=!0}}class bl{static browserIsSupported(){const e=!(!window.AudioContext&&!window.webkitAudioContext),A=!!window.document.createElement("canvas").getContext;return e&&A&&"undefined"!=typeof Promise}constructor(e){r()(this,"_actionEmitter",void 0),r()(this,"_node",void 0),r()(this,"_disposable",void 0),r()(this,"options",void 0),r()(this,"media",void 0),r()(this,"store",void 0),this._node=null,this._disposable=new El,this._actionEmitter=new pl,this.options=e;const{initialTracks:A,initialSkin:t,avaliableSkins:n,availableSkins:a,enableHotkeys:i=!1,zIndex:o,requireJSZip:l,requireMusicMetadata:s,handleTrackDropEvent:c,handleAddUrlEvent:u,handleLoadListEvent:d,handleSaveListEvent:g,__butterchurnOptions:p,__customMediaClass:h}=this.options;let f=null;if(null!=p){const{importConvertPreset:e,presetConverterEndpoint:A}=p;null!=e&&null!=A&&(f=async t=>{const{convertPreset:n}=await e();return n(await we(t),A)})}var E;this.media=new(h||ml),this.store=function(e,A,t=[],n,r){let a;n&&(a=Object(M.o)(Qe(void 0,{type:"@@init"}),n));const i=wa(Object(m.applyMiddleware)(...[B.withExtraArgument(r),ba(e),()=>e=>t=>(A.trigger(t.type,t),e(t)),...t].filter(Boolean)));return a?Object(m.createStore)(Qe,a,i):Object(m.createStore)(Qe,i)}(this.media,this._actionEmitter,this.options.__customMiddlewares,this.options.__initialState,{requireJSZip:l,requireMusicMetadata:s,convertPreset:f,handleTrackDropEvent:c,handleAddUrlEvent:u,handleLoadListEvent:d,handleSaveListEvent:g}),navigator.onLine?this.store.dispatch({type:"NETWORK_CONNECTED"}):this.store.dispatch({type:"NETWORK_DISCONNECTED"}),null!=o&&this.store.dispatch({type:"SET_Z_INDEX",zIndex:o}),e.__butterchurnOptions&&(this.store.dispatch({type:"ENABLE_MILKDROP",open:e.__butterchurnOptions.butterchurnOpen}),this.store.dispatch((E=e.__butterchurnOptions,async e=>{const{getPresets:A,importButterchurn:t}=E;t().then(A=>{e({type:"GOT_BUTTERCHURN",butterchurn:A.default})});const n=(await A()).map(Zr);e(Wr(n))})));const b=()=>this.store.dispatch({type:"NETWORK_CONNECTED"}),w=()=>this.store.dispatch({type:"NETWORK_DISCONNECTED"});window.addEventListener("online",b),window.addEventListener("offline",w),this._disposable.add(()=>{window.removeEventListener("online",b),window.removeEventListener("offline",w)}),t?this.store.dispatch(xr(t.url)):this.store.dispatch({type:"LOADED"}),A&&this._bufferTracks(A),null!=n?(console.warn("The misspelled option `avaliableSkins` is deprecated. Please use `availableSkins` instead."),this.store.dispatch({type:"SET_AVAILABLE_SKINS",skins:n})):null!=a&&this.store.dispatch({type:"SET_AVAILABLE_SKINS",skins:a});const y=e.__initialWindowLayout;null==y?this.store.dispatch(an()):(M.s(y,(e,A)=>{null!=e.size&&this.store.dispatch(en(A,e.size))}),this.store.dispatch(tn(M.t(y,e=>e.position),!1))),i&&this._disposable.add(function(e){let A=0;const t=[78,85,76,76,83,79,70,84],n=n=>{if(!(n.target instanceof Element&&gl.has(n.target.tagName.toLowerCase()))){if(n.ctrlKey)switch(n.keyCode){case 68:e(Ht()),n.preventDefault();break;case 76:break;case 82:e({type:"REVERSE_LIST"});break;case 84:e({type:"TOGGLE_TIME_MODE"})}else if(n.altKey)switch(n.keyCode){case 87:e(An("main"));break;case 69:e(An("playlist"));break;case 71:e(An("equalizer"))}else switch(n.keyCode){case 37:e(mn(5));break;case 38:e(bn(1));break;case 39:e(fn(5));break;case 40:e(bn(-1));break;case 66:e(gn());break;case 67:e(cn());break;case 76:e(Tr());break;case 82:e({type:"TOGGLE_REPEAT"});break;case 83:e({type:"TOGGLE_SHUFFLE"});break;case 86:e({type:"STOP"});break;case 88:e(sn());break;case 90:e(pn());break;case 96:e(Tr());break;case 97:e(dn(-10));break;case 98:e(bn(-1));break;case 99:e(dn(10));break;case 100:e(pn());break;case 101:e(sn());break;case 102:e(gn());break;case 103:e(mn(5));break;case 104:e(bn(1));break;case 105:e(fn(5))}27!==n.keyCode&&(A=n.keyCode===t[A]?A+1:0,A===t.length&&e({type:"TOGGLE_LLAMA_MODE"}))}};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}(this.store.dispatch))}play(){this.store.dispatch(sn())}pause(){this.store.dispatch(cn())}stop(){this.store.dispatch({type:"STOP"})}seekBackward(e){this.store.dispatch(mn(e))}seekForward(e){this.store.dispatch(fn(e))}seekToTime(e){this.store.dispatch(hn(e))}nextTrack(){this.store.dispatch(gn())}previousTrack(){this.store.dispatch(pn())}_bufferTracks(e){const A=$e(this.store.getState());this.store.dispatch(Dr(e,R.e.BUFFER,A))}appendTracks(e){const A=$e(this.store.getState());this.store.dispatch(Dr(e,R.e.NONE,A))}setTracksToPlay(e){this.store.dispatch(Dr(e,R.e.PLAY))}getMediaStatus(){return xA(this.store.getState())}onWillClose(e){return this._actionEmitter.on("CLOSE_REQUESTED",A=>{e(A.cancel)})}onClose(e){return this._actionEmitter.on("CLOSE_WINAMP",e)}close(){this.store.dispatch(e=>{let A=!1;e({type:"CLOSE_REQUESTED",cancel:()=>{A=!0}}),A||(e({type:"STOP"}),e({type:"CLOSE_WINAMP"}))})}reopen(){this.store.dispatch({type:"OPEN_WINAMP"})}onTrackDidChange(e){let A=null;return this.store.subscribe(()=>{const t=this.store.getState(),n=TA(t);n!==A&&(A=n,e(null==n?null:QA(t)))})}onMinimize(e){return this._actionEmitter.on("MINIMIZE_WINAMP",e)}setSkinFromUrl(e){this.store.dispatch(xr(e))}async skinIsLoaded(){var e,A;await(e=this.store,A=e=>!e.display.loading,new Promise(t=>{if(A(e.getState()))return void t();const n=e.subscribe(()=>{A(e.getState())&&(t(),n())})})),await Promise.all([Ct(this.store.getState()),Bt(this.store.getState())])}__loadSerializedState(e){this.store.dispatch(function(e){return A=>{A({type:"LOAD_SERIALIZED_STATE",serializedState:e}),A(on())}}(e))}__getSerializedState(){return{version:1,media:_((e=this.store.getState()).media),equalizer:e.equalizer,display:Ae(e.display),windows:P(e.windows)};var e}__onStateChange(e){return this.store.subscribe(e)}async renderWhenReady(e){var A;if(this.store.dispatch((A=e,(e,t)=>{if(!t().windows.positionsAreRelative)return;const{left:n,top:r}=A.getBoundingClientRect(),{scrollWidth:a,scrollHeight:i}=A;e(nn({left:n,top:r,width:a,height:i}))})),await this.skinIsLoaded(),null!=this._node)throw new Error("Cannot render a Webamp instance twice");this._node=e,this._disposable.add(()=>{null!=this._node&&(s.a.unmountComponentAtNode(this._node),this._node=null)}),s.a.render(Object(a.jsx)(h,{store:this.store,children:Object(a.jsx)(dl,{media:this.media,filePickers:this.options.filePickers||[]})}),e)}dispose(){this.media.dispose(),this._actionEmitter.dispose(),this._disposable.dispose()}}r()(bl,"VERSION","1.5.0");A.default=bl},,,,,,,function(e,A,t){"use strict";
11
+ */var n=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var A={},t=0;t<10;t++)A["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(A).map((function(e){return A[e]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(e){n[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(e,A){for(var t,o,l=i(e),s=1;s<arguments.length;s++){for(var c in t=Object(arguments[s]))r.call(t,c)&&(l[c]=t[c]);if(n){o=n(t);for(var u=0;u<o.length;u++)a.call(t,o[u])&&(l[o[u]]=t[o[u]])}}return l}},,function(e,A,t){var n=t(82).Symbol;e.exports=n},function(e,A,t){"use strict";e.exports=t(66)},function(e,A,t){"use strict";var n=t(28),r={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},o={};function l(e){return n.isMemo(e)?i:o[e.$$typeof]||r}o[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},o[n.Memo]=i;var s=Object.defineProperty,c=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,g=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(A,t,n){if("string"!=typeof t){if(p){var r=g(t);r&&r!==p&&e(A,r,n)}var i=c(t);u&&(i=i.concat(u(t)));for(var o=l(A),h=l(t),f=0;f<i.length;++f){var m=i[f];if(!(a[m]||n&&n[m]||h&&h[m]||o&&o[m])){var E=d(t,m);try{s(A,m,E)}catch(e){}}}}return A}},function(e,A,t){"use strict";(function(e,n){var r,a=t(39);r="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:n;var i=Object(a.a)(r);A.a=i}).call(this,t(19),t(67)(e))},function(e,A,t){var n=t(69),r=t(70);e.exports={parser:n,creator:r}},,,function(e,A,t){"use strict";t.d(A,"a",(function(){return i}));var n=t(4),r=t.n(n),a=t(3);class i{constructor(e,A){var t,n;r()(this,"webamp",void 0),r()(this,"maxFileSize",20971520),r()(this,"applicationStorage",null===(t=window)||void 0===t||null===(n=t.Telegram)||void 0===n?void 0:n.WebApp.DeviceStorage),r()(this,"telegram",void 0),r()(this,"loadCustomTracks",e=>{var A;(null!==(A=this.webamp)&&void 0!==A?A:window.__webamp).setTracksToPlay(e)}),r()(this,"updateAppState",()=>{this.applicationStorage.setItem("appState",JSON.stringify(this.webamp.__getSerializedState())),localStorage.setItem("appState",JSON.stringify(this.webamp.__getSerializedState()))}),r()(this,"getTrackListFromYandexDisk",async e=>{fetch("https://cloud-api.yandex.net/v1/disk/public/resources?public_key="+encodeURIComponent(e),{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json"}}).then(async e=>200===e.status?e.text():null).then(async A=>{if(null!==A){var t;const n=null===(t=JSON.parse(A))||void 0===t?void 0:t._embedded.items;let r=0;this.saveLastPlaylist(e);for(const e of n)0===r?this.webamp.setTracksToPlay([{defaultName:e.name,url:`${e.file}&public_key=${e.public_key}`}]):this.webamp.appendTracks([{defaultName:e.name,url:`${e.file}&public_key=${e.public_key}`}]),r++}})}),r()(this,"loadTrackFromYandexDisk",async e=>{let A=new URL(e.url).searchParams.get("public_key");await fetch(e.url,{method:"GET"}).then(e=>e).then(e=>fetch(e.url)).then(async e=>302===e.status?await fetch(`${e.headers.get("Location")}&public_key=${A}`):e).then(e=>{var A;console.log(e);const t=null===(A=e.body)||void 0===A?void 0:A.getReader();return new ReadableStream({start:e=>function A(){return null==t?void 0:t.read().then(({done:t,value:n})=>{if(!t)return e.enqueue(n),A();e.close()})}()})}).then(e=>new Response(e)).then(e=>e.blob()).then(e=>URL.createObjectURL(e)).then(A=>{let t=this.getAllTracks();this.replaceTrack(e,t)}).catch(e=>e)}),r()(this,"getCurrentTrack",()=>{let e=this.webamp.store.getState().playlist.currentTrack;return this.webamp.store.getState().tracks[e]}),r()(this,"getAllTracks",()=>this.webamp.store.getState().tracks),r()(this,"replaceTrack",(e,A)=>{let t=[];Object.entries(A).forEach(([A,n])=>{n.id===e.id?t.push(e):t.push(n)}),this.webamp.setTracksToPlay(t)}),r()(this,"saveLastPlaylist",e=>{document.cookie=`lastlist=${e}; path=/; expires=Tue, 19 Jan 2038 03:14:07 GMT; domain=win-amp.ru; secure`}),r()(this,"getCookie",e=>{const A=new RegExp(`(^| )${e}=([^;]+)`),t=document.cookie.match(A);if(t)return t[2]}),r()(this,"loadOptions",e=>{this.webamp.__loadSerializedState(e)}),r()(this,"loadOptions2",e=>{let A=0,t=e.media.volume,n=e.media.balance,r=[e.equalizer.sliders.preamp,e.equalizer.sliders[60],e.equalizer.sliders[170],e.equalizer.sliders[310],e.equalizer.sliders[600],e.equalizer.sliders[1e3],e.equalizer.sliders[3e3],e.equalizer.sliders[6e3],e.equalizer.sliders[12e3],e.equalizer.sliders[14e3],e.equalizer.sliders[16e3]],i=[60,170,310,600,1e3,3e3,6e3,12e3,14e3,16e3];this.webamp.store.dispatch({type:"SET_VOLUME",volume:Object(a.d)(t,0,100)}),this.webamp.store.dispatch({type:"SET_BALANCE",balance:n}),this.webamp.store.dispatch({type:"SET_BAND_VALUE",band:"preamp",value:e.equalizer.sliders.preamp});for(const e of i)this.webamp.store.dispatch({type:"SET_BAND_VALUE",band:e,value:r[A]}),A++;window.__webamp.store.getState().media.shuffle!==e.media.shuffle&&this.webamp.store.dispatch({type:"TOGGLE_SHUFFLE"}),window.__webamp.store.getState().media.repeat!==e.media.repeat&&this.webamp.store.dispatch({type:"TOGGLE_REPEAT"})}),setTimeout(()=>{if(!window.__webamp)throw new Error("Webamp __webamp is undefined!!");if(this.webamp=window.__webamp,void 0!==localStorage.getItem("app-state"))this.loadOptions(JSON.parse(localStorage.getItem("app-state")));else try{this.applicationStorage.getItem("app-state",e=>{this.loadOptions(JSON.parse(e))})}catch(e){console.log(e)}if(!1!==e){var A,t;const e=this.getCookie("lastlist");var n,r;if(void 0!==e&&this.getTrackListFromYandexDisk(e),null!==(A=window)&&void 0!==A&&null!==(t=A.Telegram)&&void 0!==t&&t.WebApp)this.telegram=null===(n=window)||void 0===n||null===(r=n.Telegram)||void 0===r?void 0:r.WebApp,this.initializeTelegramWebAppEvents();else console.error("Telegram is undefined!! Skipping Telegram.WebApp event handler...");this.initializeApplicationHandlers()}},1e3)}initializeTelegramWebAppEvents(){this.telegram.offEvent("deactivated",()=>{this.updateAppState()})}initializeApplicationHandlers(){["unload","beforeunload","pagehide"].forEach(e=>{window.addEventListener(e,()=>{this.updateAppState()})}),this.webamp.onTrackDidChange(()=>{console.log(this.webamp.store.getState()),this.updateAppState()}),this.webamp.onWillClose(()=>{this.updateAppState()}),this.webamp.onClose(()=>{this.updateAppState()}),this.webamp.onMinimize(()=>{this.updateAppState()}),this.webamp.store.dispatch({type:"ENABLE_MILKDROP",open:!1});this.webamp.__onStateChange(()=>{this.updateAppState()}),["ended","playing","timeupdate","fileLoaded","waiting","stopWaiting"].forEach(e=>this.webamp.media.on(e,()=>{this.updateAppState()}))}}new i(!0)},,,,function(e,A){e.exports={PRESET_VALUES:["hz60","hz170","hz310","hz600","hz1000","hz3000","hz6000","hz12000","hz14000","hz16000","preamp"],HEADER:"Winamp EQ library file v1.1"}},function(e,A,t){"use strict";function n(e){var A,t=e.Symbol;return"function"==typeof t?t.observable?A=t.observable:(A=t("observable"),t.observable=A):A="@@observable",A}t.d(A,"a",(function(){return n}))},function(e,A,t){"use strict";var n=t(14).compose;A.__esModule=!0,A.composeWithDevTools="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?n:n.apply(null,arguments)},A.devToolsEnhancer="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__?window.__REDUX_DEVTOOLS_EXTENSION__:function(){return function(e){return e}}},function(e){e.exports=JSON.parse('{"images":{"EQ_PREAMP_LINE":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHEAAAABCAYAAADpXEERAAAAE0lEQVQoU2Pcdfruf4ZRMKRDAAD1lwNjTqcaUQAAAABJRU5ErkJggg==","EQ_GRAPH_LINE_COLORS":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAATCAYAAABRC2cZAAAAR0lEQVQYV2O4rCT9n+F9kOJ/hvfViv8ZHkzSQCE2afxneH/HEJm49Nr0PwOYWPLIAkp0PjL4z1B41uQ/Q9QGnf8MWrPEIAQANWYwvnlToNIAAAAASUVORK5CYII="},"colors":["rgb(0,0,0)","rgb(24,33,41)","rgb(239,49,16)","rgb(206,41,16)","rgb(214,90,0)","rgb(214,102,0)","rgb(214,115,0)","rgb(198,123,8)","rgb(222,165,24)","rgb(214,181,33)","rgb(189,222,41)","rgb(148,222,33)","rgb(41,206,16)","rgb(50,190,16)","rgb(57,181,16)","rgb(49,156,8)","rgb(41,148,0)","rgb(24,132,8)","rgb(255,255,255)","rgb(214,214,222)","rgb(181,189,189)","rgb(160,170,175)","rgb(148,156,165)","rgb(150,150,150)"],"playlistStyle":{"normal":"#00FF00","current":"#FFFFFF","normalbg":"#000000","selectedbg":"#0000FF","font":"Arial"}}')},function(e,A,t){"use strict";function n(e,A){if(!(this instanceof n))return new n(e,A);if(this.data=e||[],this.length=this.data.length,this.compare=A||r,this.length>0)for(var t=(this.length>>1)-1;t>=0;t--)this._down(t)}function r(e,A){return e<A?-1:e>A?1:0}e.exports=n,e.exports.default=n,n.prototype={push:function(e){this.data.push(e),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var e=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),e}},peek:function(){return this.data[0]},_up:function(e){for(var A=this.data,t=this.compare,n=A[e];e>0;){var r=e-1>>1,a=A[r];if(t(n,a)>=0)break;A[e]=a,e=r}A[e]=n},_down:function(e){for(var A=this.data,t=this.compare,n=this.length>>1,r=A[e];e<n;){var a=1+(e<<1),i=a+1,o=A[a];if(i<this.length&&t(A[i],o)<0&&(a=i,o=A[i]),t(o,r)>=0)break;A[e]=o,e=a}A[e]=r}}},function(e,A,t){var n=t(78),r=t(80),a=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,i=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g");e.exports=function(e){return(e=r(e))&&e.replace(a,n).replace(i,"")}},function(e){e.exports=JSON.parse('{"type":"Winamp EQ library file v1.1","presets":[{"name":"Classical","hz60":33,"hz170":33,"hz310":33,"hz600":33,"hz1000":33,"hz3000":33,"hz6000":20,"hz12000":20,"hz14000":20,"hz16000":16,"preamp":33},{"name":"Club","hz60":33,"hz170":33,"hz310":38,"hz600":42,"hz1000":42,"hz3000":42,"hz6000":38,"hz12000":33,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Dance","hz60":48,"hz170":44,"hz310":36,"hz600":32,"hz1000":32,"hz3000":22,"hz6000":20,"hz12000":20,"hz14000":32,"hz16000":32,"preamp":33},{"name":"Laptop speakers/headphones","hz60":40,"hz170":50,"hz310":41,"hz600":26,"hz1000":28,"hz3000":35,"hz6000":40,"hz12000":48,"hz14000":53,"hz16000":56,"preamp":33},{"name":"Large hall","hz60":49,"hz170":49,"hz310":42,"hz600":42,"hz1000":33,"hz3000":24,"hz6000":24,"hz12000":24,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Party","hz60":44,"hz170":44,"hz310":33,"hz600":33,"hz1000":33,"hz3000":33,"hz6000":33,"hz12000":33,"hz14000":44,"hz16000":44,"preamp":33},{"name":"Pop","hz60":29,"hz170":40,"hz310":44,"hz600":45,"hz1000":41,"hz3000":30,"hz6000":28,"hz12000":28,"hz14000":29,"hz16000":29,"preamp":33},{"name":"Reggae","hz60":33,"hz170":33,"hz310":31,"hz600":22,"hz1000":33,"hz3000":43,"hz6000":43,"hz12000":33,"hz14000":33,"hz16000":33,"preamp":33},{"name":"Rock","hz60":45,"hz170":40,"hz310":23,"hz600":19,"hz1000":26,"hz3000":39,"hz6000":47,"hz12000":50,"hz14000":50,"hz16000":50,"preamp":33},{"name":"Soft","hz60":40,"hz170":35,"hz310":30,"hz600":28,"hz1000":30,"hz3000":39,"hz6000":46,"hz12000":48,"hz14000":50,"hz16000":52,"preamp":33},{"name":"Ska","hz60":28,"hz170":24,"hz310":25,"hz600":31,"hz1000":39,"hz3000":42,"hz6000":47,"hz12000":48,"hz14000":50,"hz16000":48,"preamp":33},{"name":"Full Bass","hz60":48,"hz170":48,"hz310":48,"hz600":42,"hz1000":35,"hz3000":25,"hz6000":18,"hz12000":15,"hz14000":14,"hz16000":14,"preamp":33},{"name":"Soft Rock","hz60":39,"hz170":39,"hz310":36,"hz600":31,"hz1000":25,"hz3000":23,"hz6000":26,"hz12000":31,"hz14000":37,"hz16000":47,"preamp":33},{"name":"Full Treble","hz60":16,"hz170":16,"hz310":16,"hz600":25,"hz1000":37,"hz3000":50,"hz6000":58,"hz12000":58,"hz14000":58,"hz16000":60,"preamp":33},{"name":"Full Bass & Treble","hz60":44,"hz170":42,"hz310":33,"hz600":20,"hz1000":24,"hz3000":35,"hz6000":46,"hz12000":50,"hz14000":52,"hz16000":52,"preamp":33},{"name":"Live","hz60":24,"hz170":33,"hz310":39,"hz600":41,"hz1000":42,"hz3000":42,"hz6000":39,"hz12000":37,"hz14000":37,"hz16000":36,"preamp":33},{"name":"Techno","hz60":45,"hz170":42,"hz310":33,"hz600":23,"hz1000":24,"hz3000":33,"hz6000":45,"hz12000":48,"hz14000":48,"hz16000":47,"preamp":33}]}')},function(e,A,t){"use strict";var n=this&&this.__read||function(e,A){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,r,a=t.call(e),i=[];try{for(;(void 0===A||A-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(r)throw r.error}}return i},r=this&&this.__spread||function(){for(var e=[],A=0;A<arguments.length;A++)e=e.concat(n(arguments[A]));return e};Object.defineProperty(A,"__esModule",{value:!0}),A.convertAniBinaryToCSS=void 0;var a=t(99);A.convertAniBinaryToCSS=function(e,A){var t=function(e){var A,t=a.parseAni(e),n=null!==(A=t.rate)&&void 0!==A?A:t.images.map((function(){return t.metadata.iDispRate})),i=(s=n,s.reduce((function(e,A){return e+A}),0)),o=t.images.map((function(e){return{url:(t=e,A=t,n=window.btoa(String.fromCharCode.apply(String,r(A))),"data:image/x-win-bitmap;base64,"+n),percents:[]};var A,t,n})),l=0;var s;return n.forEach((function(e,A){var n=t.seq?t.seq[A]:A;o[n].percents.push(l/i*100),l+=e})),{duration:i*(1e3/60),frames:o}}(A),n="ani-cursor-"+o();return"\n @keyframes "+n+" {\n "+t.frames.map((function(e){var A=e.url;return e.percents.map((function(e){return e+"%"})).join(", ")+" { cursor: url("+A+"), auto; }"})).join("\n")+"\n }\n "+e+":hover {\n animation: "+n+" "+t.duration+"ms step-end infinite;\n }\n "};var i=0,o=function(){return i++}},,,,,,function(e,A,t){"use strict";t.r(A);var n=t(4),r=t.n(n),a=t(0),i=t(1),o=t.n(i),l=t(7),s=t.n(l),c=(t(63),o.a.createContext(null));var u=function(e){e()},d={notify:function(){}};function g(){var e=u,A=null,t=null;return{clear:function(){A=null,t=null},notify:function(){e((function(){for(var e=A;e;)e.callback(),e=e.next}))},get:function(){for(var e=[],t=A;t;)e.push(t),t=t.next;return e},subscribe:function(e){var n=!0,r=t={callback:e,next:null,prev:t};return r.prev?r.prev.next=r:A=r,function(){n&&null!==A&&(n=!1,r.next?r.next.prev=r.prev:t=r.prev,r.prev?r.prev.next=r.next:A=r.next)}}}}var p=function(){function e(e,A){this.store=e,this.parentSub=A,this.unsubscribe=null,this.listeners=d,this.handleChangeWrapper=this.handleChangeWrapper.bind(this)}var A=e.prototype;return A.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},A.notifyNestedSubs=function(){this.listeners.notify()},A.handleChangeWrapper=function(){this.onStateChange&&this.onStateChange()},A.isSubscribed=function(){return Boolean(this.unsubscribe)},A.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.handleChangeWrapper):this.store.subscribe(this.handleChangeWrapper),this.listeners=g())},A.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=d)},e}();var h=function(e){var A=e.store,t=e.context,n=e.children,r=Object(i.useMemo)((function(){var e=new p(A);return e.onStateChange=e.notifyNestedSubs,{store:A,subscription:e}}),[A]),a=Object(i.useMemo)((function(){return A.getState()}),[A]);Object(i.useEffect)((function(){var e=r.subscription;return e.trySubscribe(),a!==A.getState()&&e.notifyNestedSubs(),function(){e.tryUnsubscribe(),e.onStateChange=null}}),[r,a]);var l=t||c;return o.a.createElement(l.Provider,{value:r},n)};t(29),t(28);var f="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement?i.useLayoutEffect:i.useEffect;var m=t(14);function E(){return Object(i.useContext)(c)}function b(e){void 0===e&&(e=c);var A=e===c?E:function(){return Object(i.useContext)(e)};return function(){return A().store}}var w=b();function y(e){void 0===e&&(e=c);var A=e===c?w:b(e);return function(){return A().dispatch}}var O=y(),I=function(e,A){return e===A};function S(e){void 0===e&&(e=c);var A=e===c?E:function(){return Object(i.useContext)(e)};return function(e,t){void 0===t&&(t=I);var n=A(),r=function(e,A,t,n){var r,a=Object(i.useReducer)((function(e){return e+1}),0)[1],o=Object(i.useMemo)((function(){return new p(t,n)}),[t,n]),l=Object(i.useRef)(),s=Object(i.useRef)(),c=Object(i.useRef)(),u=Object(i.useRef)(),d=t.getState();try{r=e!==s.current||d!==c.current||l.current?e(d):u.current}catch(e){throw l.current&&(e.message+="\nThe error may be correlated with this previous error:\n"+l.current.stack+"\n\n"),e}return f((function(){s.current=e,c.current=d,u.current=r,l.current=void 0})),f((function(){function e(){try{var e=s.current(t.getState());if(A(e,u.current))return;u.current=e}catch(e){l.current=e}a()}return o.onStateChange=e,o.trySubscribe(),e(),function(){return o.tryUnsubscribe()}}),[t,o]),r}(e,t,n.store,n.subscription);return Object(i.useDebugValue)(r),r}}var k,U=S();function v(e){return function(A){var t=A.dispatch,n=A.getState;return function(A){return function(r){return"function"==typeof r?r(t,n,e):A(r)}}}}k=l.unstable_batchedUpdates,u=k;var C=v();C.withExtraArgument=v;var B=C,x=t(40);var M=t(3);function N(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function T(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?N(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):N(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Q={trackOrder:[],currentTrack:null,lastSelectedIndex:null,selectedTracks:new Set};var L=(e=Q,A)=>{switch(A.type){case"CLICKED_TRACK":return T(T({},e),{},{selectedTracks:new Set([e.trackOrder[A.index]]),lastSelectedIndex:A.index});case"CTRL_CLICKED_TRACK":{const r=e.trackOrder[A.index],a=new Set(e.selectedTracks);return n=r,(t=a).has(n)?t.delete(n):t.add(n),T(T({},e),{},{selectedTracks:a,lastSelectedIndex:A.index})}case"SHIFT_CLICKED_TRACK":if(null==e.lastSelectedIndex)return e;const r=A.index,a=Math.min(r,e.lastSelectedIndex),i=Math.max(r,e.lastSelectedIndex),o=new Set(e.trackOrder.slice(a,i+1));return T(T({},e),{},{selectedTracks:o});case"SELECT_ALL":return T(T({},e),{},{selectedTracks:new Set(e.trackOrder)});case"SELECT_ZERO":return T(T({},e),{},{selectedTracks:new Set});case"INVERT_SELECTION":return T(T({},e),{},{selectedTracks:new Set(e.trackOrder.filter(A=>!e.selectedTracks.has(A)))});case"REMOVE_ALL_TRACKS":return T(T({},e),{},{trackOrder:[],currentTrack:null,selectedTracks:new Set,lastSelectedIndex:null});case"REMOVE_TRACKS":const l=new Set(A.ids.map(Number)),{currentTrack:s}=e;return T(T({},e),{},{trackOrder:e.trackOrder.filter(e=>!l.has(e)),currentTrack:l.has(Number(s))?null:s,selectedTracks:new Set(Array.from(e.selectedTracks).filter(e=>l.has(e))),lastSelectedIndex:null});case"REVERSE_LIST":return T(T({},e),{},{trackOrder:[...e.trackOrder].reverse(),lastSelectedIndex:null});case"RANDOMIZE_LIST":return T(T({},e),{},{trackOrder:Object(M.A)(e.trackOrder)});case"SET_TRACK_ORDER":const{trackOrder:c}=A;return T(T({},e),{},{trackOrder:c});case"ADD_TRACK_FROM_URL":const u=null==A.atIndex?e.trackOrder.length:A.atIndex;return T(T({},e),{},{trackOrder:[...e.trackOrder.slice(0,u),Number(A.id),...e.trackOrder.slice(u)],lastSelectedIndex:null});case"PLAY_TRACK":case"BUFFER_TRACK":return T(T({},e),{},{currentTrack:A.id});case"DRAG_SELECTED":return T(T({},e),{},{trackOrder:Object(M.p)(e.trackOrder,A=>e.selectedTracks.has(e.trackOrder[A]),A.offset),lastSelectedIndex:null});default:return e}var t,n},j=t(9),D=t.n(j),R=t(2);function V(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function F(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?V(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):V(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const G={focused:R.m.MAIN,positionsAreRelative:!0,genWindows:{[R.m.MAIN]:{title:"Main Window",size:[0,0],open:!0,shade:!1,canResize:!1,canShade:!0,canDouble:!0,hotkey:"Alt+W",position:{x:0,y:0}},[R.m.EQUALIZER]:{title:"Equalizer",size:[0,0],open:!0,shade:!1,canResize:!1,canShade:!0,canDouble:!0,hotkey:"Alt+G",position:{x:0,y:0}},[R.m.PLAYLIST]:{title:"Playlist Editor",size:[0,0],open:!0,shade:!1,canResize:!0,canShade:!0,canDouble:!1,hotkey:"Alt+E",position:{x:0,y:0}}},browserWindowSize:{width:0,height:0},windowOrder:[R.m.PLAYLIST,R.m.EQUALIZER,R.m.MILKDROP,R.m.MAIN]};function P(e){return{positionsAreRelative:e.positionsAreRelative,genWindows:M.t(e.genWindows,e=>({size:e.size,open:e.open,hidden:!1,shade:e.shade||!1,position:e.position})),focused:e.focused}}var K=(e=G,A)=>{switch(A.type){case"ENABLE_MILKDROP":return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[R.m.MILKDROP]:{title:"Milkdrop",size:[0,0],open:A.open,shade:!1,canResize:!0,canShade:!1,canDouble:!1,position:{x:0,y:0}}})});case"SET_FOCUSED_WINDOW":let t=e.windowOrder;return null!=A.window&&(t=[...e.windowOrder.filter(e=>e!==A.window),A.window]),F(F({},e),{},{focused:A.window,windowOrder:t});case"TOGGLE_WINDOW_SHADE_MODE":const{canShade:n}=e.genWindows[A.windowId];if(!n)throw new Error("Tried to shade/unshade a window that cannot be shaded: "+A.windowId);return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{shade:!e.genWindows[A.windowId].shade})})});case"TOGGLE_WINDOW":const r=e.genWindows[A.windowId];return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},r),{},{open:!r.open})})});case"CLOSE_WINDOW":return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{open:!1})})});case"WINDOW_SIZE_CHANGED":const{canResize:a}=e.genWindows[A.windowId];if(!a)throw new Error("Tried to resize a window that cannot be resized: "+A.windowId);return F(F({},e),{},{genWindows:F(F({},e.genWindows),{},{[A.windowId]:F(F({},e.genWindows[A.windowId]),{},{size:A.size})})});case"UPDATE_WINDOW_POSITIONS":return F(F({},e),{},{positionsAreRelative:!0!==A.absolute&&e.positionsAreRelative,genWindows:M.t(e.genWindows,(e,t)=>{const n=A.positions[t];return null==n?e:F(F({},e),{},{position:n})})});case"RESET_WINDOW_SIZES":return F(F({},e),{},{genWindows:M.t(e.genWindows,e=>F(F({},e),{},{size:[0,0]}))});case"LOAD_SERIALIZED_STATE":{const{genWindows:t,focused:n,positionsAreRelative:r}=A.serializedState.windows;return F(F({},e),{},{positionsAreRelative:r,genWindows:M.t(e.genWindows,(e,A)=>{const n=t[A];if(null==n)return e;const{hidden:r}=n,a=D()(n,["hidden"]);return F(F({},e),a)}),focused:n})}case"BROWSER_WINDOW_SIZE_CHANGED":return F(F({},e),{},{browserWindowSize:{height:A.height,width:A.width}});default:return e}};function z(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Y(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?z(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):z(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const J={timeMode:R.h.ELAPSED,timeElapsed:0,volume:Math.round(200/255*100),balance:0,shuffle:!1,repeat:!1,status:R.f.STOPPED};function _(e){const{volume:A,balance:t,shuffle:n,repeat:r}=e;return{volume:A,balance:t,shuffle:n,repeat:r}}var H=(e=J,A)=>{switch(A.type){case"PLAY":case"IS_PLAYING":return Y(Y({},e),{},{status:R.f.PLAYING});case"PAUSE":return Y(Y({},e),{},{status:R.f.PAUSED});case"STOP":case"IS_STOPPED":return Y(Y({},e),{},{status:R.f.STOPPED});case"TOGGLE_TIME_MODE":const t=e.timeMode===R.h.REMAINING?R.h.ELAPSED:R.h.REMAINING;return Y(Y({},e),{},{timeMode:t});case"UPDATE_TIME_ELAPSED":return Y(Y({},e),{},{timeElapsed:A.elapsed});case"SET_MEDIA":return Y({},e);case"SET_VOLUME":return Y(Y({},e),{},{volume:A.volume});case"SET_BALANCE":return Y(Y({},e),{},{balance:A.balance});case"TOGGLE_REPEAT":return Y(Y({},e),{},{repeat:!e.repeat});case"TOGGLE_SHUFFLE":return Y(Y({},e),{},{shuffle:!e.shuffle});case"LOAD_SERIALIZED_STATE":return Y(Y({},e),A.serializedState.media);default:return e}},q=t(5);function Z(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function W(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Z(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Z(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const X={itemBackground:"rgb(0,0,0)",itemForeground:"rgb(0,255,0)",windowBackground:"rgb(56,55,87)",buttonText:"rgb(57,57,66)",windowText:"rgb(255,255,255)",divider:"rgb(117,116,139)",playlistSelection:"rgb(0,0,198)",listHeaderBackground:"rgb(72,72,120)",listHeaderText:"rgb(255,255,255)",listHeaderFrameTopAndLeft:"rgb(108,108,180)",listHeaderFrameBottomAndRight:"rgb(36,36,60)",listHeaderFramePressed:"rgb(18,18,30)",listHeaderDeadArea:"rgb(36,36,60)",scrollbarOne:"rgb(36,36,60)",scrollbarTwo:"rgb(36,36,60)",pressedScrollbarOne:"rgb(121,130,150)",pressedScrollbarTwo:"rgb(78,88,110)",scrollbarDeadArea:"rgb(36,36,60)",listTextHighlighted:"rgb(0,198,255)",listTextHighlightedBackground:"rgb(0,198,255)",listTextSelected:"rgb(0,198,255)",listTextSelectedBackground:"rgb(0,198,255)"},$={doubled:!1,marqueeStep:0,disableMarquee:!1,loading:!0,llama:!1,closed:!1,working:!1,skinImages:R.c.images,skinColors:R.c.colors,skinCursors:null,skinPlaylistStyle:null,skinRegion:{},visualizerStyle:0,dummyVizData:null,playlistScrollPosition:0,skinGenLetterWidths:null,skinGenExColors:X,additionalVisualizers:[],zIndex:0};var ee=(e=$,A)=>{switch(A.type){case"LOAD_DEFAULT_SKIN":{const{skinImages:A,skinColors:t,skinCursors:n,skinPlaylistStyle:r,skinRegion:a,skinGenLetterWidths:i,skinGenExColors:o}=$;return W(W({},e),{},{skinImages:A,skinColors:t,skinCursors:n,skinPlaylistStyle:r,skinRegion:a,skinGenLetterWidths:i,skinGenExColors:o})}case"TOGGLE_DOUBLESIZE_MODE":return W(W({},e),{},{doubled:!e.doubled});case"TOGGLE_LLAMA_MODE":return W(W({},e),{},{llama:!e.llama});case"STEP_MARQUEE":return e.disableMarquee?e:W(W({},e),{},{marqueeStep:e.marqueeStep+1});case"DISABLE_MARQUEE":return W(W({},e),{},{disableMarquee:!0});case"STOP_WORKING":return W(W({},e),{},{working:!1});case"START_WORKING":return W(W({},e),{},{working:!0});case"CLOSE_WINAMP":return W(W({},e),{},{closed:!0});case"OPEN_WINAMP":return W(W({},e),{},{closed:!1});case"LOADING":return W(W({},e),{},{loading:!0});case"LOADED":return W(W({},e),{},{loading:!1});case"SET_SKIN_DATA":const{data:t}=A;return W(W({},e),{},{loading:!1,skinImages:t.skinImages,skinColors:t.skinColors,skinPlaylistStyle:t.skinPlaylistStyle,skinCursors:t.skinCursors,skinRegion:t.skinRegion,skinGenLetterWidths:t.skinGenLetterWidths,skinGenExColors:t.skinGenExColors||X});case"TOGGLE_VISUALIZER_STYLE":return W(W({},e),{},{visualizerStyle:(e.visualizerStyle+1)%R.l.length});case"SET_PLAYLIST_SCROLL_POSITION":return W(W({},e),{},{playlistScrollPosition:A.position});case"SET_Z_INDEX":return W(W({},e),{},{zIndex:A.zIndex});case"SET_DUMMY_VIZ_DATA":return W(W({},e),{},{dummyVizData:A.data});case"LOAD_SERIALIZED_STATE":{const t=A.serializedState.display,{skinCursors:n}=t,r=D()(t,["skinCursors"]),a=e=>({type:"cur",url:e}),i=null==n?null:M.t(n,a);return W(W({},e),{},{skinCursors:i},r)}default:return e}};const Ae=e=>{const{visualizerStyle:A,doubled:t,llama:n,marqueeStep:r,skinImages:a,skinCursors:i,skinRegion:o,skinGenLetterWidths:l,skinColors:s,skinPlaylistStyle:c}=e;let u=null;return null!=i&&(u=M.t(i,e=>"cur"===e.type?e.url:void 0)),{visualizerStyle:A,doubled:t,llama:n,marqueeStep:r,skinImages:a,skinCursors:u,skinRegion:o,skinGenLetterWidths:l,skinColors:s,skinPlaylistStyle:c}},te=Object(q.createSelector)(e=>e.visualizerStyle,e=>R.l[e]);function ne(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function re(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ne(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ne(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const ae={focus:null,bandFocused:null,scrubPosition:0,userMessage:null};var ie=(e=ae,A)=>{switch(A.type){case"SET_FOCUS":return re(re({},e),{},{focus:A.input,bandFocused:null});case"SET_BAND_FOCUS":return re(re({},e),{},{focus:A.input,bandFocused:A.bandFocused});case"UNSET_FOCUS":return re(re({},e),{},{focus:null,bandFocused:null});case"SET_SCRUB_POSITION":return re(re({},e),{},{scrubPosition:A.position});case"SET_USER_MESSAGE":return re(re({},e),{},{userMessage:A.message});case"UNSET_USER_MESSAGE":return re(re({},e),{},{userMessage:null});default:return e}};function oe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function le(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?oe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):oe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const se={on:!0,auto:!1,sliders:{preamp:50,60:50,170:50,310:50,600:50,1e3:50,3e3:50,6e3:50,12e3:50,14e3:50,16e3:50}};var ce=(e=se,A)=>{switch(A.type){case"SET_BAND_VALUE":const t=le(le({},e.sliders),{},{[A.band]:A.value});return le(le({},e),{},{sliders:t});case"SET_EQ_ON":return le(le({},e),{},{on:!0});case"SET_EQ_OFF":return le(le({},e),{},{on:!1});case"SET_EQ_AUTO":return le(le({},e),{},{auto:A.value});case"LOAD_SERIALIZED_STATE":return A.serializedState.equalizer||e;default:return e}};function ue(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function de(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ue(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ue(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var ge=(e={connected:!0},A)=>{switch(A.type){case"NETWORK_CONNECTED":return de(de({},e),{},{connected:!0});case"NETWORK_DISCONNECTED":return de(de({},e),{},{connected:!1});default:return e}};function pe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function he(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?pe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):pe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const fe={availableSkins:[]};var me=(e=fe,A)=>{switch(A.type){case"SET_AVAILABLE_SKINS":return he(he({},e),{},{availableSkins:A.skins});default:return e}},Ee=t(21),be=t.n(Ee);async function we(e){return new Promise((A,t)=>{const n=new FileReader;n.onload=()=>{A(n.result)},n.onerror=t,n.readAsText(e)})}async function ye({accept:e,directory:A=!1}={accept:null,directory:!1}){return new Promise(t=>{const n=document.createElement("input");e&&n.setAttribute("accept",e),n.type="file",n.multiple=!0,n.webkitdirectory=A,n.directory=A,n.mozdirectory=A,n.value=null,n.addEventListener("change",e=>{const A=e.target.files;t(A)}),n.click()})}function Oe(e){return"data:image/x-win-bitmap;base64,"+M.b(e)}function Ie(e){if(function(e){return/^blob:/.test(e)}(e))return null;const A=e.split("/").pop();return null==A?null:A.split("#")[0].split("?")[0]}const Se=M.E(e=>{const{artist:A,title:t,defaultName:n,url:r}=e;if(A&&t)return`${A} - ${t}`;if(t)return t;if(n)return n;if(r){const e=Ie(r);if(e)return e}return"???"});M.E(e=>{if(e.url){const A=Ie(e.url);if(null!=A)return A}return e.defaultName?e.defaultName:"???"});function ke(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ue(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ke(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ke(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const ve={};var Ce=(e=ve,A)=>{var t;switch(A.type){case"ADD_TRACK_FROM_URL":return Ue(Ue({},e),{},{[A.id]:{id:A.id,defaultName:A.defaultName||null,duration:null!==(t=A.duration)&&void 0!==t?t:null,url:A.url,mediaTagsRequestStatus:R.g.INITIALIZED}});case"SET_MEDIA":{const t=Ue(Ue({},e[A.id]),{},{duration:A.length});return Ue(Ue({},e),{},{[A.id]:t})}case"MEDIA_TAG_REQUEST_INITIALIZED":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{mediaTagsRequestStatus:R.g.INITIALIZED})});case"MEDIA_TAG_REQUEST_FAILED":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{mediaTagsRequestStatus:R.g.FAILED})});case"SET_MEDIA_DURATION":return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},e[A.id]),{},{duration:A.duration})});case"SET_MEDIA_TAGS":const n=e[A.id],{sampleRate:r,bitrate:a,numberOfChannels:i,title:o,artist:l,album:s,albumArtUrl:c}=A,{kbps:u,khz:d,channels:g}=n;return Ue(Ue({},e),{},{[A.id]:Ue(Ue({},n),{},{mediaTagsRequestStatus:R.g.COMPLETE,title:o,artist:l,album:s,albumArtUrl:c,kbps:null!=a?String(Math.round(a/1e3)):u,khz:null!=r?String(Math.round(r/1e3)):d,channels:null!=i?i:g})});default:return e}};let Be;function xe(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Me(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?xe(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):xe(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}!function(e){e[e.IMMEDIATE=0]="IMMEDIATE",e[e.DEFAULT=1]="DEFAULT",e[e.USER_PRESET=2]="USER_PRESET"}(Be||(Be={}));const Ne={display:"WINDOW",overlay:!1,presetHistory:[],presets:[],currentPresetIndex:null,butterchurn:null,transitionType:Be.DEFAULT,randomize:!0,cycling:!0,message:null};var Te=(e=Ne,A)=>{switch(A.type){case"SET_MILKDROP_DESKTOP":return Me(Me({},e),{},{display:A.enabled?"DESKTOP":"WINDOW"});case"SET_MILKDROP_FULLSCREEN":return Me(Me({},e),{},{display:A.enabled?"FULLSCREEN":"WINDOW"});case"GOT_BUTTERCHURN":return Me(Me({},e),{},{butterchurn:A.butterchurn});case"GOT_BUTTERCHURN_PRESETS":return Me(Me({},e),{},{presets:e.presets.concat(A.presets)});case"PRESET_REQUESTED":return A.addToHistory?Me(Me({},e),{},{presetHistory:[...e.presetHistory,A.index]}):Me(Me({},e),{},{presetHistory:e.presetHistory.slice(0,-1)});case"RESOLVE_PRESET_AT_INDEX":const t=e.presets[A.index];return Me(Me({},e),{},{presets:M.y(e.presets,A.index,{type:"RESOLVED",name:t.name,preset:A.json})});case"SELECT_PRESET_AT_INDEX":return Me(Me({},e),{},{currentPresetIndex:A.index,transitionType:A.transitionType});case"TOGGLE_PRESET_OVERLAY":return Me(Me({},e),{},{overlay:!e.overlay});case"TOGGLE_RANDOMIZE_PRESETS":return Me(Me({},e),{},{randomize:!e.randomize});case"TOGGLE_PRESET_CYCLING":return Me(Me({},e),{},{cycling:!e.cycling});case"SCHEDULE_MILKDROP_MESSAGE":return Me(Me({},e),{},{message:{text:A.message,time:Date.now()}});default:return e}};var Qe=Object(m.combineReducers)({userInput:ie,windows:K,display:ee,settings:me,equalizer:ce,playlist:L,media:H,network:ge,tracks:Ce,milkdrop:Te});function Le(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function je(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Le(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Le(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const De={height:"2px",borderWidth:0,color:"gray",backgroundColor:"gray"},Re=e=>Object(a.jsx)("body",je({},e)),Ve=e=>Object(a.jsx)("font",je({},e)),Fe=e=>Object(a.jsx)("hr",je({},e)),Ge=e=>Object(a.jsx)("div",je({},e)),Pe=e=>Object(a.jsx)("table",je({},e)),Ke=e=>Object(a.jsxs)("html",{children:[Object(a.jsxs)("head",{children:[Object(a.jsx)("link",{rel:"stylesheet",href:"null"}),Object(a.jsx)("style",{type:"text/css",children:'\n body { background: #000040; }\n .para1 { margin-top: -42px; margin-left: 145px; margin-right: 10px; font-family: "font2, Arial"; font-size: 30px; line-height: 35px; text-align: left; color: #E1E1E1; }\n .para2 { margin-top: 15px; margin-left: 15px; margin-right: 50px; font-family: "font1, Arial Black"; font-size: 50px; line-height: 40px; text-align: left; color: #004080; }\n '}),Object(a.jsx)("title",{children:"Winamp Generated PlayList"})]}),Object(a.jsxs)(Re,{bgcolor:"#000080",topmargin:"0",leftmargin:"0",text:"#FFFFFF",children:[Object(a.jsxs)(Ge,{align:"center",children:[Object(a.jsx)(Ge,{className:"para2",align:"center",children:Object(a.jsx)("p",{children:"WINAMP"})}),Object(a.jsx)(Ge,{className:"para1",align:"center",children:Object(a.jsx)("p",{children:"playlist"})})]}),Object(a.jsx)(Fe,{align:"left",width:"90%",size:"1",color:"#FFBF00",style:De}),Object(a.jsx)(Ge,{align:"right",children:Object(a.jsx)(Pe,{border:"0",cellSpacing:"0",cellPadding:"0",width:"98%",children:Object(a.jsx)("tbody",{children:Object(a.jsx)("tr",{children:Object(a.jsxs)("td",{children:[Object(a.jsx)("small",{children:Object(a.jsxs)("small",{children:[Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.numberOfTracks}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" track in playlist, average track length: "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.averageTrackLength})]})}),Object(a.jsx)("br",{}),Object(a.jsx)("small",{children:Object(a.jsxs)("small",{children:[Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:"Playlist length: "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.playlistLengthMinutes}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" minutes "}),Object(a.jsx)(Ve,{face:"Arial",color:"#FFBF00",children:e.playlistLengthSeconds}),Object(a.jsx)(Ve,{color:"#409FFF",face:"Arial",children:" second "}),Object(a.jsx)("br",{}),Object(a.jsxs)(Ve,{color:"#409FFF",face:"Arial",children:["Right-click ",Object(a.jsx)("a",{href:"./",children:"here"})," to save this HTML file."]})]})})]})})})})}),Object(a.jsxs)("blockquote",{children:[Object(a.jsx)("p",{children:Object(a.jsx)(Ve,{color:"#FFBF00",face:"Arial",children:Object(a.jsx)("big",{children:"Playlist files:"})})}),Object(a.jsx)("ul",{children:Object(a.jsx)(Ve,{face:"Arial",color:"#FFFFFF",children:Object(a.jsx)("small",{children:e.tracks.map(e=>Object(a.jsxs)("span",{children:[e,Object(a.jsx)("br",{})]},e))})})})]}),Object(a.jsx)(Fe,{align:"left",width:"90%",size:"1",color:"#FFBF00",style:De})]})]}),ze=e=>{return A=(e=>{const A=document.createElement("div");return Object(l.render)(Object(a.jsx)(Ke,je({},e)),A),A.innerHTML})(e),"data:text/html;base64,"+window.btoa(A);var A},Ye=(e,A)=>{const t=(n=(A-50)/50*12,(Math.round(10*n)/10).toFixed(1));var n;var r;return`EQ: ${"preamp"===e?"Preamp":(r=e)<1e3?r+"HZ":r/1e3+"KHZ"} ${(e=>e>0?"+"+e:e.toString())(t)} DB`};function Je(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function _e(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Je(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Je(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const He=e=>e.equalizer.sliders,qe=Object(q.createSelector)(He,e=>{const A={name:"Entry1",preamp:M.e(e.preamp)};R.a.forEach(t=>{A["hz"+t]=M.e(e[t])});return{presets:[A],type:"Winamp EQ library file v1.1"}}),Ze=e=>e.tracks,We=e=>A=>{var t;return null===(t=e.tracks[A])||void 0===t?void 0:t.url},Xe=e=>e.playlist.trackOrder,$e=Object(q.createSelector)(Xe,e=>e.length),eA=Object(q.createSelector)(Ze,Xe,(e,A)=>A.filter(A=>e[A])),AA=Object(q.createSelector)(Ze,Xe,(e,A)=>A.map(A=>{const t=e[A];return{url:t.url,metaData:{artist:t.artist||"",title:t.title||"",album:t.album,albumArtUrl:t.albumArtUrl||""}}})),tA=Object(q.createSelector)(Ze,eA,(e,A)=>A.map(A=>e[A])),nA=e=>e.playlist.selectedTracks,rA=Object(q.createSelector)(tA,nA,(e,A)=>e.filter(e=>A.has(e.id))),aA=e=>e.reduce((e,A)=>e+Number(A.duration),0),iA=Object(q.createSelector)(tA,aA),oA=Object(q.createSelector)(rA,aA),lA=Object(q.createSelector)(iA,oA,(e,A)=>`${M.j(A)}/${M.j(e)}`),sA=e=>{const{playlist:A}=e;return null==A.currentTrack?-1:A.trackOrder.indexOf(A.currentTrack)},cA=Object(q.createSelector)(sA,e=>e+1),uA=e=>e.playlist.currentTrack,dA=(e,A=1)=>{const{playlist:{trackOrder:t},media:{repeat:n,shuffle:r}}=e;if(r)return(e=>{const{playlist:{trackOrder:A,currentTrack:t}}=e;if(0===A.length)return null;let n;do{n=A[Math.floor(A.length*Math.random())]}while(n===t&&A.length>1);return n})(e);const a=$e(e);if(0===a)return null;const i=sA(e);let o=i+A;return n?(o%=a,o<0&&(o+=a),t[o]):i===a-1&&A>0||0===i&&A<0?null:(o=M.d(o,0,a-1),t[o])},gA=e=>e.windows.genWindows,pA=Object(q.createSelector)(gA,e=>A=>e[A].open),hA=Object(q.createSelector)((function(e){return"WINDOW"===e.milkdrop.display}),e=>A=>A===R.m.MILKDROP&&!e),fA=Object(q.createSelector)(gA,e=>A=>e[A].shade),mA=Object(q.createSelector)(gA,e=>A=>e[A].size),EA=Object(q.createSelector)(gA,e=>M.t(e,e=>e.position)),bA=Object(q.createSelector)(mA,e=>{const A=e("playlist");return Math.floor((58+R.n*A[1])/R.i)}),wA=Object(q.createSelector)($e,bA,(e,A)=>Math.max(0,e-A)),yA=e=>e.display.playlistScrollPosition,OA=Object(q.createSelector)(wA,yA,(e,A)=>0===e?0:Math.round(Math.round(e*A/100)/e*100)),IA=Object(q.createSelector)(yA,$e,bA,(e,A,t)=>{const n=Math.max(0,A-t);return M.w(e/100,n+1)}),SA=Object(q.createSelector)(IA,Xe,bA,(e,A,t)=>A.slice(e,e+t));function kA(e){return SA(e).length===e.playlist.trackOrder.length}const UA=Object(q.createSelector)(SA,e=>A=>e.includes(A)),vA=(Object(q.createSelector)(SA,Ze,(e,A)=>e.map(e=>A[e])),e=>{const{playlist:A,tracks:t}=e;if(null==A.currentTrack)return null;const n=t[A.currentTrack];return n&&n.duration}),CA=Object(q.createSelector)(Ze,e=>Object(q.defaultMemoize)(A=>((e,A=null)=>{if(null==A)return null;const t=e[A];return null==t?null:Se(t)})(e,A))),BA=Object(q.createSelector)(uA,CA,(e,A)=>A(e)),xA=e=>e.media.status,MA=e=>e.media.status===R.f.PLAYING,NA=Object(q.createSelector)(uA,Ze,(e,A)=>null==e?null:A[e]),TA=Object(q.createSelector)(MA,NA,(e,A)=>e&&A&&A.mediaTagsRequestStatus!==R.g.INITIALIZED?A.id:null),QA=Object(q.createSelector)(NA,e=>null==e?null:{url:e.url,metaData:{title:e.title||null,artist:e.artist||null,album:e.album||null,albumArtUrl:e.albumArtUrl||null}}),LA=Object(q.createSelector)(cA,BA,(e,A)=>null==A?null:`${e}. ${A}`),jA=Object(q.createSelector)(LA,vA,(e,A)=>null==e?null:`${e} (${M.j(A)})`),DA=e=>Xe(e).length,RA=Object(q.createSelector)(Ze,e=>Object.values(e).reduce((e,A)=>e+(A.duration||0),0)),VA=Object(q.createSelector)(DA,RA,Xe,Ze,CA,(e,A,t,n,r)=>ze({numberOfTracks:e,averageTrackLength:M.j(A/e),playlistLengthMinutes:Math.floor(A/60),playlistLengthSeconds:Math.floor(A%60),tracks:t.map((e,A)=>`${A+1}. ${r(e)} (${M.j(n[e].duration)})`)}));function FA(e,A){const[t,n]=e.size,r=A&&e.canDouble?2:1,a=116+n*R.n,i=R.p+t*R.o;return{height:(e.shade?14:a)*r,width:i*r}}function GA(e){return e.windows.focused}function PA(e){return e.display.doubled}function KA(e){return e.display.llama}function zA(e){return e.display.zIndex}const YA=Object(q.createSelector)(gA,PA,(e,A)=>M.t(e,e=>FA(e,A))),JA=Object(q.createSelector)(YA,e=>A=>e[A]),_A=Object(q.createSelector)(e=>e.windows.windowOrder,gA,(e,A)=>[R.m.MAIN,...e.filter(e=>e!==R.m.MAIN&&null!=A[e])]),HA=Object(q.createSelector)(YA,EA,_A,(e,A,t)=>t.map(t=>_e(_e({key:t},e[t]),A[t]))),qA=Object(q.createSelector)(HA,(function(e){const A={},t={};for(const n of e){const e=n.y+n.height;A[e]?A[e].push(n):A[e]=[n];const r=n.x+n.width;t[r]?t[r].push(n):t[r]=[n]}const n={};for(const r of e){const e={},a=r.y,i=r.x,o=A[a],l=t[i];if(o)for(const A of o){const t=A.x+A.width<r.x,n=A.x>r.x+r.width;if(!(t||n)){e.below=A.key;break}}if(l)for(const A of l){const t=A.y+A.height<r.y,n=A.y>r.y+r.height;if(!(t||n)){e.right=A.key;break}}n[r.key]=e}return n})),ZA={normal:"#00FF00",current:"#FFFFFF",normalbg:"#000000",selectedbg:"#0000C6",font:"Arial"};function WA(e){return e.display.skinColors}const XA=e=>e.display.skinPlaylistStyle||ZA,$A=e=>{const A=e.windows.genWindows[R.m.MILKDROP];return null!=A&&A.open?R.k.MILKDROP:te(e.display)},et=e=>e.media.volume,At=e=>e.media.balance,tt=e=>e.media.shuffle,nt=e=>e.media.repeat,rt=Object(q.createSelector)(NA,e=>null!=e&&e.channels||null),at=e=>e.media.timeElapsed;function it(e){return e.equalizer.on}function ot(e){return e.windows.browserWindowSize}const lt=Object(q.createSelector)(gA,e=>M.r(e,e=>e.open)),st=Object(q.createSelector)(lt,PA,(e,A)=>{let t=0;return M.t(e,e=>{const n={x:0,y:t};return t+=FA(e,A).height,n})}),ct=e=>e.userInput.focus,ut=e=>e.userInput.scrubPosition,dt=e=>{if(null!=e.userInput.userMessage)return e.userInput.userMessage;switch(ct(e)){case"balance":return(e=>{if(0===e)return"Balance: Center";const A=e>0?"Right":"Left";return`Balance: ${Math.abs(e)}% ${A}`})(e.media.balance);case"volume":return`Volume: ${e.media.volume}%`;case"position":const A=vA(e);return null==A?"Winamp 2.91":((e,A)=>`Seek to: ${M.j(e*A/100,!1)}/${M.j(e,!1)} (${A}%)`)(A,ut(e));case"double":return(e.display.doubled?"Disable":"Enable")+" doublesize mode";case"eq":const t=e.userInput.bandFocused;return null==t?"Winamp 2.91":Ye(t,e.equalizer.sliders[t])}if(null!=e.playlist.currentTrack){const A=jA(e);return null==A?"Winamp 2.91":A}return"Winamp 2.91"},gt=Object(q.createSelector)(NA,e=>null!=e&&e.kbps||null),pt=Object(q.createSelector)(NA,e=>null!=e&&e.khz||null);function ht(e){return e.milkdrop.message}function ft(e){return"DESKTOP"===e.milkdrop.display}function mt(e){return"FULLSCREEN"===e.milkdrop.display}function Et(e){return e.milkdrop.butterchurn}function bt(e){return e.milkdrop.transitionType}function wt(e){return e.milkdrop.currentPresetIndex}function yt(e){const A=wt(e);if(null==A)return null;const t=e.milkdrop.presets[A];return null==t||"UNRESOLVED"===t.type?null:t.preset}function Ot(e){return e.milkdrop.presets.map(e=>e.name)}function It(e){return e.milkdrop.overlay}function St(e){return e.milkdrop.cycling}function kt(e){return e.milkdrop.randomize}function Ut(e){return e.display.closed}function vt(e){return e.display.skinRegion}const Ct=Object(q.createSelector)((function(e){return e.display.skinImages.EQ_PREAMP_LINE}),async e=>null==e?null:M.n(e)),Bt=Object(q.createSelector)((function(e){return e.display.skinImages.EQ_GRAPH_LINE_COLORS}),async e=>null==e?null:M.n(e));function xt(e){return e.display.dummyVizData}function Mt(e){return e.display.marqueeStep}function Nt(e){return e.network.connected}function Tt(e){return e.media.timeMode}function Qt(e){return e.display.loading}function Lt(e){return e.display.working}function jt(e){return e.settings.availableSkins}const Dt=e=>e.y,Rt=e=>e.y+e.height,Vt=e=>e.x,Ft=e=>e.x+e.width,Gt=(e,A)=>Math.abs(e-A)<15,Pt=(e,A)=>{let t,n;var r,a;return a=A,Dt(r=e)<=Rt(a)+15&&Dt(a)<=Rt(r)+15&&(Gt(Vt(e),Ft(A))?t=Ft(A):Gt(Ft(e),Vt(A))?t=Vt(A)-e.width:Gt(Vt(e),Vt(A))?t=Vt(A):Gt(Ft(e),Ft(A))&&(t=Ft(A)-e.width)),((e,A)=>Vt(e)<=Ft(A)+15&&Vt(A)<=Ft(e)+15)(e,A)&&(Gt(Dt(e),Rt(A))?n=Rt(A):Gt(Rt(e),Dt(A))?n=Dt(A)-e.height:Gt(Dt(e),Dt(A))?n=Dt(A):Gt(Rt(e),Rt(A))&&(n=Rt(A)-e.height)),{x:t,y:n}},Kt=(e,A)=>{const t=Pt(e,A);return{x:void 0===t.x?0:t.x-e.x,y:void 0===t.y?0:t.y-e.y}};const zt=(e,A)=>({x:e.x+A.x,y:e.y+A.y});function Yt(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Jt(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Yt(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yt(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function _t(e){return(A,t)=>{const n=t(),r=qA(n),a=YA(n);A(e);const i=YA(t()),o={};for(const e of Object.keys(i)){const A=a[e],t=i[e];o[e]={height:t.height-A.height,width:t.width-A.width}}const l=function(e,A){const t={},n={};for(const A of Object.keys(e))t[A]={above:[],left:[]},n[A]={x:0,y:0};for(const[A,n]of Object.entries(e)){const{below:e,right:r}=n;null!=r&&t[r].left.push(A),null!=e&&t[e].above.push(A)}function r(e){const a=t[e],i=A[e];a.left.forEach(A=>{n[A].x+=i.width+n[e].x,r(A)})}function a(e){const r=t[e],i=A[e];r.above.forEach(A=>{n[A].y+=i.height+n[e].y,a(A)})}for(const[A,t]of Object.entries(e))null==t.below&&a(A),null==t.right&&r(A);return n}(r,o),s=EA(n);A(tn(M.t(s,(e,A)=>zt(e,l[A]))))}}function Ht(){return _t({type:"TOGGLE_DOUBLESIZE_MODE"})}function qt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"equalizer"})}function Zt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"main"})}function Wt(){return _t({type:"TOGGLE_WINDOW_SHADE_MODE",windowId:"playlist"})}function Xt(e){return{type:"CLOSE_WINDOW",windowId:e}}function $t(e){return{type:"SET_FOCUSED_WINDOW",window:e}}function en(e,A){return{type:"WINDOW_SIZE_CHANGED",windowId:e,size:A}}function An(e){return{type:"TOGGLE_WINDOW",windowId:e}}function tn(e,A){return{type:"UPDATE_WINDOW_POSITIONS",positions:e,absolute:A}}function nn(e){return(A,t)=>{const n=t(),r=HA(n),a=pA(n),{top:i,left:o,width:l,height:s}=e,c=o+window.scrollX,u=i+window.scrollY,d=M.c(r.filter(e=>a(e.key)));if(null==d)return;const g=d.bottom-d.top,p=d.right-d.left,h=Math.ceil(c-d.left+(l-p)/2),f=Math.ceil(u-d.top+(s-g)/2);A(tn(r.reduce((e,A)=>Jt(Jt({},e),{},{[A.key]:{x:h+A.x,y:f+A.y}}),{}),!0))}}function rn(e){return A=>{A(Jt({type:"BROWSER_WINDOW_SIZE_CHANGED"},e)),A(on())}}function an(){return(e,A)=>{e(tn(st(A())))}}function on(){return(e,A)=>{const t=A(),n=HA(t),r=pA(t),{height:a,width:i}=M.k(),o=M.c(n.filter(e=>r(e.key)));if(null==o)return;const l=EA(t);if(o.left>=0&&o.top>=0&&o.right<=i&&o.bottom<=a)return;const s=o.bottom-o.top;if(o.right-o.left<=i&&s<=a){let A=0,t=0;o.top<=0?A=o.top:o.bottom>a&&(A=o.bottom-a),o.left<=0?t=o.left:o.right>i&&(t=o.right-i);e(tn(M.t(l,e=>({x:e.x-t,y:e.y-A}))))}else e({type:"RESET_WINDOW_SIZES"}),e(an()),e(nn({left:window.scrollX,top:window.scrollY,width:window.innerWidth,height:window.innerHeight}))}}function ln(e){return{type:"PLAY_TRACK",id:e}}function sn(){return(e,A)=>{const t=A();t.media.status===R.f.STOPPED&&null==t.playlist.currentTrack&&0===t.playlist.trackOrder.length?e(Tr()):e({type:"PLAY"})}}function cn(){return(e,A)=>{const{status:t}=A().media;t===R.f.PLAYING?e({type:"PAUSE"}):e({type:"PLAY"})}}function un(){return{type:"STOP"}}function dn(e){return(A,t)=>{const n=dA(t(),e);var r;null!=n?A((r=n,(e,A)=>{const t=A();e(xA(t)===R.f.STOPPED?{type:"BUFFER_TRACK",id:r}:{type:"PLAY_TRACK",id:r})})):A({type:"IS_STOPPED"})}}function gn(){return dn(1)}function pn(){return dn(-1)}function hn(e){return function(A,t){const n=t(),r=vA(n);null!=r&&A({type:"SEEK_TO_PERCENT_COMPLETE",percent:e/r*100})}}function fn(e){return function(A,t){A(hn(at(t())+e))}}function mn(e){return fn(-e)}function En(e){return{type:"SET_VOLUME",volume:Object(M.d)(e,0,100)}}function bn(e){return(A,t)=>A(En(t().media.volume+e))}function wn(e){return e.preventDefault(),(A,t)=>A(En(t().media.volume+e.deltaY))}function yn(e){return e=Object(M.d)(e,-100,100),Math.abs(e)<25&&(e=0),{type:"SET_BALANCE",balance:e}}function On(){return{type:"TOGGLE_REPEAT"}}function In(){return{type:"TOGGLE_SHUFFLE"}}function Sn(){return{type:"TOGGLE_TIME_MODE"}}function kn(e){return e<55&&e>45?50:e}function Un(e,A){return{type:"SET_BAND_VALUE",band:e,value:kn(A)}}function vn(e){return A=>{Object.values(R.a).forEach(t=>{A({type:"SET_BAND_VALUE",value:e,band:t})})}}function Cn(){return vn(100)}function Bn(){return vn(50)}function xn(){return vn(0)}function Mn(e){return{type:"SET_BAND_VALUE",band:"preamp",value:kn(e)}}function Nn(){return(e,A)=>{A().equalizer.on?e({type:"SET_EQ_OFF"}):e({type:"SET_EQ_ON"})}}function Tn(){return e=>{e({type:"SET_EQ_AUTO",value:!1})}}var Qn=t(31);const Ln={a:[0,0],b:[0,1],c:[0,2],d:[0,3],e:[0,4],f:[0,5],g:[0,6],h:[0,7],i:[0,8],j:[0,9],k:[0,10],l:[0,11],m:[0,12],n:[0,13],o:[0,14],p:[0,15],q:[0,16],r:[0,17],s:[0,18],t:[0,19],u:[0,20],v:[0,21],w:[0,22],x:[0,23],y:[0,24],z:[0,25],'"':[0,26],"@":[0,27]," ":[0,30],0:[1,0],1:[1,1],2:[1,2],3:[1,3],4:[1,4],5:[1,5],6:[1,6],7:[1,7],8:[1,8],9:[1,9],[R.j]:[1,10],".":[1,11],":":[1,12],"(":[1,13],")":[1,14],"-":[1,15],"'":[1,16],"!":[1,17],_:[1,18],"+":[1,19],"\\":[1,20],"/":[1,21],"[":[1,22],"]":[1,23],"^":[1,24],"&":[1,25],"%":[1,26],",":[1,27],"=":[1,28],$:[1,29],"#":[1,30],"Å":[2,0],"Ö":[2,1],"Ä":[2,2],"?":[2,3],"*":[2,4],"<":[1,22],">":[1,23],"{":[1,22],"}":[1,23]},jn=e=>"CHARACTER_"+e.charCodeAt(0),Dn=[];for(const e in Ln)if(Ln.hasOwnProperty(e)){const A=Ln[e];Dn.push({name:jn(e),y:6*A[0],x:5*A[1],width:5,height:6})}var Rn={BALANCE:[{name:"MAIN_BALANCE_BACKGROUND",x:9,y:0,width:38,height:420},{name:"MAIN_BALANCE_THUMB",x:15,y:422,width:14,height:11},{name:"MAIN_BALANCE_THUMB_ACTIVE",x:0,y:422,width:14,height:11}],CBUTTONS:[{name:"MAIN_PREVIOUS_BUTTON",x:0,y:0,width:23,height:18},{name:"MAIN_PREVIOUS_BUTTON_ACTIVE",x:0,y:18,width:23,height:18},{name:"MAIN_PLAY_BUTTON",x:23,y:0,width:23,height:18},{name:"MAIN_PLAY_BUTTON_ACTIVE",x:23,y:18,width:23,height:18},{name:"MAIN_PAUSE_BUTTON",x:46,y:0,width:23,height:18},{name:"MAIN_PAUSE_BUTTON_ACTIVE",x:46,y:18,width:23,height:18},{name:"MAIN_STOP_BUTTON",x:69,y:0,width:23,height:18},{name:"MAIN_STOP_BUTTON_ACTIVE",x:69,y:18,width:23,height:18},{name:"MAIN_NEXT_BUTTON",x:92,y:0,width:23,height:18},{name:"MAIN_NEXT_BUTTON_ACTIVE",x:92,y:18,width:22,height:18},{name:"MAIN_EJECT_BUTTON",x:114,y:0,width:22,height:16},{name:"MAIN_EJECT_BUTTON_ACTIVE",x:114,y:16,width:22,height:16}],MAIN:[{name:"MAIN_WINDOW_BACKGROUND",x:0,y:0,width:275,height:116}],MONOSTER:[{name:"MAIN_STEREO",x:0,y:12,width:29,height:12},{name:"MAIN_STEREO_SELECTED",x:0,y:0,width:29,height:12},{name:"MAIN_MONO",x:29,y:12,width:27,height:12},{name:"MAIN_MONO_SELECTED",x:29,y:0,width:27,height:12}],NUMBERS:[{name:"NO_MINUS_SIGN",x:9,y:6,width:5,height:1},{name:"MINUS_SIGN",x:20,y:6,width:5,height:1},{name:"DIGIT_0",x:0,y:0,width:9,height:13},{name:"DIGIT_1",x:9,y:0,width:9,height:13},{name:"DIGIT_2",x:18,y:0,width:9,height:13},{name:"DIGIT_3",x:27,y:0,width:9,height:13},{name:"DIGIT_4",x:36,y:0,width:9,height:13},{name:"DIGIT_5",x:45,y:0,width:9,height:13},{name:"DIGIT_6",x:54,y:0,width:9,height:13},{name:"DIGIT_7",x:63,y:0,width:9,height:13},{name:"DIGIT_8",x:72,y:0,width:9,height:13},{name:"DIGIT_9",x:81,y:0,width:9,height:13}],NUMS_EX:[{name:"NO_MINUS_SIGN_EX",x:90,y:0,width:9,height:13},{name:"MINUS_SIGN_EX",x:99,y:0,width:9,height:13},{name:"DIGIT_0_EX",x:0,y:0,width:9,height:13},{name:"DIGIT_1_EX",x:9,y:0,width:9,height:13},{name:"DIGIT_2_EX",x:18,y:0,width:9,height:13},{name:"DIGIT_3_EX",x:27,y:0,width:9,height:13},{name:"DIGIT_4_EX",x:36,y:0,width:9,height:13},{name:"DIGIT_5_EX",x:45,y:0,width:9,height:13},{name:"DIGIT_6_EX",x:54,y:0,width:9,height:13},{name:"DIGIT_7_EX",x:63,y:0,width:9,height:13},{name:"DIGIT_8_EX",x:72,y:0,width:9,height:13},{name:"DIGIT_9_EX",x:81,y:0,width:9,height:13}],PLAYPAUS:[{name:"MAIN_PLAYING_INDICATOR",x:0,y:0,width:9,height:9},{name:"MAIN_PAUSED_INDICATOR",x:9,y:0,width:9,height:9},{name:"MAIN_STOPPED_INDICATOR",x:18,y:0,width:9,height:9},{name:"MAIN_NOT_WORKING_INDICATOR",x:36,y:0,width:9,height:9},{name:"MAIN_WORKING_INDICATOR",x:39,y:0,width:9,height:9}],PLEDIT:[{name:"PLAYLIST_TOP_TILE",x:127,y:21,width:25,height:20},{name:"PLAYLIST_TOP_LEFT_CORNER",x:0,y:21,width:25,height:20},{name:"PLAYLIST_TITLE_BAR",x:26,y:21,width:100,height:20},{name:"PLAYLIST_TOP_RIGHT_CORNER",x:153,y:21,width:25,height:20},{name:"PLAYLIST_TOP_TILE_SELECTED",x:127,y:0,width:25,height:20},{name:"PLAYLIST_TOP_LEFT_SELECTED",x:0,y:0,width:25,height:20},{name:"PLAYLIST_TITLE_BAR_SELECTED",x:26,y:0,width:100,height:20},{name:"PLAYLIST_TOP_RIGHT_CORNER_SELECTED",x:153,y:0,width:25,height:20},{name:"PLAYLIST_LEFT_TILE",x:0,y:42,width:12,height:29},{name:"PLAYLIST_RIGHT_TILE",x:31,y:42,width:20,height:29},{name:"PLAYLIST_BOTTOM_TILE",x:179,y:0,width:25,height:38},{name:"PLAYLIST_BOTTOM_LEFT_CORNER",x:0,y:72,width:125,height:38},{name:"PLAYLIST_BOTTOM_RIGHT_CORNER",x:126,y:72,width:150,height:38},{name:"PLAYLIST_VISUALIZER_BACKGROUND",x:205,y:0,width:75,height:38},{name:"PLAYLIST_SHADE_BACKGROUND",x:72,y:57,width:25,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_LEFT",x:72,y:42,width:25,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_RIGHT",x:99,y:57,width:50,height:14},{name:"PLAYLIST_SHADE_BACKGROUND_RIGHT_SELECTED",x:99,y:42,width:50,height:14},{name:"PLAYLIST_SCROLL_HANDLE_SELECTED",x:61,y:53,width:8,height:18},{name:"PLAYLIST_SCROLL_HANDLE",x:52,y:53,width:8,height:18},{name:"PLAYLIST_ADD_URL",x:0,y:111,width:22,height:18},{name:"PLAYLIST_ADD_URL_SELECTED",x:23,y:111,width:22,height:18},{name:"PLAYLIST_ADD_DIR",x:0,y:130,width:22,height:18},{name:"PLAYLIST_ADD_DIR_SELECTED",x:23,y:130,width:22,height:18},{name:"PLAYLIST_ADD_FILE",x:0,y:149,width:22,height:18},{name:"PLAYLIST_ADD_FILE_SELECTED",x:23,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_ALL",x:54,y:111,width:22,height:18},{name:"PLAYLIST_REMOVE_ALL_SELECTED",x:77,y:111,width:22,height:18},{name:"PLAYLIST_CROP",x:54,y:130,width:22,height:18},{name:"PLAYLIST_CROP_SELECTED",x:77,y:130,width:22,height:18},{name:"PLAYLIST_REMOVE_SELECTED",x:54,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_SELECTED_SELECTED",x:77,y:149,width:22,height:18},{name:"PLAYLIST_REMOVE_MISC",x:54,y:168,width:22,height:18},{name:"PLAYLIST_REMOVE_MISC_SELECTED",x:77,y:168,width:22,height:18},{name:"PLAYLIST_INVERT_SELECTION",x:104,y:111,width:22,height:18},{name:"PLAYLIST_INVERT_SELECTION_SELECTED",x:127,y:111,width:22,height:18},{name:"PLAYLIST_SELECT_ZERO",x:104,y:130,width:22,height:18},{name:"PLAYLIST_SELECT_ZERO_SELECTED",x:127,y:130,width:22,height:18},{name:"PLAYLIST_SELECT_ALL",x:104,y:149,width:22,height:18},{name:"PLAYLIST_SELECT_ALL_SELECTED",x:127,y:149,width:22,height:18},{name:"PLAYLIST_SORT_LIST",x:154,y:111,width:22,height:18},{name:"PLAYLIST_SORT_LIST_SELECTED",x:177,y:111,width:22,height:18},{name:"PLAYLIST_FILE_INFO",x:154,y:130,width:22,height:18},{name:"PLAYLIST_FILE_INFO_SELECTED",x:177,y:130,width:22,height:18},{name:"PLAYLIST_MISC_OPTIONS",x:154,y:149,width:22,height:18},{name:"PLAYLIST_MISC_OPTIONS_SELECTED",x:177,y:149,width:22,height:18},{name:"PLAYLIST_NEW_LIST",x:204,y:111,width:22,height:18},{name:"PLAYLIST_NEW_LIST_SELECTED",x:227,y:111,width:22,height:18},{name:"PLAYLIST_SAVE_LIST",x:204,y:130,width:22,height:18},{name:"PLAYLIST_SAVE_LIST_SELECTED",x:227,y:130,width:22,height:18},{name:"PLAYLIST_LOAD_LIST",x:204,y:149,width:22,height:18},{name:"PLAYLIST_LOAD_LIST_SELECTED",x:227,y:149,width:22,height:18},{name:"PLAYLIST_ADD_MENU_BAR",x:48,y:111,width:3,height:54},{name:"PLAYLIST_REMOVE_MENU_BAR",x:100,y:111,width:3,height:72},{name:"PLAYLIST_SELECT_MENU_BAR",x:150,y:111,width:3,height:54},{name:"PLAYLIST_MISC_MENU_BAR",x:200,y:111,width:3,height:54},{name:"PLAYLIST_LIST_BAR",x:250,y:111,width:3,height:54},{name:"PLAYLIST_CLOSE_SELECTED",x:52,y:42,width:9,height:9},{name:"PLAYLIST_COLLAPSE_SELECTED",x:62,y:42,width:9,height:9},{name:"PLAYLIST_EXPAND_SELECTED",x:150,y:42,width:9,height:9}],EQ_EX:[{name:"EQ_SHADE_BACKGROUND_SELECTED",x:0,y:0,width:275,height:14},{name:"EQ_SHADE_BACKGROUND",x:0,y:15,width:275,height:14},{name:"EQ_SHADE_VOLUME_SLIDER_LEFT",x:1,y:30,width:3,height:7},{name:"EQ_SHADE_VOLUME_SLIDER_CENTER",x:4,y:30,width:3,height:7},{name:"EQ_SHADE_VOLUME_SLIDER_RIGHT",x:7,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_LEFT",x:11,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_CENTER",x:14,y:30,width:3,height:7},{name:"EQ_SHADE_BALANCE_SLIDER_RIGHT",x:17,y:30,width:3,height:7},{name:"EQ_MAXIMIZE_BUTTON_ACTIVE",x:1,y:38,width:9,height:9},{name:"EQ_MINIMIZE_BUTTON_ACTIVE",x:1,y:47,width:9,height:9},{name:"EQ_SHADE_CLOSE_BUTTON",x:11,y:38,width:9,height:9},{name:"EQ_SHADE_CLOSE_BUTTON_ACTIVE",x:11,y:47,width:9,height:9}],EQMAIN:[{name:"EQ_WINDOW_BACKGROUND",x:0,y:0,width:275,height:116},{name:"EQ_TITLE_BAR",x:0,y:149,width:275,height:14},{name:"EQ_TITLE_BAR_SELECTED",x:0,y:134,width:275,height:14},{name:"EQ_SLIDER_BACKGROUND",x:13,y:164,width:209,height:129},{name:"EQ_SLIDER_THUMB",x:0,y:164,width:11,height:11},{name:"EQ_SLIDER_THUMB_SELECTED",x:0,y:176,width:11,height:11},{name:"EQ_CLOSE_BUTTON",x:0,y:116,width:9,height:9},{name:"EQ_CLOSE_BUTTON_ACTIVE",x:0,y:125,width:9,height:9},{name:"EQ_MAXIMIZE_BUTTON_ACTIVE_FALLBACK",x:254,y:152,width:9,height:9},{name:"EQ_ON_BUTTON",x:10,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_DEPRESSED",x:128,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_SELECTED",x:69,y:119,width:26,height:12},{name:"EQ_ON_BUTTON_SELECTED_DEPRESSED",x:187,y:119,width:26,height:12},{name:"EQ_AUTO_BUTTON",x:36,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_DEPRESSED",x:154,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_SELECTED",x:95,y:119,width:32,height:12},{name:"EQ_AUTO_BUTTON_SELECTED_DEPRESSED",x:213,y:119,width:32,height:12},{name:"EQ_GRAPH_BACKGROUND",x:0,y:294,width:113,height:19},{name:"EQ_GRAPH_LINE_COLORS",x:115,y:294,width:1,height:19},{name:"EQ_PRESETS_BUTTON",x:224,y:164,width:44,height:12},{name:"EQ_PRESETS_BUTTON_SELECTED",x:224,y:176,width:44,height:12},{name:"EQ_PREAMP_LINE",x:0,y:314,width:113,height:1}],POSBAR:[{name:"MAIN_POSITION_SLIDER_BACKGROUND",x:0,y:0,width:248,height:10},{name:"MAIN_POSITION_SLIDER_THUMB",x:248,y:0,width:29,height:10},{name:"MAIN_POSITION_SLIDER_THUMB_SELECTED",x:278,y:0,width:29,height:10}],SHUFREP:[{name:"MAIN_SHUFFLE_BUTTON",x:28,y:0,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_DEPRESSED",x:28,y:15,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_SELECTED",x:28,y:30,width:47,height:15},{name:"MAIN_SHUFFLE_BUTTON_SELECTED_DEPRESSED",x:28,y:45,width:47,height:15},{name:"MAIN_REPEAT_BUTTON",x:0,y:0,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_DEPRESSED",x:0,y:15,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_SELECTED",x:0,y:30,width:28,height:15},{name:"MAIN_REPEAT_BUTTON_SELECTED_DEPRESSED",x:0,y:45,width:28,height:15},{name:"MAIN_EQ_BUTTON",x:0,y:61,width:23,height:12},{name:"MAIN_EQ_BUTTON_SELECTED",x:0,y:73,width:23,height:12},{name:"MAIN_EQ_BUTTON_DEPRESSED",x:46,y:61,width:23,height:12},{name:"MAIN_EQ_BUTTON_DEPRESSED_SELECTED",x:46,y:73,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON",x:23,y:61,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_SELECTED",x:23,y:73,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_DEPRESSED",x:69,y:61,width:23,height:12},{name:"MAIN_PLAYLIST_BUTTON_DEPRESSED_SELECTED",x:69,y:73,width:23,height:12}],TEXT:Dn,TITLEBAR:[{name:"MAIN_TITLE_BAR",x:27,y:15,width:275,height:14},{name:"MAIN_TITLE_BAR_SELECTED",x:27,y:0,width:275,height:14},{name:"MAIN_EASTER_EGG_TITLE_BAR",x:27,y:72,width:275,height:14},{name:"MAIN_EASTER_EGG_TITLE_BAR_SELECTED",x:27,y:57,width:275,height:14},{name:"MAIN_OPTIONS_BUTTON",x:0,y:0,width:9,height:9},{name:"MAIN_OPTIONS_BUTTON_DEPRESSED",x:0,y:9,width:9,height:9},{name:"MAIN_MINIMIZE_BUTTON",x:9,y:0,width:9,height:9},{name:"MAIN_MINIMIZE_BUTTON_DEPRESSED",x:9,y:9,width:9,height:9},{name:"MAIN_SHADE_BUTTON",x:0,y:18,width:9,height:9},{name:"MAIN_SHADE_BUTTON_DEPRESSED",x:9,y:18,width:9,height:9},{name:"MAIN_CLOSE_BUTTON",x:18,y:0,width:9,height:9},{name:"MAIN_CLOSE_BUTTON_DEPRESSED",x:18,y:9,width:9,height:9},{name:"MAIN_CLUTTER_BAR_BACKGROUND",x:304,y:0,width:8,height:43},{name:"MAIN_CLUTTER_BAR_BACKGROUND_DISABLED",x:312,y:0,width:8,height:43},{name:"MAIN_CLUTTER_BAR_BUTTON_O_SELECTED",x:304,y:47,width:8,height:8},{name:"MAIN_CLUTTER_BAR_BUTTON_A_SELECTED",x:312,y:55,width:8,height:7},{name:"MAIN_CLUTTER_BAR_BUTTON_I_SELECTED",x:320,y:62,width:8,height:7},{name:"MAIN_CLUTTER_BAR_BUTTON_D_SELECTED",x:328,y:69,width:8,height:8},{name:"MAIN_CLUTTER_BAR_BUTTON_V_SELECTED",x:336,y:77,width:8,height:7},{name:"MAIN_SHADE_BACKGROUND",x:27,y:42,width:275,height:14},{name:"MAIN_SHADE_BACKGROUND_SELECTED",x:27,y:29,width:275,height:14},{name:"MAIN_SHADE_BUTTON_SELECTED",x:0,y:27,width:9,height:9},{name:"MAIN_SHADE_BUTTON_SELECTED_DEPRESSED",x:9,y:27,width:9,height:9},{name:"MAIN_SHADE_POSITION_BACKGROUND",x:0,y:36,width:17,height:7},{name:"MAIN_SHADE_POSITION_THUMB",x:20,y:36,width:3,height:7},{name:"MAIN_SHADE_POSITION_THUMB_LEFT",x:17,y:36,width:3,height:7},{name:"MAIN_SHADE_POSITION_THUMB_RIGHT",x:23,y:36,width:3,height:7}],VOLUME:[{name:"MAIN_VOLUME_BACKGROUND",x:0,y:0,width:68,height:420},{name:"MAIN_VOLUME_THUMB",x:15,y:422,width:14,height:11},{name:"MAIN_VOLUME_THUMB_SELECTED",x:0,y:422,width:14,height:11}],GEN:[{name:"GEN_TOP_LEFT_SELECTED",x:0,y:0,width:25,height:20},{name:"GEN_TOP_LEFT_END_SELECTED",x:26,y:0,width:25,height:20},{name:"GEN_TOP_CENTER_FILL_SELECTED",x:52,y:0,width:25,height:20},{name:"GEN_TOP_RIGHT_END_SELECTED",x:78,y:0,width:25,height:20},{name:"GEN_TOP_LEFT_RIGHT_FILL_SELECTED",x:104,y:0,width:25,height:20},{name:"GEN_TOP_RIGHT_SELECTED",x:130,y:0,width:25,height:20},{name:"GEN_TOP_LEFT",x:0,y:21,width:25,height:20},{name:"GEN_TOP_LEFT_END",x:26,y:21,width:25,height:20},{name:"GEN_TOP_CENTER_FILL",x:52,y:21,width:25,height:20},{name:"GEN_TOP_RIGHT_END",x:78,y:21,width:25,height:20},{name:"GEN_TOP_LEFT_RIGHT_FILL",x:104,y:21,width:25,height:20},{name:"GEN_TOP_RIGHT",x:130,y:21,width:25,height:20},{name:"GEN_BOTTOM_LEFT",x:0,y:42,width:125,height:14},{name:"GEN_BOTTOM_RIGHT",x:0,y:57,width:125,height:14},{name:"GEN_BOTTOM_FILL",x:127,y:72,width:25,height:14},{name:"GEN_MIDDLE_LEFT",x:127,y:42,width:11,height:29},{name:"GEN_MIDDLE_LEFT_BOTTOM",x:158,y:42,width:11,height:24},{name:"GEN_MIDDLE_RIGHT",x:139,y:42,width:8,height:29},{name:"GEN_MIDDLE_RIGHT_BOTTOM",x:170,y:42,width:8,height:24},{name:"GEN_CLOSE_SELECTED",x:148,y:42,width:9,height:9}]};function Vn(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Fn(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Vn(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Vn(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function Gn(e,A){return new RegExp(`^(.*[/\\\\])?${e}.(${A})$`,"i")}async function Pn(e,A,t,n){const r=e.file(Gn(A,t));if(!r.length)return null;const a=r[r.length-1];try{return{contents:await a.async(n),name:a.name}}catch(e){return console.warn(`Failed to extract "${A}.${t}" from the skin archive.`),null}}async function Kn(e){try{return await window.createImageBitmap(e)}catch(A){try{return await function(e){return M.n(URL.createObjectURL(e))}(e)}catch(e){return null}}}function zn(e,A){const t=document.createElement("canvas"),n=t.getContext("2d");if(null==n)throw new Error("Failed to get canvas context");const r={};return A.forEach(A=>{t.height=A.height,t.width=A.width,n.drawImage(e,-A.x,-A.y);const a=t.toDataURL();r[A.name]=a}),r}async function Yn(e,A){const t=await Pn(e,A,"(png|bmp)","blob");if(!t)return null;const n="image/"+((e=>{const A=/\.([a-z]{3,4})$/i.exec(e);return A?A[1].toLowerCase():null})(t.name)||"*");return Kn(new Blob([t.contents],{type:n}))}const Jn="RIFF".split("").map(e=>e.charCodeAt(0));async function _n(e,A){const t=await Pn(e,A,"CUR","uint8array");if(null==t)return null;const n=t.contents;return r=n,Jn.every((e,A)=>r[A]===e)?{type:"ani",aniData:n}:{type:"cur",url:Oe(n)};var r}async function Hn(e){const A=e.file(Gn("PLEDIT","txt"))[0];if(null==A)return R.c.playlistStyle;const t=await A.async("text");if(null==t)return R.c.playlistStyle;const n=t&&M.u(t).text;return n?(["normal","current","normalbg","selectedbg","mbFG","mbBG"].forEach(e=>{let A=n[e];A&&("#"!==A[0]&&(A="#"+A),n[e]=A.slice(0,7))}),Fn(Fn({},R.c.playlistStyle),n)):R.c.playlistStyle}async function qn(e){const A=await Yn(e,"GENEX");if(null==A)return null;const t=document.createElement("canvas"),n=t.getContext("2d");if(null==n)return null;t.width=A.width,t.height=A.height,n.drawImage(A,0,0);const r=e=>`rgb(${n.getImageData(e,0,1,1).data.slice(0,3).join(",")})`;return{itemBackground:r(48),itemForeground:r(50),windowBackground:r(52),buttonText:r(54),windowText:r(56),divider:r(58),playlistSelection:r(60),listHeaderBackground:r(62),listHeaderText:r(64),listHeaderFrameTopAndLeft:r(66),listHeaderFrameBottomAndRight:r(68),listHeaderFramePressed:r(70),listHeaderDeadArea:r(72),scrollbarOne:r(74),scrollbarTwo:r(76),pressedScrollbarOne:r(78),pressedScrollbarTwo:r(80),scrollbarDeadArea:r(82),listTextHighlighted:r(84),listTextHighlightedBackground:r(86),listTextSelected:r(88),listTextSelectedBackground:r(90)}}function Zn(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Wn(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Zn(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Zn(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Xn=e=>e.reduce((e,A)=>Object.assign(e,A),{}),$n=["CLOSE","EQCLOSE","EQNORMAL","EQSLID","EQTITLE","MAINMENU","MMENU","MIN","NORMAL","PCLOSE","PNORMAL","POSBAR","PSIZE","PTBAR","PVSCROLL","PWINBUT","PWSNORM","PWSSIZE","SONGNAME","TITLEBAR","VOLBAL","WINBUT","WSNORMAL","WSPOSBAR"];async function er(e){const A=await Pn(e,"VISCOLOR","txt","text");return A?Object(M.v)(A.contents):R.c.colors}async function Ar(e){const A=await Promise.all(Object.keys(Rn).map(A=>async function(e,A){const t=await Yn(e,A);return null==t?{}:zn(t,Rn[A])}(e,A)));return Xn(A)}async function tr(e){const A=await Promise.all($n.map(async A=>({[A]:await _n(e,A)})));return Xn(A)}async function nr(e){const A=await Pn(e,"REGION","txt","text");return A?function(e){const A=Object(M.u)(e),t={};return Object.keys(A).forEach(e=>{const{numpoints:n,pointlist:r}=A[e];if(!n||!r)return;const a=n.split(/\s*,\s*/).filter(e=>""!==e),i=function(e){const A=[];for(let t=0;t<e.length;t+=2)A.push(`${e[t]},${e[t+1]}`);return A}(r.split(/\s*[, ]\s*/).filter(e=>""!==e));let o=0;const l=a.map(e=>{const A=Number(e);if(A<3)return o+=A,null;const t=i.slice(o,o+A).join(" ");return t.length?(o+=A,t):null}).filter(e=>null!=e);l.length&&(t[e]=l)}),t}(A.contents):{}}async function rr(e){const A=await Yn(e,"GEN");if(null==A)return null;const t=document.createElement("canvas"),n=t.getContext("2d");t.width=A.width,t.height=A.height,n.drawImage(A,0,0);const r=(e,A)=>{const r=A=>n.getImageData(A,e,1,1).data.join(",");let a=1;const i=r(0);return R.d.map(n=>{let o=a;for(;r(o)!==i&&o<t.width;)o++;const l={x:a,y:e,height:7,width:o-a,name:`${A}_${n}`};return a=o+1,l})},a={},i=[...r(88,"GEN_TEXT_SELECTED"),...r(96,"GEN_TEXT")];return i.forEach(e=>{a[e.name]=e.width}),[a,zn(A,i)]}var ar=async function(e,A){const t=await A.loadAsync(e),[n,r,a,i,o,l,s]=await Promise.all([er(t),Hn(t),Ar(t),tr(t),nr(t),rr(t),qn(t)]),[c,u]=l||[null,{}];return{colors:n,playlistStyle:r,images:Wn(Wn({},a),u),genLetterWidths:c,cursors:i,region:o,genExColors:s}},ir=t(42),or=t.n(ir);function lr(){return(e,A)=>{const t=A();if(0===rA(t).length)return;const n=nA(t),{playlist:{trackOrder:r}}=t;e({type:"REMOVE_TRACKS",ids:r.filter(e=>!n.has(e))})}}function sr(){return(e,A)=>{e({type:"REMOVE_TRACKS",ids:Array.from(nA(A()))})}}function cr(){return e=>{e({type:"STOP"}),e({type:"REMOVE_ALL_TRACKS"})}}function ur(){return{type:"REVERSE_LIST"}}function dr(){return{type:"RANDOMIZE_LIST"}}function gr(){return(e,A)=>{const t=A(),n=Ze(t);return e({type:"SET_TRACK_ORDER",trackOrder:Object(M.B)(Xe(t),e=>(""+n[e].title).toLowerCase())})}}function pr(e){return{type:"SET_PLAYLIST_SCROLL_POSITION",position:e}}function hr(e){return(A,t)=>{const n=t(),r=wA(n),a=IA(n);return A({type:"SET_PLAYLIST_SCROLL_POSITION",position:100*(r?Object(M.d)((a+e)/r,0,1):0)})}}function fr(e){return e.preventDefault(),(A,t)=>{const n=t();wA(n)&&e.stopPropagation();const r=n.playlist.trackOrder.length*R.i,a=e.deltaY/r*100;A({type:"SET_PLAYLIST_SCROLL_POSITION",position:Object(M.d)(n.display.playlistScrollPosition+a,0,100)})}}function mr(){return hr(-4)}function Er(){return hr(4)}function br(e){return(A,t)=>{const n=t(),r=Ze(n),a=Xe(n),i=nA(n),o=a.findIndex(e=>r[e]&&i.has(e));if(-1===o)return;const l=Object(M.g)(a,e=>r[e]&&i.has(e));if(-1===l)throw new Error("We found a first selected, but not a last selected.");const s=-o,c=a.length-1-l,u=Object(M.d)(e,s,c);0!==u&&A({type:"DRAG_SELECTED",offset:u})}}function wr(){return{type:"INVERT_SELECTION"}}function yr(){return{type:"SELECT_ZERO"}}function Or(){return{type:"SELECT_ALL"}}var Ir=t(34);const Sr=new class{constructor({threads:e}){this._queue=new or.a([],(e,A)=>e.priority()-A.priority()),this._availableThreads=e}push(e,A){const t={task:e,priority:A};return this._queue.push(t),setTimeout(()=>{this._run()},0),()=>{this._queue=this._queue.filter(e=>e!==t)}}_run(){for(;this._availableThreads>0;){if(0===this._queue.length)return;this._availableThreads--;const e=this._queue.pop().task();be()("function"==typeof e.then,"LoadQueue only supports loading Promises. Got "+e),e.then(()=>{this._availableThreads++,this._run()})}}}({threads:4});function kr(e,A,t){return Dr(Array.from(e).map(e=>({blob:e,defaultName:e.name})),A,t)}const Ur=new RegExp("(wsz|zip)$","i"),vr=new RegExp("eqf$","i");function Cr(e,A=R.e.PLAY,t){return n=>{if(!(e.length<1)){if(1===e.length){const A=e[0];if(Ur.test(A.name))return void n(Br(A));if(vr.test(A.name))return void n(function(e){return async A=>{const t=await async function(e){return be()(null!=e,"Attempt to get an ArrayBuffer without assigning a fileReference"),new Promise((A,t)=>{const n=new FileReader;n.onload=()=>{A(n.result)},n.onerror=t,n.readAsArrayBuffer(e)})}(e);A(Vr(Object(Qn.parser)(t).presets[0]))}}(A))}n(kr(e,A,t))}}}function Br(e){return async(A,t,{requireJSZip:n})=>{if(!n)return void alert("Webamp has not been configured to support custom skins.");let r;A({type:"LOADING"});try{r=await n()}catch(e){return console.error(e),A({type:"LOADED"}),void alert("Failed to load the skin parser.")}try{const t=await ar(e,r);A({type:"SET_SKIN_DATA",data:{skinImages:t.images,skinColors:t.colors,skinPlaylistStyle:t.playlistStyle,skinCursors:t.cursors,skinRegion:t.region,skinGenLetterWidths:t.genLetterWidths,skinGenExColors:t.genExColors}})}catch(e){console.error(e),A({type:"LOADED"}),alert("Failed to parse skin")}}}function xr(e){return async A=>{A({type:"LOADING"});try{const t=await fetch(e);if(!t.ok)throw new Error(t.statusText);A(Br(t.blob()))}catch(t){console.error(t),A({type:"LOADED"}),alert("Failed to download skin from "+e)}}}function Mr(e,A){return async t=>{var n;const r=await ye({accept:e});t({type:"OPENED_FILES",expectedType:A,count:r.length,firstFileName:null===(n=r[0])||void 0===n?void 0:n.name}),t(Cr(r))}}function Nr(){return Mr(".eqf","EQ")}function Tr(){return Mr(null,"MEDIA")}function Qr(){return Mr(".zip, .wsz","SKIN")}function Lr(e,A){return(t,n)=>{Sr.push(async()=>{try{const n=await function(e){return be()("string"==typeof e,"Attempted to get the duration of media file without passing a url"),new Promise((A,t)=>{const n=document.createElement("audio");n.crossOrigin="anonymous";const r=()=>{A(n.duration),n.removeEventListener("durationchange",r),n.src=""};n.addEventListener("durationchange",r),n.addEventListener("error",e=>{t(e)}),n.src=e})}(e);t({type:"SET_MEDIA_DURATION",duration:n,id:A})}catch(e){}},()=>UA(n())(A)?5:15)}}function jr(e,A=R.e.NONE,t=0){const{files:n}=e.dataTransfer;return async(r,a,{handleTrackDropEvent:i})=>{if(i){const n=await i(e);if(null!=n)return void r(Dr(n,A,t))}r(Cr(n,A,t))}}function Dr(e,A=R.e.NONE,t=0){return n=>{A===R.e.PLAY&&n(e=>{e({type:"STOP"}),e({type:"REMOVE_ALL_TRACKS"})}),e.forEach((e,r)=>{const a=0===r?A:R.e.NONE;n(function(e,A=R.e.NONE,t=0){return n=>{const r=M.D(),{defaultName:a,metaData:i,duration:o}=e;let l;if("url"in e)l=e.url.toString();else{if(!("blob"in e))throw new Error("Expected track to have either a blob or a url");l=URL.createObjectURL(e.blob)}switch(n({type:"ADD_TRACK_FROM_URL",url:l,duration:e.duration,defaultName:a,id:r,atIndex:t}),A){case R.e.BUFFER:n({type:"BUFFER_TRACK",id:r});break;case R.e.PLAY:n({type:"PLAY_TRACK",id:r});break;case R.e.NONE:default:n(null!=o?{type:"SET_MEDIA_DURATION",duration:o,id:r}:Lr(l,r))}if(null!=i){const{artist:e,title:A,album:t}=i;n({type:"SET_MEDIA_TAGS",artist:e,title:A,album:t,sampleRate:44e3,bitrate:192e3,numberOfChannels:2,id:r})}else n("blob"in e?Rr(e.blob,r):function(e){return(A,t)=>{const n=Ze(t())[e];Sr.push(()=>A(Rr(n.url,e)),()=>UA(t())(e)?10:20)}}(r))}}(e,a,t+r))})}}function Rr(e,A){return async(t,n,{requireMusicMetadata:r})=>{t({type:"MEDIA_TAG_REQUEST_INITIALIZED",id:A});try{const n=await function(e,A){be()(null!=e,"Attempted to get the tags of media file without passing a file");const t={duration:!0,skipPostHeaders:!0};return"string"==typeof e?A.fetchFromUrl(e,t):A.parseBlob(e,t)}(e,await r()),{artist:a,title:i,album:o,picture:l}=n.common,{numberOfChannels:s,bitrate:c,sampleRate:u}=n.format;let d=null;if(l&&l.length>=1){const e=new Uint8Array(l[0].data),A=new Blob([e],{type:l[0].format});d=URL.createObjectURL(A)}t({type:"SET_MEDIA_TAGS",artist:a||"",title:i||"",album:o,albumArtUrl:d,numberOfChannels:s,bitrate:c,sampleRate:u,id:A})}catch(e){t({type:"MEDIA_TAG_REQUEST_FAILED",id:A})}}}function Vr(e){return A=>{A(Mn(M.q(e.preamp))),R.a.forEach(t=>{A(Un(t,M.q(e["hz"+t])))})}}function Fr(){return(e,A)=>{const t=A(),n=qe(t),r=Object(Qn.creator)(n),a="data:application/zip;base64,"+M.a(r);M.f(a,"entry.eqf")}}function Gr(){return(e,A)=>{const t=VA(A());M.f(t,"Winamp Playlist.html")}}let Pr=document.createElement("input");Pr.type="file";const Kr=void 0!==Pr.webkitdirectory||void 0!==Pr.mozdirectory||void 0!==Pr.directory;function zr(e){return async A=>{A(kr(await ye(),R.e.NONE,e))}}function Yr(e){return async A=>{if(!Kr)return void alert("Not supported in your browser");A(kr(await ye({directory:!0}),R.e.NONE,e))}}function Jr(e=0){new Ir.a(!1).getTrackListFromYandexDisk(prompt("Введите ссылку на Яндекс Диск"))}function _r(){}function Hr(){return(e,A,{handleSaveListEvent:t})=>{t?t(AA(A())):alert("Not supported in Webamp")}}function qr(e,A){return t=>{var n;return t({type:"DROPPED_FILES",count:e.dataTransfer.files.length,firstFileName:null===(n=e.dataTransfer.files[0])||void 0===n?void 0:n.name,windowId:A})}}function Zr(e){const{name:A}=e;if("butterchurnPresetObject"in e)return{type:"RESOLVED",name:A,preset:e.butterchurnPresetObject};if("getButterchrunPresetObject"in e)return{type:"UNRESOLVED",name:A,getPreset:e.getButterchrunPresetObject};if("butterchurnPresetUrl"in e)return{type:"UNRESOLVED",name:A,getPreset:async()=>(await fetch(e.butterchurnPresetUrl)).json()};throw new Error("Invalid preset object")}function Wr(e){return(A,t)=>{const n=t(),r=n.milkdrop.presets.length;A({type:"GOT_BUTTERCHURN_PRESETS",presets:e}),0===r&&kt(n)?A(Aa()):A(ta(r,Be.IMMEDIATE,!0))}}function Xr(e){return async(A,t,{convertPreset:n})=>{A(Wr(Array.from(e).map(e=>{const A=e.name.toLowerCase();if(A.endsWith(".milk")){if(null==n)throw new Error("Invalid type");return{type:"UNRESOLVED",name:e.name.slice(0,e.name.length-".milk".length),getPreset:()=>n(e)}}return A.endsWith(".json")?{type:"UNRESOLVED",name:e.name.slice(0,e.name.length-".json".length),getPreset:async()=>{const A=await we(e);return JSON.parse(A)}}:(console.error("Invalid type preset when loading directory"),null)}).filter(Boolean)))}}function $r(e=Be.DEFAULT){return(A,t)=>{const n=t();if(kt(n))return A(Aa(e));const r=wt(n);if(null==r)return;A(ta(r+1,e,!0))}}function ea(e=Be.DEFAULT){return(A,t)=>{const n=t(),{presetHistory:r}=n.milkdrop;if(r.length<1)return;A(ta(r[r.length-2],e,!1))}}function Aa(e=Be.DEFAULT){return(A,t)=>{const n=t();A(ta(Math.floor(Math.random()*n.milkdrop.presets.length),e,!0))}}function ta(e,A,t){return async(n,r)=>{const a=r().milkdrop.presets[e];if(null!=a)switch(n({type:"PRESET_REQUESTED",index:e,addToHistory:t}),a.type){case"RESOLVED":return void n({type:"SELECT_PRESET_AT_INDEX",index:e,transitionType:A});case"UNRESOLVED":const t=await a.getPreset();return n({type:"RESOLVE_PRESET_AT_INDEX",index:e,json:t}),void n({type:"SELECT_PRESET_AT_INDEX",index:e,transitionType:A})}}}function na(e){return Xr(e.dataTransfer.files)}function ra(){return{type:"TOGGLE_RANDOMIZE_PRESETS"}}function aa(){return{type:"TOGGLE_PRESET_CYCLING"}}function ia(e){return{type:"SCHEDULE_MILKDROP_MESSAGE",message:e}}function oa(){return e=>{let A=!1;e({type:"CLOSE_REQUESTED",cancel:()=>{A=!0}}),A||(e({type:"STOP"}),e({type:"CLOSE_WINAMP"}))}}function la(){return{type:"TOGGLE_VISUALIZER_STYLE"}}function sa(){return{type:"MINIMIZE_WINAMP"}}function ca(e){return{type:"SET_FOCUS",input:e}}function ua(){return{type:"UNSET_FOCUS"}}function da(e){return{type:"SET_BAND_FOCUS",input:"eq",bandFocused:e}}function ga(){return{type:"LOAD_DEFAULT_SKIN"}}function pa(){return(e,A)=>{ft(A())?e({type:"SET_MILKDROP_DESKTOP",enabled:!1}):e({type:"SET_MILKDROP_DESKTOP",enabled:!0})}}function ha(e){return{type:"SET_MILKDROP_FULLSCREEN",enabled:e}}function fa(){return(e,A)=>{e(ha(!mt(A())))}}function ma(){return(e,A)=>{It(A())&&e($t(R.m.MILKDROP)),e({type:"TOGGLE_PRESET_OVERLAY"})}}function Ea(){return{type:"STEP_MARQUEE"}}Pr=null;var ba=e=>A=>{const{media:{volume:t,balance:n},equalizer:{sliders:r}}=A.getState();return e.setVolume(t),e.setBalance(n),e.setPreamp(r.preamp),e.on("timeupdate",()=>{A.dispatch({type:"UPDATE_TIME_ELAPSED",elapsed:e.timeElapsed()})}),e.on("ended",()=>{A.dispatch(gn())}),e.on("playing",()=>{A.dispatch({type:"IS_PLAYING"})}),e.on("waiting",()=>{A.dispatch({type:"START_WORKING"})}),e.on("stopWaiting",()=>{A.dispatch({type:"STOP_WORKING"})}),e.on("fileLoaded",()=>{const t=uA(A.getState());null!=t&&A.dispatch({id:t,type:"SET_MEDIA",kbps:"128",khz:"44",channels:2,length:e.duration()})}),t=>n=>{const r=t(n),a=A.getState();switch(n.type){case"PLAY":e.play();break;case"PAUSE":e.pause();break;case"STOP":e.stop();break;case"SET_VOLUME":e.setVolume(et(a));break;case"SET_BALANCE":e.setBalance(At(a));break;case"SEEK_TO_PERCENT_COMPLETE":e.seekToPercentComplete(n.percent);break;case"PLAY_TRACK":{const t=We(A.getState())(n.id);null!=t&&e.loadFromUrl(t,!0);break}case"BUFFER_TRACK":{const t=We(A.getState())(n.id);null!=t&&e.loadFromUrl(t,!1);break}case"SET_BAND_VALUE":"preamp"===n.band?e.setPreamp(n.value):e.setEqBand(n.band,n.value);break;case"SET_EQ_OFF":e.disableEq();break;case"SET_EQ_ON":e.enableEq();break;case"LOAD_SERIALIZED_STATE":it(a)?e.enableEq():e.disableEq(),e.setVolume(et(a)),e.setBalance(At(a)),Object(M.s)(a.equalizer.sliders,(A,t)=>{"preamp"===t?e.setPreamp(A):e.setEqBand(t,A)})}return r}};const wa=Object(x.composeWithDevTools)({actionsBlacklist:["UPDATE_TIME_ELAPSED","STEP_MARQUEE"]});var ya=t(15),Oa=t.n(ya);var Ia=function(e){const{onChange:A,enabled:t}=e,n=Object(i.useRef)(null);return Object(i.useEffect)(()=>{function e(){A&&A(Oa.a.fullscreenElement===n.current)}return Oa.a.addEventListener("fullscreenchange",e),()=>{Oa.a.removeEventListener("fullscreenchange",e)}},[A]),Object(i.useLayoutEffect)(()=>{const e=Oa.a.fullscreenElement===n.current;var A;e&&!t?Oa.a.fullscreenEnabled&&Oa.a.exitFullscreen():!e&&t&&null!=n.current&&(A=n.current,Oa.a.fullscreenEnabled&&Oa.a.requestFullscreen(A))},[t]),Object(a.jsx)("div",{ref:n,style:e.enabled?{height:"100%",width:"100%"}:void 0,children:e.children})};function Sa(e){const[A,t]=Object(i.useState)(null);return Object(i.useEffect)(()=>{let A=!1;return e.then(e=>{A||t(e)}),()=>{A=!0}},[e]),A}const ka={current:{pageX:0,pageY:0}};function Ua(){const e=ka,[A,t]=Object(i.useState)(!1),[n,r]=Object(i.useState)(null);return Object(i.useLayoutEffect)(()=>{if(null==n)return void t(!1);const A=n.getBoundingClientRect(),{pageX:r,pageY:a}=e.current;t(r>=A.left&&r<=A.right&&a>=A.top&&a<=A.bottom);const i=()=>t(!0),o=()=>t(!1);return n.addEventListener("mouseenter",i),n.addEventListener("mouseleave",o),()=>{n.removeEventListener("mouseenter",i),n.removeEventListener("mouseleave",o)}},[n,e]),{ref:r,hover:A}}function va(e){return U(e)}function Ca(e){const A=O();return Object(i.useCallback)((...t)=>A(e(...t)),[A,e])}function Ba(){return O()}window.document.addEventListener("mousemove",({pageX:e,pageY:A})=>{ka.current={pageX:e,pageY:A}});var xa=t(6),Ma=t.n(xa);t(71);function Na(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}var Ta=Object(i.memo)((function(e){const{currentSize:A,setWindowSize:t,widthOnly:n}=e,o=D()(e,["currentSize","setWindowSize","widthOnly"]),[l,s]=Object(i.useState)(!1),[c,u]=Object(i.useState)(null);Object(i.useEffect)(()=>{if(!1===l||null==c)return;const[t,r]=A,a=A=>{const a=M.l(A)-c.x,i=M.m(A)-c.y,o=[Math.max(0,t+Math.round(a/R.o)),n?t:Math.max(0,r+Math.round(i/R.n))];e.setWindowSize(o)};window.addEventListener("mousemove",a),window.addEventListener("touchmove",a);const i=()=>s(!1);return window.addEventListener("mouseup",i),window.addEventListener("touchend",i),()=>{window.removeEventListener("mousemove",a),window.removeEventListener("touchmove",a),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",i)}},[c,l]);const d=e=>{u({x:M.l(e),y:M.m(e)}),s(!0)};return Object(a.jsx)("div",function(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Na(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Na(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}({onMouseDown:d,onTouchStart:d},o))}));var Qa=function({onKeyDown:e,windowId:A,children:t}){const n=va(GA),r=Ca($t),o=Object(i.useCallback)(()=>{A!==n&&r(A)},[A,n,r]),[l,s]=Object(i.useState)(null);return Object(i.useEffect)(()=>{if(null!=l&&null!=e)return l.addEventListener("keydown",e),()=>l.removeEventListener("keydown",e)},[e,A,n,l]),Object(i.useEffect)(()=>{if(null==l||A!==n)return;const e=new MutationObserver(e=>{document.activeElement===document.body&&e.some(e=>e.removedNodes.length>0)&&l.focus()});return e.observe(l,{subtree:!0,attributes:!1,childList:!0}),()=>e.disconnect()},[A,n,l]),Object(a.jsx)("div",{ref:s,onMouseDown:o,onTouchStart:o,onFocus:o,tabIndex:-1,style:{height:"100%",width:"100%"},children:t})};const La=({children:e})=>{const A=e.split("");return Object(a.jsx)(i.Fragment,{children:A.map((e,A)=>Object(a.jsx)("div",{className:"draggable gen-text-letter gen-text-"+(" "===e?"space":e.toLowerCase())},A))})};var ja=({children:e,title:A,windowId:t,onKeyDown:n})=>{const r=Ca(en),i=Ca(Xt),o=va(JA),l=va(GA),s=va(mA)(t),c=l===t,{width:u,height:d}=o(t);return Object(a.jsx)(Qa,{windowId:t,onKeyDown:n,children:Object(a.jsxs)("div",{className:Ma()("gen-window","window",{selected:c}),style:{width:u,height:d},children:[Object(a.jsxs)("div",{className:"gen-top draggable",children:[Object(a.jsx)("div",{className:"gen-top-left draggable"}),Object(a.jsx)("div",{className:"gen-top-left-fill draggable"}),Object(a.jsx)("div",{className:"gen-top-left-end draggable"}),Object(a.jsx)("div",{className:"gen-top-title draggable",children:Object(a.jsx)(La,{children:A})}),Object(a.jsx)("div",{className:"gen-top-right-end draggable"}),Object(a.jsx)("div",{className:"gen-top-right-fill draggable"}),Object(a.jsx)("div",{className:"gen-top-right draggable",children:Object(a.jsx)("div",{className:"gen-close selected",onClick:()=>i(t)})})]}),Object(a.jsxs)("div",{className:"gen-middle",children:[Object(a.jsx)("div",{className:"gen-middle-left draggable",children:Object(a.jsx)("div",{className:"gen-middle-left-bottom draggable"})}),Object(a.jsx)("div",{className:"gen-middle-center",children:e({width:u-19,height:d-34})}),Object(a.jsx)("div",{className:"gen-middle-right draggable",children:Object(a.jsx)("div",{className:"gen-middle-right-bottom draggable"})})]}),Object(a.jsxs)("div",{className:"gen-bottom draggable",children:[Object(a.jsx)("div",{className:"gen-bottom-left draggable"}),Object(a.jsx)("div",{className:"gen-bottom-right draggable",children:Object(a.jsx)(Ta,{currentSize:s,setWindowSize:e=>r(t,e),id:"gen-resize-target"})})]})]})})};const Da={[Be.DEFAULT]:2.7,[Be.IMMEDIATE]:0,[Be.USER_PRESET]:5.7};var Ra=function({analyser:e,width:A,height:t}){const n=va($A),r=va(MA),o=va(Et),l=va(BA),s=va(yt),c=va(bt),u=va(ht),d=n===R.k.MILKDROP,g=Object(i.useRef)(null),[p,h]=Object(i.useState)(null);Object(i.useEffect)(()=>{if(null==g.current||null==o)return;if(null!=p)return;const n=o.createVisualizer(e.context,g.current,{width:A,height:t,meshWidth:32,meshHeight:24,pixelRatio:window.devicePixelRatio||1});n.connectAudio(e),h(n)},[o,e,t,A,p]),Object(i.useEffect)(()=>{null!=p&&p.setRendererSize(A,t)},[p,A,t]);const f=Object(i.useRef)(!1);Object(i.useEffect)(()=>{null!=p&&null!=s&&(f.current?p.loadPreset(s,Da[c]):(p.loadPreset(s,Da[Be.IMMEDIATE]),f.current=!0))},[p,s]),Object(i.useEffect)(()=>{null!=p&&l&&p.launchSongTitleAnim(l)},[p,l]);const m=Object(i.useRef)(null);Object(i.useEffect)(()=>{null!=p&&null!=u&&(null==m.current||u.time>m.current)&&(m.current=Date.now(),p.launchSongTitleAnim(u.text))},[p,u]);const E=r&&d;return Object(i.useEffect)(()=>{if(!E||null==p)return;let e=null;const A=()=>{p.render(),e=window.requestAnimationFrame(A)};return A(),()=>{null!=e&&window.cancelAnimationFrame(e)}},[p,E]),Object(a.jsx)("canvas",{height:t,width:A,style:{height:"100%",width:"100%",display:d?"block":"none"},ref:g})};t(74);var Va=e=>{const{innerRef:A}=e;return Object(a.jsx)("div",{ref:A,className:"draggable",style:{backgroundColor:"#000",position:"absolute",top:0,bottom:0,left:0,right:0,height:"100%",width:"100%"},tabIndex:0,children:e.children})};function Fa(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ga(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Fa(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Fa(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Pa={position:"absolute",top:0,left:0,color:"white",background:"rgba(0.33, 0.33, 0.33, 0.33)"},Ka={position:"absolute",top:0,left:0,padding:"15px 10px 0 10px"},za={display:"inline-block",whiteSpace:"nowrap",overflow:"hidden",background:"rgba(0, 0, 0, 0.815)",fontSize:"12px"};function Ya(e){return e-1}var Ja=function({height:e,width:A}){const t=va(Ot),n=va(wt),r=Ca(ta),o=Ca(ma),l=Ca(Xr),s=function(){const e=Object(i.useRef)(!1);return Object(i.useEffect)(()=>()=>{e.current=!0},[]),e}(),[c,u]=Object(i.useState)(()=>null!=n?n+1:0),d=t.length,g=Object(i.useCallback)(()=>{const A=Math.floor((e-15)/14),r=Math.floor(.75*A),[i,o]=function(e,A,t){const n=Math.min(e,A),r=Math.floor(n/2),a=t-r,i=Object(M.d)(a,0,e-n);return[i,i+n-1]}(d+1,r,c),l=[];for(let e=i;e<=o;e++){const A=Ya(e),r=A===n;let i;i=e===c?r?"#FFCC22":"#FF5050":r?"#CCFF03":"#CCCCCC",l.push(Object(a.jsx)("li",{style:{color:i,lineHeight:"14px"},children:0===e?"Load Local Directory":t[A]},e))}return l},[n,e,d,t,c]),p=Object(i.useCallback)(async()=>{const e=await ye({directory:!0});s.current||l(e)},[l,s]),h=Object(i.useCallback)(e=>{switch(e.keyCode){case 38:u(e=>Math.max(e-1,0)),e.stopPropagation();break;case 40:u(e=>Math.min(e+1,d)),e.stopPropagation();break;case 13:0===c?p():r(Ya(c),Be.DEFAULT,!0),e.stopPropagation();break;case 27:o(),e.stopPropagation()}},[p,d,r,c,o]),f=Object(i.useCallback)(e=>{null!=e&&document.activeElement!==e&&e.focus()},[]);return null==t?Object(a.jsx)("div",{style:Pa,children:Object(a.jsx)("span",{children:"Loading presets"})}):Object(a.jsx)("div",{ref:f,tabIndex:-1,style:Ka,onKeyDown:h,children:Object(a.jsx)("div",{style:Ga(Ga({},za),{},{width:A-20-20,maxHeight:e-15}),children:Object(a.jsx)("ul",{style:{listStyleType:"none",padding:0,margin:0},children:g()})})})};function _a(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ha(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?_a(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):_a(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function qa(e){e.stopPropagation(),e.preventDefault(),e.dataTransfer.dropEffect="link",e.dataTransfer.effectAllowed="link"}var Za=e=>{const{handleDrop:A,windowId:t}=e,n=D()(e,["handleDrop","windowId"]),r=Ca(qr),o=Object(i.useCallback)(e=>{qa(e),r(e,t);const{currentTarget:n}=e;if(!(n instanceof Element))return;const{left:a,top:i}=n.getBoundingClientRect();A(e,{x:a,y:i})},[A,r,t]);return Object(a.jsx)("div",Ha(Ha({},n),{},{onDragStart:qa,onDragEnter:qa,onDragOver:qa,onDrop:o}))};t(76);function Wa(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Xa(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Wa(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Wa(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const $a=e=>{const A=Object(i.useMemo)(()=>{const A=document.createElement("div");return A.id="webamp-context-menu",A.style.position="absolute",A.style.top="0",A.style.left="0",A.style.zIndex=String(e.zIndex+1),A},[e.zIndex]);Object(i.useEffect)(()=>(document.body.appendChild(A),()=>{document.body.removeChild(A)}),[A]);const t={top:e.top,left:e.left,position:"absolute"};return Object(l.createPortal)(Object(a.jsx)("div",{style:t,children:e.children}),A)},ei=()=>Object(a.jsx)("li",{className:"hr",children:Object(a.jsx)("hr",{})}),Ai=({children:e,label:A})=>Object(a.jsxs)("li",{className:"parent",children:[Object(a.jsx)("ul",{children:e}),A]}),ti=e=>Object(a.jsx)("li",{children:Object(a.jsx)("a",Xa(Xa({},e),{},{children:e.label}))}),ni=e=>{const{label:A,checked:t,className:n=""}=e,r=D()(e,["label","checked","className"]);return Object(a.jsx)("li",Xa(Xa({className:Ma()(n,{checked:t})},r),{},{children:A}))};function ri({children:e,offsetTop:A,offsetLeft:t,top:n,bottom:r,selected:i}){const o=va(zA);return i?Object(a.jsx)($a,{top:A,left:t,zIndex:o,children:Object(a.jsx)("ul",{className:Ma()("context-menu",{top:n,bottom:r}),children:e})}):null}function ai(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ii(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ai(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ai(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function oi(e){var A,t;let{children:n,renderContents:r}=e,o=D()(e,["children","renderContents"]);const[l,s]=Object(i.useState)(null),c=Object(i.useCallback)(()=>{s(null)},[]),u=Object(i.useCallback)(e=>{2!==e.button&&c()},[c]),d=Object(i.useCallback)(e=>{const{pageX:A,pageY:t}=e;s({x:A,y:t}),e.preventDefault(),e.stopPropagation()},[]);return Object(i.useEffect)(()=>{if(null!=l)return document.addEventListener("click",u),document.body.addEventListener("contextmenu",c),()=>{document.removeEventListener("click",u),document.body.removeEventListener("contextmenu",c)}},[l,c,u]),Object(a.jsxs)("div",ii(ii({onContextMenu:d,style:{width:"100%",height:"100%"}},o),{},{children:[Object(a.jsx)(ri,{selected:null!=l,offsetTop:null!==(A=null==l?void 0:l.y)&&void 0!==A?A:0,offsetLeft:null!==(t=null==l?void 0:l.x)&&void 0!==t?t:0,children:r()}),n]}))}var li=e=>{const A=va(ft),t=Ca(Xt),n=Ca(pa),r=Ca(fa);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(ni,{onClick:r,label:"Fullscreen",hotkey:"Alt+Enter"}),Object(a.jsx)(ni,{onClick:n,checked:A,label:"Desktop Mode",hotkey:"Alt+D"}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:()=>t(R.m.MILKDROP),label:"Quit"})]}),children:e.children})};var si=i.memo(({children:e})=>{const[A]=i.useState(()=>document.createElement("div"));return i.useEffect(()=>(A.classList.add("webamp-desktop"),document.body.appendChild(A),()=>{document.body.removeChild(A)}),[A]),s.a.createPortal(e,A)});function ci(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ui(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ci(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ci(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var di=function({analyser:e}){const A=va(ft),t=va(mt),n=va(It),r=va(St),o=va(wt),l=va(MA),s=Ca(fa),c=Ca($r),u=Ca(na),d=Ca(ha),g=function(){const e=va(BA),A=Ca($r),t=Ca(ea),n=Ca(ra),r=Ca(ma),a=Ca(ia),o=Ca(aa);return Object(i.useCallback)(i=>{switch(i.keyCode){case 32:A();break;case 8:t(Be.IMMEDIATE);break;case 72:A(Be.IMMEDIATE);break;case 82:n();break;case 76:r(),i.stopPropagation();break;case 84:null!=e&&a(e),i.stopPropagation();break;case 145:case 125:o()}},[a,A,t,o,r,n,e])}();Object(i.useEffect)(()=>{if(!r||!l)return;const e=setInterval(c,15e3);return()=>clearInterval(e)},[r,o,l,c]);const p=function(){const[e]=Object(i.useState)(M.h());return e}(),h=function(){const[e,A]=Object(i.useState)(M.k()),t=Object(i.useCallback)(M.C(()=>{A(M.k())},100),[]);return Object(i.useEffect)(()=>(window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t)}),[t]),e}();return A?Object(a.jsx)(si,{children:Object(a.jsx)(li,{children:Object(a.jsx)(Ra,ui(ui({},h),{},{analyser:e}))})}):Object(a.jsx)(ja,{title:"Milkdrop",windowId:R.m.MILKDROP,onKeyDown:g,children:A=>{const r=t?p:A;return Object(a.jsx)(li,{children:Object(a.jsx)(Va,{children:Object(a.jsxs)(Za,{windowId:R.m.MILKDROP,handleDrop:u,children:[n&&Object(a.jsx)(Ja,ui({},r)),Object(a.jsx)(Ia,{enabled:t,onChange:d,children:Object(a.jsx)("div",{onDoubleClick:s,children:Object(a.jsx)(Ra,ui(ui({},r),{},{analyser:e}))})})]})})})}})};var gi=()=>{const e=Ca(pn),A=Ca(sn),t=Ca(cn),n=Ca(un),r=Ca(gn),o=Ca(fn),l=Ca(mn),s=Ca(dn);return Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(ni,{label:"Previous",hotkey:"Z",onClick:e}),Object(a.jsx)(ni,{label:"Play",hotkey:"X",onClick:A}),Object(a.jsx)(ni,{label:"Pause",hotkey:"C",onClick:t}),Object(a.jsx)(ni,{label:"Stop",hotkey:"V",onClick:n}),Object(a.jsx)(ni,{label:"Next",hotkey:"B",onClick:r}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Back 5 seconds",hotkey:"Left",onClick:()=>l(5)}),Object(a.jsx)(ni,{label:"Fwd 5 seconds",hotkey:"Right",onClick:()=>o(5)}),Object(a.jsx)(ni,{label:"10 tracks back",hotkey:"Num. 1",onClick:()=>s(-10)}),Object(a.jsx)(ni,{label:"10 tracks fwd",hotkey:"Num. 3",onClick:()=>s(10)})]})};var pi=()=>{const e=Ca(ga),A=Ca(Qr),t=Ca(xr),n=va(jt);return Object(a.jsxs)(Ai,{label:"Skins",children:[Object(a.jsx)(ni,{onClick:A,label:"Load Skin..."}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:e,label:"<Base Skin>"}),n.map(e=>Object(a.jsx)(ni,{onClick:()=>t(e.url),label:e.name},e.url))]})};var hi=()=>{const e=Ca(Sn),A=Ca(Ht),t=Ca(On),n=Ca(In),r=va(PA),i=va(Tt),o=va(nt),l=va(tt);return Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(pi,{}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Time elapsed",hotkey:"(Ctrl+T toggles)",onClick:e,checked:i===R.h.ELAPSED}),Object(a.jsx)(ni,{label:"Time remaining",hotkey:"(Ctrl+T toggles)",onClick:e,checked:i===R.h.REMAINING}),Object(a.jsx)(ni,{label:"Double Size",hotkey:"Ctrl+D",onClick:A,checked:r}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Repeat",hotkey:"R",onClick:t,checked:o}),Object(a.jsx)(ni,{label:"Shuffle",hotkey:"S",onClick:n,checked:l})]})};var fi=Object(i.memo)(({filePickers:e})=>{const A=va(Nt),t=va(gA),n=Ca(oa),r=Ca(Tr),o=Ca(Dr),l=Ca(An),s=Ca(()=>({type:"MAIN_CONTEXT_MENU_OPENED"}));return Object(i.useEffect)(()=>{s()},[s]),Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(ti,{href:"https://webamp.org/about",target:"_blank",label:"Webamp..."}),Object(a.jsx)(ei,{}),Object(a.jsxs)(Ai,{label:"Play",children:[Object(a.jsx)(ni,{onClick:r,label:"File...",hotkey:"L"}),null!=e&&e.map((e,t)=>(A||!e.requiresNetwork)&&Object(a.jsx)(ni,{onClick:async()=>{let A;try{A=await e.filePicker()}catch(e){console.error("Error loading from file picker",e)}o(A||[],R.e.PLAY)},label:e.contextMenuName},t))]}),Object(a.jsx)(ei,{}),Object.keys(t).map(e=>Object(a.jsx)(ni,{label:t[e].title,checked:t[e].open,onClick:()=>l(e),hotkey:t[e].hotkey},e)),Object(a.jsx)(ei,{}),Object(a.jsx)(pi,{}),Object(a.jsx)(ei,{}),Object(a.jsx)(Ai,{label:"Options",children:Object(a.jsx)(hi,{})}),Object(a.jsx)(Ai,{label:"Playback",children:Object(a.jsx)(gi,{})}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:n,label:"Exit"})]})});function mi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Ei(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?mi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):mi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const bi=(e,A)=>{const t=Pt(e,A);return void 0!==t.x||void 0!==t.y};function wi(e){const A=va(HA),t=va(hA),n=va(ot),r=Ca(tn),[a,o]=Object(i.useState)(null);return Object(i.useEffect)(()=>{if(null==a)return;const{boundingBox:e,moving:A,stationary:t,mouseStart:i}=a,l=a=>{const o={x:M.l(a)-i.x,y:M.m(a)-i.y},l=A.map(e=>Ei(Ei({},e),zt(e,o))),s=Ei(Ei({},e),zt(e,o)),c=((e,A)=>{let t=0,n=0;for(const r of e)for(const e of A){const A=Kt(r,e);if(t=t||A.x,n=n||A.y,void 0!==t&&t>0&&void 0!==n&&n>0)break}return{x:t,y:n}})(l,t),u=((e,A)=>{const t=((e,A)=>{let t,n;return e.x-15<0?t=0:e.x+e.width+15>A.width&&(t=A.width-e.width),e.y-15<0?n=0:e.y+e.height+15>A.height&&(n=A.height-e.height),{x:t,y:n}})(e,A);return{x:void 0===t.x?0:t.x-e.x,y:void 0===t.y?0:t.y-e.y}})(s,n),d=((e,...A)=>{const t=A.reduce((e,A)=>({x:0===e.x||0===A.x?e.x+A.x:Math.min(e.x,A.x),y:0===e.y||0===A.y?e.y+A.y:Math.min(e.y,A.y)}));return zt(e,t)})(o,c,u),g={};A.forEach(e=>{g[e.key]=zt(e,d)}),r(g,!1)};function s(){o(null)}return window.addEventListener("mouseup",s),window.addEventListener("touchend",s),window.addEventListener("mousemove",l,{passive:!1}),window.addEventListener("touchmove",l,{passive:!1}),()=>{window.removeEventListener("mousemove",l),window.removeEventListener("touchmove",l),window.removeEventListener("mouseup",s),window.removeEventListener("touchend",s)}},[n,a,r]),Object(i.useCallback)((n,r)=>{if(!r.target.classList.contains("draggable"))return;const a=M.l(r),i=M.m(r);if(t(n))return;const l=A.filter(A=>null!=e[A.key]&&!t(A.key)),s=l.find(e=>e.key===n);if(null==s)throw new Error("Tried to move a node that does not exist: "+n);let c=new Set([s]);if("main"===n){const e=(u=bi,(e,A)=>{const t=new Set,n=A=>{for(const r of e)!t.has(r)&&u(r,A)&&(t.add(r),n(r))};return n(A),t});c=e(l,s)}var u;const d=l.filter(e=>!c.has(e)),g=Array.from(c),p={x:a,y:i},h=(e=>{const A=e.slice(),t=A.pop();if(null==t)throw new Error("boundingBox must be called with at least one node");const n={top:Dt(t),right:Ft(t),bottom:Rt(t),left:Vt(t)};return A.forEach(e=>{n.top=Math.min(n.top,Dt(e)),n.right=Math.max(n.right,Ft(e)),n.bottom=Math.max(n.bottom,Rt(e)),n.left=Math.min(n.left,Vt(e))}),{x:n.left,y:n.top,width:n.right-n.left,height:n.bottom-n.top}})(g);o({boundingBox:h,moving:g,stationary:d,mouseStart:p})},[t,e,A])}function yi({windows:e}){const A=va(HA),t=Ca($t),n=wi(e),r=A.filter(A=>e[A.key]),o=Object(i.useCallback)(e=>{const{currentTarget:A,relatedTarget:n}=e;A===n||A.contains(n)||t(null)},[t]);return Object(a.jsx)(a.Fragment,{children:r.map(A=>Object(a.jsx)("div",{onBlur:o,onMouseDown:e=>{n(A.key,e)},onTouchStart:e=>{n(A.key,e)},style:{position:"absolute",top:0,left:0,transform:`translate(${A.x}px, ${A.y}px)`,touchAction:"none"},children:e[A.key]},A.key))})}var Oi=t(43),Ii=t.n(Oi);function Si(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function ki(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Si(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Si(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}const Ui=e=>"character-"+Ii()(e.toString()).toLowerCase().charCodeAt(0);var vi=i.memo(e=>{let{children:A,className:t}=e,n=D()(e,["children","className"]);return Object(a.jsx)("span",ki(ki({},n),{},{className:`${t||""} character ${Ui(A)}`,children:A}))});t(91);const Ci=()=>Object(a.jsx)(i.Fragment,{children:[1,7,12,20,25].map((e,A)=>Object(a.jsx)(vi,{style:{left:e},className:"background-character",children:" "},A))});var Bi=()=>{const e=va(xA),A=va(vA),t=va(at),n=va(Tt),r=Ca(Sn);let i=null;e!==R.f.STOPPED&&null!=A&&(i=n===R.h.ELAPSED?t:A-t);const o=Object(M.i)(i),l=n===R.h.REMAINING&&e!==R.f.STOPPED;return Object(a.jsxs)("div",{onClick:r,className:Ma()("mini-time","countdown",{blinking:e===R.f.PAUSED}),children:[Object(a.jsx)(Ci,{}),Object(a.jsx)(vi,{style:{left:1},children:l?"-":" "}),Object(a.jsx)(vi,{style:{left:7},children:o.minutesFirstDigit}),Object(a.jsx)(vi,{style:{left:12},children:o.minutesSecondDigit}),Object(a.jsx)(vi,{style:{left:20},children:o.secondsFirstDigit}),Object(a.jsx)(vi,{style:{left:25},children:o.secondsSecondDigit})]})};function xi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Mi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?xi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var Ni=function(e){const[A,t]=Object(i.useState)(!1);return Object(a.jsx)("div",Mi(Mi({},e),{},{className:Ma()(e.className,{clicked:A}),onMouseDown:function(A){t(!0),e.onMouseDown&&e.onMouseDown(A)}}))};function Ti(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Qi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Ti(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Ti(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}var Li=function(e){const A=Object(i.useRef)(null),[t,n]=Object(i.useState)(!1);Object(i.useEffect)(()=>{if(t)return document.addEventListener("click",e),()=>{document.removeEventListener("click",e)};function e(e){t&&e.target instanceof Element&&t&&A.current&&!A.current.contains(e.target)&&n(!1)}},[t]);const r=Object(i.useMemo)(()=>t?function(e){if(null==e)return{top:0,left:0};const A=e.getBoundingClientRect(),t=window.pageXOffset||document.documentElement.scrollLeft,n=window.pageYOffset||document.documentElement.scrollTop;return{top:A.top+n,left:A.left+t}}(A.current):{top:0,left:0},[t]),{renderMenu:o,children:l,top:s,bottom:c}=e,u=D()(e,["renderMenu","children","top","bottom"]);return Object(a.jsxs)("div",Qi(Qi({},u),{},{children:[Object(a.jsx)("div",{className:"handle",style:{width:"100%",height:"100%"},ref:A,onClick:()=>n(!t),children:l}),Object(a.jsx)(ri,{selected:t,offsetTop:r.top,offsetLeft:r.left,top:s,bottom:c,children:o()})]}))};function ji(e,A,t){const n=A*t,r=n+A;let a=0;for(let A=n;A<r;A++)a+=e[A];return a/A}function Di({renderHeight:e,height:A}){const t=va(WA),n=va(fA)("main"),r=Object(i.useMemo)(()=>function(e,A,t){const n=document.createElement("canvas");n.width=6,n.height=e;const r=A.slice(2,18),a=n.getContext("2d");if(null==a)throw new Error("Could not construct canvas context");const i=16/t;for(let A=0;A<t;A++){const t=15-Math.floor(A*i);a.fillStyle=r[t];const n=e-2*A;a.fillRect(0,n,6,2)}return n}(A,t,e),[t,A,e]);return Object(i.useCallback)((e,a,i,o)=>{if(i=2*Math.ceil(i),o=2*Math.ceil(o),i>0||o>0){const l=A-i,s=6;if(A>0&&e.drawImage(r,0,l,s,A,a,l,s,A),!n){const n=A-o;e.fillStyle=t[23],e.fillRect(a,n,s,2)}}},[r,t,A,n])}function Ri({renderHeight:e,height:A,analyser:t}){const[n]=Object(i.useState)(()=>new Array(20).fill(0)),[r]=Object(i.useState)(()=>new Array(20).fill(0)),a=t.frequencyBinCount,o=Object(i.useMemo)(()=>function(e){const A=new Array(20).fill(0),t=Math.pow(110.25,.05);A[0]=0,A[1]=200;for(let e=2;e<19;e++)A[e]=A[e-1]*t;A[19]=22050;for(let t=0;t<20;t++){const n=Math.floor(A[t]/22050*e);A[t]=n}return A}(a),[a]),l=Object(i.useMemo)(()=>new Uint8Array(a),[a]),s=Di({height:A,renderHeight:e});return Object(i.useCallback)(A=>{t.getByteFrequencyData(l);const a=e/256;for(let e=0;e<19;e++){const t=o[e],i=o[e+1];let c=0;for(let e=t;e<i;e++)c+=l[e];c/=i-t;let u=n[e]-.01*Math.pow(r[e],2);u<c?(u=c,r[e]=0):r[e]+=1,n[e]=u,s(A,8*e,c*a,u*a)}},[t,r,n,l,o,s,e])}var Vi=function({analyser:e}){Object(i.useLayoutEffect)(()=>{e.fftSize=2048},[e.fftSize]);const A=va(WA),t=va($A),n=va(xA),r=va(fA),o=va(xt),l=Ca(la),s=r("main"),c=s?38:76,u=s?5:16,d=2*c,g=2*u,p=Object(i.useMemo)(()=>function(e,A,t,n,r){const a=document.createElement("canvas");a.width=e,a.height=A;const i=a.getContext("2d");if(null==i)throw new Error("Could not construct canvas context");if(i.fillStyle=t,i.fillRect(0,0,e,A),!r){i.fillStyle=n;for(let t=0;t<e;t+=4)for(let e=2;e<A;e+=4)i.fillRect(t,e,2,2)}return a}(d,g,A[0],A[1],Boolean(s)),[A,g,d,s]),h=function({analyser:e,height:A,width:t,renderWidth:n}){const r=va(WA),a=e.fftSize,o=Object(i.useMemo)(()=>new Uint8Array(a),[a]);return Object(i.useCallback)(i=>{e.getByteTimeDomainData(o),i.lineWidth=2,i.strokeStyle=r[18];const l=2*Math.floor(a/t),s=A;i.beginPath();for(let e=0;e<=n;e++){const A=(1-ji(o,l,e)/255)*s,t=2*e;0===t?i.moveTo(t,A):i.lineTo(t,A)}i.stroke()},[e,a,r,o,A,n,t])}({analyser:e,height:g,width:d,renderWidth:c}),f=Ri({analyser:e,height:g,renderHeight:u}),m=Di({height:g,renderHeight:u}),E=Object(i.useCallback)(e=>{if(n===R.f.PLAYING){if(o)return e.drawImage(p,0,0),void Object.entries(o).forEach(([A,t])=>{m(e,Number(A),t,-1)});switch(t){case R.k.OSCILLOSCOPE:e.drawImage(p,0,0),h(e);break;case R.k.BAR:e.drawImage(p,0,0),f(e);break;default:e.clearRect(0,0,d,g)}}},[p,o,g,m,f,h,n,t,d]),[b,w]=Object(i.useState)(null);return Object(i.useLayoutEffect)(()=>{if(null==b)return;const e=b.getContext("2d");if(null==e)return;e.imageSmoothingEnabled=!1;let A=null;const t=()=>{E(e),A=window.requestAnimationFrame(t)};return t(),()=>{null!=A&&window.cancelAnimationFrame(A)}},[b,E]),n===R.f.STOPPED?null:Object(a.jsx)("canvas",{id:"visualizer",ref:w,style:{width:c,height:u},width:d,height:g,onClick:l})};var Fi=Object(i.memo)(()=>{const e=Ca(pn),A=Ca(sn),t=Ca(cn),n=Ca(gn),r=Ca(un);return Object(a.jsxs)("div",{className:"actions",children:[Object(a.jsx)("div",{id:"previous",onClick:e,title:"Previous Track"}),Object(a.jsx)("div",{id:"play",onClick:A,title:"Play"}),Object(a.jsx)("div",{id:"pause",onClick:t,title:"Pause"}),Object(a.jsx)("div",{id:"stop",onClick:r,title:"Stop"}),Object(a.jsx)("div",{id:"next",onClick:n,title:"Next Track"})]})});function Gi(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function Pi(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?Gi(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function Ki({style:e,className:A,id:t}){const n=va(At),r=Ca(yn),i=Ca(ca),o=Ca(ua);return Object(a.jsx)("input",{id:t,className:A,type:"range",min:"-100",max:"100",step:"1",value:n,style:Pi(Pi({},e),{},{touchAction:"none"}),onChange:e=>r(Number(e.target.value)),onMouseDown:()=>i("balance"),onMouseUp:o,title:"Balance"})}const zi=e=>{const A=Math.abs(e)/100;return 15*Math.floor(27*A)};var Yi=Object(i.memo)(()=>{const e=va(At);return Object(a.jsx)(Ki,{id:"balance",style:{backgroundPosition:`0 -${zi(e)}px`}})});var Ji=Object(i.memo)(()=>{const e=Ca(oa);return Object(a.jsx)(Ni,{id:"close",onClick:e,title:"Close"})});function _i(){return ca("double")}function Hi(){return e=>{e(Ht()),e({type:"UNSET_FOCUS"})}}var qi=Object(i.memo)(()=>{const e=Ca(_i),A=Ca(Hi),t=va(PA);return Object(a.jsxs)("div",{id:"clutter-bar",children:[Object(a.jsx)(Li,{bottom:!0,renderMenu:()=>Object(a.jsx)(hi,{}),children:Object(a.jsx)("div",{id:"button-o"})}),Object(a.jsx)("div",{id:"button-a"}),Object(a.jsx)("div",{id:"button-i"}),Object(a.jsx)("div",{title:"Toggle Doublesize Mode",id:"button-d",className:Ma()({selected:t}),onMouseUp:A,onMouseDown:e}),Object(a.jsx)("div",{id:"button-v"})]})});var Zi=Object(i.memo)(()=>{const e=Ca(Tr);return Object(a.jsx)("div",{id:"eject",onClick:e,title:"Open File(s)"})});function Wi(){return An("equalizer")}var Xi=Object(i.memo)(()=>{const e=Ca(Wi),A=va(pA)("equalizer");return Object(a.jsx)("div",{id:"equalizer-button",className:Ma()({selected:A}),onClick:e,title:"Toggle Graphical Equalizer"})});function $i(){return An("playlist")}var eo=Object(i.memo)(()=>{const e=va(pA)("playlist"),A=Ca($i);return Object(a.jsx)("div",{id:"playlist-button",className:Ma()({selected:e}),onClick:A,title:"Toggle Playlist Editor"})});var Ao=Object(i.memo)(e=>{const A=(""+e.children||"").split("");return Object(a.jsx)(i.Fragment,{children:A.map((e,A)=>Object(a.jsx)(vi,{children:e},A+e))})});var to=Object(i.memo)(()=>{const e=va(gt);return Object(a.jsx)("div",{id:"kbps",children:Object(a.jsx)(Ao,{children:e||""})})});var no=Object(i.memo)(()=>{const e=va(pt);return Object(a.jsx)("div",{id:"khz",children:Object(a.jsx)(Ao,{children:e||""})})});const ro=e=>e.length>=31,ao=e=>ro(e)?`${e} *** ${e}`:e.padEnd(31," ");var io=i.memo(()=>{const e=va(dt),A=va(PA),t=va(Mt),n=Ca(Ea),{handleMouseDown:r,dragOffset:o,dragging:l}=function(){const[e,A]=i.useState(null),[t,n]=i.useState(0);return i.useEffect(()=>{if(null==e)return;const t=e,r=e=>{const A=M.l(e)-t;n(-A)};let a=!1;const i=()=>{a||(document.removeEventListener("mousemove",r),document.removeEventListener("touchmove",r),document.removeEventListener("mouseup",i),document.removeEventListener("touchend",i),A(null),a=!0)};return document.addEventListener("mousemove",r),document.addEventListener("touchmove",r),document.addEventListener("touseup",i),document.addEventListener("touchend",i),i},[e]),{handleMouseDown:i.useCallback(e=>{A(M.l(e))},[]),dragOffset:t,dragging:null!=e}}(),s=((e,A,t)=>{if(!ro(e))return 0;const n=5*A+t,r=5*(e.length+" *** ".length);return(n%(a=r)+a)%a;var a})(e,t,o),c=-s+"px";return function({step:e,dragging:A}){const[t,n]=i.useState(!0);i.useEffect(()=>{if(!1===t)return;const A=setInterval(e,220);return()=>clearInterval(A)},[e,t]),i.useEffect(()=>{if(A)return void n(!1);const e=window.setTimeout(()=>{n(!0)},1e3);return()=>{window.clearTimeout(e)}},[A])}({step:n,dragging:l}),Object(a.jsx)("div",{id:"marquee",className:"text",onMouseDown:r,onTouchStart:r,title:"Song Title",children:Object(a.jsx)("div",{style:{whiteSpace:"nowrap",willChange:"transform",transform:`translateX(${c})`},children:Object(a.jsx)(Ao,{children:ao(e)})},A?"doubled":"not-doubled")})});var oo=Object(i.memo)(()=>{const e=va(rt);return Object(a.jsxs)("div",{className:"mono-stereo",children:[Object(a.jsx)("div",{id:"stereo",className:Ma()({selected:2===e})}),Object(a.jsx)("div",{id:"mono",className:Ma()({selected:1===e})})]})});var lo=Object(i.memo)(()=>{const[e,A]=function(){const e=va(vA),A=va(at),t=e?Math.floor(A)/e*100:0,n=va(ut);return[t,"position"===va(ct)?n:t]}(),t=Ba(),n=Object(i.useCallback)(e=>{t({type:"SEEK_TO_PERCENT_COMPLETE",percent:Number(e.target.value)}),t({type:"UNSET_FOCUS"})},[t]),r=Object(i.useCallback)(e=>{t({type:"SET_FOCUS",input:"position"}),t({type:"SET_SCRUB_POSITION",position:Number(e.target.value)})},[t]);let o="";return e<=33?o="left":e>=66&&(o="right"),Object(a.jsx)("input",{id:"position",className:o,type:"range",min:"0",max:"100",step:"1",style:{touchAction:"none"},value:A,onInput:r,onChange:()=>{},onMouseUp:n,onMouseDown:r,title:"Seeking Bar"})});var so=Object(i.memo)(()=>{const e=va(nt),A=Ca(On);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(ni,{checked:e,label:"Repeat",onClick:A,hotkey:"(R)"}),children:Object(a.jsx)("div",{id:"repeat",className:Ma()({selected:e}),onClick:A,title:"Toggle Repeat"})})});var co=Object(i.memo)(()=>{const e=Ca(Zt);return Object(a.jsx)(Ni,{id:"shade",onMouseDown:e,onDoubleClick:e=>e.stopPropagation(),title:"Toggle Windowshade Mode"})});var uo=Object(i.memo)(()=>{const e=Ca(sa);return Object(a.jsx)(Ni,{id:"minimize",title:"Minimize",onClick:e})});var go=Object(i.memo)(()=>{const e=va(tt),A=Ca(In);return Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(ni,{checked:e,label:"Shuffle",onClick:A,hotkey:"(S)"}),children:Object(a.jsx)("div",{id:"shuffle",className:Ma()({selected:e}),onClick:A,title:"Toggle Shuffle"})})});var po=Object(i.memo)(()=>{const e=Ca(Sn),A=va(at),t=va(vA)||0,n=va(Tt),r=n===R.h.ELAPSED?A:t-A,i=M.i(r);return Object(a.jsxs)("div",{id:"time",onClick:e,className:"countdown",children:[n===R.h.REMAINING&&Object(a.jsx)("div",{id:"minus-sign"}),Object(a.jsx)("div",{id:"minute-first-digit",className:"digit digit-"+i.minutesFirstDigit}),Object(a.jsx)("div",{id:"minute-second-digit",className:"digit digit-"+i.minutesSecondDigit}),Object(a.jsx)("div",{id:"second-first-digit",className:"digit digit-"+i.secondsFirstDigit}),Object(a.jsx)("div",{id:"second-second-digit",className:"digit digit-"+i.secondsSecondDigit})]})});function ho(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);A&&(n=n.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,n)}return t}function fo(e){for(var A=1;A<arguments.length;A++){var t=null!=arguments[A]?arguments[A]:{};A%2?ho(Object(t),!0).forEach((function(A){r()(e,A,t[A])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ho(Object(t)).forEach((function(A){Object.defineProperty(e,A,Object.getOwnPropertyDescriptor(t,A))}))}return e}function mo({id:e,style:A,className:t}){const n=va(et),r=Ca(ca),i=Ca(ua),o=Ca(En);return Object(a.jsx)("input",{id:e,type:"range",min:"0",max:"100",step:"1",value:n,style:fo(fo({},A),{},{touchAction:"none"}),className:t,onChange:e=>o(Number(e.target.value)),onMouseDown:()=>r("volume"),onTouchStart:()=>{r("volume")},onMouseUp:i,onTouchEnd:i,title:"Volume Bar"})}var Eo=Object(i.memo)(()=>{const e=va(et)/100,A={backgroundPosition:`0 -${15*(Math.round(28*e)-1)}px`};return Object(a.jsx)("div",{id:"volume",style:A,children:Object(a.jsx)(mo,{})})});t(93);function bo(e){return jr(e,R.e.PLAY)}var wo=i.memo(({analyser:e,filePickers:A})=>{const t=va(fA)("main"),n=va(xA),r=va(GA),i=va(Qt),o=va(PA),l=va(KA),s=va(Lt),c=Ma()({window:!0,play:n===R.f.PLAYING,stop:n===R.f.STOPPED,pause:n===R.f.PAUSED,selected:r===R.m.MAIN,shade:t,draggable:!0,loading:i,doubled:o,llama:l}),u=Ca(Zt),d=Ca(wn),g=Ca(bo);return Object(a.jsx)(Za,{id:"main-window",windowId:R.m.MAIN,className:c,handleDrop:g,onWheel:d,children:Object(a.jsxs)(Qa,{windowId:R.m.MAIN,children:[Object(a.jsxs)("div",{id:"title-bar",className:"selected draggable",onDoubleClick:u,children:[Object(a.jsx)(Li,{id:"option-context",bottom:!0,renderMenu:()=>Object(a.jsx)(fi,{filePickers:A}),children:Object(a.jsx)(Ni,{id:"option",title:"Winamp Menu"})}),t&&Object(a.jsx)(Bi,{}),Object(a.jsx)(uo,{}),Object(a.jsx)(co,{}),Object(a.jsx)(Ji,{})]}),Object(a.jsxs)("div",{className:"webamp-status",children:[Object(a.jsx)(qi,{}),!s&&Object(a.jsx)("div",{id:"play-pause"}),Object(a.jsx)("div",{id:"work-indicator",className:Ma()({selected:s})}),Object(a.jsx)(po,{})]}),Object(a.jsx)(Vi,{analyser:e}),Object(a.jsxs)("div",{className:"media-info",children:[Object(a.jsx)(io,{}),Object(a.jsx)(to,{}),Object(a.jsx)(no,{}),Object(a.jsx)(oo,{})]}),Object(a.jsx)(Eo,{}),Object(a.jsx)(Yi,{}),Object(a.jsxs)("div",{className:"windows",children:[Object(a.jsx)(Xi,{}),Object(a.jsx)(eo,{})]}),Object(a.jsx)(lo,{}),Object(a.jsx)(Fi,{}),Object(a.jsx)(Zi,{}),Object(a.jsxs)("div",{className:"shuffle-repeat",children:[Object(a.jsx)(go,{}),Object(a.jsx)(so,{})]}),Object(a.jsx)("a",{id:"about",target:"_blank",href:"https://webamp.org/about",title:"About"})]})})});var yo=function({widthOnly:e}){const A=va(mA),t=Ca(en),n=A("playlist");return Object(a.jsx)(Ta,{currentSize:n,id:"playlist-resize-target",setWindowSize:e=>{t("playlist",e)},widthOnly:e})};var Oo=function(){const e=va(GA),A=va(mA)("playlist"),t=va(vA),n=va(LA),r=Ca(Xt),o=Ca(Wt),l=Ca($t),s=A[0]*R.o,c=Object(i.useMemo)(()=>{if(null==n)return"[No file]";const e=(205+s)/R.b;return n.length>e?n.slice(0,e-1)+R.j:n},[s,n]),u=Object(i.useMemo)(()=>null==n?"":Object(M.j)(t),[t,n]);return Object(a.jsx)("div",{id:"playlist-window-shade",className:Ma()("window","draggable",{selected:e===R.m.PLAYLIST}),style:{width:R.p+s+"px"},onMouseDown:()=>l("playlist"),onDoubleClick:o,children:Object(a.jsx)("div",{className:"left",children:Object(a.jsxs)("div",{className:"right draggable",children:[Object(a.jsx)("div",{id:"playlist-shade-track-title",children:Object(a.jsx)(Ao,{children:c})}),Object(a.jsx)("div",{id:"playlist-shade-time",children:Object(a.jsx)(Ao,{children:u})}),Object(a.jsx)(yo,{widthOnly:!0}),Object(a.jsx)("div",{id:"playlist-shade-button",onClick:o}),Object(a.jsx)("div",{id:"playlist-close-button",onClick:()=>r("playlist")})]})})})};var Io=Object(i.memo)((function({children:e}){const{ref:A,hover:t}=Ua();return Object(a.jsx)("li",{ref:A,className:Ma()({hover:t}),children:e})}));var So=Object(i.memo)((function(e){const[A,t]=Object(i.useState)(!1),[n,r]=Object(i.useState)(null),o=Object(i.useCallback)(()=>{setTimeout(()=>{t(!1)},0)},[]);return function(e,A){Object(i.useEffect)(()=>{if(null==e||null==A)return;const t=n=>{const r=n.target;r instanceof Element&&(e.contains(r)||(A(),window.document.removeEventListener("click",t,{capture:!0})))};return window.document.addEventListener("click",t,{capture:!0}),()=>{window.document.removeEventListener("click",t,{capture:!0})}},[e,A])}(n,A?o:null),Object(a.jsxs)("div",{id:e.id,className:Ma()("playlist-menu",{selected:A}),ref:r,onClick:()=>t(e=>!e),children:[Object(a.jsx)("div",{className:"bar"}),A&&Object(a.jsx)("ul",{children:i.Children.map(e.children,(e,A)=>Object(a.jsx)(Io,{children:e},A))})]})}));var ko=()=>{const e=va($e),A=Ca(Yr),t=Ca(zr),n=Ca(Jr);return Object(a.jsxs)(So,{id:"playlist-add-menu",children:[Object(a.jsx)("div",{className:"add-url",onClick:()=>n(e)}),Object(a.jsx)("div",{className:"add-dir",onClick:()=>A(e)}),Object(a.jsx)("div",{className:"add-file",onClick:()=>t(e)})]})};var Uo=()=>{const e=Ca(sr),A=Ca(cr),t=Ca(lr);return Object(a.jsxs)(So,{id:"playlist-remove-menu",children:[Object(a.jsx)("div",{className:"remove-misc",onClick:()=>alert("Not supported in Webamp")}),Object(a.jsx)("div",{className:"remove-all",onClick:A}),Object(a.jsx)("div",{className:"crop",onClick:t}),Object(a.jsx)("div",{className:"remove-selected",onClick:e})]})};function vo(){const e=Ca(wr),A=Ca(yr),t=Ca(Or);return Object(a.jsxs)(So,{id:"playlist-selection-menu",children:[Object(a.jsx)("div",{className:"invert-selection",onClick:e}),Object(a.jsx)("div",{className:"select-zero",onClick:A}),Object(a.jsx)("div",{className:"select-all",onClick:t})]})}function Co(){const e=Ca(ur),A=Ca(dr),t=Ca(gr);return Object(a.jsx)(Li,{style:{width:"100%",height:"100%"},top:!0,renderMenu:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(ni,{label:"Sort list by title",onClick:t}),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{label:"Reverse list",onClick:e}),Object(a.jsx)(ni,{label:"Randomize list",onClick:A})]}),children:Object(a.jsx)("div",{})})}var Bo=()=>{const e=Ca(Gr);return Object(a.jsx)(Li,{style:{width:"100%",height:"100%"},top:!0,renderMenu:()=>Object(a.jsx)(ni,{onClick:e,label:"Generate HTML playlist"}),children:Object(a.jsx)("div",{})})};var xo=()=>Object(a.jsxs)(So,{id:"playlist-misc-menu",children:[Object(a.jsx)("div",{className:"sort-list",onClick:e=>e.stopPropagation(),children:Object(a.jsx)(Co,{})}),Object(a.jsx)("div",{className:"file-info",onClick:()=>alert("Not supported in Webamp")}),Object(a.jsx)("div",{className:"misc-options",onClick:e=>e.stopPropagation(),children:Object(a.jsx)(Bo,{})})]});function Mo(){const e=Ca(cr),A=(Ca(_r),Ca(Hr));return Object(a.jsxs)(So,{id:"playlist-list-menu",children:[Object(a.jsx)("div",{className:"new-list",onClick:e}),Object(a.jsx)("div",{className:"save-list",onClick:A}),Object(a.jsx)("div",{className:"load-list"})]})}var No=()=>{const e=va(lA),A=Object(i.useMemo)(()=>function(e,A,t){for(;e.length<A;)e+=t;return e}(e,18," "),[e]);return Object(a.jsx)("div",{className:"playlist-running-time-display draggable",children:Object(a.jsx)("div",{children:Object(a.jsx)(Ao,{children:A})})})};var To=()=>{const e=Ca(sn),A=Ca(cn),t=Ca(un),n=Ca(Tr),r=Ca(gn),o=Ca(pn);return Object(a.jsxs)(i.Fragment,{children:[Object(a.jsx)(No,{}),Object(a.jsxs)("div",{className:"playlist-action-buttons",children:[Object(a.jsx)("div",{className:"playlist-previous-button",onClick:o}),Object(a.jsx)("div",{className:"playlist-play-button",onClick:e}),Object(a.jsx)("div",{className:"playlist-pause-button",onClick:A}),Object(a.jsx)("div",{className:"playlist-stop-button",onClick:t}),Object(a.jsx)("div",{className:"playlist-next-button",onClick:r}),Object(a.jsx)("div",{className:"playlist-eject-button",onClick:n})]}),Object(a.jsx)(Bi,{})]})};var Qo=function({children:e,handleMoveClick:A,index:t,id:n}){const r=va(XA),o=va(nA),l=va(uA),s=o.has(n),c=l===n,u=Ba(),d=Ca(ln),g=Object(i.useCallback)(e=>e.shiftKey?(e.preventDefault(),void u({type:"SHIFT_CLICKED_TRACK",index:t})):e.metaKey||e.ctrlKey?(e.preventDefault(),void u({type:"CTRL_CLICKED_TRACK",index:t})):(s||u({type:"CLICKED_TRACK",index:t}),void A(e)),[u,A,t,s]),p=Object(i.useCallback)(e=>{function r(){d(n)}s||u({type:"CLICKED_TRACK",index:t}),A(e),e.target.addEventListener("touchstart",r),setTimeout(()=>{e.target.removeEventListener("touchstart",r)},250)},[u,A,n,t,d,s]),h={backgroundColor:s?r.selectedbg:void 0,color:c?r.current:void 0};return Object(a.jsx)("div",{className:Ma()("track-cell",{selected:s,current:c}),style:h,onClick:e=>e.stopPropagation(),onMouseDown:g,onTouchStart:p,onContextMenu:e=>e.preventDefault(),onDoubleClick:()=>d(n),children:e})};var Lo=({id:e,paddedTrackNumber:A})=>{const t=va(CA)(e);return Object(a.jsxs)("span",{children:[A,". ",t]})};var jo=function(){const e=va(IA),A=va(SA),t=va(Ze),n=va(DA),r=Ca(yr),o=Ca(br),l=Ca(fr),[s,c]=Object(i.useState)(null),[u,d]=Object(i.useState)(!1),[g,p]=Object(i.useState)(null),h=e=>{d(!0),p(M.m(e))};function f(t){return A.map((A,n)=>Object(a.jsx)(Qo,{id:A,index:e+n,handleMoveClick:h,children:t(A,n)},A))}Object(i.useEffect)(()=>{if(null==s||null==g||!1===u)return;const{top:e,bottom:A,left:t,right:n}=s.getBoundingClientRect();let r=0;const a=a=>{const i=M.l(a),l=M.m(a);if(l<e||l>A||i<t||i>n)return;const s=Math.floor((l-g)/R.i);if(s!==r){o(s-r),r=s}},i=()=>d(!1);return window.addEventListener("mouseup",i),window.addEventListener("mousemove",a),window.addEventListener("touchend",i),window.addEventListener("touchmove",a),()=>{window.removeEventListener("mousemove",a),window.removeEventListener("touchmove",a),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",i)}},[u]);const m=n.toString().length,E=A=>(A+1+e).toString().padStart(m," ");return Object(i.useEffect)(()=>{if(null!=s)return s.addEventListener("wheel",l,{passive:!1}),()=>{s.removeEventListener("wheel",l)}},[s,l]),Object(a.jsxs)("div",{ref:c,className:"playlist-tracks",style:{height:"100%",userSelect:"none"},onClick:r,children:[Object(a.jsx)("div",{className:"playlist-track-titles",children:f((e,A)=>Object(a.jsx)(Lo,{id:e,paddedTrackNumber:E(A)}))}),Object(a.jsx)("div",{className:"playlist-track-durations",children:f(e=>M.j(t[e].duration))})]})};function Do({value:e,height:A,width:t,handle:n,handleHeight:r,onBeforeChange:o,onChange:l,onAfterChange:s,disabled:c}){const u=Object(i.useRef)(null),d=Object(i.useRef)(null);function g({target:e,clientY:A,touch:t}){const n=u.current,r=d.current;if(null==n||null==r)return null;const a=n.getBoundingClientRect(),i=r.getBoundingClientRect(),{top:c,height:g}=a,{top:p,height:h}=i,f=c+(r.contains(e)?A-p:h/2),m=g-h;function E(e){const A=e-f;l(M.d(A/m,0,1))}if(t){const e=e=>{e.cancelable&&e.preventDefault(),E(e.touches[0].clientY)},A=()=>{null!=s&&s(),document.removeEventListener("touchmove",e),document.removeEventListener("touchend",A)};document.addEventListener("touchmove",e,{passive:!1}),document.addEventListener("touchend",A)}else{const e=e=>{e.preventDefault(),E(e.clientY)},A=()=>{null!=s&&s(),document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",A)};document.addEventListener("mousemove",e),document.addEventListener("mouseup",A)}null!=o&&o(),E(A)}const p=Math.floor((A-r)*e);return Object(a.jsx)("div",{style:{height:A,width:t},onMouseDown:c?void 0:function(e){e.preventDefault(),g({target:e.target,clientY:e.clientY,touch:!1})},onTouchStart:c?void 0:function(e){g({target:e.target,clientY:e.touches[0].clientY,touch:!0})},ref:u,children:Object(a.jsx)("div",{style:{transform:`translateY(${p}px)`},ref:d,children:n})})}const Ro=()=>Object(a.jsx)("div",{className:"playlist-scrollbar-handle",style:{height:18}});function Vo(){const e=va(JA)(R.m.PLAYLIST).height,A=va(OA),t=va(kA),n=Ca(pr);return Object(a.jsx)("div",{className:"playlist-scrollbar",style:{marginLeft:5},children:Object(a.jsx)(Do,{height:e-58,handleHeight:18,width:8,value:A/100,onChange:e=>n(100*e),handle:Object(a.jsx)(Ro,{}),disabled:t})})}t(95);function Fo(e){return e.playlist.trackOrder.length-1}var Go=function({analyser:e}){const A=va(IA),t=va(mA),n=va(GA),r=va(fA),o=va(pA),l=va(Fo),s=va(XA),c=va(JA),u=n===R.m.PLAYLIST,d=Boolean(r(R.m.PLAYLIST)),g=t(R.m.PLAYLIST),p=c(R.m.PLAYLIST),h=Ca(Xt),f=Ca(Wt),m=Ca(mr),E=Ca(Er),b=Ca(wn),w=Ca(jr),y=g[0]>2,O=!o(R.m.MAIN),I=Object(i.useCallback)((e,t)=>{const n=e.clientY-t.y,r=Object(M.d)(A+Math.round((n-23)/R.i),0,l+1);w(e,R.e.NONE,r)},[w,l,A]);if(d)return Object(a.jsx)(Oo,{});const S={color:s.normal,backgroundColor:s.normalbg,fontFamily:s.font+", Arial, sans-serif",height:p.height+"px",width:p.width+"px"},k=Ma()("window","draggable",{selected:u}),U=g[0]%2==0;return Object(a.jsx)(Qa,{windowId:R.m.PLAYLIST,children:Object(a.jsxs)(Za,{id:"playlist-window",windowId:R.m.PLAYLIST,className:k,style:S,handleDrop:I,onWheel:b,children:[Object(a.jsxs)("div",{className:"playlist-top draggable",onDoubleClick:f,children:[Object(a.jsx)("div",{className:"playlist-top-left draggable"}),U&&Object(a.jsx)("div",{className:"playlist-top-left-spacer draggable"}),Object(a.jsx)("div",{className:"playlist-top-left-fill draggable"}),Object(a.jsx)("div",{className:"playlist-top-title draggable"}),U&&Object(a.jsx)("div",{className:"playlist-top-right-spacer draggable"}),Object(a.jsx)("div",{className:"playlist-top-right-fill draggable"}),Object(a.jsxs)("div",{className:"playlist-top-right draggable",children:[Object(a.jsx)("div",{id:"playlist-shade-button",onClick:f}),Object(a.jsx)("div",{id:"playlist-close-button",onClick:()=>h(R.m.PLAYLIST)})]})]}),Object(a.jsxs)("div",{className:"playlist-middle draggable",children:[Object(a.jsx)("div",{className:"playlist-middle-left draggable"}),Object(a.jsx)("div",{className:"playlist-middle-center",children:Object(a.jsx)(jo,{})}),Object(a.jsx)("div",{className:"playlist-middle-right draggable",children:Object(a.jsx)(Vo,{})})]}),Object(a.jsxs)("div",{className:"playlist-bottom draggable",children:[Object(a.jsxs)("div",{className:"playlist-bottom-left draggable",children:[Object(a.jsx)(ko,{}),Object(a.jsx)(Uo,{}),Object(a.jsx)(vo,{}),Object(a.jsx)(xo,{})]}),Object(a.jsx)("div",{className:"playlist-bottom-center draggable"}),Object(a.jsxs)("div",{className:"playlist-bottom-right draggable",children:[y&&Object(a.jsx)("div",{className:"playlist-visualizer",children:O&&Object(a.jsx)("div",{className:"visualizer-wrapper",children:Object(a.jsx)(Vi,{analyser:e})})}),Object(a.jsx)(To,{}),Object(a.jsx)(Mo,{}),Object(a.jsx)("div",{id:"playlist-scroll-up-button",onClick:m}),Object(a.jsx)("div",{id:"playlist-scroll-down-button",onClick:E}),Object(a.jsx)(yo,{})]})]})]})})};const Po=()=>Object(a.jsx)("div",{style:{width:11,height:11,marginLeft:1},className:"slider-handle"});function Ko({id:e,onChange:A,band:t}){const n=va(He)[t],r=Object(i.useMemo)(()=>{const{x:e,y:A}={x:(t=(e=>{const A=e/100;return Math.round(27*A)})(n))%14,y:Math.floor(t/14)};var t;return`-${15*e}px -${65*A}px`},[n]),o=Ca(da),l=Ca(ua);return Object(a.jsx)("div",{id:e,className:"band",style:{backgroundPosition:r,height:63},children:Object(a.jsx)(Do,{height:62,width:14,handleHeight:11,value:1-n/100,onBeforeChange:()=>o(t),onChange:e=>A(100*(1-e)),onAfterChange:l,handle:Object(a.jsx)(Po,{})})})}var zo=()=>{const e=Ca(Nn),A=va(it);return Object(a.jsx)("div",{id:"on",className:Ma()({selected:A}),onClick:e})};var Yo=Object(i.memo)(()=>{const e=va(e=>e.equalizer.auto),A=Ca(Tn);return Object(a.jsx)("div",{id:"auto",className:Ma()({selected:e}),onClick:A})});function Jo(e,A){const t=function(e,A){const t=e.map(()=>0),n=e.length-1,r=function(e,A){const t=[];for(let n=0;n<e;n++){t.push([]);for(let e=0;e<A;e++)t[n].push(0)}return t}(n+1,n+2);for(let t=1;t<n;t++)r[t][t-1]=1/(e[t]-e[t-1]),r[t][t]=2*(1/(e[t]-e[t-1])+1/(e[t+1]-e[t])),r[t][t+1]=1/(e[t+1]-e[t]),r[t][n+1]=3*((A[t]-A[t-1])/((e[t]-e[t-1])*(e[t]-e[t-1]))+(A[t+1]-A[t])/((e[t+1]-e[t])*(e[t+1]-e[t])));return r[0][0]=2/(e[1]-e[0]),r[0][1]=1/(e[1]-e[0]),r[0][n+1]=3*(A[1]-A[0])/((e[1]-e[0])*(e[1]-e[0])),r[n][n-1]=1/(e[n]-e[n-1]),r[n][n]=2/(e[n]-e[n-1]),r[n][n+1]=3*(A[n]-A[n-1])/((e[n]-e[n-1])*(e[n]-e[n-1])),function(e,A){const t=e.length;for(let A=0;A<t;A++){let n=0,r=Number.NEGATIVE_INFINITY;for(let a=A;a<t;a++)e[a][A]>r&&(n=a,r=e[a][A]);_o(e,A,n);for(let n=A+1;n<t;n++){for(let r=A+1;r<t+1;r++)e[n][r]=e[n][r]-e[A][r]*(e[n][A]/e[A][A]);e[n][A]=0}}for(let n=t-1;n>=0;n--){const r=e[n][t]/e[n][n];A[n]=r;for(let A=n-1;A>=0;A--)e[A][t]-=e[A][n]*r,e[A][n]=0}return A}(r,t)}(e,A),n=e[e.length-1],r=[];let a=1;for(let i=0;i<=n;i++){for(;e[a]<i;)a++;const n=(i-e[a-1])/(e[a]-e[a-1]),o=t[a-1]*(e[a]-e[a-1])-(A[a]-A[a-1]),l=-t[a]*(e[a]-e[a-1])+(A[a]-A[a-1]),s=(1-n)*A[a-1]+n*A[a]+n*(1-n)*(o*(1-n)+l*n);r.push(s)}return r}function _o(e,A,t){const n=e[A];e[A]=e[t],e[t]=n}var Ho=function(){const e=va(He),A=Sa(va(Ct)),[t,n]=Object(i.useState)(null),r=Object(i.useMemo)(()=>{var e;return null!==(e=null==t?void 0:t.getContext("2d"))&&void 0!==e?e:null},[t]),o=function(e){const A=Sa(va(Bt));return Object(i.useMemo)(()=>null==e||null==A?null:e.createPattern(A,"repeat-x"),[e,A])}(r);return Object(i.useLayoutEffect)(()=>{if(null==r||null==t||null==A||null==o)return;const n=Number(t.width),a=Number(t.height);r.clearRect(0,0,n,a),function({colorPattern:e,sliders:A,canvasCtx:t,preampLineImage:n}){const r=Object(M.x)(A.preamp/100,0,18);t.drawImage(n,0,r,n.width,n.height);const a=R.a.map(e=>A[e]);t.fillStyle=e;const i=[],o=[];a.forEach((e,A)=>{const t=(100-e)/100;i.push(12*A),o.push(Object(M.x)(t,0,18))});const l=Jo(i,o),s=i[i.length-1];let c=o[0];for(let e=0;e<=s;e++){const A=Object(M.d)(Math.round(l[e]),0,18),n=Math.min(A,c),r=1+Math.abs(c-A);t.fillRect(2+e,n,1,r),c=A}}({colorPattern:o,sliders:e,canvasCtx:r,preampLineImage:A})},[r,t,o,A,e]),Object(a.jsx)("canvas",{id:"eqGraph",ref:n,width:113,height:19})},qo=t(44);var Zo=()=>{const e=Ca(Nr),A=Ca(Fr),t=Ca(Vr);return Object(a.jsx)(Li,{top:!0,id:"presets-context",renderMenu:()=>Object(a.jsxs)(a.Fragment,{children:[Object(a.jsxs)(Ai,{label:"Load",children:[qo.presets.map(e=>Object(a.jsx)(ni,{onClick:()=>t(e),label:e.name},e.name)),Object(a.jsx)(ei,{}),Object(a.jsx)(ni,{onClick:e,label:"From Eqf..."})]}),Object(a.jsx)(ni,{onClick:A,label:"Save"})]}),children:Object(a.jsx)("div",{id:"presets"})})};function Wo(){const e=va(GA)===R.m.EQUALIZER,A=Ca(Xt),t=Ca(qt);return Object(a.jsxs)(Ni,{id:"eq-buttons",children:[Object(a.jsx)("div",{id:"equalizer-shade",onClick:t}),Object(a.jsx)("div",{id:"equalizer-close",onClick:()=>A(R.m.EQUALIZER)})]},e?"selected":"unselected")}var Xo=()=>{const e=va(et),A=va(At),t=Ca(qt),n=["left","center","right"],r=Object(M.z)(0,100,e,n),i=Object(M.z)(-100,100,A,n);return Object(a.jsxs)("div",{className:"draggable",onDoubleClick:t,style:{width:"100%",height:"100%"},children:[Object(a.jsx)(Wo,{}),Object(a.jsx)(mo,{id:"equalizer-volume",className:r}),Object(a.jsx)(Ki,{id:"equalizer-balance",className:i})]})};t(97);var $o=()=>{const e=va(PA),A=va(GA),t=va(fA),n=A===R.m.EQUALIZER,r=t(R.m.EQUALIZER),i=Ca(Mn),o=Ca(xn),l=Ca(Bn),s=Ca(Cn),c=Ca(Un),u=Ca(qt),d=Ma()({selected:n,doubled:e,shade:r,window:!0,draggable:!0});return Object(a.jsx)("div",{id:"equalizer-window",className:d,children:Object(a.jsx)(Qa,{windowId:R.m.EQUALIZER,children:r?Object(a.jsx)(Xo,{}):Object(a.jsxs)("div",{children:[Object(a.jsx)("div",{className:"equalizer-top title-bar draggable",onDoubleClick:u,children:Object(a.jsx)(Wo,{})}),Object(a.jsx)(zo,{}),Object(a.jsx)(Yo,{}),Object(a.jsx)(Ho,{}),Object(a.jsx)(Zo,{}),Object(a.jsx)(Ko,{id:"preamp",band:"preamp",onChange:i}),Object(a.jsx)("div",{id:"plus12db",onClick:s}),Object(a.jsx)("div",{id:"zerodb",onClick:l}),Object(a.jsx)("div",{id:"minus12db",onClick:o}),R.a.map(e=>{return Object(a.jsx)(Ko,{id:(A=e,"band-"+A),band:e,onChange:A=>c(e,A)},e);var A})]})})})};const el={MAIN_BALANCE_BACKGROUND:["#balance"],MAIN_BALANCE_THUMB:["#balance::-webkit-slider-thumb","#balance::-moz-range-thumb"],MAIN_BALANCE_THUMB_ACTIVE:["#balance:active::-webkit-slider-thumb","#balance:active::-moz-range-thumb"],MAIN_PREVIOUS_BUTTON:[".actions #previous"],MAIN_PREVIOUS_BUTTON_ACTIVE:[".actions #previous:active"],MAIN_PLAY_BUTTON:[".actions #play"],MAIN_PLAY_BUTTON_ACTIVE:[".actions #play:active"],MAIN_PAUSE_BUTTON:[".actions #pause"],MAIN_PAUSE_BUTTON_ACTIVE:[".actions #pause:active"],MAIN_STOP_BUTTON:[".actions #stop"],MAIN_STOP_BUTTON_ACTIVE:[".actions #stop:active"],MAIN_NEXT_BUTTON:[".actions #next"],MAIN_NEXT_BUTTON_ACTIVE:[".actions #next:active"],MAIN_EJECT_BUTTON:["#eject"],MAIN_EJECT_BUTTON_ACTIVE:["#eject:active"],MAIN_WINDOW_BACKGROUND:["#main-window"],MAIN_STEREO:[".media-info #stereo",".stop .media-info #stereo.selected"],MAIN_STEREO_SELECTED:[".media-info #stereo.selected"],MAIN_MONO:[".media-info #mono",".stop .media-info #mono.selected"],MAIN_MONO_SELECTED:[".media-info #mono.selected"],NO_MINUS_SIGN:["#time #minus-sign"],MINUS_SIGN:["#time.countdown #minus-sign"],DIGIT_0:[".digit-0"],DIGIT_1:[".digit-1"],DIGIT_2:[".digit-2"],DIGIT_3:[".digit-3"],DIGIT_4:[".digit-4"],DIGIT_5:[".digit-5"],DIGIT_6:[".digit-6"],DIGIT_7:[".digit-7"],DIGIT_8:[".digit-8"],DIGIT_9:[".digit-9"],NO_MINUS_SIGN_EX:["#time #minus-sign"],MINUS_SIGN_EX:["#time.countdown #minus-sign"],DIGIT_0_EX:[".digit-0"],DIGIT_1_EX:[".digit-1"],DIGIT_2_EX:[".digit-2"],DIGIT_3_EX:[".digit-3"],DIGIT_4_EX:[".digit-4"],DIGIT_5_EX:[".digit-5"],DIGIT_6_EX:[".digit-6"],DIGIT_7_EX:[".digit-7"],DIGIT_8_EX:[".digit-8"],DIGIT_9_EX:[".digit-9"],MAIN_PLAYING_INDICATOR:[".play #play-pause"],MAIN_PAUSED_INDICATOR:[".pause #play-pause"],MAIN_STOPPED_INDICATOR:[".stop #play-pause"],MAIN_NOT_WORKING_INDICATOR:["#work-indicator"],MAIN_WORKING_INDICATOR:["#work-indicator.selected"],PLAYLIST_TOP_TILE:[".playlist-top-left-fill",".playlist-top-left-spacer",".playlist-top-right-fill",".playlist-top-right-spacer"],PLAYLIST_TOP_LEFT_CORNER:[".playlist-top-left"],PLAYLIST_TITLE_BAR:[".playlist-top-title"],PLAYLIST_TOP_RIGHT_CORNER:[".playlist-top-right"],PLAYLIST_TOP_TILE_SELECTED:[".selected .playlist-top-left-fill",".selected .playlist-top-left-spacer",".selected .playlist-top-right-fill",".selected .playlist-top-right-spacer"],PLAYLIST_TOP_LEFT_SELECTED:[".selected .playlist-top-left"],PLAYLIST_TITLE_BAR_SELECTED:[".selected .playlist-top-title"],PLAYLIST_TOP_RIGHT_CORNER_SELECTED:[".selected .playlist-top-right"],PLAYLIST_LEFT_TILE:[".playlist-middle-left"],PLAYLIST_RIGHT_TILE:[".playlist-middle-right"],PLAYLIST_SCROLL_HANDLE:[".playlist-scrollbar-handle"],PLAYLIST_SCROLL_HANDLE_SELECTED:[".playlist-middle-right:active .playlist-scrollbar-handle"],PLAYLIST_BOTTOM_TILE:[".playlist-bottom"],PLAYLIST_BOTTOM_LEFT_CORNER:[".playlist-bottom-left"],PLAYLIST_BOTTOM_RIGHT_CORNER:[".playlist-bottom-right"],PLAYLIST_VISUALIZER_BACKGROUND:[".playlist-visualizer"],PLAYLIST_SHADE_BACKGROUND:["#playlist-window-shade"],PLAYLIST_SHADE_BACKGROUND_LEFT:["#playlist-window-shade .left"],PLAYLIST_SHADE_BACKGROUND_RIGHT:["#playlist-window-shade .right"],PLAYLIST_SHADE_BACKGROUND_RIGHT_SELECTED:["#playlist-window-shade.selected .right"],PLAYLIST_ADD_MENU_BAR:["#playlist-add-menu.selected .bar"],PLAYLIST_ADD_URL:["#playlist-add-menu .add-url"],PLAYLIST_ADD_URL_SELECTED:["#playlist-add-menu .hover .add-url"],PLAYLIST_ADD_DIR:["#playlist-add-menu .add-dir"],PLAYLIST_ADD_DIR_SELECTED:["#playlist-add-menu .hover .add-dir"],PLAYLIST_ADD_FILE:["#playlist-add-menu .add-file"],PLAYLIST_ADD_FILE_SELECTED:["#playlist-add-menu .hover .add-file"],PLAYLIST_REMOVE_MENU_BAR:["#playlist-remove-menu.selected .bar"],PLAYLIST_REMOVE_ALL:["#playlist-remove-menu .remove-all"],PLAYLIST_REMOVE_ALL_SELECTED:["#playlist-remove-menu .hover .remove-all"],PLAYLIST_CROP:["#playlist-remove-menu .crop"],PLAYLIST_CROP_SELECTED:["#playlist-remove-menu .hover .crop"],PLAYLIST_REMOVE_SELECTED:["#playlist-remove-menu .remove-selected"],PLAYLIST_REMOVE_SELECTED_SELECTED:["#playlist-remove-menu .hover .remove-selected"],PLAYLIST_REMOVE_MISC:["#playlist-remove-menu .remove-misc"],PLAYLIST_REMOVE_MISC_SELECTED:["#playlist-remove-menu .hover .remove-misc"],PLAYLIST_SELECT_MENU_BAR:["#playlist-selection-menu.selected .bar"],PLAYLIST_INVERT_SELECTION:["#playlist-selection-menu .invert-selection"],PLAYLIST_INVERT_SELECTION_SELECTED:["#playlist-selection-menu .hover .invert-selection"],PLAYLIST_SELECT_ZERO:["#playlist-selection-menu .select-zero"],PLAYLIST_SELECT_ZERO_SELECTED:["#playlist-selection-menu .hover .select-zero"],PLAYLIST_SELECT_ALL:["#playlist-selection-menu .select-all"],PLAYLIST_SELECT_ALL_SELECTED:["#playlist-selection-menu .hover .select-all"],PLAYLIST_CLOSE_SELECTED:["#playlist-close-button:active"],PLAYLIST_COLLAPSE_SELECTED:["#playlist-window #playlist-shade-button:active"],PLAYLIST_EXPAND_SELECTED:["#playlist-window-shade #playlist-shade-button:active"],PLAYLIST_MISC_MENU_BAR:["#playlist-misc-menu.selected .bar"],PLAYLIST_MISC_OPTIONS:["#playlist-misc-menu .misc-options"],PLAYLIST_MISC_OPTIONS_SELECTED:["#playlist-misc-menu .hover .misc-options"],PLAYLIST_FILE_INFO:["#playlist-misc-menu .file-info"],PLAYLIST_FILE_INFO_SELECTED:["#playlist-misc-menu .hover .file-info"],PLAYLIST_SORT_LIST:["#playlist-misc-menu .sort-list"],PLAYLIST_SORT_LIST_SELECTED:["#playlist-misc-menu .hover .sort-list"],PLAYLIST_LIST_BAR:["#playlist-list-menu.selected .bar"],PLAYLIST_NEW_LIST:["#playlist-list-menu .new-list"],PLAYLIST_NEW_LIST_SELECTED:["#playlist-list-menu .hover .new-list"],PLAYLIST_LOAD_LIST:["#playlist-list-menu .load-list"],PLAYLIST_LOAD_LIST_SELECTED:["#playlist-list-menu .hover .load-list"],PLAYLIST_SAVE_LIST:["#playlist-list-menu .save-list"],PLAYLIST_SAVE_LIST_SELECTED:["#playlist-list-menu .hover .save-list"],EQ_WINDOW_BACKGROUND:["#equalizer-window:not(.shade)"],EQ_TITLE_BAR:[".equalizer-top"],EQ_TITLE_BAR_SELECTED:[".selected .equalizer-top"],EQ_SLIDER_BACKGROUND:[".band"],EQ_SLIDER_THUMB:[".band .slider-handle"],EQ_SLIDER_THUMB_SELECTED:[".band:active .slider-handle"],EQ_ON_BUTTON:["#on"],EQ_ON_BUTTON_DEPRESSED:["#on:active"],EQ_ON_BUTTON_SELECTED:["#on.selected"],EQ_ON_BUTTON_SELECTED_DEPRESSED:["#on.selected:active"],EQ_AUTO_BUTTON:["#auto"],EQ_AUTO_BUTTON_DEPRESSED:["#auto:active"],EQ_AUTO_BUTTON_SELECTED:["#auto.selected"],EQ_AUTO_BUTTON_SELECTED_DEPRESSED:["#auto.selected:active"],EQ_GRAPH_BACKGROUND:["#eqGraph"],EQ_PRESETS_BUTTON:["#presets"],EQ_PRESETS_BUTTON_SELECTED:["#presets:active"],EQ_PREAMP_LINE:["#preamp-line"],EQ_SHADE_BACKGROUND:["#equalizer-window.shade"],EQ_SHADE_BACKGROUND_SELECTED:["#equalizer-window.shade.selected"],EQ_SHADE_VOLUME_SLIDER_LEFT:["#equalizer-volume.left::-webkit-slider-thumb","#equalizer-volume.left::-moz-range-thumb"],EQ_SHADE_VOLUME_SLIDER_CENTER:["#equalizer-volume.center::-webkit-slider-thumb","#equalizer-volume.center::-moz-range-thumb"],EQ_SHADE_VOLUME_SLIDER_RIGHT:["#equalizer-volume.right::-webkit-slider-thumb","#equalizer-volume.right::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_LEFT:["#equalizer-balance.left::-webkit-slider-thumb","#equalizer-balance.left::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_CENTER:["#equalizer-balance.center::-webkit-slider-thumb","#equalizer-balance.center::-moz-range-thumb"],EQ_SHADE_BALANCE_SLIDER_RIGHT:["#equalizer-balance.right::-webkit-slider-thumb","#equalizer-balance.right::-moz-range-thumb"],EQ_MAXIMIZE_BUTTON_ACTIVE:["#equalizer-shade:active"],EQ_MINIMIZE_BUTTON_ACTIVE:["#equalizer-window.shade #equalizer-shade:active"],EQ_CLOSE_BUTTON:["#equalizer-window.selected #eq-buttons.clicked #equalizer-close"],EQ_CLOSE_BUTTON_ACTIVE:["#equalizer-window.selected #eq-buttons.clicked #equalizer-close:active"],EQ_SHADE_CLOSE_BUTTON:["#equalizer-window.shade.selected #eq-buttons.clicked #equalizer-close"],EQ_SHADE_CLOSE_BUTTON_ACTIVE:["#equalizer-window.shade.selected #eq-buttons.clicked #equalizer-close:active"],MAIN_POSITION_SLIDER_BACKGROUND:["#position"],MAIN_POSITION_SLIDER_THUMB:["#position::-webkit-slider-thumb","#position::-moz-range-thumb"],MAIN_POSITION_SLIDER_THUMB_SELECTED:["#position:active::-webkit-slider-thumb","#position:active::-moz-range-thumb"],MAIN_SHUFFLE_BUTTON:["#shuffle"],MAIN_SHUFFLE_BUTTON_DEPRESSED:["#shuffle:active"],MAIN_SHUFFLE_BUTTON_SELECTED:["#shuffle.selected"],MAIN_SHUFFLE_BUTTON_SELECTED_DEPRESSED:["#shuffle.selected:active"],MAIN_REPEAT_BUTTON:["#repeat"],MAIN_REPEAT_BUTTON_DEPRESSED:["#repeat:active"],MAIN_REPEAT_BUTTON_SELECTED:["#repeat.selected"],MAIN_REPEAT_BUTTON_SELECTED_DEPRESSED:["#repeat.selected:active"],MAIN_EQ_BUTTON:["#equalizer-button"],MAIN_EQ_BUTTON_SELECTED:["#equalizer-button.selected"],MAIN_EQ_BUTTON_DEPRESSED:["#equalizer-button:active"],MAIN_EQ_BUTTON_DEPRESSED_SELECTED:["#equalizer-button.selected:active"],MAIN_PLAYLIST_BUTTON:["#playlist-button"],MAIN_PLAYLIST_BUTTON_SELECTED:["#playlist-button.selected"],MAIN_PLAYLIST_BUTTON_DEPRESSED:["#playlist-button:active"],MAIN_PLAYLIST_BUTTON_DEPRESSED_SELECTED:["#playlist-button.selected:active"],MAIN_TITLE_BAR:["#title-bar"],MAIN_TITLE_BAR_SELECTED:[".selected #title-bar"],MAIN_EASTER_EGG_TITLE_BAR:[".llama #title-bar"],MAIN_EASTER_EGG_TITLE_BAR_SELECTED:[".llama.selected #title-bar"],MAIN_OPTIONS_BUTTON:[".selected #title-bar #option.clicked"],MAIN_OPTIONS_BUTTON_DEPRESSED:[".selected #title-bar #option:active",".selected #title-bar #option.selected"],MAIN_MINIMIZE_BUTTON:[".selected #title-bar #minimize.clicked"],MAIN_MINIMIZE_BUTTON_DEPRESSED:[".selected #title-bar #minimize:active"],MAIN_SHADE_BUTTON:[".selected #title-bar #shade.clicked"],MAIN_SHADE_BUTTON_DEPRESSED:[".selected #title-bar #shade:active"],MAIN_CLOSE_BUTTON:[".selected #title-bar #close.clicked"],MAIN_CLOSE_BUTTON_DEPRESSED:[".selected #title-bar #close:active"],MAIN_CLUTTER_BAR_BACKGROUND:["#clutter-bar"],MAIN_CLUTTER_BAR_BACKGROUND_DISABLED:["#clutter-bar.disabled"],MAIN_CLUTTER_BAR_BUTTON_O_SELECTED:["#button-o:active","#button-0.selected"],MAIN_CLUTTER_BAR_BUTTON_A_SELECTED:["#button-a:active","#button-a.selected"],MAIN_CLUTTER_BAR_BUTTON_I_SELECTED:["#button-i:active","#button-i.selected"],MAIN_CLUTTER_BAR_BUTTON_D_SELECTED:["#button-d:active","#button-d.selected"],MAIN_CLUTTER_BAR_BUTTON_V_SELECTED:["#button-v:active","#button-v.selected"],MAIN_SHADE_BACKGROUND:[".shade #title-bar"],MAIN_SHADE_BACKGROUND_SELECTED:[".shade.selected #title-bar"],MAIN_SHADE_BUTTON_SELECTED:[".shade.selected #title-bar #shade"],MAIN_SHADE_BUTTON_SELECTED_DEPRESSED:[".shade #title-bar #shade:active"],MAIN_SHADE_POSITION_BACKGROUND:[".shade #position"],MAIN_SHADE_POSITION_THUMB:[".shade #position::-moz-range-thumb",".shade #position::-webkit-slider-thumb"],MAIN_SHADE_POSITION_THUMB_LEFT:[".shade #position.left::-moz-range-thumb",".shade #position.left::-webkit-slider-thumb"],MAIN_SHADE_POSITION_THUMB_RIGHT:[".shade #position.right::-moz-range-thumb",".shade #position.right::-webkit-slider-thumb"],MAIN_VOLUME_BACKGROUND:["#volume"],MAIN_VOLUME_THUMB:["#volume input::-webkit-slider-thumb","#volume input::-moz-range-thumb"],MAIN_VOLUME_THUMB_SELECTED:["#volume input:active::-webkit-slider-thumb","#volume input:active::-moz-range-thumb"],GEN_TOP_CENTER_FILL:[".gen-window .gen-top"],GEN_TOP_LEFT:[".gen-window .gen-top-left"],GEN_TOP_LEFT_END:[".gen-window .gen-top-left-end"],GEN_TOP_RIGHT:[".gen-window .gen-top-right"],GEN_TOP_RIGHT_END:[".gen-window .gen-top-right-end"],GEN_TOP_LEFT_RIGHT_FILL:[".gen-window .gen-top-left-fill",".gen-window .gen-top-right-fill"],GEN_TOP_CENTER_FILL_SELECTED:[".gen-window.selected .gen-top"],GEN_TOP_LEFT_SELECTED:[".gen-window.selected .gen-top-left"],GEN_TOP_LEFT_END_SELECTED:[".gen-window.selected .gen-top-left-end"],GEN_TOP_RIGHT_SELECTED:[".gen-window.selected .gen-top-right"],GEN_TOP_RIGHT_END_SELECTED:[".gen-window.selected .gen-top-right-end"],GEN_TOP_LEFT_RIGHT_FILL_SELECTED:[".gen-window.selected .gen-top-left-fill",".gen-window.selected .gen-top-right-fill"],GEN_BOTTOM_LEFT:[".gen-window .gen-bottom-left"],GEN_BOTTOM_RIGHT:[".gen-window .gen-bottom-right"],GEN_BOTTOM_FILL:[".gen-window .gen-bottom"],GEN_MIDDLE_LEFT:[".gen-window .gen-middle-left"],GEN_MIDDLE_LEFT_BOTTOM:[".gen-window .gen-middle-left-bottom"],GEN_MIDDLE_RIGHT:[".gen-window .gen-middle-right"],GEN_MIDDLE_RIGHT_BOTTOM:[".gen-window .gen-middle-right-bottom"],GEN_CLOSE_SELECTED:[".gen-window .gen-close:active"]};Object.keys(Ln).forEach(e=>{const A=jn(e),t=e.charCodeAt(0);el[A]=[".character-"+t]}),R.d.forEach(e=>{el["GEN_TEXT_"+e]=[".gen-text-"+e.toLowerCase()],el["GEN_TEXT_SELECTED_"+e]=[".gen-window.selected .gen-text-"+e.toLowerCase()]});const Al={CLOSE:["#title-bar #close"],EQSLID:["#equalizer-window .band"],EQNORMAL:["#equalizer-window"],EQCLOSE:["#equalizer-window #equalizer-close"],EQTITLE:["#equalizer-window .title-bar","#equalizer-window.shade","#equalizer-window.shade input"],MAINMENU:["#main-window #option","#webamp-context-menu .context-menu"],MIN:["#main-window #minimize"],NORMAL:[".window",".window input","#main-window","#main-window.shade #title-bar"],MMENU:["#main-window.shade #option"],PNORMAL:["#playlist-window"],PTBAR:["#playlist-window .playlist-top"],PCLOSE:["#playlist-window #playlist-close-button","#playlist-window-shade #playlist-close-button"],PWINBUT:["#playlist-window #playlist-shade-button","#playlist-window-shade #playlist-shade-button"],POSBAR:["#main-window #position"],PSIZE:["#playlist-window #playlist-resize-target"],PWSSIZE:["#playlist-window-shade #playlist-resize-target"],PWSNORM:["#playlist-window-shade"],PVSCROLL:["#playlist-window .playlist-scrollbar"],SONGNAME:["#main-window #marquee"],TITLEBAR:["#main-window #title-bar"],VOLBAL:["#volume","#volume input","#balance"],WINBUT:["#main-window #shade"],WSNORMAL:["#main-window.shade #title-bar"],WSPOSBAR:["#main-window.shade #position"]};function tl({children:e,id:A}){const t=Object(i.useMemo)(()=>{const e=document.createElement("style");return e.type="text/css",e.id=A,e},[A]);return Object(i.useLayoutEffect)(()=>(document.head.appendChild(t),()=>t.remove()),[t]),Object(l.createPortal)(e,t)}function nl({children:e}){const A=Object(i.useMemo)(()=>document.createElement("div"),[]);return Object(i.useLayoutEffect)(()=>(document.body.appendChild(A),()=>A.remove()),[A]),Object(l.createPortal)(Object(a.jsx)("svg",{height:0,width:0,children:Object(a.jsx)("defs",{children:Object.keys(e).map(A=>Object(a.jsx)("clipPath",{id:A,children:e[A].map((e,A)=>Object(a.jsx)("polygon",{points:e},A))},A))})}),A)}var rl=t(45);const al={normal:"mainWindowClipPath",windowshade:"shadeMainWindowClipPath",equalizer:"equalizerWindowClipPath",equalizerws:"shadeEqualizerWindowClipPath"},il={normal:"#main-window:not(.shade)",windowshade:"#main-window.shade",equalizer:"#equalizer-window:not(.shade)",equalizerws:"#equalizer-window.shade"},ol={MAIN_BALANCE_BACKGROUND:"MAIN_VOLUME_BACKGROUND",MAIN_BALANCE_THUMB:"MAIN_VOLUME_THUMB",MAIN_BALANCE_THUMB_ACTIVE:"MAIN_VOLUME_THUMB_SELECTED",EQ_MAXIMIZE_BUTTON_ACTIVE:"EQ_MAXIMIZE_BUTTON_ACTIVE_FALLBACK"};function ll(e){return`${e.startsWith("#webamp-context-menu")?"":"#webamp"} ${e}`}const sl=Object(q.createSelector)((function(e){return e.display.skinImages}),(function(e){return e.display.skinCursors}),(function(e){return e.display.skinGenLetterWidths}),vt,(e,A,t,n)=>{if(!e||!A)return null;const r=[];Object.keys(el).forEach(A=>{const t=e[A]||e[ol[A]];t&&el[A].forEach(e=>{r.push(`#webamp ${e} {background-image: url(${t})}`)})}),null!=t&&R.d.forEach(e=>{const A=t["GEN_TEXT_"+e],n=t["GEN_TEXT_SELECTED_"+e];r.push(`#webamp .gen-text-${e.toLowerCase()} {width: ${A}px;}`),r.push(`#webamp .selected .gen-text-${e.toLowerCase()} {width: ${n}px;}`)}),Object.entries(Al).forEach(([e,t])=>{const n=A[e];if(null==n)return;const a=t.map(ll).map(e=>{switch(n.type){case"cur":return`${e} {cursor: url(${n.url}), auto}`;case"ani":try{return Object(rl.convertAniBinaryToCSS)(e,n.aniData)}catch(e){return console.error(e),null}}}).filter(Boolean);r.push(...a)}),(e=>Boolean(e.DIGIT_0_EX))(e)&&r.push("#webamp .webamp-status #time #minus-sign { top: 0px; left: -1px; width: 9px; height: 13px; }");for(const[e,A]of Object.entries(n))if(A){const A=il[e],t=al[e];r.push(`#webamp ${A} { clip-path: url(#${t}); }`)}return r.join("\n")}),cl=Object(q.createSelector)(vt,e=>{const A={};for(const[t,n]of Object.entries(e))if(n){A[al[t]]=n}return A});function ul(){const e=va(sl),A=va(cl);return null==e?null:Object(a.jsxs)(a.Fragment,{children:[Object(a.jsx)(tl,{id:"webamp-skin",children:e}),Object(a.jsx)(nl,{children:A})]})}t(101);function dl({media:e,filePickers:A}){const t=va(Ut),n=va(gA),r=va(zA),o=Ca(rn),l=Ca($t),[c]=Object(i.useState)(()=>{const e=document.createElement("div");return e.id="webamp",e.role="application",e});Object(i.useLayoutEffect)(()=>{c.style.zIndex=String(r)},[c,r]),Object(i.useLayoutEffect)(()=>(document.body.appendChild(c),()=>{document.body.removeChild(c)}),[c]),Object(i.useEffect)(()=>{const e=()=>{null!=c&&(c.style.right="0",c.style.bottom="0",c.style.overflow="hidden",o(M.k()),c.style.right="auto",c.style.bottom="auto",c.style.overflow="visible")};return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}},[o,c]);const u=Object(i.useCallback)(()=>M.t(n,(t,n)=>{if(!t.open)return null;switch(n){case R.m.MAIN:return Object(a.jsx)(wo,{analyser:e.getAnalyser(),filePickers:A});case R.m.EQUALIZER:return Object(a.jsx)($o,{});case R.m.PLAYLIST:return Object(a.jsx)(Go,{analyser:e.getAnalyser()});case R.m.MILKDROP:return Object(a.jsx)(di,{analyser:e.getAnalyser()});default:throw new Error("Tried to render an unknown window: "+n)}}),[e,A,n]);return t?null:s.a.createPortal(Object(a.jsx)(i.StrictMode,{children:Object(a.jsxs)("div",{onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||l(null)},children:[Object(a.jsx)(ul,{}),Object(a.jsx)(oi,{renderContents:()=>Object(a.jsx)(fi,{filePickers:A}),children:Object(a.jsx)(yi,{windows:u()})})]})}),c)}const gl=new Set(["input","textarea","select"]);class pl{constructor(){r()(this,"_listeners",void 0),this._listeners={}}on(e,A){const t=this._listeners[e]||[];t.push(A),this._listeners[e]=t;return()=>{this._listeners[e]=t.filter(e=>e!==A)}}trigger(e,...A){const t=this._listeners[e];t&&t.forEach(e=>e(...A))}dispose(){this._listeners={}}}function hl(e,A={balance:0}){let t=0;const n=e.createGain();n.channelCount=2,n.channelCountMode="explicit",n.channelInterpretation="speakers";const r=e.createChannelSplitter(2),a=e.createGain(),i=e.createGain(),o=e.createChannelMerger(2);function l(e){const A=Number(e);a.gain.value=A>0?1-A:1,i.gain.value=A>0?1:1+A,t=A}n.connect(r),r.connect(a,0),r.connect(i,1),a.connect(o,0,0),i.connect(o,0,1);const s={};return Object.defineProperties(s,{value:{get:function(){return t},set:l,enumerable:!0,configurable:!0}}),Object.defineProperties(n,{balance:{value:s,enumerable:!0,writable:!1,configurable:!0},connect:{value:AudioNode.prototype.connect.bind(o),enumerable:!1,writable:!1,configurable:!0},disconnect:{value:AudioNode.prototype.disconnect.bind(o),enumerable:!1,writable:!1,configurable:!0}}),t!==A.balance&&l(A.balance),n}class fl{on(e,A){return this._emitter.on(e,A)}constructor(e,A){r()(this,"_emitter",void 0),r()(this,"_context",void 0),r()(this,"_source",void 0),r()(this,"_destination",void 0),r()(this,"_audio",void 0),r()(this,"_stalled",void 0),r()(this,"_status",void 0),this._emitter=new pl,this._context=e,this._destination=A,this._audio=document.createElement("audio"),this._audio.crossOrigin="anonymous",this._stalled=!1,this._status=R.f.STOPPED,this._audio.addEventListener("suspend",()=>{this._setStalled(!0)}),this._audio.addEventListener("durationchange",()=>{this._emitter.trigger("loaded"),this._setStalled(!1)}),this._audio.addEventListener("ended",()=>{this._emitter.trigger("ended"),this._setStatus(R.f.STOPPED)}),this._audio.addEventListener("timeupdate",()=>{this._emitter.trigger("positionChange")}),this._audio.addEventListener("error",e=>{switch(this._audio.error.code){case 1:console.error("MEDIA_ERR_ABORTED",e);break;case 2:console.error("MEDIA_ERR_NETWORK",e);break;case 3:console.error("PIPELINE_ERROR_DECODE",e);break;case 4:console.error("MEDIA_ERR_SRC_NOT_SUPPORTED",e)}this._emitter.trigger("ended"),this._setStatus(R.f.STOPPED)}),this._source=this._context.createMediaElementSource(this._audio),this._source.connect(A)}_setStalled(e){this._stalled=e,this._emitter.trigger("stallChanged")}disconnect(){this._source.disconnect()}async loadUrl(e){this._audio.src=e}async play(){this._status!==R.f.PAUSED&&this.seekToTime(0);try{await this._audio.play()}catch(e){}this._setStatus(R.f.PLAYING)}pause(){this._audio.pause(),this._setStatus(R.f.PAUSED)}stop(){this._audio.pause(),this._audio.currentTime=0,this._setStatus(R.f.STOPPED)}seekToTime(e){this._audio.currentTime=Object(M.d)(e,0,this.getDuration()),this._emitter.trigger("positionChange")}getStalled(){return this._stalled}getStatus(){return this._status}getDuration(){const{duration:e}=this._audio;return isNaN(e)||e===1/0?0:e}getTimeElapsed(){return this._audio.currentTime}_setStatus(e){this._status=e,this._emitter.trigger("statusChange")}dispose(){this.stop(),this._emitter.dispose()}}class ml{constructor(){if(r()(this,"_emitter",void 0),r()(this,"_context",void 0),r()(this,"_balance",void 0),r()(this,"_staticSource",void 0),r()(this,"_preamp",void 0),r()(this,"_analyser",void 0),r()(this,"_gainNode",void 0),r()(this,"_source",void 0),r()(this,"_bands",void 0),this._emitter=new pl,this._context=new(window.AudioContext||window.webkitAudioContext),"suspended"===this._context.state){const e=async()=>{await this._context.resume(),"running"===this._context.state&&(document.body.removeEventListener("touchend",e,!1),document.body.removeEventListener("click",e,!1),document.body.removeEventListener("keydown",e,!1))};document.body.addEventListener("touchend",e,!1),document.body.addEventListener("click",e,!1),document.body.addEventListener("keydown",e,!1)}this._staticSource=this._context.createGain(),this._balance=new hl(this._context),this._preamp=this._context.createGain(),this._analyser=this._context.createAnalyser(),this._analyser.fftSize=2048,this._analyser.smoothingTimeConstant=0,this._gainNode=this._context.createGain(),this._source=new fl(this._context,this._staticSource),this._source.on("positionChange",()=>{this._emitter.trigger("timeupdate")}),this._source.on("ended",()=>{this._emitter.trigger("ended")}),this._source.on("statusChange",()=>{switch(this._source.getStatus()){case R.f.PLAYING:this._emitter.trigger("playing")}this._emitter.trigger("timeupdate")}),this._source.on("loaded",()=>{this._emitter.trigger("fileLoaded")}),this._staticSource.connect(this._preamp);let e=this._preamp;this._bands={},R.a.forEach((A,t)=>{const n=this._context.createBiquadFilter();this._bands[A]=n,0===t?n.type="lowshelf":t===R.a.length-1?n.type="highshelf":n.type="peaking",n.frequency.value=A,n.gain.value=0,e.connect(n),e=n}),e.connect(this._balance),this._balance.connect(this._gainNode),this._balance.connect(this._analyser),this._gainNode.connect(this._context.destination)}getAnalyser(){return this._analyser}duration(){return this._source.getDuration()}timeElapsed(){return this._source.getTimeElapsed()}timeRemaining(){return this.duration()-this.timeElapsed()}percentComplete(){return this.timeElapsed()/this.duration()*100}async play(){await this._source.play()}pause(){this._source.pause()}stop(){this._source.stop()}seekToPercentComplete(e){const A=this.duration()*(e/100);this.seekToTime(A)}setVolume(e){this._gainNode.gain.value=e/100}setPreamp(e){const A=e/100*24-12;this._preamp.gain.value=Math.pow(10,A/20)}setBalance(e){this._balance.balance.value=e/100}setEqBand(e,A){const t=A/100*24-12;this._bands[e].gain.value=t}disableEq(){this._staticSource.disconnect(),this._staticSource.connect(this._balance)}enableEq(){this._staticSource.disconnect(),this._staticSource.connect(this._preamp)}on(e,A){this._emitter.on(e,A)}seekToTime(e){this._source.seekToTime(e)}async loadFromUrl(e,A){this._emitter.trigger("waiting"),await this._source.loadUrl(e),this._emitter.trigger("stopWaiting"),A&&this.play()}dispose(){this._source.dispose(),this._emitter.dispose()}}t(103);class El{constructor(){r()(this,"_teardowns",[]),r()(this,"disposed",void 0),this.disposed=!1}add(...e){if(this.disposed)throw new Error("Attempted to add a new teardown to a disposed disposable.");this._teardowns.push(...e)}dispose(){if(this.disposed)throw new Error("Attempted to dispose disposable which is already disposed.");this._teardowns.forEach(e=>{"function"==typeof e?e():"function"==typeof e.dispose&&e.dispose()}),this._teardowns=[],this.disposed=!0}}class bl{static browserIsSupported(){const e=!(!window.AudioContext&&!window.webkitAudioContext),A=!!window.document.createElement("canvas").getContext;return e&&A&&"undefined"!=typeof Promise}constructor(e){r()(this,"_actionEmitter",void 0),r()(this,"_node",void 0),r()(this,"_disposable",void 0),r()(this,"options",void 0),r()(this,"media",void 0),r()(this,"store",void 0),this._node=null,this._disposable=new El,this._actionEmitter=new pl,this.options=e;const{initialTracks:A,initialSkin:t,avaliableSkins:n,availableSkins:a,enableHotkeys:i=!1,zIndex:o,requireJSZip:l,requireMusicMetadata:s,handleTrackDropEvent:c,handleAddUrlEvent:u,handleLoadListEvent:d,handleSaveListEvent:g,__butterchurnOptions:p,__customMediaClass:h}=this.options;let f=null;if(null!=p){const{importConvertPreset:e,presetConverterEndpoint:A}=p;null!=e&&null!=A&&(f=async t=>{const{convertPreset:n}=await e();return n(await we(t),A)})}var E;this.media=new(h||ml),this.store=function(e,A,t=[],n,r){let a;n&&(a=Object(M.o)(Qe(void 0,{type:"@@init"}),n));const i=wa(Object(m.applyMiddleware)(...[B.withExtraArgument(r),ba(e),()=>e=>t=>(A.trigger(t.type,t),e(t)),...t].filter(Boolean)));return a?Object(m.createStore)(Qe,a,i):Object(m.createStore)(Qe,i)}(this.media,this._actionEmitter,this.options.__customMiddlewares,this.options.__initialState,{requireJSZip:l,requireMusicMetadata:s,convertPreset:f,handleTrackDropEvent:c,handleAddUrlEvent:u,handleLoadListEvent:d,handleSaveListEvent:g}),navigator.onLine?this.store.dispatch({type:"NETWORK_CONNECTED"}):this.store.dispatch({type:"NETWORK_DISCONNECTED"}),null!=o&&this.store.dispatch({type:"SET_Z_INDEX",zIndex:o}),e.__butterchurnOptions&&(this.store.dispatch({type:"ENABLE_MILKDROP",open:e.__butterchurnOptions.butterchurnOpen}),this.store.dispatch((E=e.__butterchurnOptions,async e=>{const{getPresets:A,importButterchurn:t}=E;t().then(A=>{e({type:"GOT_BUTTERCHURN",butterchurn:A.default})});const n=(await A()).map(Zr);e(Wr(n))})));const b=()=>this.store.dispatch({type:"NETWORK_CONNECTED"}),w=()=>this.store.dispatch({type:"NETWORK_DISCONNECTED"});window.addEventListener("online",b),window.addEventListener("offline",w),this._disposable.add(()=>{window.removeEventListener("online",b),window.removeEventListener("offline",w)}),t?this.store.dispatch(xr(t.url)):this.store.dispatch({type:"LOADED"}),A&&this._bufferTracks(A),null!=n?(console.warn("The misspelled option `avaliableSkins` is deprecated. Please use `availableSkins` instead."),this.store.dispatch({type:"SET_AVAILABLE_SKINS",skins:n})):null!=a&&this.store.dispatch({type:"SET_AVAILABLE_SKINS",skins:a});const y=e.__initialWindowLayout;null==y?this.store.dispatch(an()):(M.s(y,(e,A)=>{null!=e.size&&this.store.dispatch(en(A,e.size))}),this.store.dispatch(tn(M.t(y,e=>e.position),!1))),i&&this._disposable.add(function(e){let A=0;const t=[78,85,76,76,83,79,70,84],n=n=>{if(!(n.target instanceof Element&&gl.has(n.target.tagName.toLowerCase()))){if(n.ctrlKey)switch(n.keyCode){case 68:e(Ht()),n.preventDefault();break;case 76:break;case 82:e({type:"REVERSE_LIST"});break;case 84:e({type:"TOGGLE_TIME_MODE"})}else if(n.altKey)switch(n.keyCode){case 87:e(An("main"));break;case 69:e(An("playlist"));break;case 71:e(An("equalizer"))}else switch(n.keyCode){case 37:e(mn(5));break;case 38:e(bn(1));break;case 39:e(fn(5));break;case 40:e(bn(-1));break;case 66:e(gn());break;case 67:e(cn());break;case 76:e(Tr());break;case 82:e({type:"TOGGLE_REPEAT"});break;case 83:e({type:"TOGGLE_SHUFFLE"});break;case 86:e({type:"STOP"});break;case 88:e(sn());break;case 90:e(pn());break;case 96:e(Tr());break;case 97:e(dn(-10));break;case 98:e(bn(-1));break;case 99:e(dn(10));break;case 100:e(pn());break;case 101:e(sn());break;case 102:e(gn());break;case 103:e(mn(5));break;case 104:e(bn(1));break;case 105:e(fn(5))}27!==n.keyCode&&(A=n.keyCode===t[A]?A+1:0,A===t.length&&e({type:"TOGGLE_LLAMA_MODE"}))}};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}(this.store.dispatch))}play(){this.store.dispatch(sn())}pause(){this.store.dispatch(cn())}stop(){this.store.dispatch({type:"STOP"})}seekBackward(e){this.store.dispatch(mn(e))}seekForward(e){this.store.dispatch(fn(e))}seekToTime(e){this.store.dispatch(hn(e))}nextTrack(){this.store.dispatch(gn())}previousTrack(){this.store.dispatch(pn())}_bufferTracks(e){const A=$e(this.store.getState());this.store.dispatch(Dr(e,R.e.BUFFER,A))}appendTracks(e){const A=$e(this.store.getState());this.store.dispatch(Dr(e,R.e.NONE,A))}setTracksToPlay(e){this.store.dispatch(Dr(e,R.e.PLAY))}getMediaStatus(){return xA(this.store.getState())}onWillClose(e){return this._actionEmitter.on("CLOSE_REQUESTED",A=>{e(A.cancel)})}onClose(e){return this._actionEmitter.on("CLOSE_WINAMP",e)}close(){this.store.dispatch(e=>{let A=!1;e({type:"CLOSE_REQUESTED",cancel:()=>{A=!0}}),A||(e({type:"STOP"}),e({type:"CLOSE_WINAMP"}))})}reopen(){this.store.dispatch({type:"OPEN_WINAMP"})}onTrackDidChange(e){let A=null;return this.store.subscribe(()=>{const t=this.store.getState(),n=TA(t);n!==A&&(A=n,e(null==n?null:QA(t)))})}onMinimize(e){return this._actionEmitter.on("MINIMIZE_WINAMP",e)}setSkinFromUrl(e){this.store.dispatch(xr(e))}async skinIsLoaded(){var e,A;await(e=this.store,A=e=>!e.display.loading,new Promise(t=>{if(A(e.getState()))return void t();const n=e.subscribe(()=>{A(e.getState())&&(t(),n())})})),await Promise.all([Ct(this.store.getState()),Bt(this.store.getState())])}__loadSerializedState(e){this.store.dispatch(function(e){return A=>{A({type:"LOAD_SERIALIZED_STATE",serializedState:e}),A(on())}}(e))}__getSerializedState(){return{version:1,media:_((e=this.store.getState()).media),equalizer:e.equalizer,display:Ae(e.display),windows:P(e.windows)};var e}__onStateChange(e){return this.store.subscribe(e)}async renderWhenReady(e){var A;if(this.store.dispatch((A=e,(e,t)=>{if(!t().windows.positionsAreRelative)return;const{left:n,top:r}=A.getBoundingClientRect(),{scrollWidth:a,scrollHeight:i}=A;e(nn({left:n,top:r,width:a,height:i}))})),await this.skinIsLoaded(),null!=this._node)throw new Error("Cannot render a Webamp instance twice");this._node=e,this._disposable.add(()=>{null!=this._node&&(s.a.unmountComponentAtNode(this._node),this._node=null)}),s.a.render(Object(a.jsx)(h,{store:this.store,children:Object(a.jsx)(dl,{media:this.media,filePickers:this.options.filePickers||[]})}),e)}dispose(){this.media.dispose(),this._actionEmitter.dispose(),this._disposable.dispose()}}r()(bl,"VERSION","1.5.0");A.default=bl},,,,,,,function(e,A,t){"use strict";
12
12
  /** @license React v17.0.1
13
13
  * react-jsx-runtime.production.min.js
14
14
  *