gemi 0.13.2 → 0.13.3
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.
- package/dist/app/index.js +2 -272
- package/dist/app/index.js.map +4 -6
- package/dist/app/prismaExtension.d.ts +1 -5
- package/dist/app/prismaExtension.d.ts.map +1 -1
- package/dist/broadcasting/index.js +1 -1
- package/dist/{chunk-qcr71k85.js → chunk-016fjpm4.js} +2 -2
- package/dist/{chunk-qcr71k85.js.map → chunk-016fjpm4.js.map} +1 -1
- package/dist/{chunk-6kfbsmxx.js → chunk-1715jezx.js} +2 -2
- package/dist/{chunk-6kfbsmxx.js.map → chunk-1715jezx.js.map} +1 -1
- package/dist/{chunk-svh4hjg3.js → chunk-1ambdj5q.js} +2 -2
- package/dist/{chunk-svh4hjg3.js.map → chunk-1ambdj5q.js.map} +1 -1
- package/dist/{chunk-jwebzy40.js → chunk-2jsyd1d9.js} +2 -2
- package/dist/{chunk-jwebzy40.js.map → chunk-2jsyd1d9.js.map} +1 -1
- package/dist/chunk-3yzmg8gh.js +4 -0
- package/dist/{chunk-wewz52mc.js.map → chunk-3yzmg8gh.js.map} +7 -4
- package/dist/{chunk-acfdk70y.js → chunk-4yh8p5h0.js} +3 -3
- package/dist/{chunk-acfdk70y.js.map → chunk-4yh8p5h0.js.map} +1 -1
- package/dist/{chunk-tyv9h73f.js → chunk-5h8f3p6p.js} +3 -3
- package/dist/{chunk-tyv9h73f.js.map → chunk-5h8f3p6p.js.map} +1 -1
- package/dist/{chunk-0vq2p4bq.js → chunk-8czq49sy.js} +2 -2
- package/dist/{chunk-0vq2p4bq.js.map → chunk-8czq49sy.js.map} +5 -5
- package/dist/{chunk-5q5qjyxf.js → chunk-946x83cd.js} +2 -2
- package/dist/{chunk-5q5qjyxf.js.map → chunk-946x83cd.js.map} +1 -1
- package/dist/{chunk-tw3t6x2n.js → chunk-9d8bt9fg.js} +3 -3
- package/dist/{chunk-tw3t6x2n.js.map → chunk-9d8bt9fg.js.map} +1 -1
- package/dist/{chunk-0mfpz0sr.js → chunk-9khdm7dc.js} +2 -2
- package/dist/{chunk-0mfpz0sr.js.map → chunk-9khdm7dc.js.map} +1 -1
- package/dist/{chunk-0wa1m3yq.js → chunk-9n24vx5g.js} +3 -3
- package/dist/{chunk-0wa1m3yq.js.map → chunk-9n24vx5g.js.map} +1 -1
- package/dist/{chunk-wbg45cdc.js → chunk-b1gefp3p.js} +2 -2
- package/dist/{chunk-wbg45cdc.js.map → chunk-b1gefp3p.js.map} +1 -1
- package/dist/{chunk-0wr6m6f4.js → chunk-b6bvweyq.js} +3 -3
- package/dist/{chunk-0wr6m6f4.js.map → chunk-b6bvweyq.js.map} +1 -1
- package/dist/{chunk-9aswnsye.js → chunk-cvxxee1w.js} +2 -2
- package/dist/{chunk-9aswnsye.js.map → chunk-cvxxee1w.js.map} +1 -1
- package/dist/{chunk-jn8jhrkd.js → chunk-f3t8bn6m.js} +2 -2
- package/dist/{chunk-jn8jhrkd.js.map → chunk-f3t8bn6m.js.map} +1 -1
- package/dist/{chunk-fe1gn043.js → chunk-fgafrjxy.js} +2 -2
- package/dist/{chunk-fe1gn043.js.map → chunk-fgafrjxy.js.map} +1 -1
- package/dist/{chunk-m2p40y0k.js → chunk-fkmp9894.js} +2 -2
- package/dist/{chunk-m2p40y0k.js.map → chunk-fkmp9894.js.map} +1 -1
- package/dist/{chunk-jxftkhsd.js → chunk-grzfxg62.js} +2 -2
- package/dist/{chunk-jxftkhsd.js.map → chunk-grzfxg62.js.map} +1 -1
- package/dist/{chunk-rre72epn.js → chunk-hh9hfct5.js} +3 -3
- package/dist/{chunk-rre72epn.js.map → chunk-hh9hfct5.js.map} +1 -1
- package/dist/{chunk-67ytmbmn.js → chunk-jme4caj2.js} +3 -3
- package/dist/{chunk-67ytmbmn.js.map → chunk-jme4caj2.js.map} +1 -1
- package/dist/chunk-ny36ys64.js +4 -0
- package/dist/{chunk-3q85w7aa.js.map → chunk-ny36ys64.js.map} +1 -1
- package/dist/chunk-p7s41mxq.js +4 -0
- package/dist/{chunk-6pwjkfk5.js.map → chunk-p7s41mxq.js.map} +1 -1
- package/dist/{chunk-4e18rqet.js → chunk-qrz4g7q0.js} +2 -2
- package/dist/{chunk-4e18rqet.js.map → chunk-qrz4g7q0.js.map} +1 -1
- package/dist/{chunk-cgh2sw3g.js → chunk-rwkjg2qn.js} +2 -2
- package/dist/{chunk-cgh2sw3g.js.map → chunk-rwkjg2qn.js.map} +1 -1
- package/dist/{chunk-68kvbrqd.js → chunk-thfv9s7s.js} +2 -2
- package/dist/{chunk-68kvbrqd.js.map → chunk-thfv9s7s.js.map} +1 -1
- package/dist/{chunk-95b1a8cw.js → chunk-ty7yh4d4.js} +2 -2
- package/dist/{chunk-95b1a8cw.js.map → chunk-ty7yh4d4.js.map} +1 -1
- package/dist/{chunk-nxrhps23.js → chunk-vjym5jdx.js} +2 -2
- package/dist/{chunk-nxrhps23.js.map → chunk-vjym5jdx.js.map} +1 -1
- package/dist/{chunk-pvxzx61f.js → chunk-wp91ggkr.js} +3 -3
- package/dist/{chunk-pvxzx61f.js.map → chunk-wp91ggkr.js.map} +1 -1
- package/dist/{chunk-3nzz6kqw.js → chunk-wxb0n2fp.js} +2 -2
- package/dist/{chunk-3nzz6kqw.js.map → chunk-wxb0n2fp.js.map} +1 -1
- package/dist/{chunk-6fy0y9na.js → chunk-y8ggk3r3.js} +2 -2
- package/dist/{chunk-6fy0y9na.js.map → chunk-y8ggk3r3.js.map} +1 -1
- package/dist/{chunk-yvrp97kk.js → chunk-zja5jcxt.js} +3 -3
- package/dist/{chunk-yvrp97kk.js.map → chunk-zja5jcxt.js.map} +1 -1
- package/dist/{chunk-00q77h4a.js → chunk-zt3j8zag.js} +2 -2
- package/dist/{chunk-00q77h4a.js.map → chunk-zt3j8zag.js.map} +1 -1
- package/dist/email/index.js +1 -1
- package/dist/facades/index.js +2 -2
- package/dist/facades/index.js.map +1 -1
- package/dist/http/index.js +2 -2
- package/dist/http/index.js.map +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/kernel/index.js +2 -2
- package/dist/kernel/index.js.map +1 -1
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +1 -1
- package/dist/services/index.js +62 -73
- package/dist/services/index.js.map +5 -17
- package/package.json +3 -3
- package/dist/chunk-3q85w7aa.js +0 -4
- package/dist/chunk-6pwjkfk5.js +0 -4
- package/dist/chunk-wewz52mc.js +0 -3
package/dist/facades/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{G as xc,H as _c,I as M,J as a,K as W,L as z,M as F,O as jc,P as d,Q as V,R as x}from"../http/index.js";import{U as B}from"../chunk-9aswnsye.js";import{V as Wc}from"../chunk-mtbjk5px.js";import{qc as Nc}from"../chunk-pvxzx61f.js";import{rc as k,tc as X,uc as Cc}from"../chunk-fe1gn043.js";import{vc as $c}from"../chunk-3q85w7aa.js";import{xc as D}from"../chunk-nxrhps23.js";import{zc as Kc}from"../chunk-6fy0y9na.js";import{AsyncLocalStorage as Zc}from"async_hooks";class N extends D{service;static _name="BroadcastingServiceContainer";publishCb;context=new Zc;constructor(c){super();this.service=c}onPublish(c){this.publishCb=c}publish(...c){let[s,f,i]=c;this.publishCb(s,f,i)}async handleMessage(c,s){let f=JSON.parse(s);if(f.type==="subscribe"){let i=Object.entries(this.service.channels).sort(([l],[w])=>l.length-w.length);for(let[l,w]of i){let b=new URLPattern({pathname:l});if(b.test({pathname:f.topic})){let y=b.exec({pathname:f.topic})?.pathname.groups,g=new w;if(await g.subscribe.call(g,y))c.subscribe(f.topic);break}}}if(f.type==="broadcast")c.publish(f.topic,JSON.stringify({topic:f.topic,data:f.payload}));if(f.type==="unsubscribe")c.unsubscribe(f.topic)}run(c,s){let f=c.get("Cookie"),i=new Map;if(f){let l=f.split(";");for(let w of l){let[b,y]=w.split("=");i.set(b.trim(),y.trim())}}this.context.run({headers:c,cookies:i},s)}}class U{static async user(){let c=z.getStore(),s=N.use().context.getStore(),f="",i="";if(c?.req)f=c.req.cookies.get("access_token"),i=c.req.headers.get("User-Agent");if(s?.cookies)i=s.headers.get("User-Agent"),f=s.cookies.get("access_token");let l=c?.user;if(!l)l=(await x.use().getSession(f,i))?.user,c?.setUser(l);if(l)return l;return null}static async guard(c){let s=await U.user();if(!s)throw new d;try{if(!await c(s))throw new d}catch(f){throw new d}}static async guardSafe(c){let s=await U.user();if(!s)return!1;try{return await c(s)}catch(f){return!1}}static async authenticate(c){await x.use().authenticate(c)}static async createMagicLink(c){return await x.use().createMagicLinkToken(c)}}class G{static getSupportedLocales(){return B.use().supportedLocales}static getDefaultLocale(){return B.use().service.defaultLocale}static locale(){return B.use().detectLocale(z.getStore().req)}static setLocale(c=G.locale()){let s=B.use(),f=c;if(!s.supportedLocales.includes(c))f=s.service.defaultLocale;return z.getStore().setCookie("i18n-locale",f,{expires:new Date(Date.now()+31536000000)}),f}}var Oc=Kc(Nc(),1);import{Buffer as Hc}from"buffer";class I extends D{service;static _name="FileStorageServiceContainer";constructor(c){super();this.service=c}}class Lc{static async put(c){return I.use().service.driver.put(c)}static async metadata(c){let s=Hc.from(await c.arrayBuffer());try{return await Oc.default(s).metadata()}catch{return{}}}static async fetch(c){return I.use().service.driver.fetch(c)}static list(c){return I.use().service.driver.list(c)}static delete(){}}function Fc(c){return Object.fromEntries(Object.entries(c).filter(([,s])=>{return s!==null&&s!==void 0}))}class Y extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class e{createSession(){throw new Y}deleteSession(){throw new Y}findSession(){throw new Y}findUserByEmailAddress(){throw new Y}updateSession(){throw new Y}createUser(){throw new Y}}class zc extends F{schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Tc extends F{schema={name:{string:"Invalid name",required:"Name is required","min:2":"Name must be at least 3 characters"},email:{string:"Invalid email",required:"Email is required",email:"Invalid email"},password:{required:"Password is required","min:8":"Password must be at least 8 characters"}}}class Dc extends F{schema={email:{required:"Email is required",email:"Invalid email"}}}class Bc extends F{schema={password:{required:"Password is required",password:"Invalid password"}}}class o extends xc{provider=x.use()?.provider;async me(){let c=await U.user();if(!c)throw new jc;return c}async verifyEmail(c=new F){let s=await c.input(),f=x.use()?.provider,i=await f.adapter.findUserByVerificationToken(s.get("token"));if(!i)return{email:null};if(await f.adapter.verifyUser(i.email),i)return{email:i.email};return{email:null}}async signInWithMagicLink(c=new F){let s=x.use(),f=s.provider,i=c.search.get("token"),l=decodeURIComponent(c.search.get("email")),w=null;try{w=await f.adapter.findUserMagicLinkToken({email:l,token:i})}catch(y){return console.log(y),{error:JSON.stringify(y)}}if(!w)return{error:"Invalid token"};await f.adapter.verifyUser(l),await f.adapter.deleteMagicLinkToken(l);let b=await s.createOrUpdateSession({email:l});return c.ctx().setCookie("access_token",b.token,{expires:b.absoluteExpiresAt}),await f.onSignIn(b),{session:b}}async signInWithPin(c=new F){let s=x.use(),f=s.provider,i=await c.input(),{email:l,pin:w}=i.toJSON();if(!await f.adapter.findUserMagicLinkToken({email:l,pin:w}))throw new W({pin:["Invalid pin"]});await f.adapter.deleteMagicLinkToken(l),await f.adapter.verifyUser(l);let y=await s.createOrUpdateSession({email:l});return c.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await f.onSignIn(y),{session:y}}async signIn(c=new zc){let s=await c.input(),{email:f,password:i}=s.toJSON(),l=x.use().provider,w=await l.adapter.findUserByEmailAddress(f,l.verifyEmail);if(!w)throw new W({invalid_credentials:["Invalid credentials"]});if(!await l.verifyPassword(i,w.password))throw new W({invalid_credentials:["Invalid credentials"]});let y=await x.use().createOrUpdateSession({email:w.email,id:w.id});c.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await l.onSignIn(w);let{password:g,...n}=w;return n}async signUp(c=new Tc){let s=await c.input(),{email:f,password:i,name:l,invitationId:w}=s.toJSON(),b=x.use().provider;if(await b.adapter.findUserByEmailAddress(f,!1))throw new W({email:["Email address already exists"]});let g=await b.hashPassword(i),n=B.use().detectLocale(c),p;if(w){if(p=await b.adapter.findInvitation(w,f),p)await b.adapter.deleteInvitationById(w)}let O,L;if(p)O=await b.adapter.createUser({email:f,name:l,password:g,emailVerifiedAt:new Date,locale:n}),await b.adapter.createAccount({organizationId:p.organizationId,userId:O.id,organizationRole:p.role});else L=await b.generateEmailVerificationToken(f),O=await b.adapter.createUser({email:f,name:l,password:g,verificationToken:L,locale:n});return await b.onSignUp(O,L),O}async signOut(c=new F){let s=c.cookies.get("access_token"),f=await U.user(),i=x.use().provider;return await i.adapter.deleteSession({token:s}),c.ctx().setCookie("access_token","",{expires:new Date(0)}),await i.onSignOut(f),{}}async forgotPassword(c=new Dc){let s=await c.input(),{email:f}=s.toJSON(),i=x.use().provider,l=await i.adapter.findUserByEmailAddress(f,i.verifyEmail);if(!l)return{};let w=await i.generateForgotPasswordToken(l);return await i.adapter.createPasswordResetToken({user:l,token:w}),await i.onForgotPassword(l,w),{}}async resetPassword(c=new Bc){let s=x.use().provider,f=await c.input(),{password:i,token:l}=f.toJSON(),w=await s.adapter.findPasswordResetToken({token:l});if(!w)throw new W({token:["Invalid token"]});if(V.Instant.from(w.createdAt.toISOString()).add({hours:24}).until(V.Now.instant()).sign>=0)throw new W({token:["Token expired"]});await s.adapter.deletePasswordResetToken({token:l});let y=await s.adapter.findUserByEmailAddress(w.user.email,s.verifyEmail);if(!y)throw new W({email:["User not found"]});let g=await s.hashPassword(i);return await s.adapter.updateUserPassword({id:y.id,password:g}),await s.adapter.deleteAllUserSessions(y.id),await s.onResetPassword(y),{}}async changePassword(c=new F){let s=x.use().provider,f=await U.user(),i=await c.input(),{oldPassword:l,newPassword:w}=i.toJSON(),{password:b}=await s.adapter.findUserByEmailAddress(f.email,s.verifyEmail);if(!await s.verifyPassword(l,b))throw new W({oldPassword:["Incorrect password"]});let g=await s.hashPassword(w);return await s.adapter.updateUserPassword({id:f.id,password:g}),await s.adapter.deleteAllUserSessions(f.id),{}}async oauthRedirect(c=new F){let{provider:s}=c.params,f=x.use().provider.oauthProviders[s];if(!f)throw new Error(`Invalid provider: ${s}`);return{destination:await f.getRedirectUrl(c)}}async oauthCallback(c=new F){let{provider:s}=c.params,f=x.use(),i=f.provider,l=i.oauthProviders[s],{email:w,name:b,username:y,providerId:g}=await l.onCallback(c);if(!y&&!w)throw new Error("Email or username is required");let n=w??`${y}:${s}`,p=await i.adapter.findUserByEmailAddress(n,!1),O=B.use().detectLocale(c);if(!p)p=await i.adapter.createUser({email:n,name:b,locale:O,emailVerifiedAt:new Date}),await i.adapter.createSocialAccount({provider:s,userId:p.id,email:n,username:y,providerId:g,expiresAt:new Date,accessToken:"",refreshToken:""});let L=await f.createOrUpdateSession({email:p.email,id:p.id});return c.ctx().setCookie("access_token",L.token,{expires:L.expiresAt}),await i.onSignIn(p),{destination:i.redirectPath}}async createMagicLinkToken(c=new F){let s=await c.input(),{email:f}=s.toJSON(),i=x.use(),l=i.provider,{user:w,pin:b,token:y}=await i.createMagicLinkToken(f);return await l.onMagicLinkCreated(w,{email:f,pin:b,token:y}),{email:f}}}class oc extends a{routes={"/:provider":this.redirect([o,"oauthRedirect"]),"/:provider/callback":this.redirect([o,"oauthCallback"])}}class cc extends a{routes={"/sign-in/magic-link":this.view("auth/MagicLinkSignIn",[o,"signInWithMagicLink"]),"/oauth":oc}}class sc extends M{middlewares=["cache:private"];routes={"/sign-in":this.post(o,"signIn"),"/sign-up":this.post(o,"signUp"),"/sign-out":this.post(o,"signOut"),"/forgot-password":this.post(o,"forgotPassword"),"/reset-password":this.post(o,"resetPassword"),"/change-password":this.post(o,"changePassword"),"/verify-email":this.post(o,"verifyEmail"),"/me":this.get(o,"me").middleware(["auth"]),"/magic-link":this.post(o,"createMagicLinkToken"),"/sign-in-with-pin":this.post(o,"signInWithPin")}}class Qc extends $c{basePath="/auth";verifyEmail=!0;redirectPath="/dashboard";sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new e;oauthProviders={};boot(){}async verifyPassword(c,s){return await Bun.password.verify(c,s)}async hashPassword(c){return await Bun.password.hash(c)}async generateForgotPasswordToken(c){let s=new Bun.CryptoHasher("sha256");return s.update(`${c.email}${Date.now()}`),s.digest("hex")}generateEmailVerificationToken(c){if(!this.verifyEmail)return"";let s=new Bun.CryptoHasher("sha256");return s.update(`${c}${Date.now()}`),s.digest("hex")}generateMagicLinkToken(c){let s=new Bun.CryptoHasher("sha256");return s.update(`${c}${Date.now()}`),s.digest("hex")}extendSession(c){return{}}onSignUp(c,s){}onSignIn(c){}onSignOut(c){}onForgotPassword(c,s){}onResetPassword(c){}onMagicLinkCreated(c,s){return}}class fc extends M{middlewares=["cache:private,0,no-store"];routes={"/translations/:locale/:scope*":this.get(async()=>{let c=new F,s=`/${c.params.scope??""}`,i=c.params.locale??B.use().detectLocale(c),l=B.use().getPageTranslations(i,s);return c.ctx().setCookie("i18n-locale",i,{expires:new Date(Date.now()+31536000000)}),{[i]:l}})}}class ic extends M{routes={"/resize":this.file(async()=>{let c=new F,s=new URL(c.rawRequest.url),f=s.searchParams.get("url"),i=Number(s.searchParams.get("w")),l=Number(s.searchParams.get("h")),w=s.searchParams.get("fit")??"cover",b=Number(s.searchParams.get("q"));if(!f)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});let g=`${f.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${f}`,n=await fetch(g);if(!n.ok)return new Response(JSON.stringify({error:"Image not found",info:g}),{headers:{"Content-Type":"application/json"},status:404});let p=Buffer.from(await n.arrayBuffer()),O=await Jc.use().service.driver.resize(p,{height:l,width:i,fit:w,quality:b});return n.headers.delete("Content-Type"),n.headers.delete("Content-Length"),new Response(O,{headers:{"Content-Type":"image/webp","Content-Length":`${O.byteLength}`,...n.headers.toJSON()}})})}}class Jc extends D{service;static _name="ImageOptimizationServiceContainer";constructor(c){super();this.service=c}}import{mkdir as lc,exists as wc,readdir as Sc}from"fs/promises";class R{static channel(c,s){let f=N.use().service.channels[c];if(!f)return console.error(`Channel ${c} not found`),{publish:()=>{}};let i=new f;return{publish:(l,w=!1)=>{let b=X(c,s);N.use().publish(b,JSON.stringify({topic:b,data:i.publish(l)}),w)}}}}class _ extends D{service;static _name="LoggingServiceContainer";writer;isReady=!1;logsDirPath=`${process.env.ROOT_DIR}/storage/logs`;flushTimeout;fileSize=0;writerSize=0;isCreatingFile=!1;currentLogFilePath;constructor(c){super();this.service=c;this.boot().then(()=>{this.isReady=!0})}async boot(){if(!process.env.ROOT_DIR)return;if(!await wc(`${process.env.ROOT_DIR}/storage`))await lc(`${process.env.ROOT_DIR}/storage`);if(!await wc(this.logsDirPath))await lc(this.logsDirPath);this.newLogFile()}async newLogFile(){if(!await wc(this.logsDirPath))await lc(this.logsDirPath);if(this.isCreatingFile=!0,this.currentLogFilePath){this.writer.flush(),this.writer.end(),this.writer=null;let f=new File([await Bun.file(this.currentLogFilePath).arrayBuffer()],this.currentLogFilePath.split("/").pop(),{type:"text/plain"});this.service.onLogFileClosed(f),this.fileSize=0,this.writerSize=0}let s=(await Sc(this.logsDirPath)).sort().reverse()[0];if(s){let f=Bun.file(`${this.logsDirPath}/${s}`);if(f.size<this.service.maxFileSize)this.currentLogFilePath=`${this.logsDirPath}/${s}`,this.writer=f.writer(),this.writer.write(await f.text()),this.writer.write(`
|
|
2
|
+
import{G as xc,H as _c,I as M,J as a,K as W,L as z,M as F,O as jc,P as d,Q as V,R as x}from"../http/index.js";import{U as B}from"../chunk-cvxxee1w.js";import{V as Wc}from"../chunk-mtbjk5px.js";import{rc as Nc}from"../chunk-wp91ggkr.js";import{sc as k,uc as X,vc as Cc}from"../chunk-fgafrjxy.js";import{wc as $c}from"../chunk-ny36ys64.js";import{yc as D}from"../chunk-vjym5jdx.js";import{Ac as Kc}from"../chunk-y8ggk3r3.js";import{AsyncLocalStorage as Zc}from"async_hooks";class N extends D{service;static _name="BroadcastingServiceContainer";publishCb;context=new Zc;constructor(c){super();this.service=c}onPublish(c){this.publishCb=c}publish(...c){let[s,f,i]=c;this.publishCb(s,f,i)}async handleMessage(c,s){let f=JSON.parse(s);if(f.type==="subscribe"){let i=Object.entries(this.service.channels).sort(([l],[w])=>l.length-w.length);for(let[l,w]of i){let b=new URLPattern({pathname:l});if(b.test({pathname:f.topic})){let y=b.exec({pathname:f.topic})?.pathname.groups,g=new w;if(await g.subscribe.call(g,y))c.subscribe(f.topic);break}}}if(f.type==="broadcast")c.publish(f.topic,JSON.stringify({topic:f.topic,data:f.payload}));if(f.type==="unsubscribe")c.unsubscribe(f.topic)}run(c,s){let f=c.get("Cookie"),i=new Map;if(f){let l=f.split(";");for(let w of l){let[b,y]=w.split("=");i.set(b.trim(),y.trim())}}this.context.run({headers:c,cookies:i},s)}}class U{static async user(){let c=z.getStore(),s=N.use().context.getStore(),f="",i="";if(c?.req)f=c.req.cookies.get("access_token"),i=c.req.headers.get("User-Agent");if(s?.cookies)i=s.headers.get("User-Agent"),f=s.cookies.get("access_token");let l=c?.user;if(!l)l=(await x.use().getSession(f,i))?.user,c?.setUser(l);if(l)return l;return null}static async guard(c){let s=await U.user();if(!s)throw new d;try{if(!await c(s))throw new d}catch(f){throw new d}}static async guardSafe(c){let s=await U.user();if(!s)return!1;try{return await c(s)}catch(f){return!1}}static async authenticate(c){await x.use().authenticate(c)}static async createMagicLink(c){return await x.use().createMagicLinkToken(c)}}class G{static getSupportedLocales(){return B.use().supportedLocales}static getDefaultLocale(){return B.use().service.defaultLocale}static locale(){return B.use().detectLocale(z.getStore().req)}static setLocale(c=G.locale()){let s=B.use(),f=c;if(!s.supportedLocales.includes(c))f=s.service.defaultLocale;return z.getStore().setCookie("i18n-locale",f,{expires:new Date(Date.now()+31536000000)}),f}}var Oc=Kc(Nc(),1);import{Buffer as Hc}from"buffer";class I extends D{service;static _name="FileStorageServiceContainer";constructor(c){super();this.service=c}}class Lc{static async put(c){return I.use().service.driver.put(c)}static async metadata(c){let s=Hc.from(await c.arrayBuffer());try{return await Oc.default(s).metadata()}catch{return{}}}static async fetch(c){return I.use().service.driver.fetch(c)}static list(c){return I.use().service.driver.list(c)}static delete(){}}function Fc(c){return Object.fromEntries(Object.entries(c).filter(([,s])=>{return s!==null&&s!==void 0}))}class Y extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class e{createSession(){throw new Y}deleteSession(){throw new Y}findSession(){throw new Y}findUserByEmailAddress(){throw new Y}updateSession(){throw new Y}createUser(){throw new Y}}class zc extends F{schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Tc extends F{schema={name:{string:"Invalid name",required:"Name is required","min:2":"Name must be at least 3 characters"},email:{string:"Invalid email",required:"Email is required",email:"Invalid email"},password:{required:"Password is required","min:8":"Password must be at least 8 characters"}}}class Dc extends F{schema={email:{required:"Email is required",email:"Invalid email"}}}class Bc extends F{schema={password:{required:"Password is required",password:"Invalid password"}}}class o extends xc{provider=x.use()?.provider;async me(){let c=await U.user();if(!c)throw new jc;return c}async verifyEmail(c=new F){let s=await c.input(),f=x.use()?.provider,i=await f.adapter.findUserByVerificationToken(s.get("token"));if(!i)return{email:null};if(await f.adapter.verifyUser(i.email),i)return{email:i.email};return{email:null}}async signInWithMagicLink(c=new F){let s=x.use(),f=s.provider,i=c.search.get("token"),l=decodeURIComponent(c.search.get("email")),w=null;try{w=await f.adapter.findUserMagicLinkToken({email:l,token:i})}catch(y){return console.log(y),{error:JSON.stringify(y)}}if(!w)return{error:"Invalid token"};await f.adapter.verifyUser(l),await f.adapter.deleteMagicLinkToken(l);let b=await s.createOrUpdateSession({email:l});return c.ctx().setCookie("access_token",b.token,{expires:b.absoluteExpiresAt}),await f.onSignIn(b),{session:b}}async signInWithPin(c=new F){let s=x.use(),f=s.provider,i=await c.input(),{email:l,pin:w}=i.toJSON();if(!await f.adapter.findUserMagicLinkToken({email:l,pin:w}))throw new W({pin:["Invalid pin"]});await f.adapter.deleteMagicLinkToken(l),await f.adapter.verifyUser(l);let y=await s.createOrUpdateSession({email:l});return c.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await f.onSignIn(y),{session:y}}async signIn(c=new zc){let s=await c.input(),{email:f,password:i}=s.toJSON(),l=x.use().provider,w=await l.adapter.findUserByEmailAddress(f,l.verifyEmail);if(!w)throw new W({invalid_credentials:["Invalid credentials"]});if(!await l.verifyPassword(i,w.password))throw new W({invalid_credentials:["Invalid credentials"]});let y=await x.use().createOrUpdateSession({email:w.email,id:w.id});c.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await l.onSignIn(w);let{password:g,...n}=w;return n}async signUp(c=new Tc){let s=await c.input(),{email:f,password:i,name:l,invitationId:w}=s.toJSON(),b=x.use().provider;if(await b.adapter.findUserByEmailAddress(f,!1))throw new W({email:["Email address already exists"]});let g=await b.hashPassword(i),n=B.use().detectLocale(c),p;if(w){if(p=await b.adapter.findInvitation(w,f),p)await b.adapter.deleteInvitationById(w)}let O,L;if(p)O=await b.adapter.createUser({email:f,name:l,password:g,emailVerifiedAt:new Date,locale:n}),await b.adapter.createAccount({organizationId:p.organizationId,userId:O.id,organizationRole:p.role});else L=await b.generateEmailVerificationToken(f),O=await b.adapter.createUser({email:f,name:l,password:g,verificationToken:L,locale:n});return await b.onSignUp(O,L),O}async signOut(c=new F){let s=c.cookies.get("access_token"),f=await U.user(),i=x.use().provider;return await i.adapter.deleteSession({token:s}),c.ctx().setCookie("access_token","",{expires:new Date(0)}),await i.onSignOut(f),{}}async forgotPassword(c=new Dc){let s=await c.input(),{email:f}=s.toJSON(),i=x.use().provider,l=await i.adapter.findUserByEmailAddress(f,i.verifyEmail);if(!l)return{};let w=await i.generateForgotPasswordToken(l);return await i.adapter.createPasswordResetToken({user:l,token:w}),await i.onForgotPassword(l,w),{}}async resetPassword(c=new Bc){let s=x.use().provider,f=await c.input(),{password:i,token:l}=f.toJSON(),w=await s.adapter.findPasswordResetToken({token:l});if(!w)throw new W({token:["Invalid token"]});if(V.Instant.from(w.createdAt.toISOString()).add({hours:24}).until(V.Now.instant()).sign>=0)throw new W({token:["Token expired"]});await s.adapter.deletePasswordResetToken({token:l});let y=await s.adapter.findUserByEmailAddress(w.user.email,s.verifyEmail);if(!y)throw new W({email:["User not found"]});let g=await s.hashPassword(i);return await s.adapter.updateUserPassword({id:y.id,password:g}),await s.adapter.deleteAllUserSessions(y.id),await s.onResetPassword(y),{}}async changePassword(c=new F){let s=x.use().provider,f=await U.user(),i=await c.input(),{oldPassword:l,newPassword:w}=i.toJSON(),{password:b}=await s.adapter.findUserByEmailAddress(f.email,s.verifyEmail);if(!await s.verifyPassword(l,b))throw new W({oldPassword:["Incorrect password"]});let g=await s.hashPassword(w);return await s.adapter.updateUserPassword({id:f.id,password:g}),await s.adapter.deleteAllUserSessions(f.id),{}}async oauthRedirect(c=new F){let{provider:s}=c.params,f=x.use().provider.oauthProviders[s];if(!f)throw new Error(`Invalid provider: ${s}`);return{destination:await f.getRedirectUrl(c)}}async oauthCallback(c=new F){let{provider:s}=c.params,f=x.use(),i=f.provider,l=i.oauthProviders[s],{email:w,name:b,username:y,providerId:g}=await l.onCallback(c);if(!y&&!w)throw new Error("Email or username is required");let n=w??`${y}:${s}`,p=await i.adapter.findUserByEmailAddress(n,!1),O=B.use().detectLocale(c);if(!p)p=await i.adapter.createUser({email:n,name:b,locale:O,emailVerifiedAt:new Date}),await i.adapter.createSocialAccount({provider:s,userId:p.id,email:n,username:y,providerId:g,expiresAt:new Date,accessToken:"",refreshToken:""});let L=await f.createOrUpdateSession({email:p.email,id:p.id});return c.ctx().setCookie("access_token",L.token,{expires:L.expiresAt}),await i.onSignIn(p),{destination:i.redirectPath}}async createMagicLinkToken(c=new F){let s=await c.input(),{email:f}=s.toJSON(),i=x.use(),l=i.provider,{user:w,pin:b,token:y}=await i.createMagicLinkToken(f);return await l.onMagicLinkCreated(w,{email:f,pin:b,token:y}),{email:f}}}class oc extends a{routes={"/:provider":this.redirect([o,"oauthRedirect"]),"/:provider/callback":this.redirect([o,"oauthCallback"])}}class cc extends a{routes={"/sign-in/magic-link":this.view("auth/MagicLinkSignIn",[o,"signInWithMagicLink"]),"/oauth":oc}}class sc extends M{middlewares=["cache:private"];routes={"/sign-in":this.post(o,"signIn"),"/sign-up":this.post(o,"signUp"),"/sign-out":this.post(o,"signOut"),"/forgot-password":this.post(o,"forgotPassword"),"/reset-password":this.post(o,"resetPassword"),"/change-password":this.post(o,"changePassword"),"/verify-email":this.post(o,"verifyEmail"),"/me":this.get(o,"me").middleware(["auth"]),"/magic-link":this.post(o,"createMagicLinkToken"),"/sign-in-with-pin":this.post(o,"signInWithPin")}}class Qc extends $c{basePath="/auth";verifyEmail=!0;redirectPath="/dashboard";sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new e;oauthProviders={};boot(){}async verifyPassword(c,s){return await Bun.password.verify(c,s)}async hashPassword(c){return await Bun.password.hash(c)}async generateForgotPasswordToken(c){let s=new Bun.CryptoHasher("sha256");return s.update(`${c.email}${Date.now()}`),s.digest("hex")}generateEmailVerificationToken(c){if(!this.verifyEmail)return"";let s=new Bun.CryptoHasher("sha256");return s.update(`${c}${Date.now()}`),s.digest("hex")}generateMagicLinkToken(c){let s=new Bun.CryptoHasher("sha256");return s.update(`${c}${Date.now()}`),s.digest("hex")}extendSession(c){return{}}onSignUp(c,s){}onSignIn(c){}onSignOut(c){}onForgotPassword(c,s){}onResetPassword(c){}onMagicLinkCreated(c,s){return}}class fc extends M{middlewares=["cache:private,0,no-store"];routes={"/translations/:locale/:scope*":this.get(async()=>{let c=new F,s=`/${c.params.scope??""}`,i=c.params.locale??B.use().detectLocale(c),l=B.use().getPageTranslations(i,s);return c.ctx().setCookie("i18n-locale",i,{expires:new Date(Date.now()+31536000000)}),{[i]:l}})}}class ic extends M{routes={"/resize":this.file(async()=>{let c=new F,s=new URL(c.rawRequest.url),f=s.searchParams.get("url"),i=Number(s.searchParams.get("w")),l=Number(s.searchParams.get("h")),w=s.searchParams.get("fit")??"cover",b=Number(s.searchParams.get("q"));if(!f)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});let g=`${f.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${f}`,n=await fetch(g);if(!n.ok)return new Response(JSON.stringify({error:"Image not found",info:g}),{headers:{"Content-Type":"application/json"},status:404});let p=Buffer.from(await n.arrayBuffer()),O=await Jc.use().service.driver.resize(p,{height:l,width:i,fit:w,quality:b});return n.headers.delete("Content-Type"),n.headers.delete("Content-Length"),new Response(O,{headers:{"Content-Type":"image/webp","Content-Length":`${O.byteLength}`,...n.headers.toJSON()}})})}}class Jc extends D{service;static _name="ImageOptimizationServiceContainer";constructor(c){super();this.service=c}}import{mkdir as lc,exists as wc,readdir as Sc}from"fs/promises";class R{static channel(c,s){let f=N.use().service.channels[c];if(!f)return console.error(`Channel ${c} not found`),{publish:()=>{}};let i=new f;return{publish:(l,w=!1)=>{let b=X(c,s);N.use().publish(b,JSON.stringify({topic:b,data:i.publish(l)}),w)}}}}class _ extends D{service;static _name="LoggingServiceContainer";writer;isReady=!1;logsDirPath=`${process.env.ROOT_DIR}/storage/logs`;flushTimeout;fileSize=0;writerSize=0;isCreatingFile=!1;currentLogFilePath;constructor(c){super();this.service=c;this.boot().then(()=>{this.isReady=!0})}async boot(){if(!process.env.ROOT_DIR)return;if(!await wc(`${process.env.ROOT_DIR}/storage`))await lc(`${process.env.ROOT_DIR}/storage`);if(!await wc(this.logsDirPath))await lc(this.logsDirPath);this.newLogFile()}async newLogFile(){if(!await wc(this.logsDirPath))await lc(this.logsDirPath);if(this.isCreatingFile=!0,this.currentLogFilePath){this.writer.flush(),this.writer.end(),this.writer=null;let f=new File([await Bun.file(this.currentLogFilePath).arrayBuffer()],this.currentLogFilePath.split("/").pop(),{type:"text/plain"});this.service.onLogFileClosed(f),this.fileSize=0,this.writerSize=0}let s=(await Sc(this.logsDirPath)).sort().reverse()[0];if(s){let f=Bun.file(`${this.logsDirPath}/${s}`);if(f.size<this.service.maxFileSize)this.currentLogFilePath=`${this.logsDirPath}/${s}`,this.writer=f.writer(),this.writer.write(await f.text()),this.writer.write(`
|
|
3
3
|
`),this.writer.flush(),this.fileSize=f.size}if(!this.writer){let f=`${new Date(Date.now()).toISOString()}.log`.replaceAll(":","-");this.currentLogFilePath=`${this.logsDirPath}/${f}`;let i=Bun.file(`${this.logsDirPath}/${f}`);this.writer=i.writer(),this.fileSize=0,this.writerSize=0}this.isCreatingFile=!1}async log(c,s,f={}){if(!this.isReady)await new Promise((y)=>{let g=setInterval(()=>{if(this.isReady)y({}),clearInterval(g)},100)});let i=z.getStore(),l={};if(i)l={url:i.req.rawRequest.url,method:i.req.rawRequest.method,headers:i.req.rawRequest.headers,body:i.req.rawRequest.body};let w={timestamp:new Date(Date.now()).toISOString(),env:"production",level:c,message:s,metadata:{...l,...f}},b="";try{b=JSON.stringify(w)}catch(y){throw new Error("Metadata must be a valid JSON object")}this.writerSize+=b.length,this.fileSize+=b.length,this.writer.write(b),this.writer.write(`
|
|
4
4
|
`),R.channel("/logs/live",{}).publish(JSON.stringify(w)),this.service.onLogCreated(w),this.tryFlush()}async tryFlush(){if(this.fileSize>this.service.maxFileSize){if(!this.isCreatingFile)await this.newLogFile()}if(this.writerSize>this.service.maxFileSize/2)await this.writer.flush(),this.writerSize=0,await this.newLogFile();else clearTimeout(this.flushTimeout),this.flushTimeout=setTimeout(async()=>{await this.writer.flush(),this.writerSize=0},100)}}class bc extends M{middlewares=["cache:private,0"];routes={"/live":this.get(async()=>{let c=Bun.file(_.use().currentLogFilePath);return new Response(await c.text(),{headers:{"Content-Type":"text/plain"}})})}}function Gc(c){let s=new Map;for(let f of c)if(typeof f==="string"){let[i,l=""]=f.split(":");if(i.startsWith("-")){if(s.has(i.replace("-","")))s.delete(i.replace("-",""))}else s.set(i,l.split(",").filter(Boolean))}else s.set(f,[]);return s}class E extends D{service;static _name="MiddlewareServiceContainer";constructor(c){super();this.service=c}runMiddleware(c){let s=new F;return Array.from(Gc(c).entries()).map(([f,i])=>{if(typeof f==="string"){let l=this.service.aliases[f];if(l){let w=new l(s);return()=>w.run.call(w,...i)}}else{if(_c(f)){let l=new f(s);return l.run.bind(l)}return f}}).filter(Boolean).reduce((f,i)=>{return async()=>{return{...await f(),...await i()}}},()=>Promise.resolve({}))()}}function Ic(c){return"run"in c}function Vc(c){return Object.hasOwn(c,"get")||Object.hasOwn(c,"post")||Object.hasOwn(c,"put")||Object.hasOwn(c,"delete")}function Ec(c){return Object.hasOwn(c,"first")&&Object.hasOwn(c,"second")}function kc(c){if("__brand"in c)return c.__brand==="ApiRouter";return!1}function yc(c,s="",f=[]){let i={};function l(w,b,y,g){let n=w==="/"?"":w,p=s==="/"?"":s,O=(`${p}${n}`===""?"/":`${p}${n}`).replaceAll("//","/");if(!i[O])i[O]={};i[O][b.toUpperCase()]={exec:y,middleware:[...f,...g]},i[O].OPTIONS={exec:()=>{let j=new F().ctx().headers;return new Response(null,{headers:j,status:204})},middleware:[]}}for(let[w,b]of Object.entries(c)){if(Ic(b)){let y=b,g=y.method,n=y.middlewares,p=y.run.bind(y);l(w,g,p,n)}if(Vc(b))for(let[y,g]of Object.entries(b)){let n=g.middlewares,p=g.run.bind(g);l(w,y,p,n)}if(kc(b)){let y=new b,g=yc(y.routes,`${s}${w}`,y.middlewares);for(let[n,p]of Object.entries(g))i[n.replaceAll("//","/")]=p}if(Ec(b)){let{first:y,second:g}=b;for(let[n,p]of Object.entries(y)){let O=p.middlewares,L=p.run.bind(p),[j,...$]=w.split("/").reverse();if(!j.startsWith(":"))throw new Error("Resource route must end with a dynamic segment");l($.reverse().join("/"),n,L,O)}for(let[n,p]of Object.entries(g)){let O=p.middlewares,L=p.run.bind(p);l(w,n,L,O)}}}return Object.fromEntries(Object.entries(i).sort(([w],[b])=>{let y=w.split("/").length+w.split(":").length,g=b.split("/").length+b.split(":").length;return y-g}))}function nc(c){return c.replace(/\([^)]*\)/g,"").replace(/\/\//g,"/")}function A(c){let s={};for(let[f,i]of Object.entries(c))if("run"in i){let l=i;if("children"in l){let w=new l.children,b=A(w.routes);for(let[y,{exec:g,middleware:n}]of Object.entries(b)){let p=f==="/"?y:`${f}${y}`,O=y==="/"&&f!=="/"?f:p,L=(j)=>l.run.call(l,j,f);s[nc(O)]={exec:[L,...g],middleware:[...l.middlewares,...n],viewPath:l.viewPath}}}else{let w=(b)=>l.run.call(l,b,f);s[nc(f)]={exec:[w],middleware:l.middlewares,viewPath:l.viewPath}}}else{let l=new i,w=A(l.routes);for(let[b,{exec:y,middleware:g,viewPath:n}]of Object.entries(w)){let p=f==="/"?b:`${f}${b}`,O=b==="/"&&f!=="/"?f:p;s[nc(O)]={exec:y,middleware:[...l.middlewares,...g],viewPath:n}}}return Object.fromEntries(Object.entries(s).sort(([f],[i])=>{let l=f.split("/").length+f.split(":").length,w=i.split("/").length+i.split(":").length;return l-w}))}import{renderToReadableStream as Rc}from"react-dom/server.browser";import{createElement as Mc,Fragment as Ac}from"react";function dc(c){return c.replace(/\([^)]*\)/g,"").replace(/\/\//g,"/")}function C(c){let s={};for(let[f,i]of Object.entries(c))if("run"in i){let l=i.viewPath;if("children"in i){s[f]=[l];let w=new i.children,b=C(w.routes);for(let[y,g]of Object.entries(b)){let n=f==="/"?y:`${f}${y}`,p=y==="/"&&f!=="/"?f:n;s[p]=[l,...g]}if(s[f].length===1)delete s[f]}else s[f]=[l]}else{let l=new i,w=C(l.routes);for(let[b,y]of Object.entries(w)){let g=f==="/"?b:`${f}${b}`,n=b==="/"&&f!=="/"?f:g;s[n]=y}}return Object.fromEntries(Object.entries(s).map(([f,i])=>[dc(f),i]))}function t(c){let s=[];for(let[f,i]of Object.entries(c))if("run"in i){let l=i.viewPath;if(l==="__")continue;if(l==="REDIRECT")continue;if("children"in i){let w=new i.children,b=t(w.routes);s.push([l,b])}else s.push([l,[]])}else{let l=new i,w=t(l.routes);s.push(...w)}return s}function gc(c){let s=[];for(let[f,i]of c)s.push(f,...gc(i).flat());return Array.from(new Set(s))}class P{static debug(c,s){_.use().log("debug",c,s)}static info(c,s){_.use().log("info",c,s)}static notice(c,s){_.use().log("notice",c,s)}static warning(c,s){_.use().log("warning",c,s)}static error(c,s){_.use().log("error",c,s)}static critical(c,s){_.use().log("critical",c,s)}static alert(c,s){_.use().log("alert",c,s)}static emergency(c,s){_.use().log("emergency",c,s)}}class pc extends D{service;static _name="ViewRouterServiceContainer";flatViewRoutes={};routeManifest={};componentTree=[];flatComponentTree=[];root=null;constructor(c){super();this.service=c;let s={"/":c.rootRouter,"/auth":cc};this.flatViewRoutes=A(s),this.routeManifest=C(s),this.componentTree=t(s),this.flatComponentTree=gc(this.componentTree),this.root=c.root}boot(){}async onRequestEnd(c){if(!c.cookies.has("session_id"))c.ctx().setCookie("session_id",Bun.randomUUIDv7(),{httpOnly:!0,secure:!0,sameSite:"Strict",expires:new Date(Date.now()+31536000000)});return await this.service.onRequestEnd(c)}async render(c){let{csrfTokenHMAC:s,currentPathName:f,headers:i,i18n:l,params:w,pathname:b,prefetchedData:y,url:g,user:n,viewData:p,breadcrumbs:O}=c,L={kind:"view",data:{pageData:{[b]:p},__csrf:s.toString("base64"),prefetchedData:y,i18n:l,auth:{user:n},routeManifest:this.routeManifest,breadcrumbs:O,router:{pathname:f,params:w,currentPath:b,searchParams:g.search,is404:!f?!0:!1},componentTree:[["404",[]],...this.componentTree]},head:{}},j=this.root,$=this.routeManifest[f];return async(m)=>{let{bootstrapModules:J,loaders:Z,getStyles:q,viewImportMap:H,cssManifest:Q}=m;L.data.cssManifest=Q;let K=await Rc(Mc(Ac,{children:[...await q($),Mc(j,{data:L.data,viewImportMap:H,key:"root"})]}),{bootstrapScriptContent:`window.__GEMI_DATA__ = ${JSON.stringify(L.data)}; window.loaders=${Z}`,bootstrapModules:J});return new Response(K,{status:!f?404:200,headers:i})}}async handleViewRequest(c){let s=new URL(c.url),f=s.pathname.endsWith(".json"),i=s.pathname.replace(".json",""),l=[],w=[],b=null,y={};try{for(let[n,p]of Object.entries(this.flatViewRoutes)){let O=new Wc({pathname:n});if(O.test({pathname:i})){b=n,y=O.exec({pathname:i})?.pathname.groups,l=p.exec,w=p.middleware;break}}}catch(n){throw n}let g=new F(c,y,"view",b);return await z.run(g,async()=>{G.setLocale();let n=null,p=z.getStore(),O=p.req;try{await E.use().runMiddleware(w);let L=await Promise.all([...l.map((T)=>T(O)),...Array.from(p.prefetchPromiseQueue).map((T)=>T())]),j=p.cookies,$=p.headers,m=p.prefetchedResources;n={data:L,cookies:j,headers:$,user:p.user,prefetchedData:Object.fromEntries(m.entries()),currentPathName:O.routePath,params:O.params};let{params:J,currentPathName:Z,user:q}=n,H={},Q={};for(let T of L){let[S,r]=Object.entries(T)?.[0]??[];if(!S||!r)continue;Q[`${S}:${Z}`]=r.breadcrumb,H[S]=r}let K=B.use(),Xc=K.isEnabled,u={};if(Xc){let T=K.detectLocale(new F(c,J)),S=K.getPageTranslations(T,Z);u={supportedLocales:K.supportedLocales,currentLocale:T,dictionary:{[T]:S}}}if(f)return $.set("Content-Type","application/json"),j.forEach((T)=>$.append("Set-Cookie",T.toString())),await this.service.onRequestEnd(O),new Response(JSON.stringify({data:{[i]:H},breadcrumbs:Q,prefetchedData:n.prefetchedData,i18n:u,is404:!Z}),{headers:$});$.set("Content-Type","text/html");for(let T of j)$.append("Set-Cookie",T.toString());let Yc=Bun.CSRF.generate(process.env.SECRET);$.append("Set-Cookie",`csrf_token=${Yc}; HttpOnly; Secure; SameSite=Strict; Expires=${new Date(Date.now()+86400000).toUTCString()}`);try{await this.onRequestEnd(O)}catch(T){P.error(T?.message??'Error in "onRequestEnd" event handler',{err:JSON.stringify(T)})}return await this.render({csrfTokenHMAC:Buffer.from(""),currentPathName:Z,headers:$,i18n:u,params:J,pathname:s.pathname,prefetchedData:n.prefetchedData,url:s,user:q,viewData:H,breadcrumbs:Q})}catch(L){if(L.kind===k)if(f){let{status:j=400,data:$,directive:m,headers:J}=L.payload.api;return new Response(JSON.stringify({data:$,directive:m}),{headers:J,status:j})}else{let{status:j=400,error:$}=L.payload.view;return new Response($?.message,{...L.payload.view,status:j})}else throw this.service.onRequestFail(O,L),L}})}}class mc extends M{routes={"/api-routes":this.get(()=>{let c=v.use().flatRoutes,s=[];for(let[f,i]of Object.entries(c))for(let[l,w]of Object.entries(i)){let{exec:b,middleware:y}=w;s.push({path:f,method:l,middleware:y})}return s}),"/view-routes":this.get(()=>{let c=pc.use().flatViewRoutes,s=[];for(let[f,{middleware:i,viewPath:l}]of Object.entries(c))s.push({path:f,method:"GET",viewPath:l,middleware:i});return s})}}class v extends D{service;static _name="ApiRouterServiceContainer";flatRoutes={};constructor(c){super();this.service=c;this.flatRoutes=yc({"/":this.service.rootRouter.bind(this.service),"/auth":sc,"/__gemi__/services/i18n":fc,"/__gemi__/services/logs":bc,"/__gemi__/services/image":ic,"/__gemi__/debug":mc})}getRouteHandlerAndParams(c){let f=new URL(c.url).pathname.replace("/api",""),i={},l;for(let[w]of Object.entries(this.flatRoutes))try{let b=new URLPattern({pathname:w});if(b.test({pathname:f})){l=w,i=b.exec({pathname:f})?.pathname.groups;break}}catch(b){console.error(b)}return{params:i,path:l}}async runRouteMiddleware(c,s){let i=this.flatRoutes[c][s.rawRequest.method].middleware;try{await E.use().runMiddleware(i)}catch(l){if(l.kind===k){if(s.rawRequest.url.includes("/api")){let{status:w=400,data:b,headers:y}=l.payload.api;return new Response(JSON.stringify(b),{status:w,headers:{"Content-Type":"application/json",...y}})}}else throw this.service.onRequestFail(s,l),console.error(l),l}}async getRouteData(c){let s=this.flatRoutes[c],f=z.getStore(),i=s[f.req.rawRequest.method].exec??(()=>Promise.resolve({})),l={};try{l=await i()}catch(w){if(w.kind===k){let{status:b=400,data:y,headers:g}=w.payload.api;return new Response(JSON.stringify(y),{status:b,headers:{"Content-Type":"application/json",...g}})}throw this.service.onRequestFail(f.req,w),console.error(w),w}return l}async handleApiRequest(c){let{params:s,path:f}=this.getRouteHandlerAndParams(c),i=this.flatRoutes[f];if(!i||!i[c.method])return new Response(JSON.stringify({error:{message:"Not found"}}),{status:404});let l=new F(c,s,"api",f);if(!c.url.includes("/__gemi__"))this.service.onRequestStart(l);return await z.run(l,async()=>{let w=z.getStore();w.setRequest(l);let b=await this.runRouteMiddleware(f,l);if(b instanceof Response)return b;let y=await this.getRouteData(f);if(y instanceof Response)return y;let g=w.headers;if(g.append("Content-Type","application/json"),w.cookies.forEach((n)=>g.append("Set-Cookie",n.toString())),w.destroy(),!c.url.includes("/__gemi__"))this.service.onRequestEnd(l);return new Response(JSON.stringify(y),{headers:g})})}}class h{static prepare(c,...s){let f={params:{},search:{}},[i={}]=s,{search:l,params:w}={...f,...i},b=z.getStore();if(b.req.kind==="api")throw new Error("Query.prefetch() cannot be called from an API request");let y=b.req.rawRequest,g=new URL(y.url),n=new URLSearchParams(Fc(l));n.delete("json"),n.sort();let p=[`${X(c,w)}`,n.toString()].filter((J)=>J.length>0).join("?"),O=`${g.origin}/${p}`,L=new Request(O,{headers:y.headers}),j=new F(L,w),$=(J)=>{b.prefetchedResources.set(X(c,w),{[n.toString()]:J})},m=()=>{return z.run(j,async()=>{let J=await v.use().getRouteData(c);return $(J),J})};return{instant:m,prefetch:()=>{b.prefetchPromiseQueue.add(m)}}}static instant(c,...s){return h.prepare(c,...s).instant()}static prefetch(c,...s){return h.prepare(c,...s).prefetch()}}class Uc{static absolute(c,...s){return`${process.env.HOST_NAME}${X(String(c),s[0]??{})}`}static relative(c,...s){return X(String(c),s[0]??{})}}export{Uc as Url,Cc as Redirect,h as Query,P as Log,G as I18n,Lc as FileStorage,R as Broadcast,U as Auth};export{N as y,I as z,_ as A,Qc as B,Jc as C,E as D,pc as E,v as F};
|
|
5
5
|
|
|
6
|
-
//# debugId=
|
|
6
|
+
//# debugId=CEED89F425E534B164756E2164756E21
|
|
@@ -28,6 +28,6 @@
|
|
|
28
28
|
"import type { UrlParser, ViewPaths } from \"../client/types\";\nimport { applyParams } from \"../utils/applyParams\";\n\nexport class Url {\n static absolute<T extends ViewPaths>(\n key: T,\n ...args: UrlParser<T> extends Record<string, never>\n ? []\n : [params: UrlParser<T>]\n ) {\n return `${process.env.HOST_NAME}${applyParams(String(key), args[0] ?? {})}`;\n }\n\n static relative<T extends ViewPaths>(\n key: T,\n ...args: UrlParser<T> extends Record<string, never>\n ? []\n : [params: UrlParser<T>]\n ) {\n return applyParams(String(key), args[0] ?? {});\n }\n}\n"
|
|
29
29
|
],
|
|
30
30
|
"mappings": "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",
|
|
31
|
-
"debugId": "
|
|
31
|
+
"debugId": "CEED89F425E534B164756E2164756E21",
|
|
32
32
|
"names": []
|
|
33
33
|
}
|
package/dist/http/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{U as qe}from"../chunk-9aswnsye.js";import{sc as ft,uc as Me}from"../chunk-fe1gn043.js";import{vc as ve}from"../chunk-3q85w7aa.js";import{xc as _a}from"../chunk-nxrhps23.js";import"../chunk-6fy0y9na.js";class Ba{static kind="controller";constructor(){}}class Kr extends Ba{}function be(t){return typeof t==="function"&&t.prototype!==void 0}function zu(t){return be(t)}class pt{method;handler;methodName;__internal_brand="RouteHandler";middlewares=[];constructor(t,s,r){this.method=t;this.handler=s;this.methodName=r;this.handler=s,this.methodName=r,this.method=t}__internal_use(){return{run:this.run.bind(this),middlewares:this.middlewares}}run(t){if(zu(this.handler)){let s=new this.handler;return s[this.methodName].bind(s)()}return this.handler()}middleware(t){return this.middlewares=t,this}}class He{constructor(...t){return new pt(...t)}}class Ja{static __brand="ApiRouter";routes={};middlewares=[];middleware(t){}get(t,s){return new pt("GET",t,s)}post(t,s){return new pt("POST",t,s)}put(t,s){return new pt("PUT",t,s)}patch(t,s){return new pt("PATCH",t,s)}delete(t,s){return new pt("DELETE",t,s)}resource(t){return{first:{get:new pt("GET",t,"list"),post:new pt("POST",t,"store")},second:{get:new pt("GET",t,"show"),put:new pt("PUT",t,"update"),delete:new pt("DELETE",t,"delete")}}}file(t,s){return new He("GET",t,s)}}class De extends Kr{async list(){}async show(){}async store(){}async update(){}async delete(){}}class Bu extends Ja{routes={"/:orgId/products/:productId":this.resource(De)}}class Ie{kind="redirect";viewPath="REDIRECT";middlewares=[];handler;constructor(t){if(!t)this.handler=()=>({});else if(typeof t==="function")this.handler=t;else{let[s,r]=t,a=new s,i=a[r].bind(a);this.handler=(o)=>{return i()}}}async run(t,s){let{destination:r,permanent:a=!1,status:i=307}=await this.handler(t);if(!r)throw new Error(`Redirect destination is required see ${s}`);return Me.to(r,{permanent:a,status:i}),{}}middleware(t){return this.middlewares=t,this}}class Se{viewPath;middlewares=[];handler;constructor(t,s){this.viewPath=t;if(!s)this.handler=()=>({});else if(typeof s==="function")this.handler=s;else{let[r,a]=s,i=new r,o=i[a].bind(i);this.handler=(e)=>{return o()}}}async run(t,s){let r=await this.handler(t);return{[this.viewPath]:{...r,breadcrumb:{label:r?.breadcrumb??"",href:s}}}}middleware(t){return this.middlewares=t,this}}class Ae{viewPath;children;middlewares=[];handler=()=>({});constructor(t,s,r){this.viewPath=t;if(typeof s==="function")this.handler=s,this.children=class extends Qs{routes=r??{}};else if(Array.isArray(s)){let[a,i]=s,o=new a,e=o[i].bind(o);this.handler=(n)=>{return e(n)},this.children=class extends Qs{routes=r??{}}}else this.children=class extends Qs{routes=s},this.handler=()=>({})}async run(t,s){let r=await this.handler(t);return{[this.viewPath]:{...r,breadcrumb:{label:r?.breadcrumb??"",href:s}}}}middleware(t){return this.middlewares=t,this}}class Qs{middlewares=[];routes={};view(t,s){return new Se(t,s)}redirect(t){return new Ie(t)}layout(t,s,r){return new Ae(t,s,r)}}class Ys extends ft{errors={};constructor(t){super("Validation error");this.name="ValidationError",this.errors=t,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:t}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}import{AsyncLocalStorage as Ju}from"async_hooks";class qr{name;value;options;constructor(t,s,r={}){this.name=t;this.value=s;this.options=r}toString(){return[`${this.name}=${this.value}`,this.options.maxAge?`Max-Age=${this.options.maxAge}`:"",this.options.httpOnly?"HttpOnly":"",this.options.secure?"Secure":"",this.options.sameSite?`SameSite=${this.options.sameSite}`:"SameSite=Strict",this.options.path?`Path=${this.options.path}`:"Path=/",this.options.domain?`Domain=${this.options.domain}`:"",this.options.expires?`Expires=${this.options.expires.toUTCString()}`:"",this.options.partitioned?"Partitioned":""].filter((t)=>t!=="").join("; ")}}var Xa=new Ju;class Ke{req;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;csrfHmac=null;constructor(t){this.req=t}setCSRFHmac(t){this.csrfHmac=t}setCookie(t,s,r={}){this.cookies.add(new qr(t,s,r))}deleteCookie(t){this.cookies.add(new qr(t,"",{maxAge:-1}))}setHeaders(t,s){this.headers.set(t,s)}setUser(t){this.user=t}setRequest(t){this.req=t}destroy(){delete this.cookies,delete this.headers,delete this.prefetchedResources,delete this.prefetchPromiseQueue,delete this.user}}class Os{static getStore(){return Xa.getStore()}static setRequest(t){Xa.getStore().req=t}static run(t,s){return Xa.run(new Ke(t),s)}}class bs{data;constructor(t){this.data=t}get(t){return this.data[t]}has(t){return this.data[t]!==void 0}toJSON(){return this.data}}function Xu(t){let[s,r]=t.match(/\d+|\D+/g)??[];if(!s||!r)return 0;let a=parseInt(s);switch(r){case"B":return a;case"KB":return a*1024;case"MB":return a*1024*1024;case"GB":return a*1024*1024*1024;case"TB":return a*1024*1024*1024*1024;default:return 0}}function Qu(t){switch(t){case"image":return"image";case"png":return"image/png";case"jpg":return"image/jpeg";case"jpeg":return"image/jpeg";case"ttf":return"font/ttf";case"excel":return"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";case"csv":return"text/csv";case"word":return"application/vnd.openxmlformats-officedocument.wordprocessingml.document";case"pdf":return"application/pdf";case"json":return"application/json";default:return t}}function Yu(t){let[s,r]=t.split(":");switch(s){case"required":return(a)=>{if(a instanceof Blob)return a.size>0;return a!==null&&a!==void 0&&a?.length>0};case"password":return(a)=>{return/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(a)};case"number":return(a)=>{if(typeof a!=="number")return!1;return!isNaN(a)};case"min":return(a)=>{return a?.length>=parseInt(r)};case"max":return(a)=>{return a?.length<=parseInt(r)};case"email":return(a)=>{return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(a)};case"file":return(a)=>{return a instanceof Blob};case"fileType":return(a)=>{if(a instanceof Blob){let i=Qu(r);return a.type.startsWith(i)}};case"fileSize":return(a)=>{if(a instanceof Blob){let i=Xu(r);return a.size<=i}};default:return()=>!0}}class tr{kind;rawRequest;headers;cookies;search;schema={};routePath;params;constructor(t,s,r,a){if(!t){let e=Os.getStore().req;this.params=e.params,this.rawRequest=e.rawRequest,this.kind=e.kind,this.routePath=e.routePath}else this.params=s,this.rawRequest=t,this.routePath=a,this.kind=r??"api";this.headers=this.rawRequest.headers;let i=this.rawRequest.headers.get("Cookie"),o=new Map;if(i){let e=i.split(";");for(let n of e){let[d,l]=n.split("=");o.set(d.trim(),l.trim())}}if(this.rawRequest.method==="GET"){let e=new URL(this.rawRequest.url),n=new Map;for(let[l,u]of e.searchParams)if(n.has(l)){let c=n.get(l);if(Array.isArray(c))c.push(u),n.set(l,c);else n.set(l,[c,u])}else n.set(l,u);let d=Object.fromEntries(n.entries());this.search=new bs(d)}this.cookies=o}locale(){return qe.use().detectLocale(this)}ctx(){return Os.getStore()}refine(t){return{}}async parseBody(){let t=new bs({});if(this.rawRequest.headers.get("Content-Type")==="application/json"){let s=await this.rawRequest.json();t=new bs(s)}if(this.rawRequest.headers.get("Content-Type")==="application/x-www-form-urlencoded"){let s=await this.rawRequest.formData();t=new bs(s)}if(this.rawRequest.headers.get("Content-Type")?.startsWith("multipart/form-data")){let s=await this.rawRequest.formData(),r=new Map;for(let[a,i]of s.entries())if(r.has(a)){let o=r.get(a);if(Array.isArray(o))o.push(i),r.set(a,o);else r.set(a,[o,i])}else r.set(a,i);t=new bs(Object.fromEntries(r.entries()))}return t}validateInput(t){let s={};for(let[r,a]of Object.entries(this.schema))for(let[i,o]of Object.entries(a)){let e=Yu(i),n=o,d=!1;if(typeof o==="function")n=o(t.get(r)),d=typeof n==="undefined";else d=e(t.get(r));if(d)continue;if(!s[r])s[r]=[];if(i==="required"){s[r]=[String(n)];break}else s[r].push(String(n))}for(let[r,a]of Object.entries(this.refine(t.toJSON())??{})){if(!s[r])s[r]=[];s[r]=[...s[r]??[],a]}if(Object.keys(s).length>0)throw new Ys(s);else return t}async input(){return this.validateInput(await this.parseBody())}async safeInput(){let t=await this.parseBody();try{return this.validateInput(t),{isValid:!0,errors:{},input:t}}catch(s){if(!(s instanceof Ys))throw s;return{isValid:!1,errors:s.errors,input:t}}}}class mt{req;config={};constructor(t){this.req=t}run(...t){return{}}static configure(t){let s=this;return class extends s{config=t}}}function tc(t){let s=t.headers.get("cookie");if(!s)return new Map;let r=new Map,a=s.split(";");for(let i of a){let[o,e]=i.split("=");r.set(o.trim(),e)}return r}class Ee extends ve{aliases={};boot(){}}class Fe extends ft{error;constructor(t="Not authorized"){super("Authentication error");this.name="AuthenticationError",this.error=t,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class $e extends ft{error;constructor(t="Insufficient permissions"){super("Authentication error");this.name="AuthenticationError",this.error=t,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class sr extends ft{constructor(){super("Authentication error");this.name="AuthenticationError"}payload={api:{status:401,data:{error:"Authentication error"}},view:{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:"/auth/sign-in"}}}}import{randomBytes as $m}from"crypto";function et(t,s,r,a,i){return yt(s,Ye(t,s),r,a,i)}function yt(t,s,r,a,i,o){let e=ri(s,r,a);if(i&&s!==e)throw new RangeError($l(t,s,r,a,o));return e}function Ye(t,s){let r=t[s];if(r===void 0)throw new TypeError(Ko(s));return r}function U(t){return t!==null&&/object|function/.test(typeof t)}function lt(t,s=Map){let r=new s;return(a,...i)=>{if(r.has(a))return r.get(a);let o=t(a,...i);return r.set(a,o),o}}function ui(t){return us({name:t},1)}function us(t,s){return Ct((r)=>({value:r,configurable:1,writable:!s}),t)}function tn(t){return Ct((s)=>({get:s,configurable:1}),t)}function Br(t){return{[Symbol.toStringTag]:{value:t,configurable:1}}}function Ks(t,s){let r={},a=t.length;for(let i of s)r[t[--a]]=i;return r}function Ct(t,s,r){let a={};for(let i in s)a[i]=t(s[i],i,r);return a}function ur(t,s,r){let a={};for(let i=0;i<s.length;i++){let o=s[i];a[o]=t(o,i,r)}return a}function sc(t,s,r){let a={};for(let i=0;i<t.length;i++)a[s[i]]=r[t[i]];return a}function ct(t,s){let r={};for(let a of t)r[a]=s[a];return r}function ci(t,s){let r={};for(let a in s)t.has(a)||(r[a]=s[a]);return r}function pi(t){t={...t};let s=Object.keys(t);for(let r of s)t[r]===void 0&&delete t[r];return t}function sn(t,s){for(let r of s)if(!(r in t))return 0;return 1}function rn(t,s,r){for(let a of t)if(s[a]!==r[a])return 0;return 1}function an(t,s,r){let a={...r};for(let i=0;i<s;i++)a[t[i]]=0;return a}function w(t,...s){return(...r)=>t(...s,...r)}function Ze(t){return t[0].toUpperCase()+t.substring(1)}function cr(t){return t.slice().sort()}function Lr(t,s){return String(s).padStart(t,"0")}function Vt(t,s){return Math.sign(t-s)}function ri(t,s,r){return Math.min(Math.max(t,s),r)}function Ft(t,s){return[Math.floor(t/s),ar(t,s)]}function ar(t,s){return(t%s+s)%s}function _t(t,s){return[Jr(t,s),mi(t,s)]}function Jr(t,s){return Math.trunc(t/s)||0}function mi(t,s){return t%s||0}function vr(t){return Math.abs(t%1)===0.5}function on(t,s,r){let a=0,i=0;for(let n=0;n<=s;n++){let d=t[r[n]],l=It[n],u=O/l,[c,p]=_t(d,u);a+=p*l,i+=c}let[o,e]=_t(a,O);return[i+o,e]}function Xr(t,s,r){let a={};for(let i=s;i>=0;i--){let o=It[i];a[r[i]]=Jr(t,o),t=mi(t,o)}return a}function en(t){return t===x?Aa:[]}function nn(t){return t===x?xr:[]}function dn(t){return t===x?["year","day"]:[]}function ln(t){if(t!==void 0)return K(t)}function un(t){if(t!==void 0)return Rt(t)}function Ti(t){if(t!==void 0)return pr(t)}function Rt(t){return mn(pr(t))}function pr(t){return pn(Wc(t))}function Pi(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function cn(t,s){if(s==null)throw new RangeError(Ko(t));return s}function Zt(t){if(!U(t))throw new TypeError(Fl);return t}function Qr(t,s,r=t){if(typeof s!==t)throw new TypeError(yr(r,s));return s}function pn(t,s="number"){if(!Number.isInteger(t))throw new RangeError(fc(s,t));return t||0}function mn(t,s="number"){if(t<=0)throw new RangeError(yc(s,t));return t}function hi(t){if(typeof t=="symbol")throw new TypeError(Cc);return String(t)}function kr(t,s){return U(t)?String(t):K(t,s)}function Yr(t){if(typeof t=="string")return BigInt(t);if(typeof t!="bigint")throw new TypeError(xc(t));return t}function Tn(t,s="number"){if(typeof t=="bigint")throw new TypeError(wc(s));if(t=Number(t),!Number.isFinite(t))throw new RangeError(gc(s,t));return t}function Q(t,s){return Math.trunc(Tn(t,s))||0}function Pn(t,s){return pn(Tn(t,s),s)}function je(t,s){return mn(Q(t,s),s)}function fi(t,s){let[r,a]=_t(s,O),i=t+r,o=Math.sign(i);return o&&o===-Math.sign(a)&&(i-=o,a+=o*O),[i,a]}function Ds(t,s,r=1){return fi(t[0]+s[0]*r,t[1]+s[1]*r)}function Ms(t,s){return fi(t[0],t[1]+s)}function Tt(t,s){return Ds(s,t,-1)}function tt(t,s){return Vt(t[0],s[0])||Vt(t[1],s[1])}function hn(t,s,r){return tt(t,s)===-1||tt(t,r)===1}function ta(t,s=1){let r=BigInt(O/s);return[Number(t/r),Number(t%r)*s]}function Is(t,s=1){let r=O/s,[a,i]=_t(t,r);return[a,i*s]}function fn(t,s=1){let[r,a]=t,i=Math.floor(a/s),o=O/s;return BigInt(r)*BigInt(o)+BigInt(i)}function Pt(t,s=1,r){let[a,i]=t,[o,e]=_t(i,s);return a*(O/s)+(o+(r?e/s:0))}function yi(t,s,r=Ft){let[a,i]=t,[o,e]=r(i,s);return[a*(O/s)+o,e]}function gi(t,s){let r=t.formatToParts(s),a={};for(let i of r)a[i.type]=i.value;return a}function wi(t){return et(t,"isoYear",lr,dr,1),t.isoYear===lr?et(t,"isoMonth",4,12,1):t.isoYear===dr&&et(t,"isoMonth",1,9,1),t}function Gt(t){return jt({...t,...xt,isoHour:12}),t}function jt(t){let s=et(t,"isoYear",lr,dr,1),r=s===lr?1:s===dr?-1:0;return r&&ht(Y({...t,isoDay:t.isoDay+r,isoNanosecond:t.isoNanosecond-r})),t}function ht(t){if(!t||hn(t,Yc,Qc))throw new RangeError(Da);return t}function zt(t){return on(t,5,Dt)[1]}function sa(t){let[s,r]=Ft(t,O);return[Xr(r,5,Dt),s]}function yn(t){return gn(t)[0]}function gn(t){return yi(t,wt)}function st(t){return qs(t.isoYear,t.isoMonth,t.isoDay,t.isoHour,t.isoMinute,t.isoSecond,t.isoMillisecond)}function Y(t){let s=st(t);if(s!==void 0){let[r,a]=_t(s,dt);return[r,a*St+(t.isoMicrosecond||0)*gs+(t.isoNanosecond||0)]}}function xi(t,s){let[r,a]=sa(zt(t)-s);return ht(Y({...t,isoDay:t.isoDay+a,...r}))}function Nr(...t){return qs(...t)/zl}function qs(...t){let[s,r]=wn(...t),a=s.valueOf();if(!isNaN(a))return a-r*dt}function wn(t,s=1,r=1,a=0,i=0,o=0,e=0){let n=t===lr?1:t===dr?-1:0,d=new Date;return d.setUTCHours(a,i,o,e),d.setUTCFullYear(t,s-1,r+n),[d,n]}function Jt(t,s){let[r,a]=Ms(t,s);a<0&&(a+=O,r-=1);let[i,o]=Ft(a,St),[e,n]=Ft(o,gs);return ra(r*dt+i,e,n)}function ra(t,s=0,r=0){let a=Math.ceil(Math.max(0,Math.abs(t)-Xc)/dt)*Math.sign(t),i=new Date(t-a*dt);return Ks(qa,[i.getUTCFullYear(),i.getUTCMonth()+1,i.getUTCDate()+a,i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds(),i.getUTCMilliseconds(),s,r])}function xn(t){return[t.isoYear,t.isoMonth,t.isoDay]}function Cn(){return Et}function Ci(t,s){switch(s){case 2:return Ri(t)?29:28;case 4:case 6:case 9:case 11:return 30}return 31}function Rn(t){return Ri(t)?366:365}function Ri(t){return t%4==0&&(t%100!=0||t%400==0)}function On(t){let[s,r]=wn(t.isoYear,t.isoMonth,t.isoDay);return ar(s.getUTCDay()-r,7)||7}function bn({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function rc(t){let s=st(t);if(s<sp)return bn(t);let r=gi(Jo(Ss),s),{era:a,eraYear:i}=Fd(r,Ss);return[a,i]}function aa(t){return cs(t),ia(t,1),t}function cs(t){return Hn(t,1),t}function Le(t){return rn(No,t,Hn(t))}function Hn(t,s){let{isoYear:r}=t,a=et(t,"isoMonth",1,Cn(),s);return{isoYear:r,isoMonth:a,isoDay:et(t,"isoDay",1,Ci(r,a),s)}}function ia(t,s){return Ks(Dt,[et(t,"isoHour",0,23,s),et(t,"isoMinute",0,59,s),et(t,"isoSecond",0,59,s),et(t,"isoMillisecond",0,999,s),et(t,"isoMicrosecond",0,999,s),et(t,"isoNanosecond",0,999,s)])}function C(t){return t===void 0?0:cu(Zt(t))}function mr(t,s=0){t=Ot(t);let r=pu(t),a=cp(t,s);return[cu(t),a,r]}function Oi(t){return pu(Ot(t))}function Dn(t){return t=Ot(t),Go(t,9,6,1)}function vs(t,s,r,a=9,i=0,o=4){s=Ot(s);let e=Go(s,a,i),n=Di(s),d=Rr(s,o),l=Cr(s,a,i,1);return e==null?e=Math.max(r,l):An(e,l),n=Mi(n,l,1),t&&(d=((u)=>u<4?(u+2)%4:u)(d)),[e,l,n,d]}function oa(t,s=6,r){let a=Di(t=Ii(t,zr)),i=Rr(t,7),o=Cr(t,s);return o=cn(zr,o),a=Mi(a,o,void 0,r),[o,a,i]}function bi(t){return Wo(Ot(t))}function Mn(t,s){return Hi(Ot(t),s)}function Hi(t,s=4){let r=Sn(t);return[Rr(t,4),...In(Cr(t,s),r)]}function In(t,s){return t!=null?[It[t],t<4?9-3*t:-1]:[s===void 0?1:10**(9-s),s]}function Di(t){let s=t[ir];return s===void 0?1:Q(s,ir)}function Mi(t,s,r,a){let i=a?O:It[s+1];if(i){let o=It[s];if(i%((t=yt(ir,t,1,i/o-(a?0:1),1))*o))throw new RangeError(yr(ir,t))}else t=yt(ir,t,1,r?1e9:1,1);return t}function Sn(t){let s=t[si];if(s!==void 0){if(typeof s!="number"){if(hi(s)==="auto")return;throw new RangeError(yr(si,s))}s=yt(si,Math.floor(s),0,9,1)}return s}function Ot(t){return t===void 0?{}:Zt(t)}function Ii(t,s){return typeof t=="string"?{[s]:t}:Zt(t)}function F(t){if(t!==void 0){if(U(t))return Object.assign(Object.create(null),t);throw new TypeError(Fl)}}function ea(t,s){return t&&Object.assign(Object.create(null),t,{overflow:ap[s]})}function Si(t,s,r=9,a=0,i){let o=s[t];if(o===void 0)return i?a:void 0;if(o=hi(o),o==="auto")return i?a:null;let e=ei[o];if(e===void 0&&(e=Bc[o]),e===void 0)throw new RangeError(Ll(t,o,ei));return yt(t,e,a,r,1,wr),e}function ps(t,s,r,a=0){let i=r[t];if(i===void 0)return a;let o=hi(i),e=s[o];if(e===void 0)throw new RangeError(Ll(t,o,s));return e}function An(t,s){if(s>t)throw new RangeError(kc)}function V(t){return{branding:Ea,epochNanoseconds:t}}function z(t,s,r){return{branding:Ut,calendar:r,timeZone:s,epochNanoseconds:t}}function $(t,s=t.calendar){return{branding:xs,calendar:s,...ct(nu,t)}}function Z(t,s=t.calendar){return{branding:ws,calendar:s,...ct(Uo,t)}}function ds(t,s=t.calendar){return{branding:Ns,calendar:s,...ct(Uo,t)}}function Ur(t,s=t.calendar){return{branding:Us,calendar:s,...ct(Uo,t)}}function bt(t){return{branding:va,...ct(eu,t)}}function I(t){return{branding:Fa,sign:Xt(t),...ct(jo,t)}}function Kn(t){return yn(t.epochNanoseconds)}function na(t){return yi(t.epochNanoseconds,St)[0]}function qn(t){return fn(t.epochNanoseconds,gs)}function vn(t){return fn(t.epochNanoseconds)}function En(t){return t.epochNanoseconds}function W(t){return typeof t=="string"?t:K(t.id)}function Es(t,s){return t===s||W(t)===W(s)}function Fn(t,s,r,a,i){let o=ls(a),[e,n]=((h,y)=>{let f=y((h=Ii(h,li))[lu]),g=up(h);return g=cn(li,g),[g,f]})(i,t);if(er(Math.max(e,o),n))return ke(a,e);if(!n)throw new RangeError(Ma);let[d,l,u]=ma(s,r,n),c=to(u),p=Ta(u),m=so(u),T=p(l,d,a),P=m(l,d,T,e);return er(e,n)?ke(P,e):((h,y,f,g,E,S,M)=>{let A=Xt(h),[G,k]=Ai(g,ko(f,h),f,A,E,S,M),Js=Ki(y,G,k);return h[R[f]]+Js*A})(P,c(T),e,l,d,c,p)}function ke(t,s){return Pt(N(t),It[s],1)}function Ai(t,s,r,a,i,o,e){let n=R[r],d={...s,[n]:s[n]+a},l=e(t,i,s),u=e(t,i,d);return[o(l),o(u)]}function Ki(t,s,r){let a=Pt(Tt(s,r));if(!a)throw new RangeError(gr);return Pt(Tt(s,t))/a}function $n(t,s){let[r,a,i]=oa(s,5,1);return V(la(t.epochNanoseconds,r,a,i,1))}function Zn(t,s,r){let{epochNanoseconds:a,timeZone:i,calendar:o}=s,[e,n,d]=oa(r);if(e===0&&n===1)return s;let l=t(i);if(e===6)a=((u,c,p,m)=>{let T=rt(p,c),[P,h]=u(T),y=p.epochNanoseconds,f=ut(c,P),g=ut(c,h);if(hn(y,f,g))throw new RangeError(gr);return _n(Ki(y,f,g),m)?g:f})(Gn,l,s,d);else{let u=l.getOffsetNanosecondsFor(a);a=Ts(l,Un(Jt(a,u),e,n,d),u,2,0,1)}return z(a,i,o)}function jn(t,s){return $(Un(t,...oa(s)),t.calendar)}function Ln(t,s){let[r,a,i]=oa(s,5);var o;return bt((o=i,qi(t,Tr(r,a),o)[0]))}function kn(t,s){let r=t(s.timeZone),a=rt(s,r),[i,o]=Gn(a),e=Pt(Tt(ut(r,i),ut(r,o)),Sa,1);if(e<=0)throw new RangeError(gr);return e}function Nn(t,s){let{timeZone:r,calendar:a}=s,i=((o,e,n)=>ut(e,o(rt(n,e))))(Wn,t(r),s);return z(i,r,a)}function Un(t,s,r,a){return Vn(t,Tr(s,r),a)}function Vn(t,s,r){let[a,i]=qi(t,s,r);return jt({...Ps(t,i),...a})}function qi(t,s,r){return sa(Bt(zt(t),s,r))}function Vr(t){return Bt(t,Ia,7)}function Tr(t,s){return It[t]*s}function Gn(t){let s=Wn(t);return[s,Ps(s,1)]}function Wn(t){return Jc(6,t)}function ac(t,s,r){let a=Math.min(ls(t),6);return $s(ua(N(t,a),s,r),a)}function da(t,s,r,a,i,o,e,n,d,l){if(a===0&&i===1)return t;let u=er(a,n)?Pa(n)&&a<6&&r>=6?oc:ic:ec,[c,p,m]=u(t,s,r,a,i,o,e,n,d,l);return m&&a!==7&&(c=((T,P,h,y,f,g,E,S)=>{let M=Xt(T);for(let A=y+1;A<=h;A++){if(A===7&&h!==7)continue;let G=ko(A,T);G[R[A]]+=M;let k=Pt(Tt(E(S(f,g,G)),P));if(k&&Math.sign(k)!==M)break;T=G}return T})(c,p,r,Math.max(6,a),e,n,d,l)),c}function la(t,s,r,a,i){if(s===6){let o=((e)=>e[0]+e[1]/O)(t);return[Bt(o,r,a),0]}return ua(t,Tr(s,r),a,i)}function ua(t,s,r,a){let[i,o]=t;a&&o<0&&(o+=O,i-=1);let[e,n]=Ft(Bt(o,s,r),O);return fi(i+e,n)}function Bt(t,s,r){return _n(t/s,r)*s}function _n(t,s){return Tp[s](t)}function ic(t,s,r,a,i,o){let e=Xt(t),n=N(t),d=la(n,a,i,o),l=Tt(n,d),u=Math.sign(d[0]-n[0])===e,c=$s(d,Math.min(r,6));return[{...t,...c},Ds(s,l),u]}function oc(t,s,r,a,i,o,e,n,d,l){let u=Xt(t),c=Pt(N(t,5)),p=Tr(a,i),m=Bt(c,p,o),[T,P]=Ai(e,{...t,...Lo},6,u,n,d,l),h=m-Pt(Tt(T,P)),y=0;h&&Math.sign(h)!==u?s=Ms(T,m):(y+=u,m=Bt(h,p,o),s=Ms(P,m));let f=fa(m);return[{...t,...f,days:t.days+y},s,Boolean(y)]}function ec(t,s,r,a,i,o,e,n,d,l){let u=Xt(t),c=R[a],p=ko(a,t);a===7&&(t={...t,weeks:t.weeks+Math.trunc(t.days/7)});let m=Jr(t[c],i)*i;p[c]=m;let[T,P]=Ai(e,p,a,i*u,n,d,l),h=m+Ki(s,T,P)*u*i,y=Bt(h,i,o),f=Math.sign(y-h)===u;return p[c]=y,[p,f?P:T,f]}function vi(t,s,r,a){let[i,o,e,n]=((l)=>{let u=Hi(l=Ot(l));return[l.timeZone,...u]})(a),d=i!==void 0;return((l,u,c,p,m,T)=>{c=ua(c,m,p,1);let P=u.getOffsetNanosecondsFor(c);return ki(Jt(c,P),T)+(l?ms(Vr(P)):"Z")})(d,s(d?t(i):Cs),r.epochNanoseconds,o,e,n)}function Ei(t,s,r){let[a,i,o,e,n,d]=((l)=>{l=Ot(l);let u=Wo(l),c=Sn(l),p=mp(l),m=Rr(l,4),T=Cr(l,4);return[u,pp(l),p,m,...In(T,c)]})(r);return((l,u,c,p,m,T,P,h,y,f)=>{p=ua(p,y,h,1);let g=l(c).getOffsetNanosecondsFor(p);return ki(Jt(p,g),f)+ms(Vr(g),P)+((E,S)=>S!==1?"["+(S===2?"!":"")+W(E)+"]":"")(c,T)+Ni(u,m)})(t,s.calendar,s.timeZone,s.epochNanoseconds,a,i,o,e,n,d)}function Fi(t,s){let[r,a,i,o]=((l)=>(l=Ot(l),[Wo(l),...Hi(l)]))(s);return e=t.calendar,n=r,d=o,ki(Vn(t,i,a),d)+Ni(e,n);var e,n,d}function $i(t,s){return r=t.calendar,a=t,i=bi(s),Gr(a)+Ni(r,i);var r,a,i}function Zi(t,s){return zn(t.calendar,Bn,t,bi(s))}function ji(t,s){return zn(t.calendar,nc,t,bi(s))}function Li(t,s){let[r,a,i]=Mn(s);return o=i,Jn(qi(t,a,r)[0],o);var o}function ca(t,s){let[r,a,i]=Mn(s,3);return a>1&&(t={...t,...ac(t,a,r)}),((o,e)=>{let{sign:n}=o,d=n===-1?at(o):o,{hours:l,minutes:u}=d,[c,p]=yi(N(d,3),wt,_t);id(c);let m=Ui(p,e),T=e>=0||!n||m;return(n<0?"-":"")+"P"+Ne({Y:ns(d.years),M:ns(d.months),W:ns(d.weeks),D:ns(d.days)})+(l||u||c||T?"T"+Ne({H:ns(l),M:ns(u),S:ns(c,T)+m}):"")})(t,i)}function zn(t,s,r,a){let i=W(t),o=a>1||a===0&&i!==x;return a===1?i===x?s(r):Gr(r):o?Gr(r)+Xn(i,a===2):s(r)}function Ne(t){let s=[];for(let r in t){let a=t[r];a&&s.push(a,r)}return s.join("")}function ki(t,s){return Gr(t)+"T"+Jn(t,s)}function Gr(t){return Bn(t)+"-"+gt(t.isoDay)}function Bn(t){let{isoYear:s}=t;return(s<0||s>9999?Qn(s)+Lr(6,Math.abs(s)):Lr(4,s))+"-"+gt(t.isoMonth)}function nc(t){return gt(t.isoMonth)+"-"+gt(t.isoDay)}function Jn(t,s){let r=[gt(t.isoHour),gt(t.isoMinute)];return s!==-1&&r.push(gt(t.isoSecond)+((a,i,o,e)=>Ui(a*St+i*gs+o,e))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,s)),r.join(":")}function ms(t,s=0){if(s===1)return"";let[r,a]=Ft(Math.abs(t),Sa),[i,o]=Ft(a,Ia),[e,n]=Ft(o,wt);return Qn(t)+gt(r)+":"+gt(i)+(e||n?":"+gt(e)+Ui(n):"")}function Ni(t,s){if(s!==1){let r=W(t);if(s>1||s===0&&r!==x)return Xn(r,s===2)}return""}function Xn(t,s){return"["+(s?"!":"")+"u-ca="+t+"]"}function Ui(t,s){let r=Lr(9,t);return r=s===void 0?r.replace(fp,""):r.slice(0,s),r?"."+r:""}function Qn(t){return t<0?"-":"+"}function ns(t,s){return t||s?t.toLocaleString("fullwide",{useGrouping:0}):""}function dc(t,s){let{epochNanoseconds:r}=t,a=(s.getOffsetNanosecondsFor?s:s(t.timeZone)).getOffsetNanosecondsFor(r),i=Jt(r,a);return{calendar:t.calendar,...i,offsetNanoseconds:a}}function Yn(t,s){let r=rt(s,t);return{calendar:s.calendar,...ct(nu,r),offset:ms(r.offsetNanoseconds),timeZone:s.timeZone}}function Ts(t,s,r,a=0,i=0,o,e){if(r!==void 0&&a===1&&(a===1||e))return xi(s,r);let n=t.getPossibleInstantsFor(s);if(r!==void 0&&a!==3){let d=((l,u,c,p)=>{let m=Y(u);p&&(c=Vr(c));for(let T of l){let P=Pt(Tt(T,m));if(p&&(P=Vr(P)),P===c)return T}})(n,s,r,o);if(d!==void 0)return d;if(a===0)throw new RangeError(Ec)}return e?Y(s):ut(t,s,i,n)}function ut(t,s,r=0,a=t.getPossibleInstantsFor(s)){if(a.length===1)return a[0];if(r===1)throw new RangeError(Fc);if(a.length)return a[r===3?1:0];let i=Y(s),o=((n,d)=>{let l=n.getOffsetNanosecondsFor(Ms(d,-O));return Gi(n.getOffsetNanosecondsFor(Ms(d,O))-l)})(t,i),e=o*(r===2?-1:1);return(a=t.getPossibleInstantsFor(Jt(i,e)))[r===2?0:a.length-1]}function Vi(t){if(Math.abs(t)>=O)throw new RangeError(qc);return t}function Gi(t){if(t>O)throw new RangeError(vc);return t}function Wi(t,s,r){return V(ht(Ds(s.epochNanoseconds,((a)=>{if(od(a))throw new RangeError(jc);return N(a,5)})(t?at(r):r))))}function _i(t,s,r,a,i,o=Object.create(null)){let e=s(a.timeZone),n=t(a.calendar);return{...a,...Qi(e,n,a,r?at(i):i,o)}}function zi(t,s,r,a,i=Object.create(null)){let{calendar:o}=r;return $(Yi(t(o),r,s?at(a):a,i),o)}function Bi(t,s,r,a,i){let{calendar:o}=r;return Z(pa(t(o),r,s?at(a):a,i),o)}function Ji(t,s,r,a,i=Object.create(null)){let o=r.calendar,e=t(o),n=or(e,r);s&&(a=ha(a)),a.sign<0&&(n=e.dateAdd(n,{..._,months:1}),n=Ps(n,-1));let d=e.dateAdd(n,a,i);return ds(or(e,d),o)}function Xi(t,s,r){return bt(td(s,t?at(r):r)[0])}function Qi(t,s,r,a,i){let o=N(a,5),e=r.epochNanoseconds;if(od(a)){let n=rt(r,t);e=Ds(ut(t,{...pa(s,n,{...a,...Lo},i),...ct(Dt,n)}),o)}else e=Ds(e,o),C(i);return{epochNanoseconds:ht(e)}}function Yi(t,s,r,a){let[i,o]=td(s,r);return jt({...pa(t,s,{...r,...Lo,days:r.days+o},a),...i})}function pa(t,s,r,a){if(r.years||r.months||r.weeks)return t.dateAdd(s,r,a);C(a);let i=r.days+N(r,5)[0];return i?Gt(Ps(s,i)):s}function or(t,s,r=1){return Ps(s,r-t.day(s))}function td(t,s){let[r,a]=N(s,5),[i,o]=sa(zt(t)+a);return[i,r+o]}function Ps(t,s){return s?{...t,...ra(st(t)+s*dt)}:t}function ma(t,s,r){let a=t(r.calendar);return Pa(r)?[r,a,s(r.timeZone)]:[{...r,...xt},a]}function to(t){return t?En:Y}function Ta(t){return t?w(Qi,t):Yi}function so(t){return t?w(uc,t):cc}function Pa(t){return t&&t.epochNanoseconds}function er(t,s){return t<=6-(Pa(s)?1:0)}function ro(t,s,r,a,i,o,e){let n=t(Ot(e).relativeTo),d=Math.max(ls(i),ls(o));if(er(d,n))return I(Fs(((P,h,y,f)=>{let g=Ds(N(P),N(h),f?-1:1);if(!Number.isFinite(g[0]))throw new RangeError(Da);return{..._,...$s(g,y)}})(i,o,d,a)));if(!n)throw new RangeError(Ma);a&&(o=at(o));let[l,u,c]=ma(s,r,n),p=Ta(c),m=so(c),T=p(u,l,i);return I(m(u,l,p(u,T,o),d))}function sd(t,s,r,a,i){let o=ls(a),[e,n,d,l,u]=((M,A,G)=>{M=Ii(M,zr);let k=Go(M),Js=G(M[lu]),Xs=Di(M),_u=Rr(M,7),es=Cr(M);if(k===void 0&&es===void 0)throw new RangeError(Lc);return es==null&&(es=0),k==null&&(k=Math.max(es,A)),An(k,es),Xs=Mi(Xs,es,1),[k,es,Xs,_u,Js]})(i,o,t),c=Math.max(o,e);if(!Pa(u)&&c<=6)return I(Fs(((M,A,G,k,Js)=>{let Xs=la(N(M),G,k,Js);return{..._,...$s(Xs,A)}})(a,e,n,d,l)));if(!u)throw new RangeError(Ma);let[p,m,T]=ma(s,r,u),P=to(T),h=Ta(T),y=so(T),f=h(m,p,a),g=y(m,p,f,e),E=a.sign,S=Xt(g);if(E&&S&&E!==S)throw new RangeError(gr);return S&&(g=da(g,P(f),e,n,d,l,m,p,P,h)),I(g)}function rd(t){return t.sign===-1?ha(t):t}function ha(t){return I(at(t))}function at(t){let s={};for(let r of R)s[r]=-1*t[r]||0;return s}function ad(t){return!t.sign}function Xt(t,s=R){let r=0;for(let a of s){let i=Math.sign(t[a]);if(i){if(r&&r!==i)throw new RangeError(Zc);r=i}}return r}function Fs(t){for(let s of zc)yt(s,t[s],-Be,Be,1);return id(Pt(N(t),wt)),t}function id(t){if(!Number.isSafeInteger(t))throw new RangeError($c)}function N(t,s=6){return on(t,s,R)}function $s(t,s=6){let[r,a]=t,i=Xr(a,s,R);if(i[R[s]]+=r*(O/It[s]),!Number.isFinite(i[R[s]]))throw new RangeError(Da);return i}function fa(t,s=5){return Xr(t,s,R)}function od(t){return Boolean(Xt(t,ou))}function ls(t){let s=9;for(;s>0&&!t[R[s]];s--);return s}function lc(t,s){return[t,s]}function Ue(t){let s=Math.floor(t/Zr)*Zr;return[s,s+Zr]}function ed(t){let s=Qt(t=kr(t));if(!s)throw new RangeError(nt(t));let r;if(s.m)r=0;else{if(!s.offset)throw new RangeError(nt(t));r=Zs(s.offset)}return s.timeZone&&eo(s.timeZone,1),V(xi(aa(s),r))}function nd(t){let s=Qt(K(t));if(!s)throw new RangeError(nt(t));if(s.timeZone)return hd(s,s.offset?Zs(s.offset):void 0);if(s.m)throw new RangeError(nt(t));return yd(s)}function dd(t,s){let r=Qt(K(t));if(!r||!r.timeZone)throw new RangeError(nt(t));let{offset:a}=r,i=a?Zs(a):void 0,[,o,e]=mr(s);return hd(r,i,o,e)}function Zs(t){let s=eo(t);if(s===void 0)throw new RangeError(nt(t));return s}function ld(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return $(fd(s))}function ya(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return Z(s.p?fd(s):yd(s))}function ud(t,s){let r=io(K(s));if(r)return ao(r),ds(wi(cs(r)));let a=ya(s);return ds(or(t(a.calendar),a))}function ao(t){if(t.calendar!==x)throw new RangeError($t(t.calendar))}function cd(t,s){let r=oo(K(s));if(r)return ao(r),Ur(cs(r));let a=ya(s),{calendar:i}=a,o=t(i),[e,n,d]=o.h(a),[l,u]=o.I(e,n),[c,p]=o.N(l,u,d);return Ur(Gt(o.P(c,p,d)),i)}function pd(t){let s,r=((a)=>{let i=Cp.exec(a);return i?(ga(i[10]),xd(i)):void 0})(K(t));if(!r){if(r=Qt(t),!r)throw new RangeError(nt(t));if(!r.p)throw new RangeError(nt(t));if(r.m)throw new RangeError($t("Z"));ao(r)}if((s=io(t))&&Le(s))throw new RangeError(nt(t));if((s=oo(t))&&Le(s))throw new RangeError(nt(t));return bt(ia(r,1))}function md(t){let s=((r)=>{let a=bp.exec(r);return a?((i)=>{function o(u,c,p){let m=0,T=0;if(p&&([m,d]=Ft(d,It[p])),u!==void 0){if(n)throw new RangeError($t(u));T=((P)=>{let h=parseInt(P);if(!Number.isFinite(h))throw new RangeError($t(P));return h})(u),e=1,c&&(d=no(c)*(It[p]/wt),n=1)}return m+T}let e=0,n=0,d=0,l={...Ks(R,[o(i[2]),o(i[3]),o(i[4]),o(i[5]),o(i[6],i[7],5),o(i[8],i[9],4),o(i[10],i[11],3)]),...Xr(d,2,R)};if(!e)throw new RangeError(Zl(R));return lo(i[1])<0&&(l=at(l)),l})(a):void 0})(K(t));if(!s)throw new RangeError(nt(t));return I(Fs(s))}function Td(t){let s=Qt(t)||io(t)||oo(t);return s?s.calendar:t}function Pd(t){let s=Qt(t);return s&&(s.timeZone||s.m&&Cs||s.offset)||t}function hd(t,s,r=0,a=0){let i=wa(t.timeZone),o=$a(i);return z(Ts(o,aa(t),s,r,a,!o.v,t.m),i,Pr(t.calendar))}function fd(t){return gd(jt(aa(t)))}function yd(t){return gd(Gt(cs(t)))}function gd(t){return{...t,calendar:Pr(t.calendar)}}function Qt(t){let s=xp.exec(t);return s?((r)=>{let a=r[10],i=(a||"").toUpperCase()==="Z";return{isoYear:wd(r),isoMonth:parseInt(r[4]),isoDay:parseInt(r[5]),...xd(r.slice(5)),...ga(r[16]),p:Boolean(r[6]),m:i,offset:i?void 0:a}})(s):void 0}function io(t){let s=gp.exec(t);return s?((r)=>({isoYear:wd(r),isoMonth:parseInt(r[4]),isoDay:1,...ga(r[5])}))(s):void 0}function oo(t){let s=wp.exec(t);return s?((r)=>({isoYear:As,isoMonth:parseInt(r[1]),isoDay:parseInt(r[2]),...ga(r[3])}))(s):void 0}function eo(t,s){let r=Rp.exec(t);return r?((a,i)=>{let o=a[4]||a[5];if(i&&o)throw new RangeError($t(o));return Vi((Hs(a[2])*Sa+Hs(a[3])*Ia+Hs(a[4])*wt+no(a[5]||""))*lo(a[1]))})(r,s):void 0}function wd(t){let s=lo(t[1]),r=parseInt(t[2]||t[3]);if(s<0&&!r)throw new RangeError($t(-0));return s*r}function xd(t){let s=Hs(t[3]);return{...sa(no(t[4]||""))[0],isoHour:Hs(t[1]),isoMinute:Hs(t[2]),isoSecond:s===60?59:s}}function ga(t){let s,r,a=[];if(t.replace(Op,(i,o,e)=>{let n=Boolean(o),[d,l]=e.split("=").reverse();if(l){if(l==="u-ca")a.push(d),s||(s=n);else if(n||/[A-Z]/.test(l))throw new RangeError($t(i))}else{if(r)throw new RangeError($t(i));r=d}return""}),a.length>1&&s)throw new RangeError($t(t));return{timeZone:r,calendar:a[0]||x}}function no(t){return parseInt(t.padEnd(9,"0"))}function js(t){return new RegExp(`^${t}$`,"i")}function lo(t){return t&&t!=="+"?-1:1}function Hs(t){return t===void 0?0:parseInt(t)}function Cd(t){return wa(K(t))}function wa(t){let s=uo(t);return typeof s=="number"?ms(s):s?((r)=>{if(Dp.test(r))throw new RangeError(Kc);return r.toLowerCase().split("/").map((a,i)=>(a.length<=3||/\d/.test(a))&&!/etc|yap/.test(a)?a.toUpperCase():a.replace(/baja|dumont|[a-z]+/g,(o,e)=>o.length<=2&&!i||o==="in"||o==="chat"?o.toUpperCase():o.length>2||!e?Ze(o).replace(/island|noronha|murdo|rivadavia|urville/,Ze):o)).join("/")})(t):Cs}function Ve(t){let s=uo(t);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Cs}function uo(t){let s=eo(t=t.toUpperCase(),1);return s!==void 0?s:t!==Cs?Hp(t):void 0}function co(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function po(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function Rd(t,s,r,a,i,o){let e=t(Ot(o).relativeTo),n=Math.max(ls(a),ls(i));if(rn(R,a,i))return 0;if(er(n,e))return tt(N(a),N(i));if(!e)throw new RangeError(Ma);let[d,l,u]=ma(s,r,e),c=to(u),p=Ta(u);return tt(c(p(l,d,a)),c(p(l,d,i)))}function mo(t,s){return hs(t,s)||xa(t,s)}function hs(t,s){return Vt(st(t),st(s))}function xa(t,s){return Vt(zt(t),zt(s))}function Od(t,s){return!co(t,s)}function bd(t,s){return!po(t,s)&&!!Ca(t.timeZone,s.timeZone)&&Es(t.calendar,s.calendar)}function Hd(t,s){return!mo(t,s)&&Es(t.calendar,s.calendar)}function Dd(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Md(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Id(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Sd(t,s){return!xa(t,s)}function Ca(t,s){if(t===s)return 1;let r=W(t),a=W(s);if(r===a)return 1;try{return Ve(r)===Ve(a)}catch(i){}}function To(t,s,r,a){let i=vs(t,F(a),3,5),o=Ra(s.epochNanoseconds,r.epochNanoseconds,...i);return I(t?at(o):o)}function Po(t,s,r,a,i,o){let e=ba(a.calendar,i.calendar),n=F(o),[d,l,u,c]=vs(r,n,5),p=a.epochNanoseconds,m=i.epochNanoseconds,T=tt(m,p),P;if(T)if(d<6)P=Ra(p,m,d,l,u,c);else{let h=s(((f,g)=>{if(!Ca(f,g))throw new RangeError(Vl);return f})(a.timeZone,i.timeZone)),y=t(e);P=Kd(y,h,a,i,T,d,n),P=da(P,m,d,l,u,c,y,a,En,w(Qi,h))}else P=_;return I(r?at(P):P)}function ho(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i),[n,d,l,u]=vs(s,e,6),c=Y(r),p=Y(a),m=tt(p,c),T;if(m)if(n<=6)T=Ra(c,p,n,d,l,u);else{let P=t(o);T=qd(P,r,a,m,n,e),T=da(T,p,n,d,l,u,P,r,Y,Yi)}else T=_;return I(s?at(T):T)}function fo(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i);return Ad(s,()=>t(o),r,a,...vs(s,e,6,9,6),e)}function yo(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i),n=vs(s,e,9,9,8),d=t(o);return Ad(s,()=>d,or(d,r),or(d,a),...n,e)}function Ad(t,s,r,a,i,o,e,n,d){let l=Y(r),u=Y(a),c;if(tt(u,l))if(i===6)c=Ra(l,u,i,o,e,n);else{let p=s();c=p.dateUntil(r,a,i,d),o===6&&e===1||(c=da(c,u,i,o,e,n,p,r,Y,pa))}else c=_;return I(t?at(c):c)}function go(t,s,r,a){let i=F(a),[o,e,n,d]=vs(t,i,5,5),l=Bt(wo(s,r),Tr(e,n),d),u={..._,...fa(l,o)};return I(t?at(u):u)}function uc(t,s,r,a,i,o){let e=tt(a.epochNanoseconds,r.epochNanoseconds);return e?i<6?vd(r.epochNanoseconds,a.epochNanoseconds,i):Kd(s,t,r,a,e,i,o):_}function cc(t,s,r,a,i){let o=Y(s),e=Y(r),n=tt(e,o);return n?a<=6?vd(o,e,a):qd(t,s,r,n,a,i):_}function Kd(t,s,r,a,i,o,e){let[n,d,l]=((p,m,T,P)=>{function h(){return A={...Ps(g,S++*-P),...f},G=ut(p,A),tt(E,G)===-P}let y=rt(m,p),f=ct(Dt,y),g=rt(T,p),E=T.epochNanoseconds,S=0,M=wo(y,g),A,G;if(Math.sign(M)===-P&&S++,h()&&(P===-1||h()))throw new RangeError(gr);let k=Pt(Tt(G,E));return[y,A,k]})(s,r,a,i);var u,c;return{...o===6?(u=n,c=d,{..._,days:Ed(u,c)}):t.dateUntil(n,d,o,e),...fa(l)}}function qd(t,s,r,a,i,o){let[e,n,d]=((l,u,c)=>{let p=u,m=wo(l,u);return Math.sign(m)===-c&&(p=Ps(u,-c),m+=O*c),[l,p,m]})(s,r,a);return{...t.dateUntil(e,n,i,o),...fa(d)}}function Ra(t,s,r,a,i,o){return{..._,...$s(la(Tt(t,s),a,i,o),r)}}function vd(t,s,r){return{..._,...$s(Tt(t,s),r)}}function Ed(t,s){return Oa(st(t),st(s))}function Oa(t,s){return Math.trunc((s-t)/dt)}function wo(t,s){return zt(s)-zt(t)}function ba(t,s){if(!Es(t,s))throw new RangeError(Eo);return t}function pc(t){function s(i){return((o,e)=>({...Fd(o,e),F:o.month,day:parseInt(o.day)}))(gi(r,i),a)}let r=Jo(t),a=Wr(t);return{id:t,O:mc(s),B:Tc(s)}}function mc(t){return lt((s)=>{let r=st(s);return t(r)},WeakMap)}function Tc(t){let s=t(0).year-tp;return lt((r)=>{let a,i=qs(r-s),o=[],e=[];do i+=400*dt;while((a=t(i)).year<=r);do i+=(1-a.day)*dt,a.year===r&&(o.push(i),e.push(a.F)),i-=dt;while((a=t(i)).year>=r);return{k:o.reverse(),C:_l(e.reverse())}})}function Fd(t,s){let r,a,i=$d(t);if(t.era){let o=ru[s];o!==void 0&&(r=s==="islamic"?"ah":t.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),r==="bc"||r==="b"?r="bce":r!=="ad"&&r!=="a"||(r="ce"),a=i,i=Nd(a,o[r]||0))}return{era:r,eraYear:a,year:i}}function $d(t){return parseInt(t.relatedYear||t.year)}function ai(t){let{year:s,F:r,day:a}=this.O(t),{C:i}=this.B(s);return[s,i[r]+1,a]}function nr(t,s=1,r=1){return this.B(t).k[s-1]+(r-1)*dt}function Er(t){let s=We(this,t),r=We(this,t-1),a=s.length;if(a>r.length){let i=Ud(this);if(i<0)return-i;for(let o=0;o<a;o++)if(s[o]!==r[o])return o+1}}function Fr(t){return Oa(nr.call(this,t),nr.call(this,t+1))}function Ge(t,s){let{k:r}=this.B(t),a=s+1,i=r;return a>r.length&&(a=1,i=this.B(t+1).k),Oa(r[s-1],i[a-1])}function $r(t){return this.B(t).k.length}function We(t,s){return Object.keys(t.B(s).C)}function Zd(t){return Pr(K(t))}function Pr(t){if((t=t.toLowerCase())!==x&&t!==Ka&&Wr(t)!==Wr(Jo(t).resolvedOptions().calendar))throw new RangeError(Ac(t));return t}function Wr(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function jd(t){return this.R(t)[0]}function Ld(t){return this.R(t)[1]}function xo(t){let[s]=this.h(t);return Oa(this.q(s),st(t))+1}function kd(t){let s=Ip.exec(t);if(!s)throw new RangeError(Ic(t));return[parseInt(s[1]),Boolean(s[2])]}function _r(t,s,r){return t+(s||r&&t>=r?1:0)}function ii(t,s){return t-(s&&t>=s?1:0)}function Nd(t,s){return(s+t)*(Math.sign(s)||1)||0}function oi(t){return ru[Vd(t)]}function Ud(t){return Gc[Vd(t)]}function Vd(t){return Wr(t.id||x)}function Gd(t,s,r,a){let i=Yt(r,a,Ht,[],Ql);if(i.timeZone!==void 0){let o=r.dateFromFields(i),e=fs(i),n=t(i.timeZone);return{epochNanoseconds:Ts(s(n),{...o,...e},i.offset!==void 0?Zs(i.offset):void 0),timeZone:n}}return{...r.dateFromFields(i),...xt}}function Wd(t,s,r,a,i,o){let e=Yt(r,i,Ht,Jl,Ql),n=t(e.timeZone),[d,l,u]=mr(o),c=r.dateFromFields(e,ea(o,d)),p=fs(e,d);return z(Ts(s(n),{...c,...p},e.offset!==void 0?Zs(e.offset):void 0,l,u),n,a)}function _d(t,s,r){let a=Yt(t,s,Ht,[],Nt),i=C(r);return $(jt({...t.dateFromFields(a,ea(r,i)),...fs(a,i)}))}function Co(t,s,r,a=[]){let i=Yt(t,s,Ht,a);return t.dateFromFields(i,r)}function Ro(t,s,r,a){let i=Yt(t,s,Zo,a);return t.yearMonthFromFields(i,r)}function Oo(t,s,r,a,i=[]){let o=Yt(t,r,Ht,i);return s&&o.month!==void 0&&o.monthCode===void 0&&o.year===void 0&&(o.year=As),t.monthDayFromFields(o,a)}function zd(t,s){let r=C(s);return bt(fs(Mt(t,ni,[],1),r))}function Bd(t){let s=Mt(t,jo);return I(Fs({..._,...s}))}function Yt(t,s,r,a=[],i=[]){return Mt(s,[...t.fields(r),...i].sort(),a)}function Mt(t,s,r,a=!r){let i={},o,e=0;for(let n of s){if(n===o)throw new RangeError(Rc(n));if(n==="constructor"||n==="__proto__")throw new RangeError(qo(n));let d=t[n];if(d!==void 0)e=1,Je[n]&&(d=Je[n](d,n)),i[n]=d;else if(r){if(r.includes(n))throw new TypeError(Ko(n));i[n]=su[n]}o=n}if(a&&!e)throw new TypeError(Zl(s));return i}function fs(t,s){return ia(qp({...su,...t}),s)}function Jd(t,s,r,a,i,o){let e=F(o),{calendar:n,timeZone:d}=r;return z(((l,u,c,p,m)=>{let T=hr(l,c,p,Ht,Xl,Bl),[P,h,y]=mr(m,2);return Ts(u,{...l.dateFromFields(T,ea(m,P)),...fs(T,P)},Zs(T.offset),h,y)})(t(n),s(d),a,i,e),d,n)}function Xd(t,s,r,a,i){let o=F(i);return $(((e,n,d,l)=>{let u=hr(e,n,d,Ht,Nt),c=C(l);return jt({...e.dateFromFields(u,ea(l,c)),...fs(u,c)})})(t(s.calendar),r,a,o))}function Qd(t,s,r,a,i){let o=F(i);return((e,n,d,l)=>{let u=hr(e,n,d,Ht);return e.dateFromFields(u,l)})(t(s.calendar),r,a,o)}function Yd(t,s,r,a,i){let o=F(i);return ds(((e,n,d,l)=>{let u=hr(e,n,d,Zo);return e.yearMonthFromFields(u,l)})(t(s.calendar),r,a,o))}function tl(t,s,r,a,i){let o=F(i);return((e,n,d,l)=>{let u=hr(e,n,d,Ht);return e.monthDayFromFields(u,l)})(t(s.calendar),r,a,o)}function sl(t,s,r){return bt(((a,i,o)=>{let e=C(o);return fs({...ct(ni,a),...Mt(i,ni)},e)})(t,s,r))}function rl(t,s){return I((r=t,a=s,Fs({...r,...Mt(a,jo)})));var r,a}function hr(t,s,r,a,i=[],o=[]){let e=[...t.fields(a),...i].sort(),n=Mt(s,e,o),d=Mt(r,e);return n=t.mergeFields(n,d),Mt(n,e,[])}function bo(t,s){let r=Yt(t,s,tu);return t.monthDayFromFields(r)}function Ho(t,s,r){let a=Yt(t,s,Yl);return t.yearMonthFromFields(a,r)}function al(t,s,r,a,i){s=ct(r=t.fields(r),s),a=Mt(a,i=t.fields(i),[]);let o=t.mergeFields(s,a);return o=Mt(o,[...r,...i].sort(),[]),t.dateFromFields(o)}function Qa(t,s){let{era:r,eraYear:a,year:i}=s,o=oi(t);if(r!==void 0||a!==void 0){if(r===void 0||a===void 0)throw new TypeError(bc);if(!o)throw new RangeError(Oc);let e=o[r];if(e===void 0)throw new RangeError(Dc(r));let n=Nd(a,e);if(i!==void 0&&i!==n)throw new RangeError(Hc);i=n}else if(i===void 0)throw new TypeError(Mc(o));return i}function Ya(t,s,r,a){let{month:i,monthCode:o}=s;if(o!==void 0){let e=((n,d,l,u)=>{let c=n.U(l),[p,m]=kd(d),T=_r(p,m,c);if(m){let P=Ud(n);if(P===void 0)throw new RangeError(rr);if(P>0){if(T>P)throw new RangeError(rr);if(c===void 0){if(u===1)throw new RangeError(rr);T--}}else{if(T!==-P)throw new RangeError(rr);if(c===void 0&&u===1)throw new RangeError(rr)}}return T})(t,o,r,a);if(i!==void 0&&i!==e)throw new RangeError(Nl);i=e,a=1}else if(i===void 0)throw new TypeError(Sc);return yt("month",i,1,t.L(r),a)}function _e(t,s,r,a,i){return et(s,"day",1,t.j(a,r),i)}function ti(t,s,r,a){let i=0,o=[];for(let e of r)s[e]!==void 0?i=1:o.push(e);if(Object.assign(t,s),i)for(let e of a||o)delete t[e]}function il(t){return V(ht(ta(Yr(t))))}function ol(t,s,r,a,i=x){return z(ht(ta(Yr(r))),s(a),t(i))}function el(t,s,r,a,i=0,o=0,e=0,n=0,d=0,l=0,u=x){return $(jt(aa(Ct(Q,Ks(qa,[s,r,a,i,o,e,n,d,l])))),t(u))}function nl(t,s,r,a,i=x){return Z(Gt(cs(Ct(Q,{isoYear:s,isoMonth:r,isoDay:a}))),t(i))}function dl(t,s,r,a=x,i=1){let o=Q(s),e=Q(r),n=t(a);return ds(wi(cs({isoYear:o,isoMonth:e,isoDay:Q(i)})),n)}function ll(t,s,r,a=x,i=As){let o=Q(s),e=Q(r),n=t(a);return Ur(Gt(cs({isoYear:Q(i),isoMonth:o,isoDay:e})),n)}function ul(t=0,s=0,r=0,a=0,i=0,o=0){return bt(ia(Ct(Q,Ks(Dt,[t,s,r,a,i,o])),1))}function cl(t=0,s=0,r=0,a=0,i=0,o=0,e=0,n=0,d=0,l=0){return I(Fs(Ct(Pn,Ks(R,[t,s,r,a,i,o,e,n,d,l]))))}function Do(t,s,r=x){return z(t.epochNanoseconds,s,r)}function pl(t){return V(t.epochNanoseconds)}function Mo(t,s){return $(rt(s,t))}function Io(t,s){return Z(rt(s,t))}function ml(t,s,r){return Ho(t(s.calendar),r)}function Tl(t,s,r){return bo(t(s.calendar),r)}function So(t,s){return bt(rt(s,t))}function Pl(t,s,r,a){let i=((o,e,n,d)=>{let l=Oi(d);return ut(o(e),n,l)})(t,r,s,a);return z(ht(i),r,s.calendar)}function hl(t,s,r){let a=t(s.calendar);return ds({...s,...Ho(a,r)})}function fl(t,s,r){return bo(t(s.calendar),r)}function yl(t,s,r,a,i){let o=t(i.timeZone),e=i.plainTime,n=e!==void 0?s(e):xt;return z(ut(r(o),{...a,...n}),o,a.calendar)}function gl(t,s=xt){return $(jt({...t,...s}))}function wl(t,s,r){return Ho(t(s.calendar),r)}function xl(t,s,r){return bo(t(s.calendar),r)}function Cl(t,s,r,a){return((i,o,e)=>al(i,o,Yl,Zt(e),xr))(t(s.calendar),r,a)}function Rl(t,s,r,a){return((i,o,e)=>al(i,o,tu,Zt(e),Aa))(t(s.calendar),r,a)}function Ol(t,s,r,a,i){let o=Zt(i),e=s(o.plainDate),n=t(o.timeZone);return z(ut(r(n),{...e,...a}),n,e.calendar)}function bl(t,s){return $(jt({...t,...s}))}function Hl(t){return V(ht(Is(t,wt)))}function Dl(t){return V(ht(Is(t,St)))}function Ml(t){return V(ht(ta(Yr(t),gs)))}function Il(t){return V(ht(ta(Yr(t))))}function Sl(t,s,r=xt){let a=s.timeZone,i=t(a),o={...rt(s,i),...r};return z(Ts(i,o,o.offsetNanoseconds,2),a,s.calendar)}function Al(t,s,r){let a=s.timeZone,i=t(a),o={...rt(s,i),...r},e=El(s.calendar,r.calendar);return z(Ts(i,o,o.offsetNanoseconds,2),a,e)}function Kl(t,s=xt){return $({...t,...s})}function ql(t,s){return $({...t,...s},El(t.calendar,s.calendar))}function Ha(t,s){return{...t,calendar:s}}function vl(t,s){return{...t,timeZone:s}}function El(t,s){if(t===s)return t;let r=W(t),a=W(s);if(r===a||r===x)return s;if(a===x)return t;throw new RangeError(Eo)}function Pc(t,s){return(r)=>r===x?t:r===Ka||r===Ss?Object.assign(Object.create(t),{id:r}):Object.assign(Object.create(s),Mp(r))}function ys(t,s,r){let a=new Set(r);return(i)=>(((o,e)=>{for(let n of e)if(n in o)return 1;return 0})(i=ci(a,i),t)||Object.assign(i,s),r&&(i.timeZone=Cs,["full","long"].includes(i.timeStyle)&&(i.timeStyle="medium")),i)}function Lt(t,s=Ao){let[r,,,a]=t;return(i,o=Bp,...e)=>{let n=s(a&&a(...e),i,o,r),d=n.resolvedOptions();return[n,...hc(t,d,e)]}}function Ao(t,s,r,a){if(r=a(r),t){if(r.timeZone!==void 0)throw new TypeError(Nc);r.timeZone=t}return new ts(s,r)}function hc(t,s,r){let[,a,i]=t;return r.map((o)=>(o.calendar&&((e,n,d)=>{if((d||e!==x)&&e!==n)throw new RangeError(Eo)})(W(o.calendar),s.calendar,i),a(o,s)))}function Ls(t){let s=fr();return Jt(s,t.getOffsetNanosecondsFor(s))}function fr(){return Is(Date.now(),St)}function kt(){return Qe||(Qe=new ts().resolvedOptions().timeZone)}var fc=(t,s)=>`Non-integer ${t}: ${s}`,yc=(t,s)=>`Non-positive ${t}: ${s}`,gc=(t,s)=>`Non-finite ${t}: ${s}`,wc=(t)=>`Cannot convert bigint to ${t}`,xc=(t)=>`Invalid bigint: ${t}`,Cc="Cannot convert Symbol to string",Fl="Invalid object",$l=(t,s,r,a,i)=>i?$l(t,i[s],i[r],i[a]):yr(t,s)+`; must be between ${r}-${a}`,yr=(t,s)=>`Invalid ${t}: ${s}`,Ko=(t)=>`Missing ${t}`,qo=(t)=>`Invalid field ${t}`,Rc=(t)=>`Duplicate field ${t}`,Zl=(t)=>"No valid fields: "+t.join(),jl="Invalid bag",Ll=(t,s,r)=>yr(t,s)+"; must be "+Object.keys(r).join(),kl="Cannot use valueOf",vo="Invalid calling context",Oc="Forbidden era/eraYear",bc="Mismatching era/eraYear",Hc="Mismatching year/eraYear",Dc=(t)=>`Invalid era: ${t}`,Mc=(t)=>"Missing year"+(t?"/era/eraYear":""),Ic=(t)=>`Invalid monthCode: ${t}`,Nl="Mismatching month/monthCode",Sc="Missing month/monthCode",ze="Cannot guess year",rr="Invalid leap month",Ul="Invalid protocol",gr="Invalid protocol results",Eo="Mismatching Calendars",Ac=(t)=>`Invalid Calendar: ${t}`,Vl="Mismatching TimeZones",Kc="Forbidden ICU TimeZone",qc="Out-of-bounds offset",vc="Out-of-bounds TimeZone gap",Ec="Invalid TimeZone offset",Fc="Ambiguous offset",Da="Out-of-bounds date",$c="Out-of-bounds duration",Zc="Cannot mix duration signs",Ma="Missing relativeTo",jc="Cannot use large units",Lc="Required smallestUnit or largestUnit",kc="smallestUnit > largestUnit",nt=(t)=>`Cannot parse: ${t}`,$t=(t)=>`Invalid substring: ${t}`,Gl=(t)=>`Cannot format ${t}`,Wl="Mismatching types for formatting",Nc="Cannot specify TimeZone",_l=w(ur,(t,s)=>s),ks=w(ur,(t,s,r)=>r),gt=w(Lr,2),ei={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},wr=Object.keys(ei),dt=86400000,zl=1000,gs=1000,St=1e6,wt=1e9,Ia=60000000000,Sa=3600000000000,O=86400000000000,It=[1,gs,St,wt,Ia,Sa,O],Nt=wr.slice(0,6),ni=cr(Nt),Bl=["offset"],Jl=["timeZone"],Xl=Nt.concat(Bl),Ql=Xl.concat(Jl),di=["era","eraYear"],Uc=di.concat(["year"]),Aa=["year"],Fo=["monthCode"],$o=["month"].concat(Fo),xr=["day"],Zo=$o.concat(Aa),Yl=Fo.concat(Aa),Ht=xr.concat(Zo),Vc=xr.concat($o),tu=xr.concat(Fo),su=ks(Nt,0),x="iso8601",Ka="gregory",Ss="japanese",ru={[Ka]:{bce:-1,ce:0},[Ss]:{bce:-1,ce:0,meiji:1867,taisho:1911,showa:1925,heisei:1988,reiwa:2018},ethioaa:{era0:0},ethiopic:{era0:0,era1:5500},coptic:{era0:-1,era1:0},roc:{beforeroc:-1,minguo:0},buddhist:{be:0},islamic:{ah:0},indian:{saka:0},persian:{ap:0}},Gc={chinese:13,dangi:13,hebrew:-6},K=w(Qr,"string"),au=w(Qr,"boolean"),Wc=w(Qr,"number"),iu=w(Qr,"function"),R=wr.map((t)=>t+"s"),jo=cr(R),_c=R.slice(0,6),ou=R.slice(6),zc=ou.slice(1),Bc=_l(R),_=ks(R,0),Lo=ks(_c,0),ko=w(an,R),Dt=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],No=["isoDay","isoMonth","isoYear"],qa=Dt.concat(No),Uo=cr(No),eu=cr(Dt),nu=cr(qa),xt=ks(eu,0),Jc=w(an,qa),ts=Intl.DateTimeFormat,du="en-GB",Vo=1e8,Xc=Vo*dt,Qc=[Vo,0],Yc=[-Vo,0],dr=275760,lr=-271821,tp=1970,As=1972,Et=12,sp=qs(1868,9,8),rp=lt(rc,WeakMap),zr="smallestUnit",li="unit",ir="roundingIncrement",si="fractionalSecondDigits",lu="relativeTo",uu={constrain:0,reject:1},ap=Object.keys(uu),ip={compatible:0,reject:1,earlier:2,later:3},op={reject:0,use:1,prefer:2,ignore:3},ep={auto:0,never:1,critical:2,always:3},np={auto:0,never:1,critical:2},dp={auto:0,never:1},lp={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},Cr=w(Si,zr),Go=w(Si,"largestUnit"),up=w(Si,li),cu=w(ps,"overflow",uu),pu=w(ps,"disambiguation",ip),cp=w(ps,"offset",op),Wo=w(ps,"calendarName",ep),pp=w(ps,"timeZoneName",np),mp=w(ps,"offset",dp),Rr=w(ps,"roundingMode",lp),Ns="PlainYearMonth",Us="PlainMonthDay",ws="PlainDate",xs="PlainDateTime",va="PlainTime",Ut="ZonedDateTime",Ea="Instant",Fa="Duration",Tp=[Math.floor,(t)=>vr(t)?Math.floor(t):Math.round(t),Math.ceil,(t)=>vr(t)?Math.ceil(t):Math.round(t),Math.trunc,(t)=>vr(t)?Math.trunc(t)||0:Math.round(t),(t)=>t<0?Math.floor(t):Math.ceil(t),(t)=>Math.sign(t)*Math.round(Math.abs(t))||0,(t)=>vr(t)?(t=Math.trunc(t)||0)+t%2:Math.round(t)],Cs="UTC",Zr=5184000,Pp=Nr(1847),hp=Nr(new Date().getUTCFullYear()+10),fp=/0+$/,rt=lt(dc,WeakMap),Be=4294967295,$a=lt((t)=>{let s=uo(t);return typeof s=="object"?new Tu(s):new mu(s||0)});class mu{constructor(t){this.v=t}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(t){return[xi(t,this.v)]}l(){}}class Tu{constructor(t){this.$=((s)=>{function r(d){let l=ri(d,e,n),[u,c]=Ue(l),p=i(u),m=i(c);return p===m?p:a(o(u,c),p,m,d)}function a(d,l,u,c){let p,m;for(;(c===void 0||(p=c<d[0]?l:c>=d[1]?u:void 0)===void 0)&&(m=d[1]-d[0]);){let T=d[0]+Math.floor(m/2);s(T)===u?d[1]=T:d[0]=T+1}return p}let i=lt(s),o=lt(lc),e=Pp,n=hp;return{G(d){let l=r(d-86400),u=r(d+86400),c=d-l,p=d-u;if(l===u)return[c];let m=r(c);return m===r(p)?[d-m]:l>u?[c,p]:[]},V:r,l(d,l){let u=ri(d,e,n),[c,p]=Ue(u),m=Zr*l,T=l<0?()=>p>e||(e=u,0):()=>c<n||(n=u,0);for(;T();){let P=i(c),h=i(p);if(P!==h){let y=o(c,p);a(y,P,h);let f=y[0];if((Vt(f,d)||1)===l)return f}c+=m,p+=m}}}})(((s)=>(r)=>{let a=gi(s,r*zl);return Nr($d(a),parseInt(a.month),parseInt(a.day),parseInt(a.hour),parseInt(a.minute),parseInt(a.second))-r})(t))}getOffsetNanosecondsFor(t){return this.$.V(yn(t))*wt}getPossibleInstantsFor(t){let[s,r]=[Nr((a=t).isoYear,a.isoMonth,a.isoDay,a.isoHour,a.isoMinute,a.isoSecond),a.isoMillisecond*St+a.isoMicrosecond*gs+a.isoNanosecond];var a;return this.$.G(s).map((i)=>ht(Ms(Is(i,wt),r)))}l(t,s){let[r,a]=gn(t),i=this.$.l(r+(s>0||a?1:0),s);if(i!==void 0)return Is(i,wt)}}var _o="([+\u2212-])",jr="(?:[.,](\\d{1,9}))?",Pu=`(?:(?:${_o}(\\d{6}))|(\\d{4}))-?(\\d{2})`,zo="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+jr+")?)?",Bo=_o+zo,yp=Pu+"-?(\\d{2})(?:[T ]"+zo+"(Z|"+Bo+")?)?",hu="\\[(!?)([^\\]]*)\\]",Za=`((?:${hu}){0,9})`,gp=js(Pu+Za),wp=js("(?:--)?(\\d{2})-?(\\d{2})"+Za),xp=js(yp+Za),Cp=js("T?"+zo+"(?:"+Bo+")?"+Za),Rp=js(Bo),Op=new RegExp(hu,"g"),bp=js(`${_o}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${jr}H)?(?:(\\d+)${jr}M)?(?:(\\d+)${jr}S)?)?`),Hp=lt((t)=>new ts(du,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Dp=/^(AC|AE|AG|AR|AS|BE|BS|CA|CN|CS|CT|EA|EC|IE|IS|JS|MI|NE|NS|PL|PN|PR|PS|SS|VS)T$/,Mp=lt(pc),Jo=lt((t)=>new ts(du,{calendar:t,timeZone:Cs,era:"short",year:"numeric",month:"short",day:"numeric"})),Ip=/^M(\d{2})(L?)$/,Sp={era:kr,eraYear:Q,year:Q,month:je,monthCode:kr,day:je},Ap=ks(Nt,Q),Kp=ks(R,Pn),Je=Object.assign({},Sp,Ap,Kp,{offset:kr}),qp=w(sc,Nt,Dt),Xe={dateAdd(t,s,r){let a=C(r),i,{years:o,months:e,weeks:n,days:d}=s;if(d+=N(s,5)[0],o||e)i=((l,u,c,p,m)=>{let[T,P,h]=l.h(u);if(c){let[y,f]=l.I(T,P);T+=c,P=_r(y,f,l.U(T)),P=yt("month",P,1,l.L(T),m)}return p&&([T,P]=l._(T,P,p)),h=yt("day",h,1,l.j(T,P),m),l.q(T,P,h)})(this,t,o,e,a);else{if(!n&&!d)return t;i=st(t)}return i+=(7*n+d)*dt,Gt(ra(i))},dateUntil(t,s,r){if(r<=7){let d=0,l=Ed({...t,...xt},{...s,...xt});return r===7&&([d,l]=_t(l,7)),{..._,weeks:d,days:l}}let a=this.h(t),i=this.h(s),[o,e,n]=((d,l,u,c,p,m,T)=>{let P=p-l,h=m-u,y=T-c;if(P||h){let f=Math.sign(P||h),g=d.j(p,m),E=0;if(Math.sign(y)===-f){let S=g;[p,m]=d._(p,m,-f),P=p-l,h=m-u,g=d.j(p,m),E=f<0?-S:g}if(y=T-Math.min(c,g)+E,P){let[S,M]=d.I(l,u),[A,G]=d.I(p,m);if(h=A-S||Number(G)-Number(M),Math.sign(h)===-f){let k=f<0&&-d.L(p);P=(p-=f)-l,h=m-_r(S,M,d.U(p))+(k||d.L(p))}}}return[P,h,y]})(this,...a,...i);return r===8&&(e+=this.J(o,a[0]),o=0),{..._,years:o,months:e,days:n}},dateFromFields(t,s){let r=C(s),a=Qa(this,t),i=Ya(this,t,a,r),o=_e(this,t,i,a,r);return Z(Gt(this.P(a,i,o)),this.id||x)},yearMonthFromFields(t,s){let r=C(s),a=Qa(this,t),i=Ya(this,t,a,r);return ds(wi(this.P(a,i,1)),this.id||x)},monthDayFromFields(t,s){let r=C(s),a=!this.id,{monthCode:i,year:o,month:e}=t,n,d,l,u,c;if(i!==void 0){[n,d]=kd(i),c=Ye(t,"day");let p=this.N(n,d,c);if(!p)throw new RangeError(ze);if([l,u]=p,e!==void 0&&e!==u)throw new RangeError(Nl);a&&(u=yt("month",u,1,Et,1),c=yt("day",c,1,Ci(o!==void 0?o:l,u),r))}else{l=o===void 0&&a?As:Qa(this,t),u=Ya(this,t,l,r),c=_e(this,t,u,l,r);let p=this.U(l);d=u===p,n=ii(u,p);let m=this.N(n,d,c);if(!m)throw new RangeError(ze);[l,u]=m}return Ur(Gt(this.P(l,u,c)),this.id||x)},fields(t){return oi(this)&&t.includes("year")?[...t,...di]:t},mergeFields(t,s){let r=Object.assign(Object.create(null),t);return ti(r,s,$o),oi(this)&&(ti(r,s,Uc),this.id===Ss&&ti(r,s,Vc,di)),r},inLeapYear(t){let[s]=this.h(t);return this.K(s)},monthsInYear(t){let[s]=this.h(t);return this.L(s)},daysInMonth(t){let[s,r]=this.h(t);return this.j(s,r)},daysInYear(t){let[s]=this.h(t);return this.X(s)},dayOfYear:xo,era(t){return this.ee(t)[0]},eraYear(t){return this.ee(t)[1]},monthCode(t){let[s,r]=this.h(t),[a,i]=this.I(s,r);return((o,e)=>"M"+gt(o)+(e?"L":""))(a,i)},dayOfWeek:On,daysInWeek(){return 7}},vp={dayOfYear:xo,h:xn,q:qs},Ep=Object.assign({},vp,{weekOfYear:jd,yearOfWeek:Ld,R(t){function s(m){return(7-m<a?7:0)-m}function r(m){let T=Rn(p+m),P=m||1,h=s(ar(d+T*P,7));return u=(T+(h-l)*P)/7}let a=this.id?1:4,i=On(t),o=this.dayOfYear(t),e=ar(i-1,7),n=o-1,d=ar(e-n,7),l=s(d),u,c=Math.floor((n-l)/7)+1,p=t.isoYear;return c?c>r(0)&&(c=1,p++):(c=r(-1),p--),[c,p,u]}}),Fp={dayOfYear:xo,h:ai,q:nr,weekOfYear:jd,yearOfWeek:Ld,R(){return[]}},Vs=Pc(Object.assign({},Xe,Ep,{h:xn,ee(t){return this.id===Ka?bn(t):this.id===Ss?rp(t):[]},I:(t,s)=>[s,0],N(t,s){if(!s)return[As,t]},K:Ri,U(){},L:Cn,J:(t)=>t*Et,j:Ci,X:Rn,P:(t,s,r)=>({isoYear:t,isoMonth:s,isoDay:r}),q:qs,_:(t,s,r)=>(t+=Jr(r,Et),(s+=mi(r,Et))<1?(t--,s+=Et):s>Et&&(t++,s-=Et),[t,s]),year(t){return t.isoYear},month(t){return t.isoMonth},day:(t)=>t.isoDay}),Object.assign({},Xe,Fp,{h:ai,ee(t){let s=this.O(t);return[s.era,s.eraYear]},I(t,s){let r=Er.call(this,t);return[ii(s,r),r===s]},N(t,s,r){let[a,i,o]=ai.call(this,{isoYear:As,isoMonth:Et,isoDay:31}),e=Er.call(this,a),n=i===e;(Vt(t,ii(i,e))||Vt(Number(s),Number(n))||Vt(r,o))===1&&a--;for(let d=0;d<100;d++){let l=a-d,u=Er.call(this,l),c=_r(t,s,u);if(s===(c===u)&&r<=Ge.call(this,l,c))return[l,c]}},K(t){let s=Fr.call(this,t);return s>Fr.call(this,t-1)&&s>Fr.call(this,t+1)},U:Er,L:$r,J(t,s){let r=s+t,a=Math.sign(t),i=a<0?-1:0,o=0;for(let e=s;e!==r;e+=a)o+=$r.call(this,e+i);return o},j:Ge,X:Fr,P(t,s,r){return ra(nr.call(this,t,s,r))},q:nr,_(t,s,r){if(r){if(s+=r,!Number.isSafeInteger(s))throw new RangeError(Da);if(r<0)for(;s<1;)s+=$r.call(this,--t);else{let a;for(;s>(a=$r.call(this,t));)s-=a,t++}}return[t,s]},year(t){return this.O(t).year},month(t){let{year:s,F:r}=this.O(t),{C:a}=this.B(s);return a[r]+1},day(t){return this.O(t).day}})),Wt="numeric",Gs=["timeZoneName"],fu={month:Wt,day:Wt},Xo={year:Wt,month:Wt},Qo=Object.assign({},Xo,{day:Wt}),Yo={hour:Wt,minute:Wt,second:Wt},te=Object.assign({},Qo,Yo),$p=Object.assign({},te,{timeZoneName:"short"}),Zp=Object.keys(Xo),jp=Object.keys(fu),Lp=Object.keys(Qo),kp=Object.keys(Yo),se=["dateStyle"],Np=Zp.concat(se),Up=jp.concat(se),re=Lp.concat(se,["weekday"]),Or=kp.concat(["dayPeriod","timeStyle"]),ae=re.concat(Or),Vp=ae.concat(Gs),Gp=Gs.concat(Or),Wp=Gs.concat(re),_p=Gs.concat(["day","weekday"],Or),zp=Gs.concat(["year","weekday"],Or),Bp={},ie=[ys(ae,te),na],yu=[ys(Vp,$p),na,0,(t,s)=>{let r=W(t.timeZone);if(s&&W(s.timeZone)!==r)throw new RangeError(Vl);return r}],oe=[ys(ae,te,Gs),st],ee=[ys(re,Qo,Gp),st],ne=[ys(Or,Yo,Wp),(t)=>zt(t)/St],de=[ys(Np,Xo,_p),st,1],le=[ys(Up,fu,zp),st,1],Qe;function qt(t,s,r,a,i){function o(...d){if(!(this instanceof o))throw new TypeError(vo);Cu(this,s(...d))}function e(d,l){return Object.defineProperties(function(...u){return d.call(this,n(this),...u)},ui(l))}function n(d){let l=X(d);if(!l||l.branding!==t)throw new TypeError(vo);return l}return Object.defineProperties(o.prototype,{...tn(Ct(e,r)),...us(Ct(e,a)),...Br("Temporal."+t)}),Object.defineProperties(o,{...us(i),...ui(t)}),[o,(d)=>{let l=Object.create(o.prototype);return Cu(l,d),l},n]}function bu(t){return t=t.concat("id").sort(),(s)=>{if(!sn(s,t))throw new TypeError(Ul);return s}}function Bs(t){if(X(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(jl);return t}function ja(t,s){let r={};for(let a in t)r[a]=({o:i},o)=>{let e=X(o)||{},{branding:n}=e,d=n===ws||s.includes(n)?e:ot(o);return i[a](d)};return r}function pe(t){let s={};for(let r in t)s[r]=(a)=>{let{calendar:i}=a;return(o=i,typeof o=="string"?Vs(o):(e=o,Object.assign(Object.create(cm),{i:e})))[r](a);var o,e};return s}function os(){throw new TypeError(kl)}function Hr({calendar:t}){return typeof t=="string"?new xe(t):t}function gu(t,s){if(s=F(s),U(t)){let a=X(t);if(a&&a.branding===Us)return C(s),a;let i=Mu(t);return Oo(Wa(i||x),!i,t,s)}let r=cd(Vs,t);return C(s),r}function Hu(t,s,r){return a=s.call(t,it(V(r))),Vi(pr(a));var a}function La(t,s=Ku){let r=Object.keys(s).sort(),a={};for(let i of r)a[i]=w(s[i],t,iu(t[i]));return a}function b(t,s){return typeof t=="string"?$a(t):La(t,s)}function L(t){return b(t,ce)}function At(t){if(U(t)){let s=X(t);if(s)switch(s.branding){case Ea:return s;case Ut:return V(s.epochNanoseconds)}}return ed(t)}function wu(t,s,r){let a=s.l(At(r).epochNanoseconds,t);return a?it(V(a)):null}function D(t){return U(t)?(X(t)||{}).timeZone||fm(t):((s)=>wa(Pd(K(s))))(t)}function ss(t,s){if(U(t)){let r=X(t)||{};switch(r.branding){case va:return C(s),r;case xs:return C(s),bt(r);case Ut:return C(s),So(L,r)}return zd(t,s)}return C(s),pd(t)}function me(t){return t===void 0?void 0:ss(t)}function Ws(t,s){if(s=F(s),U(t)){let a=X(t);return a&&a.branding===Ns?(C(s),a):Ro(Va(Dr(t)),t,s)}let r=ud(Vs,t);return C(s),r}function rs(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case xs:return C(s),a;case ws:return C(s),$({...a,...xt});case Ut:return C(s),Mo(L,a)}return _d(Ga(Dr(t)),t,s)}let r=ld(t);return C(s),r}function ot(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case ws:return C(s),a;case xs:return C(s),Z(a);case Ut:return C(s),Io(L,a)}return Co(Ga(Dr(t)),t,s)}let r=ya(t);return C(s),r}function Du(t,s,r){return Rt(s.call(t,v(Z(r,t))))}function vt(t){return(s)=>typeof s=="string"?Vs(s):((r,a)=>{let i=Object.keys(a).sort(),o={};for(let e of i)o[e]=w(a[e],r,r[e]);return o})(s,t)}function q(t){if(U(t)){let s=X(t);return s&&s.branding===Fa?s:Bd(t)}return md(t)}function br(t){if(t!==void 0){if(U(t)){let s=X(t)||{};switch(s.branding){case Ut:case ws:return s;case xs:return Z(s)}let r=Dr(t);return{...Gd(D,b,Ga(r),t),calendar:r}}return nd(t)}}function Dr(t){return Mu(t)||x}function Mu(t){let{calendar:s}=t;if(s!==void 0)return J(s)}function J(t){return U(t)?(X(t)||{}).calendar||Km(t):((s)=>Pr(Td(K(s))))(t)}function _s(t,s){if(s=F(s),U(t)){let r=X(t);if(r&&r.branding===Ut)return mr(s),r;let a=Dr(t);return Wd(D,b,Ga(a),a,t,s)}return dd(t,s)}function xu(t){return Ct((s)=>(r)=>s(ue(r)),t)}function ue(t){return rt(t,L)}function Jp(){let t=ts.prototype,s=Object.getOwnPropertyDescriptors(t),r=Object.getOwnPropertyDescriptors(ts),a=function(i,o={}){if(!(this instanceof a))return new a(i,o);Ce.set(this,((e,n={})=>{let d=new ts(e,n),l=d.resolvedOptions(),u=l.locale,c=ct(Object.keys(n),l),p=lt(Yp),m=(...T)=>{let P,h=T.map((y,f)=>{let g=X(y),E=(g||{}).branding;if(f&&P&&P!==E)throw new TypeError(Wl);return P=E,g});return P?p(P)(u,c,...h):[d,...T]};return m.u=d,m})(i,o))};for(let i in s){let o=s[i],e=i.startsWith("format")&&Xp(i);typeof o.value=="function"?o.value=i==="constructor"?a:e||Qp(i):e&&(o.get=function(){return e.bind(this)})}return r.prototype.value=Object.create(t,s),Object.defineProperties(a,r),a}function Xp(t){return function(...s){let r=Ce.get(this),[a,...i]=r(...s);return a[t](...i)}}function Qp(t){return function(...s){return Ce.get(this).u[t](...s)}}function Yp(t){let s=tm[t];if(!s)throw new TypeError(Gl(t));return Lt(s,lt(Ao))}var tm={Instant:ie,PlainDateTime:oe,PlainDate:ee,PlainTime:ne,PlainYearMonth:de,PlainMonthDay:le},sm=Lt(ie),rm=Lt(yu),am=Lt(oe),im=Lt(ee),om=Lt(ne),em=Lt(de),nm=Lt(le),Te={era:ln,eraYear:Ti,year:pr,month:Rt,daysInMonth:Rt,daysInYear:Rt,inLeapYear:au,monthsInYear:Rt},Na={monthCode:K},Pe={day:Rt},Iu={dayOfWeek:Rt,dayOfYear:Rt,weekOfYear:un,yearOfWeek:Ti,daysInWeek:Rt},Su=Object.assign({},Te,Na,Pe,Iu),ka=new WeakMap,X=ka.get.bind(ka),Cu=ka.set.bind(ka),dm={...ja(Te,[Ns]),...ja(Iu,[]),...ja(Na,[Ns,Us]),...ja(Pe,[Us])},he=pe(Su),lm=pe({...Te,...Na}),um=pe({...Na,...Pe}),Mr={calendarId:(t)=>W(t.calendar)},cm=Ct((t,s)=>function(r){let{i:a}=this;return t(a[s](v(Z(r,a))))},Su),pm=ur((t)=>(s)=>s[t],R.concat("sign")),fe=ur((t,s)=>(r)=>r[Dt[s]],Nt),Au={epochSeconds:Kn,epochMilliseconds:na,epochMicroseconds:qn,epochNanoseconds:vn},Ir=w(ci,new Set(["branding"])),[mm,zs,Tm]=qt(Us,w(ll,J),{...Mr,...um},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return zs(tl(Im,t,this,Bs(s),r))},equals:(t,s)=>Id(t,gu(s)),toPlainDate(t,s){return v(Rl(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=nm(s,r,t);return a.format(i)},toString:ji,toJSON:(t)=>ji(t),valueOf:os},{from:(t,s)=>zs(gu(t,s))}),Ku={getOffsetNanosecondsFor:Hu,getPossibleInstantsFor(t,s,r){let a=[...s.call(t,B($(r,x)))].map((o)=>hm(o).epochNanoseconds),i=a.length;return i>1&&(a.sort(tt),Gi(Pt(Tt(a[0],a[i-1])))),a}},ce={getOffsetNanosecondsFor:Hu},[Pm,it,hm]=qt(Ea,il,Au,{add:(t,s)=>it(Wi(0,t,q(s))),subtract:(t,s)=>it(Wi(1,t,q(s))),until:(t,s,r)=>H(To(0,t,At(s),r)),since:(t,s,r)=>H(To(1,t,At(s),r)),round:(t,s)=>it($n(t,s)),equals:(t,s)=>Od(t,At(s)),toZonedDateTime(t,s){let r=Zt(s);return j(Do(t,D(r.timeZone),J(r.calendar)))},toZonedDateTimeISO:(t,s)=>j(Do(t,D(s))),toLocaleString(t,s,r){let[a,i]=sm(s,r,t);return a.format(i)},toString:(t,s)=>vi(D,L,t,s),toJSON:(t)=>vi(D,L,t),valueOf:os},{from:(t)=>it(At(t)),fromEpochSeconds:(t)=>it(Hl(t)),fromEpochMilliseconds:(t)=>it(Dl(t)),fromEpochMicroseconds:(t)=>it(Ml(t)),fromEpochNanoseconds:(t)=>it(Il(t)),compare:(t,s)=>co(At(t),At(s))}),[Ua,PT]=qt("TimeZone",(t)=>{let s=Cd(t);return{branding:"TimeZone",id:s,o:$a(s)}},{id:(t)=>t.id},{getPossibleInstantsFor:({o:t},s)=>t.getPossibleInstantsFor(rs(s)).map((r)=>it(V(r))),getOffsetNanosecondsFor:({o:t},s)=>t.getOffsetNanosecondsFor(At(s).epochNanoseconds),getOffsetStringFor(t,s){let r=At(s).epochNanoseconds,a=La(this,ce).getOffsetNanosecondsFor(r);return ms(a)},getPlainDateTimeFor(t,s,r=x){let a=At(s).epochNanoseconds,i=La(this,ce).getOffsetNanosecondsFor(a);return B($(Jt(a,i),J(r)))},getInstantFor(t,s,r){let a=rs(s),i=Oi(r),o=La(this);return it(V(ut(o,a,i)))},getNextTransition:({o:t},s)=>wu(1,t,s),getPreviousTransition:({o:t},s)=>wu(-1,t,s),equals(t,s){return!!Ca(this,D(s))},toString:(t)=>t.id,toJSON:(t)=>t.id},{from(t){let s=D(t);return typeof s=="string"?new Ua(s):s}}),fm=bu(Object.keys(Ku)),[ym,as]=qt(va,ul,fe,{getISOFields:Ir,with(t,s,r){return as(sl(this,Bs(s),r))},add:(t,s)=>as(Xi(0,t,q(s))),subtract:(t,s)=>as(Xi(1,t,q(s))),until:(t,s,r)=>H(go(0,t,ss(s),r)),since:(t,s,r)=>H(go(1,t,ss(s),r)),round:(t,s)=>as(Ln(t,s)),equals:(t,s)=>Sd(t,ss(s)),toZonedDateTime:(t,s)=>j(Ol(D,ot,b,t,s)),toPlainDateTime:(t,s)=>B(bl(t,ot(s))),toLocaleString(t,s,r){let[a,i]=om(s,r,t);return a.format(i)},toString:Li,toJSON:(t)=>Li(t),valueOf:os},{from:(t,s)=>as(ss(t,s)),compare:(t,s)=>xa(ss(t),ss(s))}),[gm,is,wm]=qt(Ns,w(dl,J),{...Mr,...lm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return is(Yd(Mm,t,this,Bs(s),r))},add:(t,s,r)=>is(Ji(Ru,0,t,q(s),r)),subtract:(t,s,r)=>is(Ji(Ru,1,t,q(s),r)),until:(t,s,r)=>H(yo(Ou,0,t,Ws(s),r)),since:(t,s,r)=>H(yo(Ou,1,t,Ws(s),r)),equals:(t,s)=>Md(t,Ws(s)),toPlainDate(t,s){return v(Cl(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=em(s,r,t);return a.format(i)},toString:Zi,toJSON:(t)=>Zi(t),valueOf:os},{from:(t,s)=>is(Ws(t,s)),compare:(t,s)=>hs(Ws(t),Ws(s))}),[xm,B]=qt(xs,w(el,J),{...Mr,...he,...fe},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return B(Xd(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>B(Ha(t,J(s))),withPlainDate:(t,s)=>B(ql(t,ot(s))),withPlainTime:(t,s)=>B(Kl(t,me(s))),add:(t,s,r)=>B(zi(Rs,0,t,q(s),r)),subtract:(t,s,r)=>B(zi(Rs,1,t,q(s),r)),until:(t,s,r)=>H(ho(Kt,0,t,rs(s),r)),since:(t,s,r)=>H(ho(Kt,1,t,rs(s),r)),round:(t,s)=>B(jn(t,s)),equals:(t,s)=>Hd(t,rs(s)),toZonedDateTime:(t,s,r)=>j(Pl(b,t,D(s),r)),toPlainDate:(t)=>v(Z(t)),toPlainTime:(t)=>as(bt(t)),toPlainYearMonth(t){return is(hl(Va,t,this))},toPlainMonthDay(t){return zs(fl(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=am(s,r,t);return a.format(i)},toString:Fi,toJSON:(t)=>Fi(t),valueOf:os},{from:(t,s)=>B(rs(t,s)),compare:(t,s)=>mo(rs(t),rs(s))}),[Cm,v,qu]=qt(ws,w(nl,J),{...Mr,...he},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return v(Qd(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>v(Ha(t,J(s))),add:(t,s,r)=>v(Bi(Rs,0,t,q(s),r)),subtract:(t,s,r)=>v(Bi(Rs,1,t,q(s),r)),until:(t,s,r)=>H(fo(Kt,0,t,ot(s),r)),since:(t,s,r)=>H(fo(Kt,1,t,ot(s),r)),equals:(t,s)=>Dd(t,ot(s)),toZonedDateTime(t,s){let r=!U(s)||s instanceof Ua?{timeZone:s}:s;return j(yl(D,ss,b,t,r))},toPlainDateTime:(t,s)=>B(gl(t,me(s))),toPlainYearMonth(t){return is(wl(Va,t,this))},toPlainMonthDay(t){return zs(xl(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=im(s,r,t);return a.format(i)},toString:$i,toJSON:(t)=>$i(t),valueOf:os},{from:(t,s)=>v(ot(t,s)),compare:(t,s)=>hs(ot(t),ot(s))}),ye={fields(t,s,r){return[...s.call(t,r)]}},vu=Object.assign({dateFromFields(t,s,r,a){return qu(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Eu=Object.assign({yearMonthFromFields(t,s,r,a){return wm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Fu=Object.assign({monthDayFromFields(t,s,r,a){return Tm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),ge={mergeFields(t,s,r,a){return Zt(s.call(t,Object.assign(Object.create(null),r),Object.assign(Object.create(null),a)))}},Rm=Object.assign({},vu,ge),Om=Object.assign({},Eu,ge),bm=Object.assign({},Fu,ge),we={dateAdd(t,s,r,a,i){return qu(s.call(t,v(Z(r,t)),H(I(a)),i))}},$u=Object.assign({},we,{dateUntil(t,s,r,a,i,o){return Am(s.call(t,v(Z(r,t)),v(Z(a,t)),Object.assign(Object.create(null),o,{largestUnit:wr[i]})))}}),Hm=Object.assign({},we,{day:Du}),Dm=Object.assign({},$u,{day:Du}),Va=vt(Eu),Ga=vt(vu),Wa=vt(Fu),Mm=vt(Om),Sr=vt(Rm),Im=vt(bm),Rs=vt(we),Kt=vt($u),Ru=vt(Hm),Ou=vt(Dm),[Sm,H,Am]=qt(Fa,cl,{...pm,blank:ad},{with:(t,s)=>H(rl(t,s)),negated:(t)=>H(ha(t)),abs:(t)=>H(rd(t)),add:(t,s,r)=>H(ro(br,Kt,b,0,t,q(s),r)),subtract:(t,s,r)=>H(ro(br,Kt,b,1,t,q(s),r)),round:(t,s)=>H(sd(br,Kt,b,t,s)),total:(t,s)=>Fn(br,Kt,b,t,s),toLocaleString(t,s,r){return Intl.DurationFormat?new Intl.DurationFormat(s,r).format(this):ca(t)},toString:ca,toJSON:(t)=>ca(t),valueOf:os},{from:(t)=>H(q(t)),compare:(t,s,r)=>Rd(br,Rs,b,q(t),q(s),r)}),Zu={toString:(t)=>t.id,toJSON:(t)=>t.id,...dm,dateAdd:({id:t,o:s},r,a,i)=>v(Z(s.dateAdd(ot(r),q(a),i),t)),dateUntil:({o:t},s,r,a)=>H(I(t.dateUntil(ot(s),ot(r),Dn(a)))),dateFromFields:({id:t,o:s},r,a)=>v(Co(s,r,a,dn(t))),yearMonthFromFields:({id:t,o:s},r,a)=>is(Ro(s,r,a,en(t))),monthDayFromFields:({id:t,o:s},r,a)=>zs(Oo(s,0,r,a,nn(t))),fields({o:t},s){let r=new Set(Ht),a=[];for(let i of s){if(K(i),!r.has(i))throw new RangeError(qo(i));r.delete(i),a.push(i)}return t.fields(a)},mergeFields:({o:t},s,r)=>t.mergeFields(pi(Pi(s)),pi(Pi(r)))},[xe]=qt("Calendar",(t)=>{let s=Zd(t);return{branding:"Calendar",id:s,o:Vs(s)}},{id:(t)=>t.id},Zu,{from(t){let s=J(t);return typeof s=="string"?new xe(s):s}}),Km=bu(Object.keys(Zu).slice(4)),[qm,j]=qt(Ut,w(ol,J,D),{...Au,...Mr,...xu(he),...xu(fe),offset:(t)=>ms(ue(t).offsetNanoseconds),offsetNanoseconds:(t)=>ue(t).offsetNanoseconds,timeZoneId:(t)=>W(t.timeZone),hoursInDay:(t)=>kn(b,t)},{getISOFields:(t)=>Yn(L,t),getCalendar:Hr,getTimeZone:({timeZone:t})=>typeof t=="string"?new Ua(t):t,with(t,s,r){return j(Jd(Sr,b,t,this,Bs(s),r))},withCalendar:(t,s)=>j(Ha(t,J(s))),withTimeZone:(t,s)=>j(vl(t,D(s))),withPlainDate:(t,s)=>j(Al(b,t,ot(s))),withPlainTime:(t,s)=>j(Sl(b,t,me(s))),add:(t,s,r)=>j(_i(Rs,b,0,t,q(s),r)),subtract:(t,s,r)=>j(_i(Rs,b,1,t,q(s),r)),until:(t,s,r)=>H(I(Po(Kt,b,0,t,_s(s),r))),since:(t,s,r)=>H(I(Po(Kt,b,1,t,_s(s),r))),round:(t,s)=>j(Zn(b,t,s)),startOfDay:(t)=>j(Nn(b,t)),equals:(t,s)=>bd(t,_s(s)),toInstant:(t)=>it(pl(t)),toPlainDateTime:(t)=>B(Mo(L,t)),toPlainDate:(t)=>v(Io(L,t)),toPlainTime:(t)=>as(So(L,t)),toPlainYearMonth(t){return is(ml(Va,t,this))},toPlainMonthDay(t){return zs(Tl(Wa,t,this))},toLocaleString(t,s,r={}){let[a,i]=rm(s,r,t);return a.format(i)},toString:(t,s)=>Ei(L,t,s),toJSON:(t)=>Ei(L,t),valueOf:os},{from:(t,s)=>j(_s(t,s)),compare:(t,s)=>po(_s(t),_s(s))}),vm=Object.defineProperties({},{...Br("Temporal.Now"),...us({timeZoneId:()=>kt(),instant:()=>it(V(fr())),zonedDateTime:(t,s=kt())=>j(z(fr(),D(s),J(t))),zonedDateTimeISO:(t=kt())=>j(z(fr(),D(t),x)),plainDateTime:(t,s=kt())=>B($(Ls(L(D(s))),J(t))),plainDateTimeISO:(t=kt())=>B($(Ls(L(D(t))),x)),plainDate:(t,s=kt())=>v(Z(Ls(L(D(s))),J(t))),plainDateISO:(t=kt())=>v(Z(Ls(L(D(t))),x)),plainTimeISO:(t=kt())=>as(bt(Ls(L(D(t)))))})}),Ar=Object.defineProperties({},{...Br("Temporal"),...us({PlainYearMonth:gm,PlainMonthDay:mm,PlainDate:Cm,PlainTime:ym,PlainDateTime:xm,ZonedDateTime:qm,Instant:Pm,Calendar:xe,TimeZone:Ua,Duration:Sm,Now:vm})}),Em=Jp(),Ce=new WeakMap,Fm=Object.defineProperties(Object.create(Intl),us({DateTimeFormat:Em}));class za extends _a{provider;static _name="AuthenticationServiceContainer";constructor(t){super();this.provider=t}async getSession(t,s){let r=await this.provider.adapter.findSession({token:t,userAgent:s}),a=null;if(r?.user)a=await this.provider.extendSession(r.user),r.user.extension=a;return r}async generateMagicLink(t){}async upsertSession(t){await this.provider.adapter.findSession({token:"",userAgent:""})}async authenticate(t){try{let s=await this.provider.adapter.findUserByEmailAddress(t,!1),r=await this.createOrUpdateSession({email:t,id:s.id});return new tr().ctx().setCookie("access_token",r.token,{expires:r.expiresAt}),!0}catch(s){console.log(s)}return!1}async createOrUpdateSession(t){let s=this.provider,r=new tr,a=r.headers.get("User-Agent"),i=new Bun.CryptoHasher("sha256");i.update(`${t.email}${a}`);let o=i.digest("hex"),e=await s.adapter.findSession({token:o,userAgent:r.headers.get("User-Agent")});if(!e){let n=t.id;if(!n){let{id:d}=await s.adapter.findUserByEmailAddress(t.email,!1);n=d}e=await s.adapter.createSession({token:o,userId:n,userAgent:r.headers.get("User-Agent"),expiresAt:new Date(Ar.Now.instant().add({hours:s.sessionExpiresInHours}).toString()),absoluteExpiresAt:new Date(Ar.Now.instant().add({hours:s.sessionAbsoluteExpiresInHours}).toString())})}else e=await s.adapter.updateSession({token:o,expiresAt:new Date(Ar.Now.instant().add({hours:s.sessionExpiresInHours}).toString())});return e}async createMagicLinkToken(t){let s=za.use()?.provider,r=await s.adapter.findUserByEmailAddress(t,!1);if(r){await s.adapter.deleteMagicLinkToken(t);let a=await s.generateMagicLinkToken(t),i=(parseInt($m(4).toString("hex"),16)%1e6).toString().padStart(6,"0");return await s.adapter.createMagicLinkToken({email:t,token:a,pin:i}),{user:r,email:t,pin:i,token:a}}}}class ju extends mt{async run(t){let s=Os.getStore(),r=s.req.cookies.get("access_token"),a=s.req.headers.get("access_token"),i=r||a;if(!i)throw new sr;let o=s.user;if(!o){let e=await za.use().getSession(i,s.req.headers.get("User-Agent"));if(!e)throw new sr;o=e?.user,s.setUser(o)}return{}}}class Lu extends mt{async run(...t){let[s="public",r="864000",...a]=t,i=`${s}, max-age=${r}${a.length>0?", ":""}${a.join(", ")}`;if(t.length===0)i="public, max-age=864000, stale-while-revalidate=300, stale-if-error=600";if(t.length===1&&t[0]==="public")i="public, max-age=864000, stale-while-revalidate=300, stale-if-error=600";if(t.length===1&&t[0]==="private")i="private, max-age=0, stale-while-revalidate=300, stale-if-error=600";if(this.req.rawRequest.method==="GET")this.req.ctx().setHeaders("Cache-Control",i);return{}}}var Zm={"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With","Access-Control-Allow-Credentials":"true"};class ku extends mt{config={origins:{"":{"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With","Access-Control-Allow-Credentials":"true"}}};run(){let t=this.req,s=t.rawRequest.headers.get("Origin");if(this.config.origins[s]){t.ctx().setHeaders("Access-Control-Allow-Origin",s);let r={...Zm,...this.config.origins[s]};for(let[a,i]of Object.entries(r))t.ctx().setHeaders(a,i)}return{}}}class Re extends _a{service;static _name="RateLimiterServiceContainer";constructor(t){super();this.service=t}}class Nu extends ft{constructor(){super("Rate limit exceeded");this.payload={api:{status:429,data:{error:{message:"Rate limit exceeded"}},headers:{"Content-Type":"application/json"}},view:{error:{message:"Rate limit exceeded"},status:429}}}}class Uu extends mt{async run(t=1000){let s=this.req.headers.get("x-forwarded-for"),r=Re.use().service.driver;if(r.consume.call(r,s,this.req.routePath)>t)throw new Nu;return{}}}class Vu extends mt{async run(){let t=this.req.cookies.get("csrf_token");if(!t)throw new Oe;if(!["POST","PUT","PATCH","DELETE"].includes(this.req.rawRequest.method))return{};if(!Bun.CSRF.verify(t,{secret:process.env.SECRET}))throw new Oe;return{}}}class Oe extends ft{constructor(){super("Invalid CSRF token");this.name="InvalidCSRFTokenError"}payload={api:{status:403,data:{error:"Invalid CSRF token"}},view:{}}}class Gu{policiesList={};constructor(){let t=this.register();for(let s of t){let r=new s;this.policiesList[s.name]=r}}register(){return[]}}class Wu{all(t,s){return!0}}export{tc as getCookies,Qs as ViewRouter,Ys as ValidationError,Kr as ResourceController,ft as RequestBreakerError,Uu as RateLimitMiddleware,Gu as PoliciesServiceProvider,Wu as Policies,Ee as MiddlewareServiceProvider,mt as Middleware,$e as InsufficientPermissionsError,tr as HttpRequest,ku as CorsMiddleware,Ba as Controller,Lu as CacheMiddleware,Vu as CSRFMiddleware,Fe as AuthorizationError,ju as AuthenticationMiddleware,sr as AuthenticationError,Ja as ApiRouter};export{Ba as G,be as H,Ja as I,Qs as J,Ys as K,Os as L,tr as M,Ee as N,Fe as O,$e as P,Ar as Q,za as R,Re as S};
|
|
2
|
+
import{U as qe}from"../chunk-cvxxee1w.js";import{tc as ft,vc as Me}from"../chunk-fgafrjxy.js";import{wc as ve}from"../chunk-ny36ys64.js";import{yc as _a}from"../chunk-vjym5jdx.js";import"../chunk-y8ggk3r3.js";class Ba{static kind="controller";constructor(){}}class Kr extends Ba{}function be(t){return typeof t==="function"&&t.prototype!==void 0}function zu(t){return be(t)}class pt{method;handler;methodName;__internal_brand="RouteHandler";middlewares=[];constructor(t,s,r){this.method=t;this.handler=s;this.methodName=r;this.handler=s,this.methodName=r,this.method=t}__internal_use(){return{run:this.run.bind(this),middlewares:this.middlewares}}run(t){if(zu(this.handler)){let s=new this.handler;return s[this.methodName].bind(s)()}return this.handler()}middleware(t){return this.middlewares=t,this}}class He{constructor(...t){return new pt(...t)}}class Ja{static __brand="ApiRouter";routes={};middlewares=[];middleware(t){}get(t,s){return new pt("GET",t,s)}post(t,s){return new pt("POST",t,s)}put(t,s){return new pt("PUT",t,s)}patch(t,s){return new pt("PATCH",t,s)}delete(t,s){return new pt("DELETE",t,s)}resource(t){return{first:{get:new pt("GET",t,"list"),post:new pt("POST",t,"store")},second:{get:new pt("GET",t,"show"),put:new pt("PUT",t,"update"),delete:new pt("DELETE",t,"delete")}}}file(t,s){return new He("GET",t,s)}}class De extends Kr{async list(){}async show(){}async store(){}async update(){}async delete(){}}class Bu extends Ja{routes={"/:orgId/products/:productId":this.resource(De)}}class Ie{kind="redirect";viewPath="REDIRECT";middlewares=[];handler;constructor(t){if(!t)this.handler=()=>({});else if(typeof t==="function")this.handler=t;else{let[s,r]=t,a=new s,i=a[r].bind(a);this.handler=(o)=>{return i()}}}async run(t,s){let{destination:r,permanent:a=!1,status:i=307}=await this.handler(t);if(!r)throw new Error(`Redirect destination is required see ${s}`);return Me.to(r,{permanent:a,status:i}),{}}middleware(t){return this.middlewares=t,this}}class Se{viewPath;middlewares=[];handler;constructor(t,s){this.viewPath=t;if(!s)this.handler=()=>({});else if(typeof s==="function")this.handler=s;else{let[r,a]=s,i=new r,o=i[a].bind(i);this.handler=(e)=>{return o()}}}async run(t,s){let r=await this.handler(t);return{[this.viewPath]:{...r,breadcrumb:{label:r?.breadcrumb??"",href:s}}}}middleware(t){return this.middlewares=t,this}}class Ae{viewPath;children;middlewares=[];handler=()=>({});constructor(t,s,r){this.viewPath=t;if(typeof s==="function")this.handler=s,this.children=class extends Qs{routes=r??{}};else if(Array.isArray(s)){let[a,i]=s,o=new a,e=o[i].bind(o);this.handler=(n)=>{return e(n)},this.children=class extends Qs{routes=r??{}}}else this.children=class extends Qs{routes=s},this.handler=()=>({})}async run(t,s){let r=await this.handler(t);return{[this.viewPath]:{...r,breadcrumb:{label:r?.breadcrumb??"",href:s}}}}middleware(t){return this.middlewares=t,this}}class Qs{middlewares=[];routes={};view(t,s){return new Se(t,s)}redirect(t){return new Ie(t)}layout(t,s,r){return new Ae(t,s,r)}}class Ys extends ft{errors={};constructor(t){super("Validation error");this.name="ValidationError",this.errors=t,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:t}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}import{AsyncLocalStorage as Ju}from"async_hooks";class qr{name;value;options;constructor(t,s,r={}){this.name=t;this.value=s;this.options=r}toString(){return[`${this.name}=${this.value}`,this.options.maxAge?`Max-Age=${this.options.maxAge}`:"",this.options.httpOnly?"HttpOnly":"",this.options.secure?"Secure":"",this.options.sameSite?`SameSite=${this.options.sameSite}`:"SameSite=Strict",this.options.path?`Path=${this.options.path}`:"Path=/",this.options.domain?`Domain=${this.options.domain}`:"",this.options.expires?`Expires=${this.options.expires.toUTCString()}`:"",this.options.partitioned?"Partitioned":""].filter((t)=>t!=="").join("; ")}}var Xa=new Ju;class Ke{req;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;csrfHmac=null;constructor(t){this.req=t}setCSRFHmac(t){this.csrfHmac=t}setCookie(t,s,r={}){this.cookies.add(new qr(t,s,r))}deleteCookie(t){this.cookies.add(new qr(t,"",{maxAge:-1}))}setHeaders(t,s){this.headers.set(t,s)}setUser(t){this.user=t}setRequest(t){this.req=t}destroy(){delete this.cookies,delete this.headers,delete this.prefetchedResources,delete this.prefetchPromiseQueue,delete this.user}}class Os{static getStore(){return Xa.getStore()}static setRequest(t){Xa.getStore().req=t}static run(t,s){return Xa.run(new Ke(t),s)}}class bs{data;constructor(t){this.data=t}get(t){return this.data[t]}has(t){return this.data[t]!==void 0}toJSON(){return this.data}}function Xu(t){let[s,r]=t.match(/\d+|\D+/g)??[];if(!s||!r)return 0;let a=parseInt(s);switch(r){case"B":return a;case"KB":return a*1024;case"MB":return a*1024*1024;case"GB":return a*1024*1024*1024;case"TB":return a*1024*1024*1024*1024;default:return 0}}function Qu(t){switch(t){case"image":return"image";case"png":return"image/png";case"jpg":return"image/jpeg";case"jpeg":return"image/jpeg";case"ttf":return"font/ttf";case"excel":return"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";case"csv":return"text/csv";case"word":return"application/vnd.openxmlformats-officedocument.wordprocessingml.document";case"pdf":return"application/pdf";case"json":return"application/json";default:return t}}function Yu(t){let[s,r]=t.split(":");switch(s){case"required":return(a)=>{if(a instanceof Blob)return a.size>0;return a!==null&&a!==void 0&&a?.length>0};case"password":return(a)=>{return/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(a)};case"number":return(a)=>{if(typeof a!=="number")return!1;return!isNaN(a)};case"min":return(a)=>{return a?.length>=parseInt(r)};case"max":return(a)=>{return a?.length<=parseInt(r)};case"email":return(a)=>{return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(a)};case"file":return(a)=>{return a instanceof Blob};case"fileType":return(a)=>{if(a instanceof Blob){let i=Qu(r);return a.type.startsWith(i)}};case"fileSize":return(a)=>{if(a instanceof Blob){let i=Xu(r);return a.size<=i}};default:return()=>!0}}class tr{kind;rawRequest;headers;cookies;search;schema={};routePath;params;constructor(t,s,r,a){if(!t){let e=Os.getStore().req;this.params=e.params,this.rawRequest=e.rawRequest,this.kind=e.kind,this.routePath=e.routePath}else this.params=s,this.rawRequest=t,this.routePath=a,this.kind=r??"api";this.headers=this.rawRequest.headers;let i=this.rawRequest.headers.get("Cookie"),o=new Map;if(i){let e=i.split(";");for(let n of e){let[d,l]=n.split("=");o.set(d.trim(),l.trim())}}if(this.rawRequest.method==="GET"){let e=new URL(this.rawRequest.url),n=new Map;for(let[l,u]of e.searchParams)if(n.has(l)){let c=n.get(l);if(Array.isArray(c))c.push(u),n.set(l,c);else n.set(l,[c,u])}else n.set(l,u);let d=Object.fromEntries(n.entries());this.search=new bs(d)}this.cookies=o}locale(){return qe.use().detectLocale(this)}ctx(){return Os.getStore()}refine(t){return{}}async parseBody(){let t=new bs({});if(this.rawRequest.headers.get("Content-Type")==="application/json"){let s=await this.rawRequest.json();t=new bs(s)}if(this.rawRequest.headers.get("Content-Type")==="application/x-www-form-urlencoded"){let s=await this.rawRequest.formData();t=new bs(s)}if(this.rawRequest.headers.get("Content-Type")?.startsWith("multipart/form-data")){let s=await this.rawRequest.formData(),r=new Map;for(let[a,i]of s.entries())if(r.has(a)){let o=r.get(a);if(Array.isArray(o))o.push(i),r.set(a,o);else r.set(a,[o,i])}else r.set(a,i);t=new bs(Object.fromEntries(r.entries()))}return t}validateInput(t){let s={};for(let[r,a]of Object.entries(this.schema))for(let[i,o]of Object.entries(a)){let e=Yu(i),n=o,d=!1;if(typeof o==="function")n=o(t.get(r)),d=typeof n==="undefined";else d=e(t.get(r));if(d)continue;if(!s[r])s[r]=[];if(i==="required"){s[r]=[String(n)];break}else s[r].push(String(n))}for(let[r,a]of Object.entries(this.refine(t.toJSON())??{})){if(!s[r])s[r]=[];s[r]=[...s[r]??[],a]}if(Object.keys(s).length>0)throw new Ys(s);else return t}async input(){return this.validateInput(await this.parseBody())}async safeInput(){let t=await this.parseBody();try{return this.validateInput(t),{isValid:!0,errors:{},input:t}}catch(s){if(!(s instanceof Ys))throw s;return{isValid:!1,errors:s.errors,input:t}}}}class mt{req;config={};constructor(t){this.req=t}run(...t){return{}}static configure(t){let s=this;return class extends s{config=t}}}function tc(t){let s=t.headers.get("cookie");if(!s)return new Map;let r=new Map,a=s.split(";");for(let i of a){let[o,e]=i.split("=");r.set(o.trim(),e)}return r}class Ee extends ve{aliases={};boot(){}}class Fe extends ft{error;constructor(t="Not authorized"){super("Authentication error");this.name="AuthenticationError",this.error=t,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class $e extends ft{error;constructor(t="Insufficient permissions"){super("Authentication error");this.name="AuthenticationError",this.error=t,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class sr extends ft{constructor(){super("Authentication error");this.name="AuthenticationError"}payload={api:{status:401,data:{error:"Authentication error"}},view:{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:"/auth/sign-in"}}}}import{randomBytes as $m}from"crypto";function et(t,s,r,a,i){return yt(s,Ye(t,s),r,a,i)}function yt(t,s,r,a,i,o){let e=ri(s,r,a);if(i&&s!==e)throw new RangeError($l(t,s,r,a,o));return e}function Ye(t,s){let r=t[s];if(r===void 0)throw new TypeError(Ko(s));return r}function U(t){return t!==null&&/object|function/.test(typeof t)}function lt(t,s=Map){let r=new s;return(a,...i)=>{if(r.has(a))return r.get(a);let o=t(a,...i);return r.set(a,o),o}}function ui(t){return us({name:t},1)}function us(t,s){return Ct((r)=>({value:r,configurable:1,writable:!s}),t)}function tn(t){return Ct((s)=>({get:s,configurable:1}),t)}function Br(t){return{[Symbol.toStringTag]:{value:t,configurable:1}}}function Ks(t,s){let r={},a=t.length;for(let i of s)r[t[--a]]=i;return r}function Ct(t,s,r){let a={};for(let i in s)a[i]=t(s[i],i,r);return a}function ur(t,s,r){let a={};for(let i=0;i<s.length;i++){let o=s[i];a[o]=t(o,i,r)}return a}function sc(t,s,r){let a={};for(let i=0;i<t.length;i++)a[s[i]]=r[t[i]];return a}function ct(t,s){let r={};for(let a of t)r[a]=s[a];return r}function ci(t,s){let r={};for(let a in s)t.has(a)||(r[a]=s[a]);return r}function pi(t){t={...t};let s=Object.keys(t);for(let r of s)t[r]===void 0&&delete t[r];return t}function sn(t,s){for(let r of s)if(!(r in t))return 0;return 1}function rn(t,s,r){for(let a of t)if(s[a]!==r[a])return 0;return 1}function an(t,s,r){let a={...r};for(let i=0;i<s;i++)a[t[i]]=0;return a}function w(t,...s){return(...r)=>t(...s,...r)}function Ze(t){return t[0].toUpperCase()+t.substring(1)}function cr(t){return t.slice().sort()}function Lr(t,s){return String(s).padStart(t,"0")}function Vt(t,s){return Math.sign(t-s)}function ri(t,s,r){return Math.min(Math.max(t,s),r)}function Ft(t,s){return[Math.floor(t/s),ar(t,s)]}function ar(t,s){return(t%s+s)%s}function _t(t,s){return[Jr(t,s),mi(t,s)]}function Jr(t,s){return Math.trunc(t/s)||0}function mi(t,s){return t%s||0}function vr(t){return Math.abs(t%1)===0.5}function on(t,s,r){let a=0,i=0;for(let n=0;n<=s;n++){let d=t[r[n]],l=It[n],u=O/l,[c,p]=_t(d,u);a+=p*l,i+=c}let[o,e]=_t(a,O);return[i+o,e]}function Xr(t,s,r){let a={};for(let i=s;i>=0;i--){let o=It[i];a[r[i]]=Jr(t,o),t=mi(t,o)}return a}function en(t){return t===x?Aa:[]}function nn(t){return t===x?xr:[]}function dn(t){return t===x?["year","day"]:[]}function ln(t){if(t!==void 0)return K(t)}function un(t){if(t!==void 0)return Rt(t)}function Ti(t){if(t!==void 0)return pr(t)}function Rt(t){return mn(pr(t))}function pr(t){return pn(Wc(t))}function Pi(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function cn(t,s){if(s==null)throw new RangeError(Ko(t));return s}function Zt(t){if(!U(t))throw new TypeError(Fl);return t}function Qr(t,s,r=t){if(typeof s!==t)throw new TypeError(yr(r,s));return s}function pn(t,s="number"){if(!Number.isInteger(t))throw new RangeError(fc(s,t));return t||0}function mn(t,s="number"){if(t<=0)throw new RangeError(yc(s,t));return t}function hi(t){if(typeof t=="symbol")throw new TypeError(Cc);return String(t)}function kr(t,s){return U(t)?String(t):K(t,s)}function Yr(t){if(typeof t=="string")return BigInt(t);if(typeof t!="bigint")throw new TypeError(xc(t));return t}function Tn(t,s="number"){if(typeof t=="bigint")throw new TypeError(wc(s));if(t=Number(t),!Number.isFinite(t))throw new RangeError(gc(s,t));return t}function Q(t,s){return Math.trunc(Tn(t,s))||0}function Pn(t,s){return pn(Tn(t,s),s)}function je(t,s){return mn(Q(t,s),s)}function fi(t,s){let[r,a]=_t(s,O),i=t+r,o=Math.sign(i);return o&&o===-Math.sign(a)&&(i-=o,a+=o*O),[i,a]}function Ds(t,s,r=1){return fi(t[0]+s[0]*r,t[1]+s[1]*r)}function Ms(t,s){return fi(t[0],t[1]+s)}function Tt(t,s){return Ds(s,t,-1)}function tt(t,s){return Vt(t[0],s[0])||Vt(t[1],s[1])}function hn(t,s,r){return tt(t,s)===-1||tt(t,r)===1}function ta(t,s=1){let r=BigInt(O/s);return[Number(t/r),Number(t%r)*s]}function Is(t,s=1){let r=O/s,[a,i]=_t(t,r);return[a,i*s]}function fn(t,s=1){let[r,a]=t,i=Math.floor(a/s),o=O/s;return BigInt(r)*BigInt(o)+BigInt(i)}function Pt(t,s=1,r){let[a,i]=t,[o,e]=_t(i,s);return a*(O/s)+(o+(r?e/s:0))}function yi(t,s,r=Ft){let[a,i]=t,[o,e]=r(i,s);return[a*(O/s)+o,e]}function gi(t,s){let r=t.formatToParts(s),a={};for(let i of r)a[i.type]=i.value;return a}function wi(t){return et(t,"isoYear",lr,dr,1),t.isoYear===lr?et(t,"isoMonth",4,12,1):t.isoYear===dr&&et(t,"isoMonth",1,9,1),t}function Gt(t){return jt({...t,...xt,isoHour:12}),t}function jt(t){let s=et(t,"isoYear",lr,dr,1),r=s===lr?1:s===dr?-1:0;return r&&ht(Y({...t,isoDay:t.isoDay+r,isoNanosecond:t.isoNanosecond-r})),t}function ht(t){if(!t||hn(t,Yc,Qc))throw new RangeError(Da);return t}function zt(t){return on(t,5,Dt)[1]}function sa(t){let[s,r]=Ft(t,O);return[Xr(r,5,Dt),s]}function yn(t){return gn(t)[0]}function gn(t){return yi(t,wt)}function st(t){return qs(t.isoYear,t.isoMonth,t.isoDay,t.isoHour,t.isoMinute,t.isoSecond,t.isoMillisecond)}function Y(t){let s=st(t);if(s!==void 0){let[r,a]=_t(s,dt);return[r,a*St+(t.isoMicrosecond||0)*gs+(t.isoNanosecond||0)]}}function xi(t,s){let[r,a]=sa(zt(t)-s);return ht(Y({...t,isoDay:t.isoDay+a,...r}))}function Nr(...t){return qs(...t)/zl}function qs(...t){let[s,r]=wn(...t),a=s.valueOf();if(!isNaN(a))return a-r*dt}function wn(t,s=1,r=1,a=0,i=0,o=0,e=0){let n=t===lr?1:t===dr?-1:0,d=new Date;return d.setUTCHours(a,i,o,e),d.setUTCFullYear(t,s-1,r+n),[d,n]}function Jt(t,s){let[r,a]=Ms(t,s);a<0&&(a+=O,r-=1);let[i,o]=Ft(a,St),[e,n]=Ft(o,gs);return ra(r*dt+i,e,n)}function ra(t,s=0,r=0){let a=Math.ceil(Math.max(0,Math.abs(t)-Xc)/dt)*Math.sign(t),i=new Date(t-a*dt);return Ks(qa,[i.getUTCFullYear(),i.getUTCMonth()+1,i.getUTCDate()+a,i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds(),i.getUTCMilliseconds(),s,r])}function xn(t){return[t.isoYear,t.isoMonth,t.isoDay]}function Cn(){return Et}function Ci(t,s){switch(s){case 2:return Ri(t)?29:28;case 4:case 6:case 9:case 11:return 30}return 31}function Rn(t){return Ri(t)?366:365}function Ri(t){return t%4==0&&(t%100!=0||t%400==0)}function On(t){let[s,r]=wn(t.isoYear,t.isoMonth,t.isoDay);return ar(s.getUTCDay()-r,7)||7}function bn({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function rc(t){let s=st(t);if(s<sp)return bn(t);let r=gi(Jo(Ss),s),{era:a,eraYear:i}=Fd(r,Ss);return[a,i]}function aa(t){return cs(t),ia(t,1),t}function cs(t){return Hn(t,1),t}function Le(t){return rn(No,t,Hn(t))}function Hn(t,s){let{isoYear:r}=t,a=et(t,"isoMonth",1,Cn(),s);return{isoYear:r,isoMonth:a,isoDay:et(t,"isoDay",1,Ci(r,a),s)}}function ia(t,s){return Ks(Dt,[et(t,"isoHour",0,23,s),et(t,"isoMinute",0,59,s),et(t,"isoSecond",0,59,s),et(t,"isoMillisecond",0,999,s),et(t,"isoMicrosecond",0,999,s),et(t,"isoNanosecond",0,999,s)])}function C(t){return t===void 0?0:cu(Zt(t))}function mr(t,s=0){t=Ot(t);let r=pu(t),a=cp(t,s);return[cu(t),a,r]}function Oi(t){return pu(Ot(t))}function Dn(t){return t=Ot(t),Go(t,9,6,1)}function vs(t,s,r,a=9,i=0,o=4){s=Ot(s);let e=Go(s,a,i),n=Di(s),d=Rr(s,o),l=Cr(s,a,i,1);return e==null?e=Math.max(r,l):An(e,l),n=Mi(n,l,1),t&&(d=((u)=>u<4?(u+2)%4:u)(d)),[e,l,n,d]}function oa(t,s=6,r){let a=Di(t=Ii(t,zr)),i=Rr(t,7),o=Cr(t,s);return o=cn(zr,o),a=Mi(a,o,void 0,r),[o,a,i]}function bi(t){return Wo(Ot(t))}function Mn(t,s){return Hi(Ot(t),s)}function Hi(t,s=4){let r=Sn(t);return[Rr(t,4),...In(Cr(t,s),r)]}function In(t,s){return t!=null?[It[t],t<4?9-3*t:-1]:[s===void 0?1:10**(9-s),s]}function Di(t){let s=t[ir];return s===void 0?1:Q(s,ir)}function Mi(t,s,r,a){let i=a?O:It[s+1];if(i){let o=It[s];if(i%((t=yt(ir,t,1,i/o-(a?0:1),1))*o))throw new RangeError(yr(ir,t))}else t=yt(ir,t,1,r?1e9:1,1);return t}function Sn(t){let s=t[si];if(s!==void 0){if(typeof s!="number"){if(hi(s)==="auto")return;throw new RangeError(yr(si,s))}s=yt(si,Math.floor(s),0,9,1)}return s}function Ot(t){return t===void 0?{}:Zt(t)}function Ii(t,s){return typeof t=="string"?{[s]:t}:Zt(t)}function F(t){if(t!==void 0){if(U(t))return Object.assign(Object.create(null),t);throw new TypeError(Fl)}}function ea(t,s){return t&&Object.assign(Object.create(null),t,{overflow:ap[s]})}function Si(t,s,r=9,a=0,i){let o=s[t];if(o===void 0)return i?a:void 0;if(o=hi(o),o==="auto")return i?a:null;let e=ei[o];if(e===void 0&&(e=Bc[o]),e===void 0)throw new RangeError(Ll(t,o,ei));return yt(t,e,a,r,1,wr),e}function ps(t,s,r,a=0){let i=r[t];if(i===void 0)return a;let o=hi(i),e=s[o];if(e===void 0)throw new RangeError(Ll(t,o,s));return e}function An(t,s){if(s>t)throw new RangeError(kc)}function V(t){return{branding:Ea,epochNanoseconds:t}}function z(t,s,r){return{branding:Ut,calendar:r,timeZone:s,epochNanoseconds:t}}function $(t,s=t.calendar){return{branding:xs,calendar:s,...ct(nu,t)}}function Z(t,s=t.calendar){return{branding:ws,calendar:s,...ct(Uo,t)}}function ds(t,s=t.calendar){return{branding:Ns,calendar:s,...ct(Uo,t)}}function Ur(t,s=t.calendar){return{branding:Us,calendar:s,...ct(Uo,t)}}function bt(t){return{branding:va,...ct(eu,t)}}function I(t){return{branding:Fa,sign:Xt(t),...ct(jo,t)}}function Kn(t){return yn(t.epochNanoseconds)}function na(t){return yi(t.epochNanoseconds,St)[0]}function qn(t){return fn(t.epochNanoseconds,gs)}function vn(t){return fn(t.epochNanoseconds)}function En(t){return t.epochNanoseconds}function W(t){return typeof t=="string"?t:K(t.id)}function Es(t,s){return t===s||W(t)===W(s)}function Fn(t,s,r,a,i){let o=ls(a),[e,n]=((h,y)=>{let f=y((h=Ii(h,li))[lu]),g=up(h);return g=cn(li,g),[g,f]})(i,t);if(er(Math.max(e,o),n))return ke(a,e);if(!n)throw new RangeError(Ma);let[d,l,u]=ma(s,r,n),c=to(u),p=Ta(u),m=so(u),T=p(l,d,a),P=m(l,d,T,e);return er(e,n)?ke(P,e):((h,y,f,g,E,S,M)=>{let A=Xt(h),[G,k]=Ai(g,ko(f,h),f,A,E,S,M),Js=Ki(y,G,k);return h[R[f]]+Js*A})(P,c(T),e,l,d,c,p)}function ke(t,s){return Pt(N(t),It[s],1)}function Ai(t,s,r,a,i,o,e){let n=R[r],d={...s,[n]:s[n]+a},l=e(t,i,s),u=e(t,i,d);return[o(l),o(u)]}function Ki(t,s,r){let a=Pt(Tt(s,r));if(!a)throw new RangeError(gr);return Pt(Tt(s,t))/a}function $n(t,s){let[r,a,i]=oa(s,5,1);return V(la(t.epochNanoseconds,r,a,i,1))}function Zn(t,s,r){let{epochNanoseconds:a,timeZone:i,calendar:o}=s,[e,n,d]=oa(r);if(e===0&&n===1)return s;let l=t(i);if(e===6)a=((u,c,p,m)=>{let T=rt(p,c),[P,h]=u(T),y=p.epochNanoseconds,f=ut(c,P),g=ut(c,h);if(hn(y,f,g))throw new RangeError(gr);return _n(Ki(y,f,g),m)?g:f})(Gn,l,s,d);else{let u=l.getOffsetNanosecondsFor(a);a=Ts(l,Un(Jt(a,u),e,n,d),u,2,0,1)}return z(a,i,o)}function jn(t,s){return $(Un(t,...oa(s)),t.calendar)}function Ln(t,s){let[r,a,i]=oa(s,5);var o;return bt((o=i,qi(t,Tr(r,a),o)[0]))}function kn(t,s){let r=t(s.timeZone),a=rt(s,r),[i,o]=Gn(a),e=Pt(Tt(ut(r,i),ut(r,o)),Sa,1);if(e<=0)throw new RangeError(gr);return e}function Nn(t,s){let{timeZone:r,calendar:a}=s,i=((o,e,n)=>ut(e,o(rt(n,e))))(Wn,t(r),s);return z(i,r,a)}function Un(t,s,r,a){return Vn(t,Tr(s,r),a)}function Vn(t,s,r){let[a,i]=qi(t,s,r);return jt({...Ps(t,i),...a})}function qi(t,s,r){return sa(Bt(zt(t),s,r))}function Vr(t){return Bt(t,Ia,7)}function Tr(t,s){return It[t]*s}function Gn(t){let s=Wn(t);return[s,Ps(s,1)]}function Wn(t){return Jc(6,t)}function ac(t,s,r){let a=Math.min(ls(t),6);return $s(ua(N(t,a),s,r),a)}function da(t,s,r,a,i,o,e,n,d,l){if(a===0&&i===1)return t;let u=er(a,n)?Pa(n)&&a<6&&r>=6?oc:ic:ec,[c,p,m]=u(t,s,r,a,i,o,e,n,d,l);return m&&a!==7&&(c=((T,P,h,y,f,g,E,S)=>{let M=Xt(T);for(let A=y+1;A<=h;A++){if(A===7&&h!==7)continue;let G=ko(A,T);G[R[A]]+=M;let k=Pt(Tt(E(S(f,g,G)),P));if(k&&Math.sign(k)!==M)break;T=G}return T})(c,p,r,Math.max(6,a),e,n,d,l)),c}function la(t,s,r,a,i){if(s===6){let o=((e)=>e[0]+e[1]/O)(t);return[Bt(o,r,a),0]}return ua(t,Tr(s,r),a,i)}function ua(t,s,r,a){let[i,o]=t;a&&o<0&&(o+=O,i-=1);let[e,n]=Ft(Bt(o,s,r),O);return fi(i+e,n)}function Bt(t,s,r){return _n(t/s,r)*s}function _n(t,s){return Tp[s](t)}function ic(t,s,r,a,i,o){let e=Xt(t),n=N(t),d=la(n,a,i,o),l=Tt(n,d),u=Math.sign(d[0]-n[0])===e,c=$s(d,Math.min(r,6));return[{...t,...c},Ds(s,l),u]}function oc(t,s,r,a,i,o,e,n,d,l){let u=Xt(t),c=Pt(N(t,5)),p=Tr(a,i),m=Bt(c,p,o),[T,P]=Ai(e,{...t,...Lo},6,u,n,d,l),h=m-Pt(Tt(T,P)),y=0;h&&Math.sign(h)!==u?s=Ms(T,m):(y+=u,m=Bt(h,p,o),s=Ms(P,m));let f=fa(m);return[{...t,...f,days:t.days+y},s,Boolean(y)]}function ec(t,s,r,a,i,o,e,n,d,l){let u=Xt(t),c=R[a],p=ko(a,t);a===7&&(t={...t,weeks:t.weeks+Math.trunc(t.days/7)});let m=Jr(t[c],i)*i;p[c]=m;let[T,P]=Ai(e,p,a,i*u,n,d,l),h=m+Ki(s,T,P)*u*i,y=Bt(h,i,o),f=Math.sign(y-h)===u;return p[c]=y,[p,f?P:T,f]}function vi(t,s,r,a){let[i,o,e,n]=((l)=>{let u=Hi(l=Ot(l));return[l.timeZone,...u]})(a),d=i!==void 0;return((l,u,c,p,m,T)=>{c=ua(c,m,p,1);let P=u.getOffsetNanosecondsFor(c);return ki(Jt(c,P),T)+(l?ms(Vr(P)):"Z")})(d,s(d?t(i):Cs),r.epochNanoseconds,o,e,n)}function Ei(t,s,r){let[a,i,o,e,n,d]=((l)=>{l=Ot(l);let u=Wo(l),c=Sn(l),p=mp(l),m=Rr(l,4),T=Cr(l,4);return[u,pp(l),p,m,...In(T,c)]})(r);return((l,u,c,p,m,T,P,h,y,f)=>{p=ua(p,y,h,1);let g=l(c).getOffsetNanosecondsFor(p);return ki(Jt(p,g),f)+ms(Vr(g),P)+((E,S)=>S!==1?"["+(S===2?"!":"")+W(E)+"]":"")(c,T)+Ni(u,m)})(t,s.calendar,s.timeZone,s.epochNanoseconds,a,i,o,e,n,d)}function Fi(t,s){let[r,a,i,o]=((l)=>(l=Ot(l),[Wo(l),...Hi(l)]))(s);return e=t.calendar,n=r,d=o,ki(Vn(t,i,a),d)+Ni(e,n);var e,n,d}function $i(t,s){return r=t.calendar,a=t,i=bi(s),Gr(a)+Ni(r,i);var r,a,i}function Zi(t,s){return zn(t.calendar,Bn,t,bi(s))}function ji(t,s){return zn(t.calendar,nc,t,bi(s))}function Li(t,s){let[r,a,i]=Mn(s);return o=i,Jn(qi(t,a,r)[0],o);var o}function ca(t,s){let[r,a,i]=Mn(s,3);return a>1&&(t={...t,...ac(t,a,r)}),((o,e)=>{let{sign:n}=o,d=n===-1?at(o):o,{hours:l,minutes:u}=d,[c,p]=yi(N(d,3),wt,_t);id(c);let m=Ui(p,e),T=e>=0||!n||m;return(n<0?"-":"")+"P"+Ne({Y:ns(d.years),M:ns(d.months),W:ns(d.weeks),D:ns(d.days)})+(l||u||c||T?"T"+Ne({H:ns(l),M:ns(u),S:ns(c,T)+m}):"")})(t,i)}function zn(t,s,r,a){let i=W(t),o=a>1||a===0&&i!==x;return a===1?i===x?s(r):Gr(r):o?Gr(r)+Xn(i,a===2):s(r)}function Ne(t){let s=[];for(let r in t){let a=t[r];a&&s.push(a,r)}return s.join("")}function ki(t,s){return Gr(t)+"T"+Jn(t,s)}function Gr(t){return Bn(t)+"-"+gt(t.isoDay)}function Bn(t){let{isoYear:s}=t;return(s<0||s>9999?Qn(s)+Lr(6,Math.abs(s)):Lr(4,s))+"-"+gt(t.isoMonth)}function nc(t){return gt(t.isoMonth)+"-"+gt(t.isoDay)}function Jn(t,s){let r=[gt(t.isoHour),gt(t.isoMinute)];return s!==-1&&r.push(gt(t.isoSecond)+((a,i,o,e)=>Ui(a*St+i*gs+o,e))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,s)),r.join(":")}function ms(t,s=0){if(s===1)return"";let[r,a]=Ft(Math.abs(t),Sa),[i,o]=Ft(a,Ia),[e,n]=Ft(o,wt);return Qn(t)+gt(r)+":"+gt(i)+(e||n?":"+gt(e)+Ui(n):"")}function Ni(t,s){if(s!==1){let r=W(t);if(s>1||s===0&&r!==x)return Xn(r,s===2)}return""}function Xn(t,s){return"["+(s?"!":"")+"u-ca="+t+"]"}function Ui(t,s){let r=Lr(9,t);return r=s===void 0?r.replace(fp,""):r.slice(0,s),r?"."+r:""}function Qn(t){return t<0?"-":"+"}function ns(t,s){return t||s?t.toLocaleString("fullwide",{useGrouping:0}):""}function dc(t,s){let{epochNanoseconds:r}=t,a=(s.getOffsetNanosecondsFor?s:s(t.timeZone)).getOffsetNanosecondsFor(r),i=Jt(r,a);return{calendar:t.calendar,...i,offsetNanoseconds:a}}function Yn(t,s){let r=rt(s,t);return{calendar:s.calendar,...ct(nu,r),offset:ms(r.offsetNanoseconds),timeZone:s.timeZone}}function Ts(t,s,r,a=0,i=0,o,e){if(r!==void 0&&a===1&&(a===1||e))return xi(s,r);let n=t.getPossibleInstantsFor(s);if(r!==void 0&&a!==3){let d=((l,u,c,p)=>{let m=Y(u);p&&(c=Vr(c));for(let T of l){let P=Pt(Tt(T,m));if(p&&(P=Vr(P)),P===c)return T}})(n,s,r,o);if(d!==void 0)return d;if(a===0)throw new RangeError(Ec)}return e?Y(s):ut(t,s,i,n)}function ut(t,s,r=0,a=t.getPossibleInstantsFor(s)){if(a.length===1)return a[0];if(r===1)throw new RangeError(Fc);if(a.length)return a[r===3?1:0];let i=Y(s),o=((n,d)=>{let l=n.getOffsetNanosecondsFor(Ms(d,-O));return Gi(n.getOffsetNanosecondsFor(Ms(d,O))-l)})(t,i),e=o*(r===2?-1:1);return(a=t.getPossibleInstantsFor(Jt(i,e)))[r===2?0:a.length-1]}function Vi(t){if(Math.abs(t)>=O)throw new RangeError(qc);return t}function Gi(t){if(t>O)throw new RangeError(vc);return t}function Wi(t,s,r){return V(ht(Ds(s.epochNanoseconds,((a)=>{if(od(a))throw new RangeError(jc);return N(a,5)})(t?at(r):r))))}function _i(t,s,r,a,i,o=Object.create(null)){let e=s(a.timeZone),n=t(a.calendar);return{...a,...Qi(e,n,a,r?at(i):i,o)}}function zi(t,s,r,a,i=Object.create(null)){let{calendar:o}=r;return $(Yi(t(o),r,s?at(a):a,i),o)}function Bi(t,s,r,a,i){let{calendar:o}=r;return Z(pa(t(o),r,s?at(a):a,i),o)}function Ji(t,s,r,a,i=Object.create(null)){let o=r.calendar,e=t(o),n=or(e,r);s&&(a=ha(a)),a.sign<0&&(n=e.dateAdd(n,{..._,months:1}),n=Ps(n,-1));let d=e.dateAdd(n,a,i);return ds(or(e,d),o)}function Xi(t,s,r){return bt(td(s,t?at(r):r)[0])}function Qi(t,s,r,a,i){let o=N(a,5),e=r.epochNanoseconds;if(od(a)){let n=rt(r,t);e=Ds(ut(t,{...pa(s,n,{...a,...Lo},i),...ct(Dt,n)}),o)}else e=Ds(e,o),C(i);return{epochNanoseconds:ht(e)}}function Yi(t,s,r,a){let[i,o]=td(s,r);return jt({...pa(t,s,{...r,...Lo,days:r.days+o},a),...i})}function pa(t,s,r,a){if(r.years||r.months||r.weeks)return t.dateAdd(s,r,a);C(a);let i=r.days+N(r,5)[0];return i?Gt(Ps(s,i)):s}function or(t,s,r=1){return Ps(s,r-t.day(s))}function td(t,s){let[r,a]=N(s,5),[i,o]=sa(zt(t)+a);return[i,r+o]}function Ps(t,s){return s?{...t,...ra(st(t)+s*dt)}:t}function ma(t,s,r){let a=t(r.calendar);return Pa(r)?[r,a,s(r.timeZone)]:[{...r,...xt},a]}function to(t){return t?En:Y}function Ta(t){return t?w(Qi,t):Yi}function so(t){return t?w(uc,t):cc}function Pa(t){return t&&t.epochNanoseconds}function er(t,s){return t<=6-(Pa(s)?1:0)}function ro(t,s,r,a,i,o,e){let n=t(Ot(e).relativeTo),d=Math.max(ls(i),ls(o));if(er(d,n))return I(Fs(((P,h,y,f)=>{let g=Ds(N(P),N(h),f?-1:1);if(!Number.isFinite(g[0]))throw new RangeError(Da);return{..._,...$s(g,y)}})(i,o,d,a)));if(!n)throw new RangeError(Ma);a&&(o=at(o));let[l,u,c]=ma(s,r,n),p=Ta(c),m=so(c),T=p(u,l,i);return I(m(u,l,p(u,T,o),d))}function sd(t,s,r,a,i){let o=ls(a),[e,n,d,l,u]=((M,A,G)=>{M=Ii(M,zr);let k=Go(M),Js=G(M[lu]),Xs=Di(M),_u=Rr(M,7),es=Cr(M);if(k===void 0&&es===void 0)throw new RangeError(Lc);return es==null&&(es=0),k==null&&(k=Math.max(es,A)),An(k,es),Xs=Mi(Xs,es,1),[k,es,Xs,_u,Js]})(i,o,t),c=Math.max(o,e);if(!Pa(u)&&c<=6)return I(Fs(((M,A,G,k,Js)=>{let Xs=la(N(M),G,k,Js);return{..._,...$s(Xs,A)}})(a,e,n,d,l)));if(!u)throw new RangeError(Ma);let[p,m,T]=ma(s,r,u),P=to(T),h=Ta(T),y=so(T),f=h(m,p,a),g=y(m,p,f,e),E=a.sign,S=Xt(g);if(E&&S&&E!==S)throw new RangeError(gr);return S&&(g=da(g,P(f),e,n,d,l,m,p,P,h)),I(g)}function rd(t){return t.sign===-1?ha(t):t}function ha(t){return I(at(t))}function at(t){let s={};for(let r of R)s[r]=-1*t[r]||0;return s}function ad(t){return!t.sign}function Xt(t,s=R){let r=0;for(let a of s){let i=Math.sign(t[a]);if(i){if(r&&r!==i)throw new RangeError(Zc);r=i}}return r}function Fs(t){for(let s of zc)yt(s,t[s],-Be,Be,1);return id(Pt(N(t),wt)),t}function id(t){if(!Number.isSafeInteger(t))throw new RangeError($c)}function N(t,s=6){return on(t,s,R)}function $s(t,s=6){let[r,a]=t,i=Xr(a,s,R);if(i[R[s]]+=r*(O/It[s]),!Number.isFinite(i[R[s]]))throw new RangeError(Da);return i}function fa(t,s=5){return Xr(t,s,R)}function od(t){return Boolean(Xt(t,ou))}function ls(t){let s=9;for(;s>0&&!t[R[s]];s--);return s}function lc(t,s){return[t,s]}function Ue(t){let s=Math.floor(t/Zr)*Zr;return[s,s+Zr]}function ed(t){let s=Qt(t=kr(t));if(!s)throw new RangeError(nt(t));let r;if(s.m)r=0;else{if(!s.offset)throw new RangeError(nt(t));r=Zs(s.offset)}return s.timeZone&&eo(s.timeZone,1),V(xi(aa(s),r))}function nd(t){let s=Qt(K(t));if(!s)throw new RangeError(nt(t));if(s.timeZone)return hd(s,s.offset?Zs(s.offset):void 0);if(s.m)throw new RangeError(nt(t));return yd(s)}function dd(t,s){let r=Qt(K(t));if(!r||!r.timeZone)throw new RangeError(nt(t));let{offset:a}=r,i=a?Zs(a):void 0,[,o,e]=mr(s);return hd(r,i,o,e)}function Zs(t){let s=eo(t);if(s===void 0)throw new RangeError(nt(t));return s}function ld(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return $(fd(s))}function ya(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return Z(s.p?fd(s):yd(s))}function ud(t,s){let r=io(K(s));if(r)return ao(r),ds(wi(cs(r)));let a=ya(s);return ds(or(t(a.calendar),a))}function ao(t){if(t.calendar!==x)throw new RangeError($t(t.calendar))}function cd(t,s){let r=oo(K(s));if(r)return ao(r),Ur(cs(r));let a=ya(s),{calendar:i}=a,o=t(i),[e,n,d]=o.h(a),[l,u]=o.I(e,n),[c,p]=o.N(l,u,d);return Ur(Gt(o.P(c,p,d)),i)}function pd(t){let s,r=((a)=>{let i=Cp.exec(a);return i?(ga(i[10]),xd(i)):void 0})(K(t));if(!r){if(r=Qt(t),!r)throw new RangeError(nt(t));if(!r.p)throw new RangeError(nt(t));if(r.m)throw new RangeError($t("Z"));ao(r)}if((s=io(t))&&Le(s))throw new RangeError(nt(t));if((s=oo(t))&&Le(s))throw new RangeError(nt(t));return bt(ia(r,1))}function md(t){let s=((r)=>{let a=bp.exec(r);return a?((i)=>{function o(u,c,p){let m=0,T=0;if(p&&([m,d]=Ft(d,It[p])),u!==void 0){if(n)throw new RangeError($t(u));T=((P)=>{let h=parseInt(P);if(!Number.isFinite(h))throw new RangeError($t(P));return h})(u),e=1,c&&(d=no(c)*(It[p]/wt),n=1)}return m+T}let e=0,n=0,d=0,l={...Ks(R,[o(i[2]),o(i[3]),o(i[4]),o(i[5]),o(i[6],i[7],5),o(i[8],i[9],4),o(i[10],i[11],3)]),...Xr(d,2,R)};if(!e)throw new RangeError(Zl(R));return lo(i[1])<0&&(l=at(l)),l})(a):void 0})(K(t));if(!s)throw new RangeError(nt(t));return I(Fs(s))}function Td(t){let s=Qt(t)||io(t)||oo(t);return s?s.calendar:t}function Pd(t){let s=Qt(t);return s&&(s.timeZone||s.m&&Cs||s.offset)||t}function hd(t,s,r=0,a=0){let i=wa(t.timeZone),o=$a(i);return z(Ts(o,aa(t),s,r,a,!o.v,t.m),i,Pr(t.calendar))}function fd(t){return gd(jt(aa(t)))}function yd(t){return gd(Gt(cs(t)))}function gd(t){return{...t,calendar:Pr(t.calendar)}}function Qt(t){let s=xp.exec(t);return s?((r)=>{let a=r[10],i=(a||"").toUpperCase()==="Z";return{isoYear:wd(r),isoMonth:parseInt(r[4]),isoDay:parseInt(r[5]),...xd(r.slice(5)),...ga(r[16]),p:Boolean(r[6]),m:i,offset:i?void 0:a}})(s):void 0}function io(t){let s=gp.exec(t);return s?((r)=>({isoYear:wd(r),isoMonth:parseInt(r[4]),isoDay:1,...ga(r[5])}))(s):void 0}function oo(t){let s=wp.exec(t);return s?((r)=>({isoYear:As,isoMonth:parseInt(r[1]),isoDay:parseInt(r[2]),...ga(r[3])}))(s):void 0}function eo(t,s){let r=Rp.exec(t);return r?((a,i)=>{let o=a[4]||a[5];if(i&&o)throw new RangeError($t(o));return Vi((Hs(a[2])*Sa+Hs(a[3])*Ia+Hs(a[4])*wt+no(a[5]||""))*lo(a[1]))})(r,s):void 0}function wd(t){let s=lo(t[1]),r=parseInt(t[2]||t[3]);if(s<0&&!r)throw new RangeError($t(-0));return s*r}function xd(t){let s=Hs(t[3]);return{...sa(no(t[4]||""))[0],isoHour:Hs(t[1]),isoMinute:Hs(t[2]),isoSecond:s===60?59:s}}function ga(t){let s,r,a=[];if(t.replace(Op,(i,o,e)=>{let n=Boolean(o),[d,l]=e.split("=").reverse();if(l){if(l==="u-ca")a.push(d),s||(s=n);else if(n||/[A-Z]/.test(l))throw new RangeError($t(i))}else{if(r)throw new RangeError($t(i));r=d}return""}),a.length>1&&s)throw new RangeError($t(t));return{timeZone:r,calendar:a[0]||x}}function no(t){return parseInt(t.padEnd(9,"0"))}function js(t){return new RegExp(`^${t}$`,"i")}function lo(t){return t&&t!=="+"?-1:1}function Hs(t){return t===void 0?0:parseInt(t)}function Cd(t){return wa(K(t))}function wa(t){let s=uo(t);return typeof s=="number"?ms(s):s?((r)=>{if(Dp.test(r))throw new RangeError(Kc);return r.toLowerCase().split("/").map((a,i)=>(a.length<=3||/\d/.test(a))&&!/etc|yap/.test(a)?a.toUpperCase():a.replace(/baja|dumont|[a-z]+/g,(o,e)=>o.length<=2&&!i||o==="in"||o==="chat"?o.toUpperCase():o.length>2||!e?Ze(o).replace(/island|noronha|murdo|rivadavia|urville/,Ze):o)).join("/")})(t):Cs}function Ve(t){let s=uo(t);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Cs}function uo(t){let s=eo(t=t.toUpperCase(),1);return s!==void 0?s:t!==Cs?Hp(t):void 0}function co(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function po(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function Rd(t,s,r,a,i,o){let e=t(Ot(o).relativeTo),n=Math.max(ls(a),ls(i));if(rn(R,a,i))return 0;if(er(n,e))return tt(N(a),N(i));if(!e)throw new RangeError(Ma);let[d,l,u]=ma(s,r,e),c=to(u),p=Ta(u);return tt(c(p(l,d,a)),c(p(l,d,i)))}function mo(t,s){return hs(t,s)||xa(t,s)}function hs(t,s){return Vt(st(t),st(s))}function xa(t,s){return Vt(zt(t),zt(s))}function Od(t,s){return!co(t,s)}function bd(t,s){return!po(t,s)&&!!Ca(t.timeZone,s.timeZone)&&Es(t.calendar,s.calendar)}function Hd(t,s){return!mo(t,s)&&Es(t.calendar,s.calendar)}function Dd(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Md(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Id(t,s){return!hs(t,s)&&Es(t.calendar,s.calendar)}function Sd(t,s){return!xa(t,s)}function Ca(t,s){if(t===s)return 1;let r=W(t),a=W(s);if(r===a)return 1;try{return Ve(r)===Ve(a)}catch(i){}}function To(t,s,r,a){let i=vs(t,F(a),3,5),o=Ra(s.epochNanoseconds,r.epochNanoseconds,...i);return I(t?at(o):o)}function Po(t,s,r,a,i,o){let e=ba(a.calendar,i.calendar),n=F(o),[d,l,u,c]=vs(r,n,5),p=a.epochNanoseconds,m=i.epochNanoseconds,T=tt(m,p),P;if(T)if(d<6)P=Ra(p,m,d,l,u,c);else{let h=s(((f,g)=>{if(!Ca(f,g))throw new RangeError(Vl);return f})(a.timeZone,i.timeZone)),y=t(e);P=Kd(y,h,a,i,T,d,n),P=da(P,m,d,l,u,c,y,a,En,w(Qi,h))}else P=_;return I(r?at(P):P)}function ho(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i),[n,d,l,u]=vs(s,e,6),c=Y(r),p=Y(a),m=tt(p,c),T;if(m)if(n<=6)T=Ra(c,p,n,d,l,u);else{let P=t(o);T=qd(P,r,a,m,n,e),T=da(T,p,n,d,l,u,P,r,Y,Yi)}else T=_;return I(s?at(T):T)}function fo(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i);return Ad(s,()=>t(o),r,a,...vs(s,e,6,9,6),e)}function yo(t,s,r,a,i){let o=ba(r.calendar,a.calendar),e=F(i),n=vs(s,e,9,9,8),d=t(o);return Ad(s,()=>d,or(d,r),or(d,a),...n,e)}function Ad(t,s,r,a,i,o,e,n,d){let l=Y(r),u=Y(a),c;if(tt(u,l))if(i===6)c=Ra(l,u,i,o,e,n);else{let p=s();c=p.dateUntil(r,a,i,d),o===6&&e===1||(c=da(c,u,i,o,e,n,p,r,Y,pa))}else c=_;return I(t?at(c):c)}function go(t,s,r,a){let i=F(a),[o,e,n,d]=vs(t,i,5,5),l=Bt(wo(s,r),Tr(e,n),d),u={..._,...fa(l,o)};return I(t?at(u):u)}function uc(t,s,r,a,i,o){let e=tt(a.epochNanoseconds,r.epochNanoseconds);return e?i<6?vd(r.epochNanoseconds,a.epochNanoseconds,i):Kd(s,t,r,a,e,i,o):_}function cc(t,s,r,a,i){let o=Y(s),e=Y(r),n=tt(e,o);return n?a<=6?vd(o,e,a):qd(t,s,r,n,a,i):_}function Kd(t,s,r,a,i,o,e){let[n,d,l]=((p,m,T,P)=>{function h(){return A={...Ps(g,S++*-P),...f},G=ut(p,A),tt(E,G)===-P}let y=rt(m,p),f=ct(Dt,y),g=rt(T,p),E=T.epochNanoseconds,S=0,M=wo(y,g),A,G;if(Math.sign(M)===-P&&S++,h()&&(P===-1||h()))throw new RangeError(gr);let k=Pt(Tt(G,E));return[y,A,k]})(s,r,a,i);var u,c;return{...o===6?(u=n,c=d,{..._,days:Ed(u,c)}):t.dateUntil(n,d,o,e),...fa(l)}}function qd(t,s,r,a,i,o){let[e,n,d]=((l,u,c)=>{let p=u,m=wo(l,u);return Math.sign(m)===-c&&(p=Ps(u,-c),m+=O*c),[l,p,m]})(s,r,a);return{...t.dateUntil(e,n,i,o),...fa(d)}}function Ra(t,s,r,a,i,o){return{..._,...$s(la(Tt(t,s),a,i,o),r)}}function vd(t,s,r){return{..._,...$s(Tt(t,s),r)}}function Ed(t,s){return Oa(st(t),st(s))}function Oa(t,s){return Math.trunc((s-t)/dt)}function wo(t,s){return zt(s)-zt(t)}function ba(t,s){if(!Es(t,s))throw new RangeError(Eo);return t}function pc(t){function s(i){return((o,e)=>({...Fd(o,e),F:o.month,day:parseInt(o.day)}))(gi(r,i),a)}let r=Jo(t),a=Wr(t);return{id:t,O:mc(s),B:Tc(s)}}function mc(t){return lt((s)=>{let r=st(s);return t(r)},WeakMap)}function Tc(t){let s=t(0).year-tp;return lt((r)=>{let a,i=qs(r-s),o=[],e=[];do i+=400*dt;while((a=t(i)).year<=r);do i+=(1-a.day)*dt,a.year===r&&(o.push(i),e.push(a.F)),i-=dt;while((a=t(i)).year>=r);return{k:o.reverse(),C:_l(e.reverse())}})}function Fd(t,s){let r,a,i=$d(t);if(t.era){let o=ru[s];o!==void 0&&(r=s==="islamic"?"ah":t.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),r==="bc"||r==="b"?r="bce":r!=="ad"&&r!=="a"||(r="ce"),a=i,i=Nd(a,o[r]||0))}return{era:r,eraYear:a,year:i}}function $d(t){return parseInt(t.relatedYear||t.year)}function ai(t){let{year:s,F:r,day:a}=this.O(t),{C:i}=this.B(s);return[s,i[r]+1,a]}function nr(t,s=1,r=1){return this.B(t).k[s-1]+(r-1)*dt}function Er(t){let s=We(this,t),r=We(this,t-1),a=s.length;if(a>r.length){let i=Ud(this);if(i<0)return-i;for(let o=0;o<a;o++)if(s[o]!==r[o])return o+1}}function Fr(t){return Oa(nr.call(this,t),nr.call(this,t+1))}function Ge(t,s){let{k:r}=this.B(t),a=s+1,i=r;return a>r.length&&(a=1,i=this.B(t+1).k),Oa(r[s-1],i[a-1])}function $r(t){return this.B(t).k.length}function We(t,s){return Object.keys(t.B(s).C)}function Zd(t){return Pr(K(t))}function Pr(t){if((t=t.toLowerCase())!==x&&t!==Ka&&Wr(t)!==Wr(Jo(t).resolvedOptions().calendar))throw new RangeError(Ac(t));return t}function Wr(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function jd(t){return this.R(t)[0]}function Ld(t){return this.R(t)[1]}function xo(t){let[s]=this.h(t);return Oa(this.q(s),st(t))+1}function kd(t){let s=Ip.exec(t);if(!s)throw new RangeError(Ic(t));return[parseInt(s[1]),Boolean(s[2])]}function _r(t,s,r){return t+(s||r&&t>=r?1:0)}function ii(t,s){return t-(s&&t>=s?1:0)}function Nd(t,s){return(s+t)*(Math.sign(s)||1)||0}function oi(t){return ru[Vd(t)]}function Ud(t){return Gc[Vd(t)]}function Vd(t){return Wr(t.id||x)}function Gd(t,s,r,a){let i=Yt(r,a,Ht,[],Ql);if(i.timeZone!==void 0){let o=r.dateFromFields(i),e=fs(i),n=t(i.timeZone);return{epochNanoseconds:Ts(s(n),{...o,...e},i.offset!==void 0?Zs(i.offset):void 0),timeZone:n}}return{...r.dateFromFields(i),...xt}}function Wd(t,s,r,a,i,o){let e=Yt(r,i,Ht,Jl,Ql),n=t(e.timeZone),[d,l,u]=mr(o),c=r.dateFromFields(e,ea(o,d)),p=fs(e,d);return z(Ts(s(n),{...c,...p},e.offset!==void 0?Zs(e.offset):void 0,l,u),n,a)}function _d(t,s,r){let a=Yt(t,s,Ht,[],Nt),i=C(r);return $(jt({...t.dateFromFields(a,ea(r,i)),...fs(a,i)}))}function Co(t,s,r,a=[]){let i=Yt(t,s,Ht,a);return t.dateFromFields(i,r)}function Ro(t,s,r,a){let i=Yt(t,s,Zo,a);return t.yearMonthFromFields(i,r)}function Oo(t,s,r,a,i=[]){let o=Yt(t,r,Ht,i);return s&&o.month!==void 0&&o.monthCode===void 0&&o.year===void 0&&(o.year=As),t.monthDayFromFields(o,a)}function zd(t,s){let r=C(s);return bt(fs(Mt(t,ni,[],1),r))}function Bd(t){let s=Mt(t,jo);return I(Fs({..._,...s}))}function Yt(t,s,r,a=[],i=[]){return Mt(s,[...t.fields(r),...i].sort(),a)}function Mt(t,s,r,a=!r){let i={},o,e=0;for(let n of s){if(n===o)throw new RangeError(Rc(n));if(n==="constructor"||n==="__proto__")throw new RangeError(qo(n));let d=t[n];if(d!==void 0)e=1,Je[n]&&(d=Je[n](d,n)),i[n]=d;else if(r){if(r.includes(n))throw new TypeError(Ko(n));i[n]=su[n]}o=n}if(a&&!e)throw new TypeError(Zl(s));return i}function fs(t,s){return ia(qp({...su,...t}),s)}function Jd(t,s,r,a,i,o){let e=F(o),{calendar:n,timeZone:d}=r;return z(((l,u,c,p,m)=>{let T=hr(l,c,p,Ht,Xl,Bl),[P,h,y]=mr(m,2);return Ts(u,{...l.dateFromFields(T,ea(m,P)),...fs(T,P)},Zs(T.offset),h,y)})(t(n),s(d),a,i,e),d,n)}function Xd(t,s,r,a,i){let o=F(i);return $(((e,n,d,l)=>{let u=hr(e,n,d,Ht,Nt),c=C(l);return jt({...e.dateFromFields(u,ea(l,c)),...fs(u,c)})})(t(s.calendar),r,a,o))}function Qd(t,s,r,a,i){let o=F(i);return((e,n,d,l)=>{let u=hr(e,n,d,Ht);return e.dateFromFields(u,l)})(t(s.calendar),r,a,o)}function Yd(t,s,r,a,i){let o=F(i);return ds(((e,n,d,l)=>{let u=hr(e,n,d,Zo);return e.yearMonthFromFields(u,l)})(t(s.calendar),r,a,o))}function tl(t,s,r,a,i){let o=F(i);return((e,n,d,l)=>{let u=hr(e,n,d,Ht);return e.monthDayFromFields(u,l)})(t(s.calendar),r,a,o)}function sl(t,s,r){return bt(((a,i,o)=>{let e=C(o);return fs({...ct(ni,a),...Mt(i,ni)},e)})(t,s,r))}function rl(t,s){return I((r=t,a=s,Fs({...r,...Mt(a,jo)})));var r,a}function hr(t,s,r,a,i=[],o=[]){let e=[...t.fields(a),...i].sort(),n=Mt(s,e,o),d=Mt(r,e);return n=t.mergeFields(n,d),Mt(n,e,[])}function bo(t,s){let r=Yt(t,s,tu);return t.monthDayFromFields(r)}function Ho(t,s,r){let a=Yt(t,s,Yl);return t.yearMonthFromFields(a,r)}function al(t,s,r,a,i){s=ct(r=t.fields(r),s),a=Mt(a,i=t.fields(i),[]);let o=t.mergeFields(s,a);return o=Mt(o,[...r,...i].sort(),[]),t.dateFromFields(o)}function Qa(t,s){let{era:r,eraYear:a,year:i}=s,o=oi(t);if(r!==void 0||a!==void 0){if(r===void 0||a===void 0)throw new TypeError(bc);if(!o)throw new RangeError(Oc);let e=o[r];if(e===void 0)throw new RangeError(Dc(r));let n=Nd(a,e);if(i!==void 0&&i!==n)throw new RangeError(Hc);i=n}else if(i===void 0)throw new TypeError(Mc(o));return i}function Ya(t,s,r,a){let{month:i,monthCode:o}=s;if(o!==void 0){let e=((n,d,l,u)=>{let c=n.U(l),[p,m]=kd(d),T=_r(p,m,c);if(m){let P=Ud(n);if(P===void 0)throw new RangeError(rr);if(P>0){if(T>P)throw new RangeError(rr);if(c===void 0){if(u===1)throw new RangeError(rr);T--}}else{if(T!==-P)throw new RangeError(rr);if(c===void 0&&u===1)throw new RangeError(rr)}}return T})(t,o,r,a);if(i!==void 0&&i!==e)throw new RangeError(Nl);i=e,a=1}else if(i===void 0)throw new TypeError(Sc);return yt("month",i,1,t.L(r),a)}function _e(t,s,r,a,i){return et(s,"day",1,t.j(a,r),i)}function ti(t,s,r,a){let i=0,o=[];for(let e of r)s[e]!==void 0?i=1:o.push(e);if(Object.assign(t,s),i)for(let e of a||o)delete t[e]}function il(t){return V(ht(ta(Yr(t))))}function ol(t,s,r,a,i=x){return z(ht(ta(Yr(r))),s(a),t(i))}function el(t,s,r,a,i=0,o=0,e=0,n=0,d=0,l=0,u=x){return $(jt(aa(Ct(Q,Ks(qa,[s,r,a,i,o,e,n,d,l])))),t(u))}function nl(t,s,r,a,i=x){return Z(Gt(cs(Ct(Q,{isoYear:s,isoMonth:r,isoDay:a}))),t(i))}function dl(t,s,r,a=x,i=1){let o=Q(s),e=Q(r),n=t(a);return ds(wi(cs({isoYear:o,isoMonth:e,isoDay:Q(i)})),n)}function ll(t,s,r,a=x,i=As){let o=Q(s),e=Q(r),n=t(a);return Ur(Gt(cs({isoYear:Q(i),isoMonth:o,isoDay:e})),n)}function ul(t=0,s=0,r=0,a=0,i=0,o=0){return bt(ia(Ct(Q,Ks(Dt,[t,s,r,a,i,o])),1))}function cl(t=0,s=0,r=0,a=0,i=0,o=0,e=0,n=0,d=0,l=0){return I(Fs(Ct(Pn,Ks(R,[t,s,r,a,i,o,e,n,d,l]))))}function Do(t,s,r=x){return z(t.epochNanoseconds,s,r)}function pl(t){return V(t.epochNanoseconds)}function Mo(t,s){return $(rt(s,t))}function Io(t,s){return Z(rt(s,t))}function ml(t,s,r){return Ho(t(s.calendar),r)}function Tl(t,s,r){return bo(t(s.calendar),r)}function So(t,s){return bt(rt(s,t))}function Pl(t,s,r,a){let i=((o,e,n,d)=>{let l=Oi(d);return ut(o(e),n,l)})(t,r,s,a);return z(ht(i),r,s.calendar)}function hl(t,s,r){let a=t(s.calendar);return ds({...s,...Ho(a,r)})}function fl(t,s,r){return bo(t(s.calendar),r)}function yl(t,s,r,a,i){let o=t(i.timeZone),e=i.plainTime,n=e!==void 0?s(e):xt;return z(ut(r(o),{...a,...n}),o,a.calendar)}function gl(t,s=xt){return $(jt({...t,...s}))}function wl(t,s,r){return Ho(t(s.calendar),r)}function xl(t,s,r){return bo(t(s.calendar),r)}function Cl(t,s,r,a){return((i,o,e)=>al(i,o,Yl,Zt(e),xr))(t(s.calendar),r,a)}function Rl(t,s,r,a){return((i,o,e)=>al(i,o,tu,Zt(e),Aa))(t(s.calendar),r,a)}function Ol(t,s,r,a,i){let o=Zt(i),e=s(o.plainDate),n=t(o.timeZone);return z(ut(r(n),{...e,...a}),n,e.calendar)}function bl(t,s){return $(jt({...t,...s}))}function Hl(t){return V(ht(Is(t,wt)))}function Dl(t){return V(ht(Is(t,St)))}function Ml(t){return V(ht(ta(Yr(t),gs)))}function Il(t){return V(ht(ta(Yr(t))))}function Sl(t,s,r=xt){let a=s.timeZone,i=t(a),o={...rt(s,i),...r};return z(Ts(i,o,o.offsetNanoseconds,2),a,s.calendar)}function Al(t,s,r){let a=s.timeZone,i=t(a),o={...rt(s,i),...r},e=El(s.calendar,r.calendar);return z(Ts(i,o,o.offsetNanoseconds,2),a,e)}function Kl(t,s=xt){return $({...t,...s})}function ql(t,s){return $({...t,...s},El(t.calendar,s.calendar))}function Ha(t,s){return{...t,calendar:s}}function vl(t,s){return{...t,timeZone:s}}function El(t,s){if(t===s)return t;let r=W(t),a=W(s);if(r===a||r===x)return s;if(a===x)return t;throw new RangeError(Eo)}function Pc(t,s){return(r)=>r===x?t:r===Ka||r===Ss?Object.assign(Object.create(t),{id:r}):Object.assign(Object.create(s),Mp(r))}function ys(t,s,r){let a=new Set(r);return(i)=>(((o,e)=>{for(let n of e)if(n in o)return 1;return 0})(i=ci(a,i),t)||Object.assign(i,s),r&&(i.timeZone=Cs,["full","long"].includes(i.timeStyle)&&(i.timeStyle="medium")),i)}function Lt(t,s=Ao){let[r,,,a]=t;return(i,o=Bp,...e)=>{let n=s(a&&a(...e),i,o,r),d=n.resolvedOptions();return[n,...hc(t,d,e)]}}function Ao(t,s,r,a){if(r=a(r),t){if(r.timeZone!==void 0)throw new TypeError(Nc);r.timeZone=t}return new ts(s,r)}function hc(t,s,r){let[,a,i]=t;return r.map((o)=>(o.calendar&&((e,n,d)=>{if((d||e!==x)&&e!==n)throw new RangeError(Eo)})(W(o.calendar),s.calendar,i),a(o,s)))}function Ls(t){let s=fr();return Jt(s,t.getOffsetNanosecondsFor(s))}function fr(){return Is(Date.now(),St)}function kt(){return Qe||(Qe=new ts().resolvedOptions().timeZone)}var fc=(t,s)=>`Non-integer ${t}: ${s}`,yc=(t,s)=>`Non-positive ${t}: ${s}`,gc=(t,s)=>`Non-finite ${t}: ${s}`,wc=(t)=>`Cannot convert bigint to ${t}`,xc=(t)=>`Invalid bigint: ${t}`,Cc="Cannot convert Symbol to string",Fl="Invalid object",$l=(t,s,r,a,i)=>i?$l(t,i[s],i[r],i[a]):yr(t,s)+`; must be between ${r}-${a}`,yr=(t,s)=>`Invalid ${t}: ${s}`,Ko=(t)=>`Missing ${t}`,qo=(t)=>`Invalid field ${t}`,Rc=(t)=>`Duplicate field ${t}`,Zl=(t)=>"No valid fields: "+t.join(),jl="Invalid bag",Ll=(t,s,r)=>yr(t,s)+"; must be "+Object.keys(r).join(),kl="Cannot use valueOf",vo="Invalid calling context",Oc="Forbidden era/eraYear",bc="Mismatching era/eraYear",Hc="Mismatching year/eraYear",Dc=(t)=>`Invalid era: ${t}`,Mc=(t)=>"Missing year"+(t?"/era/eraYear":""),Ic=(t)=>`Invalid monthCode: ${t}`,Nl="Mismatching month/monthCode",Sc="Missing month/monthCode",ze="Cannot guess year",rr="Invalid leap month",Ul="Invalid protocol",gr="Invalid protocol results",Eo="Mismatching Calendars",Ac=(t)=>`Invalid Calendar: ${t}`,Vl="Mismatching TimeZones",Kc="Forbidden ICU TimeZone",qc="Out-of-bounds offset",vc="Out-of-bounds TimeZone gap",Ec="Invalid TimeZone offset",Fc="Ambiguous offset",Da="Out-of-bounds date",$c="Out-of-bounds duration",Zc="Cannot mix duration signs",Ma="Missing relativeTo",jc="Cannot use large units",Lc="Required smallestUnit or largestUnit",kc="smallestUnit > largestUnit",nt=(t)=>`Cannot parse: ${t}`,$t=(t)=>`Invalid substring: ${t}`,Gl=(t)=>`Cannot format ${t}`,Wl="Mismatching types for formatting",Nc="Cannot specify TimeZone",_l=w(ur,(t,s)=>s),ks=w(ur,(t,s,r)=>r),gt=w(Lr,2),ei={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},wr=Object.keys(ei),dt=86400000,zl=1000,gs=1000,St=1e6,wt=1e9,Ia=60000000000,Sa=3600000000000,O=86400000000000,It=[1,gs,St,wt,Ia,Sa,O],Nt=wr.slice(0,6),ni=cr(Nt),Bl=["offset"],Jl=["timeZone"],Xl=Nt.concat(Bl),Ql=Xl.concat(Jl),di=["era","eraYear"],Uc=di.concat(["year"]),Aa=["year"],Fo=["monthCode"],$o=["month"].concat(Fo),xr=["day"],Zo=$o.concat(Aa),Yl=Fo.concat(Aa),Ht=xr.concat(Zo),Vc=xr.concat($o),tu=xr.concat(Fo),su=ks(Nt,0),x="iso8601",Ka="gregory",Ss="japanese",ru={[Ka]:{bce:-1,ce:0},[Ss]:{bce:-1,ce:0,meiji:1867,taisho:1911,showa:1925,heisei:1988,reiwa:2018},ethioaa:{era0:0},ethiopic:{era0:0,era1:5500},coptic:{era0:-1,era1:0},roc:{beforeroc:-1,minguo:0},buddhist:{be:0},islamic:{ah:0},indian:{saka:0},persian:{ap:0}},Gc={chinese:13,dangi:13,hebrew:-6},K=w(Qr,"string"),au=w(Qr,"boolean"),Wc=w(Qr,"number"),iu=w(Qr,"function"),R=wr.map((t)=>t+"s"),jo=cr(R),_c=R.slice(0,6),ou=R.slice(6),zc=ou.slice(1),Bc=_l(R),_=ks(R,0),Lo=ks(_c,0),ko=w(an,R),Dt=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],No=["isoDay","isoMonth","isoYear"],qa=Dt.concat(No),Uo=cr(No),eu=cr(Dt),nu=cr(qa),xt=ks(eu,0),Jc=w(an,qa),ts=Intl.DateTimeFormat,du="en-GB",Vo=1e8,Xc=Vo*dt,Qc=[Vo,0],Yc=[-Vo,0],dr=275760,lr=-271821,tp=1970,As=1972,Et=12,sp=qs(1868,9,8),rp=lt(rc,WeakMap),zr="smallestUnit",li="unit",ir="roundingIncrement",si="fractionalSecondDigits",lu="relativeTo",uu={constrain:0,reject:1},ap=Object.keys(uu),ip={compatible:0,reject:1,earlier:2,later:3},op={reject:0,use:1,prefer:2,ignore:3},ep={auto:0,never:1,critical:2,always:3},np={auto:0,never:1,critical:2},dp={auto:0,never:1},lp={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},Cr=w(Si,zr),Go=w(Si,"largestUnit"),up=w(Si,li),cu=w(ps,"overflow",uu),pu=w(ps,"disambiguation",ip),cp=w(ps,"offset",op),Wo=w(ps,"calendarName",ep),pp=w(ps,"timeZoneName",np),mp=w(ps,"offset",dp),Rr=w(ps,"roundingMode",lp),Ns="PlainYearMonth",Us="PlainMonthDay",ws="PlainDate",xs="PlainDateTime",va="PlainTime",Ut="ZonedDateTime",Ea="Instant",Fa="Duration",Tp=[Math.floor,(t)=>vr(t)?Math.floor(t):Math.round(t),Math.ceil,(t)=>vr(t)?Math.ceil(t):Math.round(t),Math.trunc,(t)=>vr(t)?Math.trunc(t)||0:Math.round(t),(t)=>t<0?Math.floor(t):Math.ceil(t),(t)=>Math.sign(t)*Math.round(Math.abs(t))||0,(t)=>vr(t)?(t=Math.trunc(t)||0)+t%2:Math.round(t)],Cs="UTC",Zr=5184000,Pp=Nr(1847),hp=Nr(new Date().getUTCFullYear()+10),fp=/0+$/,rt=lt(dc,WeakMap),Be=4294967295,$a=lt((t)=>{let s=uo(t);return typeof s=="object"?new Tu(s):new mu(s||0)});class mu{constructor(t){this.v=t}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(t){return[xi(t,this.v)]}l(){}}class Tu{constructor(t){this.$=((s)=>{function r(d){let l=ri(d,e,n),[u,c]=Ue(l),p=i(u),m=i(c);return p===m?p:a(o(u,c),p,m,d)}function a(d,l,u,c){let p,m;for(;(c===void 0||(p=c<d[0]?l:c>=d[1]?u:void 0)===void 0)&&(m=d[1]-d[0]);){let T=d[0]+Math.floor(m/2);s(T)===u?d[1]=T:d[0]=T+1}return p}let i=lt(s),o=lt(lc),e=Pp,n=hp;return{G(d){let l=r(d-86400),u=r(d+86400),c=d-l,p=d-u;if(l===u)return[c];let m=r(c);return m===r(p)?[d-m]:l>u?[c,p]:[]},V:r,l(d,l){let u=ri(d,e,n),[c,p]=Ue(u),m=Zr*l,T=l<0?()=>p>e||(e=u,0):()=>c<n||(n=u,0);for(;T();){let P=i(c),h=i(p);if(P!==h){let y=o(c,p);a(y,P,h);let f=y[0];if((Vt(f,d)||1)===l)return f}c+=m,p+=m}}}})(((s)=>(r)=>{let a=gi(s,r*zl);return Nr($d(a),parseInt(a.month),parseInt(a.day),parseInt(a.hour),parseInt(a.minute),parseInt(a.second))-r})(t))}getOffsetNanosecondsFor(t){return this.$.V(yn(t))*wt}getPossibleInstantsFor(t){let[s,r]=[Nr((a=t).isoYear,a.isoMonth,a.isoDay,a.isoHour,a.isoMinute,a.isoSecond),a.isoMillisecond*St+a.isoMicrosecond*gs+a.isoNanosecond];var a;return this.$.G(s).map((i)=>ht(Ms(Is(i,wt),r)))}l(t,s){let[r,a]=gn(t),i=this.$.l(r+(s>0||a?1:0),s);if(i!==void 0)return Is(i,wt)}}var _o="([+\u2212-])",jr="(?:[.,](\\d{1,9}))?",Pu=`(?:(?:${_o}(\\d{6}))|(\\d{4}))-?(\\d{2})`,zo="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+jr+")?)?",Bo=_o+zo,yp=Pu+"-?(\\d{2})(?:[T ]"+zo+"(Z|"+Bo+")?)?",hu="\\[(!?)([^\\]]*)\\]",Za=`((?:${hu}){0,9})`,gp=js(Pu+Za),wp=js("(?:--)?(\\d{2})-?(\\d{2})"+Za),xp=js(yp+Za),Cp=js("T?"+zo+"(?:"+Bo+")?"+Za),Rp=js(Bo),Op=new RegExp(hu,"g"),bp=js(`${_o}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${jr}H)?(?:(\\d+)${jr}M)?(?:(\\d+)${jr}S)?)?`),Hp=lt((t)=>new ts(du,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Dp=/^(AC|AE|AG|AR|AS|BE|BS|CA|CN|CS|CT|EA|EC|IE|IS|JS|MI|NE|NS|PL|PN|PR|PS|SS|VS)T$/,Mp=lt(pc),Jo=lt((t)=>new ts(du,{calendar:t,timeZone:Cs,era:"short",year:"numeric",month:"short",day:"numeric"})),Ip=/^M(\d{2})(L?)$/,Sp={era:kr,eraYear:Q,year:Q,month:je,monthCode:kr,day:je},Ap=ks(Nt,Q),Kp=ks(R,Pn),Je=Object.assign({},Sp,Ap,Kp,{offset:kr}),qp=w(sc,Nt,Dt),Xe={dateAdd(t,s,r){let a=C(r),i,{years:o,months:e,weeks:n,days:d}=s;if(d+=N(s,5)[0],o||e)i=((l,u,c,p,m)=>{let[T,P,h]=l.h(u);if(c){let[y,f]=l.I(T,P);T+=c,P=_r(y,f,l.U(T)),P=yt("month",P,1,l.L(T),m)}return p&&([T,P]=l._(T,P,p)),h=yt("day",h,1,l.j(T,P),m),l.q(T,P,h)})(this,t,o,e,a);else{if(!n&&!d)return t;i=st(t)}return i+=(7*n+d)*dt,Gt(ra(i))},dateUntil(t,s,r){if(r<=7){let d=0,l=Ed({...t,...xt},{...s,...xt});return r===7&&([d,l]=_t(l,7)),{..._,weeks:d,days:l}}let a=this.h(t),i=this.h(s),[o,e,n]=((d,l,u,c,p,m,T)=>{let P=p-l,h=m-u,y=T-c;if(P||h){let f=Math.sign(P||h),g=d.j(p,m),E=0;if(Math.sign(y)===-f){let S=g;[p,m]=d._(p,m,-f),P=p-l,h=m-u,g=d.j(p,m),E=f<0?-S:g}if(y=T-Math.min(c,g)+E,P){let[S,M]=d.I(l,u),[A,G]=d.I(p,m);if(h=A-S||Number(G)-Number(M),Math.sign(h)===-f){let k=f<0&&-d.L(p);P=(p-=f)-l,h=m-_r(S,M,d.U(p))+(k||d.L(p))}}}return[P,h,y]})(this,...a,...i);return r===8&&(e+=this.J(o,a[0]),o=0),{..._,years:o,months:e,days:n}},dateFromFields(t,s){let r=C(s),a=Qa(this,t),i=Ya(this,t,a,r),o=_e(this,t,i,a,r);return Z(Gt(this.P(a,i,o)),this.id||x)},yearMonthFromFields(t,s){let r=C(s),a=Qa(this,t),i=Ya(this,t,a,r);return ds(wi(this.P(a,i,1)),this.id||x)},monthDayFromFields(t,s){let r=C(s),a=!this.id,{monthCode:i,year:o,month:e}=t,n,d,l,u,c;if(i!==void 0){[n,d]=kd(i),c=Ye(t,"day");let p=this.N(n,d,c);if(!p)throw new RangeError(ze);if([l,u]=p,e!==void 0&&e!==u)throw new RangeError(Nl);a&&(u=yt("month",u,1,Et,1),c=yt("day",c,1,Ci(o!==void 0?o:l,u),r))}else{l=o===void 0&&a?As:Qa(this,t),u=Ya(this,t,l,r),c=_e(this,t,u,l,r);let p=this.U(l);d=u===p,n=ii(u,p);let m=this.N(n,d,c);if(!m)throw new RangeError(ze);[l,u]=m}return Ur(Gt(this.P(l,u,c)),this.id||x)},fields(t){return oi(this)&&t.includes("year")?[...t,...di]:t},mergeFields(t,s){let r=Object.assign(Object.create(null),t);return ti(r,s,$o),oi(this)&&(ti(r,s,Uc),this.id===Ss&&ti(r,s,Vc,di)),r},inLeapYear(t){let[s]=this.h(t);return this.K(s)},monthsInYear(t){let[s]=this.h(t);return this.L(s)},daysInMonth(t){let[s,r]=this.h(t);return this.j(s,r)},daysInYear(t){let[s]=this.h(t);return this.X(s)},dayOfYear:xo,era(t){return this.ee(t)[0]},eraYear(t){return this.ee(t)[1]},monthCode(t){let[s,r]=this.h(t),[a,i]=this.I(s,r);return((o,e)=>"M"+gt(o)+(e?"L":""))(a,i)},dayOfWeek:On,daysInWeek(){return 7}},vp={dayOfYear:xo,h:xn,q:qs},Ep=Object.assign({},vp,{weekOfYear:jd,yearOfWeek:Ld,R(t){function s(m){return(7-m<a?7:0)-m}function r(m){let T=Rn(p+m),P=m||1,h=s(ar(d+T*P,7));return u=(T+(h-l)*P)/7}let a=this.id?1:4,i=On(t),o=this.dayOfYear(t),e=ar(i-1,7),n=o-1,d=ar(e-n,7),l=s(d),u,c=Math.floor((n-l)/7)+1,p=t.isoYear;return c?c>r(0)&&(c=1,p++):(c=r(-1),p--),[c,p,u]}}),Fp={dayOfYear:xo,h:ai,q:nr,weekOfYear:jd,yearOfWeek:Ld,R(){return[]}},Vs=Pc(Object.assign({},Xe,Ep,{h:xn,ee(t){return this.id===Ka?bn(t):this.id===Ss?rp(t):[]},I:(t,s)=>[s,0],N(t,s){if(!s)return[As,t]},K:Ri,U(){},L:Cn,J:(t)=>t*Et,j:Ci,X:Rn,P:(t,s,r)=>({isoYear:t,isoMonth:s,isoDay:r}),q:qs,_:(t,s,r)=>(t+=Jr(r,Et),(s+=mi(r,Et))<1?(t--,s+=Et):s>Et&&(t++,s-=Et),[t,s]),year(t){return t.isoYear},month(t){return t.isoMonth},day:(t)=>t.isoDay}),Object.assign({},Xe,Fp,{h:ai,ee(t){let s=this.O(t);return[s.era,s.eraYear]},I(t,s){let r=Er.call(this,t);return[ii(s,r),r===s]},N(t,s,r){let[a,i,o]=ai.call(this,{isoYear:As,isoMonth:Et,isoDay:31}),e=Er.call(this,a),n=i===e;(Vt(t,ii(i,e))||Vt(Number(s),Number(n))||Vt(r,o))===1&&a--;for(let d=0;d<100;d++){let l=a-d,u=Er.call(this,l),c=_r(t,s,u);if(s===(c===u)&&r<=Ge.call(this,l,c))return[l,c]}},K(t){let s=Fr.call(this,t);return s>Fr.call(this,t-1)&&s>Fr.call(this,t+1)},U:Er,L:$r,J(t,s){let r=s+t,a=Math.sign(t),i=a<0?-1:0,o=0;for(let e=s;e!==r;e+=a)o+=$r.call(this,e+i);return o},j:Ge,X:Fr,P(t,s,r){return ra(nr.call(this,t,s,r))},q:nr,_(t,s,r){if(r){if(s+=r,!Number.isSafeInteger(s))throw new RangeError(Da);if(r<0)for(;s<1;)s+=$r.call(this,--t);else{let a;for(;s>(a=$r.call(this,t));)s-=a,t++}}return[t,s]},year(t){return this.O(t).year},month(t){let{year:s,F:r}=this.O(t),{C:a}=this.B(s);return a[r]+1},day(t){return this.O(t).day}})),Wt="numeric",Gs=["timeZoneName"],fu={month:Wt,day:Wt},Xo={year:Wt,month:Wt},Qo=Object.assign({},Xo,{day:Wt}),Yo={hour:Wt,minute:Wt,second:Wt},te=Object.assign({},Qo,Yo),$p=Object.assign({},te,{timeZoneName:"short"}),Zp=Object.keys(Xo),jp=Object.keys(fu),Lp=Object.keys(Qo),kp=Object.keys(Yo),se=["dateStyle"],Np=Zp.concat(se),Up=jp.concat(se),re=Lp.concat(se,["weekday"]),Or=kp.concat(["dayPeriod","timeStyle"]),ae=re.concat(Or),Vp=ae.concat(Gs),Gp=Gs.concat(Or),Wp=Gs.concat(re),_p=Gs.concat(["day","weekday"],Or),zp=Gs.concat(["year","weekday"],Or),Bp={},ie=[ys(ae,te),na],yu=[ys(Vp,$p),na,0,(t,s)=>{let r=W(t.timeZone);if(s&&W(s.timeZone)!==r)throw new RangeError(Vl);return r}],oe=[ys(ae,te,Gs),st],ee=[ys(re,Qo,Gp),st],ne=[ys(Or,Yo,Wp),(t)=>zt(t)/St],de=[ys(Np,Xo,_p),st,1],le=[ys(Up,fu,zp),st,1],Qe;function qt(t,s,r,a,i){function o(...d){if(!(this instanceof o))throw new TypeError(vo);Cu(this,s(...d))}function e(d,l){return Object.defineProperties(function(...u){return d.call(this,n(this),...u)},ui(l))}function n(d){let l=X(d);if(!l||l.branding!==t)throw new TypeError(vo);return l}return Object.defineProperties(o.prototype,{...tn(Ct(e,r)),...us(Ct(e,a)),...Br("Temporal."+t)}),Object.defineProperties(o,{...us(i),...ui(t)}),[o,(d)=>{let l=Object.create(o.prototype);return Cu(l,d),l},n]}function bu(t){return t=t.concat("id").sort(),(s)=>{if(!sn(s,t))throw new TypeError(Ul);return s}}function Bs(t){if(X(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(jl);return t}function ja(t,s){let r={};for(let a in t)r[a]=({o:i},o)=>{let e=X(o)||{},{branding:n}=e,d=n===ws||s.includes(n)?e:ot(o);return i[a](d)};return r}function pe(t){let s={};for(let r in t)s[r]=(a)=>{let{calendar:i}=a;return(o=i,typeof o=="string"?Vs(o):(e=o,Object.assign(Object.create(cm),{i:e})))[r](a);var o,e};return s}function os(){throw new TypeError(kl)}function Hr({calendar:t}){return typeof t=="string"?new xe(t):t}function gu(t,s){if(s=F(s),U(t)){let a=X(t);if(a&&a.branding===Us)return C(s),a;let i=Mu(t);return Oo(Wa(i||x),!i,t,s)}let r=cd(Vs,t);return C(s),r}function Hu(t,s,r){return a=s.call(t,it(V(r))),Vi(pr(a));var a}function La(t,s=Ku){let r=Object.keys(s).sort(),a={};for(let i of r)a[i]=w(s[i],t,iu(t[i]));return a}function b(t,s){return typeof t=="string"?$a(t):La(t,s)}function L(t){return b(t,ce)}function At(t){if(U(t)){let s=X(t);if(s)switch(s.branding){case Ea:return s;case Ut:return V(s.epochNanoseconds)}}return ed(t)}function wu(t,s,r){let a=s.l(At(r).epochNanoseconds,t);return a?it(V(a)):null}function D(t){return U(t)?(X(t)||{}).timeZone||fm(t):((s)=>wa(Pd(K(s))))(t)}function ss(t,s){if(U(t)){let r=X(t)||{};switch(r.branding){case va:return C(s),r;case xs:return C(s),bt(r);case Ut:return C(s),So(L,r)}return zd(t,s)}return C(s),pd(t)}function me(t){return t===void 0?void 0:ss(t)}function Ws(t,s){if(s=F(s),U(t)){let a=X(t);return a&&a.branding===Ns?(C(s),a):Ro(Va(Dr(t)),t,s)}let r=ud(Vs,t);return C(s),r}function rs(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case xs:return C(s),a;case ws:return C(s),$({...a,...xt});case Ut:return C(s),Mo(L,a)}return _d(Ga(Dr(t)),t,s)}let r=ld(t);return C(s),r}function ot(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case ws:return C(s),a;case xs:return C(s),Z(a);case Ut:return C(s),Io(L,a)}return Co(Ga(Dr(t)),t,s)}let r=ya(t);return C(s),r}function Du(t,s,r){return Rt(s.call(t,v(Z(r,t))))}function vt(t){return(s)=>typeof s=="string"?Vs(s):((r,a)=>{let i=Object.keys(a).sort(),o={};for(let e of i)o[e]=w(a[e],r,r[e]);return o})(s,t)}function q(t){if(U(t)){let s=X(t);return s&&s.branding===Fa?s:Bd(t)}return md(t)}function br(t){if(t!==void 0){if(U(t)){let s=X(t)||{};switch(s.branding){case Ut:case ws:return s;case xs:return Z(s)}let r=Dr(t);return{...Gd(D,b,Ga(r),t),calendar:r}}return nd(t)}}function Dr(t){return Mu(t)||x}function Mu(t){let{calendar:s}=t;if(s!==void 0)return J(s)}function J(t){return U(t)?(X(t)||{}).calendar||Km(t):((s)=>Pr(Td(K(s))))(t)}function _s(t,s){if(s=F(s),U(t)){let r=X(t);if(r&&r.branding===Ut)return mr(s),r;let a=Dr(t);return Wd(D,b,Ga(a),a,t,s)}return dd(t,s)}function xu(t){return Ct((s)=>(r)=>s(ue(r)),t)}function ue(t){return rt(t,L)}function Jp(){let t=ts.prototype,s=Object.getOwnPropertyDescriptors(t),r=Object.getOwnPropertyDescriptors(ts),a=function(i,o={}){if(!(this instanceof a))return new a(i,o);Ce.set(this,((e,n={})=>{let d=new ts(e,n),l=d.resolvedOptions(),u=l.locale,c=ct(Object.keys(n),l),p=lt(Yp),m=(...T)=>{let P,h=T.map((y,f)=>{let g=X(y),E=(g||{}).branding;if(f&&P&&P!==E)throw new TypeError(Wl);return P=E,g});return P?p(P)(u,c,...h):[d,...T]};return m.u=d,m})(i,o))};for(let i in s){let o=s[i],e=i.startsWith("format")&&Xp(i);typeof o.value=="function"?o.value=i==="constructor"?a:e||Qp(i):e&&(o.get=function(){return e.bind(this)})}return r.prototype.value=Object.create(t,s),Object.defineProperties(a,r),a}function Xp(t){return function(...s){let r=Ce.get(this),[a,...i]=r(...s);return a[t](...i)}}function Qp(t){return function(...s){return Ce.get(this).u[t](...s)}}function Yp(t){let s=tm[t];if(!s)throw new TypeError(Gl(t));return Lt(s,lt(Ao))}var tm={Instant:ie,PlainDateTime:oe,PlainDate:ee,PlainTime:ne,PlainYearMonth:de,PlainMonthDay:le},sm=Lt(ie),rm=Lt(yu),am=Lt(oe),im=Lt(ee),om=Lt(ne),em=Lt(de),nm=Lt(le),Te={era:ln,eraYear:Ti,year:pr,month:Rt,daysInMonth:Rt,daysInYear:Rt,inLeapYear:au,monthsInYear:Rt},Na={monthCode:K},Pe={day:Rt},Iu={dayOfWeek:Rt,dayOfYear:Rt,weekOfYear:un,yearOfWeek:Ti,daysInWeek:Rt},Su=Object.assign({},Te,Na,Pe,Iu),ka=new WeakMap,X=ka.get.bind(ka),Cu=ka.set.bind(ka),dm={...ja(Te,[Ns]),...ja(Iu,[]),...ja(Na,[Ns,Us]),...ja(Pe,[Us])},he=pe(Su),lm=pe({...Te,...Na}),um=pe({...Na,...Pe}),Mr={calendarId:(t)=>W(t.calendar)},cm=Ct((t,s)=>function(r){let{i:a}=this;return t(a[s](v(Z(r,a))))},Su),pm=ur((t)=>(s)=>s[t],R.concat("sign")),fe=ur((t,s)=>(r)=>r[Dt[s]],Nt),Au={epochSeconds:Kn,epochMilliseconds:na,epochMicroseconds:qn,epochNanoseconds:vn},Ir=w(ci,new Set(["branding"])),[mm,zs,Tm]=qt(Us,w(ll,J),{...Mr,...um},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return zs(tl(Im,t,this,Bs(s),r))},equals:(t,s)=>Id(t,gu(s)),toPlainDate(t,s){return v(Rl(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=nm(s,r,t);return a.format(i)},toString:ji,toJSON:(t)=>ji(t),valueOf:os},{from:(t,s)=>zs(gu(t,s))}),Ku={getOffsetNanosecondsFor:Hu,getPossibleInstantsFor(t,s,r){let a=[...s.call(t,B($(r,x)))].map((o)=>hm(o).epochNanoseconds),i=a.length;return i>1&&(a.sort(tt),Gi(Pt(Tt(a[0],a[i-1])))),a}},ce={getOffsetNanosecondsFor:Hu},[Pm,it,hm]=qt(Ea,il,Au,{add:(t,s)=>it(Wi(0,t,q(s))),subtract:(t,s)=>it(Wi(1,t,q(s))),until:(t,s,r)=>H(To(0,t,At(s),r)),since:(t,s,r)=>H(To(1,t,At(s),r)),round:(t,s)=>it($n(t,s)),equals:(t,s)=>Od(t,At(s)),toZonedDateTime(t,s){let r=Zt(s);return j(Do(t,D(r.timeZone),J(r.calendar)))},toZonedDateTimeISO:(t,s)=>j(Do(t,D(s))),toLocaleString(t,s,r){let[a,i]=sm(s,r,t);return a.format(i)},toString:(t,s)=>vi(D,L,t,s),toJSON:(t)=>vi(D,L,t),valueOf:os},{from:(t)=>it(At(t)),fromEpochSeconds:(t)=>it(Hl(t)),fromEpochMilliseconds:(t)=>it(Dl(t)),fromEpochMicroseconds:(t)=>it(Ml(t)),fromEpochNanoseconds:(t)=>it(Il(t)),compare:(t,s)=>co(At(t),At(s))}),[Ua,PT]=qt("TimeZone",(t)=>{let s=Cd(t);return{branding:"TimeZone",id:s,o:$a(s)}},{id:(t)=>t.id},{getPossibleInstantsFor:({o:t},s)=>t.getPossibleInstantsFor(rs(s)).map((r)=>it(V(r))),getOffsetNanosecondsFor:({o:t},s)=>t.getOffsetNanosecondsFor(At(s).epochNanoseconds),getOffsetStringFor(t,s){let r=At(s).epochNanoseconds,a=La(this,ce).getOffsetNanosecondsFor(r);return ms(a)},getPlainDateTimeFor(t,s,r=x){let a=At(s).epochNanoseconds,i=La(this,ce).getOffsetNanosecondsFor(a);return B($(Jt(a,i),J(r)))},getInstantFor(t,s,r){let a=rs(s),i=Oi(r),o=La(this);return it(V(ut(o,a,i)))},getNextTransition:({o:t},s)=>wu(1,t,s),getPreviousTransition:({o:t},s)=>wu(-1,t,s),equals(t,s){return!!Ca(this,D(s))},toString:(t)=>t.id,toJSON:(t)=>t.id},{from(t){let s=D(t);return typeof s=="string"?new Ua(s):s}}),fm=bu(Object.keys(Ku)),[ym,as]=qt(va,ul,fe,{getISOFields:Ir,with(t,s,r){return as(sl(this,Bs(s),r))},add:(t,s)=>as(Xi(0,t,q(s))),subtract:(t,s)=>as(Xi(1,t,q(s))),until:(t,s,r)=>H(go(0,t,ss(s),r)),since:(t,s,r)=>H(go(1,t,ss(s),r)),round:(t,s)=>as(Ln(t,s)),equals:(t,s)=>Sd(t,ss(s)),toZonedDateTime:(t,s)=>j(Ol(D,ot,b,t,s)),toPlainDateTime:(t,s)=>B(bl(t,ot(s))),toLocaleString(t,s,r){let[a,i]=om(s,r,t);return a.format(i)},toString:Li,toJSON:(t)=>Li(t),valueOf:os},{from:(t,s)=>as(ss(t,s)),compare:(t,s)=>xa(ss(t),ss(s))}),[gm,is,wm]=qt(Ns,w(dl,J),{...Mr,...lm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return is(Yd(Mm,t,this,Bs(s),r))},add:(t,s,r)=>is(Ji(Ru,0,t,q(s),r)),subtract:(t,s,r)=>is(Ji(Ru,1,t,q(s),r)),until:(t,s,r)=>H(yo(Ou,0,t,Ws(s),r)),since:(t,s,r)=>H(yo(Ou,1,t,Ws(s),r)),equals:(t,s)=>Md(t,Ws(s)),toPlainDate(t,s){return v(Cl(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=em(s,r,t);return a.format(i)},toString:Zi,toJSON:(t)=>Zi(t),valueOf:os},{from:(t,s)=>is(Ws(t,s)),compare:(t,s)=>hs(Ws(t),Ws(s))}),[xm,B]=qt(xs,w(el,J),{...Mr,...he,...fe},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return B(Xd(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>B(Ha(t,J(s))),withPlainDate:(t,s)=>B(ql(t,ot(s))),withPlainTime:(t,s)=>B(Kl(t,me(s))),add:(t,s,r)=>B(zi(Rs,0,t,q(s),r)),subtract:(t,s,r)=>B(zi(Rs,1,t,q(s),r)),until:(t,s,r)=>H(ho(Kt,0,t,rs(s),r)),since:(t,s,r)=>H(ho(Kt,1,t,rs(s),r)),round:(t,s)=>B(jn(t,s)),equals:(t,s)=>Hd(t,rs(s)),toZonedDateTime:(t,s,r)=>j(Pl(b,t,D(s),r)),toPlainDate:(t)=>v(Z(t)),toPlainTime:(t)=>as(bt(t)),toPlainYearMonth(t){return is(hl(Va,t,this))},toPlainMonthDay(t){return zs(fl(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=am(s,r,t);return a.format(i)},toString:Fi,toJSON:(t)=>Fi(t),valueOf:os},{from:(t,s)=>B(rs(t,s)),compare:(t,s)=>mo(rs(t),rs(s))}),[Cm,v,qu]=qt(ws,w(nl,J),{...Mr,...he},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return v(Qd(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>v(Ha(t,J(s))),add:(t,s,r)=>v(Bi(Rs,0,t,q(s),r)),subtract:(t,s,r)=>v(Bi(Rs,1,t,q(s),r)),until:(t,s,r)=>H(fo(Kt,0,t,ot(s),r)),since:(t,s,r)=>H(fo(Kt,1,t,ot(s),r)),equals:(t,s)=>Dd(t,ot(s)),toZonedDateTime(t,s){let r=!U(s)||s instanceof Ua?{timeZone:s}:s;return j(yl(D,ss,b,t,r))},toPlainDateTime:(t,s)=>B(gl(t,me(s))),toPlainYearMonth(t){return is(wl(Va,t,this))},toPlainMonthDay(t){return zs(xl(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=im(s,r,t);return a.format(i)},toString:$i,toJSON:(t)=>$i(t),valueOf:os},{from:(t,s)=>v(ot(t,s)),compare:(t,s)=>hs(ot(t),ot(s))}),ye={fields(t,s,r){return[...s.call(t,r)]}},vu=Object.assign({dateFromFields(t,s,r,a){return qu(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Eu=Object.assign({yearMonthFromFields(t,s,r,a){return wm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Fu=Object.assign({monthDayFromFields(t,s,r,a){return Tm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),ge={mergeFields(t,s,r,a){return Zt(s.call(t,Object.assign(Object.create(null),r),Object.assign(Object.create(null),a)))}},Rm=Object.assign({},vu,ge),Om=Object.assign({},Eu,ge),bm=Object.assign({},Fu,ge),we={dateAdd(t,s,r,a,i){return qu(s.call(t,v(Z(r,t)),H(I(a)),i))}},$u=Object.assign({},we,{dateUntil(t,s,r,a,i,o){return Am(s.call(t,v(Z(r,t)),v(Z(a,t)),Object.assign(Object.create(null),o,{largestUnit:wr[i]})))}}),Hm=Object.assign({},we,{day:Du}),Dm=Object.assign({},$u,{day:Du}),Va=vt(Eu),Ga=vt(vu),Wa=vt(Fu),Mm=vt(Om),Sr=vt(Rm),Im=vt(bm),Rs=vt(we),Kt=vt($u),Ru=vt(Hm),Ou=vt(Dm),[Sm,H,Am]=qt(Fa,cl,{...pm,blank:ad},{with:(t,s)=>H(rl(t,s)),negated:(t)=>H(ha(t)),abs:(t)=>H(rd(t)),add:(t,s,r)=>H(ro(br,Kt,b,0,t,q(s),r)),subtract:(t,s,r)=>H(ro(br,Kt,b,1,t,q(s),r)),round:(t,s)=>H(sd(br,Kt,b,t,s)),total:(t,s)=>Fn(br,Kt,b,t,s),toLocaleString(t,s,r){return Intl.DurationFormat?new Intl.DurationFormat(s,r).format(this):ca(t)},toString:ca,toJSON:(t)=>ca(t),valueOf:os},{from:(t)=>H(q(t)),compare:(t,s,r)=>Rd(br,Rs,b,q(t),q(s),r)}),Zu={toString:(t)=>t.id,toJSON:(t)=>t.id,...dm,dateAdd:({id:t,o:s},r,a,i)=>v(Z(s.dateAdd(ot(r),q(a),i),t)),dateUntil:({o:t},s,r,a)=>H(I(t.dateUntil(ot(s),ot(r),Dn(a)))),dateFromFields:({id:t,o:s},r,a)=>v(Co(s,r,a,dn(t))),yearMonthFromFields:({id:t,o:s},r,a)=>is(Ro(s,r,a,en(t))),monthDayFromFields:({id:t,o:s},r,a)=>zs(Oo(s,0,r,a,nn(t))),fields({o:t},s){let r=new Set(Ht),a=[];for(let i of s){if(K(i),!r.has(i))throw new RangeError(qo(i));r.delete(i),a.push(i)}return t.fields(a)},mergeFields:({o:t},s,r)=>t.mergeFields(pi(Pi(s)),pi(Pi(r)))},[xe]=qt("Calendar",(t)=>{let s=Zd(t);return{branding:"Calendar",id:s,o:Vs(s)}},{id:(t)=>t.id},Zu,{from(t){let s=J(t);return typeof s=="string"?new xe(s):s}}),Km=bu(Object.keys(Zu).slice(4)),[qm,j]=qt(Ut,w(ol,J,D),{...Au,...Mr,...xu(he),...xu(fe),offset:(t)=>ms(ue(t).offsetNanoseconds),offsetNanoseconds:(t)=>ue(t).offsetNanoseconds,timeZoneId:(t)=>W(t.timeZone),hoursInDay:(t)=>kn(b,t)},{getISOFields:(t)=>Yn(L,t),getCalendar:Hr,getTimeZone:({timeZone:t})=>typeof t=="string"?new Ua(t):t,with(t,s,r){return j(Jd(Sr,b,t,this,Bs(s),r))},withCalendar:(t,s)=>j(Ha(t,J(s))),withTimeZone:(t,s)=>j(vl(t,D(s))),withPlainDate:(t,s)=>j(Al(b,t,ot(s))),withPlainTime:(t,s)=>j(Sl(b,t,me(s))),add:(t,s,r)=>j(_i(Rs,b,0,t,q(s),r)),subtract:(t,s,r)=>j(_i(Rs,b,1,t,q(s),r)),until:(t,s,r)=>H(I(Po(Kt,b,0,t,_s(s),r))),since:(t,s,r)=>H(I(Po(Kt,b,1,t,_s(s),r))),round:(t,s)=>j(Zn(b,t,s)),startOfDay:(t)=>j(Nn(b,t)),equals:(t,s)=>bd(t,_s(s)),toInstant:(t)=>it(pl(t)),toPlainDateTime:(t)=>B(Mo(L,t)),toPlainDate:(t)=>v(Io(L,t)),toPlainTime:(t)=>as(So(L,t)),toPlainYearMonth(t){return is(ml(Va,t,this))},toPlainMonthDay(t){return zs(Tl(Wa,t,this))},toLocaleString(t,s,r={}){let[a,i]=rm(s,r,t);return a.format(i)},toString:(t,s)=>Ei(L,t,s),toJSON:(t)=>Ei(L,t),valueOf:os},{from:(t,s)=>j(_s(t,s)),compare:(t,s)=>po(_s(t),_s(s))}),vm=Object.defineProperties({},{...Br("Temporal.Now"),...us({timeZoneId:()=>kt(),instant:()=>it(V(fr())),zonedDateTime:(t,s=kt())=>j(z(fr(),D(s),J(t))),zonedDateTimeISO:(t=kt())=>j(z(fr(),D(t),x)),plainDateTime:(t,s=kt())=>B($(Ls(L(D(s))),J(t))),plainDateTimeISO:(t=kt())=>B($(Ls(L(D(t))),x)),plainDate:(t,s=kt())=>v(Z(Ls(L(D(s))),J(t))),plainDateISO:(t=kt())=>v(Z(Ls(L(D(t))),x)),plainTimeISO:(t=kt())=>as(bt(Ls(L(D(t)))))})}),Ar=Object.defineProperties({},{...Br("Temporal"),...us({PlainYearMonth:gm,PlainMonthDay:mm,PlainDate:Cm,PlainTime:ym,PlainDateTime:xm,ZonedDateTime:qm,Instant:Pm,Calendar:xe,TimeZone:Ua,Duration:Sm,Now:vm})}),Em=Jp(),Ce=new WeakMap,Fm=Object.defineProperties(Object.create(Intl),us({DateTimeFormat:Em}));class za extends _a{provider;static _name="AuthenticationServiceContainer";constructor(t){super();this.provider=t}async getSession(t,s){let r=await this.provider.adapter.findSession({token:t,userAgent:s}),a=null;if(r?.user)a=await this.provider.extendSession(r.user),r.user.extension=a;return r}async generateMagicLink(t){}async upsertSession(t){await this.provider.adapter.findSession({token:"",userAgent:""})}async authenticate(t){try{let s=await this.provider.adapter.findUserByEmailAddress(t,!1),r=await this.createOrUpdateSession({email:t,id:s.id});return new tr().ctx().setCookie("access_token",r.token,{expires:r.expiresAt}),!0}catch(s){console.log(s)}return!1}async createOrUpdateSession(t){let s=this.provider,r=new tr,a=r.headers.get("User-Agent"),i=new Bun.CryptoHasher("sha256");i.update(`${t.email}${a}`);let o=i.digest("hex"),e=await s.adapter.findSession({token:o,userAgent:r.headers.get("User-Agent")});if(!e){let n=t.id;if(!n){let{id:d}=await s.adapter.findUserByEmailAddress(t.email,!1);n=d}e=await s.adapter.createSession({token:o,userId:n,userAgent:r.headers.get("User-Agent"),expiresAt:new Date(Ar.Now.instant().add({hours:s.sessionExpiresInHours}).toString()),absoluteExpiresAt:new Date(Ar.Now.instant().add({hours:s.sessionAbsoluteExpiresInHours}).toString())})}else e=await s.adapter.updateSession({token:o,expiresAt:new Date(Ar.Now.instant().add({hours:s.sessionExpiresInHours}).toString())});return e}async createMagicLinkToken(t){let s=za.use()?.provider,r=await s.adapter.findUserByEmailAddress(t,!1);if(r){await s.adapter.deleteMagicLinkToken(t);let a=await s.generateMagicLinkToken(t),i=(parseInt($m(4).toString("hex"),16)%1e6).toString().padStart(6,"0");return await s.adapter.createMagicLinkToken({email:t,token:a,pin:i}),{user:r,email:t,pin:i,token:a}}}}class ju extends mt{async run(t){let s=Os.getStore(),r=s.req.cookies.get("access_token"),a=s.req.headers.get("access_token"),i=r||a;if(!i)throw new sr;let o=s.user;if(!o){let e=await za.use().getSession(i,s.req.headers.get("User-Agent"));if(!e)throw new sr;o=e?.user,s.setUser(o)}return{}}}class Lu extends mt{async run(...t){let[s="public",r="864000",...a]=t,i=`${s}, max-age=${r}${a.length>0?", ":""}${a.join(", ")}`;if(t.length===0)i="public, max-age=864000, stale-while-revalidate=300, stale-if-error=600";if(t.length===1&&t[0]==="public")i="public, max-age=864000, stale-while-revalidate=300, stale-if-error=600";if(t.length===1&&t[0]==="private")i="private, max-age=0, stale-while-revalidate=300, stale-if-error=600";if(this.req.rawRequest.method==="GET")this.req.ctx().setHeaders("Cache-Control",i);return{}}}var Zm={"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With","Access-Control-Allow-Credentials":"true"};class ku extends mt{config={origins:{"":{"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With","Access-Control-Allow-Credentials":"true"}}};run(){let t=this.req,s=t.rawRequest.headers.get("Origin");if(this.config.origins[s]){t.ctx().setHeaders("Access-Control-Allow-Origin",s);let r={...Zm,...this.config.origins[s]};for(let[a,i]of Object.entries(r))t.ctx().setHeaders(a,i)}return{}}}class Re extends _a{service;static _name="RateLimiterServiceContainer";constructor(t){super();this.service=t}}class Nu extends ft{constructor(){super("Rate limit exceeded");this.payload={api:{status:429,data:{error:{message:"Rate limit exceeded"}},headers:{"Content-Type":"application/json"}},view:{error:{message:"Rate limit exceeded"},status:429}}}}class Uu extends mt{async run(t=1000){let s=this.req.headers.get("x-forwarded-for"),r=Re.use().service.driver;if(r.consume.call(r,s,this.req.routePath)>t)throw new Nu;return{}}}class Vu extends mt{async run(){let t=this.req.cookies.get("csrf_token");if(!t)throw new Oe;if(!["POST","PUT","PATCH","DELETE"].includes(this.req.rawRequest.method))return{};if(!Bun.CSRF.verify(t,{secret:process.env.SECRET}))throw new Oe;return{}}}class Oe extends ft{constructor(){super("Invalid CSRF token");this.name="InvalidCSRFTokenError"}payload={api:{status:403,data:{error:"Invalid CSRF token"}},view:{}}}class Gu{policiesList={};constructor(){let t=this.register();for(let s of t){let r=new s;this.policiesList[s.name]=r}}register(){return[]}}class Wu{all(t,s){return!0}}export{tc as getCookies,Qs as ViewRouter,Ys as ValidationError,Kr as ResourceController,ft as RequestBreakerError,Uu as RateLimitMiddleware,Gu as PoliciesServiceProvider,Wu as Policies,Ee as MiddlewareServiceProvider,mt as Middleware,$e as InsufficientPermissionsError,tr as HttpRequest,ku as CorsMiddleware,Ba as Controller,Lu as CacheMiddleware,Vu as CSRFMiddleware,Fe as AuthorizationError,ju as AuthenticationMiddleware,sr as AuthenticationError,Ja as ApiRouter};export{Ba as G,be as H,Ja as I,Qs as J,Ys as K,Os as L,tr as M,Ee as N,Fe as O,$e as P,Ar as Q,za as R,Re as S};
|
|
3
3
|
|
|
4
|
-
//# debugId=
|
|
4
|
+
//# debugId=DD66AC2C66C8AF7764756E2164756E21
|