text: (function(t){function e(e){for(var i,o,r=e[0],l=e[1],c=e[2],u=0,m=[];u<r.length;u++)o=r[u],Object.prototype.hasOwnProperty.call(s,o)&&s[o]&&m.push(s[o][0]),s[o]=0;for(i in l)Object.prototype.hasOwnProperty.call(l,i)&&(t[i]=l[i]);d&&d(e);while(m.length)m.shift()();return n.push.apply(n,c||[]),a()}function a(){for(var t,e=0;e<n.length;e++){for(var a=n[e],i=!0,r=1;r<a.length;r++){var l=a[r];0!==s[l]&&(i=!1)}i&&(n.splice(e--,1),t=o(o.s=a[0]))}return t}var i={},s={index:0},n=[];function o(e){if(i[e])return i[e].exports;var a=i[e]={i:e,l:!1,exports:{}};return t[e].call(a.exports,a,a.exports,o),a.l=!0,a.exports}o.m=t,o.c=i,o.d=function(t,e,a){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},o.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)o.d(a,i,function(e){return t[e]}.bind(null,i));return a},o.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="";var r=window["webpackJsonp"]=window["webpackJsonp"]||[],l=r.push.bind(r);r.push=e,r=r.slice();for(var c=0;c<r.length;c++)e(r[c]);var d=l;n.push([0,"chunk-vendors"]),a()})({0:function(t,e,a){t.exports=a("9e0e")},"0501":function(t,e,a){},"0544":function(t,e,a){},"06aa":function(t,e,a){"use strict";a("20bb")},"0e54":function(t,e,a){},"14fa":function(t,e,a){"use strict";a("43b7")},"1cf6":function(t,e,a){"use strict";a("abbc")},"20bb":function(t,e,a){},"2b2d":function(t,e,a){"use strict";a("3f8a")},"2b88":function(t,e,a){},"357f":function(t,e,a){"use strict";a("2b88")},"3f8a":function(t,e,a){},"43b7":function(t,e,a){},"46d4":function(t,e,a){"use strict";a("ec98")},"4f12":function(t,e,a){"use strict";a("86cc")},"67e4":function(t,e,a){"use strict";a("0e54")},"702d":function(t,e,a){"use strict";a("ed92")},"86cc":function(t,e,a){},"9e0e":function(t,e,a){"use strict";a.r(e);a("ab8b"),a("7b17"),a("b19f");var i=a("2b0e"),s=a("58ca"),n=a("bc3a"),o=a.n(n);const{protocol:r,hostname:l,port:c,pathname:d}=window.location,u=o.a.create({baseURL:r+"//"+l+(c?":"+c:"")+d+"api/",headers:{Accept:"application/json"}});u.interceptors.response.use(t=>t,t=>{const e=t.config.baseURL+t.config.url,a=`${t.message}: API request failed ${e}`;window.app.error({message:a})});var m=u,p=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"app d-flex flex-column justify-content-between overflow-hidden"},[a("div",{staticClass:"flex-grow-1 d-flex flex-column justify-content-between"},[a("nav",{staticClass:"navbar navbar-expand-lg navbar-dark bg-dark"},[a("div",{staticClass:"container"},[a("a",{staticClass:"navbar-brand",attrs:{href:"https://evcc.io/",target:"_blank"}},[a("Logo",{staticClass:"logo"})],1),a("div",{staticClass:"d-flex flex-grow-1 justify-content-end"},[a("Notifications",{attrs:{notifications:t.notifications}}),t._m(0)],1),a("div",{staticClass:"collapse navbar-collapse flex-grow-0",attrs:{id:"navbarNavAltMarkup"}},[a("ul",{staticClass:"navbar-nav"},[t.providerLogins.length>0?a("li",{staticClass:"nav-item dropdown"},[a("a",{staticClass:"nav-link dropdown-toggle",attrs:{"data-bs-toggle":"dropdown",href:"#",role:"button","aria-expanded":"false"}},[t._v(t._s(t.$t("header.login"))+" "),t.logoutCount>0?a("span",{staticClass:"badge bg-secondary"},[t._v(t._s(t.logoutCount))]):t._e()]),a("ul",{staticClass:"dropdown-menu"},t._l(t.providerLogins,(function(e){return a("li",{key:e.title,staticClass:"dropdown-item"},[a("button",{staticClass:"dropdown-item",attrs:{type:"button"},on:{click:function(a){return t.handleProviderAuthorization(e)}}},[t._v(" "+t._s(e.title)+" "+t._s(t.$t(e.loggedIn?"main.provider.logout":"main.provider.login"))+" ")])])})),0)]):t._e(),a("li",{staticClass:"nav-item"},[a("a",{staticClass:"nav-link",attrs:{href:"https://docs.evcc.io/blog/",target:"_blank"}},[t._v(" "+t._s(t.$t("header.blog"))+" ")])]),a("li",{staticClass:"nav-item"},[a("a",{staticClass:"nav-link",attrs:{href:"https://docs.evcc.io/docs/Home/",target:"_blank"}},[t._v(" "+t._s(t.$t("header.docs"))+" ")])]),a("li",{staticClass:"nav-item"},[a("a",{staticClass:"nav-link",attrs:{href:"https://github.com/evcc-io/evcc",target:"_blank"}},[t._v(" "+t._s(t.$t("header.github"))+" ")])])])])])]),a("router-view",{staticClass:"flex-grow-1 d-flex flex-column justify-content-stretch"})],1),a("Footer",{attrs:{version:t.version,sponsor:t.sponsor,savings:t.savings}})],1)},h=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("button",{staticClass:"navbar-toggler",attrs:{type:"button","data-bs-toggle":"collapse","data-bs-target":"#navbarNavAltMarkup","aria-controls":"navbarNavAltMarkup","aria-expanded":"false","aria-label":"Toggle navigation"}},[a("span",{staticClass:"navbar-toggler-icon"})])}],g=a("ad3d"),v=a("ecee"),f=a("8475"),b=a("39f0"),C=a("8718"),_=a("7c8d"),w=a("c6b3"),y=a("aeda"),S=a("5d61"),x=a("5dae"),T=a("8560"),k=a("af2b"),D=a("dac1"),P=a("cca2"),$=a("eb9d"),N=a("f303"),L=a("7116"),I=a("fdca"),E=a("6023"),A=a("91fb"),B=a("184c"),j=a("ba01"),M=a("a17a"),R=a("28d3"),U=a("f15f"),z=a("6c88"),V=a("adbc"),W=a("a819"),H=a("23dc");v["c"].add(S["faAngleDown"],y["faAngleUp"],f["faBatteryEmpty"],b["faBatteryFull"],C["faBatteryHalf"],_["faBatteryQuarter"],w["faBatteryThreeQuarters"],j["faBox"],U["faCar"],W["faAngleDoubleLeft"],H["faAngleDoubleRight"],x["faClock"],V["faExclamationCircle"],T["faExclamationTriangle"],B["faGift"],M["faHome"],R["faWrench"],E["faHeart"],A["faHeart"],z["faSquare"],k["faSun"],D["faSun"],P["faInfoCircle"],$["faFlask"],N["faTemperatureHigh"],L["faTemperatureLow"],I["faThermometerHalf"]),i["a"].component("fa-icon",g["a"]);var O=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("svg",{attrs:{viewBox:"0 0 122 35",xmlns:"http://www.w3.org/2000/svg","fill-rule":"evenodd","clip-rule":"evenodd","stroke-linejoin":"round","stroke-miterlimit":"2"}},[a("path",{attrs:{d:"M13.082 29.071a12.384 12.384 0 01-9-3.42 12.192 12.192 0 01-3.54-9.12v-.64a15.394 15.394 0 011.47-6.83 10.825 10.825 0 014.17-4.64 11.64 11.64 0 016.15-1.63 10.45 10.45 0 018.21 3.26c2 2.194 3 5.297 3 9.31v2.76H7.382a6.348 6.348 0 002 4 5.997 5.997 0 004.16 1.49 7.305 7.305 0 006.1-2.84l3.31 3.73a10 10 0 01-4.13 3.39 13.309 13.309 0 01-5.74 1.18zm-.77-20.84a4.216 4.216 0 00-3.26 1.37 7.141 7.141 0 00-1.6 3.91h9.39v-.55a5.005 5.005 0 00-1.22-3.49 4.304 4.304 0 00-3.31-1.24zM36.452 20.331l4.7-17.09h7l-8.48 25.36h-6.44l-8.52-25.36h7l4.74 17.09zM85.542 23.611a4.444 4.444 0 003-1 3.638 3.638 0 001.22-2.75h6.32a8.668 8.668 0 01-1.4 4.73 9.145 9.145 0 01-3.79 3.3 11.736 11.736 0 01-5.29 1.19 10.912 10.912 0 01-8.54-3.46c-2.087-2.3-3.13-5.483-3.13-9.55v-.45c0-3.9 1.033-7.016 3.1-9.35a10.868 10.868 0 018.51-3.5c2.791-.134 5.524.84 7.6 2.71a9.626 9.626 0 012.9 7.21h-6.3a4.663 4.663 0 00-1.2-3.22 4.005 4.005 0 00-3.08-1.24 4.068 4.068 0 00-3.56 1.73c-.8 1.15-1.2 3-1.2 5.6v.7c0 2.61.39 4.49 1.19 5.63a4.092 4.092 0 003.65 1.72zM110.422 23.611a4.454 4.454 0 003-1 3.63 3.63 0 001.21-2.75h6.33a8.668 8.668 0 01-1.4 4.73 9.143 9.143 0 01-3.73 3.3 11.76 11.76 0 01-5.29 1.18 10.912 10.912 0 01-8.54-3.46c-2.087-2.3-3.13-5.483-3.13-9.55v-.45c0-3.9 1.033-7.016 3.1-9.35a10.85 10.85 0 018.57-3.49 10.575 10.575 0 017.6 2.71 9.598 9.598 0 012.91 7.21h-6.33a4.651 4.651 0 00-1.21-3.22 4.492 4.492 0 00-6.64.49c-.8 1.15-1.21 3-1.21 5.6v.7c0 2.607.4 4.484 1.2 5.63a4.09 4.09 0 003.56 1.72z",fill:"#fff","fill-rule":"nonzero"}}),a("path",{attrs:{d:"M58.462.751h9.22l-6.14 12.3h6.15l-11.53 21.51 2.3-15.36h-7.68l7.68-18.45z",fill:"#0fdd42","fill-rule":"nonzero"}}),a("path",{attrs:{fill:"none",d:"M-24.458-22.109h170v76h-170z"}})])},F=[],K={name:"Logo"},G=K,Z=a("2877"),q=Object(Z["a"])(G,O,F,!1,null,null,null),Y=q.exports,J=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("footer",{staticClass:"container"},[a("div",{staticClass:"py-3 py-md-5 mt-3 mt-md-5 border-top"},[a("div",{staticClass:"d-flex justify-content-between"},[a("Version",t._b({},"Version",t.version,!1)),a("Savings",t._b({attrs:{sponsor:t.sponsor}},"Savings",t.savings,!1))],1)])])},Q=[],X=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[t.newVersionAvailable?a("button",{staticClass:"btn btn-link ps-0 text-decoration-none link-dark text-nowrap",attrs:{href:"#","data-bs-toggle":"modal","data-bs-target":"#updateModal"}},[a("fa-icon",{staticClass:"icon me-2",attrs:{icon:"gift"}}),t._v("v"+t._s(t.installed)+" "),a("span",{staticClass:"d-none d-xs-inline d-sm-none text-muted text-decoration-underline"},[t._v(" "+t._s(t.$t("footer.version.availableShort"))+" ")]),a("span",{staticClass:"d-none d-sm-inline text-muted text-decoration-underline"},[t._v(" "+t._s(t.$t("footer.version.availableLong"))+" ")])],1):a("a",{staticClass:"btn btn-link ps-0 text-decoration-none link-dark text-nowrap",attrs:{href:t.releaseNotesUrl(t.installed),target:"_blank"}},[a("span",{staticClass:"d-inline d-xs-none d-sm-none"},[t._v(t._s(t.$t("footer.version.versionShort",{installed:t.installed})))]),a("span",{staticClass:"d-none d-xs-inline d-sm-inline"},[t._v(t._s(t.$t("footer.version.versionLong",{installed:t.installed})))])]),a("div",{staticClass:"modal fade",attrs:{id:"updateModal",tabindex:"-1",role:"dialog","aria-hidden":"true"}},[a("div",{staticClass:"modal-dialog modal-dialog-centered modal-dialog-scrollable",attrs:{role:"document"}},[a("div",{staticClass:"modal-content"},[a("div",{staticClass:"modal-header"},[a("h5",{staticClass:"modal-title"},[t._v(t._s(t.$t("footer.version.modalTitle")))]),a("button",{staticClass:"btn-close",attrs:{type:"button","data-bs-dismiss":"modal","aria-label":"Close"}})]),a("div",{staticClass:"modal-body"},[t.updateStarted?a("div",[a("p",[t._v(t._s(t.$t("footer.version.modalUpdateStarted")))]),a("div",{staticClass:"progress my-3"},[a("div",{staticClass:"progress-bar progress-bar-striped progress-bar-animated",style:{width:t.uploadProgress+"%"},attrs:{role:"progressbar"}})]),a("p",[t._v(t._s(t.updateStatus)+t._s(t.uploadMessage))])]):a("div",[a("p",[a("small",[t._v(" "+t._s(t.$t("footer.version.modalInstalledVersion"))+": "+t._s(t.installed)+" ")])]),t.releaseNotes?a("div",{domProps:{innerHTML:t._s(t.releaseNotes)}}):a("p",[t._v(" "+t._s(t.$t("footer.version.modalNoReleaseNotes"))+" "),a("a",{attrs:{href:t.releaseNotesUrl(t.available)}},[t._v("GitHub")]),t._v(". ")])])]),a("div",{staticClass:"modal-footer d-flex justify-content-between"},[a("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button",disabled:t.updateStarted,"data-bs-dismiss":"modal"}},[t._v(" "+t._s(t.$t("footer.version.modalCancel"))+" ")]),a("div",[t.hasUpdater?a("button",{staticClass:"btn btn-primary",attrs:{type:"button",disabled:t.updateStarted},on:{click:t.update}},[t.updateStarted?a("span",[a("span",{staticClass:"spinner-border spinner-border-sm",attrs:{role:"status","aria-hidden":"true"}}),t._v(" "+t._s(t.$t("footer.version.modalUpdate"))+" ")]):a("span",[t._v(t._s(t.$t("footer.version.modalUpdateNow")))])]):a("a",{staticClass:"btn btn-primary",attrs:{href:t.releaseNotesUrl(t.available)}},[t._v(" "+t._s(t.$t("footer.version.modalDownload"))+" ")])])])])])])])},tt=[],et={name:"Version",props:{installed:String,available:String,releaseNotes:String,commit:String,hasUpdater:Boolean,uploadMessage:String,uploadProgress:Number},data:function(){return{updateStarted:!1,updateStatus:""}},computed:{githubHashUrl:function(){return"https://github.com/evcc-io/evcc/commit/"+this.commit},newVersionAvailable:function(){return this.available&&"[[.Version]]"!=this.installed&&"0.0.1-alpha"!=this.installed&&this.available!=this.installed}},methods:{update:async function(){try{await m.post("update"),this.updateStatus=this.$t("footer.version.modalUpdateStatusStart"),this.updateStarted=!0}catch(t){this.updateStatus=this.$t("footer.version.modalUpdateStatusStart")+t}},releaseNotesUrl:function(t){return"https://github.com/evcc-io/evcc/releases/tag/"+t}}},at=et,it=(a("14fa"),Object(Z["a"])(at,X,tt,!1,null,"7872ae76",null)),st=it.exports,nt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("button",{staticClass:"btn btn-link pe-0 text-decoration-none link-dark text-nowrap",attrs:{"data-bs-toggle":"modal","data-bs-target":"#savingsModal"}},[a("span",{staticClass:"d-inline d-sm-none"},[t._v(t._s(t.$t("footer.savings.footerShort",{percent:t.percent})))]),a("span",{staticClass:"d-none d-sm-inline"},[t._v(t._s(t.$t("footer.savings.footerLong",{percent:t.percent})))]),a("fa-icon",{staticClass:"icon ms-2 text-evcc",attrs:{icon:"sun"}})],1),a("div",{ref:"modal",staticClass:"modal fade",attrs:{id:"savingsModal",tabindex:"-1",role:"dialog","aria-hidden":"true"}},[a("div",{staticClass:"modal-dialog modal-dialog-centered modal-dialog-scrollable",attrs:{role:"document"}},[a("div",{staticClass:"modal-content"},[a("div",{staticClass:"modal-header"},[a("h5",{staticClass:"modal-title"},[a("span",{staticClass:"d-block d-sm-none"},[t._v(" "+t._s(t.$t("footer.savings.modalTitleShort",{percent:t.percent,total:t.fmtKw(1e3*t.totalCharged,!0,!1)}))+" ")]),a("span",{staticClass:"d-none d-sm-block"},[t._v(" "+t._s(t.$t("footer.savings.modalTitleLong",{percent:t.percent,total:t.fmtKw(1e3*t.totalCharged,!0,!1)}))+" ")])]),a("button",{staticClass:"btn-close",attrs:{type:"button","data-bs-dismiss":"modal","aria-label":"Close"}})]),a("div",{staticClass:"modal-body py-4"},[a("div",{staticClass:"chart-container mb-3"},[a("div",{staticClass:"chart-legend d-flex flex-wrap justify-content-between mb-1"},[a("div",{staticClass:"text-nowrap"},[a("fa-icon",{staticClass:"text-evcc",attrs:{icon:"square"}}),t._v(" "+t._s(t.$t("footer.savings.modalChartSelf",{self:t.fmtKw(1e3*t.selfConsumptionCharged,!0,!1)}))+" ")],1),a("div",{staticClass:"text-nowrap"},[a("fa-icon",{staticClass:"text-grid",attrs:{icon:"square"}}),t._v(" "+t._s(t.$t("footer.savings.modalChartGrid",{grid:t.fmtKw(1e3*t.gridCharged,!0,!1)}))+" ")],1)]),a("div",{staticClass:"chart d-flex justify-content-stretch mb-1 rounded overflow-hidden"},[t.totalCharged>0?a("div",{staticClass:"chart-item chart-item--self d-flex justify-content-center text-white flex-shrink-1",style:{width:t.percent+"%"}},[a("span",{staticClass:"text-truncate"},[t._v(" "+t._s(t.percent)+"% ")])]):t._e(),t.totalCharged>0?a("div",{staticClass:"chart-item chart-item--grid d-flex justify-content-center text-white flex-shrink-1",style:{width:100-t.percent+"%"}},[a("span",{staticClass:"text-truncate"},[t._v(" "+t._s(100-t.percent)+"% ")])]):t._e(),0===t.totalCharged?a("div",{staticClass:"chart-item chart-item--no-data d-flex justify-content-center text-white w-100"},[a("span",[t._v(t._s(t.$t("footer.savings.modalNoData")))])]):t._e()])]),a("p",{staticClass:"mb-3"},[t._v(" "+t._s(t.$t("footer.savings.modalSavingsPrice"))+": "),a("strong",[t._v(t._s(t.fmtPricePerKWh(t.effectivePrice,t.currency)))]),a("br"),t._v(" "+t._s(t.$t("footer.savings.modalSavingsTotal"))+": "),a("strong",[t._v(t._s(t.fmtMoney(t.amount,t.currency)))])]),a("p",{staticClass:"small text-muted mb-3"},[a("a",{staticClass:"text-muted",attrs:{href:"https://docs.evcc.io/docs/guides/setup/#ersparnisberechnung",target:"_blank"}},[t._v(" "+t._s(t.$t("footer.savings.modalExplaination")))]),t._v(": "),a("span",{staticClass:"text-nowrap"},[t._v(" "+t._s(t.$t("footer.savings.modalExplainationGrid",{gridPrice:t.fmtPricePerKWh(t.gridPrice,t.currency)})))]),t._v(", "),a("span",{staticClass:"text-nowrap"},[t._v(" "+t._s(t.$t("footer.savings.modalExplainationFeedIn",{feedInPrice:t.fmtPricePerKWh(t.feedInPrice,t.currency)}))+" ")]),a("br"),t._v(" "+t._s(t.$t("footer.savings.modalServerStart",{since:t.fmtTimeAgo(t.secondsSinceStart())}))+" ")]),a("hr",{staticClass:"mb-4"}),a("Sponsor",{staticClass:"mb-4",attrs:{sponsor:t.sponsor}}),a("p",{staticClass:"small text-muted mb-0"},[a("strong",{staticClass:"text-primary"},[a("fa-icon",{attrs:{icon:"flask"}}),t._v(" "+t._s(t.$t("footer.savings.experimentalLabel"))+": ")],1),t._v(" "+t._s(t.$t("footer.savings.experimentalText"))+" "),a("a",{attrs:{href:"https://github.com/evcc-io/evcc/discussions/2104",target:"_blank"}},[t._v("GitHub Discussions")]),t._v(". ")])],1)])])])])},ot=[],rt={data:function(){return{fmtLimit:100,fmtDigits:1}},methods:{round:function(t,e){var a=10**e;return(Math.round(t*a)/a).toFixed(e)},fmt:function(t){return void 0===t||null===t?0:(t=Math.abs(t),t>=this.fmtLimit?this.round(t/1e3,this.fmtDigits):this.round(t,0))},fmtKw:function(t,e=!0,a=!0){const i=e?1:0,s=e?t/1e3:t;let n="";return a&&(n=e?" kW":" W"),this.$n(s,{minimumFractionDigits:i,maximumFractionDigits:i})+n},fmtUnit:function(t){return Math.abs(t)>=this.fmtLimit?"k":""},fmtDuration:function(t){if(t<=0||null==t)return"—";var e="0"+t%60,a="0"+Math.floor(t/60)%60,i=""+Math.floor(t/3600);return i.length<2&&(i="0"+i),i+":"+a.substr(-2)+":"+e.substr(-2)},fmtShortDuration:function(t=0,e=!1){if(t<=0)return"—";var a=t%60,i=Math.floor(t/60)%60,s=Math.floor(t/3600),n="";return n=s>=1?s+":"+(""+i).padStart(2,"0"):i>=1?i+":"+(""+a).padStart(2,"0"):""+a,e&&(n+=this.fmtShortDurationUnit(t)),n},fmtShortDurationUnit:function(t=0){if(t<=0)return"";var e=Math.floor(t/60)%60,a=Math.floor(t/3600);return a>=1?"h":e>=1?"m":"s"},fmtDayString:function(t){const e=""+t.getFullYear(),a=(""+(t.getMonth()+1)).padStart(2,"0"),i=(""+t.getDate()).padStart(2,"0");return`${e}-${a}-${i}`},fmtTimeString:function(t){const e=(""+t.getHours()).padStart(2,"0"),a=(""+t.getMinutes()).padStart(2,"0");return`${e}:${a}`},fmtAbsoluteDate:function(t){return new Intl.DateTimeFormat(this.$i18n.locale,{weekday:"short",hour:"numeric",minute:"numeric"}).format(t)},fmtMoney:function(t=0,e="EUR"){return this.$n(t,{style:"currency",currency:e})},fmtPricePerKWh:function(t=0,e="EUR"){let a=e,i=t,s=3;return["EUR","USD"].includes(e)&&(i*=100,a="ct",s=1),`${this.$n(i,{style:"decimal",maximumFractionDigits:s})} ${a}/kWh`},fmtTimeAgo:function(t){const e={day:864e5,hour:36e5,minute:6e4,second:1e3},a=new Intl.RelativeTimeFormat(this.$i18n.locale,{numeric:"auto"});for(var i in e)if(Math.abs(t)>e[i]||"second"==i)return a.format(Math.round(t/e[i]),i)}}},lt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return t.sponsor?a("div",[a("p",{staticClass:"mb-3"},[t._v(" "+t._s(t.$t("footer.sponsor.thanks",{sponsor:t.sponsor}))+" ")]),a("div",{staticClass:"d-flex justify-content-center flex-column"},[a("button",{ref:"confetti",staticClass:"btn btn-primary mb-2 confetti-button bg-evcc",on:{click:t.surprise}},[a("fa-icon",{staticClass:"icon me-1 solid",attrs:{icon:["fas","heart"]}}),t._v(" "+t._s(t.$t("footer.sponsor.confetti"))+" ")],1),a("a",{staticClass:"small text-muted text-center",attrs:{href:"https://evcc.io/sticker",target:"_blank"}},[t._v(" "+t._s(t.$t("footer.sponsor.sticker"))+" ")])])]):a("div",[a("p",{staticClass:"mb-3"},[t._v(" "+t._s(t.$t("footer.sponsor.supportUs"))+" ")]),a("div",{staticClass:"d-flex justify-content-center flex-column"},[a("a",{staticClass:"btn btn-outline-primary mb-2",attrs:{target:"_blank",href:"https://github.com/sponsors/andig"}},[a("fa-icon",{staticClass:"icon me-1",attrs:{icon:["far","heart"]}}),t._v(" "+t._s(t.$t("footer.sponsor.becomeSponsor"))+" ")],1),a("div",{staticClass:"small text-muted text-center"},[t._v(" "+t._s(t.$t("footer.sponsor.confettiPromise"))+" ")])])])},ct=[],dt=a("7129"),ut={name:"Sponsor",props:{sponsor:String},methods:{surprise:function(){const t=this.$refs.confetti,e=45+90*Math.random(),a=0,{top:i,height:s,left:n,width:o}=t.getBoundingClientRect(),r=(n+o/2)/window.innerWidth,l=(i+s/2)/window.innerHeight,c={x:r,y:l};Object(dt["a"])({origin:c,angle:e,particleCount:75+50*Math.random(),spread:50+50*Math.random(),drift:a,scalar:1.3,zIndex:1056,colors:["#0d6efd","#0fdd42","#408458","#4923BA","#5BC8EC","#C54482","#CC444A","#EE8437","#F7C144","#FFFD54"]})}}},mt=ut,pt=(a("357f"),Object(Z["a"])(mt,lt,ct,!1,null,"6edb9fae",null)),ht=pt.exports,gt={name:"Savings",components:{Sponsor:ht},mixins:[rt],props:{selfConsumptionPercent:Number,since:{type:Number,default:0},sponsor:String,amount:{type:Number,default:0},effectivePrice:{type:Number,default:0},totalCharged:{type:Number,default:0},gridCharged:{type:Number,default:0},selfConsumptionCharged:{type:Number,default:0},gridPrice:{type:Number},feedInPrice:{type:Number},currency:String},computed:{percent(){return Math.round(this.selfConsumptionPercent)||0}},methods:{secondsSinceStart(){return 1e3*this.since-Date.now()}}},vt=gt,ft=(a("1cf6"),Object(Z["a"])(vt,nt,ot,!1,null,"bd18982c",null)),bt=ft.exports,Ct={name:"Footer",components:{Version:st,Savings:bt},props:{version:Object,sponsor:String,savings:Object}},_t=Ct,wt=Object(Z["a"])(_t,J,Q,!1,null,null,null),yt=wt.exports,St=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("button",{directives:[{name:"show",rawName:"v-show",value:t.iconVisible,expression:"iconVisible"}],staticClass:"btn btn-link text-decoration-none link-light text-nowrap",attrs:{href:"#","data-bs-toggle":"modal","data-bs-target":"#notificationModal"}},[a("fa-icon",{class:t.iconClass,attrs:{icon:"exclamation-triangle"}})],1),a("div",{staticClass:"modal fade",attrs:{id:"notificationModal",tabindex:"-1",role:"dialog","aria-hidden":"true"}},[a("div",{staticClass:"modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable",attrs:{role:"document"}},[a("div",{staticClass:"modal-content"},[a("div",{staticClass:"modal-header"},[a("h5",{staticClass:"modal-title"},[t._v(t._s(t.$t("notifications.modalTitle")))]),a("button",{staticClass:"btn-close",attrs:{type:"button","data-bs-dismiss":"modal","aria-label":"Close"}})]),a("div",{staticClass:"modal-body"},t._l(t.notifications,(function(e,i){return a("div",{key:i},[a("small",{staticClass:"d-flex justify-content-end mt-3",attrs:{title:t.fmtAbsoluteDate(e.time)}},[t._v(" "+t._s(t.fmtTimeAgo(e.time-new Date))+" ")]),a("p",{staticClass:"d-flex align-items-baseline"},[a("fa-icon",{staticClass:"flex-grow-0 d-block",class:{"text-danger":"error"===e.type,"text-warning":"warn"===e.type},attrs:{icon:"exclamation-triangle"}}),a("span",{staticClass:"flex-grow-1 px-2 py-1 text-break"},[t._v(" "+t._s(e.message)+" ")]),e.count>1?a("span",{staticClass:"badge rounded-pill bg-secondary"},[t._v(" "+t._s(e.count)+" ")]):t._e()],1)])})),0),a("div",{staticClass:"modal-footer"},[a("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button","data-bs-dismiss":"modal","aria-label":"Close"},on:{click:t.clear}},[t._v(" "+t._s(t.$t("notifications.dismissAll"))+" ")])])])])])])},xt=[],Tt={name:"Notifications",mixins:[rt],props:{notifications:Array},computed:{iconVisible:function(){return this.notifications.length>0},iconClass:function(){return this.notifications.find(t=>"error"===t.type)?"text-danger":"text-warning"}},created:function(){this.interval=setInterval(()=>{this.$forceUpdate()},1e4)},destroyed:function(){clearTimeout(this.interval)},methods:{clear:function(){window.app&&window.app.clear()}}},kt=Tt,Dt=Object(Z["a"])(kt,St,xt,!1,null,null,null),Pt=Dt.exports;function $t(t,e,a){const s=e.shift();t[s]||i["a"].set(t,s,{}),e.length?$t(t[s],e,a):a&&"object"===typeof a&&!Array.isArray(a)?t[s]={...t[s],...a}:t[s]=a}const Nt={state:{loadpoints:[]},update:function(t){Object.keys(t).forEach((function(e){"function"===typeof window.app[e]?window.app[e]({message:t[e]}):$t(Nt.state,e.split("."),t[e])}))}};var Lt=Nt;const{protocol:It,hostname:Et,port:At,pathname:Bt}=window.location,jt=o.a.create({baseURL:It+"//"+Et+(At?":"+At:"")+Bt+"/"});jt.interceptors.response.use(t=>t,t=>{const e=t.config.baseURL+t.config.url,a=`${t.message}: API request failed ${e}`;window.app.error({message:a})});var Mt=jt,Rt={name:"App",components:{Logo:Y,Footer:yt,Notifications:Pt},props:{notifications:Array},data:function(){return{compact:!1,store:this.$root.$data.store,installedVersion:window.evcc.version,commit:window.evcc.commit}},computed:{version:function(){return{installed:this.installedVersion,available:this.store.state.availableVersion,releaseNotes:this.store.state.releaseNotes,hasUpdater:this.store.state.hasUpdater,uploadMessage:this.store.state.uploadMessage,uploadProgress:this.store.state.uploadProgress}},title:function(){return this.store.state.siteTitle},sponsor:function(){return this.store.state.sponsor},savings:function(){return{since:this.store.state.savingsSince,totalCharged:this.store.state.savingsTotalCharged,gridCharged:this.store.state.savingsGridCharged,selfConsumptionCharged:this.store.state.savingsSelfConsumptionCharged,amount:this.store.state.savingsAmount,effectivePrice:this.store.state.savingsEffectivePrice,selfConsumptionPercent:this.store.state.savingsSelfConsumptionPercent,gridPrice:this.store.state.tariffGrid,feedInPrice:this.store.state.tariffFeedIn,currency:this.store.state.currency}},logoutCount(){return this.providerLogins.filter(t=>!t.loggedIn).length},providerLogins(){return this.store.state.auth?Object.entries(this.store.state.auth.vehicles).map(([t,e])=>({title:t,loggedIn:e.authenticated,loginPath:e.uri+"/login",logoutPath:e.uri+"/logout"})):[]}},created:function(){const t=new URLSearchParams(window.location.search);this.compact=t.get("compact"),setTimeout(this.connect,0)},methods:{connect:function(){const t="WebSocket"in window;if(!t)return void window.app.error({message:"Web sockets not supported. Please upgrade your browser."});const e=window.location,a="https:"==e.protocol?"wss:":"ws:",i=a+"//"+e.hostname+(e.port?":"+e.port:"")+e.pathname+"ws",s=new WebSocket(i);s.onerror=()=>{s.close()},s.onclose=()=>{window.setTimeout(this.connect,1e3)},s.onmessage=t=>{try{var e=JSON.parse(t.data);Lt.update(e)}catch(a){window.app.error({message:`Failed to parse web socket data: ${a.message} [${t.data}]`})}}},reload(){window.location.reload()},handleProviderAuthorization:async function(t){t.loggedIn?Mt.post(t.logoutPath):Mt.post(t.loginPath).then((function(t){window.location.href=t.data.loginUri}))}},metaInfo(){return{title:this.title?"evcc | "+this.title:"evcc"}}},Ut=Rt,zt=(a("c1a8"),Object(Z["a"])(Ut,p,h,!1,null,"63bd1ae6",null)),Vt=zt.exports,Wt=a("8c4f"),Ht=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"container"},[t.configured?a("Site",t._b({},"Site",t.state,!1)):a("div",[a("div",{staticClass:"row py-5"},[a("div",{staticClass:"col12"},[a("p",{staticClass:"h1 pt-5 pb-2 border-bottom"},[t._v("Willkommen bei evcc")]),a("p",{staticClass:"lead pt-2"},[a("b",[t._v("evcc")]),t._v(" ist dient zur flexiblen Ladesteuerung von Elektrofahrzeugen. ")]),a("p",{staticClass:"pt-2"},[t._v(" Es sieht aus, als wäre Dein "),a("b",[t._v("evcc")]),t._v(" noch nicht konfiguriert. Um "),a("b",[t._v("evcc")]),t._v(" zu konfigurieren sind die folgenden Schritte notwendig: ")]),a("ol",{staticClass:"pt-2"},[a("li",[t._v(" Erzeugen einer Konfigurationsdatei mit Namen "),a("code",[t._v("evcc.yaml")]),t._v(". Die Standardkonfiguration "),a("code",[t._v("evcc.dist.yaml")]),t._v(" kann dafür als Vorlage dienen ("),a("a",{attrs:{href:"https://github.com/evcc-io/evcc/blob/master/evcc.dist.yaml"}},[t._v("Download")]),t._v("). ")]),a("li",[t._v("Konfiguration der Wallbox als "),a("code",[t._v("chargers")]),t._v(".")]),a("li",[t._v(" Konfiguration des EVU Zählers und evtl. weiterer Zähler unter "),a("code",[t._v("meters")]),t._v(". ")]),a("li",[t._v(" Konfiguration des Netzanschlusses unter "),a("code",[t._v("site")]),t._v(". In einer Site wird der Netzanschluss mit dem konfigurierten EVU Zähler ("),a("code",[t._v("meter")]),t._v(") verbunden. ")]),a("li",[t._v(" Konfiguration eines Ladepunktes unter "),a("code",[t._v("loadpoints")]),t._v(". In einem Ladepunkt wird die konfigurierte Wallbox ("),a("code",[t._v("charger")]),t._v(") mit dem Ladepunkt verbunden. ")]),a("li",[t._v(" Start von "),a("b",[t._v("evcc")]),t._v(" mit der neu erstellten Konfiguration: "),a("code",[t._v("evcc -c evcc.yaml")])])]),a("p",[t._v("Minimale Beispielkonfiguration für "),a("b",[t._v("evcc")]),t._v(":")]),a("p",[a("code",[a("pre",{staticClass:"mx-3"},[t._v("                uri: localhost:7070 # Adresse für UI\n                interval: 10s # Regelintervall\n                meters:\n                - name: evu-zähler\n                type: ... # Detailkonfiguration des EVU Zählers\n                - name: ladezähler\n                type: ... # Detailkonfiguration des Ladezählers (optional)\n                chargers:\n                - name: wallbox\n                type: ... # Detailkonfiguration der Wallbox\n                site:\n                  title: Home\n                  meters:\n                  grid: evu-zähler # EVU Zähler\n                loadpoints:\n                - title: Ladepunkt # ui display name\n                  charger: wallbox # charger\n                  meters:\n                    charge: ladezähler # Ladezählers (optional)\n              ")])])]),a("p",[t._v(" Viel Spass mit "),a("b",[t._v("evcc")]),t._v("! Bei Problemen kannst Du uns auf "),a("a",{attrs:{href:"https://github.com/evcc-io/evcc/issues"}},[t._v("GitHub")]),t._v(" erreichen. ")])])])])],1)},Ot=[],Ft=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"flex-grow-1 d-flex flex-column"},[a("h3",{staticClass:"d-none d-md-block my-4"},[t._v(" "+t._s(t.siteTitle||"Home")+" ")]),a("Energyflow",t._b({},"Energyflow",t.energyflow,!1)),a("hr",{staticClass:"w-100 my-4"}),a("div",{staticClass:"flex-grow-1 d-flex justify-content-around flex-column"},[t._l(t.loadpoints,(function(e,i){return[i>0?a("hr",{key:i+"_hr",staticClass:"w-100 my-4"}):t._e(),a("Loadpoint",t._b({key:i,attrs:{id:i,single:1===t.loadpoints.length}},"Loadpoint",e,!1))]}))],2)],1)},Kt=[],Gt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("div",{staticClass:"row align-items-start align-items-md-center mt-4 energyflow",on:{click:t.toggleDetails}},[a("Visualization",{staticClass:"col-12 offset-md-1 col-md-6 offset-lg-1 col-lg-8 offset-xl-1 col-xl-6 offset-xxl-1 col-xl-8 order-md-2",attrs:{showDetails:t.showDetails,gridImport:t.gridImport,selfConsumption:t.selfConsumption,loadpoints:t.loadpointsPower,pvExport:t.pvExport,batteryCharge:t.batteryCharge,batteryDischarge:t.batteryDischarge,pvProduction:t.pvProduction,homePower:t.homePower,batterySoC:t.batterySoC,valuesInKw:t.valuesInKw}}),a("div",{staticClass:"col-12 col-sm-6 col-md-5 col-lg-3 col-xl-3 order-md-1 mt-2 mt-md-0",class:t.showDetails?"d-block":"d-none d-md-block"},[a("div",{staticClass:"d-flex justify-content-between",attrs:{"data-test-pv-production":""}},[a("span",{staticClass:"details-icon text-muted"},[a("fa-icon",{attrs:{icon:"sun"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$t("main.energyflow.pvProduction")))]),a("span",{staticClass:"text-end text-nowrap ps-1"},[t._v(t._s(t.kw(t.pvProduction)))])]),a("div",{staticClass:"d-flex justify-content-between",attrs:{"data-test-home-power":""}},[a("span",{staticClass:"details-icon text-muted"},[a("fa-icon",{attrs:{icon:"home"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$t("main.energyflow.homePower")))]),a("span",{staticClass:"text-end text-nowrap ps-1"},[t._v(t._s(t.kw(t.homePower)))])]),a("div",{staticClass:"d-flex justify-content-between",attrs:{"data-test-loadpoints":""}},[a("span",{staticClass:"details-icon text-muted"},[a("fa-icon",{attrs:{icon:"car"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$tc("main.energyflow.loadpoints",t.activeLoadpointsCount,{count:t.activeLoadpointsCount})))]),a("span",{staticClass:"text-end text-nowrap ps-1"},[t._v(t._s(t.kw(t.loadpointsPower)))])]),t.batteryConfigured?a("div",{staticClass:"d-flex justify-content-between",attrs:{"data-test-battery":""}},[a("span",{staticClass:"details-icon text-muted"},[a("BatteryIcon",{attrs:{soc:t.batterySoC,charge:t.batteryCharge>0,discharge:t.batteryDischarge>0}})],1),a("span",{staticClass:"text-nowrap flex-grow-1 text-truncate"},[t.batteryCharge?a("span",[t._v(t._s(t.$t("main.energyflow.batteryCharge")))]):t.batteryDischarge?a("span",[t._v(t._s(t.$t("main.energyflow.batteryDischarge")))]):a("span",[t._v(t._s(t.$t("main.energyflow.battery")))])]),a("span",{staticClass:"text-end text-nowrap ps-1"},[t._v(" "+t._s(t.batterySoC)+"% / "+t._s(t.kw(Math.abs(t.batteryPower)))+" ")])]):t._e()]),t.showDetails?a("div",{staticClass:"col-12 col-sm-6 offset-md-6 col-md-6 offset-lg-4 col-lg-8 d-block d-md-flex order-md-3 justify-content-between mt-2"},[a("div",{staticClass:"text-nowrap d-flex d-md-block",attrs:{"data-test-grid-import":""}},[a("span",{staticClass:"color-grid details-icon"},[a("fa-icon",{attrs:{icon:"square"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$t("main.energyflow.gridImport")))]),a("span",{staticClass:"text-end text-nowrap d-md-none"},[t._v(" "+t._s(t.kw(t.gridImport))+" ")])]),a("div",{staticClass:"text-nowrap d-flex d-md-block",attrs:{"data-test-self-consumption":""}},[a("span",{staticClass:"color-self details-icon"},[a("fa-icon",{attrs:{icon:"square"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$t("main.energyflow.selfConsumption")))]),a("span",{staticClass:"text-end text-nowrap d-md-none"},[t._v(" "+t._s(t.kw(t.selfConsumption))+" ")])]),a("div",{staticClass:"text-nowrap d-flex d-md-block",attrs:{"data-test-pv-export":""}},[a("span",{staticClass:"color-export details-icon"},[a("fa-icon",{attrs:{icon:"square"}})],1),a("span",{staticClass:"text-nowrap flex-grow-1"},[t._v(t._s(t.$t("main.energyflow.pvExport")))]),a("span",{staticClass:"text-end text-nowrap d-md-none"},[t._v(" "+t._s(t.kw(t.pvExport))+" ")])])]):t._e()],1)])},Zt=[],qt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"visualization",class:{"visualization--ready":t.visualizationReady}},[a("div",{staticClass:"label-scale"},[a("div",{staticClass:"d-flex justify-content-start"},[a("LabelBar",t._b({},"LabelBar",t.labelBarProps("top","pvProduction"),!1),[a("fa-icon",{attrs:{icon:"sun"}})],1),a("LabelBar",t._b({},"LabelBar",t.labelBarProps("top","batteryDischarge"),!1),[a("BatteryIcon",{attrs:{soc:t.batterySoC,discharge:""}})],1),a("LabelBar",t._b({},"LabelBar",t.labelBarProps("top","gridImport"),!1),[a("GridIcon",{attrs:{import:""}})],1)],1)]),a("div",{ref:"site_progress",staticClass:"site-progress"},[a("div",{staticClass:"site-progress-bar self-consumption",style:{width:t.widthTotal(t.selfConsumptionAdjusted)}},[t.powerLabelEnoughSpace(t.selfConsumption)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kw(t.selfConsumption))+" ")]):t.powerLabelSomeSpace(t.selfConsumption)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kwNoUnit(t.selfConsumption))+" ")]):t._e()]),a("div",{staticClass:"site-progress-bar grid-import",style:{width:t.widthTotal(t.gridImportAdjusted)}},[t.powerLabelEnoughSpace(t.gridImport)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kw(t.gridImport))+" ")]):t.powerLabelSomeSpace(t.gridImport)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kwNoUnit(t.gridImport))+" ")]):t._e()]),a("div",{staticClass:"site-progress-bar pv-export",style:{width:t.widthTotal(t.pvExportAdjusted)}},[t.powerLabelEnoughSpace(t.pvExport)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kw(t.pvExport))+" ")]):t.powerLabelSomeSpace(t.pvExport)?a("span",{staticClass:"power"},[t._v(" "+t._s(t.kwNoUnit(t.pvExport))+" ")]):t._e()]),t.totalAdjusted<=0?a("div",{staticClass:"site-progress-bar bg-light border no-wrap w-100"},[a("span",[t._v(t._s(t.$t("main.energyflow.noEnergy")))])]):t._e()]),a("div",{staticClass:"label-scale"},[a("div",{staticClass:"d-flex justify-content-start"},[a("LabelBar",t._b({},"LabelBar",t.labelBarProps("bottom","homePower"),!1),[a("fa-icon",{attrs:{icon:"home"}})],1),a("LabelBar",t._b({},"LabelBar",t.labelBarProps("bottom","loadpoints"),!1),[a("fa-icon",{attrs:{icon:"car"}})],1),a("LabelBar",t._b({},"LabelBar",t.labelBarProps("bottom","batteryCharge"),!1),[a("BatteryIcon",{attrs:{soc:t.batterySoC,charge:""}})],1),a("LabelBar",t._b({},"LabelBar",t.labelBarProps("bottom","gridExport"),!1),[a("GridIcon",{attrs:{export:""}})],1)],1)])])},Yt=[],Jt=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{class:{"power--in":t.charge,"power--out":t.discharge}},[a("fa-icon",{staticClass:"battery",attrs:{icon:t.batteryIcon}}),a("fa-icon",{staticClass:"arrow",attrs:{icon:"angle-double-right"}})],1)},Qt=[],Xt={name:"BatteryIcon",props:{discharge:{type:Boolean},charge:{type:Boolean},soc:{type:Number,default:0}},computed:{batteryIcon:function(){return this.soc>80?"battery-full":this.soc>60?"battery-three-quarters":this.soc>40?"battery-half":this.soc>20?"battery-quarter":"battery-empty"}}},te=Xt,ee=(a("702d"),Object(Z["a"])(te,Jt,Qt,!1,null,"2dcca16c",null)),ae=ee.exports,ie=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{class:{"power-import":this.import,"power-export":this.export}},[a("svg",{staticClass:"grid svg-inline--fa fa-home fa-w-18",attrs:{viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve"}},[a("path",{attrs:{fill:"currentColor",d:"M217.529 46.629H83.817c-8.83 0-16 7.169-16 16v32c0 .196.004.391.011.586v51.22c0 6.209 5.041 11.25 11.25 11.25h22.5c6.209 0 11.25-5.041 11.25-11.25v-35.806h104.701v84.697H83.577c-8.83 0-16 7.169-16 16v32c0 .196.004.391.011.586v51.22c0 6.209 5.041 11.25 11.25 11.25h22.5c6.209 0 11.25-5.041 11.25-11.25v-35.806h104.941v49.925L176.47 506.932l160 .033-39.179-197.538v-50.101h100.402v35.756c0 6.257 5.08 11.337 11.337 11.337h22.674c6.257 0 11.337-5.08 11.337-11.337v-83.756c0-8.831-7.169-16-16-16h-129.75v-84.697h100.642v35.756c0 6.257 5.08 11.337 11.337 11.337h22.674c6.257 0 11.337-5.08 11.337-11.337V62.629c0-8.831-7.169-16-16-16h-129.99V26.162c-.043-12.777-40.058-18.846-40.159-18.633 0 0-39.66 6.092-39.603 18.633v20.467Z"}})]),a("fa-icon",{staticClass:"arrow",attrs:{icon:"angle-double-right"}})],1)},se=[],ne={name:"GridIcon",props:{import:{type:Boolean},export:{type:Boolean}}},oe=ne,re=(a("06aa"),Object(Z["a"])(oe,ie,se,!1,null,"c8e84f48",null)),le=re.exports,ce=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"label-bar",class:{"label-bar--hide-icon":t.hideIcon,"label-bar--hidden":!t.value,"label-bar--top":t.top,"label-bar--bottom":t.bottom,"label-bar--first":t.first,"label-bar--last":t.last}},[a("div",{staticClass:"label-bar-scale"},[a("div",{staticClass:"label-bar-icon"},[t._t("default")],2)])])},de=[],ue={name:"LabelBar",props:{value:{type:Number,default:0},hideIcon:{type:Boolean},top:{type:Boolean},bottom:{type:Boolean},first:{type:Boolean},last:{type:Boolean}}},me=ue,pe=(a("67e4"),Object(Z["a"])(me,ce,de,!1,null,"17da7e54",null)),he=pe.exports,ge={name:"Visualization",components:{BatteryIcon:ae,LabelBar:he,GridIcon:le},mixins:[rt],props:{showDetails:Boolean,gridImport:{type:Number,default:0},selfConsumption:{type:Number,default:0},pvExport:{type:Number,default:0},loadpoints:{type:Number,default:0},batteryCharge:{type:Number,default:0},batteryDischarge:{type:Number,default:0},pvProduction:{type:Number,default:0},homePower:{type:Number,default:0},batterySoC:{type:Number,default:0},valuesInKw:{type:Boolean,default:!1}},data:function(){return{width:0,visualizationReady:!1}},computed:{gridExport:function(){return this.pvExport},totalRaw:function(){return this.gridImport+this.selfConsumption+this.pvExport},gridImportAdjusted:function(){return this.applyThreshold(this.gridImport)},selfConsumptionAdjusted:function(){return this.applyThreshold(this.selfConsumption)},pvExportAdjusted:function(){return this.applyThreshold(this.pvExport)},totalAdjusted:function(){return this.gridImportAdjusted+this.selfConsumptionAdjusted+this.pvExportAdjusted}},watch:{showDetails:function(){this.$nextTick(()=>this.updateElementWidth())},totalAdjusted:function(){!this.visualizationReady&&this.totalAdjusted>0&&setTimeout(()=>{this.visualizationReady=!0},500)}},mounted:function(){this.$nextTick((function(){window.addEventListener("resize",this.updateElementWidth),this.updateElementWidth()}))},beforeDestroy(){window.removeEventListener("resize",this.updateElementWidth)},methods:{widthTotal:function(t){return 0===this.totalAdjusted?"0%":100/this.totalAdjusted*t+"%"},kw:function(t){return this.fmtKw(t,this.valuesInKw,!0)},kwNoUnit:function(t){return this.fmtKw(t,this.valuesInKw,!1)},powerLabelAvailableSpace(t){if(0===this.totalAdjusted)return 0;const e=100/this.totalAdjusted*t;return this.width/100*e},powerLabelEnoughSpace(t){return this.powerLabelAvailableSpace(t)>60},powerLabelSomeSpace(t){return this.powerLabelAvailableSpace(t)>35},hideLabelIcon(t,e=32){if(0===this.totalAdjusted)return!0;const a=100/this.totalAdjusted*t;return this.width/100*a<e},applyThreshold(t){const e=100/this.totalRaw*t;return e<2?0:t},updateElementWidth(){this.width=this.$refs.site_progress.getBoundingClientRect().width},isLabelFirst(t,e){return this.isLabel(t,e,!1)},isLabelLast(t,e){return this.isLabel(t,e,!0)},isLabel(t,e,a){const i={top:["pvProduction","batteryDischarge","gridImport"],bottom:["homePower","loadpoints","batteryCharge","gridExport"]},s=[...i[t]];a&&s.reverse();for(let n=0;n<s.length;n++){const t=s[n];if(this[t]>0)return t===e}return!1},labelBarProps(t,e){const a=this[e],i=e.startsWith("battery")||e.startsWith("grid")?44:32;return{value:a,hideIcon:this.hideLabelIcon(a,i),style:{width:this.widthTotal(a)},first:this.isLabelFirst(t,e),last:this.isLabelLast(t,e),[t]:!0}}}},ve=ge,fe=(a("4f12"),Object(Z["a"])(ve,qt,Yt,!1,null,"0c035ffc",null)),be=fe.exports,Ce={name:"Energyflow",components:{Visualization:be,BatteryIcon:ae},mixins:[rt],props:{gridConfigured:Boolean,gridPower:{type:Number,default:0},homePower:{type:Number,default:0},pvConfigured:Boolean,pvPower:{type:Number,default:0},loadpointsPower:{type:Number,default:0},activeLoadpointsCount:{type:Number,default:0},batteryConfigured:Boolean,batteryPower:{type:Number,default:0},batterySoC:{type:Number,default:0}},data:function(){return{showDetails:!1}},computed:{gridImport:function(){return Math.max(0,this.gridPower)},pvProduction:function(){return this.pvConfigured?Math.abs(this.pvPower):this.pvExport},batteryPowerAdjusted:function(){const t=50;return Math.abs(this.batteryPower)<t?0:this.batteryPower},batteryDischarge:function(){return Math.max(0,this.batteryPowerAdjusted)},batteryCharge:function(){return-1*Math.min(0,this.batteryPowerAdjusted)},selfConsumption:function(){const t=this.batteryDischarge+this.pvProduction,e=this.homePower+this.batteryCharge+this.loadpointsPower;return Math.min(t,e)},pvExport:function(){return Math.max(0,-1*this.gridPower)},valuesInKw:function(){return this.gridImport+this.selfConsumption+this.pvExport>1e3}},methods:{kw:function(t){return this.fmtKw(t,this.valuesInKw)},toggleDetails(){this.showDetails=!this.showDetails}}},_e=Ce,we=(a("c126"),Object(Z["a"])(_e,Gt,Zt,!1,null,"c2b4f05e",null)),ye=we.exports,Se=ye,xe=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("p",{staticClass:"h3 mb-4 d-sm-block",class:{"d-none":t.single}},[t._v(" "+t._s(t.title||t.$t("main.loadpoint.fallbackName"))+" ")]),"soft"==t.remoteDisabled?a("div",{staticClass:"alert alert-warning mt-4 mb-2",attrs:{role:"alert"}},[t._v(" "+t._s(t.$t("main.loadpoint.remoteDisabledSoft",{source:t.remoteDisabledSource}))+" ")]):t._e(),"hard"==t.remoteDisabled?a("div",{staticClass:"alert alert-danger mt-4 mb-2",attrs:{role:"alert"}},[t._v(" "+t._s(t.$t("main.loadpoint.remoteDisabledHard",{source:t.remoteDisabledSource}))+" ")]):t._e(),a("div",{staticClass:"row"},[a("Mode",{staticClass:"col-12 col-md-6 col-lg-4 mb-4",attrs:{mode:t.mode},on:{updated:t.setTargetMode}}),a("Vehicle",t._b({staticClass:"col-12 col-md-6 col-lg-8 mb-4",on:{"target-soc-updated":t.setTargetSoC,"target-time-updated":t.setTargetTime,"target-time-removed":t.removeTargetTime}},"Vehicle",t.vehicle,!1))],1),a("LoadpointDetails",t._b({},"LoadpointDetails",t.details,!1))],1)},Te=[],ke=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("div",{staticClass:"mb-3"},[t._v(t._s(t.$t("main.mode.title")))]),a("div",{staticClass:"btn-group w-100",attrs:{role:"group"}},[a("button",{staticClass:"btn btn-outline-secondary",class:{active:"off"==t.mode},attrs:{type:"button"},on:{click:function(e){return t.setTargetMode("off")}}},[t._v(" "+t._s(t.$t("main.mode.stop"))+" ")]),a("button",{staticClass:"btn btn-outline-secondary",class:{active:"now"==t.mode},attrs:{type:"button"},on:{click:function(e){return t.setTargetMode("now")}}},[t._v(" "+t._s(t.$t("main.mode.now"))+" ")]),a("button",{staticClass:"btn btn-outline-secondary",class:{active:"minpv"==t.mode},attrs:{type:"button"},on:{click:function(e){return t.setTargetMode("minpv")}}},[a("span",{staticClass:"d-inline d-sm-none"},[t._v(" "+t._s(t.$t("main.mode.minpvShort"))+" ")]),a("span",{staticClass:"d-none d-sm-inline"},[t._v(" "+t._s(t.$t("main.mode.minpvLong"))+" ")])]),a("button",{staticClass:"btn btn-outline-secondary",class:{active:"pv"==t.mode},attrs:{type:"button"},on:{click:function(e){return t.setTargetMode("pv")}}},[a("span",{staticClass:"d-inline d-sm-none"},[t._v(" "+t._s(t.$t("main.mode.pvShort"))+" ")]),a("span",{staticClass:"d-none d-sm-inline"},[t._v(" "+t._s(t.$t("main.mode.pvLong"))+" ")])])])])},De=[],Pe={name:"Mode",props:{mode:String},methods:{setTargetMode:function(t){this.$emit("updated",t)}}},$e=Pe,Ne=(a("46d4"),Object(Z["a"])($e,ke,De,!1,null,"1ff39d22",null)),Le=Ne.exports,Ie=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("div",{staticClass:"mb-3"},[t._v(" "+t._s(t.vehicleTitle||t.$t("main.vehicle.fallbackName"))+" ")]),a("VehicleSoc",t._b({on:{"target-soc-updated":t.targetSocUpdated}},"VehicleSoc",t.vehicleSocProps,!1)),a("VehicleSubline",t._b({staticClass:"my-1",on:{"target-time-updated":t.setTargetTime,"target-time-removed":t.removeTargetTime}},"VehicleSubline",t.vehicleSubline,!1))],1)},Ee=[],Ae={methods:{collectProps:function(t){let e={};for(var a in t.props)e[a]=this[a];return e}}},Be=function(){var t,e,a=this,i=a.$createElement,s=a._self._c||i;return s("div",{staticClass:"vehicle-soc"},[s("div",{staticClass:"progress"},[s("div",{staticClass:"progress-bar",class:(t={"progress-bar-striped":a.charging,"progress-bar-animated":a.charging},t[a.progressColor]=!0,t),style:{width:a.vehicleSoCDisplayWidth+"%"},attrs:{role:"progressbar"}},[a._v(" "+a._s(a.vehicleSoCDisplayValue)+" ")]),a.remainingSoCWidth>0&&a.enabled?s("div",{staticClass:"progress-bar",class:(e={},e[a.progressColor]=!0,e["bg-muted"]=!0,e),style:{width:a.remainingSoCWidth+"%",transition:"none"},attrs:{role:"progressbar"}}):a._e()]),s("div",{staticClass:"target",class:{"target--slider-hidden":a.allowSliderHiding&&100===a.visibleTargetSoC}},[s("div",{staticClass:"target-label d-flex align-items-center justify-content-center",style:{left:a.visibleTargetSoC+"%"}},[a._v(" "+a._s(a.visibleTargetSoC)+"% ")]),s("input",{staticClass:"target-slider",attrs:{type:"range",min:"0",max:"100",step:"5"},domProps:{value:a.visibleTargetSoC},on:{input:a.movedTargetSoC,mousedown:a.changeTargetSoCStart,touchstart:a.changeTargetSoCStart,mouseup:a.changeTargetSoCEnd,touchend:a.changeTargetSoCEnd}})])])},je=[],Me={name:"VehicleSoc",props:{connected:Boolean,vehiclePresent:Boolean,vehicleSoC:Number,enabled:Boolean,charging:Boolean,minSoC:Number,targetSoC:Number},data:function(){return{selectedTargetSoC:null,allowSliderHiding:!1,interactionStartScreenY:null}},computed:{vehicleSoCDisplayWidth:function(){return this.vehiclePresent&&this.vehicleSoC>=0?this.vehicleSoC:100},vehicleSoCDisplayValue:function(){if(!this.vehiclePresent||!this.vehicleSoC||this.vehicleSoC<0){let t=this.$t("main.vehicleSoC.disconnected");return this.charging?t=this.$t("main.vehicleSoC.charging"):this.enabled?t=this.$t("main.vehicleSoC.ready"):this.connected&&(t=this.$t("main.vehicleSoC.connected")),t}let t=this.vehicleSoC;return t>=10&&(t+="%"),t},progressColor:function(){return this.connected?this.minSoCActive?"bg-danger":"bg-primary":"bg-light border"},minSoCActive:function(){return this.minSoC>0&&this.vehicleSoC<this.minSoC},remainingSoCWidth:function(){return 100===this.vehicleSoCDisplayWidth?null:this.minSoCActive?this.minSoC-this.vehicleSoC:this.visibleTargetSoC>this.vehicleSoC?this.visibleTargetSoC-this.vehicleSoC:null},visibleTargetSoC:function(){return Number(this.selectedTargetSoC||this.targetSoC)}},watch:{targetSoC:function(){this.selectedTargetSoC=this.targetSoC}},mounted:function(){setTimeout(()=>{this.allowSliderHiding=!0},1e3)},methods:{changeTargetSoCStart:function(t){const e=t.screenY||t.changedTouches[0].screenY;this.interactionStartScreenY=e},changeTargetSoCEnd:function(t){const e=t.screenY||t.changedTouches[0].screenY,a=Math.abs(e-this.interactionStartScreenY);if(a>80)return t.preventDefault(),t.target.value=this.targetSoC,this.selectedTargetSoC=this.targetSoC,!1;t.target.value!==this.targetSoC&&this.$emit("target-soc-updated",t.target.value)},movedTargetSoC:function(t){const e=20;return t.target.value<e?(t.target.value=e,this.selectedTargetSoC=t.target.value,t.preventDefault(),!1):(this.selectedTargetSoC=t.target.value,!0)}}},Re=Me,Ue=(a("2b2d"),Object(Z["a"])(Re,Be,je,!1,null,"66f68a62",null)),ze=Ue.exports,Ve=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"d-flex justify-content-between align-items-center"},[a("small",{staticClass:"text-secondary"},[t.minSoCActive?a("span",[a("fa-icon",{staticClass:"text-muted me-1",attrs:{icon:"exclamation-circle"}}),t._v(" "+t._s(t.$t("main.vehicleSubline.mincharge",{soc:t.minSoC}))+" ")],1):t._e()]),a("TargetCharge",t._b({on:{"target-time-updated":t.setTargetTime,"target-time-removed":t.removeTargetTime}},"TargetCharge",t.targetCharge,!1))],1)},We=[],He=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("button",{staticClass:"target-time-button btn btn-link btn-sm pe-0",class:{invisible:!t.targetSoC,"text-dark":t.targetTimeActive,"text-secondary":!t.targetTimeActive},attrs:{"data-bs-toggle":"modal","data-bs-target":"#"+t.modalId}},[t._v(" "+t._s(t.targetTimeLabel())),a("fa-icon",{staticClass:"ms-1",attrs:{icon:"clock"}})],1),a("div",{staticClass:"modal fade",attrs:{id:t.modalId,tabindex:"-1",role:"dialog","aria-hidden":"true"}},[a("div",{staticClass:"modal-dialog modal-dialog-centered modal-dialog-scrollable",attrs:{role:"document"}},[a("div",{staticClass:"modal-content"},[a("div",{staticClass:"modal-header"},[a("h5",{staticClass:"modal-title"},[t._v(" "+t._s(t.$t("main.targetCharge.modalTitle"))+" ")]),a("button",{staticClass:"btn-close",attrs:{type:"button","data-bs-dismiss":"modal","aria-label":"Close"}})]),a("form",{on:{submit:function(e){return e.preventDefault(),t.setTargetTime.apply(null,arguments)}}},[a("div",{staticClass:"modal-body"},[a("div",{staticClass:"form-group"},[a("label",{staticClass:"mb-3",attrs:{for:"targetTimeLabel"},domProps:{innerHTML:t._s(t.$t("main.targetCharge.description",{targetSoC:t.targetSoC}))}}),a("div",{staticClass:"d-flex justify-content-between",style:{"max-width":"350px"}},[a("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedDay,expression:"selectedDay"}],staticClass:"form-select me-2",style:{"flex-basis":"60%"},on:{change:function(e){var a=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.selectedDay=e.target.multiple?a:a[0]}}},t._l(t.dayOptions(),(function(e){return a("option",{key:e.value,domProps:{value:e.value}},[t._v(" "+t._s(e.name)+" ")])})),0),a("input",{directives:[{name:"model",rawName:"v-model",value:t.selectedTime,expression:"selectedTime"}],staticClass:"form-control ms-2",style:{"flex-basis":"40%"},attrs:{type:"time",step:300,required:""},domProps:{value:t.selectedTime},on:{input:function(e){e.target.composing||(t.selectedTime=e.target.value)}}})])]),t.selectedTargetTimeValid?t._e():a("p",{staticClass:"text-danger mb-0"},[t._v(" "+t._s(t.$t("main.targetCharge.targetIsInThePast"))+" ")]),a("p",{staticClass:"small mt-3 text-muted"},[a("strong",{staticClass:"text-primary"},[a("fa-icon",{attrs:{icon:"flask"}}),t._v(" "+t._s(t.$t("main.targetCharge.experimentalLabel"))+": ")],1),t._v(" "+t._s(t.$t("main.targetCharge.experimentalText"))+" "),a("a",{attrs:{href:"https://github.com/evcc-io/evcc/discussions/1433",target:"_blank"}},[t._v("GitHub Discussions")]),t._v(". ")])]),a("div",{staticClass:"modal-footer d-flex justify-content-between"},[a("button",{staticClass:"btn btn-outline-secondary",attrs:{type:"button","data-bs-dismiss":"modal"},on:{click:t.removeTargetTime}},[t._v(" "+t._s(t.$t("main.targetCharge.remove"))+" ")]),a("button",{staticClass:"btn btn-primary",attrs:{type:"submit","data-bs-dismiss":"modal",disabled:!t.selectedTargetTimeValid}},[t._v(" "+t._s(t.$t("main.targetCharge.activate"))+" ")])])])])])])])},Oe=[];const Fe=7;var Ke={name:"TargetCharge",mixins:[rt],props:{id:Number,targetTime:String,targetTimeActive:Boolean,targetTimeHourSuggestion:Number,targetSoC:Number},data:function(){return{selectedDay:null,selectedTime:null}},computed:{targetChargeEnabled:function(){return this.targetTime},selectedTargetTimeValid:function(){const t=new Date;return t<this.selectedTargetTime},selectedTargetTime:function(){return new Date(`${this.selectedDay}T${this.selectedTime||"00:00"}`)},modalId:function(){return"targetChargeModal_"+this.id}},watch:{targetTime(){this.initInputFields()}},mounted:function(){this.initInputFields()},methods:{targetTimeLabel:function(){if(this.targetChargeEnabled){const t=new Date(this.targetTime);return this.$t("main.targetCharge.activeLabel",{time:this.fmtAbsoluteDate(t)})}return this.$t("main.targetCharge.inactiveLabel")},defaultDate:function(){const t=new Date;t.setSeconds(0),t.setMinutes(0),Number.isInteger(this.targetTimeHourSuggestion)?t.setUTCHours(this.targetTimeHourSuggestion):t.setHours(Fe);const e=t<new Date;return e&&t.setDate(t.getDate()+1),t},initInputFields:function(){let t=this.defaultDate(),e=new Date(this.targetTime)>new Date;this.targetChargeEnabled&&e&&(t=new Date(this.targetTime)),this.selectedDay=this.fmtDayString(t),this.selectedTime=this.fmtTimeString(t)},dayOptions:function(){const t=[],e=new Date,a=[this.$t("main.targetCharge.today"),this.$t("main.targetCharge.tomorrow")];for(let i=0;i<7;i++){const s=e.toLocaleDateString("default",{month:"short",day:"numeric"}),n=a[i]||e.toLocaleDateString("default",{weekday:"long"});t.push({value:e.toISOString().split("T")[0],name:`${s} (${n})`}),e.setDate(e.getDate()+1)}return t},minTime:function(){return(new Date).toISOString().split("T")[1].slice(0,-8)},setTargetTime:function(){this.$emit("target-time-updated",this.selectedTargetTime)},removeTargetTime:function(){this.$emit("target-time-removed")}}},Ge=Ke,Ze=Object(Z["a"])(Ge,He,Oe,!1,null,null,null),qe=Ze.exports,Ye={name:"VehicleSubline",components:{TargetCharge:qe},mixins:[Ae],props:{id:Number,vehicleSoC:Number,minSoC:Number,targetTime:String,targetTimeActive:Boolean,targetTimeHourSuggestion:Number,targetSoC:Number},computed:{minSoCActive:function(){return this.minSoC>0&&this.vehicleSoC<this.minSoC},targetCharge:function(){return this.collectProps(qe)}},methods:{setTargetTime:function(t){this.$emit("target-time-updated",t)},removeTargetTime:function(){this.$emit("target-time-removed")}}},Je=Ye,Qe=Object(Z["a"])(Je,Ve,We,!1,null,null,null),Xe=Qe.exports,ta={name:"Vehicle",components:{VehicleSoc:ze,VehicleSubline:Xe},mixins:[Ae],props:{id:Number,connected:Boolean,vehiclePresent:Boolean,vehicleSoC:Number,enabled:Boolean,charging:Boolean,minSoC:Number,vehicleTitle:String,targetTimeActive:Boolean,targetTimeHourSuggestion:Number,targetTime:String,targetSoC:Number},computed:{vehicleSocProps:function(){return this.collectProps(ze)},vehicleSubline:function(){return this.collectProps(Xe)}},methods:{targetSocUpdated:function(t){this.$emit("target-soc-updated",t)},setTargetTime:function(t){this.$emit("target-time-updated",t)},removeTargetTime:function(){this.$emit("target-time-removed")}}},ea=ta,aa=Object(Z["a"])(ea,Ie,Ee,!1,null,null,null),ia=aa.exports,sa=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",[a("div",{staticClass:"row"},[a("div",{staticClass:"col-6 col-sm-3 col-lg-2 mt-3 offset-lg-4"},[a("div",{staticClass:"mb-2 value"},[t._v(" "+t._s(t.$t("main.loadpointDetails.power"))+" "),t.chargePower&&t.activePhases?a("div",{directives:[{name:"tooltip",rawName:"v-tooltip",value:{content:t.phaseTooltip},expression:"{ content: phaseTooltip }"}],staticClass:"badge rounded-pill bg-secondary text-light cursor-pointer d-inline-flex align-items-center",attrs:{tabindex:"0"}},[a("div",[t._v(t._s(t.activePhases)+"P")]),t.phaseTimerVisible?a("WaitingDots",{attrs:{direction:"scale1p"===t.phaseAction?"down":"up"}}):t._e()],1):t._e(),"heating"==t.climater?a("fa-icon",{staticClass:"text-primary ms-1",attrs:{icon:"temperature-low"}}):t._e(),"cooling"==t.climater?a("fa-icon",{staticClass:"text-primary ms-1",attrs:{icon:"temperature-high"}}):t._e(),"on"==t.climater?a("fa-icon",{staticClass:"text-primary ms-1",attrs:{icon:"thermometer-half"}}):t._e()],1),a("h3",{staticClass:"value"},[t._v(" "+t._s(t.fmt(t.chargePower))+" "),a("small",{staticClass:"text-muted"},[t._v(t._s(t.fmtUnit(t.chargePower))+"W")]),t.pvTimerVisible?a("small",{directives:[{name:"tooltip",rawName:"v-tooltip",value:{content:t.$t("main.loadpointDetails.tooltip.pv."+t.pvAction,{remaining:t.fmtShortDuration(t.pvRemainingInterpolated,!0)})},expression:"{\n\t\t\t\t\t\tcontent: $t(`main.loadpointDetails.tooltip.pv.${pvAction}`, {\n\t\t\t\t\t\t\tremaining: fmtShortDuration(pvRemainingInterpolated, true),\n\t\t\t\t\t\t}),\n\t\t\t\t\t}"}],staticClass:"text-muted cursor-pointer d-inline-block align-bottom",staticStyle:{"margin-bottom":"0.1em"},attrs:{tabindex:"0"}},[a("WaitingDots",{attrs:{direction:"disable"===t.pvAction?"down":"up"}})],1):t._e()])]),a("div",{staticClass:"col-6 col-sm-3 col-lg-2 mt-3"},[a("div",{staticClass:"mb-2 value"},[t._v(t._s(t.$t("main.loadpointDetails.charged")))]),a("h3",{staticClass:"value"},[t._v(" "+t._s(t.fmt(t.chargedEnergy))+" "),a("small",{staticClass:"text-muted"},[t._v(t._s(t.fmtUnit(t.chargedEnergy))+"Wh")])])]),t.vehicleRange&&t.vehicleRange>=0?a("div",{staticClass:"col-6 col-sm-3 col-lg-2 mt-3"},[a("div",{staticClass:"mb-2 value"},[t._v(t._s(t.$t("main.loadpointDetails.vehicleRange")))]),a("h3",{staticClass:"value"},[t._v(" "+t._s(Math.round(t.vehicleRange))+" "),a("small",{staticClass:"text-muted"},[t._v("km")])])]):a("div",{staticClass:"col-6 col-sm-3 col-lg-2 mt-3"},[a("div",{staticClass:"mb-2 value"},[t._v(t._s(t.$t("main.loadpointDetails.duration")))]),a("h3",{staticClass:"value"},[t._v(" "+t._s(t.fmtShortDuration(t.chargeDurationInterpolated))+" "),a("small",{staticClass:"text-muted"},[t._v(t._s(t.fmtShortDurationUnit(t.chargeDurationInterpolated)))])])]),t.vehiclePresent?a("div",{staticClass:"col-6 col-sm-3 col-lg-2 mt-3"},[a("div",{staticClass:"mb-2 value"},[t._v(t._s(t.$t("main.loadpointDetails.remaining")))]),a("h3",{staticClass:"value"},[t._v(" "+t._s(t.fmtShortDuration(t.chargeRemainingDurationInterpolated))+" "),a("small",{staticClass:"text-muted"},[t._v(t._s(t.fmtShortDurationUnit(t.chargeRemainingDurationInterpolated,!0)))])])]):t._e()])])},na=[],oa=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"root position-relative",class:"direction-"+t.direction},[a("shopicon-options-filled",{staticClass:"dots dots-back"}),a("shopicon-options-filled",{staticClass:"dots dots-front position-absolute start-0 top-0"})],1)},ra=[],la=(a("3d57"),{name:"WaitingDots",props:{direction:{type:String,default:"up"}}}),ca=la,da=(a("c5c7"),Object(Z["a"])(ca,oa,ra,!1,null,"60c12baf",null)),ua=da.exports,ma={name:"LoadpointDetails",components:{WaitingDots:ua},mixins:[rt],props:{chargedEnergy:Number,chargeDuration:Number,chargeRemainingDuration:Number,chargePower:Number,climater:String,vehiclePresent:Boolean,vehicleRange:Number,activePhases:Number,phaseRemaining:Number,phaseAction:String,pvRemaining:Number,pvAction:String,charging:Boolean},data(){return{tickerHandler:null,phaseRemainingInterpolated:this.phaseRemaining,pvRemainingInterpolated:this.pvRemaining,chargeDurationInterpolated:this.chargeDuration,chargeRemainingDurationInterpolated:this.chargeRemainingDuration}},computed:{phaseTooltip(){return["scale1p","scale3p"].includes(this.phaseAction)?this.$t("main.loadpointDetails.tooltip.phases."+this.phaseAction,{remaining:this.fmtShortDuration(this.phaseRemainingInterpolated,!0)}):this.$t(`main.loadpointDetails.tooltip.phases.charge${this.activePhases}p`)},phaseTimerActive(){return this.phaseRemainingInterpolated>0&&["scale1p","scale3p"].includes(this.phaseAction)},pvTimerActive(){return this.pvRemainingInterpolated>0&&["enable","disable"].includes(this.pvAction)},phaseTimerVisible(){return!(!this.phaseTimerActive||this.pvTimerActive)||!(!this.phaseTimerActive||!this.pvTimerActive)&&this.phaseRemainingInterpolated<this.pvRemainingInterpolated},pvTimerVisible(){return!(!this.pvTimerActive||this.phaseTimerActive)||!(!this.pvTimerActive||!this.phaseTimerActive)&&this.pvRemainingInterpolated<this.phaseRemainingInterpolated}},watch:{phaseRemaining(){this.phaseRemainingInterpolated=this.phaseRemaining},pvRemaining(){this.pvRemainingInterpolated=this.pvRemaining},chargeDuration(){this.chargeDurationInterpolated=this.chargeDuration},chargeRemainingDuration(){this.chargeDurationInterpolated=this.chargeRemainingDuration}},mounted(){this.tickerHandler=setInterval(this.tick,1e3)},destroyed(){clearInterval(this.tickerHandler)},methods:{tick(){this.phaseRemainingInterpolated>0&&this.phaseRemainingInterpolated--,this.pvRemainingInterpolated>0&&this.pvRemainingInterpolated--,this.chargeDurationInterpolated>0&&this.charging&&this.chargeDurationInterpolated++,this.chargeRemainingDurationInterpolated>0&&this.charging&&this.chargeRemainingDurationInterpolated--}}},pa=ma,ha=Object(Z["a"])(pa,sa,na,!1,null,null,null),ga=ha.exports,va={name:"Loadpoint",components:{LoadpointDetails:ga,Mode:Le,Vehicle:ia},mixins:[rt,Ae],props:{id:Number,single:Boolean,title:String,mode:String,targetSoC:Number,remoteDisabled:Boolean,remoteDisabledSource:String,chargeDuration:Number,charging:Boolean,connected:Boolean,enabled:Boolean,vehicleTitle:String,vehicleSoC:Number,vehiclePresent:Boolean,vehicleRange:Number,minSoC:Number,targetTime:String,targetTimeActive:Boolean,targetTimeHourSuggestion:Number,vehicleProviderLoggedIn:Boolean,vehicleProviderLoginPath:String,vehicleProviderLogoutPath:String,chargePower:Number,chargedEnergy:Number,climater:String,chargeRemainingDuration:Number,phases:Number,minCurrent:Number,maxCurrent:Number,activePhases:Number,chargeCurrent:Number,vehicleCapacity:Number,connectedDuration:Number,chargeCurrents:Array,chargeConfigured:Boolean,chargeRemainingEnergy:Number,phaseAction:String,phaseRemaining:Number,pvRemaining:Number,pvAction:String},computed:{details:function(){return this.collectProps(ga)},vehicle:function(){return this.collectProps(ia)}},methods:{apiPath:function(t){return"loadpoints/"+this.id+"/"+t},setTargetMode:function(t){m.post(this.apiPath("mode")+"/"+t)},setTargetSoC:function(t){m.post(this.apiPath("targetsoc")+"/"+t)},setTargetTime:function(t){const e=`${this.fmtDayString(t)}T${this.fmtTimeString(t)}:00`;m.post(this.apiPath("targetcharge")+"/"+this.targetSoC+"/"+e)},removeTargetTime:function(){m.delete(this.apiPath("targetcharge"))}}},fa=va,ba=Object(Z["a"])(fa,xe,Te,!1,null,null,null),Ca=ba.exports,_a={name:"Site",components:{Loadpoint:Ca,Energyflow:Se},mixins:[rt,Ae],props:{loadpoints:Array,gridConfigured:Boolean,gridPower:Number,homePower:Number,pvConfigured:Boolean,pvPower:Number,batteryConfigured:Boolean,batteryPower:Number,batterySoC:Number,gridCurrents:Array,prioritySoC:Number,siteTitle:String},computed:{energyflow:function(){return this.collectProps(Se)},activeLoadpointsCount:function(){return this.loadpoints.filter(t=>t.chargePower>0).length},loadpointsPower:function(){return this.loadpoints.reduce((t,e)=>(t+=e.chargePower||0,t),0)}}},wa=_a,ya=Object(Z["a"])(wa,Ft,Kt,!1,null,null,null),Sa=ya.exports,xa={name:"Main",components:{Site:Sa},data:function(){return this.$root.$data.store},computed:{configured:function(){const t=window.evcc.configured;return t==window.evcc.configured||!isNaN(parseInt(t))&&parseInt(t)>0}}},Ta=xa,ka=Object(Z["a"])(Ta,Ht,Ot,!1,null,null,null),Da=ka.exports,Pa=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"container"},[a("div",{staticClass:"row mt-4 border-bottom"},[a("div",{staticClass:"col-12"},[a("p",{staticClass:"h1"},[t._v(t._s(t.title||"Home"))])])]),a("div",{staticClass:"row h5"},[a("div",{staticClass:"col-md-4"}),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Netzzähler: "),t.gridConfigured?a("span",{staticClass:"text-primary"},[t._v("✓")]):a("span",{staticClass:"text-primary"},[t._v("—")])]),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" PV Zähler: "),t.pvConfigured?a("span",{staticClass:"text-primary"},[t._v("✓")]):a("span",{staticClass:"text-primary"},[t._v("—")])]),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Batteriezähler: "),t.batteryConfigured?a("span",{staticClass:"text-primary"},[t._v("✓")]):a("span",{staticClass:"text-primary"},[t._v("—")])])]),t._l(t.loadpoints,(function(e,i){return a("div",{key:i,attrs:{id:"loadpoint-"+i,loadpoint:e}},[a("div",{staticClass:"row mt-4 border-bottom"},[a("div",{staticClass:"col-12"},[a("p",{staticClass:"h1"},[t._v(t._s(e.title||"Ladepunkt"))])])]),a("div",{staticClass:"row h5"},[a("div",{staticClass:"col-md-4"}),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Ladezähler: "),e.chargeConfigured?a("span",{staticClass:"text-primary"},[t._v("✓")]):a("span",{staticClass:"text-primary"},[t._v("—")])]),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Phasen: "),a("span",{staticClass:"text-primary"},[t._v(t._s(e.phases)+"p")])]),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Min. Strom: "),a("span",{staticClass:"text-primary"},[t._v(t._s(e.minCurrent)+"A")])]),a("div",{staticClass:"col-6 col-md-2 py-3"},[t._v(" Max. Strom: "),a("span",{staticClass:"text-primary"},[t._v(t._s(e.maxCurrent)+"A")])])]),a("div",{staticClass:"row h5"},[a("div",{staticClass:"col-md-4"}),a("div",{staticClass:"col-md-8 h2"},[t._m(0,!0),a("div",{staticClass:"row h5"},[a("div",{staticClass:"col-6 py-3"},[t._v(" Modell: "),a("span",{staticClass:"text-primary"},[t._v(t._s(e.vehicleTitle||"—"))])]),a("div",{staticClass:"col-6 py-3"},[t._v(" Kapazität: "),a("span",{staticClass:"text-primary"},[t._v(t._s(e.vehicleCapacity)+"kWh")])])])])])])}))],2)},$a=[function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"row py-3 h2 border-bottom"},[a("div",{staticClass:"col-12"},[t._v("Fahrzeug")])])}],Na={name:"Config",data:function(){return this.$root.$data.store.state}},La=Na,Ia=Object(Z["a"])(La,Pa,$a,!1,null,null,null),Ea=Ia.exports;i["a"].use(Wt["a"]);const Aa=[{path:"/",component:Da},{path:"/config",component:Ea}];var Ba=new Wt["a"]({routes:Aa,linkExactActiveClass:"active"}),ja=a("a925"),Ma={header:{docs:"Dokumentation",blog:"Blog",github:"GitHub",login:"Anmeldungen"},footer:{version:{versionShort:"v{installed}",versionLong:"Version {installed}",availableShort:"Update",availableLong:"Update verfügbar",modalTitle:"Update verfügbar",modalUpdateStarted:"Nach der Aktualisierung wird evcc neu gestartet.",modalInstalledVersion:"Aktuell installierte Version",modalNoReleaseNotes:"Keine Releasenotes verfügbar. Mehr Informationen zur neuen Version findest du hier:",modalCancel:"Abbrechen",modalUpdate:"Aktualisieren",modalUpdateNow:"Jetzt aktualisieren",modalDownload:"Download",modalUpdateStatusStart:"Aktualisierung gestartet: ",modalUpdateStatusFailed:"Aktualisierung nicht möglich: "},savings:{footerShort:"{percent}% Sonne",footerLong:"{percent}% Sonnenenergie",modalTitleShort:"{total} kWh geladen · {percent}% Sonne",modalTitleLong:"{total} kWh geladen · {percent}% Sonnenenergie",modalChartGrid:"Netz {grid} kWh",modalChartSelf:"Sonne {self} kWh",modalSavingsPrice:"Effektiver Energiepreis",modalSavingsTotal:"Ersparnis gegenüber Netzbezug",modalExplaination:"Berechnung",modalExplainationGrid:"Netz {gridPrice}",modalExplainationFeedIn:"Einspeisung {feedInPrice}",modalServerStart:"Seit Serverstart {since}.",modalNoData:"noch nicht geladen",experimentalLabel:"experimentell",experimentalText:"Unplausible Werte? Fragen zur Ansicht? Meld dich gerne in den"},sponsor:{thanks:"Danke für deine Unterstützung, {sponsor}! Das hilft uns bei der Weiterentwicklung.",confetti:"Lust auf etwas Sponsor-Konfetti?",supportUs:"Wir möchten effizientes Zuhause-Laden zum Standard für möglichst viele Menschen machen. Helfe uns indem du die Weiterentwicklung und Pflege des Projekts unterstützt.",sticker:"...oder evcc Sticker?",confettiPromise:"Es gibt auch Sticker und digitales Konfetti ;)",becomeSponsor:"Werde jetzt GitHub Sponsor"}},notifications:{modalTitle:"Meldungen",dismissAll:"Meldungen entfernen"},main:{energyflow:{noEnergy:"Kein Energiefluss",homePower:"Verbrauch",pvProduction:"Erzeugung",loadpoints:"Ladepunkt | Ladepunkt | {count} Ladepunkte",battery:"Batterie",batteryCharge:"Batterie laden",batteryDischarge:"Batterie entladen",gridImport:"Netzbezug",selfConsumption:"Eigenverbrauch",pvExport:"Einspeisung"},mode:{title:"Modus",stop:"Stop",now:"Sofort",minpvShort:"Min",minpvLong:"Min + PV",pvShort:"PV",pvLong:"Nur PV"},loadpoint:{fallbackName:"Ladepunkt",remoteDisabledSoft:"{source}: Adaptives PV-Laden deaktiviert",remoteDisabledHard:"{source}: Deaktiviert"},vehicle:{fallbackName:"Fahrzeug"},vehicleSoC:{disconnected:"getrennt",charging:"lädt",ready:"bereit",connected:"verbunden"},vehicleSubline:{mincharge:"Mindestladung bis {soc}%"},provider:{login:"anmelden",logout:"abmelden"},targetCharge:{inactiveLabel:"Zielzeit",activeLabel:"bis {time} Uhr",modalTitle:"Zielzeit festlegen",description:"Wann soll das Fahrzeug auf <strong>{targetSoC}%</strong> geladen sein?",today:"heute",tomorrow:"morgen",targetIsInThePast:"Zeitpunkt liegt in der Vergangenheit.",remove:"Keine Zielzeit",activate:"Zielzeit aktivieren",experimentalLabel:"experimentell",experimentalText:"\n        Diese Funktion ist in einem frühen Stadium. Der Algorithmus ist noch\n        nicht perfekt. Die Zielzeit wird aktuell nicht persistiert - das\n        heißt sie geht beim Neustart verloren. Verlasse dich also noch nicht\n        zu sehr auf diese Funktion. Wir freuen uns aber über deine\n        Erfahrungen und Verbessungsvorschläge in den\n      "},loadpointDetails:{power:"Leistung",vehicleRange:"Reichweite",charged:"Geladen",duration:"Dauer",remaining:"Restzeit",tooltip:{phases:{scale1p:"Herunterschalten auf einphasig in {remaining}.",scale3p:"Hochschalten auf dreiphasig in {remaining}.",charge1p:"Lädt einphasig.",charge2p:"Lädt zweiphasig.",charge3p:"Lädt dreiphasig."},pv:{enable:"Überschuss verfügbar. Ladung startet in {remaining}.",disable:"Zu wenig Überschuss. Ladung pausiert in {remaining}."}}}}},Ra={header:{docs:"Documentation",blog:"Blog",github:"GitHub",login:"Logins"},footer:{version:{versionShort:"v{installed}",versionLong:"Version {installed}",availableShort:"update",availableLong:"update available",modalTitle:"Update available",modalUpdateStarted:"Evcc will restart after the update..",modalInstalledVersion:"Currently installed version",modalNoReleaseNotes:"No release notes available. More information about the new version can be found here:",modalCancel:"Cancel",modalUpdate:"Update",modalUpdateNow:"Update now",modalDownload:"Download",modalUpdateStatusStart:"Update started: ",modalUpdateStatusFailed:"Update failed: "},savings:{footerShort:"{percent}% solar",footerLong:"{percent}% solar energy",modalTitleShort:"{total} kWh charged · {percent}% solar",modalTitleLong:"{total} kWh charged · {percent}% solar energy",modalChartGrid:"Grid energy {grid} kWh",modalChartSelf:"Solar energy {self} kWh",modalSavingsPrice:"Effective energy price",modalSavingsTotal:"Savings compared to grid",modalExplaination:"Calculation",modalExplainationGrid:"grid tariff {gridPrice}",modalExplainationFeedIn:"feed-in rate {feedInPrice}",modalServerStart:"since server start {since}.",modalNoData:"nothing charged yet",experimentalLabel:"experimental",experimentalText:"Implausible values? Questions about this view? Feel free to join our "},sponsor:{thanks:"Thanks for your support, {sponsor}! It helps us with the further development.",confetti:"Ready for some sponsor confetti?",supportUs:"We want to make efficient home charging the standard for as many people as possible. Help us by supporting the further development and maintenance of the project.",sticker:"...or evcc stickers?",confettiPromise:"There will be stickers and digital confetti ;)",becomeSponsor:"Become a GitHub Sponsor"}},notifications:{modalTitle:"Notifications",dismissAll:"Dismiss all"},main:{energyflow:{noEnergy:"No Energyflow",homePower:"Consumption",loadpoints:"Loadpoint | Loadpoint | {count} Loadpoints",pvProduction:"Production",battery:"Battery",batteryCharge:"Battery charge",batteryDischarge:"Battery discharge",gridImport:"Grid import",selfConsumption:"Self consumption",pvExport:"Grid export"},mode:{title:"Mode",stop:"Stop",now:"Now",minpvShort:"Min",minpvLong:"Min + PV",pvShort:"PV",pvLong:"PV only"},loadpoint:{fallbackName:"Loadpoint",remoteDisabledSoft:"{source}: adaptive PV charging disabled",remoteDisabledHard:"{source}: disabled"},vehicle:{fallbackName:"Vehicle"},vehicleSoC:{disconnected:"disconnected",charging:"charging",ready:"ready",connected:"connected"},vehicleSubline:{mincharge:"minimum charging to {soc}%"},provider:{login:"login",logout:"logout"},targetCharge:{inactiveLabel:"Target time",activeLabel:"until {time}",modalTitle:"Set Target Time",description:"When should the vehicle be charged to <strong>{targetSoC}%</strong>?",today:"today",tomorrow:"tomorrow",targetIsInThePast:"The chosen time is in the past.",remove:"Remove",activate:"Activate",experimentalLabel:"experimental",experimentalText:"\n        This function is at an early stage.\n        The algorithm is not perfect yet.\n        The target time is currently not persisted - this means, it will be lost when your server restarts.\n        So do not rely too much on this function.\n        However, we look forward to your experiences and suggestions for improvement in the\n      "},loadpointDetails:{power:"Power",vehicleRange:"Range",charged:"Charged",duration:"Duration",remaining:"Remaining",tooltip:{phases:{scale1p:"Switching to single-phase in {remaining}.",scale3p:"Switching to three-phase in {remaining}.",charge1p:"Single-phase charging.",charge2p:"Two-phase charging.",charge3p:"Three-phase charging."},pv:{enable:"Solar available. Resume charging in {remaining}.",disable:"Not enough solar. Pause charging in {remaining}."}}}}},Ua={header:{docs:"Documentazione",blog:"Blog",github:"GitHub",login:"Iscrizioni"},footer:{version:{version:"versione",availableShort:"aggiornamento",availableLong:"aggiornamento disponibile",modalTitle:"Aggiornamento disponibile",modalUpdateStarted:"Evcc ripartirà dopo l'aggiornamento..",modalInstalledVersion:"Versione correntemente installata",modalNoReleaseNotes:"Non ci sono note di rilascio disponibili. Altre informazioni circa la nuova versione si trovano qui:",modalCancel:"Cancella",modalUpdate:"Aggiorna",modalUpdateNow:"Aggiorna ora",modalDownload:"Download",modalUpdateStatusStart:"Aggiornamento iniziato: ",modalUpdateStatusFailed:"Aggiornamento fallito: "},sponsor:{sponsoredShort:"grazie",sponsoredLong:"grazie {sponsor}",supportProjectShort:"supporto",supportProjectLong:"supporta questo progetto"}},notifications:{modalTitle:"Notifiche",dismissAll:"Rimuovi tutte"},main:{energyflow:{noEnergy:"No Energyflow",homePower:"Consumption",pvProduction:"Produzione",battery:"Batteria",batteryCharge:"Battery charge",batteryDischarge:"Battery discharge",gridImport:"Grid import",selfConsumption:"Self consumption",pvExport:"Grid export"},mode:{title:"Modalità",stop:"Stop",now:"Ora",minpvShort:"Min",minpvLong:"Min + FV",pvShort:"FV",pvLong:"Solo FV"},loadpoint:{fallbackName:"Punto di carica",remoteDisabledSoft:"{source}: Ricarica FV adattiva disabilitata",remoteDisabledHard:"{source}: Disabilitato"},vehicle:{fallbackName:"Veicolo"},vehicleSoC:{disconnected:"disconesso",charging:"carica",ready:"pronto",connected:"collegato"},vehicleSubline:{mincharge:"carica minima fino a {soc}%"},provider:{login:"accedere",logout:"disconnettersi"},loadpointDetails:{power:"Potenza",vehicleRange:"Autonomia",charged:"Ricaricato",duration:"Duarata",remaining:"Rimanenti"}}};function za(){const t=void 0!==navigator.languages?navigator.languages[0]:navigator.language;if(!t)return;const e=t.trim().split(/-|_/)[0];return e}i["a"].use(ja["a"]);var Va=new ja["a"]({locale:za(),fallbackLocale:"en",messages:{de:Ma,en:Ra,it:Ua}}),Wa=(a("096e"),a("e37d"));Wa["a"].options.offset=[0,10],Wa["a"].options.themes.tooltip.triggers=["click","focus"],i["a"].use(Wa["a"]),i["a"].use(s["a"]),window.app=new i["a"]({el:"#app",router:Ba,i18n:Va,data:{store:Lt,notifications:[]},methods:{raise:function(t){console[t.type](t);const e=new Date,a=this.notifications[0];a&&a.message===t.message?(a.count++,a.time=e):this.notifications=[{...t,count:1,time:e},...this.notifications]},clear:function(){this.notifications=[]},error:function(t){t.type="error",this.raise(t)},warn:function(t){t.type="warn",this.raise(t)}},render:function(t){return t(Vt,{props:{notifications:this.notifications}})}}),window.setInterval((function(){m.get("health").catch((function(){window.app.error({message:"Server unavailable"})}))}),5e3)},abbc:function(t,e,a){},b19f:function(t,e,a){},c126:function(t,e,a){"use strict";a("0501")},c1a8:function(t,e,a){"use strict";a("dbaf")},c5c7:function(t,e,a){"use strict";a("0544")},dbaf:function(t,e,a){},ec98:function(t,e,a){},ed92:function(t,e,a){}});
  //# sourceMappingURL=index.e5e2e523.js.map