@skyloft/windvane 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +45 -0
  2. package/dist/components/Badge.vue.d.ts +20 -0
  3. package/dist/components/Button.vue.d.ts +31 -0
  4. package/dist/components/ButtonToggle.vue.d.ts +15 -0
  5. package/dist/components/Card.vue.d.ts +22 -0
  6. package/dist/components/Checkbox.vue.d.ts +30 -0
  7. package/dist/components/Date.vue.d.ts +15 -0
  8. package/dist/components/DateHelpers.d.ts +3 -0
  9. package/dist/components/Dialog.vue.d.ts +43 -0
  10. package/dist/components/EllipsisText.vue.d.ts +17 -0
  11. package/dist/components/ExpansionItem.vue.d.ts +40 -0
  12. package/dist/components/Fab.vue.d.ts +26 -0
  13. package/dist/components/FabAction.vue.d.ts +12 -0
  14. package/dist/components/Header.vue.d.ts +17 -0
  15. package/dist/components/Icon.vue.d.ts +12 -0
  16. package/dist/components/Input.vue.d.ts +50 -0
  17. package/dist/components/MathOperationButtons.vue.d.ts +24 -0
  18. package/dist/components/NavMenu.vue.d.ts +20 -0
  19. package/dist/components/PullToRefresh.vue.d.ts +17 -0
  20. package/dist/components/ScrollArea.vue.d.ts +25 -0
  21. package/dist/components/Select.vue.d.ts +20 -0
  22. package/dist/components/SlideItem.vue.d.ts +36 -0
  23. package/dist/components/Spinner.vue.d.ts +7 -0
  24. package/dist/components/Stepper.vue.d.ts +20 -0
  25. package/dist/components/StepperStep.vue.d.ts +20 -0
  26. package/dist/components/Tab.vue.d.ts +22 -0
  27. package/dist/components/Tabs.vue.d.ts +25 -0
  28. package/dist/components/TestComponent.vue.d.ts +20 -0
  29. package/dist/components/Tooltip.vue.d.ts +2 -0
  30. package/dist/components/TouchNumberInput.vue.d.ts +39 -0
  31. package/dist/components/TransitionGroupFadeSlide.vue.d.ts +24 -0
  32. package/dist/index.d.ts +30 -0
  33. package/dist/windvane-vue.es.js +6780 -0
  34. package/dist/windvane-vue.umd.js +2 -0
  35. package/dist/windvane.css +1 -0
  36. package/package.json +65 -0
