o(c,n)))break e;e[r]=c,e[s]=n,r=s}}}return t}function o(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var l=Date,u=l.now();t.unstable_now=function(){return l.now()-u}}var s=[],c=[],f=1,d=null,p=3,h=!1,m=!1,y=!1,v="function"==typeof setTimeout?setTimeout:null,g="function"==typeof clearTimeout?clearTimeout:null,b="undefined"!=typeof setImmediate?setImmediate:null;function k(e){for(var t=r(c);null!==t;){if(null===t.callback)a(c);else{if(!(t.startTime<=e))break;a(c),t.sortIndex=t.expirationTime,n(s,t)}t=r(c)}}function w(e){if(y=!1,k(e),!m)if(null!==r(s))m=!0,R(S);else{var t=r(c);null!==t&&I(w,t.startTime-e)}}function S(e,n){m=!1,y&&(y=!1,g(O),O=-1),h=!0;var o=p;try{for(k(n),d=r(s);null!==d&&(!(d.expirationTime>n)||e&&!x());){var i=d.callback;if("function"==typeof i){d.callback=null,p=d.priorityLevel;var l=i(d.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?d.callback=l:d===r(s)&&a(s),k(n)}else a(s);d=r(s)}if(null!==d)var u=!0;else{var f=r(c);null!==f&&I(w,f.startTime-n),u=!1}return u}finally{d=null,p=o,h=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var _,T=!1,E=null,O=-1,P=5,C=-1;function x(){return!(t.unstable_now()-Ce||125i?(e.sortIndex=o,n(c,e),null===r(s)&&e===r(c)&&(y?(g(O),O=-1):y=!0,I(w,o-i))):(e.sortIndex=l,n(s,e),m||h||(m=!0,R(S))),e},t.unstable_shouldYield=x,t.unstable_wrapCallback=function(e){var t=p;return function(){var n=p;p=t;try{return e.apply(this,arguments)}finally{p=n}}}},3840:(e,t,n)=>{"use strict";e.exports=n(53)},2273:(e,t,n)=>{var r;e=n.nmd(e),function(a,o){"use strict";if(!a||!a.document)throw new Error("SoundManager requires a browser with window and document objects.");var i=null;function l(e,t){this.setupOptions={url:e||null,flashVersion:8,debugMode:!0,debugFlash:!1,useConsole:!0,consoleOnly:!0,waitForWindowLoad:!1,bgColor:"#ffffff",useHighPerformance:!1,flashPollingInterval:null,html5PollingInterval:null,flashLoadTimeout:1e3,wmode:null,allowScriptAccess:"always",useFlashBlock:!1,useHTML5Audio:!0,forceUseGlobalHTML5Audio:!1,ignoreMobileRestrictions:!1,html5Test:/^(probably|maybe)$/i,preferFlash:!1,noSWFCache:!1,idPrefix:"sound"},this.defaultOptions={autoLoad:!1,autoPlay:!1,from:null,loops:1,onid3:null,onerror:null,onload:null,whileloading:null,onplay:null,onpause:null,onresume:null,whileplaying:null,onposition:null,onstop:null,onfinish:null,multiShot:!0,multiShotEvents:!1,position:null,pan:0,playbackRate:1,stream:!0,to:null,type:null,usePolicyFile:!1,volume:100},this.flash9Options={onfailure:null,isMovieStar:null,usePeakData:!1,useWaveformData:!1,useEQData:!1,onbufferchange:null,ondataerror:null},this.movieStarOptions={bufferTime:3,serverURL:null,onconnect:null,duration:null},this.audioFormats={mp3:{type:['audio/mpeg; codecs="mp3"',"audio/mpeg","audio/mp3","audio/MPA","audio/mpa-robust"],required:!0},mp4:{related:["aac","m4a","m4b"],type:['audio/mp4; codecs="mp4a.40.2"',"audio/aac","audio/x-m4a","audio/MP4A-LATM","audio/mpeg4-generic"],required:!1},ogg:{type:["audio/ogg; codecs=vorbis"],required:!1},opus:{type:["audio/ogg; codecs=opus","audio/opus"],required:!1},wav:{type:['audio/wav; codecs="1"',"audio/wav","audio/wave","audio/x-wav"],required:!1},flac:{type:["audio/flac"],required:!1}},this.movieID="sm2-container",this.id=t||"sm2movie",this.debugID="soundmanager-debug",this.debugURLParam=/([#?&])debug=1/i,this.versionNumber="V2.97a.20170601",this.version=null,this.movieURL=null,this.altURL=null,this.swfLoaded=!1,this.enabled=!1,this.oMC=null,this.sounds={},this.soundIDs=[],this.muted=!1,this.didFlashBlock=!1,this.filePattern=null,this.filePatterns={flash8:/\.mp3(\?.*)?$/i,flash9:/\.mp3(\?.*)?$/i},this.features={buffering:!1,peakData:!1,waveformData:!1,eqData:!1,movieStar:!1},this.sandbox={},this.html5={usingFlash:null},this.flash={},this.html5Only=!1,this.ignoreFlash=!1;var n,r,i,l,u,s,c,f,d,p,h,m,y,v,g,b,k,w,S,_,T,E,O,P,C,x,L,N,M,R,I,A,D,F,z,H,j,U,B,V,W,q,$,Q,Y,G,Z,K,X,J,ee,te,ne,re,ae,oe,ie,le,ue=this,se=null,ce=null,fe=navigator.userAgent,de=a.location.href.toString(),pe=document,he=[],me=!1,ye=!1,ve=!1,ge=!1,be=!1,ke=null,we=null,Se=!1,_e=!1,Te=0,Ee=null,Oe=[],Pe=null,Ce=Array.prototype.slice,xe=!1,Le=0,Ne=1e3,Me=fe.match(/(ipad|iphone|ipod)/i),Re=fe.match(/android/i),Ie=fe.match(/msie|trident/i),Ae=fe.match(/webkit/i),De=fe.match(/safari/i)&&!fe.match(/chrome/i),Fe=fe.match(/opera/i),ze=fe.match(/(mobile|pre\/|xoom)/i)||Me||Re,He=!de.match(/usehtml5audio/i)&&!de.match(/sm2-ignorebadua/i)&&De&&!fe.match(/silk/i)&&fe.match(/OS\sX\s10_6_([3-7])/i),je=(a.console!==o&&console.log,pe.hasFocus!==o?pe.hasFocus():null),Ue=De&&(pe.hasFocus===o||!pe.hasFocus()),Be=!Ue,Ve=/(mp3|mp4|mpa|m4a|m4b)/i,We="about:blank",qe=pe.location?pe.location.protocol.match(/http/i):null,$e=qe?"":"//",Qe=/^\s*audio\/(?:x-)?(?:mpeg4|aac|flv|mov|mp4|m4v|m4a|m4b|mp4v|3gp|3g2)\s*(?:$|;)/i,Ye=["mpeg4","aac","flv","mov","mp4","m4v","f4v","m4a","m4b","mp4v","3gp","3g2"],Ge=new RegExp("\\.("+Ye.join("|")+")(\\?.*)?$","i");function Ze(e){return ue.preferFlash&&ne&&!ue.ignoreFlash&&ue.flash[e]!==o&&ue.flash[e]}function Ke(e){return function(t){var n=this._s;return n&&n._a?e.call(this,t):null}}this.mimePattern=/^\s*audio\/(?:x-)?(?:mp(?:eg|3))\s*(?:$|;)/i,this.useAltURL=!qe,F={swfBox:"sm2-object-box",swfDefault:"movieContainer",swfError:"swf_error",swfTimedout:"swf_timedout",swfLoaded:"swf_loaded",swfUnblocked:"swf_unblocked",sm2Debug:"sm2_debug",highPerf:"high_performance",flashDebug:"flash_debug"},G=[null,"MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED"],this.hasHTML5=function(){try{return Audio!==o&&(Fe&&opera!==o&&opera.version()<10?new Audio(null):new Audio).canPlayType!==o}catch(e){return!1}}(),this.setup=function(e){var t=!ue.url;return e!==o&&ve&&Pe&&ue.ok()&&(e.flashVersion!==o||e.url!==o||e.html5Test),d(e),xe||(ze?ue.setupOptions.ignoreMobileRestrictions&&!ue.setupOptions.forceUseGlobalHTML5Audio||(Oe.push(S.globalHTML5),xe=!0):ue.setupOptions.forceUseGlobalHTML5Audio&&(Oe.push(S.globalHTML5),xe=!0)),!le&&ze&&(ue.setupOptions.ignoreMobileRestrictions?Oe.push(S.ignoreMobile):(ue.setupOptions.useHTML5Audio=!0,ue.setupOptions.preferFlash=!1,Me?ue.ignoreFlash=!0:(Re&&!fe.match(/android\s2\.3/i)||!Re)&&(xe=!0))),e&&(t&&O&&e.url!==o&&ue.beginDelayedInit(),O||e.url===o||"complete"!==pe.readyState||setTimeout(T,1)),le=!0,ue},this.ok=function(){return Pe?ve&&!ge:ue.useHTML5Audio&&ue.hasHTML5},this.supported=this.ok,this.getMovie=function(e){return r(e)||pe[e]||a[e]},this.createSound=function(e,t){var r,a=null;if(!ve||!ue.ok())return!1;if(t!==o&&(e={id:e,url:t}),(r=f(e)).url=W(r.url),r.id===o&&(r.id=ue.setupOptions.idPrefix+Le++),j(r.id,!0))return ue.sounds[r.id];function i(){return r=z(r),ue.sounds[r.id]=new n(r),ue.soundIDs.push(r.id),ue.sounds[r.id]}if(Q(r))(a=i())._setup_html5(r);else{if(ue.html5Only)return i();if(ue.html5.usingFlash&&r.url&&r.url.match(/data:/i))return i();s>8&&null===r.isMovieStar&&(r.isMovieStar=!!(r.serverURL||r.type&&r.type.match(Qe)||r.url&&r.url.match(Ge))),r=H(r,undefined),a=i(),8===s?ce._createSound(r.id,r.loops||1,r.usePolicyFile):(ce._createSound(r.id,r.url,r.usePeakData,r.useWaveformData,r.useEQData,r.isMovieStar,!!r.isMovieStar&&r.bufferTime,r.loops||1,r.serverURL,r.duration||null,r.autoPlay,!0,r.autoLoad,r.usePolicyFile),r.serverURL||(a.connected=!0,r.onconnect&&r.onconnect.apply(a))),r.serverURL||!r.autoLoad&&!r.autoPlay||a.load(r)}return!r.serverURL&&r.autoPlay&&a.play(),a},this.destroySound=function(e,t){if(!j(e))return!1;var n,r=ue.sounds[e];for(r.stop(),r._iO={},r.unload(),n=0;n=0;e--)ue.sounds[ue.soundIDs[e]].pause()},this.resume=function(e){return!!j(e)&&ue.sounds[e].resume()},this.resumeAll=function(){var e;for(e=ue.soundIDs.length-1;e>=0;e--)ue.sounds[ue.soundIDs[e]].resume()},this.togglePause=function(e){return!!j(e)&&ue.sounds[e].togglePause()},this.setPan=function(e,t){return!!j(e)&&ue.sounds[e].setPan(t)},this.setVolume=function(e,t){var n,r;if(e!==o&&!isNaN(e)&&t===o){for(n=0,r=ue.soundIDs.length;n=0;t--)ue.sounds[ue.soundIDs[t]].mute();return ue.muted=!0,!0},this.muteAll=function(){ue.mute()},this.unmute=function(e){var t;if(e instanceof String&&(e=null),e)return!!j(e)&&ue.sounds[e].unmute();for(t=ue.soundIDs.length-1;t>=0;t--)ue.sounds[ue.soundIDs[t]].unmute();return ue.muted=!1,!0},this.unmuteAll=function(){ue.unmute()},this.toggleMute=function(e){return!!j(e)&&ue.sounds[e].toggleMute()},this.getMemoryUse=function(){var e=0;return ce&&8!==s&&(e=parseInt(ce._getMemoryUse(),10)),e},this.disable=function(e){var t;if(e===o&&(e=!1),ge)return!1;for(ge=!0,t=ue.soundIDs.length-1;t>=0;t--)N(ue.sounds[ue.soundIDs[t]]);return N(ue),c(e),ee.remove(a,"load",y),!0},this.canPlayMIME=function(e){var t;return ue.hasHTML5&&(t=Y({type:e})),!t&&Pe&&(t=e&&ue.ok()?!!(s>8&&e.match(Qe)||e.match(ue.mimePattern)):null),t},this.canPlayURL=function(e){var t;return ue.hasHTML5&&(t=Y({url:e})),!t&&Pe&&(t=e&&ue.ok()?!!e.match(ue.filePattern):null),t},this.canPlayLink=function(e){return!(e.type===o||!e.type||!ue.canPlayMIME(e.type))||ue.canPlayURL(e.href)},this.getSoundById=function(e,t){return e?ue.sounds[e]:null},this.onready=function(e,t){var n="onready";if("function"!=typeof e)throw I("needFunction",n);return t||(t=a),h(n,e,t),m(),!0},this.ontimeout=function(e,t){var n="ontimeout";if("function"!=typeof e)throw I("needFunction",n);return t||(t=a),h(n,e,t),m({type:n}),!0},this._writeDebug=function(e,t){return!0},this._wD=this._writeDebug,this._debug=function(){},this.reboot=function(e,t){var n,r,o;for(n=ue.soundIDs.length-1;n>=0;n--)ue.sounds[ue.soundIDs[n]].destruct();if(ce)try{Ie&&(we=ce.innerHTML),ke=ce.parentNode.removeChild(ce)}catch(e){}if(we=ke=Pe=ce=null,ue.enabled=O=ve=Se=_e=me=ye=ge=xe=ue.swfLoaded=!1,ue.soundIDs=[],ue.sounds={},Le=0,le=!1,e)he=[];else for(n in he)if(he.hasOwnProperty(n))for(r=0,o=he[n].length;r0&&h.position===h.duration&&(e.position=0),h.paused&&h.position>=0&&(!h._iO.serverURL||h.position>0)?h.resume():(h._iO=f(e,h._iO),(!h.isHTML5&&null!==h._iO.position&&h._iO.position>0||null!==h._iO.from&&h._iO.from>0||null!==h._iO.to)&&0===h.instanceCount&&0===h.playState&&!h._iO.serverURL&&(r=function(){h._iO=f(e,h._iO),h.play(h._iO)},h.isHTML5&&!h._html5_canplay?h.load({_oncanplay:r}):h.isHTML5||h.loaded||h.readyState&&2===h.readyState||h.load({onload:r}),h._iO=c()),(!h.instanceCount||h._iO.multiShotEvents||h.isHTML5&&h._iO.multiShot&&!xe||!h.isHTML5&&s>8&&!h.getAutoPlay())&&h.instanceCount++,h._iO.onposition&&0===h.playState&&l(h),h.playState=1,h.paused=!1,h.position=h._iO.position===o||isNaN(h._iO.position)?0:h._iO.position,h.isHTML5||(h._iO=H(z(h._iO))),h._iO.onplay&&t&&(h._iO.onplay.apply(h),m=!0),h.setVolume(h._iO.volume,!0),h.setPan(h._iO.pan,!0),1!==h._iO.playbackRate&&h.setPlaybackRate(h._iO.playbackRate),h.isHTML5?h.instanceCount<2?(i(),n=h._setup_html5(),h.setPosition(h._iO.position),n.play()):(a=new Audio(h._iO.url),u=function(){ee.remove(a,"ended",u),h._onfinish(h),K(a),a=null},d=function(){ee.remove(a,"canplay",d);try{a.currentTime=h._iO.position/Ne}catch(e){}a.play()},ee.add(a,"ended",u),h._iO.volume!==o&&(a.volume=Math.max(0,Math.min(1,h._iO.volume/100))),h.muted&&(a.muted=!0),h._iO.position?ee.add(a,"canplay",d):a.play()):(y=ce._start(h.id,h._iO.loops||1,9===s?h.position:h.position/Ne,h._iO.multiShot||!1),9!==s||y||h._iO.onplayerror&&h._iO.onplayerror.apply(h))),h},this.start=this.play,this.stop=function(e){var t,n=h._iO;return 1===h.playState&&(h._onbufferchange(0),h._resetOnPosition(0),h.paused=!1,h.isHTML5||(h.playState=0),u(),n.to&&h.clearOnPosition(n.to),h.isHTML5?h._a&&(t=h.position,h.setPosition(0),h.position=t,h._a.pause(),h.playState=0,h._onTimer(),a()):(ce._stop(h.id,e),n.serverURL&&h.unload()),h.instanceCount=0,h._iO={},n.onstop&&n.onstop.apply(h)),h},this.setAutoPlay=function(e){h._iO.autoPlay=e,h.isHTML5||(ce._setAutoPlay(h.id,e),e&&(h.instanceCount||1!==h.readyState||h.instanceCount++))},this.getAutoPlay=function(){return h._iO.autoPlay},this.setPlaybackRate=function(e){var t=Math.max(.5,Math.min(4,e));if(h.isHTML5)try{h._iO.playbackRate=t,h._a.playbackRate=t}catch(e){}return h},this.setPosition=function(e){e===o&&(e=0);var t,n,r=h.isHTML5?Math.max(e,0):Math.min(h.duration||h._iO.duration,Math.max(e,0));if(h.position=r,n=h.position/Ne,h._resetOnPosition(h.position),h._iO.position=r,h.isHTML5){if(h._a){if(h._html5_canplay){if(h._a.currentTime.toFixed(3)!==n.toFixed(3))try{h._a.currentTime=n,(0===h.playState||h.paused)&&h._a.pause()}catch(e){}}else if(n)return h;h.paused&&h._onTimer(!0)}}else t=9===s?h.position:n,h.readyState&&2!==h.readyState&&ce._setPosition(h.id,t,h.paused||!h.playState,h._iO.multiShot);return h},this.pause=function(e){return h.paused||0===h.playState&&1!==h.readyState||(h.paused=!0,h.isHTML5?(h._setup_html5().pause(),a()):(e||e===o)&&ce._pause(h.id,h._iO.multiShot),h._iO.onpause&&h._iO.onpause.apply(h)),h},this.resume=function(){var e=h._iO;return h.paused?(h.paused=!1,h.playState=1,h.isHTML5?(h._setup_html5().play(),i()):(e.isMovieStar&&!e.serverURL&&h.setPosition(h.position),ce._pause(h.id,e.multiShot)),!m&&e.onplay?(e.onplay.apply(h),m=!0):e.onresume&&e.onresume.apply(h),h):h},this.togglePause=function(){return 0===h.playState?(h.play({position:9!==s||h.isHTML5?h.position/Ne:h.position}),h):(h.paused?h.resume():h.pause(),h)},this.setPan=function(e,t){return e===o&&(e=0),t===o&&(t=!1),h.isHTML5||ce._setPan(h.id,e),h._iO.pan=e,t||(h.pan=e,h.options.pan=e),h},this.setVolume=function(e,t){return e===o&&(e=100),t===o&&(t=!1),h.isHTML5?h._a&&(ue.muted&&!h.muted&&(h.muted=!0,h._a.muted=!0),h._a.volume=Math.max(0,Math.min(1,e/100))):ce._setVolume(h.id,ue.muted&&!h.muted||h.muted?0:e),h._iO.volume=e,t||(h.volume=e,h.options.volume=e),h},this.mute=function(){return h.muted=!0,h.isHTML5?h._a&&(h._a.muted=!0):ce._setVolume(h.id,0),h},this.unmute=function(){h.muted=!1;var e=h._iO.volume!==o;return h.isHTML5?h._a&&(h._a.muted=!1):ce._setVolume(h.id,e?h._iO.volume:h.options.volume),h},this.toggleMute=function(){return h.muted?h.unmute():h.mute()},this.onPosition=function(e,t,n){return y.push({position:parseInt(e,10),method:t,scope:n!==o?n:h,fired:!1}),h},this.onposition=this.onPosition,this.clearOnPosition=function(e,t){var n;if(e=parseInt(e,10),!isNaN(e))for(n=0;n=n)return!1;for(e=n-1;e>=0;e--)!(t=y[e]).fired&&h.position>=t.position&&(t.fired=!0,v++,t.method.apply(t.scope,[t.position]),n=y.length);return!0},this._resetOnPosition=function(e){var t,n,r=y.length;if(!r)return!1;for(t=r-1;t>=0;t--)(n=y[t]).fired&&e<=n.position&&(n.fired=!1,v--);return!0},c=function(){var e,t,n=h._iO,r=n.from,a=n.to;return t=function(){h.clearOnPosition(a,t),h.stop()},e=function(){null===a||isNaN(a)||h.onPosition(a,t)},null===r||isNaN(r)||(n.position=r,n.multiShot=!1,e()),n},l=function(){var e,t=h._iO.onposition;if(t)for(e in t)t.hasOwnProperty(e)&&h.onPosition(parseInt(e,10),t[e])},u=function(){var e,t=h._iO.onposition;if(t)for(e in t)t.hasOwnProperty(e)&&h.clearOnPosition(parseInt(e,10))},i=function(){h.isHTML5&&U(h)},a=function(){h.isHTML5&&B(h)},(t=function(e){e||(y=[],v=0),m=!1,h._hasTimer=null,h._a=null,h._html5_canplay=!1,h.bytesLoaded=null,h.bytesTotal=null,h.duration=h._iO&&h._iO.duration?h._iO.duration:null,h.durationEstimate=null,h.buffered=[],h.eqData=[],h.eqData.left=[],h.eqData.right=[],h.failures=0,h.isBuffering=!1,h.instanceOptions={},h.instanceCount=0,h.loaded=!1,h.metadata={},h.readyState=0,h.muted=!1,h.paused=!1,h.peakData={left:0,right:0},h.waveformData={left:[],right:[]},h.playState=0,h.position=null,h.id3={}})(),this._onTimer=function(e){var t,n,r=!1,a={};return(h._hasTimer||e)&&h._a&&(e||(h.playState>0||1===h.readyState)&&!h.paused)&&((t=h._get_html5_duration())!==d.duration&&(d.duration=t,h.duration=t,r=!0),h.durationEstimate=h.duration,(n=h._a.currentTime*Ne||0)!==d.time&&(d.time=n,r=!0),(r||e)&&h._whileplaying(n,a,a,a,a)),r},this._get_html5_duration=function(){var e=h._iO,t=h._a&&h._a.duration?h._a.duration*Ne:e&&e.duration?e.duration:null;return t&&!isNaN(t)&&t!==1/0?t:null},this._apply_loop=function(e,t){e.loop=t>1?"loop":""},this._setup_html5=function(e){var r,a=f(h._iO,e),o=xe?se:h._a,i=decodeURI(a.url);if(xe?i===decodeURI(te)&&(r=!0):i===decodeURI(g)&&(r=!0),o){if(o._s)if(xe)o._s&&o._s.playState&&!r&&o._s.stop();else if(!xe&&i===decodeURI(g))return h._apply_loop(o,a.loops),o;r||(g&&t(!1),o.src=a.url,h.url=a.url,g=a.url,te=a.url,o._called_load=!1)}else a.autoLoad||a.autoPlay?(h._a=new Audio(a.url),h._a.load()):h._a=Fe&&opera.version()<10?new Audio(null):new Audio,(o=h._a)._called_load=!1,xe&&(se=o);return h.isHTML5=!0,h._a=o,o._s=h,n(),h._apply_loop(o,a.loops),a.autoLoad||a.autoPlay?h.load():(o.autobuffer=!1,o.preload="auto"),o},n=function(){if(h._a._added_events)return!1;var e,t,n,r;for(e in h._a._added_events=!0,oe)oe.hasOwnProperty(e)&&(t=e,n=oe[e],r=void 0,h._a&&h._a.addEventListener(t,n,r||!1));return!0},r=function(){var e,t,n,r;for(e in h._a._added_events=!1,oe)oe.hasOwnProperty(e)&&(t=e,n=oe[e],r=void 0,h._a&&h._a.removeEventListener(t,n,r||!1))},this._onload=function(e){var t=!!e||!h.isHTML5&&8===s&&h.duration;return h.loaded=t,h.readyState=t?3:2,h._onbufferchange(0),t||h.isHTML5||h._onerror(),h._iO.onload&&ie(h,(function(){h._iO.onload.apply(h,[t])})),!0},this._onerror=function(e,t){h._iO.onerror&&ie(h,(function(){h._iO.onerror.apply(h,[e,t])}))},this._onbufferchange=function(e){return 0!==h.playState&&(!(e&&h.isBuffering||!e&&!h.isBuffering)&&(h.isBuffering=1===e,h._iO.onbufferchange&&h._iO.onbufferchange.apply(h,[e]),!0))},this._onsuspend=function(){return h._iO.onsuspend&&h._iO.onsuspend.apply(h),!0},this._onfailure=function(e,t,n){h.failures++,h._iO.onfailure&&1===h.failures&&h._iO.onfailure(e,t,n)},this._onwarning=function(e,t,n){h._iO.onwarning&&h._iO.onwarning(e,t,n)},this._onfinish=function(){var e=h._iO.onfinish;h._onbufferchange(0),h._resetOnPosition(0),h.instanceCount&&(h.instanceCount--,h.instanceCount||(u(),h.playState=0,h.paused=!1,h.instanceCount=0,h.instanceOptions={},h._iO={},a(),h.isHTML5&&(h.position=0)),h.instanceCount&&!h._iO.multiShotEvents||e&&ie(h,(function(){e.apply(h)})))},this._whileloading=function(e,t,n,r){var a=h._iO;h.bytesLoaded=e,h.bytesTotal=t,h.duration=Math.floor(n),h.bufferLength=r,h.isHTML5||a.isMovieStar?h.durationEstimate=h.duration:a.duration?h.durationEstimate=h.duration>a.duration?h.duration:a.duration:h.durationEstimate=parseInt(h.bytesTotal/h.bytesLoaded*h.duration,10),h.isHTML5||(h.buffered=[{start:0,end:h.duration}]),(3!==h.readyState||h.isHTML5)&&a.whileloading&&a.whileloading.apply(h)},this._whileplaying=function(e,t,n,r,a){var i,l=h._iO;return!isNaN(e)&&null!==e&&(h.position=Math.max(0,e),h._processOnPosition(),!h.isHTML5&&s>8&&(l.usePeakData&&t!==o&&t&&(h.peakData={left:t.leftPeak,right:t.rightPeak}),l.useWaveformData&&n!==o&&n&&(h.waveformData={left:n.split(","),right:r.split(",")}),l.useEQData&&a!==o&&a&&a.leftEQ&&(i=a.leftEQ.split(","),h.eqData=i,h.eqData.left=i,a.rightEQ!==o&&a.rightEQ&&(h.eqData.right=a.rightEQ.split(",")))),1===h.playState&&(h.isHTML5||8!==s||h.position||!h.isBuffering||h._onbufferchange(0),l.whileplaying&&l.whileplaying.apply(h)),!0)},this._oncaptiondata=function(e){h.captiondata=e,h._iO.oncaptiondata&&h._iO.oncaptiondata.apply(h,[e])},this._onmetadata=function(e,t){var n,r,a={};for(n=0,r=e.length;n0&&h._iO.ondataerror&&h._iO.ondataerror.apply(h)}},P=function(){return pe.body||pe.getElementsByTagName("div")[0]},r=function(e){return pe.getElementById(e)},f=function(e,t){var n,r,a=e||{};for(r in n=t===o?ue.defaultOptions:t)n.hasOwnProperty(r)&&a[r]===o&&("object"!=typeof n[r]||null===n[r]?a[r]=n[r]:a[r]=f(a[r],n[r]));return a},ie=function(e,t){e.isHTML5||8!==s?t():a.setTimeout(t,0)},p={onready:1,ontimeout:1,defaultOptions:1,flash9Options:1,movieStarOptions:1},d=function(e,t){var n,r=!0,a=t!==o,i=ue.setupOptions,l=p;for(n in e)if(e.hasOwnProperty(n))if("object"!=typeof e[n]||null===e[n]||e[n]instanceof Array||e[n]instanceof RegExp)a&&l[t]!==o?ue[t][n]=e[n]:i[n]!==o?(ue.setupOptions[n]=e[n],ue[n]=e[n]):l[n]===o?r=!1:ue[n]instanceof Function?ue[n].apply(ue,e[n]instanceof Array?e[n]:[e[n]]):ue[n]=e[n];else{if(l[n]!==o)return d(e[n],n);r=!1}return r},ee=function(){var e=a.attachEvent,t={add:e?"attachEvent":"addEventListener",remove:e?"detachEvent":"removeEventListener"};function n(t){var n=Ce.call(t),r=n.length;return e?(n[1]="on"+n[1],r>3&&n.pop()):3===r&&n.push(!1),n}function r(n,r){var a=n.shift(),o=[t[r]];e?a[o](n[0],n[1]):a[o].apply(a,n)}return{add:function(){r(n(arguments),"add")},remove:function(){r(n(arguments),"remove")}}}(),oe={abort:Ke((function(){})),canplay:Ke((function(){var e,t=this._s;if(!t._html5_canplay){if(t._html5_canplay=!0,t._onbufferchange(0),e=t._iO.position===o||isNaN(t._iO.position)?null:t._iO.position/Ne,this.currentTime!==e)try{this.currentTime=e}catch(e){}t._iO._oncanplay&&t._iO._oncanplay()}})),canplaythrough:Ke((function(){var e=this._s;e.loaded||(e._onbufferchange(0),e._whileloading(e.bytesLoaded,e.bytesTotal,e._get_html5_duration()),e._onload(!0))})),durationchange:Ke((function(){var e,t=this._s;e=t._get_html5_duration(),isNaN(e)||e===t.duration||(t.durationEstimate=t.duration=e)})),ended:Ke((function(){this._s._onfinish()})),error:Ke((function(){var e=G[this.error.code]||null;this._s._onload(!1),this._s._onerror(this.error.code,e)})),loadeddata:Ke((function(){var e=this._s;e._loaded||De||(e.duration=e._get_html5_duration())})),loadedmetadata:Ke((function(){})),loadstart:Ke((function(){this._s._onbufferchange(1)})),play:Ke((function(){this._s._onbufferchange(0)})),playing:Ke((function(){this._s._onbufferchange(0)})),progress:Ke((function(e){var t,n,r=this._s,a=0,o=(e.type,e.target.buffered),i=e.loaded||0,l=e.total||1;if(r.buffered=[],o&&o.length){for(t=0,n=o.length;t=0;r--)i["audio/"+n[e].related[r]]=i[e],ue.html5[n[e].related[r]]=i[e],ue.flash[n[e].related[r]]=i[e];return i.canPlayType=a?l:null,ue.html5=f(ue.html5,i),ue.html5.usingFlash=$(),Pe=ue.html5.usingFlash,!0},S={},I=function(){},z=function(e){return 8===s&&e.loops>1&&e.stream&&(e.stream=!1),e},H=function(e,t){return e&&!e.usePolicyFile&&(e.onid3||e.usePeakData||e.useWaveformData||e.useEQData)&&(e.usePolicyFile=!0),e},i=function(){return!1},N=function(e){var t;for(t in e)e.hasOwnProperty(t)&&"function"==typeof e[t]&&(e[t]=i);t=null},M=function(e){e===o&&(e=!1),(ge||e)&&ue.disable(e)},R=function(e){var t;if(e)if(e.match(/\.swf(\?.*)?$/i)){if(e.substr(e.toLowerCase().lastIndexOf(".swf?")+4))return e}else e.lastIndexOf("/")!==e.length-1&&(e+="/");return t=(e&&-1!==e.lastIndexOf("/")?e.substr(0,e.lastIndexOf("/")+1):"./")+ue.movieURL,ue.noSWFCache&&(t+="?ts="+(new Date).getTime()),t},k=function(){8!==(s=parseInt(ue.flashVersion,10))&&9!==s&&(ue.flashVersion=s=8);var e=ue.debugMode||ue.debugFlash?"_debug.swf":".swf";ue.useHTML5Audio&&!ue.html5Only&&ue.audioFormats.mp4.required&&s<9&&(ue.flashVersion=s=9),ue.version=ue.versionNumber+(ue.html5Only?" (HTML5-only mode)":9===s?" (AS3/Flash 9)":" (AS2/Flash 8)"),s>8?(ue.defaultOptions=f(ue.defaultOptions,ue.flash9Options),ue.features.buffering=!0,ue.defaultOptions=f(ue.defaultOptions,ue.movieStarOptions),ue.filePatterns.flash9=new RegExp("\\.(mp3|"+Ye.join("|")+")(\\?.*)?$","i"),ue.features.movieStar=!0):ue.features.movieStar=!1,ue.filePattern=ue.filePatterns[8!==s?"flash9":"flash8"],ue.movieURL=(8===s?"soundmanager2.swf":"soundmanager2_flash9.swf").replace(".swf",e),ue.features.peakData=ue.features.waveformData=ue.features.eqData=s>8},L=function(e,t){ce&&ce._setPolling(e,t)},j=this.getSoundById,D=function(){var e=[];return ue.debugMode&&e.push(F.sm2Debug),ue.debugFlash&&e.push(F.flashDebug),ue.useHighPerformance&&e.push(F.highPerf),e.join(" ")},A=function(){I("fbHandler");var e=ue.getMoviePercent(),t=F,n={type:"FLASHBLOCK"};ue.html5Only||(ue.ok()?ue.oMC&&(ue.oMC.className=[D(),t.swfDefault,t.swfLoaded+(ue.didFlashBlock?" "+t.swfUnblocked:"")].join(" ")):(Pe&&(ue.oMC.className=D()+" "+t.swfDefault+" "+(null===e?t.swfTimedout:t.swfError)),ue.didFlashBlock=!0,m({type:"ontimeout",ignoreInit:!0,error:n}),x(n)))},h=function(e,t,n){he[e]===o&&(he[e]=[]),he[e].push({method:t,scope:n||null,fired:!1})},m=function(e){if(e||(e={type:ue.ok()?"onready":"ontimeout"}),!ve&&e&&!e.ignoreInit)return!1;if("ontimeout"===e.type&&(ue.ok()||ge&&!e.ignoreInit))return!1;var t,n,r={success:e&&e.ignoreInit?ue.ok():!ge},a=e&&e.type&&he[e.type]||[],o=[],i=[r],l=Pe&&!ue.ok();for(e.error&&(i[0].error=e.error),t=0,n=a.length;t=0;e--)ue.sounds[ue.soundIDs[e]].isHTML5&&ue.sounds[ue.soundIDs[e]]._hasTimer&&ue.sounds[ue.soundIDs[e]]._onTimer()},x=function(e){e=e!==o?e:{},"function"==typeof ue.onerror&&ue.onerror.apply(a,[{type:e.type!==o?e.type:null}]),e.fatal!==o&&e.fatal&&ue.disable()},ae=function(){if(He&&re()){var e,t,n=ue.audioFormats;for(t in n)if(n.hasOwnProperty(t)&&("mp3"===t||"mp4"===t)&&(ue.html5[t]=!1,n[t]&&n[t].related))for(e=n[t].related.length-1;e>=0;e--)ue.html5[n[t].related[e]]=!1}},this._setSandboxType=function(e){},this._externalInterfaceOK=function(e){ue.swfLoaded||(ue.swfLoaded=!0,Ue=!1,He&&ae(),setTimeout(u,Ie?100:1))},C=function(e,t){if(me&&ye)return!1;if(ue.html5Only)return k(),ue.oMC=r(ue.movieID),u(),me=!0,ye=!0,!1;var n,a,i,l,s,c,f,d,p,h=t||ue.url,m=ue.altURL||h,y=P(),v=D(),g=pe.getElementsByTagName("html")[0];function b(e,t){return''}if(n=g&&g.dir&&g.dir.match(/rtl/i),e=e===o?ue.id:e,k(),ue.url=R(qe?h:m),t=ue.url,ue.wmode=!ue.wmode&&ue.useHighPerformance?"transparent":ue.wmode,null!==ue.wmode&&(fe.match(/msie 8/i)||!Ie&&!ue.useHighPerformance)&&navigator.platform.match(/win32|win64/i)&&(Oe.push(S.spcWmode),ue.wmode=null),a={name:e,id:e,src:t,quality:"high",allowScriptAccess:ue.allowScriptAccess,bgcolor:ue.bgColor,pluginspage:$e+"www.macromedia.com/go/getflashplayer",title:"JS/Flash audio component (SoundManager 2)",type:"application/x-shockwave-flash",wmode:ue.wmode,hasPriority:"true"},ue.debugFlash&&(a.FlashVars="debug=1"),ue.wmode||delete a.wmode,Ie)i=pe.createElement("div"),s=['"].join("");else for(l in i=pe.createElement("embed"),a)a.hasOwnProperty(l)&&i.setAttribute(l,a[l]);if(v=D(),y=P())if(ue.oMC=r(ue.movieID)||pe.createElement("div"),ue.oMC.id)p=ue.oMC.className,ue.oMC.className=(p?p+" ":F.swfDefault)+(v?" "+v:""),ue.oMC.appendChild(i),Ie&&((c=ue.oMC.appendChild(pe.createElement("div"))).className=F.swfBox,c.innerHTML=s),ye=!0;else{if(ue.oMC.id=ue.movieID,ue.oMC.className=F.swfDefault+" "+v,f=null,c=null,ue.useFlashBlock||(ue.useHighPerformance?f={position:"fixed",width:"8px",height:"8px",bottom:"0px",left:"0px",overflow:"hidden"}:(f={position:"absolute",width:"6px",height:"6px",top:"-9999px",left:"-9999px"},n&&(f.left=Math.abs(parseInt(f.left,10))+"px"))),Ae&&(ue.oMC.style.zIndex=1e4),!ue.debugFlash)for(d in f)f.hasOwnProperty(d)&&(ue.oMC.style[d]=f[d]);try{Ie||ue.oMC.appendChild(i),y.appendChild(ue.oMC),Ie&&((c=ue.oMC.appendChild(pe.createElement("div"))).className=F.swfBox,c.innerHTML=s),ye=!0}catch(e){throw new Error(I("domError")+" \n"+e.toString())}}return me=!0,!0},_=function(){return ue.html5Only?(C(),!1):!ce&&(!!ue.url&&((ce=ue.getMovie(ue.id))||(ke?(Ie?ue.oMC.innerHTML=we:ue.oMC.appendChild(ke),ke=null,me=!0):C(ue.id,ue.url),ce=ue.getMovie(ue.id)),"function"==typeof ue.oninitmovie&&setTimeout(ue.oninitmovie,1),!0))},v=function(){setTimeout(g,1e3)},b=function(){a.setTimeout((function(){ue.setup({preferFlash:!1}).reboot(),ue.didFlashBlock=!0,ue.beginDelayedInit()}),1)},g=function(){var e,t=!1;ue.url&&(Se||(Se=!0,ee.remove(a,"load",v),ne&&Ue&&!je||(ve||(e=ue.getMoviePercent())>0&&e<100&&(t=!0),setTimeout((function(){if(e=ue.getMoviePercent(),t)return Se=!1,void a.setTimeout(v,1);!ve&&Be&&(null===e?ue.useFlashBlock||0===ue.flashLoadTimeout?ue.useFlashBlock&&A():!ue.useFlashBlock&&q?b():m({type:"ontimeout",ignoreInit:!0,error:{type:"INIT_FLASHBLOCK"}}):0===ue.flashLoadTimeout||(!ue.useFlashBlock&&q?b():M(!0)))}),ue.flashLoadTimeout))))},w=function(){function e(){ee.remove(a,"focus",w)}return je||!Ue?(e(),!0):(Be=!0,je=!0,Se=!1,v(),e(),!0)},c=function(e){if(ve)return!1;if(ue.html5Only)return ve=!0,y(),!0;var t,n=!0;return ue.useFlashBlock&&ue.flashLoadTimeout&&!ue.getMoviePercent()||(ve=!0),t={type:!ne&&Pe?"NO_FLASH":"INIT_TIMEOUT"},(ge||e)&&(ue.useFlashBlock&&ue.oMC&&(ue.oMC.className=D()+" "+(null===ue.getMoviePercent()?F.swfTimedout:F.swfError)),m({type:"ontimeout",error:t,ignoreInit:!0}),x(t),n=!1),ge||(ue.waitForWindowLoad&&!be?ee.add(a,"load",y):y()),n},l=function(){var e,t=ue.setupOptions;for(e in t)t.hasOwnProperty(e)&&(ue[e]===o?ue[e]=t[e]:ue[e]!==t[e]&&(ue.setupOptions[e]=ue[e]))},u=function(){if(ve)return!1;function e(){ee.remove(a,"load",ue.beginDelayedInit)}if(ue.html5Only)return ve||(e(),ue.enabled=!0,c()),!0;_();try{ce._externalInterfaceTest(!1),L(!0,ue.flashPollingInterval||(ue.useHighPerformance?10:50)),ue.debugMode||ce._disableDebug(),ue.enabled=!0,ue.html5Only||ee.add(a,"unload",i)}catch(e){return x({type:"JS_TO_FLASH_EXCEPTION",fatal:!0}),M(!0),c(),!1}return c(),e(),!0},T=function(){return!O&&(O=!0,l(),!ne&&ue.hasHTML5&&ue.setup({useHTML5Audio:!0,preferFlash:!1}),J(),!ne&&Pe&&(Oe.push(S.needFlash),ue.setup({flashLoadTimeout:1})),pe.removeEventListener&&pe.removeEventListener("DOMContentLoaded",T,!1),_(),!0)},X=function(){return"complete"===pe.readyState&&(T(),pe.detachEvent("onreadystatechange",X)),!0},E=function(){be=!0,T(),ee.remove(a,"load",E)},re(),ee.add(a,"focus",w),ee.add(a,"load",v),ee.add(a,"load",E),pe.addEventListener?pe.addEventListener("DOMContentLoaded",T,!1):pe.attachEvent?pe.attachEvent("onreadystatechange",X):x({type:"NO_DOM2_EVENTS",fatal:!0})}a.SM2_DEFER!==o&&SM2_DEFER||(i=new l),e&&"object"==typeof e.exports?(e.exports.SoundManager=l,e.exports.soundManager=i):void 0===(r=function(){return{constructor:l,getInstance:function(e){if(!a.soundManager&&e instanceof Function){var t=e(l);t instanceof l&&(a.soundManager=t)}return a.soundManager}}}.call(t,n,t,e))||(e.exports=r),a.SoundManager=l,a.soundManager=i}(window)},8975:(e,t,n)=>{var r;!function(){"use strict";var a={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[\+\-]/};function o(e){return l(s(e),arguments)}function i(e,t){return o.apply(null,[e].concat(t||[]))}function l(e,t){var n,r,i,l,u,s,c,f,d,p=1,h=e.length,m="";for(r=0;r=0),l[8]){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,l[6]?parseInt(l[6]):0);break;case"e":n=l[7]?parseFloat(n).toExponential(l[7]):parseFloat(n).toExponential();break;case"f":n=l[7]?parseFloat(n).toFixed(l[7]):parseFloat(n);break;case"g":n=l[7]?String(Number(n.toPrecision(l[7]))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=l[7]?n.substring(0,l[7]):n;break;case"t":n=String(!!n),n=l[7]?n.substring(0,l[7]):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=l[7]?n.substring(0,l[7]):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=l[7]?n.substring(0,l[7]):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase()}a.json.test(l[8])?m+=n:(!a.number.test(l[8])||f&&!l[3]?d="":(d=f?"+":"-",n=n.toString().replace(a.sign,"")),s=l[4]?"0"===l[4]?"0":l[4].charAt(1):" ",c=l[6]-(d+n).length,u=l[6]&&c>0?s.repeat(c):"",m+=l[5]?d+n+u:"0"===s?d+u+n:u+d+n)}return m}var u=Object.create(null);function s(e){if(u[e])return u[e];for(var t,n=e,r=[],o=0;n;){if(null!==(t=a.text.exec(n)))r.push(t[0]);else if(null!==(t=a.modulo.exec(n)))r.push("%");else{if(null===(t=a.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){o|=1;var i=[],l=t[2],s=[];if(null===(s=a.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(i.push(s[1]);""!==(l=l.substring(s[0].length));)if(null!==(s=a.key_access.exec(l)))i.push(s[1]);else{if(null===(s=a.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");i.push(s[1])}t[2]=i}else o|=2;if(3===o)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push(t)}n=n.substring(t[0].length)}return u[e]=r}t.sprintf=o,t.vsprintf=i,"undefined"!=typeof window&&(window.sprintf=o,window.vsprintf=i,void 0===(r=function(){return{sprintf:o,vsprintf:i}}.call(t,n,t,e))||(e.exports=r))}()},6189:(e,t,n)=>{var r=n(7966);e.exports=function(e){return r(e).replace(/\s(\w)/g,(function(e,t){return t.toUpperCase()}))}},1788:e=>{e.exports=function(e){return t.test(e)?e.toLowerCase():n.test(e)?(function(e){return e.replace(a,(function(e,t){return t?" "+t:""}))}(e)||e).toLowerCase():r.test(e)?function(e){return e.replace(o,(function(e,t,n){return t+" "+n.toLowerCase().split("").join(" ")}))}(e).toLowerCase():e.toLowerCase()};var t=/\s/,n=/(_|-|\.|:)/,r=/([a-z][A-Z]|[A-Z][a-z])/;var a=/[\W_]+(.|$)/g;var o=/(.)([A-Z]+)/g},7966:(e,t,n)=>{var r=n(1788);e.exports=function(e){return r(e).replace(/[\W_]+(.|$)/g,(function(e,t){return t?" "+t:""})).trim()}},670:e=>{"use strict";e.exports=function(){}}},r={};function a(e){var t=r[e];if(void 0!==t)return t.exports;var o=r[e]={id:e,loaded:!1,exports:{}};return n[e].call(o.exports,o,o.exports,a),o.loaded=!0,o.exports}a.m=n,a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((t,n)=>(a.f[n](e,t),t)),[])),a.u=e=>"fingerprintjs.js",a.miniCssF=e=>{},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="audioigniter:",a.l=(n,r,o,i)=>{if(e[n])e[n].push(r);else{var l,u;if(void 0!==o)for(var s=document.getElementsByTagName("script"),c=0;c{l.onerror=l.onload=null,clearTimeout(p);var a=e[n];if(delete e[n],l.parentNode&&l.parentNode.removeChild(l),a&&a.forEach((e=>e(r))),t)return t(r)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=d.bind(null,l.onerror),l.onload=d.bind(null,l.onload),u&&document.head.appendChild(l)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var t=a.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{var e={143:0};a.f.j=(t,n)=>{var r=a.o(e,t)?e[t]:void 0;if(0!==r)if(r)n.push(r[2]);else{var o=new Promise(((n,a)=>r=e[t]=[n,a]));n.push(r[2]=o);var i=a.p+a.u(t),l=new Error;a.l(i,(n=>{if(a.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var o=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;l.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",l.name="ChunkLoadError",l.type=o,l.request=i,r[1](l)}}),"chunk-"+t,t)}};var t=(t,n)=>{var r,o,[i,l,u]=n,s=0;if(i.some((t=>0!==e[t]))){for(r in l)a.o(l,r)&&(a.m[r]=l[r]);if(u)u(a)}for(t&&t(n);s{"use strict";var e=a(7294),t=a(745),n=a(5697),r=a.n(n),o=a(8137),i=a(8975),l=a(4184),u=a.n(l),s=a(1298),c={track:r().object.isRequired,trackNo:r().number,style:r().object,className:r().string,displayArtistNames:r().bool},f=function(t){var n=t.className,r=t.style,a=t.track,o=t.trackNo,i=t.displayArtistNames,l=a.title;return i&&a.subtitle&&(l="".concat(a.title," - ").concat(a.subtitle)),null!=o&&(l="".concat(o,". ").concat(l)),e.createElement("span",{className:n,style:r},l)};f.propTypes=c;const d=f;var p=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 18 24"},e.createElement("path",{d:"M18 12c0 .712-.37 1.355-.99 1.72L3.159 23.625C2.757 23.889 2.382 24 2 24c-1.103 0-2-.897-2-2V2C0 .897.897 0 2 0c.385 0 .76.111 1.085.323l13.962 9.981c.583.34.953.983.953 1.695z"}))},h=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M9 2v20c0 1.103-.897 2-2 2H2c-1.103 0-2-.897-2-2V2C0 .897.897 0 2 0h5c1.103 0 2 .897 2 2zm13-2h-5c-1.103 0-2 .897-2 2v20c0 1.103.897 2 2 2h5c1.103 0 2-.897 2-2V2c0-1.103-.897-2-2-2z"}))},m=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M24 1.999v19.989c0 1.102-.897 1.999-2 1.999h-5c-1.103 0-2-.897-2-1.999v-6.837L3.16 23.612C1.597 24.635 0 23.472 0 21.988V1.999C0 .897.897 0 2 0c.384 0 .76.111 1.085.322L15 8.837V1.999C15 .897 15.897 0 17 0h5c1.103 0 2 .897 2 1.999z"}))},y=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M24 2.014v19.987C24 23.103 23.103 24 22 24c-.385 0-.76-.111-1.085-.323L9 15.164v6.838c0 1.102-.897 1.999-2 1.999H2c-1.103 0-2-.897-2-1.999V2.015C0 .913.897.016 2 .016h5c1.103 0 2 .897 2 1.999v6.837L20.841.391C22.41-.636 24 .533 24 2.016z"}))},v=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M.871 5h10.758c.488 0 .871-.439.871-1s-.383-1-.871-1H.871C.383 3 0 3.439 0 4s.383 1 .871 1zM.871 10.25h10.758c.488 0 .871-.439.871-1s-.383-1-.871-1H.871c-.488 0-.871.439-.871 1s.383 1 .871 1zM23.595 3.129l-.002-.001c-.254-.156-.574-.17-.833-.036l-7.449 3.756c-.291.148-.472.442-.472.77v8.259c-.5-.234-1.055-.356-1.626-.356-1.841 0-3.339 1.229-3.339 2.74s1.498 2.74 3.339 2.74 3.338-1.229 3.338-2.74V8.15l5.736-2.893v8.116c-.5-.233-1.056-.355-1.627-.355-1.841 0-3.338 1.229-3.338 2.739s1.497 2.74 3.338 2.74 3.339-1.229 3.339-2.74V3.862c0-.3-.151-.574-.405-.733zM8.129 13.5H.871c-.488 0-.871.439-.871 1s.383 1 .871 1h7.258c.488 0 .871-.439.871-1s-.383-1-.871-1z"}))},g=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M24 11v2c0 1.103-.897 2-2 2h-7v7c0 1.103-.897 2-2 2h-2c-1.103 0-2-.897-2-2v-7H2c-1.103 0-2-.897-2-2v-2c0-1.103.897-2 2-2h7V2c0-1.103.897-2 2-2h2c1.103 0 2 .897 2 2v7h7c1.103 0 2 .897 2 2z"}))},b=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 21 24"},e.createElement("path",{d:"M24 11v2c0 1.103-.897 2-2 2H2c-1.103 0-2-.897-2-2v-2c0-1.103.897-2 2-2h20c1.103 0 2 .897 2 2z"}))},k=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 18 24"},e.createElement("path",{d:"M18 2v16c0 1.654-1.794 3-4 3s-4-1.346-4-3 1.794-3 4-3V4.5L8 6.374V21c0 1.654-1.794 3-4 3s-4-1.346-4-3 1.794-3 4-3V5c0-.966.691-1.793 1.645-1.966L15.238.157c.204-.097.481-.157.763-.157 1.103 0 2 .897 2 2z"}))},w=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M8.707 15h9.898c1.042 0 1.985-.657 2.346-1.636l2.94-7.979c.072-.196.109-.402.109-.616 0-.976-.794-1.77-1.77-1.77H5.734l-.339-1.188C5.09.744 4.101-.001 2.991-.001H.5c-.276 0-.5.224-.5.5s.224.5.5.5h2.491c.666 0 1.259.447 1.442 1.088l3.505 12.267-2.379 2.379c-.361.36-.56.841-.56 1.356 0 1.054.857 1.91 1.91 1.91h15.59c.276 0 .5-.224.5-.5s-.224-.5-.5-.5H6.909c-.502 0-.91-.408-.91-.916 0-.243.095-.472.267-.644l2.44-2.44zM18 12h-7.5c-.276 0-.5-.224-.5-.5s.224-.5.5-.5H18c.276 0 .5.224.5.5s-.224.5-.5.5zm.5-2.5H10c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h8.5c.276 0 .5.224.5.5s-.224.5-.5.5zM9.5 6H20c.276 0 .5.224.5.5s-.224.5-.5.5H9.5c-.276 0-.5-.224-.5-.5s.224-.5.5-.5zM21 20c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2zM8 20c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2z"}))},S=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M24 12c0 2.756-2.243 4.999-5 4.999-.004 0-.02.001-.047.001-.295 0-1.919-.082-3.953-1.398v.397c0 .553-.447 1-1 1s-1-.447-1-1v-2.5c0-.553.447-1 1-1h2.5c.553 0 1 .447 1 1 0 .403-.241.745-.584.903 1.193.589 2.011.604 2.055.597 1.683 0 3.028-1.345 3.028-3s-1.346-3-3-3c-2.151 0-4.213 1.832-6.396 3.772-2.338 2.078-4.756 4.227-7.604 4.227-2.757 0-5-2.243-5-4.999S2.242 7 4.999 7c.046-.002 1.777-.044 4 1.394V8c0-.553.447-1 1-1s1 .447 1 1v2.5c0 .553-.447 1-1 1h-2.5c-.553 0-1-.447-1-1 0-.403.241-.746.585-.904-1.186-.587-1.997-.6-2.056-.596C3.345 9 2 10.346 2 12s1.346 3 3 3c2.089 0 4.122-1.807 6.275-3.722C13.641 9.176 16.087 7.001 19 7.001c2.757 0 5 2.243 5 4.999z"}))},_=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M24 15c0 2.757-2.243 5-5 5h-.183c-.177 0-.333-.092-.422-.23-.05-.078-.078-.17-.078-.269 0-.078.018-.153.05-.219.419-.882.632-1.819.632-2.782 0-3.584-2.916-6.5-6.5-6.5s-6.5 2.916-6.5 6.5c0 .923.196 1.823.583 2.676.074.087.119.2.119.324 0 .276-.224.5-.5.5-.005.001-.013 0-.02 0h-.183c-3.309 0-6-2.691-6-6 0-2.158 1.143-4.121 3.003-5.193C3.104 5.036 6.203 2 9.998 2c2.759 0 5.205 1.58 6.35 4.062.227-.042.439-.063.65-.063 2.206 0 4 1.794 4 4 0 .142-.008.283-.024.428 1.825.785 3.024 2.572 3.024 4.572zm-6 1.5c0 3.032-2.468 5.5-5.5 5.5S7 19.532 7 16.5 9.468 11 12.5 11s5.5 2.468 5.5 5.5zm-3.146.646c-.195-.195-.512-.195-.707 0l-1.146 1.146v-4.793c0-.276-.224-.5-.5-.5s-.5.224-.5.5v4.793l-1.146-1.146c-.195-.195-.512-.195-.707 0s-.195.512 0 .707l2 2c.046.046.1.083.161.108.059.025.124.038.192.038.065 0 .129-.013.19-.038h.002c.002-.001.003-.003.005-.004.057-.024.111-.058.157-.105l2-2c.195-.195.195-.512 0-.707z"}))},T=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M0 4.5C0 3.673.673 3 1.5 3h21c.827 0 1.5.673 1.5 1.5S23.327 6 22.5 6h-21C.673 6 0 5.327 0 4.5zM1.5 11h15c.827 0 1.5-.673 1.5-1.5S17.327 8 16.5 8h-15C.673 8 0 8.673 0 9.5S.673 11 1.5 11zm15 7h-15c-.827 0-1.5.673-1.5 1.5S.673 21 1.5 21h15c.827 0 1.5-.673 1.5-1.5s-.673-1.5-1.5-1.5zm6-5h-21c-.827 0-1.5.673-1.5 1.5S.673 16 1.5 16h21c.827 0 1.5-.673 1.5-1.5s-.673-1.5-1.5-1.5z"}))},E=function(){return e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e.createElement("path",{d:"M23.927 16.827c.098.23.098.504-.004.743-.044.111-.119.223-.212.314l-2.876 2.833c-.184.182-.428.282-.688.282s-.506-.101-.69-.283c-.187-.183-.289-.428-.289-.689s.103-.506.29-.69l1.188-1.171h-.86c-1.881 0-3.649-.722-4.979-2.034l-2.14-2.107c-.187-.185-.289-.43-.289-.69 0-.176.062-.336.149-.484l-2.372 2.337c-1.329 1.312-3.098 2.034-4.979 2.034H.98c-.54 0-.979-.436-.979-.972s.438-.972.979-.972h4.196c1.36 0 2.639-.522 3.599-1.469l2.354-2.319c-.148.086-.308.146-.484.146-.26 0-.505-.1-.689-.282l-1.179-1.163c-.962-.947-2.24-1.469-3.601-1.469H.98c-.54 0-.979-.436-.979-.972s.438-.972.979-.972h4.196c1.88 0 3.648.722 4.979 2.033l1.179 1.163c.188.184.29.429.29.69 0 .177-.063.339-.152.487l3.333-3.284c1.33-1.312 3.099-2.034 4.979-2.034h.86l-1.188-1.171c-.188-.184-.29-.429-.29-.69s.103-.506.29-.69c.379-.375.998-.375 1.379.001l2.874 2.833c.096.094.168.202.217.323.098.231.098.505-.004.743-.044.111-.116.219-.21.312l-2.878 2.835c-.363.363-1.013.365-1.38-.001-.186-.182-.288-.428-.288-.689s.104-.506.29-.69l1.188-1.17h-.86c-1.36 0-2.639.521-3.601 1.469l-3.313 3.265c.374-.215.855-.181 1.174.134l2.139 2.108c.963.947 2.241 1.469 3.602 1.469h.86l-1.188-1.171c-.188-.184-.29-.429-.29-.69s.104-.506.29-.69c.379-.374.998-.375 1.379.001l2.877 2.834c.094.094.166.202.214.321z"}))},O={className:r().string,title:r().string,src:r().string,onClick:r().func},P=function(t){var n=t.className,r=t.title,a=t.src,o=t.onClick;return e.createElement("div",{className:n+(a?"":" ai-track-no-thumb"),onClick:o},a?e.createElement("img",{src:a,alt:r||""}):e.createElement(k,null))};P.propTypes=O;const C=P;const x=function(e){return![".mp3",".flac",".amr",".aac",".oga",".wav",".wma"].some((function(t){return e.includes(t)}))};function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function N(){N=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",i=r.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var a=t&&t.prototype instanceof f?t:f,o=Object.create(a.prototype),i=new _(r||[]);return o._invoke=function(e,t,n){var r="suspendedStart";return function(a,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===a)throw o;return E()}for(n.method=a,n.arg=o;;){var i=n.delegate;if(i){var l=k(i,n);if(l){if(l===c)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=s(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===c)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,i),o}function s(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var c={};function f(){}function d(){}function p(){}var h={};l(h,a,(function(){return this}));var m=Object.getPrototypeOf,y=m&&m(m(T([])));y&&y!==t&&n.call(y,a)&&(h=y);var v=p.prototype=f.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function b(e,t){function r(a,o,i,l){var u=s(e[a],e,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==L(f)&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,i,l)}),(function(e){r("throw",e,i,l)})):t.resolve(f).then((function(e){c.value=e,i(c)}),(function(e){return r("throw",e,i,l)}))}l(u.arg)}var a;this._invoke=function(e,n){function o(){return new t((function(t,a){r(e,n,t,a)}))}return a=a?a.then(o,o):o()}}function k(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,k(e,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var r=s(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,c;var a=r.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,c):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function S(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function T(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r=0;--a){var o=this.tryEntries[a],i=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var l=n.call(o,"catchLoc"),u=n.call(o,"finallyLoc");if(l&&u){if(this.prev=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),S(n),c}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;S(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:T(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),c}},e}function M(e,t,n,r,a,o,i){try{var l=e[o](i),u=l.value}catch(e){return void n(e)}l.done?t(u):Promise.resolve(u).then(r,a)}function R(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var o=e.apply(t,n);function i(e){M(o,r,a,i,l,"next",e)}function l(e){M(o,r,a,i,l,"throw",e)}i(void 0)}))}}function I(e,t){for(var n=0;n0&&n.eventQueueFlush()}),15e3)})),D(this,"eventQueueFlush",R(N().mark((function e(){return N().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.fetch();case 2:n.queue=[];case 3:case"end":return e.stop()}}),e)})))),D(this,"eventTrack",(function(e){var t,r,a=e.event,o=e.trackUrl,i=e.trackTitle,l=e.trackArtist,u=e.playerId,s=e.position,c=e.oldPosition,f=e.duration,d=e.isStream;null!==(t=window.aiStats)&&void 0!==t&&t.enabled&&(a===H&&0===s||n.queue.push({event:a,track_url:o,track_title:i,track_artist:l,playlist_id:parseInt(u,10),timestamp:(new Date).getTime(),referrer_url:window.location.href,event_data:{position:null!==(r=Math.floor(s/1e3))&&void 0!==r?r:null,old_position:null!=c?Math.floor(c/1e3):null,duration:f?Math.floor(f/1e3):null},client_fingerprint:n.clientId,is_stream:d}))})),this.clientId=null,this.queue=[],null!==(t=window.aiStats)&&void 0!==t&&t.enabled&&(this.eventQueueTimer(),this.initializeFingerprint(),window.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&n.eventQueueFlush()})))})));var $={buyButtonsTarget:r().bool,buyUrl:r().string,downloadUrl:r().string,downloadFilename:r().string,onTrackLoop:r().func,isLooping:r().bool,displayBuyButtons:r().bool,onOpenTrackLyrics:r().func,playbackRate:r().number,setPlaybackRate:r().func,allowPlaybackRate:r().bool,isPlaying:r().bool,track:r().shape({audio:r().string.isRequired}).isRequired,playerId:r().string},Q=function(t){var n=t.buyButtonsTarget,r=t.buyUrl,a=t.downloadUrl,o=t.downloadFilename,i=t.onTrackLoop,l=t.isLooping,u=t.displayBuyButtons,s=t.onOpenTrackLyrics,c=t.setPlaybackRate,f=t.playbackRate,d=t.allowPlaybackRate,p=t.isPlaying,h=t.track,m=t.playerId;return null!=r||null!=a||i||s?e.createElement("div",{className:"ai-track-control-buttons"},r&&u&&e.createElement("a",{href:r,className:"ai-track-btn",rel:n?"noopener noreferrer":void 0,target:n?"_blank":"_self",role:"button","aria-label":aiStrings.buy_track,title:aiStrings.buy_track},e.createElement(w,null)),a&&o&&u&&e.createElement("a",{href:a,download:o,className:"ai-track-btn",role:"button",onClick:function(){q.eventTrack({event:B,trackUrl:h.audio,playerId:V(m)})},"aria-label":aiStrings.download_track,title:aiStrings.download_track},e.createElement(_,null)),s&&e.createElement("a",{href:"#",className:"ai-track-btn",role:"button","aria-label":aiStrings.open_track_lyrics,title:aiStrings.open_track_lyrics,onClick:function(e){e.preventDefault(),s()}},e.createElement(T,null)),d&&p&&e.createElement("a",{href:"#",className:"ai-track-btn ai-btn-playback-rate",role:"button","aria-label":aiStrings.set_playback_rate,title:aiStrings.set_playback_rate,onClick:function(e){e.preventDefault(),c()}},"×",f),i&&e.createElement("a",{href:"#",className:"ai-track-btn ai-track-btn-repeat",role:"button","aria-label":aiStrings.toggle_track_repeat,title:aiStrings.toggle_track_repeat,onClick:function(e){e.preventDefault(),i()}},e.createElement("span",{style:{opacity:l?1:.3}},e.createElement(S,null)))):null};Q.propTypes=$;const Y=Q;var G={setPosition:r().func,position:r().number.isRequired,duration:r().number.isRequired},Z=function(t){var n=t.position,r=t.duration,a=t.setPosition;return e.createElement("span",{onClick:function(e){if(null!=a){var t=(e.pageX-e.currentTarget.getBoundingClientRect().left)/e.currentTarget.offsetWidth;a(t*r)}},className:"ai-track-progress-bar"},e.createElement("span",{className:"ai-track-progress",style:{width:"".concat(100*n/r,"%")}}))};Z.propTypes=G;const K=Z;function X(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var J={track:r().shape({audio:r().string,buyUrl:r().string,cover:r().string,title:r().string,subtitle:r().string,lyrics:r().string,downloadUrl:r().string,downloadFilename:r().string}),index:r().number.isRequired,trackNo:r().number,isActive:r().bool,position:r().number,duration:r().number,setPosition:r().func,playStatus:r().oneOf([o.Z.status.PLAYING,o.Z.status.PAUSED,o.Z.status.STOPPED]),onTrackClick:r().func.isRequired,onTrackLoop:r().func,className:r().string.isRequired,isStandalone:r().bool,buyButtonsTarget:r().bool,displayArtistNames:r().bool,displayCovers:r().bool,displayBuyButtons:r().bool,isLooping:r().bool,playbackRate:r().number,setPlaybackRate:r().func,allowPlaybackRate:r().bool,buffering:r().bool,playerId:r().string},ee=function(t){var n,r=t.track,a=t.index,l=t.trackNo,s=t.isActive,c=t.playStatus,f=t.duration,m=t.position,y=t.setPosition,v=t.isStandalone,g=t.buyButtonsTarget,b=t.displayArtistNames,k=t.displayCovers,w=t.displayBuyButtons,S=t.onTrackClick,_=t.onTrackLoop,T=t.className,E=t.isLooping,O=t.playbackRate,P=t.setPlaybackRate,x=t.allowPlaybackRate,L=t.buffering,N=t.playerId,M=(0,e.useContext)(Lt).toggleLyricsModal,R=s&&c===o.Z.status.PLAYING,I=void 0!==m&&void 0!==f&&s&&v,A=u()((X(n={},T,!!T),X(n,"ai-track-active",s),X(n,"ai-track-loading",s&&L),n));return e.createElement("li",{className:A},k&&e.createElement(C,{className:"ai-track-thumb",src:r.cover,alt:r.title,onClick:function(){return S(a)}}),v&&e.createElement("button",{className:u()({"ai-track-btn ai-track-inline-play-btn":!0,"ai-is-loading":s&&L}),onClick:function(){return S(a)},"aria-label":R?(0,i.sprintf)(aiStrings.pause_title,r.title):(0,i.sprintf)(aiStrings.play_title,r.title),"aria-pressed":R},R?e.createElement(h,null):e.createElement(p,null),e.createElement("span",{className:"ai-track-spinner"})),e.createElement("div",{className:"ai-track-control",onClick:function(){return S(a)}},e.createElement(d,{className:"ai-track-name",track:r,trackNo:l,displayArtistNames:b})),e.createElement(Y,{buyButtonsTarget:g,track:r,buyUrl:r.buyUrl,downloadUrl:r.downloadUrl,downloadFilename:r.downloadFilename,onTrackLoop:_&&function(){return _(a)},isLooping:E,displayBuyButtons:w,onOpenTrackLyrics:r.lyrics&&function(){return M(!0,r)},playbackRate:O,setPlaybackRate:P,allowPlaybackRate:x,isPlaying:R,playerId:N}),I&&e.createElement(K,{setPosition:y,duration:f,position:m}))};ee.propTypes=J;const te=ee;function ne(){return ne=Object.assign?Object.assign.bind():function(e){for(var t=1;tr)})(e)||k.current.scrollTop(t*e)};(0,e.useEffect)((function(){r&&w(i)}),[i,r]);var S=function(){return e.createElement(oe,{tracks:o,activeTrackIndex:i,onTrackClick:l,className:c,trackClassName:d,reverseTrackOrder:f,displayTrackNo:p,displayBuyButtons:h,buyButtonsTarget:m,displayCovers:y,displayArtistNames:v,onTrackLoop:u,repeatingTrackIndex:g,playerId:b})};return e.createElement("div",{id:"tracklisting",style:{display:n?"block":"none"}},r?e.createElement(s.$B,{className:"ai-scroll-wrap",ref:k,style:{height:a}},S()):S())};le.propTypes=ie;const ue=le;function se(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ce(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ce(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=10?n:"0".concat(n),o=o>=10?o:"0".concat(o),Number.isInteger(parseInt(o,10))&&(l=t?"".concat(t,":").concat(n,":").concat(o):"".concat(n,":").concat(o)),i?"-".concat(l):l}())};de.propTypes=fe;const pe=de;var he={className:r().string,onClick:r().func,children:r().node,ariaLabel:r().string,ariaPressed:r().bool,ariaExpanded:r().bool,ariaControls:r().string},me=function(t){var n=t.className,r=t.onClick,a=t.children,o=t.ariaLabel,i=t.ariaPressed,l=t.ariaExpanded,u=t.ariaControls;return e.createElement("button",{className:n,onClick:r,"aria-label":o,"aria-pressed":i,"aria-expanded":l,"aria-controls":u},a)};me.propTypes=he;const ye=me;function ve(e){return function(e){if(Array.isArray(e))return ge(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ge(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ge(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=100?n:n+10)},"aria-label":aiStrings.volume_up},e.createElement(g,null)),e.createElement(ye,{className:"ai-btn",onClick:function(){return r(n<=0?n:n-10)},"aria-label":aiStrings.volume_down},e.createElement(b,null))))};ke.propTypes=be;const we=ke;function Se(e,t){for(var n=0;n-1}}],(n=[{key:"resolve",value:function(e){var t=encodeURIComponent("_status_code_map[302]=200");return fetch("".concat(this.baseUrl,"/resolve?url=").concat(e,"&client_id=").concat(this.clientId,"&").concat(t)).then((function(e){return e.json()})).then((function(e){return fetch(e.location)})).then((function(e){return e.json()}))}},{key:"fetchSoundCloudStreams",value:function(t){var n=this,r=t.filter((function(t){return e.isSoundCloudUrl(t.audio)})).map((function(e){return n.resolve(e.audio)}));return Promise.all(r)}},{key:"mapStreamsToTracks",value:function(t,n){var r=this,a=0;return t.map((function(t){return e.isSoundCloudUrl(t.audio)&&(t.audio="".concat(n[a].stream_url,"?client_id=").concat(r.clientId),a++),t}))}}])&&Se(t.prototype,n),r&&Se(t,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();const Te=function(){return window.ai_pro_front_scripts&&!!window.ai_pro_front_scripts.multi_sound_disabled};function Ee(e){return function(e){if(Array.isArray(e))return Oe(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Oe(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Oe(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Oe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0;n--){var r=Math.floor(Math.random()*(n+1)),a=[t[r],t[n]];t[n]=a[0],t[r]=a[1]}return t};const Ce=function(e,t,n){var r=n>e.length?n%e.length:n;return e.concat(e.splice(0,t>0?e.length-r:r))};var xe=function(e){var t=e.tracks,n=void 0===t?[]:t,r=e.initialTrack,a=void 0===r?1:r,o=e.reverseTrackOrder,i=void 0!==o&&o,l=a-1;return!n.length||!a||a>n.length?0:i?Math.max(n.length-a,0):l},Le=function(e){var t=e.tracks,n=void 0===t?[]:t,r=e.initialTrack,a=void 0===r?1:r,o=e.reverseTrackOrder,i=void 0!==o&&o,l=e.shuffle,u=void 0!==l&&l,s=xe({tracks:n,initialTrack:a,reverseTrackOrder:i}),c=n.map((function(e,t){return t}));if(!u){var f=c.indexOf(s);return{activeIndex:s,trackQueue:Ce(c,0,f)}}var d=Pe(c);return d.splice(d.indexOf(s),1),d.unshift(s),{activeIndex:s,trackQueue:d}};function Ne(e){return Ne="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ne(e)}const Me={set:function(e,t){e&&t&&("object"===Ne(t)?window.localStorage.setItem(e,JSON.stringify(t)):window.localStorage.setItem(e,t))},get:function(e){var t=localStorage.getItem(e);if(t){try{var n=JSON.parse(t);if(n&&"object"===Ne(n))return n}catch(e){return t}return t}}};const Re=function(e,t){var n=!1;return function(){if(!n){for(var r=arguments.length,a=new Array(r),o=0;oe.length)&&(t=e.length);for(var n=0,r=new Array(t);n6e4&&this.aiEventTrackThrottled(De({event:z},W(this.state,this.props))),this.setState((function(){return{duration:r,position:a}}),(function(){n&&n.onPlaying&&n.onPlaying(t.getFinalProps()),l&&u&&(a%5e3<300||a<350)&&Me.set(l,{position:a,activeIndex:o})}))}},{key:"onFinishedPlaying",value:function(){var e=this,t=this.props,r=t.stopOnTrackFinish,a=t.delayBetweenTracks,i=1e3*(void 0===a?0:a);this.setState((function(){return{playStatus:o.Z.status.STOPPED}}),(function(){q.eventTrack(De({event:j},W(e.state,e.props)))})),r||n&&n.onFinishedPlaying&&setTimeout((function(){n.onFinishedPlaying(e.getFinalProps())}),i)}},{key:"getFinalProps",value:function(){var e=this.state,t=e.tracks[e.activeIndex]||{};return De(De({playTrack:this.playTrack,pauseTrack:this.pauseTrack,togglePlay:this.togglePlay,nextTrack:this.nextTrack,prevTrack:this.prevTrack,setPosition:this.setPosition,skipPosition:this.skipPosition,setPlaybackRate:this.setPlaybackRate,setVolume:this.setVolume,toggleTracklistCycling:this.toggleTracklistCycling,setTrackCycling:this.setTrackCycling,toggleShuffle:this.toggleShuffle,currentTrack:t},this.props),this.state)}},{key:"setVolume",value:function(e){this.setState((function(){return{volume:e}}))}},{key:"setPosition",value:function(e){var t=this,n=this.state.position;this.setState((function(){return{position:e}}),(function(){q.eventTrack(De(De({event:U},W(t.state,t.props)),{},{oldPosition:n}))}))}},{key:"setTrackCycling",value:function(e,t){var n=this;t&&t.preventDefault();var r=this.state,a=r.activeIndex;r.cycleTracks&&null!=e&&this.toggleTracklistCycling(),this.setState((function(t){return{repeatingTrackIndex:t.repeatingTrackIndex===e?null:e}}),(function(){null!=e&&a!==e&&n.playTrack(e)}))}},{key:"setPlaybackRate",value:function(){this.setState((function(e){var t=e.playbackRate,n=$e.findIndex((function(e){return e===t})),r=($e.length+(n+1))%$e.length;return{playbackRate:$e[r]}}))}},{key:"toggleShuffle",value:function(){var e=this,t=this.props,n=t.initialTrack,r=t.reverseTrackOrder,a=this.state.tracks;this.setState((function(e){return{shuffle:!e.shuffle}}),(function(){e.setState((function(){return{trackQueue:Le({tracks:a,initialTrack:n,reverseTrackOrder:r,shuffle:e.state.shuffle}).trackQueue}})),e.state.shuffle}))}},{key:"skipPosition",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=this.state.position,n=this.props.skipAmount,r=1e3*parseInt(n,10);this.setPosition(t+r*e)}},{key:"playTrack",value:function(e,t){var n=this;t&&t.preventDefault();var r=this.state,a=r.repeatingTrackIndex,i=r.isMultiSoundDisabled,l=r.playStatus;i&&window.soundManager.pauseAll(),l===o.Z.status.PLAYING&&q.eventTrack(De({event:j},W(this.state,this.props))),this.setState((function(){return{activeIndex:e,position:0,playStatus:o.Z.status.PLAYING}}),(function(){q.eventTrack(De({event:F},W(De(De({},n.state),{},{duration:null}),n.props)))})),e!==a&&null!=a&&this.setTrackCycling(null)}},{key:"pauseTrack",value:function(e){var t=this;e&&e.preventDefault(),this.state.playStatus===o.Z.status.PLAYING&&this.setState((function(){return{playStatus:o.Z.status.PAUSED}}),(function(){q.eventTrack(De({event:H},W(t.state,t.props)))}))}},{key:"togglePlay",value:function(e,t){var n=this;t&&t.preventDefault();var r=this.state.activeIndex;"number"!=typeof e||e===r?this.setState((function(e){var t=e.playStatus,n=e.isMultiSoundDisabled;return t!==o.Z.status.PLAYING&&n&&window.soundManager.pauseAll(),{playStatus:t===o.Z.status.PLAYING?o.Z.status.PAUSED:o.Z.status.PLAYING}}),(function(){q.eventTrack(De({event:n.state.playStatus===o.Z.status.PLAYING?F:H},W(n.state,n.props)))})):this.playTrack(e)}},{key:"nextTrack",value:function(){var e=this.state,t=e.trackQueue,n=e.activeIndex,r=t.indexOf(n),a=t[(r+1)%t.length];this.playTrack(a)}},{key:"prevTrack",value:function(){var e=this.state,t=e.trackQueue,n=e.activeIndex,r=t.indexOf(n),a=t[(r+t.length-1)%t.length];this.playTrack(a)}},{key:"toggleTracklistCycling",value:function(){null!==this.state.repeatingTrackIndex&&this.setTrackCycling(null),this.setState((function(e){return{cycleTracks:!e.cycleTracks}}))}},{key:"reverseTracks",value:function(){this.setState((function(e){return{tracks:e.tracks.slice().reverse()}}))}},{key:"render",value:function(){var n=this,r=this.state,a=r.tracks,i=r.playStatus,l=r.position,u=r.volume,s=r.playbackRate,c=this.getFinalProps();return e.createElement("div",{className:"ai-audioigniter"},e.createElement(t,c),a.length>0&&e.createElement(o.Z,{url:c.currentTrack.audio,playStatus:i,position:l,volume:u,onPlaying:this.onPlaying,onFinishedPlaying:this.onFinishedPlaying,onPause:function(){return n.pauseTrack()},playbackRate:s,onBufferChange:function(e){n.setState({buffering:e})}}))}}],i&&je(a.prototype,i),l&&je(a,l),Object.defineProperty(a,"prototype",{writable:!1}),s}(e.Component);return a.propTypes={playerId:r().string,volume:r().number,cycleTracks:r().bool,tracksUrl:r().string,track:r().string,soundcloudClientId:r().string,reverseTrackOrder:r().bool,skipAmount:r().number,stopOnTrackFinish:r().bool,delayBetweenTracks:r().number,initialTrack:r().number,shuffleEnabled:r().bool,defaultShuffle:r().bool,rememberLastPosition:r().bool},a};const Ye=function(){return window.ai_pro_front_scripts&&!!window.ai_pro_front_scripts.typography_disabled};function Ge(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ze(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ze(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ze(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n480,"ai-with-typography":!Ye()}),de=u()({"ai-audio-control":!0,"ai-audio-playing":a===o.Z.status.PLAYING,"ai-audio-loading":re});return e.createElement("div",{ref:oe,className:fe,style:{maxWidth:X}},e.createElement("div",{className:"ai-control-wrap"},W&&e.createElement(C,{className:"ai-thumb ai-control-wrap-thumb",src:k.cover,alt:k.title}),e.createElement("div",{className:"ai-control-wrap-controls"},e.createElement("div",{className:"ai-audio-controls-main"},e.createElement(ye,{onClick:_,className:de,ariaLabel:a===o.Z.status.PLAYING?(0,i.sprintf)(aiStrings.pause_title,k.title):(0,i.sprintf)(aiStrings.play_title,k.title),ariaPressed:a===o.Z.status.PLAYING},a===o.Z.status.PLAYING?e.createElement(h,null):e.createElement(p,null),e.createElement("span",{className:"ai-control-spinner"})),e.createElement("div",{className:"ai-track-info"},e.createElement("p",{className:"ai-track-title"},e.createElement("span",null,k.title)),(0===n.length||k.subtitle)&&Z&&e.createElement("p",{className:"ai-track-subtitle"},e.createElement("span",null,k.subtitle)))),e.createElement("div",{className:"ai-audio-controls-progress"},e.createElement(K,{setPosition:x,duration:f,position:c}),e.createElement(pe,{duration:f,position:c,countdown:ne})),e.createElement("div",{className:"ai-audio-controls-meta"},n.length>1&&e.createElement(ye,{className:"ai-btn ai-tracklist-prev",onClick:P,ariaLabel:aiStrings.previous,title:aiStrings.previous},e.createElement(y,null)),n.length>1&&e.createElement(ye,{className:"ai-btn ai-tracklist-next",onClick:O,ariaLabel:aiStrings.next,title:aiStrings.next},e.createElement(m,null)),e.createElement(we,{volume:s,setVolume:L}),D&&e.createElement(ye,{className:"ai-btn ai-btn-repeat ".concat(R&&"ai-btn-active"),onClick:M,ariaLabel:aiStrings.toggle_list_repeat},e.createElement(S,null)),b&&e.createElement(ye,{className:"ai-btn ai-btn-shuffle ".concat(g&&"ai-btn-active"),onClick:I,ariaLabel:aiStrings.shuffle},e.createElement(E,null)),F&&e.createElement(ye,{className:"ai-btn ai-btn-playback-rate",onClick:N,ariaLabel:aiStrings.set_playback_rate},e.createElement(e.Fragment,null,"×",d)),ee>0&&e.createElement(e.Fragment,null,e.createElement(ye,{className:"ai-btn ai-btn-skip-position",onClick:function(){return te(-1)},ariaLabel:aiStrings.skip_backward},"-",ee,"s"),e.createElement(ye,{className:"ai-btn ai-btn-skip-position",onClick:function(){return te(1)},ariaLabel:aiStrings.skip_forward},"+",ee,"s")),k&&k.lyrics&&!le&&e.createElement(Lt.Consumer,null,(function(t){var n=t.toggleLyricsModal;return e.createElement(ye,{className:"ai-btn ai-lyrics",onClick:function(){return n(!0,k)},ariaLabel:aiStrings.open_track_lyrics,title:aiStrings.open_track_lyrics},e.createElement(T,null))})),A&&e.createElement(ye,{className:"ai-btn ai-tracklist-toggle",onClick:function(){se((function(e){return!e}))},ariaLabel:aiStrings.toggle_list_visible,ariaExpanded:le},e.createElement(v,null))))),e.createElement("div",{className:"ai-tracklist-wrap ".concat(le?"ai-tracklist-open":"")},e.createElement(ue,{className:"ai-tracklist",trackClassName:"ai-track",tracks:n,activeTrackIndex:l,isOpen:le,displayTrackNo:U,displayCovers:V,displayBuyButtons:Y,buyButtonsTarget:G,displayArtistNames:Z,reverseTrackOrder:j,limitTracklistHeight:$,tracklistHeight:Q,onTrackClick:w,onTrackLoop:z?H:void 0,repeatingTrackIndex:J,playerId:r})),(null==ae?void 0:ae.length)>0&&e.createElement(at,{buttons:ae}),q&&e.createElement("div",{className:"ai-footer"},e.createElement("p",null,"Powered by"," ",e.createElement("a",{href:"https://www.cssigniter.com/plugins/audioigniter?utm_source=player&utm_medium=link&utm_content=audioigniter&utm_campaign=footer-link",target:"_blank",rel:"noopener noreferrer"},"AudioIgniter"))))};ut.propTypes=lt;const st=Qe(ut,{onFinishedPlaying:function(e){var t=e.repeatingTrackIndex,n=e.cycleTracks,r=e.nextTrack,a=e.activeIndex,o=e.playTrack,i=e.trackQueue;null==t?(n||a!==i[i.length-1])&&r():o(t)}});var ct={tracks:r().arrayOf(r().object),playerId:r().string,playStatus:r().oneOf([o.Z.status.PLAYING,o.Z.status.PAUSED,o.Z.status.STOPPED]),activeIndex:r().number,position:r().number,duration:r().number,setPosition:r().func.isRequired,togglePlay:r().func.isRequired,setTrackCycling:r().func.isRequired,allowTrackLoop:r().bool,maxWidth:r().string,reverseTrackOrder:r().bool,displayTrackNo:r().bool,buyButtonsTarget:r().bool,displayArtistNames:r().bool,displayBuyButtons:r().bool,displayCredits:r().bool,repeatingTrackIndex:r().number,playbackRate:r().number,setPlaybackRate:r().func,allowPlaybackRate:r().bool,buffering:r().bool,playerButtons:r().arrayOf(r().shape({title:r().string,url:r().string,icon:r().string}).isRequired)},ft=function(t){var n,r=t.playStatus,a=r===o.Z.status.PLAYING||r===o.Z.status.PAUSED?t.activeIndex:void 0,i=u()({"ai-wrap":!0,"ai-type-simple":!0,"ai-with-typography":!Ye()});return e.createElement("div",{className:i,style:{maxWidth:t.maxWidth}},e.createElement("div",{className:"ai-tracklist ai-tracklist-open"},e.createElement(oe,{tracks:t.tracks,playStatus:t.playStatus,activeTrackIndex:a,onTrackClick:t.togglePlay,setPosition:t.setPosition,duration:t.duration,position:t.position,playbackRate:t.playbackRate,className:"ai-tracklist",trackClassName:"ai-track",reverseTrackOrder:t.reverseTrackOrder,displayTrackNo:t.displayTrackNo,displayBuyButtons:t.displayBuyButtons,buyButtonsTarget:t.buyButtonsTarget,displayArtistNames:t.displayArtistNames,standaloneTracks:!0,onTrackLoop:t.allowTrackLoop?t.setTrackCycling:void 0,repeatingTrackIndex:t.repeatingTrackIndex,setPlaybackRate:t.setPlaybackRate,allowPlaybackRate:t.allowPlaybackRate,buffering:t.buffering,playerId:t.playerId})),(null===(n=t.playerButtons)||void 0===n?void 0:n.length)>0&&e.createElement(at,{buttons:t.playerButtons}),t.displayCredits&&e.createElement("div",{className:"ai-footer"},e.createElement("p",null,"Powered by"," ",e.createElement("a",{href:"https://www.cssigniter.com/plugins/audioigniter?utm_source=player&utm_medium=link&utm_content=audioigniter&utm_campaign=footer-link",target:"_blank",rel:"noopener noreferrer"},"AudioIgniter"))))};ft.propTypes=ct;const dt=Qe(ft,{onFinishedPlaying:function(e){var t=e.repeatingTrackIndex,n=e.cycleTracks,r=e.nextTrack,a=e.activeIndex,o=e.playTrack,i=e.trackQueue;null==t?(n||a!==i[i.length-1])&&r():o(t)}});function pt(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,a=e}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ht(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ht(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ht(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&e.createElement(ye,{className:"ai-btn ai-tracklist-prev",onClick:_,ariaLabel:aiStrings.previous},e.createElement(y,null)),n.length>1&&e.createElement(ye,{className:"ai-btn ai-tracklist-next",onClick:w,ariaLabel:aiStrings.next},e.createElement(m,null)),e.createElement(we,{volume:l,setVolume:O}),I&&e.createElement(ye,{className:"ai-btn ai-btn-repeat ".concat(x&&"ai-btn-active"),onClick:P,ariaLabel:aiStrings.toggle_list_repeat},e.createElement(S,null)),M&&e.createElement(ye,{className:"ai-btn ai-btn-playback-rate",onClick:N,ariaLabel:aiStrings.set_playback_rate},e.createElement(e.Fragment,null,"×",f)),Q>0&&e.createElement(e.Fragment,null,e.createElement(ye,{className:"ai-btn ai-btn-skip-position",onClick:function(){return Y(-1)},ariaLabel:aiStrings.skip_backward},"-",Q,"s"),e.createElement(ye,{className:"ai-btn ai-btn-skip-position",onClick:function(){return Y(1)},ariaLabel:aiStrings.skip_forward},"+",Q,"s")),g&&g.lyrics&&!ee&&e.createElement(Lt.Consumer,null,(function(t){var n=t.toggleLyricsModal;return e.createElement(ye,{className:"ai-btn ai-lyrics",onClick:function(){return n(!0,g)},ariaLabel:aiStrings.open_track_lyrics,title:aiStrings.open_track_lyrics},e.createElement(T,null))}))),e.createElement("div",{className:"ai-track-info"},e.createElement("p",{className:"ai-track-title"},e.createElement("span",null,g.title)),(0===n.length||g.subtitle)&&q&&e.createElement("p",{className:"ai-track-subtitle"},e.createElement("span",null,g.subtitle))),e.createElement("div",{className:"ai-audio-controls-meta-right"},e.createElement(pe,{duration:c,position:s,countdown:G}),R&&e.createElement(ye,{className:"ai-btn ai-tracklist-toggle",onClick:function(){te((function(e){return!e}))},ariaLabel:aiStrings.toggle_list_visible},e.createElement(v,null)))))),e.createElement("div",{className:"ai-tracklist-wrap ".concat(ee?"ai-tracklist-open":""),style:{display:ee?"block":"none"}},e.createElement(ue,{className:"ai-tracklist",trackClassName:"ai-track",tracks:n,activeTrackIndex:a,isOpen:ee,displayTrackNo:z,displayCovers:H,displayBuyButtons:V,buyButtonsTarget:W,displayArtistNames:q,reverseTrackOrder:D,limitTracklistHeight:U,tracklistHeight:B,onTrackClick:b,onTrackLoop:A?L:void 0,repeatingTrackIndex:$,playerId:d}),(null==X?void 0:X.length)>0&&e.createElement(at,{buttons:X})))};yt.propTypes=mt;const vt=Qe(yt,{onFinishedPlaying:function(e){var t=e.repeatingTrackIndex,n=e.cycleTracks,r=e.nextTrack,a=e.activeIndex,o=e.playTrack,i=e.trackQueue;null==t?(n||a!==i[i.length-1])&&r():o(t)}});var gt=a(3253),bt=a.n(gt);document.querySelector(".audioigniter-root")&&bt().setAppElement(".audioigniter-root");var kt={isOpen:r().bool,closeModal:r().func.isRequired,children:r().any},wt=function(t){var n=t.isOpen,r=t.closeModal,a=t.children;return e.createElement(bt(),{isOpen:n,closeModal:r,onRequestClose:r,overlayClassName:"ai-modal-overlay",className:"ai-modal"},e.createElement("div",{className:"ai-modal-wrap"},e.createElement("div",{className:"ai-modal-header"},e.createElement("button",{className:"ai-modal-dismiss",type:"button",onClick:r},"×")),e.createElement("div",{className:"ai-modal-content"},a)))};wt.propTypes=kt;const St=wt;var _t=["type"];function Tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Et(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var Lt=(0,e.createContext)(),Nt=function(t){var n=t.type,r=xt(t,_t),a=Pt((0,e.useState)({open:!1,track:null}),2),o=a[0],i=a[1],l=function(e,t){return i((function(n){return Et(Et({},n),{},{track:t,open:e})}))},u=o.track,s=o.open,c="simple"===n?dt:"global-footer"===n?vt:st;return e.createElement(e.Fragment,null,e.createElement(Lt.Provider,{value:{toggleLyricsModal:l}},e.createElement(c,r)),u&&u.lyrics&&e.createElement(St,{isOpen:s,closeModal:function(){return l(!1)}},u&&u.lyrics))};Nt.propTypes={type:r().string};const Mt=Nt;function Rt(){return Rt=Object.assign?Object.assign.bind():function(e){for(var t=1;t{t.r(n),t.d(n,{componentsToDebugString:()=>ce,default:()=>me,getFullscreenElement:()=>j,getScreenFrame:()=>O,hashComponents:()=>ue,isAndroid:()=>I,isChromium:()=>x,isDesktopSafari:()=>M,isEdgeHTML:()=>Y,isGecko:()=>R,isTrident:()=>C,isWebKit:()=>G,load:()=>de,loadSources:()=>X,murmurX64Hash128:()=>fe,prepareForSources:()=>le,sources:()=>ie,transformSource:()=>F});var r=function(){return r=Object.assign||function(e){for(var n,t=1,r=arguments.length;t0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=r+t?(r=a,[4,u(0)]):[3,3]):[3,4];case 2:i.sent(),i.label=3;case 3:return++o,[3,1];case 4:return[2]}}))}))}function m(e){e.then(void 0,(function(){}))}function f(e,n){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],n=[n[0]>>>16,65535&n[0],n[1]>>>16,65535&n[1]];var t=[0,0,0,0];return t[3]+=e[3]+n[3],t[2]+=t[3]>>>16,t[3]&=65535,t[2]+=e[2]+n[2],t[1]+=t[2]>>>16,t[2]&=65535,t[1]+=e[1]+n[1],t[0]+=t[1]>>>16,t[1]&=65535,t[0]+=e[0]+n[0],t[0]&=65535,[t[0]<<16|t[1],t[2]<<16|t[3]]}function h(e,n){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],n=[n[0]>>>16,65535&n[0],n[1]>>>16,65535&n[1]];var t=[0,0,0,0];return t[3]+=e[3]*n[3],t[2]+=t[3]>>>16,t[3]&=65535,t[2]+=e[2]*n[3],t[1]+=t[2]>>>16,t[2]&=65535,t[2]+=e[3]*n[2],t[1]+=t[2]>>>16,t[2]&=65535,t[1]+=e[1]*n[3],t[0]+=t[1]>>>16,t[1]&=65535,t[1]+=e[2]*n[2],t[0]+=t[1]>>>16,t[1]&=65535,t[1]+=e[3]*n[1],t[0]+=t[1]>>>16,t[1]&=65535,t[0]+=e[0]*n[3]+e[1]*n[2]+e[2]*n[1]+e[3]*n[0],t[0]&=65535,[t[0]<<16|t[1],t[2]<<16|t[3]]}function v(e,n){return 32===(n%=64)?[e[1],e[0]]:n<32?[e[0]<>>32-n,e[1]<>>32-n]:(n-=32,[e[1]<>>32-n,e[0]<>>32-n])}function b(e,n){return 0===(n%=64)?e:n<32?[e[0]<>>32-n,e[1]<>>1]),e=p(e=h(e,[4283543511,3981806797]),[0,e[0]>>>1]),e=p(e=h(e,[3301882366,444984403]),[0,e[0]>>>1])}function g(e,n){n=n||0;var t,r=(e=e||"").length%16,o=e.length-r,i=[0,n],a=[0,n],c=[0,0],u=[0,0],l=[2277735313,289559509],s=[1291169091,658871167];for(t=0;t>>0).toString(16)).slice(-8)+("00000000"+(i[1]>>>0).toString(16)).slice(-8)+("00000000"+(a[0]>>>0).toString(16)).slice(-8)+("00000000"+(a[1]>>>0).toString(16)).slice(-8)}function w(e){return parseInt(e)}function L(e){return parseFloat(e)}function k(e,n){return"number"==typeof e&&isNaN(e)?n:e}function V(e){return e.reduce((function(e,n){return e+(n?1:0)}),0)}function Z(e,n){if(void 0===n&&(n=1),Math.abs(n)>=1)return Math.round(e/n)*n;var t=1/n;return Math.round(e*t)/t}function W(e){return e&&"object"==typeof e&&"message"in e?e:{message:e}}function S(e){return"function"!=typeof e}function X(e,n,t){var r=Object.keys(e).filter((function(e){return!function(e,n){for(var t=0,r=e.length;t=4}function Y(){var e=window,n=navigator;return V(["msWriteProfilerMark"in e,"MSStream"in e,"msLaunchUri"in n,"msSaveBlob"in n])>=3&&!C()}function x(){var e=window,n=navigator;return V(["webkitPersistentStorage"in n,"webkitTemporaryStorage"in n,0===n.vendor.indexOf("Google"),"webkitResolveLocalFileSystemURL"in e,"BatteryManager"in e,"webkitMediaStream"in e,"webkitSpeechGrammar"in e])>=5}function G(){var e=window,n=navigator;return V(["ApplePayError"in e,"CSSPrimitiveValue"in e,"Counter"in e,0===n.vendor.indexOf("Apple"),"getStorageUpdates"in n,"WebKitMediaKeys"in e])>=4}function M(){var e=window;return V(["safari"in e,!("DeviceMotionEvent"in e),!("ongestureend"in e),!("standalone"in navigator)])>=3}function R(){var e,n,t=window;return V(["buildID"in navigator,"MozAppearance"in(null!==(n=null===(e=document.documentElement)||void 0===e?void 0:e.style)&&void 0!==n?n:{}),"onmozfullscreenchange"in t,"mozInnerScreenX"in t,"CSSMozDocumentRule"in t,"CanvasCaptureMediaStream"in t])>=4}function j(){var e=document;return e.fullscreenElement||e.msFullscreenElement||e.mozFullScreenElement||e.webkitFullscreenElement||null}function I(){var e=x(),n=R();if(!e&&!n)return!1;var t=window;return V(["onorientationchange"in t,"orientation"in t,e&&!("SharedWorker"in t),n&&/android/i.test(navigator.appVersion)])>=2}function A(e){var n=new Error(e);return n.name=e,n}function J(e,n,t){var r,a,c;return void 0===t&&(t=50),o(this,void 0,void 0,(function(){var o,l;return i(this,(function(i){switch(i.label){case 0:o=document,i.label=1;case 1:return o.body?[3,3]:[4,u(t)];case 2:return i.sent(),[3,1];case 3:l=o.createElement("iframe"),i.label=4;case 4:return i.trys.push([4,,10,11]),[4,new Promise((function(e,t){var r=!1,i=function(){r=!0,e()};l.onload=i,l.onerror=function(e){r=!0,t(e)};var a=l.style;a.setProperty("display","block","important"),a.position="absolute",a.top="0",a.left="0",a.visibility="hidden",n&&"srcdoc"in l?l.srcdoc=n:l.src="about:blank",o.body.appendChild(l);var c=function(){var e,n;r||("complete"===(null===(n=null===(e=l.contentWindow)||void 0===e?void 0:e.document)||void 0===n?void 0:n.readyState)?i():setTimeout(c,10))};c()}))];case 5:i.sent(),i.label=6;case 6:return(null===(a=null===(r=l.contentWindow)||void 0===r?void 0:r.document)||void 0===a?void 0:a.body)?[3,8]:[4,u(t)];case 7:return i.sent(),[3,6];case 8:return[4,e(l,l.contentWindow)];case 9:return[2,i.sent()];case 10:return null===(c=l.parentNode)||void 0===c||c.removeChild(l),[7];case 11:return[2]}}))}))}function H(e){for(var n=function(e){for(var n,t,r="Unexpected syntax '"+e+"'",o=/^\s*([a-z-]*)(.*)$/i.exec(e),i=o[1]||void 0,a={},c=/([.:#][\w-]+|\[.+?\])/gi,u=function(e,n){a[e]=a[e]||[],a[e].push(n)};;){var l=c.exec(o[2]);if(!l)break;var s=l[0];switch(s[0]){case".":u("class",s.slice(1));break;case"#":u("id",s.slice(1));break;case"[":var d=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(s);if(!d)throw new Error(r);u(d[1],null!==(t=null!==(n=d[4])&&void 0!==n?n:d[5])&&void 0!==t?t:"");break;default:throw new Error(r)}}return[i,a]}(e),t=n[0],r=n[1],o=document.createElement(null!=t?t:"div"),i=0,a=Object.keys(r);i.6*t.length}))).sort(),[2,o]}var c}))}))},fontPreferences:function(){return function(e,n){void 0===n&&(n=4e3);return J((function(t,r){var o=r.document,i=o.body,c=i.style;c.width=n+"px",c.webkitTextSizeAdjust=c.textSizeAdjust="none",x()?i.style.zoom=""+1/r.devicePixelRatio:G()&&(i.style.zoom="reset");var u=o.createElement("div");return u.textContent=a(Array(n/20<<0)).map((function(){return"word"})).join(" "),i.appendChild(u),e(o,i)}),'')}((function(e,n){for(var t={},r={},o=0,i=Object.keys(oe);o=3}())return-1;var t=new n(1,5e3,44100),r=t.createOscillator();r.type="triangle",r.frequency.value=1e4;var o=t.createDynamicsCompressor();o.threshold.value=-50,o.knee.value=40,o.ratio.value=12,o.attack.value=0,o.release.value=.25,r.connect(o),o.connect(t.destination),r.start(0);var i=function(e){var n=3,t=500,r=500,o=5e3,i=function(){};return[new Promise((function(a,c){var u=!1,l=0,s=0;e.oncomplete=function(e){return a(e.renderedBuffer)};var d=function(){setTimeout((function(){return c(A("timeout"))}),Math.min(r,s+o-Date.now()))},m=function(){try{switch(e.startRendering(),e.state){case"running":s=Date.now(),u&&d();break;case"suspended":document.hidden||l++,u&&l>=n?c(A("suspended")):setTimeout(m,t)}}catch(e){c(e)}};m(),i=function(){u||(u=!0,s>0&&d())}})),i]}(t),a=i[0],c=i[1],u=a.then((function(e){return function(e){for(var n=0,t=0;t=3||t.push(n.languages);else if("string"==typeof n.languages){var o=n.languages;o&&t.push(o.split(","))}return t},colorDepth:function(){return window.screen.colorDepth},deviceMemory:function(){return k(L(navigator.deviceMemory),void 0)},screenResolution:function(){var e=screen,n=function(e){return k(w(e),null)},t=[n(e.width),n(e.height)];return t.sort().reverse(),t},hardwareConcurrency:function(){return k(w(navigator.hardwareConcurrency),void 0)},timezone:function(){var e,n=null===(e=window.Intl)||void 0===e?void 0:e.DateTimeFormat;if(n){var t=(new n).resolvedOptions().timeZone;if(t)return t}var r,o=(r=(new Date).getFullYear(),-Math.max(L(new Date(r,0,1).getTimezoneOffset()),L(new Date(r,6,1).getTimezoneOffset())));return"UTC"+(o>=0?"+":"")+Math.abs(o)},sessionStorage:function(){try{return!!window.sessionStorage}catch(e){return!0}},localStorage:function(){try{return!!window.localStorage}catch(e){return!0}},indexedDB:function(){if(!C()&&!Y())try{return!!window.indexedDB}catch(e){return!0}},openDatabase:function(){return!!window.openDatabase},cpuClass:function(){return navigator.cpuClass},platform:function(){var e=navigator.platform;return"MacIntel"===e&&G()&&!M()?function(){if("iPad"===navigator.platform)return!0;var e=screen,n=e.width/e.height;return V(["MediaSource"in window,!!Element.prototype.webkitRequestFullscreen,n>.65&&n<1.53])>=2}()?"iPad":"iPhone":e},plugins:function(){var e=navigator.plugins;if(e){for(var n=[],t=0;t=.001))try{var e=new XMLHttpRequest;e.open("get","https://m1.openfpcdn.io/fingerprintjs/v3.3.6/npm-monitoring",!0),e.send()}catch(e){console.error(e)}}(),[4,le(t)];case 1:return e.sent(),[2,se(X(ie,{debug:r},[]),r)]}}))}))}var me={load:de,hashComponents:ue,componentsToDebugString:ce},fe=g}}]);
\ No newline at end of file
diff --git a/wp-content/plugins/audioigniter/player/build/index.html b/wp-content/plugins/audioigniter/player/build/index.html
index ff10c654..fa990639 100644
--- a/wp-content/plugins/audioigniter/player/build/index.html
+++ b/wp-content/plugins/audioigniter/player/build/index.html
@@ -1,6 +1,6 @@
AudioIgniter
{playerButtons?.length > 0 &&
}
diff --git a/wp-content/plugins/audioigniter/player/src/player/Player.js b/wp-content/plugins/audioigniter/player/src/player/Player.js
index 43fcc092..76e9f3a4 100644
--- a/wp-content/plugins/audioigniter/player/src/player/Player.js
+++ b/wp-content/plugins/audioigniter/player/src/player/Player.js
@@ -80,10 +80,12 @@ const propTypes = {
icon: PropTypes.string,
}).isRequired,
),
+ playerId: PropTypes.string,
};
const Player = ({
tracks,
+ playerId,
playStatus,
activeIndex,
volume,
@@ -345,6 +347,7 @@ const Player = ({
onTrackClick={playTrack}
onTrackLoop={allowTrackLoop ? setTrackCycling : undefined}
repeatingTrackIndex={repeatingTrackIndex}
+ playerId={playerId}
/>
diff --git a/wp-content/plugins/audioigniter/player/src/player/SimplePlayer.js b/wp-content/plugins/audioigniter/player/src/player/SimplePlayer.js
index 069a1878..c8920077 100644
--- a/wp-content/plugins/audioigniter/player/src/player/SimplePlayer.js
+++ b/wp-content/plugins/audioigniter/player/src/player/SimplePlayer.js
@@ -10,6 +10,7 @@ import PlayerButtons from './components/PlayerButtons';
const propTypes = {
tracks: PropTypes.arrayOf(PropTypes.object),
+ playerId: PropTypes.string,
playStatus: PropTypes.oneOf([
Sound.status.PLAYING,
Sound.status.PAUSED,
@@ -82,6 +83,7 @@ const SimplePlayer = props => {
setPlaybackRate={props.setPlaybackRate}
allowPlaybackRate={props.allowPlaybackRate}
buffering={props.buffering}
+ playerId={props.playerId}
/>
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/Time.js b/wp-content/plugins/audioigniter/player/src/player/components/Time.js
index 31b3bc73..7b5746a5 100644
--- a/wp-content/plugins/audioigniter/player/src/player/components/Time.js
+++ b/wp-content/plugins/audioigniter/player/src/player/components/Time.js
@@ -16,6 +16,10 @@ const Time = ({ countdown, position, duration }) => {
* @returns {string} - Time pretty formatted
*/
const renderFormattedTime = () => {
+ if (!duration) {
+ return '00:00';
+ }
+
const positionInSeconds = showRemaining
? (duration - position) / 1000
: position / 1000;
@@ -27,7 +31,7 @@ const Time = ({ countdown, position, duration }) => {
min = min >= 10 ? min : `0${min}`;
sec = sec >= 10 ? sec : `0${sec}`;
- if (!Number.isNaN(sec)) {
+ if (Number.isInteger(parseInt(sec, 10))) {
if (hours) {
time = `${hours}:${min}:${sec}`;
} else {
@@ -39,6 +43,10 @@ const Time = ({ countdown, position, duration }) => {
};
const handleClick = () => {
+ if (!duration) {
+ return;
+ }
+
setShowRemaining(x => !x);
};
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/Track.js b/wp-content/plugins/audioigniter/player/src/player/components/Track.js
index 54151e2c..8edc3914 100644
--- a/wp-content/plugins/audioigniter/player/src/player/components/Track.js
+++ b/wp-content/plugins/audioigniter/player/src/player/components/Track.js
@@ -46,6 +46,7 @@ const propTypes = {
setPlaybackRate: PropTypes.func,
allowPlaybackRate: PropTypes.bool,
buffering: PropTypes.bool,
+ playerId: PropTypes.string,
};
const Track = ({
@@ -70,6 +71,7 @@ const Track = ({
setPlaybackRate,
allowPlaybackRate,
buffering,
+ playerId,
}) => {
const { toggleLyricsModal } = useContext(AppContext);
const isPlaying = isActive && playStatus === Sound.status.PLAYING;
@@ -125,6 +127,7 @@ const Track = ({
{hasProgressBar && (
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/TrackButtons.js b/wp-content/plugins/audioigniter/player/src/player/components/TrackButtons.js
index 487b9be8..9d13d8e3 100644
--- a/wp-content/plugins/audioigniter/player/src/player/components/TrackButtons.js
+++ b/wp-content/plugins/audioigniter/player/src/player/components/TrackButtons.js
@@ -2,6 +2,7 @@ import React from 'react';
import PropTypes from 'prop-types';
import { CartIcon, DownloadIcon, LyricsIcon, RefreshIcon } from './Icons';
+import events, { EVENT, normalizePlayerId } from '../services/events';
const propTypes = {
buyButtonsTarget: PropTypes.bool,
@@ -16,6 +17,10 @@ const propTypes = {
setPlaybackRate: PropTypes.func,
allowPlaybackRate: PropTypes.bool,
isPlaying: PropTypes.bool,
+ track: PropTypes.shape({
+ audio: PropTypes.string.isRequired,
+ }).isRequired,
+ playerId: PropTypes.string,
};
const TrackButtons = ({
@@ -31,6 +36,8 @@ const TrackButtons = ({
playbackRate,
allowPlaybackRate,
isPlaying,
+ track,
+ playerId,
}) => {
if (
buyUrl == null &&
@@ -64,6 +71,13 @@ const TrackButtons = ({
download={downloadFilename}
className="ai-track-btn"
role="button"
+ onClick={() => {
+ events.eventTrack({
+ event: EVENT.DOWNLOAD,
+ trackUrl: track.audio,
+ playerId: normalizePlayerId(playerId),
+ });
+ }}
aria-label={aiStrings.download_track}
title={aiStrings.download_track}
>
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/Tracklist.js b/wp-content/plugins/audioigniter/player/src/player/components/Tracklist.js
index b27c6023..3f889ee0 100644
--- a/wp-content/plugins/audioigniter/player/src/player/components/Tracklist.js
+++ b/wp-content/plugins/audioigniter/player/src/player/components/Tracklist.js
@@ -31,6 +31,7 @@ const propTypes = {
allowPlaybackRate: PropTypes.bool,
buffering: PropTypes.bool,
repeatingTrackIndex: PropTypes.bool,
+ playerId: PropTypes.string,
};
const Tracklist = ({ ...props }) => {
@@ -69,6 +70,7 @@ const Tracklist = ({ ...props }) => {
setPlaybackRate={props.setPlaybackRate}
allowPlaybackRate={props.allowPlaybackRate}
buffering={props.buffering}
+ playerId={props.playerId}
/>
);
})}
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/TracklistWrap.js b/wp-content/plugins/audioigniter/player/src/player/components/TracklistWrap.js
index e4857a8e..ef62e2a4 100644
--- a/wp-content/plugins/audioigniter/player/src/player/components/TracklistWrap.js
+++ b/wp-content/plugins/audioigniter/player/src/player/components/TracklistWrap.js
@@ -21,6 +21,7 @@ const propTypes = {
displayArtistNames: PropTypes.bool,
onTrackLoop: PropTypes.func,
repeatingTrackIndex: PropTypes.number,
+ playerId: PropTypes.string,
};
const TracklistWrap = ({
@@ -40,6 +41,7 @@ const TracklistWrap = ({
displayCovers,
displayArtistNames,
repeatingTrackIndex,
+ playerId,
}) => {
const scrollbarRef = useRef(null);
@@ -82,6 +84,7 @@ const TracklistWrap = ({
displayArtistNames={displayArtistNames}
onTrackLoop={onTrackLoop}
repeatingTrackIndex={repeatingTrackIndex}
+ playerId={playerId}
/>
);
};
diff --git a/wp-content/plugins/audioigniter/player/src/player/components/WaveformProgressBar.js b/wp-content/plugins/audioigniter/player/src/player/components/WaveformProgressBar.js
deleted file mode 100644
index 6b3e8bf1..00000000
--- a/wp-content/plugins/audioigniter/player/src/player/components/WaveformProgressBar.js
+++ /dev/null
@@ -1,82 +0,0 @@
-import React, { useRef, useEffect } from 'react';
-import PropTypes from 'prop-types';
-import WaveSurfer from 'wavesurfer.js';
-
-const propTypes = {
- position: PropTypes.number.isRequired,
- duration: PropTypes.number.isRequired,
- audio: PropTypes.string,
- setPosition: PropTypes.func.isRequired,
-};
-
-const WaveformProgressBar = ({ audio, position, duration, setPosition }) => {
- const waveFormDomRef = useRef(null);
- const wavesurfer = useRef(null);
-
- useEffect(() => {
- if (waveFormDomRef.current && audio) {
- wavesurfer.current = WaveSurfer.create({
- container: waveFormDomRef.current,
- mediaControls: false,
- height: 40,
- barWidth: 2,
- barGap: 2,
- barRadius: 3,
- responsive: true,
- cursorWidth: 0,
- backgroundColor: 'transparent',
- progressColor: '#f70f5d',
- waveColor: '#fff',
- xhr: {
- mode: 'no-cors',
- },
- });
- wavesurfer.current.load(audio);
- wavesurfer.current.on('ready', () => {
- console.log('wavesurfer loaded');
- });
- }
-
- return () => {
- if (wavesurfer.current) {
- wavesurfer.current.destroy();
- }
- };
- }, [audio, waveFormDomRef.current]);
-
- useEffect(() => {
- // Sync wavesurfer with current playing position
- const progress = position / duration;
-
- if (wavesurfer.current && !Number.isNaN(progress)) {
- wavesurfer.current.seekTo(progress || 0);
- }
- }, [position]);
-
- const handleClick = event => {
- if (setPosition == null) {
- return;
- }
-
- const offsetX =
- event.pageX - event.currentTarget.getBoundingClientRect().left;
- const posX = offsetX / event.currentTarget.offsetWidth;
-
- setPosition(posX * duration);
- };
-
- if (!audio) {
- return null;
- }
-
- return (
-
- );
-};
-
-WaveformProgressBar.propTypes = propTypes;
-
-export default WaveformProgressBar;
diff --git a/wp-content/plugins/audioigniter/player/src/player/services/events.js b/wp-content/plugins/audioigniter/player/src/player/services/events.js
new file mode 100644
index 00000000..268648c9
--- /dev/null
+++ b/wp-content/plugins/audioigniter/player/src/player/services/events.js
@@ -0,0 +1,144 @@
+/* global aiStats */
+
+import isStreamTrack from '../../utils/isStreamTrack';
+
+/**
+ * @enum EVENT
+ * @type {{PAUSE: string, PLAY: string, STOP: string, DOWNLOAD: string, SEEK: string}}
+ */
+export const EVENT = {
+ PLAY: 'PLAY',
+ PLAYING: 'PLAYING',
+ PAUSE: 'PAUSE',
+ STOP: 'STOP',
+ SEEK: 'SEEK',
+ DOWNLOAD: 'DOWNLOAD',
+};
+
+/**
+ * Normalizes a player ID.
+ *
+ * @param {String} playerId The player ID
+ * @returns {string|null}
+ */
+export const normalizePlayerId = playerId => {
+ return playerId?.replace('audioigniter-', '') ?? null;
+};
+
+/**
+ * Takes state and props from soundProvider and returns the formatted event data.
+ * @param state
+ * @param props
+ * @returns {{duration, position, trackUrl: *, playerId: *}}
+ */
+export const getEventMeta = (state, props) => {
+ const { activeIndex, tracks, position, duration } = state;
+ const { playerId } = props;
+ const track = tracks[activeIndex];
+ const { title, subtitle, audio } = track ?? {};
+
+ return {
+ trackUrl: audio,
+ // trackName: subtitle ? `${title} - ${subtitle}` : title,
+ trackTitle: title,
+ trackArtist: subtitle ?? '',
+ playerId: normalizePlayerId(playerId),
+ position,
+ duration,
+ isStream: isStreamTrack(audio),
+ };
+};
+
+class AudioIgniterEvents {
+ constructor() {
+ this.clientId = null;
+ this.queue = [];
+
+ if (!window.aiStats?.enabled) {
+ return;
+ }
+
+ this.eventQueueTimer();
+ this.initializeFingerprint();
+
+ // Flush the entire queue when the user ends their session.
+ window.addEventListener('visibilitychange', () => {
+ if (document.visibilityState === 'hidden') {
+ this.eventQueueFlush();
+ }
+ });
+ }
+
+ initializeFingerprint = async () => {
+ const FingerprintJS = await import(/* webpackChunkName: "fingerprintjs" */ '@fingerprintjs/fingerprintjs');
+ const fingerprint = await FingerprintJS.load();
+ const result = await fingerprint.get();
+ this.clientId = result.visitorId;
+ };
+
+ fetch = async () => {
+ const headers = {
+ type: 'application/json',
+ };
+ const blob = new Blob([JSON.stringify(this.queue)], headers);
+ navigator.sendBeacon(`${aiStats.apiUrl}/log`, blob);
+ };
+
+ eventQueueTimer = () => {
+ setInterval(() => {
+ if (this.queue.length > 0) {
+ this.eventQueueFlush();
+ }
+ }, 15000);
+ };
+
+ eventQueueFlush = async () => {
+ await this.fetch();
+ this.queue = [];
+ };
+
+ eventTrack = ({
+ event,
+ trackUrl,
+ // trackName,
+ trackTitle,
+ trackArtist,
+ playerId,
+ position,
+ oldPosition,
+ duration,
+ isStream,
+ }) => {
+ if (!window.aiStats?.enabled) {
+ return;
+ }
+
+ // Failsafe for multi sound pausing, some tracks
+ // can be paused before they start due to external
+ // soundManager pausing (see playTrack event in soundProvider.js).
+ if (event === EVENT.PAUSE && position === 0) {
+ return;
+ }
+
+ this.queue.push({
+ event,
+ track_url: trackUrl,
+ // track_name: trackName,
+ track_title: trackTitle,
+ track_artist: trackArtist,
+ playlist_id: parseInt(playerId, 10),
+ timestamp: new Date().getTime(),
+ referrer_url: window.location.href,
+ event_data: {
+ position: Math.floor(position / 1000) ?? null,
+ old_position:
+ oldPosition != null ? Math.floor(oldPosition / 1000) : null,
+ duration: duration ? Math.floor(duration / 1000) : null,
+ },
+ client_fingerprint: this.clientId,
+ is_stream: isStream,
+ });
+ };
+}
+
+export default new AudioIgniterEvents();
diff --git a/wp-content/plugins/audioigniter/player/src/player/soundProvider.js b/wp-content/plugins/audioigniter/player/src/player/soundProvider.js
index 8b724866..f8c5d62d 100644
--- a/wp-content/plugins/audioigniter/player/src/player/soundProvider.js
+++ b/wp-content/plugins/audioigniter/player/src/player/soundProvider.js
@@ -6,6 +6,8 @@ import SoundCloud from '../utils/soundcloud';
import multiSoundDisabled from '../utils/multi-sound-disabled';
import { getInitialTrackQueueAndIndex } from '../utils/getInitialTrackIndex';
import playerStorage from '../utils/playerStorage';
+import aiEvents, { EVENT, getEventMeta } from './services/events';
+import throttle from '../utils/throttle';
const PLAYBACK_RATES = [0.5, 0.75, 1, 1.25, 1.5, 2, 3];
@@ -61,6 +63,9 @@ const soundProvider = (Player, events) => {
this.getFinalProps = this.getFinalProps.bind(this);
this.onPlaying = this.onPlaying.bind(this);
this.onFinishedPlaying = this.onFinishedPlaying.bind(this);
+ this.aiEventTrackThrottled = throttle(options => {
+ aiEvents.eventTrack(options);
+ }, 60 * 1000);
}
componentDidMount() {
@@ -166,6 +171,14 @@ const soundProvider = (Player, events) => {
const { activeIndex } = this.state;
const { playerId, rememberLastPosition } = this.props;
+ if (position > 60000) {
+ // Only start calling this after 1 minute into the track
+ this.aiEventTrackThrottled({
+ event: EVENT.PLAYING,
+ ...getEventMeta(this.state, this.props),
+ });
+ }
+
this.setState(
() => ({ duration, position }),
() => {
@@ -173,8 +186,12 @@ const soundProvider = (Player, events) => {
events.onPlaying(this.getFinalProps());
}
- // Store last position every 5 seconds
- if (playerId && rememberLastPosition && position % 5000 < 300) {
+ if (
+ playerId &&
+ rememberLastPosition &&
+ // Store last position on every 5th second or at the beginning of the track (tiny position num).
+ (position % 5000 < 300 || position < 350)
+ ) {
playerStorage.set(playerId, {
position,
activeIndex,
@@ -187,7 +204,15 @@ const soundProvider = (Player, events) => {
onFinishedPlaying() {
const { stopOnTrackFinish, delayBetweenTracks = 0 } = this.props;
const delayBetweenTracksMs = delayBetweenTracks * 1000;
- this.setState(() => ({ playStatus: Sound.status.STOPPED }));
+ this.setState(
+ () => ({ playStatus: Sound.status.STOPPED }),
+ () => {
+ aiEvents.eventTrack({
+ event: EVENT.STOP,
+ ...getEventMeta(this.state, this.props),
+ });
+ },
+ );
if (stopOnTrackFinish) {
return;
@@ -228,7 +253,18 @@ const soundProvider = (Player, events) => {
}
setPosition(position) {
- this.setState(() => ({ position }));
+ const currentPosition = this.state.position;
+
+ this.setState(
+ () => ({ position }),
+ () => {
+ aiEvents.eventTrack({
+ event: EVENT.SEEK,
+ ...getEventMeta(this.state, this.props),
+ oldPosition: currentPosition,
+ });
+ },
+ );
}
setTrackCycling(index, event) {
@@ -312,19 +348,44 @@ const soundProvider = (Player, events) => {
event.preventDefault();
}
- const { repeatingTrackIndex, isMultiSoundDisabled } = this.state;
+ const {
+ repeatingTrackIndex,
+ isMultiSoundDisabled,
+ playStatus,
+ } = this.state;
if (isMultiSoundDisabled) {
window.soundManager.pauseAll();
}
- this.setState(() => ({
- activeIndex: index,
- position: 0,
- playStatus: Sound.status.PLAYING,
- }));
+ if (playStatus === Sound.status.PLAYING) {
+ aiEvents.eventTrack({
+ event: EVENT.STOP,
+ ...getEventMeta(this.state, this.props),
+ });
+ }
- // Reset repating track index if the track is not the active one.
+ this.setState(
+ () => ({
+ activeIndex: index,
+ position: 0,
+ playStatus: Sound.status.PLAYING,
+ }),
+ () => {
+ aiEvents.eventTrack({
+ event: EVENT.PLAY,
+ ...getEventMeta(
+ {
+ ...this.state,
+ duration: null,
+ },
+ this.props,
+ ),
+ });
+ },
+ );
+
+ // Reset repeating track index if the track is not the active one.
if (index !== repeatingTrackIndex && repeatingTrackIndex != null) {
this.setTrackCycling(null);
}
@@ -338,7 +399,15 @@ const soundProvider = (Player, events) => {
const { playStatus } = this.state;
if (playStatus === Sound.status.PLAYING) {
- this.setState(() => ({ playStatus: Sound.status.PAUSED }));
+ this.setState(
+ () => ({ playStatus: Sound.status.PAUSED }),
+ () => {
+ aiEvents.eventTrack({
+ event: EVENT.PAUSE,
+ ...getEventMeta(this.state, this.props),
+ });
+ },
+ );
}
}
@@ -354,18 +423,29 @@ const soundProvider = (Player, events) => {
return;
}
- this.setState(({ playStatus, isMultiSoundDisabled }) => {
- if (playStatus !== Sound.status.PLAYING && isMultiSoundDisabled) {
- window.soundManager.pauseAll();
- }
+ this.setState(
+ ({ playStatus, isMultiSoundDisabled }) => {
+ if (playStatus !== Sound.status.PLAYING && isMultiSoundDisabled) {
+ window.soundManager.pauseAll();
+ }
- return {
- playStatus:
- playStatus === Sound.status.PLAYING
- ? Sound.status.PAUSED
- : Sound.status.PLAYING,
- };
- });
+ return {
+ playStatus:
+ playStatus === Sound.status.PLAYING
+ ? Sound.status.PAUSED
+ : Sound.status.PLAYING,
+ };
+ },
+ () => {
+ aiEvents.eventTrack({
+ event:
+ this.state.playStatus === Sound.status.PLAYING
+ ? EVENT.PLAY
+ : EVENT.PAUSE,
+ ...getEventMeta(this.state, this.props),
+ });
+ },
+ );
}
nextTrack() {
diff --git a/wp-content/plugins/audioigniter/player/src/utils/isStreamTrack.js b/wp-content/plugins/audioigniter/player/src/utils/isStreamTrack.js
new file mode 100644
index 00000000..fc0de787
--- /dev/null
+++ b/wp-content/plugins/audioigniter/player/src/utils/isStreamTrack.js
@@ -0,0 +1,12 @@
+/**
+ * Determines whether a given url is that of a stream or not.
+ *
+ * @param {string} url The url.
+ * @returns {boolean}
+ */
+const isStreamTrack = url => {
+ const extensions = ['.mp3', '.flac', '.amr', '.aac', '.oga', '.wav', '.wma'];
+ return !extensions.some(extension => url.includes(extension));
+};
+
+export default isStreamTrack;
diff --git a/wp-content/plugins/audioigniter/player/src/utils/throttle.js b/wp-content/plugins/audioigniter/player/src/utils/throttle.js
new file mode 100644
index 00000000..b7a05bcc
--- /dev/null
+++ b/wp-content/plugins/audioigniter/player/src/utils/throttle.js
@@ -0,0 +1,21 @@
+/**
+ * Simple throttling function.
+ *
+ * @param {Function} fn The function to throttle.
+ * @param {number} limit The limit in milliseconds.
+ * @returns {(function(*): void)|*}
+ */
+const throttle = (fn, limit) => {
+ let waiting = false;
+ return function throttleCallback(...args) {
+ if (!waiting) {
+ fn.apply(this, args);
+ waiting = true;
+ setTimeout(() => {
+ waiting = false;
+ }, limit);
+ }
+ };
+};
+
+export default throttle;
diff --git a/wp-content/plugins/audioigniter/player/styles/style.scss b/wp-content/plugins/audioigniter/player/styles/style.scss
index e460a85b..0fb14d45 100644
--- a/wp-content/plugins/audioigniter/player/styles/style.scss
+++ b/wp-content/plugins/audioigniter/player/styles/style.scss
@@ -255,18 +255,6 @@ $screen-xs-max: 320px !default;
}
}
- .ai-waveform-bar {
- display: block;
- flex: 1;
- position: relative;
- height: 30px;
- cursor: pointer;
- }
-
- .ai-waveform {
- pointer-events: none;
- }
-
.ai-track-time {
flex: none;
font-size: 13px;
diff --git a/wp-content/plugins/audioigniter/player/yarn.lock b/wp-content/plugins/audioigniter/player/yarn.lock
index d029c0d8..f321ffc9 100644
--- a/wp-content/plugins/audioigniter/player/yarn.lock
+++ b/wp-content/plugins/audioigniter/player/yarn.lock
@@ -1011,6 +1011,13 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
+"@fingerprintjs/fingerprintjs@^3.3.6":
+ version "3.3.6"
+ resolved "https://registry.yarnpkg.com/@fingerprintjs/fingerprintjs/-/fingerprintjs-3.3.6.tgz#4c3f1726dc0cb10b915cfce78d9471b38cd809bd"
+ integrity sha512-Inh0OoFVzO2PLvrUF8RZhY9NVDdg9DJHQ5YlvXhrGtQxSPzy2smS3TWzLAi+zlHSJNHSvi+1zYayLen2lGxjdA==
+ dependencies:
+ tslib "^2.0.1"
+
"@humanwhocodes/config-array@^0.9.2":
version "0.9.5"
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7"
@@ -5290,7 +5297,7 @@ tsconfig-paths@^3.14.1:
minimist "^1.2.6"
strip-bom "^3.0.0"
-tslib@^2.0.3:
+tslib@^2.0.1, tslib@^2.0.3:
version "2.4.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
diff --git a/wp-content/plugins/audioigniter/readme.txt b/wp-content/plugins/audioigniter/readme.txt
index b6f9543a..146ac292 100644
--- a/wp-content/plugins/audioigniter/readme.txt
+++ b/wp-content/plugins/audioigniter/readme.txt
@@ -2,8 +2,8 @@
Contributors: cssigniterteam, anastis, silencerius, tsiger
Tags: audio, podcast, audio player, html5 player, mp3 player, music player, music, radio stream, radio player, sound player, player, podcast player
Requires at least: 5.0
-Tested up to: 6.0
-Stable tag: 1.9.0
+Tested up to: 6.2
+Stable tag: 2.0.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -88,16 +88,19 @@ A [Pro version](https://www.cssigniter.com/plugins/audioigniter) is also availab
* Sync download URL with audio URL automatically
* Standalone shortcode for single tracks (without the need to create a playlist)
* Remember last played track and position
+* Per-playlist and per-track analytics
**PREMIUM SUPPORT**
You can expect the same level of support for both the free and pro version of our plugin. Average response time: 24 hours.
+**JOIN OUR COMMUNITY**
+Join our [Facebook group](https://www.facebook.com/groups/2601788933169108) to discuss new features and stay up to date on our latest releases.
== Installation ==
1. Upload the plugin files to the `/wp-content/plugins/audioigniter` directory, or install the plugin through the WordPress plugins screen directly.
2. Activate the plugin through the "Plugins" screen in WordPress
-3. In the WordPress admin dashboard you should see a new post type named "Playlists"
-4. Navigate to the new Playlists post type and add your tracks!
+3. In the WordPress admin dashboard you should see a new top level menu named "AudioIgniter"
+4. Navigate to the Add New Playlist menu item and add your tracks!
== Screenshots ==
1. The AudioIgniter player
@@ -106,6 +109,14 @@ You can expect the same level of support for both the free and pro version of ou
== Changelog ==
+= 2.0.0 =
+* Added AudioIgniter top level menu.
+* Fixed an issue where downloaded tracks would get the full URL as a filename, when the "Use the track URL as the download URL" was checked.
+* Fixed an issue with the "Remember last position" the moment a track starts playing.
+* Fixed an issue where the duration as a countdown would show weird format in some cases.
+* Added base support so that the Shuffle button can now be displayed without being enabled/on by default (Pro feature).
+* Added base support for AudioIgniter Analytics (Pro feature).
+
= 1.9.0 =
* Fixed a JavaScript error in the admin when selecting an image without thumbnails.
* Show the playlist shortcode metabox on the side.
diff --git a/wp-content/plugins/audioigniter/uninstall.php b/wp-content/plugins/audioigniter/uninstall.php
index 0a259ad6..0b367dc6 100644
--- a/wp-content/plugins/audioigniter/uninstall.php
+++ b/wp-content/plugins/audioigniter/uninstall.php
@@ -1,11 +1,10 @@