gemi 0.4.90 → 0.4.91

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 (41) hide show
  1. package/dist/app/App.d.ts.map +1 -1
  2. package/dist/app/index.js +1 -1
  3. package/dist/auth/AuthenticationServiceContainer.d.ts +7 -0
  4. package/dist/auth/AuthenticationServiceContainer.d.ts.map +1 -0
  5. package/dist/auth/AuthenticationServiceProvider.d.ts +1 -0
  6. package/dist/auth/AuthenticationServiceProvider.d.ts.map +1 -1
  7. package/dist/auth/adapters/types.d.ts +1 -0
  8. package/dist/auth/adapters/types.d.ts.map +1 -1
  9. package/dist/{chunk-0f500a6384fcd132.js → chunk-19790c50198f1898.js} +1 -1
  10. package/dist/{chunk-786985b106091b91.js → chunk-201d67e6e22cc14b.js} +1 -1
  11. package/dist/{chunk-73ad537019659405.js → chunk-2b9b6009ebe271d3.js} +1 -1
  12. package/dist/chunk-32d1342f9f8391c0.js +2 -0
  13. package/dist/{chunk-f28fe28ab592bd2a.js → chunk-3a6838d9e6866471.js} +1 -1
  14. package/dist/chunk-7085d9454a422181.js +2 -0
  15. package/dist/{chunk-00c56e78353444bd.js → chunk-809308720fc22418.js} +1 -1
  16. package/dist/chunk-900bf3955cb1bbab.js +2 -0
  17. package/dist/{chunk-f7a2f27070c1a0cf.js → chunk-931a005d4bb28ffe.js} +2 -2
  18. package/dist/chunk-967cb54562e3d29b.js +3 -0
  19. package/dist/{chunk-e51fe90ab8cb869b.js → chunk-b94896500a1345bf.js} +1 -1
  20. package/dist/{chunk-6b1b2297cf4e98bf.js → chunk-bce765dc10669cd0.js} +1 -1
  21. package/dist/{chunk-5bfe9d4cbecd160a.js → chunk-bdac4694bbb37064.js} +1 -1
  22. package/dist/{chunk-77f51fc60eb8f53d.js → chunk-c3c17a7115770391.js} +1 -1
  23. package/dist/chunk-d1e1b959b1124e74.js +18 -0
  24. package/dist/{chunk-ce91e437af790f62.js → chunk-f6a9cd06681eb0dc.js} +2 -2
  25. package/dist/{chunk-b033519a526dfb3f.js → chunk-fcd9eb76c67113d3.js} +1 -1
  26. package/dist/facades/Auth.d.ts.map +1 -1
  27. package/dist/facades/index.js +1 -1
  28. package/dist/http/AuthenticationMiddlware.d.ts.map +1 -1
  29. package/dist/http/index.js +1 -1
  30. package/dist/kernel/Kernel.d.ts +3 -2
  31. package/dist/kernel/Kernel.d.ts.map +1 -1
  32. package/dist/kernel/context.d.ts +2 -2
  33. package/dist/kernel/context.d.ts.map +1 -1
  34. package/dist/kernel/index.js +1 -1
  35. package/dist/services/index.js +1 -1
  36. package/package.json +1 -1
  37. package/dist/chunk-1663f14acf1c15e4.js +0 -2
  38. package/dist/chunk-631b243096f99070.js +0 -2
  39. package/dist/chunk-d5f34554362c0fde.js +0 -18
  40. package/dist/chunk-d96668bed492732f.js +0 -3
  41. package/dist/chunk-da0be6c2c54903f4.js +0 -2
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{f as R,h as p,i as C,l as f} from"../http/index.js";import{A as s} from"../chunk-9475c6ed18013dc8.js";import{B as F} from"../chunk-24a86f8f5ddc0cbd.js";import{D as V} from"../chunk-332553172e3ab961.js";class d{static async user(){const r=p.getStore(),t=s.getStore().broadcastingServiceContainer.context.getStore();let a="",n="";if(r?.req)a=r.req.cookies.get("access_token"),n=r.req.headers.get("User-Agent");if(t?.cookies)n=t.headers.get("User-Agent"),a=t.cookies.get("access_token");let e=r?.user;if(!e)e=(await s.getStore().authenticationServiceProvider.adapter.findSession({token:a,userAgent:n}))?.user,r?.setUser(e);if(e)return e;return null}static async guard(r){const t=await d.user();if(!t)throw new f;try{if(!await r(t))throw new f}catch(a){throw new f}}static async guardSafe(r){const t=await d.user();if(!t)return!1;try{return await r(t)}catch(a){return!1}}}function c(r,t){return r.replace(/:([^/]+)/g,(a,n)=>{const e=n.endsWith("?"),i=e?n.slice(0,-1):n,o=t[i];if(o===void 0){if(e)return"";throw new Error(`Missing parameter: ${i}`)}return String(o)}).replace(/\/\//g,"/")}class T extends R{constructor(r){super("Redirect error");this.name="RedirectError",this.payload={api:{status:200,data:{},directive:{kind:"Redirect",path:r}},view:{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:r}}}}}class h{static to(r,...t){const[a={}]=t;throw new T(c(r,a))}}function g(r,t){return r.replace(/{{([^}]+)}}/g,(a,n)=>{const e=t[n];if(e===void 0)throw new Error(`Missing parameter: ${n}`);return e})}class v{static scope(r){return r}static translate(r,...t){const a=s.getStore().i18nServiceContainer,n=a.detectLocale(p.getStore().req),e=a.translations.get(`${n}.server`)?.[r];if(!e)return r;return g(e,t[0])}}var x=F(V(),1);import{Buffer as j} from"buffer";class w{static async put(r){return s.getStore().fileStorageServiceContainer.service.driver.put(r)}static async metadata(r){const t=j.from(await r.arrayBuffer());try{return await x.default(t).metadata()}catch{return{}}}static async fetch(r){return s.getStore().fileStorageServiceContainer.service.driver.fetch(r)}static delete(){}}function S(r){return Object.fromEntries(Object.entries(r).filter(([,t])=>{return t!==null&&t!==void 0}))}class P{static prepare(r,...t){const a={params:{},search:{}},[n={}]=t,{search:e,params:i}={...a,...n},o=p.getStore(),y=o.req.rawRequest,I=new URL(y.url),m=new URLSearchParams(S(e));m.delete("json"),m.sort();const b=[`${c(r,i)}`,m.toString()].filter((l)=>l.length>0).join("?"),B=`${I.origin}/${b}`,G=new Request(B,{headers:y.headers}),$=new C(G,i),D=(l)=>{o.prefetchedResources.set(c(r,i),{[m.toString()]:l})},u=()=>{return p.run($,async()=>{const l=await s.getStore().apiRouterServiceContainer.getRouteData(r);return D(l),l})};return{instant:u,prefetch:()=>{o.prefetchPromiseQueue.add(u)}}}static instant(r,...t){return P.prepare(r,...t).instant()}static prefetch(r,...t){return P.prepare(r,...t).prefetch()}}class U{static publish(r,t){const a=s.getStore().broadcastingServiceContainer.service.channels[r];if(!a)throw new Error(`Channel ${r} not found`);const n=new a;return{publish:(e,i=!1)=>{const o=c(r,t);s.getStore().broadcastingServiceContainer.publish(o,JSON.stringify({topic:o,data:n.publish(e)}),i)}}}}export{h as Redirect,P as Query,v as I18n,w as FileStorage,U as Broadcast,d as Auth};export{d as o};
2
+ import{f as R,h as p,i as C,l as f} from"../http/index.js";import{A as s} from"../chunk-9475c6ed18013dc8.js";import{B as F} from"../chunk-24a86f8f5ddc0cbd.js";import{D as V} from"../chunk-332553172e3ab961.js";class d{static async user(){const r=p.getStore(),t=s.getStore().broadcastingServiceContainer.context.getStore();let a="",n="";if(r?.req)a=r.req.cookies.get("access_token"),n=r.req.headers.get("User-Agent");if(t?.cookies)n=t.headers.get("User-Agent"),a=t.cookies.get("access_token");let e=r?.user;if(!e)e=(await s.getStore().authenticationServiceContainer.getSession(a,n))?.user,r?.setUser(e);if(e)return e;return null}static async guard(r){const t=await d.user();if(!t)throw new f;try{if(!await r(t))throw new f}catch(a){throw new f}}static async guardSafe(r){const t=await d.user();if(!t)return!1;try{return await r(t)}catch(a){return!1}}}function c(r,t){return r.replace(/:([^/]+)/g,(a,n)=>{const e=n.endsWith("?"),i=e?n.slice(0,-1):n,o=t[i];if(o===void 0){if(e)return"";throw new Error(`Missing parameter: ${i}`)}return String(o)}).replace(/\/\//g,"/")}class T extends R{constructor(r){super("Redirect error");this.name="RedirectError",this.payload={api:{status:200,data:{},directive:{kind:"Redirect",path:r}},view:{status:302,headers:{"Cache-Control":"private, no-cache, no-store, max-age=0, must-revalidate",Location:r}}}}}class h{static to(r,...t){const[a={}]=t;throw new T(c(r,a))}}function g(r,t){return r.replace(/{{([^}]+)}}/g,(a,n)=>{const e=t[n];if(e===void 0)throw new Error(`Missing parameter: ${n}`);return e})}class v{static scope(r){return r}static translate(r,...t){const a=s.getStore().i18nServiceContainer,n=a.detectLocale(p.getStore().req),e=a.translations.get(`${n}.server`)?.[r];if(!e)return r;return g(e,t[0])}}var x=F(V(),1);import{Buffer as j} from"buffer";class w{static async put(r){return s.getStore().fileStorageServiceContainer.service.driver.put(r)}static async metadata(r){const t=j.from(await r.arrayBuffer());try{return await x.default(t).metadata()}catch{return{}}}static async fetch(r){return s.getStore().fileStorageServiceContainer.service.driver.fetch(r)}static delete(){}}function S(r){return Object.fromEntries(Object.entries(r).filter(([,t])=>{return t!==null&&t!==void 0}))}class P{static prepare(r,...t){const a={params:{},search:{}},[n={}]=t,{search:e,params:i}={...a,...n},o=p.getStore(),y=o.req.rawRequest,I=new URL(y.url),m=new URLSearchParams(S(e));m.delete("json"),m.sort();const b=[`${c(r,i)}`,m.toString()].filter((l)=>l.length>0).join("?"),B=`${I.origin}/${b}`,G=new Request(B,{headers:y.headers}),$=new C(G,i),D=(l)=>{o.prefetchedResources.set(c(r,i),{[m.toString()]:l})},u=()=>{return p.run($,async()=>{const l=await s.getStore().apiRouterServiceContainer.getRouteData(r);return D(l),l})};return{instant:u,prefetch:()=>{o.prefetchPromiseQueue.add(u)}}}static instant(r,...t){return P.prepare(r,...t).instant()}static prefetch(r,...t){return P.prepare(r,...t).prefetch()}}class U{static publish(r,t){const a=s.getStore().broadcastingServiceContainer.service.channels[r];if(!a)throw new Error(`Channel ${r} not found`);const n=new a;return{publish:(e,i=!1)=>{const o=c(r,t);s.getStore().broadcastingServiceContainer.publish(o,JSON.stringify({topic:o,data:n.publish(e)}),i)}}}}export{h as Redirect,P as Query,v as I18n,w as FileStorage,U as Broadcast,d as Auth};export{d as o};
@@ -1 +1 @@
1
- {"version":3,"file":"AuthenticationMiddlware.d.ts","sourceRoot":"","sources":["../../http/AuthenticationMiddlware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,qBAAa,wBAAyB,SAAQ,UAAU;IAChD,GAAG,CAAC,GAAG,EAAE,WAAW;CA2B3B"}
1
+ {"version":3,"file":"AuthenticationMiddlware.d.ts","sourceRoot":"","sources":["../../http/AuthenticationMiddlware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,qBAAa,wBAAyB,SAAQ,UAAU;IAChD,GAAG,CAAC,GAAG,EAAE,WAAW;CAyB3B"}
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{A as T} from"../chunk-9475c6ed18013dc8.js";import"../chunk-24a86f8f5ddc0cbd.js";class m{requests={};static kind="controller";constructor(){}}class H extends m{constructor(){super(...arguments)}}function K(e){return typeof e==="function"&&e.prototype!==void 0}var v=function(e){return K(e)};class u{e;t;n;middlewares=[];constructor(e,t,n){this.method=e;this.handler=t;this.methodName=n;this.handler=t,this.methodName=n,this.method=e}run(e){if(v(this.handler)){const t=new this.handler;return t[this.methodName].bind(t)()}else return this.handler()}middleware(e){return this.middlewares=e,this}}class g{constructor(...e){return new u(...e)}}class R{routes={};middlewares=[];middleware(e){}get(e,t){return new u("GET",e,t)}post(e,t){return new u("POST",e,t)}put(e,t){return new u("PUT",e,t)}patch(e,t){return new u("PATCH",e,t)}delete(e,t){return new u("DELETE",e,t)}resource(e){class t extends R{constructor(){super(...arguments)}routes={"/":{list:this.get(e,"list"),create:this.post(e,"create")},"/:id":{show:this.get(e,"show"),update:this.put(e,"update"),delete:this.delete(e,"delete")}}}return t}file(e,t){return new g("GET",e,t)}}class O{e;middlewares=[];handler;constructor(e,t){this.viewPath=e;if(!t)this.handler=()=>({});else if(typeof t==="function")this.handler=t;else{const[n,r]=t,s=new n,o=s[r].bind(s);this.handler=(i)=>{return o()}}}async run(e){return{[this.viewPath]:await this.handler(e)}}middleware(e){return this.middlewares=e,this}}class I{e;children;middlewares=[];handler=()=>({});constructor(e,t,n){this.viewPath=e;if(typeof t==="function")this.handler=t,this.children=class extends y{routes=n??{}};else if(Array.isArray(t)){const[r,s]=t,o=new r,i=o[s].bind(o);this.handler=(a)=>{let d=a;return d=o.requests[s]?new o.requests[s](a.rawRequest,a.params):d,i(a)},this.children=class extends y{routes=n??{}}}else this.children=class extends y{routes=t},this.handler=()=>({})}async run(e){return{[this.viewPath]:await this.handler(e)}}middleware(e){return this.middlewares=e,this}}class y{middlewares=[];routes={};view(e,t){return new O(e,t)}layout(e,t,n){return new I(e,t,n)}}var z="GEMI_REQUEST_BREAKER_ERROR";class l extends Error{constructor(){super(...arguments)}kind="GEMI_REQUEST_BREAKER_ERROR";payload={api:{},view:{}}}class h extends l{errors={};constructor(e){super("Validation error");this.name="ValidationError",this.errors=e,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:e}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}import{AsyncLocalStorage as D} from"async_hooks";class f{e;t;n;constructor(e,t,n={}){this.name=e;this.value=t;this.options=n}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((e)=>e!=="").join("; ")}}var w=new D;class M{e;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;constructor(e){this.req=e}setCookie(e,t,n={}){this.cookies.add(new f(e,t,n))}setHeaders(e,t){this.headers.set(e,t)}setUser(e){this.user=e}setRequest(e){this.req=e}destroy(){delete this.cookies,delete this.headers,delete this.prefetchedResources,delete this.prefetchPromiseQueue,delete this.user}}class p{static getStore(){return w.getStore()}static setRequest(e){w.getStore().req=e}static run(e,t){return w.run(new M(e),t)}}var G=function(e){const[t,n]=e.match(/\d+|\D+/g)??[];if(!t||!n)return 0;const r=parseInt(t);switch(n){case"B":return r;case"KB":return r*1024;case"MB":return r*1024*1024;case"GB":return r*1024*1024*1024;case"TB":return r*1024*1024*1024*1024;default:return 0}},_=function(e){switch(e){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 e}},N=function(e){const[t,n]=e.split(":");switch(t){case"required":return(r)=>{if(r instanceof Blob)return r.size>0;return r!==null&&r!==void 0&&r?.length>0};case"password":return(r)=>{return/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(r)};case"number":return(r)=>{if(typeof r!=="number")return!1;return!isNaN(r)};case"min":return(r)=>{return r?.length>=parseInt(n)};case"max":return(r)=>{return r?.length<=parseInt(n)};case"email":return(r)=>{return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)};case"file":return(r)=>{return r instanceof Blob};case"fileType":return(r)=>{if(r instanceof Blob){const s=_(n);return r.type.startsWith(s)}};case"fileSize":return(r)=>{if(r instanceof Blob){const s=G(n);return r.size<=s}};default:return()=>!0}};class C{e;constructor(e){this.data=e}get(e){return this.data[e]}set(e,t){this.data[e]=t}has(e){return this.data[e]!==void 0}toJSON(){return this.data}}class q{rawRequest;headers;cookies;search;schema={};params;ctx=p.getStore();constructor(e,t){if(!e){const s=p.getStore().req;this.params=s.params,this.rawRequest=s.rawRequest}else this.params=t,this.rawRequest=e;this.headers=this.rawRequest.headers;const n=this.rawRequest.headers.get("Cookie"),r=new Map;if(n){const s=n.split(";");for(let o of s){const[i,a]=o.split("=");r.set(i.trim(),a.trim())}}if(this.rawRequest.method==="GET"){const s=new URL(this.rawRequest.url),o=new Map;for(let[a,d]of s.searchParams)if(o.has(a)){const P=o.get(a);if(Array.isArray(P))P.push(d),o.set(a,P);else o.set(a,[P,d])}else o.set(a,d);const i=Object.fromEntries(o.entries());this.search=new C(i)}this.cookies=r}refine(e){return{}}async parseBody(){const e=new C({});if(this.rawRequest.headers.get("Content-Type")==="application/json"){const t=await this.rawRequest.json();for(let[n,r]of Object.entries(t))e.set(n,r)}if(this.rawRequest.headers.get("Content-Type")==="application/x-www-form-urlencoded"){const t=await this.rawRequest.formData();for(let[n,r]of t)e.set(n,r)}if(this.rawRequest.headers.get("Content-Type")?.startsWith("multipart/form-data")){const t=await this.rawRequest.formData();for(let[n,r]of t)if(e.has(n)){const s=e.get(n);if(Array.isArray(s))s.push(r),e.set(n,s);else e.set(n,[s,r])}else e.set(n,r)}return e}validateInput(e){const t={};for(let[n,r]of Object.entries(this.schema))for(let[s,o]of Object.entries(r)){const i=N(s);let a=o,d=!1;if(typeof o==="function")a=o(e.get(n)),d=typeof a==="undefined";else d=i(e.get(n));if(d)continue;if(!t[n])t[n]=[];if(s==="required"){t[n]=[String(a)];break}else t[n].push(String(a))}for(let[n,r]of Object.entries(this.refine(e.toJSON())??{})){if(!t[n])t[n]=[];t[n]=[...t[n]??[],r]}if(Object.keys(t).length>0)throw new h(t);else return e}async input(){return this.validateInput(await this.parseBody())}async safeInput(){const e=await this.parseBody();try{return this.validateInput(e),{isValid:!0,errors:{},input:e}}catch(t){if(!(t instanceof h))throw t;return{isValid:!1,errors:t.errors,input:e}}}async terminate(e){throw"not implemented"}}class c{e;constructor(e){this.routePath=e}async run(e,...t){return{}}}function B(e){const t=e.headers.get("cookie");if(!t)return new Map;const n=new Map,r=t.split(";");for(let s of r){const[o,i]=s.split("=");n.set(o.trim(),i)}return n}class b{aliases={}}class E extends l{error;constructor(e="Not authorized"){super("Authentication error");this.name="AuthenticationError",this.error=e,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class A extends l{error;constructor(e="Insufficient permissions"){super("Authentication error");this.name="AuthenticationError",this.error=e,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class x extends l{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"}}}}class S extends c{constructor(){super(...arguments)}async run(e){const t=p.getStore(),n=t.req.cookies.get("access_token");if(!n)throw new x;let r=t.user;if(!r){const s=await T.getStore().authenticationServiceProvider.adapter.findSession({token:n,userAgent:t.req.headers.get("User-Agent")});if(!s)throw new x;r=s?.user,t.setUser(r)}return{}}}class $ extends l{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 V extends c{constructor(){super(...arguments)}async run(e,t=1000){const n=e.headers.get("x-forwarded-for"),r=T.getStore().rateLimiterServiceContainer.service.driver,s=r.consume.call(r,n,this.routePath);if(console.log({result:s,limit:t}),s>t)throw new $;return{}}}class L{policiesList={};constructor(){const e=this.register();for(let t of e){const n=new t;this.policiesList[t.name]=n}}register(){return[]}}class k{all(e,t){return!0}}class U{dictionary={};supportedLocales=[];defaultLocale="en-US";async init(){}detectLocale(e){return this.defaultLocale}}export{B as getCookies,y as ViewRouter,h as ValidationError,H as ResourceController,l as RequestBreakerError,V as RateLimitMiddleware,L as PoliciesServiceProvider,k as Policies,b as MiddlewareServiceProvider,c as Middleware,A as InsufficientPermissionsError,U as I18nServiceProvider,q as HttpRequest,m as Controller,E as AuthorizationError,S as AuthenticationMiddleware,x as AuthenticationError,R as ApiRouter};export{m as a,K as b,R as c,y as d,z as e,l as f,h as g,p as h,q as i,b as j,E as k,A as l,L as m,U as n};
2
+ import{A as T} from"../chunk-9475c6ed18013dc8.js";import"../chunk-24a86f8f5ddc0cbd.js";class m{requests={};static kind="controller";constructor(){}}class H extends m{constructor(){super(...arguments)}}function K(e){return typeof e==="function"&&e.prototype!==void 0}var v=function(e){return K(e)};class u{e;t;n;middlewares=[];constructor(e,t,n){this.method=e;this.handler=t;this.methodName=n;this.handler=t,this.methodName=n,this.method=e}run(e){if(v(this.handler)){const t=new this.handler;return t[this.methodName].bind(t)()}else return this.handler()}middleware(e){return this.middlewares=e,this}}class g{constructor(...e){return new u(...e)}}class R{routes={};middlewares=[];middleware(e){}get(e,t){return new u("GET",e,t)}post(e,t){return new u("POST",e,t)}put(e,t){return new u("PUT",e,t)}patch(e,t){return new u("PATCH",e,t)}delete(e,t){return new u("DELETE",e,t)}resource(e){class t extends R{constructor(){super(...arguments)}routes={"/":{list:this.get(e,"list"),create:this.post(e,"create")},"/:id":{show:this.get(e,"show"),update:this.put(e,"update"),delete:this.delete(e,"delete")}}}return t}file(e,t){return new g("GET",e,t)}}class O{e;middlewares=[];handler;constructor(e,t){this.viewPath=e;if(!t)this.handler=()=>({});else if(typeof t==="function")this.handler=t;else{const[n,r]=t,s=new n,o=s[r].bind(s);this.handler=(i)=>{return o()}}}async run(e){return{[this.viewPath]:await this.handler(e)}}middleware(e){return this.middlewares=e,this}}class I{e;children;middlewares=[];handler=()=>({});constructor(e,t,n){this.viewPath=e;if(typeof t==="function")this.handler=t,this.children=class extends y{routes=n??{}};else if(Array.isArray(t)){const[r,s]=t,o=new r,i=o[s].bind(o);this.handler=(a)=>{let d=a;return d=o.requests[s]?new o.requests[s](a.rawRequest,a.params):d,i(a)},this.children=class extends y{routes=n??{}}}else this.children=class extends y{routes=t},this.handler=()=>({})}async run(e){return{[this.viewPath]:await this.handler(e)}}middleware(e){return this.middlewares=e,this}}class y{middlewares=[];routes={};view(e,t){return new O(e,t)}layout(e,t,n){return new I(e,t,n)}}var z="GEMI_REQUEST_BREAKER_ERROR";class l extends Error{constructor(){super(...arguments)}kind="GEMI_REQUEST_BREAKER_ERROR";payload={api:{},view:{}}}class h extends l{errors={};constructor(e){super("Validation error");this.name="ValidationError",this.errors=e,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:e}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}import{AsyncLocalStorage as D} from"async_hooks";class f{e;t;n;constructor(e,t,n={}){this.name=e;this.value=t;this.options=n}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((e)=>e!=="").join("; ")}}var w=new D;class M{e;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;constructor(e){this.req=e}setCookie(e,t,n={}){this.cookies.add(new f(e,t,n))}setHeaders(e,t){this.headers.set(e,t)}setUser(e){this.user=e}setRequest(e){this.req=e}destroy(){delete this.cookies,delete this.headers,delete this.prefetchedResources,delete this.prefetchPromiseQueue,delete this.user}}class p{static getStore(){return w.getStore()}static setRequest(e){w.getStore().req=e}static run(e,t){return w.run(new M(e),t)}}var G=function(e){const[t,n]=e.match(/\d+|\D+/g)??[];if(!t||!n)return 0;const r=parseInt(t);switch(n){case"B":return r;case"KB":return r*1024;case"MB":return r*1024*1024;case"GB":return r*1024*1024*1024;case"TB":return r*1024*1024*1024*1024;default:return 0}},_=function(e){switch(e){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 e}},N=function(e){const[t,n]=e.split(":");switch(t){case"required":return(r)=>{if(r instanceof Blob)return r.size>0;return r!==null&&r!==void 0&&r?.length>0};case"password":return(r)=>{return/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(r)};case"number":return(r)=>{if(typeof r!=="number")return!1;return!isNaN(r)};case"min":return(r)=>{return r?.length>=parseInt(n)};case"max":return(r)=>{return r?.length<=parseInt(n)};case"email":return(r)=>{return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)};case"file":return(r)=>{return r instanceof Blob};case"fileType":return(r)=>{if(r instanceof Blob){const s=_(n);return r.type.startsWith(s)}};case"fileSize":return(r)=>{if(r instanceof Blob){const s=G(n);return r.size<=s}};default:return()=>!0}};class C{e;constructor(e){this.data=e}get(e){return this.data[e]}set(e,t){this.data[e]=t}has(e){return this.data[e]!==void 0}toJSON(){return this.data}}class q{rawRequest;headers;cookies;search;schema={};params;ctx=p.getStore();constructor(e,t){if(!e){const s=p.getStore().req;this.params=s.params,this.rawRequest=s.rawRequest}else this.params=t,this.rawRequest=e;this.headers=this.rawRequest.headers;const n=this.rawRequest.headers.get("Cookie"),r=new Map;if(n){const s=n.split(";");for(let o of s){const[i,a]=o.split("=");r.set(i.trim(),a.trim())}}if(this.rawRequest.method==="GET"){const s=new URL(this.rawRequest.url),o=new Map;for(let[a,d]of s.searchParams)if(o.has(a)){const P=o.get(a);if(Array.isArray(P))P.push(d),o.set(a,P);else o.set(a,[P,d])}else o.set(a,d);const i=Object.fromEntries(o.entries());this.search=new C(i)}this.cookies=r}refine(e){return{}}async parseBody(){const e=new C({});if(this.rawRequest.headers.get("Content-Type")==="application/json"){const t=await this.rawRequest.json();for(let[n,r]of Object.entries(t))e.set(n,r)}if(this.rawRequest.headers.get("Content-Type")==="application/x-www-form-urlencoded"){const t=await this.rawRequest.formData();for(let[n,r]of t)e.set(n,r)}if(this.rawRequest.headers.get("Content-Type")?.startsWith("multipart/form-data")){const t=await this.rawRequest.formData();for(let[n,r]of t)if(e.has(n)){const s=e.get(n);if(Array.isArray(s))s.push(r),e.set(n,s);else e.set(n,[s,r])}else e.set(n,r)}return e}validateInput(e){const t={};for(let[n,r]of Object.entries(this.schema))for(let[s,o]of Object.entries(r)){const i=N(s);let a=o,d=!1;if(typeof o==="function")a=o(e.get(n)),d=typeof a==="undefined";else d=i(e.get(n));if(d)continue;if(!t[n])t[n]=[];if(s==="required"){t[n]=[String(a)];break}else t[n].push(String(a))}for(let[n,r]of Object.entries(this.refine(e.toJSON())??{})){if(!t[n])t[n]=[];t[n]=[...t[n]??[],r]}if(Object.keys(t).length>0)throw new h(t);else return e}async input(){return this.validateInput(await this.parseBody())}async safeInput(){const e=await this.parseBody();try{return this.validateInput(e),{isValid:!0,errors:{},input:e}}catch(t){if(!(t instanceof h))throw t;return{isValid:!1,errors:t.errors,input:e}}}async terminate(e){throw"not implemented"}}class c{e;constructor(e){this.routePath=e}async run(e,...t){return{}}}function B(e){const t=e.headers.get("cookie");if(!t)return new Map;const n=new Map,r=t.split(";");for(let s of r){const[o,i]=s.split("=");n.set(o.trim(),i)}return n}class b{aliases={}}class E extends l{error;constructor(e="Not authorized"){super("Authentication error");this.name="AuthenticationError",this.error=e,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class A extends l{error;constructor(e="Insufficient permissions"){super("Authentication error");this.name="AuthenticationError",this.error=e,this.payload={api:{status:401,data:{error:this.error}},view:{}}}}class x extends l{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"}}}}class S extends c{constructor(){super(...arguments)}async run(e){const t=p.getStore(),n=t.req.cookies.get("access_token");if(!n)throw new x;let r=t.user;if(!r){const s=await T.getStore().authenticationServiceContainer.getSession(n,t.req.headers.get("User-Agent"));if(!s)throw new x;r=s?.user,t.setUser(r)}return{}}}class $ extends l{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 V extends c{constructor(){super(...arguments)}async run(e,t=1000){const n=e.headers.get("x-forwarded-for"),r=T.getStore().rateLimiterServiceContainer.service.driver,s=r.consume.call(r,n,this.routePath);if(console.log({result:s,limit:t}),s>t)throw new $;return{}}}class L{policiesList={};constructor(){const e=this.register();for(let t of e){const n=new t;this.policiesList[t.name]=n}}register(){return[]}}class k{all(e,t){return!0}}class U{dictionary={};supportedLocales=[];defaultLocale="en-US";async init(){}detectLocale(e){return this.defaultLocale}}export{B as getCookies,y as ViewRouter,h as ValidationError,H as ResourceController,l as RequestBreakerError,V as RateLimitMiddleware,L as PoliciesServiceProvider,k as Policies,b as MiddlewareServiceProvider,c as Middleware,A as InsufficientPermissionsError,U as I18nServiceProvider,q as HttpRequest,m as Controller,E as AuthorizationError,S as AuthenticationMiddleware,x as AuthenticationError,R as ApiRouter};export{m as a,K as b,R as c,y as d,z as e,l as f,h as g,p as h,q as i,b as j,E as k,A as l,L as m,U as n};
@@ -1,4 +1,5 @@
1
1
  import { AuthenticationServiceProvider } from "../auth/AuthenticationServiceProvider";
2
+ import { AuthenticationServiceContianer } from "../auth/AuthenticationServiceContainer";
2
3
  import { MiddlewareServiceProvider } from "../http/MiddlewareServiceProvider";
3
4
  import { PoliciesServiceProvider } from "../http/PoliciesServiceProvider";
4
5
  import { I18nServiceProvider } from "../http/I18nServiceProvider";
@@ -26,7 +27,7 @@ export declare class Kernel {
26
27
  protected broadcastingsServiceProvider: typeof BroadcastingServiceProvider;
27
28
  services: {
28
29
  emailServiceContainer: EmailServiceContainer;
29
- authenticationServiceProvider: AuthenticationServiceProvider;
30
+ authenticationServiceContainer: AuthenticationServiceContianer;
30
31
  policiesServiceProvider: PoliciesServiceProvider;
31
32
  i18nServiceContainer: I18nServiceContainer;
32
33
  fileStorageServiceContainer: FileStorageServiceContainer;
@@ -37,7 +38,7 @@ export declare class Kernel {
37
38
  };
38
39
  getServices: () => {
39
40
  emailServiceContainer: EmailServiceContainer;
40
- authenticationServiceProvider: AuthenticationServiceProvider;
41
+ authenticationServiceContainer: AuthenticationServiceContianer;
41
42
  policiesServiceProvider: PoliciesServiceProvider;
42
43
  i18nServiceContainer: I18nServiceContainer;
43
44
  fileStorageServiceContainer: FileStorageServiceContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"Kernel.d.ts","sourceRoot":"","sources":["../../kernel/Kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAEtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAE7F,qBAAa,MAAM;IACjB,SAAS,CAAC,oBAAoB,8BAAwB;IACtD,SAAS,CAAC,6BAA6B,uCAAiC;IACxE,SAAS,CAAC,yBAAyB,mCAA6B;IAChE,SAAS,CAAC,uBAAuB,iCAA2B;IAC5D,SAAS,CAAC,mBAAmB,6BAAuB;IACpD,SAAS,CAAC,0BAA0B,oCAA8B;IAClE,SAAS,CAAC,wBAAwB,kCAA4B;IAC9D,SAAS,CAAC,0BAA0B,oCAA8B;IAClE,SAAS,CAAC,4BAA4B,qCAA+B;IAErE,QAAQ,EAAE;QACR,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,6BAA6B,EAAE,6BAA6B,CAAC;QAC7D,uBAAuB,EAAE,uBAAuB,CAAC;QACjD,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,yBAAyB,EAAE,yBAAyB,CAAC;QACrD,0BAA0B,EAAE,0BAA0B,CAAC;QACvD,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,4BAA4B,EAAE,4BAA4B,CAAC;KAC5D,CAAC;IAEF,WAAW;+BAXc,qBAAqB;uCACb,6BAA6B;iCACnC,uBAAuB;8BAC1B,oBAAoB;qCACb,2BAA2B;mCAC7B,yBAAyB;oCACxB,0BAA0B;qCACzB,2BAA2B;sCAC1B,4BAA4B;MAgC1D;IAEF,MAAM,CAAC,UAAU,+CAAkC;IAEnD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC;CAInB"}
1
+ {"version":3,"file":"Kernel.d.ts","sourceRoot":"","sources":["../../kernel/Kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAE7F,qBAAa,MAAM;IACjB,SAAS,CAAC,oBAAoB,8BAAwB;IACtD,SAAS,CAAC,6BAA6B,uCAAiC;IACxE,SAAS,CAAC,yBAAyB,mCAA6B;IAChE,SAAS,CAAC,uBAAuB,iCAA2B;IAC5D,SAAS,CAAC,mBAAmB,6BAAuB;IACpD,SAAS,CAAC,0BAA0B,oCAA8B;IAClE,SAAS,CAAC,wBAAwB,kCAA4B;IAC9D,SAAS,CAAC,0BAA0B,oCAA8B;IAClE,SAAS,CAAC,4BAA4B,qCAA+B;IAErE,QAAQ,EAAE;QACR,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,8BAA8B,EAAE,8BAA8B,CAAC;QAC/D,uBAAuB,EAAE,uBAAuB,CAAC;QACjD,oBAAoB,EAAE,oBAAoB,CAAC;QAC3C,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,yBAAyB,EAAE,yBAAyB,CAAC;QACrD,0BAA0B,EAAE,0BAA0B,CAAC;QACvD,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,4BAA4B,EAAE,4BAA4B,CAAC;KAC5D,CAAC;IAEF,WAAW;+BAXc,qBAAqB;wCACZ,8BAA8B;iCACrC,uBAAuB;8BAC1B,oBAAoB;qCACb,2BAA2B;mCAC7B,yBAAyB;oCACxB,0BAA0B;qCACzB,2BAA2B;sCAC1B,4BAA4B;MAkC1D;IAEF,MAAM,CAAC,UAAU,+CAAkC;IAEnD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC;CAInB"}
@@ -1,5 +1,5 @@
1
1
  import { AsyncLocalStorage } from "async_hooks";
2
- import { AuthenticationServiceProvider } from "../auth/AuthenticationServiceProvider";
2
+ import { AuthenticationServiceContianer } from "../auth/AuthenticationServiceContainer";
3
3
  import { PoliciesServiceProvider } from "../http/PoliciesServiceProvider";
4
4
  import { I18nServiceContainer } from "../http/I18nServiceContainer";
5
5
  import { FileStorageServiceContainer } from "../services/file-storage/FileStorageServiceContainer";
@@ -10,7 +10,7 @@ import { EmailServiceContainer } from "../services/email/EmailServiceContainer";
10
10
  import { BroadcastingServiceContainer } from "../services/pubsub/BroadcastingServiceContainer";
11
11
  export interface KernelContextValue {
12
12
  emailServiceContainer: EmailServiceContainer;
13
- authenticationServiceProvider: AuthenticationServiceProvider;
13
+ authenticationServiceContainer: AuthenticationServiceContianer;
14
14
  policiesServiceProvider: PoliciesServiceProvider;
15
15
  i18nServiceContainer: I18nServiceContainer;
16
16
  fileStorageServiceContainer: FileStorageServiceContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../kernel/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,6BAA6B,EAAE,6BAA6B,CAAC;IAC7D,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,4BAA4B,EAAE,4BAA4B,CAAC;CAC5D;AAED,eAAO,MAAM,aAAa,uCAA8C,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../kernel/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AACzF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,8BAA8B,EAAE,8BAA8B,CAAC;IAC/D,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,oBAAoB,EAAE,oBAAoB,CAAC;IAC3C,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,4BAA4B,EAAE,4BAA4B,CAAC;CAC5D;AAED,eAAO,MAAM,aAAa,uCAA8C,CAAC"}
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{a as Zu,b as Qi,c as Gi,d as Lu,e as wr,g as os,h as ns,i as Ra,j as _u,k as xu,m as Gu,n as qu} from"../http/index.js";import{o as _i} from"../facades/index.js";import{p as Qu,q as Ju,r as Yu,s as Bu,t as Ku} from"../services/index.js";import"../chunk-0f500a6384fcd132.js";import{A as jt,z as jr} from"../chunk-9475c6ed18013dc8.js";import"../chunk-24a86f8f5ddc0cbd.js";import"../chunk-332553172e3ab961.js";import{E as zu,F as Uu} from"../chunk-7d5fe4acabfee228.js";import"../chunk-0ba2cc302113ab40.js";import"../chunk-28694e5e949df0ff.js";import"../chunk-d5f34554362c0fde.js";import"../chunk-d96668bed492732f.js";import"../chunk-786985b106091b91.js";import"../chunk-f7a2f27070c1a0cf.js";import"../chunk-5bfe9d4cbecd160a.js";import"../chunk-ce91e437af790f62.js";import"../chunk-b033519a526dfb3f.js";var La=function(a,s,t,i,o){function c(...d){if(!(this instanceof c))throw new TypeError(Cc);hu(this,s(...d))}function r(d,f){return Object.defineProperties(function(...u){return d.call(this,l(this),...u)},co(f))}function l(d){const f=k(d);if(!f||f.branding!==a)throw new TypeError(Cc);return f}return Object.defineProperties(c.prototype,{...Ur(ya(r,t)),...us(ya(r,i)),...qt("Temporal."+a)}),Object.defineProperties(c,{...us(o),...co(a)}),[c,(d)=>{const f=Object.create(c.prototype);return hu(f,d),f},l]},Pu=function(a){return a=a.concat("id").sort(),(s)=>{if(!Qr(s,a))throw new TypeError(Ef);return s}},Xs=function(a){if(k(a)||a.calendar!==void 0||a.timeZone!==void 0)throw new TypeError(Zf);return a},Ei=function(a,s){const t={};for(let i in a)t[i]=({o},c)=>{const r=k(c)||{},{branding:l}=r,d=l===Ds||s.includes(l)?r:ca(c);return o[i](d)};return t},lr=function(a){const s={};for(let t in a)s[t]=(i)=>{const{calendar:o}=i;return(c=o,typeof c=="string"?Us(c):(r=c,Object.assign(Object.create(dh),{i:r})))[t](i);var c,r};return s},is=function(){throw new TypeError(xf)},vt=function({calendar:a}){return typeof a=="string"?new Pr(a):a},uu=function(a,s){if(s=A(s),G(a)){const i=k(a);if(i&&i.branding===qs)return S(s),i;const o=yu(a);return yc(zi(o||w),!o,a,s)}const t=sd(Us,a);return S(s),t},bu=function(a,s,t){return i=s.call(a,oa(q(t))),Jo(ft(i));var i},Hi=function(a,s=vu){const t=Object.keys(s).sort(),i={};for(let o of t)i[o]=D(s[o],a,Kf(a[o]));return i},R=function(a,s){return typeof a=="string"?xi(a):Hi(a,s)},J=function(a){return R(a,rr)},Ca=function(a){if(G(a)){const s=k(a);if(s)switch(s.branding){case Zi:return s;case za:return q(s.epochNanoseconds)}}return Xl(a)};var mu=function(a,s,t){const i=s.l(Ca(t).epochNanoseconds,a);return i?oa(q(i)):null},M=function(a){return G(a)?(k(a)||{}).timeZone||gh(a):((s)=>Ti(cd(x(s))))(a)},ea=function(a,s){if(G(a)){const t=k(a)||{};switch(t.branding){case Ci:return S(s),t;case ws:return S(s),Sa(t);case za:return S(s),Rc(J,t)}return Nd(a,s)}return S(s),td(a)},dr=function(a){return a===void 0?void 0:ea(a)},Ys=function(a,s){if(s=A(s),G(a)){const i=k(a);return i&&i.branding===Gs?(S(s),i):Oc($i(Ft(a)),a,s)}const t=ad(Us,a);return S(s),t},as=function(a,s){if(s=A(s),G(a)){const i=k(a)||{};switch(i.branding){case ws:return S(s),i;case Ds:return S(s),W({...i,...Oa});case za:return S(s),vc(J,i)}return Wd(Ji(Ft(a)),a,s)}const t=el(a);return S(s),t},ca=function(a,s){if(s=A(s),G(a)){const i=k(a)||{};switch(i.branding){case Ds:return S(s),i;case ws:return S(s),N(i);case za:return S(s),Fc(J,i)}return bc(Ji(Ft(a)),a,s)}const t=hi(a);return S(s),t},Ou=function(a,s,t){return Da(s.call(a,E(N(t,a))))},xa=function(a){return(s)=>typeof s=="string"?Us(s):((t,i)=>{const o=Object.keys(i).sort(),c={};for(let r of o)c[r]=D(i[r],t,t[r]);return c})(s,a)},I=function(a){if(G(a)){const s=k(a);return s&&s.branding===Li?s:$d(a)}return id(a)},St=function(a){if(a!==void 0){if(G(a)){const s=k(a)||{};switch(s.branding){case za:case Ds:return s;case ws:return N(s)}const t=Ft(a);return{...Hd(M,R,Ji(t),a),calendar:t}}return kl(a)}},Ft=function(a){return yu(a)||w},yu=function(a){const{calendar:s}=a;if(s!==void 0)return X(s)},X=function(a){return G(a)?(k(a)||{}).calendar||Ch(a):((s)=>pt(od(x(s))))(a)},Bs=function(a,s){if(s=A(s),G(a)){const t=k(a);if(t&&t.branding===za)return ut(s),t;const i=Ft(a);return Ad(M,R,Ji(i),i,a,s)}return Vl(a,s)},pu=function(a){return ya((s)=>(t)=>s(cr(t)),a)},cr=function(a){return ta(a,J)},Yp=function(){const a=Va.prototype,s=Object.getOwnPropertyDescriptors(a),t=Object.getOwnPropertyDescriptors(Va),i=function(o,c={}){if(!(this instanceof i))return new i(o,c);br.set(this,((r,l={})=>{const d=new Va(r,l),f=d.resolvedOptions(),u=f.locale,m=ma(Object.keys(l),f),p=fa(Xp),h=(...g)=>{let T;const P=g.map((O,b)=>{const y=k(O),H=(y||{}).branding;if(b&&T&&T!==H)throw new TypeError(Wf);return T=H,y});return T?p(T)(u,m,...P):[d,...g]};return h.u=d,h})(o,c))};for(let o in s){const c=s[o],r=o.startsWith("format")&&Bp(o);typeof c.value=="function"?c.value=o==="constructor"?i:r||Kp(o):r&&(c.get=function(){return r.bind(this)})}return t.prototype.value=Object.create(a,s),Object.defineProperties(i,t),i},Bp=function(a){return function(...s){const t=br.get(this),[i,...o]=t(...s);return i[a](...o)}},Kp=function(a){return function(...s){return br.get(this).u[a](...s)}},Xp=function(a){const s=kp[a];if(!s)throw new TypeError(Af(a));return Na(s,fa(nc))};var ra=function(a,s,t,i,o){return Ta(s,qr(a,s),t,i,o)},Ta=function(a,s,t,i,o,c){const r=ki(s,t,i);if(o&&s!==r)throw new RangeError(jf(a,s,t,i,c));return r},qr=function(a,s){const t=a[s];if(t===void 0)throw new TypeError(Mc(s));return t},G=function(a){return a!==null&&/object|function/.test(typeof a)},fa=function(a,s=Map){const t=new s;return(i,...o)=>{if(t.has(i))return t.get(i);const c=a(i,...o);return t.set(i,c),c}},co=function(a){return us({name:a},1)},us=function(a,s){return ya((t)=>({value:t,configurable:1,writable:!s}),a)},Ur=function(a){return ya((s)=>({get:s,configurable:1}),a)},qt=function(a){return{[Symbol.toStringTag]:{value:a,configurable:1}}},Is=function(a,s){const t={};let i=a.length;for(let o of s)t[a[--i]]=o;return t},ya=function(a,s,t){const i={};for(let o in s)i[o]=a(s[o],o,t);return i},lt=function(a,s,t){const i={};for(let o=0;o<s.length;o++){const c=s[o];i[c]=a(c,o,t)}return i},Vu=function(a,s,t){const i={};for(let o=0;o<a.length;o++)i[s[o]]=t[a[o]];return i},ma=function(a,s){const t={};for(let i of a)t[i]=s[i];return t},ro=function(a,s){const t={};for(let i in s)a.has(i)||(t[i]=s[i]);return t},lo=function(a){a={...a};const s=Object.keys(a);for(let t of s)a[t]===void 0&&delete a[t];return a},Qr=function(a,s){for(let t of s)if(!(t in a))return 0;return 1},Yr=function(a,s,t){for(let i of a)if(s[i]!==t[i])return 0;return 1},Br=function(a,s,t){const i={...t};for(let o=0;o<s;o++)i[a[o]]=0;return i},D=function(a,...s){return(...t)=>a(...s,...t)},Cr=function(a){return a[0].toUpperCase()+a.substring(1)},dt=function(a){return a.slice().sort()},Ht=function(a,s){return String(s).padStart(a,"0")},_a=function(a,s){return Math.sign(a-s)},ki=function(a,s,t){return Math.min(Math.max(a,s),t)},Ea=function(a,s){return[Math.floor(a/s),at(a,s)]},at=function(a,s){return(a%s+s)%s},Ua=function(a,s){return[Ut(a,s),fo(a,s)]},Ut=function(a,s){return Math.trunc(a/s)||0},fo=function(a,s){return a%s||0},Ct=function(a){return Math.abs(a%1)===0.5},Kr=function(a,s,t){let i=0,o=0;for(let l=0;l<=s;l++){const d=a[t[l]],f=Ma[l],u=F/f,[m,p]=Ua(d,u);i+=p*f,o+=m}const[c,r]=Ua(i,F);return[o+c,r]},Qt=function(a,s,t){const i={};for(let o=s;o>=0;o--){const c=Ma[o];i[t[o]]=Ut(a,c),a=fo(a,c)}return i},Xr=function(a){return a===w?ni:[]},kr=function(a){return a===w?Ot:[]},Vr=function(a){return a===w?["year","day"]:[]},er=function(a){if(a!==void 0)return x(a)},al=function(a){if(a!==void 0)return Da(a)},uo=function(a){if(a!==void 0)return ft(a)},Da=function(a){return il(ft(a))},ft=function(a){return tl(Gm(a))},mo=function(a){if(a==null)throw new TypeError("Cannot be null or undefined");return a},sl=function(a,s){if(s==null)throw new RangeError(Mc(a));return s},Aa=function(a){if(!G(a))throw new TypeError(Mf);return a},Yt=function(a,s,t=a){if(typeof s!==a)throw new TypeError(Tt(t,s));return s},tl=function(a,s="number"){if(!Number.isInteger(a))throw new RangeError(gm(s,a));return a||0},il=function(a,s="number"){if(a<=0)throw new RangeError(Tm(s,a));return a},po=function(a){if(typeof a=="symbol")throw new TypeError(ym);return String(a)},At=function(a,s){return G(a)?String(a):x(a,s)},Bt=function(a){if(typeof a=="string")return BigInt(a);if(typeof a!="bigint")throw new TypeError(Om(a));return a},ol=function(a,s="number"){if(typeof a=="bigint")throw new TypeError(bm(s));if(a=Number(a),!Number.isFinite(a))throw new RangeError(Pm(s,a));return a},V=function(a,s){return Math.trunc(ol(a,s))||0},cl=function(a,s){return tl(ol(a,s),s)},Zr=function(a,s){return il(V(a,s),s)},ho=function(a,s){let[t,i]=Ua(s,F),o=a+t;const c=Math.sign(o);return c&&c===-Math.sign(i)&&(o-=c,i+=c*F),[o,i]},js=function(a,s,t=1){return ho(a[0]+s[0]*t,a[1]+s[1]*t)},Cs=function(a,s){return ho(a[0],a[1]+s)},pa=function(a,s){return js(s,a,-1)},aa=function(a,s){return _a(a[0],s[0])||_a(a[1],s[1])},rl=function(a,s,t){return aa(a,s)===-1||aa(a,t)===1},Kt=function(a,s=1){const t=BigInt(F/s);return[Number(a/t),Number(a%t)*s]},Zs=function(a,s=1){const t=F/s,[i,o]=Ua(a,t);return[i,o*s]},ll=function(a,s=1){const[t,i]=a,o=Math.floor(i/s),c=F/s;return BigInt(t)*BigInt(c)+BigInt(o)},ha=function(a,s=1,t){const[i,o]=a,[c,r]=Ua(o,s);return i*(F/s)+(c+(t?r/s:0))},go=function(a,s,t=Ea){const[i,o]=a,[c,r]=t(o,s);return[i*(F/s)+c,r]},To=function(a,s){const t=a.formatToParts(s),i={};for(let o of t)i[o.type]=o.value;return i},Po=function(a){return ra(a,"isoYear",rt,ct,1),a.isoYear===rt?ra(a,"isoMonth",4,12,1):a.isoYear===ct&&ra(a,"isoMonth",1,9,1),a},Ga=function(a){return Wa({...a,...Oa,isoHour:12}),a},Wa=function(a){const s=ra(a,"isoYear",rt,ct,1),t=s===rt?1:s===ct?-1:0;return t&&ga(e({...a,isoDay:a.isoDay+t,isoNanosecond:a.isoNanosecond-t})),a},ga=function(a){if(!a||rl(a,Xm,Km))throw new RangeError(Si);return a},Qa=function(a){return Kr(a,5,Fa)[1]},Xt=function(a){const[s,t]=Ea(a,F);return[Qt(t,5,Fa),s]},dl=function(a){return fl(a)[0]},fl=function(a){return go(a,ba)},sa=function(a){return Es(a.isoYear,a.isoMonth,a.isoDay,a.isoHour,a.isoMinute,a.isoSecond,a.isoMillisecond)},e=function(a){const s=sa(a);if(s!==void 0){const[t,i]=Ua(s,da);return[t,i*ja+(a.isoMicrosecond||0)*ys+(a.isoNanosecond||0)]}},bo=function(a,s){const[t,i]=Xt(Qa(a)-s);return ga(e({...a,isoDay:a.isoDay+i,...t}))},Wt=function(...a){return Es(...a)/$f},Es=function(...a){const[s,t]=ul(...a),i=s.valueOf();if(!isNaN(i))return i-t*da},ul=function(a,s=1,t=1,i=0,o=0,c=0,r=0){const l=a===rt?1:a===ct?-1:0,d=new Date;return d.setUTCHours(i,o,c,r),d.setUTCFullYear(a,s-1,t+l),[d,l]},Ba=function(a,s){let[t,i]=Cs(a,s);i<0&&(i+=F,t-=1);const[o,c]=Ea(i,ja),[r,l]=Ea(c,ys);return kt(t*da+o,r,l)},kt=function(a,s=0,t=0){const i=Math.ceil(Math.max(0,Math.abs(a)-Bm)/da)*Math.sign(a),o=new Date(a-i*da);return Is(ji,[o.getUTCFullYear(),o.getUTCMonth()+1,o.getUTCDate()+i,o.getUTCHours(),o.getUTCMinutes(),o.getUTCSeconds(),o.getUTCMilliseconds(),s,t])},ml=function(a){return[a.isoYear,a.isoMonth,a.isoDay]},pl=function(){return Ia},Oo=function(a,s){switch(s){case 2:return yo(a)?29:28;case 4:case 6:case 9:case 11:return 30}return 31},hl=function(a){return yo(a)?366:365},yo=function(a){return a%4==0&&(a%100!=0||a%400==0)},gl=function(a){const[s,t]=ul(a.isoYear,a.isoMonth,a.isoDay);return at(s.getUTCDay()-t,7)||7},Tl=function({isoYear:a}){return a<1?["bce",1-a]:["ce",a]},eu=function(a){const s=sa(a);if(s<Vm)return Tl(a);const t=To(Uc(Ls),s),{era:i,eraYear:o}=nd(t,Ls);return[i,o]},Vt=function(a){return ms(a),et(a,1),a},ms=function(a){return Pl(a,1),a},Lr=function(a){return Yr(Wc,a,Pl(a))},Pl=function(a,s){const{isoYear:t}=a,i=ra(a,"isoMonth",1,pl(),s);return{isoYear:t,isoMonth:i,isoDay:ra(a,"isoDay",1,Oo(t,i),s)}},et=function(a,s){return Is(Fa,[ra(a,"isoHour",0,23,s),ra(a,"isoMinute",0,59,s),ra(a,"isoSecond",0,59,s),ra(a,"isoMillisecond",0,999,s),ra(a,"isoMicrosecond",0,999,s),ra(a,"isoNanosecond",0,999,s)])},S=function(a){return a===void 0?0:tu(Aa(a))},ut=function(a,s=0){a=wa(a);const t=iu(a),i=dp(a,s);return[tu(a),i,t]},Do=function(a){return iu(wa(a))},bl=function(a){return a=wa(a),Jc(a,9,6,1)},Hs=function(a,s,t,i=9,o=0,c=4){s=wa(s);let r=Jc(s,i,o),l=vo(s),d=Dt(s,c);const f=yt(s,i,o,1);return r==null?r=Math.max(t,f):wl(r,f),l=Fo(l,f,1),a&&(d=((u)=>u<4?(u+2)%4:u)(d)),[r,f,l,d]},ai=function(a,s=6,t){let i=vo(a=Ro(a,Gt));const o=Dt(a,7);let c=yt(a,s);return c=sl(Gt,c),i=Fo(i,c,void 0,t),[c,i,o]},wo=function(a){return zc(wa(a))},Ol=function(a,s){return So(wa(a),s)},So=function(a,s=4){const t=Dl(a);return[Dt(a,4),...yl(yt(a,s),t)]},yl=function(a,s){return a!=null?[Ma[a],a<4?9-3*a:-1]:[s===void 0?1:10**(9-s),s]},vo=function(a){const s=a[st];return s===void 0?1:V(s,st)},Fo=function(a,s,t,i){const o=i?F:Ma[s+1];if(o){const c=Ma[s];if(o%((a=Ta(st,a,1,o/c-(i?0:1),1))*c))throw new RangeError(Tt(st,a))}else a=Ta(st,a,1,t?1e9:1,1);return a},Dl=function(a){let s=a[Xi];if(s!==void 0){if(typeof s!="number"){if(po(s)==="auto")return;throw new RangeError(Tt(Xi,s))}s=Ta(Xi,Math.floor(s),0,9,1)}return s},wa=function(a){return a===void 0?{}:Aa(a)},Ro=function(a,s){return typeof a=="string"?{[s]:a}:Aa(a)},A=function(a){if(a!==void 0){if(G(a))return Object.assign(Object.create(null),a);throw new TypeError(Mf)}},si=function(a,s){return a&&Object.assign(Object.create(null),a,{overflow:ap[s]})},no=function(a,s,t=9,i=0,o){let c=s[a];if(c===void 0)return o?i:void 0;if(c=po(c),c==="auto")return o?i:null;let r=so[c];if(r===void 0&&(r=Qm[c]),r===void 0)throw new RangeError(Lf(a,c,so));return Ta(a,r,i,t,1,bt),r},ps=function(a,s,t,i=0){const o=t[a];if(o===void 0)return i;const c=po(o),r=s[c];if(r===void 0)throw new RangeError(Lf(a,c,s));return r},wl=function(a,s){if(s>a)throw new RangeError(Nm)},q=function(a){return{branding:Zi,epochNanoseconds:a}},B=function(a,s,t){return{branding:za,calendar:t,timeZone:s,epochNanoseconds:a}},W=function(a,s=a.calendar){return{branding:ws,calendar:s,...ma(Vf,a)}},N=function(a,s=a.calendar){return{branding:Ds,calendar:s,...ma(Nc,a)}},ds=function(a,s=a.calendar){return{branding:Gs,calendar:s,...ma(Nc,a)}},Nt=function(a,s=a.calendar){return{branding:qs,calendar:s,...ma(Nc,a)}},Sa=function(a){return{branding:Ci,...ma(kf,a)}},C=function(a){return{branding:Li,sign:Ka(a),...ma(Ec,a)}},Sl=function(a){return dl(a.epochNanoseconds)},ti=function(a){return go(a.epochNanoseconds,ja)[0]},vl=function(a){return ll(a.epochNanoseconds,ys)},Fl=function(a){return ll(a.epochNanoseconds)},Rl=function(a){return a.epochNanoseconds},Q=function(a){return typeof a=="string"?a:x(a.id)},As=function(a,s){return a===s||Q(a)===Q(s)},nl=function(a,s,t,i,o){const c=fs(i),[r,l]=((P,O)=>{const b=O((P=Ro(P,oo))[au]);let y=lp(P);return y=sl(oo,y),[y,b]})(o,a);if(it(Math.max(r,c),l))return xr(i,r);if(!l)throw new RangeError(vi);const[d,f,u]=di(s,t,l),m=Xo(u),p=fi(u),h=ko(u),g=p(f,d,i),T=h(f,d,g,r);return it(r,l)?xr(T,r):((P,O,b,y,H,Z,j)=>{const L=Ka(P),[U,z]=Mo(y,Ac(b,P),b,L,H,Z,j),ks=jo(O,U,z);return P[v[b]]+ks*L})(T,m(g),r,f,d,m,p)},xr=function(a,s){return ha(_(a),Ma[s],1)},Mo=function(a,s,t,i,o,c,r){const l=v[t],d={...s,[l]:s[l]+i},f=r(a,o,s),u=r(a,o,d);return[c(f),c(u)]},jo=function(a,s,t){const i=ha(pa(s,t));if(!i)throw new RangeError(Pt);return ha(pa(s,a))/i},Ml=function(a,s){const[t,i,o]=ai(s,5,1);return q(oi(a.epochNanoseconds,t,i,o,1))},jl=function(a,s,t){let{epochNanoseconds:i,timeZone:o,calendar:c}=s;const[r,l,d]=ai(t);if(r===0&&l===1)return s;const f=a(o);if(r===6)i=((u,m,p,h)=>{const g=ta(p,m),[T,P]=u(g),O=p.epochNanoseconds,b=ua(m,T),y=ua(m,P);if(rl(O,b,y))throw new RangeError(Pt);return Wl(jo(O,b,y),h)?y:b})(Hl,f,s,d);else{const u=f.getOffsetNanosecondsFor(i);i=gs(f,Il(Ba(i,u),r,l,d),u,2,0,1)}return B(i,o,c)},Cl=function(a,s){return W(Il(a,...ai(s)),a.calendar)},Zl=function(a,s){const[t,i,o]=ai(s,5);var c;return Sa((c=o,Co(a,mt(t,i),c)[0]))},Ll=function(a,s){const t=a(s.timeZone),i=ta(s,t),[o,c]=Hl(i),r=ha(pa(ua(t,o),ua(t,c)),Ri,1);if(r<=0)throw new RangeError(Pt);return r},xl=function(a,s){const{timeZone:t,calendar:i}=s,o=((c,r,l)=>ua(r,c(ta(l,r))))(Al,a(t),s);return B(o,t,i)},Il=function(a,s,t,i){return El(a,mt(s,t),i)},El=function(a,s,t){const[i,o]=Co(a,s,t);return Wa({...Ts(a,o),...i})},Co=function(a,s,t){return Xt(Ya(Qa(a),s,t))},$t=function(a){return Ya(a,Fi,7)},mt=function(a,s){return Ma[a]*s},Hl=function(a){const s=Al(a);return[s,Ts(s,1)]},Al=function(a){return Ym(6,a)},am=function(a,s,t){const i=Math.min(fs(a),6);return Ns(ci(_(a,i),s,t),i)},ii=function(a,s,t,i,o,c,r,l,d,f){if(i===0&&o===1)return a;const u=it(i,l)?ui(l)&&i<6&&t>=6?tm:sm:im;let[m,p,h]=u(a,s,t,i,o,c,r,l,d,f);return h&&i!==7&&(m=((g,T,P,O,b,y,H,Z)=>{const j=Ka(g);for(let L=O+1;L<=P;L++){if(L===7&&P!==7)continue;const U=Ac(L,g);U[v[L]]+=j;const z=ha(pa(H(Z(b,y,U)),T));if(z&&Math.sign(z)!==j)break;g=U}return g})(m,p,t,Math.max(6,i),r,l,d,f)),m},oi=function(a,s,t,i,o){if(s===6){const c=((r)=>r[0]+r[1]/F)(a);return[Ya(c,t,i),0]}return ci(a,mt(s,t),i,o)},ci=function(a,s,t,i){let[o,c]=a;i&&c<0&&(c+=F,o-=1);const[r,l]=Ea(Ya(c,s,t),F);return ho(o+r,l)},Ya=function(a,s,t){return Wl(a/s,t)*s},Wl=function(a,s){return mp[s](a)},sm=function(a,s,t,i,o,c){const r=Ka(a),l=_(a),d=oi(l,i,o,c),f=pa(l,d),u=Math.sign(d[0]-l[0])===r,m=Ns(d,Math.min(t,6));return[{...a,...m},js(s,f),u]},tm=function(a,s,t,i,o,c,r,l,d,f){const u=Ka(a),m=ha(_(a,5)),p=mt(i,o);let h=Ya(m,p,c);const[g,T]=Mo(r,{...a,...Hc},6,u,l,d,f),P=h-ha(pa(g,T));let O=0;P&&Math.sign(P)!==u?s=Cs(g,h):(O+=u,h=Ya(P,p,c),s=Cs(T,h));const b=pi(h);return[{...a,...b,days:a.days+O},s,Boolean(O)]},im=function(a,s,t,i,o,c,r,l,d,f){const u=Ka(a),m=v[i],p=Ac(i,a);i===7&&(a={...a,weeks:a.weeks+Math.trunc(a.days/7)});const h=Ut(a[m],o)*o;p[m]=h;const[g,T]=Mo(r,p,i,o*u,l,d,f),P=h+jo(s,g,T)*u*o,O=Ya(P,o,c),b=Math.sign(O-P)===u;return p[m]=O,[p,b?T:g,b]},Zo=function(a,s,t,i){const[o,c,r,l]=((f)=>{const u=So(f=wa(f));return[f.timeZone,...u]})(i),d=o!==void 0;return((f,u,m,p,h,g)=>{m=ci(m,h,p,1);const T=u.getOffsetNanosecondsFor(m);return Wo(Ba(m,T),g)+(f?hs($t(T)):"Z")})(d,s(d?a(o):Ss),t.epochNanoseconds,c,r,l)},Lo=function(a,s,t){const[i,o,c,r,l,d]=((f)=>{f=wa(f);const u=zc(f),m=Dl(f),p=up(f),h=Dt(f,4),g=yt(f,4);return[u,fp(f),p,h,...yl(g,m)]})(t);return((f,u,m,p,h,g,T,P,O,b)=>{p=ci(p,O,P,1);const y=f(m).getOffsetNanosecondsFor(p);return Wo(Ba(p,y),b)+hs($t(y),T)+((H,Z)=>Z!==1?"["+(Z===2?"!":"")+Q(H)+"]":"")(m,g)+No(u,h)})(a,s.calendar,s.timeZone,s.epochNanoseconds,i,o,c,r,l,d)},xo=function(a,s){const[t,i,o,c]=((f)=>(f=wa(f),[zc(f),...So(f)]))(s);return r=a.calendar,l=t,d=c,Wo(El(a,o,i),d)+No(r,l);var r,l,d},Io=function(a,s){return t=a.calendar,i=a,o=wo(s),Jt(i)+No(t,o);var t,i,o},Eo=function(a,s){return Nl(a.calendar,$l,a,wo(s))},Ho=function(a,s){return Nl(a.calendar,om,a,wo(s))},Ao=function(a,s){const[t,i,o]=Ol(s);return c=o,Jl(Co(a,i,t)[0],c);var c},ri=function(a,s){const[t,i,o]=Ol(s,3);return i>1&&(a={...a,...am(a,i,t)}),((c,r)=>{const{sign:l}=c,d=l===-1?ia(c):c,{hours:f,minutes:u}=d,[m,p]=go(_(d,3),ba,Ua);Bl(m);const h=$o(p,r),g=r>=0||!l||h;return(l<0?"-":"")+"P"+Ir({Y:ls(d.years),M:ls(d.months),W:ls(d.weeks),D:ls(d.days)})+(f||u||m||g?"T"+Ir({H:ls(f),M:ls(u),S:ls(m,g)+h}):"")})(a,o)},Nl=function(a,s,t,i){const o=Q(a),c=i>1||i===0&&o!==w;return i===1?o===w?s(t):Jt(t):c?Jt(t)+zl(o,i===2):s(t)},Ir=function(a){const s=[];for(let t in a){const i=a[t];i&&s.push(i,t)}return s.join("")},Wo=function(a,s){return Jt(a)+"T"+Jl(a,s)},Jt=function(a){return $l(a)+"-"+Pa(a.isoDay)},$l=function(a){const{isoYear:s}=a;return(s<0||s>9999?_l(s)+Ht(6,Math.abs(s)):Ht(4,s))+"-"+Pa(a.isoMonth)},om=function(a){return Pa(a.isoMonth)+"-"+Pa(a.isoDay)},Jl=function(a,s){const t=[Pa(a.isoHour),Pa(a.isoMinute)];return s!==-1&&t.push(Pa(a.isoSecond)+((i,o,c,r)=>$o(i*ja+o*ys+c,r))(a.isoMillisecond,a.isoMicrosecond,a.isoNanosecond,s)),t.join(":")},hs=function(a,s=0){if(s===1)return"";const[t,i]=Ea(Math.abs(a),Ri),[o,c]=Ea(i,Fi),[r,l]=Ea(c,ba);return _l(a)+Pa(t)+":"+Pa(o)+(r||l?":"+Pa(r)+$o(l):"")},No=function(a,s){if(s!==1){const t=Q(a);if(s>1||s===0&&t!==w)return zl(t,s===2)}return""},zl=function(a,s){return"["+(s?"!":"")+"u-ca="+a+"]"},$o=function(a,s){let t=Ht(9,a);return t=s===void 0?t.replace(gp,""):t.slice(0,s),t?"."+t:""},_l=function(a){return a<0?"-":"+"},ls=function(a,s){return a||s?a.toLocaleString("fullwide",{useGrouping:0}):""},cm=function(a,s){const{epochNanoseconds:t}=a,i=(s.getOffsetNanosecondsFor?s:s(a.timeZone)).getOffsetNanosecondsFor(t),o=Ba(t,i);return{calendar:a.calendar,...o,offsetNanoseconds:i}},Gl=function(a,s){const t=ta(s,a);return{calendar:s.calendar,...ma(Vf,t),offset:hs(t.offsetNanoseconds),timeZone:s.timeZone}},gs=function(a,s,t,i=0,o=0,c,r){if(t!==void 0&&i===1&&(i===1||r))return bo(s,t);const l=a.getPossibleInstantsFor(s);if(t!==void 0&&i!==3){const d=((f,u,m,p)=>{const h=e(u);p&&(m=$t(m));for(let g of f){let T=ha(pa(g,h));if(p&&(T=$t(T)),T===m)return g}})(l,s,t,c);if(d!==void 0)return d;if(i===0)throw new RangeError(xm)}return r?e(s):ua(a,s,o,l)},ua=function(a,s,t=0,i=a.getPossibleInstantsFor(s)){if(i.length===1)return i[0];if(t===1)throw new RangeError(Im);if(i.length)return i[t===3?1:0];const o=e(s),c=((l,d)=>{const f=l.getOffsetNanosecondsFor(Cs(d,-F));return zo(l.getOffsetNanosecondsFor(Cs(d,F))-f)})(a,o),r=c*(t===2?-1:1);return(i=a.getPossibleInstantsFor(Ba(o,r)))[t===2?0:i.length-1]},Jo=function(a){if(Math.abs(a)>=F)throw new RangeError(Zm);return a},zo=function(a){if(a>F)throw new RangeError(Lm);return a},_o=function(a,s,t){return q(ga(js(s.epochNanoseconds,((i)=>{if(Kl(i))throw new RangeError(Am);return _(i,5)})(a?ia(t):t))))},Go=function(a,s,t,i,o,c=Object.create(null)){const r=s(i.timeZone),l=a(i.calendar);return{...i,...Bo(r,l,i,t?ia(o):o,c)}},qo=function(a,s,t,i,o=Object.create(null)){const{calendar:c}=t;return W(Ko(a(c),t,s?ia(i):i,o),c)},Uo=function(a,s,t,i,o){const{calendar:c}=t;return N(li(a(c),t,s?ia(i):i,o),c)},Qo=function(a,s,t,i,o=Object.create(null)){const c=t.calendar,r=a(c);let l=tt(r,t);s&&(i=mi(i)),i.sign<0&&(l=r.dateAdd(l,{...Y,months:1}),l=Ts(l,-1));const d=r.dateAdd(l,i,o);return ds(tt(r,d),c)},Yo=function(a,s,t){return Sa(ql(s,a?ia(t):t)[0])},Bo=function(a,s,t,i,o){const c=_(i,5);let r=t.epochNanoseconds;if(Kl(i)){const l=ta(t,a);r=js(ua(a,{...li(s,l,{...i,...Hc},o),...ma(Fa,l)}),c)}else r=js(r,c),S(o);return{epochNanoseconds:ga(r)}},Ko=function(a,s,t,i){const[o,c]=ql(s,t);return Wa({...li(a,s,{...t,...Hc,days:t.days+c},i),...o})},li=function(a,s,t,i){if(t.years||t.months||t.weeks)return a.dateAdd(s,t,i);S(i);const o=t.days+_(t,5)[0];return o?Ga(Ts(s,o)):s},tt=function(a,s,t=1){return Ts(s,t-a.day(s))},ql=function(a,s){const[t,i]=_(s,5),[o,c]=Xt(Qa(a)+i);return[o,t+c]},Ts=function(a,s){return s?{...a,...kt(sa(a)+s*da)}:a},di=function(a,s,t){const i=a(t.calendar);return ui(t)?[t,i,s(t.timeZone)]:[{...t,...Oa},i]},Xo=function(a){return a?Rl:e},fi=function(a){return a?D(Bo,a):Ko},ko=function(a){return a?D(lm,a):dm},ui=function(a){return a&&a.epochNanoseconds},it=function(a,s){return a<=6-(ui(s)?1:0)},Vo=function(a,s,t,i,o,c,r){const l=a(wa(r).relativeTo),d=Math.max(fs(o),fs(c));if(it(d,l))return C(Ws(((T,P,O,b)=>{const y=js(_(T),_(P),b?-1:1);if(!Number.isFinite(y[0]))throw new RangeError(Si);return{...Y,...Ns(y,O)}})(o,c,d,i)));if(!l)throw new RangeError(vi);i&&(c=ia(c));const[f,u,m]=di(s,t,l),p=fi(m),h=ko(m),g=p(u,f,o);return C(h(u,f,p(u,g,c),d))},Ul=function(a,s,t,i,o){const c=fs(i),[r,l,d,f,u]=((j,L,U)=>{j=Ro(j,Gt);let z=Jc(j);const ks=U(j[au]);let Vs=vo(j);const ku=Dt(j,7);let rs=yt(j);if(z===void 0&&rs===void 0)throw new RangeError(Wm);return rs==null&&(rs=0),z==null&&(z=Math.max(rs,L)),wl(z,rs),Vs=Fo(Vs,rs,1),[z,rs,Vs,ku,ks]})(o,c,a),m=Math.max(c,r);if(!ui(u)&&m<=6)return C(Ws(((j,L,U,z,ks)=>{const Vs=oi(_(j),U,z,ks);return{...Y,...Ns(Vs,L)}})(i,r,l,d,f)));if(!u)throw new RangeError(vi);const[p,h,g]=di(s,t,u),T=Xo(g),P=fi(g),O=ko(g),b=P(h,p,i);let y=O(h,p,b,r);const H=i.sign,Z=Ka(y);if(H&&Z&&H!==Z)throw new RangeError(Pt);return Z&&(y=ii(y,T(b),r,l,d,f,h,p,T,P)),C(y)},Ql=function(a){return a.sign===-1?mi(a):a},mi=function(a){return C(ia(a))},ia=function(a){const s={};for(let t of v)s[t]=-1*a[t]||0;return s},Yl=function(a){return!a.sign},Ka=function(a,s=v){let t=0;for(let i of s){const o=Math.sign(a[i]);if(o){if(t&&t!==o)throw new RangeError(Hm);t=o}}return t},Ws=function(a){for(let s of Um)Ta(s,a[s],-Jr,Jr,1);return Bl(ha(_(a),ba)),a},Bl=function(a){if(!Number.isSafeInteger(a))throw new RangeError(Em)},_=function(a,s=6){return Kr(a,s,v)},Ns=function(a,s=6){const[t,i]=a,o=Qt(i,s,v);if(o[v[s]]+=t*(F/Ma[s]),!Number.isFinite(o[v[s]]))throw new RangeError(Si);return o},pi=function(a,s=5){return Qt(a,s,v)},Kl=function(a){return Boolean(Ka(a,Xf))},fs=function(a){let s=9;for(;s>0&&!a[v[s]];s--);return s},rm=function(a,s){return[a,s]},Er=function(a){const s=Math.floor(a/It)*It;return[s,s+It]},Xl=function(a){const s=Xa(a=At(a));if(!s)throw new RangeError(la(a));let t;if(s.m)t=0;else{if(!s.offset)throw new RangeError(la(a));t=$s(s.offset)}return s.timeZone&&tc(s.timeZone,1),q(bo(Vt(s),t))},kl=function(a){const s=Xa(x(a));if(!s)throw new RangeError(la(a));if(s.timeZone)return rd(s,s.offset?$s(s.offset):void 0);if(s.m)throw new RangeError(la(a));return dd(s)},Vl=function(a,s){const t=Xa(x(a));if(!t||!t.timeZone)throw new RangeError(la(a));const{offset:i}=t,o=i?$s(i):void 0,[,c,r]=ut(s);return rd(t,o,c,r)},$s=function(a){const s=tc(a);if(s===void 0)throw new RangeError(la(a));return s},el=function(a){const s=Xa(x(a));if(!s||s.m)throw new RangeError(la(a));return W(ld(s))},hi=function(a){const s=Xa(x(a));if(!s||s.m)throw new RangeError(la(a));return N(s.p?ld(s):dd(s))},ad=function(a,s){const t=ac(x(s));if(t)return eo(t),ds(Po(ms(t)));const i=hi(s);return ds(tt(a(i.calendar),i))},eo=function(a){if(a.calendar!==w)throw new RangeError(Ha(a.calendar))},sd=function(a,s){const t=sc(x(s));if(t)return eo(t),Nt(ms(t));const i=hi(s),{calendar:o}=i,c=a(o),[r,l,d]=c.h(i),[f,u]=c.I(r,l),[m,p]=c.N(f,u,d);return Nt(Ga(c.P(m,p,d)),o)},td=function(a){let s,t=((i)=>{const o=yp.exec(i);return o?(gi(o[10]),md(o)):void 0})(x(a));if(!t){if(t=Xa(a),!t)throw new RangeError(la(a));if(!t.p)throw new RangeError(la(a));if(t.m)throw new RangeError(Ha("Z"));eo(t)}if((s=ac(a))&&Lr(s))throw new RangeError(la(a));if((s=sc(a))&&Lr(s))throw new RangeError(la(a));return Sa(et(t,1))},id=function(a){const s=((t)=>{const i=Sp.exec(t);return i?((o)=>{function c(u,m,p){let h=0,g=0;if(p&&([h,d]=Ea(d,Ma[p])),u!==void 0){if(l)throw new RangeError(Ha(u));g=((T)=>{const P=parseInt(T);if(!Number.isFinite(P))throw new RangeError(Ha(T));return P})(u),r=1,m&&(d=ic(m)*(Ma[p]/ba),l=1)}return h+g}let r=0,l=0,d=0,f={...Is(v,[c(o[2]),c(o[3]),c(o[4]),c(o[5]),c(o[6],o[7],5),c(o[8],o[9],4),c(o[10],o[11],3)]),...Qt(d,2,v)};if(!r)throw new RangeError(Cf(v));return oc(o[1])<0&&(f=ia(f)),f})(i):void 0})(x(a));if(!s)throw new RangeError(la(a));return C(Ws(s))},od=function(a){const s=Xa(a)||ac(a)||sc(a);return s?s.calendar:a},cd=function(a){const s=Xa(a);return s&&(s.timeZone||s.m&&Ss||s.offset)||a},rd=function(a,s,t=0,i=0){const o=Ti(a.timeZone),c=xi(o);return B(gs(c,Vt(a),s,t,i,!c.v,a.m),o,pt(a.calendar))},ld=function(a){return fd(Wa(Vt(a)))},dd=function(a){return fd(Ga(ms(a)))},fd=function(a){return{...a,calendar:pt(a.calendar)}},Xa=function(a){const s=Op.exec(a);return s?((t)=>{const i=t[10],o=(i||"").toUpperCase()==="Z";return{isoYear:ud(t),isoMonth:parseInt(t[4]),isoDay:parseInt(t[5]),...md(t.slice(5)),...gi(t[16]),p:Boolean(t[6]),m:o,offset:o?void 0:i}})(s):void 0},ac=function(a){const s=Pp.exec(a);return s?((t)=>({isoYear:ud(t),isoMonth:parseInt(t[4]),isoDay:1,...gi(t[5])}))(s):void 0},sc=function(a){const s=bp.exec(a);return s?((t)=>({isoYear:xs,isoMonth:parseInt(t[1]),isoDay:parseInt(t[2]),...gi(t[3])}))(s):void 0},tc=function(a,s){const t=Dp.exec(a);return t?((i,o)=>{const c=i[4]||i[5];if(o&&c)throw new RangeError(Ha(c));return Jo((Ms(i[2])*Ri+Ms(i[3])*Fi+Ms(i[4])*ba+ic(i[5]||""))*oc(i[1]))})(t,s):void 0},ud=function(a){const s=oc(a[1]),t=parseInt(a[2]||a[3]);if(s<0&&!t)throw new RangeError(Ha(-0));return s*t},md=function(a){const s=Ms(a[3]);return{...Xt(ic(a[4]||""))[0],isoHour:Ms(a[1]),isoMinute:Ms(a[2]),isoSecond:s===60?59:s}},gi=function(a){let s,t;const i=[];if(a.replace(wp,(o,c,r)=>{const l=Boolean(c),[d,f]=r.split("=").reverse();if(f){if(f==="u-ca")i.push(d),s||(s=l);else if(l||/[A-Z]/.test(f))throw new RangeError(Ha(o))}else{if(t)throw new RangeError(Ha(o));t=d}return""}),i.length>1&&s)throw new RangeError(Ha(a));return{timeZone:t,calendar:i[0]||w}},ic=function(a){return parseInt(a.padEnd(9,"0"))},Js=function(a){return new RegExp(`^${a}\$`,"i")},oc=function(a){return a&&a!=="+"?-1:1},Ms=function(a){return a===void 0?0:parseInt(a)},pd=function(a){return Ti(x(a))},Ti=function(a){const s=cc(a);return typeof s=="number"?hs(s):s?((t)=>{if(Fp.test(t))throw new RangeError(Cm);return t.toLowerCase().split("/").map((i,o)=>(i.length<=3||/\d/.test(i))&&!/etc|yap/.test(i)?i.toUpperCase():i.replace(/baja|dumont|[a-z]+/g,(c,r)=>c.length<=2&&!o||c==="in"||c==="chat"?c.toUpperCase():c.length>2||!r?Cr(c).replace(/island|noronha|murdo|rivadavia|urville/,Cr):c)).join("/")})(a):Ss},Hr=function(a){const s=cc(a);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Ss},cc=function(a){const s=tc(a=a.toUpperCase(),1);return s!==void 0?s:a!==Ss?vp(a):void 0},rc=function(a,s){return aa(a.epochNanoseconds,s.epochNanoseconds)},lc=function(a,s){return aa(a.epochNanoseconds,s.epochNanoseconds)},hd=function(a,s,t,i,o,c){const r=a(wa(c).relativeTo),l=Math.max(fs(i),fs(o));if(Yr(v,i,o))return 0;if(it(l,r))return aa(_(i),_(o));if(!r)throw new RangeError(vi);const[d,f,u]=di(s,t,r),m=Xo(u),p=fi(u);return aa(m(p(f,d,i)),m(p(f,d,o)))},dc=function(a,s){return Ps(a,s)||Pi(a,s)},Ps=function(a,s){return _a(sa(a),sa(s))},Pi=function(a,s){return _a(Qa(a),Qa(s))},gd=function(a,s){return!rc(a,s)},Td=function(a,s){return!lc(a,s)&&!!bi(a.timeZone,s.timeZone)&&As(a.calendar,s.calendar)},Pd=function(a,s){return!dc(a,s)&&As(a.calendar,s.calendar)},bd=function(a,s){return!Ps(a,s)&&As(a.calendar,s.calendar)},Od=function(a,s){return!Ps(a,s)&&As(a.calendar,s.calendar)},yd=function(a,s){return!Ps(a,s)&&As(a.calendar,s.calendar)},Dd=function(a,s){return!Pi(a,s)},bi=function(a,s){if(a===s)return 1;const t=Q(a),i=Q(s);if(t===i)return 1;try{return Hr(t)===Hr(i)}catch(o){}},fc=function(a,s,t,i){const o=Hs(a,A(i),3,5),c=Oi(s.epochNanoseconds,t.epochNanoseconds,...o);return C(a?ia(c):c)},uc=function(a,s,t,i,o,c){const r=Di(i.calendar,o.calendar),l=A(c),[d,f,u,m]=Hs(t,l,5),p=i.epochNanoseconds,h=o.epochNanoseconds,g=aa(h,p);let T;if(g)if(d<6)T=Oi(p,h,d,f,u,m);else{const P=s(((b,y)=>{if(!bi(b,y))throw new RangeError(Hf);return b})(i.timeZone,o.timeZone)),O=a(r);T=Sd(O,P,i,o,g,d,l),T=ii(T,h,d,f,u,m,O,i,Rl,D(Bo,P))}else T=Y;return C(t?ia(T):T)},mc=function(a,s,t,i,o){const c=Di(t.calendar,i.calendar),r=A(o),[l,d,f,u]=Hs(s,r,6),m=e(t),p=e(i),h=aa(p,m);let g;if(h)if(l<=6)g=Oi(m,p,l,d,f,u);else{const T=a(c);g=vd(T,t,i,h,l,r),g=ii(g,p,l,d,f,u,T,t,e,Ko)}else g=Y;return C(s?ia(g):g)},pc=function(a,s,t,i,o){const c=Di(t.calendar,i.calendar),r=A(o);return wd(s,()=>a(c),t,i,...Hs(s,r,6,9,6),r)},hc=function(a,s,t,i,o){const c=Di(t.calendar,i.calendar),r=A(o),l=Hs(s,r,9,9,8),d=a(c);return wd(s,()=>d,tt(d,t),tt(d,i),...l,r)},wd=function(a,s,t,i,o,c,r,l,d){const f=e(t),u=e(i);let m;if(aa(u,f))if(o===6)m=Oi(f,u,o,c,r,l);else{const p=s();m=p.dateUntil(t,i,o,d),c===6&&r===1||(m=ii(m,u,o,c,r,l,p,t,e,li))}else m=Y;return C(a?ia(m):m)},gc=function(a,s,t,i){const o=A(i),[c,r,l,d]=Hs(a,o,5,5),f=Ya(Tc(s,t),mt(r,l),d),u={...Y,...pi(f,c)};return C(a?ia(u):u)},lm=function(a,s,t,i,o,c){const r=aa(i.epochNanoseconds,t.epochNanoseconds);return r?o<6?Fd(t.epochNanoseconds,i.epochNanoseconds,o):Sd(s,a,t,i,r,o,c):Y},dm=function(a,s,t,i,o){const c=e(s),r=e(t),l=aa(r,c);return l?i<=6?Fd(c,r,i):vd(a,s,t,l,i,o):Y},Sd=function(a,s,t,i,o,c,r){const[l,d,f]=((p,h,g,T)=>{function P(){return L={...Ts(y,Z++*-T),...b},U=ua(p,L),aa(H,U)===-T}const O=ta(h,p),b=ma(Fa,O),y=ta(g,p),H=g.epochNanoseconds;let Z=0;const j=Tc(O,y);let L,U;if(Math.sign(j)===-T&&Z++,P()&&(T===-1||P()))throw new RangeError(Pt);const z=ha(pa(U,H));return[O,L,z]})(s,t,i,o);var u,m;return{...c===6?(u=l,m=d,{...Y,days:Rd(u,m)}):a.dateUntil(l,d,c,r),...pi(f)}},vd=function(a,s,t,i,o,c){const[r,l,d]=((f,u,m)=>{let p=u,h=Tc(f,u);return Math.sign(h)===-m&&(p=Ts(u,-m),h+=F*m),[f,p,h]})(s,t,i);return{...a.dateUntil(r,l,o,c),...pi(d)}},Oi=function(a,s,t,i,o,c){return{...Y,...Ns(oi(pa(a,s),i,o,c),t)}},Fd=function(a,s,t){return{...Y,...Ns(pa(a,s),t)}},Rd=function(a,s){return yi(sa(a),sa(s))},yi=function(a,s){return Math.trunc((s-a)/da)},Tc=function(a,s){return Qa(s)-Qa(a)},Di=function(a,s){if(!As(a,s))throw new RangeError(Zc);return a},fm=function(a){function s(o){return((c,r)=>({...nd(c,r),F:c.month,day:parseInt(c.day)}))(To(t,o),i)}const t=Uc(a),i=zt(a);return{id:a,O:um(s),B:mm(s)}},um=function(a){return fa((s)=>{const t=sa(s);return a(t)},WeakMap)},mm=function(a){const s=a(0).year-km;return fa((t)=>{let i,o=Es(t-s);const c=[],r=[];do o+=400*da;while((i=a(o)).year<=t);do o+=(1-i.day)*da,i.year===t&&(c.push(o),r.push(i.F)),o-=da;while((i=a(o)).year>=t);return{k:c.reverse(),C:Nf(r.reverse())}})},nd=function(a,s){let t,i,o=Md(a);if(a.era){const c=Yf[s];c!==void 0&&(t=s==="islamic"?"ah":a.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),t==="bc"||t==="b"?t="bce":t!=="ad"&&t!=="a"||(t="ce"),i=o,o=xd(i,c[t]||0))}return{era:t,eraYear:i,year:o}},Md=function(a){return parseInt(a.relatedYear||a.year)},Vi=function(a){const{year:s,F:t,day:i}=this.O(a),{C:o}=this.B(s);return[s,o[t]+1,i]},ot=function(a,s=1,t=1){return this.B(a).k[s-1]+(t-1)*da},Zt=function(a){const s=Wr(this,a),t=Wr(this,a-1),i=s.length;if(i>t.length){const o=Id(this);if(o<0)return-o;for(let c=0;c<i;c++)if(s[c]!==t[c])return c+1}},Lt=function(a){return yi(ot.call(this,a),ot.call(this,a+1))},Ar=function(a,s){const{k:t}=this.B(a);let i=s+1,o=t;return i>t.length&&(i=1,o=this.B(a+1).k),yi(t[s-1],o[i-1])},xt=function(a){return this.B(a).k.length},Wr=function(a,s){return Object.keys(a.B(s).C)},jd=function(a){return pt(x(a))},pt=function(a){if((a=a.toLowerCase())!==w&&a!==Mi&&zt(a)!==zt(Uc(a).resolvedOptions().calendar))throw new RangeError(jm(a));return a},zt=function(a){return a==="islamicc"&&(a="islamic"),a.split("-")[0]},Cd=function(a){return this.R(a)[0]},Zd=function(a){return this.R(a)[1]},Pc=function(a){const[s]=this.h(a);return yi(this.q(s),sa(a))+1},Ld=function(a){const s=np.exec(a);if(!s)throw new RangeError(nm(a));return[parseInt(s[1]),Boolean(s[2])]},_t=function(a,s,t){return a+(s||t&&a>=t?1:0)},ei=function(a,s){return a-(s&&a>=s?1:0)},xd=function(a,s){return(s+a)*(Math.sign(s)||1)||0},ao=function(a){return Yf[Ed(a)]},Id=function(a){return _m[Ed(a)]},Ed=function(a){return zt(a.id||w)},Hd=function(a,s,t,i){const o=ka(t,i,va,[],Gf);if(o.timeZone!==void 0){const c=t.dateFromFields(o),r=bs(o),l=a(o.timeZone);return{epochNanoseconds:gs(s(l),{...c,...r},o.offset!==void 0?$s(o.offset):void 0),timeZone:l}}return{...t.dateFromFields(o),...Oa}},Ad=function(a,s,t,i,o,c){const r=ka(t,o,va,zf,Gf),l=a(r.timeZone),[d,f,u]=ut(c),m=t.dateFromFields(r,si(c,d)),p=bs(r,d);return B(gs(s(l),{...m,...p},r.offset!==void 0?$s(r.offset):void 0,f,u),l,i)},Wd=function(a,s,t){const i=ka(a,s,va,[],Ja),o=S(t);return W(Wa({...a.dateFromFields(i,si(t,o)),...bs(i,o)}))},bc=function(a,s,t,i=[]){const o=ka(a,s,va,i);return a.dateFromFields(o,t)},Oc=function(a,s,t,i){const o=ka(a,s,Ic,i);return a.yearMonthFromFields(o,t)},yc=function(a,s,t,i,o=[]){const c=ka(a,t,va,o);return s&&c.month!==void 0&&c.monthCode===void 0&&c.year===void 0&&(c.year=xs),a.monthDayFromFields(c,i)},Nd=function(a,s){const t=S(s);return Sa(bs(na(a,to,[],1),t))},$d=function(a){const s=na(a,Ec);return C(Ws({...Y,...s}))},ka=function(a,s,t,i=[],o=[]){return na(s,[...a.fields(t),...o].sort(),i)},na=function(a,s,t,i=!t){const o={};let c,r=0;for(let l of s){if(l===c)throw new RangeError(Dm(l));if(l==="constructor"||l==="__proto__")throw new RangeError(jc(l));let d=a[l];if(d!==void 0)r=1,zr[l]&&(d=zr[l](d,l)),o[l]=d;else if(t){if(t.includes(l))throw new TypeError(Mc(l));o[l]=Qf[l]}c=l}if(i&&!r)throw new TypeError(Cf(s));return o},bs=function(a,s){return et(Zp({...Qf,...a}),s)},Jd=function(a,s,t,i,o,c){const r=A(c),{calendar:l,timeZone:d}=t;return B(((f,u,m,p,h)=>{const g=ht(f,m,p,va,_f,Jf),[T,P,O]=ut(h,2);return gs(u,{...f.dateFromFields(g,si(h,T)),...bs(g,T)},$s(g.offset),P,O)})(a(l),s(d),i,o,r),d,l)},zd=function(a,s,t,i,o){const c=A(o);return W(((r,l,d,f)=>{const u=ht(r,l,d,va,Ja),m=S(f);return Wa({...r.dateFromFields(u,si(f,m)),...bs(u,m)})})(a(s.calendar),t,i,c))},_d=function(a,s,t,i,o){const c=A(o);return((r,l,d,f)=>{const u=ht(r,l,d,va);return r.dateFromFields(u,f)})(a(s.calendar),t,i,c)},Gd=function(a,s,t,i,o){const c=A(o);return ds(((r,l,d,f)=>{const u=ht(r,l,d,Ic);return r.yearMonthFromFields(u,f)})(a(s.calendar),t,i,c))},qd=function(a,s,t,i,o){const c=A(o);return((r,l,d,f)=>{const u=ht(r,l,d,va);return r.monthDayFromFields(u,f)})(a(s.calendar),t,i,c)},Ud=function(a,s,t){return Sa(((i,o,c)=>{const r=S(c);return bs({...ma(to,i),...na(o,to)},r)})(a,s,t))},Qd=function(a,s){return C((t=a,i=s,Ws({...t,...na(i,Ec)})));var t,i},ht=function(a,s,t,i,o=[],c=[]){const r=[...a.fields(i),...o].sort();let l=na(s,r,c);const d=na(t,r);return l=a.mergeFields(l,d),na(l,r,[])},Dc=function(a,s){const t=ka(a,s,Uf);return a.monthDayFromFields(t)},wc=function(a,s,t){const i=ka(a,s,qf);return a.yearMonthFromFields(i,t)},Yd=function(a,s,t,i,o){s=ma(t=a.fields(t),s),i=na(i,o=a.fields(o),[]);let c=a.mergeFields(s,i);return c=na(c,[...t,...o].sort(),[]),a.dateFromFields(c)},Yi=function(a,s){let{era:t,eraYear:i,year:o}=s;const c=ao(a);if(t!==void 0||i!==void 0){if(t===void 0||i===void 0)throw new TypeError(Sm);if(!c)throw new RangeError(wm);const r=c[t];if(r===void 0)throw new RangeError(Fm(t));const l=xd(i,r);if(o!==void 0&&o!==l)throw new RangeError(vm);o=l}else if(o===void 0)throw new TypeError(Rm(c));return o},Bi=function(a,s,t,i){let{month:o,monthCode:c}=s;if(c!==void 0){const r=((l,d,f,u)=>{const m=l.U(f),[p,h]=Ld(d);let g=_t(p,h,m);if(h){const T=Id(l);if(T===void 0)throw new RangeError(es);if(T>0){if(g>T)throw new RangeError(es);if(m===void 0){if(u===1)throw new RangeError(es);g--}}else{if(g!==-T)throw new RangeError(es);if(m===void 0&&u===1)throw new RangeError(es)}}return g})(a,c,t,i);if(o!==void 0&&o!==r)throw new RangeError(If);o=r,i=1}else if(o===void 0)throw new TypeError(Mm);return Ta("month",o,1,a.L(t),i)},Nr=function(a,s,t,i,o){return ra(s,"day",1,a.j(i,t),o)},Ki=function(a,s,t,i){let o=0;const c=[];for(let r of t)s[r]!==void 0?o=1:c.push(r);if(Object.assign(a,s),o)for(let r of i||c)delete a[r]},Bd=function(a){return q(ga(Kt(Bt(a))))},Kd=function(a,s,t,i,o=w){return B(ga(Kt(Bt(t))),s(i),a(o))},Xd=function(a,s,t,i,o=0,c=0,r=0,l=0,d=0,f=0,u=w){return W(Wa(Vt(ya(V,Is(ji,[s,t,i,o,c,r,l,d,f])))),a(u))},kd=function(a,s,t,i,o=w){return N(Ga(ms(ya(V,{isoYear:s,isoMonth:t,isoDay:i}))),a(o))},Vd=function(a,s,t,i=w,o=1){const c=V(s),r=V(t),l=a(i);return ds(Po(ms({isoYear:c,isoMonth:r,isoDay:V(o)})),l)},ed=function(a,s,t,i=w,o=xs){const c=V(s),r=V(t),l=a(i);return Nt(Ga(ms({isoYear:V(o),isoMonth:c,isoDay:r})),l)},af=function(a=0,s=0,t=0,i=0,o=0,c=0){return Sa(et(ya(V,Is(Fa,[a,s,t,i,o,c])),1))},sf=function(a=0,s=0,t=0,i=0,o=0,c=0,r=0,l=0,d=0,f=0){return C(Ws(ya(cl,Is(v,[a,s,t,i,o,c,r,l,d,f]))))},Sc=function(a,s,t=w){return B(a.epochNanoseconds,s,t)},tf=function(a){return q(a.epochNanoseconds)},vc=function(a,s){return W(ta(s,a))},Fc=function(a,s){return N(ta(s,a))},of=function(a,s,t){return wc(a(s.calendar),t)},cf=function(a,s,t){return Dc(a(s.calendar),t)},Rc=function(a,s){return Sa(ta(s,a))},rf=function(a,s,t,i){const o=((c,r,l,d)=>{const f=Do(d);return ua(c(r),l,f)})(a,t,s,i);return B(ga(o),t,s.calendar)},lf=function(a,s,t){const i=a(s.calendar);return ds({...s,...wc(i,t)})},df=function(a,s,t){return Dc(a(s.calendar),t)},ff=function(a,s,t,i,o){const c=a(o.timeZone),r=o.plainTime,l=r!==void 0?s(r):Oa;return B(ua(t(c),{...i,...l}),c,i.calendar)},uf=function(a,s=Oa){return W(Wa({...a,...s}))},mf=function(a,s,t){return wc(a(s.calendar),t)},pf=function(a,s,t){return Dc(a(s.calendar),t)},hf=function(a,s,t,i){return((o,c,r)=>Yd(o,c,qf,Aa(r),Ot))(a(s.calendar),t,i)},gf=function(a,s,t,i){return((o,c,r)=>Yd(o,c,Uf,Aa(r),ni))(a(s.calendar),t,i)},Tf=function(a,s,t,i,o){const c=Aa(o),r=s(c.plainDate),l=a(c.timeZone);return B(ua(t(l),{...r,...i}),l,r.calendar)},Pf=function(a,s){return W(Wa({...a,...s}))},bf=function(a){return q(ga(Zs(a,ba)))},Of=function(a){return q(ga(Zs(a,ja)))},yf=function(a){return q(ga(Kt(Bt(a),ys)))},Df=function(a){return q(ga(Kt(Bt(a))))},wf=function(a,s,t=Oa){const i=s.timeZone,o=a(i),c={...ta(s,o),...t};return B(gs(o,c,c.offsetNanoseconds,2),i,s.calendar)},Sf=function(a,s,t){const i=s.timeZone,o=a(i),c={...ta(s,o),...t},r=nf(s.calendar,t.calendar);return B(gs(o,c,c.offsetNanoseconds,2),i,r)},vf=function(a,s=Oa){return W({...a,...s})},Ff=function(a,s){return W({...a,...s},nf(a.calendar,s.calendar))},wi=function(a,s){return{...a,calendar:s}},Rf=function(a,s){return{...a,timeZone:s}},nf=function(a,s){if(a===s)return a;const t=Q(a),i=Q(s);if(t===i||t===w)return s;if(i===w)return a;throw new RangeError(Zc)},pm=function(a,s){return(t)=>t===w?a:t===Mi||t===Ls?Object.assign(Object.create(a),{id:t}):Object.assign(Object.create(s),Rp(t))},Os=function(a,s,t){const i=new Set(t);return(o)=>(((c,r)=>{for(let l of r)if(l in c)return 1;return 0})(o=ro(i,o),a)||Object.assign(o,s),t&&(o.timeZone=Ss,["full","long"].includes(o.timeStyle)&&(o.timeStyle="medium")),o)},Na=function(a,s=nc){const[t,,,i]=a;return(o,c=Qp,...r)=>{const l=s(i&&i(...r),o,c,t),d=l.resolvedOptions();return[l,...hm(a,d,r)]}},nc=function(a,s,t,i){if(t=i(t),a){if(t.timeZone!==void 0)throw new TypeError($m);t.timeZone=a}return new Va(s,t)},hm=function(a,s,t){const[,i,o]=a;return t.map((c)=>(c.calendar&&((r,l,d)=>{if((d||r!==w)&&r!==l)throw new RangeError(Zc)})(Q(c.calendar),s.calendar,o),i(c,s)))},zs=function(a){const s=gt();return Ba(s,a.getOffsetNanosecondsFor(s))},gt=function(){return Zs(Date.now(),ja)},$a=function(){return Gr||(Gr=new Va().resolvedOptions().timeZone)},gm=(a,s)=>`Non-integer ${a}: ${s}`,Tm=(a,s)=>`Non-positive ${a}: ${s}`,Pm=(a,s)=>`Non-finite ${a}: ${s}`,bm=(a)=>`Cannot convert bigint to ${a}`,Om=(a)=>`Invalid bigint: ${a}`,ym="Cannot convert Symbol to string",Mf="Invalid object",jf=(a,s,t,i,o)=>o?jf(a,o[s],o[t],o[i]):Tt(a,s)+`; must be between ${t}-${i}`,Tt=(a,s)=>`Invalid ${a}: ${s}`,Mc=(a)=>`Missing ${a}`,jc=(a)=>`Invalid field ${a}`,Dm=(a)=>`Duplicate field ${a}`,Cf=(a)=>"No valid fields: "+a.join(),Zf="Invalid bag",Lf=(a,s,t)=>Tt(a,s)+"; must be "+Object.keys(t).join(),xf="Cannot use valueOf",Cc="Invalid calling context",wm="Forbidden era/eraYear",Sm="Mismatching era/eraYear",vm="Mismatching year/eraYear",Fm=(a)=>`Invalid era: ${a}`,Rm=(a)=>"Missing year"+(a?"/era/eraYear":""),nm=(a)=>`Invalid monthCode: ${a}`,If="Mismatching month/monthCode",Mm="Missing month/monthCode",$r="Cannot guess year",es="Invalid leap month",Ef="Invalid protocol",Pt="Invalid protocol results",Zc="Mismatching Calendars",jm=(a)=>`Invalid Calendar: ${a}`,Hf="Mismatching TimeZones",Cm="Forbidden ICU TimeZone",Zm="Out-of-bounds offset",Lm="Out-of-bounds TimeZone gap",xm="Invalid TimeZone offset",Im="Ambiguous offset",Si="Out-of-bounds date",Em="Out-of-bounds duration",Hm="Cannot mix duration signs",vi="Missing relativeTo",Am="Cannot use large units",Wm="Required smallestUnit or largestUnit",Nm="smallestUnit > largestUnit",la=(a)=>`Cannot parse: ${a}`,Ha=(a)=>`Invalid substring: ${a}`,Af=(a)=>`Cannot format ${a}`,Wf="Mismatching types for formatting",$m="Cannot specify TimeZone",Nf=D(lt,(a,s)=>s),_s=D(lt,(a,s,t)=>t),Pa=D(Ht,2),so={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},bt=Object.keys(so),da=86400000,$f=1000,ys=1000,ja=1e6,ba=1e9,Fi=60000000000,Ri=3600000000000,F=86400000000000,Ma=[1,ys,ja,ba,Fi,Ri,F],Ja=bt.slice(0,6),to=dt(Ja),Jf=["offset"],zf=["timeZone"],_f=Ja.concat(Jf),Gf=_f.concat(zf),io=["era","eraYear"],Jm=io.concat(["year"]),ni=["year"],Lc=["monthCode"],xc=["month"].concat(Lc),Ot=["day"],Ic=xc.concat(ni),qf=Lc.concat(ni),va=Ot.concat(Ic),zm=Ot.concat(xc),Uf=Ot.concat(Lc),Qf=_s(Ja,0),w="iso8601",Mi="gregory",Ls="japanese",Yf={[Mi]:{bce:-1,ce:0},[Ls]:{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}},_m={chinese:13,dangi:13,hebrew:-6},x=D(Yt,"string"),Bf=D(Yt,"boolean"),Gm=D(Yt,"number"),Kf=D(Yt,"function"),v=bt.map((a)=>a+"s"),Ec=dt(v),qm=v.slice(0,6),Xf=v.slice(6),Um=Xf.slice(1),Qm=Nf(v),Y=_s(v,0),Hc=_s(qm,0),Ac=D(Br,v),Fa=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],Wc=["isoDay","isoMonth","isoYear"],ji=Fa.concat(Wc),Nc=dt(Wc),kf=dt(Fa),Vf=dt(ji),Oa=_s(kf,0),Ym=D(Br,ji),Va=Intl.DateTimeFormat,ef="en-GB",$c=1e8,Bm=$c*da,Km=[$c,0],Xm=[-$c,0],ct=275760,rt=-271821,km=1970,xs=1972,Ia=12,Vm=Es(1868,9,8),em=fa(eu,WeakMap),Gt="smallestUnit",oo="unit",st="roundingIncrement",Xi="fractionalSecondDigits",au="relativeTo",su={constrain:0,reject:1},ap=Object.keys(su),sp={compatible:0,reject:1,earlier:2,later:3},tp={reject:0,use:1,prefer:2,ignore:3},ip={auto:0,never:1,critical:2,always:3},op={auto:0,never:1,critical:2},cp={auto:0,never:1},rp={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},yt=D(no,Gt),Jc=D(no,"largestUnit"),lp=D(no,oo),tu=D(ps,"overflow",su),iu=D(ps,"disambiguation",sp),dp=D(ps,"offset",tp),zc=D(ps,"calendarName",ip),fp=D(ps,"timeZoneName",op),up=D(ps,"offset",cp),Dt=D(ps,"roundingMode",rp),Gs="PlainYearMonth",qs="PlainMonthDay",Ds="PlainDate",ws="PlainDateTime",Ci="PlainTime",za="ZonedDateTime",Zi="Instant",Li="Duration",mp=[Math.floor,(a)=>Ct(a)?Math.floor(a):Math.round(a),Math.ceil,(a)=>Ct(a)?Math.ceil(a):Math.round(a),Math.trunc,(a)=>Ct(a)?Math.trunc(a)||0:Math.round(a),(a)=>a<0?Math.floor(a):Math.ceil(a),(a)=>Math.sign(a)*Math.round(Math.abs(a))||0,(a)=>Ct(a)?(a=Math.trunc(a)||0)+a%2:Math.round(a)],Ss="UTC",It=5184000,pp=Wt(1847),hp=Wt((new Date()).getUTCFullYear()+10),gp=/0+$/,ta=fa(cm,WeakMap),Jr=4294967295,xi=fa((a)=>{const s=cc(a);return typeof s=="object"?new cu(s):new ou(s||0)});class ou{constructor(a){this.v=a}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(a){return[bo(a,this.v)]}l(){}}class cu{constructor(a){this.$=((s)=>{function t(d){const f=ki(d,r,l),[u,m]=Er(f),p=o(u),h=o(m);return p===h?p:i(c(u,m),p,h,d)}function i(d,f,u,m){let p,h;for(;(m===void 0||(p=m<d[0]?f:m>=d[1]?u:void 0)===void 0)&&(h=d[1]-d[0]);){const g=d[0]+Math.floor(h/2);s(g)===u?d[1]=g:d[0]=g+1}return p}const o=fa(s),c=fa(rm);let r=pp,l=hp;return{G(d){const f=t(d-86400),u=t(d+86400),m=d-f,p=d-u;if(f===u)return[m];const h=t(m);return h===t(p)?[d-h]:f>u?[m,p]:[]},V:t,l(d,f){const u=ki(d,r,l);let[m,p]=Er(u);const h=It*f,g=f<0?()=>p>r||(r=u,0):()=>m<l||(l=u,0);for(;g();){const T=o(m),P=o(p);if(T!==P){const O=c(m,p);i(O,T,P);const b=O[0];if((_a(b,d)||1)===f)return b}m+=h,p+=h}}}})(((s)=>(t)=>{const i=To(s,t*$f);return Wt(Md(i),parseInt(i.month),parseInt(i.day),parseInt(i.hour),parseInt(i.minute),parseInt(i.second))-t})(a))}getOffsetNanosecondsFor(a){return this.$.V(dl(a))*ba}getPossibleInstantsFor(a){const[s,t]=[Wt((i=a).isoYear,i.isoMonth,i.isoDay,i.isoHour,i.isoMinute,i.isoSecond),i.isoMillisecond*ja+i.isoMicrosecond*ys+i.isoNanosecond];var i;return this.$.G(s).map((o)=>ga(Cs(Zs(o,ba),t)))}l(a,s){const[t,i]=fl(a),o=this.$.l(t+(s>0||i?1:0),s);if(o!==void 0)return Zs(o,ba)}}var _c="([+\u2212-])",Et="(?:[.,](\\d{1,9}))?",ru=`(?:(?:${_c}(\\d{6}))|(\\d{4}))-?(\\d{2})`,Gc="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+Et+")?)?",qc=_c+Gc,Tp=ru+"-?(\\d{2})(?:[T ]"+Gc+"(Z|"+qc+")?)?",lu="\\[(!?)([^\\]]*)\\]",Ii=`((?:${lu}){0,9})`,Pp=Js(ru+Ii),bp=Js("(?:--)?(\\d{2})-?(\\d{2})"+Ii),Op=Js(Tp+Ii),yp=Js("T?"+Gc+"(?:"+qc+")?"+Ii),Dp=Js(qc),wp=new RegExp(lu,"g"),Sp=Js(`${_c}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${Et}H)?(?:(\\d+)${Et}M)?(?:(\\d+)${Et}S)?)?`),vp=fa((a)=>new Va(ef,{timeZone:a,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Fp=/^(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$/,Rp=fa(fm),Uc=fa((a)=>new Va(ef,{calendar:a,timeZone:Ss,era:"short",year:"numeric",month:"short",day:"numeric"})),np=/^M(\d{2})(L?)$/,Mp={era:At,eraYear:V,year:V,month:Zr,monthCode:At,day:Zr},jp=_s(Ja,V),Cp=_s(v,cl),zr=Object.assign({},Mp,jp,Cp,{offset:At}),Zp=D(Vu,Ja,Fa),_r={dateAdd(a,s,t){const i=S(t);let o,{years:c,months:r,weeks:l,days:d}=s;if(d+=_(s,5)[0],c||r)o=((f,u,m,p,h)=>{let[g,T,P]=f.h(u);if(m){const[O,b]=f.I(g,T);g+=m,T=_t(O,b,f.U(g)),T=Ta("month",T,1,f.L(g),h)}return p&&([g,T]=f._(g,T,p)),P=Ta("day",P,1,f.j(g,T),h),f.q(g,T,P)})(this,a,c,r,i);else{if(!l&&!d)return a;o=sa(a)}return o+=(7*l+d)*da,Ga(kt(o))},dateUntil(a,s,t){if(t<=7){let d=0,f=Rd({...a,...Oa},{...s,...Oa});return t===7&&([d,f]=Ua(f,7)),{...Y,weeks:d,days:f}}const i=this.h(a),o=this.h(s);let[c,r,l]=((d,f,u,m,p,h,g)=>{let T=p-f,P=h-u,O=g-m;if(T||P){const b=Math.sign(T||P);let y=d.j(p,h),H=0;if(Math.sign(O)===-b){const Z=y;[p,h]=d._(p,h,-b),T=p-f,P=h-u,y=d.j(p,h),H=b<0?-Z:y}if(O=g-Math.min(m,y)+H,T){const[Z,j]=d.I(f,u),[L,U]=d.I(p,h);if(P=L-Z||Number(U)-Number(j),Math.sign(P)===-b){const z=b<0&&-d.L(p);T=(p-=b)-f,P=h-_t(Z,j,d.U(p))+(z||d.L(p))}}}return[T,P,O]})(this,...i,...o);return t===8&&(r+=this.J(c,i[0]),c=0),{...Y,years:c,months:r,days:l}},dateFromFields(a,s){const t=S(s),i=Yi(this,a),o=Bi(this,a,i,t),c=Nr(this,a,o,i,t);return N(Ga(this.P(i,o,c)),this.id||w)},yearMonthFromFields(a,s){const t=S(s),i=Yi(this,a),o=Bi(this,a,i,t);return ds(Po(this.P(i,o,1)),this.id||w)},monthDayFromFields(a,s){const t=S(s),i=!this.id,{monthCode:o,year:c,month:r}=a;let l,d,f,u,m;if(o!==void 0){[l,d]=Ld(o),m=qr(a,"day");const p=this.N(l,d,m);if(!p)throw new RangeError($r);if([f,u]=p,r!==void 0&&r!==u)throw new RangeError(If);i&&(u=Ta("month",u,1,Ia,1),m=Ta("day",m,1,Oo(c!==void 0?c:f,u),t))}else{f=c===void 0&&i?xs:Yi(this,a),u=Bi(this,a,f,t),m=Nr(this,a,u,f,t);const p=this.U(f);d=u===p,l=ei(u,p);const h=this.N(l,d,m);if(!h)throw new RangeError($r);[f,u]=h}return Nt(Ga(this.P(f,u,m)),this.id||w)},fields(a){return ao(this)&&a.includes("year")?[...a,...io]:a},mergeFields(a,s){const t=Object.assign(Object.create(null),a);return Ki(t,s,xc),ao(this)&&(Ki(t,s,Jm),this.id===Ls&&Ki(t,s,zm,io)),t},inLeapYear(a){const[s]=this.h(a);return this.K(s)},monthsInYear(a){const[s]=this.h(a);return this.L(s)},daysInMonth(a){const[s,t]=this.h(a);return this.j(s,t)},daysInYear(a){const[s]=this.h(a);return this.X(s)},dayOfYear:Pc,era(a){return this.ee(a)[0]},eraYear(a){return this.ee(a)[1]},monthCode(a){const[s,t]=this.h(a),[i,o]=this.I(s,t);return((c,r)=>"M"+Pa(c)+(r?"L":""))(i,o)},dayOfWeek:gl,daysInWeek(){return 7}},Lp={dayOfYear:Pc,h:ml,q:Es},xp=Object.assign({},Lp,{weekOfYear:Cd,yearOfWeek:Zd,R(a){function s(h){return(7-h<i?7:0)-h}function t(h){const g=hl(p+h),T=h||1,P=s(at(d+g*T,7));return u=(g+(P-f)*T)/7}const i=this.id?1:4,o=gl(a),c=this.dayOfYear(a),r=at(o-1,7),l=c-1,d=at(r-l,7),f=s(d);let u,m=Math.floor((l-f)/7)+1,p=a.isoYear;return m?m>t(0)&&(m=1,p++):(m=t(-1),p--),[m,p,u]}}),Ip={dayOfYear:Pc,h:Vi,q:ot,weekOfYear:Cd,yearOfWeek:Zd,R(){return[]}},Us=pm(Object.assign({},_r,xp,{h:ml,ee(a){return this.id===Mi?Tl(a):this.id===Ls?em(a):[]},I:(a,s)=>[s,0],N(a,s){if(!s)return[xs,a]},K:yo,U(){},L:pl,J:(a)=>a*Ia,j:Oo,X:hl,P:(a,s,t)=>({isoYear:a,isoMonth:s,isoDay:t}),q:Es,_:(a,s,t)=>(a+=Ut(t,Ia),(s+=fo(t,Ia))<1?(a--,s+=Ia):s>Ia&&(a++,s-=Ia),[a,s]),year(a){return a.isoYear},month(a){return a.isoMonth},day:(a)=>a.isoDay}),Object.assign({},_r,Ip,{h:Vi,ee(a){const s=this.O(a);return[s.era,s.eraYear]},I(a,s){const t=Zt.call(this,a);return[ei(s,t),t===s]},N(a,s,t){let[i,o,c]=Vi.call(this,{isoYear:xs,isoMonth:Ia,isoDay:31});const r=Zt.call(this,i),l=o===r;(_a(a,ei(o,r))||_a(Number(s),Number(l))||_a(t,c))===1&&i--;for(let d=0;d<100;d++){const f=i-d,u=Zt.call(this,f),m=_t(a,s,u);if(s===(m===u)&&t<=Ar.call(this,f,m))return[f,m]}},K(a){const s=Lt.call(this,a);return s>Lt.call(this,a-1)&&s>Lt.call(this,a+1)},U:Zt,L:xt,J(a,s){const t=s+a,i=Math.sign(a),o=i<0?-1:0;let c=0;for(let r=s;r!==t;r+=i)c+=xt.call(this,r+o);return c},j:Ar,X:Lt,P(a,s,t){return kt(ot.call(this,a,s,t))},q:ot,_(a,s,t){if(t){if(s+=t,!Number.isSafeInteger(s))throw new RangeError(Si);if(t<0)for(;s<1;)s+=xt.call(this,--a);else{let i;for(;s>(i=xt.call(this,a));)s-=i,a++}}return[a,s]},year(a){return this.O(a).year},month(a){const{year:s,F:t}=this.O(a),{C:i}=this.B(s);return i[t]+1},day(a){return this.O(a).day}})),qa="numeric",Qs=["timeZoneName"],du={month:qa,day:qa},Qc={year:qa,month:qa},Yc=Object.assign({},Qc,{day:qa}),Bc={hour:qa,minute:qa,second:qa},Kc=Object.assign({},Yc,Bc),Ep=Object.assign({},Kc,{timeZoneName:"short"}),Hp=Object.keys(Qc),Ap=Object.keys(du),Wp=Object.keys(Yc),Np=Object.keys(Bc),Xc=["dateStyle"],$p=Hp.concat(Xc),Jp=Ap.concat(Xc),kc=Wp.concat(Xc,["weekday"]),wt=Np.concat(["dayPeriod","timeStyle"]),Vc=kc.concat(wt),zp=Vc.concat(Qs),_p=Qs.concat(wt),Gp=Qs.concat(kc),qp=Qs.concat(["day","weekday"],wt),Up=Qs.concat(["year","weekday"],wt),Qp={},ec=[Os(Vc,Kc),ti],fu=[Os(zp,Ep),ti,0,(a,s)=>{const t=Q(a.timeZone);if(s&&Q(s.timeZone)!==t)throw new RangeError(Hf);return t}],ar=[Os(Vc,Kc,Qs),sa],sr=[Os(kc,Yc,_p),sa],tr=[Os(wt,Bc,Gp),(a)=>Qa(a)/ja],ir=[Os($p,Qc,qp),sa,1],or=[Os(Jp,du,Up),sa,1],Gr;var kp={Instant:ec,PlainDateTime:ar,PlainDate:sr,PlainTime:tr,PlainYearMonth:ir,PlainMonthDay:or},Vp=Na(ec),ep=Na(fu),ah=Na(ar),sh=Na(sr),th=Na(tr),ih=Na(ir),oh=Na(or),fr={era:er,eraYear:uo,year:ft,month:Da,daysInMonth:Da,daysInYear:Da,inLeapYear:Bf,monthsInYear:Da},Wi={monthCode:x},ur={day:Da},Du={dayOfWeek:Da,dayOfYear:Da,weekOfYear:al,yearOfWeek:uo,daysInWeek:Da},wu=Object.assign({},fr,Wi,ur,Du),Ai=new WeakMap,k=Ai.get.bind(Ai),hu=Ai.set.bind(Ai),ch={...Ei(fr,[Gs]),...Ei(Du,[]),...Ei(Wi,[Gs,qs]),...Ei(ur,[qs])},mr=lr(wu),rh=lr({...fr,...Wi}),lh=lr({...Wi,...ur}),Rt={calendarId:(a)=>Q(a.calendar)},dh=ya((a,s)=>function(t){const{i}=this;return a(i[s](E(N(t,i))))},wu),fh=lt((a)=>(s)=>s[a],v.concat("sign")),pr=lt((a,s)=>(t)=>t[Fa[s]],Ja),Su={epochSeconds:Sl,epochMilliseconds:ti,epochMicroseconds:vl,epochNanoseconds:Fl},nt=D(ro,new Set(["branding"])),[uh,Ks,mh]=La(qs,D(ed,X),{...Rt,...lh},{getISOFields:nt,getCalendar:vt,with(a,s,t){return Ks(qd(nh,a,this,Xs(s),t))},equals:(a,s)=>yd(a,uu(s)),toPlainDate(a,s){return E(gf(Mt,a,this,s))},toLocaleString(a,s,t){const[i,o]=oh(s,t,a);return i.format(o)},toString:Ho,toJSON:(a)=>Ho(a),valueOf:is},{from:(a,s)=>Ks(uu(a,s))}),vu={getOffsetNanosecondsFor:bu,getPossibleInstantsFor(a,s,t){const i=[...s.call(a,K(W(t,w)))].map((c)=>hh(c).epochNanoseconds),o=i.length;return o>1&&(i.sort(aa),zo(ha(pa(i[0],i[o-1])))),i}},rr={getOffsetNanosecondsFor:bu},[ph,oa,hh]=La(Zi,Bd,Su,{add:(a,s)=>oa(_o(0,a,I(s))),subtract:(a,s)=>oa(_o(1,a,I(s))),until:(a,s,t)=>n(fc(0,a,Ca(s),t)),since:(a,s,t)=>n(fc(1,a,Ca(s),t)),round:(a,s)=>oa(Ml(a,s)),equals:(a,s)=>gd(a,Ca(s)),toZonedDateTime(a,s){const t=Aa(s);return $(Sc(a,M(t.timeZone),X(t.calendar)))},toZonedDateTimeISO:(a,s)=>$(Sc(a,M(s))),toLocaleString(a,s,t){const[i,o]=Vp(s,t,a);return i.format(o)},toString:(a,s)=>Zo(M,J,a,s),toJSON:(a)=>Zo(M,J,a),valueOf:is},{from:(a)=>oa(Ca(a)),fromEpochSeconds:(a)=>oa(bf(a)),fromEpochMilliseconds:(a)=>oa(Of(a)),fromEpochMicroseconds:(a)=>oa(yf(a)),fromEpochNanoseconds:(a)=>oa(Df(a)),compare:(a,s)=>rc(Ca(a),Ca(s))}),[Ni,$h]=La("TimeZone",(a)=>{const s=pd(a);return{branding:"TimeZone",id:s,o:xi(s)}},{id:(a)=>a.id},{getPossibleInstantsFor:({o:a},s)=>a.getPossibleInstantsFor(as(s)).map((t)=>oa(q(t))),getOffsetNanosecondsFor:({o:a},s)=>a.getOffsetNanosecondsFor(Ca(s).epochNanoseconds),getOffsetStringFor(a,s){const t=Ca(s).epochNanoseconds,i=Hi(this,rr).getOffsetNanosecondsFor(t);return hs(i)},getPlainDateTimeFor(a,s,t=w){const i=Ca(s).epochNanoseconds,o=Hi(this,rr).getOffsetNanosecondsFor(i);return K(W(Ba(i,o),X(t)))},getInstantFor(a,s,t){const i=as(s),o=Do(t),c=Hi(this);return oa(q(ua(c,i,o)))},getNextTransition:({o:a},s)=>mu(1,a,s),getPreviousTransition:({o:a},s)=>mu(-1,a,s),equals(a,s){return!!bi(this,M(s))},toString:(a)=>a.id,toJSON:(a)=>a.id},{from(a){const s=M(a);return typeof s=="string"?new Ni(s):s}}),gh=Pu(Object.keys(vu)),[Th,ss]=La(Ci,af,pr,{getISOFields:nt,with(a,s,t){return ss(Ud(this,Xs(s),t))},add:(a,s)=>ss(Yo(0,a,I(s))),subtract:(a,s)=>ss(Yo(1,a,I(s))),until:(a,s,t)=>n(gc(0,a,ea(s),t)),since:(a,s,t)=>n(gc(1,a,ea(s),t)),round:(a,s)=>ss(Zl(a,s)),equals:(a,s)=>Dd(a,ea(s)),toZonedDateTime:(a,s)=>$(Tf(M,ca,R,a,s)),toPlainDateTime:(a,s)=>K(Pf(a,ca(s))),toLocaleString(a,s,t){const[i,o]=th(s,t,a);return i.format(o)},toString:Ao,toJSON:(a)=>Ao(a),valueOf:is},{from:(a,s)=>ss(ea(a,s)),compare:(a,s)=>Pi(ea(a),ea(s))}),[Ph,ts,bh]=La(Gs,D(Vd,X),{...Rt,...rh},{getISOFields:nt,getCalendar:vt,with(a,s,t){return ts(Gd(Rh,a,this,Xs(s),t))},add:(a,s,t)=>ts(Qo(gu,0,a,I(s),t)),subtract:(a,s,t)=>ts(Qo(gu,1,a,I(s),t)),until:(a,s,t)=>n(hc(Tu,0,a,Ys(s),t)),since:(a,s,t)=>n(hc(Tu,1,a,Ys(s),t)),equals:(a,s)=>Od(a,Ys(s)),toPlainDate(a,s){return E(hf(Mt,a,this,s))},toLocaleString(a,s,t){const[i,o]=ih(s,t,a);return i.format(o)},toString:Eo,toJSON:(a)=>Eo(a),valueOf:is},{from:(a,s)=>ts(Ys(a,s)),compare:(a,s)=>Ps(Ys(a),Ys(s))}),[Oh,K]=La(ws,D(Xd,X),{...Rt,...mr,...pr},{getISOFields:nt,getCalendar:vt,with(a,s,t){return K(zd(Mt,a,this,Xs(s),t))},withCalendar:(a,s)=>K(wi(a,X(s))),withPlainDate:(a,s)=>K(Ff(a,ca(s))),withPlainTime:(a,s)=>K(vf(a,dr(s))),add:(a,s,t)=>K(qo(vs,0,a,I(s),t)),subtract:(a,s,t)=>K(qo(vs,1,a,I(s),t)),until:(a,s,t)=>n(mc(Za,0,a,as(s),t)),since:(a,s,t)=>n(mc(Za,1,a,as(s),t)),round:(a,s)=>K(Cl(a,s)),equals:(a,s)=>Pd(a,as(s)),toZonedDateTime:(a,s,t)=>$(rf(R,a,M(s),t)),toPlainDate:(a)=>E(N(a)),toPlainTime:(a)=>ss(Sa(a)),toPlainYearMonth(a){return ts(lf($i,a,this))},toPlainMonthDay(a){return Ks(df(zi,a,this))},toLocaleString(a,s,t){const[i,o]=ah(s,t,a);return i.format(o)},toString:xo,toJSON:(a)=>xo(a),valueOf:is},{from:(a,s)=>K(as(a,s)),compare:(a,s)=>dc(as(a),as(s))}),[yh,E,Fu]=La(Ds,D(kd,X),{...Rt,...mr},{getISOFields:nt,getCalendar:vt,with(a,s,t){return E(_d(Mt,a,this,Xs(s),t))},withCalendar:(a,s)=>E(wi(a,X(s))),add:(a,s,t)=>E(Uo(vs,0,a,I(s),t)),subtract:(a,s,t)=>E(Uo(vs,1,a,I(s),t)),until:(a,s,t)=>n(pc(Za,0,a,ca(s),t)),since:(a,s,t)=>n(pc(Za,1,a,ca(s),t)),equals:(a,s)=>bd(a,ca(s)),toZonedDateTime(a,s){const t=!G(s)||s instanceof Ni?{timeZone:s}:s;return $(ff(M,ea,R,a,t))},toPlainDateTime:(a,s)=>K(uf(a,dr(s))),toPlainYearMonth(a){return ts(mf($i,a,this))},toPlainMonthDay(a){return Ks(pf(zi,a,this))},toLocaleString(a,s,t){const[i,o]=sh(s,t,a);return i.format(o)},toString:Io,toJSON:(a)=>Io(a),valueOf:is},{from:(a,s)=>E(ca(a,s)),compare:(a,s)=>Ps(ca(a),ca(s))}),hr={fields(a,s,t){return[...s.call(a,t)]}},Ru=Object.assign({dateFromFields(a,s,t,i){return Fu(s.call(a,Object.assign(Object.create(null),t),i))}},hr),nu=Object.assign({yearMonthFromFields(a,s,t,i){return bh(s.call(a,Object.assign(Object.create(null),t),i))}},hr),Mu=Object.assign({monthDayFromFields(a,s,t,i){return mh(s.call(a,Object.assign(Object.create(null),t),i))}},hr),gr={mergeFields(a,s,t,i){return Aa(s.call(a,Object.assign(Object.create(null),t),Object.assign(Object.create(null),i)))}},Dh=Object.assign({},Ru,gr),wh=Object.assign({},nu,gr),Sh=Object.assign({},Mu,gr),Tr={dateAdd(a,s,t,i,o){return Fu(s.call(a,E(N(t,a)),n(C(i)),o))}},ju=Object.assign({},Tr,{dateUntil(a,s,t,i,o,c){return jh(s.call(a,E(N(t,a)),E(N(i,a)),Object.assign(Object.create(null),c,{largestUnit:bt[o]})))}}),vh=Object.assign({},Tr,{day:Ou}),Fh=Object.assign({},ju,{day:Ou}),$i=xa(nu),Ji=xa(Ru),zi=xa(Mu),Rh=xa(wh),Mt=xa(Dh),nh=xa(Sh),vs=xa(Tr),Za=xa(ju),gu=xa(vh),Tu=xa(Fh),[Mh,n,jh]=La(Li,sf,{...fh,blank:Yl},{with:(a,s)=>n(Qd(a,s)),negated:(a)=>n(mi(a)),abs:(a)=>n(Ql(a)),add:(a,s,t)=>n(Vo(St,Za,R,0,a,I(s),t)),subtract:(a,s,t)=>n(Vo(St,Za,R,1,a,I(s),t)),round:(a,s)=>n(Ul(St,Za,R,a,s)),total:(a,s)=>nl(St,Za,R,a,s),toLocaleString(a,s,t){return Intl.DurationFormat?new Intl.DurationFormat(s,t).format(this):ri(a)},toString:ri,toJSON:(a)=>ri(a),valueOf:is},{from:(a)=>n(I(a)),compare:(a,s,t)=>hd(St,vs,R,I(a),I(s),t)}),Cu={toString:(a)=>a.id,toJSON:(a)=>a.id,...ch,dateAdd:({id:a,o:s},t,i,o)=>E(N(s.dateAdd(ca(t),I(i),o),a)),dateUntil:({o:a},s,t,i)=>n(C(a.dateUntil(ca(s),ca(t),bl(i)))),dateFromFields:({id:a,o:s},t,i)=>E(bc(s,t,i,Vr(a))),yearMonthFromFields:({id:a,o:s},t,i)=>ts(Oc(s,t,i,Xr(a))),monthDayFromFields:({id:a,o:s},t,i)=>Ks(yc(s,0,t,i,kr(a))),fields({o:a},s){const t=new Set(va),i=[];for(let o of s){if(x(o),!t.has(o))throw new RangeError(jc(o));t.delete(o),i.push(o)}return a.fields(i)},mergeFields:({o:a},s,t)=>a.mergeFields(lo(mo(s)),lo(mo(t)))},[Pr]=La("Calendar",(a)=>{const s=jd(a);return{branding:"Calendar",id:s,o:Us(s)}},{id:(a)=>a.id},Cu,{from(a){const s=X(a);return typeof s=="string"?new Pr(s):s}}),Ch=Pu(Object.keys(Cu).slice(4)),[Zh,$]=La(za,D(Kd,X,M),{...Su,...Rt,...pu(mr),...pu(pr),offset:(a)=>hs(cr(a).offsetNanoseconds),offsetNanoseconds:(a)=>cr(a).offsetNanoseconds,timeZoneId:(a)=>Q(a.timeZone),hoursInDay:(a)=>Ll(R,a)},{getISOFields:(a)=>Gl(J,a),getCalendar:vt,getTimeZone:({timeZone:a})=>typeof a=="string"?new Ni(a):a,with(a,s,t){return $(Jd(Mt,R,a,this,Xs(s),t))},withCalendar:(a,s)=>$(wi(a,X(s))),withTimeZone:(a,s)=>$(Rf(a,M(s))),withPlainDate:(a,s)=>$(Sf(R,a,ca(s))),withPlainTime:(a,s)=>$(wf(R,a,dr(s))),add:(a,s,t)=>$(Go(vs,R,0,a,I(s),t)),subtract:(a,s,t)=>$(Go(vs,R,1,a,I(s),t)),until:(a,s,t)=>n(C(uc(Za,R,0,a,Bs(s),t))),since:(a,s,t)=>n(C(uc(Za,R,1,a,Bs(s),t))),round:(a,s)=>$(jl(R,a,s)),startOfDay:(a)=>$(xl(R,a)),equals:(a,s)=>Td(a,Bs(s)),toInstant:(a)=>oa(tf(a)),toPlainDateTime:(a)=>K(vc(J,a)),toPlainDate:(a)=>E(Fc(J,a)),toPlainTime:(a)=>ss(Rc(J,a)),toPlainYearMonth(a){return ts(of($i,a,this))},toPlainMonthDay(a){return Ks(cf(zi,a,this))},toLocaleString(a,s,t={}){const[i,o]=ep(s,t,a);return i.format(o)},toString:(a,s)=>Lo(J,a,s),toJSON:(a)=>Lo(J,a),valueOf:is},{from:(a,s)=>$(Bs(a,s)),compare:(a,s)=>lc(Bs(a),Bs(s))}),Lh=Object.defineProperties({},{...qt("Temporal.Now"),...us({timeZoneId:()=>$a(),instant:()=>oa(q(gt())),zonedDateTime:(a,s=$a())=>$(B(gt(),M(s),X(a))),zonedDateTimeISO:(a=$a())=>$(B(gt(),M(a),w)),plainDateTime:(a,s=$a())=>K(W(zs(J(M(s))),X(a))),plainDateTimeISO:(a=$a())=>K(W(zs(J(M(a))),w)),plainDate:(a,s=$a())=>E(N(zs(J(M(s))),X(a))),plainDateISO:(a=$a())=>E(N(zs(J(M(a))),w)),plainTimeISO:(a=$a())=>ss(Sa(zs(J(M(a)))))})}),Fs=Object.defineProperties({},{...qt("Temporal"),...us({PlainYearMonth:Ph,PlainMonthDay:uh,PlainDate:yh,PlainTime:Th,PlainDateTime:Oh,ZonedDateTime:Zh,Instant:ph,Calendar:Pr,TimeZone:Ni,Duration:Mh,Now:Lh})}),xh=Yp(),br=new WeakMap,Ih=Object.defineProperties(Object.create(Intl),us({DateTimeFormat:xh}));class Rs extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class Or{createSession(){throw new Rs}deleteSession(){throw new Rs}findSession(){throw new Rs}findUserByEmailAddress(){throw new Rs}updateSession(){throw new Rs}createUser(){throw new Rs}}class Iu extends Ra{constructor(){super(...arguments)}schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Eu extends Ra{constructor(){super(...arguments)}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 Hu extends Ra{constructor(){super(...arguments)}schema={email:{required:"Email is required",email:"Invalid email"}}}class Au extends Ra{constructor(){super(...arguments)}schema={password:{required:"Password is required",password:"Invalid password"}}}class cs extends Zu{constructor(){super(...arguments)}provider=jt.getStore().authenticationServiceProvider;async me(){const a=await _i.user();if(!a)throw new xu;return a}async signIn(a=new Iu){const s=await a.input.call(a),{email:t,password:i}=s.toJSON(),o=await this.provider.adapter.findUserByEmailAddress(t);if(!o)throw new os({invalid_credentials:["Invalid credentials"]});if(!await this.provider.verifyPassword(i,o.password))throw new os({invalid_credentials:["Invalid credentials"]});const r=a.headers.get("User-Agent"),l=new Bun.CryptoHasher("sha256");l.update(`${o.email}${r}`);const d=l.digest("hex");let f=await this.provider.adapter.findSession({token:d,userAgent:"local"});if(!f)f=await this.provider.adapter.createSession({token:d,userId:o.id,userAgent:"local",expiresAt:new Date(Fs.Now.instant().add({hours:this.provider.sessionExpiresInHours}).toString()),absoluteExpiresAt:new Date(Fs.Now.instant().add({hours:this.provider.sessionAbsoluteExpiresInHours}).toString())});else f=await this.provider.adapter.updateSession({token:d,expiresAt:new Date(Fs.Now.instant().add({hours:this.provider.sessionExpiresInHours}).toString())});return a.ctx.setCookie("access_token",f.token,{expires:f.expiresAt}),await this.provider.onSignIn(o),o}async signUp(a=new Eu){const s=await a.input(),{email:t,password:i,name:o}=s.toJSON();if(await this.provider.adapter.findUserByEmailAddress(t))throw new os({email:["Email address already exists"]});const r=await this.provider.hashPassword(i),l=await this.provider.adapter.createUser({email:t,name:o,password:r});return await this.provider.onSignUp(l),l}async signOut(a=new Ra){const s=a.cookies.get("access_token"),t=await _i.user();return await this.provider.adapter.deleteSession({token:s}),a.ctx.setCookie("access_token","",{expires:new Date(0)}),await this.provider.onSignOut(t),{}}async forgotPassword(a=new Hu){const s=await a.input(),{email:t}=s.toJSON(),i=await this.provider.adapter.findUserByEmailAddress(t);if(!i)return{};const o=await this.provider.generateForgotPasswordToken(i);return await this.provider.adapter.createPasswordResetToken({user:i,token:o}),await this.provider.onForgotPassword(i,o),{}}async resetPassword(a=new Au){const s=await a.input(),{password:t,token:i}=s.toJSON(),o=await this.provider.adapter.findPasswordResetToken({token:i});if(!o)throw new os({token:["Invalid token"]});if(Fs.Instant.from(o.createdAt.toISOString()).add({hours:24}).until(Fs.Now.instant()).sign>=0)throw new os({token:["Token expired"]});await this.provider.adapter.deletePasswordResetToken({token:i});const r=await this.provider.adapter.findUserByEmailAddress(o.user.email);if(!r)throw new os({email:["User not found"]});const l=await this.provider.hashPassword(t);return await this.provider.adapter.updateUserPassword({id:r.id,password:l}),await this.provider.adapter.deleteAllUserSessions(r.id),await this.provider.onResetPassword(r),{}}async changePassword(a=new Ra){const s=await _i.user(),t=await a.input(),{oldPassword:i,newPassword:o}=t.toJSON(),{password:c}=await this.provider.adapter.findUserByEmailAddress(s.email);if(!await this.provider.verifyPassword(i,c))throw new os({oldPassword:["Incorrect password"]});const l=await this.provider.hashPassword(o);return await this.provider.adapter.updateUserPassword({id:s.id,password:l}),await this.provider.adapter.deleteAllUserSessions(s.id),{}}}class Wu extends Gi{constructor(){super(...arguments)}routes={"/sign-in":this.post(cs,"signIn"),"/sign-up":this.post(cs,"signUp"),"/sign-out":this.post(cs,"signOut"),"/forgot-password":this.post(cs,"forgotPassword"),"/reset-password":this.post(cs,"resetPassword"),"/change-password":this.post(cs,"changePassword"),"/me":this.get(cs,"me")}}class Nu extends Lu{constructor(){super(...arguments)}routes={"/sign-in":this.view("auth/SignIn"),"/sign-up":this.view("auth/SignUp"),"/reset-password":this.view("auth/ResetPassword"),"/forgot-password":this.view("auth/ForgotPassword")}}class qi{basePath="/auth";routers={api:Wu,view:Nu};sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new Or;async verifyPassword(a,s){return await Bun.password.verify(a,s)}async hashPassword(a){return await Bun.password.hash(a)}async generateForgotPasswordToken(a){const s=new Bun.CryptoHasher("sha256");return s.update(`${a.email}${Date.now()}`),s.digest("hex")}onSignUp(a){}onSignIn(a){}onSignOut(a){}onForgotPassword(a,s){}onResetPassword(a){}}class $u extends Gi{constructor(){super(...arguments)}routes={"/translations":this.get(async(a=new Ra)=>{const s=await a.input(),{scope:t,locale:i}=s.toJSON(),o=i??jt.getStore().i18nServiceContainer.detectLocale(a),c=jt.getStore().i18nServiceContainer.getPageTranslations(o,t);return a.ctx.setHeaders("Cache-Control",a.ctx.user?"private, max-age=1200, must-revalidate":"public, max-age=864000, must-revalidate"),a.ctx.setCookie("i18n-locale",o,{expires:new Date(Date.now()+31536000000)}),{[o]:c}})}}class yr{a;constructor(a){this.service=a}isEnabled=!1;translations=new Map;supportedLocales=[];routers={api:$u};boot(){const a=new Map;for(let[t,i]of Object.entries(this.service.dictionary))for(let[o,c]of Object.entries(i))for(let[r,l]of Object.entries(c)){const d=r==="default"?this.service.defaultLocale:r;if(!a.has(`${d}.${t}`))a.set(`${d}.${t}`,new Map);a.get(`${d}.${t}`)?.set(o,l),this.isEnabled=!0}let s=new Set;for(let[t,i]of a.entries())this.translations.set(t,Object.fromEntries(i.entries())),s.add(t.split(".")[0]);this.supportedLocales=Array.from(s)}detectLocale(a){const s=this.service.detectLocale(a);if(this.supportedLocales.includes(s))return s;const i=a.cookies.get("i18n-locale")??(a.headers.get("accept-language")||"en-US"),[o]=i.split(",");if(this.supportedLocales.includes(o))return o;const c=this.service.defaultLocale??this.supportedLocales[0];if(c)return c;return"en-US"}getPageTranslations(a,s){if(!s)return{};const t=this.translations.get(`${a}.view:${s}`)??{},i={[`view:${s}`]:t};for(let[o]of this.translations.entries()){const c=o.split(".")[1];if(!c.startsWith("layout:"))continue;const r=c.split(":")[1];if(s?.startsWith(r))i[c]=this.translations.get(`${a}.${c}`)??{}}return i}}class Dr{a;constructor(a){this.service=a}}class Sr{a;constructor(a){this.service=a}getRouteHandlerAndParams(a){const t=new URL(a.url).pathname.replace("/api","");let i={},o;for(let[c]of Object.entries(this.service.flatRoutes))try{const r=new URLPattern({pathname:c});if(r.test({pathname:t})){o=c,i=r.exec({pathname:t})?.pathname.groups;break}}catch(r){console.error(r)}return{params:i,path:o}}async runRouteMiddleware(a){const s=ns.getStore(),i=this.service.flatRoutes[a][s.req.rawRequest.method].middleware;try{await Ui.getContext().middlewareServiceContainer.runMiddleware(i,a)}catch(o){if(o.kind===wr){if(s.req.rawRequest.url.includes("/api")){const{status:c=400,data:r,headers:l}=o.payload.api;return new Response(JSON.stringify(r),{status:c,headers:{"Content-Type":"application/json",...l}})}}else throw console.error(o),o}}async getRouteData(a){const s=this.service.flatRoutes[a],t=ns.getStore(),i=s[t.req.rawRequest.method].exec??(()=>Promise.resolve({}));let o={};try{o=await i()}catch(c){if(c.kind===wr){const{status:r=400,data:l,headers:d}=c.payload.api;return new Response(JSON.stringify(l),{status:r,headers:{"Content-Type":"application/json",...d}})}else throw console.error(c),c}return o}async handleApiRequest(a){const{params:s,path:t}=this.getRouteHandlerAndParams(a),i=this.service.flatRoutes[t];if(!i||!i[a.method])return new Response(JSON.stringify({error:{message:"Not found"}}),{status:404});const o=new Ra(a,s);return await ns.run(o,async()=>{const c=await this.runRouteMiddleware(t);if(c instanceof Response)return c;const r=await this.getRouteData(t);if(r instanceof Response)return r;const l=ns.getStore(),d=l.headers;if(d.append("Content-Type","application/json"),!d.get("Cache-Control"))if(l.user)d.set("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");else d.set("Cache-Control","public, no-cache, no-store, max-age=0, must-revalidate");return l.cookies.forEach((f)=>d.append("Set-Cookie",f.toString())),l.destroy(),new Response(JSON.stringify(r),{headers:d})})}}var Eh=function(a){return Qi(a)};function vr(a){const s={};for(let[t,i]of Object.entries(a))if("run"in i){const o=i;if(!s[t])s[t]={};const{method:c,middlewares:r}=o,l=o.run.bind(o);s[t][c]={exec:l,middleware:r}}else if(Eh(i)){const o=new i,c=vr(o.routes);for(let[r,l]of Object.entries(c)){const d=r==="/"?"":r,f=t==="/"?"":t,u=`${f}${d}`===""?"/":`${f}${d}`;if(!s[u])s[u]={};for(let[m,p]of Object.entries(l))s[u][m]={exec:p.exec,middleware:[o.middleware,...o.middlewares,...p.middleware]}}}else for(let o of Object.values(i)){if(!s[t])s[t]={};const{method:c,middlewares:r}=o,l=o.run.bind(o);s[t][c]={exec:l,middleware:r}}return Object.fromEntries(Object.entries(s).sort(([t],[i])=>{const o=t.split("/").length+t.split(":").length,c=i.split("/").length+i.split(":").length;return o-c}))}class Fr extends Ju{constructor(){super(...arguments)}flatRoutes={};boot(a){this.flatRoutes=vr(a)}}var Hh=function(a){const s=new Map;for(let t of a)if(typeof t==="string"){const[i,o=""]=t.split(":");if(i.startsWith("-")){if(s.has(i.replace("-","")))s.delete(i.replace("-",""))}else s.set(i,o.split(","))}else s.set(t,[]);return s};class Rr{a;constructor(a){this.service=a}runMiddleware(a,s){const t=ns.getStore().req;return Array.from(Hh(a).entries()).map(([i,o])=>{if(typeof i==="string"){const c=this.service.aliases[i];if(c){const r=new c(s);return(l)=>r.run.call(r,l,...o)}}else{if(Qi(i)){const c=new aliasOrTest(s);return c.run.bind(c)}return i}}).filter(Boolean).reduce((i,o)=>{return async(c,r)=>{return{...await i(c,r),...await o(c,r)}}},(i)=>Promise.resolve({}))(t)}}class nr{a;constructor(a){this.service=a}}import{AsyncLocalStorage as Ah} from"async_hooks";class Mr extends zu{a;name="broadcastingServiceContainer";publishCb;context=new Ah;constructor(a){super();this.service=a}onPublish(a){this.publishCb=a}publish(...a){const[s,t,i]=a;this.publishCb(s,t,i)}async handleMessage(a,s){const t=JSON.parse(s);if(t.type==="subscribe"){const i=Object.entries(this.service.channels).sort(([o],[c])=>o.length-c.length);for(let[o,c]of i){const r=new URLPattern({pathname:o});if(r.test({pathname:t.topic})){const l=r.exec({pathname:t.topic})?.pathname.groups,d=new c;if(await d.subscribe.call(d,l))a.subscribe(t.topic)}break}}if(t.type==="broadcast")a.publish(t.topic,JSON.stringify({topic:t.topic,data:t.payload}));if(t.type==="unsubscribe")a.unsubscribe(t.topic)}run(a,s){const t=a.get("Cookie"),i=new Map;if(t){const o=t.split(";");for(let c of o){const[r,l]=c.split("=");i.set(r.trim(),l.trim())}}this.context.run({headers:a,cookies:i},s)}}class Ui{emailServiceProvider=Bu;authenticationServiceProvider=qi;middlewareServiceProvider=_u;policiesServiceProvider=Gu;i18nServiceProvider=qu;fileStorageServiceProvider=Qu;apiRouterServiceProvider=Fr;rateLimiterServiceProvider=Yu;broadcastingsServiceProvider=Ku;services;getServices=()=>{if(!this.services)this.services={emailServiceContainer:new Uu(new this.emailServiceProvider),authenticationServiceProvider:new this.authenticationServiceProvider,middlewareServiceContainer:new Rr(new this.middlewareServiceProvider),policiesServiceProvider:new this.policiesServiceProvider,i18nServiceContainer:new yr(new this.i18nServiceProvider),fileStorageServiceContainer:new Dr(new this.fileStorageServiceProvider),apiRouterServiceContainer:new Sr(new this.apiRouterServiceProvider),rateLimiterServiceContainer:new nr(new this.rateLimiterServiceProvider),broadcastingServiceContainer:new Mr(new this.broadcastingsServiceProvider)};return this.services};static getContext=()=>jr.getStore();run(a){const s=this.getServices();return jr.run(s,a)}}class Xu{a;constructor(a){this.prisma=a}async createSession(a){return await this.prisma.session.create({data:a,include:{user:!0}})}async createUser(a){return await this.prisma.user.create({data:a})}async deleteSession(a){return await this.prisma.session.deleteMany({where:{token:a.token}})}async findUserByEmailAddress(a){return await this.prisma.user.findUnique({where:{email:a}})}async findSession(a){if(!a.token)return null;try{return await this.prisma.session.findUnique({where:{token:a.token,userAgent:"local"},include:{user:{select:{password:!1,id:!0,email:!0,globalRole:!0,name:!0,publicId:!0,accounts:{select:{id:!0,publicId:!0,organization:!0,organizationRole:!0}}}}}})}catch(s){return console.log(s),null}}async updateSession(a){return await this.prisma.session.update({where:{token:a.token},data:{expiresAt:a.expiresAt},include:{user:{select:{password:!1,email:!0,globalRole:!0,name:!0,publicId:!0,accounts:{select:{id:!0,publicId:!0,organization:!0,organizationRole:!0}},organization:!0}}}})}async updateUserPassword(a){return await this.prisma.user.update({where:{id:a.id},data:{password:a.password}})}async createPasswordResetToken(a){return await this.prisma.passwordResetToken.create({data:{user:{connect:{id:a.user.id}},token:a.token}})}async findPasswordResetToken(a){const{token:s}=a;return await this.prisma.passwordResetToken.findUnique({where:{token:s},include:{user:!0}})}async deleteAllUserSessions(a){return await this.prisma.session.deleteMany({where:{userId:a}})}async deletePasswordResetToken(a){const{token:s}=a;return await this.prisma.passwordResetToken.delete({where:{token:s}})}}export{Xu as PrismaAuthenticationAdapter,Ui as Kernel,qi as AuthenticationServiceProvider};
2
+ import{a as xf,b as Qi,c as Gi,d as Lf,e as Sc,g as os,h as Rs,i as Fa,j as Gf,k as If,m as qf,n as Uf} from"../http/index.js";import{o as _i} from"../facades/index.js";import{p as Yf,q as zf,r as Bf,s as Kf,t as Xf} from"../services/index.js";import"../chunk-19790c50198f1898.js";import{A as jt,z as Cc} from"../chunk-9475c6ed18013dc8.js";import"../chunk-24a86f8f5ddc0cbd.js";import"../chunk-332553172e3ab961.js";import{E as _f,F as Qf} from"../chunk-7d5fe4acabfee228.js";import"../chunk-0ba2cc302113ab40.js";import"../chunk-28694e5e949df0ff.js";import"../chunk-d1e1b959b1124e74.js";import"../chunk-967cb54562e3d29b.js";import"../chunk-201d67e6e22cc14b.js";import"../chunk-931a005d4bb28ffe.js";import"../chunk-bdac4694bbb37064.js";import"../chunk-f6a9cd06681eb0dc.js";import"../chunk-fcd9eb76c67113d3.js";var xa=function(a,s,t,i,o){function r(...d){if(!(this instanceof r))throw new TypeError(Cr);gf(this,s(...d))}function c(d,u){return Object.defineProperties(function(...f){return d.call(this,l(this),...f)},ro(u))}function l(d){const u=k(d);if(!u||u.branding!==a)throw new TypeError(Cr);return u}return Object.defineProperties(r.prototype,{...Qc(ya(c,t)),...fs(ya(c,i)),...qt("Temporal."+a)}),Object.defineProperties(r,{...fs(o),...ro(a)}),[r,(d)=>{const u=Object.create(r.prototype);return gf(u,d),u},l]},bf=function(a){return a=a.concat("id").sort(),(s)=>{if(!Yc(s,a))throw new TypeError(Au);return s}},Xs=function(a){if(k(a)||a.calendar!==void 0||a.timeZone!==void 0)throw new TypeError(Zu);return a},Ai=function(a,s){const t={};for(let i in a)t[i]=({o},r)=>{const c=k(r)||{},{branding:l}=c,d=l===Ds||s.includes(l)?c:ra(r);return o[i](d)};return t},lc=function(a){const s={};for(let t in a)s[t]=(i)=>{const{calendar:o}=i;return(r=o,typeof r=="string"?Us(r):(c=r,Object.assign(Object.create(uh),{i:c})))[t](i);var r,c};return s},is=function(){throw new TypeError(Lu)},vt=function({calendar:a}){return typeof a=="string"?new Tc(a):a},pf=function(a,s){if(s=H(s),G(a)){const i=k(a);if(i&&i.branding===qs)return S(s),i;const o=Df(a);return yr(zi(o||w),!o,a,s)}const t=td(Us,a);return S(s),t},Of=function(a,s,t){return i=s.call(a,oa(q(t))),Jo(ut(i));var i},Ei=function(a,s=nf){const t=Object.keys(s).sort(),i={};for(let o of t)i[o]=D(s[o],a,Ku(a[o]));return i},F=function(a,s){return typeof a=="string"?Li(a):Ei(a,s)},J=function(a){return F(a,cc)},Ca=function(a){if(G(a)){const s=k(a);if(s)switch(s.branding){case Zi:return s;case za:return q(s.epochNanoseconds)}}return kl(a)};var mf=function(a,s,t){const i=s.l(Ca(t).epochNanoseconds,a);return i?oa(q(i)):null},M=function(a){return G(a)?(k(a)||{}).timeZone||Ph(a):((s)=>Pi(cd(L(s))))(a)},ea=function(a,s){if(G(a)){const t=k(a)||{};switch(t.branding){case Ci:return S(s),t;case ws:return S(s),Sa(t);case za:return S(s),Fr(J,t)}return $d(a,s)}return S(s),id(a)},dc=function(a){return a===void 0?void 0:ea(a)},Ys=function(a,s){if(s=H(s),G(a)){const i=k(a);return i&&i.branding===Gs?(S(s),i):Or($i(nt(a)),a,s)}const t=sd(Us,a);return S(s),t},as=function(a,s){if(s=H(s),G(a)){const i=k(a)||{};switch(i.branding){case ws:return S(s),i;case Ds:return S(s),W({...i,...Oa});case za:return S(s),vr(J,i)}return Nd(Ji(nt(a)),a,s)}const t=ad(a);return S(s),t},ra=function(a,s){if(s=H(s),G(a)){const i=k(a)||{};switch(i.branding){case Ds:return S(s),i;case ws:return S(s),N(i);case za:return S(s),nr(J,i)}return br(Ji(nt(a)),a,s)}const t=hi(a);return S(s),t},yf=function(a,s,t){return Da(s.call(a,A(N(t,a))))},La=function(a){return(s)=>typeof s=="string"?Us(s):((t,i)=>{const o=Object.keys(i).sort(),r={};for(let c of o)r[c]=D(i[c],t,t[c]);return r})(s,a)},I=function(a){if(G(a)){const s=k(a);return s&&s.branding===xi?s:Jd(a)}return od(a)},St=function(a){if(a!==void 0){if(G(a)){const s=k(a)||{};switch(s.branding){case za:case Ds:return s;case ws:return N(s)}const t=nt(a);return{...Hd(M,F,Ji(t),a),calendar:t}}return Vl(a)}},nt=function(a){return Df(a)||w},Df=function(a){const{calendar:s}=a;if(s!==void 0)return X(s)},X=function(a){return G(a)?(k(a)||{}).calendar||Zh(a):((s)=>mt(rd(L(s))))(a)},Bs=function(a,s){if(s=H(s),G(a)){const t=k(a);if(t&&t.branding===za)return ft(s),t;const i=nt(a);return Wd(M,F,Ji(i),i,a,s)}return el(a,s)},hf=function(a){return ya((s)=>(t)=>s(rc(t)),a)},rc=function(a){return ta(a,J)},Bm=function(){const a=Va.prototype,s=Object.getOwnPropertyDescriptors(a),t=Object.getOwnPropertyDescriptors(Va),i=function(o,r={}){if(!(this instanceof i))return new i(o,r);bc.set(this,((c,l={})=>{const d=new Va(c,l),u=d.resolvedOptions(),f=u.locale,p=pa(Object.keys(l),u),m=ua(km),h=(...g)=>{let P;const T=g.map((O,b)=>{const y=k(O),E=(y||{}).branding;if(b&&P&&P!==E)throw new TypeError(Wu);return P=E,y});return P?m(P)(f,p,...T):[d,...g]};return h.u=d,h})(o,r))};for(let o in s){const r=s[o],c=o.startsWith("format")&&Km(o);typeof r.value=="function"?r.value=o==="constructor"?i:c||Xm(o):c&&(r.get=function(){return c.bind(this)})}return t.prototype.value=Object.create(a,s),Object.defineProperties(i,t),i},Km=function(a){return function(...s){const t=bc.get(this),[i,...o]=t(...s);return i[a](...o)}},Xm=function(a){return function(...s){return bc.get(this).u[a](...s)}},km=function(a){const s=Vm[a];if(!s)throw new TypeError(Hu(a));return Na(s,ua(Rr))};var ca=function(a,s,t,i,o){return Pa(s,Uc(a,s),t,i,o)},Pa=function(a,s,t,i,o,r){const c=ki(s,t,i);if(o&&s!==c)throw new RangeError(ju(a,s,t,i,r));return c},Uc=function(a,s){const t=a[s];if(t===void 0)throw new TypeError(Mr(s));return t},G=function(a){return a!==null&&/object|function/.test(typeof a)},ua=function(a,s=Map){const t=new s;return(i,...o)=>{if(t.has(i))return t.get(i);const r=a(i,...o);return t.set(i,r),r}},ro=function(a){return fs({name:a},1)},fs=function(a,s){return ya((t)=>({value:t,configurable:1,writable:!s}),a)},Qc=function(a){return ya((s)=>({get:s,configurable:1}),a)},qt=function(a){return{[Symbol.toStringTag]:{value:a,configurable:1}}},Is=function(a,s){const t={};let i=a.length;for(let o of s)t[a[--i]]=o;return t},ya=function(a,s,t){const i={};for(let o in s)i[o]=a(s[o],o,t);return i},lt=function(a,s,t){const i={};for(let o=0;o<s.length;o++){const r=s[o];i[r]=a(r,o,t)}return i},ef=function(a,s,t){const i={};for(let o=0;o<a.length;o++)i[s[o]]=t[a[o]];return i},pa=function(a,s){const t={};for(let i of a)t[i]=s[i];return t},co=function(a,s){const t={};for(let i in s)a.has(i)||(t[i]=s[i]);return t},lo=function(a){a={...a};const s=Object.keys(a);for(let t of s)a[t]===void 0&&delete a[t];return a},Yc=function(a,s){for(let t of s)if(!(t in a))return 0;return 1},Bc=function(a,s,t){for(let i of a)if(s[i]!==t[i])return 0;return 1},Kc=function(a,s,t){const i={...t};for(let o=0;o<s;o++)i[a[o]]=0;return i},D=function(a,...s){return(...t)=>a(...s,...t)},Zc=function(a){return a[0].toUpperCase()+a.substring(1)},dt=function(a){return a.slice().sort()},Et=function(a,s){return String(s).padStart(a,"0")},_a=function(a,s){return Math.sign(a-s)},ki=function(a,s,t){return Math.min(Math.max(a,s),t)},Aa=function(a,s){return[Math.floor(a/s),at(a,s)]},at=function(a,s){return(a%s+s)%s},Ua=function(a,s){return[Ut(a,s),uo(a,s)]},Ut=function(a,s){return Math.trunc(a/s)||0},uo=function(a,s){return a%s||0},Ct=function(a){return Math.abs(a%1)===0.5},Xc=function(a,s,t){let i=0,o=0;for(let l=0;l<=s;l++){const d=a[t[l]],u=Ma[l],f=n/u,[p,m]=Ua(d,f);i+=m*u,o+=p}const[r,c]=Ua(i,n);return[o+r,c]},Qt=function(a,s,t){const i={};for(let o=s;o>=0;o--){const r=Ma[o];i[t[o]]=Ut(a,r),a=uo(a,r)}return i},kc=function(a){return a===w?Ri:[]},Vc=function(a){return a===w?Ot:[]},ec=function(a){return a===w?["year","day"]:[]},al=function(a){if(a!==void 0)return L(a)},sl=function(a){if(a!==void 0)return Da(a)},fo=function(a){if(a!==void 0)return ut(a)},Da=function(a){return ol(ut(a))},ut=function(a){return il(qp(a))},po=function(a){if(a==null)throw new TypeError("Cannot be null or undefined");return a},tl=function(a,s){if(s==null)throw new RangeError(Mr(a));return s},Ha=function(a){if(!G(a))throw new TypeError(Mu);return a},Yt=function(a,s,t=a){if(typeof s!==a)throw new TypeError(Pt(t,s));return s},il=function(a,s="number"){if(!Number.isInteger(a))throw new RangeError(Pp(s,a));return a||0},ol=function(a,s="number"){if(a<=0)throw new RangeError(Tp(s,a));return a},mo=function(a){if(typeof a=="symbol")throw new TypeError(Dp);return String(a)},Ht=function(a,s){return G(a)?String(a):L(a,s)},Bt=function(a){if(typeof a=="string")return BigInt(a);if(typeof a!="bigint")throw new TypeError(yp(a));return a},rl=function(a,s="number"){if(typeof a=="bigint")throw new TypeError(Op(s));if(a=Number(a),!Number.isFinite(a))throw new RangeError(bp(s,a));return a},V=function(a,s){return Math.trunc(rl(a,s))||0},cl=function(a,s){return il(rl(a,s),s)},xc=function(a,s){return ol(V(a,s),s)},ho=function(a,s){let[t,i]=Ua(s,n),o=a+t;const r=Math.sign(o);return r&&r===-Math.sign(i)&&(o-=r,i+=r*n),[o,i]},js=function(a,s,t=1){return ho(a[0]+s[0]*t,a[1]+s[1]*t)},Cs=function(a,s){return ho(a[0],a[1]+s)},ma=function(a,s){return js(s,a,-1)},aa=function(a,s){return _a(a[0],s[0])||_a(a[1],s[1])},ll=function(a,s,t){return aa(a,s)===-1||aa(a,t)===1},Kt=function(a,s=1){const t=BigInt(n/s);return[Number(a/t),Number(a%t)*s]},Zs=function(a,s=1){const t=n/s,[i,o]=Ua(a,t);return[i,o*s]},dl=function(a,s=1){const[t,i]=a,o=Math.floor(i/s),r=n/s;return BigInt(t)*BigInt(r)+BigInt(o)},ha=function(a,s=1,t){const[i,o]=a,[r,c]=Ua(o,s);return i*(n/s)+(r+(t?c/s:0))},go=function(a,s,t=Aa){const[i,o]=a,[r,c]=t(o,s);return[i*(n/s)+r,c]},Po=function(a,s){const t=a.formatToParts(s),i={};for(let o of t)i[o.type]=o.value;return i},To=function(a){return ca(a,"isoYear",ct,rt,1),a.isoYear===ct?ca(a,"isoMonth",4,12,1):a.isoYear===rt&&ca(a,"isoMonth",1,9,1),a},Ga=function(a){return Wa({...a,...Oa,isoHour:12}),a},Wa=function(a){const s=ca(a,"isoYear",ct,rt,1),t=s===ct?1:s===rt?-1:0;return t&&ga(e({...a,isoDay:a.isoDay+t,isoNanosecond:a.isoNanosecond-t})),a},ga=function(a){if(!a||ll(a,kp,Xp))throw new RangeError(Si);return a},Qa=function(a){return Xc(a,5,na)[1]},Xt=function(a){const[s,t]=Aa(a,n);return[Qt(t,5,na),s]},ul=function(a){return fl(a)[0]},fl=function(a){return go(a,ba)},sa=function(a){return As(a.isoYear,a.isoMonth,a.isoDay,a.isoHour,a.isoMinute,a.isoSecond,a.isoMillisecond)},e=function(a){const s=sa(a);if(s!==void 0){const[t,i]=Ua(s,da);return[t,i*ja+(a.isoMicrosecond||0)*ys+(a.isoNanosecond||0)]}},bo=function(a,s){const[t,i]=Xt(Qa(a)-s);return ga(e({...a,isoDay:a.isoDay+i,...t}))},Wt=function(...a){return As(...a)/$u},As=function(...a){const[s,t]=pl(...a),i=s.valueOf();if(!isNaN(i))return i-t*da},pl=function(a,s=1,t=1,i=0,o=0,r=0,c=0){const l=a===ct?1:a===rt?-1:0,d=new Date;return d.setUTCHours(i,o,r,c),d.setUTCFullYear(a,s-1,t+l),[d,l]},Ba=function(a,s){let[t,i]=Cs(a,s);i<0&&(i+=n,t-=1);const[o,r]=Aa(i,ja),[c,l]=Aa(r,ys);return kt(t*da+o,c,l)},kt=function(a,s=0,t=0){const i=Math.ceil(Math.max(0,Math.abs(a)-Kp)/da)*Math.sign(a),o=new Date(a-i*da);return Is(ji,[o.getUTCFullYear(),o.getUTCMonth()+1,o.getUTCDate()+i,o.getUTCHours(),o.getUTCMinutes(),o.getUTCSeconds(),o.getUTCMilliseconds(),s,t])},ml=function(a){return[a.isoYear,a.isoMonth,a.isoDay]},hl=function(){return Ia},Oo=function(a,s){switch(s){case 2:return yo(a)?29:28;case 4:case 6:case 9:case 11:return 30}return 31},gl=function(a){return yo(a)?366:365},yo=function(a){return a%4==0&&(a%100!=0||a%400==0)},Pl=function(a){const[s,t]=pl(a.isoYear,a.isoMonth,a.isoDay);return at(s.getUTCDay()-t,7)||7},Tl=function({isoYear:a}){return a<1?["bce",1-a]:["ce",a]},ap=function(a){const s=sa(a);if(s<ep)return Tl(a);const t=Po(Ur(xs),s),{era:i,eraYear:o}=Md(t,xs);return[i,o]},Vt=function(a){return ps(a),et(a,1),a},ps=function(a){return bl(a,1),a},Lc=function(a){return Bc(Wr,a,bl(a))},bl=function(a,s){const{isoYear:t}=a,i=ca(a,"isoMonth",1,hl(),s);return{isoYear:t,isoMonth:i,isoDay:ca(a,"isoDay",1,Oo(t,i),s)}},et=function(a,s){return Is(na,[ca(a,"isoHour",0,23,s),ca(a,"isoMinute",0,59,s),ca(a,"isoSecond",0,59,s),ca(a,"isoMillisecond",0,999,s),ca(a,"isoMicrosecond",0,999,s),ca(a,"isoNanosecond",0,999,s)])},S=function(a){return a===void 0?0:tf(Ha(a))},ft=function(a,s=0){a=wa(a);const t=of(a),i=um(a,s);return[tf(a),i,t]},Do=function(a){return of(wa(a))},Ol=function(a){return a=wa(a),Jr(a,9,6,1)},Es=function(a,s,t,i=9,o=0,r=4){s=wa(s);let c=Jr(s,i,o),l=vo(s),d=Dt(s,r);const u=yt(s,i,o,1);return c==null?c=Math.max(t,u):Sl(c,u),l=no(l,u,1),a&&(d=((f)=>f<4?(f+2)%4:f)(d)),[c,u,l,d]},ai=function(a,s=6,t){let i=vo(a=Fo(a,Gt));const o=Dt(a,7);let r=yt(a,s);return r=tl(Gt,r),i=no(i,r,void 0,t),[r,i,o]},wo=function(a){return zr(wa(a))},yl=function(a,s){return So(wa(a),s)},So=function(a,s=4){const t=wl(a);return[Dt(a,4),...Dl(yt(a,s),t)]},Dl=function(a,s){return a!=null?[Ma[a],a<4?9-3*a:-1]:[s===void 0?1:10**(9-s),s]},vo=function(a){const s=a[st];return s===void 0?1:V(s,st)},no=function(a,s,t,i){const o=i?n:Ma[s+1];if(o){const r=Ma[s];if(o%((a=Pa(st,a,1,o/r-(i?0:1),1))*r))throw new RangeError(Pt(st,a))}else a=Pa(st,a,1,t?1e9:1,1);return a},wl=function(a){let s=a[Xi];if(s!==void 0){if(typeof s!="number"){if(mo(s)==="auto")return;throw new RangeError(Pt(Xi,s))}s=Pa(Xi,Math.floor(s),0,9,1)}return s},wa=function(a){return a===void 0?{}:Ha(a)},Fo=function(a,s){return typeof a=="string"?{[s]:a}:Ha(a)},H=function(a){if(a!==void 0){if(G(a))return Object.assign(Object.create(null),a);throw new TypeError(Mu)}},si=function(a,s){return a&&Object.assign(Object.create(null),a,{overflow:sm[s]})},Ro=function(a,s,t=9,i=0,o){let r=s[a];if(r===void 0)return o?i:void 0;if(r=mo(r),r==="auto")return o?i:null;let c=so[r];if(c===void 0&&(c=Yp[r]),c===void 0)throw new RangeError(xu(a,r,so));return Pa(a,c,i,t,1,bt),c},ms=function(a,s,t,i=0){const o=t[a];if(o===void 0)return i;const r=mo(o),c=s[r];if(c===void 0)throw new RangeError(xu(a,r,s));return c},Sl=function(a,s){if(s>a)throw new RangeError($p)},q=function(a){return{branding:Zi,epochNanoseconds:a}},B=function(a,s,t){return{branding:za,calendar:t,timeZone:s,epochNanoseconds:a}},W=function(a,s=a.calendar){return{branding:ws,calendar:s,...pa(Vu,a)}},N=function(a,s=a.calendar){return{branding:Ds,calendar:s,...pa(Nr,a)}},ds=function(a,s=a.calendar){return{branding:Gs,calendar:s,...pa(Nr,a)}},Nt=function(a,s=a.calendar){return{branding:qs,calendar:s,...pa(Nr,a)}},Sa=function(a){return{branding:Ci,...pa(ku,a)}},C=function(a){return{branding:xi,sign:Ka(a),...pa(Ar,a)}},vl=function(a){return ul(a.epochNanoseconds)},ti=function(a){return go(a.epochNanoseconds,ja)[0]},nl=function(a){return dl(a.epochNanoseconds,ys)},Fl=function(a){return dl(a.epochNanoseconds)},Rl=function(a){return a.epochNanoseconds},Q=function(a){return typeof a=="string"?a:L(a.id)},Hs=function(a,s){return a===s||Q(a)===Q(s)},Ml=function(a,s,t,i,o){const r=us(i),[c,l]=((T,O)=>{const b=O((T=Fo(T,oo))[af]);let y=dm(T);return y=tl(oo,y),[y,b]})(o,a);if(it(Math.max(c,r),l))return Ic(i,c);if(!l)throw new RangeError(vi);const[d,u,f]=di(s,t,l),p=Xo(f),m=ui(f),h=ko(f),g=m(u,d,i),P=h(u,d,g,c);return it(c,l)?Ic(P,c):((T,O,b,y,E,Z,j)=>{const x=Ka(T),[U,z]=Mo(y,Hr(b,T),b,x,E,Z,j),ks=jo(O,U,z);return T[v[b]]+ks*x})(P,p(g),c,u,d,p,m)},Ic=function(a,s){return ha(_(a),Ma[s],1)},Mo=function(a,s,t,i,o,r,c){const l=v[t],d={...s,[l]:s[l]+i},u=c(a,o,s),f=c(a,o,d);return[r(u),r(f)]},jo=function(a,s,t){const i=ha(ma(s,t));if(!i)throw new RangeError(Tt);return ha(ma(s,a))/i},jl=function(a,s){const[t,i,o]=ai(s,5,1);return q(oi(a.epochNanoseconds,t,i,o,1))},Cl=function(a,s,t){let{epochNanoseconds:i,timeZone:o,calendar:r}=s;const[c,l,d]=ai(t);if(c===0&&l===1)return s;const u=a(o);if(c===6)i=((f,p,m,h)=>{const g=ta(m,p),[P,T]=f(g),O=m.epochNanoseconds,b=fa(p,P),y=fa(p,T);if(ll(O,b,y))throw new RangeError(Tt);return Nl(jo(O,b,y),h)?y:b})(Hl,u,s,d);else{const f=u.getOffsetNanosecondsFor(i);i=gs(u,Al(Ba(i,f),c,l,d),f,2,0,1)}return B(i,o,r)},Zl=function(a,s){return W(Al(a,...ai(s)),a.calendar)},xl=function(a,s){const[t,i,o]=ai(s,5);var r;return Sa((r=o,Co(a,pt(t,i),r)[0]))},Ll=function(a,s){const t=a(s.timeZone),i=ta(s,t),[o,r]=Hl(i),c=ha(ma(fa(t,o),fa(t,r)),Fi,1);if(c<=0)throw new RangeError(Tt);return c},Il=function(a,s){const{timeZone:t,calendar:i}=s,o=((r,c,l)=>fa(c,r(ta(l,c))))(Wl,a(t),s);return B(o,t,i)},Al=function(a,s,t,i){return El(a,pt(s,t),i)},El=function(a,s,t){const[i,o]=Co(a,s,t);return Wa({...Ps(a,o),...i})},Co=function(a,s,t){return Xt(Ya(Qa(a),s,t))},$t=function(a){return Ya(a,ni,7)},pt=function(a,s){return Ma[a]*s},Hl=function(a){const s=Wl(a);return[s,Ps(s,1)]},Wl=function(a){return Bp(6,a)},sp=function(a,s,t){const i=Math.min(us(a),6);return Ns(ri(_(a,i),s,t),i)},ii=function(a,s,t,i,o,r,c,l,d,u){if(i===0&&o===1)return a;const f=it(i,l)?fi(l)&&i<6&&t>=6?ip:tp:op;let[p,m,h]=f(a,s,t,i,o,r,c,l,d,u);return h&&i!==7&&(p=((g,P,T,O,b,y,E,Z)=>{const j=Ka(g);for(let x=O+1;x<=T;x++){if(x===7&&T!==7)continue;const U=Hr(x,g);U[v[x]]+=j;const z=ha(ma(E(Z(b,y,U)),P));if(z&&Math.sign(z)!==j)break;g=U}return g})(p,m,t,Math.max(6,i),c,l,d,u)),p},oi=function(a,s,t,i,o){if(s===6){const r=((c)=>c[0]+c[1]/n)(a);return[Ya(r,t,i),0]}return ri(a,pt(s,t),i,o)},ri=function(a,s,t,i){let[o,r]=a;i&&r<0&&(r+=n,o-=1);const[c,l]=Aa(Ya(r,s,t),n);return ho(o+c,l)},Ya=function(a,s,t){return Nl(a/s,t)*s},Nl=function(a,s){return mm[s](a)},tp=function(a,s,t,i,o,r){const c=Ka(a),l=_(a),d=oi(l,i,o,r),u=ma(l,d),f=Math.sign(d[0]-l[0])===c,p=Ns(d,Math.min(t,6));return[{...a,...p},js(s,u),f]},ip=function(a,s,t,i,o,r,c,l,d,u){const f=Ka(a),p=ha(_(a,5)),m=pt(i,o);let h=Ya(p,m,r);const[g,P]=Mo(c,{...a,...Er},6,f,l,d,u),T=h-ha(ma(g,P));let O=0;T&&Math.sign(T)!==f?s=Cs(g,h):(O+=f,h=Ya(T,m,r),s=Cs(P,h));const b=mi(h);return[{...a,...b,days:a.days+O},s,Boolean(O)]},op=function(a,s,t,i,o,r,c,l,d,u){const f=Ka(a),p=v[i],m=Hr(i,a);i===7&&(a={...a,weeks:a.weeks+Math.trunc(a.days/7)});const h=Ut(a[p],o)*o;m[p]=h;const[g,P]=Mo(c,m,i,o*f,l,d,u),T=h+jo(s,g,P)*f*o,O=Ya(T,o,r),b=Math.sign(O-T)===f;return m[p]=O,[m,b?P:g,b]},Zo=function(a,s,t,i){const[o,r,c,l]=((u)=>{const f=So(u=wa(u));return[u.timeZone,...f]})(i),d=o!==void 0;return((u,f,p,m,h,g)=>{p=ri(p,h,m,1);const P=f.getOffsetNanosecondsFor(p);return Wo(Ba(p,P),g)+(u?hs($t(P)):"Z")})(d,s(d?a(o):Ss),t.epochNanoseconds,r,c,l)},xo=function(a,s,t){const[i,o,r,c,l,d]=((u)=>{u=wa(u);const f=zr(u),p=wl(u),m=pm(u),h=Dt(u,4),g=yt(u,4);return[f,fm(u),m,h,...Dl(g,p)]})(t);return((u,f,p,m,h,g,P,T,O,b)=>{m=ri(m,O,T,1);const y=u(p).getOffsetNanosecondsFor(m);return Wo(Ba(m,y),b)+hs($t(y),P)+((E,Z)=>Z!==1?"["+(Z===2?"!":"")+Q(E)+"]":"")(p,g)+No(f,h)})(a,s.calendar,s.timeZone,s.epochNanoseconds,i,o,r,c,l,d)},Lo=function(a,s){const[t,i,o,r]=((u)=>(u=wa(u),[zr(u),...So(u)]))(s);return c=a.calendar,l=t,d=r,Wo(El(a,o,i),d)+No(c,l);var c,l,d},Io=function(a,s){return t=a.calendar,i=a,o=wo(s),Jt(i)+No(t,o);var t,i,o},Ao=function(a,s){return $l(a.calendar,Jl,a,wo(s))},Eo=function(a,s){return $l(a.calendar,rp,a,wo(s))},Ho=function(a,s){const[t,i,o]=yl(s);return r=o,zl(Co(a,i,t)[0],r);var r},ci=function(a,s){const[t,i,o]=yl(s,3);return i>1&&(a={...a,...sp(a,i,t)}),((r,c)=>{const{sign:l}=r,d=l===-1?ia(r):r,{hours:u,minutes:f}=d,[p,m]=go(_(d,3),ba,Ua);Kl(p);const h=$o(m,c),g=c>=0||!l||h;return(l<0?"-":"")+"P"+Ac({Y:ls(d.years),M:ls(d.months),W:ls(d.weeks),D:ls(d.days)})+(u||f||p||g?"T"+Ac({H:ls(u),M:ls(f),S:ls(p,g)+h}):"")})(a,o)},$l=function(a,s,t,i){const o=Q(a),r=i>1||i===0&&o!==w;return i===1?o===w?s(t):Jt(t):r?Jt(t)+_l(o,i===2):s(t)},Ac=function(a){const s=[];for(let t in a){const i=a[t];i&&s.push(i,t)}return s.join("")},Wo=function(a,s){return Jt(a)+"T"+zl(a,s)},Jt=function(a){return Jl(a)+"-"+Ta(a.isoDay)},Jl=function(a){const{isoYear:s}=a;return(s<0||s>9999?Gl(s)+Et(6,Math.abs(s)):Et(4,s))+"-"+Ta(a.isoMonth)},rp=function(a){return Ta(a.isoMonth)+"-"+Ta(a.isoDay)},zl=function(a,s){const t=[Ta(a.isoHour),Ta(a.isoMinute)];return s!==-1&&t.push(Ta(a.isoSecond)+((i,o,r,c)=>$o(i*ja+o*ys+r,c))(a.isoMillisecond,a.isoMicrosecond,a.isoNanosecond,s)),t.join(":")},hs=function(a,s=0){if(s===1)return"";const[t,i]=Aa(Math.abs(a),Fi),[o,r]=Aa(i,ni),[c,l]=Aa(r,ba);return Gl(a)+Ta(t)+":"+Ta(o)+(c||l?":"+Ta(c)+$o(l):"")},No=function(a,s){if(s!==1){const t=Q(a);if(s>1||s===0&&t!==w)return _l(t,s===2)}return""},_l=function(a,s){return"["+(s?"!":"")+"u-ca="+a+"]"},$o=function(a,s){let t=Et(9,a);return t=s===void 0?t.replace(Pm,""):t.slice(0,s),t?"."+t:""},Gl=function(a){return a<0?"-":"+"},ls=function(a,s){return a||s?a.toLocaleString("fullwide",{useGrouping:0}):""},cp=function(a,s){const{epochNanoseconds:t}=a,i=(s.getOffsetNanosecondsFor?s:s(a.timeZone)).getOffsetNanosecondsFor(t),o=Ba(t,i);return{calendar:a.calendar,...o,offsetNanoseconds:i}},ql=function(a,s){const t=ta(s,a);return{calendar:s.calendar,...pa(Vu,t),offset:hs(t.offsetNanoseconds),timeZone:s.timeZone}},gs=function(a,s,t,i=0,o=0,r,c){if(t!==void 0&&i===1&&(i===1||c))return bo(s,t);const l=a.getPossibleInstantsFor(s);if(t!==void 0&&i!==3){const d=((u,f,p,m)=>{const h=e(f);m&&(p=$t(p));for(let g of u){let P=ha(ma(g,h));if(m&&(P=$t(P)),P===p)return g}})(l,s,t,r);if(d!==void 0)return d;if(i===0)throw new RangeError(Ip)}return c?e(s):fa(a,s,o,l)},fa=function(a,s,t=0,i=a.getPossibleInstantsFor(s)){if(i.length===1)return i[0];if(t===1)throw new RangeError(Ap);if(i.length)return i[t===3?1:0];const o=e(s),r=((l,d)=>{const u=l.getOffsetNanosecondsFor(Cs(d,-n));return zo(l.getOffsetNanosecondsFor(Cs(d,n))-u)})(a,o),c=r*(t===2?-1:1);return(i=a.getPossibleInstantsFor(Ba(o,c)))[t===2?0:i.length-1]},Jo=function(a){if(Math.abs(a)>=n)throw new RangeError(xp);return a},zo=function(a){if(a>n)throw new RangeError(Lp);return a},_o=function(a,s,t){return q(ga(js(s.epochNanoseconds,((i)=>{if(Xl(i))throw new RangeError(Wp);return _(i,5)})(a?ia(t):t))))},Go=function(a,s,t,i,o,r=Object.create(null)){const c=s(i.timeZone),l=a(i.calendar);return{...i,...Bo(c,l,i,t?ia(o):o,r)}},qo=function(a,s,t,i,o=Object.create(null)){const{calendar:r}=t;return W(Ko(a(r),t,s?ia(i):i,o),r)},Uo=function(a,s,t,i,o){const{calendar:r}=t;return N(li(a(r),t,s?ia(i):i,o),r)},Qo=function(a,s,t,i,o=Object.create(null)){const r=t.calendar,c=a(r);let l=tt(c,t);s&&(i=pi(i)),i.sign<0&&(l=c.dateAdd(l,{...Y,months:1}),l=Ps(l,-1));const d=c.dateAdd(l,i,o);return ds(tt(c,d),r)},Yo=function(a,s,t){return Sa(Ul(s,a?ia(t):t)[0])},Bo=function(a,s,t,i,o){const r=_(i,5);let c=t.epochNanoseconds;if(Xl(i)){const l=ta(t,a);c=js(fa(a,{...li(s,l,{...i,...Er},o),...pa(na,l)}),r)}else c=js(c,r),S(o);return{epochNanoseconds:ga(c)}},Ko=function(a,s,t,i){const[o,r]=Ul(s,t);return Wa({...li(a,s,{...t,...Er,days:t.days+r},i),...o})},li=function(a,s,t,i){if(t.years||t.months||t.weeks)return a.dateAdd(s,t,i);S(i);const o=t.days+_(t,5)[0];return o?Ga(Ps(s,o)):s},tt=function(a,s,t=1){return Ps(s,t-a.day(s))},Ul=function(a,s){const[t,i]=_(s,5),[o,r]=Xt(Qa(a)+i);return[o,t+r]},Ps=function(a,s){return s?{...a,...kt(sa(a)+s*da)}:a},di=function(a,s,t){const i=a(t.calendar);return fi(t)?[t,i,s(t.timeZone)]:[{...t,...Oa},i]},Xo=function(a){return a?Rl:e},ui=function(a){return a?D(Bo,a):Ko},ko=function(a){return a?D(dp,a):up},fi=function(a){return a&&a.epochNanoseconds},it=function(a,s){return a<=6-(fi(s)?1:0)},Vo=function(a,s,t,i,o,r,c){const l=a(wa(c).relativeTo),d=Math.max(us(o),us(r));if(it(d,l))return C(Ws(((P,T,O,b)=>{const y=js(_(P),_(T),b?-1:1);if(!Number.isFinite(y[0]))throw new RangeError(Si);return{...Y,...Ns(y,O)}})(o,r,d,i)));if(!l)throw new RangeError(vi);i&&(r=ia(r));const[u,f,p]=di(s,t,l),m=ui(p),h=ko(p),g=m(f,u,o);return C(h(f,u,m(f,g,r),d))},Ql=function(a,s,t,i,o){const r=us(i),[c,l,d,u,f]=((j,x,U)=>{j=Fo(j,Gt);let z=Jr(j);const ks=U(j[af]);let Vs=vo(j);const Vf=Dt(j,7);let cs=yt(j);if(z===void 0&&cs===void 0)throw new RangeError(Np);return cs==null&&(cs=0),z==null&&(z=Math.max(cs,x)),Sl(z,cs),Vs=no(Vs,cs,1),[z,cs,Vs,Vf,ks]})(o,r,a),p=Math.max(r,c);if(!fi(f)&&p<=6)return C(Ws(((j,x,U,z,ks)=>{const Vs=oi(_(j),U,z,ks);return{...Y,...Ns(Vs,x)}})(i,c,l,d,u)));if(!f)throw new RangeError(vi);const[m,h,g]=di(s,t,f),P=Xo(g),T=ui(g),O=ko(g),b=T(h,m,i);let y=O(h,m,b,c);const E=i.sign,Z=Ka(y);if(E&&Z&&E!==Z)throw new RangeError(Tt);return Z&&(y=ii(y,P(b),c,l,d,u,h,m,P,T)),C(y)},Yl=function(a){return a.sign===-1?pi(a):a},pi=function(a){return C(ia(a))},ia=function(a){const s={};for(let t of v)s[t]=-1*a[t]||0;return s},Bl=function(a){return!a.sign},Ka=function(a,s=v){let t=0;for(let i of s){const o=Math.sign(a[i]);if(o){if(t&&t!==o)throw new RangeError(Hp);t=o}}return t},Ws=function(a){for(let s of Qp)Pa(s,a[s],-zc,zc,1);return Kl(ha(_(a),ba)),a},Kl=function(a){if(!Number.isSafeInteger(a))throw new RangeError(Ep)},_=function(a,s=6){return Xc(a,s,v)},Ns=function(a,s=6){const[t,i]=a,o=Qt(i,s,v);if(o[v[s]]+=t*(n/Ma[s]),!Number.isFinite(o[v[s]]))throw new RangeError(Si);return o},mi=function(a,s=5){return Qt(a,s,v)},Xl=function(a){return Boolean(Ka(a,Xu))},us=function(a){let s=9;for(;s>0&&!a[v[s]];s--);return s},lp=function(a,s){return[a,s]},Ec=function(a){const s=Math.floor(a/It)*It;return[s,s+It]},kl=function(a){const s=Xa(a=Ht(a));if(!s)throw new RangeError(la(a));let t;if(s.m)t=0;else{if(!s.offset)throw new RangeError(la(a));t=$s(s.offset)}return s.timeZone&&tr(s.timeZone,1),q(bo(Vt(s),t))},Vl=function(a){const s=Xa(L(a));if(!s)throw new RangeError(la(a));if(s.timeZone)return ld(s,s.offset?$s(s.offset):void 0);if(s.m)throw new RangeError(la(a));return ud(s)},el=function(a,s){const t=Xa(L(a));if(!t||!t.timeZone)throw new RangeError(la(a));const{offset:i}=t,o=i?$s(i):void 0,[,r,c]=ft(s);return ld(t,o,r,c)},$s=function(a){const s=tr(a);if(s===void 0)throw new RangeError(la(a));return s},ad=function(a){const s=Xa(L(a));if(!s||s.m)throw new RangeError(la(a));return W(dd(s))},hi=function(a){const s=Xa(L(a));if(!s||s.m)throw new RangeError(la(a));return N(s.p?dd(s):ud(s))},sd=function(a,s){const t=ar(L(s));if(t)return eo(t),ds(To(ps(t)));const i=hi(s);return ds(tt(a(i.calendar),i))},eo=function(a){if(a.calendar!==w)throw new RangeError(Ea(a.calendar))},td=function(a,s){const t=sr(L(s));if(t)return eo(t),Nt(ps(t));const i=hi(s),{calendar:o}=i,r=a(o),[c,l,d]=r.h(i),[u,f]=r.I(c,l),[p,m]=r.N(u,f,d);return Nt(Ga(r.P(p,m,d)),o)},id=function(a){let s,t=((i)=>{const o=Dm.exec(i);return o?(gi(o[10]),md(o)):void 0})(L(a));if(!t){if(t=Xa(a),!t)throw new RangeError(la(a));if(!t.p)throw new RangeError(la(a));if(t.m)throw new RangeError(Ea("Z"));eo(t)}if((s=ar(a))&&Lc(s))throw new RangeError(la(a));if((s=sr(a))&&Lc(s))throw new RangeError(la(a));return Sa(et(t,1))},od=function(a){const s=((t)=>{const i=vm.exec(t);return i?((o)=>{function r(f,p,m){let h=0,g=0;if(m&&([h,d]=Aa(d,Ma[m])),f!==void 0){if(l)throw new RangeError(Ea(f));g=((P)=>{const T=parseInt(P);if(!Number.isFinite(T))throw new RangeError(Ea(P));return T})(f),c=1,p&&(d=ir(p)*(Ma[m]/ba),l=1)}return h+g}let c=0,l=0,d=0,u={...Is(v,[r(o[2]),r(o[3]),r(o[4]),r(o[5]),r(o[6],o[7],5),r(o[8],o[9],4),r(o[10],o[11],3)]),...Qt(d,2,v)};if(!c)throw new RangeError(Cu(v));return or(o[1])<0&&(u=ia(u)),u})(i):void 0})(L(a));if(!s)throw new RangeError(la(a));return C(Ws(s))},rd=function(a){const s=Xa(a)||ar(a)||sr(a);return s?s.calendar:a},cd=function(a){const s=Xa(a);return s&&(s.timeZone||s.m&&Ss||s.offset)||a},ld=function(a,s,t=0,i=0){const o=Pi(a.timeZone),r=Li(o);return B(gs(r,Vt(a),s,t,i,!r.v,a.m),o,mt(a.calendar))},dd=function(a){return fd(Wa(Vt(a)))},ud=function(a){return fd(Ga(ps(a)))},fd=function(a){return{...a,calendar:mt(a.calendar)}},Xa=function(a){const s=ym.exec(a);return s?((t)=>{const i=t[10],o=(i||"").toUpperCase()==="Z";return{isoYear:pd(t),isoMonth:parseInt(t[4]),isoDay:parseInt(t[5]),...md(t.slice(5)),...gi(t[16]),p:Boolean(t[6]),m:o,offset:o?void 0:i}})(s):void 0},ar=function(a){const s=bm.exec(a);return s?((t)=>({isoYear:pd(t),isoMonth:parseInt(t[4]),isoDay:1,...gi(t[5])}))(s):void 0},sr=function(a){const s=Om.exec(a);return s?((t)=>({isoYear:Ls,isoMonth:parseInt(t[1]),isoDay:parseInt(t[2]),...gi(t[3])}))(s):void 0},tr=function(a,s){const t=wm.exec(a);return t?((i,o)=>{const r=i[4]||i[5];if(o&&r)throw new RangeError(Ea(r));return Jo((Ms(i[2])*Fi+Ms(i[3])*ni+Ms(i[4])*ba+ir(i[5]||""))*or(i[1]))})(t,s):void 0},pd=function(a){const s=or(a[1]),t=parseInt(a[2]||a[3]);if(s<0&&!t)throw new RangeError(Ea(-0));return s*t},md=function(a){const s=Ms(a[3]);return{...Xt(ir(a[4]||""))[0],isoHour:Ms(a[1]),isoMinute:Ms(a[2]),isoSecond:s===60?59:s}},gi=function(a){let s,t;const i=[];if(a.replace(Sm,(o,r,c)=>{const l=Boolean(r),[d,u]=c.split("=").reverse();if(u){if(u==="u-ca")i.push(d),s||(s=l);else if(l||/[A-Z]/.test(u))throw new RangeError(Ea(o))}else{if(t)throw new RangeError(Ea(o));t=d}return""}),i.length>1&&s)throw new RangeError(Ea(a));return{timeZone:t,calendar:i[0]||w}},ir=function(a){return parseInt(a.padEnd(9,"0"))},Js=function(a){return new RegExp(`^${a}\$`,"i")},or=function(a){return a&&a!=="+"?-1:1},Ms=function(a){return a===void 0?0:parseInt(a)},hd=function(a){return Pi(L(a))},Pi=function(a){const s=rr(a);return typeof s=="number"?hs(s):s?((t)=>{if(Fm.test(t))throw new RangeError(Zp);return t.toLowerCase().split("/").map((i,o)=>(i.length<=3||/\d/.test(i))&&!/etc|yap/.test(i)?i.toUpperCase():i.replace(/baja|dumont|[a-z]+/g,(r,c)=>r.length<=2&&!o||r==="in"||r==="chat"?r.toUpperCase():r.length>2||!c?Zc(r).replace(/island|noronha|murdo|rivadavia|urville/,Zc):r)).join("/")})(a):Ss},Hc=function(a){const s=rr(a);return typeof s=="number"?s:s?s.resolvedOptions().timeZone:Ss},rr=function(a){const s=tr(a=a.toUpperCase(),1);return s!==void 0?s:a!==Ss?nm(a):void 0},cr=function(a,s){return aa(a.epochNanoseconds,s.epochNanoseconds)},lr=function(a,s){return aa(a.epochNanoseconds,s.epochNanoseconds)},gd=function(a,s,t,i,o,r){const c=a(wa(r).relativeTo),l=Math.max(us(i),us(o));if(Bc(v,i,o))return 0;if(it(l,c))return aa(_(i),_(o));if(!c)throw new RangeError(vi);const[d,u,f]=di(s,t,c),p=Xo(f),m=ui(f);return aa(p(m(u,d,i)),p(m(u,d,o)))},dr=function(a,s){return Ts(a,s)||Ti(a,s)},Ts=function(a,s){return _a(sa(a),sa(s))},Ti=function(a,s){return _a(Qa(a),Qa(s))},Pd=function(a,s){return!cr(a,s)},Td=function(a,s){return!lr(a,s)&&!!bi(a.timeZone,s.timeZone)&&Hs(a.calendar,s.calendar)},bd=function(a,s){return!dr(a,s)&&Hs(a.calendar,s.calendar)},Od=function(a,s){return!Ts(a,s)&&Hs(a.calendar,s.calendar)},yd=function(a,s){return!Ts(a,s)&&Hs(a.calendar,s.calendar)},Dd=function(a,s){return!Ts(a,s)&&Hs(a.calendar,s.calendar)},wd=function(a,s){return!Ti(a,s)},bi=function(a,s){if(a===s)return 1;const t=Q(a),i=Q(s);if(t===i)return 1;try{return Hc(t)===Hc(i)}catch(o){}},ur=function(a,s,t,i){const o=Es(a,H(i),3,5),r=Oi(s.epochNanoseconds,t.epochNanoseconds,...o);return C(a?ia(r):r)},fr=function(a,s,t,i,o,r){const c=Di(i.calendar,o.calendar),l=H(r),[d,u,f,p]=Es(t,l,5),m=i.epochNanoseconds,h=o.epochNanoseconds,g=aa(h,m);let P;if(g)if(d<6)P=Oi(m,h,d,u,f,p);else{const T=s(((b,y)=>{if(!bi(b,y))throw new RangeError(Eu);return b})(i.timeZone,o.timeZone)),O=a(c);P=vd(O,T,i,o,g,d,l),P=ii(P,h,d,u,f,p,O,i,Rl,D(Bo,T))}else P=Y;return C(t?ia(P):P)},pr=function(a,s,t,i,o){const r=Di(t.calendar,i.calendar),c=H(o),[l,d,u,f]=Es(s,c,6),p=e(t),m=e(i),h=aa(m,p);let g;if(h)if(l<=6)g=Oi(p,m,l,d,u,f);else{const P=a(r);g=nd(P,t,i,h,l,c),g=ii(g,m,l,d,u,f,P,t,e,Ko)}else g=Y;return C(s?ia(g):g)},mr=function(a,s,t,i,o){const r=Di(t.calendar,i.calendar),c=H(o);return Sd(s,()=>a(r),t,i,...Es(s,c,6,9,6),c)},hr=function(a,s,t,i,o){const r=Di(t.calendar,i.calendar),c=H(o),l=Es(s,c,9,9,8),d=a(r);return Sd(s,()=>d,tt(d,t),tt(d,i),...l,c)},Sd=function(a,s,t,i,o,r,c,l,d){const u=e(t),f=e(i);let p;if(aa(f,u))if(o===6)p=Oi(u,f,o,r,c,l);else{const m=s();p=m.dateUntil(t,i,o,d),r===6&&c===1||(p=ii(p,f,o,r,c,l,m,t,e,li))}else p=Y;return C(a?ia(p):p)},gr=function(a,s,t,i){const o=H(i),[r,c,l,d]=Es(a,o,5,5),u=Ya(Pr(s,t),pt(c,l),d),f={...Y,...mi(u,r)};return C(a?ia(f):f)},dp=function(a,s,t,i,o,r){const c=aa(i.epochNanoseconds,t.epochNanoseconds);return c?o<6?Fd(t.epochNanoseconds,i.epochNanoseconds,o):vd(s,a,t,i,c,o,r):Y},up=function(a,s,t,i,o){const r=e(s),c=e(t),l=aa(c,r);return l?i<=6?Fd(r,c,i):nd(a,s,t,l,i,o):Y},vd=function(a,s,t,i,o,r,c){const[l,d,u]=((m,h,g,P)=>{function T(){return x={...Ps(y,Z++*-P),...b},U=fa(m,x),aa(E,U)===-P}const O=ta(h,m),b=pa(na,O),y=ta(g,m),E=g.epochNanoseconds;let Z=0;const j=Pr(O,y);let x,U;if(Math.sign(j)===-P&&Z++,T()&&(P===-1||T()))throw new RangeError(Tt);const z=ha(ma(U,E));return[O,x,z]})(s,t,i,o);var f,p;return{...r===6?(f=l,p=d,{...Y,days:Rd(f,p)}):a.dateUntil(l,d,r,c),...mi(u)}},nd=function(a,s,t,i,o,r){const[c,l,d]=((u,f,p)=>{let m=f,h=Pr(u,f);return Math.sign(h)===-p&&(m=Ps(f,-p),h+=n*p),[u,m,h]})(s,t,i);return{...a.dateUntil(c,l,o,r),...mi(d)}},Oi=function(a,s,t,i,o,r){return{...Y,...Ns(oi(ma(a,s),i,o,r),t)}},Fd=function(a,s,t){return{...Y,...Ns(ma(a,s),t)}},Rd=function(a,s){return yi(sa(a),sa(s))},yi=function(a,s){return Math.trunc((s-a)/da)},Pr=function(a,s){return Qa(s)-Qa(a)},Di=function(a,s){if(!Hs(a,s))throw new RangeError(Zr);return a},fp=function(a){function s(o){return((r,c)=>({...Md(r,c),F:r.month,day:parseInt(r.day)}))(Po(t,o),i)}const t=Ur(a),i=zt(a);return{id:a,O:pp(s),B:mp(s)}},pp=function(a){return ua((s)=>{const t=sa(s);return a(t)},WeakMap)},mp=function(a){const s=a(0).year-Vp;return ua((t)=>{let i,o=As(t-s);const r=[],c=[];do o+=400*da;while((i=a(o)).year<=t);do o+=(1-i.day)*da,i.year===t&&(r.push(o),c.push(i.F)),o-=da;while((i=a(o)).year>=t);return{k:r.reverse(),C:Nu(c.reverse())}})},Md=function(a,s){let t,i,o=jd(a);if(a.era){const r=Yu[s];r!==void 0&&(t=s==="islamic"?"ah":a.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),t==="bc"||t==="b"?t="bce":t!=="ad"&&t!=="a"||(t="ce"),i=o,o=Id(i,r[t]||0))}return{era:t,eraYear:i,year:o}},jd=function(a){return parseInt(a.relatedYear||a.year)},Vi=function(a){const{year:s,F:t,day:i}=this.O(a),{C:o}=this.B(s);return[s,o[t]+1,i]},ot=function(a,s=1,t=1){return this.B(a).k[s-1]+(t-1)*da},Zt=function(a){const s=Nc(this,a),t=Nc(this,a-1),i=s.length;if(i>t.length){const o=Ad(this);if(o<0)return-o;for(let r=0;r<i;r++)if(s[r]!==t[r])return r+1}},xt=function(a){return yi(ot.call(this,a),ot.call(this,a+1))},Wc=function(a,s){const{k:t}=this.B(a);let i=s+1,o=t;return i>t.length&&(i=1,o=this.B(a+1).k),yi(t[s-1],o[i-1])},Lt=function(a){return this.B(a).k.length},Nc=function(a,s){return Object.keys(a.B(s).C)},Cd=function(a){return mt(L(a))},mt=function(a){if((a=a.toLowerCase())!==w&&a!==Mi&&zt(a)!==zt(Ur(a).resolvedOptions().calendar))throw new RangeError(Cp(a));return a},zt=function(a){return a==="islamicc"&&(a="islamic"),a.split("-")[0]},Zd=function(a){return this.R(a)[0]},xd=function(a){return this.R(a)[1]},Tr=function(a){const[s]=this.h(a);return yi(this.q(s),sa(a))+1},Ld=function(a){const s=Mm.exec(a);if(!s)throw new RangeError(Mp(a));return[parseInt(s[1]),Boolean(s[2])]},_t=function(a,s,t){return a+(s||t&&a>=t?1:0)},ei=function(a,s){return a-(s&&a>=s?1:0)},Id=function(a,s){return(s+a)*(Math.sign(s)||1)||0},ao=function(a){return Yu[Ed(a)]},Ad=function(a){return Gp[Ed(a)]},Ed=function(a){return zt(a.id||w)},Hd=function(a,s,t,i){const o=ka(t,i,va,[],Gu);if(o.timeZone!==void 0){const r=t.dateFromFields(o),c=bs(o),l=a(o.timeZone);return{epochNanoseconds:gs(s(l),{...r,...c},o.offset!==void 0?$s(o.offset):void 0),timeZone:l}}return{...t.dateFromFields(o),...Oa}},Wd=function(a,s,t,i,o,r){const c=ka(t,o,va,zu,Gu),l=a(c.timeZone),[d,u,f]=ft(r),p=t.dateFromFields(c,si(r,d)),m=bs(c,d);return B(gs(s(l),{...p,...m},c.offset!==void 0?$s(c.offset):void 0,u,f),l,i)},Nd=function(a,s,t){const i=ka(a,s,va,[],Ja),o=S(t);return W(Wa({...a.dateFromFields(i,si(t,o)),...bs(i,o)}))},br=function(a,s,t,i=[]){const o=ka(a,s,va,i);return a.dateFromFields(o,t)},Or=function(a,s,t,i){const o=ka(a,s,Ir,i);return a.yearMonthFromFields(o,t)},yr=function(a,s,t,i,o=[]){const r=ka(a,t,va,o);return s&&r.month!==void 0&&r.monthCode===void 0&&r.year===void 0&&(r.year=Ls),a.monthDayFromFields(r,i)},$d=function(a,s){const t=S(s);return Sa(bs(Ra(a,to,[],1),t))},Jd=function(a){const s=Ra(a,Ar);return C(Ws({...Y,...s}))},ka=function(a,s,t,i=[],o=[]){return Ra(s,[...a.fields(t),...o].sort(),i)},Ra=function(a,s,t,i=!t){const o={};let r,c=0;for(let l of s){if(l===r)throw new RangeError(wp(l));if(l==="constructor"||l==="__proto__")throw new RangeError(jr(l));let d=a[l];if(d!==void 0)c=1,_c[l]&&(d=_c[l](d,l)),o[l]=d;else if(t){if(t.includes(l))throw new TypeError(Mr(l));o[l]=Qu[l]}r=l}if(i&&!c)throw new TypeError(Cu(s));return o},bs=function(a,s){return et(xm({...Qu,...a}),s)},zd=function(a,s,t,i,o,r){const c=H(r),{calendar:l,timeZone:d}=t;return B(((u,f,p,m,h)=>{const g=ht(u,p,m,va,_u,Ju),[P,T,O]=ft(h,2);return gs(f,{...u.dateFromFields(g,si(h,P)),...bs(g,P)},$s(g.offset),T,O)})(a(l),s(d),i,o,c),d,l)},_d=function(a,s,t,i,o){const r=H(o);return W(((c,l,d,u)=>{const f=ht(c,l,d,va,Ja),p=S(u);return Wa({...c.dateFromFields(f,si(u,p)),...bs(f,p)})})(a(s.calendar),t,i,r))},Gd=function(a,s,t,i,o){const r=H(o);return((c,l,d,u)=>{const f=ht(c,l,d,va);return c.dateFromFields(f,u)})(a(s.calendar),t,i,r)},qd=function(a,s,t,i,o){const r=H(o);return ds(((c,l,d,u)=>{const f=ht(c,l,d,Ir);return c.yearMonthFromFields(f,u)})(a(s.calendar),t,i,r))},Ud=function(a,s,t,i,o){const r=H(o);return((c,l,d,u)=>{const f=ht(c,l,d,va);return c.monthDayFromFields(f,u)})(a(s.calendar),t,i,r)},Qd=function(a,s,t){return Sa(((i,o,r)=>{const c=S(r);return bs({...pa(to,i),...Ra(o,to)},c)})(a,s,t))},Yd=function(a,s){return C((t=a,i=s,Ws({...t,...Ra(i,Ar)})));var t,i},ht=function(a,s,t,i,o=[],r=[]){const c=[...a.fields(i),...o].sort();let l=Ra(s,c,r);const d=Ra(t,c);return l=a.mergeFields(l,d),Ra(l,c,[])},Dr=function(a,s){const t=ka(a,s,Uu);return a.monthDayFromFields(t)},wr=function(a,s,t){const i=ka(a,s,qu);return a.yearMonthFromFields(i,t)},Bd=function(a,s,t,i,o){s=pa(t=a.fields(t),s),i=Ra(i,o=a.fields(o),[]);let r=a.mergeFields(s,i);return r=Ra(r,[...t,...o].sort(),[]),a.dateFromFields(r)},Yi=function(a,s){let{era:t,eraYear:i,year:o}=s;const r=ao(a);if(t!==void 0||i!==void 0){if(t===void 0||i===void 0)throw new TypeError(vp);if(!r)throw new RangeError(Sp);const c=r[t];if(c===void 0)throw new RangeError(Fp(t));const l=Id(i,c);if(o!==void 0&&o!==l)throw new RangeError(np);o=l}else if(o===void 0)throw new TypeError(Rp(r));return o},Bi=function(a,s,t,i){let{month:o,monthCode:r}=s;if(r!==void 0){const c=((l,d,u,f)=>{const p=l.U(u),[m,h]=Ld(d);let g=_t(m,h,p);if(h){const P=Ad(l);if(P===void 0)throw new RangeError(es);if(P>0){if(g>P)throw new RangeError(es);if(p===void 0){if(f===1)throw new RangeError(es);g--}}else{if(g!==-P)throw new RangeError(es);if(p===void 0&&f===1)throw new RangeError(es)}}return g})(a,r,t,i);if(o!==void 0&&o!==c)throw new RangeError(Iu);o=c,i=1}else if(o===void 0)throw new TypeError(jp);return Pa("month",o,1,a.L(t),i)},$c=function(a,s,t,i,o){return ca(s,"day",1,a.j(i,t),o)},Ki=function(a,s,t,i){let o=0;const r=[];for(let c of t)s[c]!==void 0?o=1:r.push(c);if(Object.assign(a,s),o)for(let c of i||r)delete a[c]},Kd=function(a){return q(ga(Kt(Bt(a))))},Xd=function(a,s,t,i,o=w){return B(ga(Kt(Bt(t))),s(i),a(o))},kd=function(a,s,t,i,o=0,r=0,c=0,l=0,d=0,u=0,f=w){return W(Wa(Vt(ya(V,Is(ji,[s,t,i,o,r,c,l,d,u])))),a(f))},Vd=function(a,s,t,i,o=w){return N(Ga(ps(ya(V,{isoYear:s,isoMonth:t,isoDay:i}))),a(o))},ed=function(a,s,t,i=w,o=1){const r=V(s),c=V(t),l=a(i);return ds(To(ps({isoYear:r,isoMonth:c,isoDay:V(o)})),l)},au=function(a,s,t,i=w,o=Ls){const r=V(s),c=V(t),l=a(i);return Nt(Ga(ps({isoYear:V(o),isoMonth:r,isoDay:c})),l)},su=function(a=0,s=0,t=0,i=0,o=0,r=0){return Sa(et(ya(V,Is(na,[a,s,t,i,o,r])),1))},tu=function(a=0,s=0,t=0,i=0,o=0,r=0,c=0,l=0,d=0,u=0){return C(Ws(ya(cl,Is(v,[a,s,t,i,o,r,c,l,d,u]))))},Sr=function(a,s,t=w){return B(a.epochNanoseconds,s,t)},iu=function(a){return q(a.epochNanoseconds)},vr=function(a,s){return W(ta(s,a))},nr=function(a,s){return N(ta(s,a))},ou=function(a,s,t){return wr(a(s.calendar),t)},ru=function(a,s,t){return Dr(a(s.calendar),t)},Fr=function(a,s){return Sa(ta(s,a))},cu=function(a,s,t,i){const o=((r,c,l,d)=>{const u=Do(d);return fa(r(c),l,u)})(a,t,s,i);return B(ga(o),t,s.calendar)},lu=function(a,s,t){const i=a(s.calendar);return ds({...s,...wr(i,t)})},du=function(a,s,t){return Dr(a(s.calendar),t)},uu=function(a,s,t,i,o){const r=a(o.timeZone),c=o.plainTime,l=c!==void 0?s(c):Oa;return B(fa(t(r),{...i,...l}),r,i.calendar)},fu=function(a,s=Oa){return W(Wa({...a,...s}))},pu=function(a,s,t){return wr(a(s.calendar),t)},mu=function(a,s,t){return Dr(a(s.calendar),t)},hu=function(a,s,t,i){return((o,r,c)=>Bd(o,r,qu,Ha(c),Ot))(a(s.calendar),t,i)},gu=function(a,s,t,i){return((o,r,c)=>Bd(o,r,Uu,Ha(c),Ri))(a(s.calendar),t,i)},Pu=function(a,s,t,i,o){const r=Ha(o),c=s(r.plainDate),l=a(r.timeZone);return B(fa(t(l),{...c,...i}),l,c.calendar)},Tu=function(a,s){return W(Wa({...a,...s}))},bu=function(a){return q(ga(Zs(a,ba)))},Ou=function(a){return q(ga(Zs(a,ja)))},yu=function(a){return q(ga(Kt(Bt(a),ys)))},Du=function(a){return q(ga(Kt(Bt(a))))},wu=function(a,s,t=Oa){const i=s.timeZone,o=a(i),r={...ta(s,o),...t};return B(gs(o,r,r.offsetNanoseconds,2),i,s.calendar)},Su=function(a,s,t){const i=s.timeZone,o=a(i),r={...ta(s,o),...t},c=Ru(s.calendar,t.calendar);return B(gs(o,r,r.offsetNanoseconds,2),i,c)},vu=function(a,s=Oa){return W({...a,...s})},nu=function(a,s){return W({...a,...s},Ru(a.calendar,s.calendar))},wi=function(a,s){return{...a,calendar:s}},Fu=function(a,s){return{...a,timeZone:s}},Ru=function(a,s){if(a===s)return a;const t=Q(a),i=Q(s);if(t===i||t===w)return s;if(i===w)return a;throw new RangeError(Zr)},hp=function(a,s){return(t)=>t===w?a:t===Mi||t===xs?Object.assign(Object.create(a),{id:t}):Object.assign(Object.create(s),Rm(t))},Os=function(a,s,t){const i=new Set(t);return(o)=>(((r,c)=>{for(let l of c)if(l in r)return 1;return 0})(o=co(i,o),a)||Object.assign(o,s),t&&(o.timeZone=Ss,["full","long"].includes(o.timeStyle)&&(o.timeStyle="medium")),o)},Na=function(a,s=Rr){const[t,,,i]=a;return(o,r=Ym,...c)=>{const l=s(i&&i(...c),o,r,t),d=l.resolvedOptions();return[l,...gp(a,d,c)]}},Rr=function(a,s,t,i){if(t=i(t),a){if(t.timeZone!==void 0)throw new TypeError(Jp);t.timeZone=a}return new Va(s,t)},gp=function(a,s,t){const[,i,o]=a;return t.map((r)=>(r.calendar&&((c,l,d)=>{if((d||c!==w)&&c!==l)throw new RangeError(Zr)})(Q(r.calendar),s.calendar,o),i(r,s)))},zs=function(a){const s=gt();return Ba(s,a.getOffsetNanosecondsFor(s))},gt=function(){return Zs(Date.now(),ja)},$a=function(){return qc||(qc=new Va().resolvedOptions().timeZone)},Pp=(a,s)=>`Non-integer ${a}: ${s}`,Tp=(a,s)=>`Non-positive ${a}: ${s}`,bp=(a,s)=>`Non-finite ${a}: ${s}`,Op=(a)=>`Cannot convert bigint to ${a}`,yp=(a)=>`Invalid bigint: ${a}`,Dp="Cannot convert Symbol to string",Mu="Invalid object",ju=(a,s,t,i,o)=>o?ju(a,o[s],o[t],o[i]):Pt(a,s)+`; must be between ${t}-${i}`,Pt=(a,s)=>`Invalid ${a}: ${s}`,Mr=(a)=>`Missing ${a}`,jr=(a)=>`Invalid field ${a}`,wp=(a)=>`Duplicate field ${a}`,Cu=(a)=>"No valid fields: "+a.join(),Zu="Invalid bag",xu=(a,s,t)=>Pt(a,s)+"; must be "+Object.keys(t).join(),Lu="Cannot use valueOf",Cr="Invalid calling context",Sp="Forbidden era/eraYear",vp="Mismatching era/eraYear",np="Mismatching year/eraYear",Fp=(a)=>`Invalid era: ${a}`,Rp=(a)=>"Missing year"+(a?"/era/eraYear":""),Mp=(a)=>`Invalid monthCode: ${a}`,Iu="Mismatching month/monthCode",jp="Missing month/monthCode",Jc="Cannot guess year",es="Invalid leap month",Au="Invalid protocol",Tt="Invalid protocol results",Zr="Mismatching Calendars",Cp=(a)=>`Invalid Calendar: ${a}`,Eu="Mismatching TimeZones",Zp="Forbidden ICU TimeZone",xp="Out-of-bounds offset",Lp="Out-of-bounds TimeZone gap",Ip="Invalid TimeZone offset",Ap="Ambiguous offset",Si="Out-of-bounds date",Ep="Out-of-bounds duration",Hp="Cannot mix duration signs",vi="Missing relativeTo",Wp="Cannot use large units",Np="Required smallestUnit or largestUnit",$p="smallestUnit > largestUnit",la=(a)=>`Cannot parse: ${a}`,Ea=(a)=>`Invalid substring: ${a}`,Hu=(a)=>`Cannot format ${a}`,Wu="Mismatching types for formatting",Jp="Cannot specify TimeZone",Nu=D(lt,(a,s)=>s),_s=D(lt,(a,s,t)=>t),Ta=D(Et,2),so={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},bt=Object.keys(so),da=86400000,$u=1000,ys=1000,ja=1e6,ba=1e9,ni=60000000000,Fi=3600000000000,n=86400000000000,Ma=[1,ys,ja,ba,ni,Fi,n],Ja=bt.slice(0,6),to=dt(Ja),Ju=["offset"],zu=["timeZone"],_u=Ja.concat(Ju),Gu=_u.concat(zu),io=["era","eraYear"],zp=io.concat(["year"]),Ri=["year"],xr=["monthCode"],Lr=["month"].concat(xr),Ot=["day"],Ir=Lr.concat(Ri),qu=xr.concat(Ri),va=Ot.concat(Ir),_p=Ot.concat(Lr),Uu=Ot.concat(xr),Qu=_s(Ja,0),w="iso8601",Mi="gregory",xs="japanese",Yu={[Mi]:{bce:-1,ce:0},[xs]:{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}},Gp={chinese:13,dangi:13,hebrew:-6},L=D(Yt,"string"),Bu=D(Yt,"boolean"),qp=D(Yt,"number"),Ku=D(Yt,"function"),v=bt.map((a)=>a+"s"),Ar=dt(v),Up=v.slice(0,6),Xu=v.slice(6),Qp=Xu.slice(1),Yp=Nu(v),Y=_s(v,0),Er=_s(Up,0),Hr=D(Kc,v),na=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],Wr=["isoDay","isoMonth","isoYear"],ji=na.concat(Wr),Nr=dt(Wr),ku=dt(na),Vu=dt(ji),Oa=_s(ku,0),Bp=D(Kc,ji),Va=Intl.DateTimeFormat,eu="en-GB",$r=1e8,Kp=$r*da,Xp=[$r,0],kp=[-$r,0],rt=275760,ct=-271821,Vp=1970,Ls=1972,Ia=12,ep=As(1868,9,8),am=ua(ap,WeakMap),Gt="smallestUnit",oo="unit",st="roundingIncrement",Xi="fractionalSecondDigits",af="relativeTo",sf={constrain:0,reject:1},sm=Object.keys(sf),tm={compatible:0,reject:1,earlier:2,later:3},im={reject:0,use:1,prefer:2,ignore:3},om={auto:0,never:1,critical:2,always:3},rm={auto:0,never:1,critical:2},cm={auto:0,never:1},lm={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},yt=D(Ro,Gt),Jr=D(Ro,"largestUnit"),dm=D(Ro,oo),tf=D(ms,"overflow",sf),of=D(ms,"disambiguation",tm),um=D(ms,"offset",im),zr=D(ms,"calendarName",om),fm=D(ms,"timeZoneName",rm),pm=D(ms,"offset",cm),Dt=D(ms,"roundingMode",lm),Gs="PlainYearMonth",qs="PlainMonthDay",Ds="PlainDate",ws="PlainDateTime",Ci="PlainTime",za="ZonedDateTime",Zi="Instant",xi="Duration",mm=[Math.floor,(a)=>Ct(a)?Math.floor(a):Math.round(a),Math.ceil,(a)=>Ct(a)?Math.ceil(a):Math.round(a),Math.trunc,(a)=>Ct(a)?Math.trunc(a)||0:Math.round(a),(a)=>a<0?Math.floor(a):Math.ceil(a),(a)=>Math.sign(a)*Math.round(Math.abs(a))||0,(a)=>Ct(a)?(a=Math.trunc(a)||0)+a%2:Math.round(a)],Ss="UTC",It=5184000,hm=Wt(1847),gm=Wt((new Date()).getUTCFullYear()+10),Pm=/0+$/,ta=ua(cp,WeakMap),zc=4294967295,Li=ua((a)=>{const s=rr(a);return typeof s=="object"?new cf(s):new rf(s||0)});class rf{constructor(a){this.v=a}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(a){return[bo(a,this.v)]}l(){}}class cf{constructor(a){this.$=((s)=>{function t(d){const u=ki(d,c,l),[f,p]=Ec(u),m=o(f),h=o(p);return m===h?m:i(r(f,p),m,h,d)}function i(d,u,f,p){let m,h;for(;(p===void 0||(m=p<d[0]?u:p>=d[1]?f:void 0)===void 0)&&(h=d[1]-d[0]);){const g=d[0]+Math.floor(h/2);s(g)===f?d[1]=g:d[0]=g+1}return m}const o=ua(s),r=ua(lp);let c=hm,l=gm;return{G(d){const u=t(d-86400),f=t(d+86400),p=d-u,m=d-f;if(u===f)return[p];const h=t(p);return h===t(m)?[d-h]:u>f?[p,m]:[]},V:t,l(d,u){const f=ki(d,c,l);let[p,m]=Ec(f);const h=It*u,g=u<0?()=>m>c||(c=f,0):()=>p<l||(l=f,0);for(;g();){const P=o(p),T=o(m);if(P!==T){const O=r(p,m);i(O,P,T);const b=O[0];if((_a(b,d)||1)===u)return b}p+=h,m+=h}}}})(((s)=>(t)=>{const i=Po(s,t*$u);return Wt(jd(i),parseInt(i.month),parseInt(i.day),parseInt(i.hour),parseInt(i.minute),parseInt(i.second))-t})(a))}getOffsetNanosecondsFor(a){return this.$.V(ul(a))*ba}getPossibleInstantsFor(a){const[s,t]=[Wt((i=a).isoYear,i.isoMonth,i.isoDay,i.isoHour,i.isoMinute,i.isoSecond),i.isoMillisecond*ja+i.isoMicrosecond*ys+i.isoNanosecond];var i;return this.$.G(s).map((o)=>ga(Cs(Zs(o,ba),t)))}l(a,s){const[t,i]=fl(a),o=this.$.l(t+(s>0||i?1:0),s);if(o!==void 0)return Zs(o,ba)}}var _r="([+\u2212-])",At="(?:[.,](\\d{1,9}))?",lf=`(?:(?:${_r}(\\d{6}))|(\\d{4}))-?(\\d{2})`,Gr="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+At+")?)?",qr=_r+Gr,Tm=lf+"-?(\\d{2})(?:[T ]"+Gr+"(Z|"+qr+")?)?",df="\\[(!?)([^\\]]*)\\]",Ii=`((?:${df}){0,9})`,bm=Js(lf+Ii),Om=Js("(?:--)?(\\d{2})-?(\\d{2})"+Ii),ym=Js(Tm+Ii),Dm=Js("T?"+Gr+"(?:"+qr+")?"+Ii),wm=Js(qr),Sm=new RegExp(df,"g"),vm=Js(`${_r}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${At}H)?(?:(\\d+)${At}M)?(?:(\\d+)${At}S)?)?`),nm=ua((a)=>new Va(eu,{timeZone:a,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),Fm=/^(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$/,Rm=ua(fp),Ur=ua((a)=>new Va(eu,{calendar:a,timeZone:Ss,era:"short",year:"numeric",month:"short",day:"numeric"})),Mm=/^M(\d{2})(L?)$/,jm={era:Ht,eraYear:V,year:V,month:xc,monthCode:Ht,day:xc},Cm=_s(Ja,V),Zm=_s(v,cl),_c=Object.assign({},jm,Cm,Zm,{offset:Ht}),xm=D(ef,Ja,na),Gc={dateAdd(a,s,t){const i=S(t);let o,{years:r,months:c,weeks:l,days:d}=s;if(d+=_(s,5)[0],r||c)o=((u,f,p,m,h)=>{let[g,P,T]=u.h(f);if(p){const[O,b]=u.I(g,P);g+=p,P=_t(O,b,u.U(g)),P=Pa("month",P,1,u.L(g),h)}return m&&([g,P]=u._(g,P,m)),T=Pa("day",T,1,u.j(g,P),h),u.q(g,P,T)})(this,a,r,c,i);else{if(!l&&!d)return a;o=sa(a)}return o+=(7*l+d)*da,Ga(kt(o))},dateUntil(a,s,t){if(t<=7){let d=0,u=Rd({...a,...Oa},{...s,...Oa});return t===7&&([d,u]=Ua(u,7)),{...Y,weeks:d,days:u}}const i=this.h(a),o=this.h(s);let[r,c,l]=((d,u,f,p,m,h,g)=>{let P=m-u,T=h-f,O=g-p;if(P||T){const b=Math.sign(P||T);let y=d.j(m,h),E=0;if(Math.sign(O)===-b){const Z=y;[m,h]=d._(m,h,-b),P=m-u,T=h-f,y=d.j(m,h),E=b<0?-Z:y}if(O=g-Math.min(p,y)+E,P){const[Z,j]=d.I(u,f),[x,U]=d.I(m,h);if(T=x-Z||Number(U)-Number(j),Math.sign(T)===-b){const z=b<0&&-d.L(m);P=(m-=b)-u,T=h-_t(Z,j,d.U(m))+(z||d.L(m))}}}return[P,T,O]})(this,...i,...o);return t===8&&(c+=this.J(r,i[0]),r=0),{...Y,years:r,months:c,days:l}},dateFromFields(a,s){const t=S(s),i=Yi(this,a),o=Bi(this,a,i,t),r=$c(this,a,o,i,t);return N(Ga(this.P(i,o,r)),this.id||w)},yearMonthFromFields(a,s){const t=S(s),i=Yi(this,a),o=Bi(this,a,i,t);return ds(To(this.P(i,o,1)),this.id||w)},monthDayFromFields(a,s){const t=S(s),i=!this.id,{monthCode:o,year:r,month:c}=a;let l,d,u,f,p;if(o!==void 0){[l,d]=Ld(o),p=Uc(a,"day");const m=this.N(l,d,p);if(!m)throw new RangeError(Jc);if([u,f]=m,c!==void 0&&c!==f)throw new RangeError(Iu);i&&(f=Pa("month",f,1,Ia,1),p=Pa("day",p,1,Oo(r!==void 0?r:u,f),t))}else{u=r===void 0&&i?Ls:Yi(this,a),f=Bi(this,a,u,t),p=$c(this,a,f,u,t);const m=this.U(u);d=f===m,l=ei(f,m);const h=this.N(l,d,p);if(!h)throw new RangeError(Jc);[u,f]=h}return Nt(Ga(this.P(u,f,p)),this.id||w)},fields(a){return ao(this)&&a.includes("year")?[...a,...io]:a},mergeFields(a,s){const t=Object.assign(Object.create(null),a);return Ki(t,s,Lr),ao(this)&&(Ki(t,s,zp),this.id===xs&&Ki(t,s,_p,io)),t},inLeapYear(a){const[s]=this.h(a);return this.K(s)},monthsInYear(a){const[s]=this.h(a);return this.L(s)},daysInMonth(a){const[s,t]=this.h(a);return this.j(s,t)},daysInYear(a){const[s]=this.h(a);return this.X(s)},dayOfYear:Tr,era(a){return this.ee(a)[0]},eraYear(a){return this.ee(a)[1]},monthCode(a){const[s,t]=this.h(a),[i,o]=this.I(s,t);return((r,c)=>"M"+Ta(r)+(c?"L":""))(i,o)},dayOfWeek:Pl,daysInWeek(){return 7}},Lm={dayOfYear:Tr,h:ml,q:As},Im=Object.assign({},Lm,{weekOfYear:Zd,yearOfWeek:xd,R(a){function s(h){return(7-h<i?7:0)-h}function t(h){const g=gl(m+h),P=h||1,T=s(at(d+g*P,7));return f=(g+(T-u)*P)/7}const i=this.id?1:4,o=Pl(a),r=this.dayOfYear(a),c=at(o-1,7),l=r-1,d=at(c-l,7),u=s(d);let f,p=Math.floor((l-u)/7)+1,m=a.isoYear;return p?p>t(0)&&(p=1,m++):(p=t(-1),m--),[p,m,f]}}),Am={dayOfYear:Tr,h:Vi,q:ot,weekOfYear:Zd,yearOfWeek:xd,R(){return[]}},Us=hp(Object.assign({},Gc,Im,{h:ml,ee(a){return this.id===Mi?Tl(a):this.id===xs?am(a):[]},I:(a,s)=>[s,0],N(a,s){if(!s)return[Ls,a]},K:yo,U(){},L:hl,J:(a)=>a*Ia,j:Oo,X:gl,P:(a,s,t)=>({isoYear:a,isoMonth:s,isoDay:t}),q:As,_:(a,s,t)=>(a+=Ut(t,Ia),(s+=uo(t,Ia))<1?(a--,s+=Ia):s>Ia&&(a++,s-=Ia),[a,s]),year(a){return a.isoYear},month(a){return a.isoMonth},day:(a)=>a.isoDay}),Object.assign({},Gc,Am,{h:Vi,ee(a){const s=this.O(a);return[s.era,s.eraYear]},I(a,s){const t=Zt.call(this,a);return[ei(s,t),t===s]},N(a,s,t){let[i,o,r]=Vi.call(this,{isoYear:Ls,isoMonth:Ia,isoDay:31});const c=Zt.call(this,i),l=o===c;(_a(a,ei(o,c))||_a(Number(s),Number(l))||_a(t,r))===1&&i--;for(let d=0;d<100;d++){const u=i-d,f=Zt.call(this,u),p=_t(a,s,f);if(s===(p===f)&&t<=Wc.call(this,u,p))return[u,p]}},K(a){const s=xt.call(this,a);return s>xt.call(this,a-1)&&s>xt.call(this,a+1)},U:Zt,L:Lt,J(a,s){const t=s+a,i=Math.sign(a),o=i<0?-1:0;let r=0;for(let c=s;c!==t;c+=i)r+=Lt.call(this,c+o);return r},j:Wc,X:xt,P(a,s,t){return kt(ot.call(this,a,s,t))},q:ot,_(a,s,t){if(t){if(s+=t,!Number.isSafeInteger(s))throw new RangeError(Si);if(t<0)for(;s<1;)s+=Lt.call(this,--a);else{let i;for(;s>(i=Lt.call(this,a));)s-=i,a++}}return[a,s]},year(a){return this.O(a).year},month(a){const{year:s,F:t}=this.O(a),{C:i}=this.B(s);return i[t]+1},day(a){return this.O(a).day}})),qa="numeric",Qs=["timeZoneName"],uf={month:qa,day:qa},Qr={year:qa,month:qa},Yr=Object.assign({},Qr,{day:qa}),Br={hour:qa,minute:qa,second:qa},Kr=Object.assign({},Yr,Br),Em=Object.assign({},Kr,{timeZoneName:"short"}),Hm=Object.keys(Qr),Wm=Object.keys(uf),Nm=Object.keys(Yr),$m=Object.keys(Br),Xr=["dateStyle"],Jm=Hm.concat(Xr),zm=Wm.concat(Xr),kr=Nm.concat(Xr,["weekday"]),wt=$m.concat(["dayPeriod","timeStyle"]),Vr=kr.concat(wt),_m=Vr.concat(Qs),Gm=Qs.concat(wt),qm=Qs.concat(kr),Um=Qs.concat(["day","weekday"],wt),Qm=Qs.concat(["year","weekday"],wt),Ym={},er=[Os(Vr,Kr),ti],ff=[Os(_m,Em),ti,0,(a,s)=>{const t=Q(a.timeZone);if(s&&Q(s.timeZone)!==t)throw new RangeError(Eu);return t}],ac=[Os(Vr,Kr,Qs),sa],sc=[Os(kr,Yr,Gm),sa],tc=[Os(wt,Br,qm),(a)=>Qa(a)/ja],ic=[Os(Jm,Qr,Um),sa,1],oc=[Os(zm,uf,Qm),sa,1],qc;var Vm={Instant:er,PlainDateTime:ac,PlainDate:sc,PlainTime:tc,PlainYearMonth:ic,PlainMonthDay:oc},em=Na(er),ah=Na(ff),sh=Na(ac),th=Na(sc),ih=Na(tc),oh=Na(ic),rh=Na(oc),uc={era:al,eraYear:fo,year:ut,month:Da,daysInMonth:Da,daysInYear:Da,inLeapYear:Bu,monthsInYear:Da},Wi={monthCode:L},fc={day:Da},wf={dayOfWeek:Da,dayOfYear:Da,weekOfYear:sl,yearOfWeek:fo,daysInWeek:Da},Sf=Object.assign({},uc,Wi,fc,wf),Hi=new WeakMap,k=Hi.get.bind(Hi),gf=Hi.set.bind(Hi),ch={...Ai(uc,[Gs]),...Ai(wf,[]),...Ai(Wi,[Gs,qs]),...Ai(fc,[qs])},pc=lc(Sf),lh=lc({...uc,...Wi}),dh=lc({...Wi,...fc}),Ft={calendarId:(a)=>Q(a.calendar)},uh=ya((a,s)=>function(t){const{i}=this;return a(i[s](A(N(t,i))))},Sf),fh=lt((a)=>(s)=>s[a],v.concat("sign")),mc=lt((a,s)=>(t)=>t[na[s]],Ja),vf={epochSeconds:vl,epochMilliseconds:ti,epochMicroseconds:nl,epochNanoseconds:Fl},Rt=D(co,new Set(["branding"])),[ph,Ks,mh]=xa(qs,D(au,X),{...Ft,...dh},{getISOFields:Rt,getCalendar:vt,with(a,s,t){return Ks(Ud(Mh,a,this,Xs(s),t))},equals:(a,s)=>Dd(a,pf(s)),toPlainDate(a,s){return A(gu(Mt,a,this,s))},toLocaleString(a,s,t){const[i,o]=rh(s,t,a);return i.format(o)},toString:Eo,toJSON:(a)=>Eo(a),valueOf:is},{from:(a,s)=>Ks(pf(a,s))}),nf={getOffsetNanosecondsFor:Of,getPossibleInstantsFor(a,s,t){const i=[...s.call(a,K(W(t,w)))].map((r)=>gh(r).epochNanoseconds),o=i.length;return o>1&&(i.sort(aa),zo(ha(ma(i[0],i[o-1])))),i}},cc={getOffsetNanosecondsFor:Of},[hh,oa,gh]=xa(Zi,Kd,vf,{add:(a,s)=>oa(_o(0,a,I(s))),subtract:(a,s)=>oa(_o(1,a,I(s))),until:(a,s,t)=>R(ur(0,a,Ca(s),t)),since:(a,s,t)=>R(ur(1,a,Ca(s),t)),round:(a,s)=>oa(jl(a,s)),equals:(a,s)=>Pd(a,Ca(s)),toZonedDateTime(a,s){const t=Ha(s);return $(Sr(a,M(t.timeZone),X(t.calendar)))},toZonedDateTimeISO:(a,s)=>$(Sr(a,M(s))),toLocaleString(a,s,t){const[i,o]=em(s,t,a);return i.format(o)},toString:(a,s)=>Zo(M,J,a,s),toJSON:(a)=>Zo(M,J,a),valueOf:is},{from:(a)=>oa(Ca(a)),fromEpochSeconds:(a)=>oa(bu(a)),fromEpochMilliseconds:(a)=>oa(Ou(a)),fromEpochMicroseconds:(a)=>oa(yu(a)),fromEpochNanoseconds:(a)=>oa(Du(a)),compare:(a,s)=>cr(Ca(a),Ca(s))}),[Ni,Jh]=xa("TimeZone",(a)=>{const s=hd(a);return{branding:"TimeZone",id:s,o:Li(s)}},{id:(a)=>a.id},{getPossibleInstantsFor:({o:a},s)=>a.getPossibleInstantsFor(as(s)).map((t)=>oa(q(t))),getOffsetNanosecondsFor:({o:a},s)=>a.getOffsetNanosecondsFor(Ca(s).epochNanoseconds),getOffsetStringFor(a,s){const t=Ca(s).epochNanoseconds,i=Ei(this,cc).getOffsetNanosecondsFor(t);return hs(i)},getPlainDateTimeFor(a,s,t=w){const i=Ca(s).epochNanoseconds,o=Ei(this,cc).getOffsetNanosecondsFor(i);return K(W(Ba(i,o),X(t)))},getInstantFor(a,s,t){const i=as(s),o=Do(t),r=Ei(this);return oa(q(fa(r,i,o)))},getNextTransition:({o:a},s)=>mf(1,a,s),getPreviousTransition:({o:a},s)=>mf(-1,a,s),equals(a,s){return!!bi(this,M(s))},toString:(a)=>a.id,toJSON:(a)=>a.id},{from(a){const s=M(a);return typeof s=="string"?new Ni(s):s}}),Ph=bf(Object.keys(nf)),[Th,ss]=xa(Ci,su,mc,{getISOFields:Rt,with(a,s,t){return ss(Qd(this,Xs(s),t))},add:(a,s)=>ss(Yo(0,a,I(s))),subtract:(a,s)=>ss(Yo(1,a,I(s))),until:(a,s,t)=>R(gr(0,a,ea(s),t)),since:(a,s,t)=>R(gr(1,a,ea(s),t)),round:(a,s)=>ss(xl(a,s)),equals:(a,s)=>wd(a,ea(s)),toZonedDateTime:(a,s)=>$(Pu(M,ra,F,a,s)),toPlainDateTime:(a,s)=>K(Tu(a,ra(s))),toLocaleString(a,s,t){const[i,o]=ih(s,t,a);return i.format(o)},toString:Ho,toJSON:(a)=>Ho(a),valueOf:is},{from:(a,s)=>ss(ea(a,s)),compare:(a,s)=>Ti(ea(a),ea(s))}),[bh,ts,Oh]=xa(Gs,D(ed,X),{...Ft,...lh},{getISOFields:Rt,getCalendar:vt,with(a,s,t){return ts(qd(Rh,a,this,Xs(s),t))},add:(a,s,t)=>ts(Qo(Pf,0,a,I(s),t)),subtract:(a,s,t)=>ts(Qo(Pf,1,a,I(s),t)),until:(a,s,t)=>R(hr(Tf,0,a,Ys(s),t)),since:(a,s,t)=>R(hr(Tf,1,a,Ys(s),t)),equals:(a,s)=>yd(a,Ys(s)),toPlainDate(a,s){return A(hu(Mt,a,this,s))},toLocaleString(a,s,t){const[i,o]=oh(s,t,a);return i.format(o)},toString:Ao,toJSON:(a)=>Ao(a),valueOf:is},{from:(a,s)=>ts(Ys(a,s)),compare:(a,s)=>Ts(Ys(a),Ys(s))}),[yh,K]=xa(ws,D(kd,X),{...Ft,...pc,...mc},{getISOFields:Rt,getCalendar:vt,with(a,s,t){return K(_d(Mt,a,this,Xs(s),t))},withCalendar:(a,s)=>K(wi(a,X(s))),withPlainDate:(a,s)=>K(nu(a,ra(s))),withPlainTime:(a,s)=>K(vu(a,dc(s))),add:(a,s,t)=>K(qo(vs,0,a,I(s),t)),subtract:(a,s,t)=>K(qo(vs,1,a,I(s),t)),until:(a,s,t)=>R(pr(Za,0,a,as(s),t)),since:(a,s,t)=>R(pr(Za,1,a,as(s),t)),round:(a,s)=>K(Zl(a,s)),equals:(a,s)=>bd(a,as(s)),toZonedDateTime:(a,s,t)=>$(cu(F,a,M(s),t)),toPlainDate:(a)=>A(N(a)),toPlainTime:(a)=>ss(Sa(a)),toPlainYearMonth(a){return ts(lu($i,a,this))},toPlainMonthDay(a){return Ks(du(zi,a,this))},toLocaleString(a,s,t){const[i,o]=sh(s,t,a);return i.format(o)},toString:Lo,toJSON:(a)=>Lo(a),valueOf:is},{from:(a,s)=>K(as(a,s)),compare:(a,s)=>dr(as(a),as(s))}),[Dh,A,Ff]=xa(Ds,D(Vd,X),{...Ft,...pc},{getISOFields:Rt,getCalendar:vt,with(a,s,t){return A(Gd(Mt,a,this,Xs(s),t))},withCalendar:(a,s)=>A(wi(a,X(s))),add:(a,s,t)=>A(Uo(vs,0,a,I(s),t)),subtract:(a,s,t)=>A(Uo(vs,1,a,I(s),t)),until:(a,s,t)=>R(mr(Za,0,a,ra(s),t)),since:(a,s,t)=>R(mr(Za,1,a,ra(s),t)),equals:(a,s)=>Od(a,ra(s)),toZonedDateTime(a,s){const t=!G(s)||s instanceof Ni?{timeZone:s}:s;return $(uu(M,ea,F,a,t))},toPlainDateTime:(a,s)=>K(fu(a,dc(s))),toPlainYearMonth(a){return ts(pu($i,a,this))},toPlainMonthDay(a){return Ks(mu(zi,a,this))},toLocaleString(a,s,t){const[i,o]=th(s,t,a);return i.format(o)},toString:Io,toJSON:(a)=>Io(a),valueOf:is},{from:(a,s)=>A(ra(a,s)),compare:(a,s)=>Ts(ra(a),ra(s))}),hc={fields(a,s,t){return[...s.call(a,t)]}},Rf=Object.assign({dateFromFields(a,s,t,i){return Ff(s.call(a,Object.assign(Object.create(null),t),i))}},hc),Mf=Object.assign({yearMonthFromFields(a,s,t,i){return Oh(s.call(a,Object.assign(Object.create(null),t),i))}},hc),jf=Object.assign({monthDayFromFields(a,s,t,i){return mh(s.call(a,Object.assign(Object.create(null),t),i))}},hc),gc={mergeFields(a,s,t,i){return Ha(s.call(a,Object.assign(Object.create(null),t),Object.assign(Object.create(null),i)))}},wh=Object.assign({},Rf,gc),Sh=Object.assign({},Mf,gc),vh=Object.assign({},jf,gc),Pc={dateAdd(a,s,t,i,o){return Ff(s.call(a,A(N(t,a)),R(C(i)),o))}},Cf=Object.assign({},Pc,{dateUntil(a,s,t,i,o,r){return Ch(s.call(a,A(N(t,a)),A(N(i,a)),Object.assign(Object.create(null),r,{largestUnit:bt[o]})))}}),nh=Object.assign({},Pc,{day:yf}),Fh=Object.assign({},Cf,{day:yf}),$i=La(Mf),Ji=La(Rf),zi=La(jf),Rh=La(Sh),Mt=La(wh),Mh=La(vh),vs=La(Pc),Za=La(Cf),Pf=La(nh),Tf=La(Fh),[jh,R,Ch]=xa(xi,tu,{...fh,blank:Bl},{with:(a,s)=>R(Yd(a,s)),negated:(a)=>R(pi(a)),abs:(a)=>R(Yl(a)),add:(a,s,t)=>R(Vo(St,Za,F,0,a,I(s),t)),subtract:(a,s,t)=>R(Vo(St,Za,F,1,a,I(s),t)),round:(a,s)=>R(Ql(St,Za,F,a,s)),total:(a,s)=>Ml(St,Za,F,a,s),toLocaleString(a,s,t){return Intl.DurationFormat?new Intl.DurationFormat(s,t).format(this):ci(a)},toString:ci,toJSON:(a)=>ci(a),valueOf:is},{from:(a)=>R(I(a)),compare:(a,s,t)=>gd(St,vs,F,I(a),I(s),t)}),Zf={toString:(a)=>a.id,toJSON:(a)=>a.id,...ch,dateAdd:({id:a,o:s},t,i,o)=>A(N(s.dateAdd(ra(t),I(i),o),a)),dateUntil:({o:a},s,t,i)=>R(C(a.dateUntil(ra(s),ra(t),Ol(i)))),dateFromFields:({id:a,o:s},t,i)=>A(br(s,t,i,ec(a))),yearMonthFromFields:({id:a,o:s},t,i)=>ts(Or(s,t,i,kc(a))),monthDayFromFields:({id:a,o:s},t,i)=>Ks(yr(s,0,t,i,Vc(a))),fields({o:a},s){const t=new Set(va),i=[];for(let o of s){if(L(o),!t.has(o))throw new RangeError(jr(o));t.delete(o),i.push(o)}return a.fields(i)},mergeFields:({o:a},s,t)=>a.mergeFields(lo(po(s)),lo(po(t)))},[Tc]=xa("Calendar",(a)=>{const s=Cd(a);return{branding:"Calendar",id:s,o:Us(s)}},{id:(a)=>a.id},Zf,{from(a){const s=X(a);return typeof s=="string"?new Tc(s):s}}),Zh=bf(Object.keys(Zf).slice(4)),[xh,$]=xa(za,D(Xd,X,M),{...vf,...Ft,...hf(pc),...hf(mc),offset:(a)=>hs(rc(a).offsetNanoseconds),offsetNanoseconds:(a)=>rc(a).offsetNanoseconds,timeZoneId:(a)=>Q(a.timeZone),hoursInDay:(a)=>Ll(F,a)},{getISOFields:(a)=>ql(J,a),getCalendar:vt,getTimeZone:({timeZone:a})=>typeof a=="string"?new Ni(a):a,with(a,s,t){return $(zd(Mt,F,a,this,Xs(s),t))},withCalendar:(a,s)=>$(wi(a,X(s))),withTimeZone:(a,s)=>$(Fu(a,M(s))),withPlainDate:(a,s)=>$(Su(F,a,ra(s))),withPlainTime:(a,s)=>$(wu(F,a,dc(s))),add:(a,s,t)=>$(Go(vs,F,0,a,I(s),t)),subtract:(a,s,t)=>$(Go(vs,F,1,a,I(s),t)),until:(a,s,t)=>R(C(fr(Za,F,0,a,Bs(s),t))),since:(a,s,t)=>R(C(fr(Za,F,1,a,Bs(s),t))),round:(a,s)=>$(Cl(F,a,s)),startOfDay:(a)=>$(Il(F,a)),equals:(a,s)=>Td(a,Bs(s)),toInstant:(a)=>oa(iu(a)),toPlainDateTime:(a)=>K(vr(J,a)),toPlainDate:(a)=>A(nr(J,a)),toPlainTime:(a)=>ss(Fr(J,a)),toPlainYearMonth(a){return ts(ou($i,a,this))},toPlainMonthDay(a){return Ks(ru(zi,a,this))},toLocaleString(a,s,t={}){const[i,o]=ah(s,t,a);return i.format(o)},toString:(a,s)=>xo(J,a,s),toJSON:(a)=>xo(J,a),valueOf:is},{from:(a,s)=>$(Bs(a,s)),compare:(a,s)=>lr(Bs(a),Bs(s))}),Lh=Object.defineProperties({},{...qt("Temporal.Now"),...fs({timeZoneId:()=>$a(),instant:()=>oa(q(gt())),zonedDateTime:(a,s=$a())=>$(B(gt(),M(s),X(a))),zonedDateTimeISO:(a=$a())=>$(B(gt(),M(a),w)),plainDateTime:(a,s=$a())=>K(W(zs(J(M(s))),X(a))),plainDateTimeISO:(a=$a())=>K(W(zs(J(M(a))),w)),plainDate:(a,s=$a())=>A(N(zs(J(M(s))),X(a))),plainDateISO:(a=$a())=>A(N(zs(J(M(a))),w)),plainTimeISO:(a=$a())=>ss(Sa(zs(J(M(a)))))})}),ns=Object.defineProperties({},{...qt("Temporal"),...fs({PlainYearMonth:bh,PlainMonthDay:ph,PlainDate:Dh,PlainTime:Th,PlainDateTime:yh,ZonedDateTime:xh,Instant:hh,Calendar:Tc,TimeZone:Ni,Duration:jh,Now:Lh})}),Ih=Bm(),bc=new WeakMap,Ah=Object.defineProperties(Object.create(Intl),fs({DateTimeFormat:Ih}));class Fs extends Error{constructor(){super("Adapter not found");this.name="AdapterNotFound"}}class Oc{createSession(){throw new Fs}deleteSession(){throw new Fs}findSession(){throw new Fs}findUserByEmailAddress(){throw new Fs}updateSession(){throw new Fs}createUser(){throw new Fs}}class Af extends Fa{constructor(){super(...arguments)}schema={email:{required:"Email is required",string:"Invalid email",email:"Invalid email"},password:{required:"Password is required"}}}class Ef extends Fa{constructor(){super(...arguments)}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 Hf extends Fa{constructor(){super(...arguments)}schema={email:{required:"Email is required",email:"Invalid email"}}}class Wf extends Fa{constructor(){super(...arguments)}schema={password:{required:"Password is required",password:"Invalid password"}}}class rs extends xf{constructor(){super(...arguments)}provider=jt.getStore().authenticationServiceContainer.provider;async me(){const a=await _i.user();if(!a)throw new If;return a}async signIn(a=new Af){const s=await a.input.call(a),{email:t,password:i}=s.toJSON(),o=await this.provider.adapter.findUserByEmailAddress(t);if(!o)throw new os({invalid_credentials:["Invalid credentials"]});if(!await this.provider.verifyPassword(i,o.password))throw new os({invalid_credentials:["Invalid credentials"]});const c=a.headers.get("User-Agent"),l=new Bun.CryptoHasher("sha256");l.update(`${o.email}${c}`);const d=l.digest("hex");let u=await this.provider.adapter.findSession({token:d,userAgent:"local"});if(!u)u=await this.provider.adapter.createSession({token:d,userId:o.id,userAgent:"local",expiresAt:new Date(ns.Now.instant().add({hours:this.provider.sessionExpiresInHours}).toString()),absoluteExpiresAt:new Date(ns.Now.instant().add({hours:this.provider.sessionAbsoluteExpiresInHours}).toString())});else u=await this.provider.adapter.updateSession({token:d,expiresAt:new Date(ns.Now.instant().add({hours:this.provider.sessionExpiresInHours}).toString())});return a.ctx.setCookie("access_token",u.token,{expires:u.expiresAt}),await this.provider.onSignIn(o),o}async signUp(a=new Ef){const s=await a.input(),{email:t,password:i,name:o}=s.toJSON();if(await this.provider.adapter.findUserByEmailAddress(t))throw new os({email:["Email address already exists"]});const c=await this.provider.hashPassword(i),l=await this.provider.adapter.createUser({email:t,name:o,password:c});return await this.provider.onSignUp(l),l}async signOut(a=new Fa){const s=a.cookies.get("access_token"),t=await _i.user();return await this.provider.adapter.deleteSession({token:s}),a.ctx.setCookie("access_token","",{expires:new Date(0)}),await this.provider.onSignOut(t),{}}async forgotPassword(a=new Hf){const s=await a.input(),{email:t}=s.toJSON(),i=await this.provider.adapter.findUserByEmailAddress(t);if(!i)return{};const o=await this.provider.generateForgotPasswordToken(i);return await this.provider.adapter.createPasswordResetToken({user:i,token:o}),await this.provider.onForgotPassword(i,o),{}}async resetPassword(a=new Wf){const s=await a.input(),{password:t,token:i}=s.toJSON(),o=await this.provider.adapter.findPasswordResetToken({token:i});if(!o)throw new os({token:["Invalid token"]});if(ns.Instant.from(o.createdAt.toISOString()).add({hours:24}).until(ns.Now.instant()).sign>=0)throw new os({token:["Token expired"]});await this.provider.adapter.deletePasswordResetToken({token:i});const c=await this.provider.adapter.findUserByEmailAddress(o.user.email);if(!c)throw new os({email:["User not found"]});const l=await this.provider.hashPassword(t);return await this.provider.adapter.updateUserPassword({id:c.id,password:l}),await this.provider.adapter.deleteAllUserSessions(c.id),await this.provider.onResetPassword(c),{}}async changePassword(a=new Fa){const s=await _i.user(),t=await a.input(),{oldPassword:i,newPassword:o}=t.toJSON(),{password:r}=await this.provider.adapter.findUserByEmailAddress(s.email);if(!await this.provider.verifyPassword(i,r))throw new os({oldPassword:["Incorrect password"]});const l=await this.provider.hashPassword(o);return await this.provider.adapter.updateUserPassword({id:s.id,password:l}),await this.provider.adapter.deleteAllUserSessions(s.id),{}}}class Nf extends Gi{constructor(){super(...arguments)}routes={"/sign-in":this.post(rs,"signIn"),"/sign-up":this.post(rs,"signUp"),"/sign-out":this.post(rs,"signOut"),"/forgot-password":this.post(rs,"forgotPassword"),"/reset-password":this.post(rs,"resetPassword"),"/change-password":this.post(rs,"changePassword"),"/me":this.get(rs,"me")}}class $f extends Lf{constructor(){super(...arguments)}routes={"/sign-in":this.view("auth/SignIn"),"/sign-up":this.view("auth/SignUp"),"/reset-password":this.view("auth/ResetPassword"),"/forgot-password":this.view("auth/ForgotPassword")}}class qi{basePath="/auth";routers={api:Nf,view:$f};sessionExpiresInHours=24;sessionAbsoluteExpiresInHours=672;adapter=new Oc;async verifyPassword(a,s){return await Bun.password.verify(a,s)}async hashPassword(a){return await Bun.password.hash(a)}async generateForgotPasswordToken(a){const s=new Bun.CryptoHasher("sha256");return s.update(`${a.email}${Date.now()}`),s.digest("hex")}extendSession(a){return{}}onSignUp(a){}onSignIn(a){}onSignOut(a){}onForgotPassword(a,s){}onResetPassword(a){}}class yc{a;constructor(a){this.provider=a}async getSession(a,s){const t=await this.provider.adapter.findSession({token:a,userAgent:s});let i=null;if(t?.user)i=await this.provider.extendSession(t.user);return t.user.extension=i,t}}class Jf extends Gi{constructor(){super(...arguments)}routes={"/translations":this.get(async(a=new Fa)=>{const s=await a.input(),{scope:t,locale:i}=s.toJSON(),o=i??jt.getStore().i18nServiceContainer.detectLocale(a),r=jt.getStore().i18nServiceContainer.getPageTranslations(o,t);return a.ctx.setHeaders("Cache-Control",a.ctx.user?"private, max-age=1200, must-revalidate":"public, max-age=864000, must-revalidate"),a.ctx.setCookie("i18n-locale",o,{expires:new Date(Date.now()+31536000000)}),{[o]:r}})}}class Dc{a;constructor(a){this.service=a}isEnabled=!1;translations=new Map;supportedLocales=[];routers={api:Jf};boot(){const a=new Map;for(let[t,i]of Object.entries(this.service.dictionary))for(let[o,r]of Object.entries(i))for(let[c,l]of Object.entries(r)){const d=c==="default"?this.service.defaultLocale:c;if(!a.has(`${d}.${t}`))a.set(`${d}.${t}`,new Map);a.get(`${d}.${t}`)?.set(o,l),this.isEnabled=!0}let s=new Set;for(let[t,i]of a.entries())this.translations.set(t,Object.fromEntries(i.entries())),s.add(t.split(".")[0]);this.supportedLocales=Array.from(s)}detectLocale(a){const s=this.service.detectLocale(a);if(this.supportedLocales.includes(s))return s;const i=a.cookies.get("i18n-locale")??(a.headers.get("accept-language")||"en-US"),[o]=i.split(",");if(this.supportedLocales.includes(o))return o;const r=this.service.defaultLocale??this.supportedLocales[0];if(r)return r;return"en-US"}getPageTranslations(a,s){if(!s)return{};const t=this.translations.get(`${a}.view:${s}`)??{},i={[`view:${s}`]:t};for(let[o]of this.translations.entries()){const r=o.split(".")[1];if(!r.startsWith("layout:"))continue;const c=r.split(":")[1];if(s?.startsWith(c))i[r]=this.translations.get(`${a}.${r}`)??{}}return i}}class wc{a;constructor(a){this.service=a}}class vc{a;constructor(a){this.service=a}getRouteHandlerAndParams(a){const t=new URL(a.url).pathname.replace("/api","");let i={},o;for(let[r]of Object.entries(this.service.flatRoutes))try{const c=new URLPattern({pathname:r});if(c.test({pathname:t})){o=r,i=c.exec({pathname:t})?.pathname.groups;break}}catch(c){console.error(c)}return{params:i,path:o}}async runRouteMiddleware(a){const s=Rs.getStore(),i=this.service.flatRoutes[a][s.req.rawRequest.method].middleware;try{await Ui.getContext().middlewareServiceContainer.runMiddleware(i,a)}catch(o){if(o.kind===Sc){if(s.req.rawRequest.url.includes("/api")){const{status:r=400,data:c,headers:l}=o.payload.api;return new Response(JSON.stringify(c),{status:r,headers:{"Content-Type":"application/json",...l}})}}else throw console.error(o),o}}async getRouteData(a){const s=this.service.flatRoutes[a],t=Rs.getStore(),i=s[t.req.rawRequest.method].exec??(()=>Promise.resolve({}));let o={};try{o=await i()}catch(r){if(r.kind===Sc){const{status:c=400,data:l,headers:d}=r.payload.api;return new Response(JSON.stringify(l),{status:c,headers:{"Content-Type":"application/json",...d}})}else throw console.error(r),r}return o}async handleApiRequest(a){const{params:s,path:t}=this.getRouteHandlerAndParams(a),i=this.service.flatRoutes[t];if(!i||!i[a.method])return new Response(JSON.stringify({error:{message:"Not found"}}),{status:404});const o=new Fa(a,s);return await Rs.run(o,async()=>{const r=await this.runRouteMiddleware(t);if(r instanceof Response)return r;const c=await this.getRouteData(t);if(c instanceof Response)return c;const l=Rs.getStore(),d=l.headers;if(d.append("Content-Type","application/json"),!d.get("Cache-Control"))if(l.user)d.set("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");else d.set("Cache-Control","public, no-cache, no-store, max-age=0, must-revalidate");return l.cookies.forEach((u)=>d.append("Set-Cookie",u.toString())),l.destroy(),new Response(JSON.stringify(c),{headers:d})})}}var Eh=function(a){return Qi(a)};function nc(a){const s={};for(let[t,i]of Object.entries(a))if("run"in i){const o=i;if(!s[t])s[t]={};const{method:r,middlewares:c}=o,l=o.run.bind(o);s[t][r]={exec:l,middleware:c}}else if(Eh(i)){const o=new i,r=nc(o.routes);for(let[c,l]of Object.entries(r)){const d=c==="/"?"":c,u=t==="/"?"":t,f=`${u}${d}`===""?"/":`${u}${d}`;if(!s[f])s[f]={};for(let[p,m]of Object.entries(l))s[f][p]={exec:m.exec,middleware:[o.middleware,...o.middlewares,...m.middleware]}}}else for(let o of Object.values(i)){if(!s[t])s[t]={};const{method:r,middlewares:c}=o,l=o.run.bind(o);s[t][r]={exec:l,middleware:c}}return Object.fromEntries(Object.entries(s).sort(([t],[i])=>{const o=t.split("/").length+t.split(":").length,r=i.split("/").length+i.split(":").length;return o-r}))}class Fc extends zf{constructor(){super(...arguments)}flatRoutes={};boot(a){this.flatRoutes=nc(a)}}var Hh=function(a){const s=new Map;for(let t of a)if(typeof t==="string"){const[i,o=""]=t.split(":");if(i.startsWith("-")){if(s.has(i.replace("-","")))s.delete(i.replace("-",""))}else s.set(i,o.split(","))}else s.set(t,[]);return s};class Rc{a;constructor(a){this.service=a}runMiddleware(a,s){const t=Rs.getStore().req;return Array.from(Hh(a).entries()).map(([i,o])=>{if(typeof i==="string"){const r=this.service.aliases[i];if(r){const c=new r(s);return(l)=>c.run.call(c,l,...o)}}else{if(Qi(i)){const r=new aliasOrTest(s);return r.run.bind(r)}return i}}).filter(Boolean).reduce((i,o)=>{return async(r,c)=>{return{...await i(r,c),...await o(r,c)}}},(i)=>Promise.resolve({}))(t)}}class Mc{a;constructor(a){this.service=a}}import{AsyncLocalStorage as Wh} from"async_hooks";class jc extends _f{a;name="broadcastingServiceContainer";publishCb;context=new Wh;constructor(a){super();this.service=a}onPublish(a){this.publishCb=a}publish(...a){const[s,t,i]=a;this.publishCb(s,t,i)}async handleMessage(a,s){const t=JSON.parse(s);if(t.type==="subscribe"){const i=Object.entries(this.service.channels).sort(([o],[r])=>o.length-r.length);for(let[o,r]of i){const c=new URLPattern({pathname:o});if(c.test({pathname:t.topic})){const l=c.exec({pathname:t.topic})?.pathname.groups,d=new r;if(await d.subscribe.call(d,l))a.subscribe(t.topic)}break}}if(t.type==="broadcast")a.publish(t.topic,JSON.stringify({topic:t.topic,data:t.payload}));if(t.type==="unsubscribe")a.unsubscribe(t.topic)}run(a,s){const t=a.get("Cookie"),i=new Map;if(t){const o=t.split(";");for(let r of o){const[c,l]=r.split("=");i.set(c.trim(),l.trim())}}this.context.run({headers:a,cookies:i},s)}}class Ui{emailServiceProvider=Kf;authenticationServiceProvider=qi;middlewareServiceProvider=Gf;policiesServiceProvider=qf;i18nServiceProvider=Uf;fileStorageServiceProvider=Yf;apiRouterServiceProvider=Fc;rateLimiterServiceProvider=Bf;broadcastingsServiceProvider=Xf;services;getServices=()=>{if(!this.services)this.services={emailServiceContainer:new Qf(new this.emailServiceProvider),authenticationServiceContainer:new yc(new this.authenticationServiceProvider),middlewareServiceContainer:new Rc(new this.middlewareServiceProvider),policiesServiceProvider:new this.policiesServiceProvider,i18nServiceContainer:new Dc(new this.i18nServiceProvider),fileStorageServiceContainer:new wc(new this.fileStorageServiceProvider),apiRouterServiceContainer:new vc(new this.apiRouterServiceProvider),rateLimiterServiceContainer:new Mc(new this.rateLimiterServiceProvider),broadcastingServiceContainer:new jc(new this.broadcastingsServiceProvider)};return this.services};static getContext=()=>Cc.getStore();run(a){const s=this.getServices();return Cc.run(s,a)}}class kf{a;constructor(a){this.prisma=a}async createSession(a){return await this.prisma.session.create({data:a,include:{user:!0}})}async createUser(a){return await this.prisma.user.create({data:a})}async deleteSession(a){return await this.prisma.session.deleteMany({where:{token:a.token}})}async findUserByEmailAddress(a){return await this.prisma.user.findUnique({where:{email:a}})}async findSession(a){if(!a.token)return null;try{return await this.prisma.session.findUnique({where:{token:a.token,userAgent:"local"},include:{user:{select:{password:!1,id:!0,email:!0,globalRole:!0,name:!0,publicId:!0,accounts:{select:{id:!0,publicId:!0,organization:!0,organizationRole:!0}}}}}})}catch(s){return console.log(s),null}}async updateSession(a){return await this.prisma.session.update({where:{token:a.token},data:{expiresAt:a.expiresAt},include:{user:{select:{password:!1,email:!0,globalRole:!0,name:!0,publicId:!0,accounts:{select:{id:!0,publicId:!0,organization:!0,organizationRole:!0}},organization:!0}}}})}async updateUserPassword(a){return await this.prisma.user.update({where:{id:a.id},data:{password:a.password}})}async createPasswordResetToken(a){return await this.prisma.passwordResetToken.create({data:{user:{connect:{id:a.user.id}},token:a.token}})}async findPasswordResetToken(a){const{token:s}=a;return await this.prisma.passwordResetToken.findUnique({where:{token:s},include:{user:!0}})}async deleteAllUserSessions(a){return await this.prisma.session.deleteMany({where:{userId:a}})}async deletePasswordResetToken(a){const{token:s}=a;return await this.prisma.passwordResetToken.delete({where:{token:s}})}}export{kf as PrismaAuthenticationAdapter,Ui as Kernel,qi as AuthenticationServiceProvider};