gemi 0.14.1 → 0.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/app/index.js +2 -2
  2. package/dist/app/index.js.map +1 -1
  3. package/dist/broadcasting/index.js +1 -1
  4. package/dist/chunk-27xgse4n.js +4 -0
  5. package/dist/{chunk-f3t8bn6m.js.map → chunk-27xgse4n.js.map} +2 -2
  6. package/dist/{chunk-fgafrjxy.js → chunk-2e5r9zc8.js} +2 -2
  7. package/dist/{chunk-fgafrjxy.js.map → chunk-2e5r9zc8.js.map} +1 -1
  8. package/dist/chunk-2ndhh6td.js +4 -0
  9. package/dist/{chunk-1ambdj5q.js.map → chunk-2ndhh6td.js.map} +2 -2
  10. package/dist/chunk-4dcj158v.js +27 -0
  11. package/dist/{chunk-4yh8p5h0.js.map → chunk-4dcj158v.js.map} +3 -4
  12. package/dist/chunk-4gfrxz19.js +4 -0
  13. package/dist/chunk-4gfrxz19.js.map +10 -0
  14. package/dist/{chunk-zja5jcxt.js → chunk-4kkyjz2j.js} +3 -3
  15. package/dist/{chunk-zja5jcxt.js.map → chunk-4kkyjz2j.js.map} +1 -1
  16. package/dist/chunk-57z3h6hy.js +4 -0
  17. package/dist/{chunk-1715jezx.js.map → chunk-57z3h6hy.js.map} +2 -2
  18. package/dist/{chunk-vjym5jdx.js → chunk-5g8wefgj.js} +2 -2
  19. package/dist/{chunk-vjym5jdx.js.map → chunk-5g8wefgj.js.map} +1 -1
  20. package/dist/{chunk-y8ggk3r3.js → chunk-5zy36vzw.js} +2 -2
  21. package/dist/{chunk-y8ggk3r3.js.map → chunk-5zy36vzw.js.map} +1 -1
  22. package/dist/chunk-7ptvr91c.js +4 -0
  23. package/dist/{chunk-thfv9s7s.js.map → chunk-7ptvr91c.js.map} +2 -2
  24. package/dist/{chunk-9khdm7dc.js → chunk-8hz7nqa6.js} +2 -2
  25. package/dist/{chunk-9khdm7dc.js.map → chunk-8hz7nqa6.js.map} +1 -1
  26. package/dist/{chunk-grzfxg62.js → chunk-arayp1w0.js} +2 -2
  27. package/dist/{chunk-grzfxg62.js.map → chunk-arayp1w0.js.map} +1 -1
  28. package/dist/chunk-bpqf6csg.js +4 -0
  29. package/dist/{chunk-016fjpm4.js.map → chunk-bpqf6csg.js.map} +2 -2
  30. package/dist/{chunk-9d8bt9fg.js → chunk-cxxwxz6t.js} +3 -3
  31. package/dist/{chunk-9d8bt9fg.js.map → chunk-cxxwxz6t.js.map} +1 -1
  32. package/dist/chunk-dy5fyccd.js +4 -0
  33. package/dist/{chunk-b6bvweyq.js.map → chunk-dy5fyccd.js.map} +5 -5
  34. package/dist/chunk-dyq4bf49.js +4 -0
  35. package/dist/{chunk-p7s41mxq.js.map → chunk-dyq4bf49.js.map} +1 -1
  36. package/dist/{chunk-ghvw9bvz.js → chunk-e4t6twrj.js} +2 -2
  37. package/dist/{chunk-ghvw9bvz.js.map → chunk-e4t6twrj.js.map} +1 -1
  38. package/dist/{chunk-hh9hfct5.js → chunk-exf16mn0.js} +3 -3
  39. package/dist/{chunk-hh9hfct5.js.map → chunk-exf16mn0.js.map} +1 -1
  40. package/dist/chunk-g4t4r905.js +5 -0
  41. package/dist/{chunk-qrz4g7q0.js.map → chunk-g4t4r905.js.map} +5 -5
  42. package/dist/chunk-hakywsfq.js +4 -0
  43. package/dist/{chunk-ny36ys64.js.map → chunk-hakywsfq.js.map} +1 -1
  44. package/dist/chunk-hq7crmd4.js +4 -0
  45. package/dist/{chunk-8czq49sy.js.map → chunk-hq7crmd4.js.map} +2 -2
  46. package/dist/{chunk-jme4caj2.js → chunk-htxxjgd5.js} +3 -3
  47. package/dist/{chunk-jme4caj2.js.map → chunk-htxxjgd5.js.map} +1 -1
  48. package/dist/{chunk-b1gefp3p.js → chunk-jmscazht.js} +2 -2
  49. package/dist/{chunk-b1gefp3p.js.map → chunk-jmscazht.js.map} +1 -1
  50. package/dist/chunk-n8tr3h68.js +4 -0
  51. package/dist/{chunk-wxb0n2fp.js.map → chunk-n8tr3h68.js.map} +4 -4
  52. package/dist/chunk-phkp7w79.js +4 -0
  53. package/dist/{chunk-3yzmg8gh.js.map → chunk-phkp7w79.js.map} +7 -7
  54. package/dist/chunk-qdyp0w7x.js +5 -0
  55. package/dist/{chunk-fkmp9894.js.map → chunk-qdyp0w7x.js.map} +6 -6
  56. package/dist/{chunk-5h8f3p6p.js → chunk-r13m0b3y.js} +3 -3
  57. package/dist/{chunk-5h8f3p6p.js.map → chunk-r13m0b3y.js.map} +1 -1
  58. package/dist/{chunk-946x83cd.js → chunk-rfs3fhhw.js} +2 -2
  59. package/dist/{chunk-946x83cd.js.map → chunk-rfs3fhhw.js.map} +1 -1
  60. package/dist/{chunk-9n24vx5g.js → chunk-ryg1dde5.js} +4 -4
  61. package/dist/{chunk-9n24vx5g.js.map → chunk-ryg1dde5.js.map} +3 -4
  62. package/dist/chunk-tqzj43a7.js +8 -0
  63. package/dist/{chunk-ty7yh4d4.js.map → chunk-tqzj43a7.js.map} +2 -2
  64. package/dist/{chunk-rwkjg2qn.js → chunk-wf991m48.js} +2 -2
  65. package/dist/{chunk-rwkjg2qn.js.map → chunk-wf991m48.js.map} +1 -1
  66. package/dist/{chunk-wp91ggkr.js → chunk-ypadv725.js} +3 -3
  67. package/dist/{chunk-wp91ggkr.js.map → chunk-ypadv725.js.map} +1 -1
  68. package/dist/chunk-yxmc7x64.js +5 -0
  69. package/dist/{chunk-2jsyd1d9.js.map → chunk-yxmc7x64.js.map} +2 -2
  70. package/dist/client/ClientRouter.d.ts +1 -0
  71. package/dist/client/ClientRouter.d.ts.map +1 -1
  72. package/dist/client/createRoot.d.ts +4 -1
  73. package/dist/client/createRoot.d.ts.map +1 -1
  74. package/dist/client/index.js +7 -7
  75. package/dist/client/index.js.map +1 -1
  76. package/dist/client/useLocale.d.ts.map +1 -1
  77. package/dist/email/index.js +1 -1
  78. package/dist/facades/index.js +2 -2
  79. package/dist/facades/index.js.map +1 -1
  80. package/dist/http/index.js +2 -2
  81. package/dist/http/index.js.map +1 -1
  82. package/dist/i18n/index.js +1 -1
  83. package/dist/kernel/index.js +2 -2
  84. package/dist/kernel/index.js.map +1 -1
  85. package/dist/server/index.js +2 -2
  86. package/dist/server/index.js.map +1 -1
  87. package/dist/services/index.js +48 -48
  88. package/dist/services/index.js.map +4 -4
  89. package/package.json +1 -1
  90. package/dist/chunk-016fjpm4.js +0 -4
  91. package/dist/chunk-1715jezx.js +0 -4
  92. package/dist/chunk-1ambdj5q.js +0 -4
  93. package/dist/chunk-2jsyd1d9.js +0 -5
  94. package/dist/chunk-3yzmg8gh.js +0 -4
  95. package/dist/chunk-4yh8p5h0.js +0 -27
  96. package/dist/chunk-8czq49sy.js +0 -4
  97. package/dist/chunk-b6bvweyq.js +0 -4
  98. package/dist/chunk-f3t8bn6m.js +0 -4
  99. package/dist/chunk-fkmp9894.js +0 -5
  100. package/dist/chunk-ny36ys64.js +0 -4
  101. package/dist/chunk-p7s41mxq.js +0 -4
  102. package/dist/chunk-qrz4g7q0.js +0 -5
  103. package/dist/chunk-thfv9s7s.js +0 -4
  104. package/dist/chunk-ty7yh4d4.js +0 -8
  105. package/dist/chunk-wxb0n2fp.js +0 -4
  106. package/dist/chunk-zt3j8zag.js +0 -3
  107. package/dist/chunk-zt3j8zag.js.map +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"useLocale.d.ts","sourceRoot":"","sources":["../../client/useLocale.ts"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,+BAMU,MAAM,oBAcxC"}
1
+ {"version":3,"file":"useLocale.d.ts","sourceRoot":"","sources":["../../client/useLocale.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS,+BAMU,MAAM,oBAYxC"}
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{T as B}from"../chunk-p7s41mxq.js";import{U as A}from"../chunk-ghvw9bvz.js";import"../chunk-vjym5jdx.js";import"../chunk-y8ggk3r3.js";import{render as P}from"jsx-email";import{jsx as Q}from"react/jsx-runtime";class D{from="";to=[];subject="No Subject";cc=[];bcc=[];attachments=[];template;static async send(q){let k=new this,F=A.use().service.defaultLocale,{to:G=k.to,from:H=k.from,subject:w=typeof k.subject==="string"?k.subject:k.subject[q.locale||F],cc:J=k.cc,bcc:K=k.bcc,attachments:M=k.attachments,data:O}=q,y=await k.render({...O,locale:q.locale});if(process.env.EMAIL_DEBUG==="true"){let z=`${process.env.ROOT_DIR}/.debug/emails/${new Date().toISOString()}${w}.html`;await Bun.write(z,y),Bun.spawnSync(["open",z]);return}await B.use().service.driver.send({bcc:K,cc:J,from:H,subject:w,to:G,attachments:M,html:y})}async render(q){let k=this.template;return await P(Q(k,{...q}))}}export{D as Email};
2
+ import{T as B}from"../chunk-dyq4bf49.js";import{U as A}from"../chunk-e4t6twrj.js";import"../chunk-5g8wefgj.js";import"../chunk-5zy36vzw.js";import{render as P}from"jsx-email";import{jsx as Q}from"react/jsx-runtime";class D{from="";to=[];subject="No Subject";cc=[];bcc=[];attachments=[];template;static async send(q){let k=new this,F=A.use().service.defaultLocale,{to:G=k.to,from:H=k.from,subject:w=typeof k.subject==="string"?k.subject:k.subject[q.locale||F],cc:J=k.cc,bcc:K=k.bcc,attachments:M=k.attachments,data:O}=q,y=await k.render({...O,locale:q.locale});if(process.env.EMAIL_DEBUG==="true"){let z=`${process.env.ROOT_DIR}/.debug/emails/${new Date().toISOString()}${w}.html`;await Bun.write(z,y),Bun.spawnSync(["open",z]);return}await B.use().service.driver.send({bcc:K,cc:J,from:H,subject:w,to:G,attachments:M,html:y})}async render(q){let k=this.template;return await P(Q(k,{...q}))}}export{D as Email};
3
3
 
4
4
  //# debugId=3CD313A52C95A57264756E2164756E21
@@ -1,6 +1,6 @@
1
1
  // @bun
2
- import{G as Ds,H as Ys,I as Y,J as is,K,L,M as $,O as Bs,P as R,Q as k,R as z}from"../http/index.js";import{U as B}from"../chunk-ghvw9bvz.js";import{V as Ks}from"../chunk-mtbjk5px.js";import{rc as Vs}from"../chunk-wp91ggkr.js";import{sc as A,uc as Q,vc as hs}from"../chunk-fgafrjxy.js";import{wc as Ls}from"../chunk-ny36ys64.js";import{yc as M}from"../chunk-vjym5jdx.js";import{Ac as Ss}from"../chunk-y8ggk3r3.js";import{AsyncLocalStorage as ms}from"async_hooks";class S extends M{service;static _name="BroadcastingServiceContainer";publishCb;context=new ms;constructor(s){super();this.service=s}onPublish(s){this.publishCb=s}publish(...s){let[f,c,w]=s;this.publishCb(f,c,w)}async handleMessage(s,f){let c=JSON.parse(f);if(c.type==="subscribe"){let w=Object.entries(this.service.channels).sort(([i],[b])=>i.length-b.length);for(let[i,b]of w){let l=new URLPattern({pathname:i});if(l.test({pathname:c.topic})){let y=l.exec({pathname:c.topic})?.pathname.groups,O=new b;if(await O.subscribe.call(O,y))s.subscribe(c.topic);break}}}if(c.type==="broadcast")s.publish(c.topic,JSON.stringify({topic:c.topic,data:c.payload}));if(c.type==="unsubscribe")s.unsubscribe(c.topic)}run(s,f){let c=s.get("Cookie"),w=new Map;if(c){let i=c.split(";");for(let b of i){let[l,y]=b.split("=");w.set(l.trim(),y.trim())}}this.context.run({headers:s,cookies:w},f)}}class N{static async user(){let s=L.getStore(),f=S.use().context.getStore(),c="",w="";if(s?.req)c=s.req.cookies.get("access_token"),w=s.req.headers.get("User-Agent");if(f?.cookies)w=f.headers.get("User-Agent"),c=f.cookies.get("access_token");let i=s?.user;if(!i)i=(await z.use().getSession(c,w))?.user,s?.setUser(i);if(i)return i;return null}static async guard(s){let f=await N.user();if(!f)throw new R;try{if(!await s(f))throw new R}catch(c){throw new R}}static async guardSafe(s){let f=await N.user();if(!f)return!1;try{return await s(f)}catch(c){return!1}}static async authenticate(s){await z.use().authenticate(s)}static async createMagicLink(s){return await z.use().createMagicLinkToken(s)}}class V{static getSupportedLocales(){return B.use().service.supportedLocales}static getDefaultLocale(){return B.use().service.defaultLocale}static locale(){return B.use().detectLocale(L.getStore().req)}static setLocale(s=V.locale()){let f=B.use(),c=s;if(!f.service.supportedLocales.includes(s))c=f.service.defaultLocale;return L.getStore().setCookie("i18n-locale",c,{expires:new Date(Date.now()+31536000000)}),c}}var js=Ss(Vs(),1);import{Buffer as Es}from"buffer";class o extends M{service;static _name="FileStorageServiceContainer";constructor(s){super();this.service=s}}class zs{static async put(s){return o.use().service.driver.put(s)}static async metadata(s){let f=Es.from(await s.arrayBuffer());try{return await js.default(f).metadata()}catch{return{}}}static async fetch(s){return o.use().service.driver.fetch(s)}static list(s){return o.use().service.driver.list(s)}static delete(){}}function Ts(s){return Object.fromEntries(Object.entries(s).filter(([,f])=>{return f!==null&&f!==void 0}))}class I extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class cs{createSession(){throw new I}deleteSession(){throw new I}findSession(){throw new I}findUserByEmailAddress(){throw new I}updateSession(){throw new I}createUser(){throw new I}}class Js extends ${schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Ms extends ${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 _s extends ${schema={email:{required:"Email is required",email:"Invalid email"}}}class Ws extends ${schema={password:{required:"Password is required",password:"Invalid password"}}}class _ extends Ds{provider=z.use()?.provider;async me(){let s=await N.user();if(!s)throw new Bs;return s}async verifyEmail(s=new $){let f=await s.input(),c=z.use()?.provider,w=await c.adapter.findUserByVerificationToken(f.get("token"));if(!w)return{email:null};if(await c.adapter.verifyUser(w.email),w)return{email:w.email};return{email:null}}async signInWithMagicLink(s=new $){let f=z.use(),c=f.provider,w=s.search.get("token"),i=decodeURIComponent(s.search.get("email")),b=null;try{b=await c.adapter.findUserMagicLinkToken({email:i,token:w})}catch(y){return console.log(y),{error:JSON.stringify(y)}}if(!b)return{error:"Invalid token"};await c.adapter.verifyUser(i),await c.adapter.deleteMagicLinkToken(i);let l=await f.createOrUpdateSession({email:i});return s.ctx().setCookie("access_token",l.token,{expires:l.absoluteExpiresAt}),await c.onSignIn(l),{session:l}}async signInWithPin(s=new $){let f=z.use(),c=f.provider,w=await s.input(),{email:i,pin:b}=w.toJSON();if(!await c.adapter.findUserMagicLinkToken({email:i,pin:b}))throw new K({pin:["Invalid pin"]});await c.adapter.deleteMagicLinkToken(i),await c.adapter.verifyUser(i);let y=await f.createOrUpdateSession({email:i});return s.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await c.onSignIn(y),{session:y}}async signIn(s=new Js){let f=await s.input(),{email:c,password:w}=f.toJSON(),i=z.use().provider,b=await i.adapter.findUserByEmailAddress(c,i.verifyEmail);if(!b)throw new K({invalid_credentials:["Invalid credentials"]});if(!await i.verifyPassword(w,b.password))throw new K({invalid_credentials:["Invalid credentials"]});let y=await z.use().createOrUpdateSession({email:b.email,id:b.id});s.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await i.onSignIn(b);let{password:O,...g}=b;return g}async signUp(s=new Ms){let f=await s.input(),{email:c,password:w,name:i,invitationId:b}=f.toJSON(),l=z.use().provider;if(await l.adapter.findUserByEmailAddress(c,!1))throw new K({email:["Email address already exists"]});let O=await l.hashPassword(w),g=B.use().detectLocale(s),p;if(b){if(p=await l.adapter.findInvitation(b,c),p)await l.adapter.deleteInvitationById(b)}let F,n;if(p)F=await l.adapter.createUser({email:c,name:i,password:O,emailVerifiedAt:new Date,locale:g}),await l.adapter.createAccount({organizationId:p.organizationId,userId:F.id,organizationRole:p.role});else n=await l.generateEmailVerificationToken(c),F=await l.adapter.createUser({email:c,name:i,password:O,verificationToken:n,locale:g});return await l.onSignUp(F,n),F}async signOut(s=new $){let f=s.cookies.get("access_token"),c=await N.user(),w=z.use().provider;return await w.adapter.deleteSession({token:f}),s.ctx().setCookie("access_token","",{expires:new Date(0)}),await w.onSignOut(c),{}}async forgotPassword(s=new _s){let f=await s.input(),{email:c}=f.toJSON(),w=z.use().provider,i=await w.adapter.findUserByEmailAddress(c,w.verifyEmail);if(!i)return{};let b=await w.generateForgotPasswordToken(i);return await w.adapter.createPasswordResetToken({user:i,token:b}),await w.onForgotPassword(i,b),{}}async resetPassword(s=new Ws){let f=z.use().provider,c=await s.input(),{password:w,token:i}=c.toJSON(),b=await f.adapter.findPasswordResetToken({token:i});if(!b)throw new K({token:["Invalid token"]});if(k.Instant.from(b.createdAt.toISOString()).add({hours:24}).until(k.Now.instant()).sign>=0)throw new K({token:["Token expired"]});await f.adapter.deletePasswordResetToken({token:i});let y=await f.adapter.findUserByEmailAddress(b.user.email,f.verifyEmail);if(!y)throw new K({email:["User not found"]});let O=await f.hashPassword(w);return await f.adapter.updateUserPassword({id:y.id,password:O}),await f.adapter.deleteAllUserSessions(y.id),await f.onResetPassword(y),{}}async changePassword(s=new $){let f=z.use().provider,c=await N.user(),w=await s.input(),{oldPassword:i,newPassword:b}=w.toJSON(),{password:l}=await f.adapter.findUserByEmailAddress(c.email,f.verifyEmail);if(!await f.verifyPassword(i,l))throw new K({oldPassword:["Incorrect password"]});let O=await f.hashPassword(b);return await f.adapter.updateUserPassword({id:c.id,password:O}),await f.adapter.deleteAllUserSessions(c.id),{}}async oauthRedirect(s=new $){let{provider:f}=s.params,c=z.use().provider.oauthProviders[f];if(!c)throw new Error(`Invalid provider: ${f}`);return{destination:await c.getRedirectUrl(s)}}async oauthCallback(s=new $){let{provider:f}=s.params,c=z.use(),w=c.provider,i=w.oauthProviders[f],{email:b,name:l,username:y,providerId:O}=await i.onCallback(s);if(!y&&!b)throw new Error("Email or username is required");let g=b??`${y}:${f}`,p=await w.adapter.findUserByEmailAddress(g,!1),F=B.use().detectLocale(s);if(!p)p=await w.adapter.createUser({email:g,name:l,locale:F,emailVerifiedAt:new Date}),await w.adapter.createSocialAccount({provider:f,userId:p.id,email:g,username:y,providerId:O,expiresAt:new Date,accessToken:"",refreshToken:""});let n=await c.createOrUpdateSession({email:p.email,id:p.id});return s.ctx().setCookie("access_token",n.token,{expires:n.expiresAt}),await w.onSignIn(p),{destination:w.redirectPath}}async createMagicLinkToken(s=new $){let f=await s.input(),{email:c}=f.toJSON(),w=z.use(),i=w.provider,{user:b,pin:l,token:y}=await w.createMagicLinkToken(c);return await i.onMagicLinkCreated(b,{email:c,pin:l,token:y}),{email:c}}}class Us extends is{routes={"/:provider":this.redirect([_,"oauthRedirect"]),"/:provider/callback":this.redirect([_,"oauthCallback"])}}class ws extends is{routes={"/sign-in/magic-link":this.view("auth/MagicLinkSignIn",[_,"signInWithMagicLink"]),"/oauth":Us}}class bs extends Y{middlewares=["cache:private"];routes={"/sign-in":this.post(_,"signIn"),"/sign-up":this.post(_,"signUp"),"/sign-out":this.post(_,"signOut"),"/forgot-password":this.post(_,"forgotPassword"),"/reset-password":this.post(_,"resetPassword"),"/change-password":this.post(_,"changePassword"),"/verify-email":this.post(_,"verifyEmail"),"/me":this.get(_,"me").middleware(["auth"]),"/magic-link":this.post(_,"createMagicLinkToken"),"/sign-in-with-pin":this.post(_,"signInWithPin")}}class os extends Ls{basePath="/auth";verifyEmail=!0;redirectPath="/dashboard";sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new cs;oauthProviders={};boot(){}async verifyPassword(s,f){return await Bun.password.verify(s,f)}async hashPassword(s){return await Bun.password.hash(s)}async generateForgotPasswordToken(s){let f=new Bun.CryptoHasher("sha256");return f.update(`${s.email}${Date.now()}`),f.digest("hex")}generateEmailVerificationToken(s){if(!this.verifyEmail)return"";let f=new Bun.CryptoHasher("sha256");return f.update(`${s}${Date.now()}`),f.digest("hex")}generateMagicLinkToken(s){let f=new Bun.CryptoHasher("sha256");return f.update(`${s}${Date.now()}`),f.digest("hex")}extendSession(s){return{}}onSignUp(s,f){}onSignIn(s){}onSignOut(s){}onForgotPassword(s,f){}onResetPassword(s){}onMagicLinkCreated(s,f){return}}class ls extends Y{middlewares=["cache:private,0,no-store"];routes={"/translations/:locale/:scope*":this.get(async()=>{let s=new $,f=`/${s.params.scope??""}`,w=s.params.locale??B.use().detectLocale(s),i=B.use().getPageTranslations(w,f);return s.ctx().setCookie("i18n-locale",w,{expires:new Date(Date.now()+31536000000)}),{[w]:i}})}}class ys extends Y{routes={"/resize":this.file(async()=>{let s=new $,f=new URL(s.rawRequest.url),c=f.searchParams.get("url"),w=Number(f.searchParams.get("w")),i=Number(f.searchParams.get("h")),b=f.searchParams.get("fit")??"cover",l=Number(f.searchParams.get("q"));if(!c)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});let O=`${c.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${c}`,g=await fetch(O);if(!g.ok)return new Response(JSON.stringify({error:"Image not found",info:O}),{headers:{"Content-Type":"application/json"},status:404});let p=Buffer.from(await g.arrayBuffer()),F=await Xs.use().service.driver.resize(p,{height:i,width:w,fit:b,quality:l});return g.headers.delete("Content-Type"),g.headers.delete("Content-Length"),new Response(F,{headers:{"Content-Type":"image/webp","Content-Length":`${F.byteLength}`,...g.headers.toJSON()}})})}}class Xs extends M{service;static _name="ImageOptimizationServiceContainer";constructor(s){super();this.service=s}}import{mkdir as Os,exists as gs,readdir as ks}from"fs/promises";class C{static channel(s,f){let c=S.use().service.channels[s];if(!c)return console.error(`Channel ${s} not found`),{publish:()=>{}};let w=new c;return{publish:(i,b=!1)=>{let l=Q(s,f);S.use().publish(l,JSON.stringify({topic:l,data:w.publish(i)}),b)}}}}class W extends M{service;static _name="LoggingServiceContainer";writer;isReady=!1;logsDirPath=`${process.env.ROOT_DIR}/storage/logs`;flushTimeout;fileSize=0;writerSize=0;isCreatingFile=!1;currentLogFilePath;constructor(s){super();this.service=s;this.boot().then(()=>{this.isReady=!0})}async boot(){if(!process.env.ROOT_DIR)return;if(!await gs(`${process.env.ROOT_DIR}/storage`))await Os(`${process.env.ROOT_DIR}/storage`);if(!await gs(this.logsDirPath))await Os(this.logsDirPath);this.newLogFile()}async newLogFile(){if(!await gs(this.logsDirPath))await Os(this.logsDirPath);if(this.isCreatingFile=!0,this.currentLogFilePath){this.writer.flush(),this.writer.end(),this.writer=null;let c=new File([await Bun.file(this.currentLogFilePath).arrayBuffer()],this.currentLogFilePath.split("/").pop(),{type:"text/plain"});this.service.onLogFileClosed(c),this.fileSize=0,this.writerSize=0}let f=(await ks(this.logsDirPath)).sort().reverse()[0];if(f){let c=Bun.file(`${this.logsDirPath}/${f}`);if(c.size<this.service.maxFileSize)this.currentLogFilePath=`${this.logsDirPath}/${f}`,this.writer=c.writer(),this.writer.write(await c.text()),this.writer.write(`
2
+ import{G as Ds,H as Ys,I as Y,J as is,K,L,M as $,O as Bs,P as R,Q as k,R as z}from"../http/index.js";import{U as B}from"../chunk-e4t6twrj.js";import{V as Ks}from"../chunk-mtbjk5px.js";import{nc as Vs}from"../chunk-ypadv725.js";import{oc as A,qc as Q,rc as hs}from"../chunk-2e5r9zc8.js";import{sc as Ls}from"../chunk-hakywsfq.js";import{uc as M}from"../chunk-5g8wefgj.js";import{wc as Ss}from"../chunk-5zy36vzw.js";import{AsyncLocalStorage as ms}from"async_hooks";class S extends M{service;static _name="BroadcastingServiceContainer";publishCb;context=new ms;constructor(s){super();this.service=s}onPublish(s){this.publishCb=s}publish(...s){let[f,c,w]=s;this.publishCb(f,c,w)}async handleMessage(s,f){let c=JSON.parse(f);if(c.type==="subscribe"){let w=Object.entries(this.service.channels).sort(([i],[b])=>i.length-b.length);for(let[i,b]of w){let l=new URLPattern({pathname:i});if(l.test({pathname:c.topic})){let y=l.exec({pathname:c.topic})?.pathname.groups,O=new b;if(await O.subscribe.call(O,y))s.subscribe(c.topic);break}}}if(c.type==="broadcast")s.publish(c.topic,JSON.stringify({topic:c.topic,data:c.payload}));if(c.type==="unsubscribe")s.unsubscribe(c.topic)}run(s,f){let c=s.get("Cookie"),w=new Map;if(c){let i=c.split(";");for(let b of i){let[l,y]=b.split("=");w.set(l.trim(),y.trim())}}this.context.run({headers:s,cookies:w},f)}}class N{static async user(){let s=L.getStore(),f=S.use().context.getStore(),c="",w="";if(s?.req)c=s.req.cookies.get("access_token"),w=s.req.headers.get("User-Agent");if(f?.cookies)w=f.headers.get("User-Agent"),c=f.cookies.get("access_token");let i=s?.user;if(!i)i=(await z.use().getSession(c,w))?.user,s?.setUser(i);if(i)return i;return null}static async guard(s){let f=await N.user();if(!f)throw new R;try{if(!await s(f))throw new R}catch(c){throw new R}}static async guardSafe(s){let f=await N.user();if(!f)return!1;try{return await s(f)}catch(c){return!1}}static async authenticate(s){await z.use().authenticate(s)}static async createMagicLink(s){return await z.use().createMagicLinkToken(s)}}class V{static getSupportedLocales(){return B.use().service.supportedLocales}static getDefaultLocale(){return B.use().service.defaultLocale}static locale(){return B.use().detectLocale(L.getStore().req)}static setLocale(s=V.locale()){let f=B.use(),c=s;if(!f.service.supportedLocales.includes(s))c=f.service.defaultLocale;return L.getStore().setCookie("i18n-locale",c,{expires:new Date(Date.now()+31536000000)}),c}}var js=Ss(Vs(),1);import{Buffer as Es}from"buffer";class o extends M{service;static _name="FileStorageServiceContainer";constructor(s){super();this.service=s}}class zs{static async put(s){return o.use().service.driver.put(s)}static async metadata(s){let f=Es.from(await s.arrayBuffer());try{return await js.default(f).metadata()}catch{return{}}}static async fetch(s){return o.use().service.driver.fetch(s)}static list(s){return o.use().service.driver.list(s)}static delete(){}}function Ts(s){return Object.fromEntries(Object.entries(s).filter(([,f])=>{return f!==null&&f!==void 0}))}class I extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class cs{createSession(){throw new I}deleteSession(){throw new I}findSession(){throw new I}findUserByEmailAddress(){throw new I}updateSession(){throw new I}createUser(){throw new I}}class Js extends ${schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Ms extends ${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 _s extends ${schema={email:{required:"Email is required",email:"Invalid email"}}}class Ws extends ${schema={password:{required:"Password is required",password:"Invalid password"}}}class _ extends Ds{provider=z.use()?.provider;async me(){let s=await N.user();if(!s)throw new Bs;return s}async verifyEmail(s=new $){let f=await s.input(),c=z.use()?.provider,w=await c.adapter.findUserByVerificationToken(f.get("token"));if(!w)return{email:null};if(await c.adapter.verifyUser(w.email),w)return{email:w.email};return{email:null}}async signInWithMagicLink(s=new $){let f=z.use(),c=f.provider,w=s.search.get("token"),i=decodeURIComponent(s.search.get("email")),b=null;try{b=await c.adapter.findUserMagicLinkToken({email:i,token:w})}catch(y){return console.log(y),{error:JSON.stringify(y)}}if(!b)return{error:"Invalid token"};await c.adapter.verifyUser(i),await c.adapter.deleteMagicLinkToken(i);let l=await f.createOrUpdateSession({email:i});return s.ctx().setCookie("access_token",l.token,{expires:l.absoluteExpiresAt}),await c.onSignIn(l),{session:l}}async signInWithPin(s=new $){let f=z.use(),c=f.provider,w=await s.input(),{email:i,pin:b}=w.toJSON();if(!await c.adapter.findUserMagicLinkToken({email:i,pin:b}))throw new K({pin:["Invalid pin"]});await c.adapter.deleteMagicLinkToken(i),await c.adapter.verifyUser(i);let y=await f.createOrUpdateSession({email:i});return s.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await c.onSignIn(y),{session:y}}async signIn(s=new Js){let f=await s.input(),{email:c,password:w}=f.toJSON(),i=z.use().provider,b=await i.adapter.findUserByEmailAddress(c,i.verifyEmail);if(!b)throw new K({invalid_credentials:["Invalid credentials"]});if(!await i.verifyPassword(w,b.password))throw new K({invalid_credentials:["Invalid credentials"]});let y=await z.use().createOrUpdateSession({email:b.email,id:b.id});s.ctx().setCookie("access_token",y.token,{expires:y.absoluteExpiresAt}),await i.onSignIn(b);let{password:O,...g}=b;return g}async signUp(s=new Ms){let f=await s.input(),{email:c,password:w,name:i,invitationId:b}=f.toJSON(),l=z.use().provider;if(await l.adapter.findUserByEmailAddress(c,!1))throw new K({email:["Email address already exists"]});let O=await l.hashPassword(w),g=B.use().detectLocale(s),p;if(b){if(p=await l.adapter.findInvitation(b,c),p)await l.adapter.deleteInvitationById(b)}let F,n;if(p)F=await l.adapter.createUser({email:c,name:i,password:O,emailVerifiedAt:new Date,locale:g}),await l.adapter.createAccount({organizationId:p.organizationId,userId:F.id,organizationRole:p.role});else n=await l.generateEmailVerificationToken(c),F=await l.adapter.createUser({email:c,name:i,password:O,verificationToken:n,locale:g});return await l.onSignUp(F,n),F}async signOut(s=new $){let f=s.cookies.get("access_token"),c=await N.user(),w=z.use().provider;return await w.adapter.deleteSession({token:f}),s.ctx().setCookie("access_token","",{expires:new Date(0)}),await w.onSignOut(c),{}}async forgotPassword(s=new _s){let f=await s.input(),{email:c}=f.toJSON(),w=z.use().provider,i=await w.adapter.findUserByEmailAddress(c,w.verifyEmail);if(!i)return{};let b=await w.generateForgotPasswordToken(i);return await w.adapter.createPasswordResetToken({user:i,token:b}),await w.onForgotPassword(i,b),{}}async resetPassword(s=new Ws){let f=z.use().provider,c=await s.input(),{password:w,token:i}=c.toJSON(),b=await f.adapter.findPasswordResetToken({token:i});if(!b)throw new K({token:["Invalid token"]});if(k.Instant.from(b.createdAt.toISOString()).add({hours:24}).until(k.Now.instant()).sign>=0)throw new K({token:["Token expired"]});await f.adapter.deletePasswordResetToken({token:i});let y=await f.adapter.findUserByEmailAddress(b.user.email,f.verifyEmail);if(!y)throw new K({email:["User not found"]});let O=await f.hashPassword(w);return await f.adapter.updateUserPassword({id:y.id,password:O}),await f.adapter.deleteAllUserSessions(y.id),await f.onResetPassword(y),{}}async changePassword(s=new $){let f=z.use().provider,c=await N.user(),w=await s.input(),{oldPassword:i,newPassword:b}=w.toJSON(),{password:l}=await f.adapter.findUserByEmailAddress(c.email,f.verifyEmail);if(!await f.verifyPassword(i,l))throw new K({oldPassword:["Incorrect password"]});let O=await f.hashPassword(b);return await f.adapter.updateUserPassword({id:c.id,password:O}),await f.adapter.deleteAllUserSessions(c.id),{}}async oauthRedirect(s=new $){let{provider:f}=s.params,c=z.use().provider.oauthProviders[f];if(!c)throw new Error(`Invalid provider: ${f}`);return{destination:await c.getRedirectUrl(s)}}async oauthCallback(s=new $){let{provider:f}=s.params,c=z.use(),w=c.provider,i=w.oauthProviders[f],{email:b,name:l,username:y,providerId:O}=await i.onCallback(s);if(!y&&!b)throw new Error("Email or username is required");let g=b??`${y}:${f}`,p=await w.adapter.findUserByEmailAddress(g,!1),F=B.use().detectLocale(s);if(!p)p=await w.adapter.createUser({email:g,name:l,locale:F,emailVerifiedAt:new Date}),await w.adapter.createSocialAccount({provider:f,userId:p.id,email:g,username:y,providerId:O,expiresAt:new Date,accessToken:"",refreshToken:""});let n=await c.createOrUpdateSession({email:p.email,id:p.id});return s.ctx().setCookie("access_token",n.token,{expires:n.expiresAt}),await w.onSignIn(p),{destination:w.redirectPath}}async createMagicLinkToken(s=new $){let f=await s.input(),{email:c}=f.toJSON(),w=z.use(),i=w.provider,{user:b,pin:l,token:y}=await w.createMagicLinkToken(c);return await i.onMagicLinkCreated(b,{email:c,pin:l,token:y}),{email:c}}}class Us extends is{routes={"/:provider":this.redirect([_,"oauthRedirect"]),"/:provider/callback":this.redirect([_,"oauthCallback"])}}class ws extends is{routes={"/sign-in/magic-link":this.view("auth/MagicLinkSignIn",[_,"signInWithMagicLink"]),"/oauth":Us}}class bs extends Y{middlewares=["cache:private"];routes={"/sign-in":this.post(_,"signIn"),"/sign-up":this.post(_,"signUp"),"/sign-out":this.post(_,"signOut"),"/forgot-password":this.post(_,"forgotPassword"),"/reset-password":this.post(_,"resetPassword"),"/change-password":this.post(_,"changePassword"),"/verify-email":this.post(_,"verifyEmail"),"/me":this.get(_,"me").middleware(["auth"]),"/magic-link":this.post(_,"createMagicLinkToken"),"/sign-in-with-pin":this.post(_,"signInWithPin")}}class os extends Ls{basePath="/auth";verifyEmail=!0;redirectPath="/dashboard";sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new cs;oauthProviders={};boot(){}async verifyPassword(s,f){return await Bun.password.verify(s,f)}async hashPassword(s){return await Bun.password.hash(s)}async generateForgotPasswordToken(s){let f=new Bun.CryptoHasher("sha256");return f.update(`${s.email}${Date.now()}`),f.digest("hex")}generateEmailVerificationToken(s){if(!this.verifyEmail)return"";let f=new Bun.CryptoHasher("sha256");return f.update(`${s}${Date.now()}`),f.digest("hex")}generateMagicLinkToken(s){let f=new Bun.CryptoHasher("sha256");return f.update(`${s}${Date.now()}`),f.digest("hex")}extendSession(s){return{}}onSignUp(s,f){}onSignIn(s){}onSignOut(s){}onForgotPassword(s,f){}onResetPassword(s){}onMagicLinkCreated(s,f){return}}class ls extends Y{middlewares=["cache:private,0,no-store"];routes={"/translations/:locale/:scope*":this.get(async()=>{let s=new $,f=`/${s.params.scope??""}`,w=s.params.locale??B.use().detectLocale(s),i=B.use().getPageTranslations(w,f);return s.ctx().setCookie("i18n-locale",w,{expires:new Date(Date.now()+31536000000)}),{[w]:i}})}}class ys extends Y{routes={"/resize":this.file(async()=>{let s=new $,f=new URL(s.rawRequest.url),c=f.searchParams.get("url"),w=Number(f.searchParams.get("w")),i=Number(f.searchParams.get("h")),b=f.searchParams.get("fit")??"cover",l=Number(f.searchParams.get("q"));if(!c)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});let O=`${c.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${c}`,g=await fetch(O);if(!g.ok)return new Response(JSON.stringify({error:"Image not found",info:O}),{headers:{"Content-Type":"application/json"},status:404});let p=Buffer.from(await g.arrayBuffer()),F=await Xs.use().service.driver.resize(p,{height:i,width:w,fit:b,quality:l});return g.headers.delete("Content-Type"),g.headers.delete("Content-Length"),new Response(F,{headers:{"Content-Type":"image/webp","Content-Length":`${F.byteLength}`,...g.headers.toJSON()}})})}}class Xs extends M{service;static _name="ImageOptimizationServiceContainer";constructor(s){super();this.service=s}}import{mkdir as Os,exists as gs,readdir as ks}from"fs/promises";class C{static channel(s,f){let c=S.use().service.channels[s];if(!c)return console.error(`Channel ${s} not found`),{publish:()=>{}};let w=new c;return{publish:(i,b=!1)=>{let l=Q(s,f);S.use().publish(l,JSON.stringify({topic:l,data:w.publish(i)}),b)}}}}class W extends M{service;static _name="LoggingServiceContainer";writer;isReady=!1;logsDirPath=`${process.env.ROOT_DIR}/storage/logs`;flushTimeout;fileSize=0;writerSize=0;isCreatingFile=!1;currentLogFilePath;constructor(s){super();this.service=s;this.boot().then(()=>{this.isReady=!0})}async boot(){if(!process.env.ROOT_DIR)return;if(!await gs(`${process.env.ROOT_DIR}/storage`))await Os(`${process.env.ROOT_DIR}/storage`);if(!await gs(this.logsDirPath))await Os(this.logsDirPath);this.newLogFile()}async newLogFile(){if(!await gs(this.logsDirPath))await Os(this.logsDirPath);if(this.isCreatingFile=!0,this.currentLogFilePath){this.writer.flush(),this.writer.end(),this.writer=null;let c=new File([await Bun.file(this.currentLogFilePath).arrayBuffer()],this.currentLogFilePath.split("/").pop(),{type:"text/plain"});this.service.onLogFileClosed(c),this.fileSize=0,this.writerSize=0}let f=(await ks(this.logsDirPath)).sort().reverse()[0];if(f){let c=Bun.file(`${this.logsDirPath}/${f}`);if(c.size<this.service.maxFileSize)this.currentLogFilePath=`${this.logsDirPath}/${f}`,this.writer=c.writer(),this.writer.write(await c.text()),this.writer.write(`
3
3
  `),this.writer.flush(),this.fileSize=c.size}if(!this.writer){let c=`${new Date(Date.now()).toISOString()}.log`.replaceAll(":","-");this.currentLogFilePath=`${this.logsDirPath}/${c}`;let w=Bun.file(`${this.logsDirPath}/${c}`);this.writer=w.writer(),this.fileSize=0,this.writerSize=0}this.isCreatingFile=!1}async log(s,f,c={}){if(!this.isReady)await new Promise((y)=>{let O=setInterval(()=>{if(this.isReady)y({}),clearInterval(O)},100)});let w=L.getStore(),i={};if(w)i={url:w.req.rawRequest.url,method:w.req.rawRequest.method,headers:w.req.rawRequest.headers,body:w.req.rawRequest.body};let b={timestamp:new Date(Date.now()).toISOString(),env:"production",level:s,message:f,metadata:{...i,...c}},l="";try{l=JSON.stringify(b)}catch(y){throw new Error("Metadata must be a valid JSON object")}this.writerSize+=l.length,this.fileSize+=l.length,this.writer.write(l),this.writer.write(`
4
4
  `),C.channel("/logs/live",{}).publish(JSON.stringify(b)),this.service.onLogCreated(b),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 ps extends Y{middlewares=["cache:private,0"];routes={"/live":this.get(async()=>{let s=Bun.file(W.use().currentLogFilePath);return new Response(await s.text(),{headers:{"Content-Type":"text/plain"}})})}}function ds(s){let f=new Map;for(let c of s)if(typeof c==="string"){let[w,i=""]=c.split(":");if(w.startsWith("-")){if(f.has(w.replace("-","")))f.delete(w.replace("-",""))}else f.set(w,i.split(",").filter(Boolean))}else f.set(c,[]);return f}class d extends M{service;static _name="MiddlewareServiceContainer";constructor(s){super();this.service=s}runMiddleware(s){let f=new $;return Array.from(ds(s).entries()).map(([c,w])=>{if(typeof c==="string"){let i=this.service.aliases[c];if(i){let b=new i(f);return()=>b.run.call(b,...w)}}else{if(Ys(c)){let i=new c(f);return i.run.bind(i)}return c}}).filter(Boolean).reduce((c,w)=>{return async()=>{return{...await c(),...await w()}}},()=>Promise.resolve({}))()}}function As(s){return"run"in s}function Rs(s){return Object.hasOwn(s,"get")||Object.hasOwn(s,"post")||Object.hasOwn(s,"put")||Object.hasOwn(s,"delete")}function Cs(s){return Object.hasOwn(s,"first")&&Object.hasOwn(s,"second")}function Ps(s){if("__brand"in s)return s.__brand==="ApiRouter";return!1}function Fs(s,f="",c=[]){let w={};function i(b,l,y,O){let g=b==="/"?"":b,p=f==="/"?"":f,F=(`${p}${g}`===""?"/":`${p}${g}`).replaceAll("//","/");if(!w[F])w[F]={};w[F][l.toUpperCase()]={exec:y,middleware:[...c,...O]},w[F].OPTIONS={exec:()=>{let U=new $().ctx().headers;return new Response(null,{headers:U,status:204})},middleware:[]}}for(let[b,l]of Object.entries(s)){if(As(l)){let y=l,O=y.method,g=y.middlewares,p=y.run.bind(y);i(b,O,p,g)}if(Rs(l))for(let[y,O]of Object.entries(l)){let g=O.middlewares,p=O.run.bind(O);i(b,y,p,g)}if(Ps(l)){let y=new l,O=Fs(y.routes,`${f}${b}`,y.middlewares);for(let[g,p]of Object.entries(O))w[g.replaceAll("//","/")]=p}if(Cs(l)){let{first:y,second:O}=l;for(let[g,p]of Object.entries(y)){let F=p.middlewares,n=p.run.bind(p),[U,...T]=b.split("/").reverse();if(!U.startsWith(":"))throw new Error("Resource route must end with a dynamic segment");i(T.reverse().join("/"),g,n,F)}for(let[g,p]of Object.entries(O)){let F=p.middlewares,n=p.run.bind(p);i(b,g,n,F)}}}return Object.fromEntries(Object.entries(w).sort(([b],[l])=>{let y=b.split("/").length+b.split(":").length,O=l.split("/").length+l.split(":").length;return y-O}))}function $s(s){return s.replace(/\([^)]*\)/g,"").replace(/\/\//g,"/")}function P(s){let f={};for(let[c,w]of Object.entries(s))if("run"in w){let i=w;if("children"in i){let b=new i.children,l=P(b.routes);for(let[y,{exec:O,middleware:g}]of Object.entries(l)){let p=c==="/"?y:`${c}${y}`,F=y==="/"&&c!=="/"?c:p,n=(U)=>i.run.call(i,U,c);f[$s(F)]={exec:[n,...O],middleware:[...i.middlewares,...g],viewPath:i.viewPath}}}else{let b=(l)=>i.run.call(i,l,c);f[$s(c)]={exec:[b],middleware:i.middlewares,viewPath:i.viewPath}}}else{let i=new w,b=P(i.routes);for(let[l,{exec:y,middleware:O,viewPath:g}]of Object.entries(b)){let p=c==="/"?l:`${c}${l}`,F=l==="/"&&c!=="/"?c:p;f[$s(F)]={exec:y,middleware:[...i.middlewares,...O],viewPath:g}}}return Object.fromEntries(Object.entries(f).sort(([c],[w])=>{let i=c.split("/").length+c.split(":").length,b=w.split("/").length+w.split(":").length;return i-b}))}import{renderToReadableStream as ts}from"react-dom/server.browser";import{createElement as Zs,Fragment as qs}from"react";function vs(s){return s.replace(/\([^)]*\)/g,"").replace(/\/\//g,"/")}function v(s){let f={};for(let[c,w]of Object.entries(s))if("run"in w){let i=w.viewPath;if("children"in w){f[c]=[i];let b=new w.children,l=v(b.routes);for(let[y,O]of Object.entries(l)){let g=c==="/"?y:`${c}${y}`,p=y==="/"&&c!=="/"?c:g;f[p]=[i,...O]}if(f[c].length===1)delete f[c]}else f[c]=[i]}else{let i=new w,b=v(i.routes);for(let[l,y]of Object.entries(b)){let O=c==="/"?l:`${c}${l}`,g=l==="/"&&c!=="/"?c:O;f[g]=y}}return Object.fromEntries(Object.entries(f).map(([c,w])=>[vs(c),w]))}function t(s){let f=[];for(let[c,w]of Object.entries(s))if("run"in w){let i=w.viewPath;if(i==="__")continue;if(i==="REDIRECT")continue;if("children"in w){let b=new w.children,l=t(b.routes);f.push([i,l])}else f.push([i,[]])}else{let i=new w,b=t(i.routes);f.push(...b)}return f}function ns(s){let f=[];for(let[c,w]of s)f.push(c,...ns(w).flat());return Array.from(new Set(f))}class q{static debug(s,f){W.use().log("debug",s,f)}static info(s,f){W.use().log("info",s,f)}static notice(s,f){W.use().log("notice",s,f)}static warning(s,f){W.use().log("warning",s,f)}static error(s,f){W.use().log("error",s,f)}static critical(s,f){W.use().log("critical",s,f)}static alert(s,f){W.use().log("alert",s,f)}static emergency(s,f){W.use().log("emergency",s,f)}}class xs extends M{service;static _name="ViewRouterServiceContainer";flatViewRoutes={};routeManifest={};componentTree=[];flatComponentTree=[];root=null;constructor(s){super();this.service=s;let f={"/":s.rootRouter,"/auth":ws};this.flatViewRoutes=P(f),this.routeManifest=v(f),this.componentTree=t(f),this.flatComponentTree=ns(this.componentTree),this.root=s.root}boot(){}async onRequestEnd(s){if(!s.cookies.has("session_id"))s.ctx().setCookie("session_id",Bun.randomUUIDv7(),{httpOnly:!0,secure:!0,sameSite:"Strict",expires:new Date(Date.now()+31536000000)});return await this.service.onRequestEnd(s)}async render(s){let{csrfTokenHMAC:f,currentPathName:c,headers:w,i18n:i,params:b,pathname:l,prefetchedData:y,url:O,user:g,viewData:p,breadcrumbs:F,urlLocaleSegment:n}=s,T={kind:"view",data:{pageData:{[l.replace(`/${n}`,"")]:p},__csrf:f.toString("base64"),prefetchedData:y,i18n:i,auth:{user:g},routeManifest:this.routeManifest,breadcrumbs:F,router:{urlLocaleSegment:n,pathname:c,params:b,currentPath:l,searchParams:O.search,is404:!c?!0:!1},componentTree:[["404",[]],...this.componentTree]},head:{}},D=this.root,x=this.routeManifest[c];return async(J)=>{let{bootstrapModules:G,loaders:Z,getStyles:m,viewImportMap:H,cssManifest:X}=J;T.data.cssManifest=X;let r=await ts(Zs(qs,{children:[...await m(x),Zs(D,{data:T.data,viewImportMap:H,key:"root"})]}),{bootstrapScriptContent:`window.__GEMI_DATA__ = ${JSON.stringify(T.data)}; window.loaders=${Z}`,bootstrapModules:G});return new Response(r,{status:!c?404:200,headers:w})}}async handleViewRequest(s){let f=new URL(s.url),c=f.pathname.endsWith(".json"),w=f.pathname.replace(".json",""),[,i,...b]=w.split("/"),l=`/${b.join("/")}`,y=null,O=null;if(!B.use().service.supportedLocales.includes(i))l=w;else y=i,O=i;if(B.use().isEnabled){if(O===null){let T=B.use().detectLocale(new $(s,{},"view",l)),D=f.pathname==="/"?"":f.pathname;return new Response("",{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:`/${T}${D}`}})}}l=l.replace("//","/");let g=[],p=[],F=null,n={};try{for(let[T,D]of Object.entries(this.flatViewRoutes)){let x=new Ks({pathname:T});if(x.test({pathname:l})){F=T,n=x.exec({pathname:l})?.pathname.groups,g=D.exec,p=D.middleware;break}}}catch(T){throw T}let U=new $(s,n,"view",F);return await L.run(U,async()=>{let T=null,D=L.getStore();if(O){let J=O.replaceAll("/","");V.setLocale(J)}else V.setLocale();let x=D.req;try{await d.use().runMiddleware(p);let J=B.use(),G=J.isEnabled,Z={};if(G){let j=null;if(O)j=O.replaceAll("/",""),D.setLocale(j);else j=J.detectLocale(new $(s,x.params)),D.setLocale(j);let E=J.getPageTranslations(j,x.routePath);Z={supportedLocales:J.service.supportedLocales,currentLocale:j,dictionary:{[j]:E}}}let m=await Promise.all([...g.map((j)=>j(x)),...Array.from(D.prefetchPromiseQueue).map((j)=>j())]),H=D.cookies,X=D.headers,r=D.prefetchedResources;T={data:m,cookies:H,headers:X,user:D.user,prefetchedData:Object.fromEntries(r.entries()),currentPathName:x.routePath,params:x.params,urlLocaleSegment:y};let{params:Gs,currentPathName:e,user:Hs}=T,a={},ss={};for(let j of m){let[E,fs]=Object.entries(j)?.[0]??[];if(!E||!fs)continue;ss[`${E}:${e}`]=fs.breadcrumb,a[E]=fs}if(c)return X.set("Content-Type","application/json"),H.forEach((j)=>X.append("Set-Cookie",j.toString())),await this.service.onRequestEnd(x),new Response(JSON.stringify({data:{[l]:a},breadcrumbs:ss,prefetchedData:T.prefetchedData,i18n:Z,is404:!e}),{headers:X});X.set("Content-Type","text/html");for(let j of H)X.append("Set-Cookie",j.toString());let Is=Bun.CSRF.generate(process.env.SECRET);X.append("Set-Cookie",`csrf_token=${Is}; HttpOnly; Secure; SameSite=Strict; Expires=${new Date(Date.now()+86400000).toUTCString()}`);try{await this.onRequestEnd(x)}catch(j){q.error(j?.message??'Error in "onRequestEnd" event handler',{err:JSON.stringify(j)})}return await this.render({csrfTokenHMAC:Buffer.from(""),currentPathName:e,headers:X,i18n:Z,params:Gs,pathname:f.pathname,prefetchedData:T.prefetchedData,url:f,user:Hs,viewData:a,breadcrumbs:ss,urlLocaleSegment:y})}catch(J){if(J.kind===A)if(c){let{status:G=400,data:Z,directive:m,headers:H}=J.payload.api;return new Response(JSON.stringify({data:Z,directive:m}),{headers:H,status:G})}else{let{status:G=400,error:Z}=J.payload.view;return new Response(Z?.message,{...J.payload.view,status:G})}else throw this.service.onRequestFail(x,J),J}})}}class Ns extends Y{routes={"/api-routes":this.get(()=>{let s=h.use().flatRoutes,f=[];for(let[c,w]of Object.entries(s))for(let[i,b]of Object.entries(w)){let{exec:l,middleware:y}=b;f.push({path:c,method:i,middleware:y})}return f}),"/view-routes":this.get(()=>{let s=xs.use().flatViewRoutes,f=[];for(let[c,{middleware:w,viewPath:i}]of Object.entries(s))f.push({path:c,method:"GET",viewPath:i,middleware:w});return f})}}class h extends M{service;static _name="ApiRouterServiceContainer";flatRoutes={};constructor(s){super();this.service=s;this.flatRoutes=Fs({"/":this.service.rootRouter.bind(this.service),"/auth":bs,"/__gemi__/services/i18n":ls,"/__gemi__/services/logs":ps,"/__gemi__/services/image":ys,"/__gemi__/debug":Ns})}getRouteHandlerAndParams(s){let c=new URL(s.url).pathname.replace("/api",""),w={},i;for(let[b]of Object.entries(this.flatRoutes))try{let l=new URLPattern({pathname:b});if(l.test({pathname:c})){i=b,w=l.exec({pathname:c})?.pathname.groups;break}}catch(l){console.error(l)}return{params:w,path:i}}async runRouteMiddleware(s,f){let w=this.flatRoutes[s][f.rawRequest.method].middleware;try{await d.use().runMiddleware(w)}catch(i){if(i.kind===A){if(f.rawRequest.url.includes("/api")){let{status:b=400,data:l,headers:y}=i.payload.api;return new Response(JSON.stringify(l),{status:b,headers:{"Content-Type":"application/json",...y}})}}else throw this.service.onRequestFail(f,i),console.error(i),i}}async getRouteData(s){let f=this.flatRoutes[s],c=L.getStore(),w=f[c.req.rawRequest.method].exec??(()=>Promise.resolve({})),i={};try{i=await w()}catch(b){if(b.kind===A){let{status:l=400,data:y,headers:O}=b.payload.api;return new Response(JSON.stringify(y),{status:l,headers:{"Content-Type":"application/json",...O}})}throw this.service.onRequestFail(c.req,b),console.error(b),b}return i}async handleApiRequest(s){let{params:f,path:c}=this.getRouteHandlerAndParams(s),w=this.flatRoutes[c];if(!w||!w[s.method])return new Response(JSON.stringify({error:{message:"Not found"}}),{status:404});let i=new $(s,f,"api",c);if(!s.url.includes("/__gemi__"))this.service.onRequestStart(i);return await L.run(i,async()=>{let b=L.getStore();b.setRequest(i);let l=await this.runRouteMiddleware(c,i);if(l instanceof Response)return l;let y=await this.getRouteData(c);if(y instanceof Response)return y;let O=b.headers;if(O.append("Content-Type","application/json"),b.cookies.forEach((g)=>O.append("Set-Cookie",g.toString())),b.destroy(),!s.url.includes("/__gemi__"))this.service.onRequestEnd(i);return new Response(JSON.stringify(y),{headers:O})})}}class u{static prepare(s,...f){let c={params:{},search:{}},[w={}]=f,{search:i,params:b}={...c,...w},l=L.getStore();if(l.req.kind==="api")throw new Error("Query.prefetch() cannot be called from an API request");let y=l.req.rawRequest,O=new URL(y.url),g=new URLSearchParams(Ts(i));g.delete("json"),g.sort();let p=[`${Q(s,b)}`,g.toString()].filter((x)=>x.length>0).join("?"),F=`${O.origin}/${p}`,n=new Request(F,{headers:y.headers}),U=new $(n,b),T=(x)=>{l.prefetchedResources.set(Q(s,b),{[g.toString()]:x})},D=()=>{return L.run(U,async()=>{let x=await h.use().getRouteData(s);return T(x),x})};return{instant:D,prefetch:()=>{l.prefetchPromiseQueue.add(D)}}}static instant(s,...f){return u.prepare(s,...f).instant()}static prefetch(s,...f){return u.prepare(s,...f).prefetch()}}class Qs{static absolute(s,...f){return`${process.env.HOST_NAME}${Q(String(s),f[0]??{})}`}static relative(s,...f){return Q(String(s),f[0]??{})}}export{Qs as Url,hs as Redirect,u as Query,q as Log,V as I18n,zs as FileStorage,C as Broadcast,N as Auth};export{S as y,o as z,W as A,os as B,Xs as C,d as D,xs as E,h as F};
5
5
 
6
- //# debugId=B345F6DC2D812F3D64756E2164756E21
6
+ //# debugId=CEDE16F32963372E64756E2164756E21
@@ -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": "B345F6DC2D812F3D64756E2164756E21",
31
+ "debugId": "CEDE16F32963372E64756E2164756E21",
32
32
  "names": []
33
33
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{tc as ft,vc as Me}from"../chunk-fgafrjxy.js";import{wc as qe}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 _u(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(_u(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 zu 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 Bu}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 Bu;class Ke{req;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;csrfHmac=null;locale=null;constructor(t){this.req=t}setLocale(t){this.locale=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 ns{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 Ju(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 Xu(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 Qu(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=Xu(r);return a.type.startsWith(i)}};case"fileSize":return(a)=>{if(a instanceof Blob){let i=Ju(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=ns.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[l,d]=n.split("=");o.set(l.trim(),d.trim())}}if(this.rawRequest.method==="GET"){let e=new URL(this.rawRequest.url),n=new Map;for(let[d,u]of e.searchParams)if(n.has(d)){let c=n.get(d);if(Array.isArray(c))c.push(u),n.set(d,c);else n.set(d,[c,u])}else n.set(d,u);let l=Object.fromEntries(n.entries());this.search=new bs(l)}this.cookies=o}locale(){return ns.getStore().locale}ctx(){return ns.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=Qu(i),n=o,l=!1;if(typeof o==="function")n=o(t.get(r)),l=typeof n==="undefined";else l=e(t.get(r));if(l)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 Yu(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 ve extends qe{aliases={};boot(){}}class Ee 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 Fe 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 Fm}from"crypto";function et(t,s,r,a,i){return yt(s,Qe(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(Fd(t,s,r,a,o));return e}function Qe(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 dt(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 cs({name:t},1)}function cs(t,s){return Ct((r)=>({value:r,configurable:1,writable:!s}),t)}function Ye(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 tc(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 tn(t,s){for(let r of s)if(!(r in t))return 0;return 1}function sn(t,s,r){for(let a of t)if(s[a]!==r[a])return 0;return 1}function rn(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 $e(t){return t[0].toUpperCase()+t.substring(1)}function cr(t){return t.slice().sort()}function jr(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 an(t,s,r){let a=0,i=0;for(let n=0;n<=s;n++){let l=t[r[n]],d=It[n],u=O/d,[c,p]=_t(l,u);a+=p*d,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 on(t){return t===x?Aa:[]}function en(t){return t===x?xr:[]}function nn(t){return t===x?["year","day"]:[]}function ln(t){if(t!==void 0)return K(t)}function dn(t){if(t!==void 0)return Rt(t)}function Ti(t){if(t!==void 0)return pr(t)}function Rt(t){return pn(pr(t))}function pr(t){return cn(Gc(t))}function Pi(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function un(t,s){if(s==null)throw new RangeError(Ko(t));return s}function Zt(t){if(!U(t))throw new TypeError(Ed);return t}function Qr(t,s,r=t){if(typeof s!==t)throw new TypeError(yr(r,s));return s}function cn(t,s="number"){if(!Number.isInteger(t))throw new RangeError(hc(s,t));return t||0}function pn(t,s="number"){if(t<=0)throw new RangeError(fc(s,t));return t}function hi(t){if(typeof t=="symbol")throw new TypeError(xc);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(wc(t));return t}function mn(t,s="number"){if(typeof t=="bigint")throw new TypeError(gc(s));if(t=Number(t),!Number.isFinite(t))throw new RangeError(yc(s,t));return t}function Q(t,s){return Math.trunc(mn(t,s))||0}function Tn(t,s){return cn(mn(t,s),s)}function Ze(t,s){return pn(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 Pn(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 hn(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",dr,lr,1),t.isoYear===dr?et(t,"isoMonth",4,12,1):t.isoYear===lr&&et(t,"isoMonth",1,9,1),t}function Gt(t){return Lt({...t,...xt,isoHour:12}),t}function Lt(t){let s=et(t,"isoYear",dr,lr,1),r=s===dr?1:s===lr?-1:0;return r&&ht(Y({...t,isoDay:t.isoDay+r,isoNanosecond:t.isoNanosecond-r})),t}function ht(t){if(!t||Pn(t,Qc,Xc))throw new RangeError(Da);return t}function zt(t){return an(t,5,Dt)[1]}function sa(t){let[s,r]=Ft(t,O);return[Xr(r,5,Dt),s]}function fn(t){return yn(t)[0]}function yn(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,lt);return[r,a*St+(t.isoMicrosecond||0)*ws+(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)/_d}function qs(...t){let[s,r]=gn(...t),a=s.valueOf();if(!isNaN(a))return a-r*lt}function gn(t,s=1,r=1,a=0,i=0,o=0,e=0){let n=t===dr?1:t===lr?-1:0,l=new Date;return l.setUTCHours(a,i,o,e),l.setUTCFullYear(t,s-1,r+n),[l,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,ws);return ra(r*lt+i,e,n)}function ra(t,s=0,r=0){let a=Math.ceil(Math.max(0,Math.abs(t)-Jc)/lt)*Math.sign(t),i=new Date(t-a*lt);return Ks(qa,[i.getUTCFullYear(),i.getUTCMonth()+1,i.getUTCDate()+a,i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds(),i.getUTCMilliseconds(),s,r])}function wn(t){return[t.isoYear,t.isoMonth,t.isoDay]}function xn(){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 Cn(t){return Ri(t)?366:365}function Ri(t){return t%4==0&&(t%100!=0||t%400==0)}function Rn(t){let[s,r]=gn(t.isoYear,t.isoMonth,t.isoDay);return ar(s.getUTCDay()-r,7)||7}function On({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function sc(t){let s=st(t);if(s<tp)return On(t);let r=gi(Jo(Ss),s),{era:a,eraYear:i}=El(r,Ss);return[a,i]}function aa(t){return ps(t),ia(t,1),t}function ps(t){return bn(t,1),t}function Le(t){return sn(No,t,bn(t))}function bn(t,s){let{isoYear:r}=t,a=et(t,"isoMonth",1,xn(),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:uu(Zt(t))}function mr(t,s=0){t=Ot(t);let r=cu(t),a=up(t,s);return[uu(t),a,r]}function Oi(t){return cu(Ot(t))}function Hn(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),l=Rr(s,o),d=Cr(s,a,i,1);return e==null?e=Math.max(r,d):Sn(e,d),n=Mi(n,d,1),t&&(l=((u)=>u<4?(u+2)%4:u)(l)),[e,d,n,l]}function oa(t,s=6,r){let a=Di(t=Ii(t,zr)),i=Rr(t,7),o=Cr(t,s);return o=un(zr,o),a=Mi(a,o,void 0,r),[o,a,i]}function bi(t){return Wo(Ot(t))}function Dn(t,s){return Hi(Ot(t),s)}function Hi(t,s=4){let r=In(t);return[Rr(t,4),...Mn(Cr(t,s),r)]}function Mn(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 In(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(Ed)}}function ea(t,s){return t&&Object.assign(Object.create(null),t,{overflow:rp[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=zc[o]),e===void 0)throw new RangeError(Ld(t,o,ei));return yt(t,e,a,r,1,wr),e}function ms(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(Ld(t,o,s));return e}function Sn(t,s){if(s>t)throw new RangeError(jc)}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:Cs,calendar:s,...ct(eu,t)}}function Z(t,s=t.calendar){return{branding:xs,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(ou,t)}}function I(t){return{branding:Fa,sign:Xt(t),...ct(Lo,t)}}function An(t){return fn(t.epochNanoseconds)}function na(t){return yi(t.epochNanoseconds,St)[0]}function Kn(t){return hn(t.epochNanoseconds,ws)}function qn(t){return hn(t.epochNanoseconds)}function vn(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 En(t,s,r,a,i){let o=us(a),[e,n]=((h,y)=>{let f=y((h=Ii(h,di))[lu]),g=dp(h);return g=un(di,g),[g,f]})(i,t);if(er(Math.max(e,o),n))return je(a,e);if(!n)throw new RangeError(Ma);let[l,d,u]=ma(s,r,n),c=to(u),p=Ta(u),m=so(u),T=p(d,l,a),P=m(d,l,T,e);return er(e,n)?je(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,d,l,c,p)}function je(t,s){return Pt(N(t),It[s],1)}function Ai(t,s,r,a,i,o,e){let n=R[r],l={...s,[n]:s[n]+a},d=e(t,i,s),u=e(t,i,l);return[o(d),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 Fn(t,s){let[r,a,i]=oa(s,5,1);return V(da(t.epochNanoseconds,r,a,i,1))}function $n(t,s,r){let{epochNanoseconds:a,timeZone:i,calendar:o}=s,[e,n,l]=oa(r);if(e===0&&n===1)return s;let d=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(Pn(y,f,g))throw new RangeError(gr);return Wn(Ki(y,f,g),m)?g:f})(Vn,d,s,l);else{let u=d.getOffsetNanosecondsFor(a);a=Ps(d,Nn(Jt(a,u),e,n,l),u,2,0,1)}return z(a,i,o)}function Zn(t,s){return $(Nn(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 jn(t,s){let r=t(s.timeZone),a=rt(s,r),[i,o]=Vn(a),e=Pt(Tt(ut(r,i),ut(r,o)),Sa,1);if(e<=0)throw new RangeError(gr);return e}function kn(t,s){let{timeZone:r,calendar:a}=s,i=((o,e,n)=>ut(e,o(rt(n,e))))(Gn,t(r),s);return z(i,r,a)}function Nn(t,s,r,a){return Un(t,Tr(s,r),a)}function Un(t,s,r){let[a,i]=qi(t,s,r);return Lt({...hs(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 Vn(t){let s=Gn(t);return[s,hs(s,1)]}function Gn(t){return Bc(6,t)}function rc(t,s,r){let a=Math.min(us(t),6);return $s(ua(N(t,a),s,r),a)}function la(t,s,r,a,i,o,e,n,l,d){if(a===0&&i===1)return t;let u=er(a,n)?Pa(n)&&a<6&&r>=6?ic:ac:oc,[c,p,m]=u(t,s,r,a,i,o,e,n,l,d);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,l,d)),c}function da(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 Wn(t/s,r)*s}function Wn(t,s){return mp[s](t)}function ac(t,s,r,a,i,o){let e=Xt(t),n=N(t),l=da(n,a,i,o),d=Tt(n,l),u=Math.sign(l[0]-n[0])===e,c=$s(l,Math.min(r,6));return[{...t,...c},Ds(s,d),u]}function ic(t,s,r,a,i,o,e,n,l,d){let u=Xt(t),c=Pt(N(t,5)),p=Tr(a,i),m=Bt(c,p,o),[T,P]=Ai(e,{...t,...jo},6,u,n,l,d),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 oc(t,s,r,a,i,o,e,n,l,d){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,l,d),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]=((d)=>{let u=Hi(d=Ot(d));return[d.timeZone,...u]})(a),l=i!==void 0;return((d,u,c,p,m,T)=>{c=ua(c,m,p,1);let P=u.getOffsetNanosecondsFor(c);return ki(Jt(c,P),T)+(d?Ts(Vr(P)):"Z")})(l,s(l?t(i):Rs),r.epochNanoseconds,o,e,n)}function Ei(t,s,r){let[a,i,o,e,n,l]=((d)=>{d=Ot(d);let u=Wo(d),c=In(d),p=pp(d),m=Rr(d,4),T=Cr(d,4);return[u,cp(d),p,m,...Mn(T,c)]})(r);return((d,u,c,p,m,T,P,h,y,f)=>{p=ua(p,y,h,1);let g=d(c).getOffsetNanosecondsFor(p);return ki(Jt(p,g),f)+Ts(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,l)}function Fi(t,s){let[r,a,i,o]=((d)=>(d=Ot(d),[Wo(d),...Hi(d)]))(s);return e=t.calendar,n=r,l=o,ki(Un(t,i,a),l)+Ni(e,n);var e,n,l}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 _n(t.calendar,zn,t,bi(s))}function Li(t,s){return _n(t.calendar,ec,t,bi(s))}function ji(t,s){let[r,a,i]=Dn(s);return o=i,Bn(qi(t,a,r)[0],o);var o}function ca(t,s){let[r,a,i]=Dn(s,3);return a>1&&(t={...t,...rc(t,a,r)}),((o,e)=>{let{sign:n}=o,l=n===-1?at(o):o,{hours:d,minutes:u}=l,[c,p]=yi(N(l,3),wt,_t);al(c);let m=Ui(p,e),T=e>=0||!n||m;return(n<0?"-":"")+"P"+ke({Y:ls(l.years),M:ls(l.months),W:ls(l.weeks),D:ls(l.days)})+(d||u||c||T?"T"+ke({H:ls(d),M:ls(u),S:ls(c,T)+m}):"")})(t,i)}function _n(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)+Jn(i,a===2):s(r)}function ke(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"+Bn(t,s)}function Gr(t){return zn(t)+"-"+gt(t.isoDay)}function zn(t){let{isoYear:s}=t;return(s<0||s>9999?Xn(s)+jr(6,Math.abs(s)):jr(4,s))+"-"+gt(t.isoMonth)}function ec(t){return gt(t.isoMonth)+"-"+gt(t.isoDay)}function Bn(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*ws+o,e))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,s)),r.join(":")}function Ts(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 Xn(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 Jn(r,s===2)}return""}function Jn(t,s){return"["+(s?"!":"")+"u-ca="+t+"]"}function Ui(t,s){let r=jr(9,t);return r=s===void 0?r.replace(hp,""):r.slice(0,s),r?"."+r:""}function Xn(t){return t<0?"-":"+"}function ls(t,s){return t||s?t.toLocaleString("fullwide",{useGrouping:0}):""}function nc(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 Qn(t,s){let r=rt(s,t);return{calendar:s.calendar,...ct(eu,r),offset:Ts(r.offsetNanoseconds),timeZone:s.timeZone}}function Ps(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 l=((d,u,c,p)=>{let m=Y(u);p&&(c=Vr(c));for(let T of d){let P=Pt(Tt(T,m));if(p&&(P=Vr(P)),P===c)return T}})(n,s,r,o);if(l!==void 0)return l;if(a===0)throw new RangeError(vc)}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(Ec);if(a.length)return a[r===3?1:0];let i=Y(s),o=((n,l)=>{let d=n.getOffsetNanosecondsFor(Ms(l,-O));return Gi(n.getOffsetNanosecondsFor(Ms(l,O))-d)})(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(Kc);return t}function Gi(t){if(t>O)throw new RangeError(qc);return t}function Wi(t,s,r){return V(ht(Ds(s.epochNanoseconds,((a)=>{if(il(a))throw new RangeError(Zc);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=hs(n,-1));let l=e.dateAdd(n,a,i);return ds(or(e,l),o)}function Xi(t,s,r){return bt(Yn(s,t?at(r):r)[0])}function Qi(t,s,r,a,i){let o=N(a,5),e=r.epochNanoseconds;if(il(a)){let n=rt(r,t);e=Ds(ut(t,{...pa(s,n,{...a,...jo},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]=Yn(s,r);return Lt({...pa(t,s,{...r,...jo,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(hs(s,i)):s}function or(t,s,r=1){return hs(s,r-t.day(s))}function Yn(t,s){let[r,a]=N(s,5),[i,o]=sa(zt(t)+a);return[i,r+o]}function hs(t,s){return s?{...t,...ra(st(t)+s*lt)}: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?vn:Y}function Ta(t){return t?w(Qi,t):Yi}function so(t){return t?w(dc,t):uc}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),l=Math.max(us(i),us(o));if(er(l,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,l,a)));if(!n)throw new RangeError(Ma);a&&(o=at(o));let[d,u,c]=ma(s,r,n),p=Ta(c),m=so(c),T=p(u,d,i);return I(m(u,d,p(u,T,o),l))}function tl(t,s,r,a,i){let o=us(a),[e,n,l,d,u]=((M,A,G)=>{M=Ii(M,zr);let k=Go(M),Js=G(M[lu]),Xs=Di(M),Wu=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)),Sn(k,es),Xs=Mi(Xs,es,1),[k,es,Xs,Wu,Js]})(i,o,t),c=Math.max(o,e);if(!Pa(u)&&c<=6)return I(Fs(((M,A,G,k,Js)=>{let Xs=da(N(M),G,k,Js);return{..._,...$s(Xs,A)}})(a,e,n,l,d)));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=la(g,P(f),e,n,l,d,m,p,P,h)),I(g)}function sl(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 rl(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($c);r=i}}return r}function Fs(t){for(let s of _c)yt(s,t[s],-ze,ze,1);return al(Pt(N(t),wt)),t}function al(t){if(!Number.isSafeInteger(t))throw new RangeError(Fc)}function N(t,s=6){return an(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 il(t){return Boolean(Xt(t,iu))}function us(t){let s=9;for(;s>0&&!t[R[s]];s--);return s}function lc(t,s){return[t,s]}function Ne(t){let s=Math.floor(t/Zr)*Zr;return[s,s+Zr]}function ol(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 el(t){let s=Qt(K(t));if(!s)throw new RangeError(nt(t));if(s.timeZone)return Pl(s,s.offset?Zs(s.offset):void 0);if(s.m)throw new RangeError(nt(t));return fl(s)}function nl(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 Pl(r,i,o,e)}function Zs(t){let s=eo(t);if(s===void 0)throw new RangeError(nt(t));return s}function ll(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return $(hl(s))}function ya(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return Z(s.p?hl(s):fl(s))}function dl(t,s){let r=io(K(s));if(r)return ao(r),ds(wi(ps(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 ul(t,s){let r=oo(K(s));if(r)return ao(r),Ur(ps(r));let a=ya(s),{calendar:i}=a,o=t(i),[e,n,l]=o.h(a),[d,u]=o.I(e,n),[c,p]=o.N(d,u,l);return Ur(Gt(o.P(c,p,l)),i)}function cl(t){let s,r=((a)=>{let i=xp.exec(a);return i?(ga(i[10]),wl(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 pl(t){let s=((r)=>{let a=Op.exec(r);return a?((i)=>{function o(u,c,p){let m=0,T=0;if(p&&([m,l]=Ft(l,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&&(l=no(c)*(It[p]/wt),n=1)}return m+T}let e=0,n=0,l=0,d={...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(l,2,R)};if(!e)throw new RangeError($d(R));return lo(i[1])<0&&(d=at(d)),d})(a):void 0})(K(t));if(!s)throw new RangeError(nt(t));return I(Fs(s))}function ml(t){let s=Qt(t)||io(t)||oo(t);return s?s.calendar:t}function Tl(t){let s=Qt(t);return s&&(s.timeZone||s.m&&Rs||s.offset)||t}function Pl(t,s,r=0,a=0){let i=wa(t.timeZone),o=$a(i);return z(Ps(o,aa(t),s,r,a,!o.v,t.m),i,Pr(t.calendar))}function hl(t){return yl(Lt(aa(t)))}function fl(t){return yl(Gt(ps(t)))}function yl(t){return{...t,calendar:Pr(t.calendar)}}function Qt(t){let s=wp.exec(t);return s?((r)=>{let a=r[10],i=(a||"").toUpperCase()==="Z";return{isoYear:gl(r),isoMonth:parseInt(r[4]),isoDay:parseInt(r[5]),...wl(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=yp.exec(t);return s?((r)=>({isoYear:gl(r),isoMonth:parseInt(r[4]),isoDay:1,...ga(r[5])}))(s):void 0}function oo(t){let s=gp.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=Cp.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 gl(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 wl(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(Rp,(i,o,e)=>{let n=Boolean(o),[l,d]=e.split("=").reverse();if(d){if(d==="u-ca")a.push(l),s||(s=n);else if(n||/[A-Z]/.test(d))throw new RangeError($t(i))}else{if(r)throw new RangeError($t(i));r=l}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 Ls(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 xl(t){return wa(K(t))}function wa(t){let s=uo(t);return typeof s=="number"?Ts(s):s?((r)=>{if(Hp.test(r))throw new RangeError(Ac);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?$e(o).replace(/island|noronha|murdo|rivadavia|urville/,$e):o)).join("/")})(t):Rs}function Ue(t){let s=uo(t);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Rs}function uo(t){let s=eo(t=t.toUpperCase(),1);return s!==void 0?s:t!==Rs?bp(t):void 0}function co(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function po(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function Cl(t,s,r,a,i,o){let e=t(Ot(o).relativeTo),n=Math.max(us(a),us(i));if(sn(R,a,i))return 0;if(er(n,e))return tt(N(a),N(i));if(!e)throw new RangeError(Ma);let[l,d,u]=ma(s,r,e),c=to(u),p=Ta(u);return tt(c(p(d,l,a)),c(p(d,l,i)))}function mo(t,s){return fs(t,s)||xa(t,s)}function fs(t,s){return Vt(st(t),st(s))}function xa(t,s){return Vt(zt(t),zt(s))}function Rl(t,s){return!co(t,s)}function Ol(t,s){return!po(t,s)&&!!Ca(t.timeZone,s.timeZone)&&Es(t.calendar,s.calendar)}function bl(t,s){return!mo(t,s)&&Es(t.calendar,s.calendar)}function Hl(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Dl(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Ml(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Il(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 Ue(r)===Ue(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),[l,d,u,c]=vs(r,n,5),p=a.epochNanoseconds,m=i.epochNanoseconds,T=tt(m,p),P;if(T)if(l<6)P=Ra(p,m,l,d,u,c);else{let h=s(((f,g)=>{if(!Ca(f,g))throw new RangeError(Ud);return f})(a.timeZone,i.timeZone)),y=t(e);P=Al(y,h,a,i,T,l,n),P=la(P,m,l,d,u,c,y,a,vn,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,l,d,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,l,d,u);else{let P=t(o);T=Kl(P,r,a,m,n,e),T=la(T,p,n,l,d,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 Sl(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),l=t(o);return Sl(s,()=>l,or(l,r),or(l,a),...n,e)}function Sl(t,s,r,a,i,o,e,n,l){let d=Y(r),u=Y(a),c;if(tt(u,d))if(i===6)c=Ra(d,u,i,o,e,n);else{let p=s();c=p.dateUntil(r,a,i,l),o===6&&e===1||(c=la(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,l]=vs(t,i,5,5),d=Bt(wo(s,r),Tr(e,n),l),u={..._,...fa(d,o)};return I(t?at(u):u)}function dc(t,s,r,a,i,o){let e=tt(a.epochNanoseconds,r.epochNanoseconds);return e?i<6?ql(r.epochNanoseconds,a.epochNanoseconds,i):Al(s,t,r,a,e,i,o):_}function uc(t,s,r,a,i){let o=Y(s),e=Y(r),n=tt(e,o);return n?a<=6?ql(o,e,a):Kl(t,s,r,n,a,i):_}function Al(t,s,r,a,i,o,e){let[n,l,d]=((p,m,T,P)=>{function h(){return A={...hs(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=l,{..._,days:vl(u,c)}):t.dateUntil(n,l,o,e),...fa(d)}}function Kl(t,s,r,a,i,o){let[e,n,l]=((d,u,c)=>{let p=u,m=wo(d,u);return Math.sign(m)===-c&&(p=hs(u,-c),m+=O*c),[d,p,m]})(s,r,a);return{...t.dateUntil(e,n,i,o),...fa(l)}}function Ra(t,s,r,a,i,o){return{..._,...$s(da(Tt(t,s),a,i,o),r)}}function ql(t,s,r){return{..._,...$s(Tt(t,s),r)}}function vl(t,s){return Oa(st(t),st(s))}function Oa(t,s){return Math.trunc((s-t)/lt)}function wo(t,s){return zt(s)-zt(t)}function ba(t,s){if(!Es(t,s))throw new RangeError(Eo);return t}function cc(t){function s(i){return((o,e)=>({...El(o,e),F:o.month,day:parseInt(o.day)}))(gi(r,i),a)}let r=Jo(t),a=Wr(t);return{id:t,O:pc(s),B:mc(s)}}function pc(t){return dt((s)=>{let r=st(s);return t(r)},WeakMap)}function mc(t){let s=t(0).year-Yc;return dt((r)=>{let a,i=qs(r-s),o=[],e=[];do i+=400*lt;while((a=t(i)).year<=r);do i+=(1-a.day)*lt,a.year===r&&(o.push(i),e.push(a.F)),i-=lt;while((a=t(i)).year>=r);return{k:o.reverse(),C:Wd(e.reverse())}})}function El(t,s){let r,a,i=Fl(t);if(t.era){let o=su[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=kl(a,o[r]||0))}return{era:r,eraYear:a,year:i}}function Fl(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)*lt}function Er(t){let s=Ge(this,t),r=Ge(this,t-1),a=s.length;if(a>r.length){let i=Nl(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 Ve(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 Ge(t,s){return Object.keys(t.B(s).C)}function $l(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(Sc(t));return t}function Wr(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function Zl(t){return this.R(t)[0]}function Ll(t){return this.R(t)[1]}function xo(t){let[s]=this.h(t);return Oa(this.q(s),st(t))+1}function jl(t){let s=Mp.exec(t);if(!s)throw new RangeError(Mc(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 kl(t,s){return(s+t)*(Math.sign(s)||1)||0}function oi(t){return su[Ul(t)]}function Nl(t){return Vc[Ul(t)]}function Ul(t){return Wr(t.id||x)}function Vl(t,s,r,a){let i=Yt(r,a,Ht,[],Xd);if(i.timeZone!==void 0){let o=r.dateFromFields(i),e=ys(i),n=t(i.timeZone);return{epochNanoseconds:Ps(s(n),{...o,...e},i.offset!==void 0?Zs(i.offset):void 0),timeZone:n}}return{...r.dateFromFields(i),...xt}}function Gl(t,s,r,a,i,o){let e=Yt(r,i,Ht,Bd,Xd),n=t(e.timeZone),[l,d,u]=mr(o),c=r.dateFromFields(e,ea(o,l)),p=ys(e,l);return z(Ps(s(n),{...c,...p},e.offset!==void 0?Zs(e.offset):void 0,d,u),n,a)}function Wl(t,s,r){let a=Yt(t,s,Ht,[],Nt),i=C(r);return $(Lt({...t.dateFromFields(a,ea(r,i)),...ys(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 _l(t,s){let r=C(s);return bt(ys(Mt(t,ni,[],1),r))}function zl(t){let s=Mt(t,Lo);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(Cc(n));if(n==="constructor"||n==="__proto__")throw new RangeError(qo(n));let l=t[n];if(l!==void 0)e=1,Be[n]&&(l=Be[n](l,n)),i[n]=l;else if(r){if(r.includes(n))throw new TypeError(Ko(n));i[n]=tu[n]}o=n}if(a&&!e)throw new TypeError($d(s));return i}function ys(t,s){return ia(Kp({...tu,...t}),s)}function Bl(t,s,r,a,i,o){let e=F(o),{calendar:n,timeZone:l}=r;return z(((d,u,c,p,m)=>{let T=hr(d,c,p,Ht,Jd,zd),[P,h,y]=mr(m,2);return Ps(u,{...d.dateFromFields(T,ea(m,P)),...ys(T,P)},Zs(T.offset),h,y)})(t(n),s(l),a,i,e),l,n)}function Jl(t,s,r,a,i){let o=F(i);return $(((e,n,l,d)=>{let u=hr(e,n,l,Ht,Nt),c=C(d);return Lt({...e.dateFromFields(u,ea(d,c)),...ys(u,c)})})(t(s.calendar),r,a,o))}function Xl(t,s,r,a,i){let o=F(i);return((e,n,l,d)=>{let u=hr(e,n,l,Ht);return e.dateFromFields(u,d)})(t(s.calendar),r,a,o)}function Ql(t,s,r,a,i){let o=F(i);return ds(((e,n,l,d)=>{let u=hr(e,n,l,Zo);return e.yearMonthFromFields(u,d)})(t(s.calendar),r,a,o))}function Yl(t,s,r,a,i){let o=F(i);return((e,n,l,d)=>{let u=hr(e,n,l,Ht);return e.monthDayFromFields(u,d)})(t(s.calendar),r,a,o)}function td(t,s,r){return bt(((a,i,o)=>{let e=C(o);return ys({...ct(ni,a),...Mt(i,ni)},e)})(t,s,r))}function sd(t,s){return I((r=t,a=s,Fs({...r,...Mt(a,Lo)})));var r,a}function hr(t,s,r,a,i=[],o=[]){let e=[...t.fields(a),...i].sort(),n=Mt(s,e,o),l=Mt(r,e);return n=t.mergeFields(n,l),Mt(n,e,[])}function bo(t,s){let r=Yt(t,s,Yd);return t.monthDayFromFields(r)}function Ho(t,s,r){let a=Yt(t,s,Qd);return t.yearMonthFromFields(a,r)}function rd(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(Oc);if(!o)throw new RangeError(Rc);let e=o[r];if(e===void 0)throw new RangeError(Hc(r));let n=kl(a,e);if(i!==void 0&&i!==n)throw new RangeError(bc);i=n}else if(i===void 0)throw new TypeError(Dc(o));return i}function Ya(t,s,r,a){let{month:i,monthCode:o}=s;if(o!==void 0){let e=((n,l,d,u)=>{let c=n.U(d),[p,m]=jl(l),T=_r(p,m,c);if(m){let P=Nl(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(kd);i=e,a=1}else if(i===void 0)throw new TypeError(Ic);return yt("month",i,1,t.L(r),a)}function We(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 ad(t){return V(ht(ta(Yr(t))))}function id(t,s,r,a,i=x){return z(ht(ta(Yr(r))),s(a),t(i))}function od(t,s,r,a,i=0,o=0,e=0,n=0,l=0,d=0,u=x){return $(Lt(aa(Ct(Q,Ks(qa,[s,r,a,i,o,e,n,l,d])))),t(u))}function ed(t,s,r,a,i=x){return Z(Gt(ps(Ct(Q,{isoYear:s,isoMonth:r,isoDay:a}))),t(i))}function nd(t,s,r,a=x,i=1){let o=Q(s),e=Q(r),n=t(a);return ds(wi(ps({isoYear:o,isoMonth:e,isoDay:Q(i)})),n)}function ld(t,s,r,a=x,i=As){let o=Q(s),e=Q(r),n=t(a);return Ur(Gt(ps({isoYear:Q(i),isoMonth:o,isoDay:e})),n)}function dd(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 ud(t=0,s=0,r=0,a=0,i=0,o=0,e=0,n=0,l=0,d=0){return I(Fs(Ct(Tn,Ks(R,[t,s,r,a,i,o,e,n,l,d]))))}function Do(t,s,r=x){return z(t.epochNanoseconds,s,r)}function cd(t){return V(t.epochNanoseconds)}function Mo(t,s){return $(rt(s,t))}function Io(t,s){return Z(rt(s,t))}function pd(t,s,r){return Ho(t(s.calendar),r)}function md(t,s,r){return bo(t(s.calendar),r)}function So(t,s){return bt(rt(s,t))}function Td(t,s,r,a){let i=((o,e,n,l)=>{let d=Oi(l);return ut(o(e),n,d)})(t,r,s,a);return z(ht(i),r,s.calendar)}function Pd(t,s,r){let a=t(s.calendar);return ds({...s,...Ho(a,r)})}function hd(t,s,r){return bo(t(s.calendar),r)}function fd(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 yd(t,s=xt){return $(Lt({...t,...s}))}function gd(t,s,r){return Ho(t(s.calendar),r)}function wd(t,s,r){return bo(t(s.calendar),r)}function xd(t,s,r,a){return((i,o,e)=>rd(i,o,Qd,Zt(e),xr))(t(s.calendar),r,a)}function Cd(t,s,r,a){return((i,o,e)=>rd(i,o,Yd,Zt(e),Aa))(t(s.calendar),r,a)}function Rd(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 Od(t,s){return $(Lt({...t,...s}))}function bd(t){return V(ht(Is(t,wt)))}function Hd(t){return V(ht(Is(t,St)))}function Dd(t){return V(ht(ta(Yr(t),ws)))}function Md(t){return V(ht(ta(Yr(t))))}function Id(t,s,r=xt){let a=s.timeZone,i=t(a),o={...rt(s,i),...r};return z(Ps(i,o,o.offsetNanoseconds,2),a,s.calendar)}function Sd(t,s,r){let a=s.timeZone,i=t(a),o={...rt(s,i),...r},e=vd(s.calendar,r.calendar);return z(Ps(i,o,o.offsetNanoseconds,2),a,e)}function Ad(t,s=xt){return $({...t,...s})}function Kd(t,s){return $({...t,...s},vd(t.calendar,s.calendar))}function Ha(t,s){return{...t,calendar:s}}function qd(t,s){return{...t,timeZone:s}}function vd(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 Tc(t,s){return(r)=>r===x?t:r===Ka||r===Ss?Object.assign(Object.create(t),{id:r}):Object.assign(Object.create(s),Dp(r))}function gs(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=Rs,["full","long"].includes(i.timeStyle)&&(i.timeStyle="medium")),i)}function jt(t,s=Ao){let[r,,,a]=t;return(i,o=zp,...e)=>{let n=s(a&&a(...e),i,o,r),l=n.resolvedOptions();return[n,...Pc(t,l,e)]}}function Ao(t,s,r,a){if(r=a(r),t){if(r.timeZone!==void 0)throw new TypeError(kc);r.timeZone=t}return new ts(s,r)}function Pc(t,s,r){let[,a,i]=t;return r.map((o)=>(o.calendar&&((e,n,l)=>{if((l||e!==x)&&e!==n)throw new RangeError(Eo)})(W(o.calendar),s.calendar,i),a(o,s)))}function js(t){let s=fr();return Jt(s,t.getOffsetNanosecondsFor(s))}function fr(){return Is(Date.now(),St)}function kt(){return Xe||(Xe=new ts().resolvedOptions().timeZone)}var hc=(t,s)=>`Non-integer ${t}: ${s}`,fc=(t,s)=>`Non-positive ${t}: ${s}`,yc=(t,s)=>`Non-finite ${t}: ${s}`,gc=(t)=>`Cannot convert bigint to ${t}`,wc=(t)=>`Invalid bigint: ${t}`,xc="Cannot convert Symbol to string",Ed="Invalid object",Fd=(t,s,r,a,i)=>i?Fd(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}`,Cc=(t)=>`Duplicate field ${t}`,$d=(t)=>"No valid fields: "+t.join(),Zd="Invalid bag",Ld=(t,s,r)=>yr(t,s)+"; must be "+Object.keys(r).join(),jd="Cannot use valueOf",vo="Invalid calling context",Rc="Forbidden era/eraYear",Oc="Mismatching era/eraYear",bc="Mismatching year/eraYear",Hc=(t)=>`Invalid era: ${t}`,Dc=(t)=>"Missing year"+(t?"/era/eraYear":""),Mc=(t)=>`Invalid monthCode: ${t}`,kd="Mismatching month/monthCode",Ic="Missing month/monthCode",_e="Cannot guess year",rr="Invalid leap month",Nd="Invalid protocol",gr="Invalid protocol results",Eo="Mismatching Calendars",Sc=(t)=>`Invalid Calendar: ${t}`,Ud="Mismatching TimeZones",Ac="Forbidden ICU TimeZone",Kc="Out-of-bounds offset",qc="Out-of-bounds TimeZone gap",vc="Invalid TimeZone offset",Ec="Ambiguous offset",Da="Out-of-bounds date",Fc="Out-of-bounds duration",$c="Cannot mix duration signs",Ma="Missing relativeTo",Zc="Cannot use large units",Lc="Required smallestUnit or largestUnit",jc="smallestUnit > largestUnit",nt=(t)=>`Cannot parse: ${t}`,$t=(t)=>`Invalid substring: ${t}`,Vd=(t)=>`Cannot format ${t}`,Gd="Mismatching types for formatting",kc="Cannot specify TimeZone",Wd=w(ur,(t,s)=>s),ks=w(ur,(t,s,r)=>r),gt=w(jr,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),lt=86400000,_d=1000,ws=1000,St=1e6,wt=1e9,Ia=60000000000,Sa=3600000000000,O=86400000000000,It=[1,ws,St,wt,Ia,Sa,O],Nt=wr.slice(0,6),ni=cr(Nt),zd=["offset"],Bd=["timeZone"],Jd=Nt.concat(zd),Xd=Jd.concat(Bd),li=["era","eraYear"],Nc=li.concat(["year"]),Aa=["year"],Fo=["monthCode"],$o=["month"].concat(Fo),xr=["day"],Zo=$o.concat(Aa),Qd=Fo.concat(Aa),Ht=xr.concat(Zo),Uc=xr.concat($o),Yd=xr.concat(Fo),tu=ks(Nt,0),x="iso8601",Ka="gregory",Ss="japanese",su={[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}},Vc={chinese:13,dangi:13,hebrew:-6},K=w(Qr,"string"),ru=w(Qr,"boolean"),Gc=w(Qr,"number"),au=w(Qr,"function"),R=wr.map((t)=>t+"s"),Lo=cr(R),Wc=R.slice(0,6),iu=R.slice(6),_c=iu.slice(1),zc=Wd(R),_=ks(R,0),jo=ks(Wc,0),ko=w(rn,R),Dt=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],No=["isoDay","isoMonth","isoYear"],qa=Dt.concat(No),Uo=cr(No),ou=cr(Dt),eu=cr(qa),xt=ks(ou,0),Bc=w(rn,qa),ts=Intl.DateTimeFormat,nu="en-GB",Vo=1e8,Jc=Vo*lt,Xc=[Vo,0],Qc=[-Vo,0],lr=275760,dr=-271821,Yc=1970,As=1972,Et=12,tp=qs(1868,9,8),sp=dt(sc,WeakMap),zr="smallestUnit",di="unit",ir="roundingIncrement",si="fractionalSecondDigits",lu="relativeTo",du={constrain:0,reject:1},rp=Object.keys(du),ap={compatible:0,reject:1,earlier:2,later:3},ip={reject:0,use:1,prefer:2,ignore:3},op={auto:0,never:1,critical:2,always:3},ep={auto:0,never:1,critical:2},np={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"),dp=w(Si,di),uu=w(ms,"overflow",du),cu=w(ms,"disambiguation",ap),up=w(ms,"offset",ip),Wo=w(ms,"calendarName",op),cp=w(ms,"timeZoneName",ep),pp=w(ms,"offset",np),Rr=w(ms,"roundingMode",lp),Ns="PlainYearMonth",Us="PlainMonthDay",xs="PlainDate",Cs="PlainDateTime",va="PlainTime",Ut="ZonedDateTime",Ea="Instant",Fa="Duration",mp=[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)],Rs="UTC",Zr=5184000,Tp=Nr(1847),Pp=Nr(new Date().getUTCFullYear()+10),hp=/0+$/,rt=dt(nc,WeakMap),ze=4294967295,$a=dt((t)=>{let s=uo(t);return typeof s=="object"?new mu(s):new pu(s||0)});class pu{constructor(t){this.v=t}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(t){return[xi(t,this.v)]}l(){}}class mu{constructor(t){this.$=((s)=>{function r(l){let d=ri(l,e,n),[u,c]=Ne(d),p=i(u),m=i(c);return p===m?p:a(o(u,c),p,m,l)}function a(l,d,u,c){let p,m;for(;(c===void 0||(p=c<l[0]?d:c>=l[1]?u:void 0)===void 0)&&(m=l[1]-l[0]);){let T=l[0]+Math.floor(m/2);s(T)===u?l[1]=T:l[0]=T+1}return p}let i=dt(s),o=dt(lc),e=Tp,n=Pp;return{G(l){let d=r(l-86400),u=r(l+86400),c=l-d,p=l-u;if(d===u)return[c];let m=r(c);return m===r(p)?[l-m]:d>u?[c,p]:[]},V:r,l(l,d){let u=ri(l,e,n),[c,p]=Ne(u),m=Zr*d,T=d<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,l)||1)===d)return f}c+=m,p+=m}}}})(((s)=>(r)=>{let a=gi(s,r*_d);return Nr(Fl(a),parseInt(a.month),parseInt(a.day),parseInt(a.hour),parseInt(a.minute),parseInt(a.second))-r})(t))}getOffsetNanosecondsFor(t){return this.$.V(fn(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*ws+a.isoNanosecond];var a;return this.$.G(s).map((i)=>ht(Ms(Is(i,wt),r)))}l(t,s){let[r,a]=yn(t),i=this.$.l(r+(s>0||a?1:0),s);if(i!==void 0)return Is(i,wt)}}var _o="([+\u2212-])",Lr="(?:[.,](\\d{1,9}))?",Tu=`(?:(?:${_o}(\\d{6}))|(\\d{4}))-?(\\d{2})`,zo="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+Lr+")?)?",Bo=_o+zo,fp=Tu+"-?(\\d{2})(?:[T ]"+zo+"(Z|"+Bo+")?)?",Pu="\\[(!?)([^\\]]*)\\]",Za=`((?:${Pu}){0,9})`,yp=Ls(Tu+Za),gp=Ls("(?:--)?(\\d{2})-?(\\d{2})"+Za),wp=Ls(fp+Za),xp=Ls("T?"+zo+"(?:"+Bo+")?"+Za),Cp=Ls(Bo),Rp=new RegExp(Pu,"g"),Op=Ls(`${_o}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${Lr}H)?(?:(\\d+)${Lr}M)?(?:(\\d+)${Lr}S)?)?`),bp=dt((t)=>new ts(nu,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Hp=/^(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$/,Dp=dt(cc),Jo=dt((t)=>new ts(nu,{calendar:t,timeZone:Rs,era:"short",year:"numeric",month:"short",day:"numeric"})),Mp=/^M(\d{2})(L?)$/,Ip={era:kr,eraYear:Q,year:Q,month:Ze,monthCode:kr,day:Ze},Sp=ks(Nt,Q),Ap=ks(R,Tn),Be=Object.assign({},Ip,Sp,Ap,{offset:kr}),Kp=w(tc,Nt,Dt),Je={dateAdd(t,s,r){let a=C(r),i,{years:o,months:e,weeks:n,days:l}=s;if(l+=N(s,5)[0],o||e)i=((d,u,c,p,m)=>{let[T,P,h]=d.h(u);if(c){let[y,f]=d.I(T,P);T+=c,P=_r(y,f,d.U(T)),P=yt("month",P,1,d.L(T),m)}return p&&([T,P]=d._(T,P,p)),h=yt("day",h,1,d.j(T,P),m),d.q(T,P,h)})(this,t,o,e,a);else{if(!n&&!l)return t;i=st(t)}return i+=(7*n+l)*lt,Gt(ra(i))},dateUntil(t,s,r){if(r<=7){let l=0,d=vl({...t,...xt},{...s,...xt});return r===7&&([l,d]=_t(d,7)),{..._,weeks:l,days:d}}let a=this.h(t),i=this.h(s),[o,e,n]=((l,d,u,c,p,m,T)=>{let P=p-d,h=m-u,y=T-c;if(P||h){let f=Math.sign(P||h),g=l.j(p,m),E=0;if(Math.sign(y)===-f){let S=g;[p,m]=l._(p,m,-f),P=p-d,h=m-u,g=l.j(p,m),E=f<0?-S:g}if(y=T-Math.min(c,g)+E,P){let[S,M]=l.I(d,u),[A,G]=l.I(p,m);if(h=A-S||Number(G)-Number(M),Math.sign(h)===-f){let k=f<0&&-l.L(p);P=(p-=f)-d,h=m-_r(S,M,l.U(p))+(k||l.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=We(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,l,d,u,c;if(i!==void 0){[n,l]=jl(i),c=Qe(t,"day");let p=this.N(n,l,c);if(!p)throw new RangeError(_e);if([d,u]=p,e!==void 0&&e!==u)throw new RangeError(kd);a&&(u=yt("month",u,1,Et,1),c=yt("day",c,1,Ci(o!==void 0?o:d,u),r))}else{d=o===void 0&&a?As:Qa(this,t),u=Ya(this,t,d,r),c=We(this,t,u,d,r);let p=this.U(d);l=u===p,n=ii(u,p);let m=this.N(n,l,c);if(!m)throw new RangeError(_e);[d,u]=m}return Ur(Gt(this.P(d,u,c)),this.id||x)},fields(t){return oi(this)&&t.includes("year")?[...t,...li]:t},mergeFields(t,s){let r=Object.assign(Object.create(null),t);return ti(r,s,$o),oi(this)&&(ti(r,s,Nc),this.id===Ss&&ti(r,s,Uc,li)),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:Rn,daysInWeek(){return 7}},qp={dayOfYear:xo,h:wn,q:qs},vp=Object.assign({},qp,{weekOfYear:Zl,yearOfWeek:Ll,R(t){function s(m){return(7-m<a?7:0)-m}function r(m){let T=Cn(p+m),P=m||1,h=s(ar(l+T*P,7));return u=(T+(h-d)*P)/7}let a=this.id?1:4,i=Rn(t),o=this.dayOfYear(t),e=ar(i-1,7),n=o-1,l=ar(e-n,7),d=s(l),u,c=Math.floor((n-d)/7)+1,p=t.isoYear;return c?c>r(0)&&(c=1,p++):(c=r(-1),p--),[c,p,u]}}),Ep={dayOfYear:xo,h:ai,q:nr,weekOfYear:Zl,yearOfWeek:Ll,R(){return[]}},Vs=Tc(Object.assign({},Je,vp,{h:wn,ee(t){return this.id===Ka?On(t):this.id===Ss?sp(t):[]},I:(t,s)=>[s,0],N(t,s){if(!s)return[As,t]},K:Ri,U(){},L:xn,J:(t)=>t*Et,j:Ci,X:Cn,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({},Je,Ep,{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 l=0;l<100;l++){let d=a-l,u=Er.call(this,d),c=_r(t,s,u);if(s===(c===u)&&r<=Ve.call(this,d,c))return[d,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:Ve,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"],hu={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),Fp=Object.assign({},te,{timeZoneName:"short"}),$p=Object.keys(Xo),Zp=Object.keys(hu),Lp=Object.keys(Qo),jp=Object.keys(Yo),se=["dateStyle"],kp=$p.concat(se),Np=Zp.concat(se),re=Lp.concat(se,["weekday"]),Or=jp.concat(["dayPeriod","timeStyle"]),ae=re.concat(Or),Up=ae.concat(Gs),Vp=Gs.concat(Or),Gp=Gs.concat(re),Wp=Gs.concat(["day","weekday"],Or),_p=Gs.concat(["year","weekday"],Or),zp={},ie=[gs(ae,te),na],fu=[gs(Up,Fp),na,0,(t,s)=>{let r=W(t.timeZone);if(s&&W(s.timeZone)!==r)throw new RangeError(Ud);return r}],oe=[gs(ae,te,Gs),st],ee=[gs(re,Qo,Vp),st],ne=[gs(Or,Yo,Gp),(t)=>zt(t)/St],le=[gs(kp,Xo,Wp),st,1],de=[gs(Np,hu,_p),st,1],Xe;function qt(t,s,r,a,i){function o(...l){if(!(this instanceof o))throw new TypeError(vo);xu(this,s(...l))}function e(l,d){return Object.defineProperties(function(...u){return l.call(this,n(this),...u)},ui(d))}function n(l){let d=X(l);if(!d||d.branding!==t)throw new TypeError(vo);return d}return Object.defineProperties(o.prototype,{...Ye(Ct(e,r)),...cs(Ct(e,a)),...Br("Temporal."+t)}),Object.defineProperties(o,{...cs(i),...ui(t)}),[o,(l)=>{let d=Object.create(o.prototype);return xu(d,l),d},n]}function Ou(t){return t=t.concat("id").sort(),(s)=>{if(!tn(s,t))throw new TypeError(Nd);return s}}function Bs(t){if(X(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(Zd);return t}function La(t,s){let r={};for(let a in t)r[a]=({o:i},o)=>{let e=X(o)||{},{branding:n}=e,l=n===xs||s.includes(n)?e:ot(o);return i[a](l)};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(um),{i:e})))[r](a);var o,e};return s}function os(){throw new TypeError(jd)}function Hr({calendar:t}){return typeof t=="string"?new xe(t):t}function yu(t,s){if(s=F(s),U(t)){let a=X(t);if(a&&a.branding===Us)return C(s),a;let i=Du(t);return Oo(Wa(i||x),!i,t,s)}let r=ul(Vs,t);return C(s),r}function bu(t,s,r){return a=s.call(t,it(V(r))),Vi(pr(a));var a}function ja(t,s=Au){let r=Object.keys(s).sort(),a={};for(let i of r)a[i]=w(s[i],t,au(t[i]));return a}function b(t,s){return typeof t=="string"?$a(t):ja(t,s)}function j(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 ol(t)}function gu(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||hm(t):((s)=>wa(Tl(K(s))))(t)}function ss(t,s){if(U(t)){let r=X(t)||{};switch(r.branding){case va:return C(s),r;case Cs:return C(s),bt(r);case Ut:return C(s),So(j,r)}return _l(t,s)}return C(s),cl(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=dl(Vs,t);return C(s),r}function rs(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case Cs:return C(s),a;case xs:return C(s),$({...a,...xt});case Ut:return C(s),Mo(j,a)}return Wl(Ga(Dr(t)),t,s)}let r=ll(t);return C(s),r}function ot(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case xs:return C(s),a;case Cs:return C(s),Z(a);case Ut:return C(s),Io(j,a)}return Co(Ga(Dr(t)),t,s)}let r=ya(t);return C(s),r}function Hu(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:zl(t)}return pl(t)}function br(t){if(t!==void 0){if(U(t)){let s=X(t)||{};switch(s.branding){case Ut:case xs:return s;case Cs:return Z(s)}let r=Dr(t);return{...Vl(D,b,Ga(r),t),calendar:r}}return el(t)}}function Dr(t){return Du(t)||x}function Du(t){let{calendar:s}=t;if(s!==void 0)return J(s)}function J(t){return U(t)?(X(t)||{}).calendar||Am(t):((s)=>Pr(ml(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 Gl(D,b,Ga(a),a,t,s)}return nl(t,s)}function wu(t){return Ct((s)=>(r)=>s(ue(r)),t)}function ue(t){return rt(t,j)}function Bp(){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 l=new ts(e,n),d=l.resolvedOptions(),u=d.locale,c=ct(Object.keys(n),d),p=dt(Qp),m=(...T)=>{let P,h=T.map((y,f)=>{let g=X(y),E=(g||{}).branding;if(f&&P&&P!==E)throw new TypeError(Gd);return P=E,g});return P?p(P)(u,c,...h):[l,...T]};return m.u=l,m})(i,o))};for(let i in s){let o=s[i],e=i.startsWith("format")&&Jp(i);typeof o.value=="function"?o.value=i==="constructor"?a:e||Xp(i):e&&(o.get=function(){return e.bind(this)})}return r.prototype.value=Object.create(t,s),Object.defineProperties(a,r),a}function Jp(t){return function(...s){let r=Ce.get(this),[a,...i]=r(...s);return a[t](...i)}}function Xp(t){return function(...s){return Ce.get(this).u[t](...s)}}function Qp(t){let s=Yp[t];if(!s)throw new TypeError(Vd(t));return jt(s,dt(Ao))}var Yp={Instant:ie,PlainDateTime:oe,PlainDate:ee,PlainTime:ne,PlainYearMonth:le,PlainMonthDay:de},tm=jt(ie),sm=jt(fu),rm=jt(oe),am=jt(ee),im=jt(ne),om=jt(le),em=jt(de),Te={era:ln,eraYear:Ti,year:pr,month:Rt,daysInMonth:Rt,daysInYear:Rt,inLeapYear:ru,monthsInYear:Rt},Na={monthCode:K},Pe={day:Rt},Mu={dayOfWeek:Rt,dayOfYear:Rt,weekOfYear:dn,yearOfWeek:Ti,daysInWeek:Rt},Iu=Object.assign({},Te,Na,Pe,Mu),ka=new WeakMap,X=ka.get.bind(ka),xu=ka.set.bind(ka),nm={...La(Te,[Ns]),...La(Mu,[]),...La(Na,[Ns,Us]),...La(Pe,[Us])},he=pe(Iu),lm=pe({...Te,...Na}),dm=pe({...Na,...Pe}),Mr={calendarId:(t)=>W(t.calendar)},um=Ct((t,s)=>function(r){let{i:a}=this;return t(a[s](v(Z(r,a))))},Iu),cm=ur((t)=>(s)=>s[t],R.concat("sign")),fe=ur((t,s)=>(r)=>r[Dt[s]],Nt),Su={epochSeconds:An,epochMilliseconds:na,epochMicroseconds:Kn,epochNanoseconds:qn},Ir=w(ci,new Set(["branding"])),[pm,zs,mm]=qt(Us,w(ld,J),{...Mr,...dm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return zs(Yl(Mm,t,this,Bs(s),r))},equals:(t,s)=>Ml(t,yu(s)),toPlainDate(t,s){return v(Cd(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=em(s,r,t);return a.format(i)},toString:Li,toJSON:(t)=>Li(t),valueOf:os},{from:(t,s)=>zs(yu(t,s))}),Au={getOffsetNanosecondsFor:bu,getPossibleInstantsFor(t,s,r){let a=[...s.call(t,B($(r,x)))].map((o)=>Pm(o).epochNanoseconds),i=a.length;return i>1&&(a.sort(tt),Gi(Pt(Tt(a[0],a[i-1])))),a}},ce={getOffsetNanosecondsFor:bu},[Tm,it,Pm]=qt(Ea,ad,Su,{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(Fn(t,s)),equals:(t,s)=>Rl(t,At(s)),toZonedDateTime(t,s){let r=Zt(s);return L(Do(t,D(r.timeZone),J(r.calendar)))},toZonedDateTimeISO:(t,s)=>L(Do(t,D(s))),toLocaleString(t,s,r){let[a,i]=tm(s,r,t);return a.format(i)},toString:(t,s)=>vi(D,j,t,s),toJSON:(t)=>vi(D,j,t),valueOf:os},{from:(t)=>it(At(t)),fromEpochSeconds:(t)=>it(bd(t)),fromEpochMilliseconds:(t)=>it(Hd(t)),fromEpochMicroseconds:(t)=>it(Dd(t)),fromEpochNanoseconds:(t)=>it(Md(t)),compare:(t,s)=>co(At(t),At(s))}),[Ua,mT]=qt("TimeZone",(t)=>{let s=xl(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=ja(this,ce).getOffsetNanosecondsFor(r);return Ts(a)},getPlainDateTimeFor(t,s,r=x){let a=At(s).epochNanoseconds,i=ja(this,ce).getOffsetNanosecondsFor(a);return B($(Jt(a,i),J(r)))},getInstantFor(t,s,r){let a=rs(s),i=Oi(r),o=ja(this);return it(V(ut(o,a,i)))},getNextTransition:({o:t},s)=>gu(1,t,s),getPreviousTransition:({o:t},s)=>gu(-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}}),hm=Ou(Object.keys(Au)),[fm,as]=qt(va,dd,fe,{getISOFields:Ir,with(t,s,r){return as(td(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)=>Il(t,ss(s)),toZonedDateTime:(t,s)=>L(Rd(D,ot,b,t,s)),toPlainDateTime:(t,s)=>B(Od(t,ot(s))),toLocaleString(t,s,r){let[a,i]=im(s,r,t);return a.format(i)},toString:ji,toJSON:(t)=>ji(t),valueOf:os},{from:(t,s)=>as(ss(t,s)),compare:(t,s)=>xa(ss(t),ss(s))}),[ym,is,gm]=qt(Ns,w(nd,J),{...Mr,...lm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return is(Ql(Dm,t,this,Bs(s),r))},add:(t,s,r)=>is(Ji(Cu,0,t,q(s),r)),subtract:(t,s,r)=>is(Ji(Cu,1,t,q(s),r)),until:(t,s,r)=>H(yo(Ru,0,t,Ws(s),r)),since:(t,s,r)=>H(yo(Ru,1,t,Ws(s),r)),equals:(t,s)=>Dl(t,Ws(s)),toPlainDate(t,s){return v(xd(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=om(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)=>fs(Ws(t),Ws(s))}),[wm,B]=qt(Cs,w(od,J),{...Mr,...he,...fe},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return B(Jl(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>B(Ha(t,J(s))),withPlainDate:(t,s)=>B(Kd(t,ot(s))),withPlainTime:(t,s)=>B(Ad(t,me(s))),add:(t,s,r)=>B(zi(Os,0,t,q(s),r)),subtract:(t,s,r)=>B(zi(Os,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(Zn(t,s)),equals:(t,s)=>bl(t,rs(s)),toZonedDateTime:(t,s,r)=>L(Td(b,t,D(s),r)),toPlainDate:(t)=>v(Z(t)),toPlainTime:(t)=>as(bt(t)),toPlainYearMonth(t){return is(Pd(Va,t,this))},toPlainMonthDay(t){return zs(hd(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=rm(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))}),[xm,v,Ku]=qt(xs,w(ed,J),{...Mr,...he},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return v(Xl(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>v(Ha(t,J(s))),add:(t,s,r)=>v(Bi(Os,0,t,q(s),r)),subtract:(t,s,r)=>v(Bi(Os,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)=>Hl(t,ot(s)),toZonedDateTime(t,s){let r=!U(s)||s instanceof Ua?{timeZone:s}:s;return L(fd(D,ss,b,t,r))},toPlainDateTime:(t,s)=>B(yd(t,me(s))),toPlainYearMonth(t){return is(gd(Va,t,this))},toPlainMonthDay(t){return zs(wd(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=am(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)=>fs(ot(t),ot(s))}),ye={fields(t,s,r){return[...s.call(t,r)]}},qu=Object.assign({dateFromFields(t,s,r,a){return Ku(s.call(t,Object.assign(Object.create(null),r),a))}},ye),vu=Object.assign({yearMonthFromFields(t,s,r,a){return gm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Eu=Object.assign({monthDayFromFields(t,s,r,a){return mm(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)))}},Cm=Object.assign({},qu,ge),Rm=Object.assign({},vu,ge),Om=Object.assign({},Eu,ge),we={dateAdd(t,s,r,a,i){return Ku(s.call(t,v(Z(r,t)),H(I(a)),i))}},Fu=Object.assign({},we,{dateUntil(t,s,r,a,i,o){return Sm(s.call(t,v(Z(r,t)),v(Z(a,t)),Object.assign(Object.create(null),o,{largestUnit:wr[i]})))}}),bm=Object.assign({},we,{day:Hu}),Hm=Object.assign({},Fu,{day:Hu}),Va=vt(vu),Ga=vt(qu),Wa=vt(Eu),Dm=vt(Rm),Sr=vt(Cm),Mm=vt(Om),Os=vt(we),Kt=vt(Fu),Cu=vt(bm),Ru=vt(Hm),[Im,H,Sm]=qt(Fa,ud,{...cm,blank:rl},{with:(t,s)=>H(sd(t,s)),negated:(t)=>H(ha(t)),abs:(t)=>H(sl(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(tl(br,Kt,b,t,s)),total:(t,s)=>En(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)=>Cl(br,Os,b,q(t),q(s),r)}),$u={toString:(t)=>t.id,toJSON:(t)=>t.id,...nm,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),Hn(a)))),dateFromFields:({id:t,o:s},r,a)=>v(Co(s,r,a,nn(t))),yearMonthFromFields:({id:t,o:s},r,a)=>is(Ro(s,r,a,on(t))),monthDayFromFields:({id:t,o:s},r,a)=>zs(Oo(s,0,r,a,en(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=$l(t);return{branding:"Calendar",id:s,o:Vs(s)}},{id:(t)=>t.id},$u,{from(t){let s=J(t);return typeof s=="string"?new xe(s):s}}),Am=Ou(Object.keys($u).slice(4)),[Km,L]=qt(Ut,w(id,J,D),{...Su,...Mr,...wu(he),...wu(fe),offset:(t)=>Ts(ue(t).offsetNanoseconds),offsetNanoseconds:(t)=>ue(t).offsetNanoseconds,timeZoneId:(t)=>W(t.timeZone),hoursInDay:(t)=>jn(b,t)},{getISOFields:(t)=>Qn(j,t),getCalendar:Hr,getTimeZone:({timeZone:t})=>typeof t=="string"?new Ua(t):t,with(t,s,r){return L(Bl(Sr,b,t,this,Bs(s),r))},withCalendar:(t,s)=>L(Ha(t,J(s))),withTimeZone:(t,s)=>L(qd(t,D(s))),withPlainDate:(t,s)=>L(Sd(b,t,ot(s))),withPlainTime:(t,s)=>L(Id(b,t,me(s))),add:(t,s,r)=>L(_i(Os,b,0,t,q(s),r)),subtract:(t,s,r)=>L(_i(Os,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)=>L($n(b,t,s)),startOfDay:(t)=>L(kn(b,t)),equals:(t,s)=>Ol(t,_s(s)),toInstant:(t)=>it(cd(t)),toPlainDateTime:(t)=>B(Mo(j,t)),toPlainDate:(t)=>v(Io(j,t)),toPlainTime:(t)=>as(So(j,t)),toPlainYearMonth(t){return is(pd(Va,t,this))},toPlainMonthDay(t){return zs(md(Wa,t,this))},toLocaleString(t,s,r={}){let[a,i]=sm(s,r,t);return a.format(i)},toString:(t,s)=>Ei(j,t,s),toJSON:(t)=>Ei(j,t),valueOf:os},{from:(t,s)=>L(_s(t,s)),compare:(t,s)=>po(_s(t),_s(s))}),qm=Object.defineProperties({},{...Br("Temporal.Now"),...cs({timeZoneId:()=>kt(),instant:()=>it(V(fr())),zonedDateTime:(t,s=kt())=>L(z(fr(),D(s),J(t))),zonedDateTimeISO:(t=kt())=>L(z(fr(),D(t),x)),plainDateTime:(t,s=kt())=>B($(js(j(D(s))),J(t))),plainDateTimeISO:(t=kt())=>B($(js(j(D(t))),x)),plainDate:(t,s=kt())=>v(Z(js(j(D(s))),J(t))),plainDateISO:(t=kt())=>v(Z(js(j(D(t))),x)),plainTimeISO:(t=kt())=>as(bt(js(j(D(t)))))})}),Ar=Object.defineProperties({},{...Br("Temporal"),...cs({PlainYearMonth:ym,PlainMonthDay:pm,PlainDate:xm,PlainTime:fm,PlainDateTime:wm,ZonedDateTime:Km,Instant:Tm,Calendar:xe,TimeZone:Ua,Duration:Im,Now:qm})}),vm=Bp(),Ce=new WeakMap,Em=Object.defineProperties(Object.create(Intl),cs({DateTimeFormat:vm}));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:l}=await s.adapter.findUserByEmailAddress(t.email,!1);n=l}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(Fm(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 Zu extends mt{async run(t){let s=ns.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 $m={"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 ju 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={...$m,...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 ku 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 Nu 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 ku;return{}}}class Uu 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 Vu{policiesList={};constructor(){let t=this.register();for(let s of t){let r=new s;this.policiesList[s.name]=r}}register(){return[]}}class Gu{all(t,s){return!0}}export{Yu as getCookies,Qs as ViewRouter,Ys as ValidationError,Kr as ResourceController,ft as RequestBreakerError,Nu as RateLimitMiddleware,Vu as PoliciesServiceProvider,Gu as Policies,ve as MiddlewareServiceProvider,mt as Middleware,Fe as InsufficientPermissionsError,tr as HttpRequest,ju as CorsMiddleware,Ba as Controller,Lu as CacheMiddleware,Uu as CSRFMiddleware,Ee as AuthorizationError,Zu as AuthenticationMiddleware,sr as AuthenticationError,Ja as ApiRouter};export{Ba as G,be as H,Ja as I,Qs as J,Ys as K,ns as L,tr as M,ve as N,Ee as O,Fe as P,Ar as Q,za as R,Re as S};
2
+ import{pc as ft,rc as Me}from"../chunk-2e5r9zc8.js";import{sc as qe}from"../chunk-hakywsfq.js";import{uc as _a}from"../chunk-5g8wefgj.js";import"../chunk-5zy36vzw.js";class Ba{static kind="controller";constructor(){}}class Kr extends Ba{}function be(t){return typeof t==="function"&&t.prototype!==void 0}function _u(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(_u(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 zu 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 Bu}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 Bu;class Ke{req;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;csrfHmac=null;locale=null;constructor(t){this.req=t}setLocale(t){this.locale=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 ns{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 Ju(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 Xu(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 Qu(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=Xu(r);return a.type.startsWith(i)}};case"fileSize":return(a)=>{if(a instanceof Blob){let i=Ju(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=ns.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[l,d]=n.split("=");o.set(l.trim(),d.trim())}}if(this.rawRequest.method==="GET"){let e=new URL(this.rawRequest.url),n=new Map;for(let[d,u]of e.searchParams)if(n.has(d)){let c=n.get(d);if(Array.isArray(c))c.push(u),n.set(d,c);else n.set(d,[c,u])}else n.set(d,u);let l=Object.fromEntries(n.entries());this.search=new bs(l)}this.cookies=o}locale(){return ns.getStore().locale}ctx(){return ns.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=Qu(i),n=o,l=!1;if(typeof o==="function")n=o(t.get(r)),l=typeof n==="undefined";else l=e(t.get(r));if(l)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 Yu(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 ve extends qe{aliases={};boot(){}}class Ee 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 Fe 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 Fm}from"crypto";function et(t,s,r,a,i){return yt(s,Qe(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(Fd(t,s,r,a,o));return e}function Qe(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 dt(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 cs({name:t},1)}function cs(t,s){return Ct((r)=>({value:r,configurable:1,writable:!s}),t)}function Ye(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 tc(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 tn(t,s){for(let r of s)if(!(r in t))return 0;return 1}function sn(t,s,r){for(let a of t)if(s[a]!==r[a])return 0;return 1}function rn(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 $e(t){return t[0].toUpperCase()+t.substring(1)}function cr(t){return t.slice().sort()}function jr(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 an(t,s,r){let a=0,i=0;for(let n=0;n<=s;n++){let l=t[r[n]],d=It[n],u=O/d,[c,p]=_t(l,u);a+=p*d,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 on(t){return t===x?Aa:[]}function en(t){return t===x?xr:[]}function nn(t){return t===x?["year","day"]:[]}function ln(t){if(t!==void 0)return K(t)}function dn(t){if(t!==void 0)return Rt(t)}function Ti(t){if(t!==void 0)return pr(t)}function Rt(t){return pn(pr(t))}function pr(t){return cn(Gc(t))}function Pi(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function un(t,s){if(s==null)throw new RangeError(Ko(t));return s}function Zt(t){if(!U(t))throw new TypeError(Ed);return t}function Qr(t,s,r=t){if(typeof s!==t)throw new TypeError(yr(r,s));return s}function cn(t,s="number"){if(!Number.isInteger(t))throw new RangeError(hc(s,t));return t||0}function pn(t,s="number"){if(t<=0)throw new RangeError(fc(s,t));return t}function hi(t){if(typeof t=="symbol")throw new TypeError(xc);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(wc(t));return t}function mn(t,s="number"){if(typeof t=="bigint")throw new TypeError(gc(s));if(t=Number(t),!Number.isFinite(t))throw new RangeError(yc(s,t));return t}function Q(t,s){return Math.trunc(mn(t,s))||0}function Tn(t,s){return cn(mn(t,s),s)}function Ze(t,s){return pn(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 Pn(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 hn(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",dr,lr,1),t.isoYear===dr?et(t,"isoMonth",4,12,1):t.isoYear===lr&&et(t,"isoMonth",1,9,1),t}function Gt(t){return Lt({...t,...xt,isoHour:12}),t}function Lt(t){let s=et(t,"isoYear",dr,lr,1),r=s===dr?1:s===lr?-1:0;return r&&ht(Y({...t,isoDay:t.isoDay+r,isoNanosecond:t.isoNanosecond-r})),t}function ht(t){if(!t||Pn(t,Qc,Xc))throw new RangeError(Da);return t}function zt(t){return an(t,5,Dt)[1]}function sa(t){let[s,r]=Ft(t,O);return[Xr(r,5,Dt),s]}function fn(t){return yn(t)[0]}function yn(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,lt);return[r,a*St+(t.isoMicrosecond||0)*ws+(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)/_d}function qs(...t){let[s,r]=gn(...t),a=s.valueOf();if(!isNaN(a))return a-r*lt}function gn(t,s=1,r=1,a=0,i=0,o=0,e=0){let n=t===dr?1:t===lr?-1:0,l=new Date;return l.setUTCHours(a,i,o,e),l.setUTCFullYear(t,s-1,r+n),[l,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,ws);return ra(r*lt+i,e,n)}function ra(t,s=0,r=0){let a=Math.ceil(Math.max(0,Math.abs(t)-Jc)/lt)*Math.sign(t),i=new Date(t-a*lt);return Ks(qa,[i.getUTCFullYear(),i.getUTCMonth()+1,i.getUTCDate()+a,i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds(),i.getUTCMilliseconds(),s,r])}function wn(t){return[t.isoYear,t.isoMonth,t.isoDay]}function xn(){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 Cn(t){return Ri(t)?366:365}function Ri(t){return t%4==0&&(t%100!=0||t%400==0)}function Rn(t){let[s,r]=gn(t.isoYear,t.isoMonth,t.isoDay);return ar(s.getUTCDay()-r,7)||7}function On({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function sc(t){let s=st(t);if(s<tp)return On(t);let r=gi(Jo(Ss),s),{era:a,eraYear:i}=El(r,Ss);return[a,i]}function aa(t){return ps(t),ia(t,1),t}function ps(t){return bn(t,1),t}function Le(t){return sn(No,t,bn(t))}function bn(t,s){let{isoYear:r}=t,a=et(t,"isoMonth",1,xn(),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:uu(Zt(t))}function mr(t,s=0){t=Ot(t);let r=cu(t),a=up(t,s);return[uu(t),a,r]}function Oi(t){return cu(Ot(t))}function Hn(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),l=Rr(s,o),d=Cr(s,a,i,1);return e==null?e=Math.max(r,d):Sn(e,d),n=Mi(n,d,1),t&&(l=((u)=>u<4?(u+2)%4:u)(l)),[e,d,n,l]}function oa(t,s=6,r){let a=Di(t=Ii(t,zr)),i=Rr(t,7),o=Cr(t,s);return o=un(zr,o),a=Mi(a,o,void 0,r),[o,a,i]}function bi(t){return Wo(Ot(t))}function Dn(t,s){return Hi(Ot(t),s)}function Hi(t,s=4){let r=In(t);return[Rr(t,4),...Mn(Cr(t,s),r)]}function Mn(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 In(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(Ed)}}function ea(t,s){return t&&Object.assign(Object.create(null),t,{overflow:rp[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=zc[o]),e===void 0)throw new RangeError(Ld(t,o,ei));return yt(t,e,a,r,1,wr),e}function ms(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(Ld(t,o,s));return e}function Sn(t,s){if(s>t)throw new RangeError(jc)}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:Cs,calendar:s,...ct(eu,t)}}function Z(t,s=t.calendar){return{branding:xs,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(ou,t)}}function I(t){return{branding:Fa,sign:Xt(t),...ct(Lo,t)}}function An(t){return fn(t.epochNanoseconds)}function na(t){return yi(t.epochNanoseconds,St)[0]}function Kn(t){return hn(t.epochNanoseconds,ws)}function qn(t){return hn(t.epochNanoseconds)}function vn(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 En(t,s,r,a,i){let o=us(a),[e,n]=((h,y)=>{let f=y((h=Ii(h,di))[lu]),g=dp(h);return g=un(di,g),[g,f]})(i,t);if(er(Math.max(e,o),n))return je(a,e);if(!n)throw new RangeError(Ma);let[l,d,u]=ma(s,r,n),c=to(u),p=Ta(u),m=so(u),T=p(d,l,a),P=m(d,l,T,e);return er(e,n)?je(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,d,l,c,p)}function je(t,s){return Pt(N(t),It[s],1)}function Ai(t,s,r,a,i,o,e){let n=R[r],l={...s,[n]:s[n]+a},d=e(t,i,s),u=e(t,i,l);return[o(d),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 Fn(t,s){let[r,a,i]=oa(s,5,1);return V(da(t.epochNanoseconds,r,a,i,1))}function $n(t,s,r){let{epochNanoseconds:a,timeZone:i,calendar:o}=s,[e,n,l]=oa(r);if(e===0&&n===1)return s;let d=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(Pn(y,f,g))throw new RangeError(gr);return Wn(Ki(y,f,g),m)?g:f})(Vn,d,s,l);else{let u=d.getOffsetNanosecondsFor(a);a=Ps(d,Nn(Jt(a,u),e,n,l),u,2,0,1)}return z(a,i,o)}function Zn(t,s){return $(Nn(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 jn(t,s){let r=t(s.timeZone),a=rt(s,r),[i,o]=Vn(a),e=Pt(Tt(ut(r,i),ut(r,o)),Sa,1);if(e<=0)throw new RangeError(gr);return e}function kn(t,s){let{timeZone:r,calendar:a}=s,i=((o,e,n)=>ut(e,o(rt(n,e))))(Gn,t(r),s);return z(i,r,a)}function Nn(t,s,r,a){return Un(t,Tr(s,r),a)}function Un(t,s,r){let[a,i]=qi(t,s,r);return Lt({...hs(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 Vn(t){let s=Gn(t);return[s,hs(s,1)]}function Gn(t){return Bc(6,t)}function rc(t,s,r){let a=Math.min(us(t),6);return $s(ua(N(t,a),s,r),a)}function la(t,s,r,a,i,o,e,n,l,d){if(a===0&&i===1)return t;let u=er(a,n)?Pa(n)&&a<6&&r>=6?ic:ac:oc,[c,p,m]=u(t,s,r,a,i,o,e,n,l,d);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,l,d)),c}function da(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 Wn(t/s,r)*s}function Wn(t,s){return mp[s](t)}function ac(t,s,r,a,i,o){let e=Xt(t),n=N(t),l=da(n,a,i,o),d=Tt(n,l),u=Math.sign(l[0]-n[0])===e,c=$s(l,Math.min(r,6));return[{...t,...c},Ds(s,d),u]}function ic(t,s,r,a,i,o,e,n,l,d){let u=Xt(t),c=Pt(N(t,5)),p=Tr(a,i),m=Bt(c,p,o),[T,P]=Ai(e,{...t,...jo},6,u,n,l,d),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 oc(t,s,r,a,i,o,e,n,l,d){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,l,d),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]=((d)=>{let u=Hi(d=Ot(d));return[d.timeZone,...u]})(a),l=i!==void 0;return((d,u,c,p,m,T)=>{c=ua(c,m,p,1);let P=u.getOffsetNanosecondsFor(c);return ki(Jt(c,P),T)+(d?Ts(Vr(P)):"Z")})(l,s(l?t(i):Rs),r.epochNanoseconds,o,e,n)}function Ei(t,s,r){let[a,i,o,e,n,l]=((d)=>{d=Ot(d);let u=Wo(d),c=In(d),p=pp(d),m=Rr(d,4),T=Cr(d,4);return[u,cp(d),p,m,...Mn(T,c)]})(r);return((d,u,c,p,m,T,P,h,y,f)=>{p=ua(p,y,h,1);let g=d(c).getOffsetNanosecondsFor(p);return ki(Jt(p,g),f)+Ts(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,l)}function Fi(t,s){let[r,a,i,o]=((d)=>(d=Ot(d),[Wo(d),...Hi(d)]))(s);return e=t.calendar,n=r,l=o,ki(Un(t,i,a),l)+Ni(e,n);var e,n,l}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 _n(t.calendar,zn,t,bi(s))}function Li(t,s){return _n(t.calendar,ec,t,bi(s))}function ji(t,s){let[r,a,i]=Dn(s);return o=i,Bn(qi(t,a,r)[0],o);var o}function ca(t,s){let[r,a,i]=Dn(s,3);return a>1&&(t={...t,...rc(t,a,r)}),((o,e)=>{let{sign:n}=o,l=n===-1?at(o):o,{hours:d,minutes:u}=l,[c,p]=yi(N(l,3),wt,_t);al(c);let m=Ui(p,e),T=e>=0||!n||m;return(n<0?"-":"")+"P"+ke({Y:ls(l.years),M:ls(l.months),W:ls(l.weeks),D:ls(l.days)})+(d||u||c||T?"T"+ke({H:ls(d),M:ls(u),S:ls(c,T)+m}):"")})(t,i)}function _n(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)+Jn(i,a===2):s(r)}function ke(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"+Bn(t,s)}function Gr(t){return zn(t)+"-"+gt(t.isoDay)}function zn(t){let{isoYear:s}=t;return(s<0||s>9999?Xn(s)+jr(6,Math.abs(s)):jr(4,s))+"-"+gt(t.isoMonth)}function ec(t){return gt(t.isoMonth)+"-"+gt(t.isoDay)}function Bn(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*ws+o,e))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,s)),r.join(":")}function Ts(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 Xn(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 Jn(r,s===2)}return""}function Jn(t,s){return"["+(s?"!":"")+"u-ca="+t+"]"}function Ui(t,s){let r=jr(9,t);return r=s===void 0?r.replace(hp,""):r.slice(0,s),r?"."+r:""}function Xn(t){return t<0?"-":"+"}function ls(t,s){return t||s?t.toLocaleString("fullwide",{useGrouping:0}):""}function nc(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 Qn(t,s){let r=rt(s,t);return{calendar:s.calendar,...ct(eu,r),offset:Ts(r.offsetNanoseconds),timeZone:s.timeZone}}function Ps(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 l=((d,u,c,p)=>{let m=Y(u);p&&(c=Vr(c));for(let T of d){let P=Pt(Tt(T,m));if(p&&(P=Vr(P)),P===c)return T}})(n,s,r,o);if(l!==void 0)return l;if(a===0)throw new RangeError(vc)}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(Ec);if(a.length)return a[r===3?1:0];let i=Y(s),o=((n,l)=>{let d=n.getOffsetNanosecondsFor(Ms(l,-O));return Gi(n.getOffsetNanosecondsFor(Ms(l,O))-d)})(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(Kc);return t}function Gi(t){if(t>O)throw new RangeError(qc);return t}function Wi(t,s,r){return V(ht(Ds(s.epochNanoseconds,((a)=>{if(il(a))throw new RangeError(Zc);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=hs(n,-1));let l=e.dateAdd(n,a,i);return ds(or(e,l),o)}function Xi(t,s,r){return bt(Yn(s,t?at(r):r)[0])}function Qi(t,s,r,a,i){let o=N(a,5),e=r.epochNanoseconds;if(il(a)){let n=rt(r,t);e=Ds(ut(t,{...pa(s,n,{...a,...jo},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]=Yn(s,r);return Lt({...pa(t,s,{...r,...jo,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(hs(s,i)):s}function or(t,s,r=1){return hs(s,r-t.day(s))}function Yn(t,s){let[r,a]=N(s,5),[i,o]=sa(zt(t)+a);return[i,r+o]}function hs(t,s){return s?{...t,...ra(st(t)+s*lt)}: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?vn:Y}function Ta(t){return t?w(Qi,t):Yi}function so(t){return t?w(dc,t):uc}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),l=Math.max(us(i),us(o));if(er(l,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,l,a)));if(!n)throw new RangeError(Ma);a&&(o=at(o));let[d,u,c]=ma(s,r,n),p=Ta(c),m=so(c),T=p(u,d,i);return I(m(u,d,p(u,T,o),l))}function tl(t,s,r,a,i){let o=us(a),[e,n,l,d,u]=((M,A,G)=>{M=Ii(M,zr);let k=Go(M),Js=G(M[lu]),Xs=Di(M),Wu=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)),Sn(k,es),Xs=Mi(Xs,es,1),[k,es,Xs,Wu,Js]})(i,o,t),c=Math.max(o,e);if(!Pa(u)&&c<=6)return I(Fs(((M,A,G,k,Js)=>{let Xs=da(N(M),G,k,Js);return{..._,...$s(Xs,A)}})(a,e,n,l,d)));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=la(g,P(f),e,n,l,d,m,p,P,h)),I(g)}function sl(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 rl(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($c);r=i}}return r}function Fs(t){for(let s of _c)yt(s,t[s],-ze,ze,1);return al(Pt(N(t),wt)),t}function al(t){if(!Number.isSafeInteger(t))throw new RangeError(Fc)}function N(t,s=6){return an(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 il(t){return Boolean(Xt(t,iu))}function us(t){let s=9;for(;s>0&&!t[R[s]];s--);return s}function lc(t,s){return[t,s]}function Ne(t){let s=Math.floor(t/Zr)*Zr;return[s,s+Zr]}function ol(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 el(t){let s=Qt(K(t));if(!s)throw new RangeError(nt(t));if(s.timeZone)return Pl(s,s.offset?Zs(s.offset):void 0);if(s.m)throw new RangeError(nt(t));return fl(s)}function nl(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 Pl(r,i,o,e)}function Zs(t){let s=eo(t);if(s===void 0)throw new RangeError(nt(t));return s}function ll(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return $(hl(s))}function ya(t){let s=Qt(K(t));if(!s||s.m)throw new RangeError(nt(t));return Z(s.p?hl(s):fl(s))}function dl(t,s){let r=io(K(s));if(r)return ao(r),ds(wi(ps(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 ul(t,s){let r=oo(K(s));if(r)return ao(r),Ur(ps(r));let a=ya(s),{calendar:i}=a,o=t(i),[e,n,l]=o.h(a),[d,u]=o.I(e,n),[c,p]=o.N(d,u,l);return Ur(Gt(o.P(c,p,l)),i)}function cl(t){let s,r=((a)=>{let i=xp.exec(a);return i?(ga(i[10]),wl(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 pl(t){let s=((r)=>{let a=Op.exec(r);return a?((i)=>{function o(u,c,p){let m=0,T=0;if(p&&([m,l]=Ft(l,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&&(l=no(c)*(It[p]/wt),n=1)}return m+T}let e=0,n=0,l=0,d={...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(l,2,R)};if(!e)throw new RangeError($d(R));return lo(i[1])<0&&(d=at(d)),d})(a):void 0})(K(t));if(!s)throw new RangeError(nt(t));return I(Fs(s))}function ml(t){let s=Qt(t)||io(t)||oo(t);return s?s.calendar:t}function Tl(t){let s=Qt(t);return s&&(s.timeZone||s.m&&Rs||s.offset)||t}function Pl(t,s,r=0,a=0){let i=wa(t.timeZone),o=$a(i);return z(Ps(o,aa(t),s,r,a,!o.v,t.m),i,Pr(t.calendar))}function hl(t){return yl(Lt(aa(t)))}function fl(t){return yl(Gt(ps(t)))}function yl(t){return{...t,calendar:Pr(t.calendar)}}function Qt(t){let s=wp.exec(t);return s?((r)=>{let a=r[10],i=(a||"").toUpperCase()==="Z";return{isoYear:gl(r),isoMonth:parseInt(r[4]),isoDay:parseInt(r[5]),...wl(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=yp.exec(t);return s?((r)=>({isoYear:gl(r),isoMonth:parseInt(r[4]),isoDay:1,...ga(r[5])}))(s):void 0}function oo(t){let s=gp.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=Cp.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 gl(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 wl(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(Rp,(i,o,e)=>{let n=Boolean(o),[l,d]=e.split("=").reverse();if(d){if(d==="u-ca")a.push(l),s||(s=n);else if(n||/[A-Z]/.test(d))throw new RangeError($t(i))}else{if(r)throw new RangeError($t(i));r=l}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 Ls(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 xl(t){return wa(K(t))}function wa(t){let s=uo(t);return typeof s=="number"?Ts(s):s?((r)=>{if(Hp.test(r))throw new RangeError(Ac);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?$e(o).replace(/island|noronha|murdo|rivadavia|urville/,$e):o)).join("/")})(t):Rs}function Ue(t){let s=uo(t);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Rs}function uo(t){let s=eo(t=t.toUpperCase(),1);return s!==void 0?s:t!==Rs?bp(t):void 0}function co(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function po(t,s){return tt(t.epochNanoseconds,s.epochNanoseconds)}function Cl(t,s,r,a,i,o){let e=t(Ot(o).relativeTo),n=Math.max(us(a),us(i));if(sn(R,a,i))return 0;if(er(n,e))return tt(N(a),N(i));if(!e)throw new RangeError(Ma);let[l,d,u]=ma(s,r,e),c=to(u),p=Ta(u);return tt(c(p(d,l,a)),c(p(d,l,i)))}function mo(t,s){return fs(t,s)||xa(t,s)}function fs(t,s){return Vt(st(t),st(s))}function xa(t,s){return Vt(zt(t),zt(s))}function Rl(t,s){return!co(t,s)}function Ol(t,s){return!po(t,s)&&!!Ca(t.timeZone,s.timeZone)&&Es(t.calendar,s.calendar)}function bl(t,s){return!mo(t,s)&&Es(t.calendar,s.calendar)}function Hl(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Dl(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Ml(t,s){return!fs(t,s)&&Es(t.calendar,s.calendar)}function Il(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 Ue(r)===Ue(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),[l,d,u,c]=vs(r,n,5),p=a.epochNanoseconds,m=i.epochNanoseconds,T=tt(m,p),P;if(T)if(l<6)P=Ra(p,m,l,d,u,c);else{let h=s(((f,g)=>{if(!Ca(f,g))throw new RangeError(Ud);return f})(a.timeZone,i.timeZone)),y=t(e);P=Al(y,h,a,i,T,l,n),P=la(P,m,l,d,u,c,y,a,vn,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,l,d,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,l,d,u);else{let P=t(o);T=Kl(P,r,a,m,n,e),T=la(T,p,n,l,d,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 Sl(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),l=t(o);return Sl(s,()=>l,or(l,r),or(l,a),...n,e)}function Sl(t,s,r,a,i,o,e,n,l){let d=Y(r),u=Y(a),c;if(tt(u,d))if(i===6)c=Ra(d,u,i,o,e,n);else{let p=s();c=p.dateUntil(r,a,i,l),o===6&&e===1||(c=la(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,l]=vs(t,i,5,5),d=Bt(wo(s,r),Tr(e,n),l),u={..._,...fa(d,o)};return I(t?at(u):u)}function dc(t,s,r,a,i,o){let e=tt(a.epochNanoseconds,r.epochNanoseconds);return e?i<6?ql(r.epochNanoseconds,a.epochNanoseconds,i):Al(s,t,r,a,e,i,o):_}function uc(t,s,r,a,i){let o=Y(s),e=Y(r),n=tt(e,o);return n?a<=6?ql(o,e,a):Kl(t,s,r,n,a,i):_}function Al(t,s,r,a,i,o,e){let[n,l,d]=((p,m,T,P)=>{function h(){return A={...hs(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=l,{..._,days:vl(u,c)}):t.dateUntil(n,l,o,e),...fa(d)}}function Kl(t,s,r,a,i,o){let[e,n,l]=((d,u,c)=>{let p=u,m=wo(d,u);return Math.sign(m)===-c&&(p=hs(u,-c),m+=O*c),[d,p,m]})(s,r,a);return{...t.dateUntil(e,n,i,o),...fa(l)}}function Ra(t,s,r,a,i,o){return{..._,...$s(da(Tt(t,s),a,i,o),r)}}function ql(t,s,r){return{..._,...$s(Tt(t,s),r)}}function vl(t,s){return Oa(st(t),st(s))}function Oa(t,s){return Math.trunc((s-t)/lt)}function wo(t,s){return zt(s)-zt(t)}function ba(t,s){if(!Es(t,s))throw new RangeError(Eo);return t}function cc(t){function s(i){return((o,e)=>({...El(o,e),F:o.month,day:parseInt(o.day)}))(gi(r,i),a)}let r=Jo(t),a=Wr(t);return{id:t,O:pc(s),B:mc(s)}}function pc(t){return dt((s)=>{let r=st(s);return t(r)},WeakMap)}function mc(t){let s=t(0).year-Yc;return dt((r)=>{let a,i=qs(r-s),o=[],e=[];do i+=400*lt;while((a=t(i)).year<=r);do i+=(1-a.day)*lt,a.year===r&&(o.push(i),e.push(a.F)),i-=lt;while((a=t(i)).year>=r);return{k:o.reverse(),C:Wd(e.reverse())}})}function El(t,s){let r,a,i=Fl(t);if(t.era){let o=su[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=kl(a,o[r]||0))}return{era:r,eraYear:a,year:i}}function Fl(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)*lt}function Er(t){let s=Ge(this,t),r=Ge(this,t-1),a=s.length;if(a>r.length){let i=Nl(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 Ve(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 Ge(t,s){return Object.keys(t.B(s).C)}function $l(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(Sc(t));return t}function Wr(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function Zl(t){return this.R(t)[0]}function Ll(t){return this.R(t)[1]}function xo(t){let[s]=this.h(t);return Oa(this.q(s),st(t))+1}function jl(t){let s=Mp.exec(t);if(!s)throw new RangeError(Mc(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 kl(t,s){return(s+t)*(Math.sign(s)||1)||0}function oi(t){return su[Ul(t)]}function Nl(t){return Vc[Ul(t)]}function Ul(t){return Wr(t.id||x)}function Vl(t,s,r,a){let i=Yt(r,a,Ht,[],Xd);if(i.timeZone!==void 0){let o=r.dateFromFields(i),e=ys(i),n=t(i.timeZone);return{epochNanoseconds:Ps(s(n),{...o,...e},i.offset!==void 0?Zs(i.offset):void 0),timeZone:n}}return{...r.dateFromFields(i),...xt}}function Gl(t,s,r,a,i,o){let e=Yt(r,i,Ht,Bd,Xd),n=t(e.timeZone),[l,d,u]=mr(o),c=r.dateFromFields(e,ea(o,l)),p=ys(e,l);return z(Ps(s(n),{...c,...p},e.offset!==void 0?Zs(e.offset):void 0,d,u),n,a)}function Wl(t,s,r){let a=Yt(t,s,Ht,[],Nt),i=C(r);return $(Lt({...t.dateFromFields(a,ea(r,i)),...ys(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 _l(t,s){let r=C(s);return bt(ys(Mt(t,ni,[],1),r))}function zl(t){let s=Mt(t,Lo);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(Cc(n));if(n==="constructor"||n==="__proto__")throw new RangeError(qo(n));let l=t[n];if(l!==void 0)e=1,Be[n]&&(l=Be[n](l,n)),i[n]=l;else if(r){if(r.includes(n))throw new TypeError(Ko(n));i[n]=tu[n]}o=n}if(a&&!e)throw new TypeError($d(s));return i}function ys(t,s){return ia(Kp({...tu,...t}),s)}function Bl(t,s,r,a,i,o){let e=F(o),{calendar:n,timeZone:l}=r;return z(((d,u,c,p,m)=>{let T=hr(d,c,p,Ht,Jd,zd),[P,h,y]=mr(m,2);return Ps(u,{...d.dateFromFields(T,ea(m,P)),...ys(T,P)},Zs(T.offset),h,y)})(t(n),s(l),a,i,e),l,n)}function Jl(t,s,r,a,i){let o=F(i);return $(((e,n,l,d)=>{let u=hr(e,n,l,Ht,Nt),c=C(d);return Lt({...e.dateFromFields(u,ea(d,c)),...ys(u,c)})})(t(s.calendar),r,a,o))}function Xl(t,s,r,a,i){let o=F(i);return((e,n,l,d)=>{let u=hr(e,n,l,Ht);return e.dateFromFields(u,d)})(t(s.calendar),r,a,o)}function Ql(t,s,r,a,i){let o=F(i);return ds(((e,n,l,d)=>{let u=hr(e,n,l,Zo);return e.yearMonthFromFields(u,d)})(t(s.calendar),r,a,o))}function Yl(t,s,r,a,i){let o=F(i);return((e,n,l,d)=>{let u=hr(e,n,l,Ht);return e.monthDayFromFields(u,d)})(t(s.calendar),r,a,o)}function td(t,s,r){return bt(((a,i,o)=>{let e=C(o);return ys({...ct(ni,a),...Mt(i,ni)},e)})(t,s,r))}function sd(t,s){return I((r=t,a=s,Fs({...r,...Mt(a,Lo)})));var r,a}function hr(t,s,r,a,i=[],o=[]){let e=[...t.fields(a),...i].sort(),n=Mt(s,e,o),l=Mt(r,e);return n=t.mergeFields(n,l),Mt(n,e,[])}function bo(t,s){let r=Yt(t,s,Yd);return t.monthDayFromFields(r)}function Ho(t,s,r){let a=Yt(t,s,Qd);return t.yearMonthFromFields(a,r)}function rd(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(Oc);if(!o)throw new RangeError(Rc);let e=o[r];if(e===void 0)throw new RangeError(Hc(r));let n=kl(a,e);if(i!==void 0&&i!==n)throw new RangeError(bc);i=n}else if(i===void 0)throw new TypeError(Dc(o));return i}function Ya(t,s,r,a){let{month:i,monthCode:o}=s;if(o!==void 0){let e=((n,l,d,u)=>{let c=n.U(d),[p,m]=jl(l),T=_r(p,m,c);if(m){let P=Nl(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(kd);i=e,a=1}else if(i===void 0)throw new TypeError(Ic);return yt("month",i,1,t.L(r),a)}function We(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 ad(t){return V(ht(ta(Yr(t))))}function id(t,s,r,a,i=x){return z(ht(ta(Yr(r))),s(a),t(i))}function od(t,s,r,a,i=0,o=0,e=0,n=0,l=0,d=0,u=x){return $(Lt(aa(Ct(Q,Ks(qa,[s,r,a,i,o,e,n,l,d])))),t(u))}function ed(t,s,r,a,i=x){return Z(Gt(ps(Ct(Q,{isoYear:s,isoMonth:r,isoDay:a}))),t(i))}function nd(t,s,r,a=x,i=1){let o=Q(s),e=Q(r),n=t(a);return ds(wi(ps({isoYear:o,isoMonth:e,isoDay:Q(i)})),n)}function ld(t,s,r,a=x,i=As){let o=Q(s),e=Q(r),n=t(a);return Ur(Gt(ps({isoYear:Q(i),isoMonth:o,isoDay:e})),n)}function dd(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 ud(t=0,s=0,r=0,a=0,i=0,o=0,e=0,n=0,l=0,d=0){return I(Fs(Ct(Tn,Ks(R,[t,s,r,a,i,o,e,n,l,d]))))}function Do(t,s,r=x){return z(t.epochNanoseconds,s,r)}function cd(t){return V(t.epochNanoseconds)}function Mo(t,s){return $(rt(s,t))}function Io(t,s){return Z(rt(s,t))}function pd(t,s,r){return Ho(t(s.calendar),r)}function md(t,s,r){return bo(t(s.calendar),r)}function So(t,s){return bt(rt(s,t))}function Td(t,s,r,a){let i=((o,e,n,l)=>{let d=Oi(l);return ut(o(e),n,d)})(t,r,s,a);return z(ht(i),r,s.calendar)}function Pd(t,s,r){let a=t(s.calendar);return ds({...s,...Ho(a,r)})}function hd(t,s,r){return bo(t(s.calendar),r)}function fd(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 yd(t,s=xt){return $(Lt({...t,...s}))}function gd(t,s,r){return Ho(t(s.calendar),r)}function wd(t,s,r){return bo(t(s.calendar),r)}function xd(t,s,r,a){return((i,o,e)=>rd(i,o,Qd,Zt(e),xr))(t(s.calendar),r,a)}function Cd(t,s,r,a){return((i,o,e)=>rd(i,o,Yd,Zt(e),Aa))(t(s.calendar),r,a)}function Rd(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 Od(t,s){return $(Lt({...t,...s}))}function bd(t){return V(ht(Is(t,wt)))}function Hd(t){return V(ht(Is(t,St)))}function Dd(t){return V(ht(ta(Yr(t),ws)))}function Md(t){return V(ht(ta(Yr(t))))}function Id(t,s,r=xt){let a=s.timeZone,i=t(a),o={...rt(s,i),...r};return z(Ps(i,o,o.offsetNanoseconds,2),a,s.calendar)}function Sd(t,s,r){let a=s.timeZone,i=t(a),o={...rt(s,i),...r},e=vd(s.calendar,r.calendar);return z(Ps(i,o,o.offsetNanoseconds,2),a,e)}function Ad(t,s=xt){return $({...t,...s})}function Kd(t,s){return $({...t,...s},vd(t.calendar,s.calendar))}function Ha(t,s){return{...t,calendar:s}}function qd(t,s){return{...t,timeZone:s}}function vd(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 Tc(t,s){return(r)=>r===x?t:r===Ka||r===Ss?Object.assign(Object.create(t),{id:r}):Object.assign(Object.create(s),Dp(r))}function gs(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=Rs,["full","long"].includes(i.timeStyle)&&(i.timeStyle="medium")),i)}function jt(t,s=Ao){let[r,,,a]=t;return(i,o=zp,...e)=>{let n=s(a&&a(...e),i,o,r),l=n.resolvedOptions();return[n,...Pc(t,l,e)]}}function Ao(t,s,r,a){if(r=a(r),t){if(r.timeZone!==void 0)throw new TypeError(kc);r.timeZone=t}return new ts(s,r)}function Pc(t,s,r){let[,a,i]=t;return r.map((o)=>(o.calendar&&((e,n,l)=>{if((l||e!==x)&&e!==n)throw new RangeError(Eo)})(W(o.calendar),s.calendar,i),a(o,s)))}function js(t){let s=fr();return Jt(s,t.getOffsetNanosecondsFor(s))}function fr(){return Is(Date.now(),St)}function kt(){return Xe||(Xe=new ts().resolvedOptions().timeZone)}var hc=(t,s)=>`Non-integer ${t}: ${s}`,fc=(t,s)=>`Non-positive ${t}: ${s}`,yc=(t,s)=>`Non-finite ${t}: ${s}`,gc=(t)=>`Cannot convert bigint to ${t}`,wc=(t)=>`Invalid bigint: ${t}`,xc="Cannot convert Symbol to string",Ed="Invalid object",Fd=(t,s,r,a,i)=>i?Fd(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}`,Cc=(t)=>`Duplicate field ${t}`,$d=(t)=>"No valid fields: "+t.join(),Zd="Invalid bag",Ld=(t,s,r)=>yr(t,s)+"; must be "+Object.keys(r).join(),jd="Cannot use valueOf",vo="Invalid calling context",Rc="Forbidden era/eraYear",Oc="Mismatching era/eraYear",bc="Mismatching year/eraYear",Hc=(t)=>`Invalid era: ${t}`,Dc=(t)=>"Missing year"+(t?"/era/eraYear":""),Mc=(t)=>`Invalid monthCode: ${t}`,kd="Mismatching month/monthCode",Ic="Missing month/monthCode",_e="Cannot guess year",rr="Invalid leap month",Nd="Invalid protocol",gr="Invalid protocol results",Eo="Mismatching Calendars",Sc=(t)=>`Invalid Calendar: ${t}`,Ud="Mismatching TimeZones",Ac="Forbidden ICU TimeZone",Kc="Out-of-bounds offset",qc="Out-of-bounds TimeZone gap",vc="Invalid TimeZone offset",Ec="Ambiguous offset",Da="Out-of-bounds date",Fc="Out-of-bounds duration",$c="Cannot mix duration signs",Ma="Missing relativeTo",Zc="Cannot use large units",Lc="Required smallestUnit or largestUnit",jc="smallestUnit > largestUnit",nt=(t)=>`Cannot parse: ${t}`,$t=(t)=>`Invalid substring: ${t}`,Vd=(t)=>`Cannot format ${t}`,Gd="Mismatching types for formatting",kc="Cannot specify TimeZone",Wd=w(ur,(t,s)=>s),ks=w(ur,(t,s,r)=>r),gt=w(jr,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),lt=86400000,_d=1000,ws=1000,St=1e6,wt=1e9,Ia=60000000000,Sa=3600000000000,O=86400000000000,It=[1,ws,St,wt,Ia,Sa,O],Nt=wr.slice(0,6),ni=cr(Nt),zd=["offset"],Bd=["timeZone"],Jd=Nt.concat(zd),Xd=Jd.concat(Bd),li=["era","eraYear"],Nc=li.concat(["year"]),Aa=["year"],Fo=["monthCode"],$o=["month"].concat(Fo),xr=["day"],Zo=$o.concat(Aa),Qd=Fo.concat(Aa),Ht=xr.concat(Zo),Uc=xr.concat($o),Yd=xr.concat(Fo),tu=ks(Nt,0),x="iso8601",Ka="gregory",Ss="japanese",su={[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}},Vc={chinese:13,dangi:13,hebrew:-6},K=w(Qr,"string"),ru=w(Qr,"boolean"),Gc=w(Qr,"number"),au=w(Qr,"function"),R=wr.map((t)=>t+"s"),Lo=cr(R),Wc=R.slice(0,6),iu=R.slice(6),_c=iu.slice(1),zc=Wd(R),_=ks(R,0),jo=ks(Wc,0),ko=w(rn,R),Dt=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],No=["isoDay","isoMonth","isoYear"],qa=Dt.concat(No),Uo=cr(No),ou=cr(Dt),eu=cr(qa),xt=ks(ou,0),Bc=w(rn,qa),ts=Intl.DateTimeFormat,nu="en-GB",Vo=1e8,Jc=Vo*lt,Xc=[Vo,0],Qc=[-Vo,0],lr=275760,dr=-271821,Yc=1970,As=1972,Et=12,tp=qs(1868,9,8),sp=dt(sc,WeakMap),zr="smallestUnit",di="unit",ir="roundingIncrement",si="fractionalSecondDigits",lu="relativeTo",du={constrain:0,reject:1},rp=Object.keys(du),ap={compatible:0,reject:1,earlier:2,later:3},ip={reject:0,use:1,prefer:2,ignore:3},op={auto:0,never:1,critical:2,always:3},ep={auto:0,never:1,critical:2},np={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"),dp=w(Si,di),uu=w(ms,"overflow",du),cu=w(ms,"disambiguation",ap),up=w(ms,"offset",ip),Wo=w(ms,"calendarName",op),cp=w(ms,"timeZoneName",ep),pp=w(ms,"offset",np),Rr=w(ms,"roundingMode",lp),Ns="PlainYearMonth",Us="PlainMonthDay",xs="PlainDate",Cs="PlainDateTime",va="PlainTime",Ut="ZonedDateTime",Ea="Instant",Fa="Duration",mp=[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)],Rs="UTC",Zr=5184000,Tp=Nr(1847),Pp=Nr(new Date().getUTCFullYear()+10),hp=/0+$/,rt=dt(nc,WeakMap),ze=4294967295,$a=dt((t)=>{let s=uo(t);return typeof s=="object"?new mu(s):new pu(s||0)});class pu{constructor(t){this.v=t}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(t){return[xi(t,this.v)]}l(){}}class mu{constructor(t){this.$=((s)=>{function r(l){let d=ri(l,e,n),[u,c]=Ne(d),p=i(u),m=i(c);return p===m?p:a(o(u,c),p,m,l)}function a(l,d,u,c){let p,m;for(;(c===void 0||(p=c<l[0]?d:c>=l[1]?u:void 0)===void 0)&&(m=l[1]-l[0]);){let T=l[0]+Math.floor(m/2);s(T)===u?l[1]=T:l[0]=T+1}return p}let i=dt(s),o=dt(lc),e=Tp,n=Pp;return{G(l){let d=r(l-86400),u=r(l+86400),c=l-d,p=l-u;if(d===u)return[c];let m=r(c);return m===r(p)?[l-m]:d>u?[c,p]:[]},V:r,l(l,d){let u=ri(l,e,n),[c,p]=Ne(u),m=Zr*d,T=d<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,l)||1)===d)return f}c+=m,p+=m}}}})(((s)=>(r)=>{let a=gi(s,r*_d);return Nr(Fl(a),parseInt(a.month),parseInt(a.day),parseInt(a.hour),parseInt(a.minute),parseInt(a.second))-r})(t))}getOffsetNanosecondsFor(t){return this.$.V(fn(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*ws+a.isoNanosecond];var a;return this.$.G(s).map((i)=>ht(Ms(Is(i,wt),r)))}l(t,s){let[r,a]=yn(t),i=this.$.l(r+(s>0||a?1:0),s);if(i!==void 0)return Is(i,wt)}}var _o="([+\u2212-])",Lr="(?:[.,](\\d{1,9}))?",Tu=`(?:(?:${_o}(\\d{6}))|(\\d{4}))-?(\\d{2})`,zo="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+Lr+")?)?",Bo=_o+zo,fp=Tu+"-?(\\d{2})(?:[T ]"+zo+"(Z|"+Bo+")?)?",Pu="\\[(!?)([^\\]]*)\\]",Za=`((?:${Pu}){0,9})`,yp=Ls(Tu+Za),gp=Ls("(?:--)?(\\d{2})-?(\\d{2})"+Za),wp=Ls(fp+Za),xp=Ls("T?"+zo+"(?:"+Bo+")?"+Za),Cp=Ls(Bo),Rp=new RegExp(Pu,"g"),Op=Ls(`${_o}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${Lr}H)?(?:(\\d+)${Lr}M)?(?:(\\d+)${Lr}S)?)?`),bp=dt((t)=>new ts(nu,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Hp=/^(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$/,Dp=dt(cc),Jo=dt((t)=>new ts(nu,{calendar:t,timeZone:Rs,era:"short",year:"numeric",month:"short",day:"numeric"})),Mp=/^M(\d{2})(L?)$/,Ip={era:kr,eraYear:Q,year:Q,month:Ze,monthCode:kr,day:Ze},Sp=ks(Nt,Q),Ap=ks(R,Tn),Be=Object.assign({},Ip,Sp,Ap,{offset:kr}),Kp=w(tc,Nt,Dt),Je={dateAdd(t,s,r){let a=C(r),i,{years:o,months:e,weeks:n,days:l}=s;if(l+=N(s,5)[0],o||e)i=((d,u,c,p,m)=>{let[T,P,h]=d.h(u);if(c){let[y,f]=d.I(T,P);T+=c,P=_r(y,f,d.U(T)),P=yt("month",P,1,d.L(T),m)}return p&&([T,P]=d._(T,P,p)),h=yt("day",h,1,d.j(T,P),m),d.q(T,P,h)})(this,t,o,e,a);else{if(!n&&!l)return t;i=st(t)}return i+=(7*n+l)*lt,Gt(ra(i))},dateUntil(t,s,r){if(r<=7){let l=0,d=vl({...t,...xt},{...s,...xt});return r===7&&([l,d]=_t(d,7)),{..._,weeks:l,days:d}}let a=this.h(t),i=this.h(s),[o,e,n]=((l,d,u,c,p,m,T)=>{let P=p-d,h=m-u,y=T-c;if(P||h){let f=Math.sign(P||h),g=l.j(p,m),E=0;if(Math.sign(y)===-f){let S=g;[p,m]=l._(p,m,-f),P=p-d,h=m-u,g=l.j(p,m),E=f<0?-S:g}if(y=T-Math.min(c,g)+E,P){let[S,M]=l.I(d,u),[A,G]=l.I(p,m);if(h=A-S||Number(G)-Number(M),Math.sign(h)===-f){let k=f<0&&-l.L(p);P=(p-=f)-d,h=m-_r(S,M,l.U(p))+(k||l.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=We(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,l,d,u,c;if(i!==void 0){[n,l]=jl(i),c=Qe(t,"day");let p=this.N(n,l,c);if(!p)throw new RangeError(_e);if([d,u]=p,e!==void 0&&e!==u)throw new RangeError(kd);a&&(u=yt("month",u,1,Et,1),c=yt("day",c,1,Ci(o!==void 0?o:d,u),r))}else{d=o===void 0&&a?As:Qa(this,t),u=Ya(this,t,d,r),c=We(this,t,u,d,r);let p=this.U(d);l=u===p,n=ii(u,p);let m=this.N(n,l,c);if(!m)throw new RangeError(_e);[d,u]=m}return Ur(Gt(this.P(d,u,c)),this.id||x)},fields(t){return oi(this)&&t.includes("year")?[...t,...li]:t},mergeFields(t,s){let r=Object.assign(Object.create(null),t);return ti(r,s,$o),oi(this)&&(ti(r,s,Nc),this.id===Ss&&ti(r,s,Uc,li)),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:Rn,daysInWeek(){return 7}},qp={dayOfYear:xo,h:wn,q:qs},vp=Object.assign({},qp,{weekOfYear:Zl,yearOfWeek:Ll,R(t){function s(m){return(7-m<a?7:0)-m}function r(m){let T=Cn(p+m),P=m||1,h=s(ar(l+T*P,7));return u=(T+(h-d)*P)/7}let a=this.id?1:4,i=Rn(t),o=this.dayOfYear(t),e=ar(i-1,7),n=o-1,l=ar(e-n,7),d=s(l),u,c=Math.floor((n-d)/7)+1,p=t.isoYear;return c?c>r(0)&&(c=1,p++):(c=r(-1),p--),[c,p,u]}}),Ep={dayOfYear:xo,h:ai,q:nr,weekOfYear:Zl,yearOfWeek:Ll,R(){return[]}},Vs=Tc(Object.assign({},Je,vp,{h:wn,ee(t){return this.id===Ka?On(t):this.id===Ss?sp(t):[]},I:(t,s)=>[s,0],N(t,s){if(!s)return[As,t]},K:Ri,U(){},L:xn,J:(t)=>t*Et,j:Ci,X:Cn,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({},Je,Ep,{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 l=0;l<100;l++){let d=a-l,u=Er.call(this,d),c=_r(t,s,u);if(s===(c===u)&&r<=Ve.call(this,d,c))return[d,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:Ve,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"],hu={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),Fp=Object.assign({},te,{timeZoneName:"short"}),$p=Object.keys(Xo),Zp=Object.keys(hu),Lp=Object.keys(Qo),jp=Object.keys(Yo),se=["dateStyle"],kp=$p.concat(se),Np=Zp.concat(se),re=Lp.concat(se,["weekday"]),Or=jp.concat(["dayPeriod","timeStyle"]),ae=re.concat(Or),Up=ae.concat(Gs),Vp=Gs.concat(Or),Gp=Gs.concat(re),Wp=Gs.concat(["day","weekday"],Or),_p=Gs.concat(["year","weekday"],Or),zp={},ie=[gs(ae,te),na],fu=[gs(Up,Fp),na,0,(t,s)=>{let r=W(t.timeZone);if(s&&W(s.timeZone)!==r)throw new RangeError(Ud);return r}],oe=[gs(ae,te,Gs),st],ee=[gs(re,Qo,Vp),st],ne=[gs(Or,Yo,Gp),(t)=>zt(t)/St],le=[gs(kp,Xo,Wp),st,1],de=[gs(Np,hu,_p),st,1],Xe;function qt(t,s,r,a,i){function o(...l){if(!(this instanceof o))throw new TypeError(vo);xu(this,s(...l))}function e(l,d){return Object.defineProperties(function(...u){return l.call(this,n(this),...u)},ui(d))}function n(l){let d=X(l);if(!d||d.branding!==t)throw new TypeError(vo);return d}return Object.defineProperties(o.prototype,{...Ye(Ct(e,r)),...cs(Ct(e,a)),...Br("Temporal."+t)}),Object.defineProperties(o,{...cs(i),...ui(t)}),[o,(l)=>{let d=Object.create(o.prototype);return xu(d,l),d},n]}function Ou(t){return t=t.concat("id").sort(),(s)=>{if(!tn(s,t))throw new TypeError(Nd);return s}}function Bs(t){if(X(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(Zd);return t}function La(t,s){let r={};for(let a in t)r[a]=({o:i},o)=>{let e=X(o)||{},{branding:n}=e,l=n===xs||s.includes(n)?e:ot(o);return i[a](l)};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(um),{i:e})))[r](a);var o,e};return s}function os(){throw new TypeError(jd)}function Hr({calendar:t}){return typeof t=="string"?new xe(t):t}function yu(t,s){if(s=F(s),U(t)){let a=X(t);if(a&&a.branding===Us)return C(s),a;let i=Du(t);return Oo(Wa(i||x),!i,t,s)}let r=ul(Vs,t);return C(s),r}function bu(t,s,r){return a=s.call(t,it(V(r))),Vi(pr(a));var a}function ja(t,s=Au){let r=Object.keys(s).sort(),a={};for(let i of r)a[i]=w(s[i],t,au(t[i]));return a}function b(t,s){return typeof t=="string"?$a(t):ja(t,s)}function j(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 ol(t)}function gu(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||hm(t):((s)=>wa(Tl(K(s))))(t)}function ss(t,s){if(U(t)){let r=X(t)||{};switch(r.branding){case va:return C(s),r;case Cs:return C(s),bt(r);case Ut:return C(s),So(j,r)}return _l(t,s)}return C(s),cl(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=dl(Vs,t);return C(s),r}function rs(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case Cs:return C(s),a;case xs:return C(s),$({...a,...xt});case Ut:return C(s),Mo(j,a)}return Wl(Ga(Dr(t)),t,s)}let r=ll(t);return C(s),r}function ot(t,s){if(s=F(s),U(t)){let a=X(t)||{};switch(a.branding){case xs:return C(s),a;case Cs:return C(s),Z(a);case Ut:return C(s),Io(j,a)}return Co(Ga(Dr(t)),t,s)}let r=ya(t);return C(s),r}function Hu(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:zl(t)}return pl(t)}function br(t){if(t!==void 0){if(U(t)){let s=X(t)||{};switch(s.branding){case Ut:case xs:return s;case Cs:return Z(s)}let r=Dr(t);return{...Vl(D,b,Ga(r),t),calendar:r}}return el(t)}}function Dr(t){return Du(t)||x}function Du(t){let{calendar:s}=t;if(s!==void 0)return J(s)}function J(t){return U(t)?(X(t)||{}).calendar||Am(t):((s)=>Pr(ml(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 Gl(D,b,Ga(a),a,t,s)}return nl(t,s)}function wu(t){return Ct((s)=>(r)=>s(ue(r)),t)}function ue(t){return rt(t,j)}function Bp(){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 l=new ts(e,n),d=l.resolvedOptions(),u=d.locale,c=ct(Object.keys(n),d),p=dt(Qp),m=(...T)=>{let P,h=T.map((y,f)=>{let g=X(y),E=(g||{}).branding;if(f&&P&&P!==E)throw new TypeError(Gd);return P=E,g});return P?p(P)(u,c,...h):[l,...T]};return m.u=l,m})(i,o))};for(let i in s){let o=s[i],e=i.startsWith("format")&&Jp(i);typeof o.value=="function"?o.value=i==="constructor"?a:e||Xp(i):e&&(o.get=function(){return e.bind(this)})}return r.prototype.value=Object.create(t,s),Object.defineProperties(a,r),a}function Jp(t){return function(...s){let r=Ce.get(this),[a,...i]=r(...s);return a[t](...i)}}function Xp(t){return function(...s){return Ce.get(this).u[t](...s)}}function Qp(t){let s=Yp[t];if(!s)throw new TypeError(Vd(t));return jt(s,dt(Ao))}var Yp={Instant:ie,PlainDateTime:oe,PlainDate:ee,PlainTime:ne,PlainYearMonth:le,PlainMonthDay:de},tm=jt(ie),sm=jt(fu),rm=jt(oe),am=jt(ee),im=jt(ne),om=jt(le),em=jt(de),Te={era:ln,eraYear:Ti,year:pr,month:Rt,daysInMonth:Rt,daysInYear:Rt,inLeapYear:ru,monthsInYear:Rt},Na={monthCode:K},Pe={day:Rt},Mu={dayOfWeek:Rt,dayOfYear:Rt,weekOfYear:dn,yearOfWeek:Ti,daysInWeek:Rt},Iu=Object.assign({},Te,Na,Pe,Mu),ka=new WeakMap,X=ka.get.bind(ka),xu=ka.set.bind(ka),nm={...La(Te,[Ns]),...La(Mu,[]),...La(Na,[Ns,Us]),...La(Pe,[Us])},he=pe(Iu),lm=pe({...Te,...Na}),dm=pe({...Na,...Pe}),Mr={calendarId:(t)=>W(t.calendar)},um=Ct((t,s)=>function(r){let{i:a}=this;return t(a[s](v(Z(r,a))))},Iu),cm=ur((t)=>(s)=>s[t],R.concat("sign")),fe=ur((t,s)=>(r)=>r[Dt[s]],Nt),Su={epochSeconds:An,epochMilliseconds:na,epochMicroseconds:Kn,epochNanoseconds:qn},Ir=w(ci,new Set(["branding"])),[pm,zs,mm]=qt(Us,w(ld,J),{...Mr,...dm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return zs(Yl(Mm,t,this,Bs(s),r))},equals:(t,s)=>Ml(t,yu(s)),toPlainDate(t,s){return v(Cd(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=em(s,r,t);return a.format(i)},toString:Li,toJSON:(t)=>Li(t),valueOf:os},{from:(t,s)=>zs(yu(t,s))}),Au={getOffsetNanosecondsFor:bu,getPossibleInstantsFor(t,s,r){let a=[...s.call(t,B($(r,x)))].map((o)=>Pm(o).epochNanoseconds),i=a.length;return i>1&&(a.sort(tt),Gi(Pt(Tt(a[0],a[i-1])))),a}},ce={getOffsetNanosecondsFor:bu},[Tm,it,Pm]=qt(Ea,ad,Su,{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(Fn(t,s)),equals:(t,s)=>Rl(t,At(s)),toZonedDateTime(t,s){let r=Zt(s);return L(Do(t,D(r.timeZone),J(r.calendar)))},toZonedDateTimeISO:(t,s)=>L(Do(t,D(s))),toLocaleString(t,s,r){let[a,i]=tm(s,r,t);return a.format(i)},toString:(t,s)=>vi(D,j,t,s),toJSON:(t)=>vi(D,j,t),valueOf:os},{from:(t)=>it(At(t)),fromEpochSeconds:(t)=>it(bd(t)),fromEpochMilliseconds:(t)=>it(Hd(t)),fromEpochMicroseconds:(t)=>it(Dd(t)),fromEpochNanoseconds:(t)=>it(Md(t)),compare:(t,s)=>co(At(t),At(s))}),[Ua,mT]=qt("TimeZone",(t)=>{let s=xl(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=ja(this,ce).getOffsetNanosecondsFor(r);return Ts(a)},getPlainDateTimeFor(t,s,r=x){let a=At(s).epochNanoseconds,i=ja(this,ce).getOffsetNanosecondsFor(a);return B($(Jt(a,i),J(r)))},getInstantFor(t,s,r){let a=rs(s),i=Oi(r),o=ja(this);return it(V(ut(o,a,i)))},getNextTransition:({o:t},s)=>gu(1,t,s),getPreviousTransition:({o:t},s)=>gu(-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}}),hm=Ou(Object.keys(Au)),[fm,as]=qt(va,dd,fe,{getISOFields:Ir,with(t,s,r){return as(td(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)=>Il(t,ss(s)),toZonedDateTime:(t,s)=>L(Rd(D,ot,b,t,s)),toPlainDateTime:(t,s)=>B(Od(t,ot(s))),toLocaleString(t,s,r){let[a,i]=im(s,r,t);return a.format(i)},toString:ji,toJSON:(t)=>ji(t),valueOf:os},{from:(t,s)=>as(ss(t,s)),compare:(t,s)=>xa(ss(t),ss(s))}),[ym,is,gm]=qt(Ns,w(nd,J),{...Mr,...lm},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return is(Ql(Dm,t,this,Bs(s),r))},add:(t,s,r)=>is(Ji(Cu,0,t,q(s),r)),subtract:(t,s,r)=>is(Ji(Cu,1,t,q(s),r)),until:(t,s,r)=>H(yo(Ru,0,t,Ws(s),r)),since:(t,s,r)=>H(yo(Ru,1,t,Ws(s),r)),equals:(t,s)=>Dl(t,Ws(s)),toPlainDate(t,s){return v(xd(Sr,t,this,s))},toLocaleString(t,s,r){let[a,i]=om(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)=>fs(Ws(t),Ws(s))}),[wm,B]=qt(Cs,w(od,J),{...Mr,...he,...fe},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return B(Jl(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>B(Ha(t,J(s))),withPlainDate:(t,s)=>B(Kd(t,ot(s))),withPlainTime:(t,s)=>B(Ad(t,me(s))),add:(t,s,r)=>B(zi(Os,0,t,q(s),r)),subtract:(t,s,r)=>B(zi(Os,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(Zn(t,s)),equals:(t,s)=>bl(t,rs(s)),toZonedDateTime:(t,s,r)=>L(Td(b,t,D(s),r)),toPlainDate:(t)=>v(Z(t)),toPlainTime:(t)=>as(bt(t)),toPlainYearMonth(t){return is(Pd(Va,t,this))},toPlainMonthDay(t){return zs(hd(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=rm(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))}),[xm,v,Ku]=qt(xs,w(ed,J),{...Mr,...he},{getISOFields:Ir,getCalendar:Hr,with(t,s,r){return v(Xl(Sr,t,this,Bs(s),r))},withCalendar:(t,s)=>v(Ha(t,J(s))),add:(t,s,r)=>v(Bi(Os,0,t,q(s),r)),subtract:(t,s,r)=>v(Bi(Os,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)=>Hl(t,ot(s)),toZonedDateTime(t,s){let r=!U(s)||s instanceof Ua?{timeZone:s}:s;return L(fd(D,ss,b,t,r))},toPlainDateTime:(t,s)=>B(yd(t,me(s))),toPlainYearMonth(t){return is(gd(Va,t,this))},toPlainMonthDay(t){return zs(wd(Wa,t,this))},toLocaleString(t,s,r){let[a,i]=am(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)=>fs(ot(t),ot(s))}),ye={fields(t,s,r){return[...s.call(t,r)]}},qu=Object.assign({dateFromFields(t,s,r,a){return Ku(s.call(t,Object.assign(Object.create(null),r),a))}},ye),vu=Object.assign({yearMonthFromFields(t,s,r,a){return gm(s.call(t,Object.assign(Object.create(null),r),a))}},ye),Eu=Object.assign({monthDayFromFields(t,s,r,a){return mm(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)))}},Cm=Object.assign({},qu,ge),Rm=Object.assign({},vu,ge),Om=Object.assign({},Eu,ge),we={dateAdd(t,s,r,a,i){return Ku(s.call(t,v(Z(r,t)),H(I(a)),i))}},Fu=Object.assign({},we,{dateUntil(t,s,r,a,i,o){return Sm(s.call(t,v(Z(r,t)),v(Z(a,t)),Object.assign(Object.create(null),o,{largestUnit:wr[i]})))}}),bm=Object.assign({},we,{day:Hu}),Hm=Object.assign({},Fu,{day:Hu}),Va=vt(vu),Ga=vt(qu),Wa=vt(Eu),Dm=vt(Rm),Sr=vt(Cm),Mm=vt(Om),Os=vt(we),Kt=vt(Fu),Cu=vt(bm),Ru=vt(Hm),[Im,H,Sm]=qt(Fa,ud,{...cm,blank:rl},{with:(t,s)=>H(sd(t,s)),negated:(t)=>H(ha(t)),abs:(t)=>H(sl(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(tl(br,Kt,b,t,s)),total:(t,s)=>En(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)=>Cl(br,Os,b,q(t),q(s),r)}),$u={toString:(t)=>t.id,toJSON:(t)=>t.id,...nm,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),Hn(a)))),dateFromFields:({id:t,o:s},r,a)=>v(Co(s,r,a,nn(t))),yearMonthFromFields:({id:t,o:s},r,a)=>is(Ro(s,r,a,on(t))),monthDayFromFields:({id:t,o:s},r,a)=>zs(Oo(s,0,r,a,en(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=$l(t);return{branding:"Calendar",id:s,o:Vs(s)}},{id:(t)=>t.id},$u,{from(t){let s=J(t);return typeof s=="string"?new xe(s):s}}),Am=Ou(Object.keys($u).slice(4)),[Km,L]=qt(Ut,w(id,J,D),{...Su,...Mr,...wu(he),...wu(fe),offset:(t)=>Ts(ue(t).offsetNanoseconds),offsetNanoseconds:(t)=>ue(t).offsetNanoseconds,timeZoneId:(t)=>W(t.timeZone),hoursInDay:(t)=>jn(b,t)},{getISOFields:(t)=>Qn(j,t),getCalendar:Hr,getTimeZone:({timeZone:t})=>typeof t=="string"?new Ua(t):t,with(t,s,r){return L(Bl(Sr,b,t,this,Bs(s),r))},withCalendar:(t,s)=>L(Ha(t,J(s))),withTimeZone:(t,s)=>L(qd(t,D(s))),withPlainDate:(t,s)=>L(Sd(b,t,ot(s))),withPlainTime:(t,s)=>L(Id(b,t,me(s))),add:(t,s,r)=>L(_i(Os,b,0,t,q(s),r)),subtract:(t,s,r)=>L(_i(Os,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)=>L($n(b,t,s)),startOfDay:(t)=>L(kn(b,t)),equals:(t,s)=>Ol(t,_s(s)),toInstant:(t)=>it(cd(t)),toPlainDateTime:(t)=>B(Mo(j,t)),toPlainDate:(t)=>v(Io(j,t)),toPlainTime:(t)=>as(So(j,t)),toPlainYearMonth(t){return is(pd(Va,t,this))},toPlainMonthDay(t){return zs(md(Wa,t,this))},toLocaleString(t,s,r={}){let[a,i]=sm(s,r,t);return a.format(i)},toString:(t,s)=>Ei(j,t,s),toJSON:(t)=>Ei(j,t),valueOf:os},{from:(t,s)=>L(_s(t,s)),compare:(t,s)=>po(_s(t),_s(s))}),qm=Object.defineProperties({},{...Br("Temporal.Now"),...cs({timeZoneId:()=>kt(),instant:()=>it(V(fr())),zonedDateTime:(t,s=kt())=>L(z(fr(),D(s),J(t))),zonedDateTimeISO:(t=kt())=>L(z(fr(),D(t),x)),plainDateTime:(t,s=kt())=>B($(js(j(D(s))),J(t))),plainDateTimeISO:(t=kt())=>B($(js(j(D(t))),x)),plainDate:(t,s=kt())=>v(Z(js(j(D(s))),J(t))),plainDateISO:(t=kt())=>v(Z(js(j(D(t))),x)),plainTimeISO:(t=kt())=>as(bt(js(j(D(t)))))})}),Ar=Object.defineProperties({},{...Br("Temporal"),...cs({PlainYearMonth:ym,PlainMonthDay:pm,PlainDate:xm,PlainTime:fm,PlainDateTime:wm,ZonedDateTime:Km,Instant:Tm,Calendar:xe,TimeZone:Ua,Duration:Im,Now:qm})}),vm=Bp(),Ce=new WeakMap,Em=Object.defineProperties(Object.create(Intl),cs({DateTimeFormat:vm}));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:l}=await s.adapter.findUserByEmailAddress(t.email,!1);n=l}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(Fm(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 Zu extends mt{async run(t){let s=ns.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 $m={"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 ju 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={...$m,...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 ku 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 Nu 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 ku;return{}}}class Uu 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 Vu{policiesList={};constructor(){let t=this.register();for(let s of t){let r=new s;this.policiesList[s.name]=r}}register(){return[]}}class Gu{all(t,s){return!0}}export{Yu as getCookies,Qs as ViewRouter,Ys as ValidationError,Kr as ResourceController,ft as RequestBreakerError,Nu as RateLimitMiddleware,Vu as PoliciesServiceProvider,Gu as Policies,ve as MiddlewareServiceProvider,mt as Middleware,Fe as InsufficientPermissionsError,tr as HttpRequest,ju as CorsMiddleware,Ba as Controller,Lu as CacheMiddleware,Uu as CSRFMiddleware,Ee as AuthorizationError,Zu as AuthenticationMiddleware,sr as AuthenticationError,Ja as ApiRouter};export{Ba as G,be as H,Ja as I,Qs as J,Ys as K,ns as L,tr as M,ve as N,Ee as O,Fe as P,Ar as Q,za as R,Re as S};
3
3
 
4
- //# debugId=FDE834D927894EB664756E2164756E21
4
+ //# debugId=FDD77785A736DE2864756E2164756E21