@@ -0,0 +1,2 @@
1
+ (function(T,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],s):(T=typeof globalThis<"u"?globalThis:T||self,s(T.Windvane={},T.Vue))})(this,function(T,s){"use strict";const er=s.defineComponent({__name:"TestComponent",props:{buttonKey:{}},setup(n){const e=n,t=s.ref(0),r=()=>{console.log("Click!",e.buttonKey),t.value++,console.log("DOne!")};return(i,o)=>(s.openBlock(),s.createElementBlock("button",{onClick:r},[s.renderSlot(i.$slots,"default"),s.createTextVNode(" "+s.toDisplayString(t.value),1)]))}}),kt=s.defineComponent({__name:"Badge",props:{dense:{type:Boolean}},setup(n){return(e,t)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"bg-primary/90 whitespace-nowrap color-white rounded px-1 font-semibold":!0,"text-xs":e.dense,"text-sm":!e.dense})},[s.renderSlot(e.$slots,"default")],2))}}),Oe=s.defineComponent({__name:"Icon",props:{name:{},className:{default:""},fontSize:{default:"1em"},size:{},color:{}},setup(n){const e=n,t=s.computed(()=>e.size?e.size:e.fontSize);return(r,i)=>e.name?(s.openBlock(),s.createElementBlock("span",{key:0,style:s.normalizeStyle(`font-size: ${s.unref(t)} !important;`),class:s.normalizeClass({"text-primary":r.color==="primary","material-icons material-symbols-outlined select-none":!0,[e.className]:!0})},s.toDisplayString(e.name),7)):s.createCommentVNode("",!0)}}),tr=["disabled"],q=s.defineComponent({__name:"Button",props:{icon:{},size:{},iconSize:{default:"1em"},readonly:{type:Boolean,default:!1},flat:{type:Boolean},round:{type:Boolean},color:{},disable:{type:Boolean},label:{}},setup(n){return(e,t)=>{const r=s.resolveDirective("ripple");return s.withDirectives((s.openBlock(),s.createElementBlock("button",{disabled:e.readonly||e.disable,class:s.normalizeClass({"relative rounded flex items-center justify-center text-center gap-2 font-medium text-sm":!0,[e.color||"text-white"]:!0,"bg-primary":!e.flat,"bg-transparent":e.flat,"opacity-70 cursor-not-allowed":e.readonly||e.disable,"cursor-pointer":!e.readonly&&!e.disable,"rounded-full aspect-square p-2":e.round,"py-2 px-4":!e.round})},[e.icon?(s.openBlock(),s.createBlock(Oe,{key:0,name:e.icon,"font-size":e.iconSize},null,8,["name","font-size"])):s.createCommentVNode("",!0),s.renderSlot(e.$slots,"default",{},()=>[s.createTextVNode(s.toDisplayString(e.label),1)])],10,tr)),[[r]])}}}),nr=["onClick"],rr=s.defineComponent({__name:"ButtonToggle",props:{options:{},vertical:{type:Boolean},modelValue:{},togglable:{type:Boolean}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(t.modelValue),o=s.computed(()=>"border-primary border py-2 px-4"),a=s.computed(()=>"bg-primary"),l=d=>d===0?"border-r-0 rounded-l":d<t.options.length-1?"border-l-0 border-r-0":"border-l-0 rounded-r",c=d=>d===0?"border-b-0 rounded-t":d<t.options.length-1?"border-t-0 border-b-0":"border-t-0 rounded-b",u=d=>{t.togglable&&i.value===d?i.value=null:i.value=d};return s.watch(()=>t.modelValue,d=>{i.value=d}),s.watch(()=>i.value,d=>{r("update:modelValue",d)}),(d,y)=>{const p=s.resolveDirective("ripple");return s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"flex flex-nowrap":!0,"flex-col":d.vertical})},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(d.options,(h,m)=>s.withDirectives((s.openBlock(),s.createElementBlock("button",{key:h.value,class:s.normalizeClass({"relative focus-visible:outline-none transition-all uppercase tracking-wide":!0,"font-medium text-sm flex-grow cursor-pointer":!0,[s.unref(o)]:!0,[l(m)]:!d.vertical,[c(m)]:!!d.vertical,[s.unref(a)]:h.value===s.unref(i)}),onClick:V=>u(h.value)},[s.createTextVNode(s.toDisplayString(h.label),1)],10,nr)),[[p]])),128))],2)}}}),sr={class:"rounded bg-card shadow-lg"},ir=s.defineComponent({__name:"Card",props:{withTitleBorder:{type:Boolean},unpadded:{type:Boolean}},setup(n){const e=s.useSlots();return(t,r)=>(s.openBlock(),s.createElementBlock("div",sr,[s.unref(e).title?(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass({"text-lg font-semibold pb-4 p-6":!0,"border-b border-b-gray-500":t.withTitleBorder})},[s.renderSlot(t.$slots,"title")],2)):s.createCommentVNode("",!0),s.unref(e).default?(s.openBlock(),s.createElementBlock("div",{key:1,class:s.normalizeClass({"p-6":!t.unpadded})},[s.renderSlot(t.$slots,"default")],2)):s.createCommentVNode("",!0)]))}}),or={key:0,class:"h-[70%] w-[70%] bg-primary absolute z-0 pointer-events-none",style:{left:"15%"}},ar=s.defineComponent({__name:"Checkbox",props:{modelValue:{type:[Boolean,null]},threeState:{type:Boolean,default:!1},size:{default:"1em"},label:{}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(!1),o=()=>{t.threeState&&i.value===null?i.value=!1:i.value=!i.value};return s.watch(()=>t.modelValue,()=>{i.value=t.modelValue},{immediate:!0}),s.watch(()=>i.value,()=>r("update:modelValue",i.value)),(a,l)=>(s.openBlock(),s.createElementBlock("div",{class:"cursor-pointer flex items-center gap-1",onClick:o},[s.createElementVNode("div",{class:s.normalizeClass({"flex items-center gap-2 text-2xl relative justify-center":!0,[`w-[${a.size}] h-[${a.size}]`]:!0})},[i.value?(s.openBlock(),s.createElementBlock("div",or)):s.createCommentVNode("",!0),i.value?(s.openBlock(),s.createBlock(Oe,{key:1,"font-size":a.size||"1em","class-name":"absolute z-10 text-white",name:"check",style:{transform:"scale(80%)"}},null,8,["font-size"])):s.createCommentVNode("",!0),s.createVNode(Oe,{"font-size":a.size||"1em",name:"check_box_outline_blank","class-name":i.value?"text-green-600":""},null,8,["font-size","class-name"])],2),s.renderSlot(a.$slots,"default",{},()=>[s.createTextVNode(s.toDisplayString(a.label),1)])]))}});class K extends Error{}class lr extends K{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class cr extends K{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class ur extends K{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class ne extends K{}class Tt extends K{constructor(e){super(`Invalid unit ${e}`)}}class $ extends K{}class Y extends K{constructor(){super("Zone is an abstract class")}}const f="numeric",L="short",F="long",Ve={year:f,month:f,day:f},bt={year:f,month:L,day:f},dr={year:f,month:L,day:f,weekday:L},St={year:f,month:F,day:f},Nt={year:f,month:F,day:f,weekday:F},Ct={hour:f,minute:f},Et={hour:f,minute:f,second:f},Ot={hour:f,minute:f,second:f,timeZoneName:L},Vt={hour:f,minute:f,second:f,timeZoneName:F},Dt={hour:f,minute:f,hourCycle:"h23"},Mt={hour:f,minute:f,second:f,hourCycle:"h23"},xt={hour:f,minute:f,second:f,hourCycle:"h23",timeZoneName:L},It={hour:f,minute:f,second:f,hourCycle:"h23",timeZoneName:F},$t={year:f,month:f,day:f,hour:f,minute:f},_t={year:f,month:f,day:f,hour:f,minute:f,second:f},Bt={year:f,month:L,day:f,hour:f,minute:f},Ft={year:f,month:L,day:f,hour:f,minute:f,second:f},fr={year:f,month:L,day:f,weekday:L,hour:f,minute:f},zt={year:f,month:F,day:f,hour:f,minute:f,timeZoneName:L},Wt={year:f,month:F,day:f,hour:f,minute:f,second:f,timeZoneName:L},vt={year:f,month:F,day:f,weekday:F,hour:f,minute:f,timeZoneName:F},Lt={year:f,month:F,day:f,weekday:F,hour:f,minute:f,second:f,timeZoneName:F};class he{get type(){throw new Y}get name(){throw new Y}get ianaName(){return this.name}get isUniversal(){throw new Y}offsetName(e,t){throw new Y}formatOffset(e,t){throw new Y}offset(e){throw new Y}equals(e){throw new Y}get isValid(){throw new Y}}let qe=null;class De extends he{static get instance(){return qe===null&&(qe=new De),qe}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:r}){return fn(e,t,r)}formatOffset(e,t){return we(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}}const He=new Map;function mr(n){let e=He.get(n);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:n,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),He.set(n,e)),e}const hr={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function pr(n,e){const t=n.format(e).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(t),[,i,o,a,l,c,u,d]=r;return[a,i,o,l,c,u,d]}function yr(n,e){const t=n.formatToParts(e),r=[];for(let i=0;i<t.length;i++){const{type:o,value:a}=t[i],l=hr[o];o==="era"?r[l]=a:w(l)||(r[l]=parseInt(a,10))}return r}const Ye=new Map;class H extends he{static create(e){let t=Ye.get(e);return t===void 0&&Ye.set(e,t=new H(e)),t}static resetCache(){Ye.clear(),He.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=H.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:r}){return fn(e,t,r,this.name)}formatOffset(e,t){return we(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const r=mr(this.name);let[i,o,a,l,c,u,d]=r.formatToParts?yr(r,t):pr(r,t);l==="BC"&&(i=-Math.abs(i)+1);const p=_e({year:i,month:o,day:a,hour:c===24?0:c,minute:u,second:d,millisecond:0});let h=+t;const m=h%1e3;return h-=m>=0?m:1e3+m,(p-h)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}}let At={};function gr(n,e={}){const t=JSON.stringify([n,e]);let r=At[t];return r||(r=new Intl.ListFormat(n,e),At[t]=r),r}const Pe=new Map;function Ge(n,e={}){const t=JSON.stringify([n,e]);let r=Pe.get(t);return r===void 0&&(r=new Intl.DateTimeFormat(n,e),Pe.set(t,r)),r}const je=new Map;function wr(n,e={}){const t=JSON.stringify([n,e]);let r=je.get(t);return r===void 0&&(r=new Intl.NumberFormat(n,e),je.set(t,r)),r}const Je=new Map;function kr(n,e={}){const{base:t,...r}=e,i=JSON.stringify([n,r]);let o=Je.get(i);return o===void 0&&(o=new Intl.RelativeTimeFormat(n,e),Je.set(i,o)),o}let pe=null;function Tr(){return pe||(pe=new Intl.DateTimeFormat().resolvedOptions().locale,pe)}const Ke=new Map;function Zt(n){let e=Ke.get(n);return e===void 0&&(e=new Intl.DateTimeFormat(n).resolvedOptions(),Ke.set(n,e)),e}const Qe=new Map;function br(n){let e=Qe.get(n);if(!e){const t=new Intl.Locale(n);e="getWeekInfo"in t?t.getWeekInfo():t.weekInfo,"minimalDays"in e||(e={...Ut,...e}),Qe.set(n,e)}return e}function Sr(n){const e=n.indexOf("-x-");e!==-1&&(n=n.substring(0,e));const t=n.indexOf("-u-");if(t===-1)return[n];{let r,i;try{r=Ge(n).resolvedOptions(),i=n}catch{const c=n.substring(0,t);r=Ge(c).resolvedOptions(),i=c}const{numberingSystem:o,calendar:a}=r;return[i,o,a]}}function Nr(n,e,t){return(t||e)&&(n.includes("-u-")||(n+="-u"),t&&(n+=`-ca-${t}`),e&&(n+=`-nu-${e}`)),n}function Cr(n){const e=[];for(let t=1;t<=12;t++){const r=k.utc(2009,t,1);e.push(n(r))}return e}function Er(n){const e=[];for(let t=1;t<=7;t++){const r=k.utc(2016,11,13+t);e.push(n(r))}return e}function Me(n,e,t,r){const i=n.listingMode();return i==="error"?null:i==="en"?t(e):r(e)}function Or(n){return n.numberingSystem&&n.numberingSystem!=="latn"?!1:n.numberingSystem==="latn"||!n.locale||n.locale.startsWith("en")||Zt(n.locale).numberingSystem==="latn"}class Vr{constructor(e,t,r){this.padTo=r.padTo||0,this.floor=r.floor||!1;const{padTo:i,floor:o,...a}=r;if(!t||Object.keys(a).length>0){const l={useGrouping:!1,...r};r.padTo>0&&(l.minimumIntegerDigits=r.padTo),this.inf=wr(e,l)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}else{const t=this.floor?Math.floor(e):at(e,3);return M(t,this.padTo)}}}class Dr{constructor(e,t,r){this.opts=r,this.originalZone=void 0;let i;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){const a=-1*(e.offset/60),l=a>=0?`Etc/GMT+${a}`:`Etc/GMT${a}`;e.offset!==0&&H.create(l).valid?(i=l,this.dt=e):(i="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,i=e.zone.name):(i="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const o={...this.opts};o.timeZone=o.timeZone||i,this.dtf=Ge(t,o)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(t=>{if(t.type==="timeZoneName"){const r=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:r}}else return t}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class Mr{constructor(e,t,r){this.opts={style:"long",...r},!t&&ln()&&(this.rtf=kr(e,r))}format(e,t){return this.rtf?this.rtf.format(e,t):Kr(t,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const Ut={firstDay:1,minimalDays:4,weekend:[6,7]};class C{static fromOpts(e){return C.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,r,i,o=!1){const a=e||E.defaultLocale,l=a||(o?"en-US":Tr()),c=t||E.defaultNumberingSystem,u=r||E.defaultOutputCalendar,d=it(i)||E.defaultWeekSettings;return new C(l,c,u,d,a)}static resetCache(){pe=null,Pe.clear(),je.clear(),Je.clear(),Ke.clear(),Qe.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:r,weekSettings:i}={}){return C.create(e,t,r,i)}constructor(e,t,r,i,o){const[a,l,c]=Sr(e);this.locale=a,this.numberingSystem=t||l||null,this.outputCalendar=r||c||null,this.weekSettings=i,this.intl=Nr(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=o,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=Or(this)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&t?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:C.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,it(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return Me(this,e,pn,()=>{const r=t?{month:e,day:"numeric"}:{month:e},i=t?"format":"standalone";return this.monthsCache[i][e]||(this.monthsCache[i][e]=Cr(o=>this.extract(o,r,"month"))),this.monthsCache[i][e]})}weekdays(e,t=!1){return Me(this,e,wn,()=>{const r=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},i=t?"format":"standalone";return this.weekdaysCache[i][e]||(this.weekdaysCache[i][e]=Er(o=>this.extract(o,r,"weekday"))),this.weekdaysCache[i][e]})}meridiems(){return Me(this,void 0,()=>kn,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[k.utc(2016,11,13,9),k.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return Me(this,e,Tn,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[k.utc(-40,1,1),k.utc(2017,1,1)].map(r=>this.extract(r,t,"era"))),this.eraCache[e]})}extract(e,t,r){const i=this.dtFormatter(e,t),o=i.formatToParts(),a=o.find(l=>l.type.toLowerCase()===r);return a?a.value:null}numberFormatter(e={}){return new Vr(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new Dr(e,this.intl,t)}relFormatter(e={}){return new Mr(this.intl,this.isEnglish(),e)}listFormatter(e={}){return gr(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||Zt(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:cn()?br(this.locale):Ut}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let Xe=null;class B extends he{static get utcInstance(){return Xe===null&&(Xe=new B(0)),Xe}static instance(e){return e===0?B.utcInstance:new B(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new B(Be(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${we(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${we(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return we(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}}class xr extends he{constructor(e){super(),this.zoneName=e}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 P(n,e){if(w(n)||n===null)return e;if(n instanceof he)return n;if(zr(n)){const t=n.toLowerCase();return t==="default"?e:t==="local"||t==="system"?De.instance:t==="utc"||t==="gmt"?B.utcInstance:B.parseSpecifier(t)||H.create(n)}else return G(n)?B.instance(n):typeof n=="object"&&"offset"in n&&typeof n.offset=="function"?n:new xr(n)}const et={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},Rt={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]},Ir=et.hanidec.replace(/[\[|\]]/g,"").split("");function $r(n){let e=parseInt(n,10);if(isNaN(e)){e="";for(let t=0;t<n.length;t++){const r=n.charCodeAt(t);if(n[t].search(et.hanidec)!==-1)e+=Ir.indexOf(n[t]);else for(const i in Rt){const[o,a]=Rt[i];r>=o&&r<=a&&(e+=r-o)}}return parseInt(e,10)}else return e}const tt=new Map;function _r(){tt.clear()}function A({numberingSystem:n},e=""){const t=n||"latn";let r=tt.get(t);r===void 0&&(r=new Map,tt.set(t,r));let i=r.get(e);return i===void 0&&(i=new RegExp(`${et[t]}${e}`),r.set(e,i)),i}let qt=()=>Date.now(),Ht="system",Yt=null,Pt=null,Gt=null,jt=60,Jt,Kt=null;class E{static get now(){return qt}static set now(e){qt=e}static set defaultZone(e){Ht=e}static get defaultZone(){return P(Ht,De.instance)}static get defaultLocale(){return Yt}static set defaultLocale(e){Yt=e}static get defaultNumberingSystem(){return Pt}static set defaultNumberingSystem(e){Pt=e}static get defaultOutputCalendar(){return Gt}static set defaultOutputCalendar(e){Gt=e}static get defaultWeekSettings(){return Kt}static set defaultWeekSettings(e){Kt=it(e)}static get twoDigitCutoffYear(){return jt}static set twoDigitCutoffYear(e){jt=e%100}static get throwOnInvalid(){return Jt}static set throwOnInvalid(e){Jt=e}static resetCaches(){C.resetCache(),H.resetCache(),k.resetCache(),_r()}}class Z{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const Qt=[0,31,59,90,120,151,181,212,243,273,304,334],Xt=[0,31,60,91,121,152,182,213,244,274,305,335];function z(n,e){return new Z("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${n}, which is invalid`)}function nt(n,e,t){const r=new Date(Date.UTC(n,e-1,t));n<100&&n>=0&&r.setUTCFullYear(r.getUTCFullYear()-1900);const i=r.getUTCDay();return i===0?7:i}function en(n,e,t){return t+(ye(n)?Xt:Qt)[e-1]}function tn(n,e){const t=ye(n)?Xt:Qt,r=t.findIndex(o=>o<e),i=e-t[r];return{month:r+1,day:i}}function rt(n,e){return(n-e+7)%7+1}function xe(n,e=4,t=1){const{year:r,month:i,day:o}=n,a=en(r,i,o),l=rt(nt(r,i,o),t);let c=Math.floor((a-l+14-e)/7),u;return c<1?(u=r-1,c=ge(u,e,t)):c>ge(r,e,t)?(u=r+1,c=1):u=r,{weekYear:u,weekNumber:c,weekday:l,...ze(n)}}function nn(n,e=4,t=1){const{weekYear:r,weekNumber:i,weekday:o}=n,a=rt(nt(r,1,e),t),l=se(r);let c=i*7+o-a-7+e,u;c<1?(u=r-1,c+=se(u)):c>l?(u=r+1,c-=se(r)):u=r;const{month:d,day:y}=tn(u,c);return{year:u,month:d,day:y,...ze(n)}}function st(n){const{year:e,month:t,day:r}=n,i=en(e,t,r);return{year:e,ordinal:i,...ze(n)}}function rn(n){const{year:e,ordinal:t}=n,{month:r,day:i}=tn(e,t);return{year:e,month:r,day:i,...ze(n)}}function sn(n,e){if(!w(n.localWeekday)||!w(n.localWeekNumber)||!w(n.localWeekYear)){if(!w(n.weekday)||!w(n.weekNumber)||!w(n.weekYear))throw new ne("Cannot mix locale-based week fields with ISO-based week fields");return w(n.localWeekday)||(n.weekday=n.localWeekday),w(n.localWeekNumber)||(n.weekNumber=n.localWeekNumber),w(n.localWeekYear)||(n.weekYear=n.localWeekYear),delete n.localWeekday,delete n.localWeekNumber,delete n.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Br(n,e=4,t=1){const r=Ie(n.weekYear),i=W(n.weekNumber,1,ge(n.weekYear,e,t)),o=W(n.weekday,1,7);return r?i?o?!1:z("weekday",n.weekday):z("week",n.weekNumber):z("weekYear",n.weekYear)}function Fr(n){const e=Ie(n.year),t=W(n.ordinal,1,se(n.year));return e?t?!1:z("ordinal",n.ordinal):z("year",n.year)}function on(n){const e=Ie(n.year),t=W(n.month,1,12),r=W(n.day,1,$e(n.year,n.month));return e?t?r?!1:z("day",n.day):z("month",n.month):z("year",n.year)}function an(n){const{hour:e,minute:t,second:r,millisecond:i}=n,o=W(e,0,23)||e===24&&t===0&&r===0&&i===0,a=W(t,0,59),l=W(r,0,59),c=W(i,0,999);return o?a?l?c?!1:z("millisecond",i):z("second",r):z("minute",t):z("hour",e)}function w(n){return typeof n>"u"}function G(n){return typeof n=="number"}function Ie(n){return typeof n=="number"&&n%1===0}function zr(n){return typeof n=="string"}function Wr(n){return Object.prototype.toString.call(n)==="[object Date]"}function ln(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function cn(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function vr(n){return Array.isArray(n)?n:[n]}function un(n,e,t){if(n.length!==0)return n.reduce((r,i)=>{const o=[e(i),i];return r&&t(r[0],o[0])===r[0]?r:o},null)[1]}function Lr(n,e){return e.reduce((t,r)=>(t[r]=n[r],t),{})}function re(n,e){return Object.prototype.hasOwnProperty.call(n,e)}function it(n){if(n==null)return null;if(typeof n!="object")throw new $("Week settings must be an object");if(!W(n.firstDay,1,7)||!W(n.minimalDays,1,7)||!Array.isArray(n.weekend)||n.weekend.some(e=>!W(e,1,7)))throw new $("Invalid week settings");return{firstDay:n.firstDay,minimalDays:n.minimalDays,weekend:Array.from(n.weekend)}}function W(n,e,t){return Ie(n)&&n>=e&&n<=t}function Ar(n,e){return n-e*Math.floor(n/e)}function M(n,e=2){const t=n<0;let r;return t?r="-"+(""+-n).padStart(e,"0"):r=(""+n).padStart(e,"0"),r}function j(n){if(!(w(n)||n===null||n===""))return parseInt(n,10)}function Q(n){if(!(w(n)||n===null||n===""))return parseFloat(n)}function ot(n){if(!(w(n)||n===null||n==="")){const e=parseFloat("0."+n)*1e3;return Math.floor(e)}}function at(n,e,t=!1){const r=10**e;return(t?Math.trunc:Math.round)(n*r)/r}function ye(n){return n%4===0&&(n%100!==0||n%400===0)}function se(n){return ye(n)?366:365}function $e(n,e){const t=Ar(e-1,12)+1,r=n+(e-t)/12;return t===2?ye(r)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][t-1]}function _e(n){let e=Date.UTC(n.year,n.month-1,n.day,n.hour,n.minute,n.second,n.millisecond);return n.year<100&&n.year>=0&&(e=new Date(e),e.setUTCFullYear(n.year,n.month-1,n.day)),+e}function dn(n,e,t){return-rt(nt(n,1,e),t)+e-1}function ge(n,e=4,t=1){const r=dn(n,e,t),i=dn(n+1,e,t);return(se(n)-r+i)/7}function lt(n){return n>99?n:n>E.twoDigitCutoffYear?1900+n:2e3+n}function fn(n,e,t,r=null){const i=new Date(n),o={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};r&&(o.timeZone=r);const a={timeZoneName:e,...o},l=new Intl.DateTimeFormat(t,a).formatToParts(i).find(c=>c.type.toLowerCase()==="timezonename");return l?l.value:null}function Be(n,e){let t=parseInt(n,10);Number.isNaN(t)&&(t=0);const r=parseInt(e,10)||0,i=t<0||Object.is(t,-0)?-r:r;return t*60+i}function mn(n){const e=Number(n);if(typeof n=="boolean"||n===""||Number.isNaN(e))throw new $(`Invalid unit value ${n}`);return e}function Fe(n,e){const t={};for(const r in n)if(re(n,r)){const i=n[r];if(i==null)continue;t[e(r)]=mn(i)}return t}function we(n,e){const t=Math.trunc(Math.abs(n/60)),r=Math.trunc(Math.abs(n%60)),i=n>=0?"+":"-";switch(e){case"short":return`${i}${M(t,2)}:${M(r,2)}`;case"narrow":return`${i}${t}${r>0?`:${r}`:""}`;case"techie":return`${i}${M(t,2)}${M(r,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function ze(n){return Lr(n,["hour","minute","second","millisecond"])}const Zr=["January","February","March","April","May","June","July","August","September","October","November","December"],hn=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Ur=["J","F","M","A","M","J","J","A","S","O","N","D"];function pn(n){switch(n){case"narrow":return[...Ur];case"short":return[...hn];case"long":return[...Zr];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 yn=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],gn=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Rr=["M","T","W","T","F","S","S"];function wn(n){switch(n){case"narrow":return[...Rr];case"short":return[...gn];case"long":return[...yn];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const kn=["AM","PM"],qr=["Before Christ","Anno Domini"],Hr=["BC","AD"],Yr=["B","A"];function Tn(n){switch(n){case"narrow":return[...Yr];case"short":return[...Hr];case"long":return[...qr];default:return null}}function Pr(n){return kn[n.hour<12?0:1]}function Gr(n,e){return wn(e)[n.weekday-1]}function jr(n,e){return pn(e)[n.month-1]}function Jr(n,e){return Tn(e)[n.year<0?0:1]}function Kr(n,e,t="always",r=!1){const i={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(n)===-1;if(t==="auto"&&o){const y=n==="days";switch(e){case 1:return y?"tomorrow":`next ${i[n][0]}`;case-1:return y?"yesterday":`last ${i[n][0]}`;case 0:return y?"today":`this ${i[n][0]}`}}const a=Object.is(e,-0)||e<0,l=Math.abs(e),c=l===1,u=i[n],d=r?c?u[1]:u[2]||u[1]:c?i[n][0]:n;return a?`${l} ${d} ago`:`in ${l} ${d}`}function bn(n,e){let t="";for(const r of n)r.literal?t+=r.val:t+=e(r.val);return t}const Qr={D:Ve,DD:bt,DDD:St,DDDD:Nt,t:Ct,tt:Et,ttt:Ot,tttt:Vt,T:Dt,TT:Mt,TTT:xt,TTTT:It,f:$t,ff:Bt,fff:zt,ffff:vt,F:_t,FF:Ft,FFF:Wt,FFFF:Lt};class _{static create(e,t={}){return new _(e,t)}static parseFormat(e){let t=null,r="",i=!1;const o=[];for(let a=0;a<e.length;a++){const l=e.charAt(a);l==="'"?(r.length>0&&o.push({literal:i||/^\s+$/.test(r),val:r}),t=null,r="",i=!i):i||l===t?r+=l:(r.length>0&&o.push({literal:/^\s+$/.test(r),val:r}),r=l,t=l)}return r.length>0&&o.push({literal:i||/^\s+$/.test(r),val:r}),o}static macroTokenToFormatOpts(e){return Qr[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0){if(this.opts.forceSimple)return M(e,t);const r={...this.opts};return t>0&&(r.padTo=t),this.loc.numberFormatter(r).format(e)}formatDateTimeFromString(e,t){const r=this.loc.listingMode()==="en",i=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",o=(h,m)=>this.loc.extract(e,h,m),a=h=>e.isOffsetFixed&&e.offset===0&&h.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,h.format):"",l=()=>r?Pr(e):o({hour:"numeric",hourCycle:"h12"},"dayperiod"),c=(h,m)=>r?jr(e,h):o(m?{month:h}:{month:h,day:"numeric"},"month"),u=(h,m)=>r?Gr(e,h):o(m?{weekday:h}:{weekday:h,month:"long",day:"numeric"},"weekday"),d=h=>{const m=_.macroTokenToFormatOpts(h);return m?this.formatWithSystemDefault(e,m):h},y=h=>r?Jr(e,h):o({era:h},"era"),p=h=>{switch(h){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return a({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return a({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return a({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return l();case"d":return i?o({day:"numeric"},"day"):this.num(e.day);case"dd":return i?o({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return u("short",!0);case"cccc":return u("long",!0);case"ccccc":return u("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return u("short",!1);case"EEEE":return u("long",!1);case"EEEEE":return u("narrow",!1);case"L":return i?o({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return i?o({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return c("short",!0);case"LLLL":return c("long",!0);case"LLLLL":return c("narrow",!0);case"M":return i?o({month:"numeric"},"month"):this.num(e.month);case"MM":return i?o({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return c("short",!1);case"MMMM":return c("long",!1);case"MMMMM":return c("narrow",!1);case"y":return i?o({year:"numeric"},"year"):this.num(e.year);case"yy":return i?o({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return i?o({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return i?o({year:"numeric"},"year"):this.num(e.year,6);case"G":return y("short");case"GG":return y("long");case"GGGGG":return y("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return d(h)}};return bn(_.parseFormat(t),p)}formatDurationFromString(e,t){const r=c=>{switch(c[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}},i=c=>u=>{const d=r(u);return d?this.num(c.get(d),u.length):u},o=_.parseFormat(t),a=o.reduce((c,{literal:u,val:d})=>u?c:c.concat(d),[]),l=e.shiftTo(...a.map(r).filter(c=>c));return bn(o,i(l))}}const Sn=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ie(...n){const e=n.reduce((t,r)=>t+r.source,"");return RegExp(`^${e}$`)}function oe(...n){return e=>n.reduce(([t,r,i],o)=>{const[a,l,c]=o(e,i);return[{...t,...a},l||r,c]},[{},null,1]).slice(0,2)}function ae(n,...e){if(n==null)return[null,null];for(const[t,r]of e){const i=t.exec(n);if(i)return r(i)}return[null,null]}function Nn(...n){return(e,t)=>{const r={};let i;for(i=0;i<n.length;i++)r[n[i]]=j(e[t+i]);return[r,null,t+i]}}const Cn=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,Xr=`(?:${Cn.source}?(?:\\[(${Sn.source})\\])?)?`,ct=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,En=RegExp(`${ct.source}${Xr}`),ut=RegExp(`(?:T${En.source})?`),es=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,ts=/(\d{4})-?W(\d\d)(?:-?(\d))?/,ns=/(\d{4})-?(\d{3})/,rs=Nn("weekYear","weekNumber","weekDay"),ss=Nn("year","ordinal"),is=/(\d{4})-(\d\d)-(\d\d)/,On=RegExp(`${ct.source} ?(?:${Cn.source}|(${Sn.source}))?`),os=RegExp(`(?: ${On.source})?`);function le(n,e,t){const r=n[e];return w(r)?t:j(r)}function as(n,e){return[{year:le(n,e),month:le(n,e+1,1),day:le(n,e+2,1)},null,e+3]}function ce(n,e){return[{hours:le(n,e,0),minutes:le(n,e+1,0),seconds:le(n,e+2,0),milliseconds:ot(n[e+3])},null,e+4]}function ke(n,e){const t=!n[e]&&!n[e+1],r=Be(n[e+1],n[e+2]),i=t?null:B.instance(r);return[{},i,e+3]}function Te(n,e){const t=n[e]?H.create(n[e]):null;return[{},t,e+1]}const ls=RegExp(`^T?${ct.source}$`),cs=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function us(n){const[e,t,r,i,o,a,l,c,u]=n,d=e[0]==="-",y=c&&c[0]==="-",p=(h,m=!1)=>h!==void 0&&(m||h&&d)?-h:h;return[{years:p(Q(t)),months:p(Q(r)),weeks:p(Q(i)),days:p(Q(o)),hours:p(Q(a)),minutes:p(Q(l)),seconds:p(Q(c),c==="-0"),milliseconds:p(ot(u),y)}]}const ds={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 dt(n,e,t,r,i,o,a){const l={year:e.length===2?lt(j(e)):j(e),month:hn.indexOf(t)+1,day:j(r),hour:j(i),minute:j(o)};return a&&(l.second=j(a)),n&&(l.weekday=n.length>3?yn.indexOf(n)+1:gn.indexOf(n)+1),l}const fs=/^(?:(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 ms(n){const[,e,t,r,i,o,a,l,c,u,d,y]=n,p=dt(e,i,r,t,o,a,l);let h;return c?h=ds[c]:u?h=0:h=Be(d,y),[p,new B(h)]}function hs(n){return n.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}const ps=/^(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$/,ys=/^(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$/,gs=/^(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 Vn(n){const[,e,t,r,i,o,a,l]=n;return[dt(e,i,r,t,o,a,l),B.utcInstance]}function ws(n){const[,e,t,r,i,o,a,l]=n;return[dt(e,l,t,r,i,o,a),B.utcInstance]}const ks=ie(es,ut),Ts=ie(ts,ut),bs=ie(ns,ut),Ss=ie(En),Dn=oe(as,ce,ke,Te),Ns=oe(rs,ce,ke,Te),Cs=oe(ss,ce,ke,Te),Es=oe(ce,ke,Te);function Os(n){return ae(n,[ks,Dn],[Ts,Ns],[bs,Cs],[Ss,Es])}function Vs(n){return ae(hs(n),[fs,ms])}function Ds(n){return ae(n,[ps,Vn],[ys,Vn],[gs,ws])}function Ms(n){return ae(n,[cs,us])}const xs=oe(ce);function Is(n){return ae(n,[ls,xs])}const $s=ie(is,os),_s=ie(On),Bs=oe(ce,ke,Te);function Fs(n){return ae(n,[$s,Dn],[_s,Bs])}const Mn="Invalid Duration",xn={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}},zs={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},...xn},v=146097/400,ue=146097/4800,Ws={years:{quarters:4,months:12,weeks:v/7,days:v,hours:v*24,minutes:v*24*60,seconds:v*24*60*60,milliseconds:v*24*60*60*1e3},quarters:{months:3,weeks:v/28,days:v/4,hours:v*24/4,minutes:v*24*60/4,seconds:v*24*60*60/4,milliseconds:v*24*60*60*1e3/4},months:{weeks:ue/7,days:ue,hours:ue*24,minutes:ue*24*60,seconds:ue*24*60*60,milliseconds:ue*24*60*60*1e3},...xn},X=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],vs=X.slice(0).reverse();function J(n,e,t=!1){const r={values:t?e.values:{...n.values,...e.values||{}},loc:n.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||n.conversionAccuracy,matrix:e.matrix||n.matrix};return new S(r)}function In(n,e){let t=e.milliseconds??0;for(const r of vs.slice(1))e[r]&&(t+=e[r]*n[r].milliseconds);return t}function $n(n,e){const t=In(n,e)<0?-1:1;X.reduceRight((r,i)=>{if(w(e[i]))return r;if(r){const o=e[r]*t,a=n[i][r],l=Math.floor(o/a);e[i]+=l*t,e[r]-=l*a*t}return i},null),X.reduce((r,i)=>{if(w(e[i]))return r;if(r){const o=e[r]%1;e[r]-=o,e[i]+=o*n[r][i]}return i},null)}function Ls(n){const e={};for(const[t,r]of Object.entries(n))r!==0&&(e[t]=r);return e}class S{constructor(e){const t=e.conversionAccuracy==="longterm"||!1;let r=t?Ws:zs;e.matrix&&(r=e.matrix),this.values=e.values,this.loc=e.loc||C.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=r,this.isLuxonDuration=!0}static fromMillis(e,t){return S.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(e==null||typeof e!="object")throw new $(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new S({values:Fe(e,S.normalizeUnit),loc:C.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(G(e))return S.fromMillis(e);if(S.isDuration(e))return e;if(typeof e=="object")return S.fromObject(e);throw new $(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[r]=Ms(e);return r?S.fromObject(r,t):S.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[r]=Is(e);return r?S.fromObject(r,t):S.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new $("need to specify a reason the Duration is invalid");const r=e instanceof Z?e:new Z(e,t);if(E.throwOnInvalid)throw new ur(r);return new S({invalid:r})}static normalizeUnit(e){const t={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"}[e&&e.toLowerCase()];if(!t)throw new Tt(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const r={...t,floor:t.round!==!1&&t.floor!==!1};return this.isValid?_.create(this.loc,r).formatDurationFromString(this,e):Mn}toHuman(e={}){if(!this.isValid)return Mn;const t=X.map(r=>{const i=this.values[r];return w(i)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:r.slice(0,-1)}).format(i)}).filter(r=>r);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(t)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=at(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},k.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?In(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=S.fromDurationLike(e),r={};for(const i of X)(re(t.values,i)||re(this.values,i))&&(r[i]=t.get(i)+this.get(i));return J(this,{values:r},!0)}minus(e){if(!this.isValid)return this;const t=S.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const r of Object.keys(this.values))t[r]=mn(e(this.values[r],r));return J(this,{values:t},!0)}get(e){return this[S.normalizeUnit(e)]}set(e){if(!this.isValid)return this;const t={...this.values,...Fe(e,S.normalizeUnit)};return J(this,{values:t})}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:r,matrix:i}={}){const a={loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:i,conversionAccuracy:r};return J(this,a)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return $n(this.matrix,e),J(this,{values:e},!0)}rescale(){if(!this.isValid)return this;const e=Ls(this.normalize().shiftToAll().toObject());return J(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(a=>S.normalizeUnit(a));const t={},r={},i=this.toObject();let o;for(const a of X)if(e.indexOf(a)>=0){o=a;let l=0;for(const u in r)l+=this.matrix[u][a]*r[u],r[u]=0;G(i[a])&&(l+=i[a]);const c=Math.trunc(l);t[a]=c,r[a]=(l*1e3-c*1e3)/1e3}else G(i[a])&&(r[a]=i[a]);for(const a in r)r[a]!==0&&(t[o]+=a===o?r[a]:r[a]/this.matrix[o][a]);return $n(this.matrix,t),J(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=this.values[t]===0?0:-this.values[t];return J(this,{values:e},!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(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function t(r,i){return r===void 0||r===0?i===void 0||i===0:r===i}for(const r of X)if(!t(this.values[r],e.values[r]))return!1;return!0}}const de="Invalid Interval";function As(n,e){return!n||!n.isValid?O.invalid("missing or invalid start"):!e||!e.isValid?O.invalid("missing or invalid end"):e<n?O.invalid("end before start",`The end of an interval must be after its start, but you had start=${n.toISO()} and end=${e.toISO()}`):null}class O{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new $("need to specify a reason the Interval is invalid");const r=e instanceof Z?e:new Z(e,t);if(E.throwOnInvalid)throw new cr(r);return new O({invalid:r})}static fromDateTimes(e,t){const r=Ne(e),i=Ne(t),o=As(r,i);return o??new O({start:r,end:i})}static after(e,t){const r=S.fromDurationLike(t),i=Ne(e);return O.fromDateTimes(i,i.plus(r))}static before(e,t){const r=S.fromDurationLike(t),i=Ne(e);return O.fromDateTimes(i.minus(r),i)}static fromISO(e,t){const[r,i]=(e||"").split("/",2);if(r&&i){let o,a;try{o=k.fromISO(r,t),a=o.isValid}catch{a=!1}let l,c;try{l=k.fromISO(i,t),c=l.isValid}catch{c=!1}if(a&&c)return O.fromDateTimes(o,l);if(a){const u=S.fromISO(i,t);if(u.isValid)return O.after(o,u)}else if(c){const u=S.fromISO(r,t);if(u.isValid)return O.before(l,u)}}return O.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const r=this.start.startOf(e,t);let i;return t?.useLocaleWeeks?i=this.end.reconfigure({locale:r.locale}):i=this.end,i=i.startOf(e,t),Math.floor(i.diff(r,e).get(e))+(i.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:t}={}){return this.isValid?O.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(Ne).filter(a=>this.contains(a)).sort((a,l)=>a.toMillis()-l.toMillis()),r=[];let{s:i}=this,o=0;for(;i<this.e;){const a=t[o]||this.e,l=+a>+this.e?this.e:a;r.push(O.fromDateTimes(i,l)),i=l,o+=1}return r}splitBy(e){const t=S.fromDurationLike(e);if(!this.isValid||!t.isValid||t.as("milliseconds")===0)return[];let{s:r}=this,i=1,o;const a=[];for(;r<this.e;){const l=this.start.plus(t.mapUnits(c=>c*i));o=+l>+this.e?this.e:l,a.push(O.fromDateTimes(r,o)),r=o,i+=1}return a}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,r=this.e<e.e?this.e:e.e;return t>=r?null:O.fromDateTimes(t,r)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,r=this.e>e.e?this.e:e.e;return O.fromDateTimes(t,r)}static merge(e){const[t,r]=e.sort((i,o)=>i.s-o.s).reduce(([i,o],a)=>o?o.overlaps(a)||o.abutsStart(a)?[i,o.union(a)]:[i.concat([o]),a]:[i,a],[[],null]);return r&&t.push(r),t}static xor(e){let t=null,r=0;const i=[],o=e.map(c=>[{time:c.s,type:"s"},{time:c.e,type:"e"}]),a=Array.prototype.concat(...o),l=a.sort((c,u)=>c.time-u.time);for(const c of l)r+=c.type==="s"?1:-1,r===1?t=c.time:(t&&+t!=+c.time&&i.push(O.fromDateTimes(t,c.time)),t=null);return O.merge(i)}difference(...e){return O.xor([this].concat(e)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:de}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=Ve,t={}){return this.isValid?_.create(this.s.loc.clone(t),e).formatInterval(this):de}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:de}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:de}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:de}toFormat(e,{separator:t=" – "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:de}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):S.invalid(this.invalidReason)}mapEndpoints(e){return O.fromDateTimes(e(this.s),e(this.e))}}class We{static hasDST(e=E.defaultZone){const t=k.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return H.isValidZone(e)}static normalizeZone(e){return P(e,E.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||C.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||C.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||C.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:r=null,locObj:i=null,outputCalendar:o="gregory"}={}){return(i||C.create(t,r,o)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:r=null,locObj:i=null,outputCalendar:o="gregory"}={}){return(i||C.create(t,r,o)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:r=null,locObj:i=null}={}){return(i||C.create(t,r,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:r=null,locObj:i=null}={}){return(i||C.create(t,r,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return C.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return C.create(t,null,"gregory").eras(e)}static features(){return{relative:ln(),localeWeek:cn()}}}function _n(n,e){const t=i=>i.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),r=t(e)-t(n);return Math.floor(S.fromMillis(r).as("days"))}function Zs(n,e,t){const r=[["years",(c,u)=>u.year-c.year],["quarters",(c,u)=>u.quarter-c.quarter+(u.year-c.year)*4],["months",(c,u)=>u.month-c.month+(u.year-c.year)*12],["weeks",(c,u)=>{const d=_n(c,u);return(d-d%7)/7}],["days",_n]],i={},o=n;let a,l;for(const[c,u]of r)t.indexOf(c)>=0&&(a=c,i[c]=u(n,e),l=o.plus(i),l>e?(i[c]--,n=o.plus(i),n>e&&(l=n,i[c]--,n=o.plus(i))):n=l);return[n,i,l,a]}function Us(n,e,t,r){let[i,o,a,l]=Zs(n,e,t);const c=e-i,u=t.filter(y=>["hours","minutes","seconds","milliseconds"].indexOf(y)>=0);u.length===0&&(a<e&&(a=i.plus({[l]:1})),a!==i&&(o[l]=(o[l]||0)+c/(a-i)));const d=S.fromObject(o,r);return u.length>0?S.fromMillis(c,r).shiftTo(...u).plus(d):d}const Rs="missing Intl.DateTimeFormat.formatToParts support";function N(n,e=t=>t){return{regex:n,deser:([t])=>e($r(t))}}const Bn="[  ]",Fn=new RegExp(Bn,"g");function qs(n){return n.replace(/\./g,"\\.?").replace(Fn,Bn)}function zn(n){return n.replace(/\./g,"").replace(Fn," ").toLowerCase()}function U(n,e){return n===null?null:{regex:RegExp(n.map(qs).join("|")),deser:([t])=>n.findIndex(r=>zn(t)===zn(r))+e}}function Wn(n,e){return{regex:n,deser:([,t,r])=>Be(t,r),groups:e}}function ve(n){return{regex:n,deser:([e])=>e}}function Hs(n){return n.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Ys(n,e){const t=A(e),r=A(e,"{2}"),i=A(e,"{3}"),o=A(e,"{4}"),a=A(e,"{6}"),l=A(e,"{1,2}"),c=A(e,"{1,3}"),u=A(e,"{1,6}"),d=A(e,"{1,9}"),y=A(e,"{2,4}"),p=A(e,"{4,6}"),h=b=>({regex:RegExp(Hs(b.val)),deser:([g])=>g,literal:!0}),V=(b=>{if(n.literal)return h(b);switch(b.val){case"G":return U(e.eras("short"),0);case"GG":return U(e.eras("long"),0);case"y":return N(u);case"yy":return N(y,lt);case"yyyy":return N(o);case"yyyyy":return N(p);case"yyyyyy":return N(a);case"M":return N(l);case"MM":return N(r);case"MMM":return U(e.months("short",!0),1);case"MMMM":return U(e.months("long",!0),1);case"L":return N(l);case"LL":return N(r);case"LLL":return U(e.months("short",!1),1);case"LLLL":return U(e.months("long",!1),1);case"d":return N(l);case"dd":return N(r);case"o":return N(c);case"ooo":return N(i);case"HH":return N(r);case"H":return N(l);case"hh":return N(r);case"h":return N(l);case"mm":return N(r);case"m":return N(l);case"q":return N(l);case"qq":return N(r);case"s":return N(l);case"ss":return N(r);case"S":return N(c);case"SSS":return N(i);case"u":return ve(d);case"uu":return ve(l);case"uuu":return N(t);case"a":return U(e.meridiems(),0);case"kkkk":return N(o);case"kk":return N(y,lt);case"W":return N(l);case"WW":return N(r);case"E":case"c":return N(t);case"EEE":return U(e.weekdays("short",!1),1);case"EEEE":return U(e.weekdays("long",!1),1);case"ccc":return U(e.weekdays("short",!0),1);case"cccc":return U(e.weekdays("long",!0),1);case"Z":case"ZZ":return Wn(new RegExp(`([+-]${l.source})(?::(${r.source}))?`),2);case"ZZZ":return Wn(new RegExp(`([+-]${l.source})(${r.source})?`),2);case"z":return ve(/[a-z_+-/]{1,256}?/i);case" ":return ve(/[^\S\n\r]/);default:return h(b)}})(n)||{invalidReason:Rs};return V.token=n,V}const Ps={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",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function Gs(n,e,t){const{type:r,value:i}=n;if(r==="literal"){const c=/^\s+$/.test(i);return{literal:!c,val:c?" ":i}}const o=e[r];let a=r;r==="hour"&&(e.hour12!=null?a=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?a="hour12":a="hour24":a=t.hour12?"hour12":"hour24");let l=Ps[a];if(typeof l=="object"&&(l=l[o]),l)return{literal:!1,val:l}}function js(n){return[`^${n.map(t=>t.regex).reduce((t,r)=>`${t}(${r.source})`,"")}$`,n]}function Js(n,e,t){const r=n.match(e);if(r){const i={};let o=1;for(const a in t)if(re(t,a)){const l=t[a],c=l.groups?l.groups+1:1;!l.literal&&l.token&&(i[l.token.val[0]]=l.deser(r.slice(o,o+c))),o+=c}return[r,i]}else return[r,{}]}function Ks(n){const e=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 t=null,r;return w(n.z)||(t=H.create(n.z)),w(n.Z)||(t||(t=new B(n.Z)),r=n.Z),w(n.q)||(n.M=(n.q-1)*3+1),w(n.h)||(n.h<12&&n.a===1?n.h+=12:n.h===12&&n.a===0&&(n.h=0)),n.G===0&&n.y&&(n.y=-n.y),w(n.u)||(n.S=ot(n.u)),[Object.keys(n).reduce((o,a)=>{const l=e(a);return l&&(o[l]=n[a]),o},{}),t,r]}let ft=null;function Qs(){return ft||(ft=k.fromMillis(1555555555555)),ft}function Xs(n,e){if(n.literal)return n;const t=_.macroTokenToFormatOpts(n.val),r=Zn(t,e);return r==null||r.includes(void 0)?n:r}function vn(n,e){return Array.prototype.concat(...n.map(t=>Xs(t,e)))}class Ln{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=vn(_.parseFormat(t),e),this.units=this.tokens.map(r=>Ys(r,e)),this.disqualifyingUnit=this.units.find(r=>r.invalidReason),!this.disqualifyingUnit){const[r,i]=js(this.units);this.regex=RegExp(r,"i"),this.handlers=i}}explainFromTokens(e){if(this.isValid){const[t,r]=Js(e,this.regex,this.handlers),[i,o,a]=r?Ks(r):[null,null,void 0];if(re(r,"a")&&re(r,"H"))throw new ne("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:r,result:i,zone:o,specificOffset:a}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function An(n,e,t){return new Ln(n,t).explainFromTokens(e)}function ei(n,e,t){const{result:r,zone:i,specificOffset:o,invalidReason:a}=An(n,e,t);return[r,i,o,a]}function Zn(n,e){if(!n)return null;const r=_.create(e,n).dtFormatter(Qs()),i=r.formatToParts(),o=r.resolvedOptions();return i.map(a=>Gs(a,n,o))}const mt="Invalid DateTime",Un=864e13;function be(n){return new Z("unsupported zone",`the zone "${n.name}" is not supported`)}function ht(n){return n.weekData===null&&(n.weekData=xe(n.c)),n.weekData}function pt(n){return n.localWeekData===null&&(n.localWeekData=xe(n.c,n.loc.getMinDaysInFirstWeek(),n.loc.getStartOfWeek())),n.localWeekData}function ee(n,e){const t={ts:n.ts,zone:n.zone,c:n.c,o:n.o,loc:n.loc,invalid:n.invalid};return new k({...t,...e,old:t})}function Rn(n,e,t){let r=n-e*60*1e3;const i=t.offset(r);if(e===i)return[r,e];r-=(i-e)*60*1e3;const o=t.offset(r);return i===o?[r,i]:[n-Math.min(i,o)*60*1e3,Math.max(i,o)]}function Le(n,e){n+=e*60*1e3;const t=new Date(n);return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hour:t.getUTCHours(),minute:t.getUTCMinutes(),second:t.getUTCSeconds(),millisecond:t.getUTCMilliseconds()}}function Ae(n,e,t){return Rn(_e(n),e,t)}function qn(n,e){const t=n.o,r=n.c.year+Math.trunc(e.years),i=n.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,o={...n.c,year:r,month:i,day:Math.min(n.c.day,$e(r,i))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},a=S.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),l=_e(o);let[c,u]=Rn(l,t,n.zone);return a!==0&&(c+=a,u=n.zone.offset(c)),{ts:c,o:u}}function fe(n,e,t,r,i,o){const{setZone:a,zone:l}=t;if(n&&Object.keys(n).length!==0||e){const c=e||l,u=k.fromObject(n,{...t,zone:c,specificOffset:o});return a?u:u.setZone(l)}else return k.invalid(new Z("unparsable",`the input "${i}" can't be parsed as ${r}`))}function Ze(n,e,t=!0){return n.isValid?_.create(C.create("en-US"),{allowZ:t,forceSimple:!0}).formatDateTimeFromString(n,e):null}function yt(n,e){const t=n.c.year>9999||n.c.year<0;let r="";return t&&n.c.year>=0&&(r+="+"),r+=M(n.c.year,t?6:4),e?(r+="-",r+=M(n.c.month),r+="-",r+=M(n.c.day)):(r+=M(n.c.month),r+=M(n.c.day)),r}function Hn(n,e,t,r,i,o){let a=M(n.c.hour);return e?(a+=":",a+=M(n.c.minute),(n.c.millisecond!==0||n.c.second!==0||!t)&&(a+=":")):a+=M(n.c.minute),(n.c.millisecond!==0||n.c.second!==0||!t)&&(a+=M(n.c.second),(n.c.millisecond!==0||!r)&&(a+=".",a+=M(n.c.millisecond,3))),i&&(n.isOffsetFixed&&n.offset===0&&!o?a+="Z":n.o<0?(a+="-",a+=M(Math.trunc(-n.o/60)),a+=":",a+=M(Math.trunc(-n.o%60))):(a+="+",a+=M(Math.trunc(n.o/60)),a+=":",a+=M(Math.trunc(n.o%60)))),o&&(a+="["+n.zone.ianaName+"]"),a}const Yn={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},ti={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},ni={ordinal:1,hour:0,minute:0,second:0,millisecond:0},Pn=["year","month","day","hour","minute","second","millisecond"],ri=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],si=["year","ordinal","hour","minute","second","millisecond"];function ii(n){const e={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"}[n.toLowerCase()];if(!e)throw new Tt(n);return e}function Gn(n){switch(n.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return ii(n)}}function oi(n){if(Se===void 0&&(Se=E.now()),n.type!=="iana")return n.offset(Se);const e=n.name;let t=gt.get(e);return t===void 0&&(t=n.offset(Se),gt.set(e,t)),t}function jn(n,e){const t=P(e.zone,E.defaultZone);if(!t.isValid)return k.invalid(be(t));const r=C.fromObject(e);let i,o;if(w(n.year))i=E.now();else{for(const c of Pn)w(n[c])&&(n[c]=Yn[c]);const a=on(n)||an(n);if(a)return k.invalid(a);const l=oi(t);[i,o]=Ae(n,l,t)}return new k({ts:i,zone:t,loc:r,o})}function Jn(n,e,t){const r=w(t.round)?!0:t.round,i=(a,l)=>(a=at(a,r||t.calendary?0:2,!0),e.loc.clone(t).relFormatter(t).format(a,l)),o=a=>t.calendary?e.hasSame(n,a)?0:e.startOf(a).diff(n.startOf(a),a).get(a):e.diff(n,a).get(a);if(t.unit)return i(o(t.unit),t.unit);for(const a of t.units){const l=o(a);if(Math.abs(l)>=1)return i(l,a)}return i(n>e?-0:0,t.units[t.units.length-1])}function Kn(n){let e={},t;return n.length>0&&typeof n[n.length-1]=="object"?(e=n[n.length-1],t=Array.from(n).slice(0,n.length-1)):t=Array.from(n),[e,t]}let Se;const gt=new Map;class k{constructor(e){const t=e.zone||E.defaultZone;let r=e.invalid||(Number.isNaN(e.ts)?new Z("invalid input"):null)||(t.isValid?null:be(t));this.ts=w(e.ts)?E.now():e.ts;let i=null,o=null;if(!r)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[i,o]=[e.old.c,e.old.o];else{const l=G(e.o)&&!e.old?e.o:t.offset(this.ts);i=Le(this.ts,l),r=Number.isNaN(i.year)?new Z("invalid input"):null,i=r?null:i,o=r?null:l}this._zone=t,this.loc=e.loc||C.create(),this.invalid=r,this.weekData=null,this.localWeekData=null,this.c=i,this.o=o,this.isLuxonDateTime=!0}static now(){return new k({})}static local(){const[e,t]=Kn(arguments),[r,i,o,a,l,c,u]=t;return jn({year:r,month:i,day:o,hour:a,minute:l,second:c,millisecond:u},e)}static utc(){const[e,t]=Kn(arguments),[r,i,o,a,l,c,u]=t;return e.zone=B.utcInstance,jn({year:r,month:i,day:o,hour:a,minute:l,second:c,millisecond:u},e)}static fromJSDate(e,t={}){const r=Wr(e)?e.valueOf():NaN;if(Number.isNaN(r))return k.invalid("invalid input");const i=P(t.zone,E.defaultZone);return i.isValid?new k({ts:r,zone:i,loc:C.fromObject(t)}):k.invalid(be(i))}static fromMillis(e,t={}){if(G(e))return e<-Un||e>Un?k.invalid("Timestamp out of range"):new k({ts:e,zone:P(t.zone,E.defaultZone),loc:C.fromObject(t)});throw new $(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(G(e))return new k({ts:e*1e3,zone:P(t.zone,E.defaultZone),loc:C.fromObject(t)});throw new $("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const r=P(t.zone,E.defaultZone);if(!r.isValid)return k.invalid(be(r));const i=C.fromObject(t),o=Fe(e,Gn),{minDaysInFirstWeek:a,startOfWeek:l}=sn(o,i),c=E.now(),u=w(t.specificOffset)?r.offset(c):t.specificOffset,d=!w(o.ordinal),y=!w(o.year),p=!w(o.month)||!w(o.day),h=y||p,m=o.weekYear||o.weekNumber;if((h||d)&&m)throw new ne("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(p&&d)throw new ne("Can't mix ordinal dates with month/day");const V=m||o.weekday&&!h;let b,g,D=Le(c,u);V?(b=ri,g=ti,D=xe(D,a,l)):d?(b=si,g=ni,D=st(D)):(b=Pn,g=Yn);let I=!1;for(const Ee of b){const uo=o[Ee];w(uo)?I?o[Ee]=g[Ee]:o[Ee]=D[Ee]:I=!0}const me=V?Br(o,a,l):d?Fr(o):on(o),x=me||an(o);if(x)return k.invalid(x);const Re=V?nn(o,a,l):d?rn(o):o,[lo,co]=Ae(Re,u,r),Ce=new k({ts:lo,zone:r,o:co,loc:i});return o.weekday&&h&&e.weekday!==Ce.weekday?k.invalid("mismatched weekday",`you can't specify both a weekday of ${o.weekday} and a date of ${Ce.toISO()}`):Ce.isValid?Ce:k.invalid(Ce.invalid)}static fromISO(e,t={}){const[r,i]=Os(e);return fe(r,i,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[r,i]=Vs(e);return fe(r,i,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[r,i]=Ds(e);return fe(r,i,t,"HTTP",t)}static fromFormat(e,t,r={}){if(w(e)||w(t))throw new $("fromFormat requires an input string and a format");const{locale:i=null,numberingSystem:o=null}=r,a=C.fromOpts({locale:i,numberingSystem:o,defaultToEN:!0}),[l,c,u,d]=ei(a,e,t);return d?k.invalid(d):fe(l,c,r,`format ${t}`,e,u)}static fromString(e,t,r={}){return k.fromFormat(e,t,r)}static fromSQL(e,t={}){const[r,i]=Fs(e);return fe(r,i,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new $("need to specify a reason the DateTime is invalid");const r=e instanceof Z?e:new Z(e,t);if(E.throwOnInvalid)throw new lr(r);return new k({invalid:r})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const r=Zn(e,C.fromObject(t));return r?r.map(i=>i?i.val:null).join(""):null}static expandFormat(e,t={}){return vn(_.parseFormat(e),C.fromObject(t)).map(i=>i.val).join("")}static resetCache(){Se=void 0,gt.clear()}get(e){return this[e]}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?ht(this).weekYear:NaN}get weekNumber(){return this.isValid?ht(this).weekNumber:NaN}get weekday(){return this.isValid?ht(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?pt(this).weekday:NaN}get localWeekNumber(){return this.isValid?pt(this).weekNumber:NaN}get localWeekYear(){return this.isValid?pt(this).weekYear:NaN}get ordinal(){return this.isValid?st(this.c).ordinal:NaN}get monthShort(){return this.isValid?We.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?We.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?We.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?We.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}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,r=_e(this.c),i=this.zone.offset(r-e),o=this.zone.offset(r+e),a=this.zone.offset(r-i*t),l=this.zone.offset(r-o*t);if(a===l)return[this];const c=r-a*t,u=r-l*t,d=Le(c,a),y=Le(u,l);return d.hour===y.hour&&d.minute===y.minute&&d.second===y.second&&d.millisecond===y.millisecond?[ee(this,{ts:c}),ee(this,{ts:u})]:[this]}get isInLeapYear(){return ye(this.year)}get daysInMonth(){return $e(this.year,this.month)}get daysInYear(){return this.isValid?se(this.year):NaN}get weeksInWeekYear(){return this.isValid?ge(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?ge(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:r,calendar:i}=_.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:r,outputCalendar:i}}toUTC(e=0,t={}){return this.setZone(B.instance(e),t)}toLocal(){return this.setZone(E.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:r=!1}={}){if(e=P(e,E.defaultZone),e.equals(this.zone))return this;if(e.isValid){let i=this.ts;if(t||r){const o=e.offset(this.ts),a=this.toObject();[i]=Ae(a,o,e)}return ee(this,{ts:i,zone:e})}else return k.invalid(be(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:r}={}){const i=this.loc.clone({locale:e,numberingSystem:t,outputCalendar:r});return ee(this,{loc:i})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=Fe(e,Gn),{minDaysInFirstWeek:r,startOfWeek:i}=sn(t,this.loc),o=!w(t.weekYear)||!w(t.weekNumber)||!w(t.weekday),a=!w(t.ordinal),l=!w(t.year),c=!w(t.month)||!w(t.day),u=l||c,d=t.weekYear||t.weekNumber;if((u||a)&&d)throw new ne("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(c&&a)throw new ne("Can't mix ordinal dates with month/day");let y;o?y=nn({...xe(this.c,r,i),...t},r,i):w(t.ordinal)?(y={...this.toObject(),...t},w(t.day)&&(y.day=Math.min($e(y.year,y.month),y.day))):y=rn({...st(this.c),...t});const[p,h]=Ae(y,this.o,this.zone);return ee(this,{ts:p,o:h})}plus(e){if(!this.isValid)return this;const t=S.fromDurationLike(e);return ee(this,qn(this,t))}minus(e){if(!this.isValid)return this;const t=S.fromDurationLike(e).negate();return ee(this,qn(this,t))}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const r={},i=S.normalizeUnit(e);switch(i){case"years":r.month=1;case"quarters":case"months":r.day=1;case"weeks":case"days":r.hour=0;case"hours":r.minute=0;case"minutes":r.second=0;case"seconds":r.millisecond=0;break}if(i==="weeks")if(t){const o=this.loc.getStartOfWeek(),{weekday:a}=this;a<o&&(r.weekNumber=this.weekNumber-1),r.weekday=o}else r.weekday=1;if(i==="quarters"){const o=Math.ceil(this.month/3);r.month=(o-1)*3+1}return this.set(r)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?_.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):mt}toLocaleString(e=Ve,t={}){return this.isValid?_.create(this.loc.clone(t),e).formatDateTime(this):mt}toLocaleParts(e={}){return this.isValid?_.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:r=!1,includeOffset:i=!0,extendedZone:o=!1}={}){if(!this.isValid)return null;const a=e==="extended";let l=yt(this,a);return l+="T",l+=Hn(this,a,t,r,i,o),l}toISODate({format:e="extended"}={}){return this.isValid?yt(this,e==="extended"):null}toISOWeekDate(){return Ze(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:r=!0,includePrefix:i=!1,extendedZone:o=!1,format:a="extended"}={}){return this.isValid?(i?"T":"")+Hn(this,a==="extended",t,e,r,o):null}toRFC2822(){return Ze(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Ze(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?yt(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:r=!0}={}){let i="HH:mm:ss.SSS";return(t||e)&&(r&&(i+=" "),t?i+="z":e&&(i+="ZZ")),Ze(this,i,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():mt}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}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(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",r={}){if(!this.isValid||!e.isValid)return S.invalid("created by diffing an invalid DateTime");const i={locale:this.locale,numberingSystem:this.numberingSystem,...r},o=vr(t).map(S.normalizeUnit),a=e.valueOf()>this.valueOf(),l=a?this:e,c=a?e:this,u=Us(l,c,o,i);return a?u.negate():u}diffNow(e="milliseconds",t={}){return this.diff(k.now(),e,t)}until(e){return this.isValid?O.fromDateTimes(this,e):this}hasSame(e,t,r){if(!this.isValid)return!1;const i=e.valueOf(),o=this.setZone(e.zone,{keepLocalTime:!0});return o.startOf(t,r)<=i&&i<=o.endOf(t,r)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||k.fromObject({},{zone:this.zone}),r=e.padding?this<t?-e.padding:e.padding:0;let i=["years","months","days","hours","minutes","seconds"],o=e.unit;return Array.isArray(e.unit)&&(i=e.unit,o=void 0),Jn(t,this.plus(r),{...e,numeric:"always",units:i,unit:o})}toRelativeCalendar(e={}){return this.isValid?Jn(e.base||k.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(k.isDateTime))throw new $("min requires all arguments be DateTimes");return un(e,t=>t.valueOf(),Math.min)}static max(...e){if(!e.every(k.isDateTime))throw new $("max requires all arguments be DateTimes");return un(e,t=>t.valueOf(),Math.max)}static fromFormatExplain(e,t,r={}){const{locale:i=null,numberingSystem:o=null}=r,a=C.fromOpts({locale:i,numberingSystem:o,defaultToEN:!0});return An(a,e,t)}static fromStringExplain(e,t,r={}){return k.fromFormatExplain(e,t,r)}static buildFormatParser(e,t={}){const{locale:r=null,numberingSystem:i=null}=t,o=C.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0});return new Ln(o,e)}static fromFormatParser(e,t,r={}){if(w(e)||w(t))throw new $("fromFormatParser requires an input string and a format parser");const{locale:i=null,numberingSystem:o=null}=r,a=C.fromOpts({locale:i,numberingSystem:o,defaultToEN:!0});if(!a.equals(t.locale))throw new $(`fromFormatParser called with a locale of ${a}, but the format parser was created for ${t.locale}`);const{result:l,zone:c,specificOffset:u,invalidReason:d}=t.explainFromTokens(e);return d?k.invalid(d):fe(l,c,r,`format ${t.format}`,e,u)}static get DATE_SHORT(){return Ve}static get DATE_MED(){return bt}static get DATE_MED_WITH_WEEKDAY(){return dr}static get DATE_FULL(){return St}static get DATE_HUGE(){return Nt}static get TIME_SIMPLE(){return Ct}static get TIME_WITH_SECONDS(){return Et}static get TIME_WITH_SHORT_OFFSET(){return Ot}static get TIME_WITH_LONG_OFFSET(){return Vt}static get TIME_24_SIMPLE(){return Dt}static get TIME_24_WITH_SECONDS(){return Mt}static get TIME_24_WITH_SHORT_OFFSET(){return xt}static get TIME_24_WITH_LONG_OFFSET(){return It}static get DATETIME_SHORT(){return $t}static get DATETIME_SHORT_WITH_SECONDS(){return _t}static get DATETIME_MED(){return Bt}static get DATETIME_MED_WITH_SECONDS(){return Ft}static get DATETIME_MED_WITH_WEEKDAY(){return fr}static get DATETIME_FULL(){return zt}static get DATETIME_FULL_WITH_SECONDS(){return Wt}static get DATETIME_HUGE(){return vt}static get DATETIME_HUGE_WITH_SECONDS(){return Lt}}function Ne(n){if(k.isDateTime(n))return n;if(n&&n.valueOf&&G(n.valueOf()))return k.fromJSDate(n);if(n&&typeof n=="object")return k.fromObject(n);throw new $(`Unknown datetime argument: ${n}, of type ${typeof n}`)}const Qn={formatDate:(n,e)=>{const t=new Date(n),r=k.fromMillis(+t);if(!r.isValid)return"";if(e.includes("'st'")){const o=r.toLocal().day;let a;[1,21,31].includes(o)?a="'st'":[2,22].includes(o)?a="'nd'":[3,23].includes(o)?a="'rd'":a="'th'",e=e.replace(/'st'/g,a)}return r.toFormat(e)}},ai={class:"flex flex-col gap-3"},li={class:"flex gap-2 justify-between"},ci={style:{display:"grid","grid-template-columns":"repeat(7, 1fr)",gap:"5px"}},ui=["disable","onClick"],di=s.defineComponent({__name:"Date",props:{modelValue:{},firstDayOfWeek:{default:0},readonly:{type:Boolean},events:{},eventColor:{}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(t.modelValue),o=new Date,a=i.value||o,l=s.ref(a.getDate()),c=s.ref(a.getMonth()+1),u=s.ref(a.getFullYear()),d=s.computed(()=>[{value:1,label:"January"},{value:2,label:"February"},{value:3,label:"March"},{value:4,label:"April"},{value:5,label:"May"},{value:6,label:"June"},{value:7,label:"July"},{value:8,label:"August"},{value:9,label:"September"},{value:10,label:"October"},{value:11,label:"November"},{value:12,label:"December"}]),y=s.computed(()=>{const b=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];return b.map((g,D)=>{const I=(D+t.firstDayOfWeek)%7;return b[I]})}),p=s.computed(()=>{const b=new Date(u.value,c.value-1,1),g=new Date(u.value,c.value,0);if(!b||!g)return[];const D=[];let I=b;for(;I<=g;){const me=Qn.formatDate(I,"yyyy/MM/dd"),Re=t.events?.(me)||!1?t.eventColor?.(me):null;D.push({color:Re,unixDate:I.getTime(),dayOfWeek:(I.getDay()+7-t.firstDayOfWeek)%7+1}),I.setDate(I.getDate()+1)}return D}),h=b=>{const g=new Date(b);return g.getDate()===o.getDate()&&g.getMonth()===o.getMonth()&&g.getFullYear()===o.getFullYear()},m=b=>i.value?.getTime()===b,V=b=>{if(t.readonly)return;const g=new Date(b);l.value=g.getDate(),c.value=g.getMonth()+1,u.value=g.getFullYear(),i.value=g,r("update:modelValue",g)};return(b,g)=>{const D=s.resolveComponent("Select"),I=s.resolveComponent("Input"),me=s.resolveDirective("ripple");return s.openBlock(),s.createElementBlock("div",ai,[s.createElementVNode("div",li,[s.createVNode(D,{modelValue:s.unref(c),"onUpdate:modelValue":g[0]||(g[0]=x=>s.isRef(c)?c.value=x:null),options:s.unref(d)},null,8,["modelValue","options"]),s.createVNode(I,{modelValue:s.unref(u),"onUpdate:modelValue":g[1]||(g[1]=x=>s.isRef(u)?u.value=x:null),type:"number"},null,8,["modelValue"])]),s.createElementVNode("div",ci,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(y),x=>(s.openBlock(),s.createElementBlock("div",{key:x,class:"text-center opacity-50"},s.toDisplayString(x),1))),128)),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(p),x=>s.withDirectives((s.openBlock(),s.createElementBlock("button",{key:x.unixDate,disable:b.readonly,class:s.normalizeClass({"text-center rounded py-2 relative":!0,"cursor-pointer":!b.readonly,"border border-white/25":h(x.unixDate),"bg-primary":m(x.unixDate),[`bg-${x.color}`]:!!x.color&&!m(x.unixDate)}),style:s.normalizeStyle(`grid-column-start: ${x.dayOfWeek};`),onClick:Re=>V(x.unixDate)},[s.createTextVNode(s.toDisplayString(s.unref(Qn).formatDate(x.unixDate,"dd")),1)],14,ui)),[[me]])),128))])])}}}),fi={key:0,class:"font-medium text-lg shrink-0 p-6 pb-4 border-b border-b-gray-500"},mi={key:1,class:"w-full flex justify-end pt-6 p-6 gap-2 shrink-0"},hi=s.defineComponent({__name:"Dialog",props:{modelValue:{type:Boolean},persistent:{type:Boolean},withConfirm:{type:Boolean,default:!1},unpadded:{type:Boolean},preload:{type:Boolean,default:!1},maxWidth:{default:"450px"},confirmColor:{},confirmText:{},disableConfirm:{type:Boolean},disableCancel:{type:Boolean},title:{}},emits:["update:modelValue","cancel","confirm"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(!1),o=s.ref(!1),a=()=>{t.persistent||r("update:modelValue",!1)};return s.watchEffect(()=>{t.modelValue?(o.value=!0,setTimeout(()=>{i.value=!0},150)):(i.value=!1,setTimeout(()=>{o.value=!1},150))}),(l,c)=>(s.openBlock(),s.createBlock(s.Teleport,{to:"body"},[s.createVNode(s.Transition,{name:"fade"},{default:s.withCtx(()=>[s.unref(o)||l.preload?s.withDirectives((s.openBlock(),s.createElementBlock("div",{key:0,class:"flex flex-col items-center justify-center fixed w-full h-full bg-black/30 top-0 left-0 p-6 z-50",onClick:a},[s.createVNode(s.Transition,{name:"grow"},{default:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{"with-title-border":"",onClick:c[2]||(c[2]=s.withModifiers(()=>{},["stop"])),class:s.normalizeClass({"w-full flex flex-col max-h-[90vh] bg-card rounded shadow-lg":!0}),style:s.normalizeStyle(`max-width: ${l.maxWidth};`)},[l.$slots.title||l.title?(s.openBlock(),s.createElementBlock("h2",fi,[s.renderSlot(l.$slots,"title",{},()=>[s.createTextVNode(s.toDisplayString(l.title),1)])])):s.createCommentVNode("",!0),s.createElementVNode("div",{class:s.normalizeClass({"overflow-y-auto grow":!0,"p-6":!l.unpadded})},[s.renderSlot(l.$slots,"default")],2),l.withConfirm?(s.openBlock(),s.createElementBlock("div",mi,[s.createVNode(q,{readonly:l.disableCancel,flat:"",onClick:c[0]||(c[0]=u=>r("cancel"))},{default:s.withCtx(()=>c[3]||(c[3]=[s.createTextVNode(" Cancel ")])),_:1,__:[3]},8,["readonly"]),s.createVNode(q,{readonly:l.disableConfirm,color:l.confirmColor,onClick:c[1]||(c[1]=u=>r("confirm"))},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(l.confirmText||"Confirm"),1)]),_:1},8,["readonly","color"])])):s.createCommentVNode("",!0)],4),[[s.vShow,s.unref(i)]])]),_:3})],512)),[[s.vShow,s.unref(o)]]):s.createCommentVNode("",!0)]),_:3})]))}}),R=(n,e)=>{const t=n.__vccOpts||n;for(const[r,i]of e)t[r]=i;return t},pi={},yi={class:"flex items-center relative"},gi={class:"absolute text-nowrap overflow-hidden text-ellipsis w-full"};function wi(n,e){return s.openBlock(),s.createElementBlock("div",yi,[s.createElementVNode("div",gi,[s.renderSlot(n.$slots,"default")])])}const ki=R(pi,[["render",wi]]),Ti={key:0},bi=R(s.defineComponent({__name:"ExpansionItem",props:{value:{type:Boolean,default:void 0},defaultOpened:{type:Boolean},switchToggleSide:{type:Boolean},keepAlive:{type:Boolean},headerClickable:{type:Boolean},titleClass:{},hideToggle:{type:Boolean}},emits:["input"],setup(n,{expose:e,emit:t}){const r=n,i=t,o=s.ref(r.value??r.defaultOpened??!1),a=s.computed(()=>o.value?"expand_less":"expand_more"),l=()=>{r.headerClickable&&c()},c=u=>{o.value=u??!o.value};return s.watch(()=>o.value,()=>{r.value!==o.value&&i("input",o.value)}),e({toggle:c}),(u,d)=>(s.openBlock(),s.createElementBlock("div",null,[u.switchToggleSide?(s.openBlock(),s.createElementBlock("div",{key:1,class:s.normalizeClass({"flex items-center gap-2 justify-between":!0,"cursor-pointer":u.headerClickable,[u.titleClass||""]:!0}),onClick:l},[s.createElementVNode("span",null,[s.renderSlot(u.$slots,"title",{},void 0,!0)]),u.hideToggle?s.createCommentVNode("",!0):(s.openBlock(),s.createBlock(q,{key:0,"icon-size":"24px",round:"",flat:"",dense:"",icon:a.value,onClick:d[1]||(d[1]=s.withModifiers(y=>c(),["stop"]))},null,8,["icon"]))],2)):(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass({"flex items-center gap-2":!0,"cursor-pointer":u.headerClickable}),onClick:l},[u.hideToggle?s.createCommentVNode("",!0):(s.openBlock(),s.createBlock(q,{key:0,"icon-size":"24px",round:"",flat:"",dense:"",icon:a.value,onClick:d[0]||(d[0]=s.withModifiers(y=>c(),["stop"]))},null,8,["icon"])),s.renderSlot(u.$slots,"title",{},void 0,!0)],2)),u.keepAlive?s.createCommentVNode("",!0):(s.openBlock(),s.createBlock(s.Transition,{key:2,name:"slideUp",vertical:""},{default:s.withCtx(()=>[o.value?(s.openBlock(),s.createElementBlock("div",Ti,[s.renderSlot(u.$slots,"default",{},void 0,!0)])):s.createCommentVNode("",!0)]),_:3})),u.keepAlive?(s.openBlock(),s.createBlock(s.Transition,{key:3,name:"slideUp",vertical:""},{default:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",null,[s.renderSlot(u.$slots,"default",{},void 0,!0)],512),[[s.vShow,o.value]])]),_:3})):s.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-b83d43bc"]]),Ue=s.defineComponent({__name:"TransitionGroupFadeSlide",props:{vertical:{type:Boolean,default:!1},invert:{type:Boolean},grow:{type:Boolean}},setup(n){s.useCssVars(o=>({"6b3ce032":t.value,"031b5692":r.value}));const e=n,t=s.computed(()=>e.invert?"-20px":"20px"),r=s.computed(()=>e.grow?"0.8":"1"),i=s.computed(()=>e.vertical?"fade-slide-vertical":"fade-slide");return(o,a)=>(s.openBlock(),s.createBlock(s.TransitionGroup,{name:i.value},{default:s.withCtx(()=>[s.renderSlot(o.$slots,"default")]),_:3},8,["name"]))}}),Si={class:"flex flex-col items-end"},Ni={class:"flex flex-col gap-3 mb-3 items-end"},Ci=s.defineComponent({__name:"Fab",props:{icon:{},color:{},disable:{type:Boolean}},emits:["clicked"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(!1),o=()=>{t.disable||(i.value=!i.value,r("clicked"))},a=()=>{i.value=!1};return s.provide("action-clicked-callback",a),(l,c)=>{const u=s.resolveComponent("Icon"),d=s.resolveDirective("ripple");return s.openBlock(),s.createElementBlock("div",Si,[s.createVNode(Ue,{vertical:"",grow:""},{default:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",Ni,[s.renderSlot(l.$slots,"default")],512),[[s.vShow,s.unref(i)]])]),_:3}),s.withDirectives((s.openBlock(),s.createElementBlock("button",{class:s.normalizeClass({"relative rounded-full aspect-square h-12 flex items-center justify-center cursor-pointer":!0,"bg-primary":!t.color,[`bg-${t.color}`]:t.color}),onClick:o},[l.icon&&!s.unref(i)?(s.openBlock(),s.createBlock(u,{key:0,name:l.icon,size:"24px","class-name":"text-white"},null,8,["name"])):s.createCommentVNode("",!0),s.unref(i)?(s.openBlock(),s.createBlock(u,{key:1,name:"close",size:"22px","class-name":"text-white"})):s.createCommentVNode("",!0)],2)),[[d]])])}}}),Ei=s.defineComponent({__name:"FabAction",props:{icon:{},color:{},label:{},labelPosition:{}},emits:["click"],setup(n,{emit:e}){const t=e,r=s.inject("action-clicked-callback",()=>{}),i=()=>{t("click"),r?.()};return(o,a)=>{const l=s.resolveComponent("Icon"),c=s.resolveDirective("ripple");return s.withDirectives((s.openBlock(),s.createElementBlock("button",{class:"cursor-pointer bg-primary rounded-full px-2 py-1 font-medium flex items-center gap-1 relative",onClick:i},[o.icon?(s.openBlock(),s.createBlock(l,{key:0,name:o.icon,size:"20px"},null,8,["name"])):s.createCommentVNode("",!0),s.createElementVNode("div",null,s.toDisplayString(o.label),1)])),[[c]])}}}),Oi={},Vi={class:"bg-primary fixed top-0 z-20"};function Di(n,e){return s.openBlock(),s.createElementBlock("header",Vi,[s.renderSlot(n.$slots,"default",{},void 0,!0)])}const Mi=R(Oi,[["render",Di],["__scopeId","data-v-37ec0c12"]]),xi=["for"],Ii=["id","readonly","step","type","name"],$i=["id","readonly","step","type","name"],_i={class:"absolute h-full w-full flex items-center justify-end top-0 gap-2 pointer-events-none p-2"},Bi=s.defineComponent({__name:"Input",props:{id:{default:"v-input-"+Math.floor(Math.random()*1e6)},modelValue:{},label:{},inputClass:{},type:{default:"text"},step:{},readonly:{type:Boolean,default:!1},rules:{},name:{},debounce:{default:0}},emits:["update:modelValue","focus","blur"],setup(n,{expose:e,emit:t}){const r=n,i=s.inject("formValidators",[]),o=t,a=s.ref(null),l=s.ref(r.modelValue),c=s.ref();let u;const d=s.computed(()=>({[r.inputClass||""]:!0,"border-b-2 bg-black/20 rounded-t p-2 pt-4 outline-none w-full h-full text-base":!0,"read-only:border-gray-400 read-only:border-dashed read-only:border-b":!0,"border-gray-700":!a.value,"border-red-500":!!a.value,"focus-within:border-primary":!r.readonly,"transition-colors":!0})),y=()=>{a.value=null,l.value!==r.modelValue&&o("update:modelValue",l.value)},p=()=>{c.value?.focus()},h=()=>{c.value?.blur()},m=()=>{clearTimeout(u),y(),o("blur")},V=()=>{o("focus")},b=()=>{const g=r.rules?.map(D=>D(l.value)).find(D=>D!==!0);return g!==!1&&g&&(a.value=g),!g};return i.push(b),s.watch(()=>r.modelValue,()=>l.value=r.modelValue),s.watch(()=>l.value,()=>{r.debounce>0?(clearTimeout(u),u=window.setTimeout(y,r.debounce)):y()}),e({focus:p,validate:b,blur:h}),(g,D)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"relative input-container w-full":!0,"has-value":l.value!=null&&l.value!==""})},[g.label?(s.openBlock(),s.createElementBlock("label",{key:0,for:g.id,class:"label transition-all absolute top-[22%] left-[8px] opacity-50 pointer-events-none"},s.toDisplayString(g.label),9,xi)):s.createCommentVNode("",!0),g.type==="textarea"?s.withDirectives((s.openBlock(),s.createElementBlock("textarea",{key:1,"onUpdate:modelValue":D[0]||(D[0]=I=>l.value=I),ref_key:"input",ref:c,id:g.id,readonly:g.readonly,step:g.step,type:g.type,name:g.name,class:s.normalizeClass(d.value),onBlur:m,onFocus:V}," "+s.toDisplayString(l.value)+`
2
+ `,43,Ii)),[[s.vModelText,l.value]]):s.withDirectives((s.openBlock(),s.createElementBlock("input",{key:2,"onUpdate:modelValue":D[1]||(D[1]=I=>l.value=I),ref_key:"input",ref:c,id:g.id,readonly:g.readonly,step:g.step,type:g.type,name:g.name,class:s.normalizeClass(d.value),onBlur:m,onFocus:V},null,42,$i)),[[s.vModelDynamic,l.value]]),s.createElementVNode("div",_i,[s.renderSlot(g.$slots,"suffix",{},void 0,!0),s.createVNode(s.Transition,{name:"shake"},{default:s.withCtx(()=>[a.value?(s.openBlock(),s.createBlock(kt,{key:0,"bg-class":"bg-red-500"},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(a.value),1)]),_:1})):s.createCommentVNode("",!0)]),_:1})])],2))}}),Xn=R(Bi,[["__scopeId","data-v-b1a6cbde"]]),Fi={class:"full-width flex items-center justify-center",style:{gap:"6px"}},te="20px",zi=R(s.defineComponent({__name:"MathOperationButtons",setup(n){const e=s.ref(!1),t=s.ref(null),r=s.ref(!1),i=()=>window.innerHeight-(window.visualViewport?.height||0),o=s.ref(i()),a=()=>{o.value=i()},l=()=>{e.value=!0};s.onMounted(()=>{window.visualViewport&&window.visualViewport.addEventListener("resize",a),window.addEventListener("scroll",a),window.addEventListener("touchstart",l)}),s.onBeforeUnmount(()=>{window.visualViewport&&window.visualViewport.removeEventListener("resize",a),window.removeEventListener("scroll",a),window.removeEventListener("touchstart",l)});const c=async y=>{const p=t.value?.getElementsByTagName("input")[0];if(p?.selectionStart!=null){const h=p.selectionStart,m=p.value;p.value=`${m.substring(0,h)}${y}${m.substring(h)}`,await s.nextTick(),p.setSelectionRange(h+1,h+1)}else p&&(p.value+=y)},u=()=>{r.value=!0},d=()=>{r.value=!1};return(y,p)=>{const h=s.resolveComponent("Button");return s.openBlock(),s.createElementBlock("span",{class:"host-element",ref_key:"hostElement",ref:t},[s.renderSlot(y.$slots,"default",{show:u,hide:d},void 0,!0),e.value&&r.value?(s.openBlock(),s.createBlock(s.Teleport,{key:0,to:"body"},[s.createElementVNode("div",{class:"custom-buttons m-0 px-2 py-4 flex flex-col items-center justify-center",style:s.normalizeStyle(`bottom: ${o.value}px`)},[s.createElementVNode("div",Fi,[s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:"+",onTouchstart:p[0]||(p[0]=s.withModifiers(m=>c("+"),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:"-",onTouchstart:p[1]||(p[1]=s.withModifiers(m=>c("-"),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:"/",onTouchstart:p[2]||(p[2]=s.withModifiers(m=>c("/"),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:"*",onTouchstart:p[3]||(p[3]=s.withModifiers(m=>c("*"),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:"(",onTouchstart:p[4]||(p[4]=s.withModifiers(m=>c("("),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:")",onTouchstart:p[5]||(p[5]=s.withModifiers(m=>c(")"),["prevent"]))}),s.createVNode(h,{size:te,style:{"flex-grow":"1"},color:"primary",label:".",onTouchstart:p[6]||(p[6]=s.withModifiers(m=>c("."),["prevent"]))})])],4)])):s.createCommentVNode("",!0)],512)}}}),[["__scopeId","data-v-15f82af5"]]),Wi={class:"flex w-full items-center justify-between"},vi=R(s.defineComponent({__name:"NavMenu",setup(n,{expose:e}){const t=s.ref(!1),r=()=>{t.value=!t.value};return e({close:()=>{t.value=!1}}),(o,a)=>{const l=s.resolveComponent("Button");return s.openBlock(),s.createElementBlock("div",null,[s.createVNode(l,{flat:"",round:"",icon:"menu","icon-size":"24px",onClick:r}),(s.openBlock(),s.createBlock(s.Teleport,{to:"body"},[s.createElementVNode("div",{class:s.normalizeClass({"nav-menu":!0,"fixed w-full h-full top-0 left-0 overflow-hidden z-30":!0,"pointer-events-none":!s.unref(t),"bg-black/50":s.unref(t)}),onClick:r},[s.createVNode(Ue,{invert:""},{default:s.withCtx(()=>[s.unref(t)?(s.openBlock(),s.createElementBlock("div",{key:0,class:"bg-card w-full max-w-[450px] h-full z-10 p-6",onClick:a[0]||(a[0]=s.withModifiers(()=>{},["stop"]))},[s.createElementVNode("div",Wi,[s.createElementVNode("div",null,[s.renderSlot(o.$slots,"title",{},void 0,!0)]),s.createVNode(l,{flat:"","icon-size":"24px",round:"",icon:"close",onClick:r})]),s.renderSlot(o.$slots,"default",{},void 0,!0)])):s.createCommentVNode("",!0)]),_:3})],2)]))])}}}),[["__scopeId","data-v-998dcb37"]]),wt=100,Li=s.defineComponent({__name:"PullToRefresh",setup(n){let e=null;const t=s.ref(0),r=s.ref(!1),i=s.ref(!0);s.provide("pullToRefreshEnabled",i);const o=c=>{if(!i.value)return;if(window.scrollY>0&&e===null){t.value=0;return}const u=c.touches[0].clientY;e=e||u;const d=-(e-u);t.value=Math.min(d/2,wt)},a=c=>{t.value>=wt&&(r.value=!0,location.reload()),t.value=0,e=null},l=s.computed(()=>1/wt*t.value);return(c,u)=>{const d=s.resolveComponent("Icon");return s.unref(r)?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",{key:0,onTouchmove:o,onTouchend:a},[s.createElementVNode("div",{class:s.normalizeClass({"overflow-y-hidden flex items-center justify-center absolute rounded-full bg-primary z-50":!0}),style:s.normalizeStyle(`top: ${s.unref(t)-50}px; width: 50px; height: 50px; left: calc(50% - 25px); transition: top 0.1s;`)},[s.createVNode(d,{style:s.normalizeStyle(`transform: rotate(${260+s.unref(t)*3}deg) scale(${s.unref(l)}); transform-origin: center;`),name:"refresh","font-size":"24px"},null,8,["style"])],4),s.renderSlot(c.$slots,"default")],32))}}}),Ai=R(s.defineComponent({__name:"ScrollArea",props:{contentStyle:{default:""},contentClass:{default:""},reverse:{type:Boolean}},setup(n){return(e,t)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"scroll-area relative":!0,"flex flex-col-reverse":!!e.reverse})},[s.createElementVNode("div",{class:s.normalizeClass(`absolute w-full ${e.contentClass}`),style:s.normalizeStyle(`${e.contentStyle}`)},[s.renderSlot(e.$slots,"default",{},void 0,!0)],6)],2))}}),[["__scopeId","data-v-70111b6e"]]),Zi=["for"],Ui=["readonly"],Ri=["value"],qi=s.defineComponent({__name:"Select",props:{id:{default:"v-input-"+Math.floor(Math.random()*1e6)},readonly:{type:Boolean,default:!1},label:{},modelValue:{},options:{}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(t.modelValue),o=s.computed(()=>"");return s.watch(()=>i.value,()=>r("update:modelValue",i.value)),(a,l)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"relative input-container":!0,"has-value":s.unref(i)!=null&&s.unref(i)!==""})},[a.label?(s.openBlock(),s.createElementBlock("label",{key:0,for:a.id,class:"label transition-all absolute top-[22%] left-[8px] opacity-50 pointer-events-none"},s.toDisplayString(a.label),9,Zi)):s.createCommentVNode("",!0),s.withDirectives(s.createElementVNode("select",{"onUpdate:modelValue":l[0]||(l[0]=c=>s.isRef(i)?i.value=c:null),readonly:a.readonly,class:s.normalizeClass({"border-b-2 border-primary bg-black/20 rounded-t p-1 pb-2 pt-4 outline-none w-full text-base h-[50px]":!0,"border-red-500":!!s.unref(o),"transition-colors":!0})},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.options,(c,u)=>(s.openBlock(),s.createElementBlock("option",{key:c.value??u,value:c.value},s.toDisplayString(c.label),9,Ri))),128))],10,Ui),[[s.vModelSelect,s.unref(i)]])],2))}}),Hi=R(qi,[["__scopeId","data-v-e4045f20"]]),Yi=s.defineComponent({__name:"SlideItem",props:{leftColor:{},rightColor:{}},emits:["left","right"],setup(n,{emit:e}){const t=e,r=s.ref(0),i=s.ref(null),o=s.ref("unknown"),a=s.ref(null),l=s.computed(()=>Math.max(0,Math.min(1,r.value/75))),c=s.computed(()=>Math.max(0,Math.min(1,-r.value/75))),u=m=>"touches"in m?m.touches[0]:m,d=m=>{i.value=u(m)},y=m=>{if(i.value!==null){const V=u(m),b=V.clientX-i.value.clientX,g=V.clientY-i.value.clientY;if(o.value==="unknown"&&(Math.abs(b)>Math.abs(g)&&(o.value=!0),Math.abs(g)>Math.abs(b)&&(o.value=!1)),(o.value===!0||o.value==="unknown")&&m.preventDefault(),o.value!==!0){p();return}r.value=b}},p=()=>{r.value=0},h=()=>{i.value=null,o.value="unknown";const m=a.value?.clientWidth||0;c.value===1?(r.value=-m||-1e3,t("right",{reset:p})):l.value===1?(r.value=m||1e3,t("left",{reset:p})):p()};return(m,V)=>(s.openBlock(),s.createElementBlock("div",{ref_key:"slideItem",ref:a,class:s.normalizeClass({"flex items-center justify-between overflow-hidden relative":!0,"cursor-grab":s.unref(o)!==!0,"cursor-grabbing":s.unref(o)===!0}),onMousedown:d,onMousemove:y,onMouseup:h,onTouchstart:d,onTouchmove:y,onTouchend:h,onTouchcancel:h},[s.createElementVNode("div",{style:s.normalizeStyle("visibility: "+(s.unref(r)>0?"visible":"hidden")),class:s.normalizeClass({"px-2 pt-1 h-full w-full justify-start absolute overflow-hidden flex items-center ":!0,[m.leftColor||""]:!0})},[s.createElementVNode("div",{class:"",style:s.normalizeStyle(`transform: scale(${s.unref(l)})`)},[s.renderSlot(m.$slots,"left")],4)],6),s.createElementVNode("div",{style:s.normalizeStyle("visibility: "+(s.unref(r)<0?"visible":"hidden")),class:s.normalizeClass({"px-2 pt-1 h-full w-full justify-end absolute overflow-hidden flex items-center":!0,[m.rightColor||""]:!0})},[s.createElementVNode("div",{class:"",style:s.normalizeStyle(`transform: scale(${s.unref(c)})`)},[s.renderSlot(m.$slots,"right")],4)],6),s.createElementVNode("div",{class:s.normalizeClass({"w-full h-full bg-bg":!0,"transition-all":s.unref(i)===null}),style:s.normalizeStyle(`transform: translateX(${s.unref(r)}px)`)},[s.renderSlot(m.$slots,"default")],6)],34))}}),Pi=["height"],Gi=R(s.defineComponent({__name:"Spinner",props:{size:{default:"24px"}},setup(n){const e=n,t=s.computed(()=>typeof e.size=="number"?`${e.size}px`:typeof e.size=="string"?e.size:"24px");return(r,i)=>(s.openBlock(),s.createElementBlock("svg",{fill:"currentColor",height:s.unref(t),viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},i[0]||(i[0]=[s.createElementVNode("path",{d:"M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z",class:"the-spinner"},null,-1)]),8,Pi))}}),[["__scopeId","data-v-59a65940"]]),ji=s.defineComponent({__name:"Stepper",props:{modelValue:{}},setup(n){const e=n,t=s.reactive({step:e.modelValue});return s.provide("stepperContext",t),s.watch(()=>e.modelValue,()=>{t.step=e.modelValue??void 0}),(r,i)=>(s.openBlock(),s.createElementBlock("div",null,[s.createVNode(Ue,{invert:""},{default:s.withCtx(()=>[s.renderSlot(r.$slots,"default")]),_:3})]))}}),Ji={key:0},Ki=s.defineComponent({__name:"StepperStep",props:{name:{}},setup(n){const e=n,t=s.inject("stepperContext",{step:void 0}),r=s.computed(()=>t?.step===e.name);return(i,o)=>s.unref(r)?(s.openBlock(),s.createElementBlock("div",Ji,[s.renderSlot(i.$slots,"default")])):s.createCommentVNode("",!0)}}),Qi=s.defineComponent({__name:"Tab",props:{name:{},icon:{},label:{}},setup(n){const e=s.inject("tabContext");return(t,r)=>{const i=s.resolveComponent("Icon"),o=s.resolveDirective("ripple");return s.withDirectives((s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass({"cursor-pointer px-4 py-2 border-b-2 relative text-center flex items-center gap-2 justify-center font-medium":!0,[`border-b-${s.unref(e)?.activeColor||"current"} text-${s.unref(e)?.activeColor||"current"}`]:t.name===s.unref(e)?.activeTab,"border-b-transparent":t.name!==s.unref(e)?.activeTab}),onClick:r[0]||(r[0]=a=>s.unref(e)?.swapTab(t.name))},[t.icon?(s.openBlock(),s.createBlock(i,{key:0,name:t.icon,size:"24px"},null,8,["name"])):s.createCommentVNode("",!0),s.renderSlot(t.$slots,"default",{},()=>[s.createTextVNode(s.toDisplayString(t.label),1)])],2)),[[o]])}}}),Xi={class:"flex no-wrap w-full"},eo=s.defineComponent({__name:"Tabs",props:{modelValue:{},activeColor:{}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.reactive({activeTab:t.modelValue,activeColor:t.activeColor,swapTab:o=>{i.activeTab=o}});return s.provide("tabContext",i),s.watch(()=>t.modelValue,()=>{i.activeTab=t.modelValue}),s.watch(()=>i.activeTab,()=>{i.activeTab&&r("update:modelValue",i.activeTab)}),(o,a)=>(s.openBlock(),s.createElementBlock("div",Xi,[s.renderSlot(o.$slots,"default")]))}}),to={};function no(n,e){return s.openBlock(),s.createElementBlock("div",null,"IMPLEMENT TOOLTIP")}const ro=R(to,[["render",no]]),so={class:"container flex items-center"},io={key:0,class:"flex flex-col h-full"},oo={class:"flex flex-col h-full"},ao=R(s.defineComponent({__name:"TouchNumberInput",props:{modelValue:{},stepValue:{default:1},onlyAllowEditWithButtons:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},disallowDecimals:{type:Boolean,default:!1},min:{},max:{},wrapAround:{type:Boolean,default:!1},displayFormatter:{}},emits:["update:modelValue"],setup(n,{emit:e}){const t=n,r=e,i=s.ref(null),o=s.computed(()=>t.displayFormatter?t.displayFormatter(i.value):i.value),a=m=>m==null?0:Number(m)*100/100,l=s.computed(()=>a(t.modelValue).toString());s.watch(()=>t.modelValue,()=>{i.value=l.value},{immediate:!0}),s.watch(()=>i.value,()=>{i.value!==l.value&&r("update:modelValue",a(i.value))});const c=()=>p(Number(i.value)+t.stepValue),u=()=>p(Number(i.value)-t.stepValue),d=()=>p(Number(i.value)+.1),y=()=>p(Number(i.value)-.1),p=m=>{if(t.max!=null&&m>t.max)if(t.wrapAround&&t.min!=null)m=t.min;else return;if(t.min!=null&&m<t.min)if(t.wrapAround&&t.max!=null)m=t.max;else return;i.value=m.toFixed(1)},h=m=>{i.value=m?.toString()||null};return(m,V)=>(s.openBlock(),s.createElementBlock("div",so,[m.disallowDecimals?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",io,[s.createVNode(q,{flat:"",icon:"expand_less","icon-size":"24px",class:"buttons border border-slate-600 left top",style:{"flex-grow":"1"},onClick:c}),s.createVNode(q,{flat:"",icon:"expand_more","icon-size":"24px",class:"buttons border border-slate-600 left bottom",style:{"flex-grow":"1"},onClick:u})])),s.createElementVNode("div",null,[s.createVNode(Xn,{class:"input",filled:"",square:"",type:"tel","model-value":o.value,readonly:m.onlyAllowEditWithButtons,"input-class":"text-center","onUpdate:modelValue":h},{prepend:s.withCtx(()=>[s.renderSlot(m.$slots,"prepend",{},void 0,!0)]),append:s.withCtx(()=>[s.renderSlot(m.$slots,"append",{},void 0,!0)]),_:3},8,["model-value","readonly"])]),s.createElementVNode("div",oo,[s.createVNode(q,{flat:"",icon:"expand_less","icon-size":"24px",class:"buttons border border-slate-600 right top",style:{"flex-grow":"1"},onClick:V[0]||(V[0]=b=>m.disallowDecimals?c():d())}),s.createVNode(q,{flat:"",icon:"expand_more","icon-size":"24px",class:"buttons border border-slate-600 right bottom",style:{"flex-grow":"1"},onClick:V[1]||(V[1]=b=>m.disallowDecimals?u():y())})])]))}}),[["__scopeId","data-v-4e247146"]]);T.Badge=kt,T.Button=q,T.ButtonToggle=rr,T.Card=ir,T.Checkbox=ar,T.Date=di,T.Dialog=hi,T.EllipsisText=ki,T.ExpansionItem=bi,T.Fab=Ci,T.FabAction=Ei,T.Header=Mi,T.Icon=Oe,T.Input=Xn,T.MathOperationButtons=zi,T.NavMenu=vi,T.PullToRefresh=Li,T.ScrollArea=Ai,T.Select=Hi,T.SlideItem=Yi,T.Spinner=Gi,T.Stepper=ji,T.StepperStep=Ki,T.Tab=Qi,T.Tabs=eo,T.TestComponent=er,T.Tooltip=ro,T.TouchNumberInput=ao,T.TransitionGroupFadeSlide=Ue,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
@@ -0,0 +1 @@
1
+ @import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";.fade-enter-active,.fade-leave-active{transition:all .15s ease-in-out}.fade-enter-from,.fade-leave-to{opacity:0}.grow-enter-active,.grow-leave-active{transition:all .15s ease-in-out}.grow-enter-from,.grow-leave-to{transform:scale(0)}.slideUp-enter-active[data-v-b83d43bc],.slideUp-leave-active[data-v-b83d43bc]{transition:all .1s linear}.slideUp-enter-from[data-v-b83d43bc],.slideUp-leave-to[data-v-b83d43bc]{transform:translateY(-20px);opacity:0}.fade-slide-vertical-enter-active,.fade-slide-enter-active{transition:all .2s ease-out;scale:1}.fade-slide-vertical-leave-active,.fade-slide-leave-active{transition:all .2s cubic-bezier(1,.5,.8,1);scale:1}.fade-slide-vertical-enter-from,.fade-slide-vertical-leave-to{transform:translateY(var(--6b3ce032));opacity:0;scale:var(--031b5692)}.fade-slide-enter-from,.fade-slide-leave-to{transform:translate(var(--6b3ce032));opacity:0;scale:var(--031b5692)}header[data-v-37ec0c12]{padding-top:env(safe-area-inset-top)}.input-container.has-value .label[data-v-b1a6cbde],.input-container:focus-within .label[data-v-b1a6cbde]{font-size:.7em;top:2px}.label[data-v-b1a6cbde]{font-size:1em}.shake-enter-active[data-v-b1a6cbde]{animation:bounce-in-b1a6cbde .2s}.shake-leave-active[data-v-b1a6cbde]{animation:bounce-in-b1a6cbde .2s reverse}@keyframes bounce-in-b1a6cbde{0%{opacity:0;transform:translate(20px)}25%{transform:translate(-10px)}75%{transform:translate(10px)}to{transform:translate(0);opacity:1}}.custom-buttons[data-v-15f82af5]{transition:bottom .2s linear;position:fixed;bottom:0;left:0;width:100%;z-index:7500}.nav-menu[data-v-998dcb37]{padding-top:env(safe-area-inset-top)}.scroll-area[data-v-70111b6e]{overflow-y:auto}.scroll-area[data-v-70111b6e]::-webkit-scrollbar-thumb,.scroll-area[data-v-70111b6e]::-webkit-scrollbar{background-color:transparent}.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar{background-color:#0003}.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-thumb{background-color:#0003}.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar,.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-corner,.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-track,.scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-track-piece{background-color:#0000}.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar{background-color:#fff3}.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-thumb{background-color:#fff3}.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar,.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-corner,.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-track,.body--dark .scroll-area[data-v-70111b6e]:hover::-webkit-scrollbar-track-piece{background-color:#0000}.input-container.has-value .label[data-v-e4045f20],.input-container:focus-within .label[data-v-e4045f20]{font-size:.7em;top:2px}.label[data-v-e4045f20]{font-size:1em}.the-spinner[data-v-59a65940]{transform-origin:center;animation:spinner-59a65940 .75s infinite linear}@keyframes spinner-59a65940{to{transform:rotate(360deg)}}.buttons.bottom.left[data-v-4e247146]{border-bottom-right-radius:0;border-top-right-radius:0;border-top-left-radius:0}.buttons.bottom.right[data-v-4e247146]{border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:0}.buttons.top[data-v-4e247146]{border-bottom:none}.buttons.top.left[data-v-4e247146]{border-bottom-right-radius:0;border-top-right-radius:0;border-bottom-left-radius:0}.buttons.top.right[data-v-4e247146]{border-bottom-left-radius:0;border-top-left-radius:0;border-bottom-right-radius:0}.container[data-v-4e247146]{height:80px}.button[data-v-4e247146]{position:relative;width:40px;cursor:pointer}.button[data-v-4e247146]:hover{border:1px solid blue}.button[data-v-4e247146]:hover:after{position:absolute;background-color:#00f;opacity:.1;content:"";height:100%;width:100%;top:0;left:0;border-radius:4px}.input[data-v-4e247146]{height:80px;flex-grow:1}.input[data-v-4e247146] *{font-size:42px}
package/package.json ADDED
@@ -0,0 +1,65 @@
1
+ {
2
+ "name": "@skyloft/windvane",
3
+ "version": "0.1.0",
4
+ "author": "Sverre Skuland <sverre.skuland@gmail.com>",
5
+ "license": "ISC",
6
+ "keywords": [
7
+ "vue",
8
+ "vue3",
9
+ "components",
10
+ "ui"
11
+ ],
12
+ "private": false,
13
+ "type": "module",
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "main": "./dist/windvane.umd.js",
18
+ "module": "./dist/windvane.es.js",
19
+ "types": "./dist/index.d.ts",
20
+ "exports": {
21
+ ".": {
22
+ "types": "./dist/index.d.ts",
23
+ "import": "./dist/windvane.es.js",
24
+ "require": "./dist/windvane.umd.js"
25
+ }
26
+ },
27
+ "scripts": {
28
+ "dev": "vite",
29
+ "build": "vite build",
30
+ "buildOld": "vite build && vue-tsc -p tsconfig.app.json --emitDeclarationOnly",
31
+ "preview": "vite preview",
32
+ "test:unit": "vitest",
33
+ "lint": "eslint . --fix",
34
+ "format": "prettier --write src/"
35
+ },
36
+ "peerDependencies": {
37
+ "luxon": "^3.6.1",
38
+ "vue": "^3.5.7"
39
+ },
40
+ "devDependencies": {
41
+ "@tsconfig/node22": "^22.0.2",
42
+ "@types/jsdom": "^21.1.7",
43
+ "@types/luxon": "^3.6.2",
44
+ "@types/node": "^22.15.32",
45
+ "@vitejs/plugin-vue": "^6.0.0",
46
+ "@vitest/eslint-plugin": "^1.2.7",
47
+ "@vue/eslint-config-prettier": "^10.2.0",
48
+ "@vue/eslint-config-typescript": "^14.5.1",
49
+ "@vue/test-utils": "^2.4.6",
50
+ "@vue/tsconfig": "^0.7.0",
51
+ "eslint": "^9.29.0",
52
+ "eslint-plugin-vue": "~10.2.0",
53
+ "jiti": "^2.4.2",
54
+ "jsdom": "^26.1.0",
55
+ "npm-run-all2": "^8.0.4",
56
+ "prettier": "3.5.3",
57
+ "typescript": "~5.8.0",
58
+ "unplugin-auto-import": "^19.3.0",
59
+ "vite": "^7.0.0",
60
+ "vite-plugin-dts": "^4.5.4",
61
+ "vite-plugin-vue-devtools": "^7.7.7",
62
+ "vitest": "^3.2.4",
63
+ "vue-tsc": "^2.2.10"
64
+ }
65
+ }