diff --git a/htdocs/assets/index.js b/htdocs/assets/index.js index 5cd2bfd2..6fd156aa 100644 --- a/htdocs/assets/index.js +++ b/htdocs/assets/index.js @@ -41,4 +41,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * vue-scrollto v2.20.0 * (c) 2019 Randjelovic Igor * @license MIT - */(function(e,t){(function(n,s){e.exports=s()})(Qt,function(){function n(ce){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?n=function(W){return typeof W}:n=function(W){return W&&typeof Symbol=="function"&&W.constructor===Symbol&&W!==Symbol.prototype?"symbol":typeof W},n(ce)}function s(){return s=Object.assign||function(ce){for(var W=1;W0?fe=V:W=V;while(Math.abs(Ee)>i&&++le=o?b(ne,P,W,De):K===0?P:w(ne,pe,pe+c,W,De)}return function(pe){return pe===0?0:pe===1?1:h(le(pe),fe,Me)}},C={ease:[.25,.1,.25,1],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},x=!1;try{var T=Object.defineProperty({},"passive",{get:function(){x=!0}});window.addEventListener("test",null,T)}catch{}var L={$:function(W){return typeof W!="string"?W:document.querySelector(W)},on:function(W,fe,De){var Me=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{passive:!1};fe instanceof Array||(fe=[fe]);for(var Ee=0;Ee2&&arguments[2]!==void 0?arguments[2]:{};if(n(xe)==="object"?ue=xe:typeof xe=="number"&&(ue.duration=xe),W=L.$(Ge),!W)return console.warn("[vue-scrollto warn]: Trying to scroll to an element that is not on the page: "+Ge);if(fe=L.$(ue.container||D.container),De=ue.hasOwnProperty("duration")?ue.duration:D.duration,Ee=ue.hasOwnProperty("lazy")?ue.lazy:D.lazy,Me=ue.easing||D.easing,V=ue.hasOwnProperty("offset")?ue.offset:D.offset,le=ue.hasOwnProperty("force")?ue.force!==!1:D.force,ne=ue.hasOwnProperty("cancelable")?ue.cancelable!==!1:D.cancelable,pe=ue.onStart||D.onStart,Pe=ue.onDone||D.onDone,A=ue.onCancel||D.onCancel,O=ue.x===void 0?D.x:ue.x,P=ue.y===void 0?D.y:ue.y,typeof V=="function"&&(V=V(W,fe)),K=G(fe),ee=M(fe),se(),Y=!1,!le){var Fe=fe.tagName.toLowerCase()==="body"?document.documentElement.clientHeight||window.innerHeight:fe.offsetHeight,Ze=ee,Qe=Ze+Fe,Bt=de-V,mo=Bt+W.offsetHeight;if(Bt>=Ze&&mo<=Qe){Pe&&Pe(W);return}}if(pe&&pe(W),!oe&&!ae){Pe&&Pe(W);return}return typeof Me=="string"&&(Me=C[Me]||C.ease),Re=k.apply(k,Me),L.on(fe,I,we,{passive:!0}),window.requestAnimationFrame(ve),function(){ge=null,Y=!0}}return He},X=Z(),U=[];function q(ce){for(var W=0;We.charAt(0).toUpperCase()+e.slice(1),cG=e=>e.split("-").map(uG).join(""),dG=(e,t,n)=>{const s=e[`mdi${cG(t.name)}`]||A8,r={role:t.role,"aria-label":t.ariaLabel,...n},o={fill:"currentColor",width:t.width||t.size,height:t.height||t.size,viewBox:t.viewBox,xmlns:t.xmlns};return{spanAttrs:r,svgAttrs:o,pathAttrs:{d:s}}},mG=(e,t)=>({[t.staticClass||""]:!0,[t.class||""]:!0,[`mdi mdi-${e.name}`]:!0,"mdi-spin":e.spin===!0}),fG=(e,t={})=>({install(n,{icons:s}){if(s===void 0)throw new Error("Icons must be provided separately");n.component("mdicon",{name:"MDIcon",props:lG,...t,render:e(s)})}}),pG=e=>function(){const{spanAttrs:n,svgAttrs:s,pathAttrs:r}=dG(e,this,this.$attrs);return Qn("span",{...n,class:mG(this,this)},[Qn("svg",s,[this.title?Qn("title",[this.title]):void 0,Qn("path",r)])])};var hG=fG(pG);class yr extends Error{}class _G extends yr{constructor(t){super(`Invalid DateTime: ${t.toMessage()}`)}}class gG extends yr{constructor(t){super(`Invalid Interval: ${t.toMessage()}`)}}class yG extends yr{constructor(t){super(`Invalid Duration: ${t.toMessage()}`)}}class Io extends yr{}class xv extends yr{constructor(t){super(`Invalid unit ${t}`)}}class En extends yr{}class $s extends yr{constructor(){super("Zone is an abstract class")}}const _e="numeric",jn="short",bn="long",dl={year:_e,month:_e,day:_e},Ev={year:_e,month:jn,day:_e},vG={year:_e,month:jn,day:_e,weekday:jn},$v={year:_e,month:bn,day:_e},Sv={year:_e,month:bn,day:_e,weekday:bn},Av={hour:_e,minute:_e},Tv={hour:_e,minute:_e,second:_e},Ov={hour:_e,minute:_e,second:_e,timeZoneName:jn},Dv={hour:_e,minute:_e,second:_e,timeZoneName:bn},Pv={hour:_e,minute:_e,hourCycle:"h23"},Iv={hour:_e,minute:_e,second:_e,hourCycle:"h23"},Fv={hour:_e,minute:_e,second:_e,hourCycle:"h23",timeZoneName:jn},Rv={hour:_e,minute:_e,second:_e,hourCycle:"h23",timeZoneName:bn},Lv={year:_e,month:_e,day:_e,hour:_e,minute:_e},Mv={year:_e,month:_e,day:_e,hour:_e,minute:_e,second:_e},Nv={year:_e,month:jn,day:_e,hour:_e,minute:_e},Vv={year:_e,month:jn,day:_e,hour:_e,minute:_e,second:_e},bG={year:_e,month:jn,day:_e,weekday:jn,hour:_e,minute:_e},Bv={year:_e,month:bn,day:_e,hour:_e,minute:_e,timeZoneName:jn},Hv={year:_e,month:bn,day:_e,hour:_e,minute:_e,second:_e,timeZoneName:jn},Uv={year:_e,month:bn,day:_e,weekday:bn,hour:_e,minute:_e,timeZoneName:bn},jv={year:_e,month:bn,day:_e,weekday:bn,hour:_e,minute:_e,second:_e,timeZoneName:bn};class Si{get type(){throw new $s}get name(){throw new $s}get ianaName(){return this.name}get isUniversal(){throw new $s}offsetName(t,n){throw new $s}formatOffset(t,n){throw new $s}offset(t){throw new $s}equals(t){throw new $s}get isValid(){throw new $s}}let Iu=null;class Ql extends Si{static get instance(){return Iu===null&&(Iu=new Ql),Iu}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(t,{format:n,locale:s}){return Wv(t,n,s)}formatOffset(t,n){return Qo(this.offset(t),n)}offset(t){return-new Date(t).getTimezoneOffset()}equals(t){return t.type==="system"}get isValid(){return!0}}let ja={};function CG(e){return ja[e]||(ja[e]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),ja[e]}const wG={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function zG(e,t){const n=e.format(t).replace(/\u200E/g,""),s=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,r,o,i,a,u,c,d]=s;return[i,r,o,a,u,c,d]}function kG(e,t){const n=e.formatToParts(t),s=[];for(let r=0;r=0?h:1e3+h,(m-p)/(60*1e3)}equals(t){return t.type==="iana"&&t.name===this.name}get isValid(){return this.valid}}let Pp={};function xG(e,t={}){const n=JSON.stringify([e,t]);let s=Pp[n];return s||(s=new Intl.ListFormat(e,t),Pp[n]=s),s}let Vc={};function Bc(e,t={}){const n=JSON.stringify([e,t]);let s=Vc[n];return s||(s=new Intl.DateTimeFormat(e,t),Vc[n]=s),s}let Hc={};function EG(e,t={}){const n=JSON.stringify([e,t]);let s=Hc[n];return s||(s=new Intl.NumberFormat(e,t),Hc[n]=s),s}let Uc={};function $G(e,t={}){const{base:n,...s}=t,r=JSON.stringify([e,s]);let o=Uc[r];return o||(o=new Intl.RelativeTimeFormat(e,t),Uc[r]=o),o}let Fo=null;function SG(){return Fo||(Fo=new Intl.DateTimeFormat().resolvedOptions().locale,Fo)}function AG(e){const t=e.indexOf("-x-");t!==-1&&(e=e.substring(0,t));const n=e.indexOf("-u-");if(n===-1)return[e];{let s,r;try{s=Bc(e).resolvedOptions(),r=e}catch{const u=e.substring(0,n);s=Bc(u).resolvedOptions(),r=u}const{numberingSystem:o,calendar:i}=s;return[r,o,i]}}function TG(e,t,n){return(n||t)&&(e.includes("-u-")||(e+="-u"),n&&(e+=`-ca-${n}`),t&&(e+=`-nu-${t}`)),e}function OG(e){const t=[];for(let n=1;n<=12;n++){const s=Ve.utc(2016,n,1);t.push(e(s))}return t}function DG(e){const t=[];for(let n=1;n<=7;n++){const s=Ve.utc(2016,11,13+n);t.push(e(s))}return t}function Sa(e,t,n,s,r){const o=e.listingMode(n);return o==="error"?null:o==="en"?s(t):r(t)}function PG(e){return e.numberingSystem&&e.numberingSystem!=="latn"?!1:e.numberingSystem==="latn"||!e.locale||e.locale.startsWith("en")||new Intl.DateTimeFormat(e.intl).resolvedOptions().numberingSystem==="latn"}class IG{constructor(t,n,s){this.padTo=s.padTo||0,this.floor=s.floor||!1;const{padTo:r,floor:o,...i}=s;if(!n||Object.keys(i).length>0){const a={useGrouping:!1,...s};s.padTo>0&&(a.minimumIntegerDigits=s.padTo),this.inf=EG(t,a)}}format(t){if(this.inf){const n=this.floor?Math.floor(t):t;return this.inf.format(n)}else{const n=this.floor?Math.floor(t):dm(t,3);return Ot(n,this.padTo)}}}class FG{constructor(t,n,s){this.opts=s,this.originalZone=void 0;let r;if(this.opts.timeZone)this.dt=t;else if(t.zone.type==="fixed"){const i=-1*(t.offset/60),a=i>=0?`Etc/GMT+${i}`:`Etc/GMT${i}`;t.offset!==0&&ys.create(a).valid?(r=a,this.dt=t):(r="UTC",this.dt=t.offset===0?t:t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone)}else t.zone.type==="system"?this.dt=t:t.zone.type==="iana"?(this.dt=t,r=t.zone.name):(r="UTC",this.dt=t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone);const o={...this.opts};o.timeZone=o.timeZone||r,this.dtf=Bc(n,o)}format(){return this.originalZone?this.formatToParts().map(({value:t})=>t).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const t=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?t.map(n=>{if(n.type==="timeZoneName"){const s=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...n,value:s}}else return n}):t}resolvedOptions(){return this.dtf.resolvedOptions()}}class RG{constructor(t,n,s){this.opts={style:"long",...s},!n&&qv()&&(this.rtf=$G(t,s))}format(t,n){return this.rtf?this.rtf.format(t,n):QG(n,t,this.opts.numeric,this.opts.style!=="long")}formatToParts(t,n){return this.rtf?this.rtf.formatToParts(t,n):[]}}class vt{static fromOpts(t){return vt.create(t.locale,t.numberingSystem,t.outputCalendar,t.defaultToEN)}static create(t,n,s,r=!1){const o=t||Tt.defaultLocale,i=o||(r?"en-US":SG()),a=n||Tt.defaultNumberingSystem,u=s||Tt.defaultOutputCalendar;return new vt(i,a,u,o)}static resetCache(){Fo=null,Vc={},Hc={},Uc={}}static fromObject({locale:t,numberingSystem:n,outputCalendar:s}={}){return vt.create(t,n,s)}constructor(t,n,s,r){const[o,i,a]=AG(t);this.locale=o,this.numberingSystem=n||i||null,this.outputCalendar=s||a||null,this.intl=TG(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=r,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=PG(this)),this.fastNumbersCached}listingMode(){const t=this.isEnglish(),n=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return t&&n?"en":"intl"}clone(t){return!t||Object.getOwnPropertyNames(t).length===0?this:vt.create(t.locale||this.specifiedLocale,t.numberingSystem||this.numberingSystem,t.outputCalendar||this.outputCalendar,t.defaultToEN||!1)}redefaultToEN(t={}){return this.clone({...t,defaultToEN:!0})}redefaultToSystem(t={}){return this.clone({...t,defaultToEN:!1})}months(t,n=!1,s=!0){return Sa(this,t,s,Zv,()=>{const r=n?{month:t,day:"numeric"}:{month:t},o=n?"format":"standalone";return this.monthsCache[o][t]||(this.monthsCache[o][t]=OG(i=>this.extract(i,r,"month"))),this.monthsCache[o][t]})}weekdays(t,n=!1,s=!0){return Sa(this,t,s,Xv,()=>{const r=n?{weekday:t,year:"numeric",month:"long",day:"numeric"}:{weekday:t},o=n?"format":"standalone";return this.weekdaysCache[o][t]||(this.weekdaysCache[o][t]=DG(i=>this.extract(i,r,"weekday"))),this.weekdaysCache[o][t]})}meridiems(t=!0){return Sa(this,void 0,t,()=>Qv,()=>{if(!this.meridiemCache){const n={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[Ve.utc(2016,11,13,9),Ve.utc(2016,11,13,19)].map(s=>this.extract(s,n,"dayperiod"))}return this.meridiemCache})}eras(t,n=!0){return Sa(this,t,n,e1,()=>{const s={era:t};return this.eraCache[t]||(this.eraCache[t]=[Ve.utc(-40,1,1),Ve.utc(2017,1,1)].map(r=>this.extract(r,s,"era"))),this.eraCache[t]})}extract(t,n,s){const r=this.dtFormatter(t,n),o=r.formatToParts(),i=o.find(a=>a.type.toLowerCase()===s);return i?i.value:null}numberFormatter(t={}){return new IG(this.intl,t.forceSimple||this.fastNumbers,t)}dtFormatter(t,n={}){return new FG(t,this.intl,n)}relFormatter(t={}){return new RG(this.intl,this.isEnglish(),t)}listFormatter(t={}){return xG(this.intl,t)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(t){return this.locale===t.locale&&this.numberingSystem===t.numberingSystem&&this.outputCalendar===t.outputCalendar}}let Fu=null;class en extends Si{static get utcInstance(){return Fu===null&&(Fu=new en(0)),Fu}static instance(t){return t===0?en.utcInstance:new en(t)}static parseSpecifier(t){if(t){const n=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(n)return new en(tu(n[1],n[2]))}return null}constructor(t){super(),this.fixed=t}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Qo(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Qo(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(t,n){return Qo(this.fixed,n)}get isUniversal(){return!0}offset(){return this.fixed}equals(t){return t.type==="fixed"&&t.fixed===this.fixed}get isValid(){return!0}}class LG extends Si{constructor(t){super(),this.zoneName=t}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function Fs(e,t){if(tt(e)||e===null)return t;if(e instanceof Si)return e;if(MG(e)){const n=e.toLowerCase();return n==="default"?t:n==="local"||n==="system"?Ql.instance:n==="utc"||n==="gmt"?en.utcInstance:en.parseSpecifier(n)||ys.create(e)}else return ur(e)?en.instance(e):typeof e=="object"&&e.offset&&typeof e.offset=="number"?e:new LG(e)}let Ip=()=>Date.now(),Fp="system",Rp=null,Lp=null,Mp=null,Np=60,Vp;class Tt{static get now(){return Ip}static set now(t){Ip=t}static set defaultZone(t){Fp=t}static get defaultZone(){return Fs(Fp,Ql.instance)}static get defaultLocale(){return Rp}static set defaultLocale(t){Rp=t}static get defaultNumberingSystem(){return Lp}static set defaultNumberingSystem(t){Lp=t}static get defaultOutputCalendar(){return Mp}static set defaultOutputCalendar(t){Mp=t}static get twoDigitCutoffYear(){return Np}static set twoDigitCutoffYear(t){Np=t%100}static get throwOnInvalid(){return Vp}static set throwOnInvalid(t){Vp=t}static resetCaches(){vt.resetCache(),ys.resetCache()}}function tt(e){return typeof e=="undefined"}function ur(e){return typeof e=="number"}function eu(e){return typeof e=="number"&&e%1===0}function MG(e){return typeof e=="string"}function NG(e){return Object.prototype.toString.call(e)==="[object Date]"}function qv(){try{return typeof Intl!="undefined"&&!!Intl.RelativeTimeFormat}catch{return!1}}function VG(e){return Array.isArray(e)?e:[e]}function Bp(e,t,n){if(e.length!==0)return e.reduce((s,r)=>{const o=[t(r),r];return s&&n(s[0],o[0])===s[0]?s:o},null)[1]}function BG(e,t){return t.reduce((n,s)=>(n[s]=e[s],n),{})}function Qr(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function ms(e,t,n){return eu(e)&&e>=t&&e<=n}function HG(e,t){return e-t*Math.floor(e/t)}function Ot(e,t=2){const n=e<0;let s;return n?s="-"+(""+-e).padStart(t,"0"):s=(""+e).padStart(t,"0"),s}function Ps(e){if(!(tt(e)||e===null||e===""))return parseInt(e,10)}function Xs(e){if(!(tt(e)||e===null||e===""))return parseFloat(e)}function cm(e){if(!(tt(e)||e===null||e==="")){const t=parseFloat("0."+e)*1e3;return Math.floor(t)}}function dm(e,t,n=!1){const s=10**t;return(n?Math.trunc:Math.round)(e*s)/s}function Ai(e){return e%4===0&&(e%100!==0||e%400===0)}function Xo(e){return Ai(e)?366:365}function ml(e,t){const n=HG(t-1,12)+1,s=e+(t-n)/12;return n===2?Ai(s)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function mm(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t),t.setUTCFullYear(e.year,e.month-1,e.day)),+t}function fl(e){const t=(e+Math.floor(e/4)-Math.floor(e/100)+Math.floor(e/400))%7,n=e-1,s=(n+Math.floor(n/4)-Math.floor(n/100)+Math.floor(n/400))%7;return t===4||s===3?53:52}function jc(e){return e>99?e:e>Tt.twoDigitCutoffYear?1900+e:2e3+e}function Wv(e,t,n,s=null){const r=new Date(e),o={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};s&&(o.timeZone=s);const i={timeZoneName:t,...o},a=new Intl.DateTimeFormat(n,i).formatToParts(r).find(u=>u.type.toLowerCase()==="timezonename");return a?a.value:null}function tu(e,t){let n=parseInt(e,10);Number.isNaN(n)&&(n=0);const s=parseInt(t,10)||0,r=n<0||Object.is(n,-0)?-s:s;return n*60+r}function Gv(e){const t=Number(e);if(typeof e=="boolean"||e===""||Number.isNaN(t))throw new En(`Invalid unit value ${e}`);return t}function pl(e,t){const n={};for(const s in e)if(Qr(e,s)){const r=e[s];if(r==null)continue;n[t(s)]=Gv(r)}return n}function Qo(e,t){const n=Math.trunc(Math.abs(e/60)),s=Math.trunc(Math.abs(e%60)),r=e>=0?"+":"-";switch(t){case"short":return`${r}${Ot(n,2)}:${Ot(s,2)}`;case"narrow":return`${r}${n}${s>0?`:${s}`:""}`;case"techie":return`${r}${Ot(n,2)}${Ot(s,2)}`;default:throw new RangeError(`Value format ${t} is out of range for property format`)}}function nu(e){return BG(e,["hour","minute","second","millisecond"])}const UG=["January","February","March","April","May","June","July","August","September","October","November","December"],Kv=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],jG=["J","F","M","A","M","J","J","A","S","O","N","D"];function Zv(e){switch(e){case"narrow":return[...jG];case"short":return[...Kv];case"long":return[...UG];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Yv=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Jv=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],qG=["M","T","W","T","F","S","S"];function Xv(e){switch(e){case"narrow":return[...qG];case"short":return[...Jv];case"long":return[...Yv];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Qv=["AM","PM"],WG=["Before Christ","Anno Domini"],GG=["BC","AD"],KG=["B","A"];function e1(e){switch(e){case"narrow":return[...KG];case"short":return[...GG];case"long":return[...WG];default:return null}}function ZG(e){return Qv[e.hour<12?0:1]}function YG(e,t){return Xv(t)[e.weekday-1]}function JG(e,t){return Zv(t)[e.month-1]}function XG(e,t){return e1(t)[e.year<0?0:1]}function QG(e,t,n="always",s=!1){const r={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},o=["hours","minutes","seconds"].indexOf(e)===-1;if(n==="auto"&&o){const f=e==="days";switch(t){case 1:return f?"tomorrow":`next ${r[e][0]}`;case-1:return f?"yesterday":`last ${r[e][0]}`;case 0:return f?"today":`this ${r[e][0]}`}}const i=Object.is(t,-0)||t<0,a=Math.abs(t),u=a===1,c=r[e],d=s?u?c[1]:c[2]||c[1]:u?r[e][0]:e;return i?`${a} ${d} ago`:`in ${a} ${d}`}function Hp(e,t){let n="";for(const s of e)s.literal?n+=s.val:n+=t(s.val);return n}const eK={D:dl,DD:Ev,DDD:$v,DDDD:Sv,t:Av,tt:Tv,ttt:Ov,tttt:Dv,T:Pv,TT:Iv,TTT:Fv,TTTT:Rv,f:Lv,ff:Nv,fff:Bv,ffff:Uv,F:Mv,FF:Vv,FFF:Hv,FFFF:jv};class Kt{static create(t,n={}){return new Kt(t,n)}static parseFormat(t){let n=null,s="",r=!1;const o=[];for(let i=0;i0&&o.push({literal:r||/^\s+$/.test(s),val:s}),n=null,s="",r=!r):r||a===n?s+=a:(s.length>0&&o.push({literal:/^\s+$/.test(s),val:s}),s=a,n=a)}return s.length>0&&o.push({literal:r||/^\s+$/.test(s),val:s}),o}static macroTokenToFormatOpts(t){return eK[t]}constructor(t,n){this.opts=n,this.loc=t,this.systemLoc=null}formatWithSystemDefault(t,n){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(t,{...this.opts,...n}).format()}formatDateTime(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).format()}formatDateTimeParts(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).formatToParts()}formatInterval(t,n={}){return this.loc.dtFormatter(t.start,{...this.opts,...n}).dtf.formatRange(t.start.toJSDate(),t.end.toJSDate())}resolvedOptions(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).resolvedOptions()}num(t,n=0){if(this.opts.forceSimple)return Ot(t,n);const s={...this.opts};return n>0&&(s.padTo=n),this.loc.numberFormatter(s).format(t)}formatDateTimeFromString(t,n){const s=this.loc.listingMode()==="en",r=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",o=(p,h)=>this.loc.extract(t,p,h),i=p=>t.isOffsetFixed&&t.offset===0&&p.allowZ?"Z":t.isValid?t.zone.formatOffset(t.ts,p.format):"",a=()=>s?ZG(t):o({hour:"numeric",hourCycle:"h12"},"dayperiod"),u=(p,h)=>s?JG(t,p):o(h?{month:p}:{month:p,day:"numeric"},"month"),c=(p,h)=>s?YG(t,p):o(h?{weekday:p}:{weekday:p,month:"long",day:"numeric"},"weekday"),d=p=>{const h=Kt.macroTokenToFormatOpts(p);return h?this.formatWithSystemDefault(t,h):p},f=p=>s?XG(t,p):o({era:p},"era"),m=p=>{switch(p){case"S":return this.num(t.millisecond);case"u":case"SSS":return this.num(t.millisecond,3);case"s":return this.num(t.second);case"ss":return this.num(t.second,2);case"uu":return this.num(Math.floor(t.millisecond/10),2);case"uuu":return this.num(Math.floor(t.millisecond/100));case"m":return this.num(t.minute);case"mm":return this.num(t.minute,2);case"h":return this.num(t.hour%12===0?12:t.hour%12);case"hh":return this.num(t.hour%12===0?12:t.hour%12,2);case"H":return this.num(t.hour);case"HH":return this.num(t.hour,2);case"Z":return i({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return i({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return i({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return t.zone.offsetName(t.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return t.zone.offsetName(t.ts,{format:"long",locale:this.loc.locale});case"z":return t.zoneName;case"a":return a();case"d":return r?o({day:"numeric"},"day"):this.num(t.day);case"dd":return r?o({day:"2-digit"},"day"):this.num(t.day,2);case"c":return this.num(t.weekday);case"ccc":return c("short",!0);case"cccc":return c("long",!0);case"ccccc":return c("narrow",!0);case"E":return this.num(t.weekday);case"EEE":return c("short",!1);case"EEEE":return c("long",!1);case"EEEEE":return c("narrow",!1);case"L":return r?o({month:"numeric",day:"numeric"},"month"):this.num(t.month);case"LL":return r?o({month:"2-digit",day:"numeric"},"month"):this.num(t.month,2);case"LLL":return u("short",!0);case"LLLL":return u("long",!0);case"LLLLL":return u("narrow",!0);case"M":return r?o({month:"numeric"},"month"):this.num(t.month);case"MM":return r?o({month:"2-digit"},"month"):this.num(t.month,2);case"MMM":return u("short",!1);case"MMMM":return u("long",!1);case"MMMMM":return u("narrow",!1);case"y":return r?o({year:"numeric"},"year"):this.num(t.year);case"yy":return r?o({year:"2-digit"},"year"):this.num(t.year.toString().slice(-2),2);case"yyyy":return r?o({year:"numeric"},"year"):this.num(t.year,4);case"yyyyyy":return r?o({year:"numeric"},"year"):this.num(t.year,6);case"G":return f("short");case"GG":return f("long");case"GGGGG":return f("narrow");case"kk":return this.num(t.weekYear.toString().slice(-2),2);case"kkkk":return this.num(t.weekYear,4);case"W":return this.num(t.weekNumber);case"WW":return this.num(t.weekNumber,2);case"o":return this.num(t.ordinal);case"ooo":return this.num(t.ordinal,3);case"q":return this.num(t.quarter);case"qq":return this.num(t.quarter,2);case"X":return this.num(Math.floor(t.ts/1e3));case"x":return this.num(t.ts);default:return d(p)}};return Hp(Kt.parseFormat(n),m)}formatDurationFromString(t,n){const s=u=>{switch(u[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},r=u=>c=>{const d=s(c);return d?this.num(u.get(d),c.length):c},o=Kt.parseFormat(n),i=o.reduce((u,{literal:c,val:d})=>c?u:u.concat(d),[]),a=t.shiftTo(...i.map(s).filter(u=>u));return Hp(o,r(a))}}class Vn{constructor(t,n){this.reason=t,this.explanation=n}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const t1=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ao(...e){const t=e.reduce((n,s)=>n+s.source,"");return RegExp(`^${t}$`)}function lo(...e){return t=>e.reduce(([n,s,r],o)=>{const[i,a,u]=o(t,r);return[{...n,...i},a||s,u]},[{},null,1]).slice(0,2)}function uo(e,...t){if(e==null)return[null,null];for(const[n,s]of t){const r=n.exec(e);if(r)return s(r)}return[null,null]}function n1(...e){return(t,n)=>{const s={};let r;for(r=0;rp!==void 0&&(h||p&&d)?-p:p;return[{years:m(Xs(n)),months:m(Xs(s)),weeks:m(Xs(r)),days:m(Xs(o)),hours:m(Xs(i)),minutes:m(Xs(a)),seconds:m(Xs(u),u==="-0"),milliseconds:m(cm(c),f)}]}const fK={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function hm(e,t,n,s,r,o,i){const a={year:t.length===2?jc(Ps(t)):Ps(t),month:Kv.indexOf(n)+1,day:Ps(s),hour:Ps(r),minute:Ps(o)};return i&&(a.second=Ps(i)),e&&(a.weekday=e.length>3?Yv.indexOf(e)+1:Jv.indexOf(e)+1),a}const pK=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function hK(e){const[,t,n,s,r,o,i,a,u,c,d,f]=e,m=hm(t,r,s,n,o,i,a);let p;return u?p=fK[u]:c?p=0:p=tu(d,f),[m,new en(p)]}function _K(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const gK=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,yK=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,vK=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Up(e){const[,t,n,s,r,o,i,a]=e;return[hm(t,r,s,n,o,i,a),en.utcInstance]}function bK(e){const[,t,n,s,r,o,i,a]=e;return[hm(t,a,n,s,r,o,i),en.utcInstance]}const CK=ao(nK,pm),wK=ao(sK,pm),zK=ao(rK,pm),kK=ao(r1),i1=lo(uK,co,Ti,Oi),xK=lo(oK,co,Ti,Oi),EK=lo(iK,co,Ti,Oi),$K=lo(co,Ti,Oi);function SK(e){return uo(e,[CK,i1],[wK,xK],[zK,EK],[kK,$K])}function AK(e){return uo(_K(e),[pK,hK])}function TK(e){return uo(e,[gK,Up],[yK,Up],[vK,bK])}function OK(e){return uo(e,[dK,mK])}const DK=lo(co);function PK(e){return uo(e,[cK,DK])}const IK=ao(aK,lK),FK=ao(o1),RK=lo(co,Ti,Oi);function LK(e){return uo(e,[IK,i1],[FK,RK])}const MK="Invalid Duration",a1={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},NK={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...a1},xn=146097/400,Er=146097/4800,VK={years:{quarters:4,months:12,weeks:xn/7,days:xn,hours:xn*24,minutes:xn*24*60,seconds:xn*24*60*60,milliseconds:xn*24*60*60*1e3},quarters:{months:3,weeks:xn/28,days:xn/4,hours:xn*24/4,minutes:xn*24*60/4,seconds:xn*24*60*60/4,milliseconds:xn*24*60*60*1e3/4},months:{weeks:Er/7,days:Er,hours:Er*24,minutes:Er*24*60,seconds:Er*24*60*60,milliseconds:Er*24*60*60*1e3},...a1},er=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],BK=er.slice(0).reverse();function Ss(e,t,n=!1){const s={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new Je(s)}function HK(e){return e<0?Math.floor(e):Math.ceil(e)}function l1(e,t,n,s,r){const o=e[r][n],i=t[n]/o,a=Math.sign(i)===Math.sign(s[r]),u=!a&&s[r]!==0&&Math.abs(i)<=1?HK(i):Math.trunc(i);s[r]+=u,t[n]-=u*o}function UK(e,t){BK.reduce((n,s)=>tt(t[s])?n:(n&&l1(e,t,n,t,s),s),null)}function jK(e){const t={};for(const[n,s]of Object.entries(e))s!==0&&(t[n]=s);return t}class Je{constructor(t){const n=t.conversionAccuracy==="longterm"||!1;let s=n?VK:NK;t.matrix&&(s=t.matrix),this.values=t.values,this.loc=t.loc||vt.create(),this.conversionAccuracy=n?"longterm":"casual",this.invalid=t.invalid||null,this.matrix=s,this.isLuxonDuration=!0}static fromMillis(t,n){return Je.fromObject({milliseconds:t},n)}static fromObject(t,n={}){if(t==null||typeof t!="object")throw new En(`Duration.fromObject: argument expected to be an object, got ${t===null?"null":typeof t}`);return new Je({values:pl(t,Je.normalizeUnit),loc:vt.fromObject(n),conversionAccuracy:n.conversionAccuracy,matrix:n.matrix})}static fromDurationLike(t){if(ur(t))return Je.fromMillis(t);if(Je.isDuration(t))return t;if(typeof t=="object")return Je.fromObject(t);throw new En(`Unknown duration argument ${t} of type ${typeof t}`)}static fromISO(t,n){const[s]=OK(t);return s?Je.fromObject(s,n):Je.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static fromISOTime(t,n){const[s]=PK(t);return s?Je.fromObject(s,n):Je.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static invalid(t,n=null){if(!t)throw new En("need to specify a reason the Duration is invalid");const s=t instanceof Vn?t:new Vn(t,n);if(Tt.throwOnInvalid)throw new yG(s);return new Je({invalid:s})}static normalizeUnit(t){const n={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[t&&t.toLowerCase()];if(!n)throw new xv(t);return n}static isDuration(t){return t&&t.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(t,n={}){const s={...n,floor:n.round!==!1&&n.floor!==!1};return this.isValid?Kt.create(this.loc,s).formatDurationFromString(this,t):MK}toHuman(t={}){const n=er.map(s=>{const r=this.values[s];return tt(r)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...t,unit:s.slice(0,-1)}).format(r)}).filter(s=>s);return this.loc.listFormatter({type:"conjunction",style:t.listStyle||"narrow",...t}).format(n)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let t="P";return this.years!==0&&(t+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(t+=this.months+this.quarters*3+"M"),this.weeks!==0&&(t+=this.weeks+"W"),this.days!==0&&(t+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(t+="T"),this.hours!==0&&(t+=this.hours+"H"),this.minutes!==0&&(t+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(t+=dm(this.seconds+this.milliseconds/1e3,3)+"S"),t==="P"&&(t+="T0S"),t}toISOTime(t={}){if(!this.isValid)return null;const n=this.toMillis();if(n<0||n>=864e5)return null;t={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...t};const s=this.shiftTo("hours","minutes","seconds","milliseconds");let r=t.format==="basic"?"hhmm":"hh:mm";(!t.suppressSeconds||s.seconds!==0||s.milliseconds!==0)&&(r+=t.format==="basic"?"ss":":ss",(!t.suppressMilliseconds||s.milliseconds!==0)&&(r+=".SSS"));let o=s.toFormat(r);return t.includePrefix&&(o="T"+o),o}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){return this.as("milliseconds")}valueOf(){return this.toMillis()}plus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t),s={};for(const r of er)(Qr(n.values,r)||Qr(this.values,r))&&(s[r]=n.get(r)+this.get(r));return Ss(this,{values:s},!0)}minus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t);return this.plus(n.negate())}mapUnits(t){if(!this.isValid)return this;const n={};for(const s of Object.keys(this.values))n[s]=Gv(t(this.values[s],s));return Ss(this,{values:n},!0)}get(t){return this[Je.normalizeUnit(t)]}set(t){if(!this.isValid)return this;const n={...this.values,...pl(t,Je.normalizeUnit)};return Ss(this,{values:n})}reconfigure({locale:t,numberingSystem:n,conversionAccuracy:s,matrix:r}={}){const i={loc:this.loc.clone({locale:t,numberingSystem:n}),matrix:r,conversionAccuracy:s};return Ss(this,i)}as(t){return this.isValid?this.shiftTo(t).get(t):NaN}normalize(){if(!this.isValid)return this;const t=this.toObject();return UK(this.matrix,t),Ss(this,{values:t},!0)}rescale(){if(!this.isValid)return this;const t=jK(this.normalize().shiftToAll().toObject());return Ss(this,{values:t},!0)}shiftTo(...t){if(!this.isValid)return this;if(t.length===0)return this;t=t.map(i=>Je.normalizeUnit(i));const n={},s={},r=this.toObject();let o;for(const i of er)if(t.indexOf(i)>=0){o=i;let a=0;for(const c in s)a+=this.matrix[c][i]*s[c],s[c]=0;ur(r[i])&&(a+=r[i]);const u=Math.trunc(a);n[i]=u,s[i]=(a*1e3-u*1e3)/1e3;for(const c in r)er.indexOf(c)>er.indexOf(i)&&l1(this.matrix,r,c,n,i)}else ur(r[i])&&(s[i]=r[i]);for(const i in s)s[i]!==0&&(n[o]+=i===o?s[i]:s[i]/this.matrix[o][i]);return Ss(this,{values:n},!0).normalize()}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=this.values[n]===0?0:-this.values[n];return Ss(this,{values:t},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(t){if(!this.isValid||!t.isValid||!this.loc.equals(t.loc))return!1;function n(s,r){return s===void 0||s===0?r===void 0||r===0:s===r}for(const s of er)if(!n(this.values[s],t.values[s]))return!1;return!0}}const $r="Invalid Interval";function qK(e,t){return!e||!e.isValid?Et.invalid("missing or invalid start"):!t||!t.isValid?Et.invalid("missing or invalid end"):tt:!1}isBefore(t){return this.isValid?this.e<=t:!1}contains(t){return this.isValid?this.s<=t&&this.e>t:!1}set({start:t,end:n}={}){return this.isValid?Et.fromDateTimes(t||this.s,n||this.e):this}splitAt(...t){if(!this.isValid)return[];const n=t.map(ko).filter(i=>this.contains(i)).sort(),s=[];let{s:r}=this,o=0;for(;r+this.e?this.e:i;s.push(Et.fromDateTimes(r,a)),r=a,o+=1}return s}splitBy(t){const n=Je.fromDurationLike(t);if(!this.isValid||!n.isValid||n.as("milliseconds")===0)return[];let{s}=this,r=1,o;const i=[];for(;su*r));o=+a>+this.e?this.e:a,i.push(Et.fromDateTimes(s,o)),s=o,r+=1}return i}divideEqually(t){return this.isValid?this.splitBy(this.length()/t).slice(0,t):[]}overlaps(t){return this.e>t.s&&this.s=t.e:!1}equals(t){return!this.isValid||!t.isValid?!1:this.s.equals(t.s)&&this.e.equals(t.e)}intersection(t){if(!this.isValid)return this;const n=this.s>t.s?this.s:t.s,s=this.e=s?null:Et.fromDateTimes(n,s)}union(t){if(!this.isValid)return this;const n=this.st.e?this.e:t.e;return Et.fromDateTimes(n,s)}static merge(t){const[n,s]=t.sort((r,o)=>r.s-o.s).reduce(([r,o],i)=>o?o.overlaps(i)||o.abutsStart(i)?[r,o.union(i)]:[r.concat([o]),i]:[r,i],[[],null]);return s&&n.push(s),n}static xor(t){let n=null,s=0;const r=[],o=t.map(u=>[{time:u.s,type:"s"},{time:u.e,type:"e"}]),i=Array.prototype.concat(...o),a=i.sort((u,c)=>u.time-c.time);for(const u of a)s+=u.type==="s"?1:-1,s===1?n=u.time:(n&&+n!=+u.time&&r.push(Et.fromDateTimes(n,u.time)),n=null);return Et.merge(r)}difference(...t){return Et.xor([this].concat(t)).map(n=>this.intersection(n)).filter(n=>n&&!n.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:$r}toLocaleString(t=dl,n={}){return this.isValid?Kt.create(this.s.loc.clone(n),t).formatInterval(this):$r}toISO(t){return this.isValid?`${this.s.toISO(t)}/${this.e.toISO(t)}`:$r}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:$r}toISOTime(t){return this.isValid?`${this.s.toISOTime(t)}/${this.e.toISOTime(t)}`:$r}toFormat(t,{separator:n=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(t)}${n}${this.e.toFormat(t)}`:$r}toDuration(t,n){return this.isValid?this.e.diff(this.s,t,n):Je.invalid(this.invalidReason)}mapEndpoints(t){return Et.fromDateTimes(t(this.s),t(this.e))}}class Aa{static hasDST(t=Tt.defaultZone){const n=Ve.now().setZone(t).set({month:12});return!t.isUniversal&&n.offset!==n.set({month:6}).offset}static isValidIANAZone(t){return ys.isValidZone(t)}static normalizeZone(t){return Fs(t,Tt.defaultZone)}static months(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null,outputCalendar:o="gregory"}={}){return(r||vt.create(n,s,o)).months(t)}static monthsFormat(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null,outputCalendar:o="gregory"}={}){return(r||vt.create(n,s,o)).months(t,!0)}static weekdays(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null}={}){return(r||vt.create(n,s,null)).weekdays(t)}static weekdaysFormat(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null}={}){return(r||vt.create(n,s,null)).weekdays(t,!0)}static meridiems({locale:t=null}={}){return vt.create(t).meridiems()}static eras(t="short",{locale:n=null}={}){return vt.create(n,null,"gregory").eras(t)}static features(){return{relative:qv()}}}function jp(e,t){const n=r=>r.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),s=n(t)-n(e);return Math.floor(Je.fromMillis(s).as("days"))}function WK(e,t,n){const s=[["years",(u,c)=>c.year-u.year],["quarters",(u,c)=>c.quarter-u.quarter+(c.year-u.year)*4],["months",(u,c)=>c.month-u.month+(c.year-u.year)*12],["weeks",(u,c)=>{const d=jp(u,c);return(d-d%7)/7}],["days",jp]],r={},o=e;let i,a;for(const[u,c]of s)n.indexOf(u)>=0&&(i=u,r[u]=c(e,t),a=o.plus(r),a>t?(r[u]--,e=o.plus(r)):e=a);return[e,r,a,i]}function GK(e,t,n,s){let[r,o,i,a]=WK(e,t,n);const u=t-r,c=n.filter(f=>["hours","minutes","seconds","milliseconds"].indexOf(f)>=0);c.length===0&&(i0?Je.fromMillis(u,s).shiftTo(...c).plus(d):d}const _m={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},qp={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},KK=_m.hanidec.replace(/[\[|\]]/g,"").split("");function ZK(e){let t=parseInt(e,10);if(isNaN(t)){t="";for(let n=0;n=o&&s<=i&&(t+=s-o)}}return parseInt(t,10)}else return t}function Fn({numberingSystem:e},t=""){return new RegExp(`${_m[e||"latn"]}${t}`)}const YK="missing Intl.DateTimeFormat.formatToParts support";function lt(e,t=n=>n){return{regex:e,deser:([n])=>t(ZK(n))}}const JK=String.fromCharCode(160),u1=`[ ${JK}]`,c1=new RegExp(u1,"g");function XK(e){return e.replace(/\./g,"\\.?").replace(c1,u1)}function Wp(e){return e.replace(/\./g,"").replace(c1," ").toLowerCase()}function Rn(e,t){return e===null?null:{regex:RegExp(e.map(XK).join("|")),deser:([n])=>e.findIndex(s=>Wp(n)===Wp(s))+t}}function Gp(e,t){return{regex:e,deser:([,n,s])=>tu(n,s),groups:t}}function Ta(e){return{regex:e,deser:([t])=>t}}function QK(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function eZ(e,t){const n=Fn(t),s=Fn(t,"{2}"),r=Fn(t,"{3}"),o=Fn(t,"{4}"),i=Fn(t,"{6}"),a=Fn(t,"{1,2}"),u=Fn(t,"{1,3}"),c=Fn(t,"{1,6}"),d=Fn(t,"{1,9}"),f=Fn(t,"{2,4}"),m=Fn(t,"{4,6}"),p=w=>({regex:RegExp(QK(w.val)),deser:([b])=>b,literal:!0}),_=(w=>{if(e.literal)return p(w);switch(w.val){case"G":return Rn(t.eras("short",!1),0);case"GG":return Rn(t.eras("long",!1),0);case"y":return lt(c);case"yy":return lt(f,jc);case"yyyy":return lt(o);case"yyyyy":return lt(m);case"yyyyyy":return lt(i);case"M":return lt(a);case"MM":return lt(s);case"MMM":return Rn(t.months("short",!0,!1),1);case"MMMM":return Rn(t.months("long",!0,!1),1);case"L":return lt(a);case"LL":return lt(s);case"LLL":return Rn(t.months("short",!1,!1),1);case"LLLL":return Rn(t.months("long",!1,!1),1);case"d":return lt(a);case"dd":return lt(s);case"o":return lt(u);case"ooo":return lt(r);case"HH":return lt(s);case"H":return lt(a);case"hh":return lt(s);case"h":return lt(a);case"mm":return lt(s);case"m":return lt(a);case"q":return lt(a);case"qq":return lt(s);case"s":return lt(a);case"ss":return lt(s);case"S":return lt(u);case"SSS":return lt(r);case"u":return Ta(d);case"uu":return Ta(a);case"uuu":return lt(n);case"a":return Rn(t.meridiems(),0);case"kkkk":return lt(o);case"kk":return lt(f,jc);case"W":return lt(a);case"WW":return lt(s);case"E":case"c":return lt(n);case"EEE":return Rn(t.weekdays("short",!1,!1),1);case"EEEE":return Rn(t.weekdays("long",!1,!1),1);case"ccc":return Rn(t.weekdays("short",!0,!1),1);case"cccc":return Rn(t.weekdays("long",!0,!1),1);case"Z":case"ZZ":return Gp(new RegExp(`([+-]${a.source})(?::(${s.source}))?`),2);case"ZZZ":return Gp(new RegExp(`([+-]${a.source})(${s.source})?`),2);case"z":return Ta(/[a-z_+-/]{1,256}?/i);case" ":return Ta(/[^\S\n\r]/);default:return p(w)}})(e)||{invalidReason:YK};return _.token=e,_}const tZ={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour:{numeric:"h","2-digit":"hh"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function nZ(e,t){const{type:n,value:s}=e;if(n==="literal"){const i=/^\s+$/.test(s);return{literal:!i,val:i?" ":s}}const r=t[n];let o=tZ[n];if(typeof o=="object"&&(o=o[r]),o)return{literal:!1,val:o}}function sZ(e){return[`^${e.map(n=>n.regex).reduce((n,s)=>`${n}(${s.source})`,"")}$`,e]}function rZ(e,t,n){const s=e.match(t);if(s){const r={};let o=1;for(const i in n)if(Qr(n,i)){const a=n[i],u=a.groups?a.groups+1:1;!a.literal&&a.token&&(r[a.token.val[0]]=a.deser(s.slice(o,o+u))),o+=u}return[s,r]}else return[s,{}]}function oZ(e){const t=o=>{switch(o){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let n=null,s;return tt(e.z)||(n=ys.create(e.z)),tt(e.Z)||(n||(n=new en(e.Z)),s=e.Z),tt(e.q)||(e.M=(e.q-1)*3+1),tt(e.h)||(e.h<12&&e.a===1?e.h+=12:e.h===12&&e.a===0&&(e.h=0)),e.G===0&&e.y&&(e.y=-e.y),tt(e.u)||(e.S=cm(e.u)),[Object.keys(e).reduce((o,i)=>{const a=t(i);return a&&(o[a]=e[i]),o},{}),n,s]}let Ru=null;function iZ(){return Ru||(Ru=Ve.fromMillis(1555555555555)),Ru}function aZ(e,t){if(e.literal)return e;const n=Kt.macroTokenToFormatOpts(e.val),s=f1(n,t);return s==null||s.includes(void 0)?e:s}function d1(e,t){return Array.prototype.concat(...e.map(n=>aZ(n,t)))}function m1(e,t,n){const s=d1(Kt.parseFormat(n),e),r=s.map(i=>eZ(i,e)),o=r.find(i=>i.invalidReason);if(o)return{input:t,tokens:s,invalidReason:o.invalidReason};{const[i,a]=sZ(r),u=RegExp(i,"i"),[c,d]=rZ(t,u,a),[f,m,p]=d?oZ(d):[null,null,void 0];if(Qr(d,"a")&&Qr(d,"H"))throw new Io("Can't include meridiem when specifying 24-hour format");return{input:t,tokens:s,regex:u,rawMatches:c,matches:d,result:f,zone:m,specificOffset:p}}}function lZ(e,t,n){const{result:s,zone:r,specificOffset:o,invalidReason:i}=m1(e,t,n);return[s,r,o,i]}function f1(e,t){return e?Kt.create(t,e).formatDateTimeParts(iZ()).map(r=>nZ(r,e)):null}const p1=[0,31,59,90,120,151,181,212,243,273,304,334],h1=[0,31,60,91,121,152,182,213,244,274,305,335];function Sn(e,t){return new Vn("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function _1(e,t,n){const s=new Date(Date.UTC(e,t-1,n));e<100&&e>=0&&s.setUTCFullYear(s.getUTCFullYear()-1900);const r=s.getUTCDay();return r===0?7:r}function g1(e,t,n){return n+(Ai(e)?h1:p1)[t-1]}function y1(e,t){const n=Ai(e)?h1:p1,s=n.findIndex(o=>ofl(t)?(a=t+1,i=1):a=t,{weekYear:a,weekNumber:i,weekday:o,...nu(e)}}function Kp(e){const{weekYear:t,weekNumber:n,weekday:s}=e,r=_1(t,1,4),o=Xo(t);let i=n*7+s-r-3,a;i<1?(a=t-1,i+=Xo(a)):i>o?(a=t+1,i-=Xo(t)):a=t;const{month:u,day:c}=y1(a,i);return{year:a,month:u,day:c,...nu(e)}}function Lu(e){const{year:t,month:n,day:s}=e,r=g1(t,n,s);return{year:t,ordinal:r,...nu(e)}}function Zp(e){const{year:t,ordinal:n}=e,{month:s,day:r}=y1(t,n);return{year:t,month:s,day:r,...nu(e)}}function uZ(e){const t=eu(e.weekYear),n=ms(e.weekNumber,1,fl(e.weekYear)),s=ms(e.weekday,1,7);return t?n?s?!1:Sn("weekday",e.weekday):Sn("week",e.week):Sn("weekYear",e.weekYear)}function cZ(e){const t=eu(e.year),n=ms(e.ordinal,1,Xo(e.year));return t?n?!1:Sn("ordinal",e.ordinal):Sn("year",e.year)}function v1(e){const t=eu(e.year),n=ms(e.month,1,12),s=ms(e.day,1,ml(e.year,e.month));return t?n?s?!1:Sn("day",e.day):Sn("month",e.month):Sn("year",e.year)}function b1(e){const{hour:t,minute:n,second:s,millisecond:r}=e,o=ms(t,0,23)||t===24&&n===0&&s===0&&r===0,i=ms(n,0,59),a=ms(s,0,59),u=ms(r,0,999);return o?i?a?u?!1:Sn("millisecond",r):Sn("second",s):Sn("minute",n):Sn("hour",t)}const Mu="Invalid DateTime",Yp=864e13;function Oa(e){return new Vn("unsupported zone",`the zone "${e.name}" is not supported`)}function Nu(e){return e.weekData===null&&(e.weekData=qc(e.c)),e.weekData}function wo(e,t){const n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new Ve({...n,...t,old:n})}function C1(e,t,n){let s=e-t*60*1e3;const r=n.offset(s);if(t===r)return[s,t];s-=(r-t)*60*1e3;const o=n.offset(s);return r===o?[s,r]:[e-Math.min(r,o)*60*1e3,Math.max(r,o)]}function Jp(e,t){e+=t*60*1e3;const n=new Date(e);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function qa(e,t,n){return C1(mm(e),t,n)}function Xp(e,t){const n=e.o,s=e.c.year+Math.trunc(t.years),r=e.c.month+Math.trunc(t.months)+Math.trunc(t.quarters)*3,o={...e.c,year:s,month:r,day:Math.min(e.c.day,ml(s,r))+Math.trunc(t.days)+Math.trunc(t.weeks)*7},i=Je.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),a=mm(o);let[u,c]=C1(a,n,e.zone);return i!==0&&(u+=i,c=e.zone.offset(u)),{ts:u,o:c}}function zo(e,t,n,s,r,o){const{setZone:i,zone:a}=n;if(e&&Object.keys(e).length!==0||t){const u=t||a,c=Ve.fromObject(e,{...n,zone:u,specificOffset:o});return i?c:c.setZone(a)}else return Ve.invalid(new Vn("unparsable",`the input "${r}" can't be parsed as ${s}`))}function Da(e,t,n=!0){return e.isValid?Kt.create(vt.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(e,t):null}function Vu(e,t){const n=e.c.year>9999||e.c.year<0;let s="";return n&&e.c.year>=0&&(s+="+"),s+=Ot(e.c.year,n?6:4),t?(s+="-",s+=Ot(e.c.month),s+="-",s+=Ot(e.c.day)):(s+=Ot(e.c.month),s+=Ot(e.c.day)),s}function Qp(e,t,n,s,r,o){let i=Ot(e.c.hour);return t?(i+=":",i+=Ot(e.c.minute),(e.c.second!==0||!n)&&(i+=":")):i+=Ot(e.c.minute),(e.c.second!==0||!n)&&(i+=Ot(e.c.second),(e.c.millisecond!==0||!s)&&(i+=".",i+=Ot(e.c.millisecond,3))),r&&(e.isOffsetFixed&&e.offset===0&&!o?i+="Z":e.o<0?(i+="-",i+=Ot(Math.trunc(-e.o/60)),i+=":",i+=Ot(Math.trunc(-e.o%60))):(i+="+",i+=Ot(Math.trunc(e.o/60)),i+=":",i+=Ot(Math.trunc(e.o%60)))),o&&(i+="["+e.zone.ianaName+"]"),i}const w1={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},dZ={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},mZ={ordinal:1,hour:0,minute:0,second:0,millisecond:0},z1=["year","month","day","hour","minute","second","millisecond"],fZ=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],pZ=["year","ordinal","hour","minute","second","millisecond"];function eh(e){const t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new xv(e);return t}function th(e,t){const n=Fs(t.zone,Tt.defaultZone),s=vt.fromObject(t),r=Tt.now();let o,i;if(tt(e.year))o=r;else{for(const c of z1)tt(e[c])&&(e[c]=w1[c]);const a=v1(e)||b1(e);if(a)return Ve.invalid(a);const u=n.offset(r);[o,i]=qa(e,u,n)}return new Ve({ts:o,zone:n,loc:s,o:i})}function nh(e,t,n){const s=tt(n.round)?!0:n.round,r=(i,a)=>(i=dm(i,s||n.calendary?0:2,!0),t.loc.clone(n).relFormatter(n).format(i,a)),o=i=>n.calendary?t.hasSame(e,i)?0:t.startOf(i).diff(e.startOf(i),i).get(i):t.diff(e,i).get(i);if(n.unit)return r(o(n.unit),n.unit);for(const i of n.units){const a=o(i);if(Math.abs(a)>=1)return r(a,i)}return r(e>t?-0:0,n.units[n.units.length-1])}function sh(e){let t={},n;return e.length>0&&typeof e[e.length-1]=="object"?(t=e[e.length-1],n=Array.from(e).slice(0,e.length-1)):n=Array.from(e),[t,n]}class Ve{constructor(t){const n=t.zone||Tt.defaultZone;let s=t.invalid||(Number.isNaN(t.ts)?new Vn("invalid input"):null)||(n.isValid?null:Oa(n));this.ts=tt(t.ts)?Tt.now():t.ts;let r=null,o=null;if(!s)if(t.old&&t.old.ts===this.ts&&t.old.zone.equals(n))[r,o]=[t.old.c,t.old.o];else{const a=n.offset(this.ts);r=Jp(this.ts,a),s=Number.isNaN(r.year)?new Vn("invalid input"):null,r=s?null:r,o=s?null:a}this._zone=n,this.loc=t.loc||vt.create(),this.invalid=s,this.weekData=null,this.c=r,this.o=o,this.isLuxonDateTime=!0}static now(){return new Ve({})}static local(){const[t,n]=sh(arguments),[s,r,o,i,a,u,c]=n;return th({year:s,month:r,day:o,hour:i,minute:a,second:u,millisecond:c},t)}static utc(){const[t,n]=sh(arguments),[s,r,o,i,a,u,c]=n;return t.zone=en.utcInstance,th({year:s,month:r,day:o,hour:i,minute:a,second:u,millisecond:c},t)}static fromJSDate(t,n={}){const s=NG(t)?t.valueOf():NaN;if(Number.isNaN(s))return Ve.invalid("invalid input");const r=Fs(n.zone,Tt.defaultZone);return r.isValid?new Ve({ts:s,zone:r,loc:vt.fromObject(n)}):Ve.invalid(Oa(r))}static fromMillis(t,n={}){if(ur(t))return t<-Yp||t>Yp?Ve.invalid("Timestamp out of range"):new Ve({ts:t,zone:Fs(n.zone,Tt.defaultZone),loc:vt.fromObject(n)});throw new En(`fromMillis requires a numerical input, but received a ${typeof t} with value ${t}`)}static fromSeconds(t,n={}){if(ur(t))return new Ve({ts:t*1e3,zone:Fs(n.zone,Tt.defaultZone),loc:vt.fromObject(n)});throw new En("fromSeconds requires a numerical input")}static fromObject(t,n={}){t=t||{};const s=Fs(n.zone,Tt.defaultZone);if(!s.isValid)return Ve.invalid(Oa(s));const r=Tt.now(),o=tt(n.specificOffset)?s.offset(r):n.specificOffset,i=pl(t,eh),a=!tt(i.ordinal),u=!tt(i.year),c=!tt(i.month)||!tt(i.day),d=u||c,f=i.weekYear||i.weekNumber,m=vt.fromObject(n);if((d||a)&&f)throw new Io("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(c&&a)throw new Io("Can't mix ordinal dates with month/day");const p=f||i.weekday&&!d;let h,_,w=Jp(r,o);p?(h=fZ,_=dZ,w=qc(w)):a?(h=pZ,_=mZ,w=Lu(w)):(h=z1,_=w1);let b=!1;for(const I of h){const D=i[I];tt(D)?b?i[I]=_[I]:i[I]=w[I]:b=!0}const y=p?uZ(i):a?cZ(i):v1(i),k=y||b1(i);if(k)return Ve.invalid(k);const C=p?Kp(i):a?Zp(i):i,[x,T]=qa(C,o,s),L=new Ve({ts:x,zone:s,o:T,loc:m});return i.weekday&&d&&t.weekday!==L.weekday?Ve.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${L.toISO()}`):L}static fromISO(t,n={}){const[s,r]=SK(t);return zo(s,r,n,"ISO 8601",t)}static fromRFC2822(t,n={}){const[s,r]=AK(t);return zo(s,r,n,"RFC 2822",t)}static fromHTTP(t,n={}){const[s,r]=TK(t);return zo(s,r,n,"HTTP",n)}static fromFormat(t,n,s={}){if(tt(t)||tt(n))throw new En("fromFormat requires an input string and a format");const{locale:r=null,numberingSystem:o=null}=s,i=vt.fromOpts({locale:r,numberingSystem:o,defaultToEN:!0}),[a,u,c,d]=lZ(i,t,n);return d?Ve.invalid(d):zo(a,u,s,`format ${n}`,t,c)}static fromString(t,n,s={}){return Ve.fromFormat(t,n,s)}static fromSQL(t,n={}){const[s,r]=LK(t);return zo(s,r,n,"SQL",t)}static invalid(t,n=null){if(!t)throw new En("need to specify a reason the DateTime is invalid");const s=t instanceof Vn?t:new Vn(t,n);if(Tt.throwOnInvalid)throw new _G(s);return new Ve({invalid:s})}static isDateTime(t){return t&&t.isLuxonDateTime||!1}static parseFormatForOpts(t,n={}){const s=f1(t,vt.fromObject(n));return s?s.map(r=>r?r.val:null).join(""):null}static expandFormat(t,n={}){return d1(Kt.parseFormat(t),vt.fromObject(n)).map(r=>r.val).join("")}get(t){return this[t]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Nu(this).weekYear:NaN}get weekNumber(){return this.isValid?Nu(this).weekNumber:NaN}get weekday(){return this.isValid?Nu(this).weekday:NaN}get ordinal(){return this.isValid?Lu(this.c).ordinal:NaN}get monthShort(){return this.isValid?Aa.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Aa.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Aa.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Aa.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}get isInLeapYear(){return Ai(this.year)}get daysInMonth(){return ml(this.year,this.month)}get daysInYear(){return this.isValid?Xo(this.year):NaN}get weeksInWeekYear(){return this.isValid?fl(this.weekYear):NaN}resolvedLocaleOptions(t={}){const{locale:n,numberingSystem:s,calendar:r}=Kt.create(this.loc.clone(t),t).resolvedOptions(this);return{locale:n,numberingSystem:s,outputCalendar:r}}toUTC(t=0,n={}){return this.setZone(en.instance(t),n)}toLocal(){return this.setZone(Tt.defaultZone)}setZone(t,{keepLocalTime:n=!1,keepCalendarTime:s=!1}={}){if(t=Fs(t,Tt.defaultZone),t.equals(this.zone))return this;if(t.isValid){let r=this.ts;if(n||s){const o=t.offset(this.ts),i=this.toObject();[r]=qa(i,o,t)}return wo(this,{ts:r,zone:t})}else return Ve.invalid(Oa(t))}reconfigure({locale:t,numberingSystem:n,outputCalendar:s}={}){const r=this.loc.clone({locale:t,numberingSystem:n,outputCalendar:s});return wo(this,{loc:r})}setLocale(t){return this.reconfigure({locale:t})}set(t){if(!this.isValid)return this;const n=pl(t,eh),s=!tt(n.weekYear)||!tt(n.weekNumber)||!tt(n.weekday),r=!tt(n.ordinal),o=!tt(n.year),i=!tt(n.month)||!tt(n.day),a=o||i,u=n.weekYear||n.weekNumber;if((a||r)&&u)throw new Io("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(i&&r)throw new Io("Can't mix ordinal dates with month/day");let c;s?c=Kp({...qc(this.c),...n}):tt(n.ordinal)?(c={...this.toObject(),...n},tt(n.day)&&(c.day=Math.min(ml(c.year,c.month),c.day))):c=Zp({...Lu(this.c),...n});const[d,f]=qa(c,this.o,this.zone);return wo(this,{ts:d,o:f})}plus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t);return wo(this,Xp(this,n))}minus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t).negate();return wo(this,Xp(this,n))}startOf(t){if(!this.isValid)return this;const n={},s=Je.normalizeUnit(t);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks"&&(n.weekday=1),s==="quarters"){const r=Math.ceil(this.month/3);n.month=(r-1)*3+1}return this.set(n)}endOf(t){return this.isValid?this.plus({[t]:1}).startOf(t).minus(1):this}toFormat(t,n={}){return this.isValid?Kt.create(this.loc.redefaultToEN(n)).formatDateTimeFromString(this,t):Mu}toLocaleString(t=dl,n={}){return this.isValid?Kt.create(this.loc.clone(n),t).formatDateTime(this):Mu}toLocaleParts(t={}){return this.isValid?Kt.create(this.loc.clone(t),t).formatDateTimeParts(this):[]}toISO({format:t="extended",suppressSeconds:n=!1,suppressMilliseconds:s=!1,includeOffset:r=!0,extendedZone:o=!1}={}){if(!this.isValid)return null;const i=t==="extended";let a=Vu(this,i);return a+="T",a+=Qp(this,i,n,s,r,o),a}toISODate({format:t="extended"}={}){return this.isValid?Vu(this,t==="extended"):null}toISOWeekDate(){return Da(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:t=!1,suppressSeconds:n=!1,includeOffset:s=!0,includePrefix:r=!1,extendedZone:o=!1,format:i="extended"}={}){return this.isValid?(r?"T":"")+Qp(this,i==="extended",n,t,s,o):null}toRFC2822(){return Da(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Da(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Vu(this,!0):null}toSQLTime({includeOffset:t=!0,includeZone:n=!1,includeOffsetSpace:s=!0}={}){let r="HH:mm:ss.SSS";return(n||t)&&(s&&(r+=" "),n?r+="z":t&&(r+="ZZ")),Da(this,r,!0)}toSQL(t={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(t)}`:null}toString(){return this.isValid?this.toISO():Mu}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(t={}){if(!this.isValid)return{};const n={...this.c};return t.includeConfig&&(n.outputCalendar=this.outputCalendar,n.numberingSystem=this.loc.numberingSystem,n.locale=this.loc.locale),n}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(t,n="milliseconds",s={}){if(!this.isValid||!t.isValid)return Je.invalid("created by diffing an invalid DateTime");const r={locale:this.locale,numberingSystem:this.numberingSystem,...s},o=VG(n).map(Je.normalizeUnit),i=t.valueOf()>this.valueOf(),a=i?this:t,u=i?t:this,c=GK(a,u,o,r);return i?c.negate():c}diffNow(t="milliseconds",n={}){return this.diff(Ve.now(),t,n)}until(t){return this.isValid?Et.fromDateTimes(this,t):this}hasSame(t,n){if(!this.isValid)return!1;const s=t.valueOf(),r=this.setZone(t.zone,{keepLocalTime:!0});return r.startOf(n)<=s&&s<=r.endOf(n)}equals(t){return this.isValid&&t.isValid&&this.valueOf()===t.valueOf()&&this.zone.equals(t.zone)&&this.loc.equals(t.loc)}toRelative(t={}){if(!this.isValid)return null;const n=t.base||Ve.fromObject({},{zone:this.zone}),s=t.padding?thisn.valueOf(),Math.min)}static max(...t){if(!t.every(Ve.isDateTime))throw new En("max requires all arguments be DateTimes");return Bp(t,n=>n.valueOf(),Math.max)}static fromFormatExplain(t,n,s={}){const{locale:r=null,numberingSystem:o=null}=s,i=vt.fromOpts({locale:r,numberingSystem:o,defaultToEN:!0});return m1(i,t,n)}static fromStringExplain(t,n,s={}){return Ve.fromFormatExplain(t,n,s)}static get DATE_SHORT(){return dl}static get DATE_MED(){return Ev}static get DATE_MED_WITH_WEEKDAY(){return vG}static get DATE_FULL(){return $v}static get DATE_HUGE(){return Sv}static get TIME_SIMPLE(){return Av}static get TIME_WITH_SECONDS(){return Tv}static get TIME_WITH_SHORT_OFFSET(){return Ov}static get TIME_WITH_LONG_OFFSET(){return Dv}static get TIME_24_SIMPLE(){return Pv}static get TIME_24_WITH_SECONDS(){return Iv}static get TIME_24_WITH_SHORT_OFFSET(){return Fv}static get TIME_24_WITH_LONG_OFFSET(){return Rv}static get DATETIME_SHORT(){return Lv}static get DATETIME_SHORT_WITH_SECONDS(){return Mv}static get DATETIME_MED(){return Nv}static get DATETIME_MED_WITH_SECONDS(){return Vv}static get DATETIME_MED_WITH_WEEKDAY(){return bG}static get DATETIME_FULL(){return Bv}static get DATETIME_FULL_WITH_SECONDS(){return Hv}static get DATETIME_HUGE(){return Uv}static get DATETIME_HUGE_WITH_SECONDS(){return jv}}function ko(e){if(Ve.isDateTime(e))return e;if(e&&e.valueOf&&ur(e.valueOf()))return Ve.fromJSDate(e);if(e&&typeof e=="object")return Ve.fromObject(e);throw new En(`Unknown datetime argument: ${e}, of type ${typeof e}`)}const{t:Bu,locale:Hu}=Fl.global,hZ={durationInHours(e){const t=Math.floor(e/1e3);return t>3600?Je.fromObject({seconds:t}).shiftTo("hours","minutes","seconds").toFormat("hh:mm:ss"):Je.fromObject({seconds:t}).shiftTo("minutes","seconds").toFormat("mm:ss")},durationInDays(e){const t=Math.floor(e/6e4);return t>1440?Je.fromObject({minutes:t}).shiftTo("days","hours","minutes").toHuman():t>60?Je.fromObject({minutes:t}).shiftTo("hours","minutes").toHuman():Je.fromObject({minutes:t}).shiftTo("minutes").toHuman()},date(e){return Ve.fromISO(e).setLocale(Hu.value).toLocaleString(Ve.DATE_FULL)},datetime(e){return Ve.fromISO(e).setLocale(Hu.value).toLocaleString(Ve.DATETIME_MED)},timeFromNow(e){const t=Ve.now().diff(Ve.fromISO(e));return this.durationInDays(t.as("milliseconds"))},number(e){return e.toLocaleString(Hu.value)},channels(e){return e===1?Bu("filter.mono"):e===2?Bu("filter.stereo"):e?Bu("filter.channels",{value:e}):""},cursor(e,t=20){const s=t/2;return`url("data:image/svg+xml,%3Csvg width='${t}' height='${t}' viewBox='0 0 ${24} ${24}' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='${e}'/%3E%3C/svg%3E") ${s} ${s}, auto`}},_Z={mdiAccountMusic:$8,mdiAlbum:S8,mdiArrowCollapseDown:T8,mdiBookOpenPageVariant:O8,mdiBookOpenVariant:D8,mdiBookshelf:P8,mdiBroadcast:I8,mdiCancel:Gl,mdiCast:F8,mdiCastVariant:R8,mdiCellphone:L8,mdiCheck:M8,mdiChevronDown:N8,mdiChevronUp:V8,mdiContentSave:B8,mdiDelete:H8,mdiDeleteEmpty:U8,mdiDotsHorizontal:j8,mdiDotsVertical:q8,mdiDragHorizontal:W8,mdiFastForward30:G8,mdiFileMusic:K8,mdiFileOutline:Z8,mdiFire:Y8,mdiFolder:J8,mdiFolderOpen:X8,mdiMagnify:Q8,mdiMenu:eT,mdiMicrophone:tT,mdiMusic:nT,mdiMusicBoxMultiple:sT,mdiOpenInNew:rT,mdiPause:oT,mdiPencil:iT,mdiPipe:aT,mdiPlay:lT,mdiPlaylistPlay:uT,mdiPlaylistPlus:cT,mdiRadio:dT,mdiRadioTower:mT,mdiRefresh:fT,mdiRepeat:pT,mdiRepeatOff:hT,mdiRepeatOnce:_T,mdiRewind10:gT,mdiRss:yT,mdiServer:vT,mdiShuffle:bT,mdiShuffleDisabled:CT,mdiSkipBackward:wT,mdiSkipForward:zT,mdiSpeaker:kT,mdiSpotify:xT,mdiStop:ET,mdiSubdirectoryArrowLeft:$T,mdiVolumeHigh:ST,mdiVolumeOff:AT,mdiWeb:TT},gZ={name:"NavbarItemLink",props:{to:String,exact:Boolean},computed:{is_active(){return this.exact?this.$route.path===this.to:this.$route.path.startsWith(this.to)},show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}}},methods:{open_link(){this.show_burger_menu&&this.$store.commit(Gr,!1),this.show_player_menu&&this.$store.commit(Kr,!1),this.$router.push({path:this.to})},full_path(){return this.$router.resolve(this.to).href}}},yZ=["href"];function vZ(e,t,n,s,r,o){return z(),S("a",{class:Ae(["navbar-item",{"is-active":o.is_active}]),href:o.full_path(),onClick:t[0]||(t[0]=it(i=>o.open_link(),["stop","prevent"]))},[ut(e.$slots,"default")],10,yZ)}var k1=re(gZ,[["render",vZ]]);const bZ={name:"NavbarTop",components:{NavbarItemLink:k1},data(){return{show_settings_menu:!1}},computed:{is_visible_playlists(){return this.$store.getters.settings_option("webinterface","show_menu_item_playlists").value},is_visible_music(){return this.$store.getters.settings_option("webinterface","show_menu_item_music").value},is_visible_podcasts(){return this.$store.getters.settings_option("webinterface","show_menu_item_podcasts").value},is_visible_audiobooks(){return this.$store.getters.settings_option("webinterface","show_menu_item_audiobooks").value},is_visible_radio(){return this.$store.getters.settings_option("webinterface","show_menu_item_radio").value},is_visible_files(){return this.$store.getters.settings_option("webinterface","show_menu_item_files").value},is_visible_search(){return this.$store.getters.settings_option("webinterface","show_menu_item_search").value},player(){return this.$store.state.player},config(){return this.$store.state.config},library(){return this.$store.state.library},audiobooks(){return this.$store.state.audiobooks_count},podcasts(){return this.$store.state.podcasts_count},spotify_enabled(){return this.$store.state.spotify.webapi_token_valid},show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}},show_player_menu(){return this.$store.state.show_player_menu},show_update_dialog:{get(){return this.$store.state.show_update_dialog},set(e){this.$store.commit(wi,e)}},zindex(){return this.show_player_menu?"z-index: 20":""}},watch:{$route(e,t){this.show_settings_menu=!1}},methods:{on_click_outside_settings(){this.show_settings_menu=!this.show_settings_menu},open_update_dialog(){this.show_update_dialog=!0,this.show_settings_menu=!1,this.show_burger_menu=!1}}},CZ={class:"navbar-brand"},wZ={class:"icon"},zZ={class:"icon"},kZ={class:"icon"},xZ={class:"icon"},EZ={class:"icon"},$Z={class:"icon"},SZ={class:"icon"},AZ=l("span",null,null,-1),TZ=l("span",null,null,-1),OZ=l("span",null,null,-1),DZ=[AZ,TZ,OZ],PZ=l("div",{class:"navbar-start"},null,-1),IZ={class:"navbar-end"},FZ={class:"navbar-link is-arrowless"},RZ={class:"icon is-hidden-touch"},LZ=["textContent"],MZ={class:"navbar-dropdown is-right"},NZ={class:"icon"},VZ=["textContent"],BZ={class:"icon"},HZ=["textContent"],UZ=["textContent"],jZ=["textContent"],qZ=["textContent"],WZ=["textContent"],GZ={class:"icon"},KZ=["textContent"],ZZ={class:"icon"},YZ=["textContent"],JZ={class:"icon"},XZ=["textContent"],QZ={class:"icon"},eY=["textContent"],tY={class:"icon"},nY=["textContent"],sY=l("hr",{class:"fd-navbar-divider"},null,-1),rY=["textContent"],oY=l("div",{class:"navbar-item is-hidden-desktop",style:{"margin-bottom":"2.5rem"}},null,-1);function iY(e,t,n,s,r,o){const i=$("mdicon"),a=$("navbar-item-link");return z(),S("nav",{class:"fd-top-navbar navbar is-light is-fixed-top",style:ln(o.zindex),role:"navigation","aria-label":"main navigation"},[l("div",CZ,[o.is_visible_playlists?(z(),be(a,{key:0,to:"/playlists"},{default:E(()=>[l("span",wZ,[v(i,{name:"music-box-multiple",size:"16"})])]),_:1})):H("",!0),o.is_visible_music?(z(),be(a,{key:1,to:"/music"},{default:E(()=>[l("span",zZ,[v(i,{name:"music",size:"16"})])]),_:1})):H("",!0),o.is_visible_podcasts?(z(),be(a,{key:2,to:"/podcasts"},{default:E(()=>[l("span",kZ,[v(i,{name:"microphone",size:"16"})])]),_:1})):H("",!0),o.is_visible_audiobooks?(z(),be(a,{key:3,to:"/audiobooks"},{default:E(()=>[l("span",xZ,[v(i,{name:"book-open-variant",size:"16"})])]),_:1})):H("",!0),o.is_visible_radio?(z(),be(a,{key:4,to:"/radio"},{default:E(()=>[l("span",EZ,[v(i,{name:"radio",size:"16"})])]),_:1})):H("",!0),o.is_visible_files?(z(),be(a,{key:5,to:"/files"},{default:E(()=>[l("span",$Z,[v(i,{name:"folder-open",size:"16"})])]),_:1})):H("",!0),o.is_visible_search?(z(),be(a,{key:6,to:"/search"},{default:E(()=>[l("span",SZ,[v(i,{name:"magnify",size:"16"})])]),_:1})):H("",!0),l("div",{class:Ae(["navbar-burger",{"is-active":o.show_burger_menu}]),onClick:t[0]||(t[0]=u=>o.show_burger_menu=!o.show_burger_menu)},DZ,2)]),l("div",{class:Ae(["navbar-menu",{"is-active":o.show_burger_menu}])},[PZ,l("div",IZ,[l("div",{class:Ae(["navbar-item has-dropdown is-hoverable",{"is-active":r.show_settings_menu}]),onClick:t[2]||(t[2]=(...u)=>o.on_click_outside_settings&&o.on_click_outside_settings(...u))},[l("a",FZ,[l("span",RZ,[v(i,{name:"menu",size:"24"})]),l("span",{class:"is-hidden-desktop has-text-weight-bold",textContent:g(e.$t("navigation.title"))},null,8,LZ)]),l("div",MZ,[v(a,{to:"/playlists"},{default:E(()=>[l("span",NZ,[v(i,{name:"music-box-multiple",size:"16"})]),l("b",{textContent:g(e.$t("navigation.playlists"))},null,8,VZ)]),_:1}),v(a,{to:"/music",exact:""},{default:E(()=>[l("span",BZ,[v(i,{name:"music",size:"16"})]),l("b",{textContent:g(e.$t("navigation.music"))},null,8,HZ)]),_:1}),v(a,{to:"/music/artists"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.artists"))},null,8,UZ)]),_:1}),v(a,{to:"/music/albums"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.albums"))},null,8,jZ)]),_:1}),v(a,{to:"/music/genres"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.genres"))},null,8,qZ)]),_:1}),o.spotify_enabled?(z(),be(a,{key:0,to:"/music/spotify"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.spotify"))},null,8,WZ)]),_:1})):H("",!0),v(a,{to:"/podcasts"},{default:E(()=>[l("span",GZ,[v(i,{name:"microphone",size:"16"})]),l("b",{textContent:g(e.$t("navigation.podcasts"))},null,8,KZ)]),_:1}),v(a,{to:"/audiobooks"},{default:E(()=>[l("span",ZZ,[v(i,{name:"book-open-variant",size:"16"})]),l("b",{textContent:g(e.$t("navigation.audiobooks"))},null,8,YZ)]),_:1}),v(a,{to:"/radio"},{default:E(()=>[l("span",JZ,[v(i,{name:"radio",size:"16"})]),l("b",{textContent:g(e.$t("navigation.radio"))},null,8,XZ)]),_:1}),v(a,{to:"/files"},{default:E(()=>[l("span",QZ,[v(i,{name:"folder-open",size:"16"})]),l("b",{textContent:g(e.$t("navigation.files"))},null,8,eY)]),_:1}),v(a,{to:"/search"},{default:E(()=>[l("span",tY,[v(i,{name:"magnify",size:"16"})]),l("b",{textContent:g(e.$t("navigation.search"))},null,8,nY)]),_:1}),sY,v(a,{to:"/settings/webinterface"},{default:E(()=>[mt(g(e.$t("navigation.settings")),1)]),_:1}),l("a",{class:"navbar-item",onClick:t[1]||(t[1]=it(u=>o.open_update_dialog(),["stop","prevent"])),textContent:g(e.$t("navigation.update-library"))},null,8,rY),v(a,{to:"/about"},{default:E(()=>[mt(g(e.$t("navigation.about")),1)]),_:1}),oY])],2)])],2),dt(l("div",{class:"is-overlay",style:{"z-index":"10",width:"100vw",height:"100vh"},onClick:t[3]||(t[3]=u=>r.show_settings_menu=!1)},null,512),[[ui,r.show_settings_menu]])],4)}var aY=re(bZ,[["render",iY]]),xo={_audio:new Audio,_context:null,_source:null,_gain:null,setupAudio(){const e=window.AudioContext||window.webkitAudioContext;return this._context=new e,this._source=this._context.createMediaElementSource(this._audio),this._gain=this._context.createGain(),this._source.connect(this._gain),this._gain.connect(this._context.destination),this._audio.addEventListener("canplaythrough",t=>{this._audio.play()}),this._audio.addEventListener("canplay",t=>{this._audio.play()}),this._audio},setVolume(e){!this._gain||(e=parseFloat(e)||0,e=e<0?0:e,e=e>1?1:e,this._gain.gain.value=e)},playSource(e){this.stopAudio(),this._context.resume().then(()=>{this._audio.src=String(e||"")+"?x="+Date.now(),this._audio.crossOrigin="anonymous",this._audio.load()})},stopAudio(){try{this._audio.pause()}catch{}try{this._audio.stop()}catch{}try{this._audio.close()}catch{}}};const lY={name:"NavbarItemOutput",props:["output"],data(){return{volume:this.output.selected?this.output.volume:0,cursor:Gl}},computed:{type_class(){return this.output.type.startsWith("AirPlay")?"cast-variant":this.output.type==="Chromecast"?"cast":this.output.type==="fifo"?"pipe":"server"}},watch:{output(){this.volume=this.output.volume}},methods:{change_volume(){N.player_output_volume(this.output.id,this.volume)},set_enabled(){const e={selected:!this.output.selected};N.output_update(this.output.id,e)}}},uY={class:"navbar-item"},cY={class:"level is-mobile"},dY={class:"level-left is-flex-grow-1"},mY={class:"level-item is-flex-grow-0"},fY={class:"button is-white is-small"},pY={class:"level-item"},hY={class:"is-flex-grow-1"},_Y=["textContent"],gY=["disabled"];function yY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("div",uY,[l("div",cY,[l("div",dY,[l("div",mY,[l("a",fY,[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!n.output.selected}]),onClick:t[0]||(t[0]=(...a)=>o.set_enabled&&o.set_enabled(...a))},[v(i,{name:o.type_class,size:"18",title:n.output.type},null,8,["name","title"])],2)])]),l("div",pY,[l("div",hY,[l("p",{class:Ae(["heading",{"has-text-grey-light":!n.output.selected}]),textContent:g(n.output.name)},null,10,_Y),dt(l("input",{"onUpdate:modelValue":t[1]||(t[1]=a=>r.volume=a),disabled:!n.output.selected,class:Ae(["slider",{"is-inactive":!n.output.selected}]),max:"100",type:"range",style:ln({"--ratio":r.volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[2]||(t[2]=(...a)=>o.change_volume&&o.change_volume(...a))},null,46,gY),[[It,r.volume]])])])])])])}var vY=re(lY,[["render",yY]]);const bY={name:"PlayerButtonPlayPause",props:{icon_size:{type:Number,default:16},show_disabled_message:Boolean},computed:{is_playing(){return this.$store.state.player.state==="play"},is_pause_allowed(){return this.$store.getters.now_playing&&this.$store.getters.now_playing.data_kind!=="pipe"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0},icon_name(){if(this.is_playing){if(this.is_pause_allowed)return"pause"}else return"play";return"stop"}},methods:{toggle_play_pause(){if(this.disabled){this.show_disabled_message&&this.$store.dispatch("add_notification",{text:this.$t("server.empty-queue"),type:"info",topic:"connection",timeout:2e3});return}this.is_playing&&this.is_pause_allowed?N.player_pause():this.is_playing&&!this.is_pause_allowed?N.player_stop():N.player_play()}}},CY=["disabled"],wY={class:"icon"};function zY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.toggle_play_pause&&o.toggle_play_pause(...a))},[l("span",wY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],8,CY)}var kY=re(bY,[["render",zY]]);const xY={name:"PlayerButtonNext",props:{icon_size:{type:Number,default:16}},computed:{disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_next(){this.disabled||N.player_next()}}},EY=["disabled"],$Y={class:"icon"};function SY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.play_next&&o.play_next(...a))},[l("span",$Y,[v(i,{name:"skip-forward",size:n.icon_size,title:e.$t("player.button.skip-forward")},null,8,["size","title"])])],8,EY)}var AY=re(xY,[["render",SY]]);const TY={name:"PlayerButtonPrevious",props:{icon_size:{type:Number,default:16}},computed:{disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_previous(){this.disabled||N.player_previous()}}},OY=["disabled"],DY={class:"icon"};function PY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.play_previous&&o.play_previous(...a))},[l("span",DY,[v(i,{name:"skip-backward",size:n.icon_size,title:e.$t("player.button.skip-backward")},null,8,["size","title"])])],8,OY)}var IY=re(TY,[["render",PY]]);const FY={name:"PlayerButtonShuffle",props:{icon_size:{type:Number,default:16}},computed:{is_shuffle(){return this.$store.state.player.shuffle},icon_name(){return this.is_shuffle?"shuffle":"shuffle-disabled"}},methods:{toggle_shuffle_mode(){N.player_shuffle(!this.is_shuffle)}}},RY={class:"icon"};function LY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":o.is_shuffle}),onClick:t[0]||(t[0]=(...a)=>o.toggle_shuffle_mode&&o.toggle_shuffle_mode(...a))},[l("span",RY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],2)}var MY=re(FY,[["render",LY]]);const NY={name:"PlayerButtonConsume",props:{icon_size:{type:Number,default:16}},computed:{is_consume(){return this.$store.state.player.consume}},methods:{toggle_consume_mode(){N.player_consume(!this.is_consume)}}},VY={class:"icon"};function BY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":o.is_consume}),onClick:t[0]||(t[0]=(...a)=>o.toggle_consume_mode&&o.toggle_consume_mode(...a))},[l("span",VY,[v(i,{name:"fire",size:n.icon_size,title:e.$t("player.button.consume")},null,8,["size","title"])])],2)}var HY=re(NY,[["render",BY]]);const UY={name:"PlayerButtonRepeat",props:{icon_size:{type:Number,default:16}},computed:{is_repeat_all(){return this.$store.state.player.repeat==="all"},is_repeat_single(){return this.$store.state.player.repeat==="single"},is_repeat_off(){return!this.is_repeat_all&&!this.is_repeat_single},icon_name(){return this.is_repeat_all?"repeat":this.is_repeat_single?"repeat-once":"repeat-off"}},methods:{toggle_repeat_mode(){this.is_repeat_all?N.player_repeat("single"):this.is_repeat_single?N.player_repeat("off"):N.player_repeat("all")}}},jY={class:"icon"};function qY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":!o.is_repeat_off}),onClick:t[0]||(t[0]=(...a)=>o.toggle_repeat_mode&&o.toggle_repeat_mode(...a))},[l("span",jY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],2)}var WY=re(UY,[["render",qY]]);const GY={name:"PlayerButtonSeekBack",props:{seek_ms:Number,icon_size:{type:Number,default:16}},computed:{now_playing(){return this.$store.getters.now_playing},is_stopped(){return this.$store.state.player.state==="stop"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||this.now_playing.data_kind==="pipe"},visible(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek(){this.disabled||N.player_seek(this.seek_ms*-1)}}},KY=["disabled"],ZY={class:"icon"};function YY(e,t,n,s,r,o){const i=$("mdicon");return o.visible?(z(),S("a",{key:0,disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.seek&&o.seek(...a))},[l("span",ZY,[v(i,{name:"rewind-10",size:n.icon_size,title:e.$t("player.button.seek-backward")},null,8,["size","title"])])],8,KY)):H("",!0)}var JY=re(GY,[["render",YY]]);const XY={name:"PlayerButtonSeekForward",props:{seek_ms:Number,icon_size:{type:Number,default:16}},computed:{now_playing(){return this.$store.getters.now_playing},is_stopped(){return this.$store.state.player.state==="stop"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||this.now_playing.data_kind==="pipe"},visible(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek(){this.disabled||N.player_seek(this.seek_ms)}}},QY=["disabled"],eJ={class:"icon"};function tJ(e,t,n,s,r,o){const i=$("mdicon");return o.visible?(z(),S("a",{key:0,disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.seek&&o.seek(...a))},[l("span",eJ,[v(i,{name:"fast-forward-30",size:n.icon_size,title:e.$t("player.button.seek-forward")},null,8,["size","title"])])],8,QY)):H("",!0)}var nJ=re(XY,[["render",tJ]]);const sJ={name:"NavbarBottom",components:{NavbarItemLink:k1,NavbarItemOutput:vY,PlayerButtonPlayPause:kY,PlayerButtonNext:AY,PlayerButtonPrevious:IY,PlayerButtonShuffle:MY,PlayerButtonConsume:HY,PlayerButtonRepeat:WY,PlayerButtonSeekForward:nJ,PlayerButtonSeekBack:JY},data(){return{cursor:Gl,old_volume:0,playing:!1,loading:!1,stream_volume:10,show_outputs_menu:!1,show_desktop_outputs_menu:!1}},computed:{show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_burger_menu(){return this.$store.state.show_burger_menu},zindex(){return this.show_burger_menu?"z-index: 20":""},now_playing(){return this.$store.getters.now_playing},is_now_playing_page(){return this.$route.path==="/now-playing"},outputs(){return this.$store.state.outputs},player(){return this.$store.state.player},config(){return this.$store.state.config}},watch:{"$store.state.player.volume"(){this.player.volume>0&&(this.old_volume=this.player.volume)}},mounted(){this.setupAudio()},unmounted(){this.closeAudio()},methods:{on_click_outside_outputs(){this.show_outputs_menu=!1},change_volume(){N.player_volume(this.player.volume)},toggle_mute_volume(){this.player.volume=this.player.volume>0?0:this.old_volume,this.change_volume()},setupAudio(){const e=xo.setupAudio();e.addEventListener("waiting",t=>{this.playing=!1,this.loading=!0}),e.addEventListener("playing",t=>{this.playing=!0,this.loading=!1}),e.addEventListener("ended",t=>{this.playing=!1,this.loading=!1}),e.addEventListener("error",t=>{this.closeAudio(),this.$store.dispatch("add_notification",{text:this.$t("navigation.stream-error"),type:"danger"}),this.playing=!1,this.loading=!1})},closeAudio(){xo.stopAudio(),this.playing=!1},playChannel(){if(this.playing)return;const e="/stream.mp3";this.loading=!0,xo.playSource(e),xo.setVolume(this.stream_volume/100)},togglePlay(){if(!this.loading)return this.playing?this.closeAudio():this.playChannel()},change_stream_volume(){console.log(this.stream_volume),xo.setVolume(this.stream_volume/100)}}},rJ={class:"navbar-brand is-flex-grow-1"},oJ={class:"icon"},iJ={class:"is-clipped"},aJ={class:"is-size-7 fd-is-text-clipped"},lJ=["textContent"],uJ=l("br",null,null,-1),cJ=["textContent"],dJ=["textContent"],mJ={class:"icon"},fJ={class:"icon"},pJ={class:"navbar-dropdown is-right is-boxed",style:{"margin-right":"6px","margin-bottom":"6px","border-radius":"6px"}},hJ={class:"navbar-item"},_J={class:"level is-mobile"},gJ={class:"level-left is-flex-grow-1"},yJ={class:"level-item is-flex-grow-0"},vJ={class:"icon"},bJ={class:"level-item"},CJ=["textContent"],wJ=l("hr",{class:"fd-navbar-divider"},null,-1),zJ=l("hr",{class:"fd-navbar-divider"},null,-1),kJ={class:"navbar-item"},xJ={class:"level is-mobile"},EJ={class:"level-left is-flex-grow-1"},$J={class:"level-item is-flex-grow-0"},SJ={class:"level-item"},AJ={class:"is-flex-grow-1"},TJ=["textContent"],OJ={href:"stream.mp3",class:"ml-2",target:"_blank"},DJ={class:"icon"},PJ=["disabled"],IJ=l("hr",{class:"fd-navbar-divider"},null,-1),FJ={class:"navbar-item is-justify-content-center"},RJ={class:"level"},LJ={class:"level-item"},MJ={class:"buttons has-addons"},NJ=l("div",{class:"navbar-start"},null,-1),VJ={class:"navbar-end"},BJ={class:"navbar-item"},HJ={class:"buttons is-centered"},UJ=l("hr",{class:"fd-navbar-divider"},null,-1),jJ={class:"navbar-item"},qJ={class:"level is-mobile"},WJ={class:"level-left is-flex-grow-1"},GJ={class:"level-item is-flex-grow-0"},KJ={class:"icon"},ZJ={class:"level-item"},YJ={class:"is-flex-grow-1"},JJ=["textContent"],XJ=l("hr",{class:"fd-navbar-divider"},null,-1),QJ={class:"navbar-item mb-5"},eX={class:"level is-mobile"},tX={class:"level-left is-flex-grow-1"},nX={class:"level-item is-flex-grow-0"},sX={class:"level-item"},rX={class:"is-flex-grow-1"},oX=["textContent"],iX={href:"stream.mp3",class:"ml-2",target:"_blank"},aX={class:"icon"},lX=["disabled"];function uX(e,t,n,s,r,o){const i=$("mdicon"),a=$("navbar-item-link"),u=$("router-link"),c=$("player-button-previous"),d=$("player-button-seek-back"),f=$("player-button-play-pause"),m=$("player-button-seek-forward"),p=$("player-button-next"),h=$("navbar-item-output"),_=$("player-button-repeat"),w=$("player-button-shuffle"),b=$("player-button-consume");return z(),S("nav",{class:Ae(["fd-bottom-navbar navbar is-white is-fixed-bottom",{"is-transparent":o.is_now_playing_page,"is-dark":!o.is_now_playing_page}]),style:ln(o.zindex),role:"navigation","aria-label":"player controls"},[l("div",rJ,[v(a,{to:"/",exact:""},{default:E(()=>[l("span",oJ,[v(i,{name:"playlist-play",size:"24"})])]),_:1}),o.is_now_playing_page?H("",!0):(z(),be(u,{key:0,to:"/now-playing",class:"navbar-item is-expanded is-clipped","active-class":"is-active",exact:""},{default:E(()=>[l("div",iJ,[l("p",aJ,[l("strong",{textContent:g(o.now_playing.title)},null,8,lJ),uJ,l("span",{textContent:g(o.now_playing.artist)},null,8,cJ),o.now_playing.data_kind==="url"?(z(),S("span",{key:0,textContent:g(e.$t("navigation.now-playing",{album:o.now_playing.album}))},null,8,dJ)):H("",!0)])])]),_:1})),o.is_now_playing_page?(z(),be(c,{key:1,class:"navbar-item ml-auto",icon_size:24})):H("",!0),o.is_now_playing_page?(z(),be(d,{key:2,seek_ms:1e4,class:"navbar-item",icon_size:24})):H("",!0),v(f,{class:"navbar-item",icon_size:36,show_disabled_message:""}),o.is_now_playing_page?(z(),be(m,{key:3,seek_ms:3e4,class:"navbar-item",icon_size:24})):H("",!0),o.is_now_playing_page?(z(),be(p,{key:4,class:"navbar-item",icon_size:24})):H("",!0),l("a",{class:"navbar-item ml-auto is-hidden-desktop",onClick:t[0]||(t[0]=y=>o.show_player_menu=!o.show_player_menu)},[l("span",mJ,[v(i,{name:o.show_player_menu?"chevron-down":"chevron-up",size:"18"},null,8,["name"])])]),l("div",{class:Ae(["navbar-item has-dropdown has-dropdown-up ml-auto is-hidden-touch",{"is-active":o.show_player_menu}])},[l("a",{class:"navbar-link is-arrowless",onClick:t[1]||(t[1]=y=>o.show_player_menu=!o.show_player_menu)},[l("span",fJ,[v(i,{name:o.show_player_menu?"chevron-down":"chevron-up",size:"18"},null,8,["name"])])]),l("div",pJ,[l("div",hJ,[l("div",_J,[l("div",gJ,[l("div",yJ,[l("a",{class:"button is-white is-small",onClick:t[2]||(t[2]=(...y)=>o.toggle_mute_volume&&o.toggle_mute_volume(...y))},[l("span",vJ,[v(i,{name:o.player.volume>0?"volume-high":"volume-off",size:"18"},null,8,["name"])])])]),l("div",bJ,[l("div",null,[l("p",{class:"heading",textContent:g(e.$t("navigation.volume"))},null,8,CJ),dt(l("input",{"onUpdate:modelValue":t[3]||(t[3]=y=>o.player.volume=y),class:"slider",max:"100",type:"range",style:ln({"--ratio":o.player.volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[4]||(t[4]=(...y)=>o.change_volume&&o.change_volume(...y))},null,36),[[It,o.player.volume]])])])])])]),wJ,(z(!0),S(Oe,null,ht(o.outputs,y=>(z(),be(h,{key:y.id,output:y},null,8,["output"]))),128)),zJ,l("div",kJ,[l("div",xJ,[l("div",EJ,[l("div",$J,[l("a",{class:Ae(["button is-white is-small",{"is-loading":r.loading}])},[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!r.playing&&!r.loading,"is-loading":r.loading}]),onClick:t[5]||(t[5]=(...y)=>o.togglePlay&&o.togglePlay(...y))},[v(i,{name:"broadcast",size:"18"})],2)],2)]),l("div",SJ,[l("div",AJ,[l("p",{class:Ae(["heading",{"has-text-grey-light":!r.playing}])},[l("span",{textContent:g(e.$t("navigation.stream"))},null,8,TJ),l("a",OJ,[l("span",DJ,[v(i,{name:"open-in-new",size:"16",style:{"vertical-align":"middle"}})])])],2),dt(l("input",{"onUpdate:modelValue":t[6]||(t[6]=y=>r.stream_volume=y),disabled:!r.playing,class:Ae(["slider",{"is-inactive":!r.playing}]),max:"100",type:"range",style:ln({"--ratio":r.stream_volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[7]||(t[7]=(...y)=>o.change_stream_volume&&o.change_stream_volume(...y))},null,46,PJ),[[It,r.stream_volume]])])])])])]),IJ,l("div",FJ,[l("div",RJ,[l("div",LJ,[l("div",MJ,[v(_,{class:"button"}),v(w,{class:"button"}),v(b,{class:"button"})])])])])])],2)]),l("div",{class:Ae(["navbar-menu is-hidden-desktop",{"is-active":o.show_player_menu}])},[NJ,l("div",VJ,[l("div",BJ,[l("div",HJ,[v(_,{class:"button",icon_size:18}),v(w,{class:"button",icon_size:18}),v(b,{class:"button",icon_size:18})])]),UJ,l("div",jJ,[l("div",qJ,[l("div",WJ,[l("div",GJ,[l("a",{class:"button is-white is-small",onClick:t[8]||(t[8]=(...y)=>o.toggle_mute_volume&&o.toggle_mute_volume(...y))},[l("span",KJ,[v(i,{name:o.player.volume>0?"volume-high":"volume-off",size:"18"},null,8,["name"])])])]),l("div",ZJ,[l("div",YJ,[l("p",{class:"heading",textContent:g(e.$t("navigation.volume"))},null,8,JJ),dt(l("input",{"onUpdate:modelValue":t[9]||(t[9]=y=>o.player.volume=y),class:"slider",max:"100",type:"range",style:ln({"--ratio":o.player.volume,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[10]||(t[10]=(...y)=>o.change_volume&&o.change_volume(...y))},null,36),[[It,o.player.volume]])])])])])]),(z(!0),S(Oe,null,ht(o.outputs,y=>(z(),be(h,{key:y.id,output:y},null,8,["output"]))),128)),XJ,l("div",QJ,[l("div",eX,[l("div",tX,[l("div",nX,[l("a",{class:Ae(["button is-white is-small",{"is-loading":r.loading}])},[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!r.playing&&!r.loading,"is-loading":r.loading}]),onClick:t[11]||(t[11]=(...y)=>o.togglePlay&&o.togglePlay(...y))},[v(i,{name:"radio-tower",size:"16"})],2)],2)]),l("div",sX,[l("div",rX,[l("p",{class:Ae(["heading",{"has-text-grey-light":!r.playing}])},[l("span",{textContent:g(e.$t("navigation.stream"))},null,8,oX),l("a",iX,[l("span",aX,[v(i,{name:"open-in-new",size:"16",style:{"vertical-align":"middle"}})])])],2),dt(l("input",{"onUpdate:modelValue":t[12]||(t[12]=y=>r.stream_volume=y),disabled:!r.playing,class:Ae(["slider",{"is-inactive":!r.playing}]),max:"100",type:"range",style:ln({"--ratio":r.stream_volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[13]||(t[13]=(...y)=>o.change_stream_volume&&o.change_stream_volume(...y))},null,46,lX),[[It,r.stream_volume]])])])])])])])],2)],6)}var cX=re(sJ,[["render",uX]]);const dX={name:"NotificationList",components:{},data(){return{showNav:!1}},computed:{notifications(){return this.$store.state.notifications.list}},methods:{remove(e){this.$store.commit(yc,e)}}},mX={key:0,class:"fd-notifications"},fX={class:"columns is-centered"},pX={class:"column is-half"},hX=["onClick"],_X=["textContent"];function gX(e,t,n,s,r,o){return o.notifications.length>0?(z(),S("section",mX,[l("div",fX,[l("div",pX,[(z(!0),S(Oe,null,ht(o.notifications,i=>(z(),S("div",{key:i.id,class:Ae(["notification has-shadow",["notification",i.type?`is-${i.type}`:""]])},[l("button",{class:"delete",onClick:a=>o.remove(i)},null,8,hX),l("span",{textContent:g(i.text)},null,8,_X)],2))),128))])])])):H("",!0)}var yX=re(dX,[["render",gX]]);const vX={name:"ModalDialogRemotePairing",props:["show"],emits:["close"],data(){return{pairing_req:{pin:""}}},computed:{pairing(){return this.$store.state.pairing}},watch:{show(){this.show&&(this.loading=!1,setTimeout(()=>{this.$refs.pin_field.focus()},10))}},methods:{kickoff_pairing(){N.pairing_kickoff(this.pairing_req).then(()=>{this.pairing_req.pin=""})}}},bX={key:0,class:"modal is-active"},CX={class:"modal-content fd-modal-card"},wX={class:"card"},zX={class:"card-content"},kX=["textContent"],xX=["textContent"],EX={class:"field"},$X={class:"control"},SX={class:"card-footer"},AX={class:"icon"},TX=["textContent"],OX={class:"icon"},DX=["textContent"];function PX(e,t,n,s,r,o){const i=$("mdicon");return z(),S("div",null,[v(Ft,{name:"fade"},{default:E(()=>[n.show?(z(),S("div",bX,[l("div",{class:"modal-background",onClick:t[0]||(t[0]=a=>e.$emit("close"))}),l("div",CX,[l("div",wX,[l("div",zX,[l("p",{class:"title is-4",textContent:g(e.$t("dialog.remote-pairing.title"))},null,8,kX),l("form",{onSubmit:t[2]||(t[2]=it((...a)=>o.kickoff_pairing&&o.kickoff_pairing(...a),["prevent"]))},[l("label",{class:"label",textContent:g(o.pairing.remote)},null,8,xX),l("div",EX,[l("div",$X,[dt(l("input",{ref:"pin_field","onUpdate:modelValue":t[1]||(t[1]=a=>r.pairing_req.pin=a),class:"input",type:"text",placeholder:"Enter pairing code"},null,512),[[It,r.pairing_req.pin]])])])],32)]),l("footer",SX,[l("a",{class:"card-footer-item has-text-danger",onClick:t[3]||(t[3]=a=>e.$emit("close"))},[l("span",AX,[v(i,{name:"cancel",size:"16"})]),l("span",{class:"is-size-7",textContent:g(e.$t("dialog.remote-pairing.cancel"))},null,8,TX)]),l("a",{class:"card-footer-item has-background-info has-text-white has-text-weight-bold",onClick:t[4]||(t[4]=(...a)=>o.kickoff_pairing&&o.kickoff_pairing(...a))},[l("span",OX,[v(i,{name:"cellphone",size:"16"})]),l("span",{class:"is-size-7",textContent:g(e.$t("dialog.remote-pairing.pair"))},null,8,DX)])])])]),l("button",{class:"modal-close is-large","aria-label":"close",onClick:t[5]||(t[5]=a=>e.$emit("close"))})])):H("",!0)]),_:1})])}var IX=re(vX,[["render",PX]]);const FX={name:"ModalDialogUpdate",components:{ModalDialog:Xd},props:["show"],emits:["close"],data(){return{rescan_metadata:!1}},computed:{library(){return this.$store.state.library},rss(){return this.$store.state.rss_count},spotify_enabled(){return this.$store.state.spotify.webapi_token_valid},update_dialog_scan_kind:{get(){return this.$store.state.update_dialog_scan_kind},set(e){this.$store.commit(Ld,e)}}},methods:{update_library(){this.rescan_metadata?N.library_rescan(this.update_dialog_scan_kind):N.library_update(this.update_dialog_scan_kind)},close(){this.update_dialog_scan_kind="",this.$emit("close")}}},RX={key:0},LX=["textContent"],MX={key:0,class:"field"},NX={class:"control"},VX={class:"select is-small"},BX=["textContent"],HX=["textContent"],UX=["textContent"],jX=["textContent"],qX={class:"field"},WX={class:"checkbox is-size-7 is-small"},GX=["textContent"],KX={key:1},ZX=["textContent"];function YX(e,t,n,s,r,o){const i=$("modal-dialog");return z(),be(i,{show:n.show,title:e.$t("dialog.update.title"),ok_action:o.library.updating?"":e.$t("dialog.update.rescan"),close_action:e.$t("dialog.update.cancel"),onOk:o.update_library,onClose:t[2]||(t[2]=a=>o.close())},{"modal-content":E(()=>[o.library.updating?(z(),S("div",KX,[l("p",{class:"mb-3",textContent:g(e.$t("dialog.update.progress"))},null,8,ZX)])):(z(),S("div",RX,[l("p",{class:"mb-3",textContent:g(e.$t("dialog.update.info"))},null,8,LX),o.spotify_enabled||o.rss.tracks>0?(z(),S("div",MX,[l("div",NX,[l("div",VX,[dt(l("select",{"onUpdate:modelValue":t[0]||(t[0]=a=>o.update_dialog_scan_kind=a)},[l("option",{value:"",textContent:g(e.$t("dialog.update.all"))},null,8,BX),l("option",{value:"files",textContent:g(e.$t("dialog.update.local"))},null,8,HX),o.spotify_enabled?(z(),S("option",{key:0,value:"spotify",textContent:g(e.$t("dialog.update.spotify"))},null,8,UX)):H("",!0),o.rss.tracks>0?(z(),S("option",{key:1,value:"rss",textContent:g(e.$t("dialog.update.feeds"))},null,8,jX)):H("",!0)],512),[[Cd,o.update_dialog_scan_kind]])])])])):H("",!0),l("div",qX,[l("label",WX,[dt(l("input",{"onUpdate:modelValue":t[1]||(t[1]=a=>r.rescan_metadata=a),type:"checkbox",style:{"margin-right":"5px"}},null,512),[[gs,r.rescan_metadata]]),l("span",{textContent:g(e.$t("dialog.update.rescan-metadata"))},null,8,GX)])])]))]),_:1},8,["show","title","ok_action","close_action","onOk"])}var JX=re(FX,[["render",YX]]),x1={exports:{}};(function(e){(function(t,n){e.exports?e.exports=n():t.ReconnectingWebSocket=n()})(Qt,function(){if(!("WebSocket"in window))return;function t(n,s,r){var o={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3,maxReconnectAttempts:null};r||(r={});for(var i in o)typeof r[i]!="undefined"?this[i]=r[i]:this[i]=o[i];this.url=n,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var a=this,u,c=!1,d=!1,f=document.createElement("div");f.addEventListener("open",function(p){a.onopen(p)}),f.addEventListener("close",function(p){a.onclose(p)}),f.addEventListener("connecting",function(p){a.onconnecting(p)}),f.addEventListener("message",function(p){a.onmessage(p)}),f.addEventListener("error",function(p){a.onerror(p)}),this.addEventListener=f.addEventListener.bind(f),this.removeEventListener=f.removeEventListener.bind(f),this.dispatchEvent=f.dispatchEvent.bind(f);function m(p,h){var _=document.createEvent("CustomEvent");return _.initCustomEvent(p,!1,!1,h),_}this.open=function(p){if(u=new WebSocket(a.url,s||[]),p){if(this.maxReconnectAttempts&&this.reconnectAttempts>this.maxReconnectAttempts)return}else f.dispatchEvent(m("connecting")),this.reconnectAttempts=0;(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",a.url);var h=u,_=setTimeout(function(){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),d=!0,h.close(),d=!1},a.timeoutInterval);u.onopen=function(w){clearTimeout(_),(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onopen",a.url),a.protocol=u.protocol,a.readyState=WebSocket.OPEN,a.reconnectAttempts=0;var b=m("open");b.isReconnect=p,p=!1,f.dispatchEvent(b)},u.onclose=function(w){if(clearTimeout(y),u=null,c)a.readyState=WebSocket.CLOSED,f.dispatchEvent(m("close"));else{a.readyState=WebSocket.CONNECTING;var b=m("connecting");b.code=w.code,b.reason=w.reason,b.wasClean=w.wasClean,f.dispatchEvent(b),!p&&!d&&((a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),f.dispatchEvent(m("close")));var y=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},y>a.maxReconnectInterval?a.maxReconnectInterval:y)}},u.onmessage=function(w){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",a.url,w.data);var b=m("message");b.data=w.data,f.dispatchEvent(b)},u.onerror=function(w){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onerror",a.url,w),f.dispatchEvent(m("error"))}},this.automaticOpen==!0&&this.open(!1),this.send=function(p){if(u)return(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,p),u.send(p);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(p,h){typeof p=="undefined"&&(p=1e3),c=!0,u&&u.close(p,h)},this.refresh=function(){u&&u.close()}}return t.prototype.onopen=function(n){},t.prototype.onclose=function(n){},t.prototype.onconnecting=function(n){},t.prototype.onmessage=function(n){},t.prototype.onerror=function(n){},t.debugAll=!1,t.CONNECTING=WebSocket.CONNECTING,t.OPEN=WebSocket.OPEN,t.CLOSING=WebSocket.CLOSING,t.CLOSED=WebSocket.CLOSED,t})})(x1);var XX=x1.exports;const QX={name:"App",components:{NavbarTop:aY,NavbarBottom:cX,NotificationList:yX,ModalDialogRemotePairing:IX,ModalDialogUpdate:JX},data(){return{token_timer_id:0,reconnect_attempts:0,pairing_active:!1}},computed:{show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}},show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_update_dialog:{get(){return this.$store.state.show_update_dialog},set(e){this.$store.commit(wi,e)}}},watch:{show_burger_menu(){this.update_is_clipped()},show_player_menu(){this.update_is_clipped()}},created(){this.connect(),this.$Progress.start(),this.$router.beforeEach((e,t,n)=>{if(e.meta.show_progress){if(e.meta.progress!==void 0){const s=e.meta.progress;this.$Progress.parseMeta(s)}this.$Progress.start()}n()}),this.$router.afterEach((e,t)=>{e.meta.show_progress&&this.$Progress.finish()})},methods:{connect(){N.config().then(({data:e})=>{this.$store.commit(pg,e),this.$store.commit(Ml,e.hide_singles),document.title=e.library_name,this.open_ws(),this.$Progress.finish()}).catch(()=>{this.$store.dispatch("add_notification",{text:this.$t("server.connection-failed"),type:"danger",topic:"connection"})})},open_ws(){if(this.$store.state.config.websocket_port<=0){this.$store.dispatch("add_notification",{text:this.$t("server.missing-port"),type:"danger"});return}const e=this;let t="ws://";window.location.protocol==="https:"&&(t="wss://");let n=t+window.location.hostname+":"+e.$store.state.config.websocket_port;const s=new XX(n,"notify",{reconnectInterval:1e3,maxReconnectInterval:2e3});s.onopen=function(){e.reconnect_attempts=0,s.send(JSON.stringify({notify:["update","database","player","options","outputs","volume","queue","spotify","lastfm","pairing"]})),e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing()},s.onclose=function(){};var r=!1;function o(){r||(e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing(),r=!0,setTimeout(()=>{r=!1},500))}window.addEventListener("focus",o),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&o()}),s.onmessage=function(i){const a=JSON.parse(i.data);(a.notify.includes("update")||a.notify.includes("database"))&&e.update_library_stats(),(a.notify.includes("player")||a.notify.includes("options")||a.notify.includes("volume"))&&e.update_player_status(),(a.notify.includes("outputs")||a.notify.includes("volume"))&&e.update_outputs(),a.notify.includes("queue")&&e.update_queue(),a.notify.includes("spotify")&&e.update_spotify(),a.notify.includes("lastfm")&&e.update_lastfm(),a.notify.includes("pairing")&&e.update_pairing()}},update_library_stats(){N.library_stats().then(({data:e})=>{this.$store.commit(_g,e)}),N.library_count("media_kind is audiobook").then(({data:e})=>{this.$store.commit(gg,e)}),N.library_count("media_kind is podcast").then(({data:e})=>{this.$store.commit(yg,e)}),N.library_count("scan_kind is rss").then(({data:e})=>{this.$store.commit(vg,e)})},update_outputs(){N.outputs().then(({data:e})=>{this.$store.commit(bg,e.outputs)})},update_player_status(){N.player_status().then(({data:e})=>{this.$store.commit(Dd,e)})},update_queue(){N.queue().then(({data:e})=>{this.$store.commit(Cg,e)})},update_settings(){N.settings().then(({data:e})=>{this.$store.commit(hg,e)})},update_lastfm(){N.lastfm().then(({data:e})=>{this.$store.commit(wg,e)})},update_spotify(){N.spotify().then(({data:e})=>{this.$store.commit(zg,e),this.token_timer_id>0&&(window.clearTimeout(this.token_timer_id),this.token_timer_id=0),e.webapi_token_expires_in>0&&e.webapi_token&&(this.token_timer_id=window.setTimeout(this.update_spotify,1e3*e.webapi_token_expires_in))})},update_pairing(){N.pairing().then(({data:e})=>{this.$store.commit(kg,e),this.pairing_active=e.active})},update_is_clipped(){this.show_burger_menu||this.show_player_menu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")}},template:""},eQ={id:"app"};function tQ(e,t,n,s,r,o){const i=$("navbar-top"),a=$("vue-progress-bar"),u=$("router-view"),c=$("modal-dialog-remote-pairing"),d=$("modal-dialog-update"),f=$("notification-list"),m=$("navbar-bottom");return z(),S("div",eQ,[v(i),v(a,{class:"fd-progress-bar"}),v(u,null,{default:E(({Component:p})=>[(z(),be(Kh(p)))]),_:1}),v(c,{show:r.pairing_active,onClose:t[0]||(t[0]=p=>r.pairing_active=!1)},null,8,["show"]),v(d,{show:o.show_update_dialog,onClose:t[1]||(t[1]=p=>o.show_update_dialog=!1)},null,8,["show"]),dt(v(f,null,null,512),[[ui,!o.show_burger_menu]]),v(m),dt(l("div",{class:"fd-overlay-fullscreen",onClick:t[2]||(t[2]=p=>o.show_burger_menu=o.show_player_menu=!1)},null,512),[[ui,o.show_burger_menu||o.show_player_menu]])])}var nQ=re(QX,[["render",tQ]]);const E1=R_(nQ).use(Ke).use(yv).use(WW,{color:"hsl(204, 86%, 53%)",failedColor:"red",height:"1px"}).use(KW).use(iG,{log:!1}).use(aG).use(hG,{icons:_Z}).use(Fl);E1.config.globalProperties.$filters=hZ;E1.mount("#app"); + */(function(e,t){(function(n,s){e.exports=s()})(Qt,function(){function n(ce){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?n=function(W){return typeof W}:n=function(W){return W&&typeof Symbol=="function"&&W.constructor===Symbol&&W!==Symbol.prototype?"symbol":typeof W},n(ce)}function s(){return s=Object.assign||function(ce){for(var W=1;W0?fe=V:W=V;while(Math.abs(Ee)>i&&++le=o?b(ne,P,W,De):K===0?P:w(ne,pe,pe+c,W,De)}return function(pe){return pe===0?0:pe===1?1:h(le(pe),fe,Me)}},C={ease:[.25,.1,.25,1],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},x=!1;try{var T=Object.defineProperty({},"passive",{get:function(){x=!0}});window.addEventListener("test",null,T)}catch{}var L={$:function(W){return typeof W!="string"?W:document.querySelector(W)},on:function(W,fe,De){var Me=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{passive:!1};fe instanceof Array||(fe=[fe]);for(var Ee=0;Ee2&&arguments[2]!==void 0?arguments[2]:{};if(n(xe)==="object"?ue=xe:typeof xe=="number"&&(ue.duration=xe),W=L.$(Ge),!W)return console.warn("[vue-scrollto warn]: Trying to scroll to an element that is not on the page: "+Ge);if(fe=L.$(ue.container||D.container),De=ue.hasOwnProperty("duration")?ue.duration:D.duration,Ee=ue.hasOwnProperty("lazy")?ue.lazy:D.lazy,Me=ue.easing||D.easing,V=ue.hasOwnProperty("offset")?ue.offset:D.offset,le=ue.hasOwnProperty("force")?ue.force!==!1:D.force,ne=ue.hasOwnProperty("cancelable")?ue.cancelable!==!1:D.cancelable,pe=ue.onStart||D.onStart,Pe=ue.onDone||D.onDone,A=ue.onCancel||D.onCancel,O=ue.x===void 0?D.x:ue.x,P=ue.y===void 0?D.y:ue.y,typeof V=="function"&&(V=V(W,fe)),K=G(fe),ee=M(fe),se(),Y=!1,!le){var Fe=fe.tagName.toLowerCase()==="body"?document.documentElement.clientHeight||window.innerHeight:fe.offsetHeight,Ze=ee,Qe=Ze+Fe,Bt=de-V,mo=Bt+W.offsetHeight;if(Bt>=Ze&&mo<=Qe){Pe&&Pe(W);return}}if(pe&&pe(W),!oe&&!ae){Pe&&Pe(W);return}return typeof Me=="string"&&(Me=C[Me]||C.ease),Re=k.apply(k,Me),L.on(fe,I,we,{passive:!0}),window.requestAnimationFrame(ve),function(){ge=null,Y=!0}}return He},X=Z(),U=[];function q(ce){for(var W=0;We.charAt(0).toUpperCase()+e.slice(1),cG=e=>e.split("-").map(uG).join(""),dG=(e,t,n)=>{const s=e[`mdi${cG(t.name)}`]||A8,r={role:t.role,"aria-label":t.ariaLabel,...n},o={fill:"currentColor",width:t.width||t.size,height:t.height||t.size,viewBox:t.viewBox,xmlns:t.xmlns};return{spanAttrs:r,svgAttrs:o,pathAttrs:{d:s}}},mG=(e,t)=>({[t.staticClass||""]:!0,[t.class||""]:!0,[`mdi mdi-${e.name}`]:!0,"mdi-spin":e.spin===!0}),fG=(e,t={})=>({install(n,{icons:s}){if(s===void 0)throw new Error("Icons must be provided separately");n.component("mdicon",{name:"MDIcon",props:lG,...t,render:e(s)})}}),pG=e=>function(){const{spanAttrs:n,svgAttrs:s,pathAttrs:r}=dG(e,this,this.$attrs);return Qn("span",{...n,class:mG(this,this)},[Qn("svg",s,[this.title?Qn("title",[this.title]):void 0,Qn("path",r)])])};var hG=fG(pG);class yr extends Error{}class _G extends yr{constructor(t){super(`Invalid DateTime: ${t.toMessage()}`)}}class gG extends yr{constructor(t){super(`Invalid Interval: ${t.toMessage()}`)}}class yG extends yr{constructor(t){super(`Invalid Duration: ${t.toMessage()}`)}}class Io extends yr{}class xv extends yr{constructor(t){super(`Invalid unit ${t}`)}}class En extends yr{}class $s extends yr{constructor(){super("Zone is an abstract class")}}const _e="numeric",jn="short",bn="long",dl={year:_e,month:_e,day:_e},Ev={year:_e,month:jn,day:_e},vG={year:_e,month:jn,day:_e,weekday:jn},$v={year:_e,month:bn,day:_e},Sv={year:_e,month:bn,day:_e,weekday:bn},Av={hour:_e,minute:_e},Tv={hour:_e,minute:_e,second:_e},Ov={hour:_e,minute:_e,second:_e,timeZoneName:jn},Dv={hour:_e,minute:_e,second:_e,timeZoneName:bn},Pv={hour:_e,minute:_e,hourCycle:"h23"},Iv={hour:_e,minute:_e,second:_e,hourCycle:"h23"},Fv={hour:_e,minute:_e,second:_e,hourCycle:"h23",timeZoneName:jn},Rv={hour:_e,minute:_e,second:_e,hourCycle:"h23",timeZoneName:bn},Lv={year:_e,month:_e,day:_e,hour:_e,minute:_e},Mv={year:_e,month:_e,day:_e,hour:_e,minute:_e,second:_e},Nv={year:_e,month:jn,day:_e,hour:_e,minute:_e},Vv={year:_e,month:jn,day:_e,hour:_e,minute:_e,second:_e},bG={year:_e,month:jn,day:_e,weekday:jn,hour:_e,minute:_e},Bv={year:_e,month:bn,day:_e,hour:_e,minute:_e,timeZoneName:jn},Hv={year:_e,month:bn,day:_e,hour:_e,minute:_e,second:_e,timeZoneName:jn},Uv={year:_e,month:bn,day:_e,weekday:bn,hour:_e,minute:_e,timeZoneName:bn},jv={year:_e,month:bn,day:_e,weekday:bn,hour:_e,minute:_e,second:_e,timeZoneName:bn};class Si{get type(){throw new $s}get name(){throw new $s}get ianaName(){return this.name}get isUniversal(){throw new $s}offsetName(t,n){throw new $s}formatOffset(t,n){throw new $s}offset(t){throw new $s}equals(t){throw new $s}get isValid(){throw new $s}}let Iu=null;class Ql extends Si{static get instance(){return Iu===null&&(Iu=new Ql),Iu}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(t,{format:n,locale:s}){return Wv(t,n,s)}formatOffset(t,n){return Qo(this.offset(t),n)}offset(t){return-new Date(t).getTimezoneOffset()}equals(t){return t.type==="system"}get isValid(){return!0}}let ja={};function CG(e){return ja[e]||(ja[e]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),ja[e]}const wG={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function zG(e,t){const n=e.format(t).replace(/\u200E/g,""),s=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,r,o,i,a,u,c,d]=s;return[i,r,o,a,u,c,d]}function kG(e,t){const n=e.formatToParts(t),s=[];for(let r=0;r=0?h:1e3+h,(m-p)/(60*1e3)}equals(t){return t.type==="iana"&&t.name===this.name}get isValid(){return this.valid}}let Pp={};function xG(e,t={}){const n=JSON.stringify([e,t]);let s=Pp[n];return s||(s=new Intl.ListFormat(e,t),Pp[n]=s),s}let Vc={};function Bc(e,t={}){const n=JSON.stringify([e,t]);let s=Vc[n];return s||(s=new Intl.DateTimeFormat(e,t),Vc[n]=s),s}let Hc={};function EG(e,t={}){const n=JSON.stringify([e,t]);let s=Hc[n];return s||(s=new Intl.NumberFormat(e,t),Hc[n]=s),s}let Uc={};function $G(e,t={}){const{base:n,...s}=t,r=JSON.stringify([e,s]);let o=Uc[r];return o||(o=new Intl.RelativeTimeFormat(e,t),Uc[r]=o),o}let Fo=null;function SG(){return Fo||(Fo=new Intl.DateTimeFormat().resolvedOptions().locale,Fo)}function AG(e){const t=e.indexOf("-x-");t!==-1&&(e=e.substring(0,t));const n=e.indexOf("-u-");if(n===-1)return[e];{let s,r;try{s=Bc(e).resolvedOptions(),r=e}catch{const u=e.substring(0,n);s=Bc(u).resolvedOptions(),r=u}const{numberingSystem:o,calendar:i}=s;return[r,o,i]}}function TG(e,t,n){return(n||t)&&(e.includes("-u-")||(e+="-u"),n&&(e+=`-ca-${n}`),t&&(e+=`-nu-${t}`)),e}function OG(e){const t=[];for(let n=1;n<=12;n++){const s=Ve.utc(2016,n,1);t.push(e(s))}return t}function DG(e){const t=[];for(let n=1;n<=7;n++){const s=Ve.utc(2016,11,13+n);t.push(e(s))}return t}function Sa(e,t,n,s,r){const o=e.listingMode(n);return o==="error"?null:o==="en"?s(t):r(t)}function PG(e){return e.numberingSystem&&e.numberingSystem!=="latn"?!1:e.numberingSystem==="latn"||!e.locale||e.locale.startsWith("en")||new Intl.DateTimeFormat(e.intl).resolvedOptions().numberingSystem==="latn"}class IG{constructor(t,n,s){this.padTo=s.padTo||0,this.floor=s.floor||!1;const{padTo:r,floor:o,...i}=s;if(!n||Object.keys(i).length>0){const a={useGrouping:!1,...s};s.padTo>0&&(a.minimumIntegerDigits=s.padTo),this.inf=EG(t,a)}}format(t){if(this.inf){const n=this.floor?Math.floor(t):t;return this.inf.format(n)}else{const n=this.floor?Math.floor(t):dm(t,3);return Ot(n,this.padTo)}}}class FG{constructor(t,n,s){this.opts=s,this.originalZone=void 0;let r;if(this.opts.timeZone)this.dt=t;else if(t.zone.type==="fixed"){const i=-1*(t.offset/60),a=i>=0?`Etc/GMT+${i}`:`Etc/GMT${i}`;t.offset!==0&&ys.create(a).valid?(r=a,this.dt=t):(r="UTC",this.dt=t.offset===0?t:t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone)}else t.zone.type==="system"?this.dt=t:t.zone.type==="iana"?(this.dt=t,r=t.zone.name):(r="UTC",this.dt=t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone);const o={...this.opts};o.timeZone=o.timeZone||r,this.dtf=Bc(n,o)}format(){return this.originalZone?this.formatToParts().map(({value:t})=>t).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const t=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?t.map(n=>{if(n.type==="timeZoneName"){const s=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...n,value:s}}else return n}):t}resolvedOptions(){return this.dtf.resolvedOptions()}}class RG{constructor(t,n,s){this.opts={style:"long",...s},!n&&qv()&&(this.rtf=$G(t,s))}format(t,n){return this.rtf?this.rtf.format(t,n):QG(n,t,this.opts.numeric,this.opts.style!=="long")}formatToParts(t,n){return this.rtf?this.rtf.formatToParts(t,n):[]}}class vt{static fromOpts(t){return vt.create(t.locale,t.numberingSystem,t.outputCalendar,t.defaultToEN)}static create(t,n,s,r=!1){const o=t||Tt.defaultLocale,i=o||(r?"en-US":SG()),a=n||Tt.defaultNumberingSystem,u=s||Tt.defaultOutputCalendar;return new vt(i,a,u,o)}static resetCache(){Fo=null,Vc={},Hc={},Uc={}}static fromObject({locale:t,numberingSystem:n,outputCalendar:s}={}){return vt.create(t,n,s)}constructor(t,n,s,r){const[o,i,a]=AG(t);this.locale=o,this.numberingSystem=n||i||null,this.outputCalendar=s||a||null,this.intl=TG(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=r,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=PG(this)),this.fastNumbersCached}listingMode(){const t=this.isEnglish(),n=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return t&&n?"en":"intl"}clone(t){return!t||Object.getOwnPropertyNames(t).length===0?this:vt.create(t.locale||this.specifiedLocale,t.numberingSystem||this.numberingSystem,t.outputCalendar||this.outputCalendar,t.defaultToEN||!1)}redefaultToEN(t={}){return this.clone({...t,defaultToEN:!0})}redefaultToSystem(t={}){return this.clone({...t,defaultToEN:!1})}months(t,n=!1,s=!0){return Sa(this,t,s,Zv,()=>{const r=n?{month:t,day:"numeric"}:{month:t},o=n?"format":"standalone";return this.monthsCache[o][t]||(this.monthsCache[o][t]=OG(i=>this.extract(i,r,"month"))),this.monthsCache[o][t]})}weekdays(t,n=!1,s=!0){return Sa(this,t,s,Xv,()=>{const r=n?{weekday:t,year:"numeric",month:"long",day:"numeric"}:{weekday:t},o=n?"format":"standalone";return this.weekdaysCache[o][t]||(this.weekdaysCache[o][t]=DG(i=>this.extract(i,r,"weekday"))),this.weekdaysCache[o][t]})}meridiems(t=!0){return Sa(this,void 0,t,()=>Qv,()=>{if(!this.meridiemCache){const n={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[Ve.utc(2016,11,13,9),Ve.utc(2016,11,13,19)].map(s=>this.extract(s,n,"dayperiod"))}return this.meridiemCache})}eras(t,n=!0){return Sa(this,t,n,e1,()=>{const s={era:t};return this.eraCache[t]||(this.eraCache[t]=[Ve.utc(-40,1,1),Ve.utc(2017,1,1)].map(r=>this.extract(r,s,"era"))),this.eraCache[t]})}extract(t,n,s){const r=this.dtFormatter(t,n),o=r.formatToParts(),i=o.find(a=>a.type.toLowerCase()===s);return i?i.value:null}numberFormatter(t={}){return new IG(this.intl,t.forceSimple||this.fastNumbers,t)}dtFormatter(t,n={}){return new FG(t,this.intl,n)}relFormatter(t={}){return new RG(this.intl,this.isEnglish(),t)}listFormatter(t={}){return xG(this.intl,t)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(t){return this.locale===t.locale&&this.numberingSystem===t.numberingSystem&&this.outputCalendar===t.outputCalendar}}let Fu=null;class en extends Si{static get utcInstance(){return Fu===null&&(Fu=new en(0)),Fu}static instance(t){return t===0?en.utcInstance:new en(t)}static parseSpecifier(t){if(t){const n=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(n)return new en(tu(n[1],n[2]))}return null}constructor(t){super(),this.fixed=t}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Qo(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Qo(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(t,n){return Qo(this.fixed,n)}get isUniversal(){return!0}offset(){return this.fixed}equals(t){return t.type==="fixed"&&t.fixed===this.fixed}get isValid(){return!0}}class LG extends Si{constructor(t){super(),this.zoneName=t}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function Fs(e,t){if(tt(e)||e===null)return t;if(e instanceof Si)return e;if(MG(e)){const n=e.toLowerCase();return n==="default"?t:n==="local"||n==="system"?Ql.instance:n==="utc"||n==="gmt"?en.utcInstance:en.parseSpecifier(n)||ys.create(e)}else return ur(e)?en.instance(e):typeof e=="object"&&e.offset&&typeof e.offset=="number"?e:new LG(e)}let Ip=()=>Date.now(),Fp="system",Rp=null,Lp=null,Mp=null,Np=60,Vp;class Tt{static get now(){return Ip}static set now(t){Ip=t}static set defaultZone(t){Fp=t}static get defaultZone(){return Fs(Fp,Ql.instance)}static get defaultLocale(){return Rp}static set defaultLocale(t){Rp=t}static get defaultNumberingSystem(){return Lp}static set defaultNumberingSystem(t){Lp=t}static get defaultOutputCalendar(){return Mp}static set defaultOutputCalendar(t){Mp=t}static get twoDigitCutoffYear(){return Np}static set twoDigitCutoffYear(t){Np=t%100}static get throwOnInvalid(){return Vp}static set throwOnInvalid(t){Vp=t}static resetCaches(){vt.resetCache(),ys.resetCache()}}function tt(e){return typeof e=="undefined"}function ur(e){return typeof e=="number"}function eu(e){return typeof e=="number"&&e%1===0}function MG(e){return typeof e=="string"}function NG(e){return Object.prototype.toString.call(e)==="[object Date]"}function qv(){try{return typeof Intl!="undefined"&&!!Intl.RelativeTimeFormat}catch{return!1}}function VG(e){return Array.isArray(e)?e:[e]}function Bp(e,t,n){if(e.length!==0)return e.reduce((s,r)=>{const o=[t(r),r];return s&&n(s[0],o[0])===s[0]?s:o},null)[1]}function BG(e,t){return t.reduce((n,s)=>(n[s]=e[s],n),{})}function Qr(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function ms(e,t,n){return eu(e)&&e>=t&&e<=n}function HG(e,t){return e-t*Math.floor(e/t)}function Ot(e,t=2){const n=e<0;let s;return n?s="-"+(""+-e).padStart(t,"0"):s=(""+e).padStart(t,"0"),s}function Ps(e){if(!(tt(e)||e===null||e===""))return parseInt(e,10)}function Xs(e){if(!(tt(e)||e===null||e===""))return parseFloat(e)}function cm(e){if(!(tt(e)||e===null||e==="")){const t=parseFloat("0."+e)*1e3;return Math.floor(t)}}function dm(e,t,n=!1){const s=10**t;return(n?Math.trunc:Math.round)(e*s)/s}function Ai(e){return e%4===0&&(e%100!==0||e%400===0)}function Xo(e){return Ai(e)?366:365}function ml(e,t){const n=HG(t-1,12)+1,s=e+(t-n)/12;return n===2?Ai(s)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function mm(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t),t.setUTCFullYear(e.year,e.month-1,e.day)),+t}function fl(e){const t=(e+Math.floor(e/4)-Math.floor(e/100)+Math.floor(e/400))%7,n=e-1,s=(n+Math.floor(n/4)-Math.floor(n/100)+Math.floor(n/400))%7;return t===4||s===3?53:52}function jc(e){return e>99?e:e>Tt.twoDigitCutoffYear?1900+e:2e3+e}function Wv(e,t,n,s=null){const r=new Date(e),o={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};s&&(o.timeZone=s);const i={timeZoneName:t,...o},a=new Intl.DateTimeFormat(n,i).formatToParts(r).find(u=>u.type.toLowerCase()==="timezonename");return a?a.value:null}function tu(e,t){let n=parseInt(e,10);Number.isNaN(n)&&(n=0);const s=parseInt(t,10)||0,r=n<0||Object.is(n,-0)?-s:s;return n*60+r}function Gv(e){const t=Number(e);if(typeof e=="boolean"||e===""||Number.isNaN(t))throw new En(`Invalid unit value ${e}`);return t}function pl(e,t){const n={};for(const s in e)if(Qr(e,s)){const r=e[s];if(r==null)continue;n[t(s)]=Gv(r)}return n}function Qo(e,t){const n=Math.trunc(Math.abs(e/60)),s=Math.trunc(Math.abs(e%60)),r=e>=0?"+":"-";switch(t){case"short":return`${r}${Ot(n,2)}:${Ot(s,2)}`;case"narrow":return`${r}${n}${s>0?`:${s}`:""}`;case"techie":return`${r}${Ot(n,2)}${Ot(s,2)}`;default:throw new RangeError(`Value format ${t} is out of range for property format`)}}function nu(e){return BG(e,["hour","minute","second","millisecond"])}const UG=["January","February","March","April","May","June","July","August","September","October","November","December"],Kv=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],jG=["J","F","M","A","M","J","J","A","S","O","N","D"];function Zv(e){switch(e){case"narrow":return[...jG];case"short":return[...Kv];case"long":return[...UG];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Yv=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Jv=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],qG=["M","T","W","T","F","S","S"];function Xv(e){switch(e){case"narrow":return[...qG];case"short":return[...Jv];case"long":return[...Yv];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Qv=["AM","PM"],WG=["Before Christ","Anno Domini"],GG=["BC","AD"],KG=["B","A"];function e1(e){switch(e){case"narrow":return[...KG];case"short":return[...GG];case"long":return[...WG];default:return null}}function ZG(e){return Qv[e.hour<12?0:1]}function YG(e,t){return Xv(t)[e.weekday-1]}function JG(e,t){return Zv(t)[e.month-1]}function XG(e,t){return e1(t)[e.year<0?0:1]}function QG(e,t,n="always",s=!1){const r={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},o=["hours","minutes","seconds"].indexOf(e)===-1;if(n==="auto"&&o){const f=e==="days";switch(t){case 1:return f?"tomorrow":`next ${r[e][0]}`;case-1:return f?"yesterday":`last ${r[e][0]}`;case 0:return f?"today":`this ${r[e][0]}`}}const i=Object.is(t,-0)||t<0,a=Math.abs(t),u=a===1,c=r[e],d=s?u?c[1]:c[2]||c[1]:u?r[e][0]:e;return i?`${a} ${d} ago`:`in ${a} ${d}`}function Hp(e,t){let n="";for(const s of e)s.literal?n+=s.val:n+=t(s.val);return n}const eK={D:dl,DD:Ev,DDD:$v,DDDD:Sv,t:Av,tt:Tv,ttt:Ov,tttt:Dv,T:Pv,TT:Iv,TTT:Fv,TTTT:Rv,f:Lv,ff:Nv,fff:Bv,ffff:Uv,F:Mv,FF:Vv,FFF:Hv,FFFF:jv};class Kt{static create(t,n={}){return new Kt(t,n)}static parseFormat(t){let n=null,s="",r=!1;const o=[];for(let i=0;i0&&o.push({literal:r||/^\s+$/.test(s),val:s}),n=null,s="",r=!r):r||a===n?s+=a:(s.length>0&&o.push({literal:/^\s+$/.test(s),val:s}),s=a,n=a)}return s.length>0&&o.push({literal:r||/^\s+$/.test(s),val:s}),o}static macroTokenToFormatOpts(t){return eK[t]}constructor(t,n){this.opts=n,this.loc=t,this.systemLoc=null}formatWithSystemDefault(t,n){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(t,{...this.opts,...n}).format()}formatDateTime(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).format()}formatDateTimeParts(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).formatToParts()}formatInterval(t,n={}){return this.loc.dtFormatter(t.start,{...this.opts,...n}).dtf.formatRange(t.start.toJSDate(),t.end.toJSDate())}resolvedOptions(t,n={}){return this.loc.dtFormatter(t,{...this.opts,...n}).resolvedOptions()}num(t,n=0){if(this.opts.forceSimple)return Ot(t,n);const s={...this.opts};return n>0&&(s.padTo=n),this.loc.numberFormatter(s).format(t)}formatDateTimeFromString(t,n){const s=this.loc.listingMode()==="en",r=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",o=(p,h)=>this.loc.extract(t,p,h),i=p=>t.isOffsetFixed&&t.offset===0&&p.allowZ?"Z":t.isValid?t.zone.formatOffset(t.ts,p.format):"",a=()=>s?ZG(t):o({hour:"numeric",hourCycle:"h12"},"dayperiod"),u=(p,h)=>s?JG(t,p):o(h?{month:p}:{month:p,day:"numeric"},"month"),c=(p,h)=>s?YG(t,p):o(h?{weekday:p}:{weekday:p,month:"long",day:"numeric"},"weekday"),d=p=>{const h=Kt.macroTokenToFormatOpts(p);return h?this.formatWithSystemDefault(t,h):p},f=p=>s?XG(t,p):o({era:p},"era"),m=p=>{switch(p){case"S":return this.num(t.millisecond);case"u":case"SSS":return this.num(t.millisecond,3);case"s":return this.num(t.second);case"ss":return this.num(t.second,2);case"uu":return this.num(Math.floor(t.millisecond/10),2);case"uuu":return this.num(Math.floor(t.millisecond/100));case"m":return this.num(t.minute);case"mm":return this.num(t.minute,2);case"h":return this.num(t.hour%12===0?12:t.hour%12);case"hh":return this.num(t.hour%12===0?12:t.hour%12,2);case"H":return this.num(t.hour);case"HH":return this.num(t.hour,2);case"Z":return i({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return i({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return i({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return t.zone.offsetName(t.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return t.zone.offsetName(t.ts,{format:"long",locale:this.loc.locale});case"z":return t.zoneName;case"a":return a();case"d":return r?o({day:"numeric"},"day"):this.num(t.day);case"dd":return r?o({day:"2-digit"},"day"):this.num(t.day,2);case"c":return this.num(t.weekday);case"ccc":return c("short",!0);case"cccc":return c("long",!0);case"ccccc":return c("narrow",!0);case"E":return this.num(t.weekday);case"EEE":return c("short",!1);case"EEEE":return c("long",!1);case"EEEEE":return c("narrow",!1);case"L":return r?o({month:"numeric",day:"numeric"},"month"):this.num(t.month);case"LL":return r?o({month:"2-digit",day:"numeric"},"month"):this.num(t.month,2);case"LLL":return u("short",!0);case"LLLL":return u("long",!0);case"LLLLL":return u("narrow",!0);case"M":return r?o({month:"numeric"},"month"):this.num(t.month);case"MM":return r?o({month:"2-digit"},"month"):this.num(t.month,2);case"MMM":return u("short",!1);case"MMMM":return u("long",!1);case"MMMMM":return u("narrow",!1);case"y":return r?o({year:"numeric"},"year"):this.num(t.year);case"yy":return r?o({year:"2-digit"},"year"):this.num(t.year.toString().slice(-2),2);case"yyyy":return r?o({year:"numeric"},"year"):this.num(t.year,4);case"yyyyyy":return r?o({year:"numeric"},"year"):this.num(t.year,6);case"G":return f("short");case"GG":return f("long");case"GGGGG":return f("narrow");case"kk":return this.num(t.weekYear.toString().slice(-2),2);case"kkkk":return this.num(t.weekYear,4);case"W":return this.num(t.weekNumber);case"WW":return this.num(t.weekNumber,2);case"o":return this.num(t.ordinal);case"ooo":return this.num(t.ordinal,3);case"q":return this.num(t.quarter);case"qq":return this.num(t.quarter,2);case"X":return this.num(Math.floor(t.ts/1e3));case"x":return this.num(t.ts);default:return d(p)}};return Hp(Kt.parseFormat(n),m)}formatDurationFromString(t,n){const s=u=>{switch(u[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},r=u=>c=>{const d=s(c);return d?this.num(u.get(d),c.length):c},o=Kt.parseFormat(n),i=o.reduce((u,{literal:c,val:d})=>c?u:u.concat(d),[]),a=t.shiftTo(...i.map(s).filter(u=>u));return Hp(o,r(a))}}class Vn{constructor(t,n){this.reason=t,this.explanation=n}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const t1=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ao(...e){const t=e.reduce((n,s)=>n+s.source,"");return RegExp(`^${t}$`)}function lo(...e){return t=>e.reduce(([n,s,r],o)=>{const[i,a,u]=o(t,r);return[{...n,...i},a||s,u]},[{},null,1]).slice(0,2)}function uo(e,...t){if(e==null)return[null,null];for(const[n,s]of t){const r=n.exec(e);if(r)return s(r)}return[null,null]}function n1(...e){return(t,n)=>{const s={};let r;for(r=0;rp!==void 0&&(h||p&&d)?-p:p;return[{years:m(Xs(n)),months:m(Xs(s)),weeks:m(Xs(r)),days:m(Xs(o)),hours:m(Xs(i)),minutes:m(Xs(a)),seconds:m(Xs(u),u==="-0"),milliseconds:m(cm(c),f)}]}const fK={GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function hm(e,t,n,s,r,o,i){const a={year:t.length===2?jc(Ps(t)):Ps(t),month:Kv.indexOf(n)+1,day:Ps(s),hour:Ps(r),minute:Ps(o)};return i&&(a.second=Ps(i)),e&&(a.weekday=e.length>3?Yv.indexOf(e)+1:Jv.indexOf(e)+1),a}const pK=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function hK(e){const[,t,n,s,r,o,i,a,u,c,d,f]=e,m=hm(t,r,s,n,o,i,a);let p;return u?p=fK[u]:c?p=0:p=tu(d,f),[m,new en(p)]}function _K(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const gK=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,yK=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,vK=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function Up(e){const[,t,n,s,r,o,i,a]=e;return[hm(t,r,s,n,o,i,a),en.utcInstance]}function bK(e){const[,t,n,s,r,o,i,a]=e;return[hm(t,a,n,s,r,o,i),en.utcInstance]}const CK=ao(nK,pm),wK=ao(sK,pm),zK=ao(rK,pm),kK=ao(r1),i1=lo(uK,co,Ti,Oi),xK=lo(oK,co,Ti,Oi),EK=lo(iK,co,Ti,Oi),$K=lo(co,Ti,Oi);function SK(e){return uo(e,[CK,i1],[wK,xK],[zK,EK],[kK,$K])}function AK(e){return uo(_K(e),[pK,hK])}function TK(e){return uo(e,[gK,Up],[yK,Up],[vK,bK])}function OK(e){return uo(e,[dK,mK])}const DK=lo(co);function PK(e){return uo(e,[cK,DK])}const IK=ao(aK,lK),FK=ao(o1),RK=lo(co,Ti,Oi);function LK(e){return uo(e,[IK,i1],[FK,RK])}const MK="Invalid Duration",a1={weeks:{days:7,hours:7*24,minutes:7*24*60,seconds:7*24*60*60,milliseconds:7*24*60*60*1e3},days:{hours:24,minutes:24*60,seconds:24*60*60,milliseconds:24*60*60*1e3},hours:{minutes:60,seconds:60*60,milliseconds:60*60*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},NK={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:91*24,minutes:91*24*60,seconds:91*24*60*60,milliseconds:91*24*60*60*1e3},months:{weeks:4,days:30,hours:30*24,minutes:30*24*60,seconds:30*24*60*60,milliseconds:30*24*60*60*1e3},...a1},xn=146097/400,Er=146097/4800,VK={years:{quarters:4,months:12,weeks:xn/7,days:xn,hours:xn*24,minutes:xn*24*60,seconds:xn*24*60*60,milliseconds:xn*24*60*60*1e3},quarters:{months:3,weeks:xn/28,days:xn/4,hours:xn*24/4,minutes:xn*24*60/4,seconds:xn*24*60*60/4,milliseconds:xn*24*60*60*1e3/4},months:{weeks:Er/7,days:Er,hours:Er*24,minutes:Er*24*60,seconds:Er*24*60*60,milliseconds:Er*24*60*60*1e3},...a1},er=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],BK=er.slice(0).reverse();function Ss(e,t,n=!1){const s={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new Je(s)}function HK(e){return e<0?Math.floor(e):Math.ceil(e)}function l1(e,t,n,s,r){const o=e[r][n],i=t[n]/o,a=Math.sign(i)===Math.sign(s[r]),u=!a&&s[r]!==0&&Math.abs(i)<=1?HK(i):Math.trunc(i);s[r]+=u,t[n]-=u*o}function UK(e,t){BK.reduce((n,s)=>tt(t[s])?n:(n&&l1(e,t,n,t,s),s),null)}function jK(e){const t={};for(const[n,s]of Object.entries(e))s!==0&&(t[n]=s);return t}class Je{constructor(t){const n=t.conversionAccuracy==="longterm"||!1;let s=n?VK:NK;t.matrix&&(s=t.matrix),this.values=t.values,this.loc=t.loc||vt.create(),this.conversionAccuracy=n?"longterm":"casual",this.invalid=t.invalid||null,this.matrix=s,this.isLuxonDuration=!0}static fromMillis(t,n){return Je.fromObject({milliseconds:t},n)}static fromObject(t,n={}){if(t==null||typeof t!="object")throw new En(`Duration.fromObject: argument expected to be an object, got ${t===null?"null":typeof t}`);return new Je({values:pl(t,Je.normalizeUnit),loc:vt.fromObject(n),conversionAccuracy:n.conversionAccuracy,matrix:n.matrix})}static fromDurationLike(t){if(ur(t))return Je.fromMillis(t);if(Je.isDuration(t))return t;if(typeof t=="object")return Je.fromObject(t);throw new En(`Unknown duration argument ${t} of type ${typeof t}`)}static fromISO(t,n){const[s]=OK(t);return s?Je.fromObject(s,n):Je.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static fromISOTime(t,n){const[s]=PK(t);return s?Je.fromObject(s,n):Je.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static invalid(t,n=null){if(!t)throw new En("need to specify a reason the Duration is invalid");const s=t instanceof Vn?t:new Vn(t,n);if(Tt.throwOnInvalid)throw new yG(s);return new Je({invalid:s})}static normalizeUnit(t){const n={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[t&&t.toLowerCase()];if(!n)throw new xv(t);return n}static isDuration(t){return t&&t.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(t,n={}){const s={...n,floor:n.round!==!1&&n.floor!==!1};return this.isValid?Kt.create(this.loc,s).formatDurationFromString(this,t):MK}toHuman(t={}){const n=er.map(s=>{const r=this.values[s];return tt(r)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...t,unit:s.slice(0,-1)}).format(r)}).filter(s=>s);return this.loc.listFormatter({type:"conjunction",style:t.listStyle||"narrow",...t}).format(n)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let t="P";return this.years!==0&&(t+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(t+=this.months+this.quarters*3+"M"),this.weeks!==0&&(t+=this.weeks+"W"),this.days!==0&&(t+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(t+="T"),this.hours!==0&&(t+=this.hours+"H"),this.minutes!==0&&(t+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(t+=dm(this.seconds+this.milliseconds/1e3,3)+"S"),t==="P"&&(t+="T0S"),t}toISOTime(t={}){if(!this.isValid)return null;const n=this.toMillis();if(n<0||n>=864e5)return null;t={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...t};const s=this.shiftTo("hours","minutes","seconds","milliseconds");let r=t.format==="basic"?"hhmm":"hh:mm";(!t.suppressSeconds||s.seconds!==0||s.milliseconds!==0)&&(r+=t.format==="basic"?"ss":":ss",(!t.suppressMilliseconds||s.milliseconds!==0)&&(r+=".SSS"));let o=s.toFormat(r);return t.includePrefix&&(o="T"+o),o}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){return this.as("milliseconds")}valueOf(){return this.toMillis()}plus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t),s={};for(const r of er)(Qr(n.values,r)||Qr(this.values,r))&&(s[r]=n.get(r)+this.get(r));return Ss(this,{values:s},!0)}minus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t);return this.plus(n.negate())}mapUnits(t){if(!this.isValid)return this;const n={};for(const s of Object.keys(this.values))n[s]=Gv(t(this.values[s],s));return Ss(this,{values:n},!0)}get(t){return this[Je.normalizeUnit(t)]}set(t){if(!this.isValid)return this;const n={...this.values,...pl(t,Je.normalizeUnit)};return Ss(this,{values:n})}reconfigure({locale:t,numberingSystem:n,conversionAccuracy:s,matrix:r}={}){const i={loc:this.loc.clone({locale:t,numberingSystem:n}),matrix:r,conversionAccuracy:s};return Ss(this,i)}as(t){return this.isValid?this.shiftTo(t).get(t):NaN}normalize(){if(!this.isValid)return this;const t=this.toObject();return UK(this.matrix,t),Ss(this,{values:t},!0)}rescale(){if(!this.isValid)return this;const t=jK(this.normalize().shiftToAll().toObject());return Ss(this,{values:t},!0)}shiftTo(...t){if(!this.isValid)return this;if(t.length===0)return this;t=t.map(i=>Je.normalizeUnit(i));const n={},s={},r=this.toObject();let o;for(const i of er)if(t.indexOf(i)>=0){o=i;let a=0;for(const c in s)a+=this.matrix[c][i]*s[c],s[c]=0;ur(r[i])&&(a+=r[i]);const u=Math.trunc(a);n[i]=u,s[i]=(a*1e3-u*1e3)/1e3;for(const c in r)er.indexOf(c)>er.indexOf(i)&&l1(this.matrix,r,c,n,i)}else ur(r[i])&&(s[i]=r[i]);for(const i in s)s[i]!==0&&(n[o]+=i===o?s[i]:s[i]/this.matrix[o][i]);return Ss(this,{values:n},!0).normalize()}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=this.values[n]===0?0:-this.values[n];return Ss(this,{values:t},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(t){if(!this.isValid||!t.isValid||!this.loc.equals(t.loc))return!1;function n(s,r){return s===void 0||s===0?r===void 0||r===0:s===r}for(const s of er)if(!n(this.values[s],t.values[s]))return!1;return!0}}const $r="Invalid Interval";function qK(e,t){return!e||!e.isValid?Et.invalid("missing or invalid start"):!t||!t.isValid?Et.invalid("missing or invalid end"):tt:!1}isBefore(t){return this.isValid?this.e<=t:!1}contains(t){return this.isValid?this.s<=t&&this.e>t:!1}set({start:t,end:n}={}){return this.isValid?Et.fromDateTimes(t||this.s,n||this.e):this}splitAt(...t){if(!this.isValid)return[];const n=t.map(ko).filter(i=>this.contains(i)).sort(),s=[];let{s:r}=this,o=0;for(;r+this.e?this.e:i;s.push(Et.fromDateTimes(r,a)),r=a,o+=1}return s}splitBy(t){const n=Je.fromDurationLike(t);if(!this.isValid||!n.isValid||n.as("milliseconds")===0)return[];let{s}=this,r=1,o;const i=[];for(;su*r));o=+a>+this.e?this.e:a,i.push(Et.fromDateTimes(s,o)),s=o,r+=1}return i}divideEqually(t){return this.isValid?this.splitBy(this.length()/t).slice(0,t):[]}overlaps(t){return this.e>t.s&&this.s=t.e:!1}equals(t){return!this.isValid||!t.isValid?!1:this.s.equals(t.s)&&this.e.equals(t.e)}intersection(t){if(!this.isValid)return this;const n=this.s>t.s?this.s:t.s,s=this.e=s?null:Et.fromDateTimes(n,s)}union(t){if(!this.isValid)return this;const n=this.st.e?this.e:t.e;return Et.fromDateTimes(n,s)}static merge(t){const[n,s]=t.sort((r,o)=>r.s-o.s).reduce(([r,o],i)=>o?o.overlaps(i)||o.abutsStart(i)?[r,o.union(i)]:[r.concat([o]),i]:[r,i],[[],null]);return s&&n.push(s),n}static xor(t){let n=null,s=0;const r=[],o=t.map(u=>[{time:u.s,type:"s"},{time:u.e,type:"e"}]),i=Array.prototype.concat(...o),a=i.sort((u,c)=>u.time-c.time);for(const u of a)s+=u.type==="s"?1:-1,s===1?n=u.time:(n&&+n!=+u.time&&r.push(Et.fromDateTimes(n,u.time)),n=null);return Et.merge(r)}difference(...t){return Et.xor([this].concat(t)).map(n=>this.intersection(n)).filter(n=>n&&!n.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:$r}toLocaleString(t=dl,n={}){return this.isValid?Kt.create(this.s.loc.clone(n),t).formatInterval(this):$r}toISO(t){return this.isValid?`${this.s.toISO(t)}/${this.e.toISO(t)}`:$r}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:$r}toISOTime(t){return this.isValid?`${this.s.toISOTime(t)}/${this.e.toISOTime(t)}`:$r}toFormat(t,{separator:n=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(t)}${n}${this.e.toFormat(t)}`:$r}toDuration(t,n){return this.isValid?this.e.diff(this.s,t,n):Je.invalid(this.invalidReason)}mapEndpoints(t){return Et.fromDateTimes(t(this.s),t(this.e))}}class Aa{static hasDST(t=Tt.defaultZone){const n=Ve.now().setZone(t).set({month:12});return!t.isUniversal&&n.offset!==n.set({month:6}).offset}static isValidIANAZone(t){return ys.isValidZone(t)}static normalizeZone(t){return Fs(t,Tt.defaultZone)}static months(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null,outputCalendar:o="gregory"}={}){return(r||vt.create(n,s,o)).months(t)}static monthsFormat(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null,outputCalendar:o="gregory"}={}){return(r||vt.create(n,s,o)).months(t,!0)}static weekdays(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null}={}){return(r||vt.create(n,s,null)).weekdays(t)}static weekdaysFormat(t="long",{locale:n=null,numberingSystem:s=null,locObj:r=null}={}){return(r||vt.create(n,s,null)).weekdays(t,!0)}static meridiems({locale:t=null}={}){return vt.create(t).meridiems()}static eras(t="short",{locale:n=null}={}){return vt.create(n,null,"gregory").eras(t)}static features(){return{relative:qv()}}}function jp(e,t){const n=r=>r.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),s=n(t)-n(e);return Math.floor(Je.fromMillis(s).as("days"))}function WK(e,t,n){const s=[["years",(u,c)=>c.year-u.year],["quarters",(u,c)=>c.quarter-u.quarter+(c.year-u.year)*4],["months",(u,c)=>c.month-u.month+(c.year-u.year)*12],["weeks",(u,c)=>{const d=jp(u,c);return(d-d%7)/7}],["days",jp]],r={},o=e;let i,a;for(const[u,c]of s)n.indexOf(u)>=0&&(i=u,r[u]=c(e,t),a=o.plus(r),a>t?(r[u]--,e=o.plus(r)):e=a);return[e,r,a,i]}function GK(e,t,n,s){let[r,o,i,a]=WK(e,t,n);const u=t-r,c=n.filter(f=>["hours","minutes","seconds","milliseconds"].indexOf(f)>=0);c.length===0&&(i0?Je.fromMillis(u,s).shiftTo(...c).plus(d):d}const _m={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},qp={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},KK=_m.hanidec.replace(/[\[|\]]/g,"").split("");function ZK(e){let t=parseInt(e,10);if(isNaN(t)){t="";for(let n=0;n=o&&s<=i&&(t+=s-o)}}return parseInt(t,10)}else return t}function Fn({numberingSystem:e},t=""){return new RegExp(`${_m[e||"latn"]}${t}`)}const YK="missing Intl.DateTimeFormat.formatToParts support";function lt(e,t=n=>n){return{regex:e,deser:([n])=>t(ZK(n))}}const JK=String.fromCharCode(160),u1=`[ ${JK}]`,c1=new RegExp(u1,"g");function XK(e){return e.replace(/\./g,"\\.?").replace(c1,u1)}function Wp(e){return e.replace(/\./g,"").replace(c1," ").toLowerCase()}function Rn(e,t){return e===null?null:{regex:RegExp(e.map(XK).join("|")),deser:([n])=>e.findIndex(s=>Wp(n)===Wp(s))+t}}function Gp(e,t){return{regex:e,deser:([,n,s])=>tu(n,s),groups:t}}function Ta(e){return{regex:e,deser:([t])=>t}}function QK(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function eZ(e,t){const n=Fn(t),s=Fn(t,"{2}"),r=Fn(t,"{3}"),o=Fn(t,"{4}"),i=Fn(t,"{6}"),a=Fn(t,"{1,2}"),u=Fn(t,"{1,3}"),c=Fn(t,"{1,6}"),d=Fn(t,"{1,9}"),f=Fn(t,"{2,4}"),m=Fn(t,"{4,6}"),p=w=>({regex:RegExp(QK(w.val)),deser:([b])=>b,literal:!0}),_=(w=>{if(e.literal)return p(w);switch(w.val){case"G":return Rn(t.eras("short",!1),0);case"GG":return Rn(t.eras("long",!1),0);case"y":return lt(c);case"yy":return lt(f,jc);case"yyyy":return lt(o);case"yyyyy":return lt(m);case"yyyyyy":return lt(i);case"M":return lt(a);case"MM":return lt(s);case"MMM":return Rn(t.months("short",!0,!1),1);case"MMMM":return Rn(t.months("long",!0,!1),1);case"L":return lt(a);case"LL":return lt(s);case"LLL":return Rn(t.months("short",!1,!1),1);case"LLLL":return Rn(t.months("long",!1,!1),1);case"d":return lt(a);case"dd":return lt(s);case"o":return lt(u);case"ooo":return lt(r);case"HH":return lt(s);case"H":return lt(a);case"hh":return lt(s);case"h":return lt(a);case"mm":return lt(s);case"m":return lt(a);case"q":return lt(a);case"qq":return lt(s);case"s":return lt(a);case"ss":return lt(s);case"S":return lt(u);case"SSS":return lt(r);case"u":return Ta(d);case"uu":return Ta(a);case"uuu":return lt(n);case"a":return Rn(t.meridiems(),0);case"kkkk":return lt(o);case"kk":return lt(f,jc);case"W":return lt(a);case"WW":return lt(s);case"E":case"c":return lt(n);case"EEE":return Rn(t.weekdays("short",!1,!1),1);case"EEEE":return Rn(t.weekdays("long",!1,!1),1);case"ccc":return Rn(t.weekdays("short",!0,!1),1);case"cccc":return Rn(t.weekdays("long",!0,!1),1);case"Z":case"ZZ":return Gp(new RegExp(`([+-]${a.source})(?::(${s.source}))?`),2);case"ZZZ":return Gp(new RegExp(`([+-]${a.source})(${s.source})?`),2);case"z":return Ta(/[a-z_+-/]{1,256}?/i);case" ":return Ta(/[^\S\n\r]/);default:return p(w)}})(e)||{invalidReason:YK};return _.token=e,_}const tZ={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour:{numeric:"h","2-digit":"hh"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function nZ(e,t){const{type:n,value:s}=e;if(n==="literal"){const i=/^\s+$/.test(s);return{literal:!i,val:i?" ":s}}const r=t[n];let o=tZ[n];if(typeof o=="object"&&(o=o[r]),o)return{literal:!1,val:o}}function sZ(e){return[`^${e.map(n=>n.regex).reduce((n,s)=>`${n}(${s.source})`,"")}$`,e]}function rZ(e,t,n){const s=e.match(t);if(s){const r={};let o=1;for(const i in n)if(Qr(n,i)){const a=n[i],u=a.groups?a.groups+1:1;!a.literal&&a.token&&(r[a.token.val[0]]=a.deser(s.slice(o,o+u))),o+=u}return[s,r]}else return[s,{}]}function oZ(e){const t=o=>{switch(o){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}};let n=null,s;return tt(e.z)||(n=ys.create(e.z)),tt(e.Z)||(n||(n=new en(e.Z)),s=e.Z),tt(e.q)||(e.M=(e.q-1)*3+1),tt(e.h)||(e.h<12&&e.a===1?e.h+=12:e.h===12&&e.a===0&&(e.h=0)),e.G===0&&e.y&&(e.y=-e.y),tt(e.u)||(e.S=cm(e.u)),[Object.keys(e).reduce((o,i)=>{const a=t(i);return a&&(o[a]=e[i]),o},{}),n,s]}let Ru=null;function iZ(){return Ru||(Ru=Ve.fromMillis(1555555555555)),Ru}function aZ(e,t){if(e.literal)return e;const n=Kt.macroTokenToFormatOpts(e.val),s=f1(n,t);return s==null||s.includes(void 0)?e:s}function d1(e,t){return Array.prototype.concat(...e.map(n=>aZ(n,t)))}function m1(e,t,n){const s=d1(Kt.parseFormat(n),e),r=s.map(i=>eZ(i,e)),o=r.find(i=>i.invalidReason);if(o)return{input:t,tokens:s,invalidReason:o.invalidReason};{const[i,a]=sZ(r),u=RegExp(i,"i"),[c,d]=rZ(t,u,a),[f,m,p]=d?oZ(d):[null,null,void 0];if(Qr(d,"a")&&Qr(d,"H"))throw new Io("Can't include meridiem when specifying 24-hour format");return{input:t,tokens:s,regex:u,rawMatches:c,matches:d,result:f,zone:m,specificOffset:p}}}function lZ(e,t,n){const{result:s,zone:r,specificOffset:o,invalidReason:i}=m1(e,t,n);return[s,r,o,i]}function f1(e,t){return e?Kt.create(t,e).formatDateTimeParts(iZ()).map(r=>nZ(r,e)):null}const p1=[0,31,59,90,120,151,181,212,243,273,304,334],h1=[0,31,60,91,121,152,182,213,244,274,305,335];function Sn(e,t){return new Vn("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function _1(e,t,n){const s=new Date(Date.UTC(e,t-1,n));e<100&&e>=0&&s.setUTCFullYear(s.getUTCFullYear()-1900);const r=s.getUTCDay();return r===0?7:r}function g1(e,t,n){return n+(Ai(e)?h1:p1)[t-1]}function y1(e,t){const n=Ai(e)?h1:p1,s=n.findIndex(o=>ofl(t)?(a=t+1,i=1):a=t,{weekYear:a,weekNumber:i,weekday:o,...nu(e)}}function Kp(e){const{weekYear:t,weekNumber:n,weekday:s}=e,r=_1(t,1,4),o=Xo(t);let i=n*7+s-r-3,a;i<1?(a=t-1,i+=Xo(a)):i>o?(a=t+1,i-=Xo(t)):a=t;const{month:u,day:c}=y1(a,i);return{year:a,month:u,day:c,...nu(e)}}function Lu(e){const{year:t,month:n,day:s}=e,r=g1(t,n,s);return{year:t,ordinal:r,...nu(e)}}function Zp(e){const{year:t,ordinal:n}=e,{month:s,day:r}=y1(t,n);return{year:t,month:s,day:r,...nu(e)}}function uZ(e){const t=eu(e.weekYear),n=ms(e.weekNumber,1,fl(e.weekYear)),s=ms(e.weekday,1,7);return t?n?s?!1:Sn("weekday",e.weekday):Sn("week",e.week):Sn("weekYear",e.weekYear)}function cZ(e){const t=eu(e.year),n=ms(e.ordinal,1,Xo(e.year));return t?n?!1:Sn("ordinal",e.ordinal):Sn("year",e.year)}function v1(e){const t=eu(e.year),n=ms(e.month,1,12),s=ms(e.day,1,ml(e.year,e.month));return t?n?s?!1:Sn("day",e.day):Sn("month",e.month):Sn("year",e.year)}function b1(e){const{hour:t,minute:n,second:s,millisecond:r}=e,o=ms(t,0,23)||t===24&&n===0&&s===0&&r===0,i=ms(n,0,59),a=ms(s,0,59),u=ms(r,0,999);return o?i?a?u?!1:Sn("millisecond",r):Sn("second",s):Sn("minute",n):Sn("hour",t)}const Mu="Invalid DateTime",Yp=864e13;function Oa(e){return new Vn("unsupported zone",`the zone "${e.name}" is not supported`)}function Nu(e){return e.weekData===null&&(e.weekData=qc(e.c)),e.weekData}function wo(e,t){const n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new Ve({...n,...t,old:n})}function C1(e,t,n){let s=e-t*60*1e3;const r=n.offset(s);if(t===r)return[s,t];s-=(r-t)*60*1e3;const o=n.offset(s);return r===o?[s,r]:[e-Math.min(r,o)*60*1e3,Math.max(r,o)]}function Jp(e,t){e+=t*60*1e3;const n=new Date(e);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function qa(e,t,n){return C1(mm(e),t,n)}function Xp(e,t){const n=e.o,s=e.c.year+Math.trunc(t.years),r=e.c.month+Math.trunc(t.months)+Math.trunc(t.quarters)*3,o={...e.c,year:s,month:r,day:Math.min(e.c.day,ml(s,r))+Math.trunc(t.days)+Math.trunc(t.weeks)*7},i=Je.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),a=mm(o);let[u,c]=C1(a,n,e.zone);return i!==0&&(u+=i,c=e.zone.offset(u)),{ts:u,o:c}}function zo(e,t,n,s,r,o){const{setZone:i,zone:a}=n;if(e&&Object.keys(e).length!==0||t){const u=t||a,c=Ve.fromObject(e,{...n,zone:u,specificOffset:o});return i?c:c.setZone(a)}else return Ve.invalid(new Vn("unparsable",`the input "${r}" can't be parsed as ${s}`))}function Da(e,t,n=!0){return e.isValid?Kt.create(vt.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(e,t):null}function Vu(e,t){const n=e.c.year>9999||e.c.year<0;let s="";return n&&e.c.year>=0&&(s+="+"),s+=Ot(e.c.year,n?6:4),t?(s+="-",s+=Ot(e.c.month),s+="-",s+=Ot(e.c.day)):(s+=Ot(e.c.month),s+=Ot(e.c.day)),s}function Qp(e,t,n,s,r,o){let i=Ot(e.c.hour);return t?(i+=":",i+=Ot(e.c.minute),(e.c.second!==0||!n)&&(i+=":")):i+=Ot(e.c.minute),(e.c.second!==0||!n)&&(i+=Ot(e.c.second),(e.c.millisecond!==0||!s)&&(i+=".",i+=Ot(e.c.millisecond,3))),r&&(e.isOffsetFixed&&e.offset===0&&!o?i+="Z":e.o<0?(i+="-",i+=Ot(Math.trunc(-e.o/60)),i+=":",i+=Ot(Math.trunc(-e.o%60))):(i+="+",i+=Ot(Math.trunc(e.o/60)),i+=":",i+=Ot(Math.trunc(e.o%60)))),o&&(i+="["+e.zone.ianaName+"]"),i}const w1={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},dZ={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},mZ={ordinal:1,hour:0,minute:0,second:0,millisecond:0},z1=["year","month","day","hour","minute","second","millisecond"],fZ=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],pZ=["year","ordinal","hour","minute","second","millisecond"];function eh(e){const t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new xv(e);return t}function th(e,t){const n=Fs(t.zone,Tt.defaultZone),s=vt.fromObject(t),r=Tt.now();let o,i;if(tt(e.year))o=r;else{for(const c of z1)tt(e[c])&&(e[c]=w1[c]);const a=v1(e)||b1(e);if(a)return Ve.invalid(a);const u=n.offset(r);[o,i]=qa(e,u,n)}return new Ve({ts:o,zone:n,loc:s,o:i})}function nh(e,t,n){const s=tt(n.round)?!0:n.round,r=(i,a)=>(i=dm(i,s||n.calendary?0:2,!0),t.loc.clone(n).relFormatter(n).format(i,a)),o=i=>n.calendary?t.hasSame(e,i)?0:t.startOf(i).diff(e.startOf(i),i).get(i):t.diff(e,i).get(i);if(n.unit)return r(o(n.unit),n.unit);for(const i of n.units){const a=o(i);if(Math.abs(a)>=1)return r(a,i)}return r(e>t?-0:0,n.units[n.units.length-1])}function sh(e){let t={},n;return e.length>0&&typeof e[e.length-1]=="object"?(t=e[e.length-1],n=Array.from(e).slice(0,e.length-1)):n=Array.from(e),[t,n]}class Ve{constructor(t){const n=t.zone||Tt.defaultZone;let s=t.invalid||(Number.isNaN(t.ts)?new Vn("invalid input"):null)||(n.isValid?null:Oa(n));this.ts=tt(t.ts)?Tt.now():t.ts;let r=null,o=null;if(!s)if(t.old&&t.old.ts===this.ts&&t.old.zone.equals(n))[r,o]=[t.old.c,t.old.o];else{const a=n.offset(this.ts);r=Jp(this.ts,a),s=Number.isNaN(r.year)?new Vn("invalid input"):null,r=s?null:r,o=s?null:a}this._zone=n,this.loc=t.loc||vt.create(),this.invalid=s,this.weekData=null,this.c=r,this.o=o,this.isLuxonDateTime=!0}static now(){return new Ve({})}static local(){const[t,n]=sh(arguments),[s,r,o,i,a,u,c]=n;return th({year:s,month:r,day:o,hour:i,minute:a,second:u,millisecond:c},t)}static utc(){const[t,n]=sh(arguments),[s,r,o,i,a,u,c]=n;return t.zone=en.utcInstance,th({year:s,month:r,day:o,hour:i,minute:a,second:u,millisecond:c},t)}static fromJSDate(t,n={}){const s=NG(t)?t.valueOf():NaN;if(Number.isNaN(s))return Ve.invalid("invalid input");const r=Fs(n.zone,Tt.defaultZone);return r.isValid?new Ve({ts:s,zone:r,loc:vt.fromObject(n)}):Ve.invalid(Oa(r))}static fromMillis(t,n={}){if(ur(t))return t<-Yp||t>Yp?Ve.invalid("Timestamp out of range"):new Ve({ts:t,zone:Fs(n.zone,Tt.defaultZone),loc:vt.fromObject(n)});throw new En(`fromMillis requires a numerical input, but received a ${typeof t} with value ${t}`)}static fromSeconds(t,n={}){if(ur(t))return new Ve({ts:t*1e3,zone:Fs(n.zone,Tt.defaultZone),loc:vt.fromObject(n)});throw new En("fromSeconds requires a numerical input")}static fromObject(t,n={}){t=t||{};const s=Fs(n.zone,Tt.defaultZone);if(!s.isValid)return Ve.invalid(Oa(s));const r=Tt.now(),o=tt(n.specificOffset)?s.offset(r):n.specificOffset,i=pl(t,eh),a=!tt(i.ordinal),u=!tt(i.year),c=!tt(i.month)||!tt(i.day),d=u||c,f=i.weekYear||i.weekNumber,m=vt.fromObject(n);if((d||a)&&f)throw new Io("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(c&&a)throw new Io("Can't mix ordinal dates with month/day");const p=f||i.weekday&&!d;let h,_,w=Jp(r,o);p?(h=fZ,_=dZ,w=qc(w)):a?(h=pZ,_=mZ,w=Lu(w)):(h=z1,_=w1);let b=!1;for(const I of h){const D=i[I];tt(D)?b?i[I]=_[I]:i[I]=w[I]:b=!0}const y=p?uZ(i):a?cZ(i):v1(i),k=y||b1(i);if(k)return Ve.invalid(k);const C=p?Kp(i):a?Zp(i):i,[x,T]=qa(C,o,s),L=new Ve({ts:x,zone:s,o:T,loc:m});return i.weekday&&d&&t.weekday!==L.weekday?Ve.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${L.toISO()}`):L}static fromISO(t,n={}){const[s,r]=SK(t);return zo(s,r,n,"ISO 8601",t)}static fromRFC2822(t,n={}){const[s,r]=AK(t);return zo(s,r,n,"RFC 2822",t)}static fromHTTP(t,n={}){const[s,r]=TK(t);return zo(s,r,n,"HTTP",n)}static fromFormat(t,n,s={}){if(tt(t)||tt(n))throw new En("fromFormat requires an input string and a format");const{locale:r=null,numberingSystem:o=null}=s,i=vt.fromOpts({locale:r,numberingSystem:o,defaultToEN:!0}),[a,u,c,d]=lZ(i,t,n);return d?Ve.invalid(d):zo(a,u,s,`format ${n}`,t,c)}static fromString(t,n,s={}){return Ve.fromFormat(t,n,s)}static fromSQL(t,n={}){const[s,r]=LK(t);return zo(s,r,n,"SQL",t)}static invalid(t,n=null){if(!t)throw new En("need to specify a reason the DateTime is invalid");const s=t instanceof Vn?t:new Vn(t,n);if(Tt.throwOnInvalid)throw new _G(s);return new Ve({invalid:s})}static isDateTime(t){return t&&t.isLuxonDateTime||!1}static parseFormatForOpts(t,n={}){const s=f1(t,vt.fromObject(n));return s?s.map(r=>r?r.val:null).join(""):null}static expandFormat(t,n={}){return d1(Kt.parseFormat(t),vt.fromObject(n)).map(r=>r.val).join("")}get(t){return this[t]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Nu(this).weekYear:NaN}get weekNumber(){return this.isValid?Nu(this).weekNumber:NaN}get weekday(){return this.isValid?Nu(this).weekday:NaN}get ordinal(){return this.isValid?Lu(this.c).ordinal:NaN}get monthShort(){return this.isValid?Aa.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?Aa.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?Aa.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?Aa.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}get isInLeapYear(){return Ai(this.year)}get daysInMonth(){return ml(this.year,this.month)}get daysInYear(){return this.isValid?Xo(this.year):NaN}get weeksInWeekYear(){return this.isValid?fl(this.weekYear):NaN}resolvedLocaleOptions(t={}){const{locale:n,numberingSystem:s,calendar:r}=Kt.create(this.loc.clone(t),t).resolvedOptions(this);return{locale:n,numberingSystem:s,outputCalendar:r}}toUTC(t=0,n={}){return this.setZone(en.instance(t),n)}toLocal(){return this.setZone(Tt.defaultZone)}setZone(t,{keepLocalTime:n=!1,keepCalendarTime:s=!1}={}){if(t=Fs(t,Tt.defaultZone),t.equals(this.zone))return this;if(t.isValid){let r=this.ts;if(n||s){const o=t.offset(this.ts),i=this.toObject();[r]=qa(i,o,t)}return wo(this,{ts:r,zone:t})}else return Ve.invalid(Oa(t))}reconfigure({locale:t,numberingSystem:n,outputCalendar:s}={}){const r=this.loc.clone({locale:t,numberingSystem:n,outputCalendar:s});return wo(this,{loc:r})}setLocale(t){return this.reconfigure({locale:t})}set(t){if(!this.isValid)return this;const n=pl(t,eh),s=!tt(n.weekYear)||!tt(n.weekNumber)||!tt(n.weekday),r=!tt(n.ordinal),o=!tt(n.year),i=!tt(n.month)||!tt(n.day),a=o||i,u=n.weekYear||n.weekNumber;if((a||r)&&u)throw new Io("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(i&&r)throw new Io("Can't mix ordinal dates with month/day");let c;s?c=Kp({...qc(this.c),...n}):tt(n.ordinal)?(c={...this.toObject(),...n},tt(n.day)&&(c.day=Math.min(ml(c.year,c.month),c.day))):c=Zp({...Lu(this.c),...n});const[d,f]=qa(c,this.o,this.zone);return wo(this,{ts:d,o:f})}plus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t);return wo(this,Xp(this,n))}minus(t){if(!this.isValid)return this;const n=Je.fromDurationLike(t).negate();return wo(this,Xp(this,n))}startOf(t){if(!this.isValid)return this;const n={},s=Je.normalizeUnit(t);switch(s){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0;break}if(s==="weeks"&&(n.weekday=1),s==="quarters"){const r=Math.ceil(this.month/3);n.month=(r-1)*3+1}return this.set(n)}endOf(t){return this.isValid?this.plus({[t]:1}).startOf(t).minus(1):this}toFormat(t,n={}){return this.isValid?Kt.create(this.loc.redefaultToEN(n)).formatDateTimeFromString(this,t):Mu}toLocaleString(t=dl,n={}){return this.isValid?Kt.create(this.loc.clone(n),t).formatDateTime(this):Mu}toLocaleParts(t={}){return this.isValid?Kt.create(this.loc.clone(t),t).formatDateTimeParts(this):[]}toISO({format:t="extended",suppressSeconds:n=!1,suppressMilliseconds:s=!1,includeOffset:r=!0,extendedZone:o=!1}={}){if(!this.isValid)return null;const i=t==="extended";let a=Vu(this,i);return a+="T",a+=Qp(this,i,n,s,r,o),a}toISODate({format:t="extended"}={}){return this.isValid?Vu(this,t==="extended"):null}toISOWeekDate(){return Da(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:t=!1,suppressSeconds:n=!1,includeOffset:s=!0,includePrefix:r=!1,extendedZone:o=!1,format:i="extended"}={}){return this.isValid?(r?"T":"")+Qp(this,i==="extended",n,t,s,o):null}toRFC2822(){return Da(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Da(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Vu(this,!0):null}toSQLTime({includeOffset:t=!0,includeZone:n=!1,includeOffsetSpace:s=!0}={}){let r="HH:mm:ss.SSS";return(n||t)&&(s&&(r+=" "),n?r+="z":t&&(r+="ZZ")),Da(this,r,!0)}toSQL(t={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(t)}`:null}toString(){return this.isValid?this.toISO():Mu}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(t={}){if(!this.isValid)return{};const n={...this.c};return t.includeConfig&&(n.outputCalendar=this.outputCalendar,n.numberingSystem=this.loc.numberingSystem,n.locale=this.loc.locale),n}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(t,n="milliseconds",s={}){if(!this.isValid||!t.isValid)return Je.invalid("created by diffing an invalid DateTime");const r={locale:this.locale,numberingSystem:this.numberingSystem,...s},o=VG(n).map(Je.normalizeUnit),i=t.valueOf()>this.valueOf(),a=i?this:t,u=i?t:this,c=GK(a,u,o,r);return i?c.negate():c}diffNow(t="milliseconds",n={}){return this.diff(Ve.now(),t,n)}until(t){return this.isValid?Et.fromDateTimes(this,t):this}hasSame(t,n){if(!this.isValid)return!1;const s=t.valueOf(),r=this.setZone(t.zone,{keepLocalTime:!0});return r.startOf(n)<=s&&s<=r.endOf(n)}equals(t){return this.isValid&&t.isValid&&this.valueOf()===t.valueOf()&&this.zone.equals(t.zone)&&this.loc.equals(t.loc)}toRelative(t={}){if(!this.isValid)return null;const n=t.base||Ve.fromObject({},{zone:this.zone}),s=t.padding?thisn.valueOf(),Math.min)}static max(...t){if(!t.every(Ve.isDateTime))throw new En("max requires all arguments be DateTimes");return Bp(t,n=>n.valueOf(),Math.max)}static fromFormatExplain(t,n,s={}){const{locale:r=null,numberingSystem:o=null}=s,i=vt.fromOpts({locale:r,numberingSystem:o,defaultToEN:!0});return m1(i,t,n)}static fromStringExplain(t,n,s={}){return Ve.fromFormatExplain(t,n,s)}static get DATE_SHORT(){return dl}static get DATE_MED(){return Ev}static get DATE_MED_WITH_WEEKDAY(){return vG}static get DATE_FULL(){return $v}static get DATE_HUGE(){return Sv}static get TIME_SIMPLE(){return Av}static get TIME_WITH_SECONDS(){return Tv}static get TIME_WITH_SHORT_OFFSET(){return Ov}static get TIME_WITH_LONG_OFFSET(){return Dv}static get TIME_24_SIMPLE(){return Pv}static get TIME_24_WITH_SECONDS(){return Iv}static get TIME_24_WITH_SHORT_OFFSET(){return Fv}static get TIME_24_WITH_LONG_OFFSET(){return Rv}static get DATETIME_SHORT(){return Lv}static get DATETIME_SHORT_WITH_SECONDS(){return Mv}static get DATETIME_MED(){return Nv}static get DATETIME_MED_WITH_SECONDS(){return Vv}static get DATETIME_MED_WITH_WEEKDAY(){return bG}static get DATETIME_FULL(){return Bv}static get DATETIME_FULL_WITH_SECONDS(){return Hv}static get DATETIME_HUGE(){return Uv}static get DATETIME_HUGE_WITH_SECONDS(){return jv}}function ko(e){if(Ve.isDateTime(e))return e;if(e&&e.valueOf&&ur(e.valueOf()))return Ve.fromJSDate(e);if(e&&typeof e=="object")return Ve.fromObject(e);throw new En(`Unknown datetime argument: ${e}, of type ${typeof e}`)}const{t:Bu,locale:Hu}=Fl.global,hZ={durationInHours(e){const t=Math.floor(e/1e3);return t>3600?Je.fromObject({seconds:t}).shiftTo("hours","minutes","seconds").toFormat("hh:mm:ss"):Je.fromObject({seconds:t}).shiftTo("minutes","seconds").toFormat("mm:ss")},durationInDays(e){const t=Math.floor(e/6e4);return t>1440?Je.fromObject({minutes:t}).shiftTo("days","hours","minutes").toHuman():t>60?Je.fromObject({minutes:t}).shiftTo("hours","minutes").toHuman():Je.fromObject({minutes:t}).shiftTo("minutes").toHuman()},date(e){return Ve.fromISO(e).setLocale(Hu.value).toLocaleString(Ve.DATE_FULL)},datetime(e){return Ve.fromISO(e).setLocale(Hu.value).toLocaleString(Ve.DATETIME_MED)},timeFromNow(e){const t=Ve.now().diff(Ve.fromISO(e));return this.durationInDays(t.as("milliseconds"))},number(e){return e.toLocaleString(Hu.value)},channels(e){return e===1?Bu("filter.mono"):e===2?Bu("filter.stereo"):e?Bu("filter.channels",{value:e}):""},cursor(e,t=20){const s=t/2;return`url("data:image/svg+xml,%3Csvg width='${t}' height='${t}' viewBox='0 0 ${24} ${24}' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='${e}'/%3E%3C/svg%3E") ${s} ${s}, auto`}},_Z={mdiAccountMusic:$8,mdiAlbum:S8,mdiArrowCollapseDown:T8,mdiBookOpenPageVariant:O8,mdiBookOpenVariant:D8,mdiBookshelf:P8,mdiBroadcast:I8,mdiCancel:Gl,mdiCast:F8,mdiCastVariant:R8,mdiCellphone:L8,mdiCheck:M8,mdiChevronDown:N8,mdiChevronUp:V8,mdiContentSave:B8,mdiDelete:H8,mdiDeleteEmpty:U8,mdiDotsHorizontal:j8,mdiDotsVertical:q8,mdiDragHorizontal:W8,mdiFastForward30:G8,mdiFileMusic:K8,mdiFileOutline:Z8,mdiFire:Y8,mdiFolder:J8,mdiFolderOpen:X8,mdiMagnify:Q8,mdiMenu:eT,mdiMicrophone:tT,mdiMusic:nT,mdiMusicBoxMultiple:sT,mdiOpenInNew:rT,mdiPause:oT,mdiPencil:iT,mdiPipe:aT,mdiPlay:lT,mdiPlaylistPlay:uT,mdiPlaylistPlus:cT,mdiRadio:dT,mdiRadioTower:mT,mdiRefresh:fT,mdiRepeat:pT,mdiRepeatOff:hT,mdiRepeatOnce:_T,mdiRewind10:gT,mdiRss:yT,mdiServer:vT,mdiShuffle:bT,mdiShuffleDisabled:CT,mdiSkipBackward:wT,mdiSkipForward:zT,mdiSpeaker:kT,mdiSpotify:xT,mdiStop:ET,mdiSubdirectoryArrowLeft:$T,mdiVolumeHigh:ST,mdiVolumeOff:AT,mdiWeb:TT},gZ={name:"NavbarItemLink",props:{to:String,exact:Boolean},computed:{is_active(){return this.exact?this.$route.path===this.to:this.$route.path.startsWith(this.to)},show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}}},methods:{open_link(){this.show_burger_menu&&this.$store.commit(Gr,!1),this.show_player_menu&&this.$store.commit(Kr,!1),this.$router.push({path:this.to})},full_path(){return this.$router.resolve(this.to).href}}},yZ=["href"];function vZ(e,t,n,s,r,o){return z(),S("a",{class:Ae(["navbar-item",{"is-active":o.is_active}]),href:o.full_path(),onClick:t[0]||(t[0]=it(i=>o.open_link(),["stop","prevent"]))},[ut(e.$slots,"default")],10,yZ)}var k1=re(gZ,[["render",vZ]]);const bZ={name:"NavbarTop",components:{NavbarItemLink:k1},data(){return{show_settings_menu:!1}},computed:{is_visible_playlists(){return this.$store.getters.settings_option("webinterface","show_menu_item_playlists").value},is_visible_music(){return this.$store.getters.settings_option("webinterface","show_menu_item_music").value},is_visible_podcasts(){return this.$store.getters.settings_option("webinterface","show_menu_item_podcasts").value},is_visible_audiobooks(){return this.$store.getters.settings_option("webinterface","show_menu_item_audiobooks").value},is_visible_radio(){return this.$store.getters.settings_option("webinterface","show_menu_item_radio").value},is_visible_files(){return this.$store.getters.settings_option("webinterface","show_menu_item_files").value},is_visible_search(){return this.$store.getters.settings_option("webinterface","show_menu_item_search").value},player(){return this.$store.state.player},config(){return this.$store.state.config},library(){return this.$store.state.library},audiobooks(){return this.$store.state.audiobooks_count},podcasts(){return this.$store.state.podcasts_count},spotify_enabled(){return this.$store.state.spotify.webapi_token_valid},show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}},show_player_menu(){return this.$store.state.show_player_menu},show_update_dialog:{get(){return this.$store.state.show_update_dialog},set(e){this.$store.commit(wi,e)}},zindex(){return this.show_player_menu?"z-index: 20":""}},watch:{$route(e,t){this.show_settings_menu=!1}},methods:{on_click_outside_settings(){this.show_settings_menu=!this.show_settings_menu},open_update_dialog(){this.show_update_dialog=!0,this.show_settings_menu=!1,this.show_burger_menu=!1}}},CZ={class:"navbar-brand"},wZ={class:"icon"},zZ={class:"icon"},kZ={class:"icon"},xZ={class:"icon"},EZ={class:"icon"},$Z={class:"icon"},SZ={class:"icon"},AZ=l("span",null,null,-1),TZ=l("span",null,null,-1),OZ=l("span",null,null,-1),DZ=[AZ,TZ,OZ],PZ=l("div",{class:"navbar-start"},null,-1),IZ={class:"navbar-end"},FZ={class:"navbar-link is-arrowless"},RZ={class:"icon is-hidden-touch"},LZ=["textContent"],MZ={class:"navbar-dropdown is-right"},NZ={class:"icon"},VZ=["textContent"],BZ={class:"icon"},HZ=["textContent"],UZ=["textContent"],jZ=["textContent"],qZ=["textContent"],WZ=["textContent"],GZ={class:"icon"},KZ=["textContent"],ZZ={class:"icon"},YZ=["textContent"],JZ={class:"icon"},XZ=["textContent"],QZ={class:"icon"},eY=["textContent"],tY={class:"icon"},nY=["textContent"],sY=l("hr",{class:"fd-navbar-divider"},null,-1),rY=["textContent"],oY=l("div",{class:"navbar-item is-hidden-desktop",style:{"margin-bottom":"2.5rem"}},null,-1);function iY(e,t,n,s,r,o){const i=$("mdicon"),a=$("navbar-item-link");return z(),S("nav",{class:"fd-top-navbar navbar is-light is-fixed-top",style:ln(o.zindex),role:"navigation","aria-label":"main navigation"},[l("div",CZ,[o.is_visible_playlists?(z(),be(a,{key:0,to:"/playlists"},{default:E(()=>[l("span",wZ,[v(i,{name:"music-box-multiple",size:"16"})])]),_:1})):H("",!0),o.is_visible_music?(z(),be(a,{key:1,to:"/music"},{default:E(()=>[l("span",zZ,[v(i,{name:"music",size:"16"})])]),_:1})):H("",!0),o.is_visible_podcasts?(z(),be(a,{key:2,to:"/podcasts"},{default:E(()=>[l("span",kZ,[v(i,{name:"microphone",size:"16"})])]),_:1})):H("",!0),o.is_visible_audiobooks?(z(),be(a,{key:3,to:"/audiobooks"},{default:E(()=>[l("span",xZ,[v(i,{name:"book-open-variant",size:"16"})])]),_:1})):H("",!0),o.is_visible_radio?(z(),be(a,{key:4,to:"/radio"},{default:E(()=>[l("span",EZ,[v(i,{name:"radio",size:"16"})])]),_:1})):H("",!0),o.is_visible_files?(z(),be(a,{key:5,to:"/files"},{default:E(()=>[l("span",$Z,[v(i,{name:"folder-open",size:"16"})])]),_:1})):H("",!0),o.is_visible_search?(z(),be(a,{key:6,to:"/search"},{default:E(()=>[l("span",SZ,[v(i,{name:"magnify",size:"16"})])]),_:1})):H("",!0),l("div",{class:Ae(["navbar-burger",{"is-active":o.show_burger_menu}]),onClick:t[0]||(t[0]=u=>o.show_burger_menu=!o.show_burger_menu)},DZ,2)]),l("div",{class:Ae(["navbar-menu",{"is-active":o.show_burger_menu}])},[PZ,l("div",IZ,[l("div",{class:Ae(["navbar-item has-dropdown is-hoverable",{"is-active":r.show_settings_menu}]),onClick:t[2]||(t[2]=(...u)=>o.on_click_outside_settings&&o.on_click_outside_settings(...u))},[l("a",FZ,[l("span",RZ,[v(i,{name:"menu",size:"24"})]),l("span",{class:"is-hidden-desktop has-text-weight-bold",textContent:g(e.$t("navigation.title"))},null,8,LZ)]),l("div",MZ,[v(a,{to:"/playlists"},{default:E(()=>[l("span",NZ,[v(i,{name:"music-box-multiple",size:"16"})]),l("b",{textContent:g(e.$t("navigation.playlists"))},null,8,VZ)]),_:1}),v(a,{to:"/music",exact:""},{default:E(()=>[l("span",BZ,[v(i,{name:"music",size:"16"})]),l("b",{textContent:g(e.$t("navigation.music"))},null,8,HZ)]),_:1}),v(a,{to:"/music/artists"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.artists"))},null,8,UZ)]),_:1}),v(a,{to:"/music/albums"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.albums"))},null,8,jZ)]),_:1}),v(a,{to:"/music/genres"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.genres"))},null,8,qZ)]),_:1}),o.spotify_enabled?(z(),be(a,{key:0,to:"/music/spotify"},{default:E(()=>[l("span",{class:"fd-navbar-item-level2",textContent:g(e.$t("navigation.spotify"))},null,8,WZ)]),_:1})):H("",!0),v(a,{to:"/podcasts"},{default:E(()=>[l("span",GZ,[v(i,{name:"microphone",size:"16"})]),l("b",{textContent:g(e.$t("navigation.podcasts"))},null,8,KZ)]),_:1}),v(a,{to:"/audiobooks"},{default:E(()=>[l("span",ZZ,[v(i,{name:"book-open-variant",size:"16"})]),l("b",{textContent:g(e.$t("navigation.audiobooks"))},null,8,YZ)]),_:1}),v(a,{to:"/radio"},{default:E(()=>[l("span",JZ,[v(i,{name:"radio",size:"16"})]),l("b",{textContent:g(e.$t("navigation.radio"))},null,8,XZ)]),_:1}),v(a,{to:"/files"},{default:E(()=>[l("span",QZ,[v(i,{name:"folder-open",size:"16"})]),l("b",{textContent:g(e.$t("navigation.files"))},null,8,eY)]),_:1}),v(a,{to:"/search"},{default:E(()=>[l("span",tY,[v(i,{name:"magnify",size:"16"})]),l("b",{textContent:g(e.$t("navigation.search"))},null,8,nY)]),_:1}),sY,v(a,{to:"/settings/webinterface"},{default:E(()=>[mt(g(e.$t("navigation.settings")),1)]),_:1}),l("a",{class:"navbar-item",onClick:t[1]||(t[1]=it(u=>o.open_update_dialog(),["stop","prevent"])),textContent:g(e.$t("navigation.update-library"))},null,8,rY),v(a,{to:"/about"},{default:E(()=>[mt(g(e.$t("navigation.about")),1)]),_:1}),oY])],2)])],2),dt(l("div",{class:"is-overlay",style:{"z-index":"10",width:"100vw",height:"100vh"},onClick:t[3]||(t[3]=u=>r.show_settings_menu=!1)},null,512),[[ui,r.show_settings_menu]])],4)}var aY=re(bZ,[["render",iY]]),xo={_audio:new Audio,_context:null,_source:null,_gain:null,setupAudio(){const e=window.AudioContext||window.webkitAudioContext;return this._context=new e,this._source=this._context.createMediaElementSource(this._audio),this._gain=this._context.createGain(),this._source.connect(this._gain),this._gain.connect(this._context.destination),this._audio.addEventListener("canplaythrough",t=>{this._audio.play()}),this._audio.addEventListener("canplay",t=>{this._audio.play()}),this._audio},setVolume(e){!this._gain||(e=parseFloat(e)||0,e=e<0?0:e,e=e>1?1:e,this._gain.gain.value=e)},playSource(e){this.stopAudio(),this._context.resume().then(()=>{this._audio.src=String(e||"")+"?x="+Date.now(),this._audio.crossOrigin="anonymous",this._audio.load()})},stopAudio(){try{this._audio.pause()}catch{}try{this._audio.stop()}catch{}try{this._audio.close()}catch{}}};const lY={name:"NavbarItemOutput",props:["output"],data(){return{volume:this.output.selected?this.output.volume:0,cursor:Gl}},computed:{type_class(){return this.output.type.startsWith("AirPlay")?"cast-variant":this.output.type==="Chromecast"?"cast":this.output.type==="fifo"?"pipe":"server"}},watch:{output(){this.volume=this.output.volume}},methods:{change_volume(){N.player_output_volume(this.output.id,this.volume)},set_enabled(){const e={selected:!this.output.selected};N.output_update(this.output.id,e)}}},uY={class:"navbar-item"},cY={class:"level is-mobile"},dY={class:"level-left is-flex-grow-1"},mY={class:"level-item is-flex-grow-0"},fY={class:"button is-white is-small"},pY={class:"level-item"},hY={class:"is-flex-grow-1"},_Y=["textContent"],gY=["disabled"];function yY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("div",uY,[l("div",cY,[l("div",dY,[l("div",mY,[l("a",fY,[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!n.output.selected}]),onClick:t[0]||(t[0]=(...a)=>o.set_enabled&&o.set_enabled(...a))},[v(i,{name:o.type_class,size:"18",title:n.output.type},null,8,["name","title"])],2)])]),l("div",pY,[l("div",hY,[l("p",{class:Ae(["heading",{"has-text-grey-light":!n.output.selected}]),textContent:g(n.output.name)},null,10,_Y),dt(l("input",{"onUpdate:modelValue":t[1]||(t[1]=a=>r.volume=a),disabled:!n.output.selected,class:Ae(["slider",{"is-inactive":!n.output.selected}]),max:"100",type:"range",style:ln({"--ratio":r.volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[2]||(t[2]=(...a)=>o.change_volume&&o.change_volume(...a))},null,46,gY),[[It,r.volume]])])])])])])}var vY=re(lY,[["render",yY]]);const bY={name:"PlayerButtonPlayPause",props:{icon_size:{type:Number,default:16},show_disabled_message:Boolean},computed:{is_playing(){return this.$store.state.player.state==="play"},is_pause_allowed(){return this.$store.getters.now_playing&&this.$store.getters.now_playing.data_kind!=="pipe"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0},icon_name(){if(this.is_playing){if(this.is_pause_allowed)return"pause"}else return"play";return"stop"}},methods:{toggle_play_pause(){if(this.disabled){this.show_disabled_message&&this.$store.dispatch("add_notification",{text:this.$t("server.empty-queue"),type:"info",topic:"connection",timeout:2e3});return}this.is_playing&&this.is_pause_allowed?N.player_pause():this.is_playing&&!this.is_pause_allowed?N.player_stop():N.player_play()}}},CY=["disabled"],wY={class:"icon"};function zY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.toggle_play_pause&&o.toggle_play_pause(...a))},[l("span",wY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],8,CY)}var kY=re(bY,[["render",zY]]);const xY={name:"PlayerButtonNext",props:{icon_size:{type:Number,default:16}},computed:{disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_next(){this.disabled||N.player_next()}}},EY=["disabled"],$Y={class:"icon"};function SY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.play_next&&o.play_next(...a))},[l("span",$Y,[v(i,{name:"skip-forward",size:n.icon_size,title:e.$t("player.button.skip-forward")},null,8,["size","title"])])],8,EY)}var AY=re(xY,[["render",SY]]);const TY={name:"PlayerButtonPrevious",props:{icon_size:{type:Number,default:16}},computed:{disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_previous(){this.disabled||N.player_previous()}}},OY=["disabled"],DY={class:"icon"};function PY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.play_previous&&o.play_previous(...a))},[l("span",DY,[v(i,{name:"skip-backward",size:n.icon_size,title:e.$t("player.button.skip-backward")},null,8,["size","title"])])],8,OY)}var IY=re(TY,[["render",PY]]);const FY={name:"PlayerButtonShuffle",props:{icon_size:{type:Number,default:16}},computed:{is_shuffle(){return this.$store.state.player.shuffle},icon_name(){return this.is_shuffle?"shuffle":"shuffle-disabled"}},methods:{toggle_shuffle_mode(){N.player_shuffle(!this.is_shuffle)}}},RY={class:"icon"};function LY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":o.is_shuffle}),onClick:t[0]||(t[0]=(...a)=>o.toggle_shuffle_mode&&o.toggle_shuffle_mode(...a))},[l("span",RY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],2)}var MY=re(FY,[["render",LY]]);const NY={name:"PlayerButtonConsume",props:{icon_size:{type:Number,default:16}},computed:{is_consume(){return this.$store.state.player.consume}},methods:{toggle_consume_mode(){N.player_consume(!this.is_consume)}}},VY={class:"icon"};function BY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":o.is_consume}),onClick:t[0]||(t[0]=(...a)=>o.toggle_consume_mode&&o.toggle_consume_mode(...a))},[l("span",VY,[v(i,{name:"fire",size:n.icon_size,title:e.$t("player.button.consume")},null,8,["size","title"])])],2)}var HY=re(NY,[["render",BY]]);const UY={name:"PlayerButtonRepeat",props:{icon_size:{type:Number,default:16}},computed:{is_repeat_all(){return this.$store.state.player.repeat==="all"},is_repeat_single(){return this.$store.state.player.repeat==="single"},is_repeat_off(){return!this.is_repeat_all&&!this.is_repeat_single},icon_name(){return this.is_repeat_all?"repeat":this.is_repeat_single?"repeat-once":"repeat-off"}},methods:{toggle_repeat_mode(){this.is_repeat_all?N.player_repeat("single"):this.is_repeat_single?N.player_repeat("off"):N.player_repeat("all")}}},jY={class:"icon"};function qY(e,t,n,s,r,o){const i=$("mdicon");return z(),S("a",{class:Ae({"is-info":!o.is_repeat_off}),onClick:t[0]||(t[0]=(...a)=>o.toggle_repeat_mode&&o.toggle_repeat_mode(...a))},[l("span",jY,[v(i,{name:o.icon_name,size:n.icon_size,title:e.$t("player.button."+o.icon_name)},null,8,["name","size","title"])])],2)}var WY=re(UY,[["render",qY]]);const GY={name:"PlayerButtonSeekBack",props:{seek_ms:Number,icon_size:{type:Number,default:16}},computed:{now_playing(){return this.$store.getters.now_playing},is_stopped(){return this.$store.state.player.state==="stop"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||this.now_playing.data_kind==="pipe"},visible(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek(){this.disabled||N.player_seek(this.seek_ms*-1)}}},KY=["disabled"],ZY={class:"icon"};function YY(e,t,n,s,r,o){const i=$("mdicon");return o.visible?(z(),S("a",{key:0,disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.seek&&o.seek(...a))},[l("span",ZY,[v(i,{name:"rewind-10",size:n.icon_size,title:e.$t("player.button.seek-backward")},null,8,["size","title"])])],8,KY)):H("",!0)}var JY=re(GY,[["render",YY]]);const XY={name:"PlayerButtonSeekForward",props:{seek_ms:Number,icon_size:{type:Number,default:16}},computed:{now_playing(){return this.$store.getters.now_playing},is_stopped(){return this.$store.state.player.state==="stop"},disabled(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||this.now_playing.data_kind==="pipe"},visible(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek(){this.disabled||N.player_seek(this.seek_ms)}}},QY=["disabled"],eJ={class:"icon"};function tJ(e,t,n,s,r,o){const i=$("mdicon");return o.visible?(z(),S("a",{key:0,disabled:o.disabled,onClick:t[0]||(t[0]=(...a)=>o.seek&&o.seek(...a))},[l("span",eJ,[v(i,{name:"fast-forward-30",size:n.icon_size,title:e.$t("player.button.seek-forward")},null,8,["size","title"])])],8,QY)):H("",!0)}var nJ=re(XY,[["render",tJ]]);const sJ={name:"NavbarBottom",components:{NavbarItemLink:k1,NavbarItemOutput:vY,PlayerButtonPlayPause:kY,PlayerButtonNext:AY,PlayerButtonPrevious:IY,PlayerButtonShuffle:MY,PlayerButtonConsume:HY,PlayerButtonRepeat:WY,PlayerButtonSeekForward:nJ,PlayerButtonSeekBack:JY},data(){return{cursor:Gl,old_volume:0,playing:!1,loading:!1,stream_volume:10,show_outputs_menu:!1,show_desktop_outputs_menu:!1}},computed:{show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_burger_menu(){return this.$store.state.show_burger_menu},zindex(){return this.show_burger_menu?"z-index: 20":""},now_playing(){return this.$store.getters.now_playing},is_now_playing_page(){return this.$route.path==="/now-playing"},outputs(){return this.$store.state.outputs},player(){return this.$store.state.player},config(){return this.$store.state.config}},watch:{"$store.state.player.volume"(){this.player.volume>0&&(this.old_volume=this.player.volume)}},mounted(){this.setupAudio()},unmounted(){this.closeAudio()},methods:{on_click_outside_outputs(){this.show_outputs_menu=!1},change_volume(){N.player_volume(this.player.volume)},toggle_mute_volume(){this.player.volume=this.player.volume>0?0:this.old_volume,this.change_volume()},setupAudio(){const e=xo.setupAudio();e.addEventListener("waiting",t=>{this.playing=!1,this.loading=!0}),e.addEventListener("playing",t=>{this.playing=!0,this.loading=!1}),e.addEventListener("ended",t=>{this.playing=!1,this.loading=!1}),e.addEventListener("error",t=>{this.closeAudio(),this.$store.dispatch("add_notification",{text:this.$t("navigation.stream-error"),type:"danger"}),this.playing=!1,this.loading=!1})},closeAudio(){xo.stopAudio(),this.playing=!1},playChannel(){if(this.playing)return;const e="/stream.mp3";this.loading=!0,xo.playSource(e),xo.setVolume(this.stream_volume/100)},togglePlay(){if(!this.loading)return this.playing?this.closeAudio():this.playChannel()},change_stream_volume(){console.log(this.stream_volume),xo.setVolume(this.stream_volume/100)}}},rJ={class:"navbar-brand is-flex-grow-1"},oJ={class:"icon"},iJ={class:"is-clipped"},aJ={class:"is-size-7 fd-is-text-clipped"},lJ=["textContent"],uJ=l("br",null,null,-1),cJ=["textContent"],dJ=["textContent"],mJ={class:"icon"},fJ={class:"icon"},pJ={class:"navbar-dropdown is-right is-boxed",style:{"margin-right":"6px","margin-bottom":"6px","border-radius":"6px"}},hJ={class:"navbar-item"},_J={class:"level is-mobile"},gJ={class:"level-left is-flex-grow-1"},yJ={class:"level-item is-flex-grow-0"},vJ={class:"icon"},bJ={class:"level-item"},CJ=["textContent"],wJ=l("hr",{class:"fd-navbar-divider"},null,-1),zJ=l("hr",{class:"fd-navbar-divider"},null,-1),kJ={class:"navbar-item"},xJ={class:"level is-mobile"},EJ={class:"level-left is-flex-grow-1"},$J={class:"level-item is-flex-grow-0"},SJ={class:"level-item"},AJ={class:"is-flex-grow-1"},TJ=["textContent"],OJ={href:"stream.mp3",class:"ml-2",target:"_blank"},DJ={class:"icon"},PJ=["disabled"],IJ=l("hr",{class:"fd-navbar-divider"},null,-1),FJ={class:"navbar-item is-justify-content-center"},RJ={class:"level"},LJ={class:"level-item"},MJ={class:"buttons has-addons"},NJ=l("div",{class:"navbar-start"},null,-1),VJ={class:"navbar-end"},BJ={class:"navbar-item"},HJ={class:"buttons is-centered"},UJ=l("hr",{class:"fd-navbar-divider"},null,-1),jJ={class:"navbar-item"},qJ={class:"level is-mobile"},WJ={class:"level-left is-flex-grow-1"},GJ={class:"level-item is-flex-grow-0"},KJ={class:"icon"},ZJ={class:"level-item"},YJ={class:"is-flex-grow-1"},JJ=["textContent"],XJ=l("hr",{class:"fd-navbar-divider"},null,-1),QJ={class:"navbar-item mb-5"},eX={class:"level is-mobile"},tX={class:"level-left is-flex-grow-1"},nX={class:"level-item is-flex-grow-0"},sX={class:"level-item"},rX={class:"is-flex-grow-1"},oX=["textContent"],iX={href:"stream.mp3",class:"ml-2",target:"_blank"},aX={class:"icon"},lX=["disabled"];function uX(e,t,n,s,r,o){const i=$("mdicon"),a=$("navbar-item-link"),u=$("router-link"),c=$("player-button-previous"),d=$("player-button-seek-back"),f=$("player-button-play-pause"),m=$("player-button-seek-forward"),p=$("player-button-next"),h=$("navbar-item-output"),_=$("player-button-repeat"),w=$("player-button-shuffle"),b=$("player-button-consume");return z(),S("nav",{class:Ae(["fd-bottom-navbar navbar is-white is-fixed-bottom",{"is-transparent":o.is_now_playing_page,"is-dark":!o.is_now_playing_page}]),style:ln(o.zindex),role:"navigation","aria-label":"player controls"},[l("div",rJ,[v(a,{to:"/",exact:""},{default:E(()=>[l("span",oJ,[v(i,{name:"playlist-play",size:"24"})])]),_:1}),o.is_now_playing_page?H("",!0):(z(),be(u,{key:0,to:"/now-playing",class:"navbar-item is-expanded is-clipped","active-class":"is-active",exact:""},{default:E(()=>[l("div",iJ,[l("p",aJ,[l("strong",{textContent:g(o.now_playing.title)},null,8,lJ),uJ,l("span",{textContent:g(o.now_playing.artist)},null,8,cJ),o.now_playing.data_kind==="url"?(z(),S("span",{key:0,textContent:g(e.$t("navigation.now-playing",{album:o.now_playing.album}))},null,8,dJ)):H("",!0)])])]),_:1})),o.is_now_playing_page?(z(),be(c,{key:1,class:"navbar-item ml-auto",icon_size:24})):H("",!0),o.is_now_playing_page?(z(),be(d,{key:2,seek_ms:1e4,class:"navbar-item",icon_size:24})):H("",!0),v(f,{class:"navbar-item",icon_size:36,show_disabled_message:""}),o.is_now_playing_page?(z(),be(m,{key:3,seek_ms:3e4,class:"navbar-item",icon_size:24})):H("",!0),o.is_now_playing_page?(z(),be(p,{key:4,class:"navbar-item",icon_size:24})):H("",!0),l("a",{class:"navbar-item ml-auto is-hidden-desktop",onClick:t[0]||(t[0]=y=>o.show_player_menu=!o.show_player_menu)},[l("span",mJ,[v(i,{name:o.show_player_menu?"chevron-down":"chevron-up",size:"18"},null,8,["name"])])]),l("div",{class:Ae(["navbar-item has-dropdown has-dropdown-up ml-auto is-hidden-touch",{"is-active":o.show_player_menu}])},[l("a",{class:"navbar-link is-arrowless",onClick:t[1]||(t[1]=y=>o.show_player_menu=!o.show_player_menu)},[l("span",fJ,[v(i,{name:o.show_player_menu?"chevron-down":"chevron-up",size:"18"},null,8,["name"])])]),l("div",pJ,[l("div",hJ,[l("div",_J,[l("div",gJ,[l("div",yJ,[l("a",{class:"button is-white is-small",onClick:t[2]||(t[2]=(...y)=>o.toggle_mute_volume&&o.toggle_mute_volume(...y))},[l("span",vJ,[v(i,{name:o.player.volume>0?"volume-high":"volume-off",size:"18"},null,8,["name"])])])]),l("div",bJ,[l("div",null,[l("p",{class:"heading",textContent:g(e.$t("navigation.volume"))},null,8,CJ),dt(l("input",{"onUpdate:modelValue":t[3]||(t[3]=y=>o.player.volume=y),class:"slider",max:"100",type:"range",style:ln({"--ratio":o.player.volume/100}),onChange:t[4]||(t[4]=(...y)=>o.change_volume&&o.change_volume(...y))},null,36),[[It,o.player.volume]])])])])])]),wJ,(z(!0),S(Oe,null,ht(o.outputs,y=>(z(),be(h,{key:y.id,output:y},null,8,["output"]))),128)),zJ,l("div",kJ,[l("div",xJ,[l("div",EJ,[l("div",$J,[l("a",{class:Ae(["button is-white is-small",{"is-loading":r.loading}])},[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!r.playing&&!r.loading,"is-loading":r.loading}]),onClick:t[5]||(t[5]=(...y)=>o.togglePlay&&o.togglePlay(...y))},[v(i,{name:"broadcast",size:"18"})],2)],2)]),l("div",SJ,[l("div",AJ,[l("p",{class:Ae(["heading",{"has-text-grey-light":!r.playing}])},[l("span",{textContent:g(e.$t("navigation.stream"))},null,8,TJ),l("a",OJ,[l("span",DJ,[v(i,{name:"open-in-new",size:"16",style:{"vertical-align":"middle"}})])])],2),dt(l("input",{"onUpdate:modelValue":t[6]||(t[6]=y=>r.stream_volume=y),disabled:!r.playing,class:Ae(["slider",{"is-inactive":!r.playing}]),max:"100",type:"range",style:ln({"--ratio":r.stream_volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[7]||(t[7]=(...y)=>o.change_stream_volume&&o.change_stream_volume(...y))},null,46,PJ),[[It,r.stream_volume]])])])])])]),IJ,l("div",FJ,[l("div",RJ,[l("div",LJ,[l("div",MJ,[v(_,{class:"button"}),v(w,{class:"button"}),v(b,{class:"button"})])])])])])],2)]),l("div",{class:Ae(["navbar-menu is-hidden-desktop",{"is-active":o.show_player_menu}])},[NJ,l("div",VJ,[l("div",BJ,[l("div",HJ,[v(_,{class:"button",icon_size:18}),v(w,{class:"button",icon_size:18}),v(b,{class:"button",icon_size:18})])]),UJ,l("div",jJ,[l("div",qJ,[l("div",WJ,[l("div",GJ,[l("a",{class:"button is-white is-small",onClick:t[8]||(t[8]=(...y)=>o.toggle_mute_volume&&o.toggle_mute_volume(...y))},[l("span",KJ,[v(i,{name:o.player.volume>0?"volume-high":"volume-off",size:"18"},null,8,["name"])])])]),l("div",ZJ,[l("div",YJ,[l("p",{class:"heading",textContent:g(e.$t("navigation.volume"))},null,8,JJ),dt(l("input",{"onUpdate:modelValue":t[9]||(t[9]=y=>o.player.volume=y),class:"slider",max:"100",type:"range",style:ln({"--ratio":o.player.volume}),onChange:t[10]||(t[10]=(...y)=>o.change_volume&&o.change_volume(...y))},null,36),[[It,o.player.volume]])])])])])]),(z(!0),S(Oe,null,ht(o.outputs,y=>(z(),be(h,{key:y.id,output:y},null,8,["output"]))),128)),XJ,l("div",QJ,[l("div",eX,[l("div",tX,[l("div",nX,[l("a",{class:Ae(["button is-white is-small",{"is-loading":r.loading}])},[l("span",{class:Ae(["icon is-clickable",{"has-text-grey-light":!r.playing&&!r.loading,"is-loading":r.loading}]),onClick:t[11]||(t[11]=(...y)=>o.togglePlay&&o.togglePlay(...y))},[v(i,{name:"radio-tower",size:"16"})],2)],2)]),l("div",sX,[l("div",rX,[l("p",{class:Ae(["heading",{"has-text-grey-light":!r.playing}])},[l("span",{textContent:g(e.$t("navigation.stream"))},null,8,oX),l("a",iX,[l("span",aX,[v(i,{name:"open-in-new",size:"16",style:{"vertical-align":"middle"}})])])],2),dt(l("input",{"onUpdate:modelValue":t[12]||(t[12]=y=>r.stream_volume=y),disabled:!r.playing,class:Ae(["slider",{"is-inactive":!r.playing}]),max:"100",type:"range",style:ln({"--ratio":r.stream_volume/100,"--cursor":e.$filters.cursor(this.cursor)}),onChange:t[13]||(t[13]=(...y)=>o.change_stream_volume&&o.change_stream_volume(...y))},null,46,lX),[[It,r.stream_volume]])])])])])])])],2)],6)}var cX=re(sJ,[["render",uX]]);const dX={name:"NotificationList",components:{},data(){return{showNav:!1}},computed:{notifications(){return this.$store.state.notifications.list}},methods:{remove(e){this.$store.commit(yc,e)}}},mX={key:0,class:"fd-notifications"},fX={class:"columns is-centered"},pX={class:"column is-half"},hX=["onClick"],_X=["textContent"];function gX(e,t,n,s,r,o){return o.notifications.length>0?(z(),S("section",mX,[l("div",fX,[l("div",pX,[(z(!0),S(Oe,null,ht(o.notifications,i=>(z(),S("div",{key:i.id,class:Ae(["notification has-shadow",["notification",i.type?`is-${i.type}`:""]])},[l("button",{class:"delete",onClick:a=>o.remove(i)},null,8,hX),l("span",{textContent:g(i.text)},null,8,_X)],2))),128))])])])):H("",!0)}var yX=re(dX,[["render",gX]]);const vX={name:"ModalDialogRemotePairing",props:["show"],emits:["close"],data(){return{pairing_req:{pin:""}}},computed:{pairing(){return this.$store.state.pairing}},watch:{show(){this.show&&(this.loading=!1,setTimeout(()=>{this.$refs.pin_field.focus()},10))}},methods:{kickoff_pairing(){N.pairing_kickoff(this.pairing_req).then(()=>{this.pairing_req.pin=""})}}},bX={key:0,class:"modal is-active"},CX={class:"modal-content fd-modal-card"},wX={class:"card"},zX={class:"card-content"},kX=["textContent"],xX=["textContent"],EX={class:"field"},$X={class:"control"},SX={class:"card-footer"},AX={class:"icon"},TX=["textContent"],OX={class:"icon"},DX=["textContent"];function PX(e,t,n,s,r,o){const i=$("mdicon");return z(),S("div",null,[v(Ft,{name:"fade"},{default:E(()=>[n.show?(z(),S("div",bX,[l("div",{class:"modal-background",onClick:t[0]||(t[0]=a=>e.$emit("close"))}),l("div",CX,[l("div",wX,[l("div",zX,[l("p",{class:"title is-4",textContent:g(e.$t("dialog.remote-pairing.title"))},null,8,kX),l("form",{onSubmit:t[2]||(t[2]=it((...a)=>o.kickoff_pairing&&o.kickoff_pairing(...a),["prevent"]))},[l("label",{class:"label",textContent:g(o.pairing.remote)},null,8,xX),l("div",EX,[l("div",$X,[dt(l("input",{ref:"pin_field","onUpdate:modelValue":t[1]||(t[1]=a=>r.pairing_req.pin=a),class:"input",type:"text",placeholder:"Enter pairing code"},null,512),[[It,r.pairing_req.pin]])])])],32)]),l("footer",SX,[l("a",{class:"card-footer-item has-text-danger",onClick:t[3]||(t[3]=a=>e.$emit("close"))},[l("span",AX,[v(i,{name:"cancel",size:"16"})]),l("span",{class:"is-size-7",textContent:g(e.$t("dialog.remote-pairing.cancel"))},null,8,TX)]),l("a",{class:"card-footer-item has-background-info has-text-white has-text-weight-bold",onClick:t[4]||(t[4]=(...a)=>o.kickoff_pairing&&o.kickoff_pairing(...a))},[l("span",OX,[v(i,{name:"cellphone",size:"16"})]),l("span",{class:"is-size-7",textContent:g(e.$t("dialog.remote-pairing.pair"))},null,8,DX)])])])]),l("button",{class:"modal-close is-large","aria-label":"close",onClick:t[5]||(t[5]=a=>e.$emit("close"))})])):H("",!0)]),_:1})])}var IX=re(vX,[["render",PX]]);const FX={name:"ModalDialogUpdate",components:{ModalDialog:Xd},props:["show"],emits:["close"],data(){return{rescan_metadata:!1}},computed:{library(){return this.$store.state.library},rss(){return this.$store.state.rss_count},spotify_enabled(){return this.$store.state.spotify.webapi_token_valid},update_dialog_scan_kind:{get(){return this.$store.state.update_dialog_scan_kind},set(e){this.$store.commit(Ld,e)}}},methods:{update_library(){this.rescan_metadata?N.library_rescan(this.update_dialog_scan_kind):N.library_update(this.update_dialog_scan_kind)},close(){this.update_dialog_scan_kind="",this.$emit("close")}}},RX={key:0},LX=["textContent"],MX={key:0,class:"field"},NX={class:"control"},VX={class:"select is-small"},BX=["textContent"],HX=["textContent"],UX=["textContent"],jX=["textContent"],qX={class:"field"},WX={class:"checkbox is-size-7 is-small"},GX=["textContent"],KX={key:1},ZX=["textContent"];function YX(e,t,n,s,r,o){const i=$("modal-dialog");return z(),be(i,{show:n.show,title:e.$t("dialog.update.title"),ok_action:o.library.updating?"":e.$t("dialog.update.rescan"),close_action:e.$t("dialog.update.cancel"),onOk:o.update_library,onClose:t[2]||(t[2]=a=>o.close())},{"modal-content":E(()=>[o.library.updating?(z(),S("div",KX,[l("p",{class:"mb-3",textContent:g(e.$t("dialog.update.progress"))},null,8,ZX)])):(z(),S("div",RX,[l("p",{class:"mb-3",textContent:g(e.$t("dialog.update.info"))},null,8,LX),o.spotify_enabled||o.rss.tracks>0?(z(),S("div",MX,[l("div",NX,[l("div",VX,[dt(l("select",{"onUpdate:modelValue":t[0]||(t[0]=a=>o.update_dialog_scan_kind=a)},[l("option",{value:"",textContent:g(e.$t("dialog.update.all"))},null,8,BX),l("option",{value:"files",textContent:g(e.$t("dialog.update.local"))},null,8,HX),o.spotify_enabled?(z(),S("option",{key:0,value:"spotify",textContent:g(e.$t("dialog.update.spotify"))},null,8,UX)):H("",!0),o.rss.tracks>0?(z(),S("option",{key:1,value:"rss",textContent:g(e.$t("dialog.update.feeds"))},null,8,jX)):H("",!0)],512),[[Cd,o.update_dialog_scan_kind]])])])])):H("",!0),l("div",qX,[l("label",WX,[dt(l("input",{"onUpdate:modelValue":t[1]||(t[1]=a=>r.rescan_metadata=a),type:"checkbox",style:{"margin-right":"5px"}},null,512),[[gs,r.rescan_metadata]]),l("span",{textContent:g(e.$t("dialog.update.rescan-metadata"))},null,8,GX)])])]))]),_:1},8,["show","title","ok_action","close_action","onOk"])}var JX=re(FX,[["render",YX]]),x1={exports:{}};(function(e){(function(t,n){e.exports?e.exports=n():t.ReconnectingWebSocket=n()})(Qt,function(){if(!("WebSocket"in window))return;function t(n,s,r){var o={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3,maxReconnectAttempts:null};r||(r={});for(var i in o)typeof r[i]!="undefined"?this[i]=r[i]:this[i]=o[i];this.url=n,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var a=this,u,c=!1,d=!1,f=document.createElement("div");f.addEventListener("open",function(p){a.onopen(p)}),f.addEventListener("close",function(p){a.onclose(p)}),f.addEventListener("connecting",function(p){a.onconnecting(p)}),f.addEventListener("message",function(p){a.onmessage(p)}),f.addEventListener("error",function(p){a.onerror(p)}),this.addEventListener=f.addEventListener.bind(f),this.removeEventListener=f.removeEventListener.bind(f),this.dispatchEvent=f.dispatchEvent.bind(f);function m(p,h){var _=document.createEvent("CustomEvent");return _.initCustomEvent(p,!1,!1,h),_}this.open=function(p){if(u=new WebSocket(a.url,s||[]),p){if(this.maxReconnectAttempts&&this.reconnectAttempts>this.maxReconnectAttempts)return}else f.dispatchEvent(m("connecting")),this.reconnectAttempts=0;(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",a.url);var h=u,_=setTimeout(function(){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),d=!0,h.close(),d=!1},a.timeoutInterval);u.onopen=function(w){clearTimeout(_),(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onopen",a.url),a.protocol=u.protocol,a.readyState=WebSocket.OPEN,a.reconnectAttempts=0;var b=m("open");b.isReconnect=p,p=!1,f.dispatchEvent(b)},u.onclose=function(w){if(clearTimeout(y),u=null,c)a.readyState=WebSocket.CLOSED,f.dispatchEvent(m("close"));else{a.readyState=WebSocket.CONNECTING;var b=m("connecting");b.code=w.code,b.reason=w.reason,b.wasClean=w.wasClean,f.dispatchEvent(b),!p&&!d&&((a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),f.dispatchEvent(m("close")));var y=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},y>a.maxReconnectInterval?a.maxReconnectInterval:y)}},u.onmessage=function(w){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",a.url,w.data);var b=m("message");b.data=w.data,f.dispatchEvent(b)},u.onerror=function(w){(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","onerror",a.url,w),f.dispatchEvent(m("error"))}},this.automaticOpen==!0&&this.open(!1),this.send=function(p){if(u)return(a.debug||t.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,p),u.send(p);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(p,h){typeof p=="undefined"&&(p=1e3),c=!0,u&&u.close(p,h)},this.refresh=function(){u&&u.close()}}return t.prototype.onopen=function(n){},t.prototype.onclose=function(n){},t.prototype.onconnecting=function(n){},t.prototype.onmessage=function(n){},t.prototype.onerror=function(n){},t.debugAll=!1,t.CONNECTING=WebSocket.CONNECTING,t.OPEN=WebSocket.OPEN,t.CLOSING=WebSocket.CLOSING,t.CLOSED=WebSocket.CLOSED,t})})(x1);var XX=x1.exports;const QX={name:"App",components:{NavbarTop:aY,NavbarBottom:cX,NotificationList:yX,ModalDialogRemotePairing:IX,ModalDialogUpdate:JX},data(){return{token_timer_id:0,reconnect_attempts:0,pairing_active:!1}},computed:{show_burger_menu:{get(){return this.$store.state.show_burger_menu},set(e){this.$store.commit(Gr,e)}},show_player_menu:{get(){return this.$store.state.show_player_menu},set(e){this.$store.commit(Kr,e)}},show_update_dialog:{get(){return this.$store.state.show_update_dialog},set(e){this.$store.commit(wi,e)}}},watch:{show_burger_menu(){this.update_is_clipped()},show_player_menu(){this.update_is_clipped()}},created(){this.connect(),this.$Progress.start(),this.$router.beforeEach((e,t,n)=>{if(e.meta.show_progress){if(e.meta.progress!==void 0){const s=e.meta.progress;this.$Progress.parseMeta(s)}this.$Progress.start()}n()}),this.$router.afterEach((e,t)=>{e.meta.show_progress&&this.$Progress.finish()})},methods:{connect(){N.config().then(({data:e})=>{this.$store.commit(pg,e),this.$store.commit(Ml,e.hide_singles),document.title=e.library_name,this.open_ws(),this.$Progress.finish()}).catch(()=>{this.$store.dispatch("add_notification",{text:this.$t("server.connection-failed"),type:"danger",topic:"connection"})})},open_ws(){if(this.$store.state.config.websocket_port<=0){this.$store.dispatch("add_notification",{text:this.$t("server.missing-port"),type:"danger"});return}const e=this;let t="ws://";window.location.protocol==="https:"&&(t="wss://");let n=t+window.location.hostname+":"+e.$store.state.config.websocket_port;const s=new XX(n,"notify",{reconnectInterval:1e3,maxReconnectInterval:2e3});s.onopen=function(){e.reconnect_attempts=0,s.send(JSON.stringify({notify:["update","database","player","options","outputs","volume","queue","spotify","lastfm","pairing"]})),e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing()},s.onclose=function(){};var r=!1;function o(){r||(e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing(),r=!0,setTimeout(()=>{r=!1},500))}window.addEventListener("focus",o),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&o()}),s.onmessage=function(i){const a=JSON.parse(i.data);(a.notify.includes("update")||a.notify.includes("database"))&&e.update_library_stats(),(a.notify.includes("player")||a.notify.includes("options")||a.notify.includes("volume"))&&e.update_player_status(),(a.notify.includes("outputs")||a.notify.includes("volume"))&&e.update_outputs(),a.notify.includes("queue")&&e.update_queue(),a.notify.includes("spotify")&&e.update_spotify(),a.notify.includes("lastfm")&&e.update_lastfm(),a.notify.includes("pairing")&&e.update_pairing()}},update_library_stats(){N.library_stats().then(({data:e})=>{this.$store.commit(_g,e)}),N.library_count("media_kind is audiobook").then(({data:e})=>{this.$store.commit(gg,e)}),N.library_count("media_kind is podcast").then(({data:e})=>{this.$store.commit(yg,e)}),N.library_count("scan_kind is rss").then(({data:e})=>{this.$store.commit(vg,e)})},update_outputs(){N.outputs().then(({data:e})=>{this.$store.commit(bg,e.outputs)})},update_player_status(){N.player_status().then(({data:e})=>{this.$store.commit(Dd,e)})},update_queue(){N.queue().then(({data:e})=>{this.$store.commit(Cg,e)})},update_settings(){N.settings().then(({data:e})=>{this.$store.commit(hg,e)})},update_lastfm(){N.lastfm().then(({data:e})=>{this.$store.commit(wg,e)})},update_spotify(){N.spotify().then(({data:e})=>{this.$store.commit(zg,e),this.token_timer_id>0&&(window.clearTimeout(this.token_timer_id),this.token_timer_id=0),e.webapi_token_expires_in>0&&e.webapi_token&&(this.token_timer_id=window.setTimeout(this.update_spotify,1e3*e.webapi_token_expires_in))})},update_pairing(){N.pairing().then(({data:e})=>{this.$store.commit(kg,e),this.pairing_active=e.active})},update_is_clipped(){this.show_burger_menu||this.show_player_menu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")}},template:""},eQ={id:"app"};function tQ(e,t,n,s,r,o){const i=$("navbar-top"),a=$("vue-progress-bar"),u=$("router-view"),c=$("modal-dialog-remote-pairing"),d=$("modal-dialog-update"),f=$("notification-list"),m=$("navbar-bottom");return z(),S("div",eQ,[v(i),v(a,{class:"fd-progress-bar"}),v(u,null,{default:E(({Component:p})=>[(z(),be(Kh(p)))]),_:1}),v(c,{show:r.pairing_active,onClose:t[0]||(t[0]=p=>r.pairing_active=!1)},null,8,["show"]),v(d,{show:o.show_update_dialog,onClose:t[1]||(t[1]=p=>o.show_update_dialog=!1)},null,8,["show"]),dt(v(f,null,null,512),[[ui,!o.show_burger_menu]]),v(m),dt(l("div",{class:"fd-overlay-fullscreen",onClick:t[2]||(t[2]=p=>o.show_burger_menu=o.show_player_menu=!1)},null,512),[[ui,o.show_burger_menu||o.show_player_menu]])])}var nQ=re(QX,[["render",tQ]]);const E1=R_(nQ).use(Ke).use(yv).use(WW,{color:"hsl(204, 86%, 53%)",failedColor:"red",height:"1px"}).use(KW).use(iG,{log:!1}).use(aG).use(hG,{icons:_Z}).use(Fl);E1.config.globalProperties.$filters=hZ;E1.mount("#app");