@absolutejs/auth 0.0.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  // @bun
2
- var _X=Object.create;var{getPrototypeOf:SX,defineProperty:a5,getOwnPropertyNames:DX}=Object;var PX=Object.prototype.hasOwnProperty;var OX=(z,w,U)=>{U=z!=null?_X(SX(z)):{};let W=w||!z||!z.__esModule?a5(U,"default",{value:z,enumerable:!0}):U;for(let X of DX(z))if(!PX.call(W,X))a5(W,X,{get:()=>z[X],enumerable:!0});return W};var RX=(z,w)=>()=>(w||z((w={exports:{}}).exports,w),w.exports);var j6=(z,w)=>{for(var U in w)a5(z,U,{get:w[U],enumerable:!0,configurable:!0,set:(W)=>w[U]=()=>W})};var NU=RX((GU)=>{Object.defineProperty(GU,"__esModule",{value:!0});GU.parse=BL;GU.serialize=ML;var ZL=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,$L=/^[\u0021-\u003A\u003C-\u007E]*$/,AL=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,QL=/^[\u0020-\u003A\u003D-\u007E]*$/,YL=Object.prototype.toString,JL=(()=>{let z=function(){};return z.prototype=Object.create(null),z})();function BL(z,w){let U=new JL,W=z.length;if(W<2)return U;let X=w?.decode||qL,Z=0;do{let $=z.indexOf("=",Z);if($===-1)break;let A=z.indexOf(";",Z),Q=A===-1?W:A;if($>Q){Z=z.lastIndexOf(";",$-1)+1;continue}let Y=qU(z,Z,$),J=LU(z,$,Y),G=z.slice(Y,J);if(U[G]===void 0){let S=qU(z,$+1,Q),N=LU(z,Q,S),O=X(z.slice(S,N));U[G]=O}Z=Q+1}while(Z<W);return U}function qU(z,w,U){do{let W=z.charCodeAt(w);if(W!==32&&W!==9)return w}while(++w<U);return U}function LU(z,w,U){while(w>U){let W=z.charCodeAt(--w);if(W!==32&&W!==9)return w+1}return U}function ML(z,w,U){let W=U?.encode||encodeURIComponent;if(!ZL.test(z))throw new TypeError(`argument name is invalid: ${z}`);let X=W(w);if(!$L.test(X))throw new TypeError(`argument val is invalid: ${w}`);let Z=z+"="+X;if(!U)return Z;if(U.maxAge!==void 0){if(!Number.isInteger(U.maxAge))throw new TypeError(`option maxAge is invalid: ${U.maxAge}`);Z+="; Max-Age="+U.maxAge}if(U.domain){if(!AL.test(U.domain))throw new TypeError(`option domain is invalid: ${U.domain}`);Z+="; Domain="+U.domain}if(U.path){if(!QL.test(U.path))throw new TypeError(`option path is invalid: ${U.path}`);Z+="; Path="+U.path}if(U.expires){if(!LL(U.expires)||!Number.isFinite(U.expires.valueOf()))throw new TypeError(`option expires is invalid: ${U.expires}`);Z+="; Expires="+U.expires.toUTCString()}if(U.httpOnly)Z+="; HttpOnly";if(U.secure)Z+="; Secure";if(U.partitioned)Z+="; Partitioned";if(U.priority)switch(typeof U.priority==="string"?U.priority.toLowerCase():void 0){case"low":Z+="; Priority=Low";break;case"medium":Z+="; Priority=Medium";break;case"high":Z+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${U.priority}`)}if(U.sameSite)switch(typeof U.sameSite==="string"?U.sameSite.toLowerCase():U.sameSite){case!0:case"strict":Z+="; SameSite=Strict";break;case"lax":Z+="; SameSite=Lax";break;case"none":Z+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${U.sameSite}`)}return Z}function qL(z){if(z.indexOf("%")===-1)return z;try{return decodeURIComponent(z)}catch(w){return z}}function LL(z){return YL.call(z)==="[object Date]"}});var o6=(z,w)=>{let U=w?.length?{}:null;if(U)for(let W of w)U[W.part.charCodeAt(0)]=W;return{part:z,store:null,inert:U,params:null,wildcardStore:null}},Bw=(z,w)=>({...z,part:w}),Mw=(z)=>({name:z,store:null,inert:null});class F6{config;root={};history=[];deferred=[];constructor(z={}){if(this.config=z,z.lazy)this.find=this.lazyFind}static regex={static:/:.+?(?=\/|$)/,params:/:.+?(?=\/|$)/g,optionalParams:/:.+?\?(?=\/|$)/g};lazyFind=(z,w)=>{if(!this.config.lazy)return this.find;return this.build(),this.find(z,w)};build(){if(!this.config.lazy)return;for(let[z,w,U]of this.deferred)this.add(z,w,U,{lazy:!1,ignoreHistory:!0});this.deferred=[],this.find=(z,w)=>{let U=this.root[z];if(!U)return null;return Z8(w,w.length,U,0)}}add(z,w,U,{ignoreError:W=!1,ignoreHistory:X=!1,lazy:Z=this.config.lazy}={}){if(Z)return this.find=this.lazyFind,this.deferred.push([z,w,U]),U;if(typeof w!=="string")throw new TypeError("Route path must be a string");if(w==="")w="/";else if(w[0]!=="/")w=`/${w}`;let $=w[w.length-1]==="*",A=w.match(F6.regex.optionalParams);if(A){let S=w.replaceAll("?","");this.add(z,S,U,{ignoreError:W,ignoreHistory:X,lazy:Z});for(let N=0;N<A.length;N++){let O=w.replace("/"+A[N],"");this.add(z,O,U,{ignoreError:!0,ignoreHistory:X,lazy:Z})}return U}if(A)w=w.replaceAll("?","");if(this.history.find(([S,N,O])=>S===z&&N===w))return U;if($||A&&w.charCodeAt(w.length-1)===63)w=w.slice(0,-1);if(!X)this.history.push([z,w,U]);let Q=w.split(F6.regex.static),Y=w.match(F6.regex.params)||[];if(Q[Q.length-1]==="")Q.pop();let J;if(!this.root[z])J=this.root[z]=o6("/");else J=this.root[z];let G=0;for(let S=0;S<Q.length;++S){let N=Q[S];if(S>0){let O=Y[G++].slice(1);if(J.params===null)J.params=Mw(O);else if(J.params.name!==O)if(W)return U;else throw new Error(`Cannot create route "${w}" with parameter "${O}" because a route already exists with a different parameter name ("${J.params.name}") in the same location`);let M=J.params;if(M.inert===null){J=M.inert=o6(N);continue}J=M.inert}for(let O=0;;){if(O===N.length){if(O<J.part.length){let M=Bw(J,J.part.slice(O));Object.assign(J,o6(N,[M]))}break}if(O===J.part.length){if(J.inert===null)J.inert={};let M=J.inert[N.charCodeAt(O)];if(M){J=M,N=N.slice(O),O=0;continue}let C=o6(N.slice(O));J.inert[N.charCodeAt(O)]=C,J=C;break}if(N[O]!==J.part[O]){let M=Bw(J,J.part.slice(O)),C=o6(N.slice(O));Object.assign(J,o6(J.part.slice(0,O),[M,C])),J=C;break}++O}}if(G<Y.length){let S=Y[G].slice(1);if(J.params===null)J.params=Mw(S);else if(J.params.name!==S)if(W)return U;else throw new Error(`Cannot create route "${w}" with parameter "${S}" because a route already exists with a different parameter name ("${J.params.name}") in the same location`);if(J.params.store===null)J.params.store=U;return J.params.store}if($){if(J.wildcardStore===null)J.wildcardStore=U;return J.wildcardStore}if(J.store===null)J.store=U;return J.store}find(z,w){let U=this.root[z];if(!U)return null;return Z8(w,w.length,U,0)}}var Z8=(z,w,U,W)=>{let X=U.part,Z=X.length,$=W+Z;if(Z>1){if($>w)return null;if(Z<15){for(let A=1,Q=W+1;A<Z;++A,++Q)if(X.charCodeAt(A)!==z.charCodeAt(Q))return null}else if(z.slice(W,$)!==X)return null}if($===w){if(U.store!==null)return{store:U.store,params:{}};if(U.wildcardStore!==null)return{store:U.wildcardStore,params:{"*":""}};return null}if(U.inert!==null){let A=U.inert[z.charCodeAt($)];if(A!==void 0){let Q=Z8(z,w,A,$);if(Q!==null)return Q}}if(U.params!==null){let{store:A,name:Q,inert:Y}=U.params,J=z.indexOf("/",$);if(J!==$){if(J===-1||J>=w){if(A!==null){let G={};return G[Q]=z.substring($,w),{store:A,params:G}}}else if(Y!==null){let G=Z8(z,w,Y,J);if(G!==null)return G.params[Q]=z.substring($,J),G}}}if(U.wildcardStore!==null)return{store:U.wildcardStore,params:{"*":z.substring($,w)}};return null};var Y2={};j6(Y2,{IsUndefined:()=>t0,IsUint8Array:()=>h1,IsSymbol:()=>Wz,IsString:()=>j0,IsRegExp:()=>K4,IsObject:()=>P0,IsNumber:()=>V2,IsNull:()=>Uz,IsIterator:()=>wz,IsFunction:()=>zz,IsDate:()=>E6,IsBoolean:()=>d1,IsBigInt:()=>b4,IsAsyncIterator:()=>e5,IsArray:()=>m0,HasPropertyKey:()=>$8});function $8(z,w){return w in z}function e5(z){return P0(z)&&!m0(z)&&!h1(z)&&Symbol.asyncIterator in z}function m0(z){return Array.isArray(z)}function b4(z){return typeof z==="bigint"}function d1(z){return typeof z==="boolean"}function E6(z){return z instanceof globalThis.Date}function zz(z){return typeof z==="function"}function wz(z){return P0(z)&&!m0(z)&&!h1(z)&&Symbol.iterator in z}function Uz(z){return z===null}function V2(z){return typeof z==="number"}function P0(z){return typeof z==="object"&&z!==null}function K4(z){return z instanceof globalThis.RegExp}function j0(z){return typeof z==="string"}function Wz(z){return typeof z==="symbol"}function h1(z){return z instanceof globalThis.Uint8Array}function t0(z){return z===void 0}function CX(z){return z.map((w)=>A8(w))}function bX(z){return new Date(z.getTime())}function KX(z){return new Uint8Array(z)}function jX(z){return new RegExp(z.source,z.flags)}function FX(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=A8(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=A8(z[U]);return w}function A8(z){return m0(z)?CX(z):E6(z)?bX(z):h1(z)?KX(z):K4(z)?jX(z):P0(z)?FX(z):z}function V0(z){return A8(z)}function p6(z,w){return w===void 0?V0(z):V0({...w,...z})}function Q8(z){return l(z)&&globalThis.Symbol.asyncIterator in z}function Y8(z){return l(z)&&globalThis.Symbol.iterator in z}function Xz(z){return l(z)&&(globalThis.Object.getPrototypeOf(z)===Object.prototype||globalThis.Object.getPrototypeOf(z)===null)}function J8(z){return z instanceof globalThis.Promise}function G2(z){return z instanceof Date&&globalThis.Number.isFinite(z.getTime())}function qw(z){return z instanceof globalThis.Map}function Lw(z){return z instanceof globalThis.Set}function v2(z){return globalThis.ArrayBuffer.isView(z)}function l6(z){return z instanceof globalThis.Uint8Array}function u(z,w){return w in z}function l(z){return z!==null&&typeof z==="object"}function m(z){return globalThis.Array.isArray(z)&&!globalThis.ArrayBuffer.isView(z)}function k0(z){return z===void 0}function c1(z){return z===null}function F1(z){return typeof z==="boolean"}function v(z){return typeof z==="number"}function B8(z){return globalThis.Number.isInteger(z)}function X2(z){return typeof z==="bigint"}function A0(z){return typeof z==="string"}function $6(z){return typeof z==="function"}function i1(z){return typeof z==="symbol"}function k2(z){return X2(z)||F1(z)||c1(z)||v(z)||A0(z)||i1(z)||k0(z)}var I0;(function(z){z.InstanceMode="default",z.ExactOptionalPropertyTypes=!1,z.AllowArrayObject=!1,z.AllowNaN=!1,z.AllowNullVoid=!1;function w($,A){return z.ExactOptionalPropertyTypes?A in $:$[A]!==void 0}z.IsExactOptionalProperty=w;function U($){let A=l($);return z.AllowArrayObject?A:A&&!m($)}z.IsObjectLike=U;function W($){return U($)&&!($ instanceof Date)&&!($ instanceof Uint8Array)}z.IsRecordLike=W;function X($){return z.AllowNaN?v($):Number.isFinite($)}z.IsNumberLike=X;function Z($){let A=k0($);return z.AllowNullVoid?A||$===null:A}z.IsVoidLike=Z})(I0||(I0={}));function EX(z){return globalThis.Object.freeze(z).map((w)=>j4(w))}function IX(z){return z}function xX(z){return z}function VX(z){return z}function kX(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=j4(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=j4(z[U]);return globalThis.Object.freeze(w)}function j4(z){return m0(z)?EX(z):E6(z)?IX(z):h1(z)?xX(z):K4(z)?VX(z):P0(z)?kX(z):z}function D(z,w){let U=w!==void 0?{...w,...z}:z;switch(I0.InstanceMode){case"freeze":return j4(U);case"clone":return V0(U);default:return U}}class n extends Error{constructor(z){super(z)}}var F0=Symbol.for("TypeBox.Transform"),$1=Symbol.for("TypeBox.Readonly"),Z2=Symbol.for("TypeBox.Optional"),n2=Symbol.for("TypeBox.Hint"),H=Symbol.for("TypeBox.Kind");function s6(z){return P0(z)&&z[$1]==="Readonly"}function S2(z){return P0(z)&&z[Z2]==="Optional"}function Zz(z){return X0(z,"Any")}function $z(z){return X0(z,"Argument")}function A1(z){return X0(z,"Array")}function I6(z){return X0(z,"AsyncIterator")}function x6(z){return X0(z,"BigInt")}function y1(z){return X0(z,"Boolean")}function Q1(z){return X0(z,"Computed")}function Y1(z){return X0(z,"Constructor")}function TX(z){return X0(z,"Date")}function J1(z){return X0(z,"Function")}function B1(z){return X0(z,"Integer")}function c0(z){return X0(z,"Intersect")}function V6(z){return X0(z,"Iterator")}function X0(z,w){return P0(z)&&H in z&&z[H]===w}function M8(z){return d1(z)||V2(z)||j0(z)}function T2(z){return X0(z,"Literal")}function g2(z){return X0(z,"MappedKey")}function T0(z){return X0(z,"MappedResult")}function A6(z){return X0(z,"Never")}function gX(z){return X0(z,"Not")}function F4(z){return X0(z,"Null")}function M1(z){return X0(z,"Number")}function o0(z){return X0(z,"Object")}function k6(z){return X0(z,"Promise")}function T6(z){return X0(z,"Record")}function u0(z){return X0(z,"Ref")}function Az(z){return X0(z,"RegExp")}function v1(z){return X0(z,"String")}function E4(z){return X0(z,"Symbol")}function f2(z){return X0(z,"TemplateLiteral")}function fX(z){return X0(z,"This")}function G0(z){return P0(z)&&F0 in z}function d2(z){return X0(z,"Tuple")}function n1(z){return X0(z,"Undefined")}function Q0(z){return X0(z,"Union")}function dX(z){return X0(z,"Uint8Array")}function hX(z){return X0(z,"Unknown")}function cX(z){return X0(z,"Unsafe")}function iX(z){return X0(z,"Void")}function Q6(z){return P0(z)&&H in z&&j0(z[H])}function f0(z){return Zz(z)||$z(z)||A1(z)||y1(z)||x6(z)||I6(z)||Q1(z)||Y1(z)||TX(z)||J1(z)||B1(z)||c0(z)||V6(z)||T2(z)||g2(z)||T0(z)||A6(z)||gX(z)||F4(z)||M1(z)||o0(z)||k6(z)||T6(z)||u0(z)||Az(z)||v1(z)||E4(z)||f2(z)||fX(z)||d2(z)||n1(z)||Q0(z)||dX(z)||hX(z)||cX(z)||iX(z)||Q6(z)}var q={};j6(q,{TypeGuardUnknownTypeError:()=>Gw,IsVoid:()=>U9,IsUnsafe:()=>w9,IsUnknown:()=>z9,IsUnionLiteral:()=>lX,IsUnion:()=>Jz,IsUndefined:()=>aw,IsUint8Array:()=>ew,IsTuple:()=>rw,IsTransform:()=>sw,IsThis:()=>lw,IsTemplateLiteral:()=>pw,IsSymbol:()=>ow,IsString:()=>tw,IsSchema:()=>g0,IsRegExp:()=>mw,IsRef:()=>uw,IsRecursive:()=>pX,IsRecord:()=>nw,IsReadonly:()=>uX,IsProperties:()=>q8,IsPromise:()=>vw,IsOptional:()=>mX,IsObject:()=>yw,IsNumber:()=>iw,IsNull:()=>cw,IsNot:()=>hw,IsNever:()=>dw,IsMappedResult:()=>fw,IsMappedKey:()=>gw,IsLiteralValue:()=>Tw,IsLiteralString:()=>Vw,IsLiteralNumber:()=>kw,IsLiteralBoolean:()=>oX,IsLiteral:()=>x4,IsKindOf:()=>z0,IsKind:()=>W9,IsIterator:()=>xw,IsIntersect:()=>Iw,IsInteger:()=>Ew,IsImport:()=>tX,IsFunction:()=>Fw,IsDate:()=>jw,IsConstructor:()=>Kw,IsComputed:()=>bw,IsBoolean:()=>Cw,IsBigInt:()=>Rw,IsAsyncIterator:()=>Ow,IsArray:()=>Pw,IsArgument:()=>Dw,IsAny:()=>Sw});class Gw extends n{}var yX=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function Nw(z){try{return new RegExp(z),!0}catch{return!1}}function Qz(z){if(!j0(z))return!1;for(let w=0;w<z.length;w++){let U=z.charCodeAt(w);if(U>=7&&U<=13||U===27||U===127)return!1}return!0}function Hw(z){return Yz(z)||g0(z)}function I4(z){return t0(z)||b4(z)}function E0(z){return t0(z)||V2(z)}function Yz(z){return t0(z)||d1(z)}function O0(z){return t0(z)||j0(z)}function vX(z){return t0(z)||j0(z)&&Qz(z)&&Nw(z)}function nX(z){return t0(z)||j0(z)&&Qz(z)}function _w(z){return t0(z)||g0(z)}function uX(z){return P0(z)&&z[$1]==="Readonly"}function mX(z){return P0(z)&&z[Z2]==="Optional"}function Sw(z){return z0(z,"Any")&&O0(z.$id)}function Dw(z){return z0(z,"Argument")&&V2(z.index)}function Pw(z){return z0(z,"Array")&&z.type==="array"&&O0(z.$id)&&g0(z.items)&&E0(z.minItems)&&E0(z.maxItems)&&Yz(z.uniqueItems)&&_w(z.contains)&&E0(z.minContains)&&E0(z.maxContains)}function Ow(z){return z0(z,"AsyncIterator")&&z.type==="AsyncIterator"&&O0(z.$id)&&g0(z.items)}function Rw(z){return z0(z,"BigInt")&&z.type==="bigint"&&O0(z.$id)&&I4(z.exclusiveMaximum)&&I4(z.exclusiveMinimum)&&I4(z.maximum)&&I4(z.minimum)&&I4(z.multipleOf)}function Cw(z){return z0(z,"Boolean")&&z.type==="boolean"&&O0(z.$id)}function bw(z){return z0(z,"Computed")&&j0(z.target)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))}function Kw(z){return z0(z,"Constructor")&&z.type==="Constructor"&&O0(z.$id)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))&&g0(z.returns)}function jw(z){return z0(z,"Date")&&z.type==="Date"&&O0(z.$id)&&E0(z.exclusiveMaximumTimestamp)&&E0(z.exclusiveMinimumTimestamp)&&E0(z.maximumTimestamp)&&E0(z.minimumTimestamp)&&E0(z.multipleOfTimestamp)}function Fw(z){return z0(z,"Function")&&z.type==="Function"&&O0(z.$id)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))&&g0(z.returns)}function tX(z){return z0(z,"Import")&&$8(z,"$defs")&&P0(z.$defs)&&q8(z.$defs)&&$8(z,"$ref")&&j0(z.$ref)&&z.$ref in z.$defs}function Ew(z){return z0(z,"Integer")&&z.type==="integer"&&O0(z.$id)&&E0(z.exclusiveMaximum)&&E0(z.exclusiveMinimum)&&E0(z.maximum)&&E0(z.minimum)&&E0(z.multipleOf)}function q8(z){return P0(z)&&Object.entries(z).every(([w,U])=>Qz(w)&&g0(U))}function Iw(z){return z0(z,"Intersect")&&(j0(z.type)&&z.type!=="object"?!1:!0)&&m0(z.allOf)&&z.allOf.every((w)=>g0(w)&&!sw(w))&&O0(z.type)&&(Yz(z.unevaluatedProperties)||_w(z.unevaluatedProperties))&&O0(z.$id)}function xw(z){return z0(z,"Iterator")&&z.type==="Iterator"&&O0(z.$id)&&g0(z.items)}function z0(z,w){return P0(z)&&H in z&&z[H]===w}function Vw(z){return x4(z)&&j0(z.const)}function kw(z){return x4(z)&&V2(z.const)}function oX(z){return x4(z)&&d1(z.const)}function x4(z){return z0(z,"Literal")&&O0(z.$id)&&Tw(z.const)}function Tw(z){return d1(z)||V2(z)||j0(z)}function gw(z){return z0(z,"MappedKey")&&m0(z.keys)&&z.keys.every((w)=>V2(w)||j0(w))}function fw(z){return z0(z,"MappedResult")&&q8(z.properties)}function dw(z){return z0(z,"Never")&&P0(z.not)&&Object.getOwnPropertyNames(z.not).length===0}function hw(z){return z0(z,"Not")&&g0(z.not)}function cw(z){return z0(z,"Null")&&z.type==="null"&&O0(z.$id)}function iw(z){return z0(z,"Number")&&z.type==="number"&&O0(z.$id)&&E0(z.exclusiveMaximum)&&E0(z.exclusiveMinimum)&&E0(z.maximum)&&E0(z.minimum)&&E0(z.multipleOf)}function yw(z){return z0(z,"Object")&&z.type==="object"&&O0(z.$id)&&q8(z.properties)&&Hw(z.additionalProperties)&&E0(z.minProperties)&&E0(z.maxProperties)}function vw(z){return z0(z,"Promise")&&z.type==="Promise"&&O0(z.$id)&&g0(z.item)}function nw(z){return z0(z,"Record")&&z.type==="object"&&O0(z.$id)&&Hw(z.additionalProperties)&&P0(z.patternProperties)&&((w)=>{let U=Object.getOwnPropertyNames(w.patternProperties);return U.length===1&&Nw(U[0])&&P0(w.patternProperties)&&g0(w.patternProperties[U[0]])})(z)}function pX(z){return P0(z)&&n2 in z&&z[n2]==="Recursive"}function uw(z){return z0(z,"Ref")&&O0(z.$id)&&j0(z.$ref)}function mw(z){return z0(z,"RegExp")&&O0(z.$id)&&j0(z.source)&&j0(z.flags)&&E0(z.maxLength)&&E0(z.minLength)}function tw(z){return z0(z,"String")&&z.type==="string"&&O0(z.$id)&&E0(z.minLength)&&E0(z.maxLength)&&vX(z.pattern)&&nX(z.format)}function ow(z){return z0(z,"Symbol")&&z.type==="symbol"&&O0(z.$id)}function pw(z){return z0(z,"TemplateLiteral")&&z.type==="string"&&j0(z.pattern)&&z.pattern[0]==="^"&&z.pattern[z.pattern.length-1]==="$"}function lw(z){return z0(z,"This")&&O0(z.$id)&&j0(z.$ref)}function sw(z){return P0(z)&&F0 in z}function rw(z){return z0(z,"Tuple")&&z.type==="array"&&O0(z.$id)&&V2(z.minItems)&&V2(z.maxItems)&&z.minItems===z.maxItems&&(t0(z.items)&&t0(z.additionalItems)&&z.minItems===0||m0(z.items)&&z.items.every((w)=>g0(w)))}function aw(z){return z0(z,"Undefined")&&z.type==="undefined"&&O0(z.$id)}function lX(z){return Jz(z)&&z.anyOf.every((w)=>Vw(w)||kw(w))}function Jz(z){return z0(z,"Union")&&O0(z.$id)&&P0(z)&&m0(z.anyOf)&&z.anyOf.every((w)=>g0(w))}function ew(z){return z0(z,"Uint8Array")&&z.type==="Uint8Array"&&O0(z.$id)&&E0(z.minByteLength)&&E0(z.maxByteLength)}function z9(z){return z0(z,"Unknown")&&O0(z.$id)}function w9(z){return z0(z,"Unsafe")}function U9(z){return z0(z,"Void")&&z.type==="void"&&O0(z.$id)}function W9(z){return P0(z)&&H in z&&j0(z[H])&&!yX.includes(z[H])}function g0(z){return P0(z)&&(Sw(z)||Dw(z)||Pw(z)||Cw(z)||Rw(z)||Ow(z)||bw(z)||Kw(z)||jw(z)||Fw(z)||Ew(z)||Iw(z)||xw(z)||x4(z)||gw(z)||fw(z)||dw(z)||hw(z)||cw(z)||iw(z)||yw(z)||vw(z)||nw(z)||uw(z)||mw(z)||tw(z)||ow(z)||pw(z)||lw(z)||rw(z)||aw(z)||Jz(z)||ew(z)||z9(z)||w9(z)||U9(z)||W9(z))}var X9="(true|false)",L8="(0|[1-9][0-9]*)",Z9="(.*)";var E1="^(0|[1-9][0-9]*)$",I1="^(.*)$",$9="^(?!.*)$";var D0={};j6(D0,{Set:()=>zZ,Has:()=>eX,Get:()=>wZ,Entries:()=>sX,Delete:()=>aX,Clear:()=>rX});var r6=new Map;function sX(){return new Map(r6)}function rX(){return r6.clear()}function aX(z){return r6.delete(z)}function eX(z){return r6.has(z)}function zZ(z,w){r6.set(z,w)}function wZ(z){return r6.get(z)}var p0={};j6(p0,{Set:()=>$Z,Has:()=>ZZ,Get:()=>AZ,Entries:()=>UZ,Delete:()=>XZ,Clear:()=>WZ});var a6=new Map;function UZ(){return new Map(a6)}function WZ(){return a6.clear()}function XZ(z){return a6.delete(z)}function ZZ(z){return a6.has(z)}function $Z(z,w){a6.set(z,w)}function AZ(z){return a6.get(z)}function A9(z,w){return z.includes(w)}function Q9(z){return[...new Set(z)]}function QZ(z,w){return z.filter((U)=>w.includes(U))}function YZ(z,w){return z.reduce((U,W)=>{return QZ(U,W)},w)}function Y9(z){return z.length===1?z[0]:z.length>1?YZ(z.slice(1),z[0]):[]}function J9(z){let w=[];for(let U of z)w.push(...U);return w}function Y6(z){return D({[H]:"Any"},z)}function e6(z,w){return D({[H]:"Array",type:"array",items:z},w)}function B9(z){return D({[H]:"Argument",index:z})}function z4(z,w){return D({[H]:"AsyncIterator",type:"AsyncIterator",items:z},w)}function x0(z,w,U){return D({[H]:"Computed",target:z,parameters:w},U)}function JZ(z,w){let{[w]:U,...W}=z;return W}function i0(z,w){return w.reduce((U,W)=>JZ(U,W),z)}function p(z){return D({[H]:"Never",not:{}},z)}function J0(z){return D({[H]:"MappedResult",properties:z})}function w4(z,w,U){return D({[H]:"Constructor",type:"Constructor",parameters:z,returns:w},U)}function x1(z,w,U){return D({[H]:"Function",type:"Function",parameters:z,returns:w},U)}function V4(z,w){return D({[H]:"Union",anyOf:z},w)}function BZ(z){return z.some((w)=>S2(w))}function M9(z){return z.map((w)=>S2(w)?MZ(w):w)}function MZ(z){return i0(z,[Z2])}function qZ(z,w){return BZ(z)?J2(V4(M9(z),w)):V4(M9(z),w)}function V1(z,w){return z.length===1?D(z[0],w):z.length===0?p(w):qZ(z,w)}function N0(z,w){return z.length===0?p(w):z.length===1?D(z[0],w):V4(z,w)}class Bz extends n{}function LZ(z){return z.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function Mz(z,w,U){return z[w]===U&&z.charCodeAt(w-1)!==92}function m1(z,w){return Mz(z,w,"(")}function k4(z,w){return Mz(z,w,")")}function q9(z,w){return Mz(z,w,"|")}function GZ(z){if(!(m1(z,0)&&k4(z,z.length-1)))return!1;let w=0;for(let U=0;U<z.length;U++){if(m1(z,U))w+=1;if(k4(z,U))w-=1;if(w===0&&U!==z.length-1)return!1}return!0}function NZ(z){return z.slice(1,z.length-1)}function HZ(z){let w=0;for(let U=0;U<z.length;U++){if(m1(z,U))w+=1;if(k4(z,U))w-=1;if(q9(z,U)&&w===0)return!0}return!1}function _Z(z){for(let w=0;w<z.length;w++)if(m1(z,w))return!0;return!1}function SZ(z){let[w,U]=[0,0],W=[];for(let Z=0;Z<z.length;Z++){if(m1(z,Z))w+=1;if(k4(z,Z))w-=1;if(q9(z,Z)&&w===0){let $=z.slice(U,Z);if($.length>0)W.push(U4($));U=Z+1}}let X=z.slice(U);if(X.length>0)W.push(U4(X));if(W.length===0)return{type:"const",const:""};if(W.length===1)return W[0];return{type:"or",expr:W}}function DZ(z){function w(X,Z){if(!m1(X,Z))throw new Bz("TemplateLiteralParser: Index must point to open parens");let $=0;for(let A=Z;A<X.length;A++){if(m1(X,A))$+=1;if(k4(X,A))$-=1;if($===0)return[Z,A]}throw new Bz("TemplateLiteralParser: Unclosed group parens in expression")}function U(X,Z){for(let $=Z;$<X.length;$++)if(m1(X,$))return[Z,$];return[Z,X.length]}let W=[];for(let X=0;X<z.length;X++)if(m1(z,X)){let[Z,$]=w(z,X),A=z.slice(Z,$+1);W.push(U4(A)),X=$}else{let[Z,$]=U(z,X),A=z.slice(Z,$);if(A.length>0)W.push(U4(A));X=$-1}return W.length===0?{type:"const",const:""}:W.length===1?W[0]:{type:"and",expr:W}}function U4(z){return GZ(z)?U4(NZ(z)):HZ(z)?SZ(z):_Z(z)?DZ(z):{type:"const",const:LZ(z)}}function W4(z){return U4(z.slice(1,z.length-1))}class L9 extends n{}function PZ(z){return z.type==="or"&&z.expr.length===2&&z.expr[0].type==="const"&&z.expr[0].const==="0"&&z.expr[1].type==="const"&&z.expr[1].const==="[1-9][0-9]*"}function OZ(z){return z.type==="or"&&z.expr.length===2&&z.expr[0].type==="const"&&z.expr[0].const==="true"&&z.expr[1].type==="const"&&z.expr[1].const==="false"}function RZ(z){return z.type==="const"&&z.const===".*"}function g6(z){return PZ(z)||RZ(z)?!1:OZ(z)?!0:z.type==="and"?z.expr.every((w)=>g6(w)):z.type==="or"?z.expr.every((w)=>g6(w)):z.type==="const"?!0:(()=>{throw new L9("Unknown expression type")})()}function G8(z){let w=W4(z.pattern);return g6(w)}class G9 extends n{}function*N9(z){if(z.length===1)return yield*z[0];for(let w of z[0])for(let U of N9(z.slice(1)))yield`${w}${U}`}function*CZ(z){return yield*N9(z.expr.map((w)=>[...T4(w)]))}function*bZ(z){for(let w of z.expr)yield*T4(w)}function*KZ(z){return yield z.const}function*T4(z){return z.type==="and"?yield*CZ(z):z.type==="or"?yield*bZ(z):z.type==="const"?yield*KZ(z):(()=>{throw new G9("Unknown expression")})()}function X4(z){let w=W4(z.pattern);return g6(w)?[...T4(w)]:[]}function Z0(z,w){return D({[H]:"Literal",const:z,type:typeof z},w)}function N8(z){return D({[H]:"Boolean",type:"boolean"},z)}function Z4(z){return D({[H]:"BigInt",type:"bigint"},z)}function u2(z){return D({[H]:"Number",type:"number"},z)}function N2(z){return D({[H]:"String",type:"string"},z)}function*jZ(z){let w=z.trim().replace(/"|'/g,"");return w==="boolean"?yield N8():w==="number"?yield u2():w==="bigint"?yield Z4():w==="string"?yield N2():yield(()=>{let U=w.split("|").map((W)=>Z0(W.trim()));return U.length===0?p():U.length===1?U[0]:V1(U)})()}function*FZ(z){if(z[1]!=="{"){let w=Z0("$"),U=qz(z.slice(1));return yield*[w,...U]}for(let w=2;w<z.length;w++)if(z[w]==="}"){let U=jZ(z.slice(2,w)),W=qz(z.slice(w+1));return yield*[...U,...W]}yield Z0(z)}function*qz(z){for(let w=0;w<z.length;w++)if(z[w]==="$"){let U=Z0(z.slice(0,w)),W=FZ(z.slice(w));return yield*[U,...W]}yield Z0(z)}function H9(z){return[...qz(z)]}class _9 extends n{}function EZ(z){return z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function S9(z,w){return f2(z)?z.pattern.slice(1,z.pattern.length-1):Q0(z)?`(${z.anyOf.map((U)=>S9(U,w)).join("|")})`:M1(z)?`${w}${L8}`:B1(z)?`${w}${L8}`:x6(z)?`${w}${L8}`:v1(z)?`${w}${Z9}`:T2(z)?`${w}${EZ(z.const.toString())}`:y1(z)?`${w}${X9}`:(()=>{throw new _9(`Unexpected Kind '${z[H]}'`)})()}function Lz(z){return`^${z.map((w)=>S9(w,"")).join("")}$`}function f6(z){let U=X4(z).map((W)=>Z0(W));return V1(U)}function H8(z,w){let U=j0(z)?Lz(H9(z)):Lz(z);return D({[H]:"TemplateLiteral",type:"string",pattern:U},w)}function IZ(z){return X4(z).map((U)=>U.toString())}function xZ(z){let w=[];for(let U of z)w.push(...D2(U));return w}function VZ(z){return[z.toString()]}function D2(z){return[...new Set(f2(z)?IZ(z):Q0(z)?xZ(z.anyOf):T2(z)?VZ(z.const):M1(z)?["[number]"]:B1(z)?["[number]"]:[])]}function kZ(z,w,U){let W={};for(let X of Object.getOwnPropertyNames(w))W[X]=J6(z,D2(w[X]),U);return W}function TZ(z,w,U){return kZ(z,w.properties,U)}function D9(z,w,U){let W=TZ(z,w,U);return J0(W)}function O9(z,w){return z.map((U)=>R9(U,w))}function gZ(z){return z.filter((w)=>!A6(w))}function fZ(z,w){return _8(gZ(O9(z,w)))}function dZ(z){return z.some((w)=>A6(w))?[]:z}function hZ(z,w){return V1(dZ(O9(z,w)))}function cZ(z,w){return w in z?z[w]:w==="[number]"?V1(z):p()}function iZ(z,w){return w==="[number]"?z:p()}function yZ(z,w){return w in z?z[w]:p()}function R9(z,w){return c0(z)?fZ(z.allOf,w):Q0(z)?hZ(z.anyOf,w):d2(z)?cZ(z.items??[],w):A1(z)?iZ(z.items,w):o0(z)?yZ(z.properties,w):p()}function g4(z,w){return w.map((U)=>R9(z,U))}function P9(z,w){return V1(g4(z,w))}function J6(z,w,U){if(u0(z)||u0(w)){if(!f0(z)||!f0(w))throw new n("Index types using Ref parameters require both Type and Key to be of TSchema");return x0("Index",[z,w])}if(T0(w))return D9(z,w,U);if(g2(w))return C9(z,w,U);return D(f0(w)?P9(z,D2(w)):P9(z,w),U)}function vZ(z,w,U){return{[w]:J6(z,[w],V0(U))}}function nZ(z,w,U){return w.reduce((W,X)=>{return{...W,...vZ(z,X,U)}},{})}function uZ(z,w,U){return nZ(z,w.keys,U)}function C9(z,w,U){let W=uZ(z,w,U);return J0(W)}function $4(z,w){return D({[H]:"Iterator",type:"Iterator",items:z},w)}function mZ(z){let w=[];for(let U in z)if(!S2(z[U]))w.push(U);return w}function tZ(z,w){let U=mZ(z),W=U.length>0?{[H]:"Object",type:"object",properties:z,required:U}:{[H]:"Object",type:"object",properties:z};return D(W,w)}var H0=tZ;function S8(z,w){return D({[H]:"Promise",type:"Promise",item:z},w)}function oZ(z){return D(i0(z,[$1]))}function pZ(z){return D({...z,[$1]:"Readonly"})}function lZ(z,w){return w===!1?oZ(z):pZ(z)}function P2(z,w){let U=w??!0;return T0(z)?b9(z,U):lZ(z,U)}function sZ(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=P2(z[W],w);return U}function rZ(z,w){return sZ(z.properties,w)}function b9(z,w){let U=rZ(z,w);return J0(U)}function m2(z,w){return D(z.length>0?{[H]:"Tuple",type:"array",items:z,additionalItems:!1,minItems:z.length,maxItems:z.length}:{[H]:"Tuple",type:"array",minItems:z.length,maxItems:z.length},w)}function K9(z,w){return z in w?t2(z,w[z]):J0(w)}function aZ(z){return{[z]:Z0(z)}}function eZ(z){let w={};for(let U of z)w[U]=Z0(U);return w}function z$(z,w){return A9(w,z)?aZ(z):eZ(w)}function w$(z,w){let U=z$(z,w);return K9(z,U)}function f4(z,w){return w.map((U)=>t2(z,U))}function U$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(w))U[W]=t2(z,w[W]);return U}function t2(z,w){let U={...w};return S2(w)?J2(t2(z,i0(w,[Z2]))):s6(w)?P2(t2(z,i0(w,[$1]))):T0(w)?K9(z,w.properties):g2(w)?w$(z,w.keys):Y1(w)?w4(f4(z,w.parameters),t2(z,w.returns),U):J1(w)?x1(f4(z,w.parameters),t2(z,w.returns),U):I6(w)?z4(t2(z,w.items),U):V6(w)?$4(t2(z,w.items),U):c0(w)?B2(f4(z,w.allOf),U):Q0(w)?N0(f4(z,w.anyOf),U):d2(w)?m2(f4(z,w.items??[]),U):o0(w)?H0(U$(z,w.properties),U):A1(w)?e6(t2(z,w.items),U):k6(w)?S8(t2(z,w.item),U):w}function W$(z,w){let U={};for(let W of z)U[W]=t2(W,w);return U}function j9(z,w,U){let W=f0(z)?D2(z):z,X=w({[H]:"MappedKey",keys:W}),Z=W$(W,X);return H0(Z,U)}function X$(z){return D(i0(z,[Z2]))}function Z$(z){return D({...z,[Z2]:"Optional"})}function $$(z,w){return w===!1?X$(z):Z$(z)}function J2(z,w){let U=w??!0;return T0(z)?F9(z,U):$$(z,U)}function A$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=J2(z[W],w);return U}function Q$(z,w){return A$(z.properties,w)}function F9(z,w){let U=Q$(z,w);return J0(U)}function d4(z,w={}){let U=z.every((X)=>o0(X)),W=f0(w.unevaluatedProperties)?{unevaluatedProperties:w.unevaluatedProperties}:{};return D(w.unevaluatedProperties===!1||f0(w.unevaluatedProperties)||U?{...W,[H]:"Intersect",type:"object",allOf:z}:{...W,[H]:"Intersect",allOf:z},w)}function Y$(z){return z.every((w)=>S2(w))}function J$(z){return i0(z,[Z2])}function E9(z){return z.map((w)=>S2(w)?J$(w):w)}function B$(z,w){return Y$(z)?J2(d4(E9(z),w)):d4(E9(z),w)}function _8(z,w={}){if(z.length===1)return D(z[0],w);if(z.length===0)return p(w);if(z.some((U)=>G0(U)))throw new Error("Cannot intersect transform types");return B$(z,w)}function B2(z,w){if(z.length===1)return D(z[0],w);if(z.length===0)return p(w);if(z.some((U)=>G0(U)))throw new Error("Cannot intersect transform types");return d4(z,w)}function o2(...z){let[w,U]=typeof z[0]==="string"?[z[0],z[1]]:[z[0].$id,z[1]];if(typeof w!=="string")throw new n("Ref: $ref must be a string");return D({[H]:"Ref",$ref:w},U)}function M$(z,w){return x0("Awaited",[x0(z,w)])}function q$(z){return x0("Awaited",[o2(z)])}function L$(z){return B2(I9(z))}function G$(z){return N0(I9(z))}function N$(z){return A4(z)}function I9(z){return z.map((w)=>A4(w))}function A4(z,w){return D(Q1(z)?M$(z.target,z.parameters):c0(z)?L$(z.allOf):Q0(z)?G$(z.anyOf):k6(z)?N$(z.item):u0(z)?q$(z.$ref):z,w)}function x9(z){let w=[];for(let U of z)w.push(O2(U));return w}function H$(z){let w=x9(z);return J9(w)}function _$(z){let w=x9(z);return Y9(w)}function S$(z){return z.map((w,U)=>U.toString())}function D$(z){return["[number]"]}function P$(z){return globalThis.Object.getOwnPropertyNames(z)}function O$(z){if(!Gz)return[];return globalThis.Object.getOwnPropertyNames(z).map((U)=>{return U[0]==="^"&&U[U.length-1]==="$"?U.slice(1,U.length-1):U})}function O2(z){return c0(z)?H$(z.allOf):Q0(z)?_$(z.anyOf):d2(z)?S$(z.items??[]):A1(z)?D$(z.items):o0(z)?P$(z.properties):T6(z)?O$(z.patternProperties):[]}var Gz=!1;function t1(z){Gz=!0;let w=O2(z);return Gz=!1,`^(${w.map((W)=>`(${W})`).join("|")})$`}function R$(z,w){return x0("KeyOf",[x0(z,w)])}function C$(z){return x0("KeyOf",[o2(z)])}function b$(z,w){let U=O2(z),W=K$(U),X=V1(W);return D(X,w)}function K$(z){return z.map((w)=>w==="[number]"?u2():Z0(w))}function Q4(z,w){return Q1(z)?R$(z.target,z.parameters):u0(z)?C$(z.$ref):T0(z)?V9(z,w):b$(z,w)}function j$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=Q4(z[W],V0(w));return U}function F$(z,w){return j$(z.properties,w)}function V9(z,w){let U=F$(z,w);return J0(U)}function D8(z){let w=O2(z),U=g4(z,w);return w.map((W,X)=>[w[X],U[X]])}function E$(z){let w=[];for(let U of z)w.push(...O2(U));return Q9(w)}function I$(z){return z.filter((w)=>!A6(w))}function x$(z,w){let U=[];for(let W of z)U.push(...g4(W,[w]));return I$(U)}function V$(z,w){let U={};for(let W of w)U[W]=_8(x$(z,W));return U}function k9(z,w){let U=E$(z),W=V$(z,U);return H0(W,w)}function P8(z){return D({[H]:"Date",type:"Date"},z)}function O8(z){return D({[H]:"Null",type:"null"},z)}function R8(z){return D({[H]:"Symbol",type:"symbol"},z)}function C8(z){return D({[H]:"Undefined",type:"undefined"},z)}function b8(z){return D({[H]:"Uint8Array",type:"Uint8Array"},z)}function q1(z){return D({[H]:"Unknown"},z)}function k$(z){return z.map((w)=>Nz(w,!1))}function T$(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=P2(Nz(z[U],!1));return w}function K8(z,w){return w===!0?z:P2(z)}function Nz(z,w){return e5(z)?K8(Y6(),w):wz(z)?K8(Y6(),w):m0(z)?P2(m2(k$(z))):h1(z)?b8():E6(z)?P8():P0(z)?K8(H0(T$(z)),w):zz(z)?K8(x1([],q1()),w):t0(z)?C8():Uz(z)?O8():Wz(z)?R8():b4(z)?Z4():V2(z)?Z0(z):d1(z)?Z0(z):j0(z)?Z0(z):H0({})}function T9(z,w){return D(Nz(z,!0),w)}function g9(z,w){return Y1(z)?m2(z.parameters,w):p(w)}function f9(z,w){if(t0(z))throw new Error("Enum undefined or empty");let U=globalThis.Object.getOwnPropertyNames(z).filter((Z)=>isNaN(Z)).map((Z)=>z[Z]),X=[...new Set(U)].map((Z)=>Z0(Z));return N0(X,{...w,[n2]:"Enum"})}class y9 extends n{}var P;(function(z){z[z.Union=0]="Union",z[z.True=1]="True",z[z.False=2]="False"})(P||(P={}));function p2(z){return z===P.False?z:P.True}function Y4(z){throw new y9(z)}function l0(z){return q.IsNever(z)||q.IsIntersect(z)||q.IsUnion(z)||q.IsUnknown(z)||q.IsAny(z)}function s0(z,w){return q.IsNever(w)?u9(z,w):q.IsIntersect(w)?j8(z,w):q.IsUnion(w)?Pz(z,w):q.IsUnknown(w)?p9(z,w):q.IsAny(w)?Dz(z,w):Y4("StructuralRight")}function Dz(z,w){return P.True}function g$(z,w){return q.IsIntersect(w)?j8(z,w):q.IsUnion(w)&&w.anyOf.some((U)=>q.IsAny(U)||q.IsUnknown(U))?P.True:q.IsUnion(w)?P.Union:q.IsUnknown(w)?P.True:q.IsAny(w)?P.True:P.Union}function f$(z,w){return q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:q.IsNever(z)?P.True:P.False}function d$(z,w){return q.IsObject(w)&&F8(w)?P.True:l0(w)?s0(z,w):!q.IsArray(w)?P.False:p2(R0(z.items,w.items))}function h$(z,w){return l0(w)?s0(z,w):!q.IsAsyncIterator(w)?P.False:p2(R0(z.items,w.items))}function c$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsBigInt(w)?P.True:P.False}function v9(z,w){return q.IsLiteralBoolean(z)?P.True:q.IsBoolean(z)?P.True:P.False}function i$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsBoolean(w)?P.True:P.False}function y$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsConstructor(w)?P.False:z.parameters.length>w.parameters.length?P.False:!z.parameters.every((U,W)=>p2(R0(w.parameters[W],U))===P.True)?P.False:p2(R0(z.returns,w.returns))}function v$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsDate(w)?P.True:P.False}function n$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsFunction(w)?P.False:z.parameters.length>w.parameters.length?P.False:!z.parameters.every((U,W)=>p2(R0(w.parameters[W],U))===P.True)?P.False:p2(R0(z.returns,w.returns))}function n9(z,w){return q.IsLiteral(z)&&Y2.IsNumber(z.const)?P.True:q.IsNumber(z)||q.IsInteger(z)?P.True:P.False}function u$(z,w){return q.IsInteger(w)||q.IsNumber(w)?P.True:l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):P.False}function j8(z,w){return w.allOf.every((U)=>R0(z,U)===P.True)?P.True:P.False}function m$(z,w){return z.allOf.some((U)=>R0(U,w)===P.True)?P.True:P.False}function t$(z,w){return l0(w)?s0(z,w):!q.IsIterator(w)?P.False:p2(R0(z.items,w.items))}function o$(z,w){return q.IsLiteral(w)&&w.const===z.const?P.True:l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsString(w)?o9(z,w):q.IsNumber(w)?m9(z,w):q.IsInteger(w)?n9(z,w):q.IsBoolean(w)?v9(z,w):P.False}function u9(z,w){return P.False}function p$(z,w){return P.True}function d9(z){let[w,U]=[z,0];while(!0){if(!q.IsNot(w))break;w=w.not,U+=1}return U%2===0?w:q1()}function l$(z,w){return q.IsNot(z)?R0(d9(z),w):q.IsNot(w)?R0(z,d9(w)):Y4("Invalid fallthrough for Not")}function s$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsNull(w)?P.True:P.False}function m9(z,w){return q.IsLiteralNumber(z)?P.True:q.IsNumber(z)||q.IsInteger(z)?P.True:P.False}function r$(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsInteger(w)||q.IsNumber(w)?P.True:P.False}function R2(z,w){return Object.getOwnPropertyNames(z.properties).length===w}function h9(z){return F8(z)}function c9(z){return R2(z,0)||R2(z,1)&&"description"in z.properties&&q.IsUnion(z.properties.description)&&z.properties.description.anyOf.length===2&&(q.IsString(z.properties.description.anyOf[0])&&q.IsUndefined(z.properties.description.anyOf[1])||q.IsString(z.properties.description.anyOf[1])&&q.IsUndefined(z.properties.description.anyOf[0]))}function Hz(z){return R2(z,0)}function i9(z){return R2(z,0)}function a$(z){return R2(z,0)}function e$(z){return R2(z,0)}function zA(z){return F8(z)}function wA(z){let w=u2();return R2(z,0)||R2(z,1)&&"length"in z.properties&&p2(R0(z.properties.length,w))===P.True}function UA(z){return R2(z,0)}function F8(z){let w=u2();return R2(z,0)||R2(z,1)&&"length"in z.properties&&p2(R0(z.properties.length,w))===P.True}function WA(z){let w=x1([Y6()],Y6());return R2(z,0)||R2(z,1)&&"then"in z.properties&&p2(R0(z.properties.then,w))===P.True}function t9(z,w){return R0(z,w)===P.False?P.False:q.IsOptional(z)&&!q.IsOptional(w)?P.False:P.True}function M2(z,w){return q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:q.IsNever(z)||q.IsLiteralString(z)&&h9(w)||q.IsLiteralNumber(z)&&Hz(w)||q.IsLiteralBoolean(z)&&i9(w)||q.IsSymbol(z)&&c9(w)||q.IsBigInt(z)&&a$(w)||q.IsString(z)&&h9(w)||q.IsSymbol(z)&&c9(w)||q.IsNumber(z)&&Hz(w)||q.IsInteger(z)&&Hz(w)||q.IsBoolean(z)&&i9(w)||q.IsUint8Array(z)&&zA(w)||q.IsDate(z)&&e$(w)||q.IsConstructor(z)&&UA(w)||q.IsFunction(z)&&wA(w)?P.True:q.IsRecord(z)&&q.IsString(_z(z))?(()=>{return w[n2]==="Record"?P.True:P.False})():q.IsRecord(z)&&q.IsNumber(_z(z))?(()=>{return R2(w,0)?P.True:P.False})():P.False}function XA(z,w){return l0(w)?s0(z,w):q.IsRecord(w)?l2(z,w):!q.IsObject(w)?P.False:(()=>{for(let U of Object.getOwnPropertyNames(w.properties)){if(!(U in z.properties)&&!q.IsOptional(w.properties[U]))return P.False;if(q.IsOptional(w.properties[U]))return P.True;if(t9(z.properties[U],w.properties[U])===P.False)return P.False}return P.True})()}function ZA(z,w){return l0(w)?s0(z,w):q.IsObject(w)&&WA(w)?P.True:!q.IsPromise(w)?P.False:p2(R0(z.item,w.item))}function _z(z){return E1 in z.patternProperties?u2():(I1 in z.patternProperties)?N2():Y4("Unknown record key pattern")}function Sz(z){return E1 in z.patternProperties?z.patternProperties[E1]:(I1 in z.patternProperties)?z.patternProperties[I1]:Y4("Unable to get record value schema")}function l2(z,w){let[U,W]=[_z(w),Sz(w)];return q.IsLiteralString(z)&&q.IsNumber(U)&&p2(R0(z,W))===P.True?P.True:q.IsUint8Array(z)&&q.IsNumber(U)?R0(z,W):q.IsString(z)&&q.IsNumber(U)?R0(z,W):q.IsArray(z)&&q.IsNumber(U)?R0(z,W):q.IsObject(z)?(()=>{for(let X of Object.getOwnPropertyNames(z.properties))if(t9(W,z.properties[X])===P.False)return P.False;return P.True})():P.False}function $A(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsRecord(w)?P.False:R0(Sz(z),Sz(w))}function AA(z,w){let U=q.IsRegExp(z)?N2():z,W=q.IsRegExp(w)?N2():w;return R0(U,W)}function o9(z,w){return q.IsLiteral(z)&&Y2.IsString(z.const)?P.True:q.IsString(z)?P.True:P.False}function QA(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsString(w)?P.True:P.False}function YA(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsSymbol(w)?P.True:P.False}function JA(z,w){return q.IsTemplateLiteral(z)?R0(f6(z),w):q.IsTemplateLiteral(w)?R0(z,f6(w)):Y4("Invalid fallthrough for TemplateLiteral")}function BA(z,w){return q.IsArray(w)&&z.items!==void 0&&z.items.every((U)=>R0(U,w.items)===P.True)}function MA(z,w){return q.IsNever(z)?P.True:q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:P.False}function qA(z,w){return l0(w)?s0(z,w):q.IsObject(w)&&F8(w)?P.True:q.IsArray(w)&&BA(z,w)?P.True:!q.IsTuple(w)?P.False:Y2.IsUndefined(z.items)&&!Y2.IsUndefined(w.items)||!Y2.IsUndefined(z.items)&&Y2.IsUndefined(w.items)?P.False:Y2.IsUndefined(z.items)&&!Y2.IsUndefined(w.items)?P.True:z.items.every((U,W)=>R0(U,w.items[W])===P.True)?P.True:P.False}function LA(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsUint8Array(w)?P.True:P.False}function GA(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?l2(z,w):q.IsVoid(w)?_A(z,w):q.IsUndefined(w)?P.True:P.False}function Pz(z,w){return w.anyOf.some((U)=>R0(z,U)===P.True)?P.True:P.False}function NA(z,w){return z.anyOf.every((U)=>R0(U,w)===P.True)?P.True:P.False}function p9(z,w){return P.True}function HA(z,w){return q.IsNever(w)?u9(z,w):q.IsIntersect(w)?j8(z,w):q.IsUnion(w)?Pz(z,w):q.IsAny(w)?Dz(z,w):q.IsString(w)?o9(z,w):q.IsNumber(w)?m9(z,w):q.IsInteger(w)?n9(z,w):q.IsBoolean(w)?v9(z,w):q.IsArray(w)?f$(z,w):q.IsTuple(w)?MA(z,w):q.IsObject(w)?M2(z,w):q.IsUnknown(w)?P.True:P.False}function _A(z,w){return q.IsUndefined(z)?P.True:q.IsUndefined(z)?P.True:P.False}function SA(z,w){return q.IsIntersect(w)?j8(z,w):q.IsUnion(w)?Pz(z,w):q.IsUnknown(w)?p9(z,w):q.IsAny(w)?Dz(z,w):q.IsObject(w)?M2(z,w):q.IsVoid(w)?P.True:P.False}function R0(z,w){return q.IsTemplateLiteral(z)||q.IsTemplateLiteral(w)?JA(z,w):q.IsRegExp(z)||q.IsRegExp(w)?AA(z,w):q.IsNot(z)||q.IsNot(w)?l$(z,w):q.IsAny(z)?g$(z,w):q.IsArray(z)?d$(z,w):q.IsBigInt(z)?c$(z,w):q.IsBoolean(z)?i$(z,w):q.IsAsyncIterator(z)?h$(z,w):q.IsConstructor(z)?y$(z,w):q.IsDate(z)?v$(z,w):q.IsFunction(z)?n$(z,w):q.IsInteger(z)?u$(z,w):q.IsIntersect(z)?m$(z,w):q.IsIterator(z)?t$(z,w):q.IsLiteral(z)?o$(z,w):q.IsNever(z)?p$(z,w):q.IsNull(z)?s$(z,w):q.IsNumber(z)?r$(z,w):q.IsObject(z)?XA(z,w):q.IsRecord(z)?$A(z,w):q.IsString(z)?QA(z,w):q.IsSymbol(z)?YA(z,w):q.IsTuple(z)?qA(z,w):q.IsPromise(z)?ZA(z,w):q.IsUint8Array(z)?LA(z,w):q.IsUndefined(z)?GA(z,w):q.IsUnion(z)?NA(z,w):q.IsUnknown(z)?HA(z,w):q.IsVoid(z)?SA(z,w):Y4(`Unknown left type operand '${z[H]}'`)}function B6(z,w){return R0(z,w)}function DA(z,w,U,W,X){let Z={};for(let $ of globalThis.Object.getOwnPropertyNames(z))Z[$]=J4(z[$],w,U,W,V0(X));return Z}function PA(z,w,U,W,X){return DA(z.properties,w,U,W,X)}function l9(z,w,U,W,X){let Z=PA(z,w,U,W,X);return J0(Z)}function OA(z,w,U,W){let X=B6(z,w);return X===P.Union?N0([U,W]):X===P.True?U:W}function J4(z,w,U,W,X){return T0(z)?l9(z,w,U,W,X):g2(z)?D(s9(z,w,U,W,X)):D(OA(z,w,U,W),X)}function RA(z,w,U,W,X){return{[z]:J4(Z0(z),w,U,W,V0(X))}}function CA(z,w,U,W,X){return z.reduce((Z,$)=>{return{...Z,...RA($,w,U,W,X)}},{})}function bA(z,w,U,W,X){return CA(z.keys,w,U,W,X)}function s9(z,w,U,W,X){let Z=bA(z,w,U,W,X);return J0(Z)}function KA(z){return z.allOf.every((w)=>o1(w))}function jA(z){return z.anyOf.some((w)=>o1(w))}function FA(z){return!o1(z.not)}function o1(z){return z[H]==="Intersect"?KA(z):z[H]==="Union"?jA(z):z[H]==="Not"?FA(z):z[H]==="Undefined"?!0:!1}function r9(z,w){return B4(f6(z),w)}function EA(z,w){let U=z.filter((W)=>B6(W,w)===P.False);return U.length===1?U[0]:N0(U)}function B4(z,w,U={}){if(f2(z))return D(r9(z,w),U);if(T0(z))return D(a9(z,w),U);return D(Q0(z)?EA(z.anyOf,w):B6(z,w)!==P.False?p():z,U)}function IA(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=B4(z[W],w);return U}function xA(z,w){return IA(z.properties,w)}function a9(z,w){let U=xA(z,w);return J0(U)}function e9(z,w){return M4(f6(z),w)}function VA(z,w){let U=z.filter((W)=>B6(W,w)!==P.False);return U.length===1?U[0]:N0(U)}function M4(z,w,U){if(f2(z))return D(e9(z,w),U);if(T0(z))return D(z7(z,w),U);return D(Q0(z)?VA(z.anyOf,w):B6(z,w)!==P.False?z:p(),U)}function kA(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=M4(z[W],w);return U}function TA(z,w){return kA(z.properties,w)}function z7(z,w){let U=TA(z,w);return J0(U)}function w7(z,w){return Y1(z)?D(z.returns,w):p(w)}function E8(z){return P2(J2(z))}function d6(z,w,U){return D({[H]:"Record",type:"object",patternProperties:{[z]:w}},U)}function Oz(z,w,U){let W={};for(let X of z)W[X]=w;return H0(W,{...U,[n2]:"Record"})}function gA(z,w,U){return G8(z)?Oz(D2(z),w,U):d6(z.pattern,w,U)}function fA(z,w,U){return Oz(D2(N0(z)),w,U)}function dA(z,w,U){return Oz([z.toString()],w,U)}function hA(z,w,U){return d6(z.source,w,U)}function cA(z,w,U){let W=t0(z.pattern)?I1:z.pattern;return d6(W,w,U)}function iA(z,w,U){return d6(I1,w,U)}function yA(z,w,U){return d6($9,w,U)}function vA(z,w,U){return H0({true:w,false:w},U)}function nA(z,w,U){return d6(E1,w,U)}function uA(z,w,U){return d6(E1,w,U)}function I8(z,w,U={}){return Q0(z)?fA(z.anyOf,w,U):f2(z)?gA(z,w,U):T2(z)?dA(z.const,w,U):y1(z)?vA(z,w,U):B1(z)?nA(z,w,U):M1(z)?uA(z,w,U):Az(z)?hA(z,w,U):v1(z)?cA(z,w,U):Zz(z)?iA(z,w,U):A6(z)?yA(z,w,U):p(U)}function x8(z){return globalThis.Object.getOwnPropertyNames(z.patternProperties)[0]}function U7(z){let w=x8(z);return w===I1?N2():w===E1?u2():N2({pattern:w})}function V8(z){return z.patternProperties[x8(z)]}function mA(z,w){return w.parameters=h4(z,w.parameters),w.returns=L1(z,w.returns),w}function tA(z,w){return w.parameters=h4(z,w.parameters),w.returns=L1(z,w.returns),w}function oA(z,w){return w.allOf=h4(z,w.allOf),w}function pA(z,w){return w.anyOf=h4(z,w.anyOf),w}function lA(z,w){if(t0(w.items))return w;return w.items=h4(z,w.items),w}function sA(z,w){return w.items=L1(z,w.items),w}function rA(z,w){return w.items=L1(z,w.items),w}function aA(z,w){return w.items=L1(z,w.items),w}function eA(z,w){return w.item=L1(z,w.item),w}function zQ(z,w){let U=XQ(z,w.properties);return{...w,...H0(U)}}function wQ(z,w){let U=L1(z,U7(w)),W=L1(z,V8(w)),X=I8(U,W);return{...w,...X}}function UQ(z,w){return w.index in z?z[w.index]:q1()}function WQ(z,w){let U=s6(w),W=S2(w),X=L1(z,w);return U&&W?E8(X):U&&!W?P2(X):!U&&W?J2(X):X}function XQ(z,w){return globalThis.Object.getOwnPropertyNames(w).reduce((U,W)=>{return{...U,[W]:WQ(z,w[W])}},{})}function h4(z,w){return w.map((U)=>L1(z,U))}function L1(z,w){return Y1(w)?mA(z,w):J1(w)?tA(z,w):c0(w)?oA(z,w):Q0(w)?pA(z,w):d2(w)?lA(z,w):A1(w)?sA(z,w):I6(w)?rA(z,w):V6(w)?aA(z,w):k6(w)?eA(z,w):o0(w)?zQ(z,w):T6(w)?wQ(z,w):$z(w)?UQ(z,w):w}function W7(z,w){return L1(w,p6(z))}function X7(z){return D({[H]:"Integer",type:"integer"},z)}function ZQ(z,w,U){return{[z]:G1(Z0(z),w,V0(U))}}function $Q(z,w,U){return z.reduce((X,Z)=>{return{...X,...ZQ(Z,w,U)}},{})}function AQ(z,w,U){return $Q(z.keys,w,U)}function Z7(z,w,U){let W=AQ(z,w,U);return J0(W)}function QQ(z){let[w,U]=[z.slice(0,1),z.slice(1)];return[w.toLowerCase(),U].join("")}function YQ(z){let[w,U]=[z.slice(0,1),z.slice(1)];return[w.toUpperCase(),U].join("")}function JQ(z){return z.toUpperCase()}function BQ(z){return z.toLowerCase()}function MQ(z,w,U){let W=W4(z.pattern);if(!g6(W))return{...z,pattern:$7(z.pattern,w)};let $=[...T4(W)].map((Y)=>Z0(Y)),A=A7($,w),Q=N0(A);return H8([Q],U)}function $7(z,w){return typeof z==="string"?w==="Uncapitalize"?QQ(z):w==="Capitalize"?YQ(z):w==="Uppercase"?JQ(z):w==="Lowercase"?BQ(z):z:z.toString()}function A7(z,w){return z.map((U)=>G1(U,w))}function G1(z,w,U={}){return g2(z)?Z7(z,w,U):f2(z)?MQ(z,w,U):Q0(z)?N0(A7(z.anyOf,w),U):T2(z)?Z0($7(z.const,w),U):D(z,U)}function Q7(z,w={}){return G1(z,"Capitalize",w)}function Y7(z,w={}){return G1(z,"Lowercase",w)}function J7(z,w={}){return G1(z,"Uncapitalize",w)}function B7(z,w={}){return G1(z,"Uppercase",w)}function qQ(z,w,U){let W={};for(let X of globalThis.Object.getOwnPropertyNames(z))W[X]=M6(z[X],w,V0(U));return W}function LQ(z,w,U){return qQ(z.properties,w,U)}function M7(z,w,U){let W=LQ(z,w,U);return J0(W)}function GQ(z,w){return z.map((U)=>Rz(U,w))}function NQ(z,w){return z.map((U)=>Rz(U,w))}function HQ(z,w){let{[w]:U,...W}=z;return W}function _Q(z,w){return w.reduce((U,W)=>HQ(U,W),z)}function SQ(z,w){let U=i0(z,[F0,"$id","required","properties"]),W=_Q(z.properties,w);return H0(W,U)}function DQ(z){let w=z.reduce((U,W)=>M8(W)?[...U,Z0(W)]:U,[]);return N0(w)}function Rz(z,w){return c0(z)?B2(GQ(z.allOf,w)):Q0(z)?N0(NQ(z.anyOf,w)):o0(z)?SQ(z,w):H0({})}function M6(z,w,U){let W=m0(w)?DQ(w):w,X=f0(w)?D2(w):w,Z=u0(z),$=u0(w);return T0(z)?M7(z,X,U):g2(w)?q7(z,w,U):Z&&$?x0("Omit",[z,W],U):!Z&&$?x0("Omit",[z,W],U):Z&&!$?x0("Omit",[z,W],U):D({...Rz(z,X),...U})}function PQ(z,w,U){return{[w]:M6(z,[w],V0(U))}}function OQ(z,w,U){return w.reduce((W,X)=>{return{...W,...PQ(z,X,U)}},{})}function RQ(z,w,U){return OQ(z,w.keys,U)}function q7(z,w,U){let W=RQ(z,w,U);return J0(W)}function CQ(z,w,U){let W={};for(let X of globalThis.Object.getOwnPropertyNames(z))W[X]=q6(z[X],w,V0(U));return W}function bQ(z,w,U){return CQ(z.properties,w,U)}function L7(z,w,U){let W=bQ(z,w,U);return J0(W)}function KQ(z,w){return z.map((U)=>Cz(U,w))}function jQ(z,w){return z.map((U)=>Cz(U,w))}function FQ(z,w){let U={};for(let W of w)if(W in z)U[W]=z[W];return U}function EQ(z,w){let U=i0(z,[F0,"$id","required","properties"]),W=FQ(z.properties,w);return H0(W,U)}function IQ(z){let w=z.reduce((U,W)=>M8(W)?[...U,Z0(W)]:U,[]);return N0(w)}function Cz(z,w){return c0(z)?B2(KQ(z.allOf,w)):Q0(z)?N0(jQ(z.anyOf,w)):o0(z)?EQ(z,w):H0({})}function q6(z,w,U){let W=m0(w)?IQ(w):w,X=f0(w)?D2(w):w,Z=u0(z),$=u0(w);return T0(z)?L7(z,X,U):g2(w)?G7(z,w,U):Z&&$?x0("Pick",[z,W],U):!Z&&$?x0("Pick",[z,W],U):Z&&!$?x0("Pick",[z,W],U):D({...Cz(z,X),...U})}function xQ(z,w,U){return{[w]:q6(z,[w],V0(U))}}function VQ(z,w,U){return w.reduce((W,X)=>{return{...W,...xQ(z,X,U)}},{})}function kQ(z,w,U){return VQ(z,w.keys,U)}function G7(z,w,U){let W=kQ(z,w,U);return J0(W)}function TQ(z,w){return x0("Partial",[x0(z,w)])}function gQ(z){return x0("Partial",[o2(z)])}function fQ(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=J2(z[U]);return w}function dQ(z){let w=i0(z,[F0,"$id","required","properties"]),U=fQ(z.properties);return H0(U,w)}function N7(z){return z.map((w)=>H7(w))}function H7(z){return Q1(z)?TQ(z.target,z.parameters):u0(z)?gQ(z.$ref):c0(z)?B2(N7(z.allOf)):Q0(z)?N0(N7(z.anyOf)):o0(z)?dQ(z):x6(z)?z:y1(z)?z:B1(z)?z:T2(z)?z:F4(z)?z:M1(z)?z:v1(z)?z:E4(z)?z:n1(z)?z:H0({})}function q4(z,w){if(T0(z))return _7(z,w);else return D({...H7(z),...w})}function hQ(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=q4(z[W],V0(w));return U}function cQ(z,w){return hQ(z.properties,w)}function _7(z,w){let U=cQ(z,w);return J0(U)}function iQ(z,w){return x0("Required",[x0(z,w)])}function yQ(z){return x0("Required",[o2(z)])}function vQ(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=i0(z[U],[Z2]);return w}function nQ(z){let w=i0(z,[F0,"$id","required","properties"]),U=vQ(z.properties);return H0(U,w)}function S7(z){return z.map((w)=>D7(w))}function D7(z){return Q1(z)?iQ(z.target,z.parameters):u0(z)?yQ(z.$ref):c0(z)?B2(S7(z.allOf)):Q0(z)?N0(S7(z.anyOf)):o0(z)?nQ(z):x6(z)?z:y1(z)?z:B1(z)?z:T2(z)?z:F4(z)?z:M1(z)?z:v1(z)?z:E4(z)?z:n1(z)?z:H0({})}function L4(z,w){if(T0(z))return P7(z,w);else return D({...D7(z),...w})}function uQ(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=L4(z[W],w);return U}function mQ(z,w){return uQ(z.properties,w)}function P7(z,w){let U=mQ(z,w);return J0(U)}function tQ(z,w){return w.map((U)=>{return u0(U)?bz(z,U.$ref):h2(z,U)})}function bz(z,w){return w in z?u0(z[w])?bz(z,z[w].$ref):h2(z,z[w]):p()}function oQ(z){return A4(z[0])}function pQ(z){return J6(z[0],z[1])}function lQ(z){return Q4(z[0])}function sQ(z){return q4(z[0])}function rQ(z){return M6(z[0],z[1])}function aQ(z){return q6(z[0],z[1])}function eQ(z){return L4(z[0])}function zY(z,w,U){let W=tQ(z,U);return w==="Awaited"?oQ(W):w==="Index"?pQ(W):w==="KeyOf"?lQ(W):w==="Partial"?sQ(W):w==="Omit"?rQ(W):w==="Pick"?aQ(W):w==="Required"?eQ(W):p()}function wY(z,w){return e6(h2(z,w))}function UY(z,w){return z4(h2(z,w))}function WY(z,w,U){return w4(c4(z,w),h2(z,U))}function XY(z,w,U){return x1(c4(z,w),h2(z,U))}function ZY(z,w){return B2(c4(z,w))}function $Y(z,w){return $4(h2(z,w))}function AY(z,w){return H0(globalThis.Object.keys(w).reduce((U,W)=>{return{...U,[W]:h2(z,w[W])}},{}))}function QY(z,w){let[U,W]=[h2(z,V8(w)),x8(w)],X=p6(w);return X.patternProperties[W]=U,X}function YY(z,w){return u0(w)?{...bz(z,w.$ref),[F0]:w[F0]}:w}function JY(z,w){return m2(c4(z,w))}function BY(z,w){return N0(c4(z,w))}function c4(z,w){return w.map((U)=>h2(z,U))}function h2(z,w){return S2(w)?D(h2(z,i0(w,[Z2])),w):s6(w)?D(h2(z,i0(w,[$1])),w):G0(w)?D(YY(z,w),w):A1(w)?D(wY(z,w.items),w):I6(w)?D(UY(z,w.items),w):Q1(w)?D(zY(z,w.target,w.parameters)):Y1(w)?D(WY(z,w.parameters,w.returns),w):J1(w)?D(XY(z,w.parameters,w.returns),w):c0(w)?D(ZY(z,w.allOf),w):V6(w)?D($Y(z,w.items),w):o0(w)?D(AY(z,w.properties),w):T6(w)?D(QY(z,w)):d2(w)?D(JY(z,w.items||[]),w):Q0(w)?D(BY(z,w.anyOf),w):w}function MY(z,w){return w in z?h2(z,z[w]):p()}function O7(z){return globalThis.Object.getOwnPropertyNames(z).reduce((w,U)=>{return{...w,[U]:MY(z,U)}},{})}class R7{constructor(z){let w=O7(z),U=this.WithIdentifiers(w);this.$defs=U}Import(z,w){let U={...this.$defs,[z]:D(this.$defs[z],w)};return D({[H]:"Import",$defs:U,$ref:z})}WithIdentifiers(z){return globalThis.Object.getOwnPropertyNames(z).reduce((w,U)=>{return{...w,[U]:{...z[U],$id:U}}},{})}}function C7(z){return new R7(z)}function b7(z,w){return D({[H]:"Not",not:z},w)}function K7(z,w){return J1(z)?m2(z.parameters,w):p()}var qY=0;function j7(z,w={}){if(t0(w.$id))w.$id=`T${qY++}`;let U=p6(z({[H]:"This",$ref:`${w.$id}`}));return U.$id=w.$id,D({[n2]:"Recursive",...U},w)}function F7(z,w){let U=j0(z)?new globalThis.RegExp(z):z;return D({[H]:"RegExp",type:"RegExp",source:U.source,flags:U.flags},w)}function LY(z){return c0(z)?z.allOf:Q0(z)?z.anyOf:d2(z)?z.items??[]:[]}function E7(z){return LY(z)}function I7(z,w){return J1(z)?D(z.returns,w):p(w)}class x7{constructor(z){this.schema=z}Decode(z){return new V7(this.schema,z)}}class V7{constructor(z,w){this.schema=z,this.decode=w}EncodeTransform(z,w){let X={Encode:(Z)=>w[F0].Encode(z(Z)),Decode:(Z)=>this.decode(w[F0].Decode(Z))};return{...w,[F0]:X}}EncodeSchema(z,w){let U={Decode:this.decode,Encode:z};return{...w,[F0]:U}}Encode(z){return G0(this.schema)?this.EncodeTransform(z,this.schema):this.EncodeSchema(z,this.schema)}}function k7(z){return new x7(z)}function k8(z={}){return D({[H]:z[H]??"Unsafe"},z)}function T7(z){return D({[H]:"Void",type:"void"},z)}var Kz={};j6(Kz,{Void:()=>T7,Uppercase:()=>B7,Unsafe:()=>k8,Unknown:()=>q1,Union:()=>N0,Undefined:()=>C8,Uncapitalize:()=>J7,Uint8Array:()=>b8,Tuple:()=>m2,Transform:()=>k7,TemplateLiteral:()=>H8,Symbol:()=>R8,String:()=>N2,ReturnType:()=>I7,Rest:()=>E7,Required:()=>L4,RegExp:()=>F7,Ref:()=>o2,Recursive:()=>j7,Record:()=>I8,ReadonlyOptional:()=>E8,Readonly:()=>P2,Promise:()=>S8,Pick:()=>q6,Partial:()=>q4,Parameters:()=>K7,Optional:()=>J2,Omit:()=>M6,Object:()=>H0,Number:()=>u2,Null:()=>O8,Not:()=>b7,Never:()=>p,Module:()=>C7,Mapped:()=>j9,Lowercase:()=>Y7,Literal:()=>Z0,KeyOf:()=>Q4,Iterator:()=>$4,Intersect:()=>B2,Integer:()=>X7,Instantiate:()=>W7,InstanceType:()=>w7,Index:()=>J6,Function:()=>x1,Extract:()=>M4,Extends:()=>J4,Exclude:()=>B4,Enum:()=>f9,Date:()=>P8,ConstructorParameters:()=>g9,Constructor:()=>w4,Const:()=>T9,Composite:()=>k9,Capitalize:()=>Q7,Boolean:()=>N8,BigInt:()=>Z4,Awaited:()=>A4,AsyncIterator:()=>z4,Array:()=>e6,Argument:()=>B9,Any:()=>Y6});var L6=Kz;function GY(z){switch(z.errorType){case _.ArrayContains:return"Expected array to contain at least one matching value";case _.ArrayMaxContains:return`Expected array to contain no more than ${z.schema.maxContains} matching values`;case _.ArrayMinContains:return`Expected array to contain at least ${z.schema.minContains} matching values`;case _.ArrayMaxItems:return`Expected array length to be less or equal to ${z.schema.maxItems}`;case _.ArrayMinItems:return`Expected array length to be greater or equal to ${z.schema.minItems}`;case _.ArrayUniqueItems:return"Expected array elements to be unique";case _.Array:return"Expected array";case _.AsyncIterator:return"Expected AsyncIterator";case _.BigIntExclusiveMaximum:return`Expected bigint to be less than ${z.schema.exclusiveMaximum}`;case _.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${z.schema.exclusiveMinimum}`;case _.BigIntMaximum:return`Expected bigint to be less or equal to ${z.schema.maximum}`;case _.BigIntMinimum:return`Expected bigint to be greater or equal to ${z.schema.minimum}`;case _.BigIntMultipleOf:return`Expected bigint to be a multiple of ${z.schema.multipleOf}`;case _.BigInt:return"Expected bigint";case _.Boolean:return"Expected boolean";case _.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${z.schema.exclusiveMinimumTimestamp}`;case _.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${z.schema.exclusiveMaximumTimestamp}`;case _.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${z.schema.minimumTimestamp}`;case _.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${z.schema.maximumTimestamp}`;case _.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${z.schema.multipleOfTimestamp}`;case _.Date:return"Expected Date";case _.Function:return"Expected function";case _.IntegerExclusiveMaximum:return`Expected integer to be less than ${z.schema.exclusiveMaximum}`;case _.IntegerExclusiveMinimum:return`Expected integer to be greater than ${z.schema.exclusiveMinimum}`;case _.IntegerMaximum:return`Expected integer to be less or equal to ${z.schema.maximum}`;case _.IntegerMinimum:return`Expected integer to be greater or equal to ${z.schema.minimum}`;case _.IntegerMultipleOf:return`Expected integer to be a multiple of ${z.schema.multipleOf}`;case _.Integer:return"Expected integer";case _.IntersectUnevaluatedProperties:return"Unexpected property";case _.Intersect:return"Expected all values to match";case _.Iterator:return"Expected Iterator";case _.Literal:return`Expected ${typeof z.schema.const==="string"?`'${z.schema.const}'`:z.schema.const}`;case _.Never:return"Never";case _.Not:return"Value should not match";case _.Null:return"Expected null";case _.NumberExclusiveMaximum:return`Expected number to be less than ${z.schema.exclusiveMaximum}`;case _.NumberExclusiveMinimum:return`Expected number to be greater than ${z.schema.exclusiveMinimum}`;case _.NumberMaximum:return`Expected number to be less or equal to ${z.schema.maximum}`;case _.NumberMinimum:return`Expected number to be greater or equal to ${z.schema.minimum}`;case _.NumberMultipleOf:return`Expected number to be a multiple of ${z.schema.multipleOf}`;case _.Number:return"Expected number";case _.Object:return"Expected object";case _.ObjectAdditionalProperties:return"Unexpected property";case _.ObjectMaxProperties:return`Expected object to have no more than ${z.schema.maxProperties} properties`;case _.ObjectMinProperties:return`Expected object to have at least ${z.schema.minProperties} properties`;case _.ObjectRequiredProperty:return"Expected required property";case _.Promise:return"Expected Promise";case _.RegExp:return"Expected string to match regular expression";case _.StringFormatUnknown:return`Unknown format '${z.schema.format}'`;case _.StringFormat:return`Expected string to match '${z.schema.format}' format`;case _.StringMaxLength:return`Expected string length less or equal to ${z.schema.maxLength}`;case _.StringMinLength:return`Expected string length greater or equal to ${z.schema.minLength}`;case _.StringPattern:return`Expected string to match '${z.schema.pattern}'`;case _.String:return"Expected string";case _.Symbol:return"Expected symbol";case _.TupleLength:return`Expected tuple to have ${z.schema.maxItems||0} elements`;case _.Tuple:return"Expected tuple";case _.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${z.schema.maxByteLength}`;case _.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${z.schema.minByteLength}`;case _.Uint8Array:return"Expected Uint8Array";case _.Undefined:return"Expected undefined";case _.Union:return"Expected union value";case _.Void:return"Expected void";case _.Kind:return`Expected kind '${z.schema[H]}'`;default:return"Unknown error type"}}var NY=GY;function g7(){return NY}class f7 extends n{constructor(z){super(`Unable to dereference schema with $id '${z.$ref}'`);this.schema=z}}function HY(z,w){let U=w.find((W)=>W.$id===z.$ref);if(U===void 0)throw new f7(z);return B0(U,w)}function z2(z,w){if(!A0(z.$id)||w.some((U)=>U.$id===z.$id))return w;return w.push(z),w}function B0(z,w){return z[H]==="This"||z[H]==="Ref"?HY(z,w):z}class d7 extends n{constructor(z){super("Unable to hash value");this.value=z}}var c2;(function(z){z[z.Undefined=0]="Undefined",z[z.Null=1]="Null",z[z.Boolean=2]="Boolean",z[z.Number=3]="Number",z[z.String=4]="String",z[z.Object=5]="Object",z[z.Array=6]="Array",z[z.Date=7]="Date",z[z.Uint8Array=8]="Uint8Array",z[z.Symbol=9]="Symbol",z[z.BigInt=10]="BigInt"})(c2||(c2={}));var G4=BigInt("14695981039346656037"),[_Y,SY]=[BigInt("1099511628211"),BigInt("18446744073709551616")],DY=Array.from({length:256}).map((z,w)=>BigInt(w)),h7=new Float64Array(1),c7=new DataView(h7.buffer),i7=new Uint8Array(h7.buffer);function*PY(z){let w=z===0?1:Math.ceil(Math.floor(Math.log2(z)+1)/8);for(let U=0;U<w;U++)yield z>>8*(w-1-U)&255}function OY(z){q2(c2.Array);for(let w of z)N4(w)}function RY(z){q2(c2.Boolean),q2(z?1:0)}function CY(z){q2(c2.BigInt),c7.setBigInt64(0,z);for(let w of i7)q2(w)}function bY(z){q2(c2.Date),N4(z.getTime())}function KY(z){q2(c2.Null)}function jY(z){q2(c2.Number),c7.setFloat64(0,z);for(let w of i7)q2(w)}function FY(z){q2(c2.Object);for(let w of globalThis.Object.getOwnPropertyNames(z).sort())N4(w),N4(z[w])}function EY(z){q2(c2.String);for(let w=0;w<z.length;w++)for(let U of PY(z.charCodeAt(w)))q2(U)}function IY(z){q2(c2.Symbol),N4(z.description)}function xY(z){q2(c2.Uint8Array);for(let w=0;w<z.length;w++)q2(z[w])}function VY(z){return q2(c2.Undefined)}function N4(z){if(m(z))return OY(z);if(F1(z))return RY(z);if(X2(z))return CY(z);if(G2(z))return bY(z);if(c1(z))return KY(z);if(v(z))return jY(z);if(l(z))return FY(z);if(A0(z))return EY(z);if(i1(z))return IY(z);if(l6(z))return xY(z);if(k0(z))return VY(z);throw new d7(z)}function q2(z){G4=G4^DY[z],G4=G4*_Y%SY}function G6(z){return G4=BigInt("14695981039346656037"),N4(z),G4}class y7 extends n{constructor(z){super("Unknown type");this.schema=z}}function kY(z){return z[H]==="Any"||z[H]==="Unknown"}function U0(z){return z!==void 0}function TY(z,w,U){return!0}function gY(z,w,U){return!0}function fY(z,w,U){if(!m(U))return!1;if(U0(z.minItems)&&!(U.length>=z.minItems))return!1;if(U0(z.maxItems)&&!(U.length<=z.maxItems))return!1;if(!U.every((Z)=>w2(z.items,w,Z)))return!1;if(z.uniqueItems===!0&&!function(){let Z=new Set;for(let $ of U){let A=G6($);if(Z.has(A))return!1;else Z.add(A)}return!0}())return!1;if(!(U0(z.contains)||v(z.minContains)||v(z.maxContains)))return!0;let W=U0(z.contains)?z.contains:p(),X=U.reduce((Z,$)=>w2(W,w,$)?Z+1:Z,0);if(X===0)return!1;if(v(z.minContains)&&X<z.minContains)return!1;if(v(z.maxContains)&&X>z.maxContains)return!1;return!0}function dY(z,w,U){return Q8(U)}function hY(z,w,U){if(!X2(U))return!1;if(U0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(U0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(U0(z.maximum)&&!(U<=z.maximum))return!1;if(U0(z.minimum)&&!(U>=z.minimum))return!1;if(U0(z.multipleOf)&&U%z.multipleOf!==BigInt(0))return!1;return!0}function cY(z,w,U){return F1(U)}function iY(z,w,U){return w2(z.returns,w,U.prototype)}function yY(z,w,U){if(!G2(U))return!1;if(U0(z.exclusiveMaximumTimestamp)&&!(U.getTime()<z.exclusiveMaximumTimestamp))return!1;if(U0(z.exclusiveMinimumTimestamp)&&!(U.getTime()>z.exclusiveMinimumTimestamp))return!1;if(U0(z.maximumTimestamp)&&!(U.getTime()<=z.maximumTimestamp))return!1;if(U0(z.minimumTimestamp)&&!(U.getTime()>=z.minimumTimestamp))return!1;if(U0(z.multipleOfTimestamp)&&U.getTime()%z.multipleOfTimestamp!==0)return!1;return!0}function vY(z,w,U){return $6(U)}function nY(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return w2(X,[...w,...W],U)}function uY(z,w,U){if(!B8(U))return!1;if(U0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(U0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(U0(z.maximum)&&!(U<=z.maximum))return!1;if(U0(z.minimum)&&!(U>=z.minimum))return!1;if(U0(z.multipleOf)&&U%z.multipleOf!==0)return!1;return!0}function mY(z,w,U){let W=z.allOf.every((X)=>w2(X,w,U));if(z.unevaluatedProperties===!1){let X=new RegExp(t1(z)),Z=Object.getOwnPropertyNames(U).every(($)=>X.test($));return W&&Z}else if(f0(z.unevaluatedProperties)){let X=new RegExp(t1(z)),Z=Object.getOwnPropertyNames(U).every(($)=>X.test($)||w2(z.unevaluatedProperties,w,U[$]));return W&&Z}else return W}function tY(z,w,U){return Y8(U)}function oY(z,w,U){return U===z.const}function pY(z,w,U){return!1}function lY(z,w,U){return!w2(z.not,w,U)}function sY(z,w,U){return c1(U)}function rY(z,w,U){if(!I0.IsNumberLike(U))return!1;if(U0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(U0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(U0(z.minimum)&&!(U>=z.minimum))return!1;if(U0(z.maximum)&&!(U<=z.maximum))return!1;if(U0(z.multipleOf)&&U%z.multipleOf!==0)return!1;return!0}function aY(z,w,U){if(!I0.IsObjectLike(U))return!1;if(U0(z.minProperties)&&!(Object.getOwnPropertyNames(U).length>=z.minProperties))return!1;if(U0(z.maxProperties)&&!(Object.getOwnPropertyNames(U).length<=z.maxProperties))return!1;let W=Object.getOwnPropertyNames(z.properties);for(let X of W){let Z=z.properties[X];if(z.required&&z.required.includes(X)){if(!w2(Z,w,U[X]))return!1;if((o1(Z)||kY(Z))&&!(X in U))return!1}else if(I0.IsExactOptionalProperty(U,X)&&!w2(Z,w,U[X]))return!1}if(z.additionalProperties===!1){let X=Object.getOwnPropertyNames(U);if(z.required&&z.required.length===W.length&&X.length===W.length)return!0;else return X.every((Z)=>W.includes(Z))}else if(typeof z.additionalProperties==="object")return Object.getOwnPropertyNames(U).every((Z)=>W.includes(Z)||w2(z.additionalProperties,w,U[Z]));else return!0}function eY(z,w,U){return J8(U)}function zJ(z,w,U){if(!I0.IsRecordLike(U))return!1;if(U0(z.minProperties)&&!(Object.getOwnPropertyNames(U).length>=z.minProperties))return!1;if(U0(z.maxProperties)&&!(Object.getOwnPropertyNames(U).length<=z.maxProperties))return!1;let[W,X]=Object.entries(z.patternProperties)[0],Z=new RegExp(W),$=Object.entries(U).every(([Y,J])=>{return Z.test(Y)?w2(X,w,J):!0}),A=typeof z.additionalProperties==="object"?Object.entries(U).every(([Y,J])=>{return!Z.test(Y)?w2(z.additionalProperties,w,J):!0}):!0,Q=z.additionalProperties===!1?Object.getOwnPropertyNames(U).every((Y)=>{return Z.test(Y)}):!0;return $&&A&&Q}function wJ(z,w,U){return w2(B0(z,w),w,U)}function UJ(z,w,U){let W=new RegExp(z.source,z.flags);if(U0(z.minLength)){if(!(U.length>=z.minLength))return!1}if(U0(z.maxLength)){if(!(U.length<=z.maxLength))return!1}return W.test(U)}function WJ(z,w,U){if(!A0(U))return!1;if(U0(z.minLength)){if(!(U.length>=z.minLength))return!1}if(U0(z.maxLength)){if(!(U.length<=z.maxLength))return!1}if(U0(z.pattern)){if(!new RegExp(z.pattern).test(U))return!1}if(U0(z.format)){if(!D0.Has(z.format))return!1;return D0.Get(z.format)(U)}return!0}function XJ(z,w,U){return i1(U)}function ZJ(z,w,U){return A0(U)&&new RegExp(z.pattern).test(U)}function $J(z,w,U){return w2(B0(z,w),w,U)}function AJ(z,w,U){if(!m(U))return!1;if(z.items===void 0&&U.length!==0)return!1;if(U.length!==z.maxItems)return!1;if(!z.items)return!0;for(let W=0;W<z.items.length;W++)if(!w2(z.items[W],w,U[W]))return!1;return!0}function QJ(z,w,U){return k0(U)}function YJ(z,w,U){return z.anyOf.some((W)=>w2(W,w,U))}function JJ(z,w,U){if(!l6(U))return!1;if(U0(z.maxByteLength)&&!(U.length<=z.maxByteLength))return!1;if(U0(z.minByteLength)&&!(U.length>=z.minByteLength))return!1;return!0}function BJ(z,w,U){return!0}function MJ(z,w,U){return I0.IsVoidLike(U)}function qJ(z,w,U){if(!p0.Has(z[H]))return!1;return p0.Get(z[H])(z,U)}function w2(z,w,U){let W=U0(z.$id)?z2(z,w):w,X=z;switch(X[H]){case"Any":return TY(X,W,U);case"Argument":return gY(X,W,U);case"Array":return fY(X,W,U);case"AsyncIterator":return dY(X,W,U);case"BigInt":return hY(X,W,U);case"Boolean":return cY(X,W,U);case"Constructor":return iY(X,W,U);case"Date":return yY(X,W,U);case"Function":return vY(X,W,U);case"Import":return nY(X,W,U);case"Integer":return uY(X,W,U);case"Intersect":return mY(X,W,U);case"Iterator":return tY(X,W,U);case"Literal":return oY(X,W,U);case"Never":return pY(X,W,U);case"Not":return lY(X,W,U);case"Null":return sY(X,W,U);case"Number":return rY(X,W,U);case"Object":return aY(X,W,U);case"Promise":return eY(X,W,U);case"Record":return zJ(X,W,U);case"Ref":return wJ(X,W,U);case"RegExp":return UJ(X,W,U);case"String":return WJ(X,W,U);case"Symbol":return XJ(X,W,U);case"TemplateLiteral":return ZJ(X,W,U);case"This":return $J(X,W,U);case"Tuple":return AJ(X,W,U);case"Undefined":return QJ(X,W,U);case"Union":return YJ(X,W,U);case"Uint8Array":return JJ(X,W,U);case"Unknown":return BJ(X,W,U);case"Void":return MJ(X,W,U);default:if(!p0.Has(X[H]))throw new y7(X);return qJ(X,W,U)}}function s(...z){return z.length===3?w2(z[0],z[1],z[2]):w2(z[0],[],z[1])}var _;(function(z){z[z.ArrayContains=0]="ArrayContains",z[z.ArrayMaxContains=1]="ArrayMaxContains",z[z.ArrayMaxItems=2]="ArrayMaxItems",z[z.ArrayMinContains=3]="ArrayMinContains",z[z.ArrayMinItems=4]="ArrayMinItems",z[z.ArrayUniqueItems=5]="ArrayUniqueItems",z[z.Array=6]="Array",z[z.AsyncIterator=7]="AsyncIterator",z[z.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",z[z.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",z[z.BigIntMaximum=10]="BigIntMaximum",z[z.BigIntMinimum=11]="BigIntMinimum",z[z.BigIntMultipleOf=12]="BigIntMultipleOf",z[z.BigInt=13]="BigInt",z[z.Boolean=14]="Boolean",z[z.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",z[z.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",z[z.DateMaximumTimestamp=17]="DateMaximumTimestamp",z[z.DateMinimumTimestamp=18]="DateMinimumTimestamp",z[z.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",z[z.Date=20]="Date",z[z.Function=21]="Function",z[z.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",z[z.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",z[z.IntegerMaximum=24]="IntegerMaximum",z[z.IntegerMinimum=25]="IntegerMinimum",z[z.IntegerMultipleOf=26]="IntegerMultipleOf",z[z.Integer=27]="Integer",z[z.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",z[z.Intersect=29]="Intersect",z[z.Iterator=30]="Iterator",z[z.Kind=31]="Kind",z[z.Literal=32]="Literal",z[z.Never=33]="Never",z[z.Not=34]="Not",z[z.Null=35]="Null",z[z.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",z[z.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",z[z.NumberMaximum=38]="NumberMaximum",z[z.NumberMinimum=39]="NumberMinimum",z[z.NumberMultipleOf=40]="NumberMultipleOf",z[z.Number=41]="Number",z[z.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",z[z.ObjectMaxProperties=43]="ObjectMaxProperties",z[z.ObjectMinProperties=44]="ObjectMinProperties",z[z.ObjectRequiredProperty=45]="ObjectRequiredProperty",z[z.Object=46]="Object",z[z.Promise=47]="Promise",z[z.RegExp=48]="RegExp",z[z.StringFormatUnknown=49]="StringFormatUnknown",z[z.StringFormat=50]="StringFormat",z[z.StringMaxLength=51]="StringMaxLength",z[z.StringMinLength=52]="StringMinLength",z[z.StringPattern=53]="StringPattern",z[z.String=54]="String",z[z.Symbol=55]="Symbol",z[z.TupleLength=56]="TupleLength",z[z.Tuple=57]="Tuple",z[z.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",z[z.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",z[z.Uint8Array=60]="Uint8Array",z[z.Undefined=61]="Undefined",z[z.Union=62]="Union",z[z.Void=63]="Void"})(_||(_={}));class v7 extends n{constructor(z){super("Unknown type");this.schema=z}}function p1(z){return z.replace(/~/g,"~0").replace(/\//g,"~1")}function W0(z){return z!==void 0}class h6{constructor(z){this.iterator=z}[Symbol.iterator](){return this.iterator}First(){let z=this.iterator.next();return z.done?void 0:z.value}}function x(z,w,U,W,X=[]){return{type:z,schema:w,path:U,value:W,message:g7()({errorType:z,path:U,schema:w,value:W,errors:X}),errors:X}}function*LJ(z,w,U,W){}function*GJ(z,w,U,W){}function*NJ(z,w,U,W){if(!m(W))return yield x(_.Array,z,U,W);if(W0(z.minItems)&&!(W.length>=z.minItems))yield x(_.ArrayMinItems,z,U,W);if(W0(z.maxItems)&&!(W.length<=z.maxItems))yield x(_.ArrayMaxItems,z,U,W);for(let $=0;$<W.length;$++)yield*U2(z.items,w,`${U}/${$}`,W[$]);if(z.uniqueItems===!0&&!function(){let $=new Set;for(let A of W){let Q=G6(A);if($.has(Q))return!1;else $.add(Q)}return!0}())yield x(_.ArrayUniqueItems,z,U,W);if(!(W0(z.contains)||W0(z.minContains)||W0(z.maxContains)))return;let X=W0(z.contains)?z.contains:p(),Z=W.reduce(($,A,Q)=>U2(X,w,`${U}${Q}`,A).next().done===!0?$+1:$,0);if(Z===0)yield x(_.ArrayContains,z,U,W);if(v(z.minContains)&&Z<z.minContains)yield x(_.ArrayMinContains,z,U,W);if(v(z.maxContains)&&Z>z.maxContains)yield x(_.ArrayMaxContains,z,U,W)}function*HJ(z,w,U,W){if(!Q8(W))yield x(_.AsyncIterator,z,U,W)}function*_J(z,w,U,W){if(!X2(W))return yield x(_.BigInt,z,U,W);if(W0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield x(_.BigIntExclusiveMaximum,z,U,W);if(W0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield x(_.BigIntExclusiveMinimum,z,U,W);if(W0(z.maximum)&&!(W<=z.maximum))yield x(_.BigIntMaximum,z,U,W);if(W0(z.minimum)&&!(W>=z.minimum))yield x(_.BigIntMinimum,z,U,W);if(W0(z.multipleOf)&&W%z.multipleOf!==BigInt(0))yield x(_.BigIntMultipleOf,z,U,W)}function*SJ(z,w,U,W){if(!F1(W))yield x(_.Boolean,z,U,W)}function*DJ(z,w,U,W){yield*U2(z.returns,w,U,W.prototype)}function*PJ(z,w,U,W){if(!G2(W))return yield x(_.Date,z,U,W);if(W0(z.exclusiveMaximumTimestamp)&&!(W.getTime()<z.exclusiveMaximumTimestamp))yield x(_.DateExclusiveMaximumTimestamp,z,U,W);if(W0(z.exclusiveMinimumTimestamp)&&!(W.getTime()>z.exclusiveMinimumTimestamp))yield x(_.DateExclusiveMinimumTimestamp,z,U,W);if(W0(z.maximumTimestamp)&&!(W.getTime()<=z.maximumTimestamp))yield x(_.DateMaximumTimestamp,z,U,W);if(W0(z.minimumTimestamp)&&!(W.getTime()>=z.minimumTimestamp))yield x(_.DateMinimumTimestamp,z,U,W);if(W0(z.multipleOfTimestamp)&&W.getTime()%z.multipleOfTimestamp!==0)yield x(_.DateMultipleOfTimestamp,z,U,W)}function*OJ(z,w,U,W){if(!$6(W))yield x(_.Function,z,U,W)}function*RJ(z,w,U,W){let X=globalThis.Object.values(z.$defs),Z=z.$defs[z.$ref];yield*U2(Z,[...w,...X],U,W)}function*CJ(z,w,U,W){if(!B8(W))return yield x(_.Integer,z,U,W);if(W0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield x(_.IntegerExclusiveMaximum,z,U,W);if(W0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield x(_.IntegerExclusiveMinimum,z,U,W);if(W0(z.maximum)&&!(W<=z.maximum))yield x(_.IntegerMaximum,z,U,W);if(W0(z.minimum)&&!(W>=z.minimum))yield x(_.IntegerMinimum,z,U,W);if(W0(z.multipleOf)&&W%z.multipleOf!==0)yield x(_.IntegerMultipleOf,z,U,W)}function*bJ(z,w,U,W){let X=!1;for(let Z of z.allOf)for(let $ of U2(Z,w,U,W))X=!0,yield $;if(X)return yield x(_.Intersect,z,U,W);if(z.unevaluatedProperties===!1){let Z=new RegExp(t1(z));for(let $ of Object.getOwnPropertyNames(W))if(!Z.test($))yield x(_.IntersectUnevaluatedProperties,z,`${U}/${$}`,W)}if(typeof z.unevaluatedProperties==="object"){let Z=new RegExp(t1(z));for(let $ of Object.getOwnPropertyNames(W))if(!Z.test($)){let A=U2(z.unevaluatedProperties,w,`${U}/${$}`,W[$]).next();if(!A.done)yield A.value}}}function*KJ(z,w,U,W){if(!Y8(W))yield x(_.Iterator,z,U,W)}function*jJ(z,w,U,W){if(W!==z.const)yield x(_.Literal,z,U,W)}function*FJ(z,w,U,W){yield x(_.Never,z,U,W)}function*EJ(z,w,U,W){if(U2(z.not,w,U,W).next().done===!0)yield x(_.Not,z,U,W)}function*IJ(z,w,U,W){if(!c1(W))yield x(_.Null,z,U,W)}function*xJ(z,w,U,W){if(!I0.IsNumberLike(W))return yield x(_.Number,z,U,W);if(W0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield x(_.NumberExclusiveMaximum,z,U,W);if(W0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield x(_.NumberExclusiveMinimum,z,U,W);if(W0(z.maximum)&&!(W<=z.maximum))yield x(_.NumberMaximum,z,U,W);if(W0(z.minimum)&&!(W>=z.minimum))yield x(_.NumberMinimum,z,U,W);if(W0(z.multipleOf)&&W%z.multipleOf!==0)yield x(_.NumberMultipleOf,z,U,W)}function*VJ(z,w,U,W){if(!I0.IsObjectLike(W))return yield x(_.Object,z,U,W);if(W0(z.minProperties)&&!(Object.getOwnPropertyNames(W).length>=z.minProperties))yield x(_.ObjectMinProperties,z,U,W);if(W0(z.maxProperties)&&!(Object.getOwnPropertyNames(W).length<=z.maxProperties))yield x(_.ObjectMaxProperties,z,U,W);let X=Array.isArray(z.required)?z.required:[],Z=Object.getOwnPropertyNames(z.properties),$=Object.getOwnPropertyNames(W);for(let A of X){if($.includes(A))continue;yield x(_.ObjectRequiredProperty,z.properties[A],`${U}/${p1(A)}`,void 0)}if(z.additionalProperties===!1){for(let A of $)if(!Z.includes(A))yield x(_.ObjectAdditionalProperties,z,`${U}/${p1(A)}`,W[A])}if(typeof z.additionalProperties==="object")for(let A of $){if(Z.includes(A))continue;yield*U2(z.additionalProperties,w,`${U}/${p1(A)}`,W[A])}for(let A of Z){let Q=z.properties[A];if(z.required&&z.required.includes(A)){if(yield*U2(Q,w,`${U}/${p1(A)}`,W[A]),o1(z)&&!(A in W))yield x(_.ObjectRequiredProperty,Q,`${U}/${p1(A)}`,void 0)}else if(I0.IsExactOptionalProperty(W,A))yield*U2(Q,w,`${U}/${p1(A)}`,W[A])}}function*kJ(z,w,U,W){if(!J8(W))yield x(_.Promise,z,U,W)}function*TJ(z,w,U,W){if(!I0.IsRecordLike(W))return yield x(_.Object,z,U,W);if(W0(z.minProperties)&&!(Object.getOwnPropertyNames(W).length>=z.minProperties))yield x(_.ObjectMinProperties,z,U,W);if(W0(z.maxProperties)&&!(Object.getOwnPropertyNames(W).length<=z.maxProperties))yield x(_.ObjectMaxProperties,z,U,W);let[X,Z]=Object.entries(z.patternProperties)[0],$=new RegExp(X);for(let[A,Q]of Object.entries(W))if($.test(A))yield*U2(Z,w,`${U}/${p1(A)}`,Q);if(typeof z.additionalProperties==="object"){for(let[A,Q]of Object.entries(W))if(!$.test(A))yield*U2(z.additionalProperties,w,`${U}/${p1(A)}`,Q)}if(z.additionalProperties===!1)for(let[A,Q]of Object.entries(W)){if($.test(A))continue;return yield x(_.ObjectAdditionalProperties,z,`${U}/${p1(A)}`,Q)}}function*gJ(z,w,U,W){yield*U2(B0(z,w),w,U,W)}function*fJ(z,w,U,W){if(!A0(W))return yield x(_.String,z,U,W);if(W0(z.minLength)&&!(W.length>=z.minLength))yield x(_.StringMinLength,z,U,W);if(W0(z.maxLength)&&!(W.length<=z.maxLength))yield x(_.StringMaxLength,z,U,W);if(!new RegExp(z.source,z.flags).test(W))return yield x(_.RegExp,z,U,W)}function*dJ(z,w,U,W){if(!A0(W))return yield x(_.String,z,U,W);if(W0(z.minLength)&&!(W.length>=z.minLength))yield x(_.StringMinLength,z,U,W);if(W0(z.maxLength)&&!(W.length<=z.maxLength))yield x(_.StringMaxLength,z,U,W);if(A0(z.pattern)){if(!new RegExp(z.pattern).test(W))yield x(_.StringPattern,z,U,W)}if(A0(z.format)){if(!D0.Has(z.format))yield x(_.StringFormatUnknown,z,U,W);else if(!D0.Get(z.format)(W))yield x(_.StringFormat,z,U,W)}}function*hJ(z,w,U,W){if(!i1(W))yield x(_.Symbol,z,U,W)}function*cJ(z,w,U,W){if(!A0(W))return yield x(_.String,z,U,W);if(!new RegExp(z.pattern).test(W))yield x(_.StringPattern,z,U,W)}function*iJ(z,w,U,W){yield*U2(B0(z,w),w,U,W)}function*yJ(z,w,U,W){if(!m(W))return yield x(_.Tuple,z,U,W);if(z.items===void 0&&W.length!==0)return yield x(_.TupleLength,z,U,W);if(W.length!==z.maxItems)return yield x(_.TupleLength,z,U,W);if(!z.items)return;for(let X=0;X<z.items.length;X++)yield*U2(z.items[X],w,`${U}/${X}`,W[X])}function*vJ(z,w,U,W){if(!k0(W))yield x(_.Undefined,z,U,W)}function*nJ(z,w,U,W){if(s(z,w,W))return;let X=z.anyOf.map((Z)=>new h6(U2(Z,w,U,W)));yield x(_.Union,z,U,W,X)}function*uJ(z,w,U,W){if(!l6(W))return yield x(_.Uint8Array,z,U,W);if(W0(z.maxByteLength)&&!(W.length<=z.maxByteLength))yield x(_.Uint8ArrayMaxByteLength,z,U,W);if(W0(z.minByteLength)&&!(W.length>=z.minByteLength))yield x(_.Uint8ArrayMinByteLength,z,U,W)}function*mJ(z,w,U,W){}function*tJ(z,w,U,W){if(!I0.IsVoidLike(W))yield x(_.Void,z,U,W)}function*oJ(z,w,U,W){if(!p0.Get(z[H])(z,W))yield x(_.Kind,z,U,W)}function*U2(z,w,U,W){let X=W0(z.$id)?[...w,z]:w,Z=z;switch(Z[H]){case"Any":return yield*LJ(Z,X,U,W);case"Argument":return yield*GJ(Z,X,U,W);case"Array":return yield*NJ(Z,X,U,W);case"AsyncIterator":return yield*HJ(Z,X,U,W);case"BigInt":return yield*_J(Z,X,U,W);case"Boolean":return yield*SJ(Z,X,U,W);case"Constructor":return yield*DJ(Z,X,U,W);case"Date":return yield*PJ(Z,X,U,W);case"Function":return yield*OJ(Z,X,U,W);case"Import":return yield*RJ(Z,X,U,W);case"Integer":return yield*CJ(Z,X,U,W);case"Intersect":return yield*bJ(Z,X,U,W);case"Iterator":return yield*KJ(Z,X,U,W);case"Literal":return yield*jJ(Z,X,U,W);case"Never":return yield*FJ(Z,X,U,W);case"Not":return yield*EJ(Z,X,U,W);case"Null":return yield*IJ(Z,X,U,W);case"Number":return yield*xJ(Z,X,U,W);case"Object":return yield*VJ(Z,X,U,W);case"Promise":return yield*kJ(Z,X,U,W);case"Record":return yield*TJ(Z,X,U,W);case"Ref":return yield*gJ(Z,X,U,W);case"RegExp":return yield*fJ(Z,X,U,W);case"String":return yield*dJ(Z,X,U,W);case"Symbol":return yield*hJ(Z,X,U,W);case"TemplateLiteral":return yield*cJ(Z,X,U,W);case"This":return yield*iJ(Z,X,U,W);case"Tuple":return yield*yJ(Z,X,U,W);case"Undefined":return yield*vJ(Z,X,U,W);case"Union":return yield*nJ(Z,X,U,W);case"Uint8Array":return yield*uJ(Z,X,U,W);case"Unknown":return yield*mJ(Z,X,U,W);case"Void":return yield*tJ(Z,X,U,W);default:if(!p0.Has(Z[H]))throw new v7(z);return yield*oJ(Z,X,U,W)}}function k1(...z){let w=z.length===3?U2(z[0],z[1],"",z[2]):U2(z[0],[],"",z[1]);return new h6(w)}class i4 extends n{constructor(z,w,U){super("Unable to decode value as it does not match the expected schema");this.schema=z,this.value=w,this.error=U}}class T8 extends n{constructor(z,w,U,W){super(W instanceof Error?W.message:"Unknown error");this.schema=z,this.path=w,this.value=U,this.error=W}}function d0(z,w,U){try{return G0(z)?z[F0].Decode(U):U}catch(W){throw new T8(z,w,U,W)}}function pJ(z,w,U,W){return m(W)?d0(z,U,W.map((X,Z)=>N1(z.items,w,`${U}/${Z}`,X))):d0(z,U,W)}function lJ(z,w,U,W){if(!l(W)||k2(W))return d0(z,U,W);let X=D8(z),Z=X.map((J)=>J[0]),$={...W};for(let[J,G]of X)if(J in $)$[J]=N1(G,w,`${U}/${J}`,$[J]);if(!G0(z.unevaluatedProperties))return d0(z,U,$);let A=Object.getOwnPropertyNames($),Q=z.unevaluatedProperties,Y={...$};for(let J of A)if(!Z.includes(J))Y[J]=d0(Q,`${U}/${J}`,Y[J]);return d0(z,U,Y)}function sJ(z,w,U,W){let X=globalThis.Object.values(z.$defs),Z=z.$defs[z.$ref],$=N1(Z,[...w,...X],U,W);return d0(z,U,$)}function rJ(z,w,U,W){return d0(z,U,N1(z.not,w,U,W))}function aJ(z,w,U,W){if(!l(W))return d0(z,U,W);let X=O2(z),Z={...W};for(let Y of X){if(!u(Z,Y))continue;if(k0(Z[Y])&&(!n1(z.properties[Y])||I0.IsExactOptionalProperty(Z,Y)))continue;Z[Y]=N1(z.properties[Y],w,`${U}/${Y}`,Z[Y])}if(!f0(z.additionalProperties))return d0(z,U,Z);let $=Object.getOwnPropertyNames(Z),A=z.additionalProperties,Q={...Z};for(let Y of $)if(!X.includes(Y))Q[Y]=d0(A,`${U}/${Y}`,Q[Y]);return d0(z,U,Q)}function eJ(z,w,U,W){if(!l(W))return d0(z,U,W);let X=Object.getOwnPropertyNames(z.patternProperties)[0],Z=new RegExp(X),$={...W};for(let J of Object.getOwnPropertyNames(W))if(Z.test(J))$[J]=N1(z.patternProperties[X],w,`${U}/${J}`,$[J]);if(!f0(z.additionalProperties))return d0(z,U,$);let A=Object.getOwnPropertyNames($),Q=z.additionalProperties,Y={...$};for(let J of A)if(!Z.test(J))Y[J]=d0(Q,`${U}/${J}`,Y[J]);return d0(z,U,Y)}function zB(z,w,U,W){let X=B0(z,w);return d0(z,U,N1(X,w,U,W))}function wB(z,w,U,W){let X=B0(z,w);return d0(z,U,N1(X,w,U,W))}function UB(z,w,U,W){return m(W)&&m(z.items)?d0(z,U,z.items.map((X,Z)=>N1(X,w,`${U}/${Z}`,W[Z]))):d0(z,U,W)}function WB(z,w,U,W){for(let X of z.anyOf){if(!s(X,w,W))continue;let Z=N1(X,w,U,W);return d0(z,U,Z)}return d0(z,U,W)}function N1(z,w,U,W){let X=z2(z,w),Z=z;switch(z[H]){case"Array":return pJ(Z,X,U,W);case"Import":return sJ(Z,X,U,W);case"Intersect":return lJ(Z,X,U,W);case"Not":return rJ(Z,X,U,W);case"Object":return aJ(Z,X,U,W);case"Record":return eJ(Z,X,U,W);case"Ref":return zB(Z,X,U,W);case"Symbol":return d0(Z,U,W);case"This":return wB(Z,X,U,W);case"Tuple":return UB(Z,X,U,W);case"Union":return WB(Z,X,U,W);default:return d0(Z,U,W)}}function H4(z,w,U){return N1(z,w,"",U)}class y4 extends n{constructor(z,w,U){super("The encoded value does not match the expected schema");this.schema=z,this.value=w,this.error=U}}class n7 extends n{constructor(z,w,U,W){super(`${W instanceof Error?W.message:"Unknown error"}`);this.schema=z,this.path=w,this.value=U,this.error=W}}function $2(z,w,U){try{return G0(z)?z[F0].Encode(U):U}catch(W){throw new n7(z,w,U,W)}}function XB(z,w,U,W){let X=$2(z,U,W);return m(X)?X.map((Z,$)=>H1(z.items,w,`${U}/${$}`,Z)):X}function ZB(z,w,U,W){let X=globalThis.Object.values(z.$defs),Z=z.$defs[z.$ref],$=$2(z,U,W);return H1(Z,[...w,...X],U,$)}function $B(z,w,U,W){let X=$2(z,U,W);if(!l(W)||k2(W))return X;let Z=D8(z),$=Z.map((G)=>G[0]),A={...X};for(let[G,S]of Z)if(G in A)A[G]=H1(S,w,`${U}/${G}`,A[G]);if(!G0(z.unevaluatedProperties))return A;let Q=Object.getOwnPropertyNames(A),Y=z.unevaluatedProperties,J={...A};for(let G of Q)if(!$.includes(G))J[G]=$2(Y,`${U}/${G}`,J[G]);return J}function AB(z,w,U,W){return $2(z.not,U,$2(z,U,W))}function QB(z,w,U,W){let X=$2(z,U,W);if(!l(X))return X;let Z=O2(z),$={...X};for(let J of Z){if(!u($,J))continue;if(k0($[J])&&(!n1(z.properties[J])||I0.IsExactOptionalProperty($,J)))continue;$[J]=H1(z.properties[J],w,`${U}/${J}`,$[J])}if(!f0(z.additionalProperties))return $;let A=Object.getOwnPropertyNames($),Q=z.additionalProperties,Y={...$};for(let J of A)if(!Z.includes(J))Y[J]=$2(Q,`${U}/${J}`,Y[J]);return Y}function YB(z,w,U,W){let X=$2(z,U,W);if(!l(W))return X;let Z=Object.getOwnPropertyNames(z.patternProperties)[0],$=new RegExp(Z),A={...X};for(let G of Object.getOwnPropertyNames(W))if($.test(G))A[G]=H1(z.patternProperties[Z],w,`${U}/${G}`,A[G]);if(!f0(z.additionalProperties))return A;let Q=Object.getOwnPropertyNames(A),Y=z.additionalProperties,J={...A};for(let G of Q)if(!$.test(G))J[G]=$2(Y,`${U}/${G}`,J[G]);return J}function JB(z,w,U,W){let X=B0(z,w),Z=H1(X,w,U,W);return $2(z,U,Z)}function BB(z,w,U,W){let X=B0(z,w),Z=H1(X,w,U,W);return $2(z,U,Z)}function MB(z,w,U,W){let X=$2(z,U,W);return m(z.items)?z.items.map((Z,$)=>H1(Z,w,`${U}/${$}`,X[$])):[]}function qB(z,w,U,W){for(let X of z.anyOf){if(!s(X,w,W))continue;let Z=H1(X,w,U,W);return $2(z,U,Z)}for(let X of z.anyOf){let Z=H1(X,w,U,W);if(!s(z,w,Z))continue;return $2(z,U,Z)}return $2(z,U,W)}function H1(z,w,U,W){let X=z2(z,w),Z=z;switch(z[H]){case"Array":return XB(Z,X,U,W);case"Import":return ZB(Z,X,U,W);case"Intersect":return $B(Z,X,U,W);case"Not":return AB(Z,X,U,W);case"Object":return QB(Z,X,U,W);case"Record":return YB(Z,X,U,W);case"Ref":return JB(Z,X,U,W);case"This":return BB(Z,X,U,W);case"Tuple":return MB(Z,X,U,W);case"Union":return qB(Z,X,U,W);default:return $2(Z,U,W)}}function _4(z,w,U){return H1(z,w,"",U)}function LB(z,w){return G0(z)||r0(z.items,w)}function GB(z,w){return G0(z)||r0(z.items,w)}function NB(z,w){return G0(z)||r0(z.returns,w)||z.parameters.some((U)=>r0(U,w))}function HB(z,w){return G0(z)||r0(z.returns,w)||z.parameters.some((U)=>r0(U,w))}function _B(z,w){return G0(z)||G0(z.unevaluatedProperties)||z.allOf.some((U)=>r0(U,w))}function SB(z,w){let U=globalThis.Object.getOwnPropertyNames(z.$defs).reduce((X,Z)=>[...X,z.$defs[Z]],[]),W=z.$defs[z.$ref];return G0(z)||r0(W,[...U,...w])}function DB(z,w){return G0(z)||r0(z.items,w)}function PB(z,w){return G0(z)||r0(z.not,w)}function OB(z,w){return G0(z)||Object.values(z.properties).some((U)=>r0(U,w))||f0(z.additionalProperties)&&r0(z.additionalProperties,w)}function RB(z,w){return G0(z)||r0(z.item,w)}function CB(z,w){let U=Object.getOwnPropertyNames(z.patternProperties)[0],W=z.patternProperties[U];return G0(z)||r0(W,w)||f0(z.additionalProperties)&&G0(z.additionalProperties)}function bB(z,w){if(G0(z))return!0;return r0(B0(z,w),w)}function KB(z,w){if(G0(z))return!0;return r0(B0(z,w),w)}function jB(z,w){return G0(z)||!k0(z.items)&&z.items.some((U)=>r0(U,w))}function FB(z,w){return G0(z)||z.anyOf.some((U)=>r0(U,w))}function r0(z,w){let U=z2(z,w),W=z;if(z.$id&&jz.has(z.$id))return!1;if(z.$id)jz.add(z.$id);switch(z[H]){case"Array":return LB(W,U);case"AsyncIterator":return GB(W,U);case"Constructor":return NB(W,U);case"Function":return HB(W,U);case"Import":return SB(W,U);case"Intersect":return _B(W,U);case"Iterator":return DB(W,U);case"Not":return PB(W,U);case"Object":return OB(W,U);case"Promise":return RB(W,U);case"Record":return CB(W,U);case"Ref":return bB(W,U);case"This":return KB(W,U);case"Tuple":return jB(W,U);case"Union":return FB(W,U);default:return G0(z)}}var jz=new Set;function l1(z,w){return jz.clear(),r0(z,w)}class u7{constructor(z,w,U,W){this.schema=z,this.references=w,this.checkFunc=U,this.code=W,this.hasTransform=l1(z,w)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(z){return k1(this.schema,this.references,z)}Check(z){return this.checkFunc(z)}Decode(z){if(!this.checkFunc(z))throw new i4(this.schema,z,this.Errors(z).First());return this.hasTransform?H4(this.schema,this.references,z):z}Encode(z){let w=this.hasTransform?_4(this.schema,this.references,z):z;if(!this.checkFunc(w))throw new y4(this.schema,z,this.Errors(z).First());return w}}var s1;(function(z){function w(Z){return Z===36}z.DollarSign=w;function U(Z){return Z===95}z.IsUnderscore=U;function W(Z){return Z>=65&&Z<=90||Z>=97&&Z<=122}z.IsAlpha=W;function X(Z){return Z>=48&&Z<=57}z.IsNumeric=X})(s1||(s1={}));var g8;(function(z){function w(Z){if(Z.length===0)return!1;return s1.IsNumeric(Z.charCodeAt(0))}function U(Z){if(w(Z))return!1;for(let $=0;$<Z.length;$++){let A=Z.charCodeAt($);if(!(s1.IsAlpha(A)||s1.IsNumeric(A)||s1.DollarSign(A)||s1.IsUnderscore(A)))return!1}return!0}function W(Z){return Z.replace(/'/g,"\\'")}function X(Z,$){return U($)?`${Z}.${$}`:`${Z}['${W($)}']`}z.Encode=X})(g8||(g8={}));var Fz;(function(z){function w(U){let W=[];for(let X=0;X<U.length;X++){let Z=U.charCodeAt(X);if(s1.IsNumeric(Z)||s1.IsAlpha(Z))W.push(U.charAt(X));else W.push(`_${Z}_`)}return W.join("").replace(/__/g,"_")}z.Encode=w})(Fz||(Fz={}));var Ez;(function(z){function w(U){return U.replace(/'/g,"\\'")}z.Escape=w})(Ez||(Ez={}));class m7 extends n{constructor(z){super("Unknown type");this.schema=z}}class Iz extends n{constructor(z){super("Preflight validation check failed to guard for the given schema");this.schema=z}}var c6;(function(z){function w($,A,Q){return I0.ExactOptionalPropertyTypes?`('${A}' in ${$} ? ${Q} : true)`:`(${g8.Encode($,A)} !== undefined ? ${Q} : true)`}z.IsExactOptionalProperty=w;function U($){return!I0.AllowArrayObject?`(typeof ${$} === 'object' && ${$} !== null && !Array.isArray(${$}))`:`(typeof ${$} === 'object' && ${$} !== null)`}z.IsObjectLike=U;function W($){return!I0.AllowArrayObject?`(typeof ${$} === 'object' && ${$} !== null && !Array.isArray(${$}) && !(${$} instanceof Date) && !(${$} instanceof Uint8Array))`:`(typeof ${$} === 'object' && ${$} !== null && !(${$} instanceof Date) && !(${$} instanceof Uint8Array))`}z.IsRecordLike=W;function X($){return I0.AllowNaN?`typeof ${$} === 'number'`:`Number.isFinite(${$})`}z.IsNumberLike=X;function Z($){return I0.AllowNullVoid?`(${$} === undefined || ${$} === null)`:`${$} === undefined`}z.IsVoidLike=Z})(c6||(c6={}));var N6;(function(z){function w(B){return B[H]==="Any"||B[H]==="Unknown"}function*U(B,K,L){yield"true"}function*W(B,K,L){yield"true"}function*X(B,K,L){yield`Array.isArray(${L})`;let[d,I]=[F("value","any"),F("acc","number")];if(v(B.maxItems))yield`${L}.length <= ${B.maxItems}`;if(v(B.minItems))yield`${L}.length >= ${B.minItems}`;let h=x2(B.items,K,"value");if(yield`${L}.every((${d}) => ${h})`,g0(B.contains)||v(B.minContains)||v(B.maxContains)){let C0=g0(B.contains)?B.contains:p(),_2=x2(C0,K,"value"),f1=v(B.minContains)?[`(count >= ${B.minContains})`]:[],Z1=v(B.maxContains)?[`(count <= ${B.maxContains})`]:[],j1=`const count = value.reduce((${I}, ${d}) => ${_2} ? acc + 1 : acc, 0)`,X8=["(count > 0)",...f1,...Z1].join(" && ");yield`((${d}) => { ${j1}; return ${X8}})(${L})`}if(B.uniqueItems===!0)yield`((${d}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${L})`}function*Z(B,K,L){yield`(typeof value === 'object' && Symbol.asyncIterator in ${L})`}function*$(B,K,L){if(yield`(typeof ${L} === 'bigint')`,X2(B.exclusiveMaximum))yield`${L} < BigInt(${B.exclusiveMaximum})`;if(X2(B.exclusiveMinimum))yield`${L} > BigInt(${B.exclusiveMinimum})`;if(X2(B.maximum))yield`${L} <= BigInt(${B.maximum})`;if(X2(B.minimum))yield`${L} >= BigInt(${B.minimum})`;if(X2(B.multipleOf))yield`(${L} % BigInt(${B.multipleOf})) === 0`}function*A(B,K,L){yield`(typeof ${L} === 'boolean')`}function*Q(B,K,L){yield*W1(B.returns,K,`${L}.prototype`)}function*Y(B,K,L){if(yield`(${L} instanceof Date) && Number.isFinite(${L}.getTime())`,v(B.exclusiveMaximumTimestamp))yield`${L}.getTime() < ${B.exclusiveMaximumTimestamp}`;if(v(B.exclusiveMinimumTimestamp))yield`${L}.getTime() > ${B.exclusiveMinimumTimestamp}`;if(v(B.maximumTimestamp))yield`${L}.getTime() <= ${B.maximumTimestamp}`;if(v(B.minimumTimestamp))yield`${L}.getTime() >= ${B.minimumTimestamp}`;if(v(B.multipleOfTimestamp))yield`(${L}.getTime() % ${B.multipleOfTimestamp}) === 0`}function*J(B,K,L){yield`(typeof ${L} === 'function')`}function*G(B,K,L){let d=globalThis.Object.getOwnPropertyNames(B.$defs).reduce((I,h)=>{return[...I,B.$defs[h]]},[]);yield*W1(o2(B.$ref),[...K,...d],L)}function*S(B,K,L){if(yield`Number.isInteger(${L})`,v(B.exclusiveMaximum))yield`${L} < ${B.exclusiveMaximum}`;if(v(B.exclusiveMinimum))yield`${L} > ${B.exclusiveMinimum}`;if(v(B.maximum))yield`${L} <= ${B.maximum}`;if(v(B.minimum))yield`${L} >= ${B.minimum}`;if(v(B.multipleOf))yield`(${L} % ${B.multipleOf}) === 0`}function*N(B,K,L){let d=B.allOf.map((I)=>x2(I,K,L)).join(" && ");if(B.unevaluatedProperties===!1){let I=Z6(`${new RegExp(t1(B))};`),h=`Object.getOwnPropertyNames(${L}).every(key => ${I}.test(key))`;yield`(${d} && ${h})`}else if(g0(B.unevaluatedProperties)){let I=Z6(`${new RegExp(t1(B))};`),h=`Object.getOwnPropertyNames(${L}).every(key => ${I}.test(key) || ${x2(B.unevaluatedProperties,K,`${L}[key]`)})`;yield`(${d} && ${h})`}else yield`(${d})`}function*O(B,K,L){yield`(typeof value === 'object' && Symbol.iterator in ${L})`}function*M(B,K,L){if(typeof B.const==="number"||typeof B.const==="boolean")yield`(${L} === ${B.const})`;else yield`(${L} === '${Ez.Escape(B.const)}')`}function*C(B,K,L){yield"false"}function*g(B,K,L){yield`(!${x2(B.not,K,L)})`}function*L0(B,K,L){yield`(${L} === null)`}function*a(B,K,L){if(yield c6.IsNumberLike(L),v(B.exclusiveMaximum))yield`${L} < ${B.exclusiveMaximum}`;if(v(B.exclusiveMinimum))yield`${L} > ${B.exclusiveMinimum}`;if(v(B.maximum))yield`${L} <= ${B.maximum}`;if(v(B.minimum))yield`${L} >= ${B.minimum}`;if(v(B.multipleOf))yield`(${L} % ${B.multipleOf}) === 0`}function*$0(B,K,L){if(yield c6.IsObjectLike(L),v(B.minProperties))yield`Object.getOwnPropertyNames(${L}).length >= ${B.minProperties}`;if(v(B.maxProperties))yield`Object.getOwnPropertyNames(${L}).length <= ${B.maxProperties}`;let d=Object.getOwnPropertyNames(B.properties);for(let I of d){let h=g8.Encode(L,I),C0=B.properties[I];if(B.required&&B.required.includes(I)){if(yield*W1(C0,K,h),o1(C0)||w(C0))yield`('${I}' in ${L})`}else{let _2=x2(C0,K,h);yield c6.IsExactOptionalProperty(L,I,_2)}}if(B.additionalProperties===!1)if(B.required&&B.required.length===d.length)yield`Object.getOwnPropertyNames(${L}).length === ${d.length}`;else{let I=`[${d.map((h)=>`'${h}'`).join(", ")}]`;yield`Object.getOwnPropertyNames(${L}).every(key => ${I}.includes(key))`}if(typeof B.additionalProperties==="object"){let I=x2(B.additionalProperties,K,`${L}[key]`),h=`[${d.map((C0)=>`'${C0}'`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${L}).every(key => ${h}.includes(key) || ${I}))`}}function*K0(B,K,L){yield`${L} instanceof Promise`}function*f(B,K,L){if(yield c6.IsRecordLike(L),v(B.minProperties))yield`Object.getOwnPropertyNames(${L}).length >= ${B.minProperties}`;if(v(B.maxProperties))yield`Object.getOwnPropertyNames(${L}).length <= ${B.maxProperties}`;let[d,I]=Object.entries(B.patternProperties)[0],h=Z6(`${new RegExp(d)}`),C0=x2(I,K,"value"),_2=g0(B.additionalProperties)?x2(B.additionalProperties,K,L):B.additionalProperties===!1?"false":"true",f1=`(${h}.test(key) ? ${C0} : ${_2})`;yield`(Object.entries(${L}).every(([key, value]) => ${f1}))`}function*V(B,K,L){let d=B0(B,K);if(S0.functions.has(B.$ref))return yield`${X6(B.$ref)}(${L})`;yield*W1(d,K,L)}function*k(B,K,L){let d=Z6(`${new RegExp(B.source,B.flags)};`);if(yield`(typeof ${L} === 'string')`,v(B.maxLength))yield`${L}.length <= ${B.maxLength}`;if(v(B.minLength))yield`${L}.length >= ${B.minLength}`;yield`${d}.test(${L})`}function*j(B,K,L){if(yield`(typeof ${L} === 'string')`,v(B.maxLength))yield`${L}.length <= ${B.maxLength}`;if(v(B.minLength))yield`${L}.length >= ${B.minLength}`;if(B.pattern!==void 0)yield`${Z6(`${new RegExp(B.pattern)};`)}.test(${L})`;if(B.format!==void 0)yield`format('${B.format}', ${L})`}function*e(B,K,L){yield`(typeof ${L} === 'symbol')`}function*Y0(B,K,L){yield`(typeof ${L} === 'string')`,yield`${Z6(`${new RegExp(B.pattern)};`)}.test(${L})`}function*_0(B,K,L){yield`${X6(B.$ref)}(${L})`}function*h0(B,K,L){if(yield`Array.isArray(${L})`,B.items===void 0)return yield`${L}.length === 0`;yield`(${L}.length === ${B.maxItems})`;for(let d=0;d<B.items.length;d++)yield`${x2(B.items[d],K,`${L}[${d}]`)}`}function*U6(B,K,L){yield`${L} === undefined`}function*n0(B,K,L){yield`(${B.anyOf.map((I)=>x2(I,K,L)).join(" || ")})`}function*W6(B,K,L){if(yield`${L} instanceof Uint8Array`,v(B.maxByteLength))yield`(${L}.length <= ${B.maxByteLength})`;if(v(B.minByteLength))yield`(${L}.length >= ${B.minByteLength})`}function*I2(B,K,L){yield"true"}function*K6(B,K,L){yield c6.IsVoidLike(L)}function*r5(B,K,L){let d=S0.instances.size;S0.instances.set(d,B),yield`kind('${B[H]}', ${d}, ${L})`}function*W1(B,K,L,d=!0){let I=A0(B.$id)?[...K,B]:K,h=B;if(d&&A0(B.$id)){let C0=X6(B.$id);if(S0.functions.has(C0))return yield`${C0}(${L})`;else{S0.functions.set(C0,"<deferred>");let _2=X1(C0,B,K,"value",!1);return S0.functions.set(C0,_2),yield`${C0}(${L})`}}switch(h[H]){case"Any":return yield*U(h,I,L);case"Argument":return yield*W(h,I,L);case"Array":return yield*X(h,I,L);case"AsyncIterator":return yield*Z(h,I,L);case"BigInt":return yield*$(h,I,L);case"Boolean":return yield*A(h,I,L);case"Constructor":return yield*Q(h,I,L);case"Date":return yield*Y(h,I,L);case"Function":return yield*J(h,I,L);case"Import":return yield*G(h,I,L);case"Integer":return yield*S(h,I,L);case"Intersect":return yield*N(h,I,L);case"Iterator":return yield*O(h,I,L);case"Literal":return yield*M(h,I,L);case"Never":return yield*C(h,I,L);case"Not":return yield*g(h,I,L);case"Null":return yield*L0(h,I,L);case"Number":return yield*a(h,I,L);case"Object":return yield*$0(h,I,L);case"Promise":return yield*K0(h,I,L);case"Record":return yield*f(h,I,L);case"Ref":return yield*V(h,I,L);case"RegExp":return yield*k(h,I,L);case"String":return yield*j(h,I,L);case"Symbol":return yield*e(h,I,L);case"TemplateLiteral":return yield*Y0(h,I,L);case"This":return yield*_0(h,I,L);case"Tuple":return yield*h0(h,I,L);case"Undefined":return yield*U6(h,I,L);case"Union":return yield*n0(h,I,L);case"Uint8Array":return yield*W6(h,I,L);case"Unknown":return yield*I2(h,I,L);case"Void":return yield*K6(h,I,L);default:if(!p0.Has(h[H]))throw new m7(B);return yield*r5(h,I,L)}}let S0={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function x2(B,K,L,d=!0){return`(${[...W1(B,K,L,d)].join(" && ")})`}function X6(B){return`check_${Fz.Encode(B)}`}function Z6(B){let K=`local_${S0.variables.size}`;return S0.variables.set(K,`const ${K} = ${B}`),K}function X1(B,K,L,d,I=!0){let[h,C0]=[`
3
- `,(j1)=>"".padStart(j1," ")],_2=F("value","any"),f1=R("boolean"),Z1=[...W1(K,L,d,I)].map((j1)=>`${C0(4)}${j1}`).join(` &&${h}`);return`function ${B}(${_2})${f1} {${h}${C0(2)}return (${h}${Z1}${h}${C0(2)})
4
- }`}function F(B,K){let L=S0.language==="typescript"?`: ${K}`:"";return`${B}${L}`}function R(B){return S0.language==="typescript"?`: ${B}`:""}function b(B,K,L){let d=X1("check",B,K,"value"),I=F("value","any"),h=R("boolean"),C0=[...S0.functions.values()],_2=[...S0.variables.values()],f1=A0(B.$id)?`return function check(${I})${h} {
5
- return ${X6(B.$id)}(value)
6
- }`:`return ${d}`;return[..._2,...C0,f1].join(`
7
- `)}function c(...B){let K={language:"javascript"},[L,d,I]=B.length===2&&m(B[1])?[B[0],B[1],K]:B.length===2&&!m(B[1])?[B[0],[],B[1]]:B.length===3?[B[0],B[1],B[2]]:B.length===1?[B[0],[],K]:[null,[],K];if(S0.language=I.language,S0.variables.clear(),S0.functions.clear(),S0.instances.clear(),!g0(L))throw new Iz(L);for(let h of d)if(!g0(h))throw new Iz(h);return b(L,d,I)}z.Code=c;function t(B,K=[]){let L=c(B,K,{language:"javascript"}),d=globalThis.Function("kind","format","hash",L),I=new Map(S0.instances);function h(Z1,j1,X8){if(!p0.Has(Z1)||!I.has(j1))return!1;let NX=p0.Get(Z1),HX=I.get(j1);return NX(HX,X8)}function C0(Z1,j1){if(!D0.Has(Z1))return!1;return D0.Get(Z1)(j1)}function _2(Z1){return G6(Z1)}let f1=d(h,C0,_2);return new u7(B,K,f1,L)}z.Compile=t})(N6||(N6={}));var EB=function(z,w,U,W,X){if(W==="m")throw new TypeError("Private method is not writable");if(W==="a"&&!X)throw new TypeError("Private accessor was defined without a setter");if(typeof w==="function"?z!==w||!X:!w.has(z))throw new TypeError("Cannot write private member to an object whose class did not declare it");return W==="a"?X.call(z,U):X?X.value=U:w.set(z,U),U},o7=function(z,w,U,W){if(U==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof w==="function"?z!==w||!W:!w.has(z))throw new TypeError("Cannot read private member from an object whose class did not declare it");return U==="m"?W:U==="a"?W.call(z):W?W.value:w.get(z)},xz,f8,p7;class l7 extends n{constructor(z){let w=z.First();super(w===void 0?"Invalid Value":w.message);xz.add(this),f8.set(this,void 0),EB(this,f8,z,"f"),this.error=w}Errors(){return new h6(o7(this,xz,"m",p7).call(this))}}f8=new WeakMap,xz=new WeakSet,p7=function*z(){if(this.error)yield this.error;yield*o7(this,f8,"f")};function t7(z,w,U){if(s(z,w,U))return;throw new l7(k1(z,w,U))}function d8(...z){return z.length===3?t7(z[0],z[1],z[2]):t7(z[0],[],z[1])}function IB(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=M0(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=M0(z[U]);return w}function xB(z){return z.map((w)=>M0(w))}function VB(z){return z.slice()}function kB(z){return new Map(M0([...z.entries()]))}function TB(z){return new Set(M0([...z.entries()]))}function gB(z){return new Date(z.toISOString())}function fB(z){return z}function M0(z){if(m(z))return xB(z);if(G2(z))return gB(z);if(v2(z))return VB(z);if(qw(z))return kB(z);if(Lw(z))return TB(z);if(l(z))return IB(z);if(k2(z))return fB(z);throw new Error("ValueClone: Unable to clone value")}class s2 extends n{constructor(z,w){super(w);this.schema=z}}function q0(z){return $6(z)?z():M0(z)}function dB(z,w){if(u(z,"default"))return q0(z.default);else return{}}function hB(z,w){return{}}function cB(z,w){if(z.uniqueItems===!0&&!u(z,"default"))throw new s2(z,"Array with the uniqueItems constraint requires a default value");else if("contains"in z&&!u(z,"default"))throw new s2(z,"Array with the contains constraint requires a default value");else if("default"in z)return q0(z.default);else if(z.minItems!==void 0)return Array.from({length:z.minItems}).map((U)=>{return C2(z.items,w)});else return[]}function iB(z,w){if(u(z,"default"))return q0(z.default);else return async function*(){}()}function yB(z,w){if(u(z,"default"))return q0(z.default);else return BigInt(0)}function vB(z,w){if(u(z,"default"))return q0(z.default);else return!1}function nB(z,w){if(u(z,"default"))return q0(z.default);else{let U=C2(z.returns,w);if(typeof U==="object"&&!Array.isArray(U))return class{constructor(){for(let[W,X]of Object.entries(U)){let Z=this;Z[W]=X}}};else return class{}}}function uB(z,w){if(u(z,"default"))return q0(z.default);else if(z.minimumTimestamp!==void 0)return new Date(z.minimumTimestamp);else return new Date}function mB(z,w){if(u(z,"default"))return q0(z.default);else return()=>C2(z.returns,w)}function tB(z,w){let U=globalThis.Object.values(z.$defs),W=z.$defs[z.$ref];return C2(W,[...w,...U])}function oB(z,w){if(u(z,"default"))return q0(z.default);else if(z.minimum!==void 0)return z.minimum;else return 0}function pB(z,w){if(u(z,"default"))return q0(z.default);else{let U=z.allOf.reduce((W,X)=>{let Z=C2(X,w);return typeof Z==="object"?{...W,...Z}:Z},{});if(!s(z,w,U))throw new s2(z,"Intersect produced invalid value. Consider using a default value.");return U}}function lB(z,w){if(u(z,"default"))return q0(z.default);else return function*(){}()}function sB(z,w){if(u(z,"default"))return q0(z.default);else return z.const}function rB(z,w){if(u(z,"default"))return q0(z.default);else throw new s2(z,"Never types cannot be created. Consider using a default value.")}function aB(z,w){if(u(z,"default"))return q0(z.default);else throw new s2(z,"Not types must have a default value")}function eB(z,w){if(u(z,"default"))return q0(z.default);else return null}function zM(z,w){if(u(z,"default"))return q0(z.default);else if(z.minimum!==void 0)return z.minimum;else return 0}function wM(z,w){if(u(z,"default"))return q0(z.default);else{let U=new Set(z.required),W={};for(let[X,Z]of Object.entries(z.properties)){if(!U.has(X))continue;W[X]=C2(Z,w)}return W}}function UM(z,w){if(u(z,"default"))return q0(z.default);else return Promise.resolve(C2(z.item,w))}function WM(z,w){let[U,W]=Object.entries(z.patternProperties)[0];if(u(z,"default"))return q0(z.default);else if(!(U===I1||U===E1)){let X=U.slice(1,U.length-1).split("|"),Z={};for(let $ of X)Z[$]=C2(W,w);return Z}else return{}}function XM(z,w){if(u(z,"default"))return q0(z.default);else return C2(B0(z,w),w)}function ZM(z,w){if(u(z,"default"))return q0(z.default);else throw new s2(z,"RegExp types cannot be created. Consider using a default value.")}function $M(z,w){if(z.pattern!==void 0)if(!u(z,"default"))throw new s2(z,"String types with patterns must specify a default value");else return q0(z.default);else if(z.format!==void 0)if(!u(z,"default"))throw new s2(z,"String types with formats must specify a default value");else return q0(z.default);else if(u(z,"default"))return q0(z.default);else if(z.minLength!==void 0)return Array.from({length:z.minLength}).map(()=>" ").join("");else return""}function AM(z,w){if(u(z,"default"))return q0(z.default);else if("value"in z)return Symbol.for(z.value);else return Symbol()}function QM(z,w){if(u(z,"default"))return q0(z.default);if(!G8(z))throw new s2(z,"Can only create template literals that produce a finite variants. Consider using a default value.");return X4(z)[0]}function YM(z,w){if(s7++>HM)throw new s2(z,"Cannot create recursive type as it appears possibly infinite. Consider using a default.");if(u(z,"default"))return q0(z.default);else return C2(B0(z,w),w)}function JM(z,w){if(u(z,"default"))return q0(z.default);if(z.items===void 0)return[];else return Array.from({length:z.minItems}).map((U,W)=>C2(z.items[W],w))}function BM(z,w){if(u(z,"default"))return q0(z.default);else return}function MM(z,w){if(u(z,"default"))return q0(z.default);else if(z.anyOf.length===0)throw new Error("ValueCreate.Union: Cannot create Union with zero variants");else return C2(z.anyOf[0],w)}function qM(z,w){if(u(z,"default"))return q0(z.default);else if(z.minByteLength!==void 0)return new Uint8Array(z.minByteLength);else return new Uint8Array(0)}function LM(z,w){if(u(z,"default"))return q0(z.default);else return{}}function GM(z,w){if(u(z,"default"))return q0(z.default);else return}function NM(z,w){if(u(z,"default"))return q0(z.default);else throw new Error("User defined types must specify a default value")}function C2(z,w){let U=z2(z,w),W=z;switch(W[H]){case"Any":return dB(W,U);case"Argument":return hB(W,U);case"Array":return cB(W,U);case"AsyncIterator":return iB(W,U);case"BigInt":return yB(W,U);case"Boolean":return vB(W,U);case"Constructor":return nB(W,U);case"Date":return uB(W,U);case"Function":return mB(W,U);case"Import":return tB(W,U);case"Integer":return oB(W,U);case"Intersect":return pB(W,U);case"Iterator":return lB(W,U);case"Literal":return sB(W,U);case"Never":return rB(W,U);case"Not":return aB(W,U);case"Null":return eB(W,U);case"Number":return zM(W,U);case"Object":return wM(W,U);case"Promise":return UM(W,U);case"Record":return WM(W,U);case"Ref":return XM(W,U);case"RegExp":return ZM(W,U);case"String":return $M(W,U);case"Symbol":return AM(W,U);case"TemplateLiteral":return QM(W,U);case"This":return YM(W,U);case"Tuple":return JM(W,U);case"Undefined":return BM(W,U);case"Union":return MM(W,U);case"Uint8Array":return qM(W,U);case"Unknown":return LM(W,U);case"Void":return GM(W,U);default:if(!p0.Has(W[H]))throw new s2(W,"Unknown type");return NM(W,U)}}var HM=512,s7=0;function r2(...z){return s7=0,z.length===2?C2(z[0],z[1]):C2(z[0],[])}class Vz extends n{constructor(z,w){super(w);this.schema=z}}function _M(z,w,U){if(z[H]==="Object"&&typeof U==="object"&&!c1(U)){let W=z,X=Object.getOwnPropertyNames(U),Z=Object.entries(W.properties),[$,A]=[1/Z.length,Z.length];return Z.reduce((Q,[Y,J])=>{let G=J[H]==="Literal"&&J.const===U[Y]?A:0,S=s(J,w,U[Y])?$:0,N=X.includes(Y)?$:0;return Q+(G+S+N)},0)}else return s(z,w,U)?1:0}function SM(z,w,U){let W=z.anyOf.map(($)=>B0($,w)),[X,Z]=[W[0],0];for(let $ of W){let A=_M($,w,U);if(A>Z)X=$,Z=A}return X}function DM(z,w,U){if("default"in z)return typeof U==="function"?z.default:M0(z.default);else{let W=SM(z,w,U);return v4(W,w,U)}}function PM(z,w,U){return s(z,w,U)?M0(U):r2(z,w)}function OM(z,w,U){return s(z,w,U)?U:r2(z,w)}function RM(z,w,U){if(s(z,w,U))return M0(U);let W=m(U)?M0(U):r2(z,w),X=v(z.minItems)&&W.length<z.minItems?[...W,...Array.from({length:z.minItems-W.length},()=>null)]:W,$=(v(z.maxItems)&&X.length>z.maxItems?X.slice(0,z.maxItems):X).map((Q)=>_1(z.items,w,Q));if(z.uniqueItems!==!0)return $;let A=[...new Set($)];if(!s(z,w,A))throw new Vz(z,"Array cast produced invalid data due to uniqueItems constraint");return A}function CM(z,w,U){if(s(z,w,U))return r2(z,w);let W=new Set(z.returns.required||[]),X=function(){};for(let[Z,$]of Object.entries(z.returns.properties)){if(!W.has(Z)&&U.prototype[Z]===void 0)continue;X.prototype[Z]=_1($,w,U.prototype[Z])}return X}function bM(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return _1(X,[...w,...W],U)}function KM(z,w,U){let W=r2(z,w),X=l(W)&&l(U)?{...W,...U}:U;return s(z,w,X)?X:r2(z,w)}function jM(z,w,U){throw new Vz(z,"Never types cannot be cast")}function FM(z,w,U){if(s(z,w,U))return U;if(U===null||typeof U!=="object")return r2(z,w);let W=new Set(z.required||[]),X={};for(let[Z,$]of Object.entries(z.properties)){if(!W.has(Z)&&U[Z]===void 0)continue;X[Z]=_1($,w,U[Z])}if(typeof z.additionalProperties==="object"){let Z=Object.getOwnPropertyNames(z.properties);for(let $ of Object.getOwnPropertyNames(U)){if(Z.includes($))continue;X[$]=_1(z.additionalProperties,w,U[$])}}return X}function EM(z,w,U){if(s(z,w,U))return M0(U);if(U===null||typeof U!=="object"||Array.isArray(U)||U instanceof Date)return r2(z,w);let W=Object.getOwnPropertyNames(z.patternProperties)[0],X=z.patternProperties[W],Z={};for(let[$,A]of Object.entries(U))Z[$]=_1(X,w,A);return Z}function IM(z,w,U){return _1(B0(z,w),w,U)}function xM(z,w,U){return _1(B0(z,w),w,U)}function VM(z,w,U){if(s(z,w,U))return M0(U);if(!m(U))return r2(z,w);if(z.items===void 0)return[];return z.items.map((W,X)=>_1(W,w,U[X]))}function kM(z,w,U){return s(z,w,U)?M0(U):DM(z,w,U)}function _1(z,w,U){let W=A0(z.$id)?z2(z,w):w,X=z;switch(z[H]){case"Array":return RM(X,W,U);case"Constructor":return CM(X,W,U);case"Import":return bM(X,W,U);case"Intersect":return KM(X,W,U);case"Never":return jM(X,W,U);case"Object":return FM(X,W,U);case"Record":return EM(X,W,U);case"Ref":return IM(X,W,U);case"This":return xM(X,W,U);case"Tuple":return VM(X,W,U);case"Union":return kM(X,W,U);case"Date":case"Symbol":case"Uint8Array":return PM(z,w,U);default:return OM(X,W,U)}}function v4(...z){return z.length===3?_1(z[0],z[1],z[2]):_1(z[0],[],z[1])}function TM(z){return Q6(z)&&z[H]!=="Unsafe"}function gM(z,w,U){if(!m(U))return U;return U.map((W)=>b2(z.items,w,W))}function fM(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return b2(X,[...w,...W],U)}function dM(z,w,U){let W=z.unevaluatedProperties,Z=z.allOf.map((A)=>b2(A,w,M0(U))).reduce((A,Q)=>l(Q)?{...A,...Q}:Q,{});if(!l(U)||!l(Z)||!Q6(W))return Z;let $=O2(z);for(let A of Object.getOwnPropertyNames(U)){if($.includes(A))continue;if(s(W,w,U[A]))Z[A]=b2(W,w,U[A])}return Z}function hM(z,w,U){if(!l(U)||m(U))return U;let W=z.additionalProperties;for(let X of Object.getOwnPropertyNames(U)){if(u(z.properties,X)){U[X]=b2(z.properties[X],w,U[X]);continue}if(Q6(W)&&s(W,w,U[X])){U[X]=b2(W,w,U[X]);continue}delete U[X]}return U}function cM(z,w,U){if(!l(U))return U;let W=z.additionalProperties,X=Object.getOwnPropertyNames(U),[Z,$]=Object.entries(z.patternProperties)[0],A=new RegExp(Z);for(let Q of X){if(A.test(Q)){U[Q]=b2($,w,U[Q]);continue}if(Q6(W)&&s(W,w,U[Q])){U[Q]=b2(W,w,U[Q]);continue}delete U[Q]}return U}function iM(z,w,U){return b2(B0(z,w),w,U)}function yM(z,w,U){return b2(B0(z,w),w,U)}function vM(z,w,U){if(!m(U))return U;if(k0(z.items))return[];let W=Math.min(U.length,z.items.length);for(let X=0;X<W;X++)U[X]=b2(z.items[X],w,U[X]);return U.length>W?U.slice(0,W):U}function nM(z,w,U){for(let W of z.anyOf)if(TM(W)&&s(W,w,U))return b2(W,w,U);return U}function b2(z,w,U){let W=A0(z.$id)?z2(z,w):w,X=z;switch(X[H]){case"Array":return gM(X,W,U);case"Import":return fM(X,W,U);case"Intersect":return dM(X,W,U);case"Object":return hM(X,W,U);case"Record":return cM(X,W,U);case"Ref":return iM(X,W,U);case"This":return yM(X,W,U);case"Tuple":return vM(X,W,U);case"Union":return nM(X,W,U);default:return U}}function h8(...z){return z.length===3?b2(z[0],z[1],z[2]):b2(z[0],[],z[1])}function c8(z){return A0(z)&&!isNaN(z)&&!isNaN(parseFloat(z))}function uM(z){return X2(z)||F1(z)||v(z)}function n4(z){return z===!0||v(z)&&z===1||X2(z)&&z===BigInt("1")||A0(z)&&(z.toLowerCase()==="true"||z==="1")}function u4(z){return z===!1||v(z)&&(z===0||Object.is(z,-0))||X2(z)&&z===BigInt("0")||A0(z)&&(z.toLowerCase()==="false"||z==="0"||z==="-0")}function mM(z){return A0(z)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(z)}function tM(z){return A0(z)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(z)}function oM(z){return A0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(z)}function pM(z){return A0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(z)}function lM(z){return A0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(z)}function sM(z,w){let U=a7(z);return U===w?U:z}function rM(z,w){let U=e7(z);return U===w?U:z}function aM(z,w){let U=r7(z);return U===w?U:z}function eM(z,w){return A0(z.const)?sM(w,z.const):v(z.const)?rM(w,z.const):F1(z.const)?aM(w,z.const):w}function r7(z){return n4(z)?!0:u4(z)?!1:z}function zq(z){let w=(U)=>U.split(".")[0];return c8(z)?BigInt(w(z)):v(z)?BigInt(Math.trunc(z)):u4(z)?BigInt(0):n4(z)?BigInt(1):z}function a7(z){return i1(z)&&z.description!==void 0?z.description.toString():uM(z)?z.toString():z}function e7(z){return c8(z)?parseFloat(z):n4(z)?1:u4(z)?0:z}function wq(z){return c8(z)?parseInt(z):v(z)?Math.trunc(z):n4(z)?1:u4(z)?0:z}function Uq(z){return A0(z)&&z.toLowerCase()==="null"?null:z}function Wq(z){return A0(z)&&z==="undefined"?void 0:z}function Xq(z){return G2(z)?z:v(z)?new Date(z):n4(z)?new Date(1):u4(z)?new Date(0):c8(z)?new Date(parseInt(z)):tM(z)?new Date(`1970-01-01T${z}.000Z`):mM(z)?new Date(`1970-01-01T${z}`):pM(z)?new Date(`${z}.000Z`):oM(z)?new Date(z):lM(z)?new Date(`${z}T00:00:00.000Z`):z}function Zq(z){return z}function $q(z,w,U){return(m(U)?U:[U]).map((X)=>S1(z.items,w,X))}function Aq(z,w,U){return zq(U)}function Qq(z,w,U){return r7(U)}function Yq(z,w,U){return Xq(U)}function Jq(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return S1(X,[...w,...W],U)}function Bq(z,w,U){return wq(U)}function Mq(z,w,U){return z.allOf.reduce((W,X)=>S1(X,w,W),U)}function qq(z,w,U){return eM(z,U)}function Lq(z,w,U){return Uq(U)}function Gq(z,w,U){return e7(U)}function Nq(z,w,U){if(!l(U))return U;for(let W of Object.getOwnPropertyNames(z.properties)){if(!u(U,W))continue;U[W]=S1(z.properties[W],w,U[W])}return U}function Hq(z,w,U){if(!l(U))return U;let X=Object.getOwnPropertyNames(z.patternProperties)[0],Z=z.patternProperties[X];for(let[$,A]of Object.entries(U))U[$]=S1(Z,w,A);return U}function _q(z,w,U){return S1(B0(z,w),w,U)}function Sq(z,w,U){return a7(U)}function Dq(z,w,U){return A0(U)||v(U)?Symbol(U):U}function Pq(z,w,U){return S1(B0(z,w),w,U)}function Oq(z,w,U){if(!(m(U)&&!k0(z.items)))return U;return U.map((X,Z)=>{return Z<z.items.length?S1(z.items[Z],w,X):X})}function Rq(z,w,U){return Wq(U)}function Cq(z,w,U){for(let W of z.anyOf){let X=S1(W,w,M0(U));if(!s(W,w,X))continue;return X}return U}function S1(z,w,U){let W=z2(z,w),X=z;switch(z[H]){case"Array":return $q(X,W,U);case"BigInt":return Aq(X,W,U);case"Boolean":return Qq(X,W,U);case"Date":return Yq(X,W,U);case"Import":return Jq(X,W,U);case"Integer":return Bq(X,W,U);case"Intersect":return Mq(X,W,U);case"Literal":return qq(X,W,U);case"Null":return Lq(X,W,U);case"Number":return Gq(X,W,U);case"Object":return Nq(X,W,U);case"Record":return Hq(X,W,U);case"Ref":return _q(X,W,U);case"String":return Sq(X,W,U);case"Symbol":return Dq(X,W,U);case"This":return Pq(X,W,U);case"Tuple":return Oq(X,W,U);case"Undefined":return Rq(X,W,U);case"Union":return Cq(X,W,U);default:return Zq(U)}}function i8(...z){return z.length===3?S1(z[0],z[1],z[2]):S1(z[0],[],z[1])}function zU(...z){let[w,U,W]=z.length===3?[z[0],z[1],z[2]]:[z[0],[],z[1]];if(!s(w,U,W))throw new i4(w,W,k1(w,U,W).First());return l1(w,U)?H4(w,U,W):W}function r1(z,w){let U=u(z,"default")?z.default:void 0,W=$6(U)?U():M0(U);return k0(w)?W:l(w)&&l(W)?Object.assign(W,w):w}function kz(z){return Q6(z)&&"default"in z}function bq(z,w,U){if(m(U)){for(let X=0;X<U.length;X++)U[X]=H2(z.items,w,U[X]);return U}let W=r1(z,U);if(!m(W))return W;for(let X=0;X<W.length;X++)W[X]=H2(z.items,w,W[X]);return W}function Kq(z,w,U){return G2(U)?U:r1(z,U)}function jq(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return H2(X,[...w,...W],U)}function Fq(z,w,U){let W=r1(z,U);return z.allOf.reduce((X,Z)=>{let $=H2(Z,w,W);return l($)?{...X,...$}:$},{})}function Eq(z,w,U){let W=r1(z,U);if(!l(W))return W;let X=Object.getOwnPropertyNames(z.properties);for(let Z of X){let $=H2(z.properties[Z],w,W[Z]);if(k0($))continue;W[Z]=H2(z.properties[Z],w,W[Z])}if(!kz(z.additionalProperties))return W;for(let Z of Object.getOwnPropertyNames(W)){if(X.includes(Z))continue;W[Z]=H2(z.additionalProperties,w,W[Z])}return W}function Iq(z,w,U){let W=r1(z,U);if(!l(W))return W;let X=z.additionalProperties,[Z,$]=Object.entries(z.patternProperties)[0],A=new RegExp(Z);for(let Q of Object.getOwnPropertyNames(W)){if(!(A.test(Q)&&kz($)))continue;W[Q]=H2($,w,W[Q])}if(!kz(X))return W;for(let Q of Object.getOwnPropertyNames(W)){if(A.test(Q))continue;W[Q]=H2(X,w,W[Q])}return W}function xq(z,w,U){return H2(B0(z,w),w,r1(z,U))}function Vq(z,w,U){return H2(B0(z,w),w,U)}function kq(z,w,U){let W=r1(z,U);if(!m(W)||k0(z.items))return W;let[X,Z]=[z.items,Math.max(z.items.length,W.length)];for(let $=0;$<Z;$++)if($<X.length)W[$]=H2(X[$],w,W[$]);return W}function Tq(z,w,U){let W=r1(z,U);for(let X of z.anyOf){let Z=H2(X,w,M0(W));if(s(X,w,Z))return Z}return W}function H2(z,w,U){let W=z2(z,w),X=z;switch(X[H]){case"Array":return bq(X,W,U);case"Date":return Kq(X,W,U);case"Import":return jq(X,W,U);case"Intersect":return Fq(X,W,U);case"Object":return Eq(X,W,U);case"Record":return Iq(X,W,U);case"Ref":return xq(X,W,U);case"This":return Vq(X,W,U);case"Tuple":return kq(X,W,U);case"Union":return Tq(X,W,U);default:return r1(X,U)}}function y8(...z){return z.length===3?H2(z[0],z[1],z[2]):H2(z[0],[],z[1])}var D1={};j6(D1,{ValuePointerRootSetError:()=>Tz,ValuePointerRootDeleteError:()=>gz,Set:()=>gq,Has:()=>dq,Get:()=>hq,Format:()=>m4,Delete:()=>fq});class Tz extends n{constructor(z,w,U){super("Cannot set root value");this.value=z,this.path=w,this.update=U}}class gz extends n{constructor(z,w){super("Cannot delete root value");this.value=z,this.path=w}}function wU(z){return z.indexOf("~")===-1?z:z.replace(/~1/g,"/").replace(/~0/g,"~")}function*m4(z){if(z==="")return;let[w,U]=[0,0];for(let W=0;W<z.length;W++)if(z.charAt(W)==="/")if(W===0)w=W+1;else U=W,yield wU(z.slice(w,U)),w=W+1;else U=W;yield wU(z.slice(w))}function gq(z,w,U){if(w==="")throw new Tz(z,w,U);let[W,X,Z]=[null,z,""];for(let $ of m4(w)){if(X[$]===void 0)X[$]={};W=X,X=X[$],Z=$}W[Z]=U}function fq(z,w){if(w==="")throw new gz(z,w);let[U,W,X]=[null,z,""];for(let Z of m4(w)){if(W[Z]===void 0||W[Z]===null)return;U=W,W=W[Z],X=Z}if(Array.isArray(U)){let Z=parseInt(X);U.splice(Z,1)}else delete U[X]}function dq(z,w){if(w==="")return!0;let[U,W,X]=[null,z,""];for(let Z of m4(w)){if(W[Z]===void 0)return!1;U=W,W=W[Z],X=Z}return Object.getOwnPropertyNames(U).includes(X)}function hq(z,w){if(w==="")return z;let U=z;for(let W of m4(w)){if(U[W]===void 0)return;U=U[W]}return U}function cq(z,w){if(!l(w))return!1;let U=[...Object.keys(z),...Object.getOwnPropertySymbols(z)],W=[...Object.keys(w),...Object.getOwnPropertySymbols(w)];if(U.length!==W.length)return!1;return U.every((X)=>i6(z[X],w[X]))}function iq(z,w){return G2(w)&&z.getTime()===w.getTime()}function yq(z,w){if(!m(w)||z.length!==w.length)return!1;return z.every((U,W)=>i6(U,w[W]))}function vq(z,w){if(!v2(w)||z.length!==w.length||Object.getPrototypeOf(z).constructor.name!==Object.getPrototypeOf(w).constructor.name)return!1;return z.every((U,W)=>i6(U,w[W]))}function nq(z,w){return z===w}function i6(z,w){if(G2(z))return iq(z,w);if(v2(z))return vq(z,w);if(m(z))return yq(z,w);if(l(z))return cq(z,w);if(k2(z))return nq(z,w);throw new Error("ValueEquals: Unable to compare value")}var uq=H0({type:Z0("insert"),path:N2(),value:q1()}),mq=H0({type:Z0("update"),path:N2(),value:q1()}),tq=H0({type:Z0("delete"),path:N2()}),WU=N0([uq,mq,tq]);class fz extends n{constructor(z,w){super(w);this.value=z}}function v8(z,w){return{type:"update",path:z,value:w}}function XU(z,w){return{type:"insert",path:z,value:w}}function ZU(z){return{type:"delete",path:z}}function UU(z){if(globalThis.Object.getOwnPropertySymbols(z).length>0)throw new fz(z,"Cannot diff objects with symbols")}function*oq(z,w,U){if(UU(w),UU(U),!Xz(U))return yield v8(z,U);let W=globalThis.Object.getOwnPropertyNames(w),X=globalThis.Object.getOwnPropertyNames(U);for(let Z of X){if(u(w,Z))continue;yield XU(`${z}/${Z}`,U[Z])}for(let Z of W){if(!u(U,Z))continue;if(i6(w,U))continue;yield*n8(`${z}/${Z}`,w[Z],U[Z])}for(let Z of W){if(u(U,Z))continue;yield ZU(`${z}/${Z}`)}}function*pq(z,w,U){if(!m(U))return yield v8(z,U);for(let W=0;W<Math.min(w.length,U.length);W++)yield*n8(`${z}/${W}`,w[W],U[W]);for(let W=0;W<U.length;W++){if(W<w.length)continue;yield XU(`${z}/${W}`,U[W])}for(let W=w.length-1;W>=0;W--){if(W<U.length)continue;yield ZU(`${z}/${W}`)}}function*lq(z,w,U){if(!v2(U)||w.length!==U.length||globalThis.Object.getPrototypeOf(w).constructor.name!==globalThis.Object.getPrototypeOf(U).constructor.name)return yield v8(z,U);for(let W=0;W<Math.min(w.length,U.length);W++)yield*n8(`${z}/${W}`,w[W],U[W])}function*sq(z,w,U){if(w===U)return;yield v8(z,U)}function*n8(z,w,U){if(Xz(w))return yield*oq(z,w,U);if(m(w))return yield*pq(z,w,U);if(v2(w))return yield*lq(z,w,U);if(k2(w))return yield*sq(z,w,U);throw new fz(w,"Unable to diff value")}function $U(z,w){return[...n8("",z,w)]}function rq(z){return z.length>0&&z[0].path===""&&z[0].type==="update"}function aq(z){return z.length===0}function AU(z,w){if(rq(w))return M0(w[0].value);if(aq(w))return M0(z);let U=M0(z);for(let W of w)switch(W.type){case"insert":{D1.Set(U,W.path,W.value);break}case"update":{D1.Set(U,W.path,W.value);break}case"delete":{D1.Delete(U,W.path);break}}return U}function QU(...z){let[w,U,W]=z.length===3?[z[0],z[1],z[2]]:[z[0],[],z[1]],X=l1(w,U)?_4(w,U,W):W;if(!s(w,U,X))throw new y4(w,X,k1(w,U,X).First());return X}function u8(z){return l(z)&&!m(z)}class dz extends n{constructor(z){super(z)}}function eq(z,w,U,W){if(!u8(U))D1.Set(z,w,M0(W));else{let X=Object.getOwnPropertyNames(U),Z=Object.getOwnPropertyNames(W);for(let $ of X)if(!Z.includes($))delete U[$];for(let $ of Z)if(!X.includes($))U[$]=null;for(let $ of Z)hz(z,`${w}/${$}`,U[$],W[$])}}function zL(z,w,U,W){if(!m(U))D1.Set(z,w,M0(W));else{for(let X=0;X<W.length;X++)hz(z,`${w}/${X}`,U[X],W[X]);U.splice(W.length)}}function wL(z,w,U,W){if(v2(U)&&U.length===W.length)for(let X=0;X<U.length;X++)U[X]=W[X];else D1.Set(z,w,M0(W))}function UL(z,w,U,W){if(U===W)return;D1.Set(z,w,W)}function hz(z,w,U,W){if(m(W))return zL(z,w,U,W);if(v2(W))return wL(z,w,U,W);if(u8(W))return eq(z,w,U,W);if(k2(W))return UL(z,w,U,W)}function YU(z){return v2(z)||k2(z)}function WL(z,w){return u8(z)&&m(w)||m(z)&&u8(w)}function JU(z,w){if(YU(z)||YU(w))throw new dz("Only object and array types can be mutated at the root level");if(WL(z,w))throw new dz("Cannot assign due type mismatch of assignable values");hz(z,"",z,w)}class iz extends n{constructor(z){super(z)}}var cz;(function(z){let w=new Map([["Assert",(Z,$,A)=>{return d8(Z,$,A),A}],["Cast",(Z,$,A)=>v4(Z,$,A)],["Clean",(Z,$,A)=>h8(Z,$,A)],["Clone",(Z,$,A)=>M0(A)],["Convert",(Z,$,A)=>i8(Z,$,A)],["Decode",(Z,$,A)=>l1(Z,$)?H4(Z,$,A):A],["Default",(Z,$,A)=>y8(Z,$,A)],["Encode",(Z,$,A)=>l1(Z,$)?_4(Z,$,A):A]]);function U(Z){w.delete(Z)}z.Delete=U;function W(Z,$){w.set(Z,$)}z.Set=W;function X(Z){return w.get(Z)}z.Get=X})(cz||(cz={}));var BU=["Clone","Clean","Default","Convert","Assert","Decode"];function XL(z,w,U,W){return z.reduce((X,Z)=>{let $=cz.Get(Z);if(k0($))throw new iz(`Unable to find Parse operation '${Z}'`);return $(w,U,X)},W)}function MU(...z){let[w,U,W,X]=z.length===4?[z[0],z[1],z[2],z[3]]:z.length===3?m(z[0])?[z[0],z[1],[],z[2]]:[BU,z[0],z[1],z[2]]:z.length===2?[BU,z[0],[],z[1]]:(()=>{throw new iz("Invalid Arguments")})();return XL(w,U,W,X)}var o={};j6(o,{ValueErrorIterator:()=>h6,Patch:()=>AU,Parse:()=>MU,Mutate:()=>JU,Hash:()=>G6,Errors:()=>k1,Equal:()=>i6,Encode:()=>QU,Edit:()=>WU,Diff:()=>$U,Default:()=>y8,Decode:()=>zU,Create:()=>r2,Convert:()=>i8,Clone:()=>M0,Clean:()=>h8,Check:()=>s,Cast:()=>v4,Assert:()=>d8});var w5=OX(NU(),1);var az={date:cU,time:pz(!0),"date-time":HU(!0),"iso-time":pz(!1),"iso-date-time":HU(!1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:CL,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:xL,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:bL,int32:{type:"number",validate:FL},int64:{type:"number",validate:EL},float:{type:"number",validate:SU},double:{type:"number",validate:SU},password:!0,binary:!0};function HL(z){return z%4===0&&(z%100!==0||z%400===0)}var _L=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,SL=[0,31,28,31,30,31,30,31,31,30,31,30,31];function cU(z){let w=_L.exec(z);if(!w)return!1;let U=+w[1],W=+w[2],X=+w[3];return W>=1&&W<=12&&X>=1&&X<=(W===2&&HL(U)?29:SL[W])}var DL=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function pz(z){return function w(U){let W=DL.exec(U);if(!W)return!1;let X=+W[1],Z=+W[2],$=+W[3],A=W[4],Q=W[5]==="-"?-1:1,Y=+(W[6]||0),J=+(W[7]||0);if(Y>23||J>59||z&&!A)return!1;if(X<=23&&Z<=59&&$<60)return!0;let G=Z-J*Q,S=X-Y*Q-(G<0?1:0);return(S===23||S===-1)&&(G===59||G===-1)&&$<61}}var PL=/t|\s/i;function HU(z){let w=pz(z);return function U(W){let X=W.split(PL);return X.length===2&&cU(X[0])&&w(X[1])}}var OL=/\/|:/,RL=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function CL(z){return OL.test(z)&&RL.test(z)}var _U=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function bL(z){return _U.lastIndex=0,_U.test(z)}var KL=-2147483648,jL=2147483647;function FL(z){return Number.isInteger(z)&&z<=jL&&z>=KL}function EL(z){return Number.isInteger(z)}function SU(){return!0}var IL=/[^\\]\\Z/;function xL(z){if(IL.test(z))return!1;try{return new RegExp(z),!0}catch(w){return!1}}var p8="toJSON"in new Headers,DU=(z,w)=>{let U=new URL(z);return U.pathname=w,U.toString()},VL=(z)=>typeof z==="function"&&/^\s*class\s+/.test(z.toString())||z.toString&&z.toString().startsWith("[object ")&&z.toString()!=="[object Object]"||z1(Object.getPrototypeOf(z)),yz=(z)=>z&&typeof z==="object"&&!Array.isArray(z),j2=(z,w,{skipKeys:U,override:W=!0}={})=>{if(!yz(z)||!yz(w))return z;for(let[X,Z]of Object.entries(w)){if(U?.includes(X))continue;if(!yz(Z)||!(X in z)||VL(Z)){if(W||!(X in z))z[X]=Z;continue}z[X]=j2(z[X],Z,{skipKeys:U,override:W})}return z},kL=(z,w)=>{let U=j2(Object.assign({},z),w,{skipKeys:["properties"]});if("properties"in U)delete U.properties;return U},y0=(z=[],w=[])=>{if(!z)return;if(!w)return z;let U=[],W=[];if(!Array.isArray(z))z=[z];if(!Array.isArray(w))w=[w];for(let X of z)if(U.push(X),X.checksum)W.push(X.checksum);for(let X of w)if(!W.includes(X.checksum))U.push(X);return U},TL=["start","request","parse","transform","resolve","beforeHandle","afterHandle","mapResponse","afterResponse","trace","error","stop","body","headers","params","query","response","type","detail"],gL=TL.reduce((z,w)=>(z[w]=!0,z),{}),iU=(z,w)=>{let U=(W)=>typeof W==="object"&&Object.keys(W).every(ez);if(U(z)&&U(w))return Object.assign(z,w);else if(z&&!U(z)&&U(w))return Object.assign({200:z},w);return w??z},t4=(z,w)=>{return{body:w?.body??z?.body,headers:w?.headers??z?.headers,params:w?.params??z?.params,query:w?.query??z?.query,cookie:w?.cookie??z?.cookie,response:iU(z?.response,w?.response)}},a1=(z,w)=>{let{resolve:U,...W}=z??{},{resolve:X,...Z}=w??{};return{...W,...Z,body:w?.body??z?.body,headers:w?.headers??z?.headers,params:w?.params??z?.params,query:w?.query??z?.query,cookie:w?.cookie??z?.cookie,response:iU(z?.response,w?.response),type:z?.type||w?.type,detail:j2(w?.detail??{},z?.detail??{}),parse:y0(z?.parse,w?.parse),transform:y0(z?.transform,w?.transform),beforeHandle:y0(y0(W2(U,"resolve"),z?.beforeHandle),y0(W2(X,"resolve"),w?.beforeHandle)),afterHandle:y0(z?.afterHandle,w?.afterHandle),mapResponse:y0(z?.mapResponse,w?.mapResponse),afterResponse:y0(z?.afterResponse,w?.afterResponse),trace:y0(z?.trace,w?.trace),error:y0(z?.error,w?.error)}},lz=(z,w,U=!0)=>{if(!Array.isArray(w))return w.original=z,A2(z,w,U);for(let W of w)W.original=z,z=A2(z,W,U);return z},A2=(z,w,U=!0)=>{if(!z)return z;if(w.untilObjectFound&&!U&&z.type==="object")return z;let W=w.from[H];if(z.oneOf){for(let $=0;$<z.oneOf.length;$++)z.oneOf[$]=A2(z.oneOf[$],w,U);return z}if(z.anyOf){for(let $=0;$<z.anyOf.length;$++)z.anyOf[$]=A2(z.anyOf[$],w,U);return z}if(z.allOf){for(let $=0;$<z.allOf.length;$++)z.allOf[$]=A2(z.allOf[$],w,U);return z}if(z.not)return A2(z.not,w,U);let X=U&&!!w.excludeRoot;if(z[H]===W){let{anyOf:$,oneOf:A,allOf:Q,not:Y,properties:J,items:G,...S}=z,N=w.to(S);if(!N)return z;let O,M=(C)=>{if(J&&C.type==="object"){let L0={};for(let[a,$0]of Object.entries(J))L0[a]=A2($0,w,!1);return{...S,...C,properties:L0}}if(G&&C.type==="array")return{...S,...C,items:A2(G,w,!1)};let g={...S,...C};if(delete g.required,J&&C.type==="string"&&C.format==="ObjectString"&&C.default==="{}")O=E.ObjectString(J,S),g.default=JSON.stringify(o.Create(E.Object(J))),g.properties=J;if(G&&C.type==="string"&&C.format==="ArrayString"&&C.default==="[]")O=E.ArrayString(G,S),g.default=JSON.stringify(o.Create(E.Array(G))),g.items=G;return g};if(X){if(J){let C={};for(let[g,L0]of Object.entries(J))C[g]=A2(L0,w,!1);return{...S,properties:C}}else if(G?.map)return{...S,items:G.map((C)=>A2(C,w,!1))};return S}if(N.anyOf)for(let C=0;C<N.anyOf.length;C++)N.anyOf[C]=M(N.anyOf[C]);else if(N.oneOf)for(let C=0;C<N.oneOf.length;C++)N.oneOf[C]=M(N.oneOf[C]);else if(N.allOf)for(let C=0;C<N.allOf.length;C++)N.allOf[C]=M(N.allOf[C]);else if(N.not)N.not=M(N.not);if(O)N[F0]=O[F0];if(N.anyOf||N.oneOf||N.allOf||N.not)return N;if(J){let C={};for(let[g,L0]of Object.entries(J))C[g]=A2(L0,w,!1);return{...S,...N,properties:C}}else if(G?.map)return{...S,...N,items:G.map((C)=>A2(C,w,!1))};return{...S,...N}}let Z=z?.properties;if(Z&&U&&w.rootOnly!==!0)for(let[$,A]of Object.entries(Z))switch(A[H]){case W:let{anyOf:Q,oneOf:Y,allOf:J,not:G,type:S,...N}=A,O=w.to(N);if(!O)return z;if(O.anyOf)for(let M=0;M<O.anyOf.length;M++)O.anyOf[M]={...N,...O.anyOf[M]};else if(O.oneOf)for(let M=0;M<O.oneOf.length;M++)O.oneOf[M]={...N,...O.oneOf[M]};else if(O.allOf)for(let M=0;M<O.allOf.length;M++)O.allOf[M]={...N,...O.allOf[M]};else if(O.not)O.not={...N,...O.not};Z[$]={...N,...A2(N,w,!1)};break;case"Object":case"Union":Z[$]=A2(A,w,!1);break;default:if(Array.isArray(A.items))for(let M=0;M<A.items.length;M++)A.items[M]=A2(A.items[M],w,!1);else if(A.anyOf||A.oneOf||A.allOf||A.not)Z[$]=A2(A,w,!1);else if(A.type==="array")A.items=A2(A.items,w,!1);break}return z},s4=(z)=>(w)=>{if(typeof w==="object")try{return o.Clean(z,structuredClone(w))}catch{try{return o.Clean(z,w)}catch{return w}}return w},F2=(z,{models:w={},dynamic:U=!1,modules:W,normalize:X=!1,additionalProperties:Z=!1,coerce:$=!1,additionalCoerce:A=[]}={modules:E.Module({})})=>{if(!z)return;let Q;if(typeof z!=="string")Q=z;else{let J=z.endsWith("[]"),G=J?z.substring(0,z.length-2):z;if(Q=W.Import(G)??w[G],J)Q=E.Array(Q)}if(!Q)return;if($||A)if($)Q=lz(Q,[{from:E.Ref(""),to:(J)=>W.Import(J.$ref)},{from:E.Number(),to:(J)=>E.Numeric(J),untilObjectFound:!0},{from:E.Boolean(),to:(J)=>E.BooleanString(J),untilObjectFound:!0},...Array.isArray(A)?A:[A]]);else Q=lz(Q,[{from:E.Ref(""),to:(J)=>W.Import(J.$ref)},...Array.isArray(A)?A:[A]]);if(Q.type==="object"&&"additionalProperties"in Q===!1)Q.additionalProperties=Z;if(U){let J={schema:Q,references:"",checkFunc:()=>{},code:"",Check:(G)=>o.Check(Q,G),Errors:(G)=>o.Errors(Q,G),Code:()=>"",Clean:s4(Q),Decode:(G)=>o.Decode(Q,G),Encode:(G)=>o.Encode(Q,G)};if(X&&Q.additionalProperties===!1)J.Clean=s4(Q);if(Q.config){if(J.config=Q.config,J?.schema?.config)delete J.schema.config}return J.parse=(G)=>{try{return J.Decode(G)}catch(S){throw[...J.Errors(G)].map(C1)}},J.safeParse=(G)=>{try{return{success:!0,data:J.Decode(G),error:null}}catch(S){let N=[...Y.Errors(G)].map(C1);return{success:!1,data:null,error:N[0]?.summary,errors:N}}},J}let Y=N6.Compile(Q,Object.values(w));if(Y.Clean=s4(Q),Q.config){if(Y.config=Q.config,Y?.schema?.config)delete Y.schema.config}return Y.parse=(J)=>{try{return Y.Decode(J)}catch(G){throw[...Y.Errors(J)].map(C1)}},Y.safeParse=(J)=>{try{return{success:!0,data:Y.Decode(J),error:null}}catch(G){let S=[...Y.Errors(J)].map(C1);return{success:!1,data:null,error:S[0]?.summary,errors:S}}},Y},PU=(z,{models:w={},modules:U,dynamic:W=!1,normalize:X=!1,additionalProperties:Z=!1})=>{if(!z)return;let $;if(typeof z!=="string")$=z;else{let J=z.endsWith("[]"),G=J?z.substring(0,z.length-2):z;if($=U.Import(G)??w[G],J)$=E.Array($)}if(!$)return;let A=(J,G)=>{if(W)return{schema:J,references:"",checkFunc:()=>{},code:"",Check:(N)=>o.Check(J,N),Errors:(N)=>o.Errors(J,N),Code:()=>"",Clean:s4(J),Decode:(N)=>o.Decode(J,N),Encode:(N)=>o.Encode(J,N)};let S=N6.Compile(J,G);if(X&&J.additionalProperties===!1)S.Clean=s4(J);return S},Q=Object.values(w);if(H in $){if("additionalProperties"in $===!1)$.additionalProperties=Z;return{200:A($,Q)}}let Y={};return Object.keys($).forEach((J)=>{let G=$[+J];if(typeof G==="string"){if(G in w){let S=w[G];S.type==="object"&&"additionalProperties"in S,Y[+J]=H in S?A(S,Q):S}return}if(G.type==="object"&&"additionalProperties"in G===!1)G.additionalProperties=Z;Y[+J]=H in G?A(G,Q):G}),Y},fL=typeof Bun!=="undefined",dL=fL&&typeof Bun.hash==="function",o4=(z)=>{if(dL)return Bun.hash(z);let w=9;for(let U=0;U<z.length;)w=Math.imul(w^z.charCodeAt(U++),387420489);return w=w^w>>>9},vz,y6=()=>{if(!vz)vz=[{from:E.Object({}),to:()=>E.ObjectString({}),excludeRoot:!0},{from:E.Array(E.Any()),to:()=>E.ArrayString(E.Any())}];return vz},nz,OU=()=>{if(!nz)nz=[{from:E.Number(),to:(z)=>E.Numeric(z),rootOnly:!0},{from:E.Boolean(),to:(z)=>E.BooleanString(z),rootOnly:!0}];return nz},yU=({validator:z,modules:w,defaultConfig:U={},config:W,dynamic:X,models:Z})=>{let $=F2(z,{modules:w,dynamic:X,models:Z,additionalProperties:!0,coerce:!0,additionalCoerce:y6()});if(z1(U))if($)$.config=kL($.config,W);else $=F2(E.Cookie({}),{modules:w,dynamic:X,models:Z,additionalProperties:!0}),$.config=U;return $},P1=(z,w)=>{if(!w)return;if(!Array.isArray(w)){let W=w;if(z&&!W.checksum)W.checksum=z;if(W.scope==="scoped")W.scope="local";return W}let U=[...w];for(let W of U){if(z&&!W.checksum)W.checksum=z;if(W.scope==="scoped")W.scope="local"}return U},RU=(z,w,U)=>{return{start:y0(z.start,P1(U,w?.start)),request:y0(z.request,P1(U,w?.request)),parse:y0(z.parse,P1(U,w?.parse)),transform:y0(z.transform,P1(U,w?.transform)),beforeHandle:y0(y0(W2(z.resolve,"resolve"),z.beforeHandle),P1(U,y0(W2(w?.resolve,"resolve"),w?.beforeHandle))),afterHandle:y0(z.afterHandle,P1(U,w?.afterHandle)),mapResponse:y0(z.mapResponse,P1(U,w?.mapResponse)),afterResponse:y0(z.afterResponse,P1(U,w?.afterResponse)),trace:y0(z.trace,P1(U,w?.trace)),error:y0(z.error,P1(U,w?.error)),stop:y0(z.stop,P1(U,w?.stop))}},hL=(z,w,{skipIfHasType:U=!1}={})=>{if(!z)return z;if(!Array.isArray(z)){if(U)z.scope??=w;else z.scope=w;return z}for(let W of z)if(U)W.scope??=w;else W.scope=w;return z},H6=(z)=>{if(!z)return z;if(!Array.isArray(z))switch(z.scope){case"global":case"scoped":return{...z};default:return{fn:z}}let w=[];for(let U of z)switch(U.scope){case"global":case"scoped":w.push({...U});break}return w},CU=(z)=>{return{...z,type:z?.type,detail:z?.detail,parse:H6(z?.parse),transform:H6(z?.transform),beforeHandle:H6(z?.beforeHandle),afterHandle:H6(z?.afterHandle),mapResponse:H6(z?.mapResponse),afterResponse:H6(z?.afterResponse),error:H6(z?.error),trace:H6(z?.trace)}},e8={Continue:100,"Switching Protocols":101,Processing:102,"Early Hints":103,OK:200,Created:201,Accepted:202,"Non-Authoritative Information":203,"No Content":204,"Reset Content":205,"Partial Content":206,"Multi-Status":207,"Already Reported":208,"Multiple Choices":300,"Moved Permanently":301,Found:302,"See Other":303,"Not Modified":304,"Temporary Redirect":307,"Permanent Redirect":308,"Bad Request":400,Unauthorized:401,"Payment Required":402,Forbidden:403,"Not Found":404,"Method Not Allowed":405,"Not Acceptable":406,"Proxy Authentication Required":407,"Request Timeout":408,Conflict:409,Gone:410,"Length Required":411,"Precondition Failed":412,"Payload Too Large":413,"URI Too Long":414,"Unsupported Media Type":415,"Range Not Satisfiable":416,"Expectation Failed":417,"I'm a teapot":418,"Misdirected Request":421,"Unprocessable Content":422,Locked:423,"Failed Dependency":424,"Too Early":425,"Upgrade Required":426,"Precondition Required":428,"Too Many Requests":429,"Request Header Fields Too Large":431,"Unavailable For Legal Reasons":451,"Internal Server Error":500,"Not Implemented":501,"Bad Gateway":502,"Service Unavailable":503,"Gateway Timeout":504,"HTTP Version Not Supported":505,"Variant Also Negotiates":506,"Insufficient Storage":507,"Loop Detected":508,"Not Extended":510,"Network Authentication Required":511},bU=Object.fromEntries(Object.entries(e8).map(([z,w])=>[w,z]));function cL(z){let w=z;while(w.endsWith("="))w=w.slice(0,-1);return w}var KU=new TextEncoder,l8=async(z,w)=>{if(typeof z!=="string")throw new TypeError("Cookie value must be provided as a string.");if(w===null)throw new TypeError("Secret key must be provided.");let U=await crypto.subtle.importKey("raw",KU.encode(w),{name:"HMAC",hash:"SHA-256"},!1,["sign"]),W=await crypto.subtle.sign("HMAC",U,KU.encode(z));return z+"."+cL(Buffer.from(W).toString("base64"))},jU=async(z,w)=>{if(typeof z!=="string")throw new TypeError("Signed cookie string must be provided.");if(w===null)throw new TypeError("Secret key must be provided.");let U=z.slice(0,z.lastIndexOf("."));return await l8(U,w)===z?U:!1},iL=(z,w,U)=>{if(!z||typeof z!=="object"||!w)return;for(let[W,X]of Object.entries(w)){if(W in gL||!(W in z))continue;let Z=z[W];if(typeof Z==="function"){let $=Z(X);if(typeof $==="object")for(let[A,Q]of Object.entries($))U(A)({fn:Q})}delete w[W]}},yL=({globalHook:z,localHook:w})=>(U)=>(W,X)=>{if(typeof W==="function")W={fn:W};if(U==="resolve")W={...W,subType:"resolve"};if("fn"in W||Array.isArray(W)){if(!w[U])w[U]=[];if(typeof w[U]==="function")w[U]=[w[U]];if(Array.isArray(W))w[U]=w[U].concat(W);else w[U].push(W);return}let{insert:Z="after",stack:$="local"}=W;if(typeof X==="function")X={fn:X};if($==="global")if(!Array.isArray(X))if(Z==="before")z[U].unshift(X);else z[U].push(X);else if(Z==="before")z[U]=X.concat(z[U]);else z[U]=z[U].concat(X);else{if(!w[U])w[U]=[];if(typeof w[U]==="function")w[U]=[w[U]];if(!Array.isArray(X))if(Z==="before")w[U].unshift(X);else w[U].push(X);else if(Z==="before")w[U]=X.concat(w[U]);else w[U]=w[U].concat(X)}},vL=(z)=>{if(typeof z==="number")return z;if(z.length<16){if(z.trim().length===0)return null;let w=Number(z);if(Number.isNaN(w))return null;return w}if(z.length===16){if(z.trim().length===0)return null;let w=Number(z);if(Number.isNaN(w)||w.toString()!==z)return null;return w}return null},ez=(z)=>vL(z)!==null;class vU{onError;root=null;promises=[];constructor(z=console.error){this.onError=z}get size(){return this.promises.length}add(z){return this.promises.push(z),this.root||=this.drain(),z}async drain(){while(this.promises.length>0){try{await this.promises[0]}catch(z){this.onError(z)}this.promises.shift()}this.root=null}then(z,w){return(this.root??Promise.resolve()).then(z,w)}}var W2=(z,w)=>{if(!z)return z;if(!Array.isArray(z)){if(typeof z==="function"||typeof z==="string")return w?{fn:z,subType:w}:{fn:z};else if("fn"in z)return z}let U=[];for(let W of z)if(typeof W==="function"||typeof W==="string")U.push(w?{fn:W,subType:w}:{fn:W});else if("fn"in W)U.push(W);return U},nL=(z)=>{return{...z,start:W2(z?.start),request:W2(z?.request),parse:W2(z?.parse),transform:W2(z?.transform),beforeHandle:W2(z?.beforeHandle),afterHandle:W2(z?.afterHandle),mapResponse:W2(z?.mapResponse),afterResponse:W2(z?.afterResponse),trace:W2(z?.trace),error:W2(z?.error),stop:W2(z?.stop)}},FU=(z)=>{let w={};if(z.start?.map)w.start=z.start.map((U)=>U.fn);if(z.request?.map)w.request=z.request.map((U)=>U.fn);if(z.parse?.map)w.parse=z.parse.map((U)=>U.fn);if(z.transform?.map)w.transform=z.transform.map((U)=>U.fn);if(z.beforeHandle?.map)w.beforeHandle=z.beforeHandle.map((U)=>U.fn);if(z.afterHandle?.map)w.afterHandle=z.afterHandle.map((U)=>U.fn);if(z.mapResponse?.map)w.mapResponse=z.mapResponse.map((U)=>U.fn);if(z.afterResponse?.map)w.afterResponse=z.afterResponse.map((U)=>U.fn);if(z.trace?.map)w.trace=z.trace.map((U)=>U.fn);if(z.error?.map)w.error=z.error.map((U)=>U.fn);if(z.stop?.map)w.stop=z.stop.map((U)=>U.fn);return w},uz=(z)=>({body:z.body,cookie:z.cookie,headers:z.headers,query:z.query,set:z.set,server:z.server,request:z.request,route:z.route}),nU=(z,w=302)=>Response.redirect(z,w),AI=Symbol("ElysiaFormData"),z5=Symbol("ElysiaRequestId");var uU=()=>{let z=crypto.randomUUID();return z.slice(0,8)+z.slice(24,32)},EU=(z)=>{let w=[];for(let U=0;U<z.length;U++){let W=z[U];if(W.checksum){if(w.includes(W.checksum))z.splice(U,1),U--;w.push(W.checksum)}}return z},L2=(z,w="scoped")=>{if(!z)return;if(w==="scoped"){for(let U of z)if("scope"in U&&U.scope==="local")U.scope="scoped";return}for(let U of z)if("scope"in U)U.scope="global"},S4=(z)=>{if(z.charCodeAt(z.length-1)===47)return z.slice(0,z.length-1);return z+"/"},z1=(z)=>{if(!z)return!1;for(let w in z)return!0;return!1},O1=(z)=>{if(Array.isArray(z))return z.length===0;return!z},mz=(z)=>{let w={...z};if(O1(z.afterHandle))delete w.afterHandle;if(O1(z.afterResponse))delete w.afterResponse;if(O1(z.beforeHandle))delete w.beforeHandle;if(O1(z.error))delete w.error;if(O1(z.mapResponse))delete w.mapResponse;if(O1(z.parse))delete w.parse;if(O1(z.request))delete w.request;if(O1(z.start))delete w.start;if(O1(z.stop))delete w.stop;if(O1(z.trace))delete w.trace;if(O1(z.transform))delete w.transform;if(!w.type)delete w.type;if(w.detail&&!Object.keys(w.detail).length)delete w.detail;if(!w.body)delete w.body;if(!w.cookie)delete w.cookie;if(!w.headers)delete w.headers;if(!w.query)delete w.query;if(!w.params)delete w.params;if(!w.response)delete w.response;return w},p4=(z,{dynamic:w=!1}={})=>{let U=encodeURIComponent(z).replace(/%2F/g,"/");if(w)U=U.replace(/%3A/g,":").replace(/%3F/g,"?");return U},IU=typeof Bun!=="undefined"?Bun.env:typeof process!=="undefined"?process?.env:void 0,s8=Symbol("ElysiaErrorCode"),r8=(IU?.NODE_ENV??IU?.ENV)==="production";class b1{code;response;constructor(z,w){let U=w??(z in bU?bU[z]:z);this.code=e8[z]??z,this.response=U}}var mU=(z,w)=>new b1(z,w);class tU extends Error{code="INTERNAL_SERVER_ERROR";status=500;constructor(z){super(z??"INTERNAL_SERVER_ERROR")}}class zw extends Error{code="NOT_FOUND";status=404;constructor(z){super(z??"NOT_FOUND")}}class oU extends Error{code="PARSE";status=400;constructor(){super("Bad Request")}}class sz extends Error{key;code="INVALID_COOKIE_SIGNATURE";status=400;constructor(z,w){super(w??`"${z}" has invalid cookie signature`);this.key=z}}var C1=(z)=>{if(!z)return{summary:void 0};let{message:w,path:U,value:W,type:X}=z,Z=U.slice(1).replaceAll("/","."),$=U==="";switch(X){case 42:return{...z,summary:$?"Value should not be provided":`Property '${Z}' should not be provided`};case 45:return{...z,summary:$?"Value is missing":`Property '${Z}' is missing`};case 50:let A=w.indexOf("'"),Q=w.slice(A+1,w.indexOf("'",A+1));return{...z,summary:$?"Value should be an email":`Property '${Z}' should be ${Q}`};case 54:return{...z,summary:`${w.slice(0,9)} property '${Z}' to be ${w.slice(8)} but found: ${W}`};case 62:let Y=z.schema.anyOf.map((J)=>`'${J?.format??J.type}'`).join(", ");return{...z,summary:$?`Value should be one of ${Y}`:`Property '${Z}' should be one of: ${Y}`};default:return{summary:w,...z}}};class r extends Error{type;validator;value;code="VALIDATION";status=422;constructor(z,w,U){if(U&&typeof U==="object"&&U instanceof b1)U=U.response;let W=r8?void 0:("Errors"in w)?w.Errors(U).First():o.Errors(w,U).First(),X=W?.schema?.message||W?.schema?.error!==void 0?typeof W.schema.error==="function"?W.schema.error({type:z,validator:w,value:U,get errors(){return[...w.Errors(U)].map(C1)}}):W.schema.error:void 0,Z=W?.path||"root",$="";if(X!==void 0)$=typeof X==="object"?JSON.stringify(X):X+"";else if(r8)$=JSON.stringify({type:"validation",on:z,summary:C1(W).summary,message:W?.message,found:U});else{let A=w?.schema??w,Q="Errors"in w?[...w.Errors(U)].map(C1):[...o.Errors(w,U)].map(C1),Y;try{Y=o.Create(A)}catch(J){Y={type:"Could not create expected value",message:J?.message,error:J}}$=JSON.stringify({type:"validation",on:z,summary:C1(W).summary,property:Z,message:W?.message,expected:Y,found:U,errors:Q},null,2)}super($);this.type=z,this.validator=w,this.value=U,Object.setPrototypeOf(this,r.prototype)}get all(){return"Errors"in this.validator?[...this.validator.Errors(this.value)].map(C1):[...o.Errors(this.validator,this.value)].map(C1)}static simplifyModel(z){let w="schema"in z?z.schema:z;try{return o.Create(w)}catch{return w}}get model(){return r.simplifyModel(this.validator)}toResponse(z){return new Response(this.message,{status:400,headers:{...z,"content-type":"application/json"}})}}var pU=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,lU=/(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{2}\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT(?:\+|-)\d{4}\s\([^)]+\)/,sU=/^(?:(?:(?:(?:0?[1-9]|[12][0-9]|3[01])[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:19|20)\d{2})|(?:(?:19|20)\d{2}[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:0?[1-9]|[12][0-9]|3[01]))))(?:\s(?:1[012]|0?[1-9]):[0-5][0-9](?::[0-5][0-9])?(?:\s[AP]M)?)?$/,uL=az.date,mL=az["date-time"];if(!D0.Has("date"))D0.Set("date",(z)=>{let w=z.replace(/"/g,"");if(pU.test(w)||lU.test(w)||sU.test(w)||uL(w)){let U=new Date(w);if(!Number.isNaN(U.getTime()))return!0}return!1});if(!D0.Has("date-time"))D0.Set("date-time",(z)=>{let w=z.replace(/"/g,"");if(pU.test(w)||lU.test(w)||sU.test(w)||mL(w)){let U=new Date(w);if(!Number.isNaN(U.getTime()))return!0}return!1});Object.entries(az).forEach((z)=>{let[w,U]=z;if(!D0.Has(w)){if(U instanceof RegExp)D0.Set(w,(W)=>U.test(W));else if(typeof U==="function")D0.Set(w,U)}});var E=Object.assign({},L6),xU=(z)=>{if(typeof z==="string")switch(z.slice(-1)){case"k":return+z.slice(0,z.length-1)*1024;case"m":return+z.slice(0,z.length-1)*1048576;default:return+z}return z},VU=(z,w)=>{if(z.startsWith(w))return!0;return w.charCodeAt(w.length-1)===42&&w.charCodeAt(w.length-2)===47&&z.startsWith(w.slice(0,-1))},rz=(z,w)=>{if(!(w instanceof Blob))return!1;if(z.minSize&&w.size<xU(z.minSize))return!1;if(z.maxSize&&w.size>xU(z.maxSize))return!1;if(z.extension){if(typeof z.extension==="string")return VU(w.type,z.extension);for(let U=0;U<z.extension.length;U++)if(VU(w.type,z.extension[U]))return!0;return!1}return!0},tL=rU("File",rz),oL=rU("Files",(z,w)=>{if(!Array.isArray(w))return rz(z,w);if(z.minItems&&w.length<z.minItems)return!1;if(z.maxItems&&w.length>z.maxItems)return!1;for(let U=0;U<w.length;U++)if(!rz(z,w[U]))return!1;return!0});if(!D0.Has("numeric"))D0.Set("numeric",(z)=>!!z&&!isNaN(+z));if(!D0.Has("integer"))D0.Set("integer",(z)=>!!z&&Number.isInteger(+z));if(!D0.Has("boolean"))D0.Set("boolean",(z)=>z==="true"||z==="false");if(!D0.Has("ObjectString"))D0.Set("ObjectString",(z)=>{let w=z.charCodeAt(0);if(w===9||w===10||w===32)w=z.trimStart().charCodeAt(0);if(w!==123&&w!==91)return!1;try{return JSON.parse(z),!0}catch{return!1}});if(!D0.Has("ArrayString"))D0.Set("ArrayString",(z)=>{let w=z.charCodeAt(0);if(w===9||w===10||w===32)w=z.trimStart().charCodeAt(0);if(w!==123&&w!==91)return!1;try{return JSON.parse(z),!0}catch{return!1}});if(!p0.Has("UnionEnum"))p0.Set("UnionEnum",(z,w)=>{return(typeof w==="number"||typeof w==="string"||w===null)&&z.enum.includes(w)});var w1={Numeric:(z)=>{let w=L6.Number(z);return E.Transform(E.Union([E.String({format:"numeric",default:0}),E.Number(z)],z)).Decode((U)=>{let W=+U;if(isNaN(W))return U;if(z&&!o.Check(w,W))throw new r("property",w,W);return W}).Encode((U)=>U)},Integer:(z)=>{let w=L6.Integer(z);return E.Transform(E.Union([E.String({format:"integer",default:0}),L6.Integer(z)],z)).Decode((U)=>{let W=+U;if(!o.Check(w,W))throw new r("property",w,W);return W}).Encode((U)=>U)},Date:(z)=>{let w=L6.Date(z),U=z?.default?new Date(z.default):void 0;return E.Transform(E.Union([L6.Date(z),E.String({format:"date",default:U?.toISOString()}),E.String({format:"date-time",default:U?.toISOString()}),E.Number({default:U?.getTime()})],z)).Decode((W)=>{if(typeof W==="number"){let Z=new Date(W);if(!o.Check(w,Z))throw new r("property",w,Z);return Z}if(W instanceof Date)return W;let X=new Date(W);if(!X||isNaN(X.getTime()))throw new r("property",w,X);if(!o.Check(w,X))throw new r("property",w,X);return X}).Encode((W)=>W.toISOString())},BooleanString:(z)=>{let w=L6.Boolean(z);return E.Transform(E.Union([E.Boolean(z),E.String({format:"boolean",default:!1})],z)).Decode((U)=>{if(typeof U==="string")return U==="true";if(U!==void 0&&!o.Check(w,U))throw new r("property",w,U);return U}).Encode((U)=>U)},ObjectString:(z,w)=>{let U=E.Object(z,w),W=JSON.stringify(o.Create(U)),X;try{X=N6.Compile(U)}catch{}return E.Transform(E.Union([E.String({format:"ObjectString",default:W}),U])).Decode((Z)=>{if(typeof Z==="string"){if(Z.charCodeAt(0)!==123)throw new r("property",U,Z);try{Z=JSON.parse(Z)}catch{throw new r("property",U,Z)}if(X){if(!X.Check(Z))throw new r("property",U,Z);return X.Decode(Z)}if(!o.Check(U,Z))throw new r("property",U,Z);return o.Decode(U,Z)}return Z}).Encode((Z)=>{if(typeof Z==="string")try{Z=JSON.parse(Z)}catch{throw new r("property",U,Z)}if(!o.Check(U,Z))throw new r("property",U,Z);return JSON.stringify(Z)})},ArrayString:(z=E.String(),w)=>{let U=E.Array(z,w),W;try{W=N6.Compile(U)}catch{}let X=(Z,$=!1)=>{if(Z.charCodeAt(0)===91){try{Z=JSON.parse(Z)}catch{throw new r("property",U,Z)}if(W){if(!W.Check(Z))throw new r("property",U,Z);return W.Decode(Z)}if(!o.Check(U,Z))throw new r("property",U,Z);return o.Decode(U,Z)}if(Z.indexOf(",")!==-1){let A=Z.split(",").map((Q)=>Q.trim());if(W){if(!W.Check(A))throw new r("property",U,Z);return W.Decode(A)}if(!o.Check(U,A))throw new r("property",U,A);return o.Decode(U,A)}if($)return Z;throw new r("property",U,Z)};return E.Transform(E.Union([E.String({format:"ArrayString",default:w?.default}),U])).Decode((Z)=>{if(Array.isArray(Z)){let $=[];for(let A=0;A<Z.length;A++){let Q=Z[A];if(typeof Q==="string"){let Y=X(Q,!0);if(Array.isArray(Y))$=$.concat(Y);else $.push(Y);continue}$.push(Q)}return $}if(typeof Z==="string")return X(Z);return Z}).Encode((Z)=>{if(typeof Z==="string")try{Z=JSON.parse(Z)}catch{throw new r("property",U,Z)}if(!o.Check(U,Z))throw new r("property",U,Z);return JSON.stringify(Z)})},File:tL,Files:(z={})=>E.Transform(oL(z)).Decode((w)=>{if(Array.isArray(w))return w;return[w]}).Encode((w)=>w),Nullable:(z,w)=>E.Union([z,E.Null()],w),MaybeEmpty:(z,w)=>E.Union([z,E.Null(),E.Undefined()],w),Cookie:(z,{domain:w,expires:U,httpOnly:W,maxAge:X,path:Z,priority:$,sameSite:A,secure:Q,secrets:Y,sign:J,...G}={})=>{let S=E.Object(z,G);return S.config={domain:w,expires:U,httpOnly:W,maxAge:X,path:Z,priority:$,sameSite:A,secure:Q,secrets:Y,sign:J},S},UnionEnum:(z,w={})=>{let U=z.every((W)=>typeof W==="string")?{type:"string"}:z.every((W)=>typeof W==="number")?{type:"number"}:z.every((W)=>W===null)?{type:"null"}:{};if(z.some((W)=>typeof W==="object"&&W!==null))throw new Error("This type does not support objects or arrays");return{default:z[0],...w,[H]:"UnionEnum",...U,enum:z}}};E.BooleanString=w1.BooleanString;E.ObjectString=w1.ObjectString;E.ArrayString=w1.ArrayString;E.Numeric=w1.Numeric;E.Integer=w1.Integer;E.File=(z={})=>w1.File({default:"File",...z,extension:z?.type,type:"string",format:"binary"});E.Files=(z={})=>w1.Files({...z,elysiaMeta:"Files",default:"Files",extension:z?.type,type:"array",items:{...z,default:"Files",type:"string",format:"binary"}});E.Nullable=(z)=>w1.Nullable(z);E.MaybeEmpty=w1.MaybeEmpty;E.Cookie=w1.Cookie;E.Date=w1.Date;E.UnionEnum=w1.UnionEnum;function rU(z,w){if(!p0.Has(z))p0.Set(z,w);return(U={})=>k8({...U,[H]:z})}var r4=(z)=>{let w=typeof z==="object"?z.fn.toString():typeof z==="string"?z.toString():z,U=w.indexOf(")");if(w.charCodeAt(U+2)===61&&w.charCodeAt(U+5)!==123)return!0;return w.includes("return")},pL=(z)=>{if(z.startsWith("async"))z=z.slice(5);z=z.trimStart();let w=-1;if(z.charCodeAt(0)===40){if(w=z.indexOf("=>",z.indexOf(")")),w!==-1){let X=w;while(X>0)if(z.charCodeAt(--X)===41)break;let Z=z.slice(w+2);if(Z.charCodeAt(0)===32)Z=Z.trimStart();return[z.slice(1,X),Z,{isArrowReturn:Z.charCodeAt(0)!==123}]}}if(/^(\w+)=>/g.test(z)){if(w=z.indexOf("=>"),w!==-1){let X=z.slice(w+2);if(X.charCodeAt(0)===32)X=X.trimStart();return[z.slice(0,w),X,{isArrowReturn:X.charCodeAt(0)!==123}]}}if(z.startsWith("function")){w=z.indexOf("(");let X=z.indexOf(")");return[z.slice(w+1,X),z.slice(X+2),{isArrowReturn:!1}]}let U=z.indexOf("(");if(U!==-1){let X=z.indexOf(`
8
- `,2),Z=z.slice(0,X),$=Z.lastIndexOf(")")+1,A=z.slice(X+1);return[Z.slice(U,$),"{"+A,{isArrowReturn:!1}]}let W=z.split(`
9
- `,2);return[W[0],W[1],{isArrowReturn:!1}]},lL=(z)=>{let w=z.indexOf("{");if(w===-1)return[-1,0];let U=w+1,W=1;for(;U<z.length;U++){let X=z.charCodeAt(U);if(X===123)W++;else if(X===125)W--;if(W===0)break}if(W!==0)return[0,z.length];return[w,U+1]},sL=(z)=>{let w=z.lastIndexOf("}");if(w===-1)return[-1,0];let U=w-1,W=1;for(;U>=0;U--){let X=z.charCodeAt(U);if(X===125)W++;else if(X===123)W--;if(W===0)break}if(W!==0)return[-1,0];return[U,w+1]},aU=(z)=>{while(!0){let w=z.indexOf(":");if(w===-1)break;let U=z.indexOf(",",w);if(U===-1)U=z.indexOf("}",w)-1;if(U===-2)U=z.length;z=z.slice(0,w)+z.slice(U)}return z},eU=(z)=>{let w=!1;if(z.charCodeAt(0)===40)z=z.slice(1,-1);if(z.charCodeAt(0)===123)w=!0,z=z.slice(1,-1);z=z.replace(/( |\t|\n)/g,"").trim();let U=[];while(!0){let[X,Z]=lL(z);if(X===-1)break;if(U.push(z.slice(0,X-1)),z.charCodeAt(Z)===44)Z++;z=z.slice(Z)}if(z=aU(z),z)U=U.concat(z.split(","));let W=[];for(let X of U){if(X.indexOf(",")===-1){W.push(X);continue}for(let Z of X.split(","))W.push(Z.trim())}return U=W,{hasParenthesis:w,parameters:U}},rL=(z,w)=>{let{parameters:U,hasParenthesis:W}=eU(z);if(!w.query&&U.includes("query"))w.query=!0;if(!w.headers&&U.includes("headers"))w.headers=!0;if(!w.body&&U.includes("body"))w.body=!0;if(!w.cookie&&U.includes("cookie"))w.cookie=!0;if(!w.set&&U.includes("set"))w.set=!0;if(!w.server&&U.includes("server"))w.server=!0;if(!w.request&&U.includes("request"))w.request=!0;if(!w.route&&U.includes("route"))w.route=!0;if(W)return`{ ${U.join(", ")} }`;return U.join(", ")},kU=(z,w,U)=>{let W=w.indexOf(z+`
10
- `,U),X=w.indexOf(z+"\t",U),Z=w.indexOf(z+",",U),$=w.indexOf(z+";",U),A=w.indexOf(z+" ",U);return[W,X,Z,$,A].filter((Q)=>Q>0).sort((Q,Y)=>Q-Y)[0]||-1},zW=(z,w,U=0)=>{if(U>5)return[];let W=[],X=w;while(!0){let Z=kU(" = "+z,X);if(Z===-1)Z=kU("="+z,X);if(Z===-1){let Y=X.indexOf(" = "+z);if(Y===-1)Y=X.indexOf("="+z);if(Y+3+z.length!==X.length)break;Z=Y}let $=X.slice(0,Z),A=$.lastIndexOf(" "),Q=$.slice(A!==-1?A+1:-1);if(Q==="}"){let[Y,J]=sL($);W.push(aU(X.slice(Y,J))),X=X.slice(Z+3+z.length);continue}while(Q.charCodeAt(0)===44)Q=Q.slice(1);while(Q.charCodeAt(0)===9)Q=Q.slice(1);if(!Q.includes("("))W.push(Q);X=X.slice(Z+3+z.length)}for(let Z of W){if(Z.charCodeAt(0)===123)continue;let $=zW(Z,w);if($.length>0)W.push(...$)}return W},aL=(z)=>{if(!z)return;if(z.charCodeAt(0)!==123)return z;if(z=z.slice(2,-2),!z.includes(",")){if(z.includes("..."))return z.slice(z.indexOf("...")+3);return}let w=z.indexOf("...");if(w===-1)return;return z.slice(w+3).trimEnd()},eL=(z,w,U)=>{let W=(X,Z)=>z.includes(Z+"."+X)||z.includes(Z+'["'+X+'"]')||z.includes(Z+"['"+X+"']");for(let X of w){if(!X)continue;if(X.charCodeAt(0)===123){let Z=eU(X).parameters;if(!U.query&&Z.includes("query"))U.query=!0;if(!U.headers&&Z.includes("headers"))U.headers=!0;if(!U.body&&Z.includes("body"))U.body=!0;if(!U.cookie&&Z.includes("cookie"))U.cookie=!0;if(!U.set&&Z.includes("set"))U.set=!0;if(!U.query&&Z.includes("server"))U.server=!0;if(!U.request&&Z.includes("request"))U.request=!0;if(!U.route&&Z.includes("route"))U.route=!0;continue}if(!U.query&&W("query",X))U.query=!0;if(z.includes("return "+X)||z.includes("return "+X+".query"))U.query=!0;if(!U.headers&&W("headers",X))U.headers=!0;if(!U.body&&W("body",X))U.body=!0;if(!U.cookie&&W("cookie",X))U.cookie=!0;if(!U.set&&W("set",X))U.set=!0;if(!U.server&&W("server",X))U.server=!0;if(U.query&&U.headers&&U.body&&U.cookie&&U.set&&U.server&&U.server&&U.route)break}return w},zG=(z,w,U)=>{try{let W=new RegExp(`(?:\\w)\\((?:.*)?${z}`,"gs");W.test(w);let X=w.charCodeAt(W.lastIndex);if(X===41||X===44)return U.query=!0,U.headers=!0,U.body=!0,U.cookie=!0,U.set=!0,U.server=!0,U.route=!0,U.request=!0,!0;return!1}catch(W){return console.log("[Sucrose] warning: unexpected isContextPassToFunction error, you may continue development as usual but please report the following to maintainers:"),console.log("--- body ---"),console.log(w),console.log("--- context ---"),console.log(z),!0}},wW=(z,w={query:!1,headers:!1,body:!1,cookie:!1,set:!1,server:!1,request:!1,route:!1})=>{let U=[];if(z.handler&&typeof z.handler==="function")U.push(z.handler);if(z.request?.length)U.push(...z.request);if(z.beforeHandle?.length)U.push(...z.beforeHandle);if(z.parse?.length)U.push(...z.parse);if(z.error?.length)U.push(...z.error);if(z.transform?.length)U.push(...z.transform);if(z.afterHandle?.length)U.push(...z.afterHandle);if(z.mapResponse?.length)U.push(...z.mapResponse);if(z.afterResponse?.length)U.push(...z.afterResponse);for(let W of U){if(!W)continue;let X="fn"in W?W.fn:W;if(typeof X!=="function")continue;let[Z,$,{isArrowReturn:A}]=pL(X.toString()),Q=rL(Z,w),Y=aL(Q);if(Y){let J=zW(Y,$.slice(1,-1));J.splice(0,-1,Y);let G=$;if(G.charCodeAt(0)===123&&G.charCodeAt($.length-1)===125)G=G.slice(1,-1);if(!zG(Y,G,w))eL(G,J,w);if(!w.query&&G.includes("return "+Y+".query"))w.query=!0}if(w.query&&w.headers&&w.body&&w.cookie&&w.set&&w.server&&w.request&&w.route)break}return w},v6=[];for(let z=48;z<58;z++)v6[z]=z-48;for(let z=0;z<6;z++)v6[z+65]=v6[z+97]=z+10;var wG=(z,w)=>{if(z in v6&&w in v6)return v6[z]<<4|v6[w];return 255},UW=[...new Array(128).fill(0),...new Array(16).fill(1),...new Array(16).fill(2),...new Array(32).fill(3),4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4],UG=[0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0],TU=UW.map((z)=>[127,63,63,63,0,31,15,15,15,7,7,7][z]),S6=(z)=>{let w=z.indexOf("%");if(w===-1)return z;let U=z.length-3;if(w>U)return null;let W="",X=0,Z=0,$=w,A=12,Q;for(;;){if(Q=wG(z.charCodeAt(w+1),z.charCodeAt(w+2)),A=UG[A+UW[Q]],A===0)return null;if(A===12){if(W+=z.substring(X,$),Z=Z<<6|Q&TU[Q],Z>65535)W+=String.fromCharCode(55232+(Z>>10),56320+(Z&1023));else W+=String.fromCharCode(Z);if(X=w+3,w=z.indexOf("%",X),w===-1)return W+z.substring(X);if(w>U)return null;$=w,Z=0}else{if(w+=3,w>U||z.charCodeAt(w)!==37)return null;Z=Z<<6|Q&TU[Q]}}};class O4{name;jar;initial;constructor(z,w,U={}){this.name=z,this.jar=w,this.initial=U}get cookie(){return this.jar[this.name]??this.initial}set cookie(z){if(!(this.name in this.jar))this.jar[this.name]=this.initial;this.jar[this.name]=z}get setCookie(){if(!(this.name in this.jar))this.jar[this.name]=this.initial;return this.jar[this.name]}set setCookie(z){this.cookie=z}get value(){return this.cookie.value}set value(z){this.setCookie.value=z}get expires(){return this.cookie.expires}set expires(z){this.setCookie.expires=z}get maxAge(){return this.cookie.maxAge}set maxAge(z){this.setCookie.maxAge=z}get domain(){return this.cookie.domain}set domain(z){this.setCookie.domain=z}get path(){return this.cookie.path}set path(z){this.setCookie.path=z}get secure(){return this.cookie.secure}set secure(z){this.setCookie.secure=z}get httpOnly(){return this.cookie.httpOnly}set httpOnly(z){this.setCookie.httpOnly=z}get sameSite(){return this.cookie.sameSite}set sameSite(z){this.setCookie.sameSite=z}get priority(){return this.cookie.priority}set priority(z){this.setCookie.priority=z}get partitioned(){return this.cookie.partitioned}set partitioned(z){this.setCookie.partitioned=z}get secrets(){return this.cookie.secrets}set secrets(z){this.setCookie.secrets=z}update(z){return this.setCookie=Object.assign(this.cookie,typeof z==="function"?z(this.cookie):z),this}set(z){return this.setCookie=Object.assign({...this.initial,value:this.value},typeof z==="function"?z(this.cookie):z),this}remove(){if(this.value===void 0)return;return this.set({expires:new Date(0),maxAge:0,value:""}),this}toString(){return typeof this.value==="object"?JSON.stringify(this.value):this.value?.toString()??""}}var gU=(z,w,U)=>{if(!z.cookie)z.cookie={};return new Proxy(w,{get(W,X){if(X in w)return new O4(X,z.cookie,Object.assign({},U??{},w[X]));return new O4(X,z.cookie,Object.assign({},U))}})},WW=async(z,w,{secrets:U,sign:W,...X}={})=>{if(!w)return gU(z,{},X);let Z=typeof U==="string";if(W&&W!==!0&&!Array.isArray(W))W=[W];let $={},A=w5.parse(w);for(let[Q,Y]of Object.entries(A)){if(Y===void 0)continue;let J=S6(Y);if(W===!0||W?.includes(Q)){if(!U)throw new Error("No secret is provided to cookie plugin");if(Z){let G=await jU(J,U);if(G===!1)throw new sz(Q);J=G}else{let G=!0;for(let S=0;S<U.length;S++){let N=await jU(J,U[S]);if(N!==!1){G=!0,J=N;break}}if(!G)throw new sz(Q)}}$[Q]={value:J}}return gU(z,$,X)},XW=(z)=>{if(!z||!z1(z))return;let w=[];for(let[U,W]of Object.entries(z)){if(!U||!W)continue;let X=W.value;if(X===void 0||X===null)continue;w.push(w5.serialize(U,typeof X==="object"?JSON.stringify(X):X+"",W))}if(w.length===0)return;if(w.length===1)return w[0];return w},D6=(z,w)=>{let U=z.size;if(!w&&U||U&&w&&w.status!==206&&w.status!==304&&w.status!==412&&w.status!==416){if(w){if(w.headers instanceof Headers){let W={"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"};if(p8)W=w.headers.toJSON();else{W={};for(let[X,Z]of w.headers.entries())if(X in w.headers)W[X]=Z}return new Response(z,{status:w.status,headers:W})}if(z1(w.headers))return new Response(z,{status:w.status,headers:Object.assign({"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"},w.headers)})}return new Response(z,{headers:{"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"}})}return new Response(z)},ZW=(z,w)=>{if(!z)return z;z.delete("set-cookie");for(let U=0;U<w.length;U++){let W=w[U].indexOf("=");z.append("set-cookie",`${w[U].slice(0,W)}=${w[U].slice(W+1)||""}`)}return z},n6=(z,w)=>{if(w?.headers){if(z){if(p8)Object.assign(w.headers,z.headers.toJSON());else for(let[U,W]of z.headers.entries())if(U in w.headers)w.headers[U]=W}if(w.status===200)w.status=z.status;if(w.headers["content-encoding"])delete w.headers["content-encoding"];return w}if(!z)return{headers:{},status:w?.status??200};if(p8){if(w={headers:z.headers.toJSON(),status:w?.status??200},w.headers["content-encoding"])delete w.headers["content-encoding"];return w}w={headers:{},status:w?.status??200};for(let[U,W]of z.headers.entries()){if(U==="content-encoding")continue;if(U in w.headers)w.headers[U]=W}return w},e2=async(z,w,U)=>{let W=z.next();if(W instanceof Promise)W=await W;if(W.done){if(w)return E2(W.value,w,U);return P6(W.value,U)}if(w?.headers){if(!w.headers["transfer-encoding"])w.headers["transfer-encoding"]="chunked";if(!w.headers["content-type"])w.headers["content-type"]="text/event-stream; charset=utf-8"}else w={status:200,headers:{"content-type":"text/event-stream; charset=utf-8","transfer-encoding":"chunked"}};return new Response(new ReadableStream({async start(X){let Z=!1;if(U?.signal?.addEventListener("abort",()=>{Z=!0;try{X.close()}catch{}}),W.value!==void 0&&W.value!==null)if(typeof W.value==="object")try{X.enqueue(Buffer.from(JSON.stringify(W.value)))}catch{X.enqueue(Buffer.from(W.value.toString()))}else X.enqueue(Buffer.from(W.value.toString()));for await(let $ of z){if(Z)break;if($===void 0||$===null)continue;if(typeof $==="object")try{X.enqueue(Buffer.from(JSON.stringify($)))}catch{X.enqueue(Buffer.from($.toString()))}else X.enqueue(Buffer.from($.toString()));await new Promise((A)=>setTimeout(()=>A(),0))}try{X.close()}catch{}}}),w)};async function*u6(z){let w=z.body;if(!w)return;let U=w.getReader(),W=new TextDecoder;try{while(!0){let{done:X,value:Z}=await U.read();if(X)break;yield W.decode(Z)}}finally{U.releaseLock()}}var $W=(z)=>{if(typeof z.status==="string")z.status=e8[z.status];if(z.cookie&&z1(z.cookie)){let w=XW(z.cookie);if(w)z.headers["set-cookie"]=w}if(z.headers["set-cookie"]&&Array.isArray(z.headers["set-cookie"]))z.headers=ZW(new Headers(z.headers),z.headers["set-cookie"])},a8=(z,w)=>{if(z.status!==w.status&&w.status!==200&&(z.status<=300||z.status>400))z=new Response(z.body,{headers:z.headers,status:w.status});let U=!1;if(w.headers instanceof Headers)for(let W of w.headers.keys())if(W==="set-cookie"){if(U)continue;U=!0;for(let X of w.headers.getSetCookie())z.headers.append("set-cookie",X)}else z.headers.append(W,w.headers?.get(W)??"");else for(let W in w.headers)z.headers.append(W,w.headers[W]);return z},E2=(z,w,U)=>{if(z1(w.headers)||w.status!==200||w.cookie)switch($W(w),z?.constructor?.name){case"String":return new Response(z,w);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return D6(z.value);case"Blob":return D6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,E2(z.response,w,U);case"ReadableStream":if(!w.headers["content-type"]?.startsWith("text/event-stream"))w.headers["content-type"]="text/event-stream; charset=utf-8";return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,w);case void 0:if(!z)return new Response("",w);return Response.json(z,w);case"Response":if(z=a8(z,w),!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z,w),U);return z;case"Error":return O6(z,w);case"Promise":return z.then((W)=>E2(W,w,U));case"Function":return E2(z(),w,U);case"Number":case"Boolean":return new Response(z.toString(),w);case"Cookie":if(z instanceof O4)return new Response(z.value,w);return new Response(z?.toString(),w);case"FormData":return new Response(z,w);default:if(z instanceof Response){if(z=a8(z,w),z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z,w),U);return z}if(z instanceof Promise)return z.then((W)=>E2(W,w));if(z instanceof Error)return O6(z,w);if(z instanceof b1)return w.status=z.code,E2(z.response,w,U);if(typeof z?.next==="function")return e2(z,w,U);if(typeof z?.then==="function")return z.then((W)=>E2(W,w));if(typeof z?.toResponse==="function")return E2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z,w)}if(z instanceof Response&&!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z,w),U);if(typeof z?.next==="function"||z instanceof ReadableStream)return e2(z,w,U);return P6(z,U)},K2=(z,w,U)=>{if(z===void 0||z===null)return;if(z1(w.headers)||w.status!==200||w.cookie)switch($W(w),z?.constructor?.name){case"String":return new Response(z,w);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return D6(z.value);case"Blob":return D6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,K2(z.response,w,U);case"ReadableStream":if(!w.headers["content-type"]?.startsWith("text/event-stream"))w.headers["content-type"]="text/event-stream; charset=utf-8";return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,w);case void 0:if(!z)return;return Response.json(z,w);case"Response":if(z=a8(z,w),!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z,w),U);return z;case"Promise":return z.then((W)=>K2(W,w));case"Error":return O6(z,w);case"Function":return K2(z(),w);case"Number":case"Boolean":return new Response(z.toString(),w);case"FormData":return new Response(z);case"Cookie":if(z instanceof O4)return new Response(z.value,w);return new Response(z?.toString(),w);default:if(z instanceof Response){if(z=a8(z,w),z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z,w),U);return z}if(z instanceof Promise)return z.then((W)=>K2(W,w));if(z instanceof Error)return O6(z,w);if(z instanceof b1)return w.status=z.code,K2(z.response,w,U);if(typeof z?.next==="function")return e2(z,w,U);if(typeof z?.then==="function")return z.then((W)=>K2(W,w));if(typeof z?.toResponse==="function")return K2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z,w)}else switch(z?.constructor?.name){case"String":return new Response(z);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return D6(z.value);case"Blob":return D6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,K2(z.response,w,U);case"ReadableStream":return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!z)return new Response("");return new Response(JSON.stringify(z),{headers:{"content-type":"application/json"}});case"Response":if(!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z),U);return z;case"Promise":return z.then((W)=>{let X=K2(W,w);if(X!==void 0)return X});case"Error":return O6(z,w);case"Function":return P6(z(),U);case"Number":case"Boolean":return new Response(z.toString());case"Cookie":if(z instanceof O4)return new Response(z.value,w);return new Response(z?.toString(),w);case"FormData":return new Response(z);default:if(z instanceof Response)return z;if(z instanceof Promise)return z.then((W)=>K2(W,w));if(z instanceof Error)return O6(z,w);if(z instanceof b1)return w.status=z.code,K2(z.response,w,U);if(typeof z?.next==="function")return e2(z,w,U);if(typeof z?.then==="function")return z.then((W)=>K2(W,w));if(typeof z?.toResponse==="function")return K2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z)}},P6=(z,w)=>{switch(z?.constructor?.name){case"String":return new Response(z);case"Object":case"Array":return Response.json(z);case"ElysiaFile":return D6(z.value);case"Blob":return D6(z);case"ElysiaCustomStatusResponse":return E2(z.response,{status:z.code,headers:{}});case"ReadableStream":return w?.signal?.addEventListener("abort",{handleEvent(){if(w?.signal&&!w?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!z)return new Response("");return new Response(JSON.stringify(z),{headers:{"content-type":"application/json"}});case"Response":if(z.headers.get("transfer-encoding")==="chunked")return e2(u6(z),n6(z),w);return z;case"Error":return O6(z);case"Promise":return z.then((U)=>P6(U,w));case"Function":return P6(z(),w);case"Number":case"Boolean":return new Response(z.toString());case"FormData":return new Response(z);default:if(z instanceof Response)return z;if(z instanceof Promise)return z.then((U)=>P6(U,w));if(z instanceof Error)return O6(z);if(z instanceof b1)return E2(z.response,{status:z.code,headers:{}});if(typeof z?.next==="function")return e2(z,void 0,w);if(typeof z?.then==="function")return z.then((U)=>E2(U,set));if(typeof z?.toResponse==="function")return P6(z.toResponse());if("charCodeAt"in z){let U=z.charCodeAt(0);if(U===123||U===91)return new Response(JSON.stringify(z),{headers:{"Content-Type":"application/json"}})}return new Response(z)}},O6=(z,w)=>new Response(JSON.stringify({name:z?.name,message:z?.message,cause:z?.cause}),{status:w?.status!==200?w?.status??500:500,headers:w?.headers}),WG=(z,w,U={})=>{if(typeof z==="function")return;let W=E2(z,{headers:U});if(!w.parse?.length&&!w.transform?.length&&!w.beforeHandle?.length&&!w.afterHandle?.length)return W.clone.bind(W)},t8={name:"web-standard",isWebStandard:!0,handler:{mapResponse:E2,mapEarlyResponse:K2,mapCompactResponse:P6,createStaticHandler:WG},composeHandler:{mapResponseContext:"c.request",preferWebstandardHeaders:!0,headers:`c.headers = {}
2
+ var GX=Object.create;var{getPrototypeOf:HX,defineProperty:e5,getOwnPropertyNames:_X}=Object;var SX=Object.prototype.hasOwnProperty;var DX=(z,w,U)=>{U=z!=null?GX(HX(z)):{};let W=w||!z||!z.__esModule?e5(U,"default",{value:z,enumerable:!0}):U;for(let X of _X(z))if(!SX.call(W,X))e5(W,X,{get:()=>z[X],enumerable:!0});return W};var PX=(z,w)=>()=>(w||z((w={exports:{}}).exports,w),w.exports);var K6=(z,w)=>{for(var U in w)e5(z,U,{get:w[U],enumerable:!0,configurable:!0,set:(W)=>w[U]=()=>W})};var MW=PX((BW)=>{Object.defineProperty(BW,"__esModule",{value:!0});BW.parse=KN;BW.serialize=FN;var DN=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,PN=/^[\u0021-\u003A\u003C-\u007E]*$/,ON=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,RN=/^[\u0020-\u003A\u003D-\u007E]*$/,CN=Object.prototype.toString,bN=(()=>{let z=function(){};return z.prototype=Object.create(null),z})();function KN(z,w){let U=new bN,W=z.length;if(W<2)return U;let X=w?.decode||jN,A=0;do{let Z=z.indexOf("=",A);if(Z===-1)break;let $=z.indexOf(";",A),Y=$===-1?W:$;if(Z>Y){A=z.lastIndexOf(";",Z-1)+1;continue}let Q=QW(z,A,Z),J=JW(z,Z,Q),N=z.slice(Q,J);if(U[N]===void 0){let S=QW(z,Z+1,Y),G=JW(z,Y,S),O=X(z.slice(S,G));U[N]=O}A=Y+1}while(A<W);return U}function QW(z,w,U){do{let W=z.charCodeAt(w);if(W!==32&&W!==9)return w}while(++w<U);return U}function JW(z,w,U){while(w>U){let W=z.charCodeAt(--w);if(W!==32&&W!==9)return w+1}return U}function FN(z,w,U){let W=U?.encode||encodeURIComponent;if(!DN.test(z))throw new TypeError(`argument name is invalid: ${z}`);let X=W(w);if(!PN.test(X))throw new TypeError(`argument val is invalid: ${w}`);let A=z+"="+X;if(!U)return A;if(U.maxAge!==void 0){if(!Number.isInteger(U.maxAge))throw new TypeError(`option maxAge is invalid: ${U.maxAge}`);A+="; Max-Age="+U.maxAge}if(U.domain){if(!ON.test(U.domain))throw new TypeError(`option domain is invalid: ${U.domain}`);A+="; Domain="+U.domain}if(U.path){if(!RN.test(U.path))throw new TypeError(`option path is invalid: ${U.path}`);A+="; Path="+U.path}if(U.expires){if(!IN(U.expires)||!Number.isFinite(U.expires.valueOf()))throw new TypeError(`option expires is invalid: ${U.expires}`);A+="; Expires="+U.expires.toUTCString()}if(U.httpOnly)A+="; HttpOnly";if(U.secure)A+="; Secure";if(U.partitioned)A+="; Partitioned";if(U.priority)switch(typeof U.priority==="string"?U.priority.toLowerCase():void 0){case"low":A+="; Priority=Low";break;case"medium":A+="; Priority=Medium";break;case"high":A+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${U.priority}`)}if(U.sameSite)switch(typeof U.sameSite==="string"?U.sameSite.toLowerCase():U.sameSite){case!0:case"strict":A+="; SameSite=Strict";break;case"lax":A+="; SameSite=Lax";break;case"none":A+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${U.sameSite}`)}return A}function jN(z){if(z.indexOf("%")===-1)return z;try{return decodeURIComponent(z)}catch(w){return z}}function IN(z){return CN.call(z)==="[object Date]"}});var Mw;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(Mw||(Mw={}));var qw;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(qw||(qw={}));function zz(z){return Nw(z,OX,b4.Include)}function K4(z){return Nw(z,RX,b4.None)}function Nw(z,w,U){let W="";for(let X=0;X<z.byteLength;X+=3){let A=0,Z=0;for(let $=0;$<3&&X+$<z.byteLength;$++)A=A<<8|z[X+$],Z+=8;for(let $=0;$<4;$++)if(Z>=6)W+=w[A>>Z-6&63],Z-=6;else if(Z>0)W+=w[A<<6-Z&63],Z=0;else if(U===b4.Include)W+="="}return W}var OX="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",RX="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";var b4;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(b4||(b4={}));var Lw;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(Lw||(Lw={}));class Hw{uint8(z,w){if(z.byteLength<w+1)throw new TypeError("Insufficient bytes");return z[w]}uint16(z,w){if(z.byteLength<w+2)throw new TypeError("Insufficient bytes");return z[w]<<8|z[w+1]}uint32(z,w){if(z.byteLength<w+4)throw new TypeError("Insufficient bytes");let U=0;for(let W=0;W<4;W++)U|=z[w+W]<<24-W*8;return U}uint64(z,w){if(z.byteLength<w+8)throw new TypeError("Insufficient bytes");let U=0n;for(let W=0;W<8;W++)U|=BigInt(z[w+W])<<BigInt(56-W*8);return U}putUint8(z,w,U){if(z.length<U+1)throw new TypeError("Not enough space");if(w<0||w>255)throw new TypeError("Invalid uint8 value");z[U]=w}putUint16(z,w,U){if(z.length<U+2)throw new TypeError("Not enough space");if(w<0||w>65535)throw new TypeError("Invalid uint16 value");z[U]=w>>8,z[U+1]=w&255}putUint32(z,w,U){if(z.length<U+4)throw new TypeError("Not enough space");if(w<0||w>4294967295)throw new TypeError("Invalid uint32 value");for(let W=0;W<4;W++)z[U+W]=w>>(3-W)*8&255}putUint64(z,w,U){if(z.length<U+8)throw new TypeError("Not enough space");if(w<0||w>18446744073709551615n)throw new TypeError("Invalid uint64 value");for(let W=0;W<8;W++)z[U+W]=Number(w>>BigInt((7-W)*8)&0xffn)}}class _w{uint8(z,w){if(z.byteLength<w+1)throw new TypeError("Insufficient bytes");return z[w]}uint16(z,w){if(z.byteLength<w+2)throw new TypeError("Insufficient bytes");return z[w]|z[w+1]<<8}uint32(z,w){if(z.byteLength<w+4)throw new TypeError("Insufficient bytes");let U=0;for(let W=0;W<4;W++)U|=z[w+W]<<W*8;return U}uint64(z,w){if(z.byteLength<w+8)throw new TypeError("Insufficient bytes");let U=0n;for(let W=0;W<8;W++)U|=BigInt(z[w+W])<<BigInt(W*8);return U}putUint8(z,w,U){if(z.length<1+U)throw new TypeError("Insufficient space");if(w<0||w>255)throw new TypeError("Invalid uint8 value");z[U]=w}putUint16(z,w,U){if(z.length<2+U)throw new TypeError("Insufficient space");if(w<0||w>65535)throw new TypeError("Invalid uint16 value");z[U+1]=w>>8,z[U]=w&255}putUint32(z,w,U){if(z.length<4+U)throw new TypeError("Insufficient space");if(w<0||w>4294967295)throw new TypeError("Invalid uint32 value");for(let W=0;W<4;W++)z[U+W]=w>>W*8&255}putUint64(z,w,U){if(z.length<8+U)throw new TypeError("Insufficient space");if(w<0||w>18446744073709551615n)throw new TypeError("Invalid uint64 value");for(let W=0;W<8;W++)z[U+W]=Number(w>>BigInt(W*8)&0xffn)}}var j1=new Hw,CX=new _w;function c0(z,w){return(z<<32-w|z>>>w)>>>0}function v2(z,w){return(z<<BigInt(64-w)|z>>BigInt(w))&0xffffffffffffffffn}class Sw{blockSize=64;size=32;blocks=new Uint8Array(64);currentBlockSize=0;H=new Uint32Array([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]);l=0n;w=new Uint32Array(64);update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<64){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,64-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+64<=z.byteLength){let U=z.slice(w,w+64);this.blocks.set(U),this.process(),w+=64}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}digest(){if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,64-this.currentBlockSize<8)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),j1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();let z=new Uint8Array(28);for(let w=0;w<7;w++)j1.putUint32(z,this.H[w],w*4);return z}process(){for(let Y=0;Y<16;Y++)this.w[Y]=(this.blocks[Y*4]<<24|this.blocks[Y*4+1]<<16|this.blocks[Y*4+2]<<8|this.blocks[Y*4+3])>>>0;for(let Y=16;Y<64;Y++){let Q=(c0(this.w[Y-2],17)^c0(this.w[Y-2],19)^this.w[Y-2]>>>10)>>>0,J=(c0(this.w[Y-15],7)^c0(this.w[Y-15],18)^this.w[Y-15]>>>3)>>>0;this.w[Y]=Q+this.w[Y-7]+J+this.w[Y-16]|0}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],A=this.H[5],Z=this.H[6],$=this.H[7];for(let Y=0;Y<64;Y++){let Q=(c0(X,6)^c0(X,11)^c0(X,25))>>>0,J=(X&A^~X&Z)>>>0,N=$+Q+J+bX[Y]+this.w[Y]|0,S=(c0(z,2)^c0(z,13)^c0(z,22))>>>0,G=(z&w^z&U^w&U)>>>0,O=S+G|0;$=Z,Z=A,A=X,X=W+N|0,W=U,U=w,w=z,z=N+O|0}this.H[0]=z+this.H[0]|0,this.H[1]=w+this.H[1]|0,this.H[2]=U+this.H[2]|0,this.H[3]=W+this.H[3]|0,this.H[4]=X+this.H[4]|0,this.H[5]=A+this.H[5]|0,this.H[6]=Z+this.H[6]|0,this.H[7]=$+this.H[7]|0}}var bX=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function wz(z){let w=new Uz;return w.update(z),w.digest()}class Uz{blockSize=64;size=32;blocks=new Uint8Array(64);currentBlockSize=0;H=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);l=0n;w=new Uint32Array(64);update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<64){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,64-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+64<=z.byteLength){let U=z.slice(w,w+64);this.blocks.set(U),this.process(),w+=64}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}digest(){if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,64-this.currentBlockSize<8)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),j1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();let z=new Uint8Array(32);for(let w=0;w<8;w++)j1.putUint32(z,this.H[w],w*4);return z}process(){for(let Y=0;Y<16;Y++)this.w[Y]=(this.blocks[Y*4]<<24|this.blocks[Y*4+1]<<16|this.blocks[Y*4+2]<<8|this.blocks[Y*4+3])>>>0;for(let Y=16;Y<64;Y++){let Q=(c0(this.w[Y-2],17)^c0(this.w[Y-2],19)^this.w[Y-2]>>>10)>>>0,J=(c0(this.w[Y-15],7)^c0(this.w[Y-15],18)^this.w[Y-15]>>>3)>>>0;this.w[Y]=Q+this.w[Y-7]+J+this.w[Y-16]|0}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],A=this.H[5],Z=this.H[6],$=this.H[7];for(let Y=0;Y<64;Y++){let Q=(c0(X,6)^c0(X,11)^c0(X,25))>>>0,J=(X&A^~X&Z)>>>0,N=$+Q+J+KX[Y]+this.w[Y]|0,S=(c0(z,2)^c0(z,13)^c0(z,22))>>>0,G=(z&w^z&U^w&U)>>>0,O=S+G|0;$=Z,Z=A,A=X,X=W+N|0,W=U,U=w,w=z,z=N+O|0}this.H[0]=z+this.H[0]|0,this.H[1]=w+this.H[1]|0,this.H[2]=U+this.H[2]|0,this.H[3]=W+this.H[3]|0,this.H[4]=X+this.H[4]|0,this.H[5]=A+this.H[5]|0,this.H[6]=Z+this.H[6]|0,this.H[7]=$+this.H[7]|0}}var KX=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);class Z6{blockSize=128;size=64;blocks=new Uint8Array(128);currentBlockSize=0;l=0n;w=new BigUint64Array(80);H;constructor(z){if(z.byteLength!==64)throw new TypeError;this.H=z}update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<128){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,128-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+128<=z.byteLength){let U=z.slice(w,w+128);this.blocks.set(U),this.process(),w+=128,this.currentBlockSize=0}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}putDigest(z){if(z.byteLength>64||z.byteLength%8!==0)throw new TypeError;if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,128-this.currentBlockSize<16)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),j1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();for(let w=0;w<z.byteLength/8;w++)j1.putUint64(z,this.H[w],w*8)}process(){for(let Y=0;Y<16;Y++)this.w[Y]=BigInt(this.blocks[Y*8])<<56n|BigInt(this.blocks[Y*8+1])<<48n|BigInt(this.blocks[Y*8+2])<<40n|BigInt(this.blocks[Y*8+3])<<32n|BigInt(this.blocks[Y*8+4])<<24n|BigInt(this.blocks[Y*8+5])<<16n|BigInt(this.blocks[Y*8+6])<<8n|BigInt(this.blocks[Y*8+7]);for(let Y=16;Y<80;Y++){let Q=(v2(this.w[Y-2],19)^v2(this.w[Y-2],61)^this.w[Y-2]>>6n)&0xffffffffffffffffn,J=(v2(this.w[Y-15],1)^v2(this.w[Y-15],8)^this.w[Y-15]>>7n)&0xffffffffffffffffn;this.w[Y]=Q+this.w[Y-7]+J+this.w[Y-16]&0xffffffffffffffffn}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],A=this.H[5],Z=this.H[6],$=this.H[7];for(let Y=0;Y<80;Y++){let Q=(v2(X,14)^v2(X,18)^v2(X,41))&0xffffffffffffffffn,J=(X&A^~X&Z)&0xffffffffffffffffn,N=$+Q+J+FX[Y]+this.w[Y]&0xffffffffffffffffn,S=(v2(z,28)^v2(z,34)^v2(z,39))&0xffffffffffffffffn,G=(z&w^z&U^w&U)&0xffffffffffffffffn,O=S+G&0xffffffffffffffffn;$=Z,Z=A,A=X,X=W+N&0xffffffffffffffffn,W=U,U=w,w=z,z=N+O&0xffffffffffffffffn}this.H[0]=z+this.H[0]&0xffffffffffffffffn,this.H[1]=w+this.H[1]&0xffffffffffffffffn,this.H[2]=U+this.H[2]&0xffffffffffffffffn,this.H[3]=W+this.H[3]&0xffffffffffffffffn,this.H[4]=X+this.H[4]&0xffffffffffffffffn,this.H[5]=A+this.H[5]&0xffffffffffffffffn,this.H[6]=Z+this.H[6]&0xffffffffffffffffn,this.H[7]=$+this.H[7]&0xffffffffffffffffn}}class Dw{blockSize=128;size=64;sha512=new Z6(new BigUint64Array([0x6a09e667f3bcc908n,0xbb67ae8584caa73bn,0x3c6ef372fe94f82bn,0xa54ff53a5f1d36f1n,0x510e527fade682d1n,0x9b05688c2b3e6c1fn,0x1f83d9abfb41bd6bn,0x5be0cd19137e2179n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(64);return this.sha512.putDigest(z),z}}var FX=new BigUint64Array([0x428a2f98d728ae22n,0x7137449123ef65cdn,0xb5c0fbcfec4d3b2fn,0xe9b5dba58189dbbcn,0x3956c25bf348b538n,0x59f111f1b605d019n,0x923f82a4af194f9bn,0xab1c5ed5da6d8118n,0xd807aa98a3030242n,0x12835b0145706fben,0x243185be4ee4b28cn,0x550c7dc3d5ffb4e2n,0x72be5d74f27b896fn,0x80deb1fe3b1696b1n,0x9bdc06a725c71235n,0xc19bf174cf692694n,0xe49b69c19ef14ad2n,0xefbe4786384f25e3n,0x0fc19dc68b8cd5b5n,0x240ca1cc77ac9c65n,0x2de92c6f592b0275n,0x4a7484aa6ea6e483n,0x5cb0a9dcbd41fbd4n,0x76f988da831153b5n,0x983e5152ee66dfabn,0xa831c66d2db43210n,0xb00327c898fb213fn,0xbf597fc7beef0ee4n,0xc6e00bf33da88fc2n,0xd5a79147930aa725n,0x06ca6351e003826fn,0x142929670a0e6e70n,0x27b70a8546d22ffcn,0x2e1b21385c26c926n,0x4d2c6dfc5ac42aedn,0x53380d139d95b3dfn,0x650a73548baf63den,0x766a0abb3c77b2a8n,0x81c2c92e47edaee6n,0x92722c851482353bn,0xa2bfe8a14cf10364n,0xa81a664bbc423001n,0xc24b8b70d0f89791n,0xc76c51a30654be30n,0xd192e819d6ef5218n,0xd69906245565a910n,0xf40e35855771202an,0x106aa07032bbd1b8n,0x19a4c116b8d2d0c8n,0x1e376c085141ab53n,0x2748774cdf8eeb99n,0x34b0bcb5e19b48a8n,0x391c0cb3c5c95a63n,0x4ed8aa4ae3418acbn,0x5b9cca4f7763e373n,0x682e6ff3d6b2b8a3n,0x748f82ee5defb2fcn,0x78a5636f43172f60n,0x84c87814a1f0ab72n,0x8cc702081a6439ecn,0x90befffa23631e28n,0xa4506cebde82bde9n,0xbef9a3f7b2c67915n,0xc67178f2e372532bn,0xca273eceea26619cn,0xd186b8c721c0c207n,0xeada7dd6cde0eb1en,0xf57d4f7fee6ed178n,0x06f067aa72176fban,0x0a637dc5a2c898a6n,0x113f9804bef90daen,0x1b710b35131c471bn,0x28db77f523047d84n,0x32caab7b40c72493n,0x3c9ebe0a15c9bebcn,0x431d67c49c100d4cn,0x4cc5d4becb3e42b6n,0x597f299cfc657e2an,0x5fcb6fab3ad6faecn,0x6c44198c4a475817n]);class Pw{blockSize=128;size=48;sha512=new Z6(new BigUint64Array([0xcbbb9d5dc1059ed8n,0x629a292a367cd507n,0x9159015a3070dd17n,0x152fecd8f70e5939n,0x67332667ffc00b31n,0x8eb44a8768581511n,0xdb0c2e0d64f98fa7n,0x47b5481dbefa4fa4n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(48);return this.sha512.putDigest(z),z}}class Ow{blockSize=128;size=28;sha512=new Z6(new BigUint64Array([0x8c3d37c819544da2n,0x73e1996689dcd4d6n,0x1dfab7ae32ff9c82n,0x679dd514582f9fcfn,0x0f6d2b697bd44da8n,0x77e36f7304c48942n,0x3f9d85a86a1d36c8n,0x1112e6ad91d692a1n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(32);return this.sha512.putDigest(z),z.slice(0,28)}}class Rw{blockSize=128;size=28;sha512=new Z6(new BigUint64Array([0x22312194fc2bf72cn,0x9f555fa3c84c64c2n,0x2393b86b6f53b151n,0x963877195940eabdn,0x96283ee2a88effe3n,0xbe5e1e2553863992n,0x2b0199fc2c85b8aan,0x0eb72ddc81c52ca2n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(32);return this.sha512.putDigest(z),z}}class o6{data;constructor(z){this.data=z}tokenType(){if("token_type"in this.data&&typeof this.data.token_type==="string")return this.data.token_type;throw new Error("Missing or invalid 'token_type' field")}accessToken(){if("access_token"in this.data&&typeof this.data.access_token==="string")return this.data.access_token;throw new Error("Missing or invalid 'access_token' field")}accessTokenExpiresInSeconds(){if("expires_in"in this.data&&typeof this.data.expires_in==="number")return this.data.expires_in;throw new Error("Missing or invalid 'expires_in' field")}accessTokenExpiresAt(){return new Date(Date.now()+this.accessTokenExpiresInSeconds()*1000)}hasRefreshToken(){return"refresh_token"in this.data&&typeof this.data.refresh_token==="string"}refreshToken(){if("refresh_token"in this.data&&typeof this.data.refresh_token==="string")return this.data.refresh_token;throw new Error("Missing or invalid 'refresh_token' field")}hasScopes(){return"scope"in this.data&&typeof this.data.scope==="string"}scopes(){if("scope"in this.data&&typeof this.data.scope==="string")return this.data.scope.split(" ");throw new Error("Missing or invalid 'scope' field")}idToken(){if("id_token"in this.data&&typeof this.data.id_token==="string")return this.data.id_token;throw new Error("Missing or invalid field 'id_token'")}}function V2(z){let w=wz(new TextEncoder().encode(z));return K4(w)}function Wz(){let z=new Uint8Array(32);return crypto.getRandomValues(z),K4(z)}function Xz(){let z=new Uint8Array(32);return crypto.getRandomValues(z),K4(z)}function Cw(z,w){if(w.length!==1)throw new TypeError("Invalid character string");let U=0;while(U<z.length&&z[U]===w)U++;return z.slice(U)}function Az(z,w){if(w.length!==1)throw new TypeError("Invalid character string");let U=z.length;while(U>0&&z[U-1]===w)U--;return z.slice(0,U)}function r0(z,...w){let U=Az(z,"/");for(let W of w)U=Az(U,"/")+"/"+Cw(W,"/");return U}function k(z,w){let U=new TextEncoder().encode(w.toString()),W=new Request(z,{method:"POST",body:U});return W.headers.set("Content-Type","application/x-www-form-urlencoded"),W.headers.set("Accept","application/json"),W.headers.set("User-Agent","arctic"),W.headers.set("Content-Length",U.byteLength.toString()),W}function I1(z,w){let U=new TextEncoder().encode(`${z}:${w}`);return zz(U)}async function c(z){let w;try{w=await fetch(z)}catch(U){throw new $6(U)}if(w.status===400||w.status===401){let U;try{U=await w.json()}catch{throw new d1(w.status)}if(typeof U!=="object"||U===null)throw new Z1(w.status,U);let W;try{W=A8(U)}catch{throw new Z1(w.status,U)}throw W}if(w.status===200){let U;try{U=await w.json()}catch{throw new d1(w.status)}if(typeof U!=="object"||U===null)throw new Z1(w.status,U);return new o6(U)}if(w.body!==null)await w.body.cancel();throw new d1(w.status)}async function h1(z){let w;try{w=await fetch(z)}catch(U){throw new $6(U)}if(w.status===400||w.status===401){let U;try{U=await w.json()}catch{throw new Z1(w.status,null)}if(typeof U!=="object"||U===null)throw new Z1(w.status,U);let W;try{W=A8(U)}catch{throw new Z1(w.status,U)}throw W}if(w.status===200){if(w.body!==null)await w.body.cancel();return}if(w.body!==null)await w.body.cancel();throw new d1(w.status)}function A8(z){let w;if("error"in z&&typeof z.error==="string")w=z.error;else throw new Error("Invalid error response");let U=null,W=null,X=null;if("error_description"in z){if(typeof z.error_description!=="string")throw new Error("Invalid data");U=z.error_description}if("error_uri"in z){if(typeof z.error_uri!=="string")throw new Error("Invalid data");W=z.error_uri}if("state"in z){if(typeof z.state!=="string")throw new Error("Invalid data");X=z.state}return new F4(w,U,W,X)}class $6 extends Error{constructor(z){super("Failed to send request",{cause:z})}}class F4 extends Error{code;description;uri;state;constructor(z,w,U,W){super(`OAuth request error: ${z}`);this.code=z,this.description=w,this.uri=U,this.state=W}}class d1 extends Error{status;constructor(z){super("Unexpected error response");this.status=z}}class Z1 extends Error{status;data;constructor(z,w){super("Unexpected error response body");this.status=z,this.data=w}}class y{clientId;clientPassword;redirectURI;constructor(z,w,U){this.clientId=z,this.clientPassword=w,this.redirectURI=U}createAuthorizationURL(z,w,U){let W=new URL(z);if(W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),this.redirectURI!==null)W.searchParams.set("redirect_uri",this.redirectURI);if(W.searchParams.set("state",w),U.length>0)W.searchParams.set("scope",U.join(" "));return W}createAuthorizationURLWithPKCE(z,w,U,W,X){let A=new URL(z);if(A.searchParams.set("response_type","code"),A.searchParams.set("client_id",this.clientId),this.redirectURI!==null)A.searchParams.set("redirect_uri",this.redirectURI);if(A.searchParams.set("state",w),U===a.S256){let Z=V2(W);A.searchParams.set("code_challenge_method","S256"),A.searchParams.set("code_challenge",Z)}else if(U===a.Plain)A.searchParams.set("code_challenge_method","plain"),A.searchParams.set("code_challenge",W);if(X.length>0)A.searchParams.set("scope",X.join(" "));return A}async validateAuthorizationCode(z,w,U){let W=new URLSearchParams;if(W.set("grant_type","authorization_code"),W.set("code",w),this.redirectURI!==null)W.set("redirect_uri",this.redirectURI);if(U!==null)W.set("code_verifier",U);if(this.clientPassword===null)W.set("client_id",this.clientId);let X=k(z,W);if(this.clientPassword!==null){let Z=I1(this.clientId,this.clientPassword);X.headers.set("Authorization",`Basic ${Z}`)}return await c(X)}async refreshAccessToken(z,w,U){let W=new URLSearchParams;if(W.set("grant_type","refresh_token"),W.set("refresh_token",w),this.clientPassword===null)W.set("client_id",this.clientId);if(U.length>0)W.set("scope",U.join(" "));let X=k(z,W);if(this.clientPassword!==null){let Z=I1(this.clientId,this.clientPassword);X.headers.set("Authorization",`Basic ${Z}`)}return await c(X)}async revokeToken(z,w){let U=new URLSearchParams;if(U.set("token",w),this.clientPassword===null)U.set("client_id",this.clientId);let W=k(z,U);if(this.clientPassword!==null){let X=I1(this.clientId,this.clientPassword);W.headers.set("Authorization",`Basic ${X}`)}await h1(W)}}var a;(function(z){z[z.S256=0]="S256",z[z.Plain=1]="Plain"})(a||(a={}));class Z8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/oauth2/authorize`,this.tokenEndpoint=`https://${z}/oauth2/token`,this.tokenRevocationEndpoint=`https://${z}/oauth2/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z,w){return await this.client.refreshAccessToken(this.tokenEndpoint,z,w)}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var IX="https://anilist.co/api/v2/oauth/authorize",EX="https://anilist.co/api/v2/oauth/token";class $8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){return this.client.createAuthorizationURL(IX,z,[])}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(EX,z,null)}}var bw;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(bw||(bw={}));var Kw;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(Kw||(Kw={}));function F6(z){return xX(z,VX,Y8.None)}function xX(z,w,U){let W="";for(let X=0;X<z.byteLength;X+=3){let A=0,Z=0;for(let $=0;$<3&&X+$<z.byteLength;$++)A=A<<8|z[X+$],Z+=8;for(let $=0;$<4;$++)if(Z>=6)W+=w[A>>Z-6&63],Z-=6;else if(Z>0)W+=w[A<<6-Z&63],Z=0;else if(U===Y8.Include)W+="="}return W}var VX="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";function Zz(z){return kX(z,TX,j4.Ignore)}function kX(z,w,U){let W=new Uint8Array(Math.ceil(z.length/4)*3),X=0;for(let A=0;A<z.length;A+=4){let Z=0,$=0;for(let Q=0;Q<4;Q++){if(U===j4.Required&&z[A+Q]==="=")continue;if(U===j4.Ignore&&(A+Q>=z.length||z[A+Q]==="="))continue;if(Q>0&&z[A+Q-1]==="=")throw new Error("Invalid padding");if(!(z[A+Q]in w))throw new Error("Invalid character");Z|=w[z[A+Q]]<<(3-Q)*6,$+=6}if($<24){let Q;if($===12)Q=Z&65535;else if($===18)Q=Z&255;else throw new Error("Invalid padding");if(Q!==0)throw new Error("Invalid padding")}let Y=Math.floor($/8);for(let Q=0;Q<Y;Q++)W[X]=Z>>16-Q*8&255,X++}return W.slice(0,X)}var Y8;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(Y8||(Y8={}));var j4;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(j4||(j4={}));var TX={"0":52,"1":53,"2":54,"3":55,"4":56,"5":57,"6":58,"7":59,"8":60,"9":61,A:0,B:1,C:2,D:3,E:4,F:5,G:6,H:7,I:8,J:9,K:10,L:11,M:12,N:13,O:14,P:15,Q:16,R:17,S:18,T:19,U:20,V:21,W:22,X:23,Y:24,Z:25,a:26,b:27,c:28,d:29,e:30,f:31,g:32,h:33,i:34,j:35,k:36,l:37,m:38,n:39,o:40,p:41,q:42,r:43,s:44,t:45,u:46,v:47,w:48,x:49,y:50,z:51,"-":62,_:63};function Fw(z){let w=z.split(".");if(w.length!==3)throw new Error("Invalid JWT");let U;try{U=new TextDecoder().decode(Zz(w[1]))}catch{throw new Error("Invalid JWT: Invalid base64url encoding")}let W;try{W=JSON.parse(U)}catch{throw new Error("Invalid JWT: Invalid JSON encoding")}if(typeof W!=="object"||W===null)throw new Error("Invalid JWT: Invalid payload");return W}function jw(z,w,U){let W=F6(new TextEncoder().encode(z)),X=F6(new TextEncoder().encode(w)),A=F6(U);return W+"."+X+"."+A}function Iw(z,w){let U=F6(new TextEncoder().encode(z)),W=F6(new TextEncoder().encode(w)),X=U+"."+W;return new TextEncoder().encode(X)}var fX="https://appleid.apple.com/auth/authorize",dX="https://appleid.apple.com/auth/token";class Q8{clientId;teamId;keyId;pkcs8PrivateKey;redirectURI;constructor(z,w,U,W,X){this.clientId=z,this.teamId=w,this.keyId=U,this.pkcs8PrivateKey=W,this.redirectURI=X}createAuthorizationURL(z,w){let U=new URL(fX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId);let U=await this.createClientSecret();w.set("client_secret",U);let W=k(dX,w);return await c(W)}async createClientSecret(){let z=await crypto.subtle.importKey("pkcs8",this.pkcs8PrivateKey,{name:"ECDSA",namedCurve:"P-256"},!1,["sign"]),w=Math.floor(Date.now()/1000),U=JSON.stringify({typ:"JWT",alg:"ES256",kid:this.keyId}),W=JSON.stringify({iss:this.teamId,exp:w+300,aud:["https://appleid.apple.com"],sub:this.clientId,iat:w}),X=new Uint8Array(await crypto.subtle.sign({name:"ECDSA",hash:"SHA-256"},z,Iw(U,W)));return jw(U,W,X)}}var hX="https://auth.atlassian.com/authorize",xw="https://auth.atlassian.com/oauth/token";class J8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(hX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U.searchParams.set("audience","api.atlassian.com"),U.searchParams.set("prompt","consent"),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(xw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(xw,w);return await c(U)}}class B8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/authorize`,this.tokenEndpoint=`https://${z}/oauth/token`,this.tokenRevocationEndpoint=`https://${z}/oauth/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U);else W=this.client.createAuthorizationURL(this.authorizationEndpoint,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}class M8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=r0(z,"/application/o/authorize/"),this.tokenEndpoint=r0(z,"/application/o/token/"),this.tokenRevocationEndpoint=r0(z,"/application/o/revoke/"),this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var cX="https://bitbucket.org/site/oauth2/authorize",Vw="https://bitbucket.org/site/oauth2/access_token";class q8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){return this.client.createAuthorizationURL(cX,z,[])}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(Vw,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(Vw,z,[])}}var iX="https://account.box.com/api/oauth2/authorize",kw="https://api.box.com/oauth2/token",yX="https://api.box.com/oauth2/revoke";class L8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(iX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(kw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(kw,w);return await c(U)}async revokeToken(z){let w=new URLSearchParams;w.set("token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(yX,w);await h1(U)}}var vX="https://www.coinbase.com/oauth/authorize",Tw="https://www.coinbase.com/oauth/token",nX="https://api.coinbase.com/oauth/revoke";class N8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(vX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(Tw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(Tw,w);return await c(U)}async revokeToken(z){let w=new URLSearchParams;w.set("token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(nX,w);await h1(U)}}var gw="https://discord.com/oauth2/authorize",fw="https://discord.com/api/oauth2/token",uX="https://discord.com/api/oauth2/token/revoke";class G8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(gw,z,a.S256,w,U);else W=this.client.createAuthorizationURL(gw,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(fw,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(fw,z,[])}async revokeToken(z){await this.client.revokeToken(uX,z)}}var mX="https://dribbble.com/oauth/authorize",tX="https://dribbble.com/oauth/token";class H8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(mX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(tX,w);return await c(U)}}var oX="https://www.dropbox.com/oauth2/authorize",dw="https://api.dropboxapi.com/oauth2/token",pX="https://api.dropboxapi.com/2/auth/token/revoke";class _8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(oX,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(dw,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(dw,z,[])}async revokeToken(z){await this.client.revokeToken(pX,z)}}var lX="https://www.facebook.com/v16.0/dialog/oauth",sX="https://graph.facebook.com/v16.0/oauth/access_token";class S8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(lX);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(sX,w);return await c(U)}}var rX="https://www.figma.com/oauth",aX="https://api.figma.com/v1/oauth/token",eX="https://api.figma.com/v1/oauth/refresh";class D8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(rX,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(aX,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(eX,z,[])}}var zA="https://github.com/login/oauth/authorize",hw="https://github.com/login/oauth/access_token";class P8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(zA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));if(this.redirectURI!==null)U.searchParams.set("redirect_uri",this.redirectURI);return U}async validateAuthorizationCode(z){let w=new URLSearchParams;if(w.set("grant_type","authorization_code"),w.set("code",z),this.redirectURI!==null)w.set("redirect_uri",this.redirectURI);let U=k(hw,w),W=I1(this.clientId,this.clientSecret);return U.headers.set("Authorization",`Basic ${W}`),await cw(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z);let U=k(hw,w),W=I1(this.clientId,this.clientSecret);return U.headers.set("Authorization",`Basic ${W}`),await cw(U)}}async function cw(z){let w;try{w=await fetch(z)}catch(X){throw new $6(X)}if(w.status!==200){if(w.body!==null)await w.body.cancel();throw new d1(w.status)}let U;try{U=await w.json()}catch{throw new d1(w.status)}if(typeof U!=="object"||U===null)throw new Z1(w.status,U);if("error"in U&&typeof U.error==="string"){let X;try{X=A8(U)}catch{throw new Z1(w.status,U)}throw X}return new o6(U)}class O8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=r0(z,"/oauth/authorize"),this.tokenEndpoint=r0(z,"/oauth/token"),this.tokenRevocationEndpoint=r0(z,"/oauth/revoke"),this.client=new y(w,U,W)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(this.authorizationEndpoint,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var wA="https://accounts.google.com/o/oauth2/v2/auth",iw="https://oauth2.googleapis.com/token",UA="https://oauth2.googleapis.com/revoke";class R8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(wA,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(iw,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(iw,z,[])}async revokeToken(z){await this.client.revokeToken(UA,z)}}var WA="https://appcenter.intuit.com/connect/oauth2",yw="https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer",XA="https://developer.API.intuit.com/v2/oauth2/tokens/revoke";class C8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(WA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(yw,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(yw,z,[])}async revokeToken(z){await this.client.revokeToken(XA,z)}}var AA="https://kauth.kakao.com/oauth/authorize",vw="https://kauth.kakao.com/oauth/token";class b8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(AA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(vw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(vw,w);return await c(U)}}class K8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=z+"/protocol/openid-connect/auth",this.tokenEndpoint=z+"/protocol/openid-connect/token",this.tokenRevocationEndpoint=z+"/protocol/openid-connect/revoke",this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var ZA="https://lichess.org/oauth",$A="https://lichess.org/api/token";class F8{client;constructor(z,w){this.client=new y(z,null,w)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(ZA,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode($A,z,w)}}var YA="https://access.line.me/oauth2/v2.1/authorize",nw="https://api.line.me/oauth2/v2.1/token";class j8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w,U){let W=new URL(YA);if(W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),W.searchParams.set("state",z),U.length>0)W.searchParams.set("scope",U.join(" "));W.searchParams.set("redirect_uri",this.redirectURI);let X=V2(w);return W.searchParams.set("code_challenge_method","S256"),W.searchParams.set("code_challenge",X),W}async validateAuthorizationCode(z,w){let U=new URLSearchParams;U.set("grant_type","authorization_code"),U.set("code",z),U.set("code_verifier",w),U.set("redirect_uri",this.redirectURI),U.set("client_id",this.clientId),U.set("client_secret",this.clientSecret);let W=k(nw,U);return await c(W)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(nw,w);return await c(U)}}var QA="https://linear.app/oauth/authorize",JA="https://api.linear.app/oauth/token";class I8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(QA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(JA,w);return await c(U)}}var BA="https://www.linkedin.com/oauth/v2/authorization",uw="https://www.linkedin.com/oauth/v2/accessToken";class E8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(BA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(uw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(uw,w);return await c(U)}}class x8{authorizationEndpoint;tokenEndpoint;clientId;clientSecret;redirectURI;constructor(z,w,U,W){this.authorizationEndpoint=r0("https://login.microsoftonline.com",z,"/oauth2/v2.0/authorize"),this.tokenEndpoint=r0("https://login.microsoftonline.com",z,"/oauth2/v2.0/token"),this.clientId=w,this.clientSecret=U,this.redirectURI=W}createAuthorizationURL(z,w,U){let W=new URL(this.authorizationEndpoint);W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),W.searchParams.set("redirect_uri",this.redirectURI),W.searchParams.set("state",z);let X=V2(w);if(W.searchParams.set("code_challenge_method","S256"),W.searchParams.set("code_challenge",X),U.length>0)W.searchParams.set("scope",U.join(" "));return W}async validateAuthorizationCode(z,w){let U=new URLSearchParams;if(U.set("grant_type","authorization_code"),U.set("code",z),U.set("redirect_uri",this.redirectURI),U.set("code_verifier",w),this.clientSecret===null)U.set("client_id",this.clientId);let W=k(this.tokenEndpoint,U);if(this.clientSecret!==null){let A=I1(this.clientId,this.clientSecret);W.headers.set("Authorization",`Basic ${A}`)}else W.headers.set("Origin","arctic");return await c(W)}async refreshAccessToken(z,w){let U=new URLSearchParams;if(U.set("grant_type","refresh_token"),U.set("refresh_token",z),this.clientSecret===null)U.set("client_id",this.clientId);if(w.length>0)U.set("scope",w.join(" "));let W=k(this.tokenEndpoint,U);if(this.clientSecret!==null){let A=I1(this.clientId,this.clientSecret);W.headers.set("Authorization",`Basic ${A}`)}else W.headers.set("Origin","arctic");return await c(W)}}var MA="https://myanimelist.net/v1/oauth2/authorize",mw="https://myanimelist.net/v1/oauth2/token";class V8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURLWithPKCE(MA,z,a.Plain,w,[])}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(mw,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(mw,z,[])}}var qA="https://api.notion.com/v1/oauth/authorize",LA="https://api.notion.com/v1/oauth/token";class k8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){let w=this.client.createAuthorizationURL(qA,z,[]);return w.searchParams.set("owner","user"),w}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(LA,z,null)}}class T8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W,X){let A=`https://${z}/oauth2`;if(w!==null)A=r0(A,w);this.authorizationEndpoint=r0(A,"/v1/authorize"),this.tokenEndpoint=r0(A,"/v1/token"),this.tokenRevocationEndpoint=r0(A,"/v1/revoke"),this.client=new y(U,W,X)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z,w){return await this.client.refreshAccessToken(this.tokenEndpoint,z,w)}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var NA="https://osu.ppy.sh/oauth/authorize",tw="https://osu.ppy.sh/oauth/token";class g8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(NA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));if(this.redirectURI!==null)U.searchParams.set("redirect_uri",this.redirectURI);return U}async validateAuthorizationCode(z){let w=new URLSearchParams;if(w.set("grant_type","authorization_code"),w.set("code",z),this.redirectURI!==null)w.set("redirect_uri",this.redirectURI);w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(tw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(tw,w);return await c(U)}}var GA="https://www.patreon.com/oauth2/authorize",ow="https://www.patreon.com/api/oauth2/token";class f8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(GA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(ow,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(ow,w);return await c(U)}}var HA="https://www.reddit.com/api/v1/authorize",pw="https://www.reddit.com/api/v1/access_token";class d8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(HA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(pw,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(pw,z,[])}}var _A="https://apis.roblox.com/oauth/v1/authorize",lw="https://apis.roblox.com/oauth/v1/token",SA="https://apis.roblox.com/oauth/v1/token/revoke";class h8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(_A,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(lw,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(lw,z,[])}async revokeToken(z){await this.client.revokeToken(SA,z)}}class c8{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/services/oauth2/authorize`,this.tokenEndpoint=`https://${z}/services/oauth2/token`,this.tokenRevocationEndpoint=`https://${z}/services/oauth2/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var DA="https://shikimori.one/oauth/authorize",sw="https://shikimori.one/oauth/token";class i8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z){let w=new URL(DA);return w.searchParams.set("response_type","code"),w.searchParams.set("client_id",this.clientId),w.searchParams.set("state",z),w.searchParams.set("redirect_uri",this.redirectURI),w}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(sw,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(sw,w);return await c(U)}}var PA="https://slack.com/openid/connect/authorize",OA="https://slack.com/api/openid.connect.token";class y8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(PA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(OA,z,null)}}var rw="https://accounts.spotify.com/authorize",aw="https://accounts.spotify.com/api/token";class v8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(rw,z,a.S256,w,U);else W=this.client.createAuthorizationURL(rw,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(aw,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(aw,z,[])}}var RA="https://www.strava.com/oauth/authorize",ew="https://www.strava.com/api/v3/oauth/token";class n8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(RA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(","));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(ew,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(ew,w);return await c(U)}}var CA="https://v5api.tiltify.com/oauth/authorizeze",z9="https://v5api.tiltify.com/oauth/token";class u8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(CA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(z9,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(z9,w);return await c(U)}}var bA="https://www.tumblr.com/oauth2/authorize",w9="https://api.tumblr.com/v2/oauth2/token";class m8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(bA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(w9,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(w9,z,[])}}var KA="https://id.twitch.tv/oauth2/authorize",U9="https://id.twitch.tv/oauth2/token";class t8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(KA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(U9,w);return await c(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(U9,w);return await c(U)}}var FA="https://twitter.com/i/oauth2/authorize",W9="https://api.twitter.com/2/oauth2/token",jA="https://api.twitter.com/2/oauth2/revoke";class o8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(FA,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(W9,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(W9,z,[])}async revokeToken(z){await this.client.revokeToken(jA,z)}}var IA="https://oauth.vk.com/authorize",EA="https://oauth.vk.com/access_token";class p8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(IA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(EA,w);return await c(U)}}var xA="https://api.workos.com/sso/authorize",VA="https://api.workos.com/sso/token";class l8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(xA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),U.searchParams.set("redirect_uri",this.redirectURI),w!==null){let W=V2(w);U.searchParams.set("code_challenge_method","S256"),U.searchParams.set("code_challenge",W)}return U}async validateAuthorizationCode(z,w){let U=new URLSearchParams;if(U.set("grant_type","authorization_code"),U.set("code",z),U.set("redirect_uri",this.redirectURI),U.set("client_id",this.clientId),this.clientSecret!==null)U.set("client_secret",this.clientSecret);if(w!==null)U.set("code_verifier",w);let W=k(VA,U);return await c(W)}}var kA="https://api.login.yahoo.com/oauth2/request_auth",X9="https://api.login.yahoo.com/oauth2/get_token";class s8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(kA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(X9,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(X9,z,[])}}var TA="https://oauth.yandex.com/authorize",A9="https://oauth.yandex.com/token";class r8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(TA,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(A9,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(A9,z,[])}}var gA="https://zoom.us/oauth/authorize",Z9="https://zoom.us/oauth/token",fA="https://zoom.us/oauth/revoke";class a8{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(gA,z,a.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(Z9,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(Z9,z,[])}async revokeToken(z){await this.client.revokeToken(fA,z)}}var dA="https://api.intra.42.fr/oauth/authorize",hA="https://api.intra.42.fr/oauth/token";class e8{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(dA);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=k(hA,w);return await c(U)}}function $z(z){try{return Fw(z)}catch(w){throw new Error("Invalid ID token",{cause:w})}}var p6=(z,w)=>{let U=w?.length?{}:null;if(U)for(let W of w)U[W.part.charCodeAt(0)]=W;return{part:z,store:null,inert:U,params:null,wildcardStore:null}},$9=(z,w)=>({...z,part:w}),Y9=(z)=>({name:z,store:null,inert:null});class j6{config;root={};history=[];deferred=[];constructor(z={}){if(this.config=z,z.lazy)this.find=this.lazyFind}static regex={static:/:.+?(?=\/|$)/,params:/:.+?(?=\/|$)/g,optionalParams:/:.+?\?(?=\/|$)/g};lazyFind=(z,w)=>{if(!this.config.lazy)return this.find;return this.build(),this.find(z,w)};build(){if(!this.config.lazy)return;for(let[z,w,U]of this.deferred)this.add(z,w,U,{lazy:!1,ignoreHistory:!0});this.deferred=[],this.find=(z,w)=>{let U=this.root[z];if(!U)return null;return z5(w,w.length,U,0)}}add(z,w,U,{ignoreError:W=!1,ignoreHistory:X=!1,lazy:A=this.config.lazy}={}){if(A)return this.find=this.lazyFind,this.deferred.push([z,w,U]),U;if(typeof w!=="string")throw new TypeError("Route path must be a string");if(w==="")w="/";else if(w[0]!=="/")w=`/${w}`;let Z=w[w.length-1]==="*",$=w.match(j6.regex.optionalParams);if($){let S=w.replaceAll("?","");this.add(z,S,U,{ignoreError:W,ignoreHistory:X,lazy:A});for(let G=0;G<$.length;G++){let O=w.replace("/"+$[G],"");this.add(z,O,U,{ignoreError:!0,ignoreHistory:X,lazy:A})}return U}if($)w=w.replaceAll("?","");if(this.history.find(([S,G,O])=>S===z&&G===w))return U;if(Z||$&&w.charCodeAt(w.length-1)===63)w=w.slice(0,-1);if(!X)this.history.push([z,w,U]);let Y=w.split(j6.regex.static),Q=w.match(j6.regex.params)||[];if(Y[Y.length-1]==="")Y.pop();let J;if(!this.root[z])J=this.root[z]=p6("/");else J=this.root[z];let N=0;for(let S=0;S<Y.length;++S){let G=Y[S];if(S>0){let O=Q[N++].slice(1);if(J.params===null)J.params=Y9(O);else if(J.params.name!==O)if(W)return U;else throw new Error(`Cannot create route "${w}" with parameter "${O}" because a route already exists with a different parameter name ("${J.params.name}") in the same location`);let B=J.params;if(B.inert===null){J=B.inert=p6(G);continue}J=B.inert}for(let O=0;;){if(O===G.length){if(O<J.part.length){let B=$9(J,J.part.slice(O));Object.assign(J,p6(G,[B]))}break}if(O===J.part.length){if(J.inert===null)J.inert={};let B=J.inert[G.charCodeAt(O)];if(B){J=B,G=G.slice(O),O=0;continue}let C=p6(G.slice(O));J.inert[G.charCodeAt(O)]=C,J=C;break}if(G[O]!==J.part[O]){let B=$9(J,J.part.slice(O)),C=p6(G.slice(O));Object.assign(J,p6(J.part.slice(0,O),[B,C])),J=C;break}++O}}if(N<Q.length){let S=Q[N].slice(1);if(J.params===null)J.params=Y9(S);else if(J.params.name!==S)if(W)return U;else throw new Error(`Cannot create route "${w}" with parameter "${S}" because a route already exists with a different parameter name ("${J.params.name}") in the same location`);if(J.params.store===null)J.params.store=U;return J.params.store}if(Z){if(J.wildcardStore===null)J.wildcardStore=U;return J.wildcardStore}if(J.store===null)J.store=U;return J.store}find(z,w){let U=this.root[z];if(!U)return null;return z5(w,w.length,U,0)}}var z5=(z,w,U,W)=>{let X=U.part,A=X.length,Z=W+A;if(A>1){if(Z>w)return null;if(A<15){for(let $=1,Y=W+1;$<A;++$,++Y)if(X.charCodeAt($)!==z.charCodeAt(Y))return null}else if(z.slice(W,Z)!==X)return null}if(Z===w){if(U.store!==null)return{store:U.store,params:{}};if(U.wildcardStore!==null)return{store:U.wildcardStore,params:{"*":""}};return null}if(U.inert!==null){let $=U.inert[z.charCodeAt(Z)];if($!==void 0){let Y=z5(z,w,$,Z);if(Y!==null)return Y}}if(U.params!==null){let{store:$,name:Y,inert:Q}=U.params,J=z.indexOf("/",Z);if(J!==Z){if(J===-1||J>=w){if($!==null){let N={};return N[Y]=z.substring(Z,w),{store:$,params:N}}}else if(Q!==null){let N=z5(z,w,Q,J);if(N!==null)return N.params[Y]=z.substring(Z,J),N}}}if(U.wildcardStore!==null)return{store:U.wildcardStore,params:{"*":z.substring(Z,w)}};return null};var Q2={};K6(Q2,{IsUndefined:()=>t0,IsUint8Array:()=>i1,IsSymbol:()=>Mz,IsString:()=>F0,IsRegExp:()=>E4,IsObject:()=>P0,IsNumber:()=>k2,IsNull:()=>Bz,IsIterator:()=>Jz,IsFunction:()=>Qz,IsDate:()=>I6,IsBoolean:()=>c1,IsBigInt:()=>I4,IsAsyncIterator:()=>Yz,IsArray:()=>m0,HasPropertyKey:()=>w5});function w5(z,w){return w in z}function Yz(z){return P0(z)&&!m0(z)&&!i1(z)&&Symbol.asyncIterator in z}function m0(z){return Array.isArray(z)}function I4(z){return typeof z==="bigint"}function c1(z){return typeof z==="boolean"}function I6(z){return z instanceof globalThis.Date}function Qz(z){return typeof z==="function"}function Jz(z){return P0(z)&&!m0(z)&&!i1(z)&&Symbol.iterator in z}function Bz(z){return z===null}function k2(z){return typeof z==="number"}function P0(z){return typeof z==="object"&&z!==null}function E4(z){return z instanceof globalThis.RegExp}function F0(z){return typeof z==="string"}function Mz(z){return typeof z==="symbol"}function i1(z){return z instanceof globalThis.Uint8Array}function t0(z){return z===void 0}function cA(z){return z.map((w)=>U5(w))}function iA(z){return new Date(z.getTime())}function yA(z){return new Uint8Array(z)}function vA(z){return new RegExp(z.source,z.flags)}function nA(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=U5(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=U5(z[U]);return w}function U5(z){return m0(z)?cA(z):I6(z)?iA(z):i1(z)?yA(z):E4(z)?vA(z):P0(z)?nA(z):z}function V0(z){return U5(z)}function l6(z,w){return w===void 0?V0(z):V0({...w,...z})}function W5(z){return l(z)&&globalThis.Symbol.asyncIterator in z}function X5(z){return l(z)&&globalThis.Symbol.iterator in z}function qz(z){return l(z)&&(globalThis.Object.getPrototypeOf(z)===Object.prototype||globalThis.Object.getPrototypeOf(z)===null)}function A5(z){return z instanceof globalThis.Promise}function N2(z){return z instanceof Date&&globalThis.Number.isFinite(z.getTime())}function Q9(z){return z instanceof globalThis.Map}function J9(z){return z instanceof globalThis.Set}function n2(z){return globalThis.ArrayBuffer.isView(z)}function s6(z){return z instanceof globalThis.Uint8Array}function u(z,w){return w in z}function l(z){return z!==null&&typeof z==="object"}function m(z){return globalThis.Array.isArray(z)&&!globalThis.ArrayBuffer.isView(z)}function k0(z){return z===void 0}function y1(z){return z===null}function E1(z){return typeof z==="boolean"}function v(z){return typeof z==="number"}function Z5(z){return globalThis.Number.isInteger(z)}function X2(z){return typeof z==="bigint"}function Z0(z){return typeof z==="string"}function Y6(z){return typeof z==="function"}function v1(z){return typeof z==="symbol"}function T2(z){return X2(z)||E1(z)||y1(z)||v(z)||Z0(z)||v1(z)||k0(z)}var E0;(function(z){z.InstanceMode="default",z.ExactOptionalPropertyTypes=!1,z.AllowArrayObject=!1,z.AllowNaN=!1,z.AllowNullVoid=!1;function w(Z,$){return z.ExactOptionalPropertyTypes?$ in Z:Z[$]!==void 0}z.IsExactOptionalProperty=w;function U(Z){let $=l(Z);return z.AllowArrayObject?$:$&&!m(Z)}z.IsObjectLike=U;function W(Z){return U(Z)&&!(Z instanceof Date)&&!(Z instanceof Uint8Array)}z.IsRecordLike=W;function X(Z){return z.AllowNaN?v(Z):Number.isFinite(Z)}z.IsNumberLike=X;function A(Z){let $=k0(Z);return z.AllowNullVoid?$||Z===null:$}z.IsVoidLike=A})(E0||(E0={}));function uA(z){return globalThis.Object.freeze(z).map((w)=>x4(w))}function mA(z){return z}function tA(z){return z}function oA(z){return z}function pA(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=x4(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=x4(z[U]);return globalThis.Object.freeze(w)}function x4(z){return m0(z)?uA(z):I6(z)?mA(z):i1(z)?tA(z):E4(z)?oA(z):P0(z)?pA(z):z}function D(z,w){let U=w!==void 0?{...w,...z}:z;switch(E0.InstanceMode){case"freeze":return x4(U);case"clone":return V0(U);default:return U}}class n extends Error{constructor(z){super(z)}}var j0=Symbol.for("TypeBox.Transform"),$1=Symbol.for("TypeBox.Readonly"),A2=Symbol.for("TypeBox.Optional"),u2=Symbol.for("TypeBox.Hint"),H=Symbol.for("TypeBox.Kind");function r6(z){return P0(z)&&z[$1]==="Readonly"}function S2(z){return P0(z)&&z[A2]==="Optional"}function Lz(z){return X0(z,"Any")}function Nz(z){return X0(z,"Argument")}function Y1(z){return X0(z,"Array")}function E6(z){return X0(z,"AsyncIterator")}function x6(z){return X0(z,"BigInt")}function n1(z){return X0(z,"Boolean")}function Q1(z){return X0(z,"Computed")}function J1(z){return X0(z,"Constructor")}function lA(z){return X0(z,"Date")}function B1(z){return X0(z,"Function")}function M1(z){return X0(z,"Integer")}function i0(z){return X0(z,"Intersect")}function V6(z){return X0(z,"Iterator")}function X0(z,w){return P0(z)&&H in z&&z[H]===w}function $5(z){return c1(z)||k2(z)||F0(z)}function g2(z){return X0(z,"Literal")}function f2(z){return X0(z,"MappedKey")}function T0(z){return X0(z,"MappedResult")}function Q6(z){return X0(z,"Never")}function sA(z){return X0(z,"Not")}function V4(z){return X0(z,"Null")}function q1(z){return X0(z,"Number")}function o0(z){return X0(z,"Object")}function k6(z){return X0(z,"Promise")}function T6(z){return X0(z,"Record")}function u0(z){return X0(z,"Ref")}function Gz(z){return X0(z,"RegExp")}function u1(z){return X0(z,"String")}function k4(z){return X0(z,"Symbol")}function d2(z){return X0(z,"TemplateLiteral")}function rA(z){return X0(z,"This")}function M0(z){return P0(z)&&j0 in z}function h2(z){return X0(z,"Tuple")}function m1(z){return X0(z,"Undefined")}function $0(z){return X0(z,"Union")}function aA(z){return X0(z,"Uint8Array")}function eA(z){return X0(z,"Unknown")}function zZ(z){return X0(z,"Unsafe")}function wZ(z){return X0(z,"Void")}function J6(z){return P0(z)&&H in z&&F0(z[H])}function f0(z){return Lz(z)||Nz(z)||Y1(z)||n1(z)||x6(z)||E6(z)||Q1(z)||J1(z)||lA(z)||B1(z)||M1(z)||i0(z)||V6(z)||g2(z)||f2(z)||T0(z)||Q6(z)||sA(z)||V4(z)||q1(z)||o0(z)||k6(z)||T6(z)||u0(z)||Gz(z)||u1(z)||k4(z)||d2(z)||rA(z)||h2(z)||m1(z)||$0(z)||aA(z)||eA(z)||zZ(z)||wZ(z)||J6(z)}var q={};K6(q,{TypeGuardUnknownTypeError:()=>B9,IsVoid:()=>a9,IsUnsafe:()=>r9,IsUnknown:()=>s9,IsUnionLiteral:()=>JZ,IsUnion:()=>Sz,IsUndefined:()=>p9,IsUint8Array:()=>l9,IsTuple:()=>o9,IsTransform:()=>t9,IsThis:()=>m9,IsTemplateLiteral:()=>u9,IsSymbol:()=>n9,IsString:()=>v9,IsSchema:()=>g0,IsRegExp:()=>y9,IsRef:()=>i9,IsRecursive:()=>QZ,IsRecord:()=>c9,IsReadonly:()=>AZ,IsProperties:()=>Y5,IsPromise:()=>h9,IsOptional:()=>ZZ,IsObject:()=>d9,IsNumber:()=>f9,IsNull:()=>g9,IsNot:()=>T9,IsNever:()=>k9,IsMappedResult:()=>V9,IsMappedKey:()=>x9,IsLiteralValue:()=>E9,IsLiteralString:()=>j9,IsLiteralNumber:()=>I9,IsLiteralBoolean:()=>YZ,IsLiteral:()=>g4,IsKindOf:()=>e,IsKind:()=>e9,IsIterator:()=>F9,IsIntersect:()=>K9,IsInteger:()=>b9,IsImport:()=>$Z,IsFunction:()=>C9,IsDate:()=>R9,IsConstructor:()=>O9,IsComputed:()=>P9,IsBoolean:()=>D9,IsBigInt:()=>S9,IsAsyncIterator:()=>_9,IsArray:()=>H9,IsArgument:()=>G9,IsAny:()=>N9});class B9 extends n{}var UZ=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function M9(z){try{return new RegExp(z),!0}catch{return!1}}function Hz(z){if(!F0(z))return!1;for(let w=0;w<z.length;w++){let U=z.charCodeAt(w);if(U>=7&&U<=13||U===27||U===127)return!1}return!0}function q9(z){return _z(z)||g0(z)}function T4(z){return t0(z)||I4(z)}function I0(z){return t0(z)||k2(z)}function _z(z){return t0(z)||c1(z)}function O0(z){return t0(z)||F0(z)}function WZ(z){return t0(z)||F0(z)&&Hz(z)&&M9(z)}function XZ(z){return t0(z)||F0(z)&&Hz(z)}function L9(z){return t0(z)||g0(z)}function AZ(z){return P0(z)&&z[$1]==="Readonly"}function ZZ(z){return P0(z)&&z[A2]==="Optional"}function N9(z){return e(z,"Any")&&O0(z.$id)}function G9(z){return e(z,"Argument")&&k2(z.index)}function H9(z){return e(z,"Array")&&z.type==="array"&&O0(z.$id)&&g0(z.items)&&I0(z.minItems)&&I0(z.maxItems)&&_z(z.uniqueItems)&&L9(z.contains)&&I0(z.minContains)&&I0(z.maxContains)}function _9(z){return e(z,"AsyncIterator")&&z.type==="AsyncIterator"&&O0(z.$id)&&g0(z.items)}function S9(z){return e(z,"BigInt")&&z.type==="bigint"&&O0(z.$id)&&T4(z.exclusiveMaximum)&&T4(z.exclusiveMinimum)&&T4(z.maximum)&&T4(z.minimum)&&T4(z.multipleOf)}function D9(z){return e(z,"Boolean")&&z.type==="boolean"&&O0(z.$id)}function P9(z){return e(z,"Computed")&&F0(z.target)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))}function O9(z){return e(z,"Constructor")&&z.type==="Constructor"&&O0(z.$id)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))&&g0(z.returns)}function R9(z){return e(z,"Date")&&z.type==="Date"&&O0(z.$id)&&I0(z.exclusiveMaximumTimestamp)&&I0(z.exclusiveMinimumTimestamp)&&I0(z.maximumTimestamp)&&I0(z.minimumTimestamp)&&I0(z.multipleOfTimestamp)}function C9(z){return e(z,"Function")&&z.type==="Function"&&O0(z.$id)&&m0(z.parameters)&&z.parameters.every((w)=>g0(w))&&g0(z.returns)}function $Z(z){return e(z,"Import")&&w5(z,"$defs")&&P0(z.$defs)&&Y5(z.$defs)&&w5(z,"$ref")&&F0(z.$ref)&&z.$ref in z.$defs}function b9(z){return e(z,"Integer")&&z.type==="integer"&&O0(z.$id)&&I0(z.exclusiveMaximum)&&I0(z.exclusiveMinimum)&&I0(z.maximum)&&I0(z.minimum)&&I0(z.multipleOf)}function Y5(z){return P0(z)&&Object.entries(z).every(([w,U])=>Hz(w)&&g0(U))}function K9(z){return e(z,"Intersect")&&(F0(z.type)&&z.type!=="object"?!1:!0)&&m0(z.allOf)&&z.allOf.every((w)=>g0(w)&&!t9(w))&&O0(z.type)&&(_z(z.unevaluatedProperties)||L9(z.unevaluatedProperties))&&O0(z.$id)}function F9(z){return e(z,"Iterator")&&z.type==="Iterator"&&O0(z.$id)&&g0(z.items)}function e(z,w){return P0(z)&&H in z&&z[H]===w}function j9(z){return g4(z)&&F0(z.const)}function I9(z){return g4(z)&&k2(z.const)}function YZ(z){return g4(z)&&c1(z.const)}function g4(z){return e(z,"Literal")&&O0(z.$id)&&E9(z.const)}function E9(z){return c1(z)||k2(z)||F0(z)}function x9(z){return e(z,"MappedKey")&&m0(z.keys)&&z.keys.every((w)=>k2(w)||F0(w))}function V9(z){return e(z,"MappedResult")&&Y5(z.properties)}function k9(z){return e(z,"Never")&&P0(z.not)&&Object.getOwnPropertyNames(z.not).length===0}function T9(z){return e(z,"Not")&&g0(z.not)}function g9(z){return e(z,"Null")&&z.type==="null"&&O0(z.$id)}function f9(z){return e(z,"Number")&&z.type==="number"&&O0(z.$id)&&I0(z.exclusiveMaximum)&&I0(z.exclusiveMinimum)&&I0(z.maximum)&&I0(z.minimum)&&I0(z.multipleOf)}function d9(z){return e(z,"Object")&&z.type==="object"&&O0(z.$id)&&Y5(z.properties)&&q9(z.additionalProperties)&&I0(z.minProperties)&&I0(z.maxProperties)}function h9(z){return e(z,"Promise")&&z.type==="Promise"&&O0(z.$id)&&g0(z.item)}function c9(z){return e(z,"Record")&&z.type==="object"&&O0(z.$id)&&q9(z.additionalProperties)&&P0(z.patternProperties)&&((w)=>{let U=Object.getOwnPropertyNames(w.patternProperties);return U.length===1&&M9(U[0])&&P0(w.patternProperties)&&g0(w.patternProperties[U[0]])})(z)}function QZ(z){return P0(z)&&u2 in z&&z[u2]==="Recursive"}function i9(z){return e(z,"Ref")&&O0(z.$id)&&F0(z.$ref)}function y9(z){return e(z,"RegExp")&&O0(z.$id)&&F0(z.source)&&F0(z.flags)&&I0(z.maxLength)&&I0(z.minLength)}function v9(z){return e(z,"String")&&z.type==="string"&&O0(z.$id)&&I0(z.minLength)&&I0(z.maxLength)&&WZ(z.pattern)&&XZ(z.format)}function n9(z){return e(z,"Symbol")&&z.type==="symbol"&&O0(z.$id)}function u9(z){return e(z,"TemplateLiteral")&&z.type==="string"&&F0(z.pattern)&&z.pattern[0]==="^"&&z.pattern[z.pattern.length-1]==="$"}function m9(z){return e(z,"This")&&O0(z.$id)&&F0(z.$ref)}function t9(z){return P0(z)&&j0 in z}function o9(z){return e(z,"Tuple")&&z.type==="array"&&O0(z.$id)&&k2(z.minItems)&&k2(z.maxItems)&&z.minItems===z.maxItems&&(t0(z.items)&&t0(z.additionalItems)&&z.minItems===0||m0(z.items)&&z.items.every((w)=>g0(w)))}function p9(z){return e(z,"Undefined")&&z.type==="undefined"&&O0(z.$id)}function JZ(z){return Sz(z)&&z.anyOf.every((w)=>j9(w)||I9(w))}function Sz(z){return e(z,"Union")&&O0(z.$id)&&P0(z)&&m0(z.anyOf)&&z.anyOf.every((w)=>g0(w))}function l9(z){return e(z,"Uint8Array")&&z.type==="Uint8Array"&&O0(z.$id)&&I0(z.minByteLength)&&I0(z.maxByteLength)}function s9(z){return e(z,"Unknown")&&O0(z.$id)}function r9(z){return e(z,"Unsafe")}function a9(z){return e(z,"Void")&&z.type==="void"&&O0(z.$id)}function e9(z){return P0(z)&&H in z&&F0(z[H])&&!UZ.includes(z[H])}function g0(z){return P0(z)&&(N9(z)||G9(z)||H9(z)||D9(z)||S9(z)||_9(z)||P9(z)||O9(z)||R9(z)||C9(z)||b9(z)||K9(z)||F9(z)||g4(z)||x9(z)||V9(z)||k9(z)||T9(z)||g9(z)||f9(z)||d9(z)||h9(z)||c9(z)||i9(z)||y9(z)||v9(z)||n9(z)||u9(z)||m9(z)||o9(z)||p9(z)||Sz(z)||l9(z)||s9(z)||r9(z)||a9(z)||e9(z))}var z7="(true|false)",Q5="(0|[1-9][0-9]*)",w7="(.*)";var x1="^(0|[1-9][0-9]*)$",V1="^(.*)$",U7="^(?!.*)$";var S0={};K6(S0,{Set:()=>NZ,Has:()=>LZ,Get:()=>GZ,Entries:()=>BZ,Delete:()=>qZ,Clear:()=>MZ});var a6=new Map;function BZ(){return new Map(a6)}function MZ(){return a6.clear()}function qZ(z){return a6.delete(z)}function LZ(z){return a6.has(z)}function NZ(z,w){a6.set(z,w)}function GZ(z){return a6.get(z)}var p0={};K6(p0,{Set:()=>PZ,Has:()=>DZ,Get:()=>OZ,Entries:()=>HZ,Delete:()=>SZ,Clear:()=>_Z});var e6=new Map;function HZ(){return new Map(e6)}function _Z(){return e6.clear()}function SZ(z){return e6.delete(z)}function DZ(z){return e6.has(z)}function PZ(z,w){e6.set(z,w)}function OZ(z){return e6.get(z)}function W7(z,w){return z.includes(w)}function X7(z){return[...new Set(z)]}function RZ(z,w){return z.filter((U)=>w.includes(U))}function CZ(z,w){return z.reduce((U,W)=>{return RZ(U,W)},w)}function A7(z){return z.length===1?z[0]:z.length>1?CZ(z.slice(1),z[0]):[]}function Z7(z){let w=[];for(let U of z)w.push(...U);return w}function B6(z){return D({[H]:"Any"},z)}function z4(z,w){return D({[H]:"Array",type:"array",items:z},w)}function $7(z){return D({[H]:"Argument",index:z})}function w4(z,w){return D({[H]:"AsyncIterator",type:"AsyncIterator",items:z},w)}function x0(z,w,U){return D({[H]:"Computed",target:z,parameters:w},U)}function bZ(z,w){let{[w]:U,...W}=z;return W}function y0(z,w){return w.reduce((U,W)=>bZ(U,W),z)}function p(z){return D({[H]:"Never",not:{}},z)}function Y0(z){return D({[H]:"MappedResult",properties:z})}function U4(z,w,U){return D({[H]:"Constructor",type:"Constructor",parameters:z,returns:w},U)}function k1(z,w,U){return D({[H]:"Function",type:"Function",parameters:z,returns:w},U)}function f4(z,w){return D({[H]:"Union",anyOf:z},w)}function KZ(z){return z.some((w)=>S2(w))}function Y7(z){return z.map((w)=>S2(w)?FZ(w):w)}function FZ(z){return y0(z,[A2])}function jZ(z,w){return KZ(z)?J2(f4(Y7(z),w)):f4(Y7(z),w)}function T1(z,w){return z.length===1?D(z[0],w):z.length===0?p(w):jZ(z,w)}function q0(z,w){return z.length===0?p(w):z.length===1?D(z[0],w):f4(z,w)}class Dz extends n{}function IZ(z){return z.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function Pz(z,w,U){return z[w]===U&&z.charCodeAt(w-1)!==92}function o1(z,w){return Pz(z,w,"(")}function d4(z,w){return Pz(z,w,")")}function Q7(z,w){return Pz(z,w,"|")}function EZ(z){if(!(o1(z,0)&&d4(z,z.length-1)))return!1;let w=0;for(let U=0;U<z.length;U++){if(o1(z,U))w+=1;if(d4(z,U))w-=1;if(w===0&&U!==z.length-1)return!1}return!0}function xZ(z){return z.slice(1,z.length-1)}function VZ(z){let w=0;for(let U=0;U<z.length;U++){if(o1(z,U))w+=1;if(d4(z,U))w-=1;if(Q7(z,U)&&w===0)return!0}return!1}function kZ(z){for(let w=0;w<z.length;w++)if(o1(z,w))return!0;return!1}function TZ(z){let[w,U]=[0,0],W=[];for(let A=0;A<z.length;A++){if(o1(z,A))w+=1;if(d4(z,A))w-=1;if(Q7(z,A)&&w===0){let Z=z.slice(U,A);if(Z.length>0)W.push(W4(Z));U=A+1}}let X=z.slice(U);if(X.length>0)W.push(W4(X));if(W.length===0)return{type:"const",const:""};if(W.length===1)return W[0];return{type:"or",expr:W}}function gZ(z){function w(X,A){if(!o1(X,A))throw new Dz("TemplateLiteralParser: Index must point to open parens");let Z=0;for(let $=A;$<X.length;$++){if(o1(X,$))Z+=1;if(d4(X,$))Z-=1;if(Z===0)return[A,$]}throw new Dz("TemplateLiteralParser: Unclosed group parens in expression")}function U(X,A){for(let Z=A;Z<X.length;Z++)if(o1(X,Z))return[A,Z];return[A,X.length]}let W=[];for(let X=0;X<z.length;X++)if(o1(z,X)){let[A,Z]=w(z,X),$=z.slice(A,Z+1);W.push(W4($)),X=Z}else{let[A,Z]=U(z,X),$=z.slice(A,Z);if($.length>0)W.push(W4($));X=Z-1}return W.length===0?{type:"const",const:""}:W.length===1?W[0]:{type:"and",expr:W}}function W4(z){return EZ(z)?W4(xZ(z)):VZ(z)?TZ(z):kZ(z)?gZ(z):{type:"const",const:IZ(z)}}function X4(z){return W4(z.slice(1,z.length-1))}class J7 extends n{}function fZ(z){return z.type==="or"&&z.expr.length===2&&z.expr[0].type==="const"&&z.expr[0].const==="0"&&z.expr[1].type==="const"&&z.expr[1].const==="[1-9][0-9]*"}function dZ(z){return z.type==="or"&&z.expr.length===2&&z.expr[0].type==="const"&&z.expr[0].const==="true"&&z.expr[1].type==="const"&&z.expr[1].const==="false"}function hZ(z){return z.type==="const"&&z.const===".*"}function g6(z){return fZ(z)||hZ(z)?!1:dZ(z)?!0:z.type==="and"?z.expr.every((w)=>g6(w)):z.type==="or"?z.expr.every((w)=>g6(w)):z.type==="const"?!0:(()=>{throw new J7("Unknown expression type")})()}function J5(z){let w=X4(z.pattern);return g6(w)}class B7 extends n{}function*M7(z){if(z.length===1)return yield*z[0];for(let w of z[0])for(let U of M7(z.slice(1)))yield`${w}${U}`}function*cZ(z){return yield*M7(z.expr.map((w)=>[...h4(w)]))}function*iZ(z){for(let w of z.expr)yield*h4(w)}function*yZ(z){return yield z.const}function*h4(z){return z.type==="and"?yield*cZ(z):z.type==="or"?yield*iZ(z):z.type==="const"?yield*yZ(z):(()=>{throw new B7("Unknown expression")})()}function A4(z){let w=X4(z.pattern);return g6(w)?[...h4(w)]:[]}function A0(z,w){return D({[H]:"Literal",const:z,type:typeof z},w)}function B5(z){return D({[H]:"Boolean",type:"boolean"},z)}function Z4(z){return D({[H]:"BigInt",type:"bigint"},z)}function m2(z){return D({[H]:"Number",type:"number"},z)}function G2(z){return D({[H]:"String",type:"string"},z)}function*vZ(z){let w=z.trim().replace(/"|'/g,"");return w==="boolean"?yield B5():w==="number"?yield m2():w==="bigint"?yield Z4():w==="string"?yield G2():yield(()=>{let U=w.split("|").map((W)=>A0(W.trim()));return U.length===0?p():U.length===1?U[0]:T1(U)})()}function*nZ(z){if(z[1]!=="{"){let w=A0("$"),U=Oz(z.slice(1));return yield*[w,...U]}for(let w=2;w<z.length;w++)if(z[w]==="}"){let U=vZ(z.slice(2,w)),W=Oz(z.slice(w+1));return yield*[...U,...W]}yield A0(z)}function*Oz(z){for(let w=0;w<z.length;w++)if(z[w]==="$"){let U=A0(z.slice(0,w)),W=nZ(z.slice(w));return yield*[U,...W]}yield A0(z)}function q7(z){return[...Oz(z)]}class L7 extends n{}function uZ(z){return z.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function N7(z,w){return d2(z)?z.pattern.slice(1,z.pattern.length-1):$0(z)?`(${z.anyOf.map((U)=>N7(U,w)).join("|")})`:q1(z)?`${w}${Q5}`:M1(z)?`${w}${Q5}`:x6(z)?`${w}${Q5}`:u1(z)?`${w}${w7}`:g2(z)?`${w}${uZ(z.const.toString())}`:n1(z)?`${w}${z7}`:(()=>{throw new L7(`Unexpected Kind '${z[H]}'`)})()}function Rz(z){return`^${z.map((w)=>N7(w,"")).join("")}$`}function f6(z){let U=A4(z).map((W)=>A0(W));return T1(U)}function M5(z,w){let U=F0(z)?Rz(q7(z)):Rz(z);return D({[H]:"TemplateLiteral",type:"string",pattern:U},w)}function mZ(z){return A4(z).map((U)=>U.toString())}function tZ(z){let w=[];for(let U of z)w.push(...D2(U));return w}function oZ(z){return[z.toString()]}function D2(z){return[...new Set(d2(z)?mZ(z):$0(z)?tZ(z.anyOf):g2(z)?oZ(z.const):q1(z)?["[number]"]:M1(z)?["[number]"]:[])]}function pZ(z,w,U){let W={};for(let X of Object.getOwnPropertyNames(w))W[X]=M6(z,D2(w[X]),U);return W}function lZ(z,w,U){return pZ(z,w.properties,U)}function G7(z,w,U){let W=lZ(z,w,U);return Y0(W)}function _7(z,w){return z.map((U)=>S7(U,w))}function sZ(z){return z.filter((w)=>!Q6(w))}function rZ(z,w){return q5(sZ(_7(z,w)))}function aZ(z){return z.some((w)=>Q6(w))?[]:z}function eZ(z,w){return T1(aZ(_7(z,w)))}function z$(z,w){return w in z?z[w]:w==="[number]"?T1(z):p()}function w$(z,w){return w==="[number]"?z:p()}function U$(z,w){return w in z?z[w]:p()}function S7(z,w){return i0(z)?rZ(z.allOf,w):$0(z)?eZ(z.anyOf,w):h2(z)?z$(z.items??[],w):Y1(z)?w$(z.items,w):o0(z)?U$(z.properties,w):p()}function c4(z,w){return w.map((U)=>S7(z,U))}function H7(z,w){return T1(c4(z,w))}function M6(z,w,U){if(u0(z)||u0(w)){if(!f0(z)||!f0(w))throw new n("Index types using Ref parameters require both Type and Key to be of TSchema");return x0("Index",[z,w])}if(T0(w))return G7(z,w,U);if(f2(w))return D7(z,w,U);return D(f0(w)?H7(z,D2(w)):H7(z,w),U)}function W$(z,w,U){return{[w]:M6(z,[w],V0(U))}}function X$(z,w,U){return w.reduce((W,X)=>{return{...W,...W$(z,X,U)}},{})}function A$(z,w,U){return X$(z,w.keys,U)}function D7(z,w,U){let W=A$(z,w,U);return Y0(W)}function $4(z,w){return D({[H]:"Iterator",type:"Iterator",items:z},w)}function Z$(z){let w=[];for(let U in z)if(!S2(z[U]))w.push(U);return w}function $$(z,w){let U=Z$(z),W=U.length>0?{[H]:"Object",type:"object",properties:z,required:U}:{[H]:"Object",type:"object",properties:z};return D(W,w)}var L0=$$;function L5(z,w){return D({[H]:"Promise",type:"Promise",item:z},w)}function Y$(z){return D(y0(z,[$1]))}function Q$(z){return D({...z,[$1]:"Readonly"})}function J$(z,w){return w===!1?Y$(z):Q$(z)}function P2(z,w){let U=w??!0;return T0(z)?P7(z,U):J$(z,U)}function B$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=P2(z[W],w);return U}function M$(z,w){return B$(z.properties,w)}function P7(z,w){let U=M$(z,w);return Y0(U)}function t2(z,w){return D(z.length>0?{[H]:"Tuple",type:"array",items:z,additionalItems:!1,minItems:z.length,maxItems:z.length}:{[H]:"Tuple",type:"array",minItems:z.length,maxItems:z.length},w)}function O7(z,w){return z in w?o2(z,w[z]):Y0(w)}function q$(z){return{[z]:A0(z)}}function L$(z){let w={};for(let U of z)w[U]=A0(U);return w}function N$(z,w){return W7(w,z)?q$(z):L$(w)}function G$(z,w){let U=N$(z,w);return O7(z,U)}function i4(z,w){return w.map((U)=>o2(z,U))}function H$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(w))U[W]=o2(z,w[W]);return U}function o2(z,w){let U={...w};return S2(w)?J2(o2(z,y0(w,[A2]))):r6(w)?P2(o2(z,y0(w,[$1]))):T0(w)?O7(z,w.properties):f2(w)?G$(z,w.keys):J1(w)?U4(i4(z,w.parameters),o2(z,w.returns),U):B1(w)?k1(i4(z,w.parameters),o2(z,w.returns),U):E6(w)?w4(o2(z,w.items),U):V6(w)?$4(o2(z,w.items),U):i0(w)?B2(i4(z,w.allOf),U):$0(w)?q0(i4(z,w.anyOf),U):h2(w)?t2(i4(z,w.items??[]),U):o0(w)?L0(H$(z,w.properties),U):Y1(w)?z4(o2(z,w.items),U):k6(w)?L5(o2(z,w.item),U):w}function _$(z,w){let U={};for(let W of z)U[W]=o2(W,w);return U}function R7(z,w,U){let W=f0(z)?D2(z):z,X=w({[H]:"MappedKey",keys:W}),A=_$(W,X);return L0(A,U)}function S$(z){return D(y0(z,[A2]))}function D$(z){return D({...z,[A2]:"Optional"})}function P$(z,w){return w===!1?S$(z):D$(z)}function J2(z,w){let U=w??!0;return T0(z)?C7(z,U):P$(z,U)}function O$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=J2(z[W],w);return U}function R$(z,w){return O$(z.properties,w)}function C7(z,w){let U=R$(z,w);return Y0(U)}function y4(z,w={}){let U=z.every((X)=>o0(X)),W=f0(w.unevaluatedProperties)?{unevaluatedProperties:w.unevaluatedProperties}:{};return D(w.unevaluatedProperties===!1||f0(w.unevaluatedProperties)||U?{...W,[H]:"Intersect",type:"object",allOf:z}:{...W,[H]:"Intersect",allOf:z},w)}function C$(z){return z.every((w)=>S2(w))}function b$(z){return y0(z,[A2])}function b7(z){return z.map((w)=>S2(w)?b$(w):w)}function K$(z,w){return C$(z)?J2(y4(b7(z),w)):y4(b7(z),w)}function q5(z,w={}){if(z.length===1)return D(z[0],w);if(z.length===0)return p(w);if(z.some((U)=>M0(U)))throw new Error("Cannot intersect transform types");return K$(z,w)}function B2(z,w){if(z.length===1)return D(z[0],w);if(z.length===0)return p(w);if(z.some((U)=>M0(U)))throw new Error("Cannot intersect transform types");return y4(z,w)}function p2(...z){let[w,U]=typeof z[0]==="string"?[z[0],z[1]]:[z[0].$id,z[1]];if(typeof w!=="string")throw new n("Ref: $ref must be a string");return D({[H]:"Ref",$ref:w},U)}function F$(z,w){return x0("Awaited",[x0(z,w)])}function j$(z){return x0("Awaited",[p2(z)])}function I$(z){return B2(K7(z))}function E$(z){return q0(K7(z))}function x$(z){return Y4(z)}function K7(z){return z.map((w)=>Y4(w))}function Y4(z,w){return D(Q1(z)?F$(z.target,z.parameters):i0(z)?I$(z.allOf):$0(z)?E$(z.anyOf):k6(z)?x$(z.item):u0(z)?j$(z.$ref):z,w)}function F7(z){let w=[];for(let U of z)w.push(O2(U));return w}function V$(z){let w=F7(z);return Z7(w)}function k$(z){let w=F7(z);return A7(w)}function T$(z){return z.map((w,U)=>U.toString())}function g$(z){return["[number]"]}function f$(z){return globalThis.Object.getOwnPropertyNames(z)}function d$(z){if(!Cz)return[];return globalThis.Object.getOwnPropertyNames(z).map((U)=>{return U[0]==="^"&&U[U.length-1]==="$"?U.slice(1,U.length-1):U})}function O2(z){return i0(z)?V$(z.allOf):$0(z)?k$(z.anyOf):h2(z)?T$(z.items??[]):Y1(z)?g$(z.items):o0(z)?f$(z.properties):T6(z)?d$(z.patternProperties):[]}var Cz=!1;function p1(z){Cz=!0;let w=O2(z);return Cz=!1,`^(${w.map((W)=>`(${W})`).join("|")})$`}function h$(z,w){return x0("KeyOf",[x0(z,w)])}function c$(z){return x0("KeyOf",[p2(z)])}function i$(z,w){let U=O2(z),W=y$(U),X=T1(W);return D(X,w)}function y$(z){return z.map((w)=>w==="[number]"?m2():A0(w))}function Q4(z,w){return Q1(z)?h$(z.target,z.parameters):u0(z)?c$(z.$ref):T0(z)?j7(z,w):i$(z,w)}function v$(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=Q4(z[W],V0(w));return U}function n$(z,w){return v$(z.properties,w)}function j7(z,w){let U=n$(z,w);return Y0(U)}function N5(z){let w=O2(z),U=c4(z,w);return w.map((W,X)=>[w[X],U[X]])}function u$(z){let w=[];for(let U of z)w.push(...O2(U));return X7(w)}function m$(z){return z.filter((w)=>!Q6(w))}function t$(z,w){let U=[];for(let W of z)U.push(...c4(W,[w]));return m$(U)}function o$(z,w){let U={};for(let W of w)U[W]=q5(t$(z,W));return U}function I7(z,w){let U=u$(z),W=o$(z,U);return L0(W,w)}function G5(z){return D({[H]:"Date",type:"Date"},z)}function H5(z){return D({[H]:"Null",type:"null"},z)}function _5(z){return D({[H]:"Symbol",type:"symbol"},z)}function S5(z){return D({[H]:"Undefined",type:"undefined"},z)}function D5(z){return D({[H]:"Uint8Array",type:"Uint8Array"},z)}function L1(z){return D({[H]:"Unknown"},z)}function p$(z){return z.map((w)=>bz(w,!1))}function l$(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=P2(bz(z[U],!1));return w}function P5(z,w){return w===!0?z:P2(z)}function bz(z,w){return Yz(z)?P5(B6(),w):Jz(z)?P5(B6(),w):m0(z)?P2(t2(p$(z))):i1(z)?D5():I6(z)?G5():P0(z)?P5(L0(l$(z)),w):Qz(z)?P5(k1([],L1()),w):t0(z)?S5():Bz(z)?H5():Mz(z)?_5():I4(z)?Z4():k2(z)?A0(z):c1(z)?A0(z):F0(z)?A0(z):L0({})}function E7(z,w){return D(bz(z,!0),w)}function x7(z,w){return J1(z)?t2(z.parameters,w):p(w)}function V7(z,w){if(t0(z))throw new Error("Enum undefined or empty");let U=globalThis.Object.getOwnPropertyNames(z).filter((A)=>isNaN(A)).map((A)=>z[A]),X=[...new Set(U)].map((A)=>A0(A));return q0(X,{...w,[u2]:"Enum"})}class d7 extends n{}var P;(function(z){z[z.Union=0]="Union",z[z.True=1]="True",z[z.False=2]="False"})(P||(P={}));function l2(z){return z===P.False?z:P.True}function J4(z){throw new d7(z)}function l0(z){return q.IsNever(z)||q.IsIntersect(z)||q.IsUnion(z)||q.IsUnknown(z)||q.IsAny(z)}function s0(z,w){return q.IsNever(w)?i7(z,w):q.IsIntersect(w)?O5(z,w):q.IsUnion(w)?Ez(z,w):q.IsUnknown(w)?u7(z,w):q.IsAny(w)?Iz(z,w):J4("StructuralRight")}function Iz(z,w){return P.True}function s$(z,w){return q.IsIntersect(w)?O5(z,w):q.IsUnion(w)&&w.anyOf.some((U)=>q.IsAny(U)||q.IsUnknown(U))?P.True:q.IsUnion(w)?P.Union:q.IsUnknown(w)?P.True:q.IsAny(w)?P.True:P.Union}function r$(z,w){return q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:q.IsNever(z)?P.True:P.False}function a$(z,w){return q.IsObject(w)&&R5(w)?P.True:l0(w)?s0(z,w):!q.IsArray(w)?P.False:l2(R0(z.items,w.items))}function e$(z,w){return l0(w)?s0(z,w):!q.IsAsyncIterator(w)?P.False:l2(R0(z.items,w.items))}function zY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsBigInt(w)?P.True:P.False}function h7(z,w){return q.IsLiteralBoolean(z)?P.True:q.IsBoolean(z)?P.True:P.False}function wY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsBoolean(w)?P.True:P.False}function UY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsConstructor(w)?P.False:z.parameters.length>w.parameters.length?P.False:!z.parameters.every((U,W)=>l2(R0(w.parameters[W],U))===P.True)?P.False:l2(R0(z.returns,w.returns))}function WY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsDate(w)?P.True:P.False}function XY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsFunction(w)?P.False:z.parameters.length>w.parameters.length?P.False:!z.parameters.every((U,W)=>l2(R0(w.parameters[W],U))===P.True)?P.False:l2(R0(z.returns,w.returns))}function c7(z,w){return q.IsLiteral(z)&&Q2.IsNumber(z.const)?P.True:q.IsNumber(z)||q.IsInteger(z)?P.True:P.False}function AY(z,w){return q.IsInteger(w)||q.IsNumber(w)?P.True:l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):P.False}function O5(z,w){return w.allOf.every((U)=>R0(z,U)===P.True)?P.True:P.False}function ZY(z,w){return z.allOf.some((U)=>R0(U,w)===P.True)?P.True:P.False}function $Y(z,w){return l0(w)?s0(z,w):!q.IsIterator(w)?P.False:l2(R0(z.items,w.items))}function YY(z,w){return q.IsLiteral(w)&&w.const===z.const?P.True:l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsString(w)?n7(z,w):q.IsNumber(w)?y7(z,w):q.IsInteger(w)?c7(z,w):q.IsBoolean(w)?h7(z,w):P.False}function i7(z,w){return P.False}function QY(z,w){return P.True}function k7(z){let[w,U]=[z,0];while(!0){if(!q.IsNot(w))break;w=w.not,U+=1}return U%2===0?w:L1()}function JY(z,w){return q.IsNot(z)?R0(k7(z),w):q.IsNot(w)?R0(z,k7(w)):J4("Invalid fallthrough for Not")}function BY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsNull(w)?P.True:P.False}function y7(z,w){return q.IsLiteralNumber(z)?P.True:q.IsNumber(z)||q.IsInteger(z)?P.True:P.False}function MY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsInteger(w)||q.IsNumber(w)?P.True:P.False}function R2(z,w){return Object.getOwnPropertyNames(z.properties).length===w}function T7(z){return R5(z)}function g7(z){return R2(z,0)||R2(z,1)&&"description"in z.properties&&q.IsUnion(z.properties.description)&&z.properties.description.anyOf.length===2&&(q.IsString(z.properties.description.anyOf[0])&&q.IsUndefined(z.properties.description.anyOf[1])||q.IsString(z.properties.description.anyOf[1])&&q.IsUndefined(z.properties.description.anyOf[0]))}function Kz(z){return R2(z,0)}function f7(z){return R2(z,0)}function qY(z){return R2(z,0)}function LY(z){return R2(z,0)}function NY(z){return R5(z)}function GY(z){let w=m2();return R2(z,0)||R2(z,1)&&"length"in z.properties&&l2(R0(z.properties.length,w))===P.True}function HY(z){return R2(z,0)}function R5(z){let w=m2();return R2(z,0)||R2(z,1)&&"length"in z.properties&&l2(R0(z.properties.length,w))===P.True}function _Y(z){let w=k1([B6()],B6());return R2(z,0)||R2(z,1)&&"then"in z.properties&&l2(R0(z.properties.then,w))===P.True}function v7(z,w){return R0(z,w)===P.False?P.False:q.IsOptional(z)&&!q.IsOptional(w)?P.False:P.True}function M2(z,w){return q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:q.IsNever(z)||q.IsLiteralString(z)&&T7(w)||q.IsLiteralNumber(z)&&Kz(w)||q.IsLiteralBoolean(z)&&f7(w)||q.IsSymbol(z)&&g7(w)||q.IsBigInt(z)&&qY(w)||q.IsString(z)&&T7(w)||q.IsSymbol(z)&&g7(w)||q.IsNumber(z)&&Kz(w)||q.IsInteger(z)&&Kz(w)||q.IsBoolean(z)&&f7(w)||q.IsUint8Array(z)&&NY(w)||q.IsDate(z)&&LY(w)||q.IsConstructor(z)&&HY(w)||q.IsFunction(z)&&GY(w)?P.True:q.IsRecord(z)&&q.IsString(Fz(z))?(()=>{return w[u2]==="Record"?P.True:P.False})():q.IsRecord(z)&&q.IsNumber(Fz(z))?(()=>{return R2(w,0)?P.True:P.False})():P.False}function SY(z,w){return l0(w)?s0(z,w):q.IsRecord(w)?s2(z,w):!q.IsObject(w)?P.False:(()=>{for(let U of Object.getOwnPropertyNames(w.properties)){if(!(U in z.properties)&&!q.IsOptional(w.properties[U]))return P.False;if(q.IsOptional(w.properties[U]))return P.True;if(v7(z.properties[U],w.properties[U])===P.False)return P.False}return P.True})()}function DY(z,w){return l0(w)?s0(z,w):q.IsObject(w)&&_Y(w)?P.True:!q.IsPromise(w)?P.False:l2(R0(z.item,w.item))}function Fz(z){return x1 in z.patternProperties?m2():(V1 in z.patternProperties)?G2():J4("Unknown record key pattern")}function jz(z){return x1 in z.patternProperties?z.patternProperties[x1]:(V1 in z.patternProperties)?z.patternProperties[V1]:J4("Unable to get record value schema")}function s2(z,w){let[U,W]=[Fz(w),jz(w)];return q.IsLiteralString(z)&&q.IsNumber(U)&&l2(R0(z,W))===P.True?P.True:q.IsUint8Array(z)&&q.IsNumber(U)?R0(z,W):q.IsString(z)&&q.IsNumber(U)?R0(z,W):q.IsArray(z)&&q.IsNumber(U)?R0(z,W):q.IsObject(z)?(()=>{for(let X of Object.getOwnPropertyNames(z.properties))if(v7(W,z.properties[X])===P.False)return P.False;return P.True})():P.False}function PY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):!q.IsRecord(w)?P.False:R0(jz(z),jz(w))}function OY(z,w){let U=q.IsRegExp(z)?G2():z,W=q.IsRegExp(w)?G2():w;return R0(U,W)}function n7(z,w){return q.IsLiteral(z)&&Q2.IsString(z.const)?P.True:q.IsString(z)?P.True:P.False}function RY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsString(w)?P.True:P.False}function CY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsSymbol(w)?P.True:P.False}function bY(z,w){return q.IsTemplateLiteral(z)?R0(f6(z),w):q.IsTemplateLiteral(w)?R0(z,f6(w)):J4("Invalid fallthrough for TemplateLiteral")}function KY(z,w){return q.IsArray(w)&&z.items!==void 0&&z.items.every((U)=>R0(U,w.items)===P.True)}function FY(z,w){return q.IsNever(z)?P.True:q.IsUnknown(z)?P.False:q.IsAny(z)?P.Union:P.False}function jY(z,w){return l0(w)?s0(z,w):q.IsObject(w)&&R5(w)?P.True:q.IsArray(w)&&KY(z,w)?P.True:!q.IsTuple(w)?P.False:Q2.IsUndefined(z.items)&&!Q2.IsUndefined(w.items)||!Q2.IsUndefined(z.items)&&Q2.IsUndefined(w.items)?P.False:Q2.IsUndefined(z.items)&&!Q2.IsUndefined(w.items)?P.True:z.items.every((U,W)=>R0(U,w.items[W])===P.True)?P.True:P.False}function IY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsUint8Array(w)?P.True:P.False}function EY(z,w){return l0(w)?s0(z,w):q.IsObject(w)?M2(z,w):q.IsRecord(w)?s2(z,w):q.IsVoid(w)?kY(z,w):q.IsUndefined(w)?P.True:P.False}function Ez(z,w){return w.anyOf.some((U)=>R0(z,U)===P.True)?P.True:P.False}function xY(z,w){return z.anyOf.every((U)=>R0(U,w)===P.True)?P.True:P.False}function u7(z,w){return P.True}function VY(z,w){return q.IsNever(w)?i7(z,w):q.IsIntersect(w)?O5(z,w):q.IsUnion(w)?Ez(z,w):q.IsAny(w)?Iz(z,w):q.IsString(w)?n7(z,w):q.IsNumber(w)?y7(z,w):q.IsInteger(w)?c7(z,w):q.IsBoolean(w)?h7(z,w):q.IsArray(w)?r$(z,w):q.IsTuple(w)?FY(z,w):q.IsObject(w)?M2(z,w):q.IsUnknown(w)?P.True:P.False}function kY(z,w){return q.IsUndefined(z)?P.True:q.IsUndefined(z)?P.True:P.False}function TY(z,w){return q.IsIntersect(w)?O5(z,w):q.IsUnion(w)?Ez(z,w):q.IsUnknown(w)?u7(z,w):q.IsAny(w)?Iz(z,w):q.IsObject(w)?M2(z,w):q.IsVoid(w)?P.True:P.False}function R0(z,w){return q.IsTemplateLiteral(z)||q.IsTemplateLiteral(w)?bY(z,w):q.IsRegExp(z)||q.IsRegExp(w)?OY(z,w):q.IsNot(z)||q.IsNot(w)?JY(z,w):q.IsAny(z)?s$(z,w):q.IsArray(z)?a$(z,w):q.IsBigInt(z)?zY(z,w):q.IsBoolean(z)?wY(z,w):q.IsAsyncIterator(z)?e$(z,w):q.IsConstructor(z)?UY(z,w):q.IsDate(z)?WY(z,w):q.IsFunction(z)?XY(z,w):q.IsInteger(z)?AY(z,w):q.IsIntersect(z)?ZY(z,w):q.IsIterator(z)?$Y(z,w):q.IsLiteral(z)?YY(z,w):q.IsNever(z)?QY(z,w):q.IsNull(z)?BY(z,w):q.IsNumber(z)?MY(z,w):q.IsObject(z)?SY(z,w):q.IsRecord(z)?PY(z,w):q.IsString(z)?RY(z,w):q.IsSymbol(z)?CY(z,w):q.IsTuple(z)?jY(z,w):q.IsPromise(z)?DY(z,w):q.IsUint8Array(z)?IY(z,w):q.IsUndefined(z)?EY(z,w):q.IsUnion(z)?xY(z,w):q.IsUnknown(z)?VY(z,w):q.IsVoid(z)?TY(z,w):J4(`Unknown left type operand '${z[H]}'`)}function q6(z,w){return R0(z,w)}function gY(z,w,U,W,X){let A={};for(let Z of globalThis.Object.getOwnPropertyNames(z))A[Z]=B4(z[Z],w,U,W,V0(X));return A}function fY(z,w,U,W,X){return gY(z.properties,w,U,W,X)}function m7(z,w,U,W,X){let A=fY(z,w,U,W,X);return Y0(A)}function dY(z,w,U,W){let X=q6(z,w);return X===P.Union?q0([U,W]):X===P.True?U:W}function B4(z,w,U,W,X){return T0(z)?m7(z,w,U,W,X):f2(z)?D(t7(z,w,U,W,X)):D(dY(z,w,U,W),X)}function hY(z,w,U,W,X){return{[z]:B4(A0(z),w,U,W,V0(X))}}function cY(z,w,U,W,X){return z.reduce((A,Z)=>{return{...A,...hY(Z,w,U,W,X)}},{})}function iY(z,w,U,W,X){return cY(z.keys,w,U,W,X)}function t7(z,w,U,W,X){let A=iY(z,w,U,W,X);return Y0(A)}function yY(z){return z.allOf.every((w)=>l1(w))}function vY(z){return z.anyOf.some((w)=>l1(w))}function nY(z){return!l1(z.not)}function l1(z){return z[H]==="Intersect"?yY(z):z[H]==="Union"?vY(z):z[H]==="Not"?nY(z):z[H]==="Undefined"?!0:!1}function o7(z,w){return M4(f6(z),w)}function uY(z,w){let U=z.filter((W)=>q6(W,w)===P.False);return U.length===1?U[0]:q0(U)}function M4(z,w,U={}){if(d2(z))return D(o7(z,w),U);if(T0(z))return D(p7(z,w),U);return D($0(z)?uY(z.anyOf,w):q6(z,w)!==P.False?p():z,U)}function mY(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=M4(z[W],w);return U}function tY(z,w){return mY(z.properties,w)}function p7(z,w){let U=tY(z,w);return Y0(U)}function l7(z,w){return q4(f6(z),w)}function oY(z,w){let U=z.filter((W)=>q6(W,w)!==P.False);return U.length===1?U[0]:q0(U)}function q4(z,w,U){if(d2(z))return D(l7(z,w),U);if(T0(z))return D(s7(z,w),U);return D($0(z)?oY(z.anyOf,w):q6(z,w)!==P.False?z:p(),U)}function pY(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=q4(z[W],w);return U}function lY(z,w){return pY(z.properties,w)}function s7(z,w){let U=lY(z,w);return Y0(U)}function r7(z,w){return J1(z)?D(z.returns,w):p(w)}function C5(z){return P2(J2(z))}function d6(z,w,U){return D({[H]:"Record",type:"object",patternProperties:{[z]:w}},U)}function xz(z,w,U){let W={};for(let X of z)W[X]=w;return L0(W,{...U,[u2]:"Record"})}function sY(z,w,U){return J5(z)?xz(D2(z),w,U):d6(z.pattern,w,U)}function rY(z,w,U){return xz(D2(q0(z)),w,U)}function aY(z,w,U){return xz([z.toString()],w,U)}function eY(z,w,U){return d6(z.source,w,U)}function zQ(z,w,U){let W=t0(z.pattern)?V1:z.pattern;return d6(W,w,U)}function wQ(z,w,U){return d6(V1,w,U)}function UQ(z,w,U){return d6(U7,w,U)}function WQ(z,w,U){return L0({true:w,false:w},U)}function XQ(z,w,U){return d6(x1,w,U)}function AQ(z,w,U){return d6(x1,w,U)}function b5(z,w,U={}){return $0(z)?rY(z.anyOf,w,U):d2(z)?sY(z,w,U):g2(z)?aY(z.const,w,U):n1(z)?WQ(z,w,U):M1(z)?XQ(z,w,U):q1(z)?AQ(z,w,U):Gz(z)?eY(z,w,U):u1(z)?zQ(z,w,U):Lz(z)?wQ(z,w,U):Q6(z)?UQ(z,w,U):p(U)}function K5(z){return globalThis.Object.getOwnPropertyNames(z.patternProperties)[0]}function a7(z){let w=K5(z);return w===V1?G2():w===x1?m2():G2({pattern:w})}function F5(z){return z.patternProperties[K5(z)]}function ZQ(z,w){return w.parameters=v4(z,w.parameters),w.returns=N1(z,w.returns),w}function $Q(z,w){return w.parameters=v4(z,w.parameters),w.returns=N1(z,w.returns),w}function YQ(z,w){return w.allOf=v4(z,w.allOf),w}function QQ(z,w){return w.anyOf=v4(z,w.anyOf),w}function JQ(z,w){if(t0(w.items))return w;return w.items=v4(z,w.items),w}function BQ(z,w){return w.items=N1(z,w.items),w}function MQ(z,w){return w.items=N1(z,w.items),w}function qQ(z,w){return w.items=N1(z,w.items),w}function LQ(z,w){return w.item=N1(z,w.item),w}function NQ(z,w){let U=SQ(z,w.properties);return{...w,...L0(U)}}function GQ(z,w){let U=N1(z,a7(w)),W=N1(z,F5(w)),X=b5(U,W);return{...w,...X}}function HQ(z,w){return w.index in z?z[w.index]:L1()}function _Q(z,w){let U=r6(w),W=S2(w),X=N1(z,w);return U&&W?C5(X):U&&!W?P2(X):!U&&W?J2(X):X}function SQ(z,w){return globalThis.Object.getOwnPropertyNames(w).reduce((U,W)=>{return{...U,[W]:_Q(z,w[W])}},{})}function v4(z,w){return w.map((U)=>N1(z,U))}function N1(z,w){return J1(w)?ZQ(z,w):B1(w)?$Q(z,w):i0(w)?YQ(z,w):$0(w)?QQ(z,w):h2(w)?JQ(z,w):Y1(w)?BQ(z,w):E6(w)?MQ(z,w):V6(w)?qQ(z,w):k6(w)?LQ(z,w):o0(w)?NQ(z,w):T6(w)?GQ(z,w):Nz(w)?HQ(z,w):w}function e7(z,w){return N1(w,l6(z))}function zU(z){return D({[H]:"Integer",type:"integer"},z)}function DQ(z,w,U){return{[z]:G1(A0(z),w,V0(U))}}function PQ(z,w,U){return z.reduce((X,A)=>{return{...X,...DQ(A,w,U)}},{})}function OQ(z,w,U){return PQ(z.keys,w,U)}function wU(z,w,U){let W=OQ(z,w,U);return Y0(W)}function RQ(z){let[w,U]=[z.slice(0,1),z.slice(1)];return[w.toLowerCase(),U].join("")}function CQ(z){let[w,U]=[z.slice(0,1),z.slice(1)];return[w.toUpperCase(),U].join("")}function bQ(z){return z.toUpperCase()}function KQ(z){return z.toLowerCase()}function FQ(z,w,U){let W=X4(z.pattern);if(!g6(W))return{...z,pattern:UU(z.pattern,w)};let Z=[...h4(W)].map((Q)=>A0(Q)),$=WU(Z,w),Y=q0($);return M5([Y],U)}function UU(z,w){return typeof z==="string"?w==="Uncapitalize"?RQ(z):w==="Capitalize"?CQ(z):w==="Uppercase"?bQ(z):w==="Lowercase"?KQ(z):z:z.toString()}function WU(z,w){return z.map((U)=>G1(U,w))}function G1(z,w,U={}){return f2(z)?wU(z,w,U):d2(z)?FQ(z,w,U):$0(z)?q0(WU(z.anyOf,w),U):g2(z)?A0(UU(z.const,w),U):D(z,U)}function XU(z,w={}){return G1(z,"Capitalize",w)}function AU(z,w={}){return G1(z,"Lowercase",w)}function ZU(z,w={}){return G1(z,"Uncapitalize",w)}function $U(z,w={}){return G1(z,"Uppercase",w)}function jQ(z,w,U){let W={};for(let X of globalThis.Object.getOwnPropertyNames(z))W[X]=L6(z[X],w,V0(U));return W}function IQ(z,w,U){return jQ(z.properties,w,U)}function YU(z,w,U){let W=IQ(z,w,U);return Y0(W)}function EQ(z,w){return z.map((U)=>Vz(U,w))}function xQ(z,w){return z.map((U)=>Vz(U,w))}function VQ(z,w){let{[w]:U,...W}=z;return W}function kQ(z,w){return w.reduce((U,W)=>VQ(U,W),z)}function TQ(z,w){let U=y0(z,[j0,"$id","required","properties"]),W=kQ(z.properties,w);return L0(W,U)}function gQ(z){let w=z.reduce((U,W)=>$5(W)?[...U,A0(W)]:U,[]);return q0(w)}function Vz(z,w){return i0(z)?B2(EQ(z.allOf,w)):$0(z)?q0(xQ(z.anyOf,w)):o0(z)?TQ(z,w):L0({})}function L6(z,w,U){let W=m0(w)?gQ(w):w,X=f0(w)?D2(w):w,A=u0(z),Z=u0(w);return T0(z)?YU(z,X,U):f2(w)?QU(z,w,U):A&&Z?x0("Omit",[z,W],U):!A&&Z?x0("Omit",[z,W],U):A&&!Z?x0("Omit",[z,W],U):D({...Vz(z,X),...U})}function fQ(z,w,U){return{[w]:L6(z,[w],V0(U))}}function dQ(z,w,U){return w.reduce((W,X)=>{return{...W,...fQ(z,X,U)}},{})}function hQ(z,w,U){return dQ(z,w.keys,U)}function QU(z,w,U){let W=hQ(z,w,U);return Y0(W)}function cQ(z,w,U){let W={};for(let X of globalThis.Object.getOwnPropertyNames(z))W[X]=N6(z[X],w,V0(U));return W}function iQ(z,w,U){return cQ(z.properties,w,U)}function JU(z,w,U){let W=iQ(z,w,U);return Y0(W)}function yQ(z,w){return z.map((U)=>kz(U,w))}function vQ(z,w){return z.map((U)=>kz(U,w))}function nQ(z,w){let U={};for(let W of w)if(W in z)U[W]=z[W];return U}function uQ(z,w){let U=y0(z,[j0,"$id","required","properties"]),W=nQ(z.properties,w);return L0(W,U)}function mQ(z){let w=z.reduce((U,W)=>$5(W)?[...U,A0(W)]:U,[]);return q0(w)}function kz(z,w){return i0(z)?B2(yQ(z.allOf,w)):$0(z)?q0(vQ(z.anyOf,w)):o0(z)?uQ(z,w):L0({})}function N6(z,w,U){let W=m0(w)?mQ(w):w,X=f0(w)?D2(w):w,A=u0(z),Z=u0(w);return T0(z)?JU(z,X,U):f2(w)?BU(z,w,U):A&&Z?x0("Pick",[z,W],U):!A&&Z?x0("Pick",[z,W],U):A&&!Z?x0("Pick",[z,W],U):D({...kz(z,X),...U})}function tQ(z,w,U){return{[w]:N6(z,[w],V0(U))}}function oQ(z,w,U){return w.reduce((W,X)=>{return{...W,...tQ(z,X,U)}},{})}function pQ(z,w,U){return oQ(z,w.keys,U)}function BU(z,w,U){let W=pQ(z,w,U);return Y0(W)}function lQ(z,w){return x0("Partial",[x0(z,w)])}function sQ(z){return x0("Partial",[p2(z)])}function rQ(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=J2(z[U]);return w}function aQ(z){let w=y0(z,[j0,"$id","required","properties"]),U=rQ(z.properties);return L0(U,w)}function MU(z){return z.map((w)=>qU(w))}function qU(z){return Q1(z)?lQ(z.target,z.parameters):u0(z)?sQ(z.$ref):i0(z)?B2(MU(z.allOf)):$0(z)?q0(MU(z.anyOf)):o0(z)?aQ(z):x6(z)?z:n1(z)?z:M1(z)?z:g2(z)?z:V4(z)?z:q1(z)?z:u1(z)?z:k4(z)?z:m1(z)?z:L0({})}function L4(z,w){if(T0(z))return LU(z,w);else return D({...qU(z),...w})}function eQ(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=L4(z[W],V0(w));return U}function zJ(z,w){return eQ(z.properties,w)}function LU(z,w){let U=zJ(z,w);return Y0(U)}function wJ(z,w){return x0("Required",[x0(z,w)])}function UJ(z){return x0("Required",[p2(z)])}function WJ(z){let w={};for(let U of globalThis.Object.getOwnPropertyNames(z))w[U]=y0(z[U],[A2]);return w}function XJ(z){let w=y0(z,[j0,"$id","required","properties"]),U=WJ(z.properties);return L0(U,w)}function NU(z){return z.map((w)=>GU(w))}function GU(z){return Q1(z)?wJ(z.target,z.parameters):u0(z)?UJ(z.$ref):i0(z)?B2(NU(z.allOf)):$0(z)?q0(NU(z.anyOf)):o0(z)?XJ(z):x6(z)?z:n1(z)?z:M1(z)?z:g2(z)?z:V4(z)?z:q1(z)?z:u1(z)?z:k4(z)?z:m1(z)?z:L0({})}function N4(z,w){if(T0(z))return HU(z,w);else return D({...GU(z),...w})}function AJ(z,w){let U={};for(let W of globalThis.Object.getOwnPropertyNames(z))U[W]=N4(z[W],w);return U}function ZJ(z,w){return AJ(z.properties,w)}function HU(z,w){let U=ZJ(z,w);return Y0(U)}function $J(z,w){return w.map((U)=>{return u0(U)?Tz(z,U.$ref):c2(z,U)})}function Tz(z,w){return w in z?u0(z[w])?Tz(z,z[w].$ref):c2(z,z[w]):p()}function YJ(z){return Y4(z[0])}function QJ(z){return M6(z[0],z[1])}function JJ(z){return Q4(z[0])}function BJ(z){return L4(z[0])}function MJ(z){return L6(z[0],z[1])}function qJ(z){return N6(z[0],z[1])}function LJ(z){return N4(z[0])}function NJ(z,w,U){let W=$J(z,U);return w==="Awaited"?YJ(W):w==="Index"?QJ(W):w==="KeyOf"?JJ(W):w==="Partial"?BJ(W):w==="Omit"?MJ(W):w==="Pick"?qJ(W):w==="Required"?LJ(W):p()}function GJ(z,w){return z4(c2(z,w))}function HJ(z,w){return w4(c2(z,w))}function _J(z,w,U){return U4(n4(z,w),c2(z,U))}function SJ(z,w,U){return k1(n4(z,w),c2(z,U))}function DJ(z,w){return B2(n4(z,w))}function PJ(z,w){return $4(c2(z,w))}function OJ(z,w){return L0(globalThis.Object.keys(w).reduce((U,W)=>{return{...U,[W]:c2(z,w[W])}},{}))}function RJ(z,w){let[U,W]=[c2(z,F5(w)),K5(w)],X=l6(w);return X.patternProperties[W]=U,X}function CJ(z,w){return u0(w)?{...Tz(z,w.$ref),[j0]:w[j0]}:w}function bJ(z,w){return t2(n4(z,w))}function KJ(z,w){return q0(n4(z,w))}function n4(z,w){return w.map((U)=>c2(z,U))}function c2(z,w){return S2(w)?D(c2(z,y0(w,[A2])),w):r6(w)?D(c2(z,y0(w,[$1])),w):M0(w)?D(CJ(z,w),w):Y1(w)?D(GJ(z,w.items),w):E6(w)?D(HJ(z,w.items),w):Q1(w)?D(NJ(z,w.target,w.parameters)):J1(w)?D(_J(z,w.parameters,w.returns),w):B1(w)?D(SJ(z,w.parameters,w.returns),w):i0(w)?D(DJ(z,w.allOf),w):V6(w)?D(PJ(z,w.items),w):o0(w)?D(OJ(z,w.properties),w):T6(w)?D(RJ(z,w)):h2(w)?D(bJ(z,w.items||[]),w):$0(w)?D(KJ(z,w.anyOf),w):w}function FJ(z,w){return w in z?c2(z,z[w]):p()}function _U(z){return globalThis.Object.getOwnPropertyNames(z).reduce((w,U)=>{return{...w,[U]:FJ(z,U)}},{})}class SU{constructor(z){let w=_U(z),U=this.WithIdentifiers(w);this.$defs=U}Import(z,w){let U={...this.$defs,[z]:D(this.$defs[z],w)};return D({[H]:"Import",$defs:U,$ref:z})}WithIdentifiers(z){return globalThis.Object.getOwnPropertyNames(z).reduce((w,U)=>{return{...w,[U]:{...z[U],$id:U}}},{})}}function DU(z){return new SU(z)}function PU(z,w){return D({[H]:"Not",not:z},w)}function OU(z,w){return B1(z)?t2(z.parameters,w):p()}var jJ=0;function RU(z,w={}){if(t0(w.$id))w.$id=`T${jJ++}`;let U=l6(z({[H]:"This",$ref:`${w.$id}`}));return U.$id=w.$id,D({[u2]:"Recursive",...U},w)}function CU(z,w){let U=F0(z)?new globalThis.RegExp(z):z;return D({[H]:"RegExp",type:"RegExp",source:U.source,flags:U.flags},w)}function IJ(z){return i0(z)?z.allOf:$0(z)?z.anyOf:h2(z)?z.items??[]:[]}function bU(z){return IJ(z)}function KU(z,w){return B1(z)?D(z.returns,w):p(w)}class FU{constructor(z){this.schema=z}Decode(z){return new jU(this.schema,z)}}class jU{constructor(z,w){this.schema=z,this.decode=w}EncodeTransform(z,w){let X={Encode:(A)=>w[j0].Encode(z(A)),Decode:(A)=>this.decode(w[j0].Decode(A))};return{...w,[j0]:X}}EncodeSchema(z,w){let U={Decode:this.decode,Encode:z};return{...w,[j0]:U}}Encode(z){return M0(this.schema)?this.EncodeTransform(z,this.schema):this.EncodeSchema(z,this.schema)}}function IU(z){return new FU(z)}function j5(z={}){return D({[H]:z[H]??"Unsafe"},z)}function EU(z){return D({[H]:"Void",type:"void"},z)}var gz={};K6(gz,{Void:()=>EU,Uppercase:()=>$U,Unsafe:()=>j5,Unknown:()=>L1,Union:()=>q0,Undefined:()=>S5,Uncapitalize:()=>ZU,Uint8Array:()=>D5,Tuple:()=>t2,Transform:()=>IU,TemplateLiteral:()=>M5,Symbol:()=>_5,String:()=>G2,ReturnType:()=>KU,Rest:()=>bU,Required:()=>N4,RegExp:()=>CU,Ref:()=>p2,Recursive:()=>RU,Record:()=>b5,ReadonlyOptional:()=>C5,Readonly:()=>P2,Promise:()=>L5,Pick:()=>N6,Partial:()=>L4,Parameters:()=>OU,Optional:()=>J2,Omit:()=>L6,Object:()=>L0,Number:()=>m2,Null:()=>H5,Not:()=>PU,Never:()=>p,Module:()=>DU,Mapped:()=>R7,Lowercase:()=>AU,Literal:()=>A0,KeyOf:()=>Q4,Iterator:()=>$4,Intersect:()=>B2,Integer:()=>zU,Instantiate:()=>e7,InstanceType:()=>r7,Index:()=>M6,Function:()=>k1,Extract:()=>q4,Extends:()=>B4,Exclude:()=>M4,Enum:()=>V7,Date:()=>G5,ConstructorParameters:()=>x7,Constructor:()=>U4,Const:()=>E7,Composite:()=>I7,Capitalize:()=>XU,Boolean:()=>B5,BigInt:()=>Z4,Awaited:()=>Y4,AsyncIterator:()=>w4,Array:()=>z4,Argument:()=>$7,Any:()=>B6});var G6=gz;function EJ(z){switch(z.errorType){case _.ArrayContains:return"Expected array to contain at least one matching value";case _.ArrayMaxContains:return`Expected array to contain no more than ${z.schema.maxContains} matching values`;case _.ArrayMinContains:return`Expected array to contain at least ${z.schema.minContains} matching values`;case _.ArrayMaxItems:return`Expected array length to be less or equal to ${z.schema.maxItems}`;case _.ArrayMinItems:return`Expected array length to be greater or equal to ${z.schema.minItems}`;case _.ArrayUniqueItems:return"Expected array elements to be unique";case _.Array:return"Expected array";case _.AsyncIterator:return"Expected AsyncIterator";case _.BigIntExclusiveMaximum:return`Expected bigint to be less than ${z.schema.exclusiveMaximum}`;case _.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${z.schema.exclusiveMinimum}`;case _.BigIntMaximum:return`Expected bigint to be less or equal to ${z.schema.maximum}`;case _.BigIntMinimum:return`Expected bigint to be greater or equal to ${z.schema.minimum}`;case _.BigIntMultipleOf:return`Expected bigint to be a multiple of ${z.schema.multipleOf}`;case _.BigInt:return"Expected bigint";case _.Boolean:return"Expected boolean";case _.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${z.schema.exclusiveMinimumTimestamp}`;case _.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${z.schema.exclusiveMaximumTimestamp}`;case _.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${z.schema.minimumTimestamp}`;case _.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${z.schema.maximumTimestamp}`;case _.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${z.schema.multipleOfTimestamp}`;case _.Date:return"Expected Date";case _.Function:return"Expected function";case _.IntegerExclusiveMaximum:return`Expected integer to be less than ${z.schema.exclusiveMaximum}`;case _.IntegerExclusiveMinimum:return`Expected integer to be greater than ${z.schema.exclusiveMinimum}`;case _.IntegerMaximum:return`Expected integer to be less or equal to ${z.schema.maximum}`;case _.IntegerMinimum:return`Expected integer to be greater or equal to ${z.schema.minimum}`;case _.IntegerMultipleOf:return`Expected integer to be a multiple of ${z.schema.multipleOf}`;case _.Integer:return"Expected integer";case _.IntersectUnevaluatedProperties:return"Unexpected property";case _.Intersect:return"Expected all values to match";case _.Iterator:return"Expected Iterator";case _.Literal:return`Expected ${typeof z.schema.const==="string"?`'${z.schema.const}'`:z.schema.const}`;case _.Never:return"Never";case _.Not:return"Value should not match";case _.Null:return"Expected null";case _.NumberExclusiveMaximum:return`Expected number to be less than ${z.schema.exclusiveMaximum}`;case _.NumberExclusiveMinimum:return`Expected number to be greater than ${z.schema.exclusiveMinimum}`;case _.NumberMaximum:return`Expected number to be less or equal to ${z.schema.maximum}`;case _.NumberMinimum:return`Expected number to be greater or equal to ${z.schema.minimum}`;case _.NumberMultipleOf:return`Expected number to be a multiple of ${z.schema.multipleOf}`;case _.Number:return"Expected number";case _.Object:return"Expected object";case _.ObjectAdditionalProperties:return"Unexpected property";case _.ObjectMaxProperties:return`Expected object to have no more than ${z.schema.maxProperties} properties`;case _.ObjectMinProperties:return`Expected object to have at least ${z.schema.minProperties} properties`;case _.ObjectRequiredProperty:return"Expected required property";case _.Promise:return"Expected Promise";case _.RegExp:return"Expected string to match regular expression";case _.StringFormatUnknown:return`Unknown format '${z.schema.format}'`;case _.StringFormat:return`Expected string to match '${z.schema.format}' format`;case _.StringMaxLength:return`Expected string length less or equal to ${z.schema.maxLength}`;case _.StringMinLength:return`Expected string length greater or equal to ${z.schema.minLength}`;case _.StringPattern:return`Expected string to match '${z.schema.pattern}'`;case _.String:return"Expected string";case _.Symbol:return"Expected symbol";case _.TupleLength:return`Expected tuple to have ${z.schema.maxItems||0} elements`;case _.Tuple:return"Expected tuple";case _.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${z.schema.maxByteLength}`;case _.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${z.schema.minByteLength}`;case _.Uint8Array:return"Expected Uint8Array";case _.Undefined:return"Expected undefined";case _.Union:return"Expected union value";case _.Void:return"Expected void";case _.Kind:return`Expected kind '${z.schema[H]}'`;default:return"Unknown error type"}}var xJ=EJ;function xU(){return xJ}class VU extends n{constructor(z){super(`Unable to dereference schema with $id '${z.$ref}'`);this.schema=z}}function VJ(z,w){let U=w.find((W)=>W.$id===z.$ref);if(U===void 0)throw new VU(z);return Q0(U,w)}function z2(z,w){if(!Z0(z.$id)||w.some((U)=>U.$id===z.$id))return w;return w.push(z),w}function Q0(z,w){return z[H]==="This"||z[H]==="Ref"?VJ(z,w):z}class kU extends n{constructor(z){super("Unable to hash value");this.value=z}}var i2;(function(z){z[z.Undefined=0]="Undefined",z[z.Null=1]="Null",z[z.Boolean=2]="Boolean",z[z.Number=3]="Number",z[z.String=4]="String",z[z.Object=5]="Object",z[z.Array=6]="Array",z[z.Date=7]="Date",z[z.Uint8Array=8]="Uint8Array",z[z.Symbol=9]="Symbol",z[z.BigInt=10]="BigInt"})(i2||(i2={}));var G4=BigInt("14695981039346656037"),[kJ,TJ]=[BigInt("1099511628211"),BigInt("18446744073709551616")],gJ=Array.from({length:256}).map((z,w)=>BigInt(w)),TU=new Float64Array(1),gU=new DataView(TU.buffer),fU=new Uint8Array(TU.buffer);function*fJ(z){let w=z===0?1:Math.ceil(Math.floor(Math.log2(z)+1)/8);for(let U=0;U<w;U++)yield z>>8*(w-1-U)&255}function dJ(z){q2(i2.Array);for(let w of z)H4(w)}function hJ(z){q2(i2.Boolean),q2(z?1:0)}function cJ(z){q2(i2.BigInt),gU.setBigInt64(0,z);for(let w of fU)q2(w)}function iJ(z){q2(i2.Date),H4(z.getTime())}function yJ(z){q2(i2.Null)}function vJ(z){q2(i2.Number),gU.setFloat64(0,z);for(let w of fU)q2(w)}function nJ(z){q2(i2.Object);for(let w of globalThis.Object.getOwnPropertyNames(z).sort())H4(w),H4(z[w])}function uJ(z){q2(i2.String);for(let w=0;w<z.length;w++)for(let U of fJ(z.charCodeAt(w)))q2(U)}function mJ(z){q2(i2.Symbol),H4(z.description)}function tJ(z){q2(i2.Uint8Array);for(let w=0;w<z.length;w++)q2(z[w])}function oJ(z){return q2(i2.Undefined)}function H4(z){if(m(z))return dJ(z);if(E1(z))return hJ(z);if(X2(z))return cJ(z);if(N2(z))return iJ(z);if(y1(z))return yJ(z);if(v(z))return vJ(z);if(l(z))return nJ(z);if(Z0(z))return uJ(z);if(v1(z))return mJ(z);if(s6(z))return tJ(z);if(k0(z))return oJ(z);throw new kU(z)}function q2(z){G4=G4^gJ[z],G4=G4*kJ%TJ}function H6(z){return G4=BigInt("14695981039346656037"),H4(z),G4}class dU extends n{constructor(z){super("Unknown type");this.schema=z}}function pJ(z){return z[H]==="Any"||z[H]==="Unknown"}function z0(z){return z!==void 0}function lJ(z,w,U){return!0}function sJ(z,w,U){return!0}function rJ(z,w,U){if(!m(U))return!1;if(z0(z.minItems)&&!(U.length>=z.minItems))return!1;if(z0(z.maxItems)&&!(U.length<=z.maxItems))return!1;if(!U.every((A)=>w2(z.items,w,A)))return!1;if(z.uniqueItems===!0&&!function(){let A=new Set;for(let Z of U){let $=H6(Z);if(A.has($))return!1;else A.add($)}return!0}())return!1;if(!(z0(z.contains)||v(z.minContains)||v(z.maxContains)))return!0;let W=z0(z.contains)?z.contains:p(),X=U.reduce((A,Z)=>w2(W,w,Z)?A+1:A,0);if(X===0)return!1;if(v(z.minContains)&&X<z.minContains)return!1;if(v(z.maxContains)&&X>z.maxContains)return!1;return!0}function aJ(z,w,U){return W5(U)}function eJ(z,w,U){if(!X2(U))return!1;if(z0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(z0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(z0(z.maximum)&&!(U<=z.maximum))return!1;if(z0(z.minimum)&&!(U>=z.minimum))return!1;if(z0(z.multipleOf)&&U%z.multipleOf!==BigInt(0))return!1;return!0}function zB(z,w,U){return E1(U)}function wB(z,w,U){return w2(z.returns,w,U.prototype)}function UB(z,w,U){if(!N2(U))return!1;if(z0(z.exclusiveMaximumTimestamp)&&!(U.getTime()<z.exclusiveMaximumTimestamp))return!1;if(z0(z.exclusiveMinimumTimestamp)&&!(U.getTime()>z.exclusiveMinimumTimestamp))return!1;if(z0(z.maximumTimestamp)&&!(U.getTime()<=z.maximumTimestamp))return!1;if(z0(z.minimumTimestamp)&&!(U.getTime()>=z.minimumTimestamp))return!1;if(z0(z.multipleOfTimestamp)&&U.getTime()%z.multipleOfTimestamp!==0)return!1;return!0}function WB(z,w,U){return Y6(U)}function XB(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return w2(X,[...w,...W],U)}function AB(z,w,U){if(!Z5(U))return!1;if(z0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(z0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(z0(z.maximum)&&!(U<=z.maximum))return!1;if(z0(z.minimum)&&!(U>=z.minimum))return!1;if(z0(z.multipleOf)&&U%z.multipleOf!==0)return!1;return!0}function ZB(z,w,U){let W=z.allOf.every((X)=>w2(X,w,U));if(z.unevaluatedProperties===!1){let X=new RegExp(p1(z)),A=Object.getOwnPropertyNames(U).every((Z)=>X.test(Z));return W&&A}else if(f0(z.unevaluatedProperties)){let X=new RegExp(p1(z)),A=Object.getOwnPropertyNames(U).every((Z)=>X.test(Z)||w2(z.unevaluatedProperties,w,U[Z]));return W&&A}else return W}function $B(z,w,U){return X5(U)}function YB(z,w,U){return U===z.const}function QB(z,w,U){return!1}function JB(z,w,U){return!w2(z.not,w,U)}function BB(z,w,U){return y1(U)}function MB(z,w,U){if(!E0.IsNumberLike(U))return!1;if(z0(z.exclusiveMaximum)&&!(U<z.exclusiveMaximum))return!1;if(z0(z.exclusiveMinimum)&&!(U>z.exclusiveMinimum))return!1;if(z0(z.minimum)&&!(U>=z.minimum))return!1;if(z0(z.maximum)&&!(U<=z.maximum))return!1;if(z0(z.multipleOf)&&U%z.multipleOf!==0)return!1;return!0}function qB(z,w,U){if(!E0.IsObjectLike(U))return!1;if(z0(z.minProperties)&&!(Object.getOwnPropertyNames(U).length>=z.minProperties))return!1;if(z0(z.maxProperties)&&!(Object.getOwnPropertyNames(U).length<=z.maxProperties))return!1;let W=Object.getOwnPropertyNames(z.properties);for(let X of W){let A=z.properties[X];if(z.required&&z.required.includes(X)){if(!w2(A,w,U[X]))return!1;if((l1(A)||pJ(A))&&!(X in U))return!1}else if(E0.IsExactOptionalProperty(U,X)&&!w2(A,w,U[X]))return!1}if(z.additionalProperties===!1){let X=Object.getOwnPropertyNames(U);if(z.required&&z.required.length===W.length&&X.length===W.length)return!0;else return X.every((A)=>W.includes(A))}else if(typeof z.additionalProperties==="object")return Object.getOwnPropertyNames(U).every((A)=>W.includes(A)||w2(z.additionalProperties,w,U[A]));else return!0}function LB(z,w,U){return A5(U)}function NB(z,w,U){if(!E0.IsRecordLike(U))return!1;if(z0(z.minProperties)&&!(Object.getOwnPropertyNames(U).length>=z.minProperties))return!1;if(z0(z.maxProperties)&&!(Object.getOwnPropertyNames(U).length<=z.maxProperties))return!1;let[W,X]=Object.entries(z.patternProperties)[0],A=new RegExp(W),Z=Object.entries(U).every(([Q,J])=>{return A.test(Q)?w2(X,w,J):!0}),$=typeof z.additionalProperties==="object"?Object.entries(U).every(([Q,J])=>{return!A.test(Q)?w2(z.additionalProperties,w,J):!0}):!0,Y=z.additionalProperties===!1?Object.getOwnPropertyNames(U).every((Q)=>{return A.test(Q)}):!0;return Z&&$&&Y}function GB(z,w,U){return w2(Q0(z,w),w,U)}function HB(z,w,U){let W=new RegExp(z.source,z.flags);if(z0(z.minLength)){if(!(U.length>=z.minLength))return!1}if(z0(z.maxLength)){if(!(U.length<=z.maxLength))return!1}return W.test(U)}function _B(z,w,U){if(!Z0(U))return!1;if(z0(z.minLength)){if(!(U.length>=z.minLength))return!1}if(z0(z.maxLength)){if(!(U.length<=z.maxLength))return!1}if(z0(z.pattern)){if(!new RegExp(z.pattern).test(U))return!1}if(z0(z.format)){if(!S0.Has(z.format))return!1;return S0.Get(z.format)(U)}return!0}function SB(z,w,U){return v1(U)}function DB(z,w,U){return Z0(U)&&new RegExp(z.pattern).test(U)}function PB(z,w,U){return w2(Q0(z,w),w,U)}function OB(z,w,U){if(!m(U))return!1;if(z.items===void 0&&U.length!==0)return!1;if(U.length!==z.maxItems)return!1;if(!z.items)return!0;for(let W=0;W<z.items.length;W++)if(!w2(z.items[W],w,U[W]))return!1;return!0}function RB(z,w,U){return k0(U)}function CB(z,w,U){return z.anyOf.some((W)=>w2(W,w,U))}function bB(z,w,U){if(!s6(U))return!1;if(z0(z.maxByteLength)&&!(U.length<=z.maxByteLength))return!1;if(z0(z.minByteLength)&&!(U.length>=z.minByteLength))return!1;return!0}function KB(z,w,U){return!0}function FB(z,w,U){return E0.IsVoidLike(U)}function jB(z,w,U){if(!p0.Has(z[H]))return!1;return p0.Get(z[H])(z,U)}function w2(z,w,U){let W=z0(z.$id)?z2(z,w):w,X=z;switch(X[H]){case"Any":return lJ(X,W,U);case"Argument":return sJ(X,W,U);case"Array":return rJ(X,W,U);case"AsyncIterator":return aJ(X,W,U);case"BigInt":return eJ(X,W,U);case"Boolean":return zB(X,W,U);case"Constructor":return wB(X,W,U);case"Date":return UB(X,W,U);case"Function":return WB(X,W,U);case"Import":return XB(X,W,U);case"Integer":return AB(X,W,U);case"Intersect":return ZB(X,W,U);case"Iterator":return $B(X,W,U);case"Literal":return YB(X,W,U);case"Never":return QB(X,W,U);case"Not":return JB(X,W,U);case"Null":return BB(X,W,U);case"Number":return MB(X,W,U);case"Object":return qB(X,W,U);case"Promise":return LB(X,W,U);case"Record":return NB(X,W,U);case"Ref":return GB(X,W,U);case"RegExp":return HB(X,W,U);case"String":return _B(X,W,U);case"Symbol":return SB(X,W,U);case"TemplateLiteral":return DB(X,W,U);case"This":return PB(X,W,U);case"Tuple":return OB(X,W,U);case"Undefined":return RB(X,W,U);case"Union":return CB(X,W,U);case"Uint8Array":return bB(X,W,U);case"Unknown":return KB(X,W,U);case"Void":return FB(X,W,U);default:if(!p0.Has(X[H]))throw new dU(X);return jB(X,W,U)}}function s(...z){return z.length===3?w2(z[0],z[1],z[2]):w2(z[0],[],z[1])}var _;(function(z){z[z.ArrayContains=0]="ArrayContains",z[z.ArrayMaxContains=1]="ArrayMaxContains",z[z.ArrayMaxItems=2]="ArrayMaxItems",z[z.ArrayMinContains=3]="ArrayMinContains",z[z.ArrayMinItems=4]="ArrayMinItems",z[z.ArrayUniqueItems=5]="ArrayUniqueItems",z[z.Array=6]="Array",z[z.AsyncIterator=7]="AsyncIterator",z[z.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",z[z.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",z[z.BigIntMaximum=10]="BigIntMaximum",z[z.BigIntMinimum=11]="BigIntMinimum",z[z.BigIntMultipleOf=12]="BigIntMultipleOf",z[z.BigInt=13]="BigInt",z[z.Boolean=14]="Boolean",z[z.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",z[z.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",z[z.DateMaximumTimestamp=17]="DateMaximumTimestamp",z[z.DateMinimumTimestamp=18]="DateMinimumTimestamp",z[z.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",z[z.Date=20]="Date",z[z.Function=21]="Function",z[z.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",z[z.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",z[z.IntegerMaximum=24]="IntegerMaximum",z[z.IntegerMinimum=25]="IntegerMinimum",z[z.IntegerMultipleOf=26]="IntegerMultipleOf",z[z.Integer=27]="Integer",z[z.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",z[z.Intersect=29]="Intersect",z[z.Iterator=30]="Iterator",z[z.Kind=31]="Kind",z[z.Literal=32]="Literal",z[z.Never=33]="Never",z[z.Not=34]="Not",z[z.Null=35]="Null",z[z.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",z[z.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",z[z.NumberMaximum=38]="NumberMaximum",z[z.NumberMinimum=39]="NumberMinimum",z[z.NumberMultipleOf=40]="NumberMultipleOf",z[z.Number=41]="Number",z[z.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",z[z.ObjectMaxProperties=43]="ObjectMaxProperties",z[z.ObjectMinProperties=44]="ObjectMinProperties",z[z.ObjectRequiredProperty=45]="ObjectRequiredProperty",z[z.Object=46]="Object",z[z.Promise=47]="Promise",z[z.RegExp=48]="RegExp",z[z.StringFormatUnknown=49]="StringFormatUnknown",z[z.StringFormat=50]="StringFormat",z[z.StringMaxLength=51]="StringMaxLength",z[z.StringMinLength=52]="StringMinLength",z[z.StringPattern=53]="StringPattern",z[z.String=54]="String",z[z.Symbol=55]="Symbol",z[z.TupleLength=56]="TupleLength",z[z.Tuple=57]="Tuple",z[z.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",z[z.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",z[z.Uint8Array=60]="Uint8Array",z[z.Undefined=61]="Undefined",z[z.Union=62]="Union",z[z.Void=63]="Void"})(_||(_={}));class hU extends n{constructor(z){super("Unknown type");this.schema=z}}function s1(z){return z.replace(/~/g,"~0").replace(/\//g,"~1")}function w0(z){return z!==void 0}class h6{constructor(z){this.iterator=z}[Symbol.iterator](){return this.iterator}First(){let z=this.iterator.next();return z.done?void 0:z.value}}function V(z,w,U,W,X=[]){return{type:z,schema:w,path:U,value:W,message:xU()({errorType:z,path:U,schema:w,value:W,errors:X}),errors:X}}function*IB(z,w,U,W){}function*EB(z,w,U,W){}function*xB(z,w,U,W){if(!m(W))return yield V(_.Array,z,U,W);if(w0(z.minItems)&&!(W.length>=z.minItems))yield V(_.ArrayMinItems,z,U,W);if(w0(z.maxItems)&&!(W.length<=z.maxItems))yield V(_.ArrayMaxItems,z,U,W);for(let Z=0;Z<W.length;Z++)yield*U2(z.items,w,`${U}/${Z}`,W[Z]);if(z.uniqueItems===!0&&!function(){let Z=new Set;for(let $ of W){let Y=H6($);if(Z.has(Y))return!1;else Z.add(Y)}return!0}())yield V(_.ArrayUniqueItems,z,U,W);if(!(w0(z.contains)||w0(z.minContains)||w0(z.maxContains)))return;let X=w0(z.contains)?z.contains:p(),A=W.reduce((Z,$,Y)=>U2(X,w,`${U}${Y}`,$).next().done===!0?Z+1:Z,0);if(A===0)yield V(_.ArrayContains,z,U,W);if(v(z.minContains)&&A<z.minContains)yield V(_.ArrayMinContains,z,U,W);if(v(z.maxContains)&&A>z.maxContains)yield V(_.ArrayMaxContains,z,U,W)}function*VB(z,w,U,W){if(!W5(W))yield V(_.AsyncIterator,z,U,W)}function*kB(z,w,U,W){if(!X2(W))return yield V(_.BigInt,z,U,W);if(w0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield V(_.BigIntExclusiveMaximum,z,U,W);if(w0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield V(_.BigIntExclusiveMinimum,z,U,W);if(w0(z.maximum)&&!(W<=z.maximum))yield V(_.BigIntMaximum,z,U,W);if(w0(z.minimum)&&!(W>=z.minimum))yield V(_.BigIntMinimum,z,U,W);if(w0(z.multipleOf)&&W%z.multipleOf!==BigInt(0))yield V(_.BigIntMultipleOf,z,U,W)}function*TB(z,w,U,W){if(!E1(W))yield V(_.Boolean,z,U,W)}function*gB(z,w,U,W){yield*U2(z.returns,w,U,W.prototype)}function*fB(z,w,U,W){if(!N2(W))return yield V(_.Date,z,U,W);if(w0(z.exclusiveMaximumTimestamp)&&!(W.getTime()<z.exclusiveMaximumTimestamp))yield V(_.DateExclusiveMaximumTimestamp,z,U,W);if(w0(z.exclusiveMinimumTimestamp)&&!(W.getTime()>z.exclusiveMinimumTimestamp))yield V(_.DateExclusiveMinimumTimestamp,z,U,W);if(w0(z.maximumTimestamp)&&!(W.getTime()<=z.maximumTimestamp))yield V(_.DateMaximumTimestamp,z,U,W);if(w0(z.minimumTimestamp)&&!(W.getTime()>=z.minimumTimestamp))yield V(_.DateMinimumTimestamp,z,U,W);if(w0(z.multipleOfTimestamp)&&W.getTime()%z.multipleOfTimestamp!==0)yield V(_.DateMultipleOfTimestamp,z,U,W)}function*dB(z,w,U,W){if(!Y6(W))yield V(_.Function,z,U,W)}function*hB(z,w,U,W){let X=globalThis.Object.values(z.$defs),A=z.$defs[z.$ref];yield*U2(A,[...w,...X],U,W)}function*cB(z,w,U,W){if(!Z5(W))return yield V(_.Integer,z,U,W);if(w0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield V(_.IntegerExclusiveMaximum,z,U,W);if(w0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield V(_.IntegerExclusiveMinimum,z,U,W);if(w0(z.maximum)&&!(W<=z.maximum))yield V(_.IntegerMaximum,z,U,W);if(w0(z.minimum)&&!(W>=z.minimum))yield V(_.IntegerMinimum,z,U,W);if(w0(z.multipleOf)&&W%z.multipleOf!==0)yield V(_.IntegerMultipleOf,z,U,W)}function*iB(z,w,U,W){let X=!1;for(let A of z.allOf)for(let Z of U2(A,w,U,W))X=!0,yield Z;if(X)return yield V(_.Intersect,z,U,W);if(z.unevaluatedProperties===!1){let A=new RegExp(p1(z));for(let Z of Object.getOwnPropertyNames(W))if(!A.test(Z))yield V(_.IntersectUnevaluatedProperties,z,`${U}/${Z}`,W)}if(typeof z.unevaluatedProperties==="object"){let A=new RegExp(p1(z));for(let Z of Object.getOwnPropertyNames(W))if(!A.test(Z)){let $=U2(z.unevaluatedProperties,w,`${U}/${Z}`,W[Z]).next();if(!$.done)yield $.value}}}function*yB(z,w,U,W){if(!X5(W))yield V(_.Iterator,z,U,W)}function*vB(z,w,U,W){if(W!==z.const)yield V(_.Literal,z,U,W)}function*nB(z,w,U,W){yield V(_.Never,z,U,W)}function*uB(z,w,U,W){if(U2(z.not,w,U,W).next().done===!0)yield V(_.Not,z,U,W)}function*mB(z,w,U,W){if(!y1(W))yield V(_.Null,z,U,W)}function*tB(z,w,U,W){if(!E0.IsNumberLike(W))return yield V(_.Number,z,U,W);if(w0(z.exclusiveMaximum)&&!(W<z.exclusiveMaximum))yield V(_.NumberExclusiveMaximum,z,U,W);if(w0(z.exclusiveMinimum)&&!(W>z.exclusiveMinimum))yield V(_.NumberExclusiveMinimum,z,U,W);if(w0(z.maximum)&&!(W<=z.maximum))yield V(_.NumberMaximum,z,U,W);if(w0(z.minimum)&&!(W>=z.minimum))yield V(_.NumberMinimum,z,U,W);if(w0(z.multipleOf)&&W%z.multipleOf!==0)yield V(_.NumberMultipleOf,z,U,W)}function*oB(z,w,U,W){if(!E0.IsObjectLike(W))return yield V(_.Object,z,U,W);if(w0(z.minProperties)&&!(Object.getOwnPropertyNames(W).length>=z.minProperties))yield V(_.ObjectMinProperties,z,U,W);if(w0(z.maxProperties)&&!(Object.getOwnPropertyNames(W).length<=z.maxProperties))yield V(_.ObjectMaxProperties,z,U,W);let X=Array.isArray(z.required)?z.required:[],A=Object.getOwnPropertyNames(z.properties),Z=Object.getOwnPropertyNames(W);for(let $ of X){if(Z.includes($))continue;yield V(_.ObjectRequiredProperty,z.properties[$],`${U}/${s1($)}`,void 0)}if(z.additionalProperties===!1){for(let $ of Z)if(!A.includes($))yield V(_.ObjectAdditionalProperties,z,`${U}/${s1($)}`,W[$])}if(typeof z.additionalProperties==="object")for(let $ of Z){if(A.includes($))continue;yield*U2(z.additionalProperties,w,`${U}/${s1($)}`,W[$])}for(let $ of A){let Y=z.properties[$];if(z.required&&z.required.includes($)){if(yield*U2(Y,w,`${U}/${s1($)}`,W[$]),l1(z)&&!($ in W))yield V(_.ObjectRequiredProperty,Y,`${U}/${s1($)}`,void 0)}else if(E0.IsExactOptionalProperty(W,$))yield*U2(Y,w,`${U}/${s1($)}`,W[$])}}function*pB(z,w,U,W){if(!A5(W))yield V(_.Promise,z,U,W)}function*lB(z,w,U,W){if(!E0.IsRecordLike(W))return yield V(_.Object,z,U,W);if(w0(z.minProperties)&&!(Object.getOwnPropertyNames(W).length>=z.minProperties))yield V(_.ObjectMinProperties,z,U,W);if(w0(z.maxProperties)&&!(Object.getOwnPropertyNames(W).length<=z.maxProperties))yield V(_.ObjectMaxProperties,z,U,W);let[X,A]=Object.entries(z.patternProperties)[0],Z=new RegExp(X);for(let[$,Y]of Object.entries(W))if(Z.test($))yield*U2(A,w,`${U}/${s1($)}`,Y);if(typeof z.additionalProperties==="object"){for(let[$,Y]of Object.entries(W))if(!Z.test($))yield*U2(z.additionalProperties,w,`${U}/${s1($)}`,Y)}if(z.additionalProperties===!1)for(let[$,Y]of Object.entries(W)){if(Z.test($))continue;return yield V(_.ObjectAdditionalProperties,z,`${U}/${s1($)}`,Y)}}function*sB(z,w,U,W){yield*U2(Q0(z,w),w,U,W)}function*rB(z,w,U,W){if(!Z0(W))return yield V(_.String,z,U,W);if(w0(z.minLength)&&!(W.length>=z.minLength))yield V(_.StringMinLength,z,U,W);if(w0(z.maxLength)&&!(W.length<=z.maxLength))yield V(_.StringMaxLength,z,U,W);if(!new RegExp(z.source,z.flags).test(W))return yield V(_.RegExp,z,U,W)}function*aB(z,w,U,W){if(!Z0(W))return yield V(_.String,z,U,W);if(w0(z.minLength)&&!(W.length>=z.minLength))yield V(_.StringMinLength,z,U,W);if(w0(z.maxLength)&&!(W.length<=z.maxLength))yield V(_.StringMaxLength,z,U,W);if(Z0(z.pattern)){if(!new RegExp(z.pattern).test(W))yield V(_.StringPattern,z,U,W)}if(Z0(z.format)){if(!S0.Has(z.format))yield V(_.StringFormatUnknown,z,U,W);else if(!S0.Get(z.format)(W))yield V(_.StringFormat,z,U,W)}}function*eB(z,w,U,W){if(!v1(W))yield V(_.Symbol,z,U,W)}function*zM(z,w,U,W){if(!Z0(W))return yield V(_.String,z,U,W);if(!new RegExp(z.pattern).test(W))yield V(_.StringPattern,z,U,W)}function*wM(z,w,U,W){yield*U2(Q0(z,w),w,U,W)}function*UM(z,w,U,W){if(!m(W))return yield V(_.Tuple,z,U,W);if(z.items===void 0&&W.length!==0)return yield V(_.TupleLength,z,U,W);if(W.length!==z.maxItems)return yield V(_.TupleLength,z,U,W);if(!z.items)return;for(let X=0;X<z.items.length;X++)yield*U2(z.items[X],w,`${U}/${X}`,W[X])}function*WM(z,w,U,W){if(!k0(W))yield V(_.Undefined,z,U,W)}function*XM(z,w,U,W){if(s(z,w,W))return;let X=z.anyOf.map((A)=>new h6(U2(A,w,U,W)));yield V(_.Union,z,U,W,X)}function*AM(z,w,U,W){if(!s6(W))return yield V(_.Uint8Array,z,U,W);if(w0(z.maxByteLength)&&!(W.length<=z.maxByteLength))yield V(_.Uint8ArrayMaxByteLength,z,U,W);if(w0(z.minByteLength)&&!(W.length>=z.minByteLength))yield V(_.Uint8ArrayMinByteLength,z,U,W)}function*ZM(z,w,U,W){}function*$M(z,w,U,W){if(!E0.IsVoidLike(W))yield V(_.Void,z,U,W)}function*YM(z,w,U,W){if(!p0.Get(z[H])(z,W))yield V(_.Kind,z,U,W)}function*U2(z,w,U,W){let X=w0(z.$id)?[...w,z]:w,A=z;switch(A[H]){case"Any":return yield*IB(A,X,U,W);case"Argument":return yield*EB(A,X,U,W);case"Array":return yield*xB(A,X,U,W);case"AsyncIterator":return yield*VB(A,X,U,W);case"BigInt":return yield*kB(A,X,U,W);case"Boolean":return yield*TB(A,X,U,W);case"Constructor":return yield*gB(A,X,U,W);case"Date":return yield*fB(A,X,U,W);case"Function":return yield*dB(A,X,U,W);case"Import":return yield*hB(A,X,U,W);case"Integer":return yield*cB(A,X,U,W);case"Intersect":return yield*iB(A,X,U,W);case"Iterator":return yield*yB(A,X,U,W);case"Literal":return yield*vB(A,X,U,W);case"Never":return yield*nB(A,X,U,W);case"Not":return yield*uB(A,X,U,W);case"Null":return yield*mB(A,X,U,W);case"Number":return yield*tB(A,X,U,W);case"Object":return yield*oB(A,X,U,W);case"Promise":return yield*pB(A,X,U,W);case"Record":return yield*lB(A,X,U,W);case"Ref":return yield*sB(A,X,U,W);case"RegExp":return yield*rB(A,X,U,W);case"String":return yield*aB(A,X,U,W);case"Symbol":return yield*eB(A,X,U,W);case"TemplateLiteral":return yield*zM(A,X,U,W);case"This":return yield*wM(A,X,U,W);case"Tuple":return yield*UM(A,X,U,W);case"Undefined":return yield*WM(A,X,U,W);case"Union":return yield*XM(A,X,U,W);case"Uint8Array":return yield*AM(A,X,U,W);case"Unknown":return yield*ZM(A,X,U,W);case"Void":return yield*$M(A,X,U,W);default:if(!p0.Has(A[H]))throw new hU(z);return yield*YM(A,X,U,W)}}function g1(...z){let w=z.length===3?U2(z[0],z[1],"",z[2]):U2(z[0],[],"",z[1]);return new h6(w)}class u4 extends n{constructor(z,w,U){super("Unable to decode value as it does not match the expected schema");this.schema=z,this.value=w,this.error=U}}class I5 extends n{constructor(z,w,U,W){super(W instanceof Error?W.message:"Unknown error");this.schema=z,this.path=w,this.value=U,this.error=W}}function d0(z,w,U){try{return M0(z)?z[j0].Decode(U):U}catch(W){throw new I5(z,w,U,W)}}function QM(z,w,U,W){return m(W)?d0(z,U,W.map((X,A)=>H1(z.items,w,`${U}/${A}`,X))):d0(z,U,W)}function JM(z,w,U,W){if(!l(W)||T2(W))return d0(z,U,W);let X=N5(z),A=X.map((J)=>J[0]),Z={...W};for(let[J,N]of X)if(J in Z)Z[J]=H1(N,w,`${U}/${J}`,Z[J]);if(!M0(z.unevaluatedProperties))return d0(z,U,Z);let $=Object.getOwnPropertyNames(Z),Y=z.unevaluatedProperties,Q={...Z};for(let J of $)if(!A.includes(J))Q[J]=d0(Y,`${U}/${J}`,Q[J]);return d0(z,U,Q)}function BM(z,w,U,W){let X=globalThis.Object.values(z.$defs),A=z.$defs[z.$ref],Z=H1(A,[...w,...X],U,W);return d0(z,U,Z)}function MM(z,w,U,W){return d0(z,U,H1(z.not,w,U,W))}function qM(z,w,U,W){if(!l(W))return d0(z,U,W);let X=O2(z),A={...W};for(let Q of X){if(!u(A,Q))continue;if(k0(A[Q])&&(!m1(z.properties[Q])||E0.IsExactOptionalProperty(A,Q)))continue;A[Q]=H1(z.properties[Q],w,`${U}/${Q}`,A[Q])}if(!f0(z.additionalProperties))return d0(z,U,A);let Z=Object.getOwnPropertyNames(A),$=z.additionalProperties,Y={...A};for(let Q of Z)if(!X.includes(Q))Y[Q]=d0($,`${U}/${Q}`,Y[Q]);return d0(z,U,Y)}function LM(z,w,U,W){if(!l(W))return d0(z,U,W);let X=Object.getOwnPropertyNames(z.patternProperties)[0],A=new RegExp(X),Z={...W};for(let J of Object.getOwnPropertyNames(W))if(A.test(J))Z[J]=H1(z.patternProperties[X],w,`${U}/${J}`,Z[J]);if(!f0(z.additionalProperties))return d0(z,U,Z);let $=Object.getOwnPropertyNames(Z),Y=z.additionalProperties,Q={...Z};for(let J of $)if(!A.test(J))Q[J]=d0(Y,`${U}/${J}`,Q[J]);return d0(z,U,Q)}function NM(z,w,U,W){let X=Q0(z,w);return d0(z,U,H1(X,w,U,W))}function GM(z,w,U,W){let X=Q0(z,w);return d0(z,U,H1(X,w,U,W))}function HM(z,w,U,W){return m(W)&&m(z.items)?d0(z,U,z.items.map((X,A)=>H1(X,w,`${U}/${A}`,W[A]))):d0(z,U,W)}function _M(z,w,U,W){for(let X of z.anyOf){if(!s(X,w,W))continue;let A=H1(X,w,U,W);return d0(z,U,A)}return d0(z,U,W)}function H1(z,w,U,W){let X=z2(z,w),A=z;switch(z[H]){case"Array":return QM(A,X,U,W);case"Import":return BM(A,X,U,W);case"Intersect":return JM(A,X,U,W);case"Not":return MM(A,X,U,W);case"Object":return qM(A,X,U,W);case"Record":return LM(A,X,U,W);case"Ref":return NM(A,X,U,W);case"Symbol":return d0(A,U,W);case"This":return GM(A,X,U,W);case"Tuple":return HM(A,X,U,W);case"Union":return _M(A,X,U,W);default:return d0(A,U,W)}}function _4(z,w,U){return H1(z,w,"",U)}class m4 extends n{constructor(z,w,U){super("The encoded value does not match the expected schema");this.schema=z,this.value=w,this.error=U}}class cU extends n{constructor(z,w,U,W){super(`${W instanceof Error?W.message:"Unknown error"}`);this.schema=z,this.path=w,this.value=U,this.error=W}}function Z2(z,w,U){try{return M0(z)?z[j0].Encode(U):U}catch(W){throw new cU(z,w,U,W)}}function SM(z,w,U,W){let X=Z2(z,U,W);return m(X)?X.map((A,Z)=>_1(z.items,w,`${U}/${Z}`,A)):X}function DM(z,w,U,W){let X=globalThis.Object.values(z.$defs),A=z.$defs[z.$ref],Z=Z2(z,U,W);return _1(A,[...w,...X],U,Z)}function PM(z,w,U,W){let X=Z2(z,U,W);if(!l(W)||T2(W))return X;let A=N5(z),Z=A.map((N)=>N[0]),$={...X};for(let[N,S]of A)if(N in $)$[N]=_1(S,w,`${U}/${N}`,$[N]);if(!M0(z.unevaluatedProperties))return $;let Y=Object.getOwnPropertyNames($),Q=z.unevaluatedProperties,J={...$};for(let N of Y)if(!Z.includes(N))J[N]=Z2(Q,`${U}/${N}`,J[N]);return J}function OM(z,w,U,W){return Z2(z.not,U,Z2(z,U,W))}function RM(z,w,U,W){let X=Z2(z,U,W);if(!l(X))return X;let A=O2(z),Z={...X};for(let J of A){if(!u(Z,J))continue;if(k0(Z[J])&&(!m1(z.properties[J])||E0.IsExactOptionalProperty(Z,J)))continue;Z[J]=_1(z.properties[J],w,`${U}/${J}`,Z[J])}if(!f0(z.additionalProperties))return Z;let $=Object.getOwnPropertyNames(Z),Y=z.additionalProperties,Q={...Z};for(let J of $)if(!A.includes(J))Q[J]=Z2(Y,`${U}/${J}`,Q[J]);return Q}function CM(z,w,U,W){let X=Z2(z,U,W);if(!l(W))return X;let A=Object.getOwnPropertyNames(z.patternProperties)[0],Z=new RegExp(A),$={...X};for(let N of Object.getOwnPropertyNames(W))if(Z.test(N))$[N]=_1(z.patternProperties[A],w,`${U}/${N}`,$[N]);if(!f0(z.additionalProperties))return $;let Y=Object.getOwnPropertyNames($),Q=z.additionalProperties,J={...$};for(let N of Y)if(!Z.test(N))J[N]=Z2(Q,`${U}/${N}`,J[N]);return J}function bM(z,w,U,W){let X=Q0(z,w),A=_1(X,w,U,W);return Z2(z,U,A)}function KM(z,w,U,W){let X=Q0(z,w),A=_1(X,w,U,W);return Z2(z,U,A)}function FM(z,w,U,W){let X=Z2(z,U,W);return m(z.items)?z.items.map((A,Z)=>_1(A,w,`${U}/${Z}`,X[Z])):[]}function jM(z,w,U,W){for(let X of z.anyOf){if(!s(X,w,W))continue;let A=_1(X,w,U,W);return Z2(z,U,A)}for(let X of z.anyOf){let A=_1(X,w,U,W);if(!s(z,w,A))continue;return Z2(z,U,A)}return Z2(z,U,W)}function _1(z,w,U,W){let X=z2(z,w),A=z;switch(z[H]){case"Array":return SM(A,X,U,W);case"Import":return DM(A,X,U,W);case"Intersect":return PM(A,X,U,W);case"Not":return OM(A,X,U,W);case"Object":return RM(A,X,U,W);case"Record":return CM(A,X,U,W);case"Ref":return bM(A,X,U,W);case"This":return KM(A,X,U,W);case"Tuple":return FM(A,X,U,W);case"Union":return jM(A,X,U,W);default:return Z2(A,U,W)}}function S4(z,w,U){return _1(z,w,"",U)}function IM(z,w){return M0(z)||a0(z.items,w)}function EM(z,w){return M0(z)||a0(z.items,w)}function xM(z,w){return M0(z)||a0(z.returns,w)||z.parameters.some((U)=>a0(U,w))}function VM(z,w){return M0(z)||a0(z.returns,w)||z.parameters.some((U)=>a0(U,w))}function kM(z,w){return M0(z)||M0(z.unevaluatedProperties)||z.allOf.some((U)=>a0(U,w))}function TM(z,w){let U=globalThis.Object.getOwnPropertyNames(z.$defs).reduce((X,A)=>[...X,z.$defs[A]],[]),W=z.$defs[z.$ref];return M0(z)||a0(W,[...U,...w])}function gM(z,w){return M0(z)||a0(z.items,w)}function fM(z,w){return M0(z)||a0(z.not,w)}function dM(z,w){return M0(z)||Object.values(z.properties).some((U)=>a0(U,w))||f0(z.additionalProperties)&&a0(z.additionalProperties,w)}function hM(z,w){return M0(z)||a0(z.item,w)}function cM(z,w){let U=Object.getOwnPropertyNames(z.patternProperties)[0],W=z.patternProperties[U];return M0(z)||a0(W,w)||f0(z.additionalProperties)&&M0(z.additionalProperties)}function iM(z,w){if(M0(z))return!0;return a0(Q0(z,w),w)}function yM(z,w){if(M0(z))return!0;return a0(Q0(z,w),w)}function vM(z,w){return M0(z)||!k0(z.items)&&z.items.some((U)=>a0(U,w))}function nM(z,w){return M0(z)||z.anyOf.some((U)=>a0(U,w))}function a0(z,w){let U=z2(z,w),W=z;if(z.$id&&fz.has(z.$id))return!1;if(z.$id)fz.add(z.$id);switch(z[H]){case"Array":return IM(W,U);case"AsyncIterator":return EM(W,U);case"Constructor":return xM(W,U);case"Function":return VM(W,U);case"Import":return TM(W,U);case"Intersect":return kM(W,U);case"Iterator":return gM(W,U);case"Not":return fM(W,U);case"Object":return dM(W,U);case"Promise":return hM(W,U);case"Record":return cM(W,U);case"Ref":return iM(W,U);case"This":return yM(W,U);case"Tuple":return vM(W,U);case"Union":return nM(W,U);default:return M0(z)}}var fz=new Set;function r1(z,w){return fz.clear(),a0(z,w)}class iU{constructor(z,w,U,W){this.schema=z,this.references=w,this.checkFunc=U,this.code=W,this.hasTransform=r1(z,w)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(z){return g1(this.schema,this.references,z)}Check(z){return this.checkFunc(z)}Decode(z){if(!this.checkFunc(z))throw new u4(this.schema,z,this.Errors(z).First());return this.hasTransform?_4(this.schema,this.references,z):z}Encode(z){let w=this.hasTransform?S4(this.schema,this.references,z):z;if(!this.checkFunc(w))throw new m4(this.schema,z,this.Errors(z).First());return w}}var a1;(function(z){function w(A){return A===36}z.DollarSign=w;function U(A){return A===95}z.IsUnderscore=U;function W(A){return A>=65&&A<=90||A>=97&&A<=122}z.IsAlpha=W;function X(A){return A>=48&&A<=57}z.IsNumeric=X})(a1||(a1={}));var E5;(function(z){function w(A){if(A.length===0)return!1;return a1.IsNumeric(A.charCodeAt(0))}function U(A){if(w(A))return!1;for(let Z=0;Z<A.length;Z++){let $=A.charCodeAt(Z);if(!(a1.IsAlpha($)||a1.IsNumeric($)||a1.DollarSign($)||a1.IsUnderscore($)))return!1}return!0}function W(A){return A.replace(/'/g,"\\'")}function X(A,Z){return U(Z)?`${A}.${Z}`:`${A}['${W(Z)}']`}z.Encode=X})(E5||(E5={}));var dz;(function(z){function w(U){let W=[];for(let X=0;X<U.length;X++){let A=U.charCodeAt(X);if(a1.IsNumeric(A)||a1.IsAlpha(A))W.push(U.charAt(X));else W.push(`_${A}_`)}return W.join("").replace(/__/g,"_")}z.Encode=w})(dz||(dz={}));var hz;(function(z){function w(U){return U.replace(/'/g,"\\'")}z.Escape=w})(hz||(hz={}));class yU extends n{constructor(z){super("Unknown type");this.schema=z}}class cz extends n{constructor(z){super("Preflight validation check failed to guard for the given schema");this.schema=z}}var c6;(function(z){function w(Z,$,Y){return E0.ExactOptionalPropertyTypes?`('${$}' in ${Z} ? ${Y} : true)`:`(${E5.Encode(Z,$)} !== undefined ? ${Y} : true)`}z.IsExactOptionalProperty=w;function U(Z){return!E0.AllowArrayObject?`(typeof ${Z} === 'object' && ${Z} !== null && !Array.isArray(${Z}))`:`(typeof ${Z} === 'object' && ${Z} !== null)`}z.IsObjectLike=U;function W(Z){return!E0.AllowArrayObject?`(typeof ${Z} === 'object' && ${Z} !== null && !Array.isArray(${Z}) && !(${Z} instanceof Date) && !(${Z} instanceof Uint8Array))`:`(typeof ${Z} === 'object' && ${Z} !== null && !(${Z} instanceof Date) && !(${Z} instanceof Uint8Array))`}z.IsRecordLike=W;function X(Z){return E0.AllowNaN?`typeof ${Z} === 'number'`:`Number.isFinite(${Z})`}z.IsNumberLike=X;function A(Z){return E0.AllowNullVoid?`(${Z} === undefined || ${Z} === null)`:`${Z} === undefined`}z.IsVoidLike=A})(c6||(c6={}));var _6;(function(z){function w(M){return M[H]==="Any"||M[H]==="Unknown"}function*U(M,K,L){yield"true"}function*W(M,K,L){yield"true"}function*X(M,K,L){yield`Array.isArray(${L})`;let[f,E]=[j("value","any"),j("acc","number")];if(v(M.maxItems))yield`${L}.length <= ${M.maxItems}`;if(v(M.minItems))yield`${L}.length >= ${M.minItems}`;let d=x2(M.items,K,"value");if(yield`${L}.every((${f}) => ${d})`,g0(M.contains)||v(M.minContains)||v(M.maxContains)){let C0=g0(M.contains)?M.contains:p(),_2=x2(C0,K,"value"),f1=v(M.minContains)?[`(count >= ${M.minContains})`]:[],A1=v(M.maxContains)?[`(count <= ${M.maxContains})`]:[],F1=`const count = value.reduce((${E}, ${f}) => ${_2} ? acc + 1 : acc, 0)`,X8=["(count > 0)",...f1,...A1].join(" && ");yield`((${f}) => { ${F1}; return ${X8}})(${L})`}if(M.uniqueItems===!0)yield`((${f}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${L})`}function*A(M,K,L){yield`(typeof value === 'object' && Symbol.asyncIterator in ${L})`}function*Z(M,K,L){if(yield`(typeof ${L} === 'bigint')`,X2(M.exclusiveMaximum))yield`${L} < BigInt(${M.exclusiveMaximum})`;if(X2(M.exclusiveMinimum))yield`${L} > BigInt(${M.exclusiveMinimum})`;if(X2(M.maximum))yield`${L} <= BigInt(${M.maximum})`;if(X2(M.minimum))yield`${L} >= BigInt(${M.minimum})`;if(X2(M.multipleOf))yield`(${L} % BigInt(${M.multipleOf})) === 0`}function*$(M,K,L){yield`(typeof ${L} === 'boolean')`}function*Y(M,K,L){yield*W1(M.returns,K,`${L}.prototype`)}function*Q(M,K,L){if(yield`(${L} instanceof Date) && Number.isFinite(${L}.getTime())`,v(M.exclusiveMaximumTimestamp))yield`${L}.getTime() < ${M.exclusiveMaximumTimestamp}`;if(v(M.exclusiveMinimumTimestamp))yield`${L}.getTime() > ${M.exclusiveMinimumTimestamp}`;if(v(M.maximumTimestamp))yield`${L}.getTime() <= ${M.maximumTimestamp}`;if(v(M.minimumTimestamp))yield`${L}.getTime() >= ${M.minimumTimestamp}`;if(v(M.multipleOfTimestamp))yield`(${L}.getTime() % ${M.multipleOfTimestamp}) === 0`}function*J(M,K,L){yield`(typeof ${L} === 'function')`}function*N(M,K,L){let f=globalThis.Object.getOwnPropertyNames(M.$defs).reduce((E,d)=>{return[...E,M.$defs[d]]},[]);yield*W1(p2(M.$ref),[...K,...f],L)}function*S(M,K,L){if(yield`Number.isInteger(${L})`,v(M.exclusiveMaximum))yield`${L} < ${M.exclusiveMaximum}`;if(v(M.exclusiveMinimum))yield`${L} > ${M.exclusiveMinimum}`;if(v(M.maximum))yield`${L} <= ${M.maximum}`;if(v(M.minimum))yield`${L} >= ${M.minimum}`;if(v(M.multipleOf))yield`(${L} % ${M.multipleOf}) === 0`}function*G(M,K,L){let f=M.allOf.map((E)=>x2(E,K,L)).join(" && ");if(M.unevaluatedProperties===!1){let E=A6(`${new RegExp(p1(M))};`),d=`Object.getOwnPropertyNames(${L}).every(key => ${E}.test(key))`;yield`(${f} && ${d})`}else if(g0(M.unevaluatedProperties)){let E=A6(`${new RegExp(p1(M))};`),d=`Object.getOwnPropertyNames(${L}).every(key => ${E}.test(key) || ${x2(M.unevaluatedProperties,K,`${L}[key]`)})`;yield`(${f} && ${d})`}else yield`(${f})`}function*O(M,K,L){yield`(typeof value === 'object' && Symbol.iterator in ${L})`}function*B(M,K,L){if(typeof M.const==="number"||typeof M.const==="boolean")yield`(${L} === ${M.const})`;else yield`(${L} === '${hz.Escape(M.const)}')`}function*C(M,K,L){yield"false"}function*i(M,K,L){yield`(!${x2(M.not,K,L)})`}function*N0(M,K,L){yield`(${L} === null)`}function*U0(M,K,L){if(yield c6.IsNumberLike(L),v(M.exclusiveMaximum))yield`${L} < ${M.exclusiveMaximum}`;if(v(M.exclusiveMinimum))yield`${L} > ${M.exclusiveMinimum}`;if(v(M.maximum))yield`${L} <= ${M.maximum}`;if(v(M.minimum))yield`${L} >= ${M.minimum}`;if(v(M.multipleOf))yield`(${L} % ${M.multipleOf}) === 0`}function*D0(M,K,L){if(yield c6.IsObjectLike(L),v(M.minProperties))yield`Object.getOwnPropertyNames(${L}).length >= ${M.minProperties}`;if(v(M.maxProperties))yield`Object.getOwnPropertyNames(${L}).length <= ${M.maxProperties}`;let f=Object.getOwnPropertyNames(M.properties);for(let E of f){let d=E5.Encode(L,E),C0=M.properties[E];if(M.required&&M.required.includes(E)){if(yield*W1(C0,K,d),l1(C0)||w(C0))yield`('${E}' in ${L})`}else{let _2=x2(C0,K,d);yield c6.IsExactOptionalProperty(L,E,_2)}}if(M.additionalProperties===!1)if(M.required&&M.required.length===f.length)yield`Object.getOwnPropertyNames(${L}).length === ${f.length}`;else{let E=`[${f.map((d)=>`'${d}'`).join(", ")}]`;yield`Object.getOwnPropertyNames(${L}).every(key => ${E}.includes(key))`}if(typeof M.additionalProperties==="object"){let E=x2(M.additionalProperties,K,`${L}[key]`),d=`[${f.map((C0)=>`'${C0}'`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${L}).every(key => ${d}.includes(key) || ${E}))`}}function*K0(M,K,L){yield`${L} instanceof Promise`}function*g(M,K,L){if(yield c6.IsRecordLike(L),v(M.minProperties))yield`Object.getOwnPropertyNames(${L}).length >= ${M.minProperties}`;if(v(M.maxProperties))yield`Object.getOwnPropertyNames(${L}).length <= ${M.maxProperties}`;let[f,E]=Object.entries(M.patternProperties)[0],d=A6(`${new RegExp(f)}`),C0=x2(E,K,"value"),_2=g0(M.additionalProperties)?x2(M.additionalProperties,K,L):M.additionalProperties===!1?"false":"true",f1=`(${d}.test(key) ? ${C0} : ${_2})`;yield`(Object.entries(${L}).every(([key, value]) => ${f1}))`}function*x(M,K,L){let f=Q0(M,K);if(_0.functions.has(M.$ref))return yield`${X6(M.$ref)}(${L})`;yield*W1(f,K,L)}function*T(M,K,L){let f=A6(`${new RegExp(M.source,M.flags)};`);if(yield`(typeof ${L} === 'string')`,v(M.maxLength))yield`${L}.length <= ${M.maxLength}`;if(v(M.minLength))yield`${L}.length >= ${M.minLength}`;yield`${f}.test(${L})`}function*F(M,K,L){if(yield`(typeof ${L} === 'string')`,v(M.maxLength))yield`${L}.length <= ${M.maxLength}`;if(v(M.minLength))yield`${L}.length >= ${M.minLength}`;if(M.pattern!==void 0)yield`${A6(`${new RegExp(M.pattern)};`)}.test(${L})`;if(M.format!==void 0)yield`format('${M.format}', ${L})`}function*W0(M,K,L){yield`(typeof ${L} === 'symbol')`}function*G0(M,K,L){yield`(typeof ${L} === 'string')`,yield`${A6(`${new RegExp(M.pattern)};`)}.test(${L})`}function*H0(M,K,L){yield`${X6(M.$ref)}(${L})`}function*h0(M,K,L){if(yield`Array.isArray(${L})`,M.items===void 0)return yield`${L}.length === 0`;yield`(${L}.length === ${M.maxItems})`;for(let f=0;f<M.items.length;f++)yield`${x2(M.items[f],K,`${L}[${f}]`)}`}function*U6(M,K,L){yield`${L} === undefined`}function*n0(M,K,L){yield`(${M.anyOf.map((E)=>x2(E,K,L)).join(" || ")})`}function*W6(M,K,L){if(yield`${L} instanceof Uint8Array`,v(M.maxByteLength))yield`(${L}.length <= ${M.maxByteLength})`;if(v(M.minByteLength))yield`(${L}.length >= ${M.minByteLength})`}function*E2(M,K,L){yield"true"}function*b6(M,K,L){yield c6.IsVoidLike(L)}function*a5(M,K,L){let f=_0.instances.size;_0.instances.set(f,M),yield`kind('${M[H]}', ${f}, ${L})`}function*W1(M,K,L,f=!0){let E=Z0(M.$id)?[...K,M]:K,d=M;if(f&&Z0(M.$id)){let C0=X6(M.$id);if(_0.functions.has(C0))return yield`${C0}(${L})`;else{_0.functions.set(C0,"<deferred>");let _2=X1(C0,M,K,"value",!1);return _0.functions.set(C0,_2),yield`${C0}(${L})`}}switch(d[H]){case"Any":return yield*U(d,E,L);case"Argument":return yield*W(d,E,L);case"Array":return yield*X(d,E,L);case"AsyncIterator":return yield*A(d,E,L);case"BigInt":return yield*Z(d,E,L);case"Boolean":return yield*$(d,E,L);case"Constructor":return yield*Y(d,E,L);case"Date":return yield*Q(d,E,L);case"Function":return yield*J(d,E,L);case"Import":return yield*N(d,E,L);case"Integer":return yield*S(d,E,L);case"Intersect":return yield*G(d,E,L);case"Iterator":return yield*O(d,E,L);case"Literal":return yield*B(d,E,L);case"Never":return yield*C(d,E,L);case"Not":return yield*i(d,E,L);case"Null":return yield*N0(d,E,L);case"Number":return yield*U0(d,E,L);case"Object":return yield*D0(d,E,L);case"Promise":return yield*K0(d,E,L);case"Record":return yield*g(d,E,L);case"Ref":return yield*x(d,E,L);case"RegExp":return yield*T(d,E,L);case"String":return yield*F(d,E,L);case"Symbol":return yield*W0(d,E,L);case"TemplateLiteral":return yield*G0(d,E,L);case"This":return yield*H0(d,E,L);case"Tuple":return yield*h0(d,E,L);case"Undefined":return yield*U6(d,E,L);case"Union":return yield*n0(d,E,L);case"Uint8Array":return yield*W6(d,E,L);case"Unknown":return yield*E2(d,E,L);case"Void":return yield*b6(d,E,L);default:if(!p0.Has(d[H]))throw new yU(M);return yield*a5(d,E,L)}}let _0={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function x2(M,K,L,f=!0){return`(${[...W1(M,K,L,f)].join(" && ")})`}function X6(M){return`check_${dz.Encode(M)}`}function A6(M){let K=`local_${_0.variables.size}`;return _0.variables.set(K,`const ${K} = ${M}`),K}function X1(M,K,L,f,E=!0){let[d,C0]=[`
3
+ `,(F1)=>"".padStart(F1," ")],_2=j("value","any"),f1=R("boolean"),A1=[...W1(K,L,f,E)].map((F1)=>`${C0(4)}${F1}`).join(` &&${d}`);return`function ${M}(${_2})${f1} {${d}${C0(2)}return (${d}${A1}${d}${C0(2)})
4
+ }`}function j(M,K){let L=_0.language==="typescript"?`: ${K}`:"";return`${M}${L}`}function R(M){return _0.language==="typescript"?`: ${M}`:""}function b(M,K,L){let f=X1("check",M,K,"value"),E=j("value","any"),d=R("boolean"),C0=[..._0.functions.values()],_2=[..._0.variables.values()],f1=Z0(M.$id)?`return function check(${E})${d} {
5
+ return ${X6(M.$id)}(value)
6
+ }`:`return ${f}`;return[..._2,...C0,f1].join(`
7
+ `)}function h(...M){let K={language:"javascript"},[L,f,E]=M.length===2&&m(M[1])?[M[0],M[1],K]:M.length===2&&!m(M[1])?[M[0],[],M[1]]:M.length===3?[M[0],M[1],M[2]]:M.length===1?[M[0],[],K]:[null,[],K];if(_0.language=E.language,_0.variables.clear(),_0.functions.clear(),_0.instances.clear(),!g0(L))throw new cz(L);for(let d of f)if(!g0(d))throw new cz(d);return b(L,f,E)}z.Code=h;function t(M,K=[]){let L=h(M,K,{language:"javascript"}),f=globalThis.Function("kind","format","hash",L),E=new Map(_0.instances);function d(A1,F1,X8){if(!p0.Has(A1)||!E.has(F1))return!1;let LX=p0.Get(A1),NX=E.get(F1);return LX(NX,X8)}function C0(A1,F1){if(!S0.Has(A1))return!1;return S0.Get(A1)(F1)}function _2(A1){return H6(A1)}let f1=f(d,C0,_2);return new iU(M,K,f1,L)}z.Compile=t})(_6||(_6={}));var uM=function(z,w,U,W,X){if(W==="m")throw new TypeError("Private method is not writable");if(W==="a"&&!X)throw new TypeError("Private accessor was defined without a setter");if(typeof w==="function"?z!==w||!X:!w.has(z))throw new TypeError("Cannot write private member to an object whose class did not declare it");return W==="a"?X.call(z,U):X?X.value=U:w.set(z,U),U},nU=function(z,w,U,W){if(U==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof w==="function"?z!==w||!W:!w.has(z))throw new TypeError("Cannot read private member from an object whose class did not declare it");return U==="m"?W:U==="a"?W.call(z):W?W.value:w.get(z)},iz,x5,uU;class mU extends n{constructor(z){let w=z.First();super(w===void 0?"Invalid Value":w.message);iz.add(this),x5.set(this,void 0),uM(this,x5,z,"f"),this.error=w}Errors(){return new h6(nU(this,iz,"m",uU).call(this))}}x5=new WeakMap,iz=new WeakSet,uU=function*z(){if(this.error)yield this.error;yield*nU(this,x5,"f")};function vU(z,w,U){if(s(z,w,U))return;throw new mU(g1(z,w,U))}function V5(...z){return z.length===3?vU(z[0],z[1],z[2]):vU(z[0],[],z[1])}function mM(z){let w={};for(let U of Object.getOwnPropertyNames(z))w[U]=J0(z[U]);for(let U of Object.getOwnPropertySymbols(z))w[U]=J0(z[U]);return w}function tM(z){return z.map((w)=>J0(w))}function oM(z){return z.slice()}function pM(z){return new Map(J0([...z.entries()]))}function lM(z){return new Set(J0([...z.entries()]))}function sM(z){return new Date(z.toISOString())}function rM(z){return z}function J0(z){if(m(z))return tM(z);if(N2(z))return sM(z);if(n2(z))return oM(z);if(Q9(z))return pM(z);if(J9(z))return lM(z);if(l(z))return mM(z);if(T2(z))return rM(z);throw new Error("ValueClone: Unable to clone value")}class r2 extends n{constructor(z,w){super(w);this.schema=z}}function B0(z){return Y6(z)?z():J0(z)}function aM(z,w){if(u(z,"default"))return B0(z.default);else return{}}function eM(z,w){return{}}function zq(z,w){if(z.uniqueItems===!0&&!u(z,"default"))throw new r2(z,"Array with the uniqueItems constraint requires a default value");else if("contains"in z&&!u(z,"default"))throw new r2(z,"Array with the contains constraint requires a default value");else if("default"in z)return B0(z.default);else if(z.minItems!==void 0)return Array.from({length:z.minItems}).map((U)=>{return C2(z.items,w)});else return[]}function wq(z,w){if(u(z,"default"))return B0(z.default);else return async function*(){}()}function Uq(z,w){if(u(z,"default"))return B0(z.default);else return BigInt(0)}function Wq(z,w){if(u(z,"default"))return B0(z.default);else return!1}function Xq(z,w){if(u(z,"default"))return B0(z.default);else{let U=C2(z.returns,w);if(typeof U==="object"&&!Array.isArray(U))return class{constructor(){for(let[W,X]of Object.entries(U)){let A=this;A[W]=X}}};else return class{}}}function Aq(z,w){if(u(z,"default"))return B0(z.default);else if(z.minimumTimestamp!==void 0)return new Date(z.minimumTimestamp);else return new Date}function Zq(z,w){if(u(z,"default"))return B0(z.default);else return()=>C2(z.returns,w)}function $q(z,w){let U=globalThis.Object.values(z.$defs),W=z.$defs[z.$ref];return C2(W,[...w,...U])}function Yq(z,w){if(u(z,"default"))return B0(z.default);else if(z.minimum!==void 0)return z.minimum;else return 0}function Qq(z,w){if(u(z,"default"))return B0(z.default);else{let U=z.allOf.reduce((W,X)=>{let A=C2(X,w);return typeof A==="object"?{...W,...A}:A},{});if(!s(z,w,U))throw new r2(z,"Intersect produced invalid value. Consider using a default value.");return U}}function Jq(z,w){if(u(z,"default"))return B0(z.default);else return function*(){}()}function Bq(z,w){if(u(z,"default"))return B0(z.default);else return z.const}function Mq(z,w){if(u(z,"default"))return B0(z.default);else throw new r2(z,"Never types cannot be created. Consider using a default value.")}function qq(z,w){if(u(z,"default"))return B0(z.default);else throw new r2(z,"Not types must have a default value")}function Lq(z,w){if(u(z,"default"))return B0(z.default);else return null}function Nq(z,w){if(u(z,"default"))return B0(z.default);else if(z.minimum!==void 0)return z.minimum;else return 0}function Gq(z,w){if(u(z,"default"))return B0(z.default);else{let U=new Set(z.required),W={};for(let[X,A]of Object.entries(z.properties)){if(!U.has(X))continue;W[X]=C2(A,w)}return W}}function Hq(z,w){if(u(z,"default"))return B0(z.default);else return Promise.resolve(C2(z.item,w))}function _q(z,w){let[U,W]=Object.entries(z.patternProperties)[0];if(u(z,"default"))return B0(z.default);else if(!(U===V1||U===x1)){let X=U.slice(1,U.length-1).split("|"),A={};for(let Z of X)A[Z]=C2(W,w);return A}else return{}}function Sq(z,w){if(u(z,"default"))return B0(z.default);else return C2(Q0(z,w),w)}function Dq(z,w){if(u(z,"default"))return B0(z.default);else throw new r2(z,"RegExp types cannot be created. Consider using a default value.")}function Pq(z,w){if(z.pattern!==void 0)if(!u(z,"default"))throw new r2(z,"String types with patterns must specify a default value");else return B0(z.default);else if(z.format!==void 0)if(!u(z,"default"))throw new r2(z,"String types with formats must specify a default value");else return B0(z.default);else if(u(z,"default"))return B0(z.default);else if(z.minLength!==void 0)return Array.from({length:z.minLength}).map(()=>" ").join("");else return""}function Oq(z,w){if(u(z,"default"))return B0(z.default);else if("value"in z)return Symbol.for(z.value);else return Symbol()}function Rq(z,w){if(u(z,"default"))return B0(z.default);if(!J5(z))throw new r2(z,"Can only create template literals that produce a finite variants. Consider using a default value.");return A4(z)[0]}function Cq(z,w){if(tU++>Vq)throw new r2(z,"Cannot create recursive type as it appears possibly infinite. Consider using a default.");if(u(z,"default"))return B0(z.default);else return C2(Q0(z,w),w)}function bq(z,w){if(u(z,"default"))return B0(z.default);if(z.items===void 0)return[];else return Array.from({length:z.minItems}).map((U,W)=>C2(z.items[W],w))}function Kq(z,w){if(u(z,"default"))return B0(z.default);else return}function Fq(z,w){if(u(z,"default"))return B0(z.default);else if(z.anyOf.length===0)throw new Error("ValueCreate.Union: Cannot create Union with zero variants");else return C2(z.anyOf[0],w)}function jq(z,w){if(u(z,"default"))return B0(z.default);else if(z.minByteLength!==void 0)return new Uint8Array(z.minByteLength);else return new Uint8Array(0)}function Iq(z,w){if(u(z,"default"))return B0(z.default);else return{}}function Eq(z,w){if(u(z,"default"))return B0(z.default);else return}function xq(z,w){if(u(z,"default"))return B0(z.default);else throw new Error("User defined types must specify a default value")}function C2(z,w){let U=z2(z,w),W=z;switch(W[H]){case"Any":return aM(W,U);case"Argument":return eM(W,U);case"Array":return zq(W,U);case"AsyncIterator":return wq(W,U);case"BigInt":return Uq(W,U);case"Boolean":return Wq(W,U);case"Constructor":return Xq(W,U);case"Date":return Aq(W,U);case"Function":return Zq(W,U);case"Import":return $q(W,U);case"Integer":return Yq(W,U);case"Intersect":return Qq(W,U);case"Iterator":return Jq(W,U);case"Literal":return Bq(W,U);case"Never":return Mq(W,U);case"Not":return qq(W,U);case"Null":return Lq(W,U);case"Number":return Nq(W,U);case"Object":return Gq(W,U);case"Promise":return Hq(W,U);case"Record":return _q(W,U);case"Ref":return Sq(W,U);case"RegExp":return Dq(W,U);case"String":return Pq(W,U);case"Symbol":return Oq(W,U);case"TemplateLiteral":return Rq(W,U);case"This":return Cq(W,U);case"Tuple":return bq(W,U);case"Undefined":return Kq(W,U);case"Union":return Fq(W,U);case"Uint8Array":return jq(W,U);case"Unknown":return Iq(W,U);case"Void":return Eq(W,U);default:if(!p0.Has(W[H]))throw new r2(W,"Unknown type");return xq(W,U)}}var Vq=512,tU=0;function a2(...z){return tU=0,z.length===2?C2(z[0],z[1]):C2(z[0],[])}class yz extends n{constructor(z,w){super(w);this.schema=z}}function kq(z,w,U){if(z[H]==="Object"&&typeof U==="object"&&!y1(U)){let W=z,X=Object.getOwnPropertyNames(U),A=Object.entries(W.properties),[Z,$]=[1/A.length,A.length];return A.reduce((Y,[Q,J])=>{let N=J[H]==="Literal"&&J.const===U[Q]?$:0,S=s(J,w,U[Q])?Z:0,G=X.includes(Q)?Z:0;return Y+(N+S+G)},0)}else return s(z,w,U)?1:0}function Tq(z,w,U){let W=z.anyOf.map((Z)=>Q0(Z,w)),[X,A]=[W[0],0];for(let Z of W){let $=kq(Z,w,U);if($>A)X=Z,A=$}return X}function gq(z,w,U){if("default"in z)return typeof U==="function"?z.default:J0(z.default);else{let W=Tq(z,w,U);return t4(W,w,U)}}function fq(z,w,U){return s(z,w,U)?J0(U):a2(z,w)}function dq(z,w,U){return s(z,w,U)?U:a2(z,w)}function hq(z,w,U){if(s(z,w,U))return J0(U);let W=m(U)?J0(U):a2(z,w),X=v(z.minItems)&&W.length<z.minItems?[...W,...Array.from({length:z.minItems-W.length},()=>null)]:W,Z=(v(z.maxItems)&&X.length>z.maxItems?X.slice(0,z.maxItems):X).map((Y)=>S1(z.items,w,Y));if(z.uniqueItems!==!0)return Z;let $=[...new Set(Z)];if(!s(z,w,$))throw new yz(z,"Array cast produced invalid data due to uniqueItems constraint");return $}function cq(z,w,U){if(s(z,w,U))return a2(z,w);let W=new Set(z.returns.required||[]),X=function(){};for(let[A,Z]of Object.entries(z.returns.properties)){if(!W.has(A)&&U.prototype[A]===void 0)continue;X.prototype[A]=S1(Z,w,U.prototype[A])}return X}function iq(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return S1(X,[...w,...W],U)}function yq(z,w,U){let W=a2(z,w),X=l(W)&&l(U)?{...W,...U}:U;return s(z,w,X)?X:a2(z,w)}function vq(z,w,U){throw new yz(z,"Never types cannot be cast")}function nq(z,w,U){if(s(z,w,U))return U;if(U===null||typeof U!=="object")return a2(z,w);let W=new Set(z.required||[]),X={};for(let[A,Z]of Object.entries(z.properties)){if(!W.has(A)&&U[A]===void 0)continue;X[A]=S1(Z,w,U[A])}if(typeof z.additionalProperties==="object"){let A=Object.getOwnPropertyNames(z.properties);for(let Z of Object.getOwnPropertyNames(U)){if(A.includes(Z))continue;X[Z]=S1(z.additionalProperties,w,U[Z])}}return X}function uq(z,w,U){if(s(z,w,U))return J0(U);if(U===null||typeof U!=="object"||Array.isArray(U)||U instanceof Date)return a2(z,w);let W=Object.getOwnPropertyNames(z.patternProperties)[0],X=z.patternProperties[W],A={};for(let[Z,$]of Object.entries(U))A[Z]=S1(X,w,$);return A}function mq(z,w,U){return S1(Q0(z,w),w,U)}function tq(z,w,U){return S1(Q0(z,w),w,U)}function oq(z,w,U){if(s(z,w,U))return J0(U);if(!m(U))return a2(z,w);if(z.items===void 0)return[];return z.items.map((W,X)=>S1(W,w,U[X]))}function pq(z,w,U){return s(z,w,U)?J0(U):gq(z,w,U)}function S1(z,w,U){let W=Z0(z.$id)?z2(z,w):w,X=z;switch(z[H]){case"Array":return hq(X,W,U);case"Constructor":return cq(X,W,U);case"Import":return iq(X,W,U);case"Intersect":return yq(X,W,U);case"Never":return vq(X,W,U);case"Object":return nq(X,W,U);case"Record":return uq(X,W,U);case"Ref":return mq(X,W,U);case"This":return tq(X,W,U);case"Tuple":return oq(X,W,U);case"Union":return pq(X,W,U);case"Date":case"Symbol":case"Uint8Array":return fq(z,w,U);default:return dq(X,W,U)}}function t4(...z){return z.length===3?S1(z[0],z[1],z[2]):S1(z[0],[],z[1])}function lq(z){return J6(z)&&z[H]!=="Unsafe"}function sq(z,w,U){if(!m(U))return U;return U.map((W)=>b2(z.items,w,W))}function rq(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return b2(X,[...w,...W],U)}function aq(z,w,U){let W=z.unevaluatedProperties,A=z.allOf.map(($)=>b2($,w,J0(U))).reduce(($,Y)=>l(Y)?{...$,...Y}:Y,{});if(!l(U)||!l(A)||!J6(W))return A;let Z=O2(z);for(let $ of Object.getOwnPropertyNames(U)){if(Z.includes($))continue;if(s(W,w,U[$]))A[$]=b2(W,w,U[$])}return A}function eq(z,w,U){if(!l(U)||m(U))return U;let W=z.additionalProperties;for(let X of Object.getOwnPropertyNames(U)){if(u(z.properties,X)){U[X]=b2(z.properties[X],w,U[X]);continue}if(J6(W)&&s(W,w,U[X])){U[X]=b2(W,w,U[X]);continue}delete U[X]}return U}function zL(z,w,U){if(!l(U))return U;let W=z.additionalProperties,X=Object.getOwnPropertyNames(U),[A,Z]=Object.entries(z.patternProperties)[0],$=new RegExp(A);for(let Y of X){if($.test(Y)){U[Y]=b2(Z,w,U[Y]);continue}if(J6(W)&&s(W,w,U[Y])){U[Y]=b2(W,w,U[Y]);continue}delete U[Y]}return U}function wL(z,w,U){return b2(Q0(z,w),w,U)}function UL(z,w,U){return b2(Q0(z,w),w,U)}function WL(z,w,U){if(!m(U))return U;if(k0(z.items))return[];let W=Math.min(U.length,z.items.length);for(let X=0;X<W;X++)U[X]=b2(z.items[X],w,U[X]);return U.length>W?U.slice(0,W):U}function XL(z,w,U){for(let W of z.anyOf)if(lq(W)&&s(W,w,U))return b2(W,w,U);return U}function b2(z,w,U){let W=Z0(z.$id)?z2(z,w):w,X=z;switch(X[H]){case"Array":return sq(X,W,U);case"Import":return rq(X,W,U);case"Intersect":return aq(X,W,U);case"Object":return eq(X,W,U);case"Record":return zL(X,W,U);case"Ref":return wL(X,W,U);case"This":return UL(X,W,U);case"Tuple":return WL(X,W,U);case"Union":return XL(X,W,U);default:return U}}function k5(...z){return z.length===3?b2(z[0],z[1],z[2]):b2(z[0],[],z[1])}function T5(z){return Z0(z)&&!isNaN(z)&&!isNaN(parseFloat(z))}function AL(z){return X2(z)||E1(z)||v(z)}function o4(z){return z===!0||v(z)&&z===1||X2(z)&&z===BigInt("1")||Z0(z)&&(z.toLowerCase()==="true"||z==="1")}function p4(z){return z===!1||v(z)&&(z===0||Object.is(z,-0))||X2(z)&&z===BigInt("0")||Z0(z)&&(z.toLowerCase()==="false"||z==="0"||z==="-0")}function ZL(z){return Z0(z)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(z)}function $L(z){return Z0(z)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(z)}function YL(z){return Z0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(z)}function QL(z){return Z0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(z)}function JL(z){return Z0(z)&&/^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(z)}function BL(z,w){let U=pU(z);return U===w?U:z}function ML(z,w){let U=lU(z);return U===w?U:z}function qL(z,w){let U=oU(z);return U===w?U:z}function LL(z,w){return Z0(z.const)?BL(w,z.const):v(z.const)?ML(w,z.const):E1(z.const)?qL(w,z.const):w}function oU(z){return o4(z)?!0:p4(z)?!1:z}function NL(z){let w=(U)=>U.split(".")[0];return T5(z)?BigInt(w(z)):v(z)?BigInt(Math.trunc(z)):p4(z)?BigInt(0):o4(z)?BigInt(1):z}function pU(z){return v1(z)&&z.description!==void 0?z.description.toString():AL(z)?z.toString():z}function lU(z){return T5(z)?parseFloat(z):o4(z)?1:p4(z)?0:z}function GL(z){return T5(z)?parseInt(z):v(z)?Math.trunc(z):o4(z)?1:p4(z)?0:z}function HL(z){return Z0(z)&&z.toLowerCase()==="null"?null:z}function _L(z){return Z0(z)&&z==="undefined"?void 0:z}function SL(z){return N2(z)?z:v(z)?new Date(z):o4(z)?new Date(1):p4(z)?new Date(0):T5(z)?new Date(parseInt(z)):$L(z)?new Date(`1970-01-01T${z}.000Z`):ZL(z)?new Date(`1970-01-01T${z}`):QL(z)?new Date(`${z}.000Z`):YL(z)?new Date(z):JL(z)?new Date(`${z}T00:00:00.000Z`):z}function DL(z){return z}function PL(z,w,U){return(m(U)?U:[U]).map((X)=>D1(z.items,w,X))}function OL(z,w,U){return NL(U)}function RL(z,w,U){return oU(U)}function CL(z,w,U){return SL(U)}function bL(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return D1(X,[...w,...W],U)}function KL(z,w,U){return GL(U)}function FL(z,w,U){return z.allOf.reduce((W,X)=>D1(X,w,W),U)}function jL(z,w,U){return LL(z,U)}function IL(z,w,U){return HL(U)}function EL(z,w,U){return lU(U)}function xL(z,w,U){if(!l(U))return U;for(let W of Object.getOwnPropertyNames(z.properties)){if(!u(U,W))continue;U[W]=D1(z.properties[W],w,U[W])}return U}function VL(z,w,U){if(!l(U))return U;let X=Object.getOwnPropertyNames(z.patternProperties)[0],A=z.patternProperties[X];for(let[Z,$]of Object.entries(U))U[Z]=D1(A,w,$);return U}function kL(z,w,U){return D1(Q0(z,w),w,U)}function TL(z,w,U){return pU(U)}function gL(z,w,U){return Z0(U)||v(U)?Symbol(U):U}function fL(z,w,U){return D1(Q0(z,w),w,U)}function dL(z,w,U){if(!(m(U)&&!k0(z.items)))return U;return U.map((X,A)=>{return A<z.items.length?D1(z.items[A],w,X):X})}function hL(z,w,U){return _L(U)}function cL(z,w,U){for(let W of z.anyOf){let X=D1(W,w,J0(U));if(!s(W,w,X))continue;return X}return U}function D1(z,w,U){let W=z2(z,w),X=z;switch(z[H]){case"Array":return PL(X,W,U);case"BigInt":return OL(X,W,U);case"Boolean":return RL(X,W,U);case"Date":return CL(X,W,U);case"Import":return bL(X,W,U);case"Integer":return KL(X,W,U);case"Intersect":return FL(X,W,U);case"Literal":return jL(X,W,U);case"Null":return IL(X,W,U);case"Number":return EL(X,W,U);case"Object":return xL(X,W,U);case"Record":return VL(X,W,U);case"Ref":return kL(X,W,U);case"String":return TL(X,W,U);case"Symbol":return gL(X,W,U);case"This":return fL(X,W,U);case"Tuple":return dL(X,W,U);case"Undefined":return hL(X,W,U);case"Union":return cL(X,W,U);default:return DL(U)}}function g5(...z){return z.length===3?D1(z[0],z[1],z[2]):D1(z[0],[],z[1])}function sU(...z){let[w,U,W]=z.length===3?[z[0],z[1],z[2]]:[z[0],[],z[1]];if(!s(w,U,W))throw new u4(w,W,g1(w,U,W).First());return r1(w,U)?_4(w,U,W):W}function e1(z,w){let U=u(z,"default")?z.default:void 0,W=Y6(U)?U():J0(U);return k0(w)?W:l(w)&&l(W)?Object.assign(W,w):w}function vz(z){return J6(z)&&"default"in z}function iL(z,w,U){if(m(U)){for(let X=0;X<U.length;X++)U[X]=H2(z.items,w,U[X]);return U}let W=e1(z,U);if(!m(W))return W;for(let X=0;X<W.length;X++)W[X]=H2(z.items,w,W[X]);return W}function yL(z,w,U){return N2(U)?U:e1(z,U)}function vL(z,w,U){let W=globalThis.Object.values(z.$defs),X=z.$defs[z.$ref];return H2(X,[...w,...W],U)}function nL(z,w,U){let W=e1(z,U);return z.allOf.reduce((X,A)=>{let Z=H2(A,w,W);return l(Z)?{...X,...Z}:Z},{})}function uL(z,w,U){let W=e1(z,U);if(!l(W))return W;let X=Object.getOwnPropertyNames(z.properties);for(let A of X){let Z=H2(z.properties[A],w,W[A]);if(k0(Z))continue;W[A]=H2(z.properties[A],w,W[A])}if(!vz(z.additionalProperties))return W;for(let A of Object.getOwnPropertyNames(W)){if(X.includes(A))continue;W[A]=H2(z.additionalProperties,w,W[A])}return W}function mL(z,w,U){let W=e1(z,U);if(!l(W))return W;let X=z.additionalProperties,[A,Z]=Object.entries(z.patternProperties)[0],$=new RegExp(A);for(let Y of Object.getOwnPropertyNames(W)){if(!($.test(Y)&&vz(Z)))continue;W[Y]=H2(Z,w,W[Y])}if(!vz(X))return W;for(let Y of Object.getOwnPropertyNames(W)){if($.test(Y))continue;W[Y]=H2(X,w,W[Y])}return W}function tL(z,w,U){return H2(Q0(z,w),w,e1(z,U))}function oL(z,w,U){return H2(Q0(z,w),w,U)}function pL(z,w,U){let W=e1(z,U);if(!m(W)||k0(z.items))return W;let[X,A]=[z.items,Math.max(z.items.length,W.length)];for(let Z=0;Z<A;Z++)if(Z<X.length)W[Z]=H2(X[Z],w,W[Z]);return W}function lL(z,w,U){let W=e1(z,U);for(let X of z.anyOf){let A=H2(X,w,J0(W));if(s(X,w,A))return A}return W}function H2(z,w,U){let W=z2(z,w),X=z;switch(X[H]){case"Array":return iL(X,W,U);case"Date":return yL(X,W,U);case"Import":return vL(X,W,U);case"Intersect":return nL(X,W,U);case"Object":return uL(X,W,U);case"Record":return mL(X,W,U);case"Ref":return tL(X,W,U);case"This":return oL(X,W,U);case"Tuple":return pL(X,W,U);case"Union":return lL(X,W,U);default:return e1(X,U)}}function f5(...z){return z.length===3?H2(z[0],z[1],z[2]):H2(z[0],[],z[1])}var P1={};K6(P1,{ValuePointerRootSetError:()=>nz,ValuePointerRootDeleteError:()=>uz,Set:()=>sL,Has:()=>aL,Get:()=>eL,Format:()=>l4,Delete:()=>rL});class nz extends n{constructor(z,w,U){super("Cannot set root value");this.value=z,this.path=w,this.update=U}}class uz extends n{constructor(z,w){super("Cannot delete root value");this.value=z,this.path=w}}function rU(z){return z.indexOf("~")===-1?z:z.replace(/~1/g,"/").replace(/~0/g,"~")}function*l4(z){if(z==="")return;let[w,U]=[0,0];for(let W=0;W<z.length;W++)if(z.charAt(W)==="/")if(W===0)w=W+1;else U=W,yield rU(z.slice(w,U)),w=W+1;else U=W;yield rU(z.slice(w))}function sL(z,w,U){if(w==="")throw new nz(z,w,U);let[W,X,A]=[null,z,""];for(let Z of l4(w)){if(X[Z]===void 0)X[Z]={};W=X,X=X[Z],A=Z}W[A]=U}function rL(z,w){if(w==="")throw new uz(z,w);let[U,W,X]=[null,z,""];for(let A of l4(w)){if(W[A]===void 0||W[A]===null)return;U=W,W=W[A],X=A}if(Array.isArray(U)){let A=parseInt(X);U.splice(A,1)}else delete U[X]}function aL(z,w){if(w==="")return!0;let[U,W,X]=[null,z,""];for(let A of l4(w)){if(W[A]===void 0)return!1;U=W,W=W[A],X=A}return Object.getOwnPropertyNames(U).includes(X)}function eL(z,w){if(w==="")return z;let U=z;for(let W of l4(w)){if(U[W]===void 0)return;U=U[W]}return U}function zN(z,w){if(!l(w))return!1;let U=[...Object.keys(z),...Object.getOwnPropertySymbols(z)],W=[...Object.keys(w),...Object.getOwnPropertySymbols(w)];if(U.length!==W.length)return!1;return U.every((X)=>i6(z[X],w[X]))}function wN(z,w){return N2(w)&&z.getTime()===w.getTime()}function UN(z,w){if(!m(w)||z.length!==w.length)return!1;return z.every((U,W)=>i6(U,w[W]))}function WN(z,w){if(!n2(w)||z.length!==w.length||Object.getPrototypeOf(z).constructor.name!==Object.getPrototypeOf(w).constructor.name)return!1;return z.every((U,W)=>i6(U,w[W]))}function XN(z,w){return z===w}function i6(z,w){if(N2(z))return wN(z,w);if(n2(z))return WN(z,w);if(m(z))return UN(z,w);if(l(z))return zN(z,w);if(T2(z))return XN(z,w);throw new Error("ValueEquals: Unable to compare value")}var AN=L0({type:A0("insert"),path:G2(),value:L1()}),ZN=L0({type:A0("update"),path:G2(),value:L1()}),$N=L0({type:A0("delete"),path:G2()}),eU=q0([AN,ZN,$N]);class mz extends n{constructor(z,w){super(w);this.value=z}}function d5(z,w){return{type:"update",path:z,value:w}}function zW(z,w){return{type:"insert",path:z,value:w}}function wW(z){return{type:"delete",path:z}}function aU(z){if(globalThis.Object.getOwnPropertySymbols(z).length>0)throw new mz(z,"Cannot diff objects with symbols")}function*YN(z,w,U){if(aU(w),aU(U),!qz(U))return yield d5(z,U);let W=globalThis.Object.getOwnPropertyNames(w),X=globalThis.Object.getOwnPropertyNames(U);for(let A of X){if(u(w,A))continue;yield zW(`${z}/${A}`,U[A])}for(let A of W){if(!u(U,A))continue;if(i6(w,U))continue;yield*h5(`${z}/${A}`,w[A],U[A])}for(let A of W){if(u(U,A))continue;yield wW(`${z}/${A}`)}}function*QN(z,w,U){if(!m(U))return yield d5(z,U);for(let W=0;W<Math.min(w.length,U.length);W++)yield*h5(`${z}/${W}`,w[W],U[W]);for(let W=0;W<U.length;W++){if(W<w.length)continue;yield zW(`${z}/${W}`,U[W])}for(let W=w.length-1;W>=0;W--){if(W<U.length)continue;yield wW(`${z}/${W}`)}}function*JN(z,w,U){if(!n2(U)||w.length!==U.length||globalThis.Object.getPrototypeOf(w).constructor.name!==globalThis.Object.getPrototypeOf(U).constructor.name)return yield d5(z,U);for(let W=0;W<Math.min(w.length,U.length);W++)yield*h5(`${z}/${W}`,w[W],U[W])}function*BN(z,w,U){if(w===U)return;yield d5(z,U)}function*h5(z,w,U){if(qz(w))return yield*YN(z,w,U);if(m(w))return yield*QN(z,w,U);if(n2(w))return yield*JN(z,w,U);if(T2(w))return yield*BN(z,w,U);throw new mz(w,"Unable to diff value")}function UW(z,w){return[...h5("",z,w)]}function MN(z){return z.length>0&&z[0].path===""&&z[0].type==="update"}function qN(z){return z.length===0}function WW(z,w){if(MN(w))return J0(w[0].value);if(qN(w))return J0(z);let U=J0(z);for(let W of w)switch(W.type){case"insert":{P1.Set(U,W.path,W.value);break}case"update":{P1.Set(U,W.path,W.value);break}case"delete":{P1.Delete(U,W.path);break}}return U}function XW(...z){let[w,U,W]=z.length===3?[z[0],z[1],z[2]]:[z[0],[],z[1]],X=r1(w,U)?S4(w,U,W):W;if(!s(w,U,X))throw new m4(w,X,g1(w,U,X).First());return X}function c5(z){return l(z)&&!m(z)}class tz extends n{constructor(z){super(z)}}function LN(z,w,U,W){if(!c5(U))P1.Set(z,w,J0(W));else{let X=Object.getOwnPropertyNames(U),A=Object.getOwnPropertyNames(W);for(let Z of X)if(!A.includes(Z))delete U[Z];for(let Z of A)if(!X.includes(Z))U[Z]=null;for(let Z of A)oz(z,`${w}/${Z}`,U[Z],W[Z])}}function NN(z,w,U,W){if(!m(U))P1.Set(z,w,J0(W));else{for(let X=0;X<W.length;X++)oz(z,`${w}/${X}`,U[X],W[X]);U.splice(W.length)}}function GN(z,w,U,W){if(n2(U)&&U.length===W.length)for(let X=0;X<U.length;X++)U[X]=W[X];else P1.Set(z,w,J0(W))}function HN(z,w,U,W){if(U===W)return;P1.Set(z,w,W)}function oz(z,w,U,W){if(m(W))return NN(z,w,U,W);if(n2(W))return GN(z,w,U,W);if(c5(W))return LN(z,w,U,W);if(T2(W))return HN(z,w,U,W)}function AW(z){return n2(z)||T2(z)}function _N(z,w){return c5(z)&&m(w)||m(z)&&c5(w)}function ZW(z,w){if(AW(z)||AW(w))throw new tz("Only object and array types can be mutated at the root level");if(_N(z,w))throw new tz("Cannot assign due type mismatch of assignable values");oz(z,"",z,w)}class lz extends n{constructor(z){super(z)}}var pz;(function(z){let w=new Map([["Assert",(A,Z,$)=>{return V5(A,Z,$),$}],["Cast",(A,Z,$)=>t4(A,Z,$)],["Clean",(A,Z,$)=>k5(A,Z,$)],["Clone",(A,Z,$)=>J0($)],["Convert",(A,Z,$)=>g5(A,Z,$)],["Decode",(A,Z,$)=>r1(A,Z)?_4(A,Z,$):$],["Default",(A,Z,$)=>f5(A,Z,$)],["Encode",(A,Z,$)=>r1(A,Z)?S4(A,Z,$):$]]);function U(A){w.delete(A)}z.Delete=U;function W(A,Z){w.set(A,Z)}z.Set=W;function X(A){return w.get(A)}z.Get=X})(pz||(pz={}));var $W=["Clone","Clean","Default","Convert","Assert","Decode"];function SN(z,w,U,W){return z.reduce((X,A)=>{let Z=pz.Get(A);if(k0(Z))throw new lz(`Unable to find Parse operation '${A}'`);return Z(w,U,X)},W)}function YW(...z){let[w,U,W,X]=z.length===4?[z[0],z[1],z[2],z[3]]:z.length===3?m(z[0])?[z[0],z[1],[],z[2]]:[$W,z[0],z[1],z[2]]:z.length===2?[$W,z[0],[],z[1]]:(()=>{throw new lz("Invalid Arguments")})();return SN(w,U,W,X)}var o={};K6(o,{ValueErrorIterator:()=>h6,Patch:()=>WW,Parse:()=>YW,Mutate:()=>ZW,Hash:()=>H6,Errors:()=>g1,Equal:()=>i6,Encode:()=>XW,Edit:()=>eU,Diff:()=>UW,Default:()=>f5,Decode:()=>sU,Create:()=>a2,Convert:()=>g5,Clone:()=>J0,Clean:()=>k5,Check:()=>s,Cast:()=>t4,Assert:()=>V5});var s5=DX(MW(),1);var $w={date:gW,time:Ww(!0),"date-time":qW(!0),"iso-time":Ww(!1),"iso-date-time":qW(!1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:cN,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:tN,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:iN,int32:{type:"number",validate:nN},int64:{type:"number",validate:uN},float:{type:"number",validate:NW},double:{type:"number",validate:NW},password:!0,binary:!0};function VN(z){return z%4===0&&(z%100!==0||z%400===0)}var kN=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,TN=[0,31,28,31,30,31,30,31,31,30,31,30,31];function gW(z){let w=kN.exec(z);if(!w)return!1;let U=+w[1],W=+w[2],X=+w[3];return W>=1&&W<=12&&X>=1&&X<=(W===2&&VN(U)?29:TN[W])}var gN=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Ww(z){return function w(U){let W=gN.exec(U);if(!W)return!1;let X=+W[1],A=+W[2],Z=+W[3],$=W[4],Y=W[5]==="-"?-1:1,Q=+(W[6]||0),J=+(W[7]||0);if(Q>23||J>59||z&&!$)return!1;if(X<=23&&A<=59&&Z<60)return!0;let N=A-J*Y,S=X-Q*Y-(N<0?1:0);return(S===23||S===-1)&&(N===59||N===-1)&&Z<61}}var fN=/t|\s/i;function qW(z){let w=Ww(z);return function U(W){let X=W.split(fN);return X.length===2&&gW(X[0])&&w(X[1])}}var dN=/\/|:/,hN=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function cN(z){return dN.test(z)&&hN.test(z)}var LW=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function iN(z){return LW.lastIndex=0,LW.test(z)}var yN=-2147483648,vN=2147483647;function nN(z){return Number.isInteger(z)&&z<=vN&&z>=yN}function uN(z){return Number.isInteger(z)}function NW(){return!0}var mN=/[^\\]\\Z/;function tN(z){if(mN.test(z))return!1;try{return new RegExp(z),!0}catch(w){return!1}}var n5="toJSON"in new Headers,GW=(z,w)=>{let U=new URL(z);return U.pathname=w,U.toString()},oN=(z)=>typeof z==="function"&&/^\s*class\s+/.test(z.toString())||z.toString&&z.toString().startsWith("[object ")&&z.toString()!=="[object Object]"||w1(Object.getPrototypeOf(z)),sz=(z)=>z&&typeof z==="object"&&!Array.isArray(z),F2=(z,w,{skipKeys:U,override:W=!0}={})=>{if(!sz(z)||!sz(w))return z;for(let[X,A]of Object.entries(w)){if(U?.includes(X))continue;if(!sz(A)||!(X in z)||oN(A)){if(W||!(X in z))z[X]=A;continue}z[X]=F2(z[X],A,{skipKeys:U,override:W})}return z},pN=(z,w)=>{let U=F2(Object.assign({},z),w,{skipKeys:["properties"]});if("properties"in U)delete U.properties;return U},v0=(z=[],w=[])=>{if(!z)return;if(!w)return z;let U=[],W=[];if(!Array.isArray(z))z=[z];if(!Array.isArray(w))w=[w];for(let X of z)if(U.push(X),X.checksum)W.push(X.checksum);for(let X of w)if(!W.includes(X.checksum))U.push(X);return U},lN=["start","request","parse","transform","resolve","beforeHandle","afterHandle","mapResponse","afterResponse","trace","error","stop","body","headers","params","query","response","type","detail"],sN=lN.reduce((z,w)=>(z[w]=!0,z),{}),fW=(z,w)=>{let U=(W)=>typeof W==="object"&&Object.keys(W).every(Yw);if(U(z)&&U(w))return Object.assign(z,w);else if(z&&!U(z)&&U(w))return Object.assign({200:z},w);return w??z},s4=(z,w)=>{return{body:w?.body??z?.body,headers:w?.headers??z?.headers,params:w?.params??z?.params,query:w?.query??z?.query,cookie:w?.cookie??z?.cookie,response:fW(z?.response,w?.response)}},z6=(z,w)=>{let{resolve:U,...W}=z??{},{resolve:X,...A}=w??{};return{...W,...A,body:w?.body??z?.body,headers:w?.headers??z?.headers,params:w?.params??z?.params,query:w?.query??z?.query,cookie:w?.cookie??z?.cookie,response:fW(z?.response,w?.response),type:z?.type||w?.type,detail:F2(w?.detail??{},z?.detail??{}),parse:v0(z?.parse,w?.parse),transform:v0(z?.transform,w?.transform),beforeHandle:v0(v0(W2(U,"resolve"),z?.beforeHandle),v0(W2(X,"resolve"),w?.beforeHandle)),afterHandle:v0(z?.afterHandle,w?.afterHandle),mapResponse:v0(z?.mapResponse,w?.mapResponse),afterResponse:v0(z?.afterResponse,w?.afterResponse),trace:v0(z?.trace,w?.trace),error:v0(z?.error,w?.error)}},Xw=(z,w,U=!0)=>{if(!Array.isArray(w))return w.original=z,$2(z,w,U);for(let W of w)W.original=z,z=$2(z,W,U);return z},$2=(z,w,U=!0)=>{if(!z)return z;if(w.untilObjectFound&&!U&&z.type==="object")return z;let W=w.from[H];if(z.oneOf){for(let Z=0;Z<z.oneOf.length;Z++)z.oneOf[Z]=$2(z.oneOf[Z],w,U);return z}if(z.anyOf){for(let Z=0;Z<z.anyOf.length;Z++)z.anyOf[Z]=$2(z.anyOf[Z],w,U);return z}if(z.allOf){for(let Z=0;Z<z.allOf.length;Z++)z.allOf[Z]=$2(z.allOf[Z],w,U);return z}if(z.not)return $2(z.not,w,U);let X=U&&!!w.excludeRoot;if(z[H]===W){let{anyOf:Z,oneOf:$,allOf:Y,not:Q,properties:J,items:N,...S}=z,G=w.to(S);if(!G)return z;let O,B=(C)=>{if(J&&C.type==="object"){let N0={};for(let[U0,D0]of Object.entries(J))N0[U0]=$2(D0,w,!1);return{...S,...C,properties:N0}}if(N&&C.type==="array")return{...S,...C,items:$2(N,w,!1)};let i={...S,...C};if(delete i.required,J&&C.type==="string"&&C.format==="ObjectString"&&C.default==="{}")O=I.ObjectString(J,S),i.default=JSON.stringify(o.Create(I.Object(J))),i.properties=J;if(N&&C.type==="string"&&C.format==="ArrayString"&&C.default==="[]")O=I.ArrayString(N,S),i.default=JSON.stringify(o.Create(I.Array(N))),i.items=N;return i};if(X){if(J){let C={};for(let[i,N0]of Object.entries(J))C[i]=$2(N0,w,!1);return{...S,properties:C}}else if(N?.map)return{...S,items:N.map((C)=>$2(C,w,!1))};return S}if(G.anyOf)for(let C=0;C<G.anyOf.length;C++)G.anyOf[C]=B(G.anyOf[C]);else if(G.oneOf)for(let C=0;C<G.oneOf.length;C++)G.oneOf[C]=B(G.oneOf[C]);else if(G.allOf)for(let C=0;C<G.allOf.length;C++)G.allOf[C]=B(G.allOf[C]);else if(G.not)G.not=B(G.not);if(O)G[j0]=O[j0];if(G.anyOf||G.oneOf||G.allOf||G.not)return G;if(J){let C={};for(let[i,N0]of Object.entries(J))C[i]=$2(N0,w,!1);return{...S,...G,properties:C}}else if(N?.map)return{...S,...G,items:N.map((C)=>$2(C,w,!1))};return{...S,...G}}let A=z?.properties;if(A&&U&&w.rootOnly!==!0)for(let[Z,$]of Object.entries(A))switch($[H]){case W:let{anyOf:Y,oneOf:Q,allOf:J,not:N,type:S,...G}=$,O=w.to(G);if(!O)return z;if(O.anyOf)for(let B=0;B<O.anyOf.length;B++)O.anyOf[B]={...G,...O.anyOf[B]};else if(O.oneOf)for(let B=0;B<O.oneOf.length;B++)O.oneOf[B]={...G,...O.oneOf[B]};else if(O.allOf)for(let B=0;B<O.allOf.length;B++)O.allOf[B]={...G,...O.allOf[B]};else if(O.not)O.not={...G,...O.not};A[Z]={...G,...$2(G,w,!1)};break;case"Object":case"Union":A[Z]=$2($,w,!1);break;default:if(Array.isArray($.items))for(let B=0;B<$.items.length;B++)$.items[B]=$2($.items[B],w,!1);else if($.anyOf||$.oneOf||$.allOf||$.not)A[Z]=$2($,w,!1);else if($.type==="array")$.items=$2($.items,w,!1);break}return z},z8=(z)=>(w)=>{if(typeof w==="object")try{return o.Clean(z,structuredClone(w))}catch{try{return o.Clean(z,w)}catch{return w}}return w},j2=(z,{models:w={},dynamic:U=!1,modules:W,normalize:X=!1,additionalProperties:A=!1,coerce:Z=!1,additionalCoerce:$=[]}={modules:I.Module({})})=>{if(!z)return;let Y;if(typeof z!=="string")Y=z;else{let J=z.endsWith("[]"),N=J?z.substring(0,z.length-2):z;if(Y=W.Import(N)??w[N],J)Y=I.Array(Y)}if(!Y)return;if(Z||$)if(Z)Y=Xw(Y,[{from:I.Ref(""),to:(J)=>W.Import(J.$ref)},{from:I.Number(),to:(J)=>I.Numeric(J),untilObjectFound:!0},{from:I.Boolean(),to:(J)=>I.BooleanString(J),untilObjectFound:!0},...Array.isArray($)?$:[$]]);else Y=Xw(Y,[{from:I.Ref(""),to:(J)=>W.Import(J.$ref)},...Array.isArray($)?$:[$]]);if(Y.type==="object"&&"additionalProperties"in Y===!1)Y.additionalProperties=A;if(U){let J={schema:Y,references:"",checkFunc:()=>{},code:"",Check:(N)=>o.Check(Y,N),Errors:(N)=>o.Errors(Y,N),Code:()=>"",Clean:z8(Y),Decode:(N)=>o.Decode(Y,N),Encode:(N)=>o.Encode(Y,N)};if(X&&Y.additionalProperties===!1)J.Clean=z8(Y);if(Y.config){if(J.config=Y.config,J?.schema?.config)delete J.schema.config}return J.parse=(N)=>{try{return J.Decode(N)}catch(S){throw[...J.Errors(N)].map(b1)}},J.safeParse=(N)=>{try{return{success:!0,data:J.Decode(N),error:null}}catch(S){let G=[...Q.Errors(N)].map(b1);return{success:!1,data:null,error:G[0]?.summary,errors:G}}},J}let Q=_6.Compile(Y,Object.values(w));if(Q.Clean=z8(Y),Y.config){if(Q.config=Y.config,Q?.schema?.config)delete Q.schema.config}return Q.parse=(J)=>{try{return Q.Decode(J)}catch(N){throw[...Q.Errors(J)].map(b1)}},Q.safeParse=(J)=>{try{return{success:!0,data:Q.Decode(J),error:null}}catch(N){let S=[...Q.Errors(J)].map(b1);return{success:!1,data:null,error:S[0]?.summary,errors:S}}},Q},HW=(z,{models:w={},modules:U,dynamic:W=!1,normalize:X=!1,additionalProperties:A=!1})=>{if(!z)return;let Z;if(typeof z!=="string")Z=z;else{let J=z.endsWith("[]"),N=J?z.substring(0,z.length-2):z;if(Z=U.Import(N)??w[N],J)Z=I.Array(Z)}if(!Z)return;let $=(J,N)=>{if(W)return{schema:J,references:"",checkFunc:()=>{},code:"",Check:(G)=>o.Check(J,G),Errors:(G)=>o.Errors(J,G),Code:()=>"",Clean:z8(J),Decode:(G)=>o.Decode(J,G),Encode:(G)=>o.Encode(J,G)};let S=_6.Compile(J,N);if(X&&J.additionalProperties===!1)S.Clean=z8(J);return S},Y=Object.values(w);if(H in Z){if("additionalProperties"in Z===!1)Z.additionalProperties=A;return{200:$(Z,Y)}}let Q={};return Object.keys(Z).forEach((J)=>{let N=Z[+J];if(typeof N==="string"){if(N in w){let S=w[N];S.type==="object"&&"additionalProperties"in S,Q[+J]=H in S?$(S,Y):S}return}if(N.type==="object"&&"additionalProperties"in N===!1)N.additionalProperties=A;Q[+J]=H in N?$(N,Y):N}),Q},rN=typeof Bun!=="undefined",aN=rN&&typeof Bun.hash==="function",r4=(z)=>{if(aN)return Bun.hash(z);let w=9;for(let U=0;U<z.length;)w=Math.imul(w^z.charCodeAt(U++),387420489);return w=w^w>>>9},rz,y6=()=>{if(!rz)rz=[{from:I.Object({}),to:()=>I.ObjectString({}),excludeRoot:!0},{from:I.Array(I.Any()),to:()=>I.ArrayString(I.Any())}];return rz},az,_W=()=>{if(!az)az=[{from:I.Number(),to:(z)=>I.Numeric(z),rootOnly:!0},{from:I.Boolean(),to:(z)=>I.BooleanString(z),rootOnly:!0}];return az},dW=({validator:z,modules:w,defaultConfig:U={},config:W,dynamic:X,models:A})=>{let Z=j2(z,{modules:w,dynamic:X,models:A,additionalProperties:!0,coerce:!0,additionalCoerce:y6()});if(w1(U))if(Z)Z.config=pN(Z.config,W);else Z=j2(I.Cookie({}),{modules:w,dynamic:X,models:A,additionalProperties:!0}),Z.config=U;return Z},O1=(z,w)=>{if(!w)return;if(!Array.isArray(w)){let W=w;if(z&&!W.checksum)W.checksum=z;if(W.scope==="scoped")W.scope="local";return W}let U=[...w];for(let W of U){if(z&&!W.checksum)W.checksum=z;if(W.scope==="scoped")W.scope="local"}return U},SW=(z,w,U)=>{return{start:v0(z.start,O1(U,w?.start)),request:v0(z.request,O1(U,w?.request)),parse:v0(z.parse,O1(U,w?.parse)),transform:v0(z.transform,O1(U,w?.transform)),beforeHandle:v0(v0(W2(z.resolve,"resolve"),z.beforeHandle),O1(U,v0(W2(w?.resolve,"resolve"),w?.beforeHandle))),afterHandle:v0(z.afterHandle,O1(U,w?.afterHandle)),mapResponse:v0(z.mapResponse,O1(U,w?.mapResponse)),afterResponse:v0(z.afterResponse,O1(U,w?.afterResponse)),trace:v0(z.trace,O1(U,w?.trace)),error:v0(z.error,O1(U,w?.error)),stop:v0(z.stop,O1(U,w?.stop))}},eN=(z,w,{skipIfHasType:U=!1}={})=>{if(!z)return z;if(!Array.isArray(z)){if(U)z.scope??=w;else z.scope=w;return z}for(let W of z)if(U)W.scope??=w;else W.scope=w;return z},S6=(z)=>{if(!z)return z;if(!Array.isArray(z))switch(z.scope){case"global":case"scoped":return{...z};default:return{fn:z}}let w=[];for(let U of z)switch(U.scope){case"global":case"scoped":w.push({...U});break}return w},DW=(z)=>{return{...z,type:z?.type,detail:z?.detail,parse:S6(z?.parse),transform:S6(z?.transform),beforeHandle:S6(z?.beforeHandle),afterHandle:S6(z?.afterHandle),mapResponse:S6(z?.mapResponse),afterResponse:S6(z?.afterResponse),error:S6(z?.error),trace:S6(z?.trace)}},p5={Continue:100,"Switching Protocols":101,Processing:102,"Early Hints":103,OK:200,Created:201,Accepted:202,"Non-Authoritative Information":203,"No Content":204,"Reset Content":205,"Partial Content":206,"Multi-Status":207,"Already Reported":208,"Multiple Choices":300,"Moved Permanently":301,Found:302,"See Other":303,"Not Modified":304,"Temporary Redirect":307,"Permanent Redirect":308,"Bad Request":400,Unauthorized:401,"Payment Required":402,Forbidden:403,"Not Found":404,"Method Not Allowed":405,"Not Acceptable":406,"Proxy Authentication Required":407,"Request Timeout":408,Conflict:409,Gone:410,"Length Required":411,"Precondition Failed":412,"Payload Too Large":413,"URI Too Long":414,"Unsupported Media Type":415,"Range Not Satisfiable":416,"Expectation Failed":417,"I'm a teapot":418,"Misdirected Request":421,"Unprocessable Content":422,Locked:423,"Failed Dependency":424,"Too Early":425,"Upgrade Required":426,"Precondition Required":428,"Too Many Requests":429,"Request Header Fields Too Large":431,"Unavailable For Legal Reasons":451,"Internal Server Error":500,"Not Implemented":501,"Bad Gateway":502,"Service Unavailable":503,"Gateway Timeout":504,"HTTP Version Not Supported":505,"Variant Also Negotiates":506,"Insufficient Storage":507,"Loop Detected":508,"Not Extended":510,"Network Authentication Required":511},PW=Object.fromEntries(Object.entries(p5).map(([z,w])=>[w,z]));function zG(z){let w=z;while(w.endsWith("="))w=w.slice(0,-1);return w}var OW=new TextEncoder,u5=async(z,w)=>{if(typeof z!=="string")throw new TypeError("Cookie value must be provided as a string.");if(w===null)throw new TypeError("Secret key must be provided.");let U=await crypto.subtle.importKey("raw",OW.encode(w),{name:"HMAC",hash:"SHA-256"},!1,["sign"]),W=await crypto.subtle.sign("HMAC",U,OW.encode(z));return z+"."+zG(Buffer.from(W).toString("base64"))},RW=async(z,w)=>{if(typeof z!=="string")throw new TypeError("Signed cookie string must be provided.");if(w===null)throw new TypeError("Secret key must be provided.");let U=z.slice(0,z.lastIndexOf("."));return await u5(U,w)===z?U:!1},wG=(z,w,U)=>{if(!z||typeof z!=="object"||!w)return;for(let[W,X]of Object.entries(w)){if(W in sN||!(W in z))continue;let A=z[W];if(typeof A==="function"){let Z=A(X);if(typeof Z==="object")for(let[$,Y]of Object.entries(Z))U($)({fn:Y})}delete w[W]}},UG=({globalHook:z,localHook:w})=>(U)=>(W,X)=>{if(typeof W==="function")W={fn:W};if(U==="resolve")W={...W,subType:"resolve"};if("fn"in W||Array.isArray(W)){if(!w[U])w[U]=[];if(typeof w[U]==="function")w[U]=[w[U]];if(Array.isArray(W))w[U]=w[U].concat(W);else w[U].push(W);return}let{insert:A="after",stack:Z="local"}=W;if(typeof X==="function")X={fn:X};if(Z==="global")if(!Array.isArray(X))if(A==="before")z[U].unshift(X);else z[U].push(X);else if(A==="before")z[U]=X.concat(z[U]);else z[U]=z[U].concat(X);else{if(!w[U])w[U]=[];if(typeof w[U]==="function")w[U]=[w[U]];if(!Array.isArray(X))if(A==="before")w[U].unshift(X);else w[U].push(X);else if(A==="before")w[U]=X.concat(w[U]);else w[U]=w[U].concat(X)}},WG=(z)=>{if(typeof z==="number")return z;if(z.length<16){if(z.trim().length===0)return null;let w=Number(z);if(Number.isNaN(w))return null;return w}if(z.length===16){if(z.trim().length===0)return null;let w=Number(z);if(Number.isNaN(w)||w.toString()!==z)return null;return w}return null},Yw=(z)=>WG(z)!==null;class hW{onError;root=null;promises=[];constructor(z=console.error){this.onError=z}get size(){return this.promises.length}add(z){return this.promises.push(z),this.root||=this.drain(),z}async drain(){while(this.promises.length>0){try{await this.promises[0]}catch(z){this.onError(z)}this.promises.shift()}this.root=null}then(z,w){return(this.root??Promise.resolve()).then(z,w)}}var W2=(z,w)=>{if(!z)return z;if(!Array.isArray(z)){if(typeof z==="function"||typeof z==="string")return w?{fn:z,subType:w}:{fn:z};else if("fn"in z)return z}let U=[];for(let W of z)if(typeof W==="function"||typeof W==="string")U.push(w?{fn:W,subType:w}:{fn:W});else if("fn"in W)U.push(W);return U},XG=(z)=>{return{...z,start:W2(z?.start),request:W2(z?.request),parse:W2(z?.parse),transform:W2(z?.transform),beforeHandle:W2(z?.beforeHandle),afterHandle:W2(z?.afterHandle),mapResponse:W2(z?.mapResponse),afterResponse:W2(z?.afterResponse),trace:W2(z?.trace),error:W2(z?.error),stop:W2(z?.stop)}},CW=(z)=>{let w={};if(z.start?.map)w.start=z.start.map((U)=>U.fn);if(z.request?.map)w.request=z.request.map((U)=>U.fn);if(z.parse?.map)w.parse=z.parse.map((U)=>U.fn);if(z.transform?.map)w.transform=z.transform.map((U)=>U.fn);if(z.beforeHandle?.map)w.beforeHandle=z.beforeHandle.map((U)=>U.fn);if(z.afterHandle?.map)w.afterHandle=z.afterHandle.map((U)=>U.fn);if(z.mapResponse?.map)w.mapResponse=z.mapResponse.map((U)=>U.fn);if(z.afterResponse?.map)w.afterResponse=z.afterResponse.map((U)=>U.fn);if(z.trace?.map)w.trace=z.trace.map((U)=>U.fn);if(z.error?.map)w.error=z.error.map((U)=>U.fn);if(z.stop?.map)w.stop=z.stop.map((U)=>U.fn);return w},ez=(z)=>({body:z.body,cookie:z.cookie,headers:z.headers,query:z.query,set:z.set,server:z.server,request:z.request,route:z.route}),cW=(z,w=302)=>Response.redirect(z,w),wf=Symbol("ElysiaFormData"),l5=Symbol("ElysiaRequestId");var iW=()=>{let z=crypto.randomUUID();return z.slice(0,8)+z.slice(24,32)},bW=(z)=>{let w=[];for(let U=0;U<z.length;U++){let W=z[U];if(W.checksum){if(w.includes(W.checksum))z.splice(U,1),U--;w.push(W.checksum)}}return z},L2=(z,w="scoped")=>{if(!z)return;if(w==="scoped"){for(let U of z)if("scope"in U&&U.scope==="local")U.scope="scoped";return}for(let U of z)if("scope"in U)U.scope="global"},D4=(z)=>{if(z.charCodeAt(z.length-1)===47)return z.slice(0,z.length-1);return z+"/"},w1=(z)=>{if(!z)return!1;for(let w in z)return!0;return!1},R1=(z)=>{if(Array.isArray(z))return z.length===0;return!z},zw=(z)=>{let w={...z};if(R1(z.afterHandle))delete w.afterHandle;if(R1(z.afterResponse))delete w.afterResponse;if(R1(z.beforeHandle))delete w.beforeHandle;if(R1(z.error))delete w.error;if(R1(z.mapResponse))delete w.mapResponse;if(R1(z.parse))delete w.parse;if(R1(z.request))delete w.request;if(R1(z.start))delete w.start;if(R1(z.stop))delete w.stop;if(R1(z.trace))delete w.trace;if(R1(z.transform))delete w.transform;if(!w.type)delete w.type;if(w.detail&&!Object.keys(w.detail).length)delete w.detail;if(!w.body)delete w.body;if(!w.cookie)delete w.cookie;if(!w.headers)delete w.headers;if(!w.query)delete w.query;if(!w.params)delete w.params;if(!w.response)delete w.response;return w},a4=(z,{dynamic:w=!1}={})=>{let U=encodeURIComponent(z).replace(/%2F/g,"/");if(w)U=U.replace(/%3A/g,":").replace(/%3F/g,"?");return U},KW=typeof Bun!=="undefined"?Bun.env:typeof process!=="undefined"?process?.env:void 0,m5=Symbol("ElysiaErrorCode"),t5=(KW?.NODE_ENV??KW?.ENV)==="production";class K1{code;response;constructor(z,w){let U=w??(z in PW?PW[z]:z);this.code=p5[z]??z,this.response=U}}var yW=(z,w)=>new K1(z,w);class vW extends Error{code="INTERNAL_SERVER_ERROR";status=500;constructor(z){super(z??"INTERNAL_SERVER_ERROR")}}class Qw extends Error{code="NOT_FOUND";status=404;constructor(z){super(z??"NOT_FOUND")}}class nW extends Error{code="PARSE";status=400;constructor(){super("Bad Request")}}class Aw extends Error{key;code="INVALID_COOKIE_SIGNATURE";status=400;constructor(z,w){super(w??`"${z}" has invalid cookie signature`);this.key=z}}var b1=(z)=>{if(!z)return{summary:void 0};let{message:w,path:U,value:W,type:X}=z,A=U.slice(1).replaceAll("/","."),Z=U==="";switch(X){case 42:return{...z,summary:Z?"Value should not be provided":`Property '${A}' should not be provided`};case 45:return{...z,summary:Z?"Value is missing":`Property '${A}' is missing`};case 50:let $=w.indexOf("'"),Y=w.slice($+1,w.indexOf("'",$+1));return{...z,summary:Z?"Value should be an email":`Property '${A}' should be ${Y}`};case 54:return{...z,summary:`${w.slice(0,9)} property '${A}' to be ${w.slice(8)} but found: ${W}`};case 62:let Q=z.schema.anyOf.map((J)=>`'${J?.format??J.type}'`).join(", ");return{...z,summary:Z?`Value should be one of ${Q}`:`Property '${A}' should be one of: ${Q}`};default:return{summary:w,...z}}};class r extends Error{type;validator;value;code="VALIDATION";status=422;constructor(z,w,U){if(U&&typeof U==="object"&&U instanceof K1)U=U.response;let W=t5?void 0:("Errors"in w)?w.Errors(U).First():o.Errors(w,U).First(),X=W?.schema?.message||W?.schema?.error!==void 0?typeof W.schema.error==="function"?W.schema.error({type:z,validator:w,value:U,get errors(){return[...w.Errors(U)].map(b1)}}):W.schema.error:void 0,A=W?.path||"root",Z="";if(X!==void 0)Z=typeof X==="object"?JSON.stringify(X):X+"";else if(t5)Z=JSON.stringify({type:"validation",on:z,summary:b1(W).summary,message:W?.message,found:U});else{let $=w?.schema??w,Y="Errors"in w?[...w.Errors(U)].map(b1):[...o.Errors(w,U)].map(b1),Q;try{Q=o.Create($)}catch(J){Q={type:"Could not create expected value",message:J?.message,error:J}}Z=JSON.stringify({type:"validation",on:z,summary:b1(W).summary,property:A,message:W?.message,expected:Q,found:U,errors:Y},null,2)}super(Z);this.type=z,this.validator=w,this.value=U,Object.setPrototypeOf(this,r.prototype)}get all(){return"Errors"in this.validator?[...this.validator.Errors(this.value)].map(b1):[...o.Errors(this.validator,this.value)].map(b1)}static simplifyModel(z){let w="schema"in z?z.schema:z;try{return o.Create(w)}catch{return w}}get model(){return r.simplifyModel(this.validator)}toResponse(z){return new Response(this.message,{status:400,headers:{...z,"content-type":"application/json"}})}}var uW=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,mW=/(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{2}\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT(?:\+|-)\d{4}\s\([^)]+\)/,tW=/^(?:(?:(?:(?:0?[1-9]|[12][0-9]|3[01])[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:19|20)\d{2})|(?:(?:19|20)\d{2}[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:0?[1-9]|[12][0-9]|3[01]))))(?:\s(?:1[012]|0?[1-9]):[0-5][0-9](?::[0-5][0-9])?(?:\s[AP]M)?)?$/,AG=$w.date,ZG=$w["date-time"];if(!S0.Has("date"))S0.Set("date",(z)=>{let w=z.replace(/"/g,"");if(uW.test(w)||mW.test(w)||tW.test(w)||AG(w)){let U=new Date(w);if(!Number.isNaN(U.getTime()))return!0}return!1});if(!S0.Has("date-time"))S0.Set("date-time",(z)=>{let w=z.replace(/"/g,"");if(uW.test(w)||mW.test(w)||tW.test(w)||ZG(w)){let U=new Date(w);if(!Number.isNaN(U.getTime()))return!0}return!1});Object.entries($w).forEach((z)=>{let[w,U]=z;if(!S0.Has(w)){if(U instanceof RegExp)S0.Set(w,(W)=>U.test(W));else if(typeof U==="function")S0.Set(w,U)}});var I=Object.assign({},G6),FW=(z)=>{if(typeof z==="string")switch(z.slice(-1)){case"k":return+z.slice(0,z.length-1)*1024;case"m":return+z.slice(0,z.length-1)*1048576;default:return+z}return z},jW=(z,w)=>{if(z.startsWith(w))return!0;return w.charCodeAt(w.length-1)===42&&w.charCodeAt(w.length-2)===47&&z.startsWith(w.slice(0,-1))},Zw=(z,w)=>{if(!(w instanceof Blob))return!1;if(z.minSize&&w.size<FW(z.minSize))return!1;if(z.maxSize&&w.size>FW(z.maxSize))return!1;if(z.extension){if(typeof z.extension==="string")return jW(w.type,z.extension);for(let U=0;U<z.extension.length;U++)if(jW(w.type,z.extension[U]))return!0;return!1}return!0},$G=oW("File",Zw),YG=oW("Files",(z,w)=>{if(!Array.isArray(w))return Zw(z,w);if(z.minItems&&w.length<z.minItems)return!1;if(z.maxItems&&w.length>z.maxItems)return!1;for(let U=0;U<w.length;U++)if(!Zw(z,w[U]))return!1;return!0});if(!S0.Has("numeric"))S0.Set("numeric",(z)=>!!z&&!isNaN(+z));if(!S0.Has("integer"))S0.Set("integer",(z)=>!!z&&Number.isInteger(+z));if(!S0.Has("boolean"))S0.Set("boolean",(z)=>z==="true"||z==="false");if(!S0.Has("ObjectString"))S0.Set("ObjectString",(z)=>{let w=z.charCodeAt(0);if(w===9||w===10||w===32)w=z.trimStart().charCodeAt(0);if(w!==123&&w!==91)return!1;try{return JSON.parse(z),!0}catch{return!1}});if(!S0.Has("ArrayString"))S0.Set("ArrayString",(z)=>{let w=z.charCodeAt(0);if(w===9||w===10||w===32)w=z.trimStart().charCodeAt(0);if(w!==123&&w!==91)return!1;try{return JSON.parse(z),!0}catch{return!1}});if(!p0.Has("UnionEnum"))p0.Set("UnionEnum",(z,w)=>{return(typeof w==="number"||typeof w==="string"||w===null)&&z.enum.includes(w)});var U1={Numeric:(z)=>{let w=G6.Number(z);return I.Transform(I.Union([I.String({format:"numeric",default:0}),I.Number(z)],z)).Decode((U)=>{let W=+U;if(isNaN(W))return U;if(z&&!o.Check(w,W))throw new r("property",w,W);return W}).Encode((U)=>U)},Integer:(z)=>{let w=G6.Integer(z);return I.Transform(I.Union([I.String({format:"integer",default:0}),G6.Integer(z)],z)).Decode((U)=>{let W=+U;if(!o.Check(w,W))throw new r("property",w,W);return W}).Encode((U)=>U)},Date:(z)=>{let w=G6.Date(z),U=z?.default?new Date(z.default):void 0;return I.Transform(I.Union([G6.Date(z),I.String({format:"date",default:U?.toISOString()}),I.String({format:"date-time",default:U?.toISOString()}),I.Number({default:U?.getTime()})],z)).Decode((W)=>{if(typeof W==="number"){let A=new Date(W);if(!o.Check(w,A))throw new r("property",w,A);return A}if(W instanceof Date)return W;let X=new Date(W);if(!X||isNaN(X.getTime()))throw new r("property",w,X);if(!o.Check(w,X))throw new r("property",w,X);return X}).Encode((W)=>W.toISOString())},BooleanString:(z)=>{let w=G6.Boolean(z);return I.Transform(I.Union([I.Boolean(z),I.String({format:"boolean",default:!1})],z)).Decode((U)=>{if(typeof U==="string")return U==="true";if(U!==void 0&&!o.Check(w,U))throw new r("property",w,U);return U}).Encode((U)=>U)},ObjectString:(z,w)=>{let U=I.Object(z,w),W=JSON.stringify(o.Create(U)),X;try{X=_6.Compile(U)}catch{}return I.Transform(I.Union([I.String({format:"ObjectString",default:W}),U])).Decode((A)=>{if(typeof A==="string"){if(A.charCodeAt(0)!==123)throw new r("property",U,A);try{A=JSON.parse(A)}catch{throw new r("property",U,A)}if(X){if(!X.Check(A))throw new r("property",U,A);return X.Decode(A)}if(!o.Check(U,A))throw new r("property",U,A);return o.Decode(U,A)}return A}).Encode((A)=>{if(typeof A==="string")try{A=JSON.parse(A)}catch{throw new r("property",U,A)}if(!o.Check(U,A))throw new r("property",U,A);return JSON.stringify(A)})},ArrayString:(z=I.String(),w)=>{let U=I.Array(z,w),W;try{W=_6.Compile(U)}catch{}let X=(A,Z=!1)=>{if(A.charCodeAt(0)===91){try{A=JSON.parse(A)}catch{throw new r("property",U,A)}if(W){if(!W.Check(A))throw new r("property",U,A);return W.Decode(A)}if(!o.Check(U,A))throw new r("property",U,A);return o.Decode(U,A)}if(A.indexOf(",")!==-1){let $=A.split(",").map((Y)=>Y.trim());if(W){if(!W.Check($))throw new r("property",U,A);return W.Decode($)}if(!o.Check(U,$))throw new r("property",U,$);return o.Decode(U,$)}if(Z)return A;throw new r("property",U,A)};return I.Transform(I.Union([I.String({format:"ArrayString",default:w?.default}),U])).Decode((A)=>{if(Array.isArray(A)){let Z=[];for(let $=0;$<A.length;$++){let Y=A[$];if(typeof Y==="string"){let Q=X(Y,!0);if(Array.isArray(Q))Z=Z.concat(Q);else Z.push(Q);continue}Z.push(Y)}return Z}if(typeof A==="string")return X(A);return A}).Encode((A)=>{if(typeof A==="string")try{A=JSON.parse(A)}catch{throw new r("property",U,A)}if(!o.Check(U,A))throw new r("property",U,A);return JSON.stringify(A)})},File:$G,Files:(z={})=>I.Transform(YG(z)).Decode((w)=>{if(Array.isArray(w))return w;return[w]}).Encode((w)=>w),Nullable:(z,w)=>I.Union([z,I.Null()],w),MaybeEmpty:(z,w)=>I.Union([z,I.Null(),I.Undefined()],w),Cookie:(z,{domain:w,expires:U,httpOnly:W,maxAge:X,path:A,priority:Z,sameSite:$,secure:Y,secrets:Q,sign:J,...N}={})=>{let S=I.Object(z,N);return S.config={domain:w,expires:U,httpOnly:W,maxAge:X,path:A,priority:Z,sameSite:$,secure:Y,secrets:Q,sign:J},S},UnionEnum:(z,w={})=>{let U=z.every((W)=>typeof W==="string")?{type:"string"}:z.every((W)=>typeof W==="number")?{type:"number"}:z.every((W)=>W===null)?{type:"null"}:{};if(z.some((W)=>typeof W==="object"&&W!==null))throw new Error("This type does not support objects or arrays");return{default:z[0],...w,[H]:"UnionEnum",...U,enum:z}}};I.BooleanString=U1.BooleanString;I.ObjectString=U1.ObjectString;I.ArrayString=U1.ArrayString;I.Numeric=U1.Numeric;I.Integer=U1.Integer;I.File=(z={})=>U1.File({default:"File",...z,extension:z?.type,type:"string",format:"binary"});I.Files=(z={})=>U1.Files({...z,elysiaMeta:"Files",default:"Files",extension:z?.type,type:"array",items:{...z,default:"Files",type:"string",format:"binary"}});I.Nullable=(z)=>U1.Nullable(z);I.MaybeEmpty=U1.MaybeEmpty;I.Cookie=U1.Cookie;I.Date=U1.Date;I.UnionEnum=U1.UnionEnum;function oW(z,w){if(!p0.Has(z))p0.Set(z,w);return(U={})=>j5({...U,[H]:z})}var w8=(z)=>{let w=typeof z==="object"?z.fn.toString():typeof z==="string"?z.toString():z,U=w.indexOf(")");if(w.charCodeAt(U+2)===61&&w.charCodeAt(U+5)!==123)return!0;return w.includes("return")},QG=(z)=>{if(z.startsWith("async"))z=z.slice(5);z=z.trimStart();let w=-1;if(z.charCodeAt(0)===40){if(w=z.indexOf("=>",z.indexOf(")")),w!==-1){let X=w;while(X>0)if(z.charCodeAt(--X)===41)break;let A=z.slice(w+2);if(A.charCodeAt(0)===32)A=A.trimStart();return[z.slice(1,X),A,{isArrowReturn:A.charCodeAt(0)!==123}]}}if(/^(\w+)=>/g.test(z)){if(w=z.indexOf("=>"),w!==-1){let X=z.slice(w+2);if(X.charCodeAt(0)===32)X=X.trimStart();return[z.slice(0,w),X,{isArrowReturn:X.charCodeAt(0)!==123}]}}if(z.startsWith("function")){w=z.indexOf("(");let X=z.indexOf(")");return[z.slice(w+1,X),z.slice(X+2),{isArrowReturn:!1}]}let U=z.indexOf("(");if(U!==-1){let X=z.indexOf(`
8
+ `,2),A=z.slice(0,X),Z=A.lastIndexOf(")")+1,$=z.slice(X+1);return[A.slice(U,Z),"{"+$,{isArrowReturn:!1}]}let W=z.split(`
9
+ `,2);return[W[0],W[1],{isArrowReturn:!1}]},JG=(z)=>{let w=z.indexOf("{");if(w===-1)return[-1,0];let U=w+1,W=1;for(;U<z.length;U++){let X=z.charCodeAt(U);if(X===123)W++;else if(X===125)W--;if(W===0)break}if(W!==0)return[0,z.length];return[w,U+1]},BG=(z)=>{let w=z.lastIndexOf("}");if(w===-1)return[-1,0];let U=w-1,W=1;for(;U>=0;U--){let X=z.charCodeAt(U);if(X===125)W++;else if(X===123)W--;if(W===0)break}if(W!==0)return[-1,0];return[U,w+1]},pW=(z)=>{while(!0){let w=z.indexOf(":");if(w===-1)break;let U=z.indexOf(",",w);if(U===-1)U=z.indexOf("}",w)-1;if(U===-2)U=z.length;z=z.slice(0,w)+z.slice(U)}return z},lW=(z)=>{let w=!1;if(z.charCodeAt(0)===40)z=z.slice(1,-1);if(z.charCodeAt(0)===123)w=!0,z=z.slice(1,-1);z=z.replace(/( |\t|\n)/g,"").trim();let U=[];while(!0){let[X,A]=JG(z);if(X===-1)break;if(U.push(z.slice(0,X-1)),z.charCodeAt(A)===44)A++;z=z.slice(A)}if(z=pW(z),z)U=U.concat(z.split(","));let W=[];for(let X of U){if(X.indexOf(",")===-1){W.push(X);continue}for(let A of X.split(","))W.push(A.trim())}return U=W,{hasParenthesis:w,parameters:U}},MG=(z,w)=>{let{parameters:U,hasParenthesis:W}=lW(z);if(!w.query&&U.includes("query"))w.query=!0;if(!w.headers&&U.includes("headers"))w.headers=!0;if(!w.body&&U.includes("body"))w.body=!0;if(!w.cookie&&U.includes("cookie"))w.cookie=!0;if(!w.set&&U.includes("set"))w.set=!0;if(!w.server&&U.includes("server"))w.server=!0;if(!w.request&&U.includes("request"))w.request=!0;if(!w.route&&U.includes("route"))w.route=!0;if(W)return`{ ${U.join(", ")} }`;return U.join(", ")},IW=(z,w,U)=>{let W=w.indexOf(z+`
10
+ `,U),X=w.indexOf(z+"\t",U),A=w.indexOf(z+",",U),Z=w.indexOf(z+";",U),$=w.indexOf(z+" ",U);return[W,X,A,Z,$].filter((Y)=>Y>0).sort((Y,Q)=>Y-Q)[0]||-1},sW=(z,w,U=0)=>{if(U>5)return[];let W=[],X=w;while(!0){let A=IW(" = "+z,X);if(A===-1)A=IW("="+z,X);if(A===-1){let Q=X.indexOf(" = "+z);if(Q===-1)Q=X.indexOf("="+z);if(Q+3+z.length!==X.length)break;A=Q}let Z=X.slice(0,A),$=Z.lastIndexOf(" "),Y=Z.slice($!==-1?$+1:-1);if(Y==="}"){let[Q,J]=BG(Z);W.push(pW(X.slice(Q,J))),X=X.slice(A+3+z.length);continue}while(Y.charCodeAt(0)===44)Y=Y.slice(1);while(Y.charCodeAt(0)===9)Y=Y.slice(1);if(!Y.includes("("))W.push(Y);X=X.slice(A+3+z.length)}for(let A of W){if(A.charCodeAt(0)===123)continue;let Z=sW(A,w);if(Z.length>0)W.push(...Z)}return W},qG=(z)=>{if(!z)return;if(z.charCodeAt(0)!==123)return z;if(z=z.slice(2,-2),!z.includes(",")){if(z.includes("..."))return z.slice(z.indexOf("...")+3);return}let w=z.indexOf("...");if(w===-1)return;return z.slice(w+3).trimEnd()},LG=(z,w,U)=>{let W=(X,A)=>z.includes(A+"."+X)||z.includes(A+'["'+X+'"]')||z.includes(A+"['"+X+"']");for(let X of w){if(!X)continue;if(X.charCodeAt(0)===123){let A=lW(X).parameters;if(!U.query&&A.includes("query"))U.query=!0;if(!U.headers&&A.includes("headers"))U.headers=!0;if(!U.body&&A.includes("body"))U.body=!0;if(!U.cookie&&A.includes("cookie"))U.cookie=!0;if(!U.set&&A.includes("set"))U.set=!0;if(!U.query&&A.includes("server"))U.server=!0;if(!U.request&&A.includes("request"))U.request=!0;if(!U.route&&A.includes("route"))U.route=!0;continue}if(!U.query&&W("query",X))U.query=!0;if(z.includes("return "+X)||z.includes("return "+X+".query"))U.query=!0;if(!U.headers&&W("headers",X))U.headers=!0;if(!U.body&&W("body",X))U.body=!0;if(!U.cookie&&W("cookie",X))U.cookie=!0;if(!U.set&&W("set",X))U.set=!0;if(!U.server&&W("server",X))U.server=!0;if(U.query&&U.headers&&U.body&&U.cookie&&U.set&&U.server&&U.server&&U.route)break}return w},NG=(z,w,U)=>{try{let W=new RegExp(`(?:\\w)\\((?:.*)?${z}`,"gs");W.test(w);let X=w.charCodeAt(W.lastIndex);if(X===41||X===44)return U.query=!0,U.headers=!0,U.body=!0,U.cookie=!0,U.set=!0,U.server=!0,U.route=!0,U.request=!0,!0;return!1}catch(W){return console.log("[Sucrose] warning: unexpected isContextPassToFunction error, you may continue development as usual but please report the following to maintainers:"),console.log("--- body ---"),console.log(w),console.log("--- context ---"),console.log(z),!0}},rW=(z,w={query:!1,headers:!1,body:!1,cookie:!1,set:!1,server:!1,request:!1,route:!1})=>{let U=[];if(z.handler&&typeof z.handler==="function")U.push(z.handler);if(z.request?.length)U.push(...z.request);if(z.beforeHandle?.length)U.push(...z.beforeHandle);if(z.parse?.length)U.push(...z.parse);if(z.error?.length)U.push(...z.error);if(z.transform?.length)U.push(...z.transform);if(z.afterHandle?.length)U.push(...z.afterHandle);if(z.mapResponse?.length)U.push(...z.mapResponse);if(z.afterResponse?.length)U.push(...z.afterResponse);for(let W of U){if(!W)continue;let X="fn"in W?W.fn:W;if(typeof X!=="function")continue;let[A,Z,{isArrowReturn:$}]=QG(X.toString()),Y=MG(A,w),Q=qG(Y);if(Q){let J=sW(Q,Z.slice(1,-1));J.splice(0,-1,Q);let N=Z;if(N.charCodeAt(0)===123&&N.charCodeAt(Z.length-1)===125)N=N.slice(1,-1);if(!NG(Q,N,w))LG(N,J,w);if(!w.query&&N.includes("return "+Q+".query"))w.query=!0}if(w.query&&w.headers&&w.body&&w.cookie&&w.set&&w.server&&w.request&&w.route)break}return w},v6=[];for(let z=48;z<58;z++)v6[z]=z-48;for(let z=0;z<6;z++)v6[z+65]=v6[z+97]=z+10;var GG=(z,w)=>{if(z in v6&&w in v6)return v6[z]<<4|v6[w];return 255},aW=[...new Array(128).fill(0),...new Array(16).fill(1),...new Array(16).fill(2),...new Array(32).fill(3),4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4],HG=[0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0],EW=aW.map((z)=>[127,63,63,63,0,31,15,15,15,7,7,7][z]),P6=(z)=>{let w=z.indexOf("%");if(w===-1)return z;let U=z.length-3;if(w>U)return null;let W="",X=0,A=0,Z=w,$=12,Y;for(;;){if(Y=GG(z.charCodeAt(w+1),z.charCodeAt(w+2)),$=HG[$+aW[Y]],$===0)return null;if($===12){if(W+=z.substring(X,Z),A=A<<6|Y&EW[Y],A>65535)W+=String.fromCharCode(55232+(A>>10),56320+(A&1023));else W+=String.fromCharCode(A);if(X=w+3,w=z.indexOf("%",X),w===-1)return W+z.substring(X);if(w>U)return null;Z=w,A=0}else{if(w+=3,w>U||z.charCodeAt(w)!==37)return null;A=A<<6|Y&EW[Y]}}};class R4{name;jar;initial;constructor(z,w,U={}){this.name=z,this.jar=w,this.initial=U}get cookie(){return this.jar[this.name]??this.initial}set cookie(z){if(!(this.name in this.jar))this.jar[this.name]=this.initial;this.jar[this.name]=z}get setCookie(){if(!(this.name in this.jar))this.jar[this.name]=this.initial;return this.jar[this.name]}set setCookie(z){this.cookie=z}get value(){return this.cookie.value}set value(z){this.setCookie.value=z}get expires(){return this.cookie.expires}set expires(z){this.setCookie.expires=z}get maxAge(){return this.cookie.maxAge}set maxAge(z){this.setCookie.maxAge=z}get domain(){return this.cookie.domain}set domain(z){this.setCookie.domain=z}get path(){return this.cookie.path}set path(z){this.setCookie.path=z}get secure(){return this.cookie.secure}set secure(z){this.setCookie.secure=z}get httpOnly(){return this.cookie.httpOnly}set httpOnly(z){this.setCookie.httpOnly=z}get sameSite(){return this.cookie.sameSite}set sameSite(z){this.setCookie.sameSite=z}get priority(){return this.cookie.priority}set priority(z){this.setCookie.priority=z}get partitioned(){return this.cookie.partitioned}set partitioned(z){this.setCookie.partitioned=z}get secrets(){return this.cookie.secrets}set secrets(z){this.setCookie.secrets=z}update(z){return this.setCookie=Object.assign(this.cookie,typeof z==="function"?z(this.cookie):z),this}set(z){return this.setCookie=Object.assign({...this.initial,value:this.value},typeof z==="function"?z(this.cookie):z),this}remove(){if(this.value===void 0)return;return this.set({expires:new Date(0),maxAge:0,value:""}),this}toString(){return typeof this.value==="object"?JSON.stringify(this.value):this.value?.toString()??""}}var xW=(z,w,U)=>{if(!z.cookie)z.cookie={};return new Proxy(w,{get(W,X){if(X in w)return new R4(X,z.cookie,Object.assign({},U??{},w[X]));return new R4(X,z.cookie,Object.assign({},U))}})},eW=async(z,w,{secrets:U,sign:W,...X}={})=>{if(!w)return xW(z,{},X);let A=typeof U==="string";if(W&&W!==!0&&!Array.isArray(W))W=[W];let Z={},$=s5.parse(w);for(let[Y,Q]of Object.entries($)){if(Q===void 0)continue;let J=P6(Q);if(W===!0||W?.includes(Y)){if(!U)throw new Error("No secret is provided to cookie plugin");if(A){let N=await RW(J,U);if(N===!1)throw new Aw(Y);J=N}else{let N=!0;for(let S=0;S<U.length;S++){let G=await RW(J,U[S]);if(G!==!1){N=!0,J=G;break}}if(!N)throw new Aw(Y)}}Z[Y]={value:J}}return xW(z,Z,X)},zX=(z)=>{if(!z||!w1(z))return;let w=[];for(let[U,W]of Object.entries(z)){if(!U||!W)continue;let X=W.value;if(X===void 0||X===null)continue;w.push(s5.serialize(U,typeof X==="object"?JSON.stringify(X):X+"",W))}if(w.length===0)return;if(w.length===1)return w[0];return w},O6=(z,w)=>{let U=z.size;if(!w&&U||U&&w&&w.status!==206&&w.status!==304&&w.status!==412&&w.status!==416){if(w){if(w.headers instanceof Headers){let W={"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"};if(n5)W=w.headers.toJSON();else{W={};for(let[X,A]of w.headers.entries())if(X in w.headers)W[X]=A}return new Response(z,{status:w.status,headers:W})}if(w1(w.headers))return new Response(z,{status:w.status,headers:Object.assign({"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"},w.headers)})}return new Response(z,{headers:{"accept-ranges":"bytes","content-range":`bytes 0-${U-1}/${U}`,"transfer-encoding":"chunked"}})}return new Response(z)},wX=(z,w)=>{if(!z)return z;z.delete("set-cookie");for(let U=0;U<w.length;U++){let W=w[U].indexOf("=");z.append("set-cookie",`${w[U].slice(0,W)}=${w[U].slice(W+1)||""}`)}return z},n6=(z,w)=>{if(w?.headers){if(z){if(n5)Object.assign(w.headers,z.headers.toJSON());else for(let[U,W]of z.headers.entries())if(U in w.headers)w.headers[U]=W}if(w.status===200)w.status=z.status;if(w.headers["content-encoding"])delete w.headers["content-encoding"];return w}if(!z)return{headers:{},status:w?.status??200};if(n5){if(w={headers:z.headers.toJSON(),status:w?.status??200},w.headers["content-encoding"])delete w.headers["content-encoding"];return w}w={headers:{},status:w?.status??200};for(let[U,W]of z.headers.entries()){if(U==="content-encoding")continue;if(U in w.headers)w.headers[U]=W}return w},z1=async(z,w,U)=>{let W=z.next();if(W instanceof Promise)W=await W;if(W.done){if(w)return I2(W.value,w,U);return R6(W.value,U)}if(w?.headers){if(!w.headers["transfer-encoding"])w.headers["transfer-encoding"]="chunked";if(!w.headers["content-type"])w.headers["content-type"]="text/event-stream; charset=utf-8"}else w={status:200,headers:{"content-type":"text/event-stream; charset=utf-8","transfer-encoding":"chunked"}};return new Response(new ReadableStream({async start(X){let A=!1;if(U?.signal?.addEventListener("abort",()=>{A=!0;try{X.close()}catch{}}),W.value!==void 0&&W.value!==null)if(typeof W.value==="object")try{X.enqueue(Buffer.from(JSON.stringify(W.value)))}catch{X.enqueue(Buffer.from(W.value.toString()))}else X.enqueue(Buffer.from(W.value.toString()));for await(let Z of z){if(A)break;if(Z===void 0||Z===null)continue;if(typeof Z==="object")try{X.enqueue(Buffer.from(JSON.stringify(Z)))}catch{X.enqueue(Buffer.from(Z.toString()))}else X.enqueue(Buffer.from(Z.toString()));await new Promise(($)=>setTimeout(()=>$(),0))}try{X.close()}catch{}}}),w)};async function*u6(z){let w=z.body;if(!w)return;let U=w.getReader(),W=new TextDecoder;try{while(!0){let{done:X,value:A}=await U.read();if(X)break;yield W.decode(A)}}finally{U.releaseLock()}}var UX=(z)=>{if(typeof z.status==="string")z.status=p5[z.status];if(z.cookie&&w1(z.cookie)){let w=zX(z.cookie);if(w)z.headers["set-cookie"]=w}if(z.headers["set-cookie"]&&Array.isArray(z.headers["set-cookie"]))z.headers=wX(new Headers(z.headers),z.headers["set-cookie"])},o5=(z,w)=>{if(z.status!==w.status&&w.status!==200&&(z.status<=300||z.status>400))z=new Response(z.body,{headers:z.headers,status:w.status});let U=!1;if(w.headers instanceof Headers)for(let W of w.headers.keys())if(W==="set-cookie"){if(U)continue;U=!0;for(let X of w.headers.getSetCookie())z.headers.append("set-cookie",X)}else z.headers.append(W,w.headers?.get(W)??"");else for(let W in w.headers)z.headers.append(W,w.headers[W]);return z},I2=(z,w,U)=>{if(w1(w.headers)||w.status!==200||w.cookie)switch(UX(w),z?.constructor?.name){case"String":return new Response(z,w);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return O6(z.value);case"Blob":return O6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,I2(z.response,w,U);case"ReadableStream":if(!w.headers["content-type"]?.startsWith("text/event-stream"))w.headers["content-type"]="text/event-stream; charset=utf-8";return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,w);case void 0:if(!z)return new Response("",w);return Response.json(z,w);case"Response":if(z=o5(z,w),!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z,w),U);return z;case"Error":return C6(z,w);case"Promise":return z.then((W)=>I2(W,w,U));case"Function":return I2(z(),w,U);case"Number":case"Boolean":return new Response(z.toString(),w);case"Cookie":if(z instanceof R4)return new Response(z.value,w);return new Response(z?.toString(),w);case"FormData":return new Response(z,w);default:if(z instanceof Response){if(z=o5(z,w),z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z,w),U);return z}if(z instanceof Promise)return z.then((W)=>I2(W,w));if(z instanceof Error)return C6(z,w);if(z instanceof K1)return w.status=z.code,I2(z.response,w,U);if(typeof z?.next==="function")return z1(z,w,U);if(typeof z?.then==="function")return z.then((W)=>I2(W,w));if(typeof z?.toResponse==="function")return I2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z,w)}if(z instanceof Response&&!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z,w),U);if(typeof z?.next==="function"||z instanceof ReadableStream)return z1(z,w,U);return R6(z,U)},K2=(z,w,U)=>{if(z===void 0||z===null)return;if(w1(w.headers)||w.status!==200||w.cookie)switch(UX(w),z?.constructor?.name){case"String":return new Response(z,w);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return O6(z.value);case"Blob":return O6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,K2(z.response,w,U);case"ReadableStream":if(!w.headers["content-type"]?.startsWith("text/event-stream"))w.headers["content-type"]="text/event-stream; charset=utf-8";return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,w);case void 0:if(!z)return;return Response.json(z,w);case"Response":if(z=o5(z,w),!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z,w),U);return z;case"Promise":return z.then((W)=>K2(W,w));case"Error":return C6(z,w);case"Function":return K2(z(),w);case"Number":case"Boolean":return new Response(z.toString(),w);case"FormData":return new Response(z);case"Cookie":if(z instanceof R4)return new Response(z.value,w);return new Response(z?.toString(),w);default:if(z instanceof Response){if(z=o5(z,w),z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z,w),U);return z}if(z instanceof Promise)return z.then((W)=>K2(W,w));if(z instanceof Error)return C6(z,w);if(z instanceof K1)return w.status=z.code,K2(z.response,w,U);if(typeof z?.next==="function")return z1(z,w,U);if(typeof z?.then==="function")return z.then((W)=>K2(W,w));if(typeof z?.toResponse==="function")return K2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z,w)}else switch(z?.constructor?.name){case"String":return new Response(z);case"Array":case"Object":return Response.json(z,w);case"ElysiaFile":return O6(z.value);case"Blob":return O6(z,w);case"ElysiaCustomStatusResponse":return w.status=z.code,K2(z.response,w,U);case"ReadableStream":return U?.signal?.addEventListener("abort",{handleEvent(){if(U?.signal&&!U?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!z)return new Response("");return new Response(JSON.stringify(z),{headers:{"content-type":"application/json"}});case"Response":if(!z.headers.has("content-length")&&z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z),U);return z;case"Promise":return z.then((W)=>{let X=K2(W,w);if(X!==void 0)return X});case"Error":return C6(z,w);case"Function":return R6(z(),U);case"Number":case"Boolean":return new Response(z.toString());case"Cookie":if(z instanceof R4)return new Response(z.value,w);return new Response(z?.toString(),w);case"FormData":return new Response(z);default:if(z instanceof Response)return z;if(z instanceof Promise)return z.then((W)=>K2(W,w));if(z instanceof Error)return C6(z,w);if(z instanceof K1)return w.status=z.code,K2(z.response,w,U);if(typeof z?.next==="function")return z1(z,w,U);if(typeof z?.then==="function")return z.then((W)=>K2(W,w));if(typeof z?.toResponse==="function")return K2(z.toResponse(),w);if("charCodeAt"in z){let W=z.charCodeAt(0);if(W===123||W===91){if(!w.headers["Content-Type"])w.headers["Content-Type"]="application/json";return new Response(JSON.stringify(z),w)}}return new Response(z)}},R6=(z,w)=>{switch(z?.constructor?.name){case"String":return new Response(z);case"Object":case"Array":return Response.json(z);case"ElysiaFile":return O6(z.value);case"Blob":return O6(z);case"ElysiaCustomStatusResponse":return I2(z.response,{status:z.code,headers:{}});case"ReadableStream":return w?.signal?.addEventListener("abort",{handleEvent(){if(w?.signal&&!w?.signal?.aborted)z.cancel()}},{once:!0}),new Response(z,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!z)return new Response("");return new Response(JSON.stringify(z),{headers:{"content-type":"application/json"}});case"Response":if(z.headers.get("transfer-encoding")==="chunked")return z1(u6(z),n6(z),w);return z;case"Error":return C6(z);case"Promise":return z.then((U)=>R6(U,w));case"Function":return R6(z(),w);case"Number":case"Boolean":return new Response(z.toString());case"FormData":return new Response(z);default:if(z instanceof Response)return z;if(z instanceof Promise)return z.then((U)=>R6(U,w));if(z instanceof Error)return C6(z);if(z instanceof K1)return I2(z.response,{status:z.code,headers:{}});if(typeof z?.next==="function")return z1(z,void 0,w);if(typeof z?.then==="function")return z.then((U)=>I2(U,set));if(typeof z?.toResponse==="function")return R6(z.toResponse());if("charCodeAt"in z){let U=z.charCodeAt(0);if(U===123||U===91)return new Response(JSON.stringify(z),{headers:{"Content-Type":"application/json"}})}return new Response(z)}},C6=(z,w)=>new Response(JSON.stringify({name:z?.name,message:z?.message,cause:z?.cause}),{status:w?.status!==200?w?.status??500:500,headers:w?.headers}),_G=(z,w,U={})=>{if(typeof z==="function")return;let W=I2(z,{headers:U});if(!w.parse?.length&&!w.transform?.length&&!w.beforeHandle?.length&&!w.afterHandle?.length)return W.clone.bind(W)},y5={name:"web-standard",isWebStandard:!0,handler:{mapResponse:I2,mapEarlyResponse:K2,mapCompactResponse:R6,createStaticHandler:_G},composeHandler:{mapResponseContext:"c.request",preferWebstandardHeaders:!0,headers:`c.headers = {}
11
11
  for (const [key, value] of c.request.headers.entries())c.headers[key] = value
12
12
  `,parser:{json(z){if(z)return`try{c.body=await c.request.json()}catch{}
13
13
  `;return`c.body=await c.request.json()
@@ -20,48 +20,48 @@ c.body={}
20
20
  `;return w+`for(const key of form.keys()){if(c.body[key]) continue
21
21
  const value=form.getAll(key)
22
22
  if(value.length===1)c.body[key]=value[0]
23
- else c.body[key]=value}`}}},composeGeneralHandler:{parameters:"r",createContext(z){let w="",U="",W=z.setHeaders;for(let $ of Object.keys(z.singleton.decorator))w+=`,${$}: decorator['${$}']`;let X=z.config.handler?.standardHostname??!0,Z=!!z.event.trace?.length;if(U+=`const u=r.url,s=u.indexOf('/',${X?11:7}),qi=u.indexOf('?', s + 1)
23
+ else c.body[key]=value}`}}},composeGeneralHandler:{parameters:"r",createContext(z){let w="",U="",W=z.setHeaders;for(let Z of Object.keys(z.singleton.decorator))w+=`,${Z}: decorator['${Z}']`;let X=z.config.handler?.standardHostname??!0,A=!!z.event.trace?.length;if(U+=`const u=r.url,s=u.indexOf('/',${X?11:7}),qi=u.indexOf('?', s + 1)
24
24
  let p
25
25
  if(qi===-1)p=u.substring(s)
26
26
  else p=u.substring(s, qi)
27
- `,Z)U+=`const id=randomId()
28
- `;if(U+="const c={request:r,store,qi,path:p,url:u,redirect,error,set:{headers:",U+=Object.keys(W??{}).length?"Object.assign({}, app.setHeaders)":"{}",U+=",status:200}",z.inference.server)U+=",get server(){return app.getServer()}";if(Z)U+=",[ELYSIA_REQUEST_ID]:id";return U+=w,U+=`}
29
- `,U},websocket(z){let w="",U=z.router.static.ws,W=z.router.http;if(W.build(),Object.keys(U).length||W.root.ws||W.history.find((X)=>X["0"]==="ws")){w+="if(r.method==='GET'){switch(p){";for(let[X,Z]of Object.entries(U))w+=`case'${X}':`+(z.config.strictPath!==!0?`case'${S4(X)}':`:"")+`if(r.headers.get('upgrade')==='websocket')return ht[${Z}].composed(c)
27
+ `,A)U+=`const id=randomId()
28
+ `;if(U+="const c={request:r,store,qi,path:p,url:u,redirect,error,set:{headers:",U+=Object.keys(W??{}).length?"Object.assign({}, app.setHeaders)":"{}",U+=",status:200}",z.inference.server)U+=",get server(){return app.getServer()}";if(A)U+=",[ELYSIA_REQUEST_ID]:id";return U+=w,U+=`}
29
+ `,U},websocket(z){let w="",U=z.router.static.ws,W=z.router.http;if(W.build(),Object.keys(U).length||W.root.ws||W.history.find((X)=>X["0"]==="ws")){w+="if(r.method==='GET'){switch(p){";for(let[X,A]of Object.entries(U))w+=`case'${X}':`+(z.config.strictPath!==!0?`case'${D4(X)}':`:"")+`if(r.headers.get('upgrade')==='websocket')return ht[${A}].composed(c)
30
30
  `;w+=`default:if(r.headers.get('upgrade')==='websocket'){const route=router.find('ws',p)
31
31
  if(route){c.params=route.params
32
32
  if(route.store.handler)return route.store.handler(c)
33
33
  return (route.store.handler=route.store.compile())(c)}}break}}`}return w},error404(z,w){let U="if(route===null)return ";if(w)U+=`app.handleError(c,notFound,false,${this.parameters})`;else U+=z?"new Response(error404Message,{status:c.set.status===200?404:c.set.status,headers:c.set.headers})":"error404.clone()";return{declare:w?"":`const error404Message=notFound.message.toString()
34
34
  const error404=new Response(error404Message,{status:404})
35
- `,code:U}}},composeError:{mapResponseContext:"",validationError:"return new Response(error.message,{headers:Object.assign({'content-type':'application/json'},set.headers),status:set.status})",unknownError:"return new Response(error.message,{headers:set.headers,status:error.status??set.status??500})"},listen(){return()=>{throw new Error("WebStandard does not support listen, you might want to export default Elysia.fetch instead")}}},XG=(z,w,U={})=>{if(typeof z==="function"||z instanceof Blob)return;if(typeof z==="object"&&z?.toString()==="[object HTMLBundle]")return()=>z;let W=E2(z,{headers:U});if(!w.parse?.length&&!w.transform?.length&&!w.beforeHandle?.length&&!w.afterHandle?.length){if(!W.headers.has("content-type"))W.headers.append("content-type","text/plain;charset=utf-8");return W.clone.bind(W)}},fU={open(z){z.data.open?.(z)},message(z,w){z.data.message?.(z,w)},drain(z){z.data.drain?.(z)},close(z,w,U){z.data.close?.(z,w,U)}};class l4{raw;data;body;validator;["~types"];get id(){return this.data.id}constructor(z,w,U=void 0){this.raw=z,this.data=w,this.body=U,this.validator=z.data?.validator,this.sendText=z.sendText.bind(z),this.sendBinary=z.sendBinary.bind(z),this.close=z.close.bind(z),this.terminate=z.terminate.bind(z),this.publishText=z.publishText.bind(z),this.publishBinary=z.publishBinary.bind(z),this.subscribe=z.subscribe.bind(z),this.unsubscribe=z.unsubscribe.bind(z),this.isSubscribed=z.isSubscribed.bind(z),this.cork=z.cork.bind(z),this.remoteAddress=z.remoteAddress,this.binaryType=z.binaryType,this.data=z.data,this.send=this.send.bind(this),this.ping=this.ping.bind(this),this.pong=this.pong.bind(this),this.publish=this.publish.bind(this)}send(z,w){if(Buffer.isBuffer(z))return this.raw.send(z,w);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.send(z,w)}ping(z){if(Buffer.isBuffer(z))return this.raw.ping(z);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.ping(z)}pong(z){if(Buffer.isBuffer(z))return this.raw.pong(z);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.pong(z)}publish(z,w,U){if(Buffer.isBuffer(w))return this.raw.publish(z,w,U);if(this.validator?.Check(w)===!1)return this.raw.send(new r("message",this.validator,w).message);if(typeof w==="object")w=JSON.stringify(w);return this.raw.publish(z,w,U)}sendText;sendBinary;close;terminate;publishText;publishBinary;subscribe;unsubscribe;isSubscribed;cork;remoteAddress;binaryType;get readyState(){return this.raw.readyState}}var ZG=(z)=>{let w=typeof z==="function"?[z]:z;return async function U(W,X){if(typeof X==="string"){let Z=X?.charCodeAt(0);if(Z===34||Z===47||Z===91||Z===123)try{X=JSON.parse(X)}catch{}else if(ez(X))X=+X;else if(X==="true")X=!0;else if(X==="false")X=!1;else if(X==="null")X=null}if(w)for(let Z=0;Z<w.length;Z++){let $=w[Z](W,X);if($ instanceof Promise)$=await $;if($!==void 0)return $}return X}},$G=(z)=>{let w=(U,W)=>{if(W instanceof Promise)return W.then(($)=>w(U,$));if(Buffer.isBuffer(W))return U.send(W.toString());if(W===void 0)return;let X=($)=>{if(z?.Check($)===!1)return U.send(new r("message",z,$).message);if(typeof $==="object")return U.send(JSON.stringify($));U.send($)};if(typeof W?.next!=="function")return void X(W);let Z=W.next();if(Z instanceof Promise)return(async()=>{let $=await Z;if(z?.Check($)===!1)return U.send(new r("message",z,$).message);if(X($.value),!$.done)for await(let A of W)X(A)})();if(X(Z.value),!Z.done)for(let $ of W)X($)};return w},AG={...t8,name:"bun",handler:{...t8.handler,createNativeStaticHandler:XG},composeHandler:{...t8.composeHandler,headers:p8?`c.headers = c.request.headers.toJSON()
35
+ `,code:U}}},composeError:{mapResponseContext:"",validationError:"return new Response(error.message,{headers:Object.assign({'content-type':'application/json'},set.headers),status:set.status})",unknownError:"return new Response(error.message,{headers:set.headers,status:error.status??set.status??500})"},listen(){return()=>{throw new Error("WebStandard does not support listen, you might want to export default Elysia.fetch instead")}}},SG=(z,w,U={})=>{if(typeof z==="function"||z instanceof Blob)return;if(typeof z==="object"&&z?.toString()==="[object HTMLBundle]")return()=>z;let W=I2(z,{headers:U});if(!w.parse?.length&&!w.transform?.length&&!w.beforeHandle?.length&&!w.afterHandle?.length){if(!W.headers.has("content-type"))W.headers.append("content-type","text/plain;charset=utf-8");return W.clone.bind(W)}},VW={open(z){z.data.open?.(z)},message(z,w){z.data.message?.(z,w)},drain(z){z.data.drain?.(z)},close(z,w,U){z.data.close?.(z,w,U)}};class e4{raw;data;body;validator;["~types"];get id(){return this.data.id}constructor(z,w,U=void 0){this.raw=z,this.data=w,this.body=U,this.validator=z.data?.validator,this.sendText=z.sendText.bind(z),this.sendBinary=z.sendBinary.bind(z),this.close=z.close.bind(z),this.terminate=z.terminate.bind(z),this.publishText=z.publishText.bind(z),this.publishBinary=z.publishBinary.bind(z),this.subscribe=z.subscribe.bind(z),this.unsubscribe=z.unsubscribe.bind(z),this.isSubscribed=z.isSubscribed.bind(z),this.cork=z.cork.bind(z),this.remoteAddress=z.remoteAddress,this.binaryType=z.binaryType,this.data=z.data,this.send=this.send.bind(this),this.ping=this.ping.bind(this),this.pong=this.pong.bind(this),this.publish=this.publish.bind(this)}send(z,w){if(Buffer.isBuffer(z))return this.raw.send(z,w);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.send(z,w)}ping(z){if(Buffer.isBuffer(z))return this.raw.ping(z);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.ping(z)}pong(z){if(Buffer.isBuffer(z))return this.raw.pong(z);if(this.validator?.Check(z)===!1)return this.raw.send(new r("message",this.validator,z).message);if(typeof z==="object")z=JSON.stringify(z);return this.raw.pong(z)}publish(z,w,U){if(Buffer.isBuffer(w))return this.raw.publish(z,w,U);if(this.validator?.Check(w)===!1)return this.raw.send(new r("message",this.validator,w).message);if(typeof w==="object")w=JSON.stringify(w);return this.raw.publish(z,w,U)}sendText;sendBinary;close;terminate;publishText;publishBinary;subscribe;unsubscribe;isSubscribed;cork;remoteAddress;binaryType;get readyState(){return this.raw.readyState}}var DG=(z)=>{let w=typeof z==="function"?[z]:z;return async function U(W,X){if(typeof X==="string"){let A=X?.charCodeAt(0);if(A===34||A===47||A===91||A===123)try{X=JSON.parse(X)}catch{}else if(Yw(X))X=+X;else if(X==="true")X=!0;else if(X==="false")X=!1;else if(X==="null")X=null}if(w)for(let A=0;A<w.length;A++){let Z=w[A](W,X);if(Z instanceof Promise)Z=await Z;if(Z!==void 0)return Z}return X}},PG=(z)=>{let w=(U,W)=>{if(W instanceof Promise)return W.then((Z)=>w(U,Z));if(Buffer.isBuffer(W))return U.send(W.toString());if(W===void 0)return;let X=(Z)=>{if(z?.Check(Z)===!1)return U.send(new r("message",z,Z).message);if(typeof Z==="object")return U.send(JSON.stringify(Z));U.send(Z)};if(typeof W?.next!=="function")return void X(W);let A=W.next();if(A instanceof Promise)return(async()=>{let Z=await A;if(z?.Check(Z)===!1)return U.send(new r("message",z,Z).message);if(X(Z.value),!Z.done)for await(let $ of W)X($)})();if(X(A.value),!A.done)for(let Z of W)X(Z)};return w},OG={...y5,name:"bun",handler:{...y5.handler,createNativeStaticHandler:SG},composeHandler:{...y5.composeHandler,headers:n5?`c.headers = c.request.headers.toJSON()
36
36
  `:`c.headers = {}
37
37
  for (const [key, value] of c.request.headers.entries())c.headers[key] = value
38
- `},listen(z){return(w,U)=>{if(typeof Bun==="undefined")throw new Error(".listen() is designed to run on Bun only. If you are running Elysia in other environment please use a dedicated plugin or export the handler via Elysia.fetch");if(z.compile(),typeof w==="string"){if(!ez(w))throw new Error("Port must be a numeric value");w=parseInt(w)}let W=z.fetch,X=typeof w==="object"?{development:!r8,reusePort:!0,...z.config.serve||{},...w||{},static:{...z.router.static.http.static,...z.config.serve?.static},websocket:{...z.config.websocket||{},...fU||{}},fetch:W,error:z.outerErrorHandler}:{development:!r8,reusePort:!0,...z.config.serve||{},static:z.router.static.http.static,websocket:{...z.config.websocket||{},...fU||{}},port:w,fetch:W,error:z.outerErrorHandler};if(z.server=Bun?.serve(X),z.event.start)for(let Z=0;Z<z.event.start.length;Z++)z.event.start[Z].fn(z);if(U)U(z.server);process.on("beforeExit",()=>{if(z.server){if(z.server.stop?.(),z.server=null,z.event.stop)for(let Z=0;Z<z.event.stop.length;Z++)z.event.stop[Z].fn(z)}}),z.promisedModules.then(()=>{Bun?.gc(!1)})}},ws(z,w,U){let{parse:W,body:X,response:Z,...$}=U,A=F2(X,{modules:z.definitions.typebox,models:z.definitions.type,normalize:z.config.normalize}),Q=F2(Z,{modules:z.definitions.typebox,models:z.definitions.type,normalize:z.config.normalize});z.route("$INTERNALWS",w,async(Y)=>{let J=z.getServer(),{set:G,path:S,qi:N,headers:O,query:M,params:C}=Y;if(Y.validator=Q,U.upgrade){if(typeof U.upgrade==="function"){let f=U.upgrade(Y);if(f instanceof Promise)await f}else if(U.upgrade)Object.assign(G.headers,U.upgrade)}if(G.cookie&&z1(G.cookie)){let f=XW(G.cookie);if(f)G.headers["set-cookie"]=f}if(G.headers["set-cookie"]&&Array.isArray(G.headers["set-cookie"]))G.headers=ZW(new Headers(G.headers),G.headers["set-cookie"]);let g=$G(Q),L0=ZG(W),a,$0=[...Array.isArray(U.error)?U.error:[U.error],...(z.event.error??[]).map((f)=>typeof f==="function"?f:f.fn)],K0=!$0.length?()=>{}:async(f,V)=>{for(let k of $0){let j=k(Object.assign(Y,{error:V}));if(j instanceof Promise)j=await j;if(await g(f,j),j)break}};if(J?.upgrade(Y.request,{headers:z1(G.headers)?G.headers:void 0,data:{...Y,get id(){if(a)return a;return a=uU()},validator:Q,ping(f){U.ping?.(f)},pong(f){U.pong?.(f)},open(f){try{g(f,U.open?.(new l4(f,Y)))}catch(V){K0(f,V)}},message:async(f,V)=>{let k=await L0(f,V);if(A?.Check(k)===!1)return void f.send(new r("message",A,k).message);try{g(f,U.message?.(new l4(f,Y,k),k))}catch(j){K0(f,j)}},drain(f){try{g(f,U.drain?.(new l4(f,Y)))}catch(V){K0(f,V)}},close(f,V,k){try{g(f,U.close?.(new l4(f,Y),V,k))}catch(j){K0(f,j)}}}}))return;return G.status=400,"Expected a websocket connection"},{...$,websocket:U})}},QG=typeof Bun!=="undefined",dU=QG?Bun.env:typeof process!=="undefined"&&process?.env?process.env:{},D4=/\+/g;function YG(z){let w={};if(typeof z!=="string")return w;let U="",W="",X=-1,Z=-1,$=0,A=z.length;for(let Q=0;Q<A;Q++)switch(z.charCodeAt(Q)){case 38:let Y=Z>X;if(!Y)Z=Q;if(U=z.slice(X+1,Z),Y||U.length>0){if($&1)U=U.replace(D4," ");if($&2)U=S6(U)||U;if(!w[U]){if(Y){if(W=z.slice(Z+1,Q),$&4)W=W.replace(D4," ");if($&8)W=S6(W)||W}w[U]=W}}U="",W="",X=Q,Z=Q,$=0;break;case 61:if(Z<=X)Z=Q;else $|=8;break;case 43:if(Z>X)$|=4;else $|=1;break;case 37:if(Z>X)$|=8;else $|=2;break}if(X<A){let Q=Z>X;if(U=z.slice(X+1,Q?Z:A),Q||U.length>0){if($&1)U=U.replace(D4," ");if($&2)U=S6(U)||U;if(!w[U]){if(Q){if(W=z.slice(Z+1,A),$&4)W=W.replace(D4," ");if($&8)W=S6(W)||W}w[U]=W}}}return w}var o8=(z)=>{let w={};if(typeof z!=="string")return w;let U=z.length,W="",X="",Z=-1,$=-1,A=!1,Q=!1,Y=!1,J=!1,G=!1,S=0;for(let N=0;N<U+1;N++){if(N!==U)S=z.charCodeAt(N);else S=38;switch(S){case 38:{if(G=$>Z,!G)$=N;if(W=z.slice(Z+1,$),G||W.length>0){if(Y)W=W.replace(D4," ");if(A)W=S6(W)||W;if(G){if(X=z.slice($+1,N),J)X=X.replace(D4," ");if(Q)X=S6(X)||X}let O=w[W];if(O===void 0)w[W]=X;else if(O.pop)O.push(X);else w[W]=[O,X]}X="",Z=N,$=N,A=!1,Q=!1,Y=!1,J=!1;break}case 61:if($<=Z)$=N;else Q=!0;break;case 43:if($>Z)J=!0;else Y=!0;break;case 37:if($>Z)Q=!0;else A=!0;break}}return w},ww=Symbol("ElysiaTrace"),e1=()=>{let{promise:z,resolve:w}=Promise.withResolvers(),{promise:U,resolve:W}=Promise.withResolvers(),{promise:X,resolve:Z}=Promise.withResolvers(),$=[],A=[];return[(Q)=>{if(Q)$.push(Q);return z},(Q)=>{let Y=[],J=[],G=null;for(let N=0;N<(Q.total??0);N++){let{promise:O,resolve:M}=Promise.withResolvers(),{promise:C,resolve:g}=Promise.withResolvers(),{promise:L0,resolve:a}=Promise.withResolvers(),$0=[],K0=[];Y.push((f)=>{if(f)$0.push(f);return O}),J.push((f)=>{let V={...f,end:C,error:L0,index:N,onStop(k){if(k)K0.push(k);return C}};M(V);for(let k=0;k<$0.length;k++)$0[k](V);return(k=null)=>{let j=performance.now();if(k)G=k;let e={end:j,error:k,get elapsed(){return j-f.begin}};for(let Y0=0;Y0<K0.length;Y0++)K0[Y0](e);g(j),a(k)}})}let S={...Q,end:U,error:X,onEvent(N){for(let O=0;O<Y.length;O++)Y[O](N)},onStop(N){if(N)A.push(N);return U}};w(S);for(let N=0;N<$.length;N++)$[N](S);return{resolveChild:J,resolve(N=null){let O=performance.now();if(!N&&G)N=G;let M={end:O,error:N,get elapsed(){return O-Q.begin}};for(let C=0;C<A.length;C++)A[C](M);W(O),Z(N)}}}]},JG=(z)=>{return(w)=>{let[U,W]=e1(),[X,Z]=e1(),[$,A]=e1(),[Q,Y]=e1(),[J,G]=e1(),[S,N]=e1(),[O,M]=e1(),[C,g]=e1(),[L0,a]=e1();return z({id:w[z5],context:w,set:w.set,onRequest:U,onParse:X,onTransform:$,onBeforeHandle:Q,onHandle:J,onAfterHandle:S,onMapResponse:C,onAfterResponse:L0,onError:O}),{request:W,parse:Z,transform:A,beforeHandle:Y,handle:G,afterHandle:N,error:M,mapResponse:g,afterResponse:a}}},m6={optional:Symbol.for("TypeBox.Optional"),kind:Symbol.for("TypeBox.Kind")},R1=(z)=>{if(!z)return!1;let w=z?.schema;if(w?.[m6.kind]==="Import")return z.References().some(R1);return!!w&&m6.optional in w},Q2=(z,w)=>w?z:"",BG=["json","text","urlencoded","arrayBuffer","formdata","application/json","text/plain","application/x-www-form-urlencoded","application/octet-stream","multipart/form-data"],a2=(z)=>{if(!z)return!1;let w=z?.schema??z;if(w[m6.kind]==="Import"&&z.References())return z.References().some(a2);if(w.anyOf)return w.anyOf.some(a2);if(w.someOf)return w.someOf.some(a2);if(w.allOf)return w.allOf.some(a2);if(w.not)return w.not.some(a2);if(w.type==="object"){let U=w.properties;if("additionalProperties"in w)return w.additionalProperties;if("patternProperties"in w)return!1;for(let W of Object.keys(U)){let X=U[W];if(X.type==="object"){if(a2(X))return!0}else if(X.anyOf){for(let Z=0;Z<X.anyOf.length;Z++)if(a2(X.anyOf[Z]))return!0}return X.additionalProperties}return!1}return!1},Uw=({context:z="c",trace:w=[],addFn:U})=>{if(!w.length)return()=>{return{resolveChild(){return()=>{}},resolve(){}}};for(let W=0;W<w.length;W++)U(`let report${W}, reportChild${W}, reportErr${W}, reportErrChild${W};let trace${W} = ${z}[ELYSIA_TRACE]?.[${W}] ?? trace[${W}](${z});
39
- `);return(W,{name:X,total:Z=0}={})=>{if(!X)X="anonymous";let $=W==="error"?"reportErr":"report";for(let A=0;A<w.length;A++)U(`${$}${A} = trace${A}.${W}({id,event:'${W}',name:'${X}',begin:performance.now(),total:${Z}})
40
- `);return{resolve(){for(let A=0;A<w.length;A++)U(`${$}${A}.resolve()
41
- `)},resolveChild(A){for(let Q=0;Q<w.length;Q++)U(`${$}Child${Q}=${$}${Q}.resolveChild?.shift()?.({id,event:'${W}',name:'${A}',begin:performance.now()})
42
- `);return(Q)=>{for(let Y=0;Y<w.length;Y++)if(Q)U(`if(${Q} instanceof Error){${$}Child${Y}?.(${Q}) }else{${$}Child${Y}?.()}`);else U(`${$}Child${Y}?.()
43
- `)}}}}},MG=({injectResponse:z="",normalize:w=!1,validator:U,encodeSchema:W=!1})=>({composeValidation:(X,Z=`c.${X}`)=>`c.set.status=422;throw new ValidationError('${X}',validator.${X},${Z})`,composeResponseValidation:(X="r")=>{let Z=z+`
44
- `;Z+=`if(${X} instanceof ElysiaCustomStatusResponse){c.set.status=${X}.code
38
+ `},listen(z){return(w,U)=>{if(typeof Bun==="undefined")throw new Error(".listen() is designed to run on Bun only. If you are running Elysia in other environment please use a dedicated plugin or export the handler via Elysia.fetch");if(z.compile(),typeof w==="string"){if(!Yw(w))throw new Error("Port must be a numeric value");w=parseInt(w)}let W=z.fetch,X=typeof w==="object"?{development:!t5,reusePort:!0,...z.config.serve||{},...w||{},static:{...z.router.static.http.static,...z.config.serve?.static},websocket:{...z.config.websocket||{},...VW||{}},fetch:W,error:z.outerErrorHandler}:{development:!t5,reusePort:!0,...z.config.serve||{},static:z.router.static.http.static,websocket:{...z.config.websocket||{},...VW||{}},port:w,fetch:W,error:z.outerErrorHandler};if(z.server=Bun?.serve(X),z.event.start)for(let A=0;A<z.event.start.length;A++)z.event.start[A].fn(z);if(U)U(z.server);process.on("beforeExit",()=>{if(z.server){if(z.server.stop?.(),z.server=null,z.event.stop)for(let A=0;A<z.event.stop.length;A++)z.event.stop[A].fn(z)}}),z.promisedModules.then(()=>{Bun?.gc(!1)})}},ws(z,w,U){let{parse:W,body:X,response:A,...Z}=U,$=j2(X,{modules:z.definitions.typebox,models:z.definitions.type,normalize:z.config.normalize}),Y=j2(A,{modules:z.definitions.typebox,models:z.definitions.type,normalize:z.config.normalize});z.route("$INTERNALWS",w,async(Q)=>{let J=z.getServer(),{set:N,path:S,qi:G,headers:O,query:B,params:C}=Q;if(Q.validator=Y,U.upgrade){if(typeof U.upgrade==="function"){let g=U.upgrade(Q);if(g instanceof Promise)await g}else if(U.upgrade)Object.assign(N.headers,U.upgrade)}if(N.cookie&&w1(N.cookie)){let g=zX(N.cookie);if(g)N.headers["set-cookie"]=g}if(N.headers["set-cookie"]&&Array.isArray(N.headers["set-cookie"]))N.headers=wX(new Headers(N.headers),N.headers["set-cookie"]);let i=PG(Y),N0=DG(W),U0,D0=[...Array.isArray(U.error)?U.error:[U.error],...(z.event.error??[]).map((g)=>typeof g==="function"?g:g.fn)],K0=!D0.length?()=>{}:async(g,x)=>{for(let T of D0){let F=T(Object.assign(Q,{error:x}));if(F instanceof Promise)F=await F;if(await i(g,F),F)break}};if(J?.upgrade(Q.request,{headers:w1(N.headers)?N.headers:void 0,data:{...Q,get id(){if(U0)return U0;return U0=iW()},validator:Y,ping(g){U.ping?.(g)},pong(g){U.pong?.(g)},open(g){try{i(g,U.open?.(new e4(g,Q)))}catch(x){K0(g,x)}},message:async(g,x)=>{let T=await N0(g,x);if($?.Check(T)===!1)return void g.send(new r("message",$,T).message);try{i(g,U.message?.(new e4(g,Q,T),T))}catch(F){K0(g,F)}},drain(g){try{i(g,U.drain?.(new e4(g,Q)))}catch(x){K0(g,x)}},close(g,x,T){try{i(g,U.close?.(new e4(g,Q),x,T))}catch(F){K0(g,F)}}}}))return;return N.status=400,"Expected a websocket connection"},{...Z,websocket:U})}},RG=typeof Bun!=="undefined",kW=RG?Bun.env:typeof process!=="undefined"&&process?.env?process.env:{},P4=/\+/g;function CG(z){let w={};if(typeof z!=="string")return w;let U="",W="",X=-1,A=-1,Z=0,$=z.length;for(let Y=0;Y<$;Y++)switch(z.charCodeAt(Y)){case 38:let Q=A>X;if(!Q)A=Y;if(U=z.slice(X+1,A),Q||U.length>0){if(Z&1)U=U.replace(P4," ");if(Z&2)U=P6(U)||U;if(!w[U]){if(Q){if(W=z.slice(A+1,Y),Z&4)W=W.replace(P4," ");if(Z&8)W=P6(W)||W}w[U]=W}}U="",W="",X=Y,A=Y,Z=0;break;case 61:if(A<=X)A=Y;else Z|=8;break;case 43:if(A>X)Z|=4;else Z|=1;break;case 37:if(A>X)Z|=8;else Z|=2;break}if(X<$){let Y=A>X;if(U=z.slice(X+1,Y?A:$),Y||U.length>0){if(Z&1)U=U.replace(P4," ");if(Z&2)U=P6(U)||U;if(!w[U]){if(Y){if(W=z.slice(A+1,$),Z&4)W=W.replace(P4," ");if(Z&8)W=P6(W)||W}w[U]=W}}}return w}var v5=(z)=>{let w={};if(typeof z!=="string")return w;let U=z.length,W="",X="",A=-1,Z=-1,$=!1,Y=!1,Q=!1,J=!1,N=!1,S=0;for(let G=0;G<U+1;G++){if(G!==U)S=z.charCodeAt(G);else S=38;switch(S){case 38:{if(N=Z>A,!N)Z=G;if(W=z.slice(A+1,Z),N||W.length>0){if(Q)W=W.replace(P4," ");if($)W=P6(W)||W;if(N){if(X=z.slice(Z+1,G),J)X=X.replace(P4," ");if(Y)X=P6(X)||X}let O=w[W];if(O===void 0)w[W]=X;else if(O.pop)O.push(X);else w[W]=[O,X]}X="",A=G,Z=G,$=!1,Y=!1,Q=!1,J=!1;break}case 61:if(Z<=A)Z=G;else Y=!0;break;case 43:if(Z>A)J=!0;else Q=!0;break;case 37:if(Z>A)Y=!0;else $=!0;break}}return w},Jw=Symbol("ElysiaTrace"),w6=()=>{let{promise:z,resolve:w}=Promise.withResolvers(),{promise:U,resolve:W}=Promise.withResolvers(),{promise:X,resolve:A}=Promise.withResolvers(),Z=[],$=[];return[(Y)=>{if(Y)Z.push(Y);return z},(Y)=>{let Q=[],J=[],N=null;for(let G=0;G<(Y.total??0);G++){let{promise:O,resolve:B}=Promise.withResolvers(),{promise:C,resolve:i}=Promise.withResolvers(),{promise:N0,resolve:U0}=Promise.withResolvers(),D0=[],K0=[];Q.push((g)=>{if(g)D0.push(g);return O}),J.push((g)=>{let x={...g,end:C,error:N0,index:G,onStop(T){if(T)K0.push(T);return C}};B(x);for(let T=0;T<D0.length;T++)D0[T](x);return(T=null)=>{let F=performance.now();if(T)N=T;let W0={end:F,error:T,get elapsed(){return F-g.begin}};for(let G0=0;G0<K0.length;G0++)K0[G0](W0);i(F),U0(T)}})}let S={...Y,end:U,error:X,onEvent(G){for(let O=0;O<Q.length;O++)Q[O](G)},onStop(G){if(G)$.push(G);return U}};w(S);for(let G=0;G<Z.length;G++)Z[G](S);return{resolveChild:J,resolve(G=null){let O=performance.now();if(!G&&N)G=N;let B={end:O,error:G,get elapsed(){return O-Y.begin}};for(let C=0;C<$.length;C++)$[C](B);W(O),A(G)}}}]},bG=(z)=>{return(w)=>{let[U,W]=w6(),[X,A]=w6(),[Z,$]=w6(),[Y,Q]=w6(),[J,N]=w6(),[S,G]=w6(),[O,B]=w6(),[C,i]=w6(),[N0,U0]=w6();return z({id:w[l5],context:w,set:w.set,onRequest:U,onParse:X,onTransform:Z,onBeforeHandle:Y,onHandle:J,onAfterHandle:S,onMapResponse:C,onAfterResponse:N0,onError:O}),{request:W,parse:A,transform:$,beforeHandle:Q,handle:N,afterHandle:G,error:B,mapResponse:i,afterResponse:U0}}},m6={optional:Symbol.for("TypeBox.Optional"),kind:Symbol.for("TypeBox.Kind")},C1=(z)=>{if(!z)return!1;let w=z?.schema;if(w?.[m6.kind]==="Import")return z.References().some(C1);return!!w&&m6.optional in w},Y2=(z,w)=>w?z:"",KG=["json","text","urlencoded","arrayBuffer","formdata","application/json","text/plain","application/x-www-form-urlencoded","application/octet-stream","multipart/form-data"],e2=(z)=>{if(!z)return!1;let w=z?.schema??z;if(w[m6.kind]==="Import"&&z.References())return z.References().some(e2);if(w.anyOf)return w.anyOf.some(e2);if(w.someOf)return w.someOf.some(e2);if(w.allOf)return w.allOf.some(e2);if(w.not)return w.not.some(e2);if(w.type==="object"){let U=w.properties;if("additionalProperties"in w)return w.additionalProperties;if("patternProperties"in w)return!1;for(let W of Object.keys(U)){let X=U[W];if(X.type==="object"){if(e2(X))return!0}else if(X.anyOf){for(let A=0;A<X.anyOf.length;A++)if(e2(X.anyOf[A]))return!0}return X.additionalProperties}return!1}return!1},Bw=({context:z="c",trace:w=[],addFn:U})=>{if(!w.length)return()=>{return{resolveChild(){return()=>{}},resolve(){}}};for(let W=0;W<w.length;W++)U(`let report${W}, reportChild${W}, reportErr${W}, reportErrChild${W};let trace${W} = ${z}[ELYSIA_TRACE]?.[${W}] ?? trace[${W}](${z});
39
+ `);return(W,{name:X,total:A=0}={})=>{if(!X)X="anonymous";let Z=W==="error"?"reportErr":"report";for(let $=0;$<w.length;$++)U(`${Z}${$} = trace${$}.${W}({id,event:'${W}',name:'${X}',begin:performance.now(),total:${A}})
40
+ `);return{resolve(){for(let $=0;$<w.length;$++)U(`${Z}${$}.resolve()
41
+ `)},resolveChild($){for(let Y=0;Y<w.length;Y++)U(`${Z}Child${Y}=${Z}${Y}.resolveChild?.shift()?.({id,event:'${W}',name:'${$}',begin:performance.now()})
42
+ `);return(Y)=>{for(let Q=0;Q<w.length;Q++)if(Y)U(`if(${Y} instanceof Error){${Z}Child${Q}?.(${Y}) }else{${Z}Child${Q}?.()}`);else U(`${Z}Child${Q}?.()
43
+ `)}}}}},FG=({injectResponse:z="",normalize:w=!1,validator:U,encodeSchema:W=!1})=>({composeValidation:(X,A=`c.${X}`)=>`c.set.status=422;throw new ValidationError('${X}',validator.${X},${A})`,composeResponseValidation:(X="r")=>{let A=z+`
44
+ `;A+=`if(${X} instanceof ElysiaCustomStatusResponse){c.set.status=${X}.code
45
45
  ${X}=${X}.response}const isResponse=${X} instanceof Response
46
- switch(c.set.status){`;for(let[$,A]of Object.entries(U.response)){if(Z+=`
47
- case ${$}:if(!isResponse){`,w&&"Clean"in A&&!a2(A))Z+=`${X}=validator.response['${$}'].Clean(${X})
48
- `;if(W&&(A.hasTransform||typeof A.Decode==="function"))Z+=`${X}=validator.response['${$}'].Encode(${X})
49
- `;Z+=`if(validator.response['${$}'].Check(${X})===false){c.set.status=422
50
- throw new ValidationError('response',validator.response['${$}'],${X})}c.set.status = ${$}}
51
- `,Z+=`break
52
- `}return Z+"}"}}),JI=Symbol.for("TypeBox.Kind"),_6=(z,w)=>{if(!w)return;let U=w.schema??w;if(U[m6.kind]==="Import")return w.References().some((W)=>_6(z,W));if(U.type==="object"){let W=U.properties;if(!W)return!1;for(let X of Object.keys(W)){let Z=W[X];if(z in Z)return!0;if(Z.type==="object"){if(_6(z,Z))return!0}else if(Z.anyOf){for(let $=0;$<Z.anyOf.length;$++)if(_6(z,Z.anyOf[$]))return!0}}return!1}return z in U},qG=Symbol.for("TypeBox.Transform"),i2=(z)=>{if(!z)return!1;if(z.$ref&&z.$defs&&z.$ref in z.$defs&&i2(z.$defs[z.$ref]))return!0;if(z.oneOf){for(let w=0;w<z.oneOf.length;w++)if(i2(z.oneOf[w]))return!0}if(z.anyOf){for(let w=0;w<z.anyOf.length;w++)if(i2(z.anyOf[w]))return!0}if(z.allOf){for(let w=0;w<z.allOf.length;w++)if(i2(z.allOf[w]))return!0}if(z.not&&i2(z.not))return!0;if(z.type==="object"&&z.properties){let w=z.properties;for(let U of Object.keys(w)){let W=w[U];if(i2(W))return!0;if(W.type==="array"&&W.items&&i2(W.items))return!0}}if(z.type==="array"&&z.items&&i2(z.items))return!0;return qG in z},LG=/(?:return|=>) \S+\(/g,P4=(z)=>{return(z?.fn??z).constructor.name==="AsyncFunction"},a0=(z)=>{let w=z?.fn??z;if(w.constructor.name==="AsyncFunction")return!0;let U=w.toString();if(U.includes("=> response.clone("))return!1;if(U.includes("await"))return!0;if(U.includes("async"))return!0;if(U.includes("=>response.clone("))return!1;return!!U.match(LG)},m8=(z)=>{let w=z?.fn??z;return w.constructor.name==="AsyncGeneratorFunction"||w.constructor.name==="GeneratorFunction"},GG=({app:z,path:w,method:U,hooks:W,validator:X,handler:Z,allowMeta:$=!1,inference:A,asManifest:Q=!1})=>{let Y=z["~adapter"].composeHandler,J=z["~adapter"].handler,G=typeof Z==="function";if(!G){if(Z=J.mapResponse(Z,{headers:z.setHeaders??{}}),W.parse?.length&&W.transform?.length&&W.beforeHandle?.length&&W.afterHandle?.length){if(Z instanceof Response)return Function("a","return function(){return a.clone()}")(Z);return Function("a","return function(){return a}")(Z)}}let S=G?"handler(c)":"handler",N=!!W.afterResponse?.length,O=!!W.trace?.length,M="";if(A=wW(Object.assign({},W,{handler:Z}),A),Y.declare){let F=Y.declare(A);if(F)M+=F}if(A.server)M+=`Object.defineProperty(c,'server',{get:function(){return getServer()}})
53
- `;X.createBody?.(),X.createQuery?.(),X.createHeaders?.(),X.createParams?.(),X.createCookie?.(),X.createResponse?.();let C=X.body||X.headers||X.params||X.query||X.cookie||X.response,g=A.query||!!X.query,L0=W.parse?.length===1&&W.parse[0].fn==="none",a=U!=="$INTERNALWS"&&U!=="GET"&&U!=="HEAD"&&(A.body||!!X.body||!!W.parse?.length)&&!L0;if(a)M+=`let isParsing=false
54
- `;let $0=z.setHeaders,K0=$0&&!!Object.keys($0).length,f=A.headers||X.headers||Y.preferWebstandardHeaders!==!0&&A.body,V=A.cookie||!!X.cookie,k=V?yU({modules:z.definitions.typebox,validator:X.cookie,defaultConfig:z.config.cookie,dynamic:!!z.config.aot,config:X.cookie?.config??{},models:z.definitions.type}):void 0,j=k?.config,e="";if(j?.sign){if(!j.secrets)throw new Error(`t.Cookie required secret which is not set in (${U}) ${w}.`);let F=!j.secrets?void 0:typeof j.secrets==="string"?j.secrets:j.secrets[0];if(e+=`const _setCookie = c.set.cookie
55
- if(_setCookie){`,j.sign===!0)e+=`for(const [key, cookie] of Object.entries(_setCookie)){c.set.cookie[key].value=await signCookie(cookie.value,'${F}')}`;else for(let R of j.sign)e+=`if(_setCookie['${R}']?.value){c.set.cookie['${R}'].value=await signCookie(_setCookie['${R}'].value,'${F}')}`;e+=`}
56
- `}let Y0=z.config.normalize,_0=z.config.experimental?.encodeSchema,{composeValidation:h0,composeResponseValidation:U6}=MG({normalize:Y0,validator:X,encodeSchema:_0});if(f)M+=Y.headers;if(O)M+=`const id=c[ELYSIA_REQUEST_ID]
57
- `;let n0=Uw({trace:W.trace,addFn:(F)=>{M+=F}});if(M+="try{",V){let F=(b,c)=>{let t=j?.[b]??c;if(!t)return typeof c==="string"?`${b}:"${c}",`:`${b}:${c},`;if(typeof t==="string")return`${b}:'${t}',`;if(t instanceof Date)return`${b}: new Date(${t.getTime()}),`;return`${b}:${t},`},R=j?`{secrets:${j.secrets!==void 0?typeof j.secrets==="string"?`'${j.secrets}'`:"["+j.secrets.reduce((b,c)=>b+`'${c}',`,"")+"]":"undefined"},sign:${j.sign===!0?!0:j.sign!==void 0?"["+j.sign.reduce((b,c)=>b+`'${c}',`,"")+"]":"undefined"},`+F("domain")+F("expires")+F("httpOnly")+F("maxAge")+F("path","/")+F("priority")+F("sameSite")+F("secure")+"}":"undefined";if(f)M+=`
46
+ switch(c.set.status){`;for(let[Z,$]of Object.entries(U.response)){if(A+=`
47
+ case ${Z}:if(!isResponse){`,w&&"Clean"in $&&!e2($))A+=`${X}=validator.response['${Z}'].Clean(${X})
48
+ `;if(W&&($.hasTransform||typeof $.Decode==="function"))A+=`${X}=validator.response['${Z}'].Encode(${X})
49
+ `;A+=`if(validator.response['${Z}'].Check(${X})===false){c.set.status=422
50
+ throw new ValidationError('response',validator.response['${Z}'],${X})}c.set.status = ${Z}}
51
+ `,A+=`break
52
+ `}return A+"}"}}),Xf=Symbol.for("TypeBox.Kind"),D6=(z,w)=>{if(!w)return;let U=w.schema??w;if(U[m6.kind]==="Import")return w.References().some((W)=>D6(z,W));if(U.type==="object"){let W=U.properties;if(!W)return!1;for(let X of Object.keys(W)){let A=W[X];if(z in A)return!0;if(A.type==="object"){if(D6(z,A))return!0}else if(A.anyOf){for(let Z=0;Z<A.anyOf.length;Z++)if(D6(z,A.anyOf[Z]))return!0}}return!1}return z in U},jG=Symbol.for("TypeBox.Transform"),y2=(z)=>{if(!z)return!1;if(z.$ref&&z.$defs&&z.$ref in z.$defs&&y2(z.$defs[z.$ref]))return!0;if(z.oneOf){for(let w=0;w<z.oneOf.length;w++)if(y2(z.oneOf[w]))return!0}if(z.anyOf){for(let w=0;w<z.anyOf.length;w++)if(y2(z.anyOf[w]))return!0}if(z.allOf){for(let w=0;w<z.allOf.length;w++)if(y2(z.allOf[w]))return!0}if(z.not&&y2(z.not))return!0;if(z.type==="object"&&z.properties){let w=z.properties;for(let U of Object.keys(w)){let W=w[U];if(y2(W))return!0;if(W.type==="array"&&W.items&&y2(W.items))return!0}}if(z.type==="array"&&z.items&&y2(z.items))return!0;return jG in z},IG=/(?:return|=>) \S+\(/g,O4=(z)=>{return(z?.fn??z).constructor.name==="AsyncFunction"},e0=(z)=>{let w=z?.fn??z;if(w.constructor.name==="AsyncFunction")return!0;let U=w.toString();if(U.includes("=> response.clone("))return!1;if(U.includes("await"))return!0;if(U.includes("async"))return!0;if(U.includes("=>response.clone("))return!1;return!!U.match(IG)},i5=(z)=>{let w=z?.fn??z;return w.constructor.name==="AsyncGeneratorFunction"||w.constructor.name==="GeneratorFunction"},EG=({app:z,path:w,method:U,hooks:W,validator:X,handler:A,allowMeta:Z=!1,inference:$,asManifest:Y=!1})=>{let Q=z["~adapter"].composeHandler,J=z["~adapter"].handler,N=typeof A==="function";if(!N){if(A=J.mapResponse(A,{headers:z.setHeaders??{}}),W.parse?.length&&W.transform?.length&&W.beforeHandle?.length&&W.afterHandle?.length){if(A instanceof Response)return Function("a","return function(){return a.clone()}")(A);return Function("a","return function(){return a}")(A)}}let S=N?"handler(c)":"handler",G=!!W.afterResponse?.length,O=!!W.trace?.length,B="";if($=rW(Object.assign({},W,{handler:A}),$),Q.declare){let j=Q.declare($);if(j)B+=j}if($.server)B+=`Object.defineProperty(c,'server',{get:function(){return getServer()}})
53
+ `;X.createBody?.(),X.createQuery?.(),X.createHeaders?.(),X.createParams?.(),X.createCookie?.(),X.createResponse?.();let C=X.body||X.headers||X.params||X.query||X.cookie||X.response,i=$.query||!!X.query,N0=W.parse?.length===1&&W.parse[0].fn==="none",U0=U!=="$INTERNALWS"&&U!=="GET"&&U!=="HEAD"&&($.body||!!X.body||!!W.parse?.length)&&!N0;if(U0)B+=`let isParsing=false
54
+ `;let D0=z.setHeaders,K0=D0&&!!Object.keys(D0).length,g=$.headers||X.headers||Q.preferWebstandardHeaders!==!0&&$.body,x=$.cookie||!!X.cookie,T=x?dW({modules:z.definitions.typebox,validator:X.cookie,defaultConfig:z.config.cookie,dynamic:!!z.config.aot,config:X.cookie?.config??{},models:z.definitions.type}):void 0,F=T?.config,W0="";if(F?.sign){if(!F.secrets)throw new Error(`t.Cookie required secret which is not set in (${U}) ${w}.`);let j=!F.secrets?void 0:typeof F.secrets==="string"?F.secrets:F.secrets[0];if(W0+=`const _setCookie = c.set.cookie
55
+ if(_setCookie){`,F.sign===!0)W0+=`for(const [key, cookie] of Object.entries(_setCookie)){c.set.cookie[key].value=await signCookie(cookie.value,'${j}')}`;else for(let R of F.sign)W0+=`if(_setCookie['${R}']?.value){c.set.cookie['${R}'].value=await signCookie(_setCookie['${R}'].value,'${j}')}`;W0+=`}
56
+ `}let G0=z.config.normalize,H0=z.config.experimental?.encodeSchema,{composeValidation:h0,composeResponseValidation:U6}=FG({normalize:G0,validator:X,encodeSchema:H0});if(g)B+=Q.headers;if(O)B+=`const id=c[ELYSIA_REQUEST_ID]
57
+ `;let n0=Bw({trace:W.trace,addFn:(j)=>{B+=j}});if(B+="try{",x){let j=(b,h)=>{let t=F?.[b]??h;if(!t)return typeof h==="string"?`${b}:"${h}",`:`${b}:${h},`;if(typeof t==="string")return`${b}:'${t}',`;if(t instanceof Date)return`${b}: new Date(${t.getTime()}),`;return`${b}:${t},`},R=F?`{secrets:${F.secrets!==void 0?typeof F.secrets==="string"?`'${F.secrets}'`:"["+F.secrets.reduce((b,h)=>b+`'${h}',`,"")+"]":"undefined"},sign:${F.sign===!0?!0:F.sign!==void 0?"["+F.sign.reduce((b,h)=>b+`'${h}',`,"")+"]":"undefined"},`+j("domain")+j("expires")+j("httpOnly")+j("maxAge")+j("path","/")+j("priority")+j("sameSite")+j("secure")+"}":"undefined";if(g)B+=`
58
58
  c.cookie=await parseCookie(c.set,c.headers.cookie,${R})
59
- `;else M+=`
59
+ `;else B+=`
60
60
  c.cookie=await parseCookie(c.set,c.request.headers.get('cookie'),${R})
61
- `}if(g){let F=[];if(X.query&&X.query.schema.type==="object"){let R=X.query.schema.properties;if(!a2(X.query))for(let[b,c]of Object.entries(R)){let t=c,B=t.type==="array"||!!t.anyOf?.some((d)=>d.type==="string"&&d.format==="ArrayString");if(t&&m6.optional in t&&t.type==="array"&&t.items)t=t.items;let{type:K,anyOf:L}=t;F.push({key:b,isArray:B,isNestedObjectArray:B&&t.items?.type==="object"||!!t.items?.anyOf?.some((d)=>d.type==="object"||d.type==="array"),isObject:K==="object"||L?.some((d)=>d.type==="string"&&d.format==="ArrayString"),anyOf:!!L})}}if(!F.length)M+="if(c.qi===-1){c.query={}}else{c.query=parseQueryFromURL(c.url.slice(c.qi + 1))}";else{M+=`if(c.qi!==-1){let url='&'+c.url.slice(c.qi + 1)
62
- `;let R=0;for(let{key:b,isArray:c,isObject:t,isNestedObjectArray:B,anyOf:K}of F){let L=(R===0?"let ":"")+`memory=url.indexOf('&${b}=')
61
+ `}if(i){let j=[];if(X.query&&X.query.schema.type==="object"){let R=X.query.schema.properties;if(!e2(X.query))for(let[b,h]of Object.entries(R)){let t=h,M=t.type==="array"||!!t.anyOf?.some((f)=>f.type==="string"&&f.format==="ArrayString");if(t&&m6.optional in t&&t.type==="array"&&t.items)t=t.items;let{type:K,anyOf:L}=t;j.push({key:b,isArray:M,isNestedObjectArray:M&&t.items?.type==="object"||!!t.items?.anyOf?.some((f)=>f.type==="object"||f.type==="array"),isObject:K==="object"||L?.some((f)=>f.type==="string"&&f.format==="ArrayString"),anyOf:!!L})}}if(!j.length)B+="if(c.qi===-1){c.query={}}else{c.query=parseQueryFromURL(c.url.slice(c.qi + 1))}";else{B+=`if(c.qi!==-1){let url='&'+c.url.slice(c.qi + 1)
62
+ `;let R=0;for(let{key:b,isArray:h,isObject:t,isNestedObjectArray:M,anyOf:K}of j){let L=(R===0?"let ":"")+`memory=url.indexOf('&${b}=')
63
63
  let a${R}
64
- `;if(c)if(M+=L,B)M+=`while(memory!==-1){const start=memory+${b.length+2}
64
+ `;if(h)if(B+=L,M)B+=`while(memory!==-1){const start=memory+${b.length+2}
65
65
  memory=url.indexOf('&',start)
66
66
  if(a${R}===undefined)
67
67
  a${R}=''
@@ -79,7 +79,7 @@ memory=url.indexOf('&${b}=',memory)
79
79
  if(memory===-1)break}try{if(a${R}.charCodeAt(0)===91)a${R} = JSON.parse(a${R})
80
80
  else
81
81
  a${R}=JSON.parse('['+a${R}+']')}catch{}
82
- `;else M+=`while(memory!==-1){const start=memory+${b.length+2}
82
+ `;else B+=`while(memory!==-1){const start=memory+${b.length+2}
83
83
  memory=url.indexOf('&',start)
84
84
  if(a${R}===undefined)a${R}=[]
85
85
  if(memory===-1){const temp=decodeURIComponent(url.slice(start)).replace(/\\+/g,' ')
@@ -88,12 +88,12 @@ break}else{const temp=decodeURIComponent(url.slice(start, memory)).replace(/\\+/
88
88
  if(temp.includes(',')){a${R}=a${R}.concat(temp.split(','))}else{a${R}.push(temp)}
89
89
  }memory=url.indexOf('&${b}=',memory)
90
90
  if(memory===-1) break
91
- }`;else if(t)M+=L+`if(memory!==-1){const start=memory+${b.length+2}
91
+ }`;else if(t)B+=L+`if(memory!==-1){const start=memory+${b.length+2}
92
92
  memory=url.indexOf('&',start)
93
- if(memory===-1)a${R}=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))else a${R}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))if(a${R}!==undefined)try{a${R}=JSON.parse(a${R})}catch{}}`;else{if(M+=L+`if(memory!==-1){const start=memory+${b.length+2}
93
+ if(memory===-1)a${R}=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))else a${R}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))if(a${R}!==undefined)try{a${R}=JSON.parse(a${R})}catch{}}`;else{if(B+=L+`if(memory!==-1){const start=memory+${b.length+2}
94
94
  memory=url.indexOf('&',start)
95
95
  if(memory===-1)a${R}=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))
96
- else{a${R}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))`,K)M+=`
96
+ else{a${R}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))`,K)B+=`
97
97
  let deepMemory=url.indexOf('&${b}=',memory)
98
98
  if(deepMemory!==-1){a${R}=[a${R}]
99
99
  let first=true
@@ -108,54 +108,54 @@ if(value===null){if(deepMemory===-1){break}else{continue}}
108
108
  const vStart=value.charCodeAt(0)
109
109
  const vEnd=value.charCodeAt(value.length - 1)
110
110
  if((vStart===91&&vEnd===93)||(vStart===123&&vEnd===125))
111
- try{a${R}.push(JSON.parse(value))}catch{a${R}.push(value)}if(deepMemory===-1)break}}`;M+="}}"}R++,M+=`
112
- `}M+="c.query={"+F.map(({key:b},c)=>`'${b}':a${c}`).join(",")+"}",M+=`} else c.query = {}
113
- `}}let W6=typeof Z==="function"&&a0(Z),I2=O||W.afterResponse?.length?"c.response= ":"",K6=V||a||W6||!!W.parse?.length||!!W.afterHandle?.some(a0)||!!W.beforeHandle?.some(a0)||!!W.transform?.some(a0)||!!W.mapResponse?.some(a0),r5=(typeof Z==="function"?m8(Z):!1)||!!W.beforeHandle?.some(m8)||!!W.afterHandle?.some(m8)||!!W.transform?.some(m8),W1=A.cookie||A.set||f||O||X.response||G&&K0||r5,S0=Y.mapResponseContext?`,${Y.mapResponseContext}`:"";if(O||A.route)M+=`c.route=\`${w}\`
114
- `;let x2=n0("parse",{total:W.parse?.length});if(a){let F=R1(X.body),R=!!W.parse?.length||A.body||X.body;if(Y.parser.declare)M+=Y.parser.declare;M+=`
111
+ try{a${R}.push(JSON.parse(value))}catch{a${R}.push(value)}if(deepMemory===-1)break}}`;B+="}}"}R++,B+=`
112
+ `}B+="c.query={"+j.map(({key:b},h)=>`'${b}':a${h}`).join(",")+"}",B+=`} else c.query = {}
113
+ `}}let W6=typeof A==="function"&&e0(A),E2=O||W.afterResponse?.length?"c.response= ":"",b6=x||U0||W6||!!W.parse?.length||!!W.afterHandle?.some(e0)||!!W.beforeHandle?.some(e0)||!!W.transform?.some(e0)||!!W.mapResponse?.some(e0),a5=(typeof A==="function"?i5(A):!1)||!!W.beforeHandle?.some(i5)||!!W.afterHandle?.some(i5)||!!W.transform?.some(i5),W1=$.cookie||$.set||g||O||X.response||N&&K0||a5,_0=Q.mapResponseContext?`,${Q.mapResponseContext}`:"";if(O||$.route)B+=`c.route=\`${w}\`
114
+ `;let x2=n0("parse",{total:W.parse?.length});if(U0){let j=C1(X.body),R=!!W.parse?.length||$.body||X.body;if(Q.parser.declare)B+=Q.parser.declare;B+=`
115
115
  isParsing=true
116
- `;let b=typeof W.parse==="string"?W.parse:Array.isArray(W.parse)&&W.parse.length===1?typeof W.parse[0]==="string"?W.parse[0]:typeof W.parse[0].fn==="string"?W.parse[0].fn:void 0:void 0;if(b&&BG.includes(b)){let c=n0("parse",{total:W.parse?.length});switch(b){case"json":case"application/json":M+=Y.parser.json(F);break;case"text":case"text/plain":M+=Y.parser.text(F);break;case"urlencoded":case"application/x-www-form-urlencoded":M+=Y.parser.urlencoded(F);break;case"arrayBuffer":case"application/octet-stream":M+=Y.parser.arrayBuffer(F);break;case"formdata":case"multipart/form-data":M+=Y.parser.formData(F);break;default:if(b[0]in z["~parser"])M+=f?"let contentType = c.headers['content-type']":"let contentType = c.request.headers.get('content-type')",M+=`
116
+ `;let b=typeof W.parse==="string"?W.parse:Array.isArray(W.parse)&&W.parse.length===1?typeof W.parse[0]==="string"?W.parse[0]:typeof W.parse[0].fn==="string"?W.parse[0].fn:void 0:void 0;if(b&&KG.includes(b)){let h=n0("parse",{total:W.parse?.length});switch(b){case"json":case"application/json":B+=Q.parser.json(j);break;case"text":case"text/plain":B+=Q.parser.text(j);break;case"urlencoded":case"application/x-www-form-urlencoded":B+=Q.parser.urlencoded(j);break;case"arrayBuffer":case"application/octet-stream":B+=Q.parser.arrayBuffer(j);break;case"formdata":case"multipart/form-data":B+=Q.parser.formData(j);break;default:if(b[0]in z["~parser"])B+=g?"let contentType = c.headers['content-type']":"let contentType = c.request.headers.get('content-type')",B+=`
117
117
  if(contentType){const index=contentType.indexOf(';')
118
118
  if(index!==-1)contentType=contentType.substring(0, index)}
119
119
  else{contentType=''}c.contentType=contentType
120
- `,M+=`let result=parser['${b}'](c, contentType)
120
+ `,B+=`let result=parser['${b}'](c, contentType)
121
121
  if(result instanceof Promise)result=await result
122
122
  if(result instanceof ElysiaCustomStatusResponse)throw result
123
123
  if(result!==undefined)c.body=result
124
124
  delete c.contentType
125
- `;break}c.resolve()}else if(R){if(M+=`
126
- `,M+=f?"let contentType = c.headers['content-type']":"let contentType = c.request.headers.get('content-type')",M+=`
125
+ `;break}h.resolve()}else if(R){if(B+=`
126
+ `,B+=g?"let contentType = c.headers['content-type']":"let contentType = c.request.headers.get('content-type')",B+=`
127
127
  if(contentType){const index=contentType.indexOf(';')
128
128
  if(index!==-1)contentType=contentType.substring(0, index)}
129
129
  else{contentType=''}c.contentType=contentType
130
- `,W.parse?.length)M+=`let used=false
131
- `;let c=n0("parse",{total:W.parse?.length}),t=!1;if(W.parse)for(let B=0;B<W.parse.length;B++){let K=`bo${B}`;if(B!==0)M+=`
132
- if(!used){`;if(typeof W.parse[B].fn==="string"){let L=c.resolveChild(W.parse[B].fn);switch(W.parse[B].fn){case"json":case"application/json":t=!0,M+=Y.parser.json(F);break;case"text":case"text/plain":t=!0,M+=Y.parser.text(F);break;case"urlencoded":case"application/x-www-form-urlencoded":t=!0,M+=Y.parser.urlencoded(F);break;case"arrayBuffer":case"application/octet-stream":t=!0,M+=Y.parser.arrayBuffer(F);break;case"formdata":case"multipart/form-data":t=!0,M+=Y.parser.formData(F);break;default:M+=`${K}=parser['${W.parse[B].fn}'](c,contentType)
130
+ `,W.parse?.length)B+=`let used=false
131
+ `;let h=n0("parse",{total:W.parse?.length}),t=!1;if(W.parse)for(let M=0;M<W.parse.length;M++){let K=`bo${M}`;if(M!==0)B+=`
132
+ if(!used){`;if(typeof W.parse[M].fn==="string"){let L=h.resolveChild(W.parse[M].fn);switch(W.parse[M].fn){case"json":case"application/json":t=!0,B+=Q.parser.json(j);break;case"text":case"text/plain":t=!0,B+=Q.parser.text(j);break;case"urlencoded":case"application/x-www-form-urlencoded":t=!0,B+=Q.parser.urlencoded(j);break;case"arrayBuffer":case"application/octet-stream":t=!0,B+=Q.parser.arrayBuffer(j);break;case"formdata":case"multipart/form-data":t=!0,B+=Q.parser.formData(j);break;default:B+=`${K}=parser['${W.parse[M].fn}'](c,contentType)
133
133
  if(${K} instanceof Promise)${K}=await ${K}
134
134
  if(${K}!==undefined){c.body=${K};used=true}
135
- `}L()}else{let L=c.resolveChild(W.parse[B].fn.name);M+=`let ${K}=e.parse[${B}]
135
+ `}L()}else{let L=h.resolveChild(W.parse[M].fn.name);B+=`let ${K}=e.parse[${M}]
136
136
  ${K}=${K}(c,contentType)
137
137
  if(${K} instanceof Promise)${K}=await ${K}
138
- if(${K}!==undefined){c.body=${K};used=true}`,L()}if(B!==0)M+="}";if(t)break}if(c.resolve(),!t){if(W.parse?.length)M+=`
138
+ if(${K}!==undefined){c.body=${K};used=true}`,L()}if(M!==0)B+="}";if(t)break}if(h.resolve(),!t){if(W.parse?.length)B+=`
139
139
  if(!used){
140
140
  if(!contentType) throw new ParseError()
141
- `;M+="switch(contentType){",M+=`case 'application/json':
142
- `+Y.parser.json(F)+`break
143
- case 'text/plain':`+Y.parser.text(F)+`break
144
- case 'application/x-www-form-urlencoded':`+Y.parser.urlencoded(F)+`break
145
- case 'application/octet-stream':`+Y.parser.arrayBuffer(F)+`break
146
- case 'multipart/form-data':`+Y.parser.formData(F)+`break
147
- `;for(let B of Object.keys(z["~parser"]))M+=`case '${B}':let bo${B}=parser['${B}'](c,contentType)
148
- if(bo${B} instanceof Promise)bo${B}=await bo${B}
149
- if(bo${B} instanceof ElysiaCustomStatusResponse)throw result
150
- if(bo${B}!==undefined)c.body=bo${B}
141
+ `;B+="switch(contentType){",B+=`case 'application/json':
142
+ `+Q.parser.json(j)+`break
143
+ case 'text/plain':`+Q.parser.text(j)+`break
144
+ case 'application/x-www-form-urlencoded':`+Q.parser.urlencoded(j)+`break
145
+ case 'application/octet-stream':`+Q.parser.arrayBuffer(j)+`break
146
+ case 'multipart/form-data':`+Q.parser.formData(j)+`break
147
+ `;for(let M of Object.keys(z["~parser"]))B+=`case '${M}':let bo${M}=parser['${M}'](c,contentType)
148
+ if(bo${M} instanceof Promise)bo${M}=await bo${M}
149
+ if(bo${M} instanceof ElysiaCustomStatusResponse)throw result
150
+ if(bo${M}!==undefined)c.body=bo${M}
151
151
  break
152
- `;if(W.parse?.length)M+="}";M+="}"}}M+=`
153
- delete c.contentType`,M+=`
152
+ `;if(W.parse?.length)B+="}";B+="}"}}B+=`
153
+ delete c.contentType`,B+=`
154
154
  isParsing=false
155
- `}if(x2.resolve(),W?.transform){let F=n0("transform",{total:W.transform.length});if(W.transform.length)M+=`let transformed
156
- `;for(let R=0;R<W.transform.length;R++){let b=W.transform[R],c=F.resolveChild(b.fn.name);if(M+=a0(b)?`transformed=await e.transform[${R}](c)
155
+ `}if(x2.resolve(),W?.transform){let j=n0("transform",{total:W.transform.length});if(W.transform.length)B+=`let transformed
156
+ `;for(let R=0;R<W.transform.length;R++){let b=W.transform[R],h=j.resolveChild(b.fn.name);if(B+=e0(b)?`transformed=await e.transform[${R}](c)
157
157
  `:`transformed=e.transform[${R}](c)
158
- `,b.subType==="mapDerive")M+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
158
+ `,b.subType==="mapDerive")B+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
159
159
  else{transformed.request=c.request
160
160
  transformed.store=c.store
161
161
  transformed.qi=c.qi
@@ -164,30 +164,30 @@ transformed.url=c.url
164
164
  transformed.redirect=c.redirect
165
165
  transformed.set=c.set
166
166
  transformed.error=c.error
167
- c=transformed}`;else M+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
167
+ c=transformed}`;else B+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
168
168
  else Object.assign(c,transformed)
169
- `;c()}F.resolve()}if(X){if(X.headers){if(Y0&&"Clean"in X.headers&&!a2(X.headers))M+=`c.headers=validator.headers.Clean(c.headers);
170
- `;if(_6("default",X.headers))for(let[F,R]of Object.entries(o.Default(X.headers.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)M+=`c.headers['${F}']??=${b}
171
- `}if(R1(X.headers))M+="if(isNotEmpty(c.headers)){";if(M+="if(validator.headers.Check(c.headers) === false){"+h0("headers")+"}",i2(X.headers.schema))M+=`c.headers=validator.headers.Decode(c.headers)
172
- `;if(R1(X.headers))M+="}"}if(X.params){if(_6("default",X.params))for(let[F,R]of Object.entries(o.Default(X.params.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)M+=`c.params['${F}']??=${b}
173
- `}if(M+="if(validator.params.Check(c.params)===false){"+h0("params")+"}",i2(X.params.schema))M+=`c.params=validator.params.Decode(c.params)
174
- `}if(X.query){if(Y0&&"Clean"in X.query&&!a2(X.query))M+=`c.query=validator.query.Clean(c.query)
175
- `;if(_6("default",X.query))for(let[F,R]of Object.entries(o.Default(X.query.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)M+=`if(c.query['${F}']===undefined)c.query['${F}']=${b}
176
- `}if(R1(X.query))M+="if(isNotEmpty(c.query)){";if(M+="if(validator.query.Check(c.query)===false){"+h0("query")+"}",i2(X.query.schema))M+=`c.query=validator.query.Decode(Object.assign({},c.query))
177
- `;if(R1(X.query))M+="}"}if(X.body){if(Y0&&"Clean"in X.body&&!a2(X.body))M+=`c.body=validator.body.Clean(c.body)
178
- `;let F=i2(X.body.schema);if(F||R1(X.body))M+=`const isNotEmptyObject=c.body&&(typeof c.body==="object"&&isNotEmpty(c.body))
179
- `;if(_6("default",X.body)){let R=X.body.schema,b=o.Default(R,R.type==="object"||R[m6.kind]==="Import"&&R.$defs[R.$ref][m6.kind]==="Object"?{}:void 0),c=typeof b==="object"?JSON.stringify(b):typeof b==="string"?`'${b}'`:b;if(M+="if(validator.body.Check(c.body)===false){",b!==void 0&&b!==null)M+=`if(typeof c.body==='object')c.body=Object.assign(${c},c.body)
180
- else c.body=${c}
181
- `;if(R1(X.body))M+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+h0("body")+"}";else M+="if(validator.body.Check(c.body)===false){"+h0("body")+"}";M+="}"}else if(R1(X.body))M+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+h0("body")+"}";else M+="if(validator.body.Check(c.body)===false){"+h0("body")+"}";if(F)M+=`if(isNotEmptyObject)c.body=validator.body.Decode(c.body)
182
- `}if(k&&z1(k?.schema?.properties??k?.schema?.schema??{})){if(M+=`const cookieValue={}
169
+ `;h()}j.resolve()}if(X){if(X.headers){if(G0&&"Clean"in X.headers&&!e2(X.headers))B+=`c.headers=validator.headers.Clean(c.headers);
170
+ `;if(D6("default",X.headers))for(let[j,R]of Object.entries(o.Default(X.headers.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)B+=`c.headers['${j}']??=${b}
171
+ `}if(C1(X.headers))B+="if(isNotEmpty(c.headers)){";if(B+="if(validator.headers.Check(c.headers) === false){"+h0("headers")+"}",y2(X.headers.schema))B+=`c.headers=validator.headers.Decode(c.headers)
172
+ `;if(C1(X.headers))B+="}"}if(X.params){if(D6("default",X.params))for(let[j,R]of Object.entries(o.Default(X.params.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)B+=`c.params['${j}']??=${b}
173
+ `}if(B+="if(validator.params.Check(c.params)===false){"+h0("params")+"}",y2(X.params.schema))B+=`c.params=validator.params.Decode(c.params)
174
+ `}if(X.query){if(G0&&"Clean"in X.query&&!e2(X.query))B+=`c.query=validator.query.Clean(c.query)
175
+ `;if(D6("default",X.query))for(let[j,R]of Object.entries(o.Default(X.query.schema,{}))){let b=typeof R==="object"?JSON.stringify(R):typeof R==="string"?`'${R}'`:R;if(b!==void 0)B+=`if(c.query['${j}']===undefined)c.query['${j}']=${b}
176
+ `}if(C1(X.query))B+="if(isNotEmpty(c.query)){";if(B+="if(validator.query.Check(c.query)===false){"+h0("query")+"}",y2(X.query.schema))B+=`c.query=validator.query.Decode(Object.assign({},c.query))
177
+ `;if(C1(X.query))B+="}"}if(X.body){if(G0&&"Clean"in X.body&&!e2(X.body))B+=`c.body=validator.body.Clean(c.body)
178
+ `;let j=y2(X.body.schema);if(j||C1(X.body))B+=`const isNotEmptyObject=c.body&&(typeof c.body==="object"&&isNotEmpty(c.body))
179
+ `;if(D6("default",X.body)){let R=X.body.schema,b=o.Default(R,R.type==="object"||R[m6.kind]==="Import"&&R.$defs[R.$ref][m6.kind]==="Object"?{}:void 0),h=typeof b==="object"?JSON.stringify(b):typeof b==="string"?`'${b}'`:b;if(B+="if(validator.body.Check(c.body)===false){",b!==void 0&&b!==null)B+=`if(typeof c.body==='object')c.body=Object.assign(${h},c.body)
180
+ else c.body=${h}
181
+ `;if(C1(X.body))B+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+h0("body")+"}";else B+="if(validator.body.Check(c.body)===false){"+h0("body")+"}";B+="}"}else if(C1(X.body))B+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+h0("body")+"}";else B+="if(validator.body.Check(c.body)===false){"+h0("body")+"}";if(j)B+=`if(isNotEmptyObject)c.body=validator.body.Decode(c.body)
182
+ `}if(T&&w1(T?.schema?.properties??T?.schema?.schema??{})){if(B+=`const cookieValue={}
183
183
  for(const [key,value] of Object.entries(c.cookie))cookieValue[key]=value.value
184
- `,_6("default",k))for(let[F,R]of Object.entries(o.Default(k.schema,{})))M+=`cookieValue['${F}'] = ${typeof R==="object"?JSON.stringify(R):R}
185
- `;if(R1(X.cookie))M+="if(isNotEmpty(c.cookie)){";if(M+="if(validator.cookie.Check(cookieValue)===false){"+h0("cookie","cookieValue")+"}",i2(X.cookie.schema))M+=`for(const [key,value] of Object.entries(validator.cookie.Decode(cookieValue)))c.cookie[key].value=value
186
- `;if(R1(X.cookie))M+="}"}}if(W?.beforeHandle){let F=n0("beforeHandle",{total:W.beforeHandle.length}),R=!1;for(let b=0;b<W.beforeHandle.length;b++){let c=W.beforeHandle[b],t=F.resolveChild(c.fn.name),B=r4(c);if(c.subType==="resolve"||c.subType==="mapResolve"){if(!R)R=!0,M+=`
184
+ `,D6("default",T))for(let[j,R]of Object.entries(o.Default(T.schema,{})))B+=`cookieValue['${j}'] = ${typeof R==="object"?JSON.stringify(R):R}
185
+ `;if(C1(X.cookie))B+="if(isNotEmpty(c.cookie)){";if(B+="if(validator.cookie.Check(cookieValue)===false){"+h0("cookie","cookieValue")+"}",y2(X.cookie.schema))B+=`for(const [key,value] of Object.entries(validator.cookie.Decode(cookieValue)))c.cookie[key].value=value
186
+ `;if(C1(X.cookie))B+="}"}}if(W?.beforeHandle){let j=n0("beforeHandle",{total:W.beforeHandle.length}),R=!1;for(let b=0;b<W.beforeHandle.length;b++){let h=W.beforeHandle[b],t=j.resolveChild(h.fn.name),M=w8(h);if(h.subType==="resolve"||h.subType==="mapResolve"){if(!R)R=!0,B+=`
187
187
  let resolved
188
- `;if(M+=a0(c)?`resolved=await e.beforeHandle[${b}](c);
188
+ `;if(B+=e0(h)?`resolved=await e.beforeHandle[${b}](c);
189
189
  `:`resolved=e.beforeHandle[${b}](c);
190
- `,c.subType==="mapResolve")M+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
190
+ `,h.subType==="mapResolve")B+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
191
191
  else{resolved.request = c.request
192
192
  resolved.store = c.store
193
193
  resolved.qi = c.qi
@@ -196,90 +196,90 @@ resolved.url = c.url
196
196
  resolved.redirect = c.redirect
197
197
  resolved.set = c.set
198
198
  resolved.error = c.error
199
- c = resolved}`;else M+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
199
+ c = resolved}`;else B+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
200
200
  else Object.assign(c, resolved)
201
- `}else if(!B)M+=a0(c)?`await e.beforeHandle[${b}](c)
201
+ `}else if(!M)B+=e0(h)?`await e.beforeHandle[${b}](c)
202
202
  `:`e.beforeHandle[${b}](c)
203
- `,t();else{if(M+=a0(c)?`be=await e.beforeHandle[${b}](c)
203
+ `,t();else{if(B+=e0(h)?`be=await e.beforeHandle[${b}](c)
204
204
  `:`be=e.beforeHandle[${b}](c)
205
- `,t("be"),M+="if(be!==undefined){",F.resolve(),W.afterHandle?.length){n0("handle",{name:G?Z.name:void 0}).resolve();let L=n0("afterHandle",{total:W.afterHandle.length});for(let d=0;d<W.afterHandle.length;d++){let I=W.afterHandle[d],h=r4(I),C0=L.resolveChild(I.fn.name);if(M+=`c.response = be
206
- `,!h)M+=a0(I.fn)?`await e.afterHandle[${d}](c, be)
207
- `:`e.afterHandle[${d}](c, be)
208
- `;else M+=a0(I.fn)?`af = await e.afterHandle[${d}](c)
209
- `:`af = e.afterHandle[${d}](c)
210
- `,M+=`if(af!==undefined) c.response=be=af
211
- `;C0("af")}L.resolve()}if(X.response)M+=U6("be");let K=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){M+=`c.response=be
212
- `;for(let L=0;L<W.mapResponse.length;L++){let d=W.mapResponse[L],I=K.resolveChild(d.fn.name);M+=`if(mr===undefined){mr=${P4(d)?"await ":""}e.mapResponse[${L}](c)
213
- if(mr!==undefined)be=c.response=mr}`,I()}}K.resolve(),M+=e,M+=`return mapEarlyResponse(${I2}be,c.set${S0})}
214
- `}}F.resolve()}if(W.afterHandle?.length){let F=n0("handle",{name:G?Z.name:void 0});if(W.afterHandle.length)M+=W6?`let r=c.response=await ${S}
205
+ `,t("be"),B+="if(be!==undefined){",j.resolve(),W.afterHandle?.length){n0("handle",{name:N?A.name:void 0}).resolve();let L=n0("afterHandle",{total:W.afterHandle.length});for(let f=0;f<W.afterHandle.length;f++){let E=W.afterHandle[f],d=w8(E),C0=L.resolveChild(E.fn.name);if(B+=`c.response = be
206
+ `,!d)B+=e0(E.fn)?`await e.afterHandle[${f}](c, be)
207
+ `:`e.afterHandle[${f}](c, be)
208
+ `;else B+=e0(E.fn)?`af = await e.afterHandle[${f}](c)
209
+ `:`af = e.afterHandle[${f}](c)
210
+ `,B+=`if(af!==undefined) c.response=be=af
211
+ `;C0("af")}L.resolve()}if(X.response)B+=U6("be");let K=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){B+=`c.response=be
212
+ `;for(let L=0;L<W.mapResponse.length;L++){let f=W.mapResponse[L],E=K.resolveChild(f.fn.name);B+=`if(mr===undefined){mr=${O4(f)?"await ":""}e.mapResponse[${L}](c)
213
+ if(mr!==undefined)be=c.response=mr}`,E()}}K.resolve(),B+=W0,B+=`return mapEarlyResponse(${E2}be,c.set${_0})}
214
+ `}}j.resolve()}if(W.afterHandle?.length){let j=n0("handle",{name:N?A.name:void 0});if(W.afterHandle.length)B+=W6?`let r=c.response=await ${S}
215
215
  `:`let r=c.response=${S}
216
- `;else M+=W6?`let r=await ${S}
216
+ `;else B+=W6?`let r=await ${S}
217
217
  `:`let r=${S}
218
- `;F.resolve();let R=n0("afterHandle",{total:W.afterHandle.length});for(let c=0;c<W.afterHandle.length;c++){let t=W.afterHandle[c],B=r4(t),K=R.resolveChild(t.fn.name);if(!B)M+=a0(t.fn)?`await e.afterHandle[${c}](c)
219
- `:`e.afterHandle[${c}](c)
220
- `,K();else if(M+=a0(t.fn)?`af=await e.afterHandle[${c}](c)
221
- `:`af=e.afterHandle[${c}](c)
222
- `,K("af"),X.response)M+="if(af!==undefined){",R.resolve(),M+=U6("af"),M+="c.response=af}";else M+="if(af!==undefined){",R.resolve(),M+="c.response=af}"}if(R.resolve(),M+=`r=c.response
223
- `,X.response)M+=U6();M+=e;let b=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length)for(let c=0;c<W.mapResponse.length;c++){let t=W.mapResponse[c],B=b.resolveChild(t.fn.name);M+=`mr=${P4(t)?"await ":""}e.mapResponse[${c}](c)
218
+ `;j.resolve();let R=n0("afterHandle",{total:W.afterHandle.length});for(let h=0;h<W.afterHandle.length;h++){let t=W.afterHandle[h],M=w8(t),K=R.resolveChild(t.fn.name);if(!M)B+=e0(t.fn)?`await e.afterHandle[${h}](c)
219
+ `:`e.afterHandle[${h}](c)
220
+ `,K();else if(B+=e0(t.fn)?`af=await e.afterHandle[${h}](c)
221
+ `:`af=e.afterHandle[${h}](c)
222
+ `,K("af"),X.response)B+="if(af!==undefined){",R.resolve(),B+=U6("af"),B+="c.response=af}";else B+="if(af!==undefined){",R.resolve(),B+="c.response=af}"}if(R.resolve(),B+=`r=c.response
223
+ `,X.response)B+=U6();B+=W0;let b=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length)for(let h=0;h<W.mapResponse.length;h++){let t=W.mapResponse[h],M=b.resolveChild(t.fn.name);B+=`mr=${O4(t)?"await ":""}e.mapResponse[${h}](c)
224
224
  if(mr!==undefined)r=c.response=mr
225
- `,B()}if(b.resolve(),W1)M+=`return mapResponse(${I2}r,c.set${S0})
226
- `;else M+=`return mapCompactResponse(${I2}r${S0})
227
- `}else{let F=n0("handle",{name:G?Z.name:void 0});if(X.response||W.mapResponse?.length){if(M+=W6?`let r=await ${S}
225
+ `,M()}if(b.resolve(),W1)B+=`return mapResponse(${E2}r,c.set${_0})
226
+ `;else B+=`return mapCompactResponse(${E2}r${_0})
227
+ `}else{let j=n0("handle",{name:N?A.name:void 0});if(X.response||W.mapResponse?.length){if(B+=W6?`let r=await ${S}
228
228
  `:`let r=${S}
229
- `,F.resolve(),X.response)M+=U6();n0("afterHandle").resolve();let R=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){M+=`
229
+ `,j.resolve(),X.response)B+=U6();n0("afterHandle").resolve();let R=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){B+=`
230
230
  c.response=r
231
- `;for(let b=0;b<W.mapResponse.length;b++){let c=W.mapResponse[b],t=R.resolveChild(c.fn.name);M+=`
232
- if(mr===undefined){mr=${P4(c)?"await ":""}e.mapResponse[${b}](c)
231
+ `;for(let b=0;b<W.mapResponse.length;b++){let h=W.mapResponse[b],t=R.resolveChild(h.fn.name);B+=`
232
+ if(mr===undefined){mr=${O4(h)?"await ":""}e.mapResponse[${b}](c)
233
233
  if(mr!==undefined)r=c.response=mr}
234
- `,t()}}if(R.resolve(),M+=e,Z instanceof Response)M+=A.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${I2}${S}.clone(),c.set${S0})else return ${S}.clone()`:`return ${S}.clone()`,M+=`
235
- `;else if(W1)M+=`return mapResponse(${I2}r,c.set${S0})
236
- `;else M+=`return mapCompactResponse(${I2}r${S0})
237
- `}else if(V||O){M+=W6?`let r=await ${S}
234
+ `,t()}}if(R.resolve(),B+=W0,A instanceof Response)B+=$.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${E2}${S}.clone(),c.set${_0})else return ${S}.clone()`:`return ${S}.clone()`,B+=`
235
+ `;else if(W1)B+=`return mapResponse(${E2}r,c.set${_0})
236
+ `;else B+=`return mapCompactResponse(${E2}r${_0})
237
+ `}else if(x||O){B+=W6?`let r=await ${S}
238
238
  `:`let r=${S}
239
- `,F.resolve(),n0("afterHandle").resolve();let R=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){M+=`c.response= r
240
- `;for(let b=0;b<W.mapResponse.length;b++){let c=W.mapResponse[b],t=R.resolveChild(c.fn.name);M+=`if(mr===undefined){mr=${P4(c)?"await ":""}e.mapResponse[${b}](c)
241
- if(mr!==undefined)r=c.response=mr}`,t()}}if(R.resolve(),M+=e,W1)M+=`return mapResponse(${I2}r,c.set${S0})
242
- `;else M+=`return mapCompactResponse(${I2}r${S0})
243
- `}else{F.resolve();let R=W6?`await ${S}`:S;if(n0("afterHandle").resolve(),Z instanceof Response)M+=A.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${I2}${S}.clone(),c.set${S0})
239
+ `,j.resolve(),n0("afterHandle").resolve();let R=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length){B+=`c.response= r
240
+ `;for(let b=0;b<W.mapResponse.length;b++){let h=W.mapResponse[b],t=R.resolveChild(h.fn.name);B+=`if(mr===undefined){mr=${O4(h)?"await ":""}e.mapResponse[${b}](c)
241
+ if(mr!==undefined)r=c.response=mr}`,t()}}if(R.resolve(),B+=W0,W1)B+=`return mapResponse(${E2}r,c.set${_0})
242
+ `;else B+=`return mapCompactResponse(${E2}r${_0})
243
+ `}else{j.resolve();let R=W6?`await ${S}`:S;if(n0("afterHandle").resolve(),A instanceof Response)B+=$.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${E2}${S}.clone(),c.set${_0})
244
244
  else return ${S}.clone()
245
245
  `:`return ${S}.clone()
246
- `;else if(W1)M+=`return mapResponse(${I2}${R},c.set${S0})
247
- `;else M+=`return mapCompactResponse(${I2}${R}${S0})
248
- `}}if(M+=`
249
- }catch(error){`,a)M+=`if(isParsing)error=new ParseError()
250
- `;if(!K6)M+="return(async()=>{";if(M+=`const set=c.set
246
+ `;else if(W1)B+=`return mapResponse(${E2}${R},c.set${_0})
247
+ `;else B+=`return mapCompactResponse(${E2}${R}${_0})
248
+ `}}if(B+=`
249
+ }catch(error){`,U0)B+=`if(isParsing)error=new ParseError()
250
+ `;if(!b6)B+="return(async()=>{";if(B+=`const set=c.set
251
251
  if(!set.status||set.status<300)set.status=error?.status||500
252
- `,O&&W.trace)for(let F=0;F<W.trace.length;F++)M+=`report${F}?.resolve(error);reportChild${F}?.(error)
253
- `;let X6=n0("error",{total:W.error?.length});if(W.error?.length){if(M+=`c.error=error
254
- `,C)M+=`if(error instanceof TypeBoxError){c.code="VALIDATION"
255
- c.set.status=422}else{c.code=error.code??error[ERROR_CODE]??"UNKNOWN"}`;else M+=`c.code=error.code??error[ERROR_CODE]??"UNKNOWN"
256
- `;M+=`let er
257
- `;for(let F=0;F<W.error.length;F++){let R=X6.resolveChild(W.error[F].fn.name);if(a0(W.error[F]))M+=`er=await e.error[${F}](c)
258
- `;else M+=`er=e.error[${F}](c)
252
+ `,O&&W.trace)for(let j=0;j<W.trace.length;j++)B+=`report${j}?.resolve(error);reportChild${j}?.(error)
253
+ `;let X6=n0("error",{total:W.error?.length});if(W.error?.length){if(B+=`c.error=error
254
+ `,C)B+=`if(error instanceof TypeBoxError){c.code="VALIDATION"
255
+ c.set.status=422}else{c.code=error.code??error[ERROR_CODE]??"UNKNOWN"}`;else B+=`c.code=error.code??error[ERROR_CODE]??"UNKNOWN"
256
+ `;B+=`let er
257
+ `;for(let j=0;j<W.error.length;j++){let R=X6.resolveChild(W.error[j].fn.name);if(e0(W.error[j]))B+=`er=await e.error[${j}](c)
258
+ `;else B+=`er=e.error[${j}](c)
259
259
  if(er instanceof Promise)er=await er
260
- `;R();let b=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length)for(let c=0;c<W.mapResponse.length;c++){let t=W.mapResponse[c],B=b.resolveChild(t.fn.name);M+=`c.response=er
261
- er=e.mapResponse[${c}](c)
260
+ `;R();let b=n0("mapResponse",{total:W.mapResponse?.length});if(W.mapResponse?.length)for(let h=0;h<W.mapResponse.length;h++){let t=W.mapResponse[h],M=b.resolveChild(t.fn.name);B+=`c.response=er
261
+ er=e.mapResponse[${h}](c)
262
262
  if(er instanceof Promise)er=await er
263
- `,B()}if(b.resolve(),M+=`er=mapEarlyResponse(er,set${S0})
264
- `,M+="if(er){",O&&W.trace){for(let c=0;c<W.trace.length;c++)M+=`report${c}.resolve()
265
- `;X6.resolve()}M+="return er}"}}if(X6.resolve(),M+="return handleError(c,error,true)",!K6)M+="})()";if(M+="}",N||O){if(M+="finally{ ",!K6)M+=";(async()=>{";let F=n0("afterResponse",{total:W.afterResponse?.length});if(N&&W.afterResponse)for(let R=0;R<W.afterResponse.length;R++){let b=F.resolveChild(W.afterResponse[R].fn.name);M+=`
263
+ `,M()}if(b.resolve(),B+=`er=mapEarlyResponse(er,set${_0})
264
+ `,B+="if(er){",O&&W.trace){for(let h=0;h<W.trace.length;h++)B+=`report${h}.resolve()
265
+ `;X6.resolve()}B+="return er}"}}if(X6.resolve(),B+="return handleError(c,error,true)",!b6)B+="})()";if(B+="}",G||O){if(B+="finally{ ",!b6)B+=";(async()=>{";let j=n0("afterResponse",{total:W.afterResponse?.length});if(G&&W.afterResponse)for(let R=0;R<W.afterResponse.length;R++){let b=j.resolveChild(W.afterResponse[R].fn.name);B+=`
266
266
  await e.afterResponse[${R}](c)
267
- `,b()}if(F.resolve(),!K6)M+="})()";M+="}"}let Z6=Y.inject?Object.keys(Y.inject).join(",")+",":"",X1="const {handler,handleError,hooks:e, "+Q2("validator,",C)+"mapResponse,mapCompactResponse,mapEarlyResponse,isNotEmpty,utils:{"+Q2("parseQuery,",a)+Q2("parseQueryFromURL,",g)+"},error:{"+Q2("ValidationError,",C)+"InternalServerError,"+Q2("ParseError",a)+"},schema,definitions,ERROR_CODE,"+Q2("parseCookie,",V)+Q2("signCookie,",V)+Q2("decodeURIComponent,",g)+"ElysiaCustomStatusResponse,"+Q2("ELYSIA_TRACE,",O)+Q2("ELYSIA_REQUEST_ID,",O)+Q2("parser,",W.parse?.length)+Q2("getServer,",A.server)+Z6+Q2("TypeBoxError",C)+`}=hooks
267
+ `,b()}if(j.resolve(),!b6)B+="})()";B+="}"}let A6=Q.inject?Object.keys(Q.inject).join(",")+",":"",X1="const {handler,handleError,hooks:e, "+Y2("validator,",C)+"mapResponse,mapCompactResponse,mapEarlyResponse,isNotEmpty,utils:{"+Y2("parseQuery,",U0)+Y2("parseQueryFromURL,",i)+"},error:{"+Y2("ValidationError,",C)+"InternalServerError,"+Y2("ParseError",U0)+"},schema,definitions,ERROR_CODE,"+Y2("parseCookie,",x)+Y2("signCookie,",x)+Y2("decodeURIComponent,",i)+"ElysiaCustomStatusResponse,"+Y2("ELYSIA_TRACE,",O)+Y2("ELYSIA_REQUEST_ID,",O)+Y2("parser,",W.parse?.length)+Y2("getServer,",$.server)+A6+Y2("TypeBoxError",C)+`}=hooks
268
268
  const trace=e.trace?.map(x=>typeof x==='function'?x:x.fn)??[]
269
- return ${K6?"async ":""}function handle(c){`;if(W.beforeHandle?.length)X1+=`let be
269
+ return ${b6?"async ":""}function handle(c){`;if(W.beforeHandle?.length)X1+=`let be
270
270
  `;if(W.afterHandle?.length)X1+=`let af
271
271
  `;if(W.mapResponse?.length)X1+=`let mr
272
- `;if($)X1+=`c.schema = schema
272
+ `;if(Z)X1+=`c.schema = schema
273
273
  c.defs = definitions
274
- `;X1+=M+"}";try{if(Q)return Function("hooks",X1);return Function("hooks",X1)({handler:Z,hooks:FU(W),validator:C?X:void 0,handleError:z.handleError,mapResponse:J.mapResponse,mapCompactResponse:J.mapCompactResponse,mapEarlyResponse:J.mapEarlyResponse,isNotEmpty:z1,utils:{parseQuery:a?o8:void 0,parseQueryFromURL:g?YG:void 0},error:{ValidationError:C?r:void 0,InternalServerError:tU,ParseError:a?oU:void 0},schema:z.router.history,definitions:z.definitions.type,ERROR_CODE:s8,parseCookie:V?WW:void 0,signCookie:V?l8:void 0,decodeURIComponent:g?S6:void 0,ElysiaCustomStatusResponse:b1,ELYSIA_TRACE:O?ww:void 0,ELYSIA_REQUEST_ID:O?z5:void 0,getServer:()=>z.getServer(),TypeBoxError:C?n:void 0,parser:z["~parser"],...Y.inject})}catch(F){let R=FU(W);console.log("[Composer] failed to generate optimized handler"),console.log("---"),console.log({handler:typeof Z==="function"?Z.toString():Z,instruction:X1,hooks:{...R,transform:R?.transform?.map?.((b)=>b.toString()),resolve:R?.resolve?.map?.((b)=>b.toString()),beforeHandle:R?.beforeHandle?.map?.((b)=>b.toString()),afterHandle:R?.afterHandle?.map?.((b)=>b.toString()),mapResponse:R?.mapResponse?.map?.((b)=>b.toString()),parse:R?.parse?.map?.((b)=>b.toString()),error:R?.error?.map?.((b)=>b.toString()),afterResponse:R?.afterResponse?.map?.((b)=>b.toString()),stop:R?.stop?.map?.((b)=>b.toString())},validator:X,definitions:z.definitions.type,error:F,fnLiteral:M}),console.log("---"),process.exit(1)}},tz=(z,{asManifest:w=!1}={})=>{let U=z["~adapter"].composeGeneralHandler;z.router.http.build();let W=U.error404(!!z.event.request?.length,!!z.event.error?.length),X=z.event.trace?.length,Z="",$=z.router,A="const route=router.find(r.method,p)";A+=$.http.root.ALL?`??router.find("ALL",p)
274
+ `;X1+=B+"}";try{if(Y)return Function("hooks",X1);return Function("hooks",X1)({handler:A,hooks:CW(W),validator:C?X:void 0,handleError:z.handleError,mapResponse:J.mapResponse,mapCompactResponse:J.mapCompactResponse,mapEarlyResponse:J.mapEarlyResponse,isNotEmpty:w1,utils:{parseQuery:U0?v5:void 0,parseQueryFromURL:i?CG:void 0},error:{ValidationError:C?r:void 0,InternalServerError:vW,ParseError:U0?nW:void 0},schema:z.router.history,definitions:z.definitions.type,ERROR_CODE:m5,parseCookie:x?eW:void 0,signCookie:x?u5:void 0,decodeURIComponent:i?P6:void 0,ElysiaCustomStatusResponse:K1,ELYSIA_TRACE:O?Jw:void 0,ELYSIA_REQUEST_ID:O?l5:void 0,getServer:()=>z.getServer(),TypeBoxError:C?n:void 0,parser:z["~parser"],...Q.inject})}catch(j){let R=CW(W);console.log("[Composer] failed to generate optimized handler"),console.log("---"),console.log({handler:typeof A==="function"?A.toString():A,instruction:X1,hooks:{...R,transform:R?.transform?.map?.((b)=>b.toString()),resolve:R?.resolve?.map?.((b)=>b.toString()),beforeHandle:R?.beforeHandle?.map?.((b)=>b.toString()),afterHandle:R?.afterHandle?.map?.((b)=>b.toString()),mapResponse:R?.mapResponse?.map?.((b)=>b.toString()),parse:R?.parse?.map?.((b)=>b.toString()),error:R?.error?.map?.((b)=>b.toString()),afterResponse:R?.afterResponse?.map?.((b)=>b.toString()),stop:R?.stop?.map?.((b)=>b.toString())},validator:X,definitions:z.definitions.type,error:j,fnLiteral:B}),console.log("---"),process.exit(1)}},ww=(z,{asManifest:w=!1}={})=>{let U=z["~adapter"].composeGeneralHandler;z.router.http.build();let W=U.error404(!!z.event.request?.length,!!z.event.error?.length),X=z.event.trace?.length,A="",Z=z.router,$="const route=router.find(r.method,p)";$+=Z.http.root.ALL?`??router.find("ALL",p)
275
275
  `:`
276
- `,A+=W.code,A+=`
276
+ `,$+=W.code,$+=`
277
277
  c.params=route.params
278
278
  if(route.store.handler)return route.store.handler(c)
279
279
  return (route.store.handler=route.store.compile())(c)
280
- `;let Q="";for(let[N,O]of Object.entries($.static.http.map)){if(Q+=`case'${N}':`,z.config.strictPath!==!0)Q+=`case'${S4(N)}':`;let M=p4(N);if(N!==M)Q+=`case'${M}':`;Q+=`switch(r.method){${O.code}
281
- `+(O.all??"default: break map")+"}"}let Y=!!z.event.request?.some(a0),J=U.inject?Object.keys(U.inject).join(",")+",":"";if(Z+=`
282
- const {app,mapEarlyResponse,NotFoundError,randomId,handleError,error,redirect,`+Q2("ELYSIA_TRACE,",X)+Q2("ELYSIA_REQUEST_ID,",X)+J+`}=data
280
+ `;let Y="";for(let[G,O]of Object.entries(Z.static.http.map)){if(Y+=`case'${G}':`,z.config.strictPath!==!0)Y+=`case'${D4(G)}':`;let B=a4(G);if(G!==B)Y+=`case'${B}':`;Y+=`switch(r.method){${O.code}
281
+ `+(O.all??"default: break map")+"}"}let Q=!!z.event.request?.some(e0),J=U.inject?Object.keys(U.inject).join(",")+",":"";if(A+=`
282
+ const {app,mapEarlyResponse,NotFoundError,randomId,handleError,error,redirect,`+Y2("ELYSIA_TRACE,",X)+Y2("ELYSIA_REQUEST_ID,",X)+J+`}=data
283
283
  const store=app.singleton.store
284
284
  const decorator=app.singleton.decorator
285
285
  const staticRouter=app.router.static.http
@@ -288,43 +288,43 @@ const router=app.router.http
288
288
  const trace=app.event.trace?.map(x=>typeof x==='function'?x:x.fn)??[]
289
289
  const notFound=new NotFoundError()
290
290
  const hoc=app.extender.higherOrderFunctions.map(x=>x.fn)
291
- `,z.event.request?.length)Z+=`const onRequest=app.event.request.map(x=>x.fn)
292
- `;if(Z+=W.declare,z.event.trace?.length)Z+="const "+z.event.trace.map((N,O)=>`tr${O}=app.event.trace[${O}].fn`).join(",")+`
293
- `;if(Z+=`${Y?"async ":""}function map(${U.parameters}){`,z.event.request?.length)Z+=`let re
294
- `;if(Z+=U.createContext(z),z.event.trace?.length)Z+="c[ELYSIA_TRACE]=["+z.event.trace.map((N,O)=>`tr${O}(c)`).join(",")+`]
295
- `;let G=Uw({trace:z.event.trace,addFn(N){Z+=N}})("request",{total:z.event.request?.length});if(z.event.request?.length){Z+="try{";for(let N=0;N<z.event.request.length;N++){let O=z.event.request[N],M=r4(O),C=a0(O),g=G.resolveChild(z.event.request[N].fn.name);if(M)Z+=`re=mapEarlyResponse(${C?"await ":""}onRequest[${N}](c),c.set)
296
- `,g("re"),Z+=`if(re!==undefined)return re
297
- `;else Z+=`${C?"await ":""}onRequest[${N}](c)
298
- `,g()}Z+="}catch(error){return app.handleError(c,error,false)}"}if(G.resolve(),Z+=U.websocket(z),Z+=`
291
+ `,z.event.request?.length)A+=`const onRequest=app.event.request.map(x=>x.fn)
292
+ `;if(A+=W.declare,z.event.trace?.length)A+="const "+z.event.trace.map((G,O)=>`tr${O}=app.event.trace[${O}].fn`).join(",")+`
293
+ `;if(A+=`${Q?"async ":""}function map(${U.parameters}){`,z.event.request?.length)A+=`let re
294
+ `;if(A+=U.createContext(z),z.event.trace?.length)A+="c[ELYSIA_TRACE]=["+z.event.trace.map((G,O)=>`tr${O}(c)`).join(",")+`]
295
+ `;let N=Bw({trace:z.event.trace,addFn(G){A+=G}})("request",{total:z.event.request?.length});if(z.event.request?.length){A+="try{";for(let G=0;G<z.event.request.length;G++){let O=z.event.request[G],B=w8(O),C=e0(O),i=N.resolveChild(z.event.request[G].fn.name);if(B)A+=`re=mapEarlyResponse(${C?"await ":""}onRequest[${G}](c),c.set)
296
+ `,i("re"),A+=`if(re!==undefined)return re
297
+ `;else A+=`${C?"await ":""}onRequest[${G}](c)
298
+ `,i()}A+="}catch(error){return app.handleError(c,error,false)}"}if(N.resolve(),A+=U.websocket(z),A+=`
299
299
  map:switch(p){
300
- `+Q+"default:break}"+A+`}
301
- `,z.extender.higherOrderFunctions.length){let N="map";for(let O=0;O<z.extender.higherOrderFunctions.length;O++)N=`hoc[${O}](${N},${U.parameters})`;Z+=`return function hocMap(${U.parameters}){return ${N}(${U.parameters})}`}else Z+="return map";let S=AW(z);return z.handleError=S,Function("data",Z)({app:z,mapEarlyResponse:z["~adapter"].handler.mapEarlyResponse,NotFoundError:zw,randomId:uU,handleError:S,error:mU,redirect:nU,ELYSIA_TRACE:X?ww:void 0,ELYSIA_REQUEST_ID:X?z5:void 0,...U.inject})},AW=(z)=>{let w=z.event,U="",W=z["~adapter"].composeError,X=W.inject?Object.keys(W.inject).join(",")+",":"",Z=!!z.event.trace?.length;if(U+="const {app:{event:{error:onErrorContainer,afterResponse:resContainer,mapResponse:_onMapResponse,trace:_trace}},mapResponse,ERROR_CODE,ElysiaCustomStatusResponse,"+Q2("ELYSIA_TRACE,",Z)+Q2("ELYSIA_REQUEST_ID,",Z)+X+`}=inject
300
+ `+Y+"default:break}"+$+`}
301
+ `,z.extender.higherOrderFunctions.length){let G="map";for(let O=0;O<z.extender.higherOrderFunctions.length;O++)G=`hoc[${O}](${G},${U.parameters})`;A+=`return function hocMap(${U.parameters}){return ${G}(${U.parameters})}`}else A+="return map";let S=WX(z);return z.handleError=S,Function("data",A)({app:z,mapEarlyResponse:z["~adapter"].handler.mapEarlyResponse,NotFoundError:Qw,randomId:iW,handleError:S,error:yW,redirect:cW,ELYSIA_TRACE:X?Jw:void 0,ELYSIA_REQUEST_ID:X?l5:void 0,...U.inject})},WX=(z)=>{let w=z.event,U="",W=z["~adapter"].composeError,X=W.inject?Object.keys(W.inject).join(",")+",":"",A=!!z.event.trace?.length;if(U+="const {app:{event:{error:onErrorContainer,afterResponse:resContainer,mapResponse:_onMapResponse,trace:_trace}},mapResponse,ERROR_CODE,ElysiaCustomStatusResponse,"+Y2("ELYSIA_TRACE,",A)+Y2("ELYSIA_REQUEST_ID,",A)+X+`}=inject
302
302
  `,U+=`const trace=_trace?.map(x=>typeof x==='function'?x:x.fn)??[]
303
303
  const onMapResponse=[]
304
304
  if(_onMapResponse)for(let i=0;i<_onMapResponse.length;i++)onMapResponse.push(_onMapResponse[i].fn??_onMapResponse[i])
305
305
  delete _onMapResponse
306
306
  const onError=onErrorContainer?.map(x=>x.fn)??[]
307
307
  const res=resContainer?.map(x=>x.fn)??[]
308
- return ${z.event.error?.find(a0)||z.event.mapResponse?.find(a0)?"async ":""}function(context,error,skipGlobal){`,U+="",Z)U+=`const id=context[ELYSIA_REQUEST_ID]
309
- `;let $=Uw({context:"context",trace:w.trace,addFn:(Y)=>{U+=Y}});if(U+=`const set=context.set
308
+ return ${z.event.error?.find(e0)||z.event.mapResponse?.find(e0)?"async ":""}function(context,error,skipGlobal){`,U+="",A)U+=`const id=context[ELYSIA_REQUEST_ID]
309
+ `;let Z=Bw({context:"context",trace:w.trace,addFn:(Q)=>{U+=Q}});if(U+=`const set=context.set
310
310
  let _r
311
311
  if(!context.code)context.code=error.code??error[ERROR_CODE]
312
312
  if(!(context.error instanceof Error))context.error=error
313
313
  if(error instanceof ElysiaCustomStatusResponse){set.status=error.status=error.code
314
- error.message=error.response}`,W.declare)U+=W.declare;let A=Z||!!w.afterResponse?.length||!!w.afterResponse?.length?"context.response = ":"";if(z.event.error)for(let Y=0;Y<z.event.error.length;Y++){let J=z.event.error[Y],G=`${a0(J)?"await ":""}onError[${Y}](context)
315
- `;if(U+="if(skipGlobal!==true){",r4(J)){U+=`_r=${G}
314
+ error.message=error.response}`,W.declare)U+=W.declare;let $=A||!!w.afterResponse?.length||!!w.afterResponse?.length?"context.response = ":"";if(z.event.error)for(let Q=0;Q<z.event.error.length;Q++){let J=z.event.error[Q],N=`${e0(J)?"await ":""}onError[${Q}](context)
315
+ `;if(U+="if(skipGlobal!==true){",w8(J)){U+=`_r=${N}
316
316
  if(_r!==undefined){if(_r instanceof Response)return mapResponse(_r,set${W.mapResponseContext})
317
317
  if(_r instanceof ElysiaCustomStatusResponse){error.status=error.code
318
318
  error.message = error.response}if(set.status===200||!set.status)set.status=error.status
319
- `;let S=$("mapResponse",{total:w.mapResponse?.length,name:"context"});if(w.mapResponse?.length)for(let N=0;N<w.mapResponse.length;N++){let O=w.mapResponse[N],M=S.resolveChild(O.fn.name);U+=`context.response=_r_r=${P4(O)?"await ":""}onMapResponse[${N}](context)
320
- `,M()}S.resolve(),U+=`return mapResponse(${A}_r,set${W.mapResponseContext})}`}else U+=G;U+="}"}U+=`if(error.constructor.name==="ValidationError"||error.constructor.name==="TransformDecodeError"){if(error.error)error=error.error
319
+ `;let S=Z("mapResponse",{total:w.mapResponse?.length,name:"context"});if(w.mapResponse?.length)for(let G=0;G<w.mapResponse.length;G++){let O=w.mapResponse[G],B=S.resolveChild(O.fn.name);U+=`context.response=_r_r=${O4(O)?"await ":""}onMapResponse[${G}](context)
320
+ `,B()}S.resolve(),U+=`return mapResponse(${$}_r,set${W.mapResponseContext})}`}else U+=N;U+="}"}U+=`if(error.constructor.name==="ValidationError"||error.constructor.name==="TransformDecodeError"){if(error.error)error=error.error
321
321
  set.status=error.status??422
322
- `+W.validationError+"}",U+="if(error instanceof Error){"+W.unknownError+"}";let Q=$("mapResponse",{total:w.mapResponse?.length,name:"context"});if(U+=`
322
+ `+W.validationError+"}",U+="if(error instanceof Error){"+W.unknownError+"}";let Y=Z("mapResponse",{total:w.mapResponse?.length,name:"context"});if(U+=`
323
323
  if(!context.response)context.response=error.message??error
324
324
  `,w.mapResponse?.length){U+=`let mr
325
- `;for(let Y=0;Y<w.mapResponse.length;Y++){let J=w.mapResponse[Y],G=Q.resolveChild(J.fn.name);U+=`if(mr===undefined){mr=${P4(J)?"await ":""}onMapResponse[${Y}](context)
326
- if(mr!==undefined)error=context.response=mr}`,G()}}return Q.resolve(),U+=`
327
- return mapResponse(${A}error,set${W.mapResponseContext})}`,Function("inject",U)({app:z,mapResponse:z["~adapter"].handler.mapResponse,ERROR_CODE:s8,ElysiaCustomStatusResponse:b1,ELYSIA_TRACE:Z?ww:void 0,ELYSIA_REQUEST_ID:Z?z5:void 0,...W.inject})},oz=(z,w)=>{for(let[U,W]of Object.entries(z.schema.properties))w[U]??=W.default},hU=(z)=>{let{mapResponse:w,mapEarlyResponse:U}=z["~adapter"].handler;return async(W)=>{let X=W.url,Z=X.indexOf("/",11),$=X.indexOf("?",Z+1),A=$===-1?X.substring(Z):X.substring(Z,$),Q={cookie:{},status:200,headers:{}},Y=Object.assign({},z.singleton.decorator,{set:Q,store:z.singleton.store,request:W,path:A,qi:$,error:mU,redirect:nU});try{if(z.event.request)for(let V=0;V<z.event.request.length;V++){let k=z.event.request[V].fn,j=k(Y);if(j instanceof Promise)j=await j;if(j=U(j,Q),j)return Y.response=j}let J=z.router.dynamic.find(W.method,A)??z.router.dynamic.find("ALL",A);if(!J)throw new zw;let{handle:G,hooks:S,validator:N,content:O,route:M}=J.store,C;if(W.method!=="GET"&&W.method!=="HEAD")if(O)switch(O){case"application/json":C=await W.json();break;case"text/plain":C=await W.text();break;case"application/x-www-form-urlencoded":C=o8(await W.text());break;case"application/octet-stream":C=await W.arrayBuffer();break;case"multipart/form-data":C={};let V=await W.formData();for(let k of V.keys()){if(C[k])continue;let j=V.getAll(k);if(j.length===1)C[k]=j[0];else C[k]=j}break}else{let V=W.headers.get("content-type");if(V){let k=V.indexOf(";");if(k!==-1)V=V.slice(0,k);if(Y.contentType=V,S.parse)for(let j=0;j<S.parse.length;j++){let e=S.parse[j].fn,Y0=e(Y,V);if(Y0 instanceof Promise)Y0=await Y0;if(Y0){C=Y0;break}}if(delete Y.contentType,C===void 0)switch(V){case"application/json":C=await W.json();break;case"text/plain":C=await W.text();break;case"application/x-www-form-urlencoded":C=o8(await W.text());break;case"application/octet-stream":C=await W.arrayBuffer();break;case"multipart/form-data":C={};let j=await W.formData();for(let e of j.keys()){if(C[e])continue;let Y0=j.getAll(e);if(Y0.length===1)C[e]=Y0[0];else C[e]=Y0}break}}}Y.route=M,Y.body=C,Y.params=J?.params||void 0,Y.query=$===-1?{}:o8(X.substring($+1)),Y.headers={};for(let[V,k]of W.headers.entries())Y.headers[V]=k;let g=Object.assign({},z.config?.cookie,N?.cookie?.config),L0=W.headers.get("cookie");Y.cookie=await WW(Y.set,L0,g?{secrets:g.secrets!==void 0?typeof g.secrets==="string"?g.secrets:g.secrets.join(","):void 0,sign:g.sign===!0?!0:g.sign!==void 0?typeof g.sign==="string"?g.sign:g.sign.join(","):void 0}:void 0);let a=N?.createHeaders?.();if(a)oz(a,Y.headers);let $0=N?.createParams?.();if($0)oz($0,Y.params);let K0=N?.createQuery?.();if(K0)oz(K0,Y.query);if(S.transform)for(let V=0;V<S.transform.length;V++){let k=S.transform[V],j=k.fn(Y);if(k.subType==="derive")if(j instanceof Promise)Object.assign(Y,await j);else Object.assign(Y,j);else if(j instanceof Promise)await j}if(N){if(a){let V=structuredClone(Y.headers);for(let[k,j]of W.headers)V[k]=j;if(N.headers.Check(V)===!1)throw new r("header",N.headers,V)}else if(N.headers?.Decode)Y.headers=N.headers.Decode(Y.headers);if($0?.Check(Y.params)===!1)throw new r("params",N.params,Y.params);else if(N.params?.Decode)Y.params=N.params.Decode(Y.params);if(K0?.Check(Y.query)===!1)throw new r("query",N.query,Y.query);else if(N.query?.Decode)Y.query=N.query.Decode(Y.query);if(N.createCookie?.()){let V={};for(let[k,j]of Object.entries(Y.cookie))V[k]=j.value;if(N.cookie.Check(V)===!1)throw new r("cookie",N.cookie,V);else if(N.cookie?.Decode)V=N.cookie.Decode(V)}if(N.createBody?.()?.Check(C)===!1)throw new r("body",N.body,C);else if(N.body?.Decode)Y.body=N.body.Decode(C)}if(S.beforeHandle)for(let V=0;V<S.beforeHandle.length;V++){let k=S.beforeHandle[V],j=k.fn(Y);if(k.subType==="resolve"){if(j instanceof b1){let e=U(j,Y.set);if(e)return Y.response=e}if(j instanceof Promise)Object.assign(Y,await j);else Object.assign(Y,j);continue}else if(j instanceof Promise)j=await j;if(j!==void 0){if(Y.response=j,S.afterHandle)for(let Y0=0;Y0<S.afterHandle.length;Y0++){let _0=S.afterHandle[Y0].fn(Y);if(_0 instanceof Promise)_0=await _0;if(_0)j=_0}let e=U(j,Y.set);if(e)return Y.response=e}}let f=typeof G==="function"?G(Y):G;if(f instanceof Promise)f=await f;if(S.afterHandle)if(!S.afterHandle.length){let V=f instanceof b1?f.code:Q.status?typeof Q.status==="string"?e8[Q.status]:Q.status:200,k=N?.createResponse?.()?.[V];if(k?.Check(f)===!1)throw new r("response",k,f);else if(k?.Decode)f=k.Decode(f)}else{Y.response=f;for(let V=0;V<S.afterHandle.length;V++){let k=S.afterHandle[V].fn(Y);if(k instanceof Promise)k=await k;let j=U(k,Y.set);if(j!==void 0){let e=N?.response?.[j.status];if(e?.Check(j)===!1)throw new r("response",e,j);else if(e?.Decode)f=e.Decode(f);return Y.response=j}}}if(Y.set.cookie&&g?.sign){let V=!g.secrets?void 0:typeof g.secrets==="string"?g.secrets:g.secrets[0];if(g.sign===!0)for(let[k,j]of Object.entries(Y.set.cookie))Y.set.cookie[k].value=await l8(j.value,"${secret}");else{let k=N?.cookie?.schema?.properties;for(let j of g.sign){if(!(j in k))continue;if(Y.set.cookie[j]?.value)Y.set.cookie[j].value=await l8(Y.set.cookie[j].value,V)}}}return w(Y.response=f,Y.set)}catch(J){let G=J instanceof T8&&J.error?J.error:J;return z.handleError(Y,G)}finally{if(z.event.afterResponse)for(let J of z.event.afterResponse)await J.fn(Y)}}},NG=(z)=>{let{mapResponse:w}=z["~adapter"].handler;return async(U,W)=>{let X=Object.assign(U,{error:W,code:W.code});if(X.set=U.set,z.event.error)for(let Z=0;Z<z.event.error.length;Z++){let $=z.event.error[Z].fn(X);if($ instanceof Promise)$=await $;if($!==void 0&&$!==null)return U.response=w($,U.set)}return new Response(typeof W.cause==="string"?W.cause:W.message,{headers:U.set.headers,status:W.status??500})}};class b0{config;server=null;dependencies={};_routes={};_types={Prefix:"",Singleton:{},Definitions:{},Metadata:{}};_ephemeral={};_volatile={};singleton={decorator:{},store:{},derive:{},resolve:{}};get store(){return this.singleton.store}get decorator(){return this.singleton.decorator}definitions={typebox:E.Module({}),type:{},error:{}};extender={macros:[],higherOrderFunctions:[]};validator={global:null,scoped:null,local:null,getCandidate(){return t4(t4(this.global,this.scoped),this.local)}};event={};telemetry={stack:void 0};router={"~http":void 0,get http(){if(!this["~http"])this["~http"]=new F6({lazy:!0});return this["~http"]},"~dynamic":void 0,get dynamic(){if(!this["~dynamic"])this["~dynamic"]=new F6;return this["~dynamic"]},static:{http:{static:{},map:{},all:""},ws:{}},history:[]};routeTree=new Map;get routes(){return this.router.history}getGlobalRoutes(){return this.router.history}inference={body:!1,cookie:!1,headers:!1,query:!1,set:!1,server:!1,request:!1,route:!1};getServer(){return this.server}getParent(){return null}"~parser"={};_promisedModules;get promisedModules(){if(!this._promisedModules)this._promisedModules=new vU;return this._promisedModules}constructor(z={}){if(z.tags)if(!z.detail)z.detail={tags:z.tags};else z.detail.tags=z.tags;if(z.nativeStaticResponse===void 0)z.nativeStaticResponse=!0;if(this.config={},this.applyConfig(z??{}),this["~adapter"]=z.adapter??(typeof Bun!=="undefined"?AG:t8),z?.analytic&&(z?.name||z?.seed!==void 0))this.telemetry.stack=new Error().stack}"~adapter";env(z,w=dU){if(F2(z,{modules:this.definitions.typebox,dynamic:!0,additionalProperties:!0,coerce:!0}).Check(w)===!1){let U=new r("env",z,w);throw new Error(U.all.map((W)=>W.summary).join(`
328
- `))}return this}wrap(z){return this.extender.higherOrderFunctions.push({checksum:o4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:z.toString()})),fn:z}),this}applyMacro(z){if(this.extender.macros.length){let w=yL({globalHook:this.event,localHook:z}),U={events:{global:this.event,local:z},get onParse(){return w("parse")},get onTransform(){return w("transform")},get onBeforeHandle(){return w("beforeHandle")},get onAfterHandle(){return w("afterHandle")},get mapResponse(){return w("mapResponse")},get onAfterResponse(){return w("afterResponse")},get onError(){return w("error")}};for(let W of this.extender.macros)iL(W.fn(U),z,w)}}applyConfig(z){return this.config={prefix:"",aot:dU.ELYSIA_AOT!=="false",normalize:!0,...z,cookie:{path:"/",...z?.cookie},experimental:z?.experimental??{},seed:z?.seed===void 0?"":z?.seed},this}get models(){let z={};for(let w of Object.keys(this.definitions.type))z[w]=F2(this.definitions.typebox.Import(w));return z.modules=this.definitions.typebox,z}add(z,w,U,W,{allowMeta:X=!1,skipPrefix:Z=!1}={allowMeta:!1,skipPrefix:!1}){if(W=mz(nL(W)),w!==""&&w.charCodeAt(0)!==47)w="/"+w;if(this.config.prefix&&!Z)w=this.config.prefix+w;if(W?.type)switch(W.type){case"text":W.type="text/plain";break;case"json":W.type="application/json";break;case"formdata":W.type="multipart/form-data";break;case"urlencoded":W.type="application/x-www-form-urlencoded";break;case"arrayBuffer":W.type="application/octet-stream";break;default:break}let $=this.definitions.type,A=!this.config.aot,Q={...this.validator.getCandidate()},Y={body:W?.body??Q?.body,headers:W?.headers??Q?.headers,params:W?.params??Q?.params,query:W?.query??Q?.query,cookie:W?.cookie??Q?.cookie,response:W?.response??Q?.response},J=()=>Y.cookie?yU({modules:S,validator:Y.cookie,defaultConfig:this.config.cookie,config:Y.cookie?.config??{},dynamic:A,models:$}):void 0,G=this.config.normalize,S=this.definitions.typebox,N=this.config.precompile===!0||typeof this.config.precompile==="object"&&this.config.precompile.schema===!0?{body:F2(Y.body,{modules:S,dynamic:A,models:$,normalize:G,additionalCoerce:OU()}),headers:F2(Y.headers,{modules:S,dynamic:A,models:$,additionalProperties:!this.config.normalize,coerce:!0,additionalCoerce:y6()}),params:F2(Y.params,{modules:S,dynamic:A,models:$,coerce:!0,additionalCoerce:y6()}),query:F2(Y.query,{modules:S,dynamic:A,models:$,normalize:G,coerce:!0,additionalCoerce:y6()}),cookie:J(),response:PU(Y.response,{modules:S,dynamic:A,models:$,normalize:G})}:{createBody(){if(this.body)return this.body;return this.body=F2(Y.body,{modules:S,dynamic:A,models:$,normalize:G,additionalCoerce:OU()})},createHeaders(){if(this.headers)return this.headers;return this.headers=F2(Y.headers,{modules:S,dynamic:A,models:$,additionalProperties:!G,coerce:!0,additionalCoerce:y6()})},createParams(){if(this.params)return this.params;return this.params=F2(Y.params,{modules:S,dynamic:A,models:$,coerce:!0,additionalCoerce:y6()})},createQuery(){if(this.query)return this.query;return this.query=F2(Y.query,{modules:S,dynamic:A,models:$,coerce:!0,additionalCoerce:y6()})},createCookie(){if(this.cookie)return this.cookie;return this.cookie=J()},createResponse(){if(this.response)return this.response;return this.response=PU(Y.response,{modules:S,dynamic:A,models:$,normalize:G})}};if(W=a1(W,mz(Q)),W.tags)if(!W.detail)W.detail={tags:W.tags};else W.detail.tags=W.tags;if(z1(this.config.detail))W.detail=j2(Object.assign({},this.config.detail),W.detail);this.applyMacro(W);let O=mz(a1(this.event,W));if(this.config.aot===!1){this.router.dynamic.add(z,w,{validator:N,hooks:O,content:W?.type,handle:U,route:w});let _0=p4(w,{dynamic:!0});if(w!==_0)this.router.dynamic.add(z,_0,{validator:N,hooks:O,content:W?.type,handle:U,route:w});if(this.config.strictPath===!1){let h0=S4(w);this.router.dynamic.add(z,h0,{validator:N,hooks:O,content:W?.type,handle:U,route:w});let U6=p4(h0);if(h0!==U6)this.router.dynamic.add(z,h0,{validator:N,hooks:O,content:W?.type,handle:U,route:w})}this.router.history.push({method:z,path:w,composed:null,handler:U,hooks:O});return}let M=this.config.precompile===!0||typeof this.config.precompile==="object"&&this.config.precompile.compose===!0,C=uz(this.inference),g=this["~adapter"].handler,L0=typeof U!=="function"&&typeof g.createStaticHandler==="function"?g.createStaticHandler(U,O,this.setHeaders):void 0,a=typeof U!=="function"?g.createNativeStaticHandler?.(U,O,this.setHeaders):void 0;if(this.config.nativeStaticResponse===!0&&a&&(z==="GET"||z==="ALL"))this.router.static.http.static[w]=a();let $0=(_0=!1)=>GG({app:this,path:w,method:z,hooks:O,validator:N,handler:typeof U!=="function"&&typeof g.createStaticHandler!=="function"?()=>U:U,allowMeta:X,inference:C,asManifest:_0}),K0;if(this.routeTree.has(z+w))for(let _0=0;_0<this.router.history.length;_0++){let h0=this.router.history[_0];if(h0.path===w&&h0.method===z){K0=_0;break}}else this.routeTree.set(z+w,this.router.history.length);let f=this.router.history,V=K0??this.router.history.length,k=M?$0():(_0)=>{let h0=(f[V].composed=$0())(_0);return $0=void 0,h0};if(M)$0=void 0;let j=z==="$INTERNALWS";if(K0!==void 0)this.router.history[K0]=Object.assign({method:z,path:w,composed:k,handler:U,hooks:O},W.webSocket?{websocket:W.websocket}:{});else this.router.history.push(Object.assign({method:z,path:w,composed:k,handler:U,hooks:O},W.webSocket?{websocket:W.websocket}:{}));let e=this.router.static.http,Y0={handler:M?k:void 0,compile(){return this.handler=$0()}};if(j){if(this.router.http.add("ws",w,Y0),!this.config.strictPath)this.router.http.add("ws",S4(w),Y0);let _0=p4(w,{dynamic:!0});if(_0!==w)this.router.http.add("ws",_0,Y0);return}if(w.indexOf(":")===-1&&w.indexOf("*")===-1){if(!e.map[w])e.map[w]={code:""};let _0=L0?"":"c";if(z==="ALL")e.map[w].all=`default:return ht[${V}].composed(${_0})
329
- `;else e.map[w].code=`case '${z}':return ht[${V}].composed(${_0})
330
- ${e.map[w].code}`;if(!this.config.strictPath&&this.config.nativeStaticResponse===!0&&a&&(z==="GET"||z==="ALL"))this.router.static.http.static[S4(w)]=a()}else{if(this.router.http.add(z,w,Y0),!this.config.strictPath){let h0=S4(w);if(this.config.nativeStaticResponse===!0&&L0&&(z==="GET"||z==="ALL"))this.router.static.http.static[h0]=L0();this.router.http.add(z,h0,Y0)}let _0=p4(w,{dynamic:!0});if(w!==_0){if(this.router.http.add(z,_0,Y0),this.config.nativeStaticResponse===!0&&L0&&(z==="GET"||z==="ALL"))this.router.static.http.static[_0]=L0();this.router.http.add(z,_0,Y0)}}}setHeaders;headers(z){if(!z)return this;if(!this.setHeaders)this.setHeaders={};return this.setHeaders=j2(this.setHeaders,z),this}onStart(z){return this.on("start",z),this}onRequest(z){return this.on("request",z),this}onParse(z,w){if(!w){if(typeof z==="string")return this.on("parse",this["~parser"][z]);return this.on("parse",z)}return this.on(z,"parse",w)}parser(z,w){return this["~parser"][z]=w,this}onTransform(z,w){if(!w)return this.on("transform",z);return this.on(z,"transform",w)}resolve(z,w){if(!w)w=z,z={as:"local"};let U={subType:"resolve",fn:w};return this.onBeforeHandle(z,U)}mapResolve(z,w){if(!w)w=z,z={as:"local"};let U={subType:"mapResolve",fn:w};return this.onBeforeHandle(z,U)}onBeforeHandle(z,w){if(!w)return this.on("beforeHandle",z);return this.on(z,"beforeHandle",w)}onAfterHandle(z,w){if(!w)return this.on("afterHandle",z);return this.on(z,"afterHandle",w)}mapResponse(z,w){if(!w)return this.on("mapResponse",z);return this.on(z,"mapResponse",w)}onAfterResponse(z,w){if(!w)return this.on("afterResponse",z);return this.on(z,"afterResponse",w)}trace(z,w){if(!w)w=z,z={as:"local"};if(!Array.isArray(w))w=[w];for(let U of w)this.on(z,"trace",JG(U));return this}error(z,w){switch(typeof z){case"string":return w.prototype[s8]=z,this.definitions.error[z]=w,this;case"function":return this.definitions.error=z(this.definitions.error),this}for(let[U,W]of Object.entries(z))W.prototype[s8]=U,this.definitions.error[U]=W;return this}onError(z,w){if(!w)return this.on("error",z);return this.on(z,"error",w)}onStop(z){return this.on("stop",z),this}on(z,w,U){let W;switch(typeof z){case"string":W=z,U=w;break;case"object":if(W=w,!Array.isArray(w)&&typeof w==="object")U=w;break}if(Array.isArray(U))U=W2(U);else if(typeof U==="function")U=[{fn:U}];else U=[U];let X=U;for(let Z of X)if(Z.scope=typeof z==="string"?"local":z?.as??"local",W==="resolve"||W==="derive")Z.subType=W;if(W!=="trace")wW({[W]:X.map((Z)=>Z.fn)},this.inference);for(let Z of X){let $=hL(Z,"global",{skipIfHasType:!0});switch(W){case"start":this.event.start??=[],this.event.start.push($);break;case"request":this.event.request??=[],this.event.request.push($);break;case"parse":this.event.parse??=[],this.event.parse.push($);break;case"transform":this.event.transform??=[],this.event.transform.push($);break;case"derive":this.event.transform??=[],this.event.transform.push(W2($,"derive"));break;case"beforeHandle":this.event.beforeHandle??=[],this.event.beforeHandle.push($);break;case"resolve":this.event.beforeHandle??=[],this.event.beforeHandle.push(W2($,"resolve"));break;case"afterHandle":this.event.afterHandle??=[],this.event.afterHandle.push($);break;case"mapResponse":this.event.mapResponse??=[],this.event.mapResponse.push($);break;case"afterResponse":this.event.afterResponse??=[],this.event.afterResponse.push($);break;case"trace":this.event.trace??=[],this.event.trace.push($);break;case"error":this.event.error??=[],this.event.error.push($);break;case"stop":this.event.stop??=[],this.event.stop.push($);break}}return this}propagate(){return L2(this.event.parse),L2(this.event.transform),L2(this.event.beforeHandle),L2(this.event.afterHandle),L2(this.event.mapResponse),L2(this.event.afterResponse),L2(this.event.trace),L2(this.event.error),this}as(z){let w={plugin:"scoped",scoped:"scoped",global:"global"}[z];if(L2(this.event.parse,w),L2(this.event.transform,w),L2(this.event.beforeHandle,w),L2(this.event.afterHandle,w),L2(this.event.mapResponse,w),L2(this.event.afterResponse,w),L2(this.event.trace,w),L2(this.event.error,w),z==="plugin")this.validator.scoped=t4(this.validator.scoped,this.validator.local),this.validator.local=null;else if(z==="global")this.validator.global=t4(this.validator.global,t4(this.validator.scoped,this.validator.local)),this.validator.scoped=null,this.validator.local=null;return this}group(z,w,U){let W=new b0({...this.config,prefix:""});W.singleton={...this.singleton},W.definitions={...this.definitions},W.getServer=()=>this.getServer(),W.inference=uz(this.inference),W.extender={...this.extender};let X=typeof w==="object",Z=(X?U:w)(W);if(this.singleton=j2(this.singleton,W.singleton),this.definitions=j2(this.definitions,W.definitions),Z.event.request?.length)this.event.request=[...this.event.request||[],...Z.event.request||[]];if(Z.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...Z.event.mapResponse||[]];return this.model(Z.definitions.type),Object.values(W.router.history).forEach(({method:$,path:A,handler:Q,hooks:Y})=>{if(A=(X?"":this.config.prefix)+z+A,X){let J=w,G=Y;this.add($,A,Q,a1(J,{...G||{},error:!G.error?Z.event.error:Array.isArray(G.error)?[...G.error||{},...Z.event.error||{}]:[G.error,...Z.event.error||{}]}))}else this.add($,A,Q,a1(Y,{error:Z.event.error}),{skipPrefix:!0})}),this}guard(z,w){if(!w){if(typeof z==="object"){this.applyMacro(z);let X=z.as??"local";if(this.validator[X]={body:z.body??this.validator[X]?.body,headers:z.headers??this.validator[X]?.headers,params:z.params??this.validator[X]?.params,query:z.query??this.validator[X]?.query,response:z.response??this.validator[X]?.response,cookie:z.cookie??this.validator[X]?.cookie},z.parse)this.on({as:X},"parse",z.parse);if(z.transform)this.on({as:X},"transform",z.transform);if(z.derive)this.on({as:X},"derive",z.derive);if(z.beforeHandle)this.on({as:X},"beforeHandle",z.beforeHandle);if(z.resolve)this.on({as:X},"resolve",z.resolve);if(z.afterHandle)this.on({as:X},"afterHandle",z.afterHandle);if(z.mapResponse)this.on({as:X},"mapResponse",z.mapResponse);if(z.afterResponse)this.on({as:X},"afterResponse",z.afterResponse);if(z.error)this.on({as:X},"error",z.error);if(z.detail)if(this.config.detail)this.config.detail=j2(Object.assign({},this.config.detail),z.detail);else this.config.detail=z.detail;if(z?.tags)if(!this.config.detail)this.config.detail={tags:z.tags};else this.config.detail.tags=z.tags;return this}return this.guard({},z)}let U=new b0({...this.config,prefix:""});U.singleton={...this.singleton},U.definitions={...this.definitions},U.inference=uz(this.inference),U.extender={...this.extender};let W=w(U);if(this.singleton=j2(this.singleton,U.singleton),this.definitions=j2(this.definitions,U.definitions),W.getServer=()=>this.server,W.event.request?.length)this.event.request=[...this.event.request||[],...W.event.request||[]];if(W.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...W.event.mapResponse||[]];return this.model(W.definitions.type),Object.values(U.router.history).forEach(({method:X,path:Z,handler:$,hooks:A})=>{this.add(X,Z,$,a1(z,{...A||{},error:!A.error?W.event.error:Array.isArray(A.error)?[...A.error||{},...W.event.error||[]]:[A.error,...W.event.error||[]]}))}),this}use(z,w){if(Array.isArray(z)){let U=this;for(let W of z)U=U.use(W);return U}if(w?.scoped)return this.guard({},(U)=>U.use(z));if(Array.isArray(z)){let U=this;for(let W of z)U=this.use(W);return U}if(z instanceof Promise)return this.promisedModules.add(z.then((U)=>{if(typeof U==="function")return U(this);if(U instanceof b0)return this._use(U).compile();if(U.constructor.name==="Elysia")return this._use(U).compile();if(typeof U.default==="function")return U.default(this);if(U.default instanceof b0)return this._use(U.default);if(U.constructor.name==="Elysia")return this._use(U.default);if(U.constructor.name==="_Elysia")return this._use(U.default);try{return this._use(U.default)}catch(W){throw console.error('Invalid plugin type. Expected Elysia instance, function, or module with "default" as Elysia instance or function that returns Elysia instance.'),W}}).then((U)=>{if(U&&typeof U.compile==="function")U.compile();return U})),this;return this._use(z)}propagatePromiseModules(z){if(z.promisedModules.size<=0)return this;for(let w of z.promisedModules.promises)this.promisedModules.add(w.then((U)=>{if(!U)return;let W=this._use(U);if(W instanceof Promise)return W.then((X)=>{if(X)X.compile();else U.compile()});return U.compile()}));return this}_use(z){if(typeof z==="function"){let X=z(this);if(X instanceof Promise)return this.promisedModules.add(X.then((Z)=>{if(Z instanceof b0){Z.getServer=()=>this.getServer(),Z.getGlobalRoutes=()=>this.getGlobalRoutes(),Z.model(this.definitions.type),Z.error(this.definitions.error);for(let{method:$,path:A,handler:Q,hooks:Y}of Object.values(Z.router.history))this.add($,A,Q,a1(Y,{error:Z.event.error}));if(Z.compile(),Z===this)return;return this.propagatePromiseModules(Z),Z}if(typeof Z==="function")return Z(this);if(typeof Z.default==="function")return Z.default(this);return this._use(Z)}).then((Z)=>{if(Z&&typeof Z.compile==="function")Z.compile();return Z})),this;return X}this.propagatePromiseModules(z);let{name:w,seed:U}=z.config;if(z.getParent=()=>this,z.getServer=()=>this.getServer(),z.getGlobalRoutes=()=>this.getGlobalRoutes(),z.model(this.definitions.type),z.error(this.definitions.error),this["~parser"]={...z["~parser"],...this["~parser"]},this.headers(z.setHeaders),w){if(!(w in this.dependencies))this.dependencies[w]=[];let X=U!==void 0?o4(w+JSON.stringify(U)):0;if(!this.dependencies[w].some(({checksum:Z})=>X===Z))this.extender.macros=this.extender.macros.concat(z.extender.macros),this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(z.extender.higherOrderFunctions)}else this.extender.macros=this.extender.macros.concat(z.extender.macros),this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(z.extender.higherOrderFunctions);EU(this.extender.macros),EU(this.extender.higherOrderFunctions);let W=[];for(let X=0;X<this.extender.higherOrderFunctions.length;X++){let Z=this.extender.higherOrderFunctions[X];if(Z.checksum){if(W.includes(Z.checksum))this.extender.higherOrderFunctions.splice(X,1),X--;W.push(Z.checksum)}}this.inference={body:this.inference.body||z.inference.body,cookie:this.inference.cookie||z.inference.cookie,headers:this.inference.headers||z.inference.headers,query:this.inference.query||z.inference.query,set:this.inference.set||z.inference.set,server:this.inference.server||z.inference.server,request:this.inference.request||z.inference.request,route:this.inference.route||z.inference.route},this.decorate(z.singleton.decorator),this.state(z.singleton.store),this.model(z.definitions.type),this.error(z.definitions.error),z.extender.macros=this.extender.macros.concat(z.extender.macros);for(let{method:X,path:Z,handler:$,hooks:A}of Object.values(z.router.history))this.add(X,Z,$,a1(A,{error:z.event.error}));if(w){if(!(w in this.dependencies))this.dependencies[w]=[];let X=U!==void 0?o4(w+JSON.stringify(U)):0;if(this.dependencies[w].some(({checksum:Z})=>X===Z))return this;this.dependencies[w].push(this.config?.analytic?{name:z.config.name,seed:z.config.seed,checksum:X,dependencies:z.dependencies,stack:z.telemetry.stack,routes:z.router.history,decorators:z.singleton,store:z.singleton.store,error:z.definitions.error,derive:z.event.transform?.filter((Z)=>Z?.subType==="derive").map((Z)=>({fn:Z.toString(),stack:new Error().stack??""})),resolve:z.event.transform?.filter((Z)=>Z?.subType==="resolve").map((Z)=>({fn:Z.toString(),stack:new Error().stack??""}))}:{name:z.config.name,seed:z.config.seed,checksum:X,dependencies:z.dependencies}),this.event=RU(this.event,CU(z.event),X)}else this.event=RU(this.event,CU(z.event));return this.validator.global=a1(this.validator.global,{...z.validator.global}),this.validator.local=a1(this.validator.local,{...z.validator.scoped}),this}macro(z){if(typeof z==="function"){let w={checksum:o4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:z.toString()})),fn:z};this.extender.macros.push(w)}else if(typeof z==="object"){for(let U of Object.keys(z))if(typeof z[U]==="object"){let W={...z[U]};z[U]=(X)=>{if(X===!0)return W}}let w={checksum:o4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:Object.entries(z).map(([U,W])=>`${U}+${W}`).join(",")})),fn:()=>z};this.extender.macros.push(w)}return this}mount(z,w){if(z instanceof b0||typeof z==="function"||z.length===0||z==="/"){let X=typeof z==="function"?z:z instanceof b0?z.compile().fetch:w instanceof b0?w.compile().fetch:w,Z=({request:$,path:A})=>X(new Request(DU($.url,A),{method:$.method,headers:$.headers,signal:$.signal,credentials:$.credentials,referrerPolicy:$.referrerPolicy,duplex:$.duplex,redirect:$.redirect,mode:$.mode,keepalive:$.keepalive,integrity:$.integrity,body:$.body}));return this.all("/*",Z,{parse:"none"}),this}if(!w)return this;let U=z.length-(z.endsWith("*")?1:0);if(w instanceof b0)w=w.compile().fetch;let W=({request:X,path:Z})=>w(new Request(DU(X.url,Z.slice(U)||"/"),{method:X.method,headers:X.headers,signal:X.signal,credentials:X.credentials,referrerPolicy:X.referrerPolicy,duplex:X.duplex,redirect:X.redirect,mode:X.mode,keepalive:X.keepalive,integrity:X.integrity,body:X.body}));return this.all(z,W,{parse:"none"}),this.all(z+(z.endsWith("/")?"*":"/*"),W,{parse:"none"}),this}get(z,w,U){return this.add("GET",z,w,U),this}post(z,w,U){return this.add("POST",z,w,U),this}put(z,w,U){return this.add("PUT",z,w,U),this}patch(z,w,U){return this.add("PATCH",z,w,U),this}delete(z,w,U){return this.add("DELETE",z,w,U),this}options(z,w,U){return this.add("OPTIONS",z,w,U),this}all(z,w,U){return this.add("ALL",z,w,U),this}head(z,w,U){return this.add("HEAD",z,w,U),this}connect(z,w,U){return this.add("CONNECT",z,w,U),this}route(z,w,U,W){return this.add(z.toUpperCase(),w,U,W,W?.config),this}ws(z,w){if(this["~adapter"].ws)this["~adapter"].ws(this,z,w);else console.warn("Current adapter doesn't support WebSocket");return this}state(z,w,U){if(w===void 0)U=z,z={as:"append"},w="";else if(U===void 0){if(typeof z==="string")U=w,w=z,z={as:"append"};else if(typeof z==="object")U=w,w=""}let{as:W}=z;if(typeof w!=="string")return this;switch(typeof U){case"object":if(w){if(w in this.singleton.store)this.singleton.store[w]=j2(this.singleton.store[w],U,{override:W==="override"});else this.singleton.store[w]=U;return this}if(U===null)return this;return this.singleton.store=j2(this.singleton.store,U,{override:W==="override"}),this;case"function":if(w){if(W==="override"||!(w in this.singleton.store))this.singleton.store[w]=U}else this.singleton.store=U(this.singleton.store);return this;default:if(W==="override"||!(w in this.singleton.store))this.singleton.store[w]=U;return this}}decorate(z,w,U){if(w===void 0)U=z,z={as:"append"},w="";else if(U===void 0){if(typeof z==="string")U=w,w=z,z={as:"append"};else if(typeof z==="object")U=w,w=""}let{as:W}=z;if(typeof w!=="string")return this;switch(typeof U){case"object":if(w){if(w in this.singleton.decorator)this.singleton.decorator[w]=j2(this.singleton.decorator[w],U,{override:W==="override"});else this.singleton.decorator[w]=U;return this}if(U===null)return this;return this.singleton.decorator=j2(this.singleton.decorator,U,{override:W==="override"}),this;case"function":if(w){if(W==="override"||!(w in this.singleton.decorator))this.singleton.decorator[w]=U}else this.singleton.decorator=U(this.singleton.decorator);return this;default:if(W==="override"||!(w in this.singleton.decorator))this.singleton.decorator[w]=U;return this}}derive(z,w){if(!w)w=z,z={as:"local"};let U={subType:"derive",fn:w};return this.onTransform(z,U)}model(z,w){let U=(W)=>lz(W,[{from:E.Number(),to:(X)=>E.Numeric(X),untilObjectFound:!0},{from:E.Boolean(),to:(X)=>E.BooleanString(X),untilObjectFound:!0}]);switch(typeof z){case"object":let W={},X=Object.entries(z);for(let[A,Q]of X){if(A in this.definitions.type)continue;W[A]=this.definitions.type[A]=U(Q),W[A].$id??=`#/components/schemas/${A}`}return this.definitions.typebox=E.Module({...this.definitions.typebox.$defs,...W}),this;case"function":let Z=U(z(this.definitions.type));return this.definitions.type=Z,this.definitions.typebox=E.Module(Z),this;case"string":if(!w)break;let $={...w,id:w.$id??`#/components/schemas/${z}`};return this.definitions.type[z]=w,this.definitions.typebox=E.Module({...this.definitions.typebox.$defs,...$}),this}return this.definitions.type[z]=w,this.definitions.typebox=E.Module({...this.definitions.typebox.$defs,[z]:w}),this}mapDerive(z,w){if(!w)w=z,z={as:"local"};let U={subType:"mapDerive",fn:w};return this.onTransform(z,U)}affix(z,w,U){if(U==="")return this;let W=["_","-"," "],X=(Q)=>Q[0].toUpperCase()+Q.slice(1),Z=z==="prefix"?(Q,Y)=>W.includes(Q.at(-1)??"")?Q+Y:Q+X(Y):W.includes(U.at(-1)??"")?(Q,Y)=>Y+Q:(Q,Y)=>Y+X(Q),$=(Q)=>{let Y={};switch(Q){case"decorator":for(let J in this.singleton.decorator)Y[Z(U,J)]=this.singleton.decorator[J];this.singleton.decorator=Y;break;case"state":for(let J in this.singleton.store)Y[Z(U,J)]=this.singleton.store[J];this.singleton.store=Y;break;case"model":for(let J in this.definitions.type)Y[Z(U,J)]=this.definitions.type[J];this.definitions.type=Y;break;case"error":for(let J in this.definitions.error)Y[Z(U,J)]=this.definitions.error[J];this.definitions.error=Y;break}},A=Array.isArray(w)?w:[w];for(let Q of A.some((Y)=>Y==="all")?["decorator","state","model","error"]:A)$(Q);return this}prefix(z,w){return this.affix("prefix",z,w)}suffix(z,w){return this.affix("suffix",z,w)}compile(){if(this["~adapter"].isWebStandard){if(this.fetch=this.config.aot?tz(this):hU(this),typeof this.server?.reload==="function")this.server.reload({...this.server||{},fetch:this.fetch});return this}if(typeof this.server?.reload==="function")this.server.reload(this.server||{});return this._handle=tz(this),this}handle=async(z)=>this.fetch(z);fetch=(z)=>{return(this.fetch=this.config.aot?tz(this):hU(this))(z)};handleError=async(z,w)=>{return(this.handleError=this.config.aot?AW(this):NG(this))(z,w)};outerErrorHandler=(z)=>new Response(z.message||z.name||"Error",{status:z?.status??500});listen=(z,w)=>{return this["~adapter"].listen(this)(z,w),this};stop=async(z)=>{if(!this.server)throw new Error("Elysia isn't running. Call `app.listen` to start the server.");if(this.server){if(this.server.stop(z),this.server=null,this.event.stop?.length)for(let w=0;w<this.event.stop.length;w++)this.event.stop[w].fn(this)}};get modules(){return this.promisedModules}}var QW;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(QW||(QW={}));var YW;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(YW||(YW={}));function Ww(z){return BW(z,HG,a4.Include)}function e4(z){return BW(z,_G,a4.None)}function BW(z,w,U){let W="";for(let X=0;X<z.byteLength;X+=3){let Z=0,$=0;for(let A=0;A<3&&X+A<z.byteLength;A++)Z=Z<<8|z[X+A],$+=8;for(let A=0;A<4;A++)if($>=6)W+=w[Z>>$-6&63],$-=6;else if($>0)W+=w[Z<<6-$&63],$=0;else if(U===a4.Include)W+="="}return W}var HG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",_G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";var a4;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(a4||(a4={}));var JW;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(JW||(JW={}));class qW{uint8(z,w){if(z.byteLength<w+1)throw new TypeError("Insufficient bytes");return z[w]}uint16(z,w){if(z.byteLength<w+2)throw new TypeError("Insufficient bytes");return z[w]<<8|z[w+1]}uint32(z,w){if(z.byteLength<w+4)throw new TypeError("Insufficient bytes");let U=0;for(let W=0;W<4;W++)U|=z[w+W]<<24-W*8;return U}uint64(z,w){if(z.byteLength<w+8)throw new TypeError("Insufficient bytes");let U=0n;for(let W=0;W<8;W++)U|=BigInt(z[w+W])<<BigInt(56-W*8);return U}putUint8(z,w,U){if(z.length<U+1)throw new TypeError("Not enough space");if(w<0||w>255)throw new TypeError("Invalid uint8 value");z[U]=w}putUint16(z,w,U){if(z.length<U+2)throw new TypeError("Not enough space");if(w<0||w>65535)throw new TypeError("Invalid uint16 value");z[U]=w>>8,z[U+1]=w&255}putUint32(z,w,U){if(z.length<U+4)throw new TypeError("Not enough space");if(w<0||w>4294967295)throw new TypeError("Invalid uint32 value");for(let W=0;W<4;W++)z[U+W]=w>>(3-W)*8&255}putUint64(z,w,U){if(z.length<U+8)throw new TypeError("Not enough space");if(w<0||w>18446744073709551615n)throw new TypeError("Invalid uint64 value");for(let W=0;W<8;W++)z[U+W]=Number(w>>BigInt((7-W)*8)&0xffn)}}class LW{uint8(z,w){if(z.byteLength<w+1)throw new TypeError("Insufficient bytes");return z[w]}uint16(z,w){if(z.byteLength<w+2)throw new TypeError("Insufficient bytes");return z[w]|z[w+1]<<8}uint32(z,w){if(z.byteLength<w+4)throw new TypeError("Insufficient bytes");let U=0;for(let W=0;W<4;W++)U|=z[w+W]<<W*8;return U}uint64(z,w){if(z.byteLength<w+8)throw new TypeError("Insufficient bytes");let U=0n;for(let W=0;W<8;W++)U|=BigInt(z[w+W])<<BigInt(W*8);return U}putUint8(z,w,U){if(z.length<1+U)throw new TypeError("Insufficient space");if(w<0||w>255)throw new TypeError("Invalid uint8 value");z[U]=w}putUint16(z,w,U){if(z.length<2+U)throw new TypeError("Insufficient space");if(w<0||w>65535)throw new TypeError("Invalid uint16 value");z[U+1]=w>>8,z[U]=w&255}putUint32(z,w,U){if(z.length<4+U)throw new TypeError("Insufficient space");if(w<0||w>4294967295)throw new TypeError("Invalid uint32 value");for(let W=0;W<4;W++)z[U+W]=w>>W*8&255}putUint64(z,w,U){if(z.length<8+U)throw new TypeError("Insufficient space");if(w<0||w>18446744073709551615n)throw new TypeError("Invalid uint64 value");for(let W=0;W<8;W++)z[U+W]=Number(w>>BigInt(W*8)&0xffn)}}var T1=new qW,SG=new LW;function v0(z,w){return(z<<32-w|z>>>w)>>>0}function U1(z,w){return(z<<BigInt(64-w)|z>>BigInt(w))&0xffffffffffffffffn}class GW{blockSize=64;size=32;blocks=new Uint8Array(64);currentBlockSize=0;H=new Uint32Array([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]);l=0n;w=new Uint32Array(64);update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<64){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,64-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+64<=z.byteLength){let U=z.slice(w,w+64);this.blocks.set(U),this.process(),w+=64}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}digest(){if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,64-this.currentBlockSize<8)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),T1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();let z=new Uint8Array(28);for(let w=0;w<7;w++)T1.putUint32(z,this.H[w],w*4);return z}process(){for(let Q=0;Q<16;Q++)this.w[Q]=(this.blocks[Q*4]<<24|this.blocks[Q*4+1]<<16|this.blocks[Q*4+2]<<8|this.blocks[Q*4+3])>>>0;for(let Q=16;Q<64;Q++){let Y=(v0(this.w[Q-2],17)^v0(this.w[Q-2],19)^this.w[Q-2]>>>10)>>>0,J=(v0(this.w[Q-15],7)^v0(this.w[Q-15],18)^this.w[Q-15]>>>3)>>>0;this.w[Q]=Y+this.w[Q-7]+J+this.w[Q-16]|0}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],Z=this.H[5],$=this.H[6],A=this.H[7];for(let Q=0;Q<64;Q++){let Y=(v0(X,6)^v0(X,11)^v0(X,25))>>>0,J=(X&Z^~X&$)>>>0,G=A+Y+J+DG[Q]+this.w[Q]|0,S=(v0(z,2)^v0(z,13)^v0(z,22))>>>0,N=(z&w^z&U^w&U)>>>0,O=S+N|0;A=$,$=Z,Z=X,X=W+G|0,W=U,U=w,w=z,z=G+O|0}this.H[0]=z+this.H[0]|0,this.H[1]=w+this.H[1]|0,this.H[2]=U+this.H[2]|0,this.H[3]=W+this.H[3]|0,this.H[4]=X+this.H[4]|0,this.H[5]=Z+this.H[5]|0,this.H[6]=$+this.H[6]|0,this.H[7]=A+this.H[7]|0}}var DG=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function Xw(z){let w=new Zw;return w.update(z),w.digest()}class Zw{blockSize=64;size=32;blocks=new Uint8Array(64);currentBlockSize=0;H=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);l=0n;w=new Uint32Array(64);update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<64){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,64-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+64<=z.byteLength){let U=z.slice(w,w+64);this.blocks.set(U),this.process(),w+=64}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}digest(){if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,64-this.currentBlockSize<8)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),T1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();let z=new Uint8Array(32);for(let w=0;w<8;w++)T1.putUint32(z,this.H[w],w*4);return z}process(){for(let Q=0;Q<16;Q++)this.w[Q]=(this.blocks[Q*4]<<24|this.blocks[Q*4+1]<<16|this.blocks[Q*4+2]<<8|this.blocks[Q*4+3])>>>0;for(let Q=16;Q<64;Q++){let Y=(v0(this.w[Q-2],17)^v0(this.w[Q-2],19)^this.w[Q-2]>>>10)>>>0,J=(v0(this.w[Q-15],7)^v0(this.w[Q-15],18)^this.w[Q-15]>>>3)>>>0;this.w[Q]=Y+this.w[Q-7]+J+this.w[Q-16]|0}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],Z=this.H[5],$=this.H[6],A=this.H[7];for(let Q=0;Q<64;Q++){let Y=(v0(X,6)^v0(X,11)^v0(X,25))>>>0,J=(X&Z^~X&$)>>>0,G=A+Y+J+PG[Q]+this.w[Q]|0,S=(v0(z,2)^v0(z,13)^v0(z,22))>>>0,N=(z&w^z&U^w&U)>>>0,O=S+N|0;A=$,$=Z,Z=X,X=W+G|0,W=U,U=w,w=z,z=G+O|0}this.H[0]=z+this.H[0]|0,this.H[1]=w+this.H[1]|0,this.H[2]=U+this.H[2]|0,this.H[3]=W+this.H[3]|0,this.H[4]=X+this.H[4]|0,this.H[5]=Z+this.H[5]|0,this.H[6]=$+this.H[6]|0,this.H[7]=A+this.H[7]|0}}var PG=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);class R6{blockSize=128;size=64;blocks=new Uint8Array(128);currentBlockSize=0;l=0n;w=new BigUint64Array(80);H;constructor(z){if(z.byteLength!==64)throw new TypeError;this.H=z}update(z){if(this.l+=BigInt(z.byteLength)*8n,this.currentBlockSize+z.byteLength<128){this.blocks.set(z,this.currentBlockSize),this.currentBlockSize+=z.byteLength;return}let w=0;if(this.currentBlockSize>0){let U=z.slice(0,128-this.currentBlockSize);this.blocks.set(U,this.currentBlockSize),this.process(),w+=U.byteLength,this.currentBlockSize=0}while(w+128<=z.byteLength){let U=z.slice(w,w+128);this.blocks.set(U),this.process(),w+=128,this.currentBlockSize=0}if(z.byteLength-w>0){let U=z.slice(w);this.blocks.set(U),this.currentBlockSize=U.byteLength}}putDigest(z){if(z.byteLength>64||z.byteLength%8!==0)throw new TypeError;if(this.blocks[this.currentBlockSize]=128,this.currentBlockSize+=1,128-this.currentBlockSize<16)this.blocks.fill(0,this.currentBlockSize),this.process(),this.currentBlockSize=0;this.blocks.fill(0,this.currentBlockSize),T1.putUint64(this.blocks,this.l,this.blockSize-8),this.process();for(let w=0;w<z.byteLength/8;w++)T1.putUint64(z,this.H[w],w*8)}process(){for(let Q=0;Q<16;Q++)this.w[Q]=BigInt(this.blocks[Q*8])<<56n|BigInt(this.blocks[Q*8+1])<<48n|BigInt(this.blocks[Q*8+2])<<40n|BigInt(this.blocks[Q*8+3])<<32n|BigInt(this.blocks[Q*8+4])<<24n|BigInt(this.blocks[Q*8+5])<<16n|BigInt(this.blocks[Q*8+6])<<8n|BigInt(this.blocks[Q*8+7]);for(let Q=16;Q<80;Q++){let Y=(U1(this.w[Q-2],19)^U1(this.w[Q-2],61)^this.w[Q-2]>>6n)&0xffffffffffffffffn,J=(U1(this.w[Q-15],1)^U1(this.w[Q-15],8)^this.w[Q-15]>>7n)&0xffffffffffffffffn;this.w[Q]=Y+this.w[Q-7]+J+this.w[Q-16]&0xffffffffffffffffn}let z=this.H[0],w=this.H[1],U=this.H[2],W=this.H[3],X=this.H[4],Z=this.H[5],$=this.H[6],A=this.H[7];for(let Q=0;Q<80;Q++){let Y=(U1(X,14)^U1(X,18)^U1(X,41))&0xffffffffffffffffn,J=(X&Z^~X&$)&0xffffffffffffffffn,G=A+Y+J+OG[Q]+this.w[Q]&0xffffffffffffffffn,S=(U1(z,28)^U1(z,34)^U1(z,39))&0xffffffffffffffffn,N=(z&w^z&U^w&U)&0xffffffffffffffffn,O=S+N&0xffffffffffffffffn;A=$,$=Z,Z=X,X=W+G&0xffffffffffffffffn,W=U,U=w,w=z,z=G+O&0xffffffffffffffffn}this.H[0]=z+this.H[0]&0xffffffffffffffffn,this.H[1]=w+this.H[1]&0xffffffffffffffffn,this.H[2]=U+this.H[2]&0xffffffffffffffffn,this.H[3]=W+this.H[3]&0xffffffffffffffffn,this.H[4]=X+this.H[4]&0xffffffffffffffffn,this.H[5]=Z+this.H[5]&0xffffffffffffffffn,this.H[6]=$+this.H[6]&0xffffffffffffffffn,this.H[7]=A+this.H[7]&0xffffffffffffffffn}}class NW{blockSize=128;size=64;sha512=new R6(new BigUint64Array([0x6a09e667f3bcc908n,0xbb67ae8584caa73bn,0x3c6ef372fe94f82bn,0xa54ff53a5f1d36f1n,0x510e527fade682d1n,0x9b05688c2b3e6c1fn,0x1f83d9abfb41bd6bn,0x5be0cd19137e2179n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(64);return this.sha512.putDigest(z),z}}var OG=new BigUint64Array([0x428a2f98d728ae22n,0x7137449123ef65cdn,0xb5c0fbcfec4d3b2fn,0xe9b5dba58189dbbcn,0x3956c25bf348b538n,0x59f111f1b605d019n,0x923f82a4af194f9bn,0xab1c5ed5da6d8118n,0xd807aa98a3030242n,0x12835b0145706fben,0x243185be4ee4b28cn,0x550c7dc3d5ffb4e2n,0x72be5d74f27b896fn,0x80deb1fe3b1696b1n,0x9bdc06a725c71235n,0xc19bf174cf692694n,0xe49b69c19ef14ad2n,0xefbe4786384f25e3n,0x0fc19dc68b8cd5b5n,0x240ca1cc77ac9c65n,0x2de92c6f592b0275n,0x4a7484aa6ea6e483n,0x5cb0a9dcbd41fbd4n,0x76f988da831153b5n,0x983e5152ee66dfabn,0xa831c66d2db43210n,0xb00327c898fb213fn,0xbf597fc7beef0ee4n,0xc6e00bf33da88fc2n,0xd5a79147930aa725n,0x06ca6351e003826fn,0x142929670a0e6e70n,0x27b70a8546d22ffcn,0x2e1b21385c26c926n,0x4d2c6dfc5ac42aedn,0x53380d139d95b3dfn,0x650a73548baf63den,0x766a0abb3c77b2a8n,0x81c2c92e47edaee6n,0x92722c851482353bn,0xa2bfe8a14cf10364n,0xa81a664bbc423001n,0xc24b8b70d0f89791n,0xc76c51a30654be30n,0xd192e819d6ef5218n,0xd69906245565a910n,0xf40e35855771202an,0x106aa07032bbd1b8n,0x19a4c116b8d2d0c8n,0x1e376c085141ab53n,0x2748774cdf8eeb99n,0x34b0bcb5e19b48a8n,0x391c0cb3c5c95a63n,0x4ed8aa4ae3418acbn,0x5b9cca4f7763e373n,0x682e6ff3d6b2b8a3n,0x748f82ee5defb2fcn,0x78a5636f43172f60n,0x84c87814a1f0ab72n,0x8cc702081a6439ecn,0x90befffa23631e28n,0xa4506cebde82bde9n,0xbef9a3f7b2c67915n,0xc67178f2e372532bn,0xca273eceea26619cn,0xd186b8c721c0c207n,0xeada7dd6cde0eb1en,0xf57d4f7fee6ed178n,0x06f067aa72176fban,0x0a637dc5a2c898a6n,0x113f9804bef90daen,0x1b710b35131c471bn,0x28db77f523047d84n,0x32caab7b40c72493n,0x3c9ebe0a15c9bebcn,0x431d67c49c100d4cn,0x4cc5d4becb3e42b6n,0x597f299cfc657e2an,0x5fcb6fab3ad6faecn,0x6c44198c4a475817n]);class HW{blockSize=128;size=48;sha512=new R6(new BigUint64Array([0xcbbb9d5dc1059ed8n,0x629a292a367cd507n,0x9159015a3070dd17n,0x152fecd8f70e5939n,0x67332667ffc00b31n,0x8eb44a8768581511n,0xdb0c2e0d64f98fa7n,0x47b5481dbefa4fa4n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(48);return this.sha512.putDigest(z),z}}class _W{blockSize=128;size=28;sha512=new R6(new BigUint64Array([0x8c3d37c819544da2n,0x73e1996689dcd4d6n,0x1dfab7ae32ff9c82n,0x679dd514582f9fcfn,0x0f6d2b697bd44da8n,0x77e36f7304c48942n,0x3f9d85a86a1d36c8n,0x1112e6ad91d692a1n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(32);return this.sha512.putDigest(z),z.slice(0,28)}}class SW{blockSize=128;size=28;sha512=new R6(new BigUint64Array([0x22312194fc2bf72cn,0x9f555fa3c84c64c2n,0x2393b86b6f53b151n,0x963877195940eabdn,0x96283ee2a88effe3n,0xbe5e1e2553863992n,0x2b0199fc2c85b8aan,0x0eb72ddc81c52ca2n]));update(z){this.sha512.update(z)}digest(){let z=new Uint8Array(32);return this.sha512.putDigest(z),z}}class R4{data;constructor(z){this.data=z}tokenType(){if("token_type"in this.data&&typeof this.data.token_type==="string")return this.data.token_type;throw new Error("Missing or invalid 'token_type' field")}accessToken(){if("access_token"in this.data&&typeof this.data.access_token==="string")return this.data.access_token;throw new Error("Missing or invalid 'access_token' field")}accessTokenExpiresInSeconds(){if("expires_in"in this.data&&typeof this.data.expires_in==="number")return this.data.expires_in;throw new Error("Missing or invalid 'expires_in' field")}accessTokenExpiresAt(){return new Date(Date.now()+this.accessTokenExpiresInSeconds()*1000)}hasRefreshToken(){return"refresh_token"in this.data&&typeof this.data.refresh_token==="string"}refreshToken(){if("refresh_token"in this.data&&typeof this.data.refresh_token==="string")return this.data.refresh_token;throw new Error("Missing or invalid 'refresh_token' field")}hasScopes(){return"scope"in this.data&&typeof this.data.scope==="string"}scopes(){if("scope"in this.data&&typeof this.data.scope==="string")return this.data.scope.split(" ");throw new Error("Missing or invalid 'scope' field")}idToken(){if("id_token"in this.data&&typeof this.data.id_token==="string")return this.data.id_token;throw new Error("Missing or invalid field 'id_token'")}}function y2(z){let w=Xw(new TextEncoder().encode(z));return e4(w)}function $w(){let z=new Uint8Array(32);return crypto.getRandomValues(z),e4(z)}function Aw(){let z=new Uint8Array(32);return crypto.getRandomValues(z),e4(z)}function DW(z,w){if(w.length!==1)throw new TypeError("Invalid character string");let U=0;while(U<z.length&&z[U]===w)U++;return z.slice(U)}function Qw(z,w){if(w.length!==1)throw new TypeError("Invalid character string");let U=z.length;while(U>0&&z[U-1]===w)U--;return z.slice(0,U)}function e0(z,...w){let U=Qw(z,"/");for(let W of w)U=Qw(U,"/")+"/"+DW(W,"/");return U}function T(z,w){let U=new TextEncoder().encode(w.toString()),W=new Request(z,{method:"POST",body:U});return W.headers.set("Content-Type","application/x-www-form-urlencoded"),W.headers.set("Accept","application/json"),W.headers.set("User-Agent","arctic"),W.headers.set("Content-Length",U.byteLength.toString()),W}function g1(z,w){let U=new TextEncoder().encode(`${z}:${w}`);return Ww(U)}async function i(z){let w;try{w=await fetch(z)}catch(U){throw new C6(U)}if(w.status===400||w.status===401){let U;try{U=await w.json()}catch{throw new z6(w.status)}if(typeof U!=="object"||U===null)throw new K1(w.status,U);let W;try{W=U5(U)}catch{throw new K1(w.status,U)}throw W}if(w.status===200){let U;try{U=await w.json()}catch{throw new z6(w.status)}if(typeof U!=="object"||U===null)throw new K1(w.status,U);return new R4(U)}if(w.body!==null)await w.body.cancel();throw new z6(w.status)}async function w6(z){let w;try{w=await fetch(z)}catch(U){throw new C6(U)}if(w.status===400||w.status===401){let U;try{U=await w.json()}catch{throw new K1(w.status,null)}if(typeof U!=="object"||U===null)throw new K1(w.status,U);let W;try{W=U5(U)}catch{throw new K1(w.status,U)}throw W}if(w.status===200){if(w.body!==null)await w.body.cancel();return}if(w.body!==null)await w.body.cancel();throw new z6(w.status)}function U5(z){let w;if("error"in z&&typeof z.error==="string")w=z.error;else throw new Error("Invalid error response");let U=null,W=null,X=null;if("error_description"in z){if(typeof z.error_description!=="string")throw new Error("Invalid data");U=z.error_description}if("error_uri"in z){if(typeof z.error_uri!=="string")throw new Error("Invalid data");W=z.error_uri}if("state"in z){if(typeof z.state!=="string")throw new Error("Invalid data");X=z.state}return new z8(w,U,W,X)}class C6 extends Error{constructor(z){super("Failed to send request",{cause:z})}}class z8 extends Error{code;description;uri;state;constructor(z,w,U,W){super(`OAuth request error: ${z}`);this.code=z,this.description=w,this.uri=U,this.state=W}}class z6 extends Error{status;constructor(z){super("Unexpected error response");this.status=z}}class K1 extends Error{status;data;constructor(z,w){super("Unexpected error response body");this.status=z,this.data=w}}class y{clientId;clientPassword;redirectURI;constructor(z,w,U){this.clientId=z,this.clientPassword=w,this.redirectURI=U}createAuthorizationURL(z,w,U){let W=new URL(z);if(W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),this.redirectURI!==null)W.searchParams.set("redirect_uri",this.redirectURI);if(W.searchParams.set("state",w),U.length>0)W.searchParams.set("scope",U.join(" "));return W}createAuthorizationURLWithPKCE(z,w,U,W,X){let Z=new URL(z);if(Z.searchParams.set("response_type","code"),Z.searchParams.set("client_id",this.clientId),this.redirectURI!==null)Z.searchParams.set("redirect_uri",this.redirectURI);if(Z.searchParams.set("state",w),U===w0.S256){let $=y2(W);Z.searchParams.set("code_challenge_method","S256"),Z.searchParams.set("code_challenge",$)}else if(U===w0.Plain)Z.searchParams.set("code_challenge_method","plain"),Z.searchParams.set("code_challenge",W);if(X.length>0)Z.searchParams.set("scope",X.join(" "));return Z}async validateAuthorizationCode(z,w,U){let W=new URLSearchParams;if(W.set("grant_type","authorization_code"),W.set("code",w),this.redirectURI!==null)W.set("redirect_uri",this.redirectURI);if(U!==null)W.set("code_verifier",U);if(this.clientPassword===null)W.set("client_id",this.clientId);let X=T(z,W);if(this.clientPassword!==null){let $=g1(this.clientId,this.clientPassword);X.headers.set("Authorization",`Basic ${$}`)}return await i(X)}async refreshAccessToken(z,w,U){let W=new URLSearchParams;if(W.set("grant_type","refresh_token"),W.set("refresh_token",w),this.clientPassword===null)W.set("client_id",this.clientId);if(U.length>0)W.set("scope",U.join(" "));let X=T(z,W);if(this.clientPassword!==null){let $=g1(this.clientId,this.clientPassword);X.headers.set("Authorization",`Basic ${$}`)}return await i(X)}async revokeToken(z,w){let U=new URLSearchParams;if(U.set("token",w),this.clientPassword===null)U.set("client_id",this.clientId);let W=T(z,U);if(this.clientPassword!==null){let X=g1(this.clientId,this.clientPassword);W.headers.set("Authorization",`Basic ${X}`)}await w6(W)}}var w0;(function(z){z[z.S256=0]="S256",z[z.Plain=1]="Plain"})(w0||(w0={}));class W5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/oauth2/authorize`,this.tokenEndpoint=`https://${z}/oauth2/token`,this.tokenRevocationEndpoint=`https://${z}/oauth2/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z,w){return await this.client.refreshAccessToken(this.tokenEndpoint,z,w)}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var CG="https://anilist.co/api/v2/oauth/authorize",bG="https://anilist.co/api/v2/oauth/token";class X5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){return this.client.createAuthorizationURL(CG,z,[])}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(bG,z,null)}}var PW;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(PW||(PW={}));var OW;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(OW||(OW={}));function t6(z){return KG(z,jG,Z5.None)}function KG(z,w,U){let W="";for(let X=0;X<z.byteLength;X+=3){let Z=0,$=0;for(let A=0;A<3&&X+A<z.byteLength;A++)Z=Z<<8|z[X+A],$+=8;for(let A=0;A<4;A++)if($>=6)W+=w[Z>>$-6&63],$-=6;else if($>0)W+=w[Z<<6-$&63],$=0;else if(U===Z5.Include)W+="="}return W}var jG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";function Yw(z){return FG(z,EG,w8.Ignore)}function FG(z,w,U){let W=new Uint8Array(Math.ceil(z.length/4)*3),X=0;for(let Z=0;Z<z.length;Z+=4){let $=0,A=0;for(let Y=0;Y<4;Y++){if(U===w8.Required&&z[Z+Y]==="=")continue;if(U===w8.Ignore&&(Z+Y>=z.length||z[Z+Y]==="="))continue;if(Y>0&&z[Z+Y-1]==="=")throw new Error("Invalid padding");if(!(z[Z+Y]in w))throw new Error("Invalid character");$|=w[z[Z+Y]]<<(3-Y)*6,A+=6}if(A<24){let Y;if(A===12)Y=$&65535;else if(A===18)Y=$&255;else throw new Error("Invalid padding");if(Y!==0)throw new Error("Invalid padding")}let Q=Math.floor(A/8);for(let Y=0;Y<Q;Y++)W[X]=$>>16-Y*8&255,X++}return W.slice(0,X)}var Z5;(function(z){z[z.Include=0]="Include",z[z.None=1]="None"})(Z5||(Z5={}));var w8;(function(z){z[z.Required=0]="Required",z[z.Ignore=1]="Ignore"})(w8||(w8={}));var EG={"0":52,"1":53,"2":54,"3":55,"4":56,"5":57,"6":58,"7":59,"8":60,"9":61,A:0,B:1,C:2,D:3,E:4,F:5,G:6,H:7,I:8,J:9,K:10,L:11,M:12,N:13,O:14,P:15,Q:16,R:17,S:18,T:19,U:20,V:21,W:22,X:23,Y:24,Z:25,a:26,b:27,c:28,d:29,e:30,f:31,g:32,h:33,i:34,j:35,k:36,l:37,m:38,n:39,o:40,p:41,q:42,r:43,s:44,t:45,u:46,v:47,w:48,x:49,y:50,z:51,"-":62,_:63};function RW(z){let w=z.split(".");if(w.length!==3)throw new Error("Invalid JWT");let U;try{U=new TextDecoder().decode(Yw(w[1]))}catch{throw new Error("Invalid JWT: Invalid base64url encoding")}let W;try{W=JSON.parse(U)}catch{throw new Error("Invalid JWT: Invalid JSON encoding")}if(typeof W!=="object"||W===null)throw new Error("Invalid JWT: Invalid payload");return W}function CW(z,w,U){let W=t6(new TextEncoder().encode(z)),X=t6(new TextEncoder().encode(w)),Z=t6(U);return W+"."+X+"."+Z}function bW(z,w){let U=t6(new TextEncoder().encode(z)),W=t6(new TextEncoder().encode(w)),X=U+"."+W;return new TextEncoder().encode(X)}var xG="https://appleid.apple.com/auth/authorize",VG="https://appleid.apple.com/auth/token";class $5{clientId;teamId;keyId;pkcs8PrivateKey;redirectURI;constructor(z,w,U,W,X){this.clientId=z,this.teamId=w,this.keyId=U,this.pkcs8PrivateKey=W,this.redirectURI=X}createAuthorizationURL(z,w){let U=new URL(xG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId);let U=await this.createClientSecret();w.set("client_secret",U);let W=T(VG,w);return await i(W)}async createClientSecret(){let z=await crypto.subtle.importKey("pkcs8",this.pkcs8PrivateKey,{name:"ECDSA",namedCurve:"P-256"},!1,["sign"]),w=Math.floor(Date.now()/1000),U=JSON.stringify({typ:"JWT",alg:"ES256",kid:this.keyId}),W=JSON.stringify({iss:this.teamId,exp:w+300,aud:["https://appleid.apple.com"],sub:this.clientId,iat:w}),X=new Uint8Array(await crypto.subtle.sign({name:"ECDSA",hash:"SHA-256"},z,bW(U,W)));return CW(U,W,X)}}var kG="https://auth.atlassian.com/authorize",jW="https://auth.atlassian.com/oauth/token";class A5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(kG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U.searchParams.set("audience","api.atlassian.com"),U.searchParams.set("prompt","consent"),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(jW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(jW,w);return await i(U)}}class Q5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/authorize`,this.tokenEndpoint=`https://${z}/oauth/token`,this.tokenRevocationEndpoint=`https://${z}/oauth/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U);else W=this.client.createAuthorizationURL(this.authorizationEndpoint,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}class Y5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=e0(z,"/application/o/authorize/"),this.tokenEndpoint=e0(z,"/application/o/token/"),this.tokenRevocationEndpoint=e0(z,"/application/o/revoke/"),this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var TG="https://bitbucket.org/site/oauth2/authorize",FW="https://bitbucket.org/site/oauth2/access_token";class J5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){return this.client.createAuthorizationURL(TG,z,[])}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(FW,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(FW,z,[])}}var gG="https://account.box.com/api/oauth2/authorize",EW="https://api.box.com/oauth2/token",fG="https://api.box.com/oauth2/revoke";class B5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(gG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(EW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(EW,w);return await i(U)}async revokeToken(z){let w=new URLSearchParams;w.set("token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(fG,w);await w6(U)}}var dG="https://www.coinbase.com/oauth/authorize",IW="https://www.coinbase.com/oauth/token",hG="https://api.coinbase.com/oauth/revoke";class M5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(dG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(IW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(IW,w);return await i(U)}async revokeToken(z){let w=new URLSearchParams;w.set("token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(hG,w);await w6(U)}}var xW="https://discord.com/oauth2/authorize",VW="https://discord.com/api/oauth2/token",cG="https://discord.com/api/oauth2/token/revoke";class q5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(xW,z,w0.S256,w,U);else W=this.client.createAuthorizationURL(xW,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(VW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(VW,z,[])}async revokeToken(z){await this.client.revokeToken(cG,z)}}var iG="https://dribbble.com/oauth/authorize",yG="https://dribbble.com/oauth/token";class L5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(iG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(yG,w);return await i(U)}}var vG="https://www.dropbox.com/oauth2/authorize",kW="https://api.dropboxapi.com/oauth2/token",nG="https://api.dropboxapi.com/2/auth/token/revoke";class G5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(vG,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(kW,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(kW,z,[])}async revokeToken(z){await this.client.revokeToken(nG,z)}}var uG="https://www.facebook.com/v16.0/dialog/oauth",mG="https://graph.facebook.com/v16.0/oauth/access_token";class N5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(uG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(mG,w);return await i(U)}}var tG="https://www.figma.com/oauth",oG="https://api.figma.com/v1/oauth/token",pG="https://api.figma.com/v1/oauth/refresh";class H5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(tG,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(oG,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(pG,z,[])}}var lG="https://github.com/login/oauth/authorize",TW="https://github.com/login/oauth/access_token";class _5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(lG);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));if(this.redirectURI!==null)U.searchParams.set("redirect_uri",this.redirectURI);return U}async validateAuthorizationCode(z){let w=new URLSearchParams;if(w.set("grant_type","authorization_code"),w.set("code",z),this.redirectURI!==null)w.set("redirect_uri",this.redirectURI);let U=T(TW,w),W=g1(this.clientId,this.clientSecret);return U.headers.set("Authorization",`Basic ${W}`),await gW(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z);let U=T(TW,w),W=g1(this.clientId,this.clientSecret);return U.headers.set("Authorization",`Basic ${W}`),await gW(U)}}async function gW(z){let w;try{w=await fetch(z)}catch(X){throw new C6(X)}if(w.status!==200){if(w.body!==null)await w.body.cancel();throw new z6(w.status)}let U;try{U=await w.json()}catch{throw new z6(w.status)}if(typeof U!=="object"||U===null)throw new K1(w.status,U);if("error"in U&&typeof U.error==="string"){let X;try{X=U5(U)}catch{throw new K1(w.status,U)}throw X}return new R4(U)}class S5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=e0(z,"/oauth/authorize"),this.tokenEndpoint=e0(z,"/oauth/token"),this.tokenRevocationEndpoint=e0(z,"/oauth/revoke"),this.client=new y(w,U,W)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(this.authorizationEndpoint,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var sG="https://accounts.google.com/o/oauth2/v2/auth",fW="https://oauth2.googleapis.com/token",rG="https://oauth2.googleapis.com/revoke";class D5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(sG,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(fW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(fW,z,[])}async revokeToken(z){await this.client.revokeToken(rG,z)}}var aG="https://appcenter.intuit.com/connect/oauth2",dW="https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer",eG="https://developer.API.intuit.com/v2/oauth2/tokens/revoke";class P5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(aG,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(dW,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(dW,z,[])}async revokeToken(z){await this.client.revokeToken(eG,z)}}var zN="https://kauth.kakao.com/oauth/authorize",hW="https://kauth.kakao.com/oauth/token";class O5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(zN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(hW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(hW,w);return await i(U)}}class R5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=z+"/protocol/openid-connect/auth",this.tokenEndpoint=z+"/protocol/openid-connect/token",this.tokenRevocationEndpoint=z+"/protocol/openid-connect/revoke",this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var wN="https://lichess.org/oauth",UN="https://lichess.org/api/token";class C5{client;constructor(z,w){this.client=new y(z,null,w)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(wN,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(UN,z,w)}}var WN="https://access.line.me/oauth2/v2.1/authorize",cW="https://api.line.me/oauth2/v2.1/token";class b5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w,U){let W=new URL(WN);if(W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),W.searchParams.set("state",z),U.length>0)W.searchParams.set("scope",U.join(" "));W.searchParams.set("redirect_uri",this.redirectURI);let X=y2(w);return W.searchParams.set("code_challenge_method","S256"),W.searchParams.set("code_challenge",X),W}async validateAuthorizationCode(z,w){let U=new URLSearchParams;U.set("grant_type","authorization_code"),U.set("code",z),U.set("code_verifier",w),U.set("redirect_uri",this.redirectURI),U.set("client_id",this.clientId),U.set("client_secret",this.clientSecret);let W=T(cW,U);return await i(W)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(cW,w);return await i(U)}}var XN="https://linear.app/oauth/authorize",ZN="https://api.linear.app/oauth/token";class K5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(XN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(ZN,w);return await i(U)}}var $N="https://www.linkedin.com/oauth/v2/authorization",iW="https://www.linkedin.com/oauth/v2/accessToken";class j5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL($N);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(iW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(iW,w);return await i(U)}}class F5{authorizationEndpoint;tokenEndpoint;clientId;clientSecret;redirectURI;constructor(z,w,U,W){this.authorizationEndpoint=e0("https://login.microsoftonline.com",z,"/oauth2/v2.0/authorize"),this.tokenEndpoint=e0("https://login.microsoftonline.com",z,"/oauth2/v2.0/token"),this.clientId=w,this.clientSecret=U,this.redirectURI=W}createAuthorizationURL(z,w,U){let W=new URL(this.authorizationEndpoint);W.searchParams.set("response_type","code"),W.searchParams.set("client_id",this.clientId),W.searchParams.set("redirect_uri",this.redirectURI),W.searchParams.set("state",z);let X=y2(w);if(W.searchParams.set("code_challenge_method","S256"),W.searchParams.set("code_challenge",X),U.length>0)W.searchParams.set("scope",U.join(" "));return W}async validateAuthorizationCode(z,w){let U=new URLSearchParams;if(U.set("grant_type","authorization_code"),U.set("code",z),U.set("redirect_uri",this.redirectURI),U.set("code_verifier",w),this.clientSecret===null)U.set("client_id",this.clientId);let W=T(this.tokenEndpoint,U);if(this.clientSecret!==null){let Z=g1(this.clientId,this.clientSecret);W.headers.set("Authorization",`Basic ${Z}`)}else W.headers.set("Origin","arctic");return await i(W)}async refreshAccessToken(z,w){let U=new URLSearchParams;if(U.set("grant_type","refresh_token"),U.set("refresh_token",z),this.clientSecret===null)U.set("client_id",this.clientId);if(w.length>0)U.set("scope",w.join(" "));let W=T(this.tokenEndpoint,U);if(this.clientSecret!==null){let Z=g1(this.clientId,this.clientSecret);W.headers.set("Authorization",`Basic ${Z}`)}else W.headers.set("Origin","arctic");return await i(W)}}var AN="https://myanimelist.net/v1/oauth2/authorize",yW="https://myanimelist.net/v1/oauth2/token";class E5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURLWithPKCE(AN,z,w0.Plain,w,[])}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(yW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(yW,z,[])}}var QN="https://api.notion.com/v1/oauth/authorize",YN="https://api.notion.com/v1/oauth/token";class I5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z){let w=this.client.createAuthorizationURL(QN,z,[]);return w.searchParams.set("owner","user"),w}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(YN,z,null)}}class x5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W,X){let Z=`https://${z}/oauth2`;if(w!==null)Z=e0(Z,w);this.authorizationEndpoint=e0(Z,"/v1/authorize"),this.tokenEndpoint=e0(Z,"/v1/token"),this.tokenRevocationEndpoint=e0(Z,"/v1/revoke"),this.client=new y(U,W,X)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z,w){return await this.client.refreshAccessToken(this.tokenEndpoint,z,w)}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var JN="https://osu.ppy.sh/oauth/authorize",vW="https://osu.ppy.sh/oauth/token";class V5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(JN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));if(this.redirectURI!==null)U.searchParams.set("redirect_uri",this.redirectURI);return U}async validateAuthorizationCode(z){let w=new URLSearchParams;if(w.set("grant_type","authorization_code"),w.set("code",z),this.redirectURI!==null)w.set("redirect_uri",this.redirectURI);w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(vW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(vW,w);return await i(U)}}var BN="https://www.patreon.com/oauth2/authorize",nW="https://www.patreon.com/api/oauth2/token";class k5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(BN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(nW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(nW,w);return await i(U)}}var MN="https://www.reddit.com/api/v1/authorize",uW="https://www.reddit.com/api/v1/access_token";class T5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(MN,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(uW,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(uW,z,[])}}var qN="https://apis.roblox.com/oauth/v1/authorize",mW="https://apis.roblox.com/oauth/v1/token",LN="https://apis.roblox.com/oauth/v1/token/revoke";class g5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(qN,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(mW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(mW,z,[])}async revokeToken(z){await this.client.revokeToken(LN,z)}}class f5{authorizationEndpoint;tokenEndpoint;tokenRevocationEndpoint;client;constructor(z,w,U,W){this.authorizationEndpoint=`https://${z}/services/oauth2/authorize`,this.tokenEndpoint=`https://${z}/services/oauth2/token`,this.tokenRevocationEndpoint=`https://${z}/services/oauth2/revoke`,this.client=new y(w,U,W)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(this.authorizationEndpoint,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(this.tokenEndpoint,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(this.tokenEndpoint,z,[])}async revokeToken(z){await this.client.revokeToken(this.tokenRevocationEndpoint,z)}}var GN="https://shikimori.one/oauth/authorize",tW="https://shikimori.one/oauth/token";class d5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z){let w=new URL(GN);return w.searchParams.set("response_type","code"),w.searchParams.set("client_id",this.clientId),w.searchParams.set("state",z),w.searchParams.set("redirect_uri",this.redirectURI),w}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(tW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(tW,w);return await i(U)}}var NN="https://slack.com/openid/connect/authorize",HN="https://slack.com/api/openid.connect.token";class h5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(NN,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(HN,z,null)}}var oW="https://accounts.spotify.com/authorize",pW="https://accounts.spotify.com/api/token";class c5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){let W;if(w!==null)W=this.client.createAuthorizationURLWithPKCE(oW,z,w0.S256,w,U);else W=this.client.createAuthorizationURL(oW,z,U);return W}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(pW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(pW,z,[])}}var _N="https://www.strava.com/oauth/authorize",lW="https://www.strava.com/api/v3/oauth/token";class i5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(_N);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(","));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(lW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(lW,w);return await i(U)}}var SN="https://v5api.tiltify.com/oauth/authorizeze",sW="https://v5api.tiltify.com/oauth/token";class y5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(SN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(sW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(sW,w);return await i(U)}}var DN="https://www.tumblr.com/oauth2/authorize",rW="https://api.tumblr.com/v2/oauth2/token";class v5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(DN,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(rW,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(rW,z,[])}}var PN="https://id.twitch.tv/oauth2/authorize",aW="https://id.twitch.tv/oauth2/token";class n5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(PN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(aW,w);return await i(U)}async refreshAccessToken(z){let w=new URLSearchParams;w.set("grant_type","refresh_token"),w.set("refresh_token",z),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(aW,w);return await i(U)}}var ON="https://twitter.com/i/oauth2/authorize",eW="https://api.twitter.com/2/oauth2/token",RN="https://api.twitter.com/2/oauth2/revoke";class u5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(ON,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(eW,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(eW,z,[])}async revokeToken(z){await this.client.revokeToken(RN,z)}}var CN="https://oauth.vk.com/authorize",bN="https://oauth.vk.com/access_token";class m5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(CN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(bN,w);return await i(U)}}var KN="https://api.workos.com/sso/authorize",jN="https://api.workos.com/sso/token";class t5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(KN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),U.searchParams.set("redirect_uri",this.redirectURI),w!==null){let W=y2(w);U.searchParams.set("code_challenge_method","S256"),U.searchParams.set("code_challenge",W)}return U}async validateAuthorizationCode(z,w){let U=new URLSearchParams;if(U.set("grant_type","authorization_code"),U.set("code",z),U.set("redirect_uri",this.redirectURI),U.set("client_id",this.clientId),this.clientSecret!==null)U.set("client_secret",this.clientSecret);if(w!==null)U.set("code_verifier",w);let W=T(jN,U);return await i(W)}}var FN="https://api.login.yahoo.com/oauth2/request_auth",zX="https://api.login.yahoo.com/oauth2/get_token";class o5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(FN,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(zX,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(zX,z,[])}}var EN="https://oauth.yandex.com/authorize",wX="https://oauth.yandex.com/token";class p5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w){return this.client.createAuthorizationURL(EN,z,w)}async validateAuthorizationCode(z){return await this.client.validateAuthorizationCode(wX,z,null)}async refreshAccessToken(z){return await this.client.refreshAccessToken(wX,z,[])}}var IN="https://zoom.us/oauth/authorize",UX="https://zoom.us/oauth/token",xN="https://zoom.us/oauth/revoke";class l5{client;constructor(z,w,U){this.client=new y(z,w,U)}createAuthorizationURL(z,w,U){return this.client.createAuthorizationURLWithPKCE(IN,z,w0.S256,w,U)}async validateAuthorizationCode(z,w){return await this.client.validateAuthorizationCode(UX,z,w)}async refreshAccessToken(z){return await this.client.refreshAccessToken(UX,z,[])}async revokeToken(z){await this.client.revokeToken(xN,z)}}var VN="https://api.intra.42.fr/oauth/authorize",kN="https://api.intra.42.fr/oauth/token";class s5{clientId;clientSecret;redirectURI;constructor(z,w,U){this.clientId=z,this.clientSecret=w,this.redirectURI=U}createAuthorizationURL(z,w){let U=new URL(VN);if(U.searchParams.set("response_type","code"),U.searchParams.set("client_id",this.clientId),U.searchParams.set("state",z),w.length>0)U.searchParams.set("scope",w.join(" "));return U.searchParams.set("redirect_uri",this.redirectURI),U}async validateAuthorizationCode(z){let w=new URLSearchParams;w.set("grant_type","authorization_code"),w.set("code",z),w.set("redirect_uri",this.redirectURI),w.set("client_id",this.clientId),w.set("client_secret",this.clientSecret);let U=T(kN,w);return await i(U)}}function Jw(z){try{return RW(z)}catch(w){throw new Error("Invalid ID token",{cause:w})}}var U8={AmazonCognito:W5,AniList:X5,Apple:$5,Atlassian:A5,Auth0:Q5,Authentik:Y5,Bitbucket:J5,Box:B5,Coinbase:M5,Discord:q5,Dribbble:L5,Dropbox:G5,Facebook:N5,Figma:H5,Intuit:P5,GitHub:_5,GitLab:S5,Google:D5,Kakao:O5,KeyCloak:R5,Lichess:C5,Line:b5,Linear:K5,LinkedIn:j5,MicrosoftEntraId:F5,MyAnimeList:E5,Notion:I5,Okta:x5,Osu:V5,Patreon:k5,Reddit:T5,Roblox:g5,Salesforce:f5,Shikimori:d5,Slack:h5,Spotify:c5,Strava:i5,Tiltify:y5,Tumblr:v5,Twitch:n5,Twitter:u5,VK:m5,WorkOS:t5,Yahoo:o5,Yandex:p5,Zoom:l5,FortyTwo:s5},WX=Object.keys(U8).reduce((z,w)=>{return z[w.toLowerCase()]=w,z},{}),W8={AmazonCognito:"https://{region}.amazonaws.com/{userPoolId}/.well-known/openid-configuration",AniList:"https://graphql.anilist.co",Apple:"https://appleid.apple.com/auth/token",Atlassian:"https://api.atlassian.com/me",Auth0:"https://{your_domain}/userinfo",Authentik:"https://{your_domain}/api/v1/user/me",Bitbucket:"https://api.bitbucket.org/2.0/user",Box:"https://api.box.com/2.0/users/me",Coinbase:"https://api.coinbase.com/v2/user",Discord:"https://discord.com/api/users/@me",Dribbble:"https://api.dribbble.com/v2/user",Dropbox:"https://api.dropboxapi.com/2/users/get_current_account",Facebook:"https://graph.facebook.com/me",Figma:"https://api.figma.com/v1/me",Intuit:"https://accounts.platform.intuit.com/v1/openid_connect/userinfo",GitHub:"https://api.github.com/user",GitLab:"https://gitlab.com/api/v4/user",Google:"https://www.googleapis.com/userinfo/v2/me",Kakao:"https://kapi.kakao.com/v2/user/me",KeyCloak:"https://{your_domain}/auth/realms/{realm}/protocol/openid-connect/userinfo",Lichess:"https://lichess.org/api/account",Line:"https://api.line.me/v2/profile",Linear:"https://api.linear.app/v1/me",LinkedIn:"https://api.linkedin.com/v2/me",MicrosoftEntraId:"https://graph.microsoft.com/v1.0/me",MyAnimeList:"https://myanimelist.net/v1/users/@me",Notion:"https://api.notion.com/v1/users/me",Okta:"https://{yourOktaDomain}/oauth2/v1/userinfo",Osu:"https://osu.ppy.sh/api/v2/me",Patreon:"https://www.patreon.com/api/oauth2/v2/identity",Reddit:"https://oauth.reddit.com/api/v1/me",Roblox:"https://apis.roblox.com/users/v1/users/me",Salesforce:"https://login.salesforce.com/services/oauth2/userinfo",Shikimori:"https://shikimori.one/api/users/whoami",Slack:"https://slack.com/api/users.identity",Spotify:"https://api.spotify.com/v1/me",Strava:"https://www.strava.com/api/v3/athlete",Tiltify:"https://tiltify.com/api/v3/user",Tumblr:"https://api.tumblr.com/v2/user/info",Twitch:"https://api.twitch.tv/helix/users",Twitter:"https://api.twitter.com/2/users/me",VK:"https://api.vk.com/method/users.get",WorkOS:"https://api.workos.com/sso/profile",Yahoo:"https://api.login.yahoo.com/openid/v1/userinfo",Yandex:"https://login.yandex.ru/info",Zoom:"https://api.zoom.us/v2/users/me",FortyTwo:"https://api.intra.42.fr/v2/me"},XX={AmazonCognito:"https://cognito-idp.{region}.amazonaws.com/{userPoolId}",AniList:"https://anilist.co/api/v2/oauth/authorize",Apple:"https://appleid.apple.com",Atlassian:"https://auth.atlassian.com",Auth0:"https://{your_domain}.auth0.com",Authentik:"https://{your_domain}",Bitbucket:"https://bitbucket.org/site/oauth2/authorize",Box:"https://account.box.com/api/oauth2/authorize",Coinbase:"https://www.coinbase.com/oauth/authorize",Discord:"https://discord.com/api/oauth2/authorize",Dribbble:"https://dribbble.com/oauth/authorize",Dropbox:"https://www.dropbox.com/oauth2/authorize",Facebook:"https://www.facebook.com/v12.0/dialog/oauth",Figma:"https://www.figma.com/oauth",Intuit:"https://appcenter.intuit.com/connect/oauth2",GitHub:"https://github.com/login/oauth/authorize",GitLab:"https://gitlab.com/oauth/authorize",Google:"https://accounts.google.com",Kakao:"https://kauth.kakao.com/oauth/authorize",KeyCloak:"https://{your_domain}/auth",Lichess:"https://lichess.org/oauth/authorize",Line:"https://access.line.me/oauth2/v2.1/authorize",Linear:"https://linear.app/oauth/authorize",LinkedIn:"https://www.linkedin.com/oauth/v2/authorization",MicrosoftEntraId:"https://login.microsoftonline.com/{tenant}/v2.0",MyAnimeList:"https://myanimelist.net/v1/oauth2/authorize",Notion:"https://api.notion.com/v1/oauth/authorize",Okta:"https://{yourOktaDomain}/oauth2/default/v1/authorize",Osu:"https://osu.ppy.sh/oauth/authorize",Patreon:"https://www.patreon.com/oauth2/authorize",Reddit:"https://www.reddit.com/api/v1/authorize",Roblox:"https://apis.roblox.com/oauth/v1/authorize",Salesforce:"https://login.salesforce.com/services/oauth2/authorize",Shikimori:"https://shikimori.one/oauth/authorize",Slack:"https://slack.com/oauth/v2/authorize",Spotify:"https://accounts.spotify.com/authorize",Strava:"https://www.strava.com/oauth/authorize",Tiltify:"https://tiltify.com/oauth/authorize",Tumblr:"https://www.tumblr.com/oauth/authorize",Twitch:"https://id.twitch.tv/oauth2/authorize",Twitter:"https://api.twitter.com/oauth/authorize",VK:"https://oauth.vk.com/authorize",WorkOS:"https://api.workos.com/sso/authorize",Yahoo:"https://api.login.yahoo.com/oauth2/request_auth",Yandex:"https://oauth.yandex.com/authorize",Zoom:"https://zoom.us/oauth/authorize",FortyTwo:"https://api.intra.42.fr/oauth/authorize"},ZX=Object.keys(W8).reduce((z,w)=>{return z[w.toLowerCase()]=w,z},{}),Jf=Object.keys(XX).reduce((z,w)=>{return z[w.toLowerCase()]=w,z},{});var $X=({logoutRoute:z="logout",onLogout:w})=>{return new b0().post(`/${z}`,async({error:U,cookie:{user_session_id:W,auth_provider:X}})=>{if(X.value===void 0)return U(401,"No auth provider found");try{return w?.(),W.remove(),X.remove(),new Response("Succesfuly Logged Out",{status:204})}catch(Z){if(Z instanceof Error)console.error("Failed to refresh token:",Z.message);return U(500)}})};var AX=(z)=>{return"refreshAccessToken"in z&&typeof z.refreshAccessToken==="function"};var b6=(z)=>{return Object.keys(U8).map((w)=>w.toLowerCase()).includes(z.toLowerCase())},QX=(z)=>{return Object.keys(W8).includes(z)};var YX=(z)=>{return!0};var JX=({clientProviders:z,revokeRoute:w="revoke",onRevoke:U})=>{return new b0().post(`/${w}/access-token`,async({error:W,cookie:{user_refresh_token:X,auth_provider:Z}})=>{if(X.value===void 0)return W(401,"No refresh token found");if(Z.value===void 0)return W(401,"No auth provider found");if(!b6(Z.value))return W(400,"Invalid provider");let $=Z.value.toLowerCase(),{providerInstance:A}=z[$];U?.()})};var C4=()=>{return new b0({name:"sessionStore"}).state({session:{}})};var BX=({statusRoute:z="auth-status",onStatus:w})=>{return new b0().use(C4()).get(`/${z}`,async({error:U,cookie:{user_session_id:W,auth_provider:X},store:{session:Z}})=>{try{if(W.value===void 0)return new Response(JSON.stringify({user:null}),{headers:{"Content-Type":"application/json"}});if(X.value===void 0)return new Response(JSON.stringify({user:null}),{headers:{"Content-Type":"application/json"}});let $=Z[W.value];if($===void 0)return new Response(JSON.stringify({user:null}),{headers:{"Content-Type":"application/json"}});let A=$.user;return w?.(),new Response(JSON.stringify({user:A}),{headers:{"Content-Type":"application/json"}})}catch($){if($ instanceof Error)console.error("Failed to get auth status: ",$.message);return U(500)}})};var MX=({clientProviders:z,refreshRoute:w="refresh",onRefresh:U})=>{return new b0().post(`/${w}`,async({error:W,cookie:{user_refresh_token:X,auth_provider:Z}})=>{if(X.value===void 0)return W(401,"No refresh token found");if(Z.value===void 0)return W(401,"No auth provider found");let $=Z.value.toLowerCase(),{providerInstance:A}=z[$];if(!AX(A))return W(401,"Provider is not refreshable");try{let Q=await A.refreshAccessToken(X.value);return U?.(),new Response("Token refreshed",{status:204})}catch(Q){if(Q instanceof Error)console.error("Failed to refresh token:",Q.message);return W(500)}})};var qX=({clientProviders:z,authorizeRoute:w="authorize",onAuthorize:U})=>{return new b0().get(`/${w}/:provider`,({error:W,redirect:X,cookie:{state:Z,code_verifier:$,auth_provider:A,redirect_url:Q},params:{provider:Y},headers:J})=>{if(Y===void 0)return W(400,"Provider is required");if(!b6(Y))return W(400,"Invalid provider");try{let G=Y.toLowerCase(),{providerInstance:S,scopes:N,searchParams:O}=z[G],M=J.referer||"/";Q.set({value:M,secure:!0,sameSite:"lax",path:"/",httpOnly:!0,maxAge:600}),A.set({value:Y,secure:!0,sameSite:"lax",path:"/",httpOnly:!0,maxAge:600});let C=Aw();Z.set({value:C,secure:!0,sameSite:"lax",path:"/",httpOnly:!0,maxAge:600});let g,L0;if(S.createAuthorizationURL.toString().includes("codeVerifier"))L0=$w(),$.set({value:L0,secure:!0,sameSite:"lax",path:"/",httpOnly:!0,maxAge:600}),g=S.createAuthorizationURL(C,L0,N);else g=S.createAuthorizationURL(C,N);return O.forEach(([a,$0])=>{g.searchParams.set(a,$0)}),U?.(),X(g.toString())}catch(G){if(G instanceof Error)console.error("Failed to validate authorization code:",G.message);return W(500)}})};var LX=({clientProviders:z,callbackRoute:w="authorize/callback",onCallback:U,getUser:W,createUser:X})=>{return new b0().use(C4()).get(`/${w}`,async({error:Z,redirect:$,store:{session:A},cookie:{state:Q,code_verifier:Y,redirect_url:J,user_session_id:G,auth_provider:S},query:{code:N,state:O}})=>{if(!N||!Q.value)return Z(400,"Invalid callback request");if(O!==Q.value)return Z(400,"Invalid state mismatch");if(S.value===void 0)return Z(401,"No auth provider found");if(!b6(S.value))return Z(400,"Invalid provider");let M=S.value.toLowerCase(),{providerInstance:C}=z[M];try{let g;if(Q.remove(),C.validateAuthorizationCode.toString().includes("codeVerifier")){if(!Y.value)return Z(400,"Code verifier not found and is required");g=await C.validateAuthorizationCode(N,Y.value),Y.remove()}else g=await C.validateAuthorizationCode(N);let L0=Jw(g.idToken()),a=S.value,$0=await W?.({decodedIdToken:L0,authProvider:a});if($0===null||$0===void 0)$0=await X?.({decodedIdToken:L0,authProvider:a});let K0=crypto.randomUUID();if(!YX($0))return Z(500,"Invalid user schema");A[K0]={user:$0,expiresAt:Date.now()+86400000},G.set({value:K0,secure:!0,httpOnly:!0,sameSite:"lax"}),U?.();let f=J.value??"/";return $(f)}catch(g){if(g instanceof Error)console.error("Failed to validate authorization code:",g.message);return Z(500)}})};var GX=()=>{return new b0().use(C4()).derive(({store:{session:z},cookie:{user_session_id:w},error:U})=>{return{protectRoute:async(W,X)=>{if(w.value===void 0)return X?.()??U(401,"No session ID found");if(z[w.value]===void 0)return X?.()??U(401,"No session found");return W()}}}).as("plugin")};var rf=({config:z,authorizeRoute:w,callbackRoute:U,logoutRoute:W,statusRoute:X,refreshRoute:Z,revokeRoute:$,onAuthorize:A,onCallback:Q,onStatus:Y,onRefresh:J,onLogout:G,onRevoke:S,createUser:N,getUser:O})=>{let M=Object.entries(z).reduce((C,[g,L0={}])=>{let a=g.toLowerCase(),$0=WX[a],K0=ZX[a];if(!$0||!b6($0))return console.error(`Provider ${g} is not supported`),C;let f=U8[$0],V;if(QX(K0))V=W8[K0];let{credentials:k=[],scopes:j=[],searchParams:e=[]}=L0,Y0=new f(...k);return C[a]={providerInstance:Y0,scopes:j,searchParams:e,userInfoURL:V},C},{});return new b0().error("OAUTH2_REQUEST_ERROR",z8).error("ARCTIC_FETCH_ERROR",C6).use($X({logoutRoute:W,onLogout:G})).use(JX({clientProviders:M,revokeRoute:$,onRevoke:S})).use(BX({statusRoute:X,onStatus:Y})).use(MX({clientProviders:M,refreshRoute:Z,onRefresh:J})).use(qX({clientProviders:M,authorizeRoute:w,onAuthorize:A})).use(LX({clientProviders:M,callbackRoute:U,onCallback:Q,getUser:O,createUser:N})).use(GX()).as("plugin")};export{rf as absoluteAuth};
325
+ `;for(let Q=0;Q<w.mapResponse.length;Q++){let J=w.mapResponse[Q],N=Y.resolveChild(J.fn.name);U+=`if(mr===undefined){mr=${O4(J)?"await ":""}onMapResponse[${Q}](context)
326
+ if(mr!==undefined)error=context.response=mr}`,N()}}return Y.resolve(),U+=`
327
+ return mapResponse(${$}error,set${W.mapResponseContext})}`,Function("inject",U)({app:z,mapResponse:z["~adapter"].handler.mapResponse,ERROR_CODE:m5,ElysiaCustomStatusResponse:K1,ELYSIA_TRACE:A?Jw:void 0,ELYSIA_REQUEST_ID:A?l5:void 0,...W.inject})},Uw=(z,w)=>{for(let[U,W]of Object.entries(z.schema.properties))w[U]??=W.default},TW=(z)=>{let{mapResponse:w,mapEarlyResponse:U}=z["~adapter"].handler;return async(W)=>{let X=W.url,A=X.indexOf("/",11),Z=X.indexOf("?",A+1),$=Z===-1?X.substring(A):X.substring(A,Z),Y={cookie:{},status:200,headers:{}},Q=Object.assign({},z.singleton.decorator,{set:Y,store:z.singleton.store,request:W,path:$,qi:Z,error:yW,redirect:cW});try{if(z.event.request)for(let x=0;x<z.event.request.length;x++){let T=z.event.request[x].fn,F=T(Q);if(F instanceof Promise)F=await F;if(F=U(F,Y),F)return Q.response=F}let J=z.router.dynamic.find(W.method,$)??z.router.dynamic.find("ALL",$);if(!J)throw new Qw;let{handle:N,hooks:S,validator:G,content:O,route:B}=J.store,C;if(W.method!=="GET"&&W.method!=="HEAD")if(O)switch(O){case"application/json":C=await W.json();break;case"text/plain":C=await W.text();break;case"application/x-www-form-urlencoded":C=v5(await W.text());break;case"application/octet-stream":C=await W.arrayBuffer();break;case"multipart/form-data":C={};let x=await W.formData();for(let T of x.keys()){if(C[T])continue;let F=x.getAll(T);if(F.length===1)C[T]=F[0];else C[T]=F}break}else{let x=W.headers.get("content-type");if(x){let T=x.indexOf(";");if(T!==-1)x=x.slice(0,T);if(Q.contentType=x,S.parse)for(let F=0;F<S.parse.length;F++){let W0=S.parse[F].fn,G0=W0(Q,x);if(G0 instanceof Promise)G0=await G0;if(G0){C=G0;break}}if(delete Q.contentType,C===void 0)switch(x){case"application/json":C=await W.json();break;case"text/plain":C=await W.text();break;case"application/x-www-form-urlencoded":C=v5(await W.text());break;case"application/octet-stream":C=await W.arrayBuffer();break;case"multipart/form-data":C={};let F=await W.formData();for(let W0 of F.keys()){if(C[W0])continue;let G0=F.getAll(W0);if(G0.length===1)C[W0]=G0[0];else C[W0]=G0}break}}}Q.route=B,Q.body=C,Q.params=J?.params||void 0,Q.query=Z===-1?{}:v5(X.substring(Z+1)),Q.headers={};for(let[x,T]of W.headers.entries())Q.headers[x]=T;let i=Object.assign({},z.config?.cookie,G?.cookie?.config),N0=W.headers.get("cookie");Q.cookie=await eW(Q.set,N0,i?{secrets:i.secrets!==void 0?typeof i.secrets==="string"?i.secrets:i.secrets.join(","):void 0,sign:i.sign===!0?!0:i.sign!==void 0?typeof i.sign==="string"?i.sign:i.sign.join(","):void 0}:void 0);let U0=G?.createHeaders?.();if(U0)Uw(U0,Q.headers);let D0=G?.createParams?.();if(D0)Uw(D0,Q.params);let K0=G?.createQuery?.();if(K0)Uw(K0,Q.query);if(S.transform)for(let x=0;x<S.transform.length;x++){let T=S.transform[x],F=T.fn(Q);if(T.subType==="derive")if(F instanceof Promise)Object.assign(Q,await F);else Object.assign(Q,F);else if(F instanceof Promise)await F}if(G){if(U0){let x=structuredClone(Q.headers);for(let[T,F]of W.headers)x[T]=F;if(G.headers.Check(x)===!1)throw new r("header",G.headers,x)}else if(G.headers?.Decode)Q.headers=G.headers.Decode(Q.headers);if(D0?.Check(Q.params)===!1)throw new r("params",G.params,Q.params);else if(G.params?.Decode)Q.params=G.params.Decode(Q.params);if(K0?.Check(Q.query)===!1)throw new r("query",G.query,Q.query);else if(G.query?.Decode)Q.query=G.query.Decode(Q.query);if(G.createCookie?.()){let x={};for(let[T,F]of Object.entries(Q.cookie))x[T]=F.value;if(G.cookie.Check(x)===!1)throw new r("cookie",G.cookie,x);else if(G.cookie?.Decode)x=G.cookie.Decode(x)}if(G.createBody?.()?.Check(C)===!1)throw new r("body",G.body,C);else if(G.body?.Decode)Q.body=G.body.Decode(C)}if(S.beforeHandle)for(let x=0;x<S.beforeHandle.length;x++){let T=S.beforeHandle[x],F=T.fn(Q);if(T.subType==="resolve"){if(F instanceof K1){let W0=U(F,Q.set);if(W0)return Q.response=W0}if(F instanceof Promise)Object.assign(Q,await F);else Object.assign(Q,F);continue}else if(F instanceof Promise)F=await F;if(F!==void 0){if(Q.response=F,S.afterHandle)for(let G0=0;G0<S.afterHandle.length;G0++){let H0=S.afterHandle[G0].fn(Q);if(H0 instanceof Promise)H0=await H0;if(H0)F=H0}let W0=U(F,Q.set);if(W0)return Q.response=W0}}let g=typeof N==="function"?N(Q):N;if(g instanceof Promise)g=await g;if(S.afterHandle)if(!S.afterHandle.length){let x=g instanceof K1?g.code:Y.status?typeof Y.status==="string"?p5[Y.status]:Y.status:200,T=G?.createResponse?.()?.[x];if(T?.Check(g)===!1)throw new r("response",T,g);else if(T?.Decode)g=T.Decode(g)}else{Q.response=g;for(let x=0;x<S.afterHandle.length;x++){let T=S.afterHandle[x].fn(Q);if(T instanceof Promise)T=await T;let F=U(T,Q.set);if(F!==void 0){let W0=G?.response?.[F.status];if(W0?.Check(F)===!1)throw new r("response",W0,F);else if(W0?.Decode)g=W0.Decode(g);return Q.response=F}}}if(Q.set.cookie&&i?.sign){let x=!i.secrets?void 0:typeof i.secrets==="string"?i.secrets:i.secrets[0];if(i.sign===!0)for(let[T,F]of Object.entries(Q.set.cookie))Q.set.cookie[T].value=await u5(F.value,"${secret}");else{let T=G?.cookie?.schema?.properties;for(let F of i.sign){if(!(F in T))continue;if(Q.set.cookie[F]?.value)Q.set.cookie[F].value=await u5(Q.set.cookie[F].value,x)}}}return w(Q.response=g,Q.set)}catch(J){let N=J instanceof I5&&J.error?J.error:J;return z.handleError(Q,N)}finally{if(z.event.afterResponse)for(let J of z.event.afterResponse)await J.fn(Q)}}},xG=(z)=>{let{mapResponse:w}=z["~adapter"].handler;return async(U,W)=>{let X=Object.assign(U,{error:W,code:W.code});if(X.set=U.set,z.event.error)for(let A=0;A<z.event.error.length;A++){let Z=z.event.error[A].fn(X);if(Z instanceof Promise)Z=await Z;if(Z!==void 0&&Z!==null)return U.response=w(Z,U.set)}return new Response(typeof W.cause==="string"?W.cause:W.message,{headers:U.set.headers,status:W.status??500})}};class b0{config;server=null;dependencies={};_routes={};_types={Prefix:"",Singleton:{},Definitions:{},Metadata:{}};_ephemeral={};_volatile={};singleton={decorator:{},store:{},derive:{},resolve:{}};get store(){return this.singleton.store}get decorator(){return this.singleton.decorator}definitions={typebox:I.Module({}),type:{},error:{}};extender={macros:[],higherOrderFunctions:[]};validator={global:null,scoped:null,local:null,getCandidate(){return s4(s4(this.global,this.scoped),this.local)}};event={};telemetry={stack:void 0};router={"~http":void 0,get http(){if(!this["~http"])this["~http"]=new j6({lazy:!0});return this["~http"]},"~dynamic":void 0,get dynamic(){if(!this["~dynamic"])this["~dynamic"]=new j6;return this["~dynamic"]},static:{http:{static:{},map:{},all:""},ws:{}},history:[]};routeTree=new Map;get routes(){return this.router.history}getGlobalRoutes(){return this.router.history}inference={body:!1,cookie:!1,headers:!1,query:!1,set:!1,server:!1,request:!1,route:!1};getServer(){return this.server}getParent(){return null}"~parser"={};_promisedModules;get promisedModules(){if(!this._promisedModules)this._promisedModules=new hW;return this._promisedModules}constructor(z={}){if(z.tags)if(!z.detail)z.detail={tags:z.tags};else z.detail.tags=z.tags;if(z.nativeStaticResponse===void 0)z.nativeStaticResponse=!0;if(this.config={},this.applyConfig(z??{}),this["~adapter"]=z.adapter??(typeof Bun!=="undefined"?OG:y5),z?.analytic&&(z?.name||z?.seed!==void 0))this.telemetry.stack=new Error().stack}"~adapter";env(z,w=kW){if(j2(z,{modules:this.definitions.typebox,dynamic:!0,additionalProperties:!0,coerce:!0}).Check(w)===!1){let U=new r("env",z,w);throw new Error(U.all.map((W)=>W.summary).join(`
328
+ `))}return this}wrap(z){return this.extender.higherOrderFunctions.push({checksum:r4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:z.toString()})),fn:z}),this}applyMacro(z){if(this.extender.macros.length){let w=UG({globalHook:this.event,localHook:z}),U={events:{global:this.event,local:z},get onParse(){return w("parse")},get onTransform(){return w("transform")},get onBeforeHandle(){return w("beforeHandle")},get onAfterHandle(){return w("afterHandle")},get mapResponse(){return w("mapResponse")},get onAfterResponse(){return w("afterResponse")},get onError(){return w("error")}};for(let W of this.extender.macros)wG(W.fn(U),z,w)}}applyConfig(z){return this.config={prefix:"",aot:kW.ELYSIA_AOT!=="false",normalize:!0,...z,cookie:{path:"/",...z?.cookie},experimental:z?.experimental??{},seed:z?.seed===void 0?"":z?.seed},this}get models(){let z={};for(let w of Object.keys(this.definitions.type))z[w]=j2(this.definitions.typebox.Import(w));return z.modules=this.definitions.typebox,z}add(z,w,U,W,{allowMeta:X=!1,skipPrefix:A=!1}={allowMeta:!1,skipPrefix:!1}){if(W=zw(XG(W)),w!==""&&w.charCodeAt(0)!==47)w="/"+w;if(this.config.prefix&&!A)w=this.config.prefix+w;if(W?.type)switch(W.type){case"text":W.type="text/plain";break;case"json":W.type="application/json";break;case"formdata":W.type="multipart/form-data";break;case"urlencoded":W.type="application/x-www-form-urlencoded";break;case"arrayBuffer":W.type="application/octet-stream";break;default:break}let Z=this.definitions.type,$=!this.config.aot,Y={...this.validator.getCandidate()},Q={body:W?.body??Y?.body,headers:W?.headers??Y?.headers,params:W?.params??Y?.params,query:W?.query??Y?.query,cookie:W?.cookie??Y?.cookie,response:W?.response??Y?.response},J=()=>Q.cookie?dW({modules:S,validator:Q.cookie,defaultConfig:this.config.cookie,config:Q.cookie?.config??{},dynamic:$,models:Z}):void 0,N=this.config.normalize,S=this.definitions.typebox,G=this.config.precompile===!0||typeof this.config.precompile==="object"&&this.config.precompile.schema===!0?{body:j2(Q.body,{modules:S,dynamic:$,models:Z,normalize:N,additionalCoerce:_W()}),headers:j2(Q.headers,{modules:S,dynamic:$,models:Z,additionalProperties:!this.config.normalize,coerce:!0,additionalCoerce:y6()}),params:j2(Q.params,{modules:S,dynamic:$,models:Z,coerce:!0,additionalCoerce:y6()}),query:j2(Q.query,{modules:S,dynamic:$,models:Z,normalize:N,coerce:!0,additionalCoerce:y6()}),cookie:J(),response:HW(Q.response,{modules:S,dynamic:$,models:Z,normalize:N})}:{createBody(){if(this.body)return this.body;return this.body=j2(Q.body,{modules:S,dynamic:$,models:Z,normalize:N,additionalCoerce:_W()})},createHeaders(){if(this.headers)return this.headers;return this.headers=j2(Q.headers,{modules:S,dynamic:$,models:Z,additionalProperties:!N,coerce:!0,additionalCoerce:y6()})},createParams(){if(this.params)return this.params;return this.params=j2(Q.params,{modules:S,dynamic:$,models:Z,coerce:!0,additionalCoerce:y6()})},createQuery(){if(this.query)return this.query;return this.query=j2(Q.query,{modules:S,dynamic:$,models:Z,coerce:!0,additionalCoerce:y6()})},createCookie(){if(this.cookie)return this.cookie;return this.cookie=J()},createResponse(){if(this.response)return this.response;return this.response=HW(Q.response,{modules:S,dynamic:$,models:Z,normalize:N})}};if(W=z6(W,zw(Y)),W.tags)if(!W.detail)W.detail={tags:W.tags};else W.detail.tags=W.tags;if(w1(this.config.detail))W.detail=F2(Object.assign({},this.config.detail),W.detail);this.applyMacro(W);let O=zw(z6(this.event,W));if(this.config.aot===!1){this.router.dynamic.add(z,w,{validator:G,hooks:O,content:W?.type,handle:U,route:w});let H0=a4(w,{dynamic:!0});if(w!==H0)this.router.dynamic.add(z,H0,{validator:G,hooks:O,content:W?.type,handle:U,route:w});if(this.config.strictPath===!1){let h0=D4(w);this.router.dynamic.add(z,h0,{validator:G,hooks:O,content:W?.type,handle:U,route:w});let U6=a4(h0);if(h0!==U6)this.router.dynamic.add(z,h0,{validator:G,hooks:O,content:W?.type,handle:U,route:w})}this.router.history.push({method:z,path:w,composed:null,handler:U,hooks:O});return}let B=this.config.precompile===!0||typeof this.config.precompile==="object"&&this.config.precompile.compose===!0,C=ez(this.inference),i=this["~adapter"].handler,N0=typeof U!=="function"&&typeof i.createStaticHandler==="function"?i.createStaticHandler(U,O,this.setHeaders):void 0,U0=typeof U!=="function"?i.createNativeStaticHandler?.(U,O,this.setHeaders):void 0;if(this.config.nativeStaticResponse===!0&&U0&&(z==="GET"||z==="ALL"))this.router.static.http.static[w]=U0();let D0=(H0=!1)=>EG({app:this,path:w,method:z,hooks:O,validator:G,handler:typeof U!=="function"&&typeof i.createStaticHandler!=="function"?()=>U:U,allowMeta:X,inference:C,asManifest:H0}),K0;if(this.routeTree.has(z+w))for(let H0=0;H0<this.router.history.length;H0++){let h0=this.router.history[H0];if(h0.path===w&&h0.method===z){K0=H0;break}}else this.routeTree.set(z+w,this.router.history.length);let g=this.router.history,x=K0??this.router.history.length,T=B?D0():(H0)=>{let h0=(g[x].composed=D0())(H0);return D0=void 0,h0};if(B)D0=void 0;let F=z==="$INTERNALWS";if(K0!==void 0)this.router.history[K0]=Object.assign({method:z,path:w,composed:T,handler:U,hooks:O},W.webSocket?{websocket:W.websocket}:{});else this.router.history.push(Object.assign({method:z,path:w,composed:T,handler:U,hooks:O},W.webSocket?{websocket:W.websocket}:{}));let W0=this.router.static.http,G0={handler:B?T:void 0,compile(){return this.handler=D0()}};if(F){if(this.router.http.add("ws",w,G0),!this.config.strictPath)this.router.http.add("ws",D4(w),G0);let H0=a4(w,{dynamic:!0});if(H0!==w)this.router.http.add("ws",H0,G0);return}if(w.indexOf(":")===-1&&w.indexOf("*")===-1){if(!W0.map[w])W0.map[w]={code:""};let H0=N0?"":"c";if(z==="ALL")W0.map[w].all=`default:return ht[${x}].composed(${H0})
329
+ `;else W0.map[w].code=`case '${z}':return ht[${x}].composed(${H0})
330
+ ${W0.map[w].code}`;if(!this.config.strictPath&&this.config.nativeStaticResponse===!0&&U0&&(z==="GET"||z==="ALL"))this.router.static.http.static[D4(w)]=U0()}else{if(this.router.http.add(z,w,G0),!this.config.strictPath){let h0=D4(w);if(this.config.nativeStaticResponse===!0&&N0&&(z==="GET"||z==="ALL"))this.router.static.http.static[h0]=N0();this.router.http.add(z,h0,G0)}let H0=a4(w,{dynamic:!0});if(w!==H0){if(this.router.http.add(z,H0,G0),this.config.nativeStaticResponse===!0&&N0&&(z==="GET"||z==="ALL"))this.router.static.http.static[H0]=N0();this.router.http.add(z,H0,G0)}}}setHeaders;headers(z){if(!z)return this;if(!this.setHeaders)this.setHeaders={};return this.setHeaders=F2(this.setHeaders,z),this}onStart(z){return this.on("start",z),this}onRequest(z){return this.on("request",z),this}onParse(z,w){if(!w){if(typeof z==="string")return this.on("parse",this["~parser"][z]);return this.on("parse",z)}return this.on(z,"parse",w)}parser(z,w){return this["~parser"][z]=w,this}onTransform(z,w){if(!w)return this.on("transform",z);return this.on(z,"transform",w)}resolve(z,w){if(!w)w=z,z={as:"local"};let U={subType:"resolve",fn:w};return this.onBeforeHandle(z,U)}mapResolve(z,w){if(!w)w=z,z={as:"local"};let U={subType:"mapResolve",fn:w};return this.onBeforeHandle(z,U)}onBeforeHandle(z,w){if(!w)return this.on("beforeHandle",z);return this.on(z,"beforeHandle",w)}onAfterHandle(z,w){if(!w)return this.on("afterHandle",z);return this.on(z,"afterHandle",w)}mapResponse(z,w){if(!w)return this.on("mapResponse",z);return this.on(z,"mapResponse",w)}onAfterResponse(z,w){if(!w)return this.on("afterResponse",z);return this.on(z,"afterResponse",w)}trace(z,w){if(!w)w=z,z={as:"local"};if(!Array.isArray(w))w=[w];for(let U of w)this.on(z,"trace",bG(U));return this}error(z,w){switch(typeof z){case"string":return w.prototype[m5]=z,this.definitions.error[z]=w,this;case"function":return this.definitions.error=z(this.definitions.error),this}for(let[U,W]of Object.entries(z))W.prototype[m5]=U,this.definitions.error[U]=W;return this}onError(z,w){if(!w)return this.on("error",z);return this.on(z,"error",w)}onStop(z){return this.on("stop",z),this}on(z,w,U){let W;switch(typeof z){case"string":W=z,U=w;break;case"object":if(W=w,!Array.isArray(w)&&typeof w==="object")U=w;break}if(Array.isArray(U))U=W2(U);else if(typeof U==="function")U=[{fn:U}];else U=[U];let X=U;for(let A of X)if(A.scope=typeof z==="string"?"local":z?.as??"local",W==="resolve"||W==="derive")A.subType=W;if(W!=="trace")rW({[W]:X.map((A)=>A.fn)},this.inference);for(let A of X){let Z=eN(A,"global",{skipIfHasType:!0});switch(W){case"start":this.event.start??=[],this.event.start.push(Z);break;case"request":this.event.request??=[],this.event.request.push(Z);break;case"parse":this.event.parse??=[],this.event.parse.push(Z);break;case"transform":this.event.transform??=[],this.event.transform.push(Z);break;case"derive":this.event.transform??=[],this.event.transform.push(W2(Z,"derive"));break;case"beforeHandle":this.event.beforeHandle??=[],this.event.beforeHandle.push(Z);break;case"resolve":this.event.beforeHandle??=[],this.event.beforeHandle.push(W2(Z,"resolve"));break;case"afterHandle":this.event.afterHandle??=[],this.event.afterHandle.push(Z);break;case"mapResponse":this.event.mapResponse??=[],this.event.mapResponse.push(Z);break;case"afterResponse":this.event.afterResponse??=[],this.event.afterResponse.push(Z);break;case"trace":this.event.trace??=[],this.event.trace.push(Z);break;case"error":this.event.error??=[],this.event.error.push(Z);break;case"stop":this.event.stop??=[],this.event.stop.push(Z);break}}return this}propagate(){return L2(this.event.parse),L2(this.event.transform),L2(this.event.beforeHandle),L2(this.event.afterHandle),L2(this.event.mapResponse),L2(this.event.afterResponse),L2(this.event.trace),L2(this.event.error),this}as(z){let w={plugin:"scoped",scoped:"scoped",global:"global"}[z];if(L2(this.event.parse,w),L2(this.event.transform,w),L2(this.event.beforeHandle,w),L2(this.event.afterHandle,w),L2(this.event.mapResponse,w),L2(this.event.afterResponse,w),L2(this.event.trace,w),L2(this.event.error,w),z==="plugin")this.validator.scoped=s4(this.validator.scoped,this.validator.local),this.validator.local=null;else if(z==="global")this.validator.global=s4(this.validator.global,s4(this.validator.scoped,this.validator.local)),this.validator.scoped=null,this.validator.local=null;return this}group(z,w,U){let W=new b0({...this.config,prefix:""});W.singleton={...this.singleton},W.definitions={...this.definitions},W.getServer=()=>this.getServer(),W.inference=ez(this.inference),W.extender={...this.extender};let X=typeof w==="object",A=(X?U:w)(W);if(this.singleton=F2(this.singleton,W.singleton),this.definitions=F2(this.definitions,W.definitions),A.event.request?.length)this.event.request=[...this.event.request||[],...A.event.request||[]];if(A.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...A.event.mapResponse||[]];return this.model(A.definitions.type),Object.values(W.router.history).forEach(({method:Z,path:$,handler:Y,hooks:Q})=>{if($=(X?"":this.config.prefix)+z+$,X){let J=w,N=Q;this.add(Z,$,Y,z6(J,{...N||{},error:!N.error?A.event.error:Array.isArray(N.error)?[...N.error||{},...A.event.error||{}]:[N.error,...A.event.error||{}]}))}else this.add(Z,$,Y,z6(Q,{error:A.event.error}),{skipPrefix:!0})}),this}guard(z,w){if(!w){if(typeof z==="object"){this.applyMacro(z);let X=z.as??"local";if(this.validator[X]={body:z.body??this.validator[X]?.body,headers:z.headers??this.validator[X]?.headers,params:z.params??this.validator[X]?.params,query:z.query??this.validator[X]?.query,response:z.response??this.validator[X]?.response,cookie:z.cookie??this.validator[X]?.cookie},z.parse)this.on({as:X},"parse",z.parse);if(z.transform)this.on({as:X},"transform",z.transform);if(z.derive)this.on({as:X},"derive",z.derive);if(z.beforeHandle)this.on({as:X},"beforeHandle",z.beforeHandle);if(z.resolve)this.on({as:X},"resolve",z.resolve);if(z.afterHandle)this.on({as:X},"afterHandle",z.afterHandle);if(z.mapResponse)this.on({as:X},"mapResponse",z.mapResponse);if(z.afterResponse)this.on({as:X},"afterResponse",z.afterResponse);if(z.error)this.on({as:X},"error",z.error);if(z.detail)if(this.config.detail)this.config.detail=F2(Object.assign({},this.config.detail),z.detail);else this.config.detail=z.detail;if(z?.tags)if(!this.config.detail)this.config.detail={tags:z.tags};else this.config.detail.tags=z.tags;return this}return this.guard({},z)}let U=new b0({...this.config,prefix:""});U.singleton={...this.singleton},U.definitions={...this.definitions},U.inference=ez(this.inference),U.extender={...this.extender};let W=w(U);if(this.singleton=F2(this.singleton,U.singleton),this.definitions=F2(this.definitions,U.definitions),W.getServer=()=>this.server,W.event.request?.length)this.event.request=[...this.event.request||[],...W.event.request||[]];if(W.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...W.event.mapResponse||[]];return this.model(W.definitions.type),Object.values(U.router.history).forEach(({method:X,path:A,handler:Z,hooks:$})=>{this.add(X,A,Z,z6(z,{...$||{},error:!$.error?W.event.error:Array.isArray($.error)?[...$.error||{},...W.event.error||[]]:[$.error,...W.event.error||[]]}))}),this}use(z,w){if(Array.isArray(z)){let U=this;for(let W of z)U=U.use(W);return U}if(w?.scoped)return this.guard({},(U)=>U.use(z));if(Array.isArray(z)){let U=this;for(let W of z)U=this.use(W);return U}if(z instanceof Promise)return this.promisedModules.add(z.then((U)=>{if(typeof U==="function")return U(this);if(U instanceof b0)return this._use(U).compile();if(U.constructor.name==="Elysia")return this._use(U).compile();if(typeof U.default==="function")return U.default(this);if(U.default instanceof b0)return this._use(U.default);if(U.constructor.name==="Elysia")return this._use(U.default);if(U.constructor.name==="_Elysia")return this._use(U.default);try{return this._use(U.default)}catch(W){throw console.error('Invalid plugin type. Expected Elysia instance, function, or module with "default" as Elysia instance or function that returns Elysia instance.'),W}}).then((U)=>{if(U&&typeof U.compile==="function")U.compile();return U})),this;return this._use(z)}propagatePromiseModules(z){if(z.promisedModules.size<=0)return this;for(let w of z.promisedModules.promises)this.promisedModules.add(w.then((U)=>{if(!U)return;let W=this._use(U);if(W instanceof Promise)return W.then((X)=>{if(X)X.compile();else U.compile()});return U.compile()}));return this}_use(z){if(typeof z==="function"){let X=z(this);if(X instanceof Promise)return this.promisedModules.add(X.then((A)=>{if(A instanceof b0){A.getServer=()=>this.getServer(),A.getGlobalRoutes=()=>this.getGlobalRoutes(),A.model(this.definitions.type),A.error(this.definitions.error);for(let{method:Z,path:$,handler:Y,hooks:Q}of Object.values(A.router.history))this.add(Z,$,Y,z6(Q,{error:A.event.error}));if(A.compile(),A===this)return;return this.propagatePromiseModules(A),A}if(typeof A==="function")return A(this);if(typeof A.default==="function")return A.default(this);return this._use(A)}).then((A)=>{if(A&&typeof A.compile==="function")A.compile();return A})),this;return X}this.propagatePromiseModules(z);let{name:w,seed:U}=z.config;if(z.getParent=()=>this,z.getServer=()=>this.getServer(),z.getGlobalRoutes=()=>this.getGlobalRoutes(),z.model(this.definitions.type),z.error(this.definitions.error),this["~parser"]={...z["~parser"],...this["~parser"]},this.headers(z.setHeaders),w){if(!(w in this.dependencies))this.dependencies[w]=[];let X=U!==void 0?r4(w+JSON.stringify(U)):0;if(!this.dependencies[w].some(({checksum:A})=>X===A))this.extender.macros=this.extender.macros.concat(z.extender.macros),this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(z.extender.higherOrderFunctions)}else this.extender.macros=this.extender.macros.concat(z.extender.macros),this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(z.extender.higherOrderFunctions);bW(this.extender.macros),bW(this.extender.higherOrderFunctions);let W=[];for(let X=0;X<this.extender.higherOrderFunctions.length;X++){let A=this.extender.higherOrderFunctions[X];if(A.checksum){if(W.includes(A.checksum))this.extender.higherOrderFunctions.splice(X,1),X--;W.push(A.checksum)}}this.inference={body:this.inference.body||z.inference.body,cookie:this.inference.cookie||z.inference.cookie,headers:this.inference.headers||z.inference.headers,query:this.inference.query||z.inference.query,set:this.inference.set||z.inference.set,server:this.inference.server||z.inference.server,request:this.inference.request||z.inference.request,route:this.inference.route||z.inference.route},this.decorate(z.singleton.decorator),this.state(z.singleton.store),this.model(z.definitions.type),this.error(z.definitions.error),z.extender.macros=this.extender.macros.concat(z.extender.macros);for(let{method:X,path:A,handler:Z,hooks:$}of Object.values(z.router.history))this.add(X,A,Z,z6($,{error:z.event.error}));if(w){if(!(w in this.dependencies))this.dependencies[w]=[];let X=U!==void 0?r4(w+JSON.stringify(U)):0;if(this.dependencies[w].some(({checksum:A})=>X===A))return this;this.dependencies[w].push(this.config?.analytic?{name:z.config.name,seed:z.config.seed,checksum:X,dependencies:z.dependencies,stack:z.telemetry.stack,routes:z.router.history,decorators:z.singleton,store:z.singleton.store,error:z.definitions.error,derive:z.event.transform?.filter((A)=>A?.subType==="derive").map((A)=>({fn:A.toString(),stack:new Error().stack??""})),resolve:z.event.transform?.filter((A)=>A?.subType==="resolve").map((A)=>({fn:A.toString(),stack:new Error().stack??""}))}:{name:z.config.name,seed:z.config.seed,checksum:X,dependencies:z.dependencies}),this.event=SW(this.event,DW(z.event),X)}else this.event=SW(this.event,DW(z.event));return this.validator.global=z6(this.validator.global,{...z.validator.global}),this.validator.local=z6(this.validator.local,{...z.validator.scoped}),this}macro(z){if(typeof z==="function"){let w={checksum:r4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:z.toString()})),fn:z};this.extender.macros.push(w)}else if(typeof z==="object"){for(let U of Object.keys(z))if(typeof z[U]==="object"){let W={...z[U]};z[U]=(X)=>{if(X===!0)return W}}let w={checksum:r4(JSON.stringify({name:this.config.name,seed:this.config.seed,content:Object.entries(z).map(([U,W])=>`${U}+${W}`).join(",")})),fn:()=>z};this.extender.macros.push(w)}return this}mount(z,w){if(z instanceof b0||typeof z==="function"||z.length===0||z==="/"){let X=typeof z==="function"?z:z instanceof b0?z.compile().fetch:w instanceof b0?w.compile().fetch:w,A=({request:Z,path:$})=>X(new Request(GW(Z.url,$),{method:Z.method,headers:Z.headers,signal:Z.signal,credentials:Z.credentials,referrerPolicy:Z.referrerPolicy,duplex:Z.duplex,redirect:Z.redirect,mode:Z.mode,keepalive:Z.keepalive,integrity:Z.integrity,body:Z.body}));return this.all("/*",A,{parse:"none"}),this}if(!w)return this;let U=z.length-(z.endsWith("*")?1:0);if(w instanceof b0)w=w.compile().fetch;let W=({request:X,path:A})=>w(new Request(GW(X.url,A.slice(U)||"/"),{method:X.method,headers:X.headers,signal:X.signal,credentials:X.credentials,referrerPolicy:X.referrerPolicy,duplex:X.duplex,redirect:X.redirect,mode:X.mode,keepalive:X.keepalive,integrity:X.integrity,body:X.body}));return this.all(z,W,{parse:"none"}),this.all(z+(z.endsWith("/")?"*":"/*"),W,{parse:"none"}),this}get(z,w,U){return this.add("GET",z,w,U),this}post(z,w,U){return this.add("POST",z,w,U),this}put(z,w,U){return this.add("PUT",z,w,U),this}patch(z,w,U){return this.add("PATCH",z,w,U),this}delete(z,w,U){return this.add("DELETE",z,w,U),this}options(z,w,U){return this.add("OPTIONS",z,w,U),this}all(z,w,U){return this.add("ALL",z,w,U),this}head(z,w,U){return this.add("HEAD",z,w,U),this}connect(z,w,U){return this.add("CONNECT",z,w,U),this}route(z,w,U,W){return this.add(z.toUpperCase(),w,U,W,W?.config),this}ws(z,w){if(this["~adapter"].ws)this["~adapter"].ws(this,z,w);else console.warn("Current adapter doesn't support WebSocket");return this}state(z,w,U){if(w===void 0)U=z,z={as:"append"},w="";else if(U===void 0){if(typeof z==="string")U=w,w=z,z={as:"append"};else if(typeof z==="object")U=w,w=""}let{as:W}=z;if(typeof w!=="string")return this;switch(typeof U){case"object":if(w){if(w in this.singleton.store)this.singleton.store[w]=F2(this.singleton.store[w],U,{override:W==="override"});else this.singleton.store[w]=U;return this}if(U===null)return this;return this.singleton.store=F2(this.singleton.store,U,{override:W==="override"}),this;case"function":if(w){if(W==="override"||!(w in this.singleton.store))this.singleton.store[w]=U}else this.singleton.store=U(this.singleton.store);return this;default:if(W==="override"||!(w in this.singleton.store))this.singleton.store[w]=U;return this}}decorate(z,w,U){if(w===void 0)U=z,z={as:"append"},w="";else if(U===void 0){if(typeof z==="string")U=w,w=z,z={as:"append"};else if(typeof z==="object")U=w,w=""}let{as:W}=z;if(typeof w!=="string")return this;switch(typeof U){case"object":if(w){if(w in this.singleton.decorator)this.singleton.decorator[w]=F2(this.singleton.decorator[w],U,{override:W==="override"});else this.singleton.decorator[w]=U;return this}if(U===null)return this;return this.singleton.decorator=F2(this.singleton.decorator,U,{override:W==="override"}),this;case"function":if(w){if(W==="override"||!(w in this.singleton.decorator))this.singleton.decorator[w]=U}else this.singleton.decorator=U(this.singleton.decorator);return this;default:if(W==="override"||!(w in this.singleton.decorator))this.singleton.decorator[w]=U;return this}}derive(z,w){if(!w)w=z,z={as:"local"};let U={subType:"derive",fn:w};return this.onTransform(z,U)}model(z,w){let U=(W)=>Xw(W,[{from:I.Number(),to:(X)=>I.Numeric(X),untilObjectFound:!0},{from:I.Boolean(),to:(X)=>I.BooleanString(X),untilObjectFound:!0}]);switch(typeof z){case"object":let W={},X=Object.entries(z);for(let[$,Y]of X){if($ in this.definitions.type)continue;W[$]=this.definitions.type[$]=U(Y),W[$].$id??=`#/components/schemas/${$}`}return this.definitions.typebox=I.Module({...this.definitions.typebox.$defs,...W}),this;case"function":let A=U(z(this.definitions.type));return this.definitions.type=A,this.definitions.typebox=I.Module(A),this;case"string":if(!w)break;let Z={...w,id:w.$id??`#/components/schemas/${z}`};return this.definitions.type[z]=w,this.definitions.typebox=I.Module({...this.definitions.typebox.$defs,...Z}),this}return this.definitions.type[z]=w,this.definitions.typebox=I.Module({...this.definitions.typebox.$defs,[z]:w}),this}mapDerive(z,w){if(!w)w=z,z={as:"local"};let U={subType:"mapDerive",fn:w};return this.onTransform(z,U)}affix(z,w,U){if(U==="")return this;let W=["_","-"," "],X=(Y)=>Y[0].toUpperCase()+Y.slice(1),A=z==="prefix"?(Y,Q)=>W.includes(Y.at(-1)??"")?Y+Q:Y+X(Q):W.includes(U.at(-1)??"")?(Y,Q)=>Q+Y:(Y,Q)=>Q+X(Y),Z=(Y)=>{let Q={};switch(Y){case"decorator":for(let J in this.singleton.decorator)Q[A(U,J)]=this.singleton.decorator[J];this.singleton.decorator=Q;break;case"state":for(let J in this.singleton.store)Q[A(U,J)]=this.singleton.store[J];this.singleton.store=Q;break;case"model":for(let J in this.definitions.type)Q[A(U,J)]=this.definitions.type[J];this.definitions.type=Q;break;case"error":for(let J in this.definitions.error)Q[A(U,J)]=this.definitions.error[J];this.definitions.error=Q;break}},$=Array.isArray(w)?w:[w];for(let Y of $.some((Q)=>Q==="all")?["decorator","state","model","error"]:$)Z(Y);return this}prefix(z,w){return this.affix("prefix",z,w)}suffix(z,w){return this.affix("suffix",z,w)}compile(){if(this["~adapter"].isWebStandard){if(this.fetch=this.config.aot?ww(this):TW(this),typeof this.server?.reload==="function")this.server.reload({...this.server||{},fetch:this.fetch});return this}if(typeof this.server?.reload==="function")this.server.reload(this.server||{});return this._handle=ww(this),this}handle=async(z)=>this.fetch(z);fetch=(z)=>{return(this.fetch=this.config.aot?ww(this):TW(this))(z)};handleError=async(z,w)=>{return(this.handleError=this.config.aot?WX(this):xG(this))(z,w)};outerErrorHandler=(z)=>new Response(z.message||z.name||"Error",{status:z?.status??500});listen=(z,w)=>{return this["~adapter"].listen(this)(z,w),this};stop=async(z)=>{if(!this.server)throw new Error("Elysia isn't running. Call `app.listen` to start the server.");if(this.server){if(this.server.stop(z),this.server=null,this.event.stop?.length)for(let w=0;w<this.event.stop.length;w++)this.event.stop[w].fn(this)}};get modules(){return this.promisedModules}}var U8={AmazonCognito:Z8,AniList:$8,Apple:Q8,Atlassian:J8,Auth0:B8,Authentik:M8,Bitbucket:q8,Box:L8,Coinbase:N8,Discord:G8,Dribbble:H8,Dropbox:_8,Facebook:S8,Figma:D8,FortyTwo:e8,GitHub:P8,GitLab:O8,Google:R8,Intuit:C8,Kakao:b8,KeyCloak:K8,Lichess:F8,Line:j8,Linear:I8,LinkedIn:E8,MicrosoftEntraId:x8,MyAnimeList:V8,Notion:k8,Okta:T8,Osu:g8,Patreon:f8,Reddit:d8,Roblox:h8,Salesforce:c8,Shikimori:i8,Slack:y8,Spotify:v8,Strava:n8,Tiltify:u8,Tumblr:m8,Twitch:t8,Twitter:o8,VK:p8,WorkOS:l8,Yahoo:s8,Yandex:r8,Zoom:a8},XX=Object.keys(U8).reduce((z,w)=>{return z[w.toLowerCase()]=w,z},{});var r5=(z)=>("refreshAccessToken"in z)&&typeof z.refreshAccessToken==="function",AX=(z)=>("revokeAccessToken"in z)&&typeof z.revokeAccessToken==="function",t6=(z)=>Object.keys(U8).map((w)=>w.toLowerCase()).includes(z.toLowerCase());var ZX=(z)=>z!==null&&z!==void 0&&z.trim()!=="";var W8=1800;var $X=({clientProviders:z,authorizeRoute:w="authorize",onAuthorize:U})=>new b0().get(`/${w}/:provider`,({error:W,redirect:X,cookie:{state:A,code_verifier:Z,auth_provider:$,redirect_url:Y},params:{provider:Q},headers:J})=>{if(Q===void 0)return W("Bad Request","Provider is required");if(!t6(Q))return W("Bad Request","Invalid provider");try{let N=Q.toLowerCase(),{providerInstance:S,scopes:G,searchParams:O}=z[N],B=J.referer??"/";Y.set({httpOnly:!0,maxAge:W8,path:"/",sameSite:"lax",secure:!0,value:B}),$.set({httpOnly:!0,maxAge:W8,path:"/",sameSite:"lax",secure:!0,value:Q});let C=Xz();A.set({httpOnly:!0,maxAge:W8,path:"/",sameSite:"lax",secure:!0,value:C});let i=S.createAuthorizationURL.toString().includes("codeVerifier"),N0=i?Wz():void 0;i&&Z.set({httpOnly:!0,maxAge:W8,path:"/",sameSite:"lax",secure:!0,value:N0??""});let U0=i?S.createAuthorizationURL(C,N0,G):S.createAuthorizationURL(C,G);return O.forEach(([D0,K0])=>{U0.searchParams.set(D0,K0)}),U?.(),X(U0.toString())}catch(N){if(N instanceof Error)return W("Internal Server Error",`Failed to authorize: ${N.message}`);return W("Internal Server Error",`Unknown error: ${N}`)}});var C4=()=>{let z={};return new b0({name:"sessionStore"}).state({session:z})};var YX=({clientProviders:z,callbackRoute:w="authorize/callback",onCallback:U})=>new b0().use(C4()).get(`/${w}`,async({error:W,redirect:X,store:{session:A},cookie:{state:Z,code_verifier:$,redirect_url:Y,user_session_id:Q,auth_provider:J},query:{code:N,state:S}})=>{if(!ZX(N)||Z.value===void 0)return W("Bad Request","Invalid callback request");if(S!==Z.value)return W("Bad Request","Invalid state mismatch");if(J.value===void 0)return W("Unauthorized","No auth provider found");if(!t6(J.value))return W("Unauthorized","Invalid provider");let G=J.value.toLowerCase(),{providerInstance:O}=z[G];try{Z.remove();let B=O.validateAuthorizationCode.toString().includes("codeVerifier"),C=$.value;if(B&&C===void 0)return W("Bad Request","Code verifier not found and is required");let i=C??"",N0=await(B?O.validateAuthorizationCode(N,i):O.validateAuthorizationCode(N));if(B)$.remove();let U0=Object.fromEntries(Object.entries($z(N0.idToken())).map(([g,x])=>[g,typeof x==="string"?x:void 0])),D0=J.value;U?.({authProvider:D0,decodedIdToken:U0,session:A,user_session_id:Q});let K0=Y.value??"/";return X(K0)}catch(B){if(B instanceof Error)return W("Internal Server Error",`${B.message} - ${B.stack??""}`);return W("Internal Server Error",`Failed to validate authorization code: Unknown error: ${B}`)}});var QX=({logoutRoute:z="logout",onLogout:w})=>new b0().post(`/${z}`,async({error:U,cookie:{user_session_id:W,auth_provider:X}})=>{if(X.value===void 0)return U("Unauthorized","No auth provider found");try{return w?.(),W.remove(),X.remove(),new Response("Succesfuly Logged Out",{status:204})}catch(A){if(A instanceof Error)return U("Internal Server Error",`Failed to logout: ${A.message}`);return U("Internal Server Error",`Failed to logout: Unknown error: ${A}`)}});var JX=()=>new b0().use(C4()).derive(({store:{session:z},cookie:{user_session_id:w},error:U})=>({protectRoute:async(W,X)=>{if(w.value===void 0)return X?.()??U("Unauthorized","No session ID found");if(z[w.value]===void 0)return X?.()??U("Unauthorized","No session found");return W()}})).as("plugin");var BX=({clientProviders:z,refreshRoute:w="refresh",onRefresh:U})=>new b0().post(`/${w}`,async({error:W,cookie:{user_refresh_token:X,auth_provider:A}})=>{if(X.value===void 0)return W("Unauthorized","No refresh token found");if(A.value===void 0)return W("Unauthorized","No auth provider found");let Z=A.value.toLowerCase(),{providerInstance:$}=z[Z];if(!r5($))return W("Not Implemented","Provider is not refreshable");try{return await $.refreshAccessToken(X.value),U?.(),new Response("Token refreshed",{status:204})}catch(Y){if(Y instanceof Error)return W("Internal Server Error",`Failed to refresh token: ${Y.message}`);return W("Internal Server Error",`Faile to refresh token: Unknown error: ${Y}`)}});var MX=({clientProviders:z,revokeRoute:w="revoke",onRevoke:U})=>new b0().post(`/${w}/access-token`,async({error:W,cookie:{user_refresh_token:X,auth_provider:A}})=>{if(X.value===void 0)return W("Unauthorized","No refresh token found");if(A.value===void 0)return W("Unauthorized","No auth provider found");let Z=A.value.toLowerCase(),{providerInstance:$}=z[Z];if(!AX($))return W("Not Implemented","Provider does not support revocation");try{return await $.revokeAccessToken(X.value),U?.(),new Response("Token revoked",{status:204})}catch(Y){if(Y instanceof Error)return W("Internal Server Error",`Failed to revoke token: ${Y.message}`);return W("Internal Server Error",`Failed to revoke token: Unknown error: ${Y}`)}});var qX=({clientProviders:z,statusRoute:w="auth-status",onStatus:U})=>new b0().use(C4()).get(`/${w}`,async({error:W,cookie:{user_session_id:X,auth_provider:A},store:{session:Z}})=>{try{if(X.value===void 0)return new Response(JSON.stringify({isLoggedIn:!1,user:null}),{headers:{"Content-Type":"application/json"}});if(A.value===void 0)return new Response(JSON.stringify({isLoggedIn:!1,user:null}),{headers:{"Content-Type":"application/json"}});let $=A.value.toLowerCase(),{providerInstance:Y}=z[$];if(!r5(Y))return W("Not Implemented","Provider is not refreshable");let Q=Z[X.value];if(Q===void 0)return new Response(JSON.stringify({isLoggedIn:!1,user:null}),{headers:{"Content-Type":"application/json"}});let{user:J}=Q;return U?.(),new Response(JSON.stringify({isLoggedIn:!0,user:J}),{headers:{"Content-Type":"application/json"}})}catch($){if($ instanceof Error)return W("Internal Server Error",`Error: ${$.message} - ${$.stack??""}`);return W("Internal Server Error",`Unknown Error: ${$}`)}});var rf=({config:z,authorizeRoute:w,callbackRoute:U,logoutRoute:W,statusRoute:X,refreshRoute:A,revokeRoute:Z,onAuthorize:$,onCallback:Y,onStatus:Q,onRefresh:J,onLogout:N,onRevoke:S})=>{let G=Object.keys(z).reduce((O,B)=>{if(!Object.prototype.hasOwnProperty.call(z,B))return O;if(!t6(B))return console.error(`Provider ${B} is not supported`),O;let C=z[B];if(!C)return O;let i=B.toLowerCase(),N0=XX[i];if(!t6(N0))return console.error(`Provider ${B} is not supported`),O;let U0=U8[N0],{credentials:D0,scopes:K0=[],searchParams:g=[]}=C,x=new U0(...D0);return O[i]={providerInstance:x,scopes:K0,searchParams:g},O},{});return new b0().error("OAUTH2_REQUEST_ERROR",F4).error("ARCTIC_FETCH_ERROR",$6).use(QX({logoutRoute:W,onLogout:N})).use(MX({clientProviders:G,onRevoke:S,revokeRoute:Z})).use(qX({clientProviders:G,onStatus:Q,statusRoute:X})).use(BX({clientProviders:G,onRefresh:J,refreshRoute:A})).use($X({authorizeRoute:w,clientProviders:G,onAuthorize:$})).use(YX({callbackRoute:U,clientProviders:G,onCallback:Y})).use(JX()).as("plugin")};export{rf as absoluteAuth};