index.d78ba9.bundle.js 40 KB

12
  1. (()=>{"use strict";var t,e={322:(t,e,n)=>{n.r(e);var s=n(531),a=n(152),o=n(687),i=n.n(o),r=n(955),c=n(755);function l(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return u(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var s=0,a=function(){};return{s:a,n:function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}},e:function(t){throw t},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,r=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return i=t.done,t},e:function(t){r=!0,o=t},f:function(){try{i||null==n.return||n.return()}finally{if(r)throw o}}}}function u(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,s=new Array(e);n<e;n++)s[n]=t[n];return s}var d=n(492),h=n(702).Promise;function f(){var t=p(r.Z.get("show-nvs"));c("input#show-nvs")[0].checked=t,c("input#show-nvs")[0].checked||B?c('*[href*="-nvs"]').show():c('*[href*="-nvs"]').hide()}function p(t){return null!=t&&"string"==typeof t&&t.match("[Yy1]")}window.bootstrap=n(138),String.prototype.format||Object.assign(String.prototype,{format:function(){var t=arguments;return this.replace(/{(\d+)}/g,(function(e,n){return void 0!==t[n]?t[n]:e}))}}),String.prototype.encodeHTML||Object.assign(String.prototype,{encodeHTML:function(){return d.encode(this).replace(/\n/g,"<br />")}}),Object.assign(Date.prototype,{toLocalShort:function(){return this.toLocaleString(void 0,{dateStyle:"short",timeStyle:"short"})}});var m=1,g=17,v=2,b=18,S=4,y=20,_=8,w=24,T={bt_playing:"media_bluetooth_on",bt_disconnected:"media_bluetooth_off",bt_neutral:"bluetooth",bt_connecting:"bluetooth_searching",bt_connected:"bluetooth_connected",bt_disabled:"bluetooth_disabled",play_arrow:"play_circle_filled",pause:"pause_circle",stop:"stop_circle","":""},E=[{icon:"battery_0_bar",ranges:[{f:5.8,t:6.8},{f:8.8,t:10.2}]},{icon:"battery_2_bar",ranges:[{f:6.8,t:7.4},{f:10.2,t:11.1}]},{icon:"battery_3_bar",ranges:[{f:7.4,t:7.5},{f:11.1,t:11.25}]},{icon:"battery_4_bar",ranges:[{f:7.5,t:7.8},{f:11.25,t:11.7}]}],A=[{desc:"Idle",sub:["bt_neutral"]},{desc:"Discovering",sub:["bt_connecting"]},{desc:"Discovered",sub:["bt_connecting"]},{desc:"Unconnected",sub:["bt_disconnected"]},{desc:"Connecting",sub:["bt_connecting"]},{desc:"Connected",sub:["bt_connected","play_arrow","bt_playing","pause","stop"]},{desc:"Disconnecting",sub:["bt_disconnected"]}],O={MESSAGING_INFO:"badge-success",MESSAGING_WARNING:"badge-warning",MESSAGING_ERROR:"badge-danger"},N=0,k=1,x=3,R=4,C=5,I={0:"eRunning",1:"eReady",2:"eBlocked",3:"eSuspended",4:"eDeleted"},G={NONE:0,REBOOT_TO_RECOVERY:2,SET_FWURL:5,FLASHING:6,DONE:7,UPLOADING:8,ERROR:9,UPLOADCOMPLETE:10,_state:-1,olderRecovery:!1,statusText:"",flashURL:"",flashFileName:"",statusPercent:0,Completed:!1,recovery:!1,prevRecovery:!1,updateModal:new bootstrap.Modal(document.getElementById("otadiv"),{}),reset:function(){return this.olderRecovery=!1,this.statusText="",this.statusPercent=-1,this.flashURL="",this.flashFileName=void 0,this.UpdateProgress(),c("#rTable tr.release").removeClass("table-success table-warning"),c(".flact").prop("disabled",!1),c("#flashfilename").value=null,c("#fw-url-input").value=null,this.isStateError()||(c("span#flash-status").html(""),c("#fwProgressLabel").parent().removeClass("bg-danger")),this._state=this.NONE,this},isStateUploadComplete:function(){return this._state==this.UPLOADCOMPLETE},isStateError:function(){return this._state==this.ERROR},isStateNone:function(){return this._state==this.NONE},isStateRebootRecovery:function(){return this._state==this.REBOOT_TO_RECOVERY},isStateSetUrl:function(){return this._state==this.SET_FWURL},isStateFlashing:function(){return this._state==this.FLASHING},isStateDone:function(){return this._state==this.DONE},isStateUploading:function(){return this._state==this.UPLOADING},init:function(){return this._state=this.NONE,this},SetStateError:function(){return this._state=this.ERROR,c("#fwProgressLabel").parent().addClass("bg-danger"),this},SetStateNone:function(){return this._state=this.NONE,this},SetStateRebootRecovery:function(){return this._state=this.REBOOT_TO_RECOVERY,this.SetStatusText("Starting recovery mode."),c.ajax({url:"/recovery.json",context:this,dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify({timestamp:Date.now()}),error:function(t,e,n){var s;this.setOTAError("Unexpected error while trying to restart to recovery. (status=".concat(null!==(s=t.status)&&void 0!==s?s:"",", error=").concat(null!=n?n:""," ) "))},complete:function(t){this.SetStatusText("Waiting for system to boot.")}}),this},SetStateSetUrl:function(){return this._state=this.SET_FWURL,this.statusText="Sending firmware download location.",U({fwurl:{value:this.flashURL,type:33}}),this},SetStateFlashing:function(){return this._state=this.FLASHING,this},SetStateDone:function(){return this._state=this.DONE,this.reset(),this},SetStateUploading:function(){return this._state=this.UPLOADING,this.SetStatusText("Sending file to device.")},SetStateUploadComplete:function(){return this._state=this.UPLOADCOMPLETE,this},isFlashExecuting:function(){return!0==(this._state!=this.UPLOADING&&(""!==this.statusText||this.statusPercent>=0))},toString:function(){var t=this;return Object.keys(this).find((function(e){return t[e]===t._state}))},setOTATargets:function(){this.flashURL="",this.flashFileName="",this.flashURL=c("#fw-url-input").val();var t=c("#flashfilename")[0].files;return t.length>0&&(this.flashFileName=t[0]),0==this.flashFileName.length&&0==this.flashURL.length&&this.setOTAError("Invalid url or file. Cannot start OTA"),this},setOTAError:function(t){return this.SetStateError().SetStatusPercent(0).SetStatusText(t).reset(),this},ShowDialog:function(){return this.isStateNone()||(this.updateModal.show(),c(".flact").prop("disabled",!0)),this},SetStatusPercent:function(t){var e=this.statusPercent!=t;return this.statusPercent=t,e&&(this.isStateUploading()||this.isStateFlashing()||this.SetStateFlashing(),100==t&&(this.isStateFlashing()?this.SetStateDone():this.isStateUploading()&&(this.statusPercent=0,this.SetStateFlashing())),this.UpdateProgress().ShowDialog()),this},SetStatusText:function(t){var e=this.statusText!=t;return this.statusText=t,e&&(c("span#flash-status").html(this.statusText),this.ShowDialog()),this},UpdateProgress:function(){return c(".progress-bar").css("width",this.statusPercent+"%").attr("aria-valuenow",this.statusPercent).text(this.statusPercent+"%"),c(".progress-bar").html((this.isStateDone()?100:this.statusPercent)+"%"),this},StartOTA:function(){return this.logEvent(this.StartOTA.name),c("#fwProgressLabel").parent().removeClass("bg-danger"),this.setOTATargets(),this.isStateError()||(B?this.SetStateFlashing().TargetReadyStartOTA():this.SetStateRebootRecovery()),this},UploadLocalFile:function(){this.SetStateUploading();var t=new XMLHttpRequest;t.context=this;var e=this.HandleUploadProgressEvent.bind(this),n=this.setOTAError.bind(this);t.upload.addEventListener("progress",e,!1),t.onreadystatechange=function(){4===t.readyState&&(0!==t.status&&404!==t.status||n("Upload Failed. Recovery version might not support uploading. Please use web update instead."))},t.open("POST","/flash.json",!0),t.send(this.flashFileName)},TargetReadyStartOTA:function(){return B&&this.prevRecovery&&!this.isStateRebootRecovery()&&!this.isStateFlashing()?this:(this.logEvent(this.TargetReadyStartOTA.name),B?(this.prevRecovery=!0,void(""!==this.flashFileName?this.UploadLocalFile():""!=this.flashURL?this.SetStateSetUrl():this.setOTAError("Invalid URL or file name while trying to start the OTa process"))):(console.error("Event TargetReadyStartOTA fired in the wrong mode "),this))},HandleUploadProgressEvent:function(t){this.logEvent(this.HandleUploadProgressEvent.name),this.SetStateUploading().SetStatusPercent(Math.round(t.loaded/t.total*100)).SetStatusText("Uploading file to device")},EventTargetStatus:function(t){var e,n;this.isStateNone()||this.logEvent(this.EventTargetStatus.name),null!==(e=t.ota_pct)&&void 0!==e&&e&&(this.olderRecovery=!0,this.SetStatusPercent(t.ota_pct)),""!=(null!==(n=t.ota_dsc)&&void 0!==n?n:"")&&(this.olderRecovery=!0,this.SetStatusText(t.ota_dsc)),null!=t.recovery&&(this.recovery=1===t.recovery),this.isStateRebootRecovery()&&this.recovery&&this.TargetReadyStartOTA()},EventOTAMessageClass:function(t){this.logEvent(this.EventOTAMessageClass.name);var e=JSON.parse(t);this.SetStatusPercent(e.ota_pct).SetStatusText(e.ota_dsc)},logEvent:function(t){console.log("".concat(t,", flash state ").concat(this.toString(),", recovery: ").concat(this.recovery,", ota pct: ").concat(this.statusPercent,", ota desc: ").concat(this.statusText))}};window.hideSurrounding=function(t){c(t).parent().parent().hide()};var M=!1,P=2500;function U(t){var e={timestamp:Date.now(),config:t};c.ajax({url:"/config.json",dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify(e),error:L})}function j(t){c("#o_type").children("span").css({display:"none"}),c("#"+(Z="bt"===t?"bt":"spdif"===t?"spdif":"i2s")).prop("checked",!0),c("#o_"+Z).css({display:"inline"})}function L(t,e,n){console.log(t.status),console.log(n),""!==n&&Ot(n,"MESSAGING_ERROR")}function D(t){c("#toast_"+t).removeClass("table-success").removeClass("table-warning").removeClass("table-danger").addClass("table-success").removeClass("show"),c("#msg_"+t).html("")}function F(t,e,n){var s=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a="table-success";"MESSAGING_WARNING"===e?a="table-warning":"MESSAGING_ERROR"===e&&(a="table-danger"),c("#toast_"+t).removeClass("table-success").removeClass("table-warning").removeClass("table-danger").addClass(a).addClass("show");var o=n.substring(0,n.length-1).encodeHTML().replace(/\n/g,"<br />");o=(c("#msg_"+t).html().length>0&&s?c("#msg_"+t).html()+"<br/>":"")+o,c("#msg_"+t).html(o)}window.hFlash=function(){c("#flashfilename").value=null,G.StartOTA()},window.handleReboot=function(t){"reboot_ota"==t?(c("#reboot_ota_nav").removeClass("active").prop("disabled",!0),dt(500,"","reboot_ota")):(c("#reboot_nav").removeClass("active"),dt(500,"",t))};var J,W="https://api.github.com/repos/sle118/squeezelite-esp32/releases",B=!1,H=!1,q=0,Y="MESSAGING_INFO",z={},V=null,Z="",Q="",X="Squeezelite-ESP32",K="",$=X,tt="",et=X,nt="",st="#cfg-audio-bt_source-sink_name",at={},ot={},it="",rt=0,ct=1,lt=2;function ut(t){var e={};c("input.nvs").each((function(n,s){if(t)e[s.id]=s.value;else{var a=parseInt(s.attributes.nvs_type.value,10);""!==s.id&&(e[s.id]={},e[s.id].value=a===m||a===g||a===v||a===b||a===S||a===y||a===_||a===w?parseInt(s.value):s.value,e[s.id].type=a)}}));var n=c("#nvs-new-key").val(),s=c("#nvs-new-value").val();return""!==n&&(t?e[n]=s:(e[n]={},e[n].value=s,e[n].type=33)),e}function dt(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"reboot",s="/"+n+".json";c("tbody#tasks").empty(),c("#tasks_sect").css("visibility","collapse"),h.resolve({cmdname:e,url:s}).delay(t).then((function(t){t.cmdname.length>0?F(t.cmdname,"MESSAGING_WARNING","System is rebooting.\n",!0):Ot("System is rebooting.\n","MESSAGING_WARNING"),console.log("now triggering reboot"),c("button[onclick*='handleReboot']").addClass("rebooting"),c.ajax({url:t.url,dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify({timestamp:Date.now()}),error:L,complete:function(){console.log("reboot call completed"),h.resolve(t).delay(6e3).then((function(t){t.cmdname.length>0&&D(t.cmdname),Et(),At()}))}})}))}function ht(t){return c(".upf").filter((function(){return c(this).text().toUpperCase()===t.toUpperCase()})).length>0&&(c("#splf").val(t).trigger("input"),!0)}function ft(t){return t>=-55?"signal_wifi_statusbar_4_bar":t>=-60?"network_wifi_3_bar":t>=-65?"network_wifi_2_bar":t>=-70?"network_wifi_1_bar":"signal_wifi_statusbar_null"}function pt(){var t;(null===(t=at)||void 0===t?void 0:t.urc)!==C&&c.getJSON("/scan.json",(0,s.Z)(i().mark((function t(){return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,kt(2e3);case 2:c.getJSON("/ap.json",(function(t){t.length>0&&(t.sort((function(t,e){var n=t.rssi,s=e.rssi;return n<s?1:n>s?-1:0})),gt(t))}));case 3:case"end":return t.stop()}}),t)}))))}function mt(t,e,n){return'<tr data-bs-toggle="modal" data-bs-target="#WifiConnectDialog"><td></td><td>'.concat(t,'</td><td>\n <span class="material-icons" style="fill:white; display: inline" >').concat(ft(e),'</span>\n \t</td><td>\n <span class="material-icons">').concat(0==n?"no_encryption":"lock","</span>\n </td></tr>")}function gt(t){var e,n="";if(c("#wifiTable tr td:first-of-type").text(""),c("#wifiTable tr").removeClass("table-success table-warning"),t&&(t.forEach((function(t){n+=mt(t.ssid,t.rssi,t.auth)})),c("#wifiTable").html(n)),0==c(".manual_add").length&&(c("#wifiTable").append(mt("Manual add",0,0)),c("#wifiTable tr:last").addClass("table-light text-dark").addClass("manual_add")),!at.ssid||at.urc!==N&&at.urc!==R)(null===(e=at)||void 0===e?void 0:e.urc)!==C&&c("span#foot-if").html("");else{var s,a='#wifiTable td:contains("'.concat(at.ssid,'")');if(0==c(a).filter((function(){return c(this).text()===at.ssid})).length)c("#wifiTable").prepend("".concat(mt(at.ssid,null!==(s=at.rssi)&&void 0!==s?s:0,0)));c(a).filter((function(){return c(this).text()===at.ssid})).siblings().first().html("&check;").parent().addClass(at.urc===N?"table-success":"table-warning"),c("span#foot-if").html("SSID: <strong>".concat(at.ssid,"</strong>, IP: <strong>").concat(at.ip,"</strong>")),c("#wifiStsIcon").html(ft(at.rssi))}}function vt(t){console.debug(this.toLocaleString()+"\t"+t.nme+"\t"+t.cpu+"\t"+I[t.st]+"\t"+t.minstk+"\t"+t.bprio+"\t"+t.cprio+"\t"+t.num),c("tbody#tasks").append('<tr class="table-primary"><th scope="row">'+t.num+"</th><td>"+t.nme+"</td><td>"+t.cpu+"</td><td>"+I[t.st]+"</td><td>"+t.minstk+"</td><td>"+t.bprio+"</td><td>"+t.cprio+"</td></tr>")}function bt(t){return c("".concat(st," option:contains('").concat(t,"')"))}function St(){c.getJSON("/messages.json",function(){var t=(0,s.Z)(i().mark((function t(e){var n,s,a,o,r,u,d,h,f,p;return i().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=l(e);try{for(a=function(){var t=s.value,e=t.current_time-t.sent_time;switch((o=new Date).setTime(o.getTime()-e),t.class){case"MESSAGING_CLASS_OTA":G.EventOTAMessageClass(t.message);break;case"MESSAGING_CLASS_STATS":r=JSON.parse(t.message),console.debug(o.toLocalShort()+" - Number of running tasks: "+r.ntasks),console.debug(o.toLocalShort()+"\tname\tcpu\tstate\tminstk\tbprio\tcprio\tnum"),r.tasks?("collapse"===c("#tasks_sect").css("visibility")&&c("#tasks_sect").css("visibility","visible"),c("tbody#tasks").html(""),r.tasks.sort((function(t,e){return e.cpu-t.cpu})).forEach(vt,o)):"visible"===c("#tasks_sect").css("visibility")&&(c("tbody#tasks").empty(),c("#tasks_sect").css("visibility","collapse"));break;case"MESSAGING_CLASS_SYSTEM":Nt(t,o);break;case"MESSAGING_CLASS_CFGCMD":F((u=t.message.split(/([^\n]*)\n([\s\S]*)/g))[1],t.type,u[2],!0);break;case"MESSAGING_CLASS_BT":if(c("#cfg-audio-bt_source-sink_name").is("input")){for(d=c("#cfg-audio-bt_source-sink_name")[0].attributes,h="",f=0;f<d.length;f++)"type"!=d.item(f).name&&(h+="".concat(d.item(f).name,' = "').concat(d.item(f).value,'" '));p=c("#cfg-audio-bt_source-sink_name")[0].value,c("#cfg-audio-bt_source-sink_name").replaceWith('<select id="cfg-audio-bt_source-sink_name" '.concat(h,'><option value="').concat(p,'" data-bs-description="').concat(p,'">').concat(p,"</option></select> "))}JSON.parse(t.message).forEach((function(e){bt(e.name).length>0||(c("#cfg-audio-bt_source-sink_name").append("<option>".concat(e.name,"</option>")),Nt({type:t.type,message:"BT Audio device found: ".concat(e.name," RSSI: ").concat(e.rssi," ")},o)),bt(e.name).attr("data-bs-description","".concat(e.name," (").concat(e.rssi,"dB)")).attr("rssi",e.rssi).attr("value",e.name).text("".concat(e.name," [").concat(e.rssi,"dB]")).trigger("change")})),c(st).append(c("".concat(st," option")).remove().sort((function(t,e){return console.log("".concat(parseInt(c(t).attr("rssi"))," < ").concat(parseInt(c(e).attr("rssi"))," ? ")),parseInt(c(t).attr("rssi"))<parseInt(c(e).attr("rssi"))?1:-1})))}},n.s();!(s=n.n()).done;)a()}catch(t){n.e(t)}finally{n.f()}setTimeout(St,P);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()).fail((function(t,e,n){404==t.status?(c(".orec").hide(),H=!0):L(t,0,n),0==t.status&&0==t.readyState?setTimeout(St,5e3):H||setTimeout(St,P)}))}function yt(t){if(c("#WifiConnectDialog").is(":visible")){if(at.ip&&c("#ipAddress").text(at.ip),at.ssid&&c("#connectedToSSID").text(at.ssid),at.gw&&c("#gateway").text(at.gw),at.netmask&&c("#netmask").text(at.netmask),(void 0===ot.Action||ot.Action&&ot.Action==lt)&&(c("*[class*='connecting']").hide(),c(".connecting-status").show()),z.ap_ssid&&c("#apName").text(z.ap_ssid.value),z.ap_pwd&&c("#apPass").text(z.ap_pwd.value),!t)return;switch(t.urc){case N:t.ssid&&t.ssid===ot.ssid&&(c("*[class*='connecting']").hide(),c(".connecting-success").show(),ot.Action=lt);break;case k:ot.Action!=lt&&ot.ssid==t.ssid&&(c("*[class*='connecting']").hide(),c(".connecting-fail").show());break;case x:break;case R:ot.Action!=lt&&ot.ssid!=t.ssid&&(c("*[class*='connecting']").hide(),c(".connecting-fail").show())}}}function _t(t){!function(t){return t.urc!==at.urc||t.ssid!==at.ssid||t.gw!==at.gw||t.netmask!==at.netmask||t.ip!==at.ip||t.rssi!==at.rssi}(t)&&t.urc||(at=t,c(".if_eth").hide(),c(".if_wifi").hide(),t.urc&&at.urc==C?(c(".if_eth").show(),at.urc===C&&c("span#foot-if").html("Network: Ethernet, IP: <strong>".concat(at.ip,"</strong>"))):(c(".if_wifi").show(),gt())),yt(t)}function wt(){c.getJSON("/status.json",(function(t){var e;if(function(t){var e;1===(null!==(e=t.recovery)&&void 0!==e?e:0)?(B=!0,c(".recovery_element").show(),c(".ota_element").hide(),c("#boot-button").html("Reboot"),c("#boot-form").attr("action","/reboot_ota.json")):(!B&&H&&(H=!1,setTimeout(St,P)),B=!1,c(".recovery_element").hide(),c(".ota_element").show(),c("#boot-button").html("Recovery"),c("#boot-form").attr("action","/recovery.json"))}(t),f(),_t(t),function(t){var e="",n="";if(void 0!==t.bt_status&&void 0!==t.bt_sub_status){var s=A[t.bt_status].sub[t.bt_sub_status];s?(e=T[s],n=A[t.bt_status].desc):(e=T.bt_connected,n="Output status")}c("#o_type").attr("title",n),c("#o_bt").html(e)}(t),G.EventTargetStatus(t),t.project_name&&""!==t.project_name&&($=t.project_name),t.platform_name&&""!==t.platform_name&&(et=t.platform_name),""===tt&&(tt=$),""===tt&&(tt="Squeezelite-ESP32"),t.version&&""!==t.version?(X=t.version,c("#navtitle").html("".concat(tt).concat(B?"<br>[recovery]":"")),c("span#foot-fw").html("fw: <strong>".concat(X,"</strong>, mode: <strong>").concat(B?"Recovery":$,"</strong>"))):c("span#flash-status").html(""),t.Voltage?(c("#battery").html("".concat(function(t){var e,n,s=l(E);try{for(s.s();!(e=s.n()).done;){var a,o=e.value,i=l(o.ranges);try{for(i.s();!(a=i.n()).done;){var r=a.value;if(((n=t)-r.f)*(n-r.t)<=0)return o.icon}}catch(t){i.e(t)}finally{i.f()}}}catch(t){s.e(t)}finally{s.f()}return"battery_full"}(t.Voltage))),c("#battery").show()):c("#battery").hide(),""!=(null!==(e=t.message)&&void 0!==e?e:"")&&K!=t.message&&(K=t.message,Ot(t.message,"MESSAGING_INFO")),t.is_i2c_locked?c("flds-cfg-hw-preset").hide():c("flds-cfg-hw-preset").show(),c("button[onclick*='handleReboot']").removeClass("rebooting"),void 0===J||t.lms_ip!=it&&t.lms_ip&&t.lms_port){var n="http://"+t.lms_ip+":"+t.lms_port;it=t.lms_ip,c.ajax({url:n+"/plugins/SqueezeESP32/firmware/-check.bin",type:"HEAD",dataType:"text",cache:!1,error:function(){J=""},success:function(){J=n}})}c("#o_jack").css({display:Number(t.Jack)?"inline":"none"}),setTimeout(wt,2e3)})).fail((function(t,e,n){L(t,0,n),0==t.status&&0==t.readyState?setTimeout(wt,5e3):setTimeout(wt,P)}))}function Tt(t,e,n){return void 0!==t.values[e]?t.values[e][n]:""}function Et(){c.getJSON("/commands.json",(function(t){console.log(t),c(".orec").show(),t.commands.forEach((function(e){if(0===c("#flds-"+e.name).length){var n=e.name.split("-"),s="cfg"===n[0],a="#tab-"+n[0]+"-"+n[1],o="";o+='<div class="card text-white mb-3"><div class="card-header">'.concat(e.help.encodeHTML().replace(/\n/g,"<br />"),'</div><div class="card-body"><fieldset id="flds-').concat(e.name,'">'),e.argtable&&e.argtable.forEach((function(n){var s=n.datatype||"",a=e.name+"-"+n.longopts,i=Tt(t,e.name,n.longopts),r="hasvalue="+n.hasvalue+" ";r+='longopts="'+n.longopts+'" ',r+='shortopts="'+n.shortopts+'" ',r+="checkbox="+n.checkbox+" ",r+='cmdname="'+e.name+'" ',r+='id="'+a+'" name="'+a+'" hasvalue="'+n.hasvalue+'" ';var c=n.mincount>0?"bg-success":"";"hidden"===n.glossary&&(r+=' style="visibility: hidden;"'),n.checkbox?o+='<div class="form-check"><label class="form-check-label"><input type="checkbox" '.concat(r,' class="form-check-input ').concat(c,'" value="" >').concat(n.glossary.encodeHTML(),"</label>"):(o+='<div class="form-group" ><label for="'.concat(a,'">').concat(n.glossary.encodeHTML(),"</label>"),s.includes("|")?(c=s.startsWith("+")?" multiple ":"",s=s.replace("<","").replace("=","").replace(">",""),o+="<select ".concat(r,' class="form-control ').concat(c,'" >'),(s="--|"+s).split("|").forEach((function(t){o+="<option >"+t+"</option>"})),o+="</select>"):o+='<input type="text" class="form-control '.concat(c,'" placeholder="').concat(s,'" ').concat(r,">")),o+="".concat(n.checkbox?"</div>":"",'<small class="form-text text-muted">Previous value: ').concat(n.checkbox?i?"Checked":"Unchecked":i||"","</small>").concat(n.checkbox?"":"</div>")})),o+='<div style="margin-top: 16px;">\n <div class="toast hide" role="alert" aria-live="assertive" aria-atomic="true" id="toast_'.concat(e.name,'">\n <div class="toast-header">\n <strong class="mr-auto">Result</strong\n <button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>\n </div>\n <div class="toast-body" id="msg_').concat(e.name,'"></div>\n </div>'),o+=s?'<button type="submit" class="btn btn-info sclk" id="btn-save-'.concat(e.name,'" cmdname="').concat(e.name,'">Save</button>\n<button type="submit" class="btn btn-warning cclk" id="btn-commit-').concat(e.name,'" cmdname="').concat(e.name,'">Apply</button>'):'<button type="submit" class="btn btn-success sclk" id="btn-run-'.concat(e.name,'" cmdname="').concat(e.name,'">Execute</button>'),o+="</div></fieldset></div></div>",s?c(a).append(o):c("#commands-list").append(o)}})),c(".sclk").off("click").on("click",(function(){runCommand(this,!1)})),c(".cclk").off("click").on("click",(function(){runCommand(this,!0)})),t.commands.forEach((function(e){c("[cmdname="+e.name+"]:input").val(""),c("[cmdname="+e.name+"]:checkbox").prop("checked",!1),e.argtable&&e.argtable.forEach((function(n){var s="#"+e.name+"-"+n.longopts,a=Tt(t,e.name,n.longopts);n.checkbox?c(s)[0].checked=a:(void 0!==a&&c(s).val(a).trigger("change"),0===c(s)[0].value.length&&(n.datatype||"").includes("|")&&(c(s)[0].value="--"))}))})),0!=c("#cfg-hw-preset-model_config").length&&(M||(M=!0,c("#cfg-hw-preset-model_config").html("<option>--</option>"),c.getJSON("https://gist.githubusercontent.com/sle118/dae585e157b733a639c12dc70f0910c5/raw/",{_:(new Date).getTime()},(function(t){c.each(t,(function(t,e){c("#cfg-hw-preset-model_config").append("<option value='".concat(JSON.stringify(e).replace(/"/g,'"').replace(/\'/g,'"'),"'>").concat(e.name,"</option>")),""!==nt&&nt==e.name&&c("#cfg-hw-preset-model_config").val(nt)})),""!==nt&&"#prev_preset".show().val(nt)})).fail((function(t,e,n){var s=e+", "+n;console.log("Request Failed: "+s)}))))})).fail((function(t,e,n){404==t.status?c(".orec").hide():L(t,0,n),c("#commands-list").empty()}))}function At(){c.getJSON("/config.json",(function(t){c("#nvsTable tr").remove();var e=t.config?t.config:t;z=e,Object.keys(e).sort().forEach((function(t){var n=e[t].value;if("autoexec"===t)"0"===e.autoexec.value?c("#disable-squeezelite")[0].checked=!0:c("#disable-squeezelite")[0].checked=!1;else if("autoexec1"===t){var s=/-o\s?(["][^"]*["]|[^-]+)/g.exec(n);s[1].toUpperCase().startsWith("I2S")?j("i2s"):s[1].toUpperCase().startsWith("SPDIF")?j("spdif"):s[1].toUpperCase().startsWith('"BT')&&j("bt")}else"host_name"===t?(n=n.replaceAll('"',""),c("input#dhcp-name1").val(n),c("input#dhcp-name2").val(n),c("#player").val(n),document.title=n,Q=n):"rel_api"===t?W=n:"enable_airplay"===t?c("#s_airplay").css({display:p(n)?"inline":"none"}):"enable_cspot"===t?c("#s_cspot").css({display:p(n)?"inline":"none"}):"preset_name"==t?nt=n:"board_model"==t&&(tt=n);c("tbody#nvsTable").append("<tr><td>"+t+"</td><td class='value'><input type='text' class='form-control nvs' id='"+t+"' nvs_type="+e[t].type+" ></td></tr>"),c("input#"+t).val(e[t].value)})),c("tbody#nvsTable").append("<tr><td><input type='text' class='form-control' id='nvs-new-key' placeholder='new key'></td><td><input type='text' class='form-control' id='nvs-new-value' placeholder='new value' nvs_type=33 ></td></tr>"),t.gpio?(c("#pins").show(),c("tbody#gpiotable tr").remove(),t.gpio.forEach((function(t){c("tbody#gpiotable").append("<tr class="+(t.fixed?"table-secondary":"table-primary")+'><th scope="row">'+t.group+"</th><td>"+t.name+"</td><td>"+t.gpio+"</td><td>"+(t.fixed?"Fixed":"Configuration")+"</td></tr>")}))):c("#pins").hide()})).fail((function(t,e,n){L(t,0,n)}))}function Ot(t,e){Nt({message:t,type:e},new Date)}function Nt(t,e){var n="table-success";"MESSAGING_WARNING"===t.type?(n="table-warning","MESSAGING_INFO"===Y&&(Y="MESSAGING_WARNING")):"MESSAGING_ERROR"===t.type&&("MESSAGING_INFO"!==Y&&"MESSAGING_WARNING"!==Y||(Y="MESSAGING_ERROR"),n="table-danger"),++q>0&&(c("#msgcnt").removeClass("badge-success"),c("#msgcnt").removeClass("badge-warning"),c("#msgcnt").removeClass("badge-danger"),c("#msgcnt").addClass(O[Y]),c("#msgcnt").text(q)),c("#syslogTable").append("<tr class='"+n+"'><td>"+e.toLocalShort()+"</td><td>"+t.message.encodeHTML()+"</td></tr>")}function kt(t){return new h((function(e){return setTimeout(e,t)}))}h.prototype.delay=function(t){return this.then((function(e){return new h((function(n){setTimeout((function(){n(e)}),t)}))}),(function(e){return new h((function(n,s){setTimeout((function(){s(e)}),t)}))}))},window.saveAutoexec1=function(t){F("cfg-audio-tmpl","MESSAGING_INFO","Saving.\n",!1);var e='squeezelite -b 500:2000 -d all=info -C 30 -W -n "'+c("#player").val()+'"';"bt"===Z?(e+=' -o "BT" -R -Z 192000',F("cfg-audio-tmpl","MESSAGING_INFO","Remember to configure the Bluetooth audio device name.\n",!0)):e+="spdif"===Z?" -o SPDIF -Z 192000":" -o I2S",""!==c("#optional").val()&&(e+=" "+c("#optional").val());var n={timestamp:Date.now()};n.config={autoexec1:{value:e,type:33},autoexec:{value:c("#disable-squeezelite").prop("checked")?"0":"1",type:33}},c.ajax({url:"/config.json",dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify(n),error:L,complete:function(e){e.responseText&&"OK"===JSON.parse(e.responseText).result?(F("cfg-audio-tmpl","MESSAGING_INFO","Done.\n",!0),t&&dt(1500,"cfg-audio-tmpl")):JSON.parse(e.responseText).result?F("cfg-audio-tmpl","MESSAGING_WARNING",JSON.parse(e.responseText).Result+"\n",!0):F("cfg-audio-tmpl","MESSAGING_ERROR",e.statusText+"\n"),console.log(e.responseText)}}),console.log("sent data:",JSON.stringify(n))},window.handleDisconnect=function(){c.ajax({url:"/connect.json",dataType:"text",method:"DELETE",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify({timestamp:Date.now()})})},window.handleConnect=function(){ot.ssid=c("#manual_ssid").val(),ot.pwd=c("#manual_pwd").val(),ot.dhcpname=c("#dhcp-name2").val(),c("*[class*='connecting']").hide(),c("#ssid-wait").text(ot.ssid),c(".connecting").show(),c.ajax({url:"/connect.json",dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify({timestamp:Date.now(),ssid:ot.ssid,pwd:ot.pwd}),error:L})},c(document).ready((function(){f(),G.init(),c("#fw-url-input").on("input",(function(){c(this).val().length>8&&(c(this).val().startsWith("http://")||c(this).val().startsWith("https://"))?c("#start-flash").show():c("#start-flash").hide()})),c(".upSrch").on("input",(function(){var t=this.value;c("#rTable tr").removeClass(this.id+"_hide"),t.length>0&&c("#rTable td:nth-child(".concat(c(this).parent().index()+1,")")).filter((function(){return!c(this).text().toUpperCase().includes(t.toUpperCase())})).parent().addClass(this.id+"_hide"),c('[class*="_hide"]').hide(),c("#rTable tr").not('[class*="_hide"]').show()})),setTimeout(pt,1500),c("#WifiConnectDialog")[0].addEventListener("shown.bs.modal",(function(t){c("*[class*='connecting']").hide(),null!=t&&t.relatedTarget&&(ot.Action=rt,c(t.relatedTarget).children("td:eq(1)").text()==at.ssid?ot.Action=lt:c(t.relatedTarget).is(":last-child")?(ot.Action=ct,ot.ssid="",c("#manual_ssid").val(ot.ssid)):(ot.ssid=c(t.relatedTarget).children("td:eq(1)").text(),c("#manual_ssid").val(ot.ssid))),ot.Action!==lt?(c(".connecting-init").show(),c("#manual_ssid").trigger("focus")):yt()})),c("#WifiConnectDialog")[0].addEventListener("hidden.bs.modal",(function(){c("#WifiConnectDialog input").val("")})),c("#uCnfrm")[0].addEventListener("shown.bs.modal",(function(){c("#selectedFWURL").text(c("#fw-url-input").val())})),c("input#show-commands")[0].checked=1===V,c('a[href^="#tab-commands"]').hide(),c("#load-nvs").on("click",(function(){c("#nvsfilename").trigger("click")})),c("#nvsfilename").on("change",(function(){if("function"!=typeof window.FileReader)throw"The file API isn't supported on this browser.";if(!this.files)throw"This browser does not support the `files` property of the file input.";if(this.files[0]){var t=this.files[0],e=new FileReader;e.onload=function(t){var e={};try{e=JSON.parse(t.target.result)}catch(t){alert("Parsing failed!\r\n "+t)}c("input.nvs").each((function(t,n){c(this).parent().removeClass("bg-warning").removeClass("bg-success"),e[n.id]&&(e[n.id]!==n.value?(console.log("Changed "+n.id+" "+n.value+"==>"+e[n.id]),c(this).parent().addClass("bg-warning"),c(this).val(e[n.id])):c(this).parent().addClass("bg-success"))})),c("input.nvs").children(".bg-warning")&&alert("Highlighted values were changed. Press Commit to change on the device")},e.readAsText(t),this.value=null}})),c("#clear-syslog").on("click",(function(){q=0,Y="MESSAGING_INFO",c("#msgcnt").text(""),c("#syslogTable").html("")})),c("#ok-credits").on("click",(function(){c("#credits").slideUp("fast",(function(){})),c("#app").slideDown("fast",(function(){}))})),c("#acredits").on("click",(function(t){t.preventDefault(),c("#app").slideUp("fast",(function(){})),c("#credits").slideDown("fast",(function(){}))})),c("input#show-commands").on("click",(function(){this.checked=this.checked?1:0,this.checked?(c('a[href^="#tab-commands"]').show(),V=1):(V=0,c('a[href^="#tab-commands"]').hide())})),c("input#show-nvs").on("click",(function(){this.checked=this.checked?1:0,r.Z.set("show-nvs",this.checked?"Y":"N"),f()})),c("#btn_reboot_recovery").on("click",(function(){handleReboot("recovery")})),c("#btn_reboot").on("click",(function(){handleReboot("reboot")})),c("#btn_flash").on("click",(function(){hFlash()})),c("#save-autoexec1").on("click",(function(){saveAutoexec1(!1)})),c("#commit-autoexec1").on("click",(function(){saveAutoexec1(!0)})),c("#btn_disconnect").on("click",(function(){at={},gt(),c.ajax({url:"/connect.json",dataType:"text",method:"DELETE",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify({timestamp:Date.now()})})})),c("#btnJoin").on("click",(function(){handleConnect()})),c("#reboot_nav").on("click",(function(){handleReboot("reboot")})),c("#reboot_ota_nav").on("click",(function(){handleReboot("reboot_ota")})),c("#save-as-nvs").on("click",(function(){var t=ut(!0),e=document.createElement("a");e.href=URL.createObjectURL(new Blob([JSON.stringify(t,null,2)],{type:"text/plain"})),e.setAttribute("download","nvs_config_"+Q+"_"+Date.now()+"json"),document.body.appendChild(e),e.click(),document.body.removeChild(e)})),c("#save-nvs").on("click",(function(){U(ut(!1))})),c("#fwUpload").on("click",(function(){0===document.getElementById("flashfilename").files.length?alert("No file selected!"):(c("#fw-url-input").value=null,G.StartOTA())})),c("[name=output-tmpl]").on("click",(function(){j(this.id)})),c("#chkUpdates").on("click",(function(){c("#rTable").html(""),c.getJSON(W,(function(t){var e=[];t.forEach((function(t){var n=t.name.split("#")[3];e.includes(n)||e.push(n)}));var n="";e.forEach((function(t){n+='<option value="'+t+'">'+t+"</option>"})),c("#fwbranch").append(n),t.forEach((function(t){var e="";t.assets.forEach((function(t){t.name.match(/\.bin$/)&&(e=t.browser_download_url)}));var n=t.name.split("#"),s=n[0],a=n[2],o=n[3],i=s.substr(s.lastIndexOf("-")+1);i="32"==i||"16"==i?i:"";var r=t.body;r=(r=(r=r.replace(/'/gi,'"')).replace(/[\s\S]+(### Revision Log[\s\S]+)### ESP-IDF Version Used[\s\S]+/,"$1")).replace(/- \(.+?\) /g,"- ").encodeHTML(),c("#rTable").append("<tr class='release ' fwurl='".concat(e,"'>\n <td data-bs-toggle='tooltip' title='").concat(r,"'>").concat(s,"</td><td>").concat(new Date(t.created_at).toLocalShort(),"\n </td><td class='upf'>").concat(a,"</td><td>").concat(o,"</td><td>").concat(i,"</td></tr>"))})),c("#searchfw").css("display","inline"),ht(et)||ht($),c("#rTable tr.release").on("click",(function(){var t=this.attributes.fwurl.value;J&&(t=t.replace(/.*\/download\//,J+"/plugins/SqueezeESP32/firmware/")),c("#fw-url-input").val(t),c("#start-flash").show(),c("#rTable tr.release").removeClass("table-success table-warning"),c(this).addClass("table-success table-warning")}))})).fail((function(){alert("failed to fetch release history!")}))})),c("#fwcheck").on("click",(function(){c("#releaseTable").html(""),c("#fwbranch").empty(),c.getJSON(W,(function(t){var e,n=0,s=[];t.forEach((function(t){var e=t.name.split("#")[3];s.includes(e)||s.push(e)})),s.forEach((function(t){e+='<option value="'+t+'">'+t+"</option>"})),c("#fwbranch").append(e),t.forEach((function(t){var e="";t.assets.forEach((function(t){t.name.match(/\.bin$/)&&(e=t.browser_download_url)}));var s=t.name.split("#"),a=s[0],o=s[1],i=s[2],r=s[3],l=t.body;l=(l=(l=l.replace(/'/gi,'"')).replace(/[\s\S]+(### Revision Log[\s\S]+)### ESP-IDF Version Used[\s\S]+/,"$1")).replace(/- \(.+?\) /g,"- ");var u=n++>6?" hide":"";c("#releaseTable").append("<tr class='release"+u+"'><td data-bs-toggle='tooltip' title='"+l+"'>"+a+"</td><td>"+new Date(t.created_at).toLocalShort()+"</td><td>"+i+"</td><td>"+o+"</td><td>"+r+"</td><td><input type='button' class='btn btn-success' value='Select' data-bs-url='"+e+"' onclick='setURL(this);' /></td></tr>")})),n>7&&(c("#releaseTable").append("<tr id='showall'><td colspan='6'><input type='button' id='showallbutton' class='btn btn-info' value='Show older releases' /></td></tr>"),c("#showallbutton").on("click",(function(){c("tr.hide").removeClass("hide"),c("tr#showall").addClass("hide")}))),c("#searchfw").css("display","inline")})).fail((function(){alert("failed to fetch release history!")}))})),c("#updateAP").on("click",(function(){pt(),console.log("refresh AP")})),At(),Et(),St(),wt()})),window.setURL=function(t){var e=t.dataset.url;c('[data-bs-url^="http"]').addClass("btn-success").removeClass("btn-danger"),c('[data-bs-url="'+e+'"]').addClass("btn-danger").removeClass("btn-success"),J&&(e=e.replace(/.*\/download\//,J+"/plugins/SqueezeESP32/firmware/")),c("#fwurl").val(e)},window.runCommand=function(t,e){var n=t.attributes.cmdname.value;F(t.attributes.cmdname.value,"MESSAGING_INFO","Executing.",!1);var s=document.getElementById("flds-"+n),o=null==s?void 0:s.querySelectorAll("select,input");if("cfg-hw-preset"===n)return function(t,e){var n=JSON.parse(t[0].value),s=t[0].attributes.cmdname.value;console.log("selected model: ".concat(n.name));for(var o={timestamp:Date.now(),config:{model_config:{value:n.name,type:33}}},i=0,r=Object.entries(n.config);i<r.length;i++){var l=(0,a.Z)(r[i],2),u=l[0],d=l[1],h="string"==typeof d||d instanceof String?d:JSON.stringify(d);o.config[u]={value:h,type:33},F(s,"MESSAGING_INFO","Setting ".concat(u,"=").concat(h," "),!0)}F(s,"MESSAGING_INFO","Committing ",!0),c.ajax({url:"/config.json",dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify(o),error:function(t,e,n){L(t,0,n),F(s,"MESSAGING_ERROR","Unexpected error ".concat(""!==n?n:"with return status = "+t.status," "),!0)},success:function(t){F(s,"MESSAGING_INFO","Saving complete ",!0),console.log(t),e&&dt(2500,s)}})}(o,e);if(n+=" ",s){var i,r=l(o);try{for(r.s();!(i=r.n()).done;){var u,d=i.value,h="",f="",p=d.attributes,m=c(d).is("select"),g="true"===(null==p||null===(u=p.hasvalue)||void 0===u?void 0:u.value),v=m&&"--"!==d.value||!m&&""!==d.value;if(!g||g&&v){var b,S,y,_;if("undefined"!==(null==p||null===(b=p.longopts)||void 0===b?void 0:b.value))f+="--"+(null==p||null===(_=p.longopts)||void 0===_?void 0:_.value);else"undefined"!==(null==p||null===(S=p.shortopts)||void 0===S?void 0:S.value)&&(f="-"+p.shortopts.value);"true"===(null==p||null===(y=p.hasvalue)||void 0===y?void 0:y.value)?""!==(null==p?void 0:p.value)&&(n+=f+" "+(h=/\s/.test(d.value)?'"':"")+d.value+h+" "):null!=d&&d.checked&&(n+=f+" ")}}}catch(t){r.e(t)}finally{r.f()}}console.log(n);var w={timestamp:Date.now()};w.command=n,c.ajax({url:"/commands.json",dataType:"text",method:"POST",cache:!1,contentType:"application/json; charset=utf-8",data:JSON.stringify(w),error:function(t,e,n){var s=JSON.parse(this.data).command;404==t.status?F(s.substr(0,s.indexOf(" ")),"MESSAGING_ERROR","".concat(B?"Limited recovery mode active. Unsupported action ":"Unexpected error while processing command"),!0):(L(t,0,n),F(s.substr(0,s.indexOf(" ")-1),"MESSAGING_ERROR","Unexpected error ".concat(""!==n?n:"with return status = "+t.status),!0))},success:function(n){c(".orec").show(),console.log(n),"Success"===JSON.parse(n).Result&&e&&dt(2500,t.attributes.cmdname.value)}})}},393:(t,e,n)=>{n.r(e)},607:(t,e,n)=>{n(138),n(393),n(861),n(322)},861:t=>{t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAb1BMVEXIycuswsKMjI4rqqZyc3RQlpQ6jIEmJifW2dq5ursppJ8Om4zC0NAFdGYmmpb///8Hg3O4x8cHkoEggX0jko5Ks6/P0dM5r6ocoZb3+PgiiYVevrp/y8bg4uOS09FtxMDs7+7M6um529qoysik2tiNn72gAAAAF3RSTlP94Fr/Wf39BP26/////////////////kibhL0AAAGjSURBVDjLbZMJkoMgEEWtmETEJWpkiSC45P5nnF4wk7HmW2jLfzYIdFYUxbXUYp5nIbTOUFoLAR2ivIKZFQXYuu6TahSHmdAlAqWub0/QNI1jSxrHacKeWw9EdtH1xHbbyiRgCJn67JqVAr9nO2fJnBDMoUuYEvsfmxnJBM66Zj8/iYmaAPKlOvRNJAC/fz8OefINEAngAbYPEMiHTJCCAZrACciVMpCCgDEBKwsAowymMO3IAP3Btqa5vYJx0ZlcOSUZaE/AWznvnTHOyfZ/wMUQvAIg/wb27QNEH94BgGj+APsZiF8AXAhQQEMwkIYYLW7xvsENoyUoF0I0ysf0F2O743kDQNXzXM8+j8Eb6byzDEz7gtpsO1PgrXG5Nd6btNTP+YXarKTny1uQ9JiAN6vbqT9au+BzMQjAWtlq6BiYttdjiVVVqfXxWFWFkk6Cz0DTdYOFPmpHAAK/YQCJoTppQJ8A3TAxVAAhR439Bg5tKe7NgSDEje3mDsf+ovuGCUbYZb/BwoHS6ykHMYfo/U6lx8Xb/+qo3U/x/lf+VP9c/j9c3zy20WEMxgAAAABJRU5ErkJggg=="}},n={};function s(t){var a=n[t];if(void 0!==a)return a.exports;var o=n[t]={id:t,loaded:!1,exports:{}};return e[t].call(o.exports,o,o.exports,s),o.loaded=!0,o.exports}s.m=e,t=[],s.O=(e,n,a,o)=>{if(!n){var i=1/0;for(u=0;u<t.length;u++){for(var[n,a,o]=t[u],r=!0,c=0;c<n.length;c++)(!1&o||i>=o)&&Object.keys(s.O).every((t=>s.O[t](n[c])))?n.splice(c--,1):(r=!1,o<i&&(i=o));if(r){t.splice(u--,1);var l=a();void 0!==l&&(e=l)}}return e}o=o||0;for(var u=t.length;u>0&&t[u-1][2]>o;u--)t[u]=t[u-1];t[u]=[n,a,o]},s.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return s.d(e,{a:e}),e},s.d=(t,e)=>{for(var n in e)s.o(e,n)&&!s.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),s.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),s.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},s.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),(()=>{var t={826:0};s.O.j=e=>0===t[e];var e=(e,n)=>{var a,o,[i,r,c]=n,l=0;if(i.some((e=>0!==t[e]))){for(a in r)s.o(r,a)&&(s.m[a]=r[a]);if(c)var u=c(s)}for(e&&e(n);l<i.length;l++)o=i[l],s.o(t,o)&&t[o]&&t[o][0](),t[o]=0;return s.O(u)},n=self.webpackChunksqueezelite_esp32=self.webpackChunksqueezelite_esp32||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))})();var a=s.O(void 0,[987],(()=>s(607)));a=s.O(a)})();
  2. //# sourceMappingURL=index.d78ba9.bundle.js.map