authhero 0.4.0 → 0.6.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/authhero.cjs +121 -1
- package/dist/authhero.d.ts +1583 -4
- package/dist/authhero.iife.js +121 -1
- package/dist/authhero.mjs +18786 -3986
- package/package.json +2 -2
package/dist/authhero.iife.js
CHANGED
|
@@ -1 +1,121 @@
|
|
|
1
|
-
var authhero=function(V){"use strict";var od=Object.defineProperty;var us=V=>{throw TypeError(V)};var dd=(V,L,w)=>L in V?od(V,L,{enumerable:!0,configurable:!0,writable:!0,value:w}):V[L]=w;var y=(V,L,w)=>dd(V,typeof L!="symbol"?L+"":L,w),ls=(V,L,w)=>L.has(V)||us("Cannot "+w);var m=(V,L,w)=>(ls(V,L,"read from private field"),w?w.call(V):L.get(V)),X=(V,L,w)=>L.has(V)?us("Cannot add the same private member more than once"):L instanceof WeakSet?L.add(V):L.set(V,w),M=(V,L,w,mn)=>(ls(V,L,"write to private field"),mn?mn.call(V,w):L.set(V,w),w);var mt,ge,os,un,ln,Re,Je,Ce,F,G,Te,Ze,pn,gt,_t,hn,fn,ds,_e,cs;function L(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(n);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(n,r[s])&&(t[r[s]]=n[r[s]]);return t}typeof SuppressedError=="function"&&SuppressedError;function w(n,e){var t;return((t=n==null?void 0:n._def)===null||t===void 0?void 0:t.typeName)===e}function mn(n){return"_def"in n}function yt(n,e){const t=n.ZodType.prototype[e];n.ZodType.prototype[e]=function(...r){const s=t.apply(this,r);return s._def.openapi=this._def.openapi,s}}function ps(n){if(typeof n.ZodType.prototype.openapi<"u")return;n.ZodType.prototype.openapi=function(s,a){var i,o,c,u,l,f;const E=typeof s=="string"?a:s,$=E??{},{param:N}=$,A=L($,["param"]),K=Object.assign(Object.assign({},(i=this._def.openapi)===null||i===void 0?void 0:i._internal),typeof s=="string"?{refId:s}:void 0),Y=Object.assign(Object.assign(Object.assign({},(o=this._def.openapi)===null||o===void 0?void 0:o.metadata),A),!((u=(c=this._def.openapi)===null||c===void 0?void 0:c.metadata)===null||u===void 0)&&u.param||N?{param:Object.assign(Object.assign({},(f=(l=this._def.openapi)===null||l===void 0?void 0:l.metadata)===null||f===void 0?void 0:f.param),N)}:void 0),ne=new this.constructor(Object.assign(Object.assign({},this._def),{openapi:Object.assign(Object.assign({},Object.keys(K).length>0?{_internal:K}:void 0),Object.keys(Y).length>0?{metadata:Y}:void 0)}));if(w(this,"ZodObject")){const U=this.extend;ne.extend=function(...ce){var Q,re,B,se,ye,Qe;const Xe=U.apply(this,ce);return Xe._def.openapi={_internal:{extendedFrom:!((re=(Q=this._def.openapi)===null||Q===void 0?void 0:Q._internal)===null||re===void 0)&&re.refId?{refId:(se=(B=this._def.openapi)===null||B===void 0?void 0:B._internal)===null||se===void 0?void 0:se.refId,schema:this}:(ye=this._def.openapi)===null||ye===void 0?void 0:ye._internal.extendedFrom},metadata:(Qe=Xe._def.openapi)===null||Qe===void 0?void 0:Qe.metadata},Xe}}return ne},yt(n,"optional"),yt(n,"nullable"),yt(n,"default"),yt(n,"transform"),yt(n,"refine");const e=n.ZodObject.prototype.deepPartial;n.ZodObject.prototype.deepPartial=function(){const s=this._def.shape(),a=e.apply(this),i=a._def.shape();return Object.entries(i).forEach(([o,c])=>{var u,l;c._def.openapi=(l=(u=s[o])===null||u===void 0?void 0:u._def)===null||l===void 0?void 0:l.openapi}),a._def.openapi=void 0,a};const t=n.ZodObject.prototype.pick;n.ZodObject.prototype.pick=function(...s){const a=t.apply(this,s);return a._def.openapi=void 0,a};const r=n.ZodObject.prototype.omit;n.ZodObject.prototype.omit=function(...s){const a=r.apply(this,s);return a._def.openapi=void 0,a}}function gn(n,e){if(n==null||e===null||e===void 0)return n===e;if(n===e||n.valueOf()===e.valueOf())return!0;if(Array.isArray(n)&&(!Array.isArray(e)||n.length!==e.length)||!(n instanceof Object)||!(e instanceof Object))return!1;const t=Object.keys(n);return Object.keys(e).every(r=>t.indexOf(r)!==-1)&&t.every(r=>gn(n[r],e[r]))}class hs{constructor(){this.buckets=new Map}put(e){const t=this.hashCodeOf(e),r=this.buckets.get(t);if(!r){this.buckets.set(t,[e]);return}r.some(a=>gn(a,e))||r.push(e)}contains(e){const t=this.hashCodeOf(e),r=this.buckets.get(t);return r?r.some(s=>gn(s,e)):!1}values(){return[...this.buckets.values()].flat()}stats(){let e=0,t=0,r=0;for(const a of this.buckets.values())e+=1,t+=a.length,a.length>1&&(r+=1);const s=e/t;return{totalBuckets:e,collisions:r,totalValues:t,hashEffectiveness:s}}hashCodeOf(e){let t=0;if(Array.isArray(e)){for(let r=0;r<e.length;r++)t^=this.hashCodeOf(e[r])*r;return t}if(typeof e=="string"){for(let r=0;r<e.length;r++)t^=e.charCodeAt(r)*r;return t}if(typeof e=="number")return e;if(typeof e=="object")for(const[r,s]of Object.entries(e))t^=this.hashCodeOf(r)+this.hashCodeOf(s??"");return t}}function vt(n){return n==null}function bt(n,e){const t={};return Object.entries(n).forEach(([r,s])=>{t[r]=e(s)}),t}function fs(n,e){const t={};return Object.entries(n).forEach(([r,s])=>{e.some(a=>a===r)||(t[r]=s)}),t}function et(n,e){const t={};return Object.entries(n).forEach(([r,s])=>{e(s,r)||(t[r]=s)}),t}function dr(n){return n.filter(e=>!vt(e))}const Vn=gn;function ms(n){const e=new hs;return n.forEach(t=>e.put(t)),[...e.values()]}function cr(n){return typeof n=="string"}class gs{constructor(e){this.parents=e,this._definitions=[]}get definitions(){var e,t;return[...(t=(e=this.parents)===null||e===void 0?void 0:e.flatMap(s=>s.definitions))!==null&&t!==void 0?t:[],...this._definitions]}register(e,t){const r=this.schemaWithRefId(e,t);return this._definitions.push({type:"schema",schema:r}),r}registerParameter(e,t){var r,s,a;const i=this.schemaWithRefId(e,t),o=(r=i._def.openapi)===null||r===void 0?void 0:r.metadata,c=i.openapi(Object.assign(Object.assign({},o),{param:Object.assign(Object.assign({},o==null?void 0:o.param),{name:(a=(s=o==null?void 0:o.param)===null||s===void 0?void 0:s.name)!==null&&a!==void 0?a:e})}));return this._definitions.push({type:"parameter",schema:c}),c}registerPath(e){this._definitions.push({type:"route",route:e})}registerWebhook(e){this._definitions.push({type:"webhook",webhook:e})}registerComponent(e,t,r){return this._definitions.push({type:"component",componentType:e,name:t,component:r}),{name:t,ref:{$ref:`#/components/${e}/${t}`}}}schemaWithRefId(e,t){return t.openapi(e)}}class _n{constructor(e){this.message=e}}class wt extends _n{constructor(e,t){super(e),this.data=t}}class yn extends _n{constructor(e){super(`Missing parameter data, please specify \`${e.missingField}\` and other OpenAPI parameter props using the \`param\` field of \`ZodSchema.openapi\``),this.data=e}}function kt(n,e){try{return n()}catch(t){throw t instanceof yn?new yn(Object.assign(Object.assign({},t.data),e)):t}}class _s extends _n{constructor(e){super("Unknown zod object type, please specify `type` and other OpenAPI props using `ZodSchema.openapi`."),this.data=e}}class q{static getMetadata(e){var t;const r=this.unwrapChained(e),s=e._def.openapi?e._def.openapi:r._def.openapi,a=(t=e.description)!==null&&t!==void 0?t:r.description;return{_internal:s==null?void 0:s._internal,metadata:Object.assign({description:a},s==null?void 0:s.metadata)}}static getInternalMetadata(e){const t=this.unwrapChained(e),r=e._def.openapi?e._def.openapi:t._def.openapi;return r==null?void 0:r._internal}static getParamMetadata(e){var t,r;const s=this.unwrapChained(e),a=e._def.openapi?e._def.openapi:s._def.openapi,i=(t=e.description)!==null&&t!==void 0?t:s.description;return{_internal:a==null?void 0:a._internal,metadata:Object.assign(Object.assign({},a==null?void 0:a.metadata),{param:Object.assign({description:i},(r=a==null?void 0:a.metadata)===null||r===void 0?void 0:r.param)})}}static buildSchemaMetadata(e){return et(fs(e,["param"]),vt)}static buildParameterMetadata(e){return et(e,vt)}static applySchemaMetadata(e,t){return et(Object.assign(Object.assign({},e),this.buildSchemaMetadata(t)),vt)}static getRefId(e){var t;return(t=this.getInternalMetadata(e))===null||t===void 0?void 0:t.refId}static unwrapChained(e){return this.unwrapUntil(e)}static getDefaultValue(e){const t=this.unwrapUntil(e,"ZodDefault");return t==null?void 0:t._def.defaultValue()}static unwrapUntil(e,t){return t&&w(e,t)?e:w(e,"ZodOptional")||w(e,"ZodNullable")||w(e,"ZodBranded")?this.unwrapUntil(e.unwrap(),t):w(e,"ZodDefault")||w(e,"ZodReadonly")?this.unwrapUntil(e._def.innerType,t):w(e,"ZodEffects")?this.unwrapUntil(e._def.schema,t):w(e,"ZodPipeline")?this.unwrapUntil(e._def.in,t):t?void 0:e}static isOptionalSchema(e){return w(e,"ZodEffects")?this.isOptionalSchema(e._def.schema):e.isOptional()}}class ys{transform(e,t,r){var s,a;const i=e._def.type;return Object.assign(Object.assign({},t("array")),{items:r(i),minItems:(s=e._def.minLength)===null||s===void 0?void 0:s.value,maxItems:(a=e._def.maxLength)===null||a===void 0?void 0:a.value})}}class vs{transform(e){return Object.assign(Object.assign({},e("string")),{pattern:"^d+$"})}}class bs{transform(e,t,r,s,a){const i=[...e.options.values()],o=i.map(s);return t?{oneOf:r(o,t)}:{oneOf:o,discriminator:this.mapDiscriminator(i,e.discriminator,a)}}mapDiscriminator(e,t,r){if(e.some(a=>q.getRefId(a)===void 0))return;const s={};return e.forEach(a=>{var i;const o=q.getRefId(a),c=(i=a.shape)===null||i===void 0?void 0:i[t];if(w(c,"ZodEnum")||w(c,"ZodNativeEnum")){Object.values(c.enum).filter(cr).forEach(f=>{s[f]=r(o)});return}const u=c==null?void 0:c._def.value;if(typeof u!="string")throw new Error(`Discriminator ${t} could not be found in one of the values of a discriminated union`);s[u]=r(o)}),{propertyName:t,mapping:s}}}class ws{transform(e,t){return Object.assign(Object.assign({},t("string")),{enum:e._def.values})}}class ks{transform(e,t,r,s){const i={allOf:this.flattenIntersectionTypes(e).map(s)};return t?{anyOf:r([i],t)}:i}flattenIntersectionTypes(e){if(!w(e,"ZodIntersection"))return[e];const t=this.flattenIntersectionTypes(e._def.left),r=this.flattenIntersectionTypes(e._def.right);return[...t,...r]}}class xs{transform(e,t){return Object.assign(Object.assign({},t(typeof e._def.value)),{enum:[e._def.value]})}}function Os(n){const t=Object.keys(n).filter(a=>typeof n[n[a]]!="number").map(a=>n[a]),r=t.filter(a=>typeof a=="number").length,s=r===0?"string":r===t.length?"numeric":"mixed";return{values:t,type:s}}class Ts{transform(e,t){const{type:r,values:s}=Os(e._def.values);if(r==="mixed")throw new _n("Enum has mixed string and number values, please specify the OpenAPI type manually");return Object.assign(Object.assign({},t(r==="numeric"?"integer":"string")),{enum:s})}}class js{transform(e,t,r){return Object.assign(Object.assign({},t(e.isInt?"integer":"number")),r(e._def.checks))}}class Es{transform(e,t,r,s){var a;const i=(a=q.getInternalMetadata(e))===null||a===void 0?void 0:a.extendedFrom,o=this.requiredKeysOf(e),c=bt(e._def.shape(),s);if(!i)return Object.assign(Object.assign(Object.assign(Object.assign({},r("object")),{properties:c,default:t}),o.length>0?{required:o}:{}),this.generateAdditionalProperties(e,s));const u=i.schema;s(u);const l=this.requiredKeysOf(u),f=bt(u==null?void 0:u._def.shape(),s),E=Object.fromEntries(Object.entries(c).filter(([A,K])=>!Vn(f[A],K))),$=o.filter(A=>!l.includes(A)),N=Object.assign(Object.assign(Object.assign(Object.assign({},r("object")),{default:t,properties:E}),$.length>0?{required:$}:{}),this.generateAdditionalProperties(e,s));return{allOf:[{$ref:`#/components/schemas/${i.refId}`},N]}}generateAdditionalProperties(e,t){const r=e._def.unknownKeys,s=e._def.catchall;return w(s,"ZodNever")?r==="strict"?{additionalProperties:!1}:{}:{additionalProperties:t(s)}}requiredKeysOf(e){return Object.entries(e._def.shape()).filter(([t,r])=>!q.isOptionalSchema(r)).map(([t,r])=>t)}}class Ss{transform(e,t,r){const s=e._def.valueType,a=e._def.keyType,i=r(s);if(w(a,"ZodEnum")||w(a,"ZodNativeEnum")){const c=Object.values(a.enum).filter(cr).reduce((u,l)=>Object.assign(Object.assign({},u),{[l]:i}),{});return Object.assign(Object.assign({},t("object")),{properties:c})}return Object.assign(Object.assign({},t("object")),{additionalProperties:i})}}class Rs{transform(e,t){var r,s,a;const i=this.getZodStringCheck(e,"regex"),o=(r=this.getZodStringCheck(e,"length"))===null||r===void 0?void 0:r.value,c=Number.isFinite(e.minLength)&&(s=e.minLength)!==null&&s!==void 0?s:void 0,u=Number.isFinite(e.maxLength)&&(a=e.maxLength)!==null&&a!==void 0?a:void 0;return Object.assign(Object.assign({},t("string")),{minLength:o??c,maxLength:o??u,format:this.mapStringFormat(e),pattern:i==null?void 0:i.regex.source})}mapStringFormat(e){if(e.isUUID)return"uuid";if(e.isEmail)return"email";if(e.isURL)return"uri";if(e.isDatetime)return"date-time"}getZodStringCheck(e,t){return e._def.checks.find(r=>r.kind===t)}}class Cs{constructor(e){this.versionSpecifics=e}transform(e,t,r){const{items:s}=e._def,a=s.map(r);return Object.assign(Object.assign({},t("array")),this.versionSpecifics.mapTupleItems(a))}}class Zs{transform(e,t,r){const a=this.flattenUnionTypes(e).map(i=>{const o=this.unwrapNullable(i);return r(o)});return{anyOf:t(a)}}flattenUnionTypes(e){return w(e,"ZodUnion")?e._def.options.flatMap(r=>this.flattenUnionTypes(r)):[e]}unwrapNullable(e){return w(e,"ZodNullable")?this.unwrapNullable(e.unwrap()):e}}class Is{constructor(e){this.versionSpecifics=e,this.objectTransformer=new Es,this.stringTransformer=new Rs,this.numberTransformer=new js,this.bigIntTransformer=new vs,this.literalTransformer=new xs,this.enumTransformer=new ws,this.nativeEnumTransformer=new Ts,this.arrayTransformer=new ys,this.unionTransformer=new Zs,this.discriminatedUnionTransformer=new bs,this.intersectionTransformer=new ks,this.recordTransformer=new Ss,this.tupleTransformer=new Cs(e)}transform(e,t,r,s,a){if(w(e,"ZodNull"))return this.versionSpecifics.nullType;if(w(e,"ZodUnknown")||w(e,"ZodAny"))return this.versionSpecifics.mapNullableType(void 0,t);if(w(e,"ZodObject"))return this.objectTransformer.transform(e,a,o=>this.versionSpecifics.mapNullableType(o,t),r);const i=this.transformSchemaWithoutDefault(e,t,r,s);return Object.assign(Object.assign({},i),{default:a})}transformSchemaWithoutDefault(e,t,r,s){if(w(e,"ZodUnknown")||w(e,"ZodAny"))return this.versionSpecifics.mapNullableType(void 0,t);if(w(e,"ZodString"))return this.stringTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t));if(w(e,"ZodNumber"))return this.numberTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t),i=>this.versionSpecifics.getNumberChecks(i));if(w(e,"ZodBigInt"))return this.bigIntTransformer.transform(i=>this.versionSpecifics.mapNullableType(i,t));if(w(e,"ZodBoolean"))return this.versionSpecifics.mapNullableType("boolean",t);if(w(e,"ZodLiteral"))return this.literalTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t));if(w(e,"ZodEnum"))return this.enumTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t));if(w(e,"ZodNativeEnum"))return this.nativeEnumTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t));if(w(e,"ZodArray"))return this.arrayTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t),r);if(w(e,"ZodTuple"))return this.tupleTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t),r);if(w(e,"ZodUnion"))return this.unionTransformer.transform(e,i=>this.versionSpecifics.mapNullableOfArray(i,t),r);if(w(e,"ZodDiscriminatedUnion"))return this.discriminatedUnionTransformer.transform(e,t,i=>this.versionSpecifics.mapNullableOfArray(i,t),r,s);if(w(e,"ZodIntersection"))return this.intersectionTransformer.transform(e,t,i=>this.versionSpecifics.mapNullableOfArray(i,t),r);if(w(e,"ZodRecord"))return this.recordTransformer.transform(e,i=>this.versionSpecifics.mapNullableType(i,t),r);if(w(e,"ZodDate"))return this.versionSpecifics.mapNullableType("string",t);const a=q.getRefId(e);throw new _s({currentSchema:e._def,schemaName:a})}}class ur{constructor(e,t){this.definitions=e,this.versionSpecifics=t,this.schemaRefs={},this.paramRefs={},this.pathRefs={},this.rawComponents=[],this.openApiTransformer=new Is(t),this.sortDefinitions()}generateDocumentData(){return this.definitions.forEach(e=>this.generateSingle(e)),{components:this.buildComponents(),paths:this.pathRefs}}generateComponents(){return this.definitions.forEach(e=>this.generateSingle(e)),{components:this.buildComponents()}}buildComponents(){var e,t;const r={};return this.rawComponents.forEach(({componentType:s,name:a,component:i})=>{var o;(o=r[s])!==null&&o!==void 0||(r[s]={}),r[s][a]=i}),Object.assign(Object.assign({},r),{schemas:Object.assign(Object.assign({},(e=r.schemas)!==null&&e!==void 0?e:{}),this.schemaRefs),parameters:Object.assign(Object.assign({},(t=r.parameters)!==null&&t!==void 0?t:{}),this.paramRefs)})}sortDefinitions(){const e=["schema","parameter","component","route"];this.definitions.sort((t,r)=>{if(!("type"in t))return"type"in r?-1:0;if(!("type"in r))return 1;const s=e.findIndex(i=>i===t.type),a=e.findIndex(i=>i===r.type);return s-a})}generateSingle(e){if(!("type"in e)){this.generateSchemaWithRef(e);return}switch(e.type){case"parameter":this.generateParameterDefinition(e.schema);return;case"schema":this.generateSchemaWithRef(e.schema);return;case"route":this.generateSingleRoute(e.route);return;case"component":this.rawComponents.push(e);return}}generateParameterDefinition(e){const t=q.getRefId(e),r=this.generateParameter(e);return t&&(this.paramRefs[t]=r),r}getParameterRef(e,t){var r,s,a,i,o;const c=(r=e==null?void 0:e.metadata)===null||r===void 0?void 0:r.param,u=!((s=e==null?void 0:e._internal)===null||s===void 0)&&s.refId?this.paramRefs[(a=e._internal)===null||a===void 0?void 0:a.refId]:void 0;if(!(!(!((i=e==null?void 0:e._internal)===null||i===void 0)&&i.refId)||!u)){if(c&&u.in!==c.in||t!=null&&t.in&&u.in!==t.in)throw new wt(`Conflicting location for parameter ${u.name}`,{key:"in",values:dr([u.in,t==null?void 0:t.in,c==null?void 0:c.in])});if(c&&u.name!==c.name||t!=null&&t.name&&u.name!==(t==null?void 0:t.name))throw new wt("Conflicting names for parameter",{key:"name",values:dr([u.name,t==null?void 0:t.name,c==null?void 0:c.name])});return{$ref:`#/components/parameters/${(o=e._internal)===null||o===void 0?void 0:o.refId}`}}}generateInlineParameters(e,t){var r;const s=q.getMetadata(e),a=(r=s==null?void 0:s.metadata)===null||r===void 0?void 0:r.param,i=this.getParameterRef(s,{in:t});if(i)return[i];if(w(e,"ZodObject")){const o=e._def.shape();return Object.entries(o).map(([u,l])=>{var f,E;const $=q.getMetadata(l),N=this.getParameterRef($,{in:t,name:u});if(N)return N;const A=(f=$==null?void 0:$.metadata)===null||f===void 0?void 0:f.param;if(A!=null&&A.name&&A.name!==u)throw new wt("Conflicting names for parameter",{key:"name",values:[u,A.name]});if(A!=null&&A.in&&A.in!==t)throw new wt(`Conflicting location for parameter ${(E=A.name)!==null&&E!==void 0?E:u}`,{key:"in",values:[t,A.in]});return this.generateParameter(l.openapi({param:{name:u,in:t}}))})}if(a!=null&&a.in&&a.in!==t)throw new wt(`Conflicting location for parameter ${a.name}`,{key:"in",values:[t,a.in]});return[this.generateParameter(e.openapi({param:{in:t}}))]}generateSimpleParameter(e){var t;const r=q.getParamMetadata(e),s=(t=r==null?void 0:r.metadata)===null||t===void 0?void 0:t.param,a=!q.isOptionalSchema(e)&&!e.isNullable(),i=this.generateSchemaWithRef(e);return Object.assign({schema:i,required:a},s?q.buildParameterMetadata(s):{})}generateParameter(e){var t;const r=q.getMetadata(e),s=(t=r==null?void 0:r.metadata)===null||t===void 0?void 0:t.param,a=s==null?void 0:s.name,i=s==null?void 0:s.in;if(!a)throw new yn({missingField:"name"});if(!i)throw new yn({missingField:"in",paramName:a});const o=this.generateSimpleParameter(e);return Object.assign(Object.assign({},o),{in:i,name:a})}generateSchemaWithMetadata(e){var t;const r=q.unwrapChained(e),s=q.getMetadata(e),a=q.getDefaultValue(e),i=!((t=s==null?void 0:s.metadata)===null||t===void 0)&&t.type?{type:s==null?void 0:s.metadata.type}:this.toOpenAPISchema(r,e.isNullable(),a);return s!=null&&s.metadata?q.applySchemaMetadata(i,s.metadata):et(i,vt)}constructReferencedOpenAPISchema(e){var t;const r=q.getMetadata(e),s=q.unwrapChained(e),a=q.getDefaultValue(e),i=e.isNullable();return!((t=r==null?void 0:r.metadata)===null||t===void 0)&&t.type?this.versionSpecifics.mapNullableType(r.metadata.type,i):this.toOpenAPISchema(s,i,a)}generateSimpleSchema(e){var t;const r=q.getMetadata(e),s=q.getRefId(e);if(!s||!this.schemaRefs[s])return this.generateSchemaWithMetadata(e);const a=this.schemaRefs[s],i={$ref:this.generateSchemaRef(s)},o=et(q.buildSchemaMetadata((t=r==null?void 0:r.metadata)!==null&&t!==void 0?t:{}),(l,f)=>l===void 0||Vn(l,a[f]));if(o.type)return{allOf:[i,o]};const c=et(this.constructReferencedOpenAPISchema(e),(l,f)=>l===void 0||Vn(l,a[f])),u=q.applySchemaMetadata(c,o);return Object.keys(u).length>0?{allOf:[i,u]}:i}generateSchemaWithRef(e){const t=q.getRefId(e),r=this.generateSimpleSchema(e);return t&&this.schemaRefs[t]===void 0?(this.schemaRefs[t]=r,{$ref:this.generateSchemaRef(t)}):r}generateSchemaRef(e){return`#/components/schemas/${e}`}getRequestBody(e){if(!e)return;const{content:t}=e,r=L(e,["content"]),s=this.getBodyContent(t);return Object.assign(Object.assign({},r),{content:s})}getParameters(e){if(!e)return[];const{headers:t}=e,r=this.cleanParameter(e.query),s=this.cleanParameter(e.params),a=this.cleanParameter(e.cookies),i=kt(()=>r?this.generateInlineParameters(r,"query"):[],{location:"query"}),o=kt(()=>s?this.generateInlineParameters(s,"path"):[],{location:"path"}),c=kt(()=>a?this.generateInlineParameters(a,"cookie"):[],{location:"cookie"}),u=kt(()=>{if(Array.isArray(t))return t.flatMap(f=>this.generateInlineParameters(f,"header"));const l=this.cleanParameter(t);return l?this.generateInlineParameters(l,"header"):[]},{location:"header"});return[...o,...i,...u,...c]}cleanParameter(e){if(e)return w(e,"ZodEffects")?this.cleanParameter(e._def.schema):e}generatePath(e){const{method:t,path:r,request:s,responses:a}=e,i=L(e,["method","path","request","responses"]),o=bt(a,f=>this.getResponse(f)),c=kt(()=>this.getParameters(s),{route:`${t} ${r}`}),u=this.getRequestBody(s==null?void 0:s.body);return{[t]:Object.assign(Object.assign(Object.assign(Object.assign({},i),c.length>0?{parameters:[...i.parameters||[],...c]}:{}),u?{requestBody:u}:{}),{responses:o})}}generateSingleRoute(e){const t=this.generatePath(e);return this.pathRefs[e.path]=Object.assign(Object.assign({},this.pathRefs[e.path]),t),t}getResponse(e){var{content:t,headers:r}=e,s=L(e,["content","headers"]);const a=t?{content:this.getBodyContent(t)}:{};if(!r)return Object.assign(Object.assign({},s),a);const i=w(r,"ZodObject")?this.getResponseHeaders(r):r;return Object.assign(Object.assign(Object.assign({},s),{headers:i}),a)}getResponseHeaders(e){const t=e._def.shape();return bt(t,s=>this.generateSimpleParameter(s))}getBodyContent(e){return bt(e,t=>{if(!t||!mn(t.schema))return t;const{schema:r}=t,s=L(t,["schema"]),a=this.generateSchemaWithRef(r);return Object.assign({schema:a},s)})}toOpenAPISchema(e,t,r){return this.openApiTransformer.transform(e,t,s=>this.generateSchemaWithRef(s),s=>this.generateSchemaRef(s),r)}}class Ns{get nullType(){return{nullable:!0}}mapNullableOfArray(e,t){return t?[...e,this.nullType]:e}mapNullableType(e,t){return Object.assign(Object.assign({},e?{type:e}:void 0),t?this.nullType:void 0)}mapTupleItems(e){const t=ms(e);return{items:t.length===1?t[0]:{anyOf:t},minItems:e.length,maxItems:e.length}}getNumberChecks(e){return Object.assign({},...e.map(t=>{switch(t.kind){case"min":return t.inclusive?{minimum:Number(t.value)}:{minimum:Number(t.value),exclusiveMinimum:!0};case"max":return t.inclusive?{maximum:Number(t.value)}:{maximum:Number(t.value),exclusiveMaximum:!0};default:return{}}}))}}class As{constructor(e){const t=new Ns;this.generator=new ur(e,t)}generateDocument(e){const t=this.generator.generateDocumentData();return Object.assign(Object.assign({},e),t)}generateComponents(){return this.generator.generateComponents()}}class Ps{get nullType(){return{type:"null"}}mapNullableOfArray(e,t){return t?[...e,this.nullType]:e}mapNullableType(e,t){return e?t?{type:Array.isArray(e)?[...e,"null"]:[e,"null"]}:{type:e}:{}}mapTupleItems(e){return{prefixItems:e}}getNumberChecks(e){return Object.assign({},...e.map(t=>{switch(t.kind){case"min":return t.inclusive?{minimum:Number(t.value)}:{exclusiveMinimum:Number(t.value)};case"max":return t.inclusive?{maximum:Number(t.value)}:{exclusiveMaximum:Number(t.value)};default:return{}}}))}}function Ds(n){return"type"in n&&n.type==="webhook"}class Ms{constructor(e){this.definitions=e,this.webhookRefs={};const t=new Ps;this.generator=new ur(this.definitions,t)}generateDocument(e){const t=this.generator.generateDocumentData();return this.definitions.filter(Ds).forEach(r=>this.generateSingleWebhook(r.webhook)),Object.assign(Object.assign(Object.assign({},e),t),{webhooks:this.webhookRefs})}generateComponents(){return this.generator.generateComponents()}generateSingleWebhook(e){const t=this.generator.generatePath(e);return this.webhookRefs[e.path]=Object.assign(Object.assign({},this.webhookRefs[e.path]),t),t}}var lr=n=>{const e=n.split("/");return e[0]===""&&e.shift(),e},$s=n=>{const{groups:e,path:t}=Ls(n),r=lr(t);return Us(r,e)},Ls=n=>{const e=[];return n=n.replace(/\{[^}]+\}/g,(t,r)=>{const s=`@${r}`;return e.push([s,t]),s}),{groups:e,path:n}},Us=(n,e)=>{for(let t=e.length-1;t>=0;t--){const[r]=e[t];for(let s=n.length-1;s>=0;s--)if(n[s].includes(r)){n[s]=n[s].replace(r,e[t][1]);break}}return n},vn={},pr=n=>{if(n==="*")return"*";const e=n.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);return e?(vn[n]||(e[2]?vn[n]=[n,e[1],new RegExp("^"+e[2]+"$")]:vn[n]=[n,e[1],!0]),vn[n]):null},Vs=n=>{try{return decodeURI(n)}catch{return n.replace(/(?:%[0-9A-Fa-f]{2})+/g,e=>{try{return decodeURI(e)}catch{return e}})}},hr=n=>{const e=n.url,t=e.indexOf("/",8);let r=t;for(;r<e.length;r++){const s=e.charCodeAt(r);if(s===37){const a=e.indexOf("?",r),i=e.slice(t,a===-1?void 0:a);return Vs(i.includes("%25")?i.replace(/%25/g,"%2525"):i)}else if(s===63)break}return e.slice(t,r)},qs=n=>{const e=hr(n);return e.length>1&&e[e.length-1]==="/"?e.slice(0,-1):e},Ie=(...n)=>{let e="",t=!1;for(let r of n)e[e.length-1]==="/"&&(e=e.slice(0,-1),t=!0),r[0]!=="/"&&(r=`/${r}`),r==="/"&&t?e=`${e}/`:r!=="/"&&(e=`${e}${r}`),r==="/"&&e===""&&(e="/");return e},fr=n=>{if(!n.match(/\:.+\?$/))return null;const e=n.split("/"),t=[];let r="";return e.forEach(s=>{if(s!==""&&!/\:/.test(s))r+="/"+s;else if(/\:/.test(s))if(/\?/.test(s)){t.length===0&&r===""?t.push("/"):t.push(r);const a=s.replace("?","");r+="/"+a,t.push(r)}else r+="/"+s}),t.filter((s,a,i)=>i.indexOf(s)===a)},qn=n=>/[%+]/.test(n)?(n.indexOf("+")!==-1&&(n=n.replace(/\+/g," ")),/%/.test(n)?bn(n):n):n,mr=(n,e,t)=>{let r;if(!t&&e&&!/[%+]/.test(e)){let i=n.indexOf(`?${e}`,8);for(i===-1&&(i=n.indexOf(`&${e}`,8));i!==-1;){const o=n.charCodeAt(i+e.length+1);if(o===61){const c=i+e.length+2,u=n.indexOf("&",c);return qn(n.slice(c,u===-1?void 0:u))}else if(o==38||isNaN(o))return"";i=n.indexOf(`&${e}`,i+1)}if(r=/[%+]/.test(n),!r)return}const s={};r??(r=/[%+]/.test(n));let a=n.indexOf("?",8);for(;a!==-1;){const i=n.indexOf("&",a+1);let o=n.indexOf("=",a);o>i&&i!==-1&&(o=-1);let c=n.slice(a+1,o===-1?i===-1?void 0:i:o);if(r&&(c=qn(c)),a=i,c==="")continue;let u;o===-1?u="":(u=n.slice(o+1,i===-1?void 0:i),r&&(u=qn(u))),t?(s[c]&&Array.isArray(s[c])||(s[c]=[]),s[c].push(u)):s[c]??(s[c]=u)}return e?s[e]:s},Bs=mr,Hs=(n,e)=>mr(n,e,!0),bn=decodeURIComponent,Ws=/^[\w!#$%&'*.^`|~+-]+$/,Fs=/^[ !#-:<-[\]-~]*$/,Ks=(n,e)=>n.trim().split(";").reduce((r,s)=>{s=s.trim();const a=s.indexOf("=");if(a===-1)return r;const i=s.substring(0,a).trim();if(!Ws.test(i))return r;let o=s.substring(a+1).trim();return o.startsWith('"')&&o.endsWith('"')&&(o=o.slice(1,-1)),Fs.test(o)&&(r[i]=bn(o)),r},{}),Gs=(n,e,t)=>{const r=n.req.raw.headers.get("Cookie");return r?Ks(r):{}},Bn=class extends Error{constructor(e=500,t){super(t==null?void 0:t.message,{cause:t==null?void 0:t.cause});y(this,"res");y(this,"status");this.res=t==null?void 0:t.res,this.status=e}getResponse(){return this.res?new Response(this.res.body,{status:this.status,headers:this.res.headers}):new Response(this.message,{status:this.status})}},zs=(n,e)=>new Response(n,{headers:{"Content-Type":e}}).formData(),Ys=/^application\/([a-z-\.]+\+)?json(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/,Js=/^multipart\/form-data(;\s?boundary=[a-zA-Z0-9'"()+_,\-./:=?]+)?$/,Qs=/^application\/x-www-form-urlencoded(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/,Xs=(n,e)=>async(t,r)=>{let s={};const a=t.req.header("Content-Type");switch(n){case"json":if(!a||!Ys.test(a))break;try{s=await t.req.json()}catch{const o="Malformed JSON in request body";throw new Bn(400,{message:o})}break;case"form":{if(!a||!(Js.test(a)||Qs.test(a)))break;let o;if(t.req.bodyCache.formData)o=await t.req.bodyCache.formData;else try{const u=await t.req.arrayBuffer();o=await zs(u,a),t.req.bodyCache.formData=o}catch(u){let l="Malformed FormData request.";throw l+=u instanceof Error?` ${u.message}`:` ${String(u)}`,new Bn(400,{message:l})}const c={};o.forEach((u,l)=>{l.endsWith("[]")?(c[l]??(c[l]=[])).push(u):Array.isArray(c[l])?c[l].push(u):l in c?c[l]=[c[l],u]:c[l]=u}),s=c;break}case"query":s=Object.fromEntries(Object.entries(t.req.queries()).map(([o,c])=>c.length===1?[o,c[0]]:[o,c]));break;case"param":s=t.req.param();break;case"header":s=t.req.header();break;case"cookie":s=Gs(t);break}const i=await e(s,t);if(i instanceof Response)return i;t.req.addValidatedData(n,i),await r()};const tt=(n,e,t)=>Xs(n,async(r,s)=>{const a=await e.safeParseAsync(r);if(t){const i=await t({data:r,...a,target:n},s);if(i){if(i instanceof Response)return i;if("response"in i)return i.response}}return a.success?a.data:s.json(a,400)});var ea=async(n,e=Object.create(null))=>{const{all:t=!1,dot:r=!1}=e,a=(n instanceof gr?n.raw.headers:n.headers).get("Content-Type");return a!=null&&a.startsWith("multipart/form-data")||a!=null&&a.startsWith("application/x-www-form-urlencoded")?ta(n,{all:t,dot:r}):{}};async function ta(n,e){const t=await n.formData();return t?na(t,e):{}}function na(n,e){const t=Object.create(null);return n.forEach((r,s)=>{e.all||s.endsWith("[]")?ra(t,s,r):t[s]=r}),e.dot&&Object.entries(t).forEach(([r,s])=>{r.includes(".")&&(sa(t,r,s),delete t[r])}),t}var ra=(n,e,t)=>{n[e]!==void 0?Array.isArray(n[e])?n[e].push(t):n[e]=[n[e],t]:n[e]=t},sa=(n,e,t)=>{let r=n;const s=e.split(".");s.forEach((a,i)=>{i===s.length-1?r[a]=t:((!r[a]||typeof r[a]!="object"||Array.isArray(r[a])||r[a]instanceof File)&&(r[a]=Object.create(null)),r=r[a])})},gr=(os=class{constructor(n,e="/",t=[[]]){y(this,"raw");X(this,mt);X(this,ge);y(this,"routeIndex",0);y(this,"path");y(this,"bodyCache",{});y(this,"cachedBody",n=>{const{bodyCache:e,raw:t}=this,r=e[n];if(r)return r;const s=Object.keys(e)[0];return s?e[s].then(a=>(s==="json"&&(a=JSON.stringify(a)),new Response(a)[n]())):e[n]=t[n]()});this.raw=n,this.path=e,M(this,ge,t),M(this,mt,{})}param(n){return n?this.getDecodedParam(n):this.getAllDecodedParams()}getDecodedParam(n){const e=m(this,ge)[0][this.routeIndex][1][n],t=this.getParamValue(e);return t?/\%/.test(t)?bn(t):t:void 0}getAllDecodedParams(){const n={},e=Object.keys(m(this,ge)[0][this.routeIndex][1]);for(const t of e){const r=this.getParamValue(m(this,ge)[0][this.routeIndex][1][t]);r&&typeof r=="string"&&(n[t]=/\%/.test(r)?bn(r):r)}return n}getParamValue(n){return m(this,ge)[1]?m(this,ge)[1][n]:n}query(n){return Bs(this.url,n)}queries(n){return Hs(this.url,n)}header(n){if(n)return this.raw.headers.get(n.toLowerCase())??void 0;const e={};return this.raw.headers.forEach((t,r)=>{e[r]=t}),e}async parseBody(n){var e;return(e=this.bodyCache).parsedBody??(e.parsedBody=await ea(this,n))}json(){return this.cachedBody("json")}text(){return this.cachedBody("text")}arrayBuffer(){return this.cachedBody("arrayBuffer")}blob(){return this.cachedBody("blob")}formData(){return this.cachedBody("formData")}addValidatedData(n,e){m(this,mt)[n]=e}valid(n){return m(this,mt)[n]}get url(){return this.raw.url}get method(){return this.raw.method}get matchedRoutes(){return m(this,ge)[0].map(([[,n]])=>n)}get routePath(){return m(this,ge)[0].map(([[,n]])=>n)[this.routeIndex].path}},mt=new WeakMap,ge=new WeakMap,os),aa={Stringify:1,BeforeStream:2,Stream:3},_r=async(n,e,t,r,s)=>{typeof n=="object"&&!(n instanceof String)&&(n instanceof Promise||(n=n.toString()),n instanceof Promise&&(n=await n));const a=n.callbacks;return a!=null&&a.length?(s?s[0]+=n:s=[n],Promise.all(a.map(o=>o({phase:e,buffer:s,context:r}))).then(o=>Promise.all(o.filter(Boolean).map(c=>_r(c,e,!1,r,s))).then(()=>s[0]))):Promise.resolve(n)},ia="text/plain; charset=UTF-8",Hn=(n,e={})=>(Object.entries(e).forEach(([t,r])=>n.set(t,r)),n),wn=(ds=class{constructor(n,e){X(this,un);X(this,ln);y(this,"env",{});X(this,Re);y(this,"finalized",!1);y(this,"error");X(this,Je,200);X(this,Ce);X(this,F);X(this,G);X(this,Te);X(this,Ze,!0);X(this,pn);X(this,gt);X(this,_t);X(this,hn);X(this,fn);y(this,"render",(...n)=>(m(this,gt)??M(this,gt,e=>this.html(e)),m(this,gt).call(this,...n)));y(this,"setLayout",n=>M(this,pn,n));y(this,"getLayout",()=>m(this,pn));y(this,"setRenderer",n=>{M(this,gt,n)});y(this,"header",(n,e,t)=>{if(e===void 0){m(this,F)?m(this,F).delete(n):m(this,G)&&delete m(this,G)[n.toLocaleLowerCase()],this.finalized&&this.res.headers.delete(n);return}t!=null&&t.append?(m(this,F)||(M(this,Ze,!1),M(this,F,new Headers(m(this,G))),M(this,G,{})),m(this,F).append(n,e)):m(this,F)?m(this,F).set(n,e):(m(this,G)??M(this,G,{}),m(this,G)[n.toLowerCase()]=e),this.finalized&&(t!=null&&t.append?this.res.headers.append(n,e):this.res.headers.set(n,e))});y(this,"status",n=>{M(this,Ze,!1),M(this,Je,n)});y(this,"set",(n,e)=>{m(this,Re)??M(this,Re,new Map),m(this,Re).set(n,e)});y(this,"get",n=>m(this,Re)?m(this,Re).get(n):void 0);y(this,"newResponse",(n,e,t)=>{if(m(this,Ze)&&!t&&!e&&m(this,Je)===200)return new Response(n,{headers:m(this,G)});if(e&&typeof e!="number"){const s=new Headers(e.headers);m(this,F)&&m(this,F).forEach((i,o)=>{o==="set-cookie"?s.append(o,i):s.set(o,i)});const a=Hn(s,m(this,G));return new Response(n,{headers:a,status:e.status??m(this,Je)})}const r=typeof e=="number"?e:m(this,Je);m(this,G)??M(this,G,{}),m(this,F)??M(this,F,new Headers),Hn(m(this,F),m(this,G)),m(this,Te)&&(m(this,Te).headers.forEach((s,a)=>{var i,o;a==="set-cookie"?(i=m(this,F))==null||i.append(a,s):(o=m(this,F))==null||o.set(a,s)}),Hn(m(this,F),m(this,G))),t??(t={});for(const[s,a]of Object.entries(t))if(typeof a=="string")m(this,F).set(s,a);else{m(this,F).delete(s);for(const i of a)m(this,F).append(s,i)}return new Response(n,{status:r,headers:m(this,F)})});y(this,"body",(n,e,t)=>typeof e=="number"?this.newResponse(n,e,t):this.newResponse(n,e));y(this,"text",(n,e,t)=>{if(!m(this,G)){if(m(this,Ze)&&!t&&!e)return new Response(n);M(this,G,{})}return m(this,G)["content-type"]=ia,typeof e=="number"?this.newResponse(n,e,t):this.newResponse(n,e)});y(this,"json",(n,e,t)=>{const r=JSON.stringify(n);return m(this,G)??M(this,G,{}),m(this,G)["content-type"]="application/json; charset=UTF-8",typeof e=="number"?this.newResponse(r,e,t):this.newResponse(r,e)});y(this,"html",(n,e,t)=>(m(this,G)??M(this,G,{}),m(this,G)["content-type"]="text/html; charset=UTF-8",typeof n=="object"?_r(n,aa.Stringify,!1,{}).then(r=>typeof e=="number"?this.newResponse(r,e,t):this.newResponse(r,e)):typeof e=="number"?this.newResponse(n,e,t):this.newResponse(n,e)));y(this,"redirect",(n,e)=>(m(this,F)??M(this,F,new Headers),m(this,F).set("Location",n),this.newResponse(null,e??302)));y(this,"notFound",()=>(m(this,_t)??M(this,_t,()=>new Response),m(this,_t).call(this,this)));M(this,un,n),e&&(M(this,Ce,e.executionCtx),this.env=e.env,M(this,_t,e.notFoundHandler),M(this,fn,e.path),M(this,hn,e.matchResult))}get req(){return m(this,ln)??M(this,ln,new gr(m(this,un),m(this,fn),m(this,hn))),m(this,ln)}get event(){if(m(this,Ce)&&"respondWith"in m(this,Ce))return m(this,Ce);throw Error("This context has no FetchEvent")}get executionCtx(){if(m(this,Ce))return m(this,Ce);throw Error("This context has no ExecutionContext")}get res(){return M(this,Ze,!1),m(this,Te)||M(this,Te,new Response("404 Not Found",{status:404}))}set res(n){if(M(this,Ze,!1),m(this,Te)&&n)try{for(const[e,t]of m(this,Te).headers.entries())if(e!=="content-type")if(e==="set-cookie"){const r=m(this,Te).headers.getSetCookie();n.headers.delete("set-cookie");for(const s of r)n.headers.append("set-cookie",s)}else n.headers.set(e,t)}catch(e){if(e instanceof TypeError&&e.message.includes("immutable")){this.res=new Response(n.body,{headers:n.headers,status:n.status});return}else throw e}M(this,Te,n),this.finalized=!0}get var(){return m(this,Re)?Object.fromEntries(m(this,Re)):{}}},un=new WeakMap,ln=new WeakMap,Re=new WeakMap,Je=new WeakMap,Ce=new WeakMap,F=new WeakMap,G=new WeakMap,Te=new WeakMap,Ze=new WeakMap,pn=new WeakMap,gt=new WeakMap,_t=new WeakMap,hn=new WeakMap,fn=new WeakMap,ds),yr=(n,e,t)=>(r,s)=>{let a=-1;return i(0);async function i(o){if(o<=a)throw new Error("next() called multiple times");a=o;let c,u=!1,l;if(n[o]?(l=n[o][0][0],r instanceof wn&&(r.req.routeIndex=o)):l=o===n.length&&s||void 0,!l)r instanceof wn&&r.finalized===!1&&t&&(c=await t(r));else try{c=await l(r,()=>i(o+1))}catch(f){if(f instanceof Error&&r instanceof wn&&e)r.error=f,c=await e(f,r),u=!0;else throw f}return c&&(r.finalized===!1||u)&&(r.res=c),r}},z="ALL",oa="all",da=["get","post","put","delete","options","patch"],vr="Can not add a route since the matcher is already built.",br=class extends Error{},ca=Symbol("composedHandler"),ua=n=>n.text("404 Not Found",404),wr=(n,e)=>"getResponse"in n?n.getResponse():(console.error(n),e.text("Internal Server Error",500)),kr=(cs=class{constructor(e={}){y(this,"get");y(this,"post");y(this,"put");y(this,"delete");y(this,"options");y(this,"patch");y(this,"all");y(this,"on");y(this,"use");y(this,"router");y(this,"getPath");y(this,"_basePath","/");X(this,_e,"/");y(this,"routes",[]);y(this,"notFoundHandler",ua);y(this,"errorHandler",wr);y(this,"onError",e=>(this.errorHandler=e,this));y(this,"notFound",e=>(this.notFoundHandler=e,this));y(this,"fetch",(e,...t)=>this.dispatch(e,t[1],t[0],e.method));y(this,"request",(e,t,r,s)=>{if(e instanceof Request)return t!==void 0&&(e=new Request(e,t)),this.fetch(e,r,s);e=e.toString();const a=/^https?:\/\//.test(e)?e:`http://localhost${Ie("/",e)}`,i=new Request(a,t);return this.fetch(i,r,s)});y(this,"fire",()=>{addEventListener("fetch",e=>{e.respondWith(this.dispatch(e.request,e,void 0,e.request.method))})});[...da,oa].forEach(s=>{this[s]=(a,...i)=>(typeof a=="string"?M(this,_e,a):this.addRoute(s,m(this,_e),a),i.forEach(o=>{typeof o!="string"&&this.addRoute(s,m(this,_e),o)}),this)}),this.on=(s,a,...i)=>{for(const o of[a].flat()){M(this,_e,o);for(const c of[s].flat())i.map(u=>{this.addRoute(c.toUpperCase(),m(this,_e),u)})}return this},this.use=(s,...a)=>(typeof s=="string"?M(this,_e,s):(M(this,_e,"*"),a.unshift(s)),a.forEach(i=>{this.addRoute(z,m(this,_e),i)}),this);const r=e.strict??!0;delete e.strict,Object.assign(this,e),this.getPath=r?e.getPath??hr:qs}clone(){const e=new kr({router:this.router,getPath:this.getPath});return e.routes=this.routes,e}route(e,t){const r=this.basePath(e);return t.routes.map(s=>{let a;t.errorHandler===wr?a=s.handler:(a=async(i,o)=>(await yr([],t.errorHandler)(i,()=>s.handler(i,o))).res,a[ca]=s.handler),r.addRoute(s.method,s.path,a)}),this}basePath(e){const t=this.clone();return t._basePath=Ie(this._basePath,e),t}mount(e,t,r){let s,a;r&&(typeof r=="function"?a=r:(a=r.optionHandler,s=r.replaceRequest));const i=a?c=>{const u=a(c);return Array.isArray(u)?u:[u]}:c=>{let u;try{u=c.executionCtx}catch{}return[c.env,u]};s||(s=(()=>{const c=Ie(this._basePath,e),u=c==="/"?0:c.length;return l=>{const f=new URL(l.url);return f.pathname=f.pathname.slice(u)||"/",new Request(f,l)}})());const o=async(c,u)=>{const l=await t(s(c.req.raw),...i(c));if(l)return l;await u()};return this.addRoute(z,Ie(e,"*"),o),this}addRoute(e,t,r){e=e.toUpperCase(),t=Ie(this._basePath,t);const s={path:t,method:e,handler:r};this.router.add(e,t,[r,s]),this.routes.push(s)}matchRoute(e,t){return this.router.match(e,t)}handleError(e,t){if(e instanceof Error)return this.errorHandler(e,t);throw e}dispatch(e,t,r,s){if(s==="HEAD")return(async()=>new Response(null,await this.dispatch(e,t,r,"GET")))();const a=this.getPath(e,{env:r}),i=this.matchRoute(s,a),o=new wn(e,{path:a,matchResult:i,env:r,executionCtx:t,notFoundHandler:this.notFoundHandler});if(i[0].length===1){let u;try{u=i[0][0][0][0](o,async()=>{o.res=await this.notFoundHandler(o)})}catch(l){return this.handleError(l,o)}return u instanceof Promise?u.then(l=>l||(o.finalized?o.res:this.notFoundHandler(o))).catch(l=>this.handleError(l,o)):u??this.notFoundHandler(o)}const c=yr(i[0],this.errorHandler,this.notFoundHandler);return(async()=>{try{const u=await c(o);if(!u.finalized)throw new Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return u.res}catch(u){return this.handleError(u,o)}})()}},_e=new WeakMap,cs),kn="[^/]+",xt=".*",Ot="(?:|/.*)",Tt=Symbol(),la=new Set(".\\+*[^]$()");function pa(n,e){return n.length===1?e.length===1?n<e?-1:1:-1:e.length===1||n===xt||n===Ot?1:e===xt||e===Ot?-1:n===kn?1:e===kn?-1:n.length===e.length?n<e?-1:1:e.length-n.length}var Wn=class{constructor(){y(this,"index");y(this,"varIndex");y(this,"children",Object.create(null))}insert(e,t,r,s,a){if(e.length===0){if(this.index!==void 0)throw Tt;if(a)return;this.index=t;return}const[i,...o]=e,c=i==="*"?o.length===0?["","",xt]:["","",kn]:i==="/*"?["","",Ot]:i.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);let u;if(c){const l=c[1];let f=c[2]||kn;if(l&&c[2]&&(f=f.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(f)))throw Tt;if(u=this.children[f],!u){if(Object.keys(this.children).some(E=>E!==xt&&E!==Ot))throw Tt;if(a)return;u=this.children[f]=new Wn,l!==""&&(u.varIndex=s.varIndex++)}!a&&l!==""&&r.push([l,u.varIndex])}else if(u=this.children[i],!u){if(Object.keys(this.children).some(l=>l.length>1&&l!==xt&&l!==Ot))throw Tt;if(a)return;u=this.children[i]=new Wn}u.insert(o,t,r,s,a)}buildRegExpStr(){const t=Object.keys(this.children).sort(pa).map(r=>{const s=this.children[r];return(typeof s.varIndex=="number"?`(${r})@${s.varIndex}`:la.has(r)?`\\${r}`:r)+s.buildRegExpStr()});return typeof this.index=="number"&&t.unshift(`#${this.index}`),t.length===0?"":t.length===1?t[0]:"(?:"+t.join("|")+")"}},ha=class{constructor(){y(this,"context",{varIndex:0});y(this,"root",new Wn)}insert(n,e,t){const r=[],s=[];for(let i=0;;){let o=!1;if(n=n.replace(/\{[^}]+\}/g,c=>{const u=`@\\${i}`;return s[i]=[u,c],i++,o=!0,u}),!o)break}const a=n.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let i=s.length-1;i>=0;i--){const[o]=s[i];for(let c=a.length-1;c>=0;c--)if(a[c].indexOf(o)!==-1){a[c]=a[c].replace(o,s[i][1]);break}}return this.root.insert(a,e,r,this.context,t),r}buildRegExp(){let n=this.root.buildRegExpStr();if(n==="")return[/^$/,[],[]];let e=0;const t=[],r=[];return n=n.replace(/#(\d+)|@(\d+)|\.\*\$/g,(s,a,i)=>typeof a<"u"?(t[++e]=Number(a),"$()"):(typeof i<"u"&&(r[Number(i)]=++e),"")),[new RegExp(`^${n}`),t,r]}},xr=[],fa=[/^$/,[],Object.create(null)],xn=Object.create(null);function Or(n){return xn[n]??(xn[n]=new RegExp(n==="*"?"":`^${n.replace(/\/\*$|([.\\+*[^\]$()])/g,(e,t)=>t?`\\${t}`:"(?:|/.*)")}$`))}function ma(){xn=Object.create(null)}function ga(n){var u;const e=new ha,t=[];if(n.length===0)return fa;const r=n.map(l=>[!/\*|\/:/.test(l[0]),...l]).sort(([l,f],[E,$])=>l?1:E?-1:f.length-$.length),s=Object.create(null);for(let l=0,f=-1,E=r.length;l<E;l++){const[$,N,A]=r[l];$?s[N]=[A.map(([Y])=>[Y,Object.create(null)]),xr]:f++;let K;try{K=e.insert(N,f,$)}catch(Y){throw Y===Tt?new br(N):Y}$||(t[f]=A.map(([Y,ne])=>{const U=Object.create(null);for(ne-=1;ne>=0;ne--){const[ce,Q]=K[ne];U[ce]=Q}return[Y,U]}))}const[a,i,o]=e.buildRegExp();for(let l=0,f=t.length;l<f;l++)for(let E=0,$=t[l].length;E<$;E++){const N=(u=t[l][E])==null?void 0:u[1];if(!N)continue;const A=Object.keys(N);for(let K=0,Y=A.length;K<Y;K++)N[A[K]]=o[N[A[K]]]}const c=[];for(const l in i)c[l]=t[i[l]];return[a,c,s]}function nt(n,e){if(n){for(const t of Object.keys(n).sort((r,s)=>s.length-r.length))if(Or(t).test(e))return[...n[t]]}}var _a=class{constructor(){y(this,"name","RegExpRouter");y(this,"middleware");y(this,"routes");this.middleware={[z]:Object.create(null)},this.routes={[z]:Object.create(null)}}add(n,e,t){var o;const{middleware:r,routes:s}=this;if(!r||!s)throw new Error(vr);r[n]||[r,s].forEach(c=>{c[n]=Object.create(null),Object.keys(c[z]).forEach(u=>{c[n][u]=[...c[z][u]]})}),e==="/*"&&(e="*");const a=(e.match(/\/:/g)||[]).length;if(/\*$/.test(e)){const c=Or(e);n===z?Object.keys(r).forEach(u=>{var l;(l=r[u])[e]||(l[e]=nt(r[u],e)||nt(r[z],e)||[])}):(o=r[n])[e]||(o[e]=nt(r[n],e)||nt(r[z],e)||[]),Object.keys(r).forEach(u=>{(n===z||n===u)&&Object.keys(r[u]).forEach(l=>{c.test(l)&&r[u][l].push([t,a])})}),Object.keys(s).forEach(u=>{(n===z||n===u)&&Object.keys(s[u]).forEach(l=>c.test(l)&&s[u][l].push([t,a]))});return}const i=fr(e)||[e];for(let c=0,u=i.length;c<u;c++){const l=i[c];Object.keys(s).forEach(f=>{var E;(n===z||n===f)&&((E=s[f])[l]||(E[l]=[...nt(r[f],l)||nt(r[z],l)||[]]),s[f][l].push([t,a-u+c+1]))})}}match(n,e){ma();const t=this.buildAllMatchers();return this.match=(r,s)=>{const a=t[r]||t[z],i=a[2][s];if(i)return i;const o=s.match(a[0]);if(!o)return[[],xr];const c=o.indexOf("",1);return[a[1][c],o]},this.match(n,e)}buildAllMatchers(){const n=Object.create(null);return[...Object.keys(this.routes),...Object.keys(this.middleware)].forEach(e=>{n[e]||(n[e]=this.buildMatcher(e))}),this.middleware=this.routes=void 0,n}buildMatcher(n){const e=[];let t=n===z;return[this.middleware,this.routes].forEach(r=>{const s=r[n]?Object.keys(r[n]).map(a=>[a,r[n][a]]):[];s.length!==0?(t||(t=!0),e.push(...s)):n!==z&&e.push(...Object.keys(r[z]).map(a=>[a,r[z][a]]))}),t?ga(e):null}},ya=class{constructor(n){y(this,"name","SmartRouter");y(this,"routers",[]);y(this,"routes",[]);Object.assign(this,n)}add(n,e,t){if(!this.routes)throw new Error(vr);this.routes.push([n,e,t])}match(n,e){if(!this.routes)throw new Error("Fatal error");const{routers:t,routes:r}=this,s=t.length;let a=0,i;for(;a<s;a++){const o=t[a];try{for(let c=0,u=r.length;c<u;c++)o.add(...r[c]);i=o.match(n,e)}catch(c){if(c instanceof br)continue;throw c}this.match=o.match.bind(o),this.routers=[o],this.routes=void 0;break}if(a===s)throw new Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,i}get activeRouter(){if(this.routes||this.routers.length!==1)throw new Error("No active router has been determined yet.");return this.routers[0]}},Tr=class{constructor(n,e,t){y(this,"methods");y(this,"children");y(this,"patterns");y(this,"order",0);y(this,"params",Object.create(null));if(this.children=t||Object.create(null),this.methods=[],n&&e){const r=Object.create(null);r[n]={handler:e,possibleKeys:[],score:0},this.methods=[r]}this.patterns=[]}insert(n,e,t){this.order=++this.order;let r=this;const s=$s(e),a=[];for(let c=0,u=s.length;c<u;c++){const l=s[c];if(Object.keys(r.children).includes(l)){r=r.children[l];const E=pr(l);E&&a.push(E[1]);continue}r.children[l]=new Tr;const f=pr(l);f&&(r.patterns.push(f),a.push(f[1])),r=r.children[l]}r.methods.length||(r.methods=[]);const i=Object.create(null),o={handler:t,possibleKeys:a.filter((c,u,l)=>l.indexOf(c)===u),score:this.order};return i[n]=o,r.methods.push(i),r}gHSets(n,e,t,r){const s=[];for(let a=0,i=n.methods.length;a<i;a++){const o=n.methods[a],c=o[e]||o[z],u=Object.create(null);if(c!==void 0){c.params=Object.create(null);for(let l=0,f=c.possibleKeys.length;l<f;l++){const E=c.possibleKeys[l],$=u[c.score];c.params[E]=r[E]&&!$?r[E]:t[E]??r[E],u[c.score]=!0}s.push(c)}}return s}search(n,e){const t=[];this.params=Object.create(null);let s=[this];const a=lr(e);for(let o=0,c=a.length;o<c;o++){const u=a[o],l=o===c-1,f=[];for(let E=0,$=s.length;E<$;E++){const N=s[E],A=N.children[u];A&&(A.params=N.params,l?(A.children["*"]&&t.push(...this.gHSets(A.children["*"],n,N.params,Object.create(null))),t.push(...this.gHSets(A,n,N.params,Object.create(null)))):f.push(A));for(let K=0,Y=N.patterns.length;K<Y;K++){const ne=N.patterns[K],U={...N.params};if(ne==="*"){const ye=N.children["*"];ye&&(t.push(...this.gHSets(ye,n,N.params,Object.create(null))),f.push(ye));continue}if(u==="")continue;const[ce,Q,re]=ne,B=N.children[ce],se=a.slice(o).join("/");if(re instanceof RegExp&&re.test(se)){U[Q]=se,t.push(...this.gHSets(B,n,N.params,U));continue}(re===!0||re.test(u))&&typeof ce=="string"&&(U[Q]=u,l?(t.push(...this.gHSets(B,n,U,N.params)),B.children["*"]&&t.push(...this.gHSets(B.children["*"],n,U,N.params))):(B.params=U,f.push(B)))}}s=f}return[t.sort((o,c)=>o.score-c.score).map(({handler:o,params:c})=>[o,c])]}},va=class{constructor(){y(this,"name","TrieRouter");y(this,"node");this.node=new Tr}add(n,e,t){const r=fr(e);if(r){for(let s=0,a=r.length;s<a;s++)this.node.insert(n,r[s],t);return}this.node.insert(n,e,t)}match(n,e){return this.node.search(n,e)}},ba=class extends kr{constructor(n={}){super(n),this.router=n.router??new ya({routers:[new _a,new va]})}},P;(function(n){n.assertEqual=s=>s;function e(s){}n.assertIs=e;function t(s){throw new Error}n.assertNever=t,n.arrayToEnum=s=>{const a={};for(const i of s)a[i]=i;return a},n.getValidEnumValues=s=>{const a=n.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),i={};for(const o of a)i[o]=s[o];return n.objectValues(i)},n.objectValues=s=>n.objectKeys(s).map(function(a){return s[a]}),n.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const a=[];for(const i in s)Object.prototype.hasOwnProperty.call(s,i)&&a.push(i);return a},n.find=(s,a)=>{for(const i of s)if(a(i))return i},n.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function r(s,a=" | "){return s.map(i=>typeof i=="string"?`'${i}'`:i).join(a)}n.joinValues=r,n.jsonStringifyReplacer=(s,a)=>typeof a=="bigint"?a.toString():a})(P||(P={}));var Fn;(function(n){n.mergeShapes=(e,t)=>({...e,...t})})(Fn||(Fn={}));const v=P.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ne=n=>{switch(typeof n){case"undefined":return v.undefined;case"string":return v.string;case"number":return isNaN(n)?v.nan:v.number;case"boolean":return v.boolean;case"function":return v.function;case"bigint":return v.bigint;case"symbol":return v.symbol;case"object":return Array.isArray(n)?v.array:n===null?v.null:n.then&&typeof n.then=="function"&&n.catch&&typeof n.catch=="function"?v.promise:typeof Map<"u"&&n instanceof Map?v.map:typeof Set<"u"&&n instanceof Set?v.set:typeof Date<"u"&&n instanceof Date?v.date:v.object;default:return v.unknown}},p=P.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),wa=n=>JSON.stringify(n,null,2).replace(/"([^"]+)":/g,"$1:");class oe extends Error{constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(a){return a.message},r={_errors:[]},s=a=>{for(const i of a.issues)if(i.code==="invalid_union")i.unionErrors.map(s);else if(i.code==="invalid_return_type")s(i.returnTypeError);else if(i.code==="invalid_arguments")s(i.argumentsError);else if(i.path.length===0)r._errors.push(t(i));else{let o=r,c=0;for(;c<i.path.length;){const u=i.path[c];c===i.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(t(i))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),r}static assert(e){if(!(e instanceof oe))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,P.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},r=[];for(const s of this.issues)s.path.length>0?(t[s.path[0]]=t[s.path[0]]||[],t[s.path[0]].push(e(s))):r.push(e(s));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}oe.create=n=>new oe(n);const rt=(n,e)=>{let t;switch(n.code){case p.invalid_type:n.received===v.undefined?t="Required":t=`Expected ${n.expected}, received ${n.received}`;break;case p.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(n.expected,P.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:t=`Unrecognized key(s) in object: ${P.joinValues(n.keys,", ")}`;break;case p.invalid_union:t="Invalid input";break;case p.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${P.joinValues(n.options)}`;break;case p.invalid_enum_value:t=`Invalid enum value. Expected ${P.joinValues(n.options)}, received '${n.received}'`;break;case p.invalid_arguments:t="Invalid function arguments";break;case p.invalid_return_type:t="Invalid function return type";break;case p.invalid_date:t="Invalid date";break;case p.invalid_string:typeof n.validation=="object"?"includes"in n.validation?(t=`Invalid input: must include "${n.validation.includes}"`,typeof n.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${n.validation.position}`)):"startsWith"in n.validation?t=`Invalid input: must start with "${n.validation.startsWith}"`:"endsWith"in n.validation?t=`Invalid input: must end with "${n.validation.endsWith}"`:P.assertNever(n.validation):n.validation!=="regex"?t=`Invalid ${n.validation}`:t="Invalid";break;case p.too_small:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at least":"more than"} ${n.minimum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at least":"over"} ${n.minimum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(n.minimum))}`:t="Invalid input";break;case p.too_big:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at most":"less than"} ${n.maximum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at most":"under"} ${n.maximum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="bigint"?t=`BigInt must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly":n.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(n.maximum))}`:t="Invalid input";break;case p.custom:t="Invalid input";break;case p.invalid_intersection_types:t="Intersection results could not be merged";break;case p.not_multiple_of:t=`Number must be a multiple of ${n.multipleOf}`;break;case p.not_finite:t="Number must be finite";break;default:t=e.defaultError,P.assertNever(n)}return{message:t}};let jr=rt;function ka(n){jr=n}function On(){return jr}const Tn=n=>{const{data:e,path:t,errorMaps:r,issueData:s}=n,a=[...t,...s.path||[]],i={...s,path:a};if(s.message!==void 0)return{...s,path:a,message:s.message};let o="";const c=r.filter(u=>!!u).slice().reverse();for(const u of c)o=u(i,{data:e,defaultError:o}).message;return{...s,path:a,message:o}},xa=[];function g(n,e){const t=On(),r=Tn({issueData:e,data:n.data,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,t,t===rt?void 0:rt].filter(s=>!!s)});n.common.issues.push(r)}class ee{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const s of t){if(s.status==="aborted")return j;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const s of t){const a=await s.key,i=await s.value;r.push({key:a,value:i})}return ee.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const s of t){const{key:a,value:i}=s;if(a.status==="aborted"||i.status==="aborted")return j;a.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),a.value!=="__proto__"&&(typeof i.value<"u"||s.alwaysSet)&&(r[a.value]=i.value)}return{status:e.value,value:r}}}const j=Object.freeze({status:"aborted"}),st=n=>({status:"dirty",value:n}),ae=n=>({status:"valid",value:n}),Kn=n=>n.status==="aborted",Gn=n=>n.status==="dirty",jt=n=>n.status==="valid",Et=n=>typeof Promise<"u"&&n instanceof Promise;function jn(n,e,t,r){if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(n)}function Er(n,e,t,r,s){if(typeof e=="function"?n!==e||!s:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(n,t),t}typeof SuppressedError=="function"&&SuppressedError;var k;(function(n){n.errToObj=e=>typeof e=="string"?{message:e}:e||{},n.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(k||(k={}));var St,Rt;class ve{constructor(e,t,r,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Sr=(n,e)=>{if(jt(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new oe(n.common.issues);return this._error=t,this._error}}};function R(n){if(!n)return{};const{errorMap:e,invalid_type_error:t,required_error:r,description:s}=n;if(e&&(t||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(i,o)=>{var c,u;const{message:l}=n;return i.code==="invalid_enum_value"?{message:l??o.defaultError}:typeof o.data>"u"?{message:(c=l??r)!==null&&c!==void 0?c:o.defaultError}:i.code!=="invalid_type"?{message:o.defaultError}:{message:(u=l??t)!==null&&u!==void 0?u:o.defaultError}},description:s}}class Z{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Ne(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Ne(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ee,ctx:{common:e.parent.common,data:e.data,parsedType:Ne(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(Et(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const s={common:{issues:[],async:(r=t==null?void 0:t.async)!==null&&r!==void 0?r:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ne(e)},a=this._parseSync({data:e,path:s.path,parent:s});return Sr(s,a)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ne(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(Et(s)?s:Promise.resolve(s));return Sr(r,a)}refine(e,t){const r=s=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(s):t;return this._refinement((s,a)=>{const i=e(s),o=()=>a.addIssue({code:p.custom,...r(s)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(o(),!1)):i?!0:(o(),!1)})}refinement(e,t){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof t=="function"?t(r,s):t),!1))}_refinement(e){return new pe({schema:this,typeName:O.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return we.create(this,this._def)}nullable(){return Me.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return le.create(this,this._def)}promise(){return dt.create(this,this._def)}or(e){return Nt.create([this,e],this._def)}and(e){return At.create(this,e,this._def)}transform(e){return new pe({...R(this._def),schema:this,typeName:O.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new Lt({...R(this._def),innerType:this,defaultValue:t,typeName:O.ZodDefault})}brand(){return new Jn({typeName:O.ZodBranded,type:this,...R(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new Ut({...R(this._def),innerType:this,catchValue:t,typeName:O.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Vt.create(this,e)}readonly(){return qt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const Oa=/^c[^\s-]{8,}$/i,Ta=/^[0-9a-z]+$/,ja=/^[0-9A-HJKMNP-TV-Z]{26}$/,Ea=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Sa=/^[a-z0-9_-]{21}$/i,Ra=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ca=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Za="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let zn;const Ia=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Na=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,Aa=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Rr="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Pa=new RegExp(`^${Rr}$`);function Cr(n){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Da(n){return new RegExp(`^${Cr(n)}$`)}function Zr(n){let e=`${Rr}T${Cr(n)}`;const t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Ma(n,e){return!!((e==="v4"||!e)&&Ia.test(n)||(e==="v6"||!e)&&Na.test(n))}class ue extends Z{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==v.string){const a=this._getOrReturnCtx(e);return g(a,{code:p.invalid_type,expected:v.string,received:a.parsedType}),j}const r=new ee;let s;for(const a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")e.data.length>a.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){const i=e.data.length>a.value,o=e.data.length<a.value;(i||o)&&(s=this._getOrReturnCtx(e,s),i?g(s,{code:p.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):o&&g(s,{code:p.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")Ca.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"email",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")zn||(zn=new RegExp(Za,"u")),zn.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"emoji",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")Ea.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"uuid",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")Sa.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"nanoid",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")Oa.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"cuid",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")Ta.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"cuid2",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")ja.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"ulid",code:p.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),g(s,{validation:"url",code:p.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"regex",code:p.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?Zr(a).test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?Pa.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?Da(a).test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{code:p.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?Ra.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"duration",code:p.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?Ma(e.data,a.version)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"ip",code:p.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?Aa.test(e.data)||(s=this._getOrReturnCtx(e,s),g(s,{validation:"base64",code:p.invalid_string,message:a.message}),r.dirty()):P.assertNever(a);return{status:r.value,value:e.data}}_regex(e,t,r){return this.refinement(s=>e.test(s),{validation:t,code:p.invalid_string,...k.errToObj(r)})}_addCheck(e){return new ue({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...k.errToObj(e)})}url(e){return this._addCheck({kind:"url",...k.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...k.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...k.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...k.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...k.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...k.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...k.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...k.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...k.errToObj(e)})}datetime(e){var t,r;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(r=e==null?void 0:e.local)!==null&&r!==void 0?r:!1,...k.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...k.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...k.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...k.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...k.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...k.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...k.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...k.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...k.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...k.errToObj(t)})}nonempty(e){return this.min(1,k.errToObj(e))}trim(){return new ue({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ue({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ue({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}ue.create=n=>{var e;return new ue({checks:[],typeName:O.ZodString,coerce:(e=n==null?void 0:n.coerce)!==null&&e!==void 0?e:!1,...R(n)})};function $a(n,e){const t=(n.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=t>r?t:r,a=parseInt(n.toFixed(s).replace(".","")),i=parseInt(e.toFixed(s).replace(".",""));return a%i/Math.pow(10,s)}class Ae extends Z{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==v.number){const a=this._getOrReturnCtx(e);return g(a,{code:p.invalid_type,expected:v.number,received:a.parsedType}),j}let r;const s=new ee;for(const a of this._def.checks)a.kind==="int"?P.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),g(r,{code:p.invalid_type,expected:"integer",received:"float",message:a.message}),s.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="multipleOf"?$a(e.data,a.value)!==0&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),g(r,{code:p.not_finite,message:a.message}),s.dirty()):P.assertNever(a);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,k.toString(t))}gt(e,t){return this.setLimit("min",e,!1,k.toString(t))}lte(e,t){return this.setLimit("max",e,!0,k.toString(t))}lt(e,t){return this.setLimit("max",e,!1,k.toString(t))}setLimit(e,t,r,s){return new Ae({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:k.toString(s)}]})}_addCheck(e){return new Ae({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:k.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:k.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:k.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:k.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:k.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:k.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:k.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:k.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:k.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&P.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(t===null||r.value>t)&&(t=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Ae.create=n=>new Ae({checks:[],typeName:O.ZodNumber,coerce:(n==null?void 0:n.coerce)||!1,...R(n)});class Pe extends Z{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==v.bigint){const a=this._getOrReturnCtx(e);return g(a,{code:p.invalid_type,expected:v.bigint,received:a.parsedType}),j}let r;const s=new ee;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),g(r,{code:p.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):P.assertNever(a);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,k.toString(t))}gt(e,t){return this.setLimit("min",e,!1,k.toString(t))}lte(e,t){return this.setLimit("max",e,!0,k.toString(t))}lt(e,t){return this.setLimit("max",e,!1,k.toString(t))}setLimit(e,t,r,s){return new Pe({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:k.toString(s)}]})}_addCheck(e){return new Pe({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:k.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:k.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:k.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:k.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:k.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}Pe.create=n=>{var e;return new Pe({checks:[],typeName:O.ZodBigInt,coerce:(e=n==null?void 0:n.coerce)!==null&&e!==void 0?e:!1,...R(n)})};class Ct extends Z{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==v.boolean){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.boolean,received:r.parsedType}),j}return ae(e.data)}}Ct.create=n=>new Ct({typeName:O.ZodBoolean,coerce:(n==null?void 0:n.coerce)||!1,...R(n)});class He extends Z{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==v.date){const a=this._getOrReturnCtx(e);return g(a,{code:p.invalid_type,expected:v.date,received:a.parsedType}),j}if(isNaN(e.data.getTime())){const a=this._getOrReturnCtx(e);return g(a,{code:p.invalid_date}),j}const r=new ee;let s;for(const a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(s=this._getOrReturnCtx(e,s),g(s,{code:p.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):P.assertNever(a);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new He({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:k.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:k.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}He.create=n=>new He({checks:[],coerce:(n==null?void 0:n.coerce)||!1,typeName:O.ZodDate,...R(n)});class En extends Z{_parse(e){if(this._getType(e)!==v.symbol){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.symbol,received:r.parsedType}),j}return ae(e.data)}}En.create=n=>new En({typeName:O.ZodSymbol,...R(n)});class Zt extends Z{_parse(e){if(this._getType(e)!==v.undefined){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.undefined,received:r.parsedType}),j}return ae(e.data)}}Zt.create=n=>new Zt({typeName:O.ZodUndefined,...R(n)});class It extends Z{_parse(e){if(this._getType(e)!==v.null){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.null,received:r.parsedType}),j}return ae(e.data)}}It.create=n=>new It({typeName:O.ZodNull,...R(n)});class at extends Z{constructor(){super(...arguments),this._any=!0}_parse(e){return ae(e.data)}}at.create=n=>new at({typeName:O.ZodAny,...R(n)});class We extends Z{constructor(){super(...arguments),this._unknown=!0}_parse(e){return ae(e.data)}}We.create=n=>new We({typeName:O.ZodUnknown,...R(n)});class je extends Z{_parse(e){const t=this._getOrReturnCtx(e);return g(t,{code:p.invalid_type,expected:v.never,received:t.parsedType}),j}}je.create=n=>new je({typeName:O.ZodNever,...R(n)});class Sn extends Z{_parse(e){if(this._getType(e)!==v.undefined){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.void,received:r.parsedType}),j}return ae(e.data)}}Sn.create=n=>new Sn({typeName:O.ZodVoid,...R(n)});class le extends Z{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),s=this._def;if(t.parsedType!==v.array)return g(t,{code:p.invalid_type,expected:v.array,received:t.parsedType}),j;if(s.exactLength!==null){const i=t.data.length>s.exactLength.value,o=t.data.length<s.exactLength.value;(i||o)&&(g(t,{code:i?p.too_big:p.too_small,minimum:o?s.exactLength.value:void 0,maximum:i?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&t.data.length<s.minLength.value&&(g(t,{code:p.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&t.data.length>s.maxLength.value&&(g(t,{code:p.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map((i,o)=>s.type._parseAsync(new ve(t,i,t.path,o)))).then(i=>ee.mergeArray(r,i));const a=[...t.data].map((i,o)=>s.type._parseSync(new ve(t,i,t.path,o)));return ee.mergeArray(r,a)}get element(){return this._def.type}min(e,t){return new le({...this._def,minLength:{value:e,message:k.toString(t)}})}max(e,t){return new le({...this._def,maxLength:{value:e,message:k.toString(t)}})}length(e,t){return new le({...this._def,exactLength:{value:e,message:k.toString(t)}})}nonempty(e){return this.min(1,e)}}le.create=(n,e)=>new le({type:n,minLength:null,maxLength:null,exactLength:null,typeName:O.ZodArray,...R(e)});function it(n){if(n instanceof H){const e={};for(const t in n.shape){const r=n.shape[t];e[t]=we.create(it(r))}return new H({...n._def,shape:()=>e})}else return n instanceof le?new le({...n._def,type:it(n.element)}):n instanceof we?we.create(it(n.unwrap())):n instanceof Me?Me.create(it(n.unwrap())):n instanceof be?be.create(n.items.map(e=>it(e))):n}class H extends Z{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=P.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==v.object){const u=this._getOrReturnCtx(e);return g(u,{code:p.invalid_type,expected:v.object,received:u.parsedType}),j}const{status:r,ctx:s}=this._processInputParams(e),{shape:a,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof je&&this._def.unknownKeys==="strip"))for(const u in s.data)i.includes(u)||o.push(u);const c=[];for(const u of i){const l=a[u],f=s.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new ve(s,f,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof je){const u=this._def.unknownKeys;if(u==="passthrough")for(const l of o)c.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(u==="strict")o.length>0&&(g(s,{code:p.unrecognized_keys,keys:o}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const l of o){const f=s.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new ve(s,f,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const u=[];for(const l of c){const f=await l.key,E=await l.value;u.push({key:f,value:E,alwaysSet:l.alwaysSet})}return u}).then(u=>ee.mergeObjectSync(r,u)):ee.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(e){return k.errToObj,new H({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,r)=>{var s,a,i,o;const c=(i=(a=(s=this._def).errorMap)===null||a===void 0?void 0:a.call(s,t,r).message)!==null&&i!==void 0?i:r.defaultError;return t.code==="unrecognized_keys"?{message:(o=k.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new H({...this._def,unknownKeys:"strip"})}passthrough(){return new H({...this._def,unknownKeys:"passthrough"})}extend(e){return new H({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new H({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:O.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new H({...this._def,catchall:e})}pick(e){const t={};return P.objectKeys(e).forEach(r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])}),new H({...this._def,shape:()=>t})}omit(e){const t={};return P.objectKeys(this.shape).forEach(r=>{e[r]||(t[r]=this.shape[r])}),new H({...this._def,shape:()=>t})}deepPartial(){return it(this)}partial(e){const t={};return P.objectKeys(this.shape).forEach(r=>{const s=this.shape[r];e&&!e[r]?t[r]=s:t[r]=s.optional()}),new H({...this._def,shape:()=>t})}required(e){const t={};return P.objectKeys(this.shape).forEach(r=>{if(e&&!e[r])t[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof we;)a=a._def.innerType;t[r]=a}}),new H({...this._def,shape:()=>t})}keyof(){return Ir(P.objectKeys(this.shape))}}H.create=(n,e)=>new H({shape:()=>n,unknownKeys:"strip",catchall:je.create(),typeName:O.ZodObject,...R(e)}),H.strictCreate=(n,e)=>new H({shape:()=>n,unknownKeys:"strict",catchall:je.create(),typeName:O.ZodObject,...R(e)}),H.lazycreate=(n,e)=>new H({shape:n,unknownKeys:"strip",catchall:je.create(),typeName:O.ZodObject,...R(e)});class Nt extends Z{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;function s(a){for(const o of a)if(o.result.status==="valid")return o.result;for(const o of a)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const i=a.map(o=>new oe(o.ctx.common.issues));return g(t,{code:p.invalid_union,unionErrors:i}),j}if(t.common.async)return Promise.all(r.map(async a=>{const i={...t,common:{...t.common,issues:[]},parent:null};return{result:await a._parseAsync({data:t.data,path:t.path,parent:i}),ctx:i}})).then(s);{let a;const i=[];for(const c of r){const u={...t,common:{...t.common,issues:[]},parent:null},l=c._parseSync({data:t.data,path:t.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!a&&(a={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(a)return t.common.issues.push(...a.ctx.common.issues),a.result;const o=i.map(c=>new oe(c));return g(t,{code:p.invalid_union,unionErrors:o}),j}}get options(){return this._def.options}}Nt.create=(n,e)=>new Nt({options:n,typeName:O.ZodUnion,...R(e)});const Ee=n=>n instanceof Dt?Ee(n.schema):n instanceof pe?Ee(n.innerType()):n instanceof Mt?[n.value]:n instanceof De?n.options:n instanceof $t?P.objectValues(n.enum):n instanceof Lt?Ee(n._def.innerType):n instanceof Zt?[void 0]:n instanceof It?[null]:n instanceof we?[void 0,...Ee(n.unwrap())]:n instanceof Me?[null,...Ee(n.unwrap())]:n instanceof Jn||n instanceof qt?Ee(n.unwrap()):n instanceof Ut?Ee(n._def.innerType):[];class Rn extends Z{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==v.object)return g(t,{code:p.invalid_type,expected:v.object,received:t.parsedType}),j;const r=this.discriminator,s=t.data[r],a=this.optionsMap.get(s);return a?t.common.async?a._parseAsync({data:t.data,path:t.path,parent:t}):a._parseSync({data:t.data,path:t.path,parent:t}):(g(t,{code:p.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),j)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const s=new Map;for(const a of t){const i=Ee(a.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of i){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,a)}}return new Rn({typeName:O.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,...R(r)})}}function Yn(n,e){const t=Ne(n),r=Ne(e);if(n===e)return{valid:!0,data:n};if(t===v.object&&r===v.object){const s=P.objectKeys(e),a=P.objectKeys(n).filter(o=>s.indexOf(o)!==-1),i={...n,...e};for(const o of a){const c=Yn(n[o],e[o]);if(!c.valid)return{valid:!1};i[o]=c.data}return{valid:!0,data:i}}else if(t===v.array&&r===v.array){if(n.length!==e.length)return{valid:!1};const s=[];for(let a=0;a<n.length;a++){const i=n[a],o=e[a],c=Yn(i,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return t===v.date&&r===v.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}class At extends Z{_parse(e){const{status:t,ctx:r}=this._processInputParams(e),s=(a,i)=>{if(Kn(a)||Kn(i))return j;const o=Yn(a.value,i.value);return o.valid?((Gn(a)||Gn(i))&&t.dirty(),{status:t.value,value:o.data}):(g(r,{code:p.invalid_intersection_types}),j)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,i])=>s(a,i)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}At.create=(n,e,t)=>new At({left:n,right:e,typeName:O.ZodIntersection,...R(t)});class be extends Z{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.array)return g(r,{code:p.invalid_type,expected:v.array,received:r.parsedType}),j;if(r.data.length<this._def.items.length)return g(r,{code:p.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),j;!this._def.rest&&r.data.length>this._def.items.length&&(g(r,{code:p.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const a=[...r.data].map((i,o)=>{const c=this._def.items[o]||this._def.rest;return c?c._parse(new ve(r,i,r.path,o)):null}).filter(i=>!!i);return r.common.async?Promise.all(a).then(i=>ee.mergeArray(t,i)):ee.mergeArray(t,a)}get items(){return this._def.items}rest(e){return new be({...this._def,rest:e})}}be.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new be({items:n,typeName:O.ZodTuple,rest:null,...R(e)})};class Pt extends Z{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.object)return g(r,{code:p.invalid_type,expected:v.object,received:r.parsedType}),j;const s=[],a=this._def.keyType,i=this._def.valueType;for(const o in r.data)s.push({key:a._parse(new ve(r,o,r.path,o)),value:i._parse(new ve(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?ee.mergeObjectAsync(t,s):ee.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,r){return t instanceof Z?new Pt({keyType:e,valueType:t,typeName:O.ZodRecord,...R(r)}):new Pt({keyType:ue.create(),valueType:e,typeName:O.ZodRecord,...R(t)})}}class Cn extends Z{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.map)return g(r,{code:p.invalid_type,expected:v.map,received:r.parsedType}),j;const s=this._def.keyType,a=this._def.valueType,i=[...r.data.entries()].map(([o,c],u)=>({key:s._parse(new ve(r,o,r.path,[u,"key"])),value:a._parse(new ve(r,c,r.path,[u,"value"]))}));if(r.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of i){const u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return j;(u.status==="dirty"||l.status==="dirty")&&t.dirty(),o.set(u.value,l.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of i){const u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return j;(u.status==="dirty"||l.status==="dirty")&&t.dirty(),o.set(u.value,l.value)}return{status:t.value,value:o}}}}Cn.create=(n,e,t)=>new Cn({valueType:e,keyType:n,typeName:O.ZodMap,...R(t)});class Fe extends Z{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==v.set)return g(r,{code:p.invalid_type,expected:v.set,received:r.parsedType}),j;const s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(g(r,{code:p.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(g(r,{code:p.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());const a=this._def.valueType;function i(c){const u=new Set;for(const l of c){if(l.status==="aborted")return j;l.status==="dirty"&&t.dirty(),u.add(l.value)}return{status:t.value,value:u}}const o=[...r.data.values()].map((c,u)=>a._parse(new ve(r,c,r.path,u)));return r.common.async?Promise.all(o).then(c=>i(c)):i(o)}min(e,t){return new Fe({...this._def,minSize:{value:e,message:k.toString(t)}})}max(e,t){return new Fe({...this._def,maxSize:{value:e,message:k.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Fe.create=(n,e)=>new Fe({valueType:n,minSize:null,maxSize:null,typeName:O.ZodSet,...R(e)});class ot extends Z{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==v.function)return g(t,{code:p.invalid_type,expected:v.function,received:t.parsedType}),j;function r(o,c){return Tn({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,On(),rt].filter(u=>!!u),issueData:{code:p.invalid_arguments,argumentsError:c}})}function s(o,c){return Tn({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,On(),rt].filter(u=>!!u),issueData:{code:p.invalid_return_type,returnTypeError:c}})}const a={errorMap:t.common.contextualErrorMap},i=t.data;if(this._def.returns instanceof dt){const o=this;return ae(async function(...c){const u=new oe([]),l=await o._def.args.parseAsync(c,a).catch($=>{throw u.addIssue(r(c,$)),u}),f=await Reflect.apply(i,this,l);return await o._def.returns._def.type.parseAsync(f,a).catch($=>{throw u.addIssue(s(f,$)),u})})}else{const o=this;return ae(function(...c){const u=o._def.args.safeParse(c,a);if(!u.success)throw new oe([r(c,u.error)]);const l=Reflect.apply(i,this,u.data),f=o._def.returns.safeParse(l,a);if(!f.success)throw new oe([s(l,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ot({...this._def,args:be.create(e).rest(We.create())})}returns(e){return new ot({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new ot({args:e||be.create([]).rest(We.create()),returns:t||We.create(),typeName:O.ZodFunction,...R(r)})}}class Dt extends Z{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Dt.create=(n,e)=>new Dt({getter:n,typeName:O.ZodLazy,...R(e)});class Mt extends Z{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return g(t,{received:t.data,code:p.invalid_literal,expected:this._def.value}),j}return{status:"valid",value:e.data}}get value(){return this._def.value}}Mt.create=(n,e)=>new Mt({value:n,typeName:O.ZodLiteral,...R(e)});function Ir(n,e){return new De({values:n,typeName:O.ZodEnum,...R(e)})}class De extends Z{constructor(){super(...arguments),St.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),r=this._def.values;return g(t,{expected:P.joinValues(r),received:t.parsedType,code:p.invalid_type}),j}if(jn(this,St)||Er(this,St,new Set(this._def.values)),!jn(this,St).has(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return g(t,{received:t.data,code:p.invalid_enum_value,options:r}),j}return ae(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return De.create(e,{...this._def,...t})}exclude(e,t=this._def){return De.create(this.options.filter(r=>!e.includes(r)),{...this._def,...t})}}St=new WeakMap,De.create=Ir;class $t extends Z{constructor(){super(...arguments),Rt.set(this,void 0)}_parse(e){const t=P.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==v.string&&r.parsedType!==v.number){const s=P.objectValues(t);return g(r,{expected:P.joinValues(s),received:r.parsedType,code:p.invalid_type}),j}if(jn(this,Rt)||Er(this,Rt,new Set(P.getValidEnumValues(this._def.values))),!jn(this,Rt).has(e.data)){const s=P.objectValues(t);return g(r,{received:r.data,code:p.invalid_enum_value,options:s}),j}return ae(e.data)}get enum(){return this._def.values}}Rt=new WeakMap,$t.create=(n,e)=>new $t({values:n,typeName:O.ZodNativeEnum,...R(e)});class dt extends Z{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==v.promise&&t.common.async===!1)return g(t,{code:p.invalid_type,expected:v.promise,received:t.parsedType}),j;const r=t.parsedType===v.promise?t.data:Promise.resolve(t.data);return ae(r.then(s=>this._def.type.parseAsync(s,{path:t.path,errorMap:t.common.contextualErrorMap})))}}dt.create=(n,e)=>new dt({type:n,typeName:O.ZodPromise,...R(e)});class pe extends Z{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===O.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),s=this._def.effect||null,a={addIssue:i=>{g(r,i),i.fatal?t.abort():t.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),s.type==="preprocess"){const i=s.transform(r.data,a);if(r.common.async)return Promise.resolve(i).then(async o=>{if(t.value==="aborted")return j;const c=await this._def.schema._parseAsync({data:o,path:r.path,parent:r});return c.status==="aborted"?j:c.status==="dirty"||t.value==="dirty"?st(c.value):c});{if(t.value==="aborted")return j;const o=this._def.schema._parseSync({data:i,path:r.path,parent:r});return o.status==="aborted"?j:o.status==="dirty"||t.value==="dirty"?st(o.value):o}}if(s.type==="refinement"){const i=o=>{const c=s.refinement(o,a);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(r.common.async===!1){const o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?j:(o.status==="dirty"&&t.dirty(),i(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>o.status==="aborted"?j:(o.status==="dirty"&&t.dirty(),i(o.value).then(()=>({status:t.value,value:o.value}))))}if(s.type==="transform")if(r.common.async===!1){const i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!jt(i))return i;const o=s.transform(i.value,a);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>jt(i)?Promise.resolve(s.transform(i.value,a)).then(o=>({status:t.value,value:o})):i);P.assertNever(s)}}pe.create=(n,e,t)=>new pe({schema:n,typeName:O.ZodEffects,effect:e,...R(t)}),pe.createWithPreprocess=(n,e,t)=>new pe({schema:e,effect:{type:"preprocess",transform:n},typeName:O.ZodEffects,...R(t)});class we extends Z{_parse(e){return this._getType(e)===v.undefined?ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}we.create=(n,e)=>new we({innerType:n,typeName:O.ZodOptional,...R(e)});class Me extends Z{_parse(e){return this._getType(e)===v.null?ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Me.create=(n,e)=>new Me({innerType:n,typeName:O.ZodNullable,...R(e)});class Lt extends Z{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===v.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Lt.create=(n,e)=>new Lt({innerType:n,typeName:O.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...R(e)});class Ut extends Z{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Et(s)?s.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new oe(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Ut.create=(n,e)=>new Ut({innerType:n,typeName:O.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...R(e)});class Zn extends Z{_parse(e){if(this._getType(e)!==v.nan){const r=this._getOrReturnCtx(e);return g(r,{code:p.invalid_type,expected:v.nan,received:r.parsedType}),j}return{status:"valid",value:e.data}}}Zn.create=n=>new Zn({typeName:O.ZodNaN,...R(n)});const La=Symbol("zod_brand");class Jn extends Z{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class Vt extends Z{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?j:a.status==="dirty"?(t.dirty(),st(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{const s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?j:s.status==="dirty"?(t.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,t){return new Vt({in:e,out:t,typeName:O.ZodPipeline})}}class qt extends Z{_parse(e){const t=this._def.innerType._parse(e),r=s=>(jt(s)&&(s.value=Object.freeze(s.value)),s);return Et(t)?t.then(s=>r(s)):r(t)}unwrap(){return this._def.innerType}}qt.create=(n,e)=>new qt({innerType:n,typeName:O.ZodReadonly,...R(e)});function Nr(n,e={},t){return n?at.create().superRefine((r,s)=>{var a,i;if(!n(r)){const o=typeof e=="function"?e(r):typeof e=="string"?{message:e}:e,c=(i=(a=o.fatal)!==null&&a!==void 0?a:t)!==null&&i!==void 0?i:!0,u=typeof o=="string"?{message:o}:o;s.addIssue({code:"custom",...u,fatal:c})}}):at.create()}const Ua={object:H.lazycreate};var O;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(O||(O={}));const Va=(n,e={message:`Input not instance of ${n.name}`})=>Nr(t=>t instanceof n,e),Ar=ue.create,Pr=Ae.create,qa=Zn.create,Ba=Pe.create,Dr=Ct.create,Ha=He.create,Wa=En.create,Fa=Zt.create,Ka=It.create,Ga=at.create,za=We.create,Ya=je.create,Ja=Sn.create,Qa=le.create,Xa=H.create,ei=H.strictCreate,ti=Nt.create,ni=Rn.create,ri=At.create,si=be.create,ai=Pt.create,ii=Cn.create,oi=Fe.create,di=ot.create,ci=Dt.create,ui=Mt.create,li=De.create,pi=$t.create,hi=dt.create,Mr=pe.create,fi=we.create,mi=Me.create,gi=pe.createWithPreprocess,_i=Vt.create;var J=Object.freeze({__proto__:null,defaultErrorMap:rt,setErrorMap:ka,getErrorMap:On,makeIssue:Tn,EMPTY_PATH:xa,addIssueToContext:g,ParseStatus:ee,INVALID:j,DIRTY:st,OK:ae,isAborted:Kn,isDirty:Gn,isValid:jt,isAsync:Et,get util(){return P},get objectUtil(){return Fn},ZodParsedType:v,getParsedType:Ne,ZodType:Z,datetimeRegex:Zr,ZodString:ue,ZodNumber:Ae,ZodBigInt:Pe,ZodBoolean:Ct,ZodDate:He,ZodSymbol:En,ZodUndefined:Zt,ZodNull:It,ZodAny:at,ZodUnknown:We,ZodNever:je,ZodVoid:Sn,ZodArray:le,ZodObject:H,ZodUnion:Nt,ZodDiscriminatedUnion:Rn,ZodIntersection:At,ZodTuple:be,ZodRecord:Pt,ZodMap:Cn,ZodSet:Fe,ZodFunction:ot,ZodLazy:Dt,ZodLiteral:Mt,ZodEnum:De,ZodNativeEnum:$t,ZodPromise:dt,ZodEffects:pe,ZodTransformer:pe,ZodOptional:we,ZodNullable:Me,ZodDefault:Lt,ZodCatch:Ut,ZodNaN:Zn,BRAND:La,ZodBranded:Jn,ZodPipeline:Vt,ZodReadonly:qt,custom:Nr,Schema:Z,ZodSchema:Z,late:Ua,get ZodFirstPartyTypeKind(){return O},coerce:{string:n=>ue.create({...n,coerce:!0}),number:n=>Ae.create({...n,coerce:!0}),boolean:n=>Ct.create({...n,coerce:!0}),bigint:n=>Pe.create({...n,coerce:!0}),date:n=>He.create({...n,coerce:!0})},any:Ga,array:Qa,bigint:Ba,boolean:Dr,date:Ha,discriminatedUnion:ni,effect:Mr,enum:li,function:di,instanceof:Va,intersection:ri,lazy:ci,literal:ui,map:ii,nan:qa,nativeEnum:pi,never:Ya,null:Ka,nullable:mi,number:Pr,object:Xa,oboolean:()=>Dr().optional(),onumber:()=>Pr().optional(),optional:fi,ostring:()=>Ar().optional(),pipeline:_i,preprocess:gi,promise:hi,record:ai,set:oi,strictObject:ei,string:Ar,symbol:Wa,transformer:Mr,tuple:si,undefined:Fa,union:ti,unknown:za,void:Ja,NEVER:j,ZodIssueCode:p,quotelessJson:wa,ZodError:oe}),Bt=class or extends ba{constructor(t){super(t);y(this,"openAPIRegistry");y(this,"defaultHook");y(this,"openapi",({middleware:t,...r},s,a=this.defaultHook)=>{var u,l,f,E,$,N,A,K,Y,ne;this.openAPIRegistry.registerPath(r);const i=[];if((u=r.request)!=null&&u.query){const U=tt("query",r.request.query,a);i.push(U)}if((l=r.request)!=null&&l.params){const U=tt("param",r.request.params,a);i.push(U)}if((f=r.request)!=null&&f.headers){const U=tt("header",r.request.headers,a);i.push(U)}if((E=r.request)!=null&&E.cookies){const U=tt("cookie",r.request.cookies,a);i.push(U)}const o=(N=($=r.request)==null?void 0:$.body)==null?void 0:N.content;if(o)for(const U of Object.keys(o)){if(!o[U])continue;const ce=o[U].schema;if(ce instanceof Z){if(Lr(U)){const Q=tt("json",ce,a);if((K=(A=r.request)==null?void 0:A.body)!=null&&K.required)i.push(Q);else{const re=async(B,se)=>{if(B.req.header("content-type")&&Lr(B.req.header("content-type")))return await Q(B,se);B.req.addValidatedData("json",{}),await se()};i.push(re)}}if(Ur(U)){const Q=tt("form",ce,a);if((ne=(Y=r.request)==null?void 0:Y.body)!=null&&ne.required)i.push(Q);else{const re=async(B,se)=>{if(B.req.header("content-type")&&Ur(B.req.header("content-type")))return await Q(B,se);B.req.addValidatedData("form",{}),await se()};i.push(re)}}}}const c=t?Array.isArray(t)?t:[t]:[];return this.on([r.method],r.path.replaceAll(/\/{(.+?)}/g,"/:$1"),...c,...i,s),this});y(this,"getOpenAPIDocument",t=>{const s=new As(this.openAPIRegistry.definitions).generateDocument(t);return this._basePath?$r(s,this._basePath):s});y(this,"getOpenAPI31Document",t=>{const s=new Ms(this.openAPIRegistry.definitions).generateDocument(t);return this._basePath?$r(s,this._basePath):s});y(this,"doc",(t,r)=>this.get(t,s=>{const a=typeof r=="function"?r(s):r;try{const i=this.getOpenAPIDocument(a);return s.json(i)}catch(i){return s.json(i,500)}}));y(this,"doc31",(t,r)=>this.get(t,s=>{const a=typeof r=="function"?r(s):r;try{const i=this.getOpenAPI31Document(a);return s.json(i)}catch(i){return s.json(i,500)}}));this.openAPIRegistry=new gs,this.defaultHook=t==null?void 0:t.defaultHook}route(t,r){const s=t.replaceAll(/:([^\/]+)/g,"{$1}");return super.route(t,r),r instanceof or?(r.openAPIRegistry.definitions.forEach(a=>{switch(a.type){case"component":return this.openAPIRegistry.registerComponent(a.componentType,a.name,a.component);case"route":return this.openAPIRegistry.registerPath({...a.route,path:Ie(s,a.route.path)});case"webhook":return this.openAPIRegistry.registerWebhook({...a.webhook,path:Ie(s,a.webhook.path)});case"schema":return this.openAPIRegistry.register(a.schema._def.openapi._internal.refId,a.schema);case"parameter":return this.openAPIRegistry.registerParameter(a.schema._def.openapi._internal.refId,a.schema);default:{const i=a;throw new Error(`Unknown registry type: ${i}`)}}}),this):this}basePath(t){return new or({...super.basePath(t),defaultHook:this.defaultHook})}},Ke=n=>{const e={...n,getRoutingPath(){return n.path.replaceAll(/\/{(.+?)}/g,"/:$1")}};return Object.defineProperty(e,"getRoutingPath",{enumerable:!1})};ps(J);function $r(n,e){const t={};return Object.keys(n.paths).forEach(r=>{t[Ie(e,r)]=n.paths[r]}),{...n,paths:t}}function Lr(n){return/^application\/([a-z-\.]+\+)?json/.test(n)}function Ur(n){return n.startsWith("multipart/form-data")||n.startsWith("application/x-www-form-urlencoded")}function yi(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(n);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(n,r[s])&&(t[r[s]]=n[r[s]]);return t}function vi(n,e){var t;return((t=n==null?void 0:n._def)===null||t===void 0?void 0:t.typeName)===e}function Ht(n,e){const t=n.ZodType.prototype[e];n.ZodType.prototype[e]=function(...r){const s=t.apply(this,r);return s._def.openapi=this._def.openapi,s}}function bi(n){if(typeof n.ZodType.prototype.openapi<"u")return;n.ZodType.prototype.openapi=function(s,a){var i,o,c,u,l,f;const E=typeof s=="string"?a:s,$=E??{},{param:N}=$,A=yi($,["param"]),K=Object.assign(Object.assign({},(i=this._def.openapi)===null||i===void 0?void 0:i._internal),typeof s=="string"?{refId:s}:void 0),Y=Object.assign(Object.assign(Object.assign({},(o=this._def.openapi)===null||o===void 0?void 0:o.metadata),A),!((u=(c=this._def.openapi)===null||c===void 0?void 0:c.metadata)===null||u===void 0)&&u.param||N?{param:Object.assign(Object.assign({},(f=(l=this._def.openapi)===null||l===void 0?void 0:l.metadata)===null||f===void 0?void 0:f.param),N)}:void 0),ne=new this.constructor(Object.assign(Object.assign({},this._def),{openapi:Object.assign(Object.assign({},Object.keys(K).length>0?{_internal:K}:void 0),Object.keys(Y).length>0?{metadata:Y}:void 0)}));if(vi(this,"ZodObject")){const U=this.extend;ne.extend=function(...ce){var Q,re,B,se,ye,Qe;const Xe=U.apply(this,ce);return Xe._def.openapi={_internal:{extendedFrom:!((re=(Q=this._def.openapi)===null||Q===void 0?void 0:Q._internal)===null||re===void 0)&&re.refId?{refId:(se=(B=this._def.openapi)===null||B===void 0?void 0:B._internal)===null||se===void 0?void 0:se.refId,schema:this}:(ye=this._def.openapi)===null||ye===void 0?void 0:ye._internal.extendedFrom},metadata:(Qe=Xe._def.openapi)===null||Qe===void 0?void 0:Qe.metadata},Xe}}return ne},Ht(n,"optional"),Ht(n,"nullable"),Ht(n,"default"),Ht(n,"transform"),Ht(n,"refine");const e=n.ZodObject.prototype.deepPartial;n.ZodObject.prototype.deepPartial=function(){const s=this._def.shape(),a=e.apply(this),i=a._def.shape();return Object.entries(i).forEach(([o,c])=>{var u,l;c._def.openapi=(l=(u=s[o])===null||u===void 0?void 0:u._def)===null||l===void 0?void 0:l.openapi}),a._def.openapi=void 0,a};const t=n.ZodObject.prototype.pick;n.ZodObject.prototype.pick=function(...s){const a=t.apply(this,s);return a._def.openapi=void 0,a};const r=n.ZodObject.prototype.omit;n.ZodObject.prototype.omit=function(...s){const a=r.apply(this,s);return a._def.openapi=void 0,a}}new Set(".\\+*[^]$()");var D;(function(n){n.assertEqual=s=>s;function e(s){}n.assertIs=e;function t(s){throw new Error}n.assertNever=t,n.arrayToEnum=s=>{const a={};for(const i of s)a[i]=i;return a},n.getValidEnumValues=s=>{const a=n.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),i={};for(const o of a)i[o]=s[o];return n.objectValues(i)},n.objectValues=s=>n.objectKeys(s).map(function(a){return s[a]}),n.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const a=[];for(const i in s)Object.prototype.hasOwnProperty.call(s,i)&&a.push(i);return a},n.find=(s,a)=>{for(const i of s)if(a(i))return i},n.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function r(s,a=" | "){return s.map(i=>typeof i=="string"?`'${i}'`:i).join(a)}n.joinValues=r,n.jsonStringifyReplacer=(s,a)=>typeof a=="bigint"?a.toString():a})(D||(D={}));var Qn;(function(n){n.mergeShapes=(e,t)=>({...e,...t})})(Qn||(Qn={}));const b=D.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),$e=n=>{switch(typeof n){case"undefined":return b.undefined;case"string":return b.string;case"number":return isNaN(n)?b.nan:b.number;case"boolean":return b.boolean;case"function":return b.function;case"bigint":return b.bigint;case"symbol":return b.symbol;case"object":return Array.isArray(n)?b.array:n===null?b.null:n.then&&typeof n.then=="function"&&n.catch&&typeof n.catch=="function"?b.promise:typeof Map<"u"&&n instanceof Map?b.map:typeof Set<"u"&&n instanceof Set?b.set:typeof Date<"u"&&n instanceof Date?b.date:b.object;default:return b.unknown}},h=D.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),wi=n=>JSON.stringify(n,null,2).replace(/"([^"]+)":/g,"$1:");class de extends Error{constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(a){return a.message},r={_errors:[]},s=a=>{for(const i of a.issues)if(i.code==="invalid_union")i.unionErrors.map(s);else if(i.code==="invalid_return_type")s(i.returnTypeError);else if(i.code==="invalid_arguments")s(i.argumentsError);else if(i.path.length===0)r._errors.push(t(i));else{let o=r,c=0;for(;c<i.path.length;){const u=i.path[c];c===i.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(t(i))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),r}static assert(e){if(!(e instanceof de))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,D.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},r=[];for(const s of this.issues)s.path.length>0?(t[s.path[0]]=t[s.path[0]]||[],t[s.path[0]].push(e(s))):r.push(e(s));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}de.create=n=>new de(n);const ct=(n,e)=>{let t;switch(n.code){case h.invalid_type:n.received===b.undefined?t="Required":t=`Expected ${n.expected}, received ${n.received}`;break;case h.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(n.expected,D.jsonStringifyReplacer)}`;break;case h.unrecognized_keys:t=`Unrecognized key(s) in object: ${D.joinValues(n.keys,", ")}`;break;case h.invalid_union:t="Invalid input";break;case h.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${D.joinValues(n.options)}`;break;case h.invalid_enum_value:t=`Invalid enum value. Expected ${D.joinValues(n.options)}, received '${n.received}'`;break;case h.invalid_arguments:t="Invalid function arguments";break;case h.invalid_return_type:t="Invalid function return type";break;case h.invalid_date:t="Invalid date";break;case h.invalid_string:typeof n.validation=="object"?"includes"in n.validation?(t=`Invalid input: must include "${n.validation.includes}"`,typeof n.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${n.validation.position}`)):"startsWith"in n.validation?t=`Invalid input: must start with "${n.validation.startsWith}"`:"endsWith"in n.validation?t=`Invalid input: must end with "${n.validation.endsWith}"`:D.assertNever(n.validation):n.validation!=="regex"?t=`Invalid ${n.validation}`:t="Invalid";break;case h.too_small:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at least":"more than"} ${n.minimum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at least":"over"} ${n.minimum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${n.minimum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly equal to ":n.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(n.minimum))}`:t="Invalid input";break;case h.too_big:n.type==="array"?t=`Array must contain ${n.exact?"exactly":n.inclusive?"at most":"less than"} ${n.maximum} element(s)`:n.type==="string"?t=`String must contain ${n.exact?"exactly":n.inclusive?"at most":"under"} ${n.maximum} character(s)`:n.type==="number"?t=`Number must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="bigint"?t=`BigInt must be ${n.exact?"exactly":n.inclusive?"less than or equal to":"less than"} ${n.maximum}`:n.type==="date"?t=`Date must be ${n.exact?"exactly":n.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(n.maximum))}`:t="Invalid input";break;case h.custom:t="Invalid input";break;case h.invalid_intersection_types:t="Intersection results could not be merged";break;case h.not_multiple_of:t=`Number must be a multiple of ${n.multipleOf}`;break;case h.not_finite:t="Number must be finite";break;default:t=e.defaultError,D.assertNever(n)}return{message:t}};let Vr=ct;function ki(n){Vr=n}function In(){return Vr}const Nn=n=>{const{data:e,path:t,errorMaps:r,issueData:s}=n,a=[...t,...s.path||[]],i={...s,path:a};if(s.message!==void 0)return{...s,path:a,message:s.message};let o="";const c=r.filter(u=>!!u).slice().reverse();for(const u of c)o=u(i,{data:e,defaultError:o}).message;return{...s,path:a,message:o}},xi=[];function _(n,e){const t=In(),r=Nn({issueData:e,data:n.data,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,t,t===ct?void 0:ct].filter(s=>!!s)});n.common.issues.push(r)}class te{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const s of t){if(s.status==="aborted")return S;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const s of t){const a=await s.key,i=await s.value;r.push({key:a,value:i})}return te.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const s of t){const{key:a,value:i}=s;if(a.status==="aborted"||i.status==="aborted")return S;a.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),a.value!=="__proto__"&&(typeof i.value<"u"||s.alwaysSet)&&(r[a.value]=i.value)}return{status:e.value,value:r}}}const S=Object.freeze({status:"aborted"}),An=n=>({status:"dirty",value:n}),ie=n=>({status:"valid",value:n}),Xn=n=>n.status==="aborted",er=n=>n.status==="dirty",Wt=n=>n.status==="valid",Ft=n=>typeof Promise<"u"&&n instanceof Promise;function Pn(n,e,t,r){if(typeof e=="function"?n!==e||!r:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(n)}function qr(n,e,t,r,s){if(typeof e=="function"?n!==e||!s:!e.has(n))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(n,t),t}var x;(function(n){n.errToObj=e=>typeof e=="string"?{message:e}:e||{},n.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(x||(x={}));var Kt,Gt;class ke{constructor(e,t,r,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Br=(n,e)=>{if(Wt(e))return{success:!0,data:e.value};if(!n.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new de(n.common.issues);return this._error=t,this._error}}};function C(n){if(!n)return{};const{errorMap:e,invalid_type_error:t,required_error:r,description:s}=n;if(e&&(t||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,i)=>{var o,c;const{message:u}=n;return a.code==="invalid_enum_value"?{message:u??i.defaultError}:typeof i.data>"u"?{message:(o=u??r)!==null&&o!==void 0?o:i.defaultError}:a.code!=="invalid_type"?{message:i.defaultError}:{message:(c=u??t)!==null&&c!==void 0?c:i.defaultError}},description:s}}class I{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return $e(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:$e(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new te,ctx:{common:e.parent.common,data:e.data,parsedType:$e(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(Ft(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const s={common:{issues:[],async:(r=t==null?void 0:t.async)!==null&&r!==void 0?r:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$e(e)},a=this._parseSync({data:e,path:s.path,parent:s});return Br(s,a)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$e(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(Ft(s)?s:Promise.resolve(s));return Br(r,a)}refine(e,t){const r=s=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(s):t;return this._refinement((s,a)=>{const i=e(s),o=()=>a.addIssue({code:h.custom,...r(s)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(o(),!1)):i?!0:(o(),!1)})}refinement(e,t){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof t=="function"?t(r,s):t),!1))}_refinement(e){return new me({schema:this,typeName:T.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Oe.create(this,this._def)}nullable(){return Be.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return fe.create(this,this._def)}promise(){return ht.create(this,this._def)}or(e){return Qt.create([this,e],this._def)}and(e){return Xt.create(this,e,this._def)}transform(e){return new me({...C(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new sn({...C(this._def),innerType:this,defaultValue:t,typeName:T.ZodDefault})}brand(){return new rr({typeName:T.ZodBranded,type:this,...C(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new an({...C(this._def),innerType:this,catchValue:t,typeName:T.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return on.create(this,e)}readonly(){return dn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const Oi=/^c[^\s-]{8,}$/i,Ti=/^[0-9a-z]+$/,ji=/^[0-9A-HJKMNP-TV-Z]{26}$/,Ei=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Si=/^[a-z0-9_-]{21}$/i,Ri=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ci=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Zi="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let tr;const Ii=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ni=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,Ai=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Hr="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Pi=new RegExp(`^${Hr}$`);function Wr(n){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return n.precision?e=`${e}\\.\\d{${n.precision}}`:n.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Di(n){return new RegExp(`^${Wr(n)}$`)}function Fr(n){let e=`${Hr}T${Wr(n)}`;const t=[];return t.push(n.local?"Z?":"Z"),n.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Mi(n,e){return!!((e==="v4"||!e)&&Ii.test(n)||(e==="v6"||!e)&&Ni.test(n))}class he extends I{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==b.string){const s=this._getOrReturnCtx(e);return _(s,{code:h.invalid_type,expected:b.string,received:s.parsedType}),S}const t=new te;let r;for(const s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(r=this._getOrReturnCtx(e,r),_(r,{code:h.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),t.dirty());else if(s.kind==="max")e.data.length>s.value&&(r=this._getOrReturnCtx(e,r),_(r,{code:h.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),t.dirty());else if(s.kind==="length"){const a=e.data.length>s.value,i=e.data.length<s.value;(a||i)&&(r=this._getOrReturnCtx(e,r),a?_(r,{code:h.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):i&&_(r,{code:h.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),t.dirty())}else if(s.kind==="email")Ci.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"email",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="emoji")tr||(tr=new RegExp(Zi,"u")),tr.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"emoji",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="uuid")Ei.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"uuid",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="nanoid")Si.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"nanoid",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="cuid")Oi.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"cuid",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="cuid2")Ti.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"cuid2",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="ulid")ji.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"ulid",code:h.invalid_string,message:s.message}),t.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),_(r,{validation:"url",code:h.invalid_string,message:s.message}),t.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"regex",code:h.invalid_string,message:s.message}),t.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),t.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:{startsWith:s.value},message:s.message}),t.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:{endsWith:s.value},message:s.message}),t.dirty()):s.kind==="datetime"?Fr(s).test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:"datetime",message:s.message}),t.dirty()):s.kind==="date"?Pi.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:"date",message:s.message}),t.dirty()):s.kind==="time"?Di(s).test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{code:h.invalid_string,validation:"time",message:s.message}),t.dirty()):s.kind==="duration"?Ri.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"duration",code:h.invalid_string,message:s.message}),t.dirty()):s.kind==="ip"?Mi(e.data,s.version)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"ip",code:h.invalid_string,message:s.message}),t.dirty()):s.kind==="base64"?Ai.test(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{validation:"base64",code:h.invalid_string,message:s.message}),t.dirty()):D.assertNever(s);return{status:t.value,value:e.data}}_regex(e,t,r){return this.refinement(s=>e.test(s),{validation:t,code:h.invalid_string,...x.errToObj(r)})}_addCheck(e){return new he({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...x.errToObj(e)})}url(e){return this._addCheck({kind:"url",...x.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...x.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...x.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...x.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...x.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...x.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...x.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...x.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...x.errToObj(e)})}datetime(e){var t,r;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(r=e==null?void 0:e.local)!==null&&r!==void 0?r:!1,...x.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...x.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...x.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...x.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...x.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...x.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...x.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...x.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...x.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...x.errToObj(t)})}nonempty(e){return this.min(1,x.errToObj(e))}trim(){return new he({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new he({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new he({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}he.create=n=>{var e;return new he({checks:[],typeName:T.ZodString,coerce:(e=n==null?void 0:n.coerce)!==null&&e!==void 0?e:!1,...C(n)})};function $i(n,e){const t=(n.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=t>r?t:r,a=parseInt(n.toFixed(s).replace(".","")),i=parseInt(e.toFixed(s).replace(".",""));return a%i/Math.pow(10,s)}class Le extends I{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==b.number){const s=this._getOrReturnCtx(e);return _(s,{code:h.invalid_type,expected:b.number,received:s.parsedType}),S}let t;const r=new te;for(const s of this._def.checks)s.kind==="int"?D.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),_(t,{code:h.invalid_type,expected:"integer",received:"float",message:s.message}),r.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),r.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),r.dirty()):s.kind==="multipleOf"?$i(e.data,s.value)!==0&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.not_multiple_of,multipleOf:s.value,message:s.message}),r.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),_(t,{code:h.not_finite,message:s.message}),r.dirty()):D.assertNever(s);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(e,t,r,s){return new Le({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:x.toString(s)}]})}_addCheck(e){return new Le({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:x.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:x.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&D.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(t===null||r.value>t)&&(t=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Le.create=n=>new Le({checks:[],typeName:T.ZodNumber,coerce:(n==null?void 0:n.coerce)||!1,...C(n)});class Ue extends I{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==b.bigint){const s=this._getOrReturnCtx(e);return _(s,{code:h.invalid_type,expected:b.bigint,received:s.parsedType}),S}let t;const r=new te;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),r.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),r.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),_(t,{code:h.not_multiple_of,multipleOf:s.value,message:s.message}),r.dirty()):D.assertNever(s);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(e,t,r,s){return new Ue({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:x.toString(s)}]})}_addCheck(e){return new Ue({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}Ue.create=n=>{var e;return new Ue({checks:[],typeName:T.ZodBigInt,coerce:(e=n==null?void 0:n.coerce)!==null&&e!==void 0?e:!1,...C(n)})};class zt extends I{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==b.boolean){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.boolean,received:t.parsedType}),S}return ie(e.data)}}zt.create=n=>new zt({typeName:T.ZodBoolean,coerce:(n==null?void 0:n.coerce)||!1,...C(n)});class Ge extends I{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==b.date){const s=this._getOrReturnCtx(e);return _(s,{code:h.invalid_type,expected:b.date,received:s.parsedType}),S}if(isNaN(e.data.getTime())){const s=this._getOrReturnCtx(e);return _(s,{code:h.invalid_date}),S}const t=new te;let r;for(const s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(r=this._getOrReturnCtx(e,r),_(r,{code:h.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),t.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(r=this._getOrReturnCtx(e,r),_(r,{code:h.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),t.dirty()):D.assertNever(s);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Ge({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:x.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:x.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}Ge.create=n=>new Ge({checks:[],coerce:(n==null?void 0:n.coerce)||!1,typeName:T.ZodDate,...C(n)});class Dn extends I{_parse(e){if(this._getType(e)!==b.symbol){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.symbol,received:t.parsedType}),S}return ie(e.data)}}Dn.create=n=>new Dn({typeName:T.ZodSymbol,...C(n)});class Yt extends I{_parse(e){if(this._getType(e)!==b.undefined){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.undefined,received:t.parsedType}),S}return ie(e.data)}}Yt.create=n=>new Yt({typeName:T.ZodUndefined,...C(n)});class Jt extends I{_parse(e){if(this._getType(e)!==b.null){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.null,received:t.parsedType}),S}return ie(e.data)}}Jt.create=n=>new Jt({typeName:T.ZodNull,...C(n)});class ut extends I{constructor(){super(...arguments),this._any=!0}_parse(e){return ie(e.data)}}ut.create=n=>new ut({typeName:T.ZodAny,...C(n)});class ze extends I{constructor(){super(...arguments),this._unknown=!0}_parse(e){return ie(e.data)}}ze.create=n=>new ze({typeName:T.ZodUnknown,...C(n)});class Se extends I{_parse(e){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.never,received:t.parsedType}),S}}Se.create=n=>new Se({typeName:T.ZodNever,...C(n)});class Mn extends I{_parse(e){if(this._getType(e)!==b.undefined){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.void,received:t.parsedType}),S}return ie(e.data)}}Mn.create=n=>new Mn({typeName:T.ZodVoid,...C(n)});class fe extends I{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),s=this._def;if(t.parsedType!==b.array)return _(t,{code:h.invalid_type,expected:b.array,received:t.parsedType}),S;if(s.exactLength!==null){const i=t.data.length>s.exactLength.value,o=t.data.length<s.exactLength.value;(i||o)&&(_(t,{code:i?h.too_big:h.too_small,minimum:o?s.exactLength.value:void 0,maximum:i?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&t.data.length<s.minLength.value&&(_(t,{code:h.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&t.data.length>s.maxLength.value&&(_(t,{code:h.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map((i,o)=>s.type._parseAsync(new ke(t,i,t.path,o)))).then(i=>te.mergeArray(r,i));const a=[...t.data].map((i,o)=>s.type._parseSync(new ke(t,i,t.path,o)));return te.mergeArray(r,a)}get element(){return this._def.type}min(e,t){return new fe({...this._def,minLength:{value:e,message:x.toString(t)}})}max(e,t){return new fe({...this._def,maxLength:{value:e,message:x.toString(t)}})}length(e,t){return new fe({...this._def,exactLength:{value:e,message:x.toString(t)}})}nonempty(e){return this.min(1,e)}}fe.create=(n,e)=>new fe({type:n,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...C(e)});function lt(n){if(n instanceof W){const e={};for(const t in n.shape){const r=n.shape[t];e[t]=Oe.create(lt(r))}return new W({...n._def,shape:()=>e})}else return n instanceof fe?new fe({...n._def,type:lt(n.element)}):n instanceof Oe?Oe.create(lt(n.unwrap())):n instanceof Be?Be.create(lt(n.unwrap())):n instanceof xe?xe.create(n.items.map(e=>lt(e))):n}class W extends I{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=D.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==b.object){const c=this._getOrReturnCtx(e);return _(c,{code:h.invalid_type,expected:b.object,received:c.parsedType}),S}const{status:t,ctx:r}=this._processInputParams(e),{shape:s,keys:a}=this._getCached(),i=[];if(!(this._def.catchall instanceof Se&&this._def.unknownKeys==="strip"))for(const c in r.data)a.includes(c)||i.push(c);const o=[];for(const c of a){const u=s[c],l=r.data[c];o.push({key:{status:"valid",value:c},value:u._parse(new ke(r,l,r.path,c)),alwaysSet:c in r.data})}if(this._def.catchall instanceof Se){const c=this._def.unknownKeys;if(c==="passthrough")for(const u of i)o.push({key:{status:"valid",value:u},value:{status:"valid",value:r.data[u]}});else if(c==="strict")i.length>0&&(_(r,{code:h.unrecognized_keys,keys:i}),t.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const u of i){const l=r.data[u];o.push({key:{status:"valid",value:u},value:c._parse(new ke(r,l,r.path,u)),alwaysSet:u in r.data})}}return r.common.async?Promise.resolve().then(async()=>{const c=[];for(const u of o){const l=await u.key,f=await u.value;c.push({key:l,value:f,alwaysSet:u.alwaysSet})}return c}).then(c=>te.mergeObjectSync(t,c)):te.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(e){return x.errToObj,new W({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,r)=>{var s,a,i,o;const c=(i=(a=(s=this._def).errorMap)===null||a===void 0?void 0:a.call(s,t,r).message)!==null&&i!==void 0?i:r.defaultError;return t.code==="unrecognized_keys"?{message:(o=x.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new W({...this._def,unknownKeys:"strip"})}passthrough(){return new W({...this._def,unknownKeys:"passthrough"})}extend(e){return new W({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new W({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:T.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new W({...this._def,catchall:e})}pick(e){const t={};return D.objectKeys(e).forEach(r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])}),new W({...this._def,shape:()=>t})}omit(e){const t={};return D.objectKeys(this.shape).forEach(r=>{e[r]||(t[r]=this.shape[r])}),new W({...this._def,shape:()=>t})}deepPartial(){return lt(this)}partial(e){const t={};return D.objectKeys(this.shape).forEach(r=>{const s=this.shape[r];e&&!e[r]?t[r]=s:t[r]=s.optional()}),new W({...this._def,shape:()=>t})}required(e){const t={};return D.objectKeys(this.shape).forEach(r=>{if(e&&!e[r])t[r]=this.shape[r];else{let s=this.shape[r];for(;s instanceof Oe;)s=s._def.innerType;t[r]=s}}),new W({...this._def,shape:()=>t})}keyof(){return Kr(D.objectKeys(this.shape))}}W.create=(n,e)=>new W({shape:()=>n,unknownKeys:"strip",catchall:Se.create(),typeName:T.ZodObject,...C(e)}),W.strictCreate=(n,e)=>new W({shape:()=>n,unknownKeys:"strict",catchall:Se.create(),typeName:T.ZodObject,...C(e)}),W.lazycreate=(n,e)=>new W({shape:n,unknownKeys:"strip",catchall:Se.create(),typeName:T.ZodObject,...C(e)});class Qt extends I{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;function s(a){for(const o of a)if(o.result.status==="valid")return o.result;for(const o of a)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const i=a.map(o=>new de(o.ctx.common.issues));return _(t,{code:h.invalid_union,unionErrors:i}),S}if(t.common.async)return Promise.all(r.map(async a=>{const i={...t,common:{...t.common,issues:[]},parent:null};return{result:await a._parseAsync({data:t.data,path:t.path,parent:i}),ctx:i}})).then(s);{let a;const i=[];for(const c of r){const u={...t,common:{...t.common,issues:[]},parent:null},l=c._parseSync({data:t.data,path:t.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!a&&(a={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(a)return t.common.issues.push(...a.ctx.common.issues),a.result;const o=i.map(c=>new de(c));return _(t,{code:h.invalid_union,unionErrors:o}),S}}get options(){return this._def.options}}Qt.create=(n,e)=>new Qt({options:n,typeName:T.ZodUnion,...C(e)});const Ve=n=>n instanceof tn?Ve(n.schema):n instanceof me?Ve(n.innerType()):n instanceof nn?[n.value]:n instanceof qe?n.options:n instanceof rn?D.objectValues(n.enum):n instanceof sn?Ve(n._def.innerType):n instanceof Yt?[void 0]:n instanceof Jt?[null]:n instanceof Oe?[void 0,...Ve(n.unwrap())]:n instanceof Be?[null,...Ve(n.unwrap())]:n instanceof rr||n instanceof dn?Ve(n.unwrap()):n instanceof an?Ve(n._def.innerType):[];class $n extends I{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==b.object)return _(t,{code:h.invalid_type,expected:b.object,received:t.parsedType}),S;const r=this.discriminator,s=t.data[r],a=this.optionsMap.get(s);return a?t.common.async?a._parseAsync({data:t.data,path:t.path,parent:t}):a._parseSync({data:t.data,path:t.path,parent:t}):(_(t,{code:h.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),S)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const s=new Map;for(const a of t){const i=Ve(a.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of i){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,a)}}return new $n({typeName:T.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,...C(r)})}}function nr(n,e){const t=$e(n),r=$e(e);if(n===e)return{valid:!0,data:n};if(t===b.object&&r===b.object){const s=D.objectKeys(e),a=D.objectKeys(n).filter(o=>s.indexOf(o)!==-1),i={...n,...e};for(const o of a){const c=nr(n[o],e[o]);if(!c.valid)return{valid:!1};i[o]=c.data}return{valid:!0,data:i}}else if(t===b.array&&r===b.array){if(n.length!==e.length)return{valid:!1};const s=[];for(let a=0;a<n.length;a++){const i=n[a],o=e[a],c=nr(i,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return t===b.date&&r===b.date&&+n==+e?{valid:!0,data:n}:{valid:!1}}class Xt extends I{_parse(e){const{status:t,ctx:r}=this._processInputParams(e),s=(a,i)=>{if(Xn(a)||Xn(i))return S;const o=nr(a.value,i.value);return o.valid?((er(a)||er(i))&&t.dirty(),{status:t.value,value:o.data}):(_(r,{code:h.invalid_intersection_types}),S)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,i])=>s(a,i)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Xt.create=(n,e,t)=>new Xt({left:n,right:e,typeName:T.ZodIntersection,...C(t)});class xe extends I{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==b.array)return _(r,{code:h.invalid_type,expected:b.array,received:r.parsedType}),S;if(r.data.length<this._def.items.length)return _(r,{code:h.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),S;!this._def.rest&&r.data.length>this._def.items.length&&(_(r,{code:h.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const s=[...r.data].map((a,i)=>{const o=this._def.items[i]||this._def.rest;return o?o._parse(new ke(r,a,r.path,i)):null}).filter(a=>!!a);return r.common.async?Promise.all(s).then(a=>te.mergeArray(t,a)):te.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new xe({...this._def,rest:e})}}xe.create=(n,e)=>{if(!Array.isArray(n))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new xe({items:n,typeName:T.ZodTuple,rest:null,...C(e)})};class en extends I{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==b.object)return _(r,{code:h.invalid_type,expected:b.object,received:r.parsedType}),S;const s=[],a=this._def.keyType,i=this._def.valueType;for(const o in r.data)s.push({key:a._parse(new ke(r,o,r.path,o)),value:i._parse(new ke(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?te.mergeObjectAsync(t,s):te.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,r){return t instanceof I?new en({keyType:e,valueType:t,typeName:T.ZodRecord,...C(r)}):new en({keyType:he.create(),valueType:e,typeName:T.ZodRecord,...C(t)})}}class Ln extends I{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==b.map)return _(r,{code:h.invalid_type,expected:b.map,received:r.parsedType}),S;const s=this._def.keyType,a=this._def.valueType,i=[...r.data.entries()].map(([o,c],u)=>({key:s._parse(new ke(r,o,r.path,[u,"key"])),value:a._parse(new ke(r,c,r.path,[u,"value"]))}));if(r.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of i){const u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return S;(u.status==="dirty"||l.status==="dirty")&&t.dirty(),o.set(u.value,l.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of i){const u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return S;(u.status==="dirty"||l.status==="dirty")&&t.dirty(),o.set(u.value,l.value)}return{status:t.value,value:o}}}}Ln.create=(n,e,t)=>new Ln({valueType:e,keyType:n,typeName:T.ZodMap,...C(t)});class Ye extends I{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==b.set)return _(r,{code:h.invalid_type,expected:b.set,received:r.parsedType}),S;const s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(_(r,{code:h.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(_(r,{code:h.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());const a=this._def.valueType;function i(c){const u=new Set;for(const l of c){if(l.status==="aborted")return S;l.status==="dirty"&&t.dirty(),u.add(l.value)}return{status:t.value,value:u}}const o=[...r.data.values()].map((c,u)=>a._parse(new ke(r,c,r.path,u)));return r.common.async?Promise.all(o).then(c=>i(c)):i(o)}min(e,t){return new Ye({...this._def,minSize:{value:e,message:x.toString(t)}})}max(e,t){return new Ye({...this._def,maxSize:{value:e,message:x.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Ye.create=(n,e)=>new Ye({valueType:n,minSize:null,maxSize:null,typeName:T.ZodSet,...C(e)});class pt extends I{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==b.function)return _(t,{code:h.invalid_type,expected:b.function,received:t.parsedType}),S;function r(o,c){return Nn({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,In(),ct].filter(u=>!!u),issueData:{code:h.invalid_arguments,argumentsError:c}})}function s(o,c){return Nn({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,In(),ct].filter(u=>!!u),issueData:{code:h.invalid_return_type,returnTypeError:c}})}const a={errorMap:t.common.contextualErrorMap},i=t.data;if(this._def.returns instanceof ht){const o=this;return ie(async function(...c){const u=new de([]),l=await o._def.args.parseAsync(c,a).catch(E=>{throw u.addIssue(r(c,E)),u}),f=await Reflect.apply(i,this,l);return await o._def.returns._def.type.parseAsync(f,a).catch(E=>{throw u.addIssue(s(f,E)),u})})}else{const o=this;return ie(function(...c){const u=o._def.args.safeParse(c,a);if(!u.success)throw new de([r(c,u.error)]);const l=Reflect.apply(i,this,u.data),f=o._def.returns.safeParse(l,a);if(!f.success)throw new de([s(l,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new pt({...this._def,args:xe.create(e).rest(ze.create())})}returns(e){return new pt({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new pt({args:e||xe.create([]).rest(ze.create()),returns:t||ze.create(),typeName:T.ZodFunction,...C(r)})}}class tn extends I{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}tn.create=(n,e)=>new tn({getter:n,typeName:T.ZodLazy,...C(e)});class nn extends I{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return _(t,{received:t.data,code:h.invalid_literal,expected:this._def.value}),S}return{status:"valid",value:e.data}}get value(){return this._def.value}}nn.create=(n,e)=>new nn({value:n,typeName:T.ZodLiteral,...C(e)});function Kr(n,e){return new qe({values:n,typeName:T.ZodEnum,...C(e)})}class qe extends I{constructor(){super(...arguments),Kt.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),r=this._def.values;return _(t,{expected:D.joinValues(r),received:t.parsedType,code:h.invalid_type}),S}if(Pn(this,Kt)||qr(this,Kt,new Set(this._def.values)),!Pn(this,Kt).has(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return _(t,{received:t.data,code:h.invalid_enum_value,options:r}),S}return ie(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return qe.create(e,{...this._def,...t})}exclude(e,t=this._def){return qe.create(this.options.filter(r=>!e.includes(r)),{...this._def,...t})}}Kt=new WeakMap,qe.create=Kr;class rn extends I{constructor(){super(...arguments),Gt.set(this,void 0)}_parse(e){const t=D.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==b.string&&r.parsedType!==b.number){const s=D.objectValues(t);return _(r,{expected:D.joinValues(s),received:r.parsedType,code:h.invalid_type}),S}if(Pn(this,Gt)||qr(this,Gt,new Set(D.getValidEnumValues(this._def.values))),!Pn(this,Gt).has(e.data)){const s=D.objectValues(t);return _(r,{received:r.data,code:h.invalid_enum_value,options:s}),S}return ie(e.data)}get enum(){return this._def.values}}Gt=new WeakMap,rn.create=(n,e)=>new rn({values:n,typeName:T.ZodNativeEnum,...C(e)});class ht extends I{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==b.promise&&t.common.async===!1)return _(t,{code:h.invalid_type,expected:b.promise,received:t.parsedType}),S;const r=t.parsedType===b.promise?t.data:Promise.resolve(t.data);return ie(r.then(s=>this._def.type.parseAsync(s,{path:t.path,errorMap:t.common.contextualErrorMap})))}}ht.create=(n,e)=>new ht({type:n,typeName:T.ZodPromise,...C(e)});class me extends I{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),s=this._def.effect||null,a={addIssue:i=>{_(r,i),i.fatal?t.abort():t.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),s.type==="preprocess"){const i=s.transform(r.data,a);if(r.common.async)return Promise.resolve(i).then(async o=>{if(t.value==="aborted")return S;const c=await this._def.schema._parseAsync({data:o,path:r.path,parent:r});return c.status==="aborted"?S:c.status==="dirty"||t.value==="dirty"?An(c.value):c});{if(t.value==="aborted")return S;const o=this._def.schema._parseSync({data:i,path:r.path,parent:r});return o.status==="aborted"?S:o.status==="dirty"||t.value==="dirty"?An(o.value):o}}if(s.type==="refinement"){const i=o=>{const c=s.refinement(o,a);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(r.common.async===!1){const o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?S:(o.status==="dirty"&&t.dirty(),i(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>o.status==="aborted"?S:(o.status==="dirty"&&t.dirty(),i(o.value).then(()=>({status:t.value,value:o.value}))))}if(s.type==="transform")if(r.common.async===!1){const i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Wt(i))return i;const o=s.transform(i.value,a);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>Wt(i)?Promise.resolve(s.transform(i.value,a)).then(o=>({status:t.value,value:o})):i);D.assertNever(s)}}me.create=(n,e,t)=>new me({schema:n,typeName:T.ZodEffects,effect:e,...C(t)}),me.createWithPreprocess=(n,e,t)=>new me({schema:e,effect:{type:"preprocess",transform:n},typeName:T.ZodEffects,...C(t)});class Oe extends I{_parse(e){return this._getType(e)===b.undefined?ie(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Oe.create=(n,e)=>new Oe({innerType:n,typeName:T.ZodOptional,...C(e)});class Be extends I{_parse(e){return this._getType(e)===b.null?ie(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Be.create=(n,e)=>new Be({innerType:n,typeName:T.ZodNullable,...C(e)});class sn extends I{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===b.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}sn.create=(n,e)=>new sn({innerType:n,typeName:T.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...C(e)});class an extends I{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Ft(s)?s.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new de(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new de(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}an.create=(n,e)=>new an({innerType:n,typeName:T.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...C(e)});class Un extends I{_parse(e){if(this._getType(e)!==b.nan){const t=this._getOrReturnCtx(e);return _(t,{code:h.invalid_type,expected:b.nan,received:t.parsedType}),S}return{status:"valid",value:e.data}}}Un.create=n=>new Un({typeName:T.ZodNaN,...C(n)});const Li=Symbol("zod_brand");class rr extends I{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class on extends I{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?S:s.status==="dirty"?(t.dirty(),An(s.value)):this._def.out._parseAsync({data:s.value,path:r.path,parent:r})})();{const s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?S:s.status==="dirty"?(t.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,t){return new on({in:e,out:t,typeName:T.ZodPipeline})}}class dn extends I{_parse(e){const t=this._def.innerType._parse(e),r=s=>(Wt(s)&&(s.value=Object.freeze(s.value)),s);return Ft(t)?t.then(s=>r(s)):r(t)}unwrap(){return this._def.innerType}}dn.create=(n,e)=>new dn({innerType:n,typeName:T.ZodReadonly,...C(e)});function Gr(n,e={},t){return n?ut.create().superRefine((r,s)=>{var a,i;if(!n(r)){const o=typeof e=="function"?e(r):typeof e=="string"?{message:e}:e,c=(i=(a=o.fatal)!==null&&a!==void 0?a:t)!==null&&i!==void 0?i:!0,u=typeof o=="string"?{message:o}:o;s.addIssue({code:"custom",...u,fatal:c})}}):ut.create()}const Ui={object:W.lazycreate};var T;(function(n){n.ZodString="ZodString",n.ZodNumber="ZodNumber",n.ZodNaN="ZodNaN",n.ZodBigInt="ZodBigInt",n.ZodBoolean="ZodBoolean",n.ZodDate="ZodDate",n.ZodSymbol="ZodSymbol",n.ZodUndefined="ZodUndefined",n.ZodNull="ZodNull",n.ZodAny="ZodAny",n.ZodUnknown="ZodUnknown",n.ZodNever="ZodNever",n.ZodVoid="ZodVoid",n.ZodArray="ZodArray",n.ZodObject="ZodObject",n.ZodUnion="ZodUnion",n.ZodDiscriminatedUnion="ZodDiscriminatedUnion",n.ZodIntersection="ZodIntersection",n.ZodTuple="ZodTuple",n.ZodRecord="ZodRecord",n.ZodMap="ZodMap",n.ZodSet="ZodSet",n.ZodFunction="ZodFunction",n.ZodLazy="ZodLazy",n.ZodLiteral="ZodLiteral",n.ZodEnum="ZodEnum",n.ZodEffects="ZodEffects",n.ZodNativeEnum="ZodNativeEnum",n.ZodOptional="ZodOptional",n.ZodNullable="ZodNullable",n.ZodDefault="ZodDefault",n.ZodCatch="ZodCatch",n.ZodPromise="ZodPromise",n.ZodBranded="ZodBranded",n.ZodPipeline="ZodPipeline",n.ZodReadonly="ZodReadonly"})(T||(T={}));const Vi=(n,e={message:`Input not instance of ${n.name}`})=>Gr(t=>t instanceof n,e),zr=he.create,Yr=Le.create,qi=Un.create,Bi=Ue.create,Jr=zt.create,Hi=Ge.create,Wi=Dn.create,Fi=Yt.create,Ki=Jt.create,Gi=ut.create,zi=ze.create,Yi=Se.create,Ji=Mn.create,Qi=fe.create,Xi=W.create,eo=W.strictCreate,to=Qt.create,no=$n.create,ro=Xt.create,so=xe.create,ao=en.create,io=Ln.create,oo=Ye.create,co=pt.create,uo=tn.create,lo=nn.create,po=qe.create,ho=rn.create,fo=ht.create,Qr=me.create,mo=Oe.create,go=Be.create,_o=me.createWithPreprocess,yo=on.create;var d=Object.freeze({__proto__:null,defaultErrorMap:ct,setErrorMap:ki,getErrorMap:In,makeIssue:Nn,EMPTY_PATH:xi,addIssueToContext:_,ParseStatus:te,INVALID:S,DIRTY:An,OK:ie,isAborted:Xn,isDirty:er,isValid:Wt,isAsync:Ft,get util(){return D},get objectUtil(){return Qn},ZodParsedType:b,getParsedType:$e,ZodType:I,datetimeRegex:Fr,ZodString:he,ZodNumber:Le,ZodBigInt:Ue,ZodBoolean:zt,ZodDate:Ge,ZodSymbol:Dn,ZodUndefined:Yt,ZodNull:Jt,ZodAny:ut,ZodUnknown:ze,ZodNever:Se,ZodVoid:Mn,ZodArray:fe,ZodObject:W,ZodUnion:Qt,ZodDiscriminatedUnion:$n,ZodIntersection:Xt,ZodTuple:xe,ZodRecord:en,ZodMap:Ln,ZodSet:Ye,ZodFunction:pt,ZodLazy:tn,ZodLiteral:nn,ZodEnum:qe,ZodNativeEnum:rn,ZodPromise:ht,ZodEffects:me,ZodTransformer:me,ZodOptional:Oe,ZodNullable:Be,ZodDefault:sn,ZodCatch:an,ZodNaN:Un,BRAND:Li,ZodBranded:rr,ZodPipeline:on,ZodReadonly:dn,custom:Gr,Schema:I,ZodSchema:I,late:Ui,get ZodFirstPartyTypeKind(){return T},coerce:{string:n=>he.create({...n,coerce:!0}),number:n=>Le.create({...n,coerce:!0}),boolean:n=>zt.create({...n,coerce:!0}),bigint:n=>Ue.create({...n,coerce:!0}),date:n=>Ge.create({...n,coerce:!0})},any:Gi,array:Qi,bigint:Bi,boolean:Jr,date:Hi,discriminatedUnion:no,effect:Qr,enum:po,function:co,instanceof:Vi,intersection:ro,lazy:uo,literal:lo,map:io,nan:qi,nativeEnum:ho,never:Yi,null:Ki,nullable:go,number:Yr,object:Xi,oboolean:()=>Jr().optional(),onumber:()=>Yr().optional(),optional:mo,ostring:()=>zr().optional(),pipeline:yo,preprocess:_o,promise:fo,record:ao,set:oo,strictObject:eo,string:zr,symbol:Wi,transformer:Qr,tuple:so,undefined:Fi,union:to,unknown:zi,void:Ji,NEVER:S,ZodIssueCode:h,quotelessJson:wi,ZodError:de});bi(d);const vo=d.object({start:d.number(),limit:d.number(),length:d.number()}),sr=d.object({created_at:d.string(),updated_at:d.string()}),bo=d.object({email:d.string().optional(),email_verified:d.boolean().optional(),name:d.string().optional(),username:d.string().optional(),given_name:d.string().optional(),phone_number:d.string().optional(),phone_verified:d.boolean().optional(),family_name:d.string().optional()}).catchall(d.any()),wo=d.object({connection:d.string(),user_id:d.string(),provider:d.string(),isSocial:d.boolean(),access_token:d.string().optional(),access_token_secret:d.string().optional(),refresh_token:d.string().optional(),profileData:bo.optional()}),Xr=d.object({email:d.string().optional(),username:d.string().optional(),given_name:d.string().optional(),family_name:d.string().optional(),nickname:d.string().optional(),name:d.string().optional(),picture:d.string().optional(),locale:d.string().optional(),linked_to:d.string().optional(),profileData:d.string().optional(),user_id:d.string().optional(),app_metadata:d.any().default({}).optional(),user_metadata:d.any().default({}).optional()}),ko=Xr.extend({email_verified:d.boolean().default(!1),verify_email:d.boolean().optional(),last_ip:d.string().optional(),last_login:d.string().optional(),user_id:d.string().optional(),provider:d.string().default("email"),connection:d.string().default("email")});d.object({...ko.shape,...sr.shape,user_id:d.string(),email:d.string(),is_social:d.boolean(),login_count:d.number(),identities:d.array(wo).optional()}),Xr.extend({email:d.string(),login_count:d.number(),multifactor:d.array(d.string()).optional(),last_ip:d.string().optional(),last_login:d.string().optional(),user_id:d.string()}).catchall(d.any());const xo="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let Oo=(n=21)=>{let e="",t=crypto.getRandomValues(new Uint8Array(n));for(;n--;)e+=xo[t[n]&63];return e};const To=d.object({audience:d.string().optional(),recipient:d.string().optional(),createUpnClaim:d.boolean().optional(),mapUnknownClaimsAsIs:d.boolean().optional(),passthroughClaimsWithNoMapping:d.boolean().optional(),mapIdentities:d.boolean().optional(),signatureAlgorithm:d.string().optional(),digestAlgorithm:d.string().optional(),issuer:d.string().optional(),destination:d.string().optional(),lifetimeInSeconds:d.number().optional(),signResponse:d.boolean().optional(),nameIdentifierFormat:d.string().optional(),nameIdentifierProbes:d.array(d.string()).optional(),authnContextClassRef:d.string().optional(),mappings:d.record(d.string()).optional()}),jo=d.object({id:d.string(),name:d.string(),callbacks:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs whitelisted to use as a callback to the client after authentication."}),allowed_origins:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs allowed to make requests from JavaScript to Auth0 API (typically used with CORS). By default, all your callback URLs will be allowed. This field allows you to enter other origins if necessary. You can also use wildcards at the subdomain level. Query strings and hash information are not taken into account when validating these URLs."}),web_origins:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of allowed origins for use with Cross-Origin Authentication, Device Flow, and web message response mode."}),allowed_logout_urls:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs that are valid to redirect to after logout from Auth0. Wildcards are allowed for subdomains."}),allowed_clients:d.array(d.string()).default([]).optional().openapi({description:"Ids of clients that will be allowed to perform delegation requests. Clients that will be allowed to make delegation request. By default, all your clients will be allowed. This field allows you to specify specific clients"}),addons:d.object({samlp:To.optional()}).default({}).optional().openapi({description:"Addons associated with the client. The key is the addon's package name and the value is an object with the configuration for the addon."}),email_validation:d.enum(["enabled","disabled","enforced"]).default("enforced").optional().openapi({description:"Defines if it possible to sign in with an unverified email and if verification emails will be sent. This is not available in auth0"}),client_secret:d.string().default(()=>Oo()).optional(),disable_sign_ups:d.boolean().optional().default(!1).openapi({description:"Prevents users from signing up using the hosted login page. This is not available in auth0"})}),Eo=d.object({created_at:d.string().transform(n=>n===null?"":n),updated_at:d.string().transform(n=>n===null?"":n),...jo.shape});var es=(n=>(n.TOKEN="token",n.TOKEN_ID_TOKEN="token id_token",n.CODE="code",n))(es||{}),ts=(n=>(n.QUERY="query",n.FRAGMENT="fragment",n.FORM_POST="form_post",n.WEB_MESSAGE="web_message",n.SAML_POST="saml_post",n))(ts||{}),ns=(n=>(n.S265="S256",n.plain="plain",n))(ns||{});const So=d.object({client_id:d.string(),vendor_id:d.string().optional(),response_type:d.nativeEnum(es).optional(),response_mode:d.nativeEnum(ts).optional(),redirect_uri:d.string().optional(),audience:d.string().optional(),state:d.string().optional(),nonce:d.string().optional(),scope:d.string().optional(),prompt:d.string().optional(),code_challenge_method:d.nativeEnum(ns).optional(),code_challenge:d.string().optional(),username:d.string().optional(),ui_locales:d.string().optional()});d.object({colors:d.object({primary:d.string(),page_background:d.object({type:d.string().optional(),start:d.string().optional(),end:d.string().optional(),angle_deg:d.number().optional()}).optional()}).optional(),logo_url:d.string().optional(),favicon_url:d.string().optional(),font:d.object({url:d.string()}).optional()});const Ro=d.object({id:d.string().optional(),name:d.string(),strategy:d.enum(["google-oauth2","facebook","vipps","freja","apple","email","Username-Password-Authentication","oidc","oauth2","custom"]).optional(),options:d.object({kid:d.string().optional(),team_id:d.string().optional(),realms:d.string().optional(),client_id:d.string().optional(),client_secret:d.string().optional(),app_secret:d.string().optional(),scope:d.string().optional(),authorization_endpoint:d.string().default("").optional(),token_endpoint:d.string().default("").optional(),userinfo_endpoint:d.string().default("").optional(),jwks_uri:d.string().default("").optional(),discovery_url:d.string().default("").optional(),issuer:d.string().default("").optional()}).default({}).optional(),enabled_clients:d.array(d.string()).default([]).optional(),response_type:d.custom().optional(),response_mode:d.custom().optional()}),Co=d.object({id:d.string(),created_at:d.string().transform(n=>n===null?"":n),updated_at:d.string().transform(n=>n===null?"":n)}).extend(Ro.shape),ar=d.object({name:d.string(),audience:d.string(),sender_email:d.string().email(),sender_name:d.string(),support_url:d.string().url().optional(),logo:d.string().url().optional(),primary_color:d.string().optional(),secondary_color:d.string().optional(),language:d.string().optional()}),cn=d.object({created_at:d.string().transform(n=>n===null?"":n),updated_at:d.string().transform(n=>n===null?"":n),id:d.string(),...ar.shape});d.object({logoUrl:d.string(),loginBackgroundImage:d.string().nullish(),style:d.object({primaryColor:d.string(),buttonTextColor:d.string(),primaryHoverColor:d.string()}),supportEmail:d.string().nullable(),supportUrl:d.string().nullable(),name:d.string(),showGreyishBackground:d.boolean().optional(),termsAndConditionsUrl:d.string().nullable(),companyName:d.string().optional(),checkoutHideSocial:d.boolean().optional(),siteUrl:d.string().nullable(),manageSubscriptionsUrl:d.string().optional()});const Zo=d.object({domain:d.string(),dkim_private_key:d.string().optional(),dkim_public_key:d.string().optional(),email_api_key:d.string().optional(),email_service:d.union([d.literal("mailgun"),d.literal("mailchannels")]).optional()});d.object({...Eo.shape,domains:d.array(Zo),tenant:cn,connections:d.array(Co)});const Io=d.enum(["password_reset","email_verification","otp","authorization_code","oauth2_state","ticket"]),No=d.object({code_id:d.string().openapi({description:"The code that will be used in for instance an email verification flow"}),login_id:d.string().openapi({description:"The id of the login session that the code is connected to"}),connection_id:d.string().optional().openapi({description:"The connection that the code is connected to"}),code_type:Io,expires_at:d.string(),used_at:d.string().optional(),user_id:d.string().optional()});d.object({...No.shape,created_at:d.string()});const Ao=d.object({domain:d.string(),dkim_private_key:d.string().optional(),dkim_public_key:d.string().optional(),email_api_key:d.string().optional(),email_service:d.enum(["mailgun","mailchannels"])});sr.extend({...Ao.shape,id:d.string()}),d.object({trigger_id:d.enum(["pre-user-signup","post-user-registration","post-user-login"]),enabled:d.boolean().default(!1),url:d.string(),hook_id:d.string().optional(),synchronous:d.boolean().default(!1),priority:d.number().optional()}).extend({...sr.shape,hook_id:d.string()});const Po=d.object({alg:d.enum(["RS256","RS384","RS512","ES256","ES384","ES512","HS256","HS384","HS512"]),e:d.string(),kid:d.string(),kty:d.enum(["RSA","EC","oct"]),n:d.string(),x5t:d.string().optional(),x5c:d.array(d.string()).optional(),use:d.enum(["sig","enc"]).optional()});d.object({keys:d.array(Po)});const rs=d.object({issuer:d.string(),authorization_endpoint:d.string(),token_endpoint:d.string(),device_authorization_endpoint:d.string(),userinfo_endpoint:d.string(),mfa_challenge_endpoint:d.string(),jwks_uri:d.string(),registration_endpoint:d.string(),revocation_endpoint:d.string(),scopes_supported:d.array(d.string()),response_types_supported:d.array(d.string()),code_challenge_methods_supported:d.array(d.string()),response_modes_supported:d.array(d.string()),subject_types_supported:d.array(d.string()),id_token_signing_alg_values_supported:d.array(d.string()),token_endpoint_auth_methods_supported:d.array(d.string()),claims_supported:d.array(d.string()),request_uri_parameter_supported:d.boolean(),request_parameter_supported:d.boolean(),token_endpoint_auth_signing_alg_values_supported:d.array(d.string())}),Do=d.object({auth0Client:d.string().optional(),authParams:So,expires_at:d.string(),deleted_at:d.string().optional(),ip:d.string().optional()}).openapi({description:"This represents a login sesion"});d.object({...Do.shape,login_id:d.string().openapi({description:"This is is used as the state in the universal login"}),created_at:d.string(),updated_at:d.string()});var ss=(n=>(n.FAILED_SILENT_AUTH="fsa",n.FAILED_SIGNUP="fs",n.FAILED_LOGIN="f",n.FAILED_LOGIN_INCORRECT_PASSWORD="fp",n.FAILED_CHANGE_PASSWORD="fcp",n.FAILED_BY_CONNECTOR="fc",n.FAILED_LOGIN_INVALID_EMAIL_USERNAME="fu",n.FAILED_HOOK="fh",n.FAILED_CROSS_ORIGIN_AUTHENTICATION="fcoa",n.SUCCESS_API_OPERATION="sapi",n.SUCCESS_CHANGE_PASSWORD="scp",n.SUCCESS_CHANGE_PASSWORD_REQUEST="scpr",n.SUCCESS_CHANGE_USERNAME="scu",n.SUCCESS_CROSS_ORIGIN_AUTHENTICATION="scoa",n.SUCCESS_EXCHANGE_AUTHORIZATION_CODE_FOR_ACCESS_TOKEN="seacft",n.SUCCESS_EXCHANGE_REFRESH_TOKEN_FOR_ACCESS_TOKEN="serft",n.SUCCESS_LOGIN="s",n.SUCCESS_LOGOUT="slo",n.SUCCESS_SIGNUP="ss",n.SUCCESS_SILENT_AUTH="ssa",n.SUCCESS_VERIFICATION_EMAIL="sv",n.SUCCESS_VERIFICATION_EMAIL_REQUEST="svr",n.CODE_LINK_SENT="cls",n))(ss||{});const Mo=d.enum(["cls","fsa","fs","f","fc","fcoa","fcp","fh","fp","fs","fu","s","sapi","scoa","scp","scpr","scu","seacft","serft","slo","ss","ssa","sv","svr"]),$o=d.object({name:d.string(),version:d.string(),env:d.object({node:d.string().optional()}).optional()});d.object({type:Mo,date:d.string(),description:d.string().optional(),log_id:d.string().optional(),_id:d.string().optional(),ip:d.string(),user_agent:d.string(),details:d.any().optional(),isMobile:d.boolean(),user_id:d.string().optional(),user_name:d.string().optional(),connection:d.string().optional(),connection_id:d.string().optional(),client_id:d.string().optional(),client_name:d.string().optional(),audience:d.string().optional(),scope:d.array(d.string()).optional(),strategy:d.string().optional(),strategy_type:d.string().optional(),hostname:d.string().optional(),auth0_client:$o.optional()});const Lo=d.object({user_id:d.string(),password:d.string(),algorithm:d.enum(["bcrypt","argon2id"]).default("argon2id")});d.object({...Lo.shape,created_at:d.string(),updated_at:d.string()});const Uo=d.object({session_id:d.string(),client_id:d.string(),expires_at:d.string(),used_at:d.string(),deleted_at:d.string().optional(),user_id:d.string()});d.object({created_at:d.string(),...Uo.shape}),d.object({kid:d.string().openapi({description:"The key id of the signing key"}),cert:d.string().openapi({description:"The public certificate of the signing key"}),fingerprint:d.string().openapi({description:"The cert fingerprint"}),thumbprint:d.string().openapi({description:"The cert thumbprint"}),pkcs7:d.string().optional().openapi({description:"The private key in pkcs7 format"}),current:d.boolean().optional().openapi({description:"True if the key is the current key"}),next:d.boolean().optional().openapi({description:"True if the key is the next key"}),previous:d.boolean().optional().openapi({description:"True if the key is the previous key"}),current_since:d.string().optional().openapi({description:"The date and time when the key became the current key"}),current_until:d.string().optional().openapi({description:"The date and time when the current key was rotated"}),revoked:d.boolean().optional().openapi({description:"True if the key is revoked"}),revoked_at:d.string().optional().openapi({description:"The date and time when the key was revoked"})});var as=(n=>(n.RefreshToken="refresh_token",n.AuthorizationCode="authorization_code",n.ClientCredential="client_credentials",n.Passwordless="passwordless",n.Password="password",n))(as||{});const ir=d.nativeEnum(as);d.object({grant_type:ir.refine(n=>n==="authorization_code"),code:d.string(),client_secret:d.string(),client_id:d.string()}),d.object({grant_type:ir.refine(n=>n==="authorization_code"),code:d.string(),code_verifier:d.string(),client_id:d.string().optional(),redirect_uri:d.string()}),d.object({grant_type:ir.refine(n=>n==="client_credentials"),scope:d.string().optional(),client_secret:d.string(),client_id:d.string(),audience:d.string().optional()}),d.object({access_token:d.string(),id_token:d.string().optional(),scope:d.string().optional(),state:d.string().optional(),refresh_token:d.string().optional(),token_type:d.string(),expires_in:d.number()}),d.object({code:d.string(),state:d.string().optional()});const Vo=d.object({button_border_radius:d.number(),button_border_weight:d.number(),buttons_style:d.enum(["pill"]),input_border_radius:d.number(),input_border_weight:d.number(),inputs_style:d.enum(["pill"]),show_widget_shadow:d.boolean(),widget_border_weight:d.number(),widget_corner_radius:d.number()}),qo=d.object({base_focus_color:d.string(),base_hover_color:d.string(),body_text:d.string(),captcha_widget_theme:d.enum(["auto"]),error:d.string(),header:d.string(),icons:d.string(),input_background:d.string(),input_border:d.string(),input_filled_text:d.string(),input_labels_placeholders:d.string(),links_focused_components:d.string(),primary_button:d.string(),primary_button_label:d.string(),secondary_button_border:d.string(),secondary_button_label:d.string(),success:d.string(),widget_background:d.string(),widget_border:d.string()}),ft=d.object({bold:d.boolean(),size:d.number()}),Bo=d.object({body_text:ft,buttons_text:ft,font_url:d.string(),input_labels:ft,links:ft,links_style:d.enum(["normal"]),reference_text_size:d.number(),subtitle:ft,title:ft}),Ho=d.object({background_color:d.string(),background_image_url:d.string(),page_layout:d.enum(["center"])}),Wo=d.object({header_text_alignment:d.enum(["center"]),logo_height:d.number(),logo_position:d.enum(["center"]),logo_url:d.string(),social_buttons_layout:d.enum(["bottom"])});d.object({borders:Vo,colors:qo,displayName:d.string(),fonts:Bo,page_background:Ho,widget:Wo}).extend({themeId:d.string()}),d.object({universal_login_experience:d.enum(["new","classic"]).default("new"),identifier_first:d.boolean().default(!0),password_first:d.boolean().default(!1),webauthn_platform_first_factor:d.boolean()});const Fo=new Bt().openapi(Ke({tags:["jwks"],method:"get",path:"/jwks.json",request:{},responses:{200:{description:"List of tenants"}}}),async n=>{const{env:e}=n,t=[{alg:"RS256",e:"AQAB",kid:"hZ42TWGWLdmyKfwGVA6c2",kty:"RSA",n:"nUd-mktFZQNfVwmXufxcVcvJo6Lkb-jDuymtfQunmEhWCctOccWx9e7LX7_9uN15ZnRS7XJInPMRs9KLYdZ0GCnE2HM_QbrEoHpdkCRgyTE-KzmoaEv_AOVGE_Kg0-0ct3r9Z7aJLDVAsxXl1C9y8Gr7ZYkq0c4DyZr9VT8nQiwZQERbfxXdXw-5RLj21S_Lm-LL-AjKvry_TDBLpfUFJV18SVsM07lY_V45TwykNewRdaGLspFIeGdG5j5eByV8ifzBqvzOSptSCsmOTtW-ceWUk0FPD7g_KKzjjbzenoB0TC8mBb_4vWZlHnuGIAs2YoTFglp9uNu7t_OVl3Svo6ZE6alzUnaNfZNeAi78KPHYQ4tDWPjpYNfGynsiD0nojkDSPCIak56jWNYjj614cPEBiv9MVQRiSbBxpiGhMoHlW_QCCPMcXygLAaRs_tUksqoH4QB80krifG2yHPgGDPjXK1_0cYzV80iOcQIeoceqhkSSc6YxzzgDrQcsV2k3bizRQSL83GWkpdHhTZn-Q_JzsW_bDY_f9fjigYbRnoDSgS7038VFIPc92StE41MdgvIQMomcyEE4lYK1uv1Mo6cnXbCZhm8tvddo7VKNorOB4nsiv8DGrWPlzQBca9VN4C1oE2mH-3WLFR7XEkBHWVouOdTWM2S3K9F10YtahkM"}];return n.json({keys:t},{headers:{"access-control-allow-origin":"*","access-control-allow-method":"GET","cache-control":`public, max-age=${e.JWKS_CACHE_TIMEOUT_IN_SECONDS}, stale-while-revalidate=${e.JWKS_CACHE_TIMEOUT_IN_SECONDS*2}, stale-if-error=86400`}})}).openapi(Ke({tags:["well known"],method:"get",path:"/openid-configuration",request:{},responses:{200:{content:{"application/json":{schema:rs}},description:"List of tenants"}}}),async n=>{const{env:e}=n,{ISSUER:t}=e,r=rs.parse({issuer:t,authorization_endpoint:`${t}authorize`,token_endpoint:`${t}oauth/token`,device_authorization_endpoint:`${t}oauth/device/code`,userinfo_endpoint:`${t}userinfo`,mfa_challenge_endpoint:`${t}mfa/challenge`,jwks_uri:`${t}.well-known/jwks.json`,registration_endpoint:`${t}oidc/register`,revocation_endpoint:`${t}oauth/revoke`,scopes_supported:["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],response_types_supported:["code","token","id_token","code token","code id_token","token id_token","code token id_token"],code_challenge_methods_supported:["S256","plain"],response_modes_supported:["query","fragment","form_post"],subject_types_supported:["public"],id_token_signing_alg_values_supported:["HS256","RS256"],token_endpoint_auth_methods_supported:["client_secret_basic","client_secret_post","private_key_jwt"],claims_supported:["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],request_uri_parameter_supported:!1,request_parameter_supported:!1,token_endpoint_auth_signing_alg_values_supported:["RS256","RS384","PS256"]});return n.json(r,{headers:{"access-control-allow-origin":"*","access-control-allow-method":"GET","cache-control":`public, max-age=${e.JWKS_CACHE_TIMEOUT_IN_SECONDS}, stale-while-revalidate=${e.JWKS_CACHE_TIMEOUT_IN_SECONDS*2}, stale-if-error=86400`}})});async function Ko({userAdapter:n,tenant_id:e,email:t}){var o;const{users:r}=await n.list(e,{page:0,per_page:10,include_totals:!1,q:`email:${t}`}),s=r.filter(c=>!(c.provider==="auth2"&&!c.email_verified));if(s.length===0)return;const a=s.filter(c=>!c.linked_to);if(a.length>0)return a.length>1&&console.error("More than one primary user found for same email"),a[0];const i=await n.get(e,(o=s[0])==null?void 0:o.linked_to);if(!i)throw new Error("Primary account not found");return i}function Go(n){return async(e,t)=>{if(!t.email||!t.email_verified)return n.users.create(e,t);const r=await Ko({userAdapter:n.users,tenant_id:e,email:t.email});return r?(await n.users.create(e,{...t,linked_to:r.user_id}),r):n.users.create(e,t)}}function zo(n,e){return{type:e.type,description:e.description||"",ip:n.req.header("x-real-ip")||"",user_agent:n.req.header("user-agent")||"",date:new Date().toISOString(),details:{request:{method:n.req.method,path:n.req.path,qs:n.req.queries(),body:e.body||n.var.body||""}},isMobile:!1,client_id:n.var.client_id,client_name:"",user_id:e.userId||n.var.user_id||"",hostname:n.req.header("host")||"",user_name:n.var.username||"",connection_id:"",connection:n.var.connection||"",strategy:"",strategy_type:"",audience:"",scope:[]}}async function Yo(n,e,t){for await(const r of e)if(!(await fetch(r.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})).ok){const a=zo(n,{type:ss.FAILED_LOGIN_INCORRECT_PASSWORD,description:"Invalid password"});await t.logs.create(n.var.tenant_id,a)}}function Jo(n,e){return async(t,r)=>{const{hooks:s}=await e.hooks.list(t,{q:"trigger_id:post-user-registration",page:0,per_page:100,include_totals:!1});return await Yo(n,s,{tenant_id:t,user:r,trigger_id:"post-user-registration"}),r}}function Qo(n,e){return async(t,r)=>{let s=await Go(e)(t,r);return await Jo(n,e)(t,s),s}}function Xo(n,e){return{...e,users:{...e.users,create:Qo(n,e)}}}const ed=J.object({page:J.string().min(0).optional().default("0").transform(n=>parseInt(n,10)).openapi({description:"The page number where 0 is the first page"}),per_page:J.string().min(1).optional().default("10").transform(n=>parseInt(n,10)).openapi({description:"The number of items per page"}),include_totals:J.string().optional().default("false").transform(n=>n==="true").openapi({description:"If the total number of items should be included in the response"}),sort:J.string().regex(/^.+:(-1|1)$/).optional().openapi({description:"A property that should have the format 'string:-1' or 'string:1'"}),q:J.string().optional().openapi({description:"A lucene query string used to filter the results"})});function td(n){if(!n)return;const[e="",t]=n.split(":");return{sort_by:e,sort_order:t==="1"?"asc":"desc"}}const nd=vo.extend({tenants:J.array(cn)}),rd=new Bt().openapi(Ke({tags:["tenants"],method:"get",path:"/",request:{query:ed},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"tenant/json":{schema:J.union([J.array(cn),nd])}},description:"List of tenants"}}}),async n=>{const{page:e,per_page:t,include_totals:r,sort:s,q:a}=n.req.valid("query"),i=await n.env.data.tenants.list({page:e,per_page:t,include_totals:r,sort:td(s),q:a});return r?n.json(i):n.json(i.tenants)}).openapi(Ke({tags:["tenants"],method:"get",path:"/{id}",request:{params:J.object({id:J.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"tenant/json":{schema:cn}},description:"A tenant"}}}),async n=>{const{id:e}=n.req.valid("param"),t=await n.env.data.tenants.get(e);if(!t)throw new Bn(404);return console.log("tenant",t),n.json(t)}).openapi(Ke({tags:["tenants"],method:"delete",path:"/{id}",request:{params:J.object({id:J.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async n=>{const{id:e}=n.req.valid("param");return await n.env.data.tenants.remove(e),n.text("OK")}).openapi(Ke({tags:["tenants"],method:"patch",path:"/{id}",request:{body:{content:{"application/json":{schema:J.object(ar.shape).partial()}}},params:J.object({id:J.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async n=>{const{id:e}=n.req.valid("param"),t=n.req.valid("json");return await n.env.data.tenants.update(e,t),n.text("OK")}).openapi(Ke({tags:["tenants"],method:"post",path:"/",request:{body:{content:{"application/json":{schema:J.object(ar.shape)}}}},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"tenant/json":{schema:cn}},description:"An tenant"}}}),async n=>{const e=n.req.valid("json"),t=await n.env.data.tenants.create(e);return n.json(t,{status:201})});let is=!1;function sd(n){n.use(async(e,t)=>(is||(n.openAPIRegistry.registerComponent("securitySchemes","Bearer",{type:"oauth2",scheme:"bearer",flows:{implicit:{authorizationUrl:`${e.env.AUTH_URL}/authorize`,scopes:{openid:"Basic user information",email:"User email",profile:"User profile information"}}}}),is=!0),await t()))}function ad(n){const e=new Bt;e.use(async(r,s)=>(r.env.data=Xo(r,n.dataAdapter),s()));const t=e.route("/api/v2/tenants",rd);return sd(t),t.doc("/api/v2/spec",{openapi:"3.0.0",info:{version:"1.0.0",title:"Management api"}}),t}function id(n){const e=new Bt;e.get("/",s=>s.text("Hello, authhero!"));const t=ad(n);e.route("/api/v2",t);const r=new Bt().route("/.well-known",Fo);return r.doc("/spec",{openapi:"3.0.0",info:{version:"1.0.0",title:"Oauth endpoints"}}),e.route("/",r),e}return V.init=id,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"}),V}({});
|
|
1
|
+
var authhero=function(He){"use strict";var D1=Object.defineProperty;var pg=He=>{throw TypeError(He)};var M1=(He,Le,ie)=>Le in He?D1(He,Le,{enumerable:!0,configurable:!0,writable:!0,value:ie}):He[Le]=ie;var K=(He,Le,ie)=>M1(He,typeof Le!="symbol"?Le+"":Le,ie),mg=(He,Le,ie)=>Le.has(He)||pg("Cannot "+ie);var V=(He,Le,ie)=>(mg(He,Le,"read from private field"),ie?ie.call(He):Le.get(He)),ct=(He,Le,ie)=>Le.has(He)?pg("Cannot add the same private member more than once"):Le instanceof WeakSet?Le.add(He):Le.set(He,ie),Re=(He,Le,ie,Ha)=>(mg(He,Le,"write to private field"),Ha?Ha.call(He,ie):Le.set(He,ie),ie);var Ws,sr,rg,Za,Da,qr,Hn,Hr,Ye,Xe,Sr,Fr,Ma,zs,Ks,Va,Ua,ng,ir,sg;function Le(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(r);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(r,n[s])&&(t[n[s]]=r[n[s]]);return t}typeof SuppressedError=="function"&&SuppressedError;function ie(r,e){var t;return((t=r==null?void 0:r._def)===null||t===void 0?void 0:t.typeName)===e}function Ha(r){return"_def"in r}function Gs(r,e){const t=r.ZodType.prototype[e];r.ZodType.prototype[e]=function(...n){const s=t.apply(this,n);return s._def.openapi=this._def.openapi,s}}function Sg(r){if(typeof r.ZodType.prototype.openapi<"u")return;r.ZodType.prototype.openapi=function(s,i){var a,o,c,u,f,m;const D=typeof s=="string"?i:s,j=D??{},{param:p}=j,g=Le(j,["param"]),A=Object.assign(Object.assign({},(a=this._def.openapi)===null||a===void 0?void 0:a._internal),typeof s=="string"?{refId:s}:void 0),S=Object.assign(Object.assign(Object.assign({},(o=this._def.openapi)===null||o===void 0?void 0:o.metadata),g),!((u=(c=this._def.openapi)===null||c===void 0?void 0:c.metadata)===null||u===void 0)&&u.param||p?{param:Object.assign(Object.assign({},(m=(f=this._def.openapi)===null||f===void 0?void 0:f.metadata)===null||m===void 0?void 0:m.param),p)}:void 0),B=new this.constructor(Object.assign(Object.assign({},this._def),{openapi:Object.assign(Object.assign({},Object.keys(A).length>0?{_internal:A}:void 0),Object.keys(S).length>0?{metadata:S}:void 0)}));if(ie(this,"ZodObject")){const T=this.extend;B.extend=function(...ve){var Me,Ve,Pe,et,mt,$t;const E=T.apply(this,ve);return E._def.openapi={_internal:{extendedFrom:!((Ve=(Me=this._def.openapi)===null||Me===void 0?void 0:Me._internal)===null||Ve===void 0)&&Ve.refId?{refId:(et=(Pe=this._def.openapi)===null||Pe===void 0?void 0:Pe._internal)===null||et===void 0?void 0:et.refId,schema:this}:(mt=this._def.openapi)===null||mt===void 0?void 0:mt._internal.extendedFrom},metadata:($t=E._def.openapi)===null||$t===void 0?void 0:$t.metadata},E}}return B},Gs(r,"optional"),Gs(r,"nullable"),Gs(r,"default"),Gs(r,"transform"),Gs(r,"refine");const e=r.ZodObject.prototype.deepPartial;r.ZodObject.prototype.deepPartial=function(){const s=this._def.shape(),i=e.apply(this),a=i._def.shape();return Object.entries(a).forEach(([o,c])=>{var u,f;c._def.openapi=(f=(u=s[o])===null||u===void 0?void 0:u._def)===null||f===void 0?void 0:f.openapi}),i._def.openapi=void 0,i};const t=r.ZodObject.prototype.pick;r.ZodObject.prototype.pick=function(...s){const i=t.apply(this,s);return i._def.openapi=void 0,i};const n=r.ZodObject.prototype.omit;r.ZodObject.prototype.omit=function(...s){const i=n.apply(this,s);return i._def.openapi=void 0,i}}function Fa(r,e){if(r==null||e===null||e===void 0)return r===e;if(r===e||r.valueOf()===e.valueOf())return!0;if(Array.isArray(r)&&(!Array.isArray(e)||r.length!==e.length)||!(r instanceof Object)||!(e instanceof Object))return!1;const t=Object.keys(r);return Object.keys(e).every(n=>t.indexOf(n)!==-1)&&t.every(n=>Fa(r[n],e[n]))}class Ag{constructor(){this.buckets=new Map}put(e){const t=this.hashCodeOf(e),n=this.buckets.get(t);if(!n){this.buckets.set(t,[e]);return}n.some(i=>Fa(i,e))||n.push(e)}contains(e){const t=this.hashCodeOf(e),n=this.buckets.get(t);return n?n.some(s=>Fa(s,e)):!1}values(){return[...this.buckets.values()].flat()}stats(){let e=0,t=0,n=0;for(const i of this.buckets.values())e+=1,t+=i.length,i.length>1&&(n+=1);const s=e/t;return{totalBuckets:e,collisions:n,totalValues:t,hashEffectiveness:s}}hashCodeOf(e){let t=0;if(Array.isArray(e)){for(let n=0;n<e.length;n++)t^=this.hashCodeOf(e[n])*n;return t}if(typeof e=="string"){for(let n=0;n<e.length;n++)t^=e.charCodeAt(n)*n;return t}if(typeof e=="number")return e;if(typeof e=="object")for(const[n,s]of Object.entries(e))t^=this.hashCodeOf(n)+this.hashCodeOf(s??"");return t}}function Js(r){return r==null}function Ys(r,e){const t={};return Object.entries(r).forEach(([n,s])=>{t[n]=e(s)}),t}function Og(r,e){const t={};return Object.entries(r).forEach(([n,s])=>{e.some(i=>i===n)||(t[n]=s)}),t}function Wn(r,e){const t={};return Object.entries(r).forEach(([n,s])=>{e(s,n)||(t[n]=s)}),t}function hf(r){return r.filter(e=>!Js(e))}const uu=Fa;function Eg(r){const e=new Ag;return r.forEach(t=>e.put(t)),[...e.values()]}function pf(r){return typeof r=="string"}class Ig{constructor(e){this.parents=e,this._definitions=[]}get definitions(){var e,t;return[...(t=(e=this.parents)===null||e===void 0?void 0:e.flatMap(s=>s.definitions))!==null&&t!==void 0?t:[],...this._definitions]}register(e,t){const n=this.schemaWithRefId(e,t);return this._definitions.push({type:"schema",schema:n}),n}registerParameter(e,t){var n,s,i;const a=this.schemaWithRefId(e,t),o=(n=a._def.openapi)===null||n===void 0?void 0:n.metadata,c=a.openapi(Object.assign(Object.assign({},o),{param:Object.assign(Object.assign({},o==null?void 0:o.param),{name:(i=(s=o==null?void 0:o.param)===null||s===void 0?void 0:s.name)!==null&&i!==void 0?i:e})}));return this._definitions.push({type:"parameter",schema:c}),c}registerPath(e){this._definitions.push({type:"route",route:e})}registerWebhook(e){this._definitions.push({type:"webhook",webhook:e})}registerComponent(e,t,n){return this._definitions.push({type:"component",componentType:e,name:t,component:n}),{name:t,ref:{$ref:`#/components/${e}/${t}`}}}schemaWithRefId(e,t){return t.openapi(e)}}class Wa{constructor(e){this.message=e}}class Xs extends Wa{constructor(e,t){super(e),this.data=t}}class za extends Wa{constructor(e){super(`Missing parameter data, please specify \`${e.missingField}\` and other OpenAPI parameter props using the \`param\` field of \`ZodSchema.openapi\``),this.data=e}}function Qs(r,e){try{return r()}catch(t){throw t instanceof za?new za(Object.assign(Object.assign({},t.data),e)):t}}class Cg extends Wa{constructor(e){super("Unknown zod object type, please specify `type` and other OpenAPI props using `ZodSchema.openapi`."),this.data=e}}class ze{static getMetadata(e){var t;const n=this.unwrapChained(e),s=e._def.openapi?e._def.openapi:n._def.openapi,i=(t=e.description)!==null&&t!==void 0?t:n.description;return{_internal:s==null?void 0:s._internal,metadata:Object.assign({description:i},s==null?void 0:s.metadata)}}static getInternalMetadata(e){const t=this.unwrapChained(e),n=e._def.openapi?e._def.openapi:t._def.openapi;return n==null?void 0:n._internal}static getParamMetadata(e){var t,n;const s=this.unwrapChained(e),i=e._def.openapi?e._def.openapi:s._def.openapi,a=(t=e.description)!==null&&t!==void 0?t:s.description;return{_internal:i==null?void 0:i._internal,metadata:Object.assign(Object.assign({},i==null?void 0:i.metadata),{param:Object.assign({description:a},(n=i==null?void 0:i.metadata)===null||n===void 0?void 0:n.param)})}}static buildSchemaMetadata(e){return Wn(Og(e,["param"]),Js)}static buildParameterMetadata(e){return Wn(e,Js)}static applySchemaMetadata(e,t){return Wn(Object.assign(Object.assign({},e),this.buildSchemaMetadata(t)),Js)}static getRefId(e){var t;return(t=this.getInternalMetadata(e))===null||t===void 0?void 0:t.refId}static unwrapChained(e){return this.unwrapUntil(e)}static getDefaultValue(e){const t=this.unwrapUntil(e,"ZodDefault");return t==null?void 0:t._def.defaultValue()}static unwrapUntil(e,t){return t&&ie(e,t)?e:ie(e,"ZodOptional")||ie(e,"ZodNullable")||ie(e,"ZodBranded")?this.unwrapUntil(e.unwrap(),t):ie(e,"ZodDefault")||ie(e,"ZodReadonly")?this.unwrapUntil(e._def.innerType,t):ie(e,"ZodEffects")?this.unwrapUntil(e._def.schema,t):ie(e,"ZodPipeline")?this.unwrapUntil(e._def.in,t):t?void 0:e}static isOptionalSchema(e){return ie(e,"ZodEffects")?this.isOptionalSchema(e._def.schema):e.isOptional()}}class jg{transform(e,t,n){var s,i;const a=e._def.type;return Object.assign(Object.assign({},t("array")),{items:n(a),minItems:(s=e._def.minLength)===null||s===void 0?void 0:s.value,maxItems:(i=e._def.maxLength)===null||i===void 0?void 0:i.value})}}class Tg{transform(e){return Object.assign(Object.assign({},e("string")),{pattern:"^d+$"})}}class Ng{transform(e,t,n,s,i){const a=[...e.options.values()],o=a.map(s);return t?{oneOf:n(o,t)}:{oneOf:o,discriminator:this.mapDiscriminator(a,e.discriminator,i)}}mapDiscriminator(e,t,n){if(e.some(i=>ze.getRefId(i)===void 0))return;const s={};return e.forEach(i=>{var a;const o=ze.getRefId(i),c=(a=i.shape)===null||a===void 0?void 0:a[t];if(ie(c,"ZodEnum")||ie(c,"ZodNativeEnum")){Object.values(c.enum).filter(pf).forEach(m=>{s[m]=n(o)});return}const u=c==null?void 0:c._def.value;if(typeof u!="string")throw new Error(`Discriminator ${t} could not be found in one of the values of a discriminated union`);s[u]=n(o)}),{propertyName:t,mapping:s}}}class Bg{transform(e,t){return Object.assign(Object.assign({},t("string")),{enum:e._def.values})}}class Rg{transform(e,t,n,s){const a={allOf:this.flattenIntersectionTypes(e).map(s)};return t?{anyOf:n([a],t)}:a}flattenIntersectionTypes(e){if(!ie(e,"ZodIntersection"))return[e];const t=this.flattenIntersectionTypes(e._def.left),n=this.flattenIntersectionTypes(e._def.right);return[...t,...n]}}class Pg{transform(e,t){return Object.assign(Object.assign({},t(typeof e._def.value)),{enum:[e._def.value]})}}function $g(r){const t=Object.keys(r).filter(i=>typeof r[r[i]]!="number").map(i=>r[i]),n=t.filter(i=>typeof i=="number").length,s=n===0?"string":n===t.length?"numeric":"mixed";return{values:t,type:s}}class Zg{transform(e,t){const{type:n,values:s}=$g(e._def.values);if(n==="mixed")throw new Wa("Enum has mixed string and number values, please specify the OpenAPI type manually");return Object.assign(Object.assign({},t(n==="numeric"?"integer":"string")),{enum:s})}}class Dg{transform(e,t,n){return Object.assign(Object.assign({},t(e.isInt?"integer":"number")),n(e._def.checks))}}class Mg{transform(e,t,n,s){var i;const a=(i=ze.getInternalMetadata(e))===null||i===void 0?void 0:i.extendedFrom,o=this.requiredKeysOf(e),c=Ys(e._def.shape(),s);if(!a)return Object.assign(Object.assign(Object.assign(Object.assign({},n("object")),{properties:c,default:t}),o.length>0?{required:o}:{}),this.generateAdditionalProperties(e,s));const u=a.schema;s(u);const f=this.requiredKeysOf(u),m=Ys(u==null?void 0:u._def.shape(),s),D=Object.fromEntries(Object.entries(c).filter(([g,A])=>!uu(m[g],A))),j=o.filter(g=>!f.includes(g)),p=Object.assign(Object.assign(Object.assign(Object.assign({},n("object")),{default:t,properties:D}),j.length>0?{required:j}:{}),this.generateAdditionalProperties(e,s));return{allOf:[{$ref:`#/components/schemas/${a.refId}`},p]}}generateAdditionalProperties(e,t){const n=e._def.unknownKeys,s=e._def.catchall;return ie(s,"ZodNever")?n==="strict"?{additionalProperties:!1}:{}:{additionalProperties:t(s)}}requiredKeysOf(e){return Object.entries(e._def.shape()).filter(([t,n])=>!ze.isOptionalSchema(n)).map(([t,n])=>t)}}class Vg{transform(e,t,n){const s=e._def.valueType,i=e._def.keyType,a=n(s);if(ie(i,"ZodEnum")||ie(i,"ZodNativeEnum")){const c=Object.values(i.enum).filter(pf).reduce((u,f)=>Object.assign(Object.assign({},u),{[f]:a}),{});return Object.assign(Object.assign({},t("object")),{properties:c})}return Object.assign(Object.assign({},t("object")),{additionalProperties:a})}}class Ug{transform(e,t){var n,s,i;const a=this.getZodStringCheck(e,"regex"),o=(n=this.getZodStringCheck(e,"length"))===null||n===void 0?void 0:n.value,c=Number.isFinite(e.minLength)&&(s=e.minLength)!==null&&s!==void 0?s:void 0,u=Number.isFinite(e.maxLength)&&(i=e.maxLength)!==null&&i!==void 0?i:void 0;return Object.assign(Object.assign({},t("string")),{minLength:o??c,maxLength:o??u,format:this.mapStringFormat(e),pattern:a==null?void 0:a.regex.source})}mapStringFormat(e){if(e.isUUID)return"uuid";if(e.isEmail)return"email";if(e.isURL)return"uri";if(e.isDatetime)return"date-time"}getZodStringCheck(e,t){return e._def.checks.find(n=>n.kind===t)}}class Lg{constructor(e){this.versionSpecifics=e}transform(e,t,n){const{items:s}=e._def,i=s.map(n);return Object.assign(Object.assign({},t("array")),this.versionSpecifics.mapTupleItems(i))}}class qg{transform(e,t,n){const i=this.flattenUnionTypes(e).map(a=>{const o=this.unwrapNullable(a);return n(o)});return{anyOf:t(i)}}flattenUnionTypes(e){return ie(e,"ZodUnion")?e._def.options.flatMap(n=>this.flattenUnionTypes(n)):[e]}unwrapNullable(e){return ie(e,"ZodNullable")?this.unwrapNullable(e.unwrap()):e}}class Hg{constructor(e){this.versionSpecifics=e,this.objectTransformer=new Mg,this.stringTransformer=new Ug,this.numberTransformer=new Dg,this.bigIntTransformer=new Tg,this.literalTransformer=new Pg,this.enumTransformer=new Bg,this.nativeEnumTransformer=new Zg,this.arrayTransformer=new jg,this.unionTransformer=new qg,this.discriminatedUnionTransformer=new Ng,this.intersectionTransformer=new Rg,this.recordTransformer=new Vg,this.tupleTransformer=new Lg(e)}transform(e,t,n,s,i){if(ie(e,"ZodNull"))return this.versionSpecifics.nullType;if(ie(e,"ZodUnknown")||ie(e,"ZodAny"))return this.versionSpecifics.mapNullableType(void 0,t);if(ie(e,"ZodObject"))return this.objectTransformer.transform(e,i,o=>this.versionSpecifics.mapNullableType(o,t),n);const a=this.transformSchemaWithoutDefault(e,t,n,s);return Object.assign(Object.assign({},a),{default:i})}transformSchemaWithoutDefault(e,t,n,s){if(ie(e,"ZodUnknown")||ie(e,"ZodAny"))return this.versionSpecifics.mapNullableType(void 0,t);if(ie(e,"ZodString"))return this.stringTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t));if(ie(e,"ZodNumber"))return this.numberTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t),a=>this.versionSpecifics.getNumberChecks(a));if(ie(e,"ZodBigInt"))return this.bigIntTransformer.transform(a=>this.versionSpecifics.mapNullableType(a,t));if(ie(e,"ZodBoolean"))return this.versionSpecifics.mapNullableType("boolean",t);if(ie(e,"ZodLiteral"))return this.literalTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t));if(ie(e,"ZodEnum"))return this.enumTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t));if(ie(e,"ZodNativeEnum"))return this.nativeEnumTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t));if(ie(e,"ZodArray"))return this.arrayTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t),n);if(ie(e,"ZodTuple"))return this.tupleTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t),n);if(ie(e,"ZodUnion"))return this.unionTransformer.transform(e,a=>this.versionSpecifics.mapNullableOfArray(a,t),n);if(ie(e,"ZodDiscriminatedUnion"))return this.discriminatedUnionTransformer.transform(e,t,a=>this.versionSpecifics.mapNullableOfArray(a,t),n,s);if(ie(e,"ZodIntersection"))return this.intersectionTransformer.transform(e,t,a=>this.versionSpecifics.mapNullableOfArray(a,t),n);if(ie(e,"ZodRecord"))return this.recordTransformer.transform(e,a=>this.versionSpecifics.mapNullableType(a,t),n);if(ie(e,"ZodDate"))return this.versionSpecifics.mapNullableType("string",t);const i=ze.getRefId(e);throw new Cg({currentSchema:e._def,schemaName:i})}}class mf{constructor(e,t){this.definitions=e,this.versionSpecifics=t,this.schemaRefs={},this.paramRefs={},this.pathRefs={},this.rawComponents=[],this.openApiTransformer=new Hg(t),this.sortDefinitions()}generateDocumentData(){return this.definitions.forEach(e=>this.generateSingle(e)),{components:this.buildComponents(),paths:this.pathRefs}}generateComponents(){return this.definitions.forEach(e=>this.generateSingle(e)),{components:this.buildComponents()}}buildComponents(){var e,t;const n={};return this.rawComponents.forEach(({componentType:s,name:i,component:a})=>{var o;(o=n[s])!==null&&o!==void 0||(n[s]={}),n[s][i]=a}),Object.assign(Object.assign({},n),{schemas:Object.assign(Object.assign({},(e=n.schemas)!==null&&e!==void 0?e:{}),this.schemaRefs),parameters:Object.assign(Object.assign({},(t=n.parameters)!==null&&t!==void 0?t:{}),this.paramRefs)})}sortDefinitions(){const e=["schema","parameter","component","route"];this.definitions.sort((t,n)=>{if(!("type"in t))return"type"in n?-1:0;if(!("type"in n))return 1;const s=e.findIndex(a=>a===t.type),i=e.findIndex(a=>a===n.type);return s-i})}generateSingle(e){if(!("type"in e)){this.generateSchemaWithRef(e);return}switch(e.type){case"parameter":this.generateParameterDefinition(e.schema);return;case"schema":this.generateSchemaWithRef(e.schema);return;case"route":this.generateSingleRoute(e.route);return;case"component":this.rawComponents.push(e);return}}generateParameterDefinition(e){const t=ze.getRefId(e),n=this.generateParameter(e);return t&&(this.paramRefs[t]=n),n}getParameterRef(e,t){var n,s,i,a,o;const c=(n=e==null?void 0:e.metadata)===null||n===void 0?void 0:n.param,u=!((s=e==null?void 0:e._internal)===null||s===void 0)&&s.refId?this.paramRefs[(i=e._internal)===null||i===void 0?void 0:i.refId]:void 0;if(!(!(!((a=e==null?void 0:e._internal)===null||a===void 0)&&a.refId)||!u)){if(c&&u.in!==c.in||t!=null&&t.in&&u.in!==t.in)throw new Xs(`Conflicting location for parameter ${u.name}`,{key:"in",values:hf([u.in,t==null?void 0:t.in,c==null?void 0:c.in])});if(c&&u.name!==c.name||t!=null&&t.name&&u.name!==(t==null?void 0:t.name))throw new Xs("Conflicting names for parameter",{key:"name",values:hf([u.name,t==null?void 0:t.name,c==null?void 0:c.name])});return{$ref:`#/components/parameters/${(o=e._internal)===null||o===void 0?void 0:o.refId}`}}}generateInlineParameters(e,t){var n;const s=ze.getMetadata(e),i=(n=s==null?void 0:s.metadata)===null||n===void 0?void 0:n.param,a=this.getParameterRef(s,{in:t});if(a)return[a];if(ie(e,"ZodObject")){const o=e._def.shape();return Object.entries(o).map(([u,f])=>{var m,D;const j=ze.getMetadata(f),p=this.getParameterRef(j,{in:t,name:u});if(p)return p;const g=(m=j==null?void 0:j.metadata)===null||m===void 0?void 0:m.param;if(g!=null&&g.name&&g.name!==u)throw new Xs("Conflicting names for parameter",{key:"name",values:[u,g.name]});if(g!=null&&g.in&&g.in!==t)throw new Xs(`Conflicting location for parameter ${(D=g.name)!==null&&D!==void 0?D:u}`,{key:"in",values:[t,g.in]});return this.generateParameter(f.openapi({param:{name:u,in:t}}))})}if(i!=null&&i.in&&i.in!==t)throw new Xs(`Conflicting location for parameter ${i.name}`,{key:"in",values:[t,i.in]});return[this.generateParameter(e.openapi({param:{in:t}}))]}generateSimpleParameter(e){var t;const n=ze.getParamMetadata(e),s=(t=n==null?void 0:n.metadata)===null||t===void 0?void 0:t.param,i=!ze.isOptionalSchema(e)&&!e.isNullable(),a=this.generateSchemaWithRef(e);return Object.assign({schema:a,required:i},s?ze.buildParameterMetadata(s):{})}generateParameter(e){var t;const n=ze.getMetadata(e),s=(t=n==null?void 0:n.metadata)===null||t===void 0?void 0:t.param,i=s==null?void 0:s.name,a=s==null?void 0:s.in;if(!i)throw new za({missingField:"name"});if(!a)throw new za({missingField:"in",paramName:i});const o=this.generateSimpleParameter(e);return Object.assign(Object.assign({},o),{in:a,name:i})}generateSchemaWithMetadata(e){var t;const n=ze.unwrapChained(e),s=ze.getMetadata(e),i=ze.getDefaultValue(e),a=!((t=s==null?void 0:s.metadata)===null||t===void 0)&&t.type?{type:s==null?void 0:s.metadata.type}:this.toOpenAPISchema(n,e.isNullable(),i);return s!=null&&s.metadata?ze.applySchemaMetadata(a,s.metadata):Wn(a,Js)}constructReferencedOpenAPISchema(e){var t;const n=ze.getMetadata(e),s=ze.unwrapChained(e),i=ze.getDefaultValue(e),a=e.isNullable();return!((t=n==null?void 0:n.metadata)===null||t===void 0)&&t.type?this.versionSpecifics.mapNullableType(n.metadata.type,a):this.toOpenAPISchema(s,a,i)}generateSimpleSchema(e){var t;const n=ze.getMetadata(e),s=ze.getRefId(e);if(!s||!this.schemaRefs[s])return this.generateSchemaWithMetadata(e);const i=this.schemaRefs[s],a={$ref:this.generateSchemaRef(s)},o=Wn(ze.buildSchemaMetadata((t=n==null?void 0:n.metadata)!==null&&t!==void 0?t:{}),(f,m)=>f===void 0||uu(f,i[m]));if(o.type)return{allOf:[a,o]};const c=Wn(this.constructReferencedOpenAPISchema(e),(f,m)=>f===void 0||uu(f,i[m])),u=ze.applySchemaMetadata(c,o);return Object.keys(u).length>0?{allOf:[a,u]}:a}generateSchemaWithRef(e){const t=ze.getRefId(e),n=this.generateSimpleSchema(e);return t&&this.schemaRefs[t]===void 0?(this.schemaRefs[t]=n,{$ref:this.generateSchemaRef(t)}):n}generateSchemaRef(e){return`#/components/schemas/${e}`}getRequestBody(e){if(!e)return;const{content:t}=e,n=Le(e,["content"]),s=this.getBodyContent(t);return Object.assign(Object.assign({},n),{content:s})}getParameters(e){if(!e)return[];const{headers:t}=e,n=this.cleanParameter(e.query),s=this.cleanParameter(e.params),i=this.cleanParameter(e.cookies),a=Qs(()=>n?this.generateInlineParameters(n,"query"):[],{location:"query"}),o=Qs(()=>s?this.generateInlineParameters(s,"path"):[],{location:"path"}),c=Qs(()=>i?this.generateInlineParameters(i,"cookie"):[],{location:"cookie"}),u=Qs(()=>{if(Array.isArray(t))return t.flatMap(m=>this.generateInlineParameters(m,"header"));const f=this.cleanParameter(t);return f?this.generateInlineParameters(f,"header"):[]},{location:"header"});return[...o,...a,...u,...c]}cleanParameter(e){if(e)return ie(e,"ZodEffects")?this.cleanParameter(e._def.schema):e}generatePath(e){const{method:t,path:n,request:s,responses:i}=e,a=Le(e,["method","path","request","responses"]),o=Ys(i,m=>this.getResponse(m)),c=Qs(()=>this.getParameters(s),{route:`${t} ${n}`}),u=this.getRequestBody(s==null?void 0:s.body);return{[t]:Object.assign(Object.assign(Object.assign(Object.assign({},a),c.length>0?{parameters:[...a.parameters||[],...c]}:{}),u?{requestBody:u}:{}),{responses:o})}}generateSingleRoute(e){const t=this.generatePath(e);return this.pathRefs[e.path]=Object.assign(Object.assign({},this.pathRefs[e.path]),t),t}getResponse(e){var{content:t,headers:n}=e,s=Le(e,["content","headers"]);const i=t?{content:this.getBodyContent(t)}:{};if(!n)return Object.assign(Object.assign({},s),i);const a=ie(n,"ZodObject")?this.getResponseHeaders(n):n;return Object.assign(Object.assign(Object.assign({},s),{headers:a}),i)}getResponseHeaders(e){const t=e._def.shape();return Ys(t,s=>this.generateSimpleParameter(s))}getBodyContent(e){return Ys(e,t=>{if(!t||!Ha(t.schema))return t;const{schema:n}=t,s=Le(t,["schema"]),i=this.generateSchemaWithRef(n);return Object.assign({schema:i},s)})}toOpenAPISchema(e,t,n){return this.openApiTransformer.transform(e,t,s=>this.generateSchemaWithRef(s),s=>this.generateSchemaRef(s),n)}}class Fg{get nullType(){return{nullable:!0}}mapNullableOfArray(e,t){return t?[...e,this.nullType]:e}mapNullableType(e,t){return Object.assign(Object.assign({},e?{type:e}:void 0),t?this.nullType:void 0)}mapTupleItems(e){const t=Eg(e);return{items:t.length===1?t[0]:{anyOf:t},minItems:e.length,maxItems:e.length}}getNumberChecks(e){return Object.assign({},...e.map(t=>{switch(t.kind){case"min":return t.inclusive?{minimum:Number(t.value)}:{minimum:Number(t.value),exclusiveMinimum:!0};case"max":return t.inclusive?{maximum:Number(t.value)}:{maximum:Number(t.value),exclusiveMaximum:!0};default:return{}}}))}}class Wg{constructor(e){const t=new Fg;this.generator=new mf(e,t)}generateDocument(e){const t=this.generator.generateDocumentData();return Object.assign(Object.assign({},e),t)}generateComponents(){return this.generator.generateComponents()}}class zg{get nullType(){return{type:"null"}}mapNullableOfArray(e,t){return t?[...e,this.nullType]:e}mapNullableType(e,t){return e?t?{type:Array.isArray(e)?[...e,"null"]:[e,"null"]}:{type:e}:{}}mapTupleItems(e){return{prefixItems:e}}getNumberChecks(e){return Object.assign({},...e.map(t=>{switch(t.kind){case"min":return t.inclusive?{minimum:Number(t.value)}:{exclusiveMinimum:Number(t.value)};case"max":return t.inclusive?{maximum:Number(t.value)}:{exclusiveMaximum:Number(t.value)};default:return{}}}))}}function Kg(r){return"type"in r&&r.type==="webhook"}class Gg{constructor(e){this.definitions=e,this.webhookRefs={};const t=new zg;this.generator=new mf(this.definitions,t)}generateDocument(e){const t=this.generator.generateDocumentData();return this.definitions.filter(Kg).forEach(n=>this.generateSingleWebhook(n.webhook)),Object.assign(Object.assign(Object.assign({},e),t),{webhooks:this.webhookRefs})}generateComponents(){return this.generator.generateComponents()}generateSingleWebhook(e){const t=this.generator.generatePath(e);return this.webhookRefs[e.path]=Object.assign(Object.assign({},this.webhookRefs[e.path]),t),t}}var yf=r=>{const e=r.split("/");return e[0]===""&&e.shift(),e},Jg=r=>{const{groups:e,path:t}=Yg(r),n=yf(t);return Xg(n,e)},Yg=r=>{const e=[];return r=r.replace(/\{[^}]+\}/g,(t,n)=>{const s=`@${n}`;return e.push([s,t]),s}),{groups:e,path:r}},Xg=(r,e)=>{for(let t=e.length-1;t>=0;t--){const[n]=e[t];for(let s=r.length-1;s>=0;s--)if(r[s].includes(n)){r[s]=r[s].replace(n,e[t][1]);break}}return r},Ka={},gf=r=>{if(r==="*")return"*";const e=r.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);return e?(Ka[r]||(e[2]?Ka[r]=[r,e[1],new RegExp("^"+e[2]+"$")]:Ka[r]=[r,e[1],!0]),Ka[r]):null},Qg=r=>{try{return decodeURI(r)}catch{return r.replace(/(?:%[0-9A-Fa-f]{2})+/g,e=>{try{return decodeURI(e)}catch{return e}})}},vf=r=>{const e=r.url,t=e.indexOf("/",8);let n=t;for(;n<e.length;n++){const s=e.charCodeAt(n);if(s===37){const i=e.indexOf("?",n),a=e.slice(t,i===-1?void 0:i);return Qg(a.includes("%25")?a.replace(/%25/g,"%2525"):a)}else if(s===63)break}return e.slice(t,n)},e0=r=>{const e=vf(r);return e.length>1&&e[e.length-1]==="/"?e.slice(0,-1):e},Wr=(...r)=>{let e="",t=!1;for(let n of r)e[e.length-1]==="/"&&(e=e.slice(0,-1),t=!0),n[0]!=="/"&&(n=`/${n}`),n==="/"&&t?e=`${e}/`:n!=="/"&&(e=`${e}${n}`),n==="/"&&e===""&&(e="/");return e},bf=r=>{if(!r.match(/\:.+\?$/))return null;const e=r.split("/"),t=[];let n="";return e.forEach(s=>{if(s!==""&&!/\:/.test(s))n+="/"+s;else if(/\:/.test(s))if(/\?/.test(s)){t.length===0&&n===""?t.push("/"):t.push(n);const i=s.replace("?","");n+="/"+i,t.push(n)}else n+="/"+s}),t.filter((s,i,a)=>a.indexOf(s)===i)},lu=r=>/[%+]/.test(r)?(r.indexOf("+")!==-1&&(r=r.replace(/\+/g," ")),/%/.test(r)?Ga(r):r):r,xf=(r,e,t)=>{let n;if(!t&&e&&!/[%+]/.test(e)){let a=r.indexOf(`?${e}`,8);for(a===-1&&(a=r.indexOf(`&${e}`,8));a!==-1;){const o=r.charCodeAt(a+e.length+1);if(o===61){const c=a+e.length+2,u=r.indexOf("&",c);return lu(r.slice(c,u===-1?void 0:u))}else if(o==38||isNaN(o))return"";a=r.indexOf(`&${e}`,a+1)}if(n=/[%+]/.test(r),!n)return}const s={};n??(n=/[%+]/.test(r));let i=r.indexOf("?",8);for(;i!==-1;){const a=r.indexOf("&",i+1);let o=r.indexOf("=",i);o>a&&a!==-1&&(o=-1);let c=r.slice(i+1,o===-1?a===-1?void 0:a:o);if(n&&(c=lu(c)),i=a,c==="")continue;let u;o===-1?u="":(u=r.slice(o+1,a===-1?void 0:a),n&&(u=lu(u))),t?(s[c]&&Array.isArray(s[c])||(s[c]=[]),s[c].push(u)):s[c]??(s[c]=u)}return e?s[e]:s},t0=xf,r0=(r,e)=>xf(r,e,!0),Ga=decodeURIComponent,n0=/^[\w!#$%&'*.^`|~+-]+$/,s0=/^[ !#-:<-[\]-~]*$/,i0=(r,e)=>r.trim().split(";").reduce((n,s)=>{s=s.trim();const i=s.indexOf("=");if(i===-1)return n;const a=s.substring(0,i).trim();if(!n0.test(a))return n;let o=s.substring(i+1).trim();return o.startsWith('"')&&o.endsWith('"')&&(o=o.slice(1,-1)),s0.test(o)&&(n[a]=Ga(o)),n},{}),a0=(r,e,t)=>{const n=r.req.raw.headers.get("Cookie");return n?i0(n):{}},Ue=class extends Error{constructor(e=500,t){super(t==null?void 0:t.message,{cause:t==null?void 0:t.cause});K(this,"res");K(this,"status");this.res=t==null?void 0:t.res,this.status=e}getResponse(){return this.res?new Response(this.res.body,{status:this.status,headers:this.res.headers}):new Response(this.message,{status:this.status})}},o0=(r,e)=>new Response(r,{headers:{"Content-Type":e}}).formData(),c0=/^application\/([a-z-\.]+\+)?json(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/,u0=/^multipart\/form-data(;\s?boundary=[a-zA-Z0-9'"()+_,\-./:=?]+)?$/,l0=/^application\/x-www-form-urlencoded(;\s*[a-zA-Z0-9\-]+\=([^;]+))*$/,d0=(r,e)=>async(t,n)=>{let s={};const i=t.req.header("Content-Type");switch(r){case"json":if(!i||!c0.test(i))break;try{s=await t.req.json()}catch{const o="Malformed JSON in request body";throw new Ue(400,{message:o})}break;case"form":{if(!i||!(u0.test(i)||l0.test(i)))break;let o;if(t.req.bodyCache.formData)o=await t.req.bodyCache.formData;else try{const u=await t.req.arrayBuffer();o=await o0(u,i),t.req.bodyCache.formData=o}catch(u){let f="Malformed FormData request.";throw f+=u instanceof Error?` ${u.message}`:` ${String(u)}`,new Ue(400,{message:f})}const c={};o.forEach((u,f)=>{f.endsWith("[]")?(c[f]??(c[f]=[])).push(u):Array.isArray(c[f])?c[f].push(u):f in c?c[f]=[c[f],u]:c[f]=u}),s=c;break}case"query":s=Object.fromEntries(Object.entries(t.req.queries()).map(([o,c])=>c.length===1?[o,c[0]]:[o,c]));break;case"param":s=t.req.param();break;case"header":s=t.req.header();break;case"cookie":s=a0(t);break}const a=await e(s,t);if(a instanceof Response)return a;t.req.addValidatedData(r,a),await n()};const zn=(r,e,t)=>d0(r,async(n,s)=>{const i=await e.safeParseAsync(n);if(t){const a=await t({data:n,...i,target:r},s);if(a){if(a instanceof Response)return a;if("response"in a)return a.response}}return i.success?i.data:s.json(i,400)});var f0=async(r,e=Object.create(null))=>{const{all:t=!1,dot:n=!1}=e,i=(r instanceof _f?r.raw.headers:r.headers).get("Content-Type");return i!=null&&i.startsWith("multipart/form-data")||i!=null&&i.startsWith("application/x-www-form-urlencoded")?h0(r,{all:t,dot:n}):{}};async function h0(r,e){const t=await r.formData();return t?p0(t,e):{}}function p0(r,e){const t=Object.create(null);return r.forEach((n,s)=>{e.all||s.endsWith("[]")?m0(t,s,n):t[s]=n}),e.dot&&Object.entries(t).forEach(([n,s])=>{n.includes(".")&&(y0(t,n,s),delete t[n])}),t}var m0=(r,e,t)=>{r[e]!==void 0?Array.isArray(r[e])?r[e].push(t):r[e]=[r[e],t]:r[e]=t},y0=(r,e,t)=>{let n=r;const s=e.split(".");s.forEach((i,a)=>{a===s.length-1?n[i]=t:((!n[i]||typeof n[i]!="object"||Array.isArray(n[i])||n[i]instanceof File)&&(n[i]=Object.create(null)),n=n[i])})},_f=(rg=class{constructor(r,e="/",t=[[]]){K(this,"raw");ct(this,Ws);ct(this,sr);K(this,"routeIndex",0);K(this,"path");K(this,"bodyCache",{});K(this,"cachedBody",r=>{const{bodyCache:e,raw:t}=this,n=e[r];if(n)return n;const s=Object.keys(e)[0];return s?e[s].then(i=>(s==="json"&&(i=JSON.stringify(i)),new Response(i)[r]())):e[r]=t[r]()});this.raw=r,this.path=e,Re(this,sr,t),Re(this,Ws,{})}param(r){return r?this.getDecodedParam(r):this.getAllDecodedParams()}getDecodedParam(r){const e=V(this,sr)[0][this.routeIndex][1][r],t=this.getParamValue(e);return t?/\%/.test(t)?Ga(t):t:void 0}getAllDecodedParams(){const r={},e=Object.keys(V(this,sr)[0][this.routeIndex][1]);for(const t of e){const n=this.getParamValue(V(this,sr)[0][this.routeIndex][1][t]);n&&typeof n=="string"&&(r[t]=/\%/.test(n)?Ga(n):n)}return r}getParamValue(r){return V(this,sr)[1]?V(this,sr)[1][r]:r}query(r){return t0(this.url,r)}queries(r){return r0(this.url,r)}header(r){if(r)return this.raw.headers.get(r.toLowerCase())??void 0;const e={};return this.raw.headers.forEach((t,n)=>{e[n]=t}),e}async parseBody(r){var e;return(e=this.bodyCache).parsedBody??(e.parsedBody=await f0(this,r))}json(){return this.cachedBody("json")}text(){return this.cachedBody("text")}arrayBuffer(){return this.cachedBody("arrayBuffer")}blob(){return this.cachedBody("blob")}formData(){return this.cachedBody("formData")}addValidatedData(r,e){V(this,Ws)[r]=e}valid(r){return V(this,Ws)[r]}get url(){return this.raw.url}get method(){return this.raw.method}get matchedRoutes(){return V(this,sr)[0].map(([[,r]])=>r)}get routePath(){return V(this,sr)[0].map(([[,r]])=>r)[this.routeIndex].path}},Ws=new WeakMap,sr=new WeakMap,rg),g0={Stringify:1,BeforeStream:2,Stream:3},wf=async(r,e,t,n,s)=>{typeof r=="object"&&!(r instanceof String)&&(r instanceof Promise||(r=r.toString()),r instanceof Promise&&(r=await r));const i=r.callbacks;return i!=null&&i.length?(s?s[0]+=r:s=[r],Promise.all(i.map(o=>o({phase:e,buffer:s,context:n}))).then(o=>Promise.all(o.filter(Boolean).map(c=>wf(c,e,!1,n,s))).then(()=>s[0]))):Promise.resolve(r)},v0="text/plain; charset=UTF-8",du=(r,e={})=>(Object.entries(e).forEach(([t,n])=>r.set(t,n)),r),Ja=(ng=class{constructor(r,e){ct(this,Za);ct(this,Da);K(this,"env",{});ct(this,qr);K(this,"finalized",!1);K(this,"error");ct(this,Hn,200);ct(this,Hr);ct(this,Ye);ct(this,Xe);ct(this,Sr);ct(this,Fr,!0);ct(this,Ma);ct(this,zs);ct(this,Ks);ct(this,Va);ct(this,Ua);K(this,"render",(...r)=>(V(this,zs)??Re(this,zs,e=>this.html(e)),V(this,zs).call(this,...r)));K(this,"setLayout",r=>Re(this,Ma,r));K(this,"getLayout",()=>V(this,Ma));K(this,"setRenderer",r=>{Re(this,zs,r)});K(this,"header",(r,e,t)=>{if(e===void 0){V(this,Ye)?V(this,Ye).delete(r):V(this,Xe)&&delete V(this,Xe)[r.toLocaleLowerCase()],this.finalized&&this.res.headers.delete(r);return}t!=null&&t.append?(V(this,Ye)||(Re(this,Fr,!1),Re(this,Ye,new Headers(V(this,Xe))),Re(this,Xe,{})),V(this,Ye).append(r,e)):V(this,Ye)?V(this,Ye).set(r,e):(V(this,Xe)??Re(this,Xe,{}),V(this,Xe)[r.toLowerCase()]=e),this.finalized&&(t!=null&&t.append?this.res.headers.append(r,e):this.res.headers.set(r,e))});K(this,"status",r=>{Re(this,Fr,!1),Re(this,Hn,r)});K(this,"set",(r,e)=>{V(this,qr)??Re(this,qr,new Map),V(this,qr).set(r,e)});K(this,"get",r=>V(this,qr)?V(this,qr).get(r):void 0);K(this,"newResponse",(r,e,t)=>{if(V(this,Fr)&&!t&&!e&&V(this,Hn)===200)return new Response(r,{headers:V(this,Xe)});if(e&&typeof e!="number"){const s=new Headers(e.headers);V(this,Ye)&&V(this,Ye).forEach((a,o)=>{o==="set-cookie"?s.append(o,a):s.set(o,a)});const i=du(s,V(this,Xe));return new Response(r,{headers:i,status:e.status??V(this,Hn)})}const n=typeof e=="number"?e:V(this,Hn);V(this,Xe)??Re(this,Xe,{}),V(this,Ye)??Re(this,Ye,new Headers),du(V(this,Ye),V(this,Xe)),V(this,Sr)&&(V(this,Sr).headers.forEach((s,i)=>{var a,o;i==="set-cookie"?(a=V(this,Ye))==null||a.append(i,s):(o=V(this,Ye))==null||o.set(i,s)}),du(V(this,Ye),V(this,Xe))),t??(t={});for(const[s,i]of Object.entries(t))if(typeof i=="string")V(this,Ye).set(s,i);else{V(this,Ye).delete(s);for(const a of i)V(this,Ye).append(s,a)}return new Response(r,{status:n,headers:V(this,Ye)})});K(this,"body",(r,e,t)=>typeof e=="number"?this.newResponse(r,e,t):this.newResponse(r,e));K(this,"text",(r,e,t)=>{if(!V(this,Xe)){if(V(this,Fr)&&!t&&!e)return new Response(r);Re(this,Xe,{})}return V(this,Xe)["content-type"]=v0,typeof e=="number"?this.newResponse(r,e,t):this.newResponse(r,e)});K(this,"json",(r,e,t)=>{const n=JSON.stringify(r);return V(this,Xe)??Re(this,Xe,{}),V(this,Xe)["content-type"]="application/json; charset=UTF-8",typeof e=="number"?this.newResponse(n,e,t):this.newResponse(n,e)});K(this,"html",(r,e,t)=>(V(this,Xe)??Re(this,Xe,{}),V(this,Xe)["content-type"]="text/html; charset=UTF-8",typeof r=="object"?wf(r,g0.Stringify,!1,{}).then(n=>typeof e=="number"?this.newResponse(n,e,t):this.newResponse(n,e)):typeof e=="number"?this.newResponse(r,e,t):this.newResponse(r,e)));K(this,"redirect",(r,e)=>(V(this,Ye)??Re(this,Ye,new Headers),V(this,Ye).set("Location",r),this.newResponse(null,e??302)));K(this,"notFound",()=>(V(this,Ks)??Re(this,Ks,()=>new Response),V(this,Ks).call(this,this)));Re(this,Za,r),e&&(Re(this,Hr,e.executionCtx),this.env=e.env,Re(this,Ks,e.notFoundHandler),Re(this,Ua,e.path),Re(this,Va,e.matchResult))}get req(){return V(this,Da)??Re(this,Da,new _f(V(this,Za),V(this,Ua),V(this,Va))),V(this,Da)}get event(){if(V(this,Hr)&&"respondWith"in V(this,Hr))return V(this,Hr);throw Error("This context has no FetchEvent")}get executionCtx(){if(V(this,Hr))return V(this,Hr);throw Error("This context has no ExecutionContext")}get res(){return Re(this,Fr,!1),V(this,Sr)||Re(this,Sr,new Response("404 Not Found",{status:404}))}set res(r){if(Re(this,Fr,!1),V(this,Sr)&&r)try{for(const[e,t]of V(this,Sr).headers.entries())if(e!=="content-type")if(e==="set-cookie"){const n=V(this,Sr).headers.getSetCookie();r.headers.delete("set-cookie");for(const s of n)r.headers.append("set-cookie",s)}else r.headers.set(e,t)}catch(e){if(e instanceof TypeError&&e.message.includes("immutable")){this.res=new Response(r.body,{headers:r.headers,status:r.status});return}else throw e}Re(this,Sr,r),this.finalized=!0}get var(){return V(this,qr)?Object.fromEntries(V(this,qr)):{}}},Za=new WeakMap,Da=new WeakMap,qr=new WeakMap,Hn=new WeakMap,Hr=new WeakMap,Ye=new WeakMap,Xe=new WeakMap,Sr=new WeakMap,Fr=new WeakMap,Ma=new WeakMap,zs=new WeakMap,Ks=new WeakMap,Va=new WeakMap,Ua=new WeakMap,ng),kf=(r,e,t)=>(n,s)=>{let i=-1;return a(0);async function a(o){if(o<=i)throw new Error("next() called multiple times");i=o;let c,u=!1,f;if(r[o]?(f=r[o][0][0],n instanceof Ja&&(n.req.routeIndex=o)):f=o===r.length&&s||void 0,!f)n instanceof Ja&&n.finalized===!1&&t&&(c=await t(n));else try{c=await f(n,()=>a(o+1))}catch(m){if(m instanceof Error&&n instanceof Ja&&e)n.error=m,c=await e(m,n),u=!0;else throw m}return c&&(n.finalized===!1||u)&&(n.res=c),n}},rt="ALL",b0="all",x0=["get","post","put","delete","options","patch"],Sf="Can not add a route since the matcher is already built.",Af=class extends Error{},_0=Symbol("composedHandler"),w0=r=>r.text("404 Not Found",404),Of=(r,e)=>"getResponse"in r?r.getResponse():(console.error(r),e.text("Internal Server Error",500)),Ef=(sg=class{constructor(e={}){K(this,"get");K(this,"post");K(this,"put");K(this,"delete");K(this,"options");K(this,"patch");K(this,"all");K(this,"on");K(this,"use");K(this,"router");K(this,"getPath");K(this,"_basePath","/");ct(this,ir,"/");K(this,"routes",[]);K(this,"notFoundHandler",w0);K(this,"errorHandler",Of);K(this,"onError",e=>(this.errorHandler=e,this));K(this,"notFound",e=>(this.notFoundHandler=e,this));K(this,"fetch",(e,...t)=>this.dispatch(e,t[1],t[0],e.method));K(this,"request",(e,t,n,s)=>{if(e instanceof Request)return t!==void 0&&(e=new Request(e,t)),this.fetch(e,n,s);e=e.toString();const i=/^https?:\/\//.test(e)?e:`http://localhost${Wr("/",e)}`,a=new Request(i,t);return this.fetch(a,n,s)});K(this,"fire",()=>{addEventListener("fetch",e=>{e.respondWith(this.dispatch(e.request,e,void 0,e.request.method))})});[...x0,b0].forEach(s=>{this[s]=(i,...a)=>(typeof i=="string"?Re(this,ir,i):this.addRoute(s,V(this,ir),i),a.forEach(o=>{typeof o!="string"&&this.addRoute(s,V(this,ir),o)}),this)}),this.on=(s,i,...a)=>{for(const o of[i].flat()){Re(this,ir,o);for(const c of[s].flat())a.map(u=>{this.addRoute(c.toUpperCase(),V(this,ir),u)})}return this},this.use=(s,...i)=>(typeof s=="string"?Re(this,ir,s):(Re(this,ir,"*"),i.unshift(s)),i.forEach(a=>{this.addRoute(rt,V(this,ir),a)}),this);const n=e.strict??!0;delete e.strict,Object.assign(this,e),this.getPath=n?e.getPath??vf:e0}clone(){const e=new Ef({router:this.router,getPath:this.getPath});return e.routes=this.routes,e}route(e,t){const n=this.basePath(e);return t.routes.map(s=>{let i;t.errorHandler===Of?i=s.handler:(i=async(a,o)=>(await kf([],t.errorHandler)(a,()=>s.handler(a,o))).res,i[_0]=s.handler),n.addRoute(s.method,s.path,i)}),this}basePath(e){const t=this.clone();return t._basePath=Wr(this._basePath,e),t}mount(e,t,n){let s,i;n&&(typeof n=="function"?i=n:(i=n.optionHandler,s=n.replaceRequest));const a=i?c=>{const u=i(c);return Array.isArray(u)?u:[u]}:c=>{let u;try{u=c.executionCtx}catch{}return[c.env,u]};s||(s=(()=>{const c=Wr(this._basePath,e),u=c==="/"?0:c.length;return f=>{const m=new URL(f.url);return m.pathname=m.pathname.slice(u)||"/",new Request(m,f)}})());const o=async(c,u)=>{const f=await t(s(c.req.raw),...a(c));if(f)return f;await u()};return this.addRoute(rt,Wr(e,"*"),o),this}addRoute(e,t,n){e=e.toUpperCase(),t=Wr(this._basePath,t);const s={path:t,method:e,handler:n};this.router.add(e,t,[n,s]),this.routes.push(s)}matchRoute(e,t){return this.router.match(e,t)}handleError(e,t){if(e instanceof Error)return this.errorHandler(e,t);throw e}dispatch(e,t,n,s){if(s==="HEAD")return(async()=>new Response(null,await this.dispatch(e,t,n,"GET")))();const i=this.getPath(e,{env:n}),a=this.matchRoute(s,i),o=new Ja(e,{path:i,matchResult:a,env:n,executionCtx:t,notFoundHandler:this.notFoundHandler});if(a[0].length===1){let u;try{u=a[0][0][0][0](o,async()=>{o.res=await this.notFoundHandler(o)})}catch(f){return this.handleError(f,o)}return u instanceof Promise?u.then(f=>f||(o.finalized?o.res:this.notFoundHandler(o))).catch(f=>this.handleError(f,o)):u??this.notFoundHandler(o)}const c=kf(a[0],this.errorHandler,this.notFoundHandler);return(async()=>{try{const u=await c(o);if(!u.finalized)throw new Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return u.res}catch(u){return this.handleError(u,o)}})()}},ir=new WeakMap,sg),Ya="[^/]+",ei=".*",ti="(?:|/.*)",ri=Symbol(),k0=new Set(".\\+*[^]$()");function S0(r,e){return r.length===1?e.length===1?r<e?-1:1:-1:e.length===1||r===ei||r===ti?1:e===ei||e===ti?-1:r===Ya?1:e===Ya?-1:r.length===e.length?r<e?-1:1:e.length-r.length}var fu=class{constructor(){K(this,"index");K(this,"varIndex");K(this,"children",Object.create(null))}insert(e,t,n,s,i){if(e.length===0){if(this.index!==void 0)throw ri;if(i)return;this.index=t;return}const[a,...o]=e,c=a==="*"?o.length===0?["","",ei]:["","",Ya]:a==="/*"?["","",ti]:a.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);let u;if(c){const f=c[1];let m=c[2]||Ya;if(f&&c[2]&&(m=m.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(m)))throw ri;if(u=this.children[m],!u){if(Object.keys(this.children).some(D=>D!==ei&&D!==ti))throw ri;if(i)return;u=this.children[m]=new fu,f!==""&&(u.varIndex=s.varIndex++)}!i&&f!==""&&n.push([f,u.varIndex])}else if(u=this.children[a],!u){if(Object.keys(this.children).some(f=>f.length>1&&f!==ei&&f!==ti))throw ri;if(i)return;u=this.children[a]=new fu}u.insert(o,t,n,s,i)}buildRegExpStr(){const t=Object.keys(this.children).sort(S0).map(n=>{const s=this.children[n];return(typeof s.varIndex=="number"?`(${n})@${s.varIndex}`:k0.has(n)?`\\${n}`:n)+s.buildRegExpStr()});return typeof this.index=="number"&&t.unshift(`#${this.index}`),t.length===0?"":t.length===1?t[0]:"(?:"+t.join("|")+")"}},A0=class{constructor(){K(this,"context",{varIndex:0});K(this,"root",new fu)}insert(r,e,t){const n=[],s=[];for(let a=0;;){let o=!1;if(r=r.replace(/\{[^}]+\}/g,c=>{const u=`@\\${a}`;return s[a]=[u,c],a++,o=!0,u}),!o)break}const i=r.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let a=s.length-1;a>=0;a--){const[o]=s[a];for(let c=i.length-1;c>=0;c--)if(i[c].indexOf(o)!==-1){i[c]=i[c].replace(o,s[a][1]);break}}return this.root.insert(i,e,n,this.context,t),n}buildRegExp(){let r=this.root.buildRegExpStr();if(r==="")return[/^$/,[],[]];let e=0;const t=[],n=[];return r=r.replace(/#(\d+)|@(\d+)|\.\*\$/g,(s,i,a)=>typeof i<"u"?(t[++e]=Number(i),"$()"):(typeof a<"u"&&(n[Number(a)]=++e),"")),[new RegExp(`^${r}`),t,n]}},If=[],O0=[/^$/,[],Object.create(null)],Xa=Object.create(null);function Cf(r){return Xa[r]??(Xa[r]=new RegExp(r==="*"?"":`^${r.replace(/\/\*$|([.\\+*[^\]$()])/g,(e,t)=>t?`\\${t}`:"(?:|/.*)")}$`))}function E0(){Xa=Object.create(null)}function I0(r){var u;const e=new A0,t=[];if(r.length===0)return O0;const n=r.map(f=>[!/\*|\/:/.test(f[0]),...f]).sort(([f,m],[D,j])=>f?1:D?-1:m.length-j.length),s=Object.create(null);for(let f=0,m=-1,D=n.length;f<D;f++){const[j,p,g]=n[f];j?s[p]=[g.map(([S])=>[S,Object.create(null)]),If]:m++;let A;try{A=e.insert(p,m,j)}catch(S){throw S===ri?new Af(p):S}j||(t[m]=g.map(([S,B])=>{const T=Object.create(null);for(B-=1;B>=0;B--){const[ve,Me]=A[B];T[ve]=Me}return[S,T]}))}const[i,a,o]=e.buildRegExp();for(let f=0,m=t.length;f<m;f++)for(let D=0,j=t[f].length;D<j;D++){const p=(u=t[f][D])==null?void 0:u[1];if(!p)continue;const g=Object.keys(p);for(let A=0,S=g.length;A<S;A++)p[g[A]]=o[p[g[A]]]}const c=[];for(const f in a)c[f]=t[a[f]];return[i,c,s]}function Kn(r,e){if(r){for(const t of Object.keys(r).sort((n,s)=>s.length-n.length))if(Cf(t).test(e))return[...r[t]]}}var C0=class{constructor(){K(this,"name","RegExpRouter");K(this,"middleware");K(this,"routes");this.middleware={[rt]:Object.create(null)},this.routes={[rt]:Object.create(null)}}add(r,e,t){var o;const{middleware:n,routes:s}=this;if(!n||!s)throw new Error(Sf);n[r]||[n,s].forEach(c=>{c[r]=Object.create(null),Object.keys(c[rt]).forEach(u=>{c[r][u]=[...c[rt][u]]})}),e==="/*"&&(e="*");const i=(e.match(/\/:/g)||[]).length;if(/\*$/.test(e)){const c=Cf(e);r===rt?Object.keys(n).forEach(u=>{var f;(f=n[u])[e]||(f[e]=Kn(n[u],e)||Kn(n[rt],e)||[])}):(o=n[r])[e]||(o[e]=Kn(n[r],e)||Kn(n[rt],e)||[]),Object.keys(n).forEach(u=>{(r===rt||r===u)&&Object.keys(n[u]).forEach(f=>{c.test(f)&&n[u][f].push([t,i])})}),Object.keys(s).forEach(u=>{(r===rt||r===u)&&Object.keys(s[u]).forEach(f=>c.test(f)&&s[u][f].push([t,i]))});return}const a=bf(e)||[e];for(let c=0,u=a.length;c<u;c++){const f=a[c];Object.keys(s).forEach(m=>{var D;(r===rt||r===m)&&((D=s[m])[f]||(D[f]=[...Kn(n[m],f)||Kn(n[rt],f)||[]]),s[m][f].push([t,i-u+c+1]))})}}match(r,e){E0();const t=this.buildAllMatchers();return this.match=(n,s)=>{const i=t[n]||t[rt],a=i[2][s];if(a)return a;const o=s.match(i[0]);if(!o)return[[],If];const c=o.indexOf("",1);return[i[1][c],o]},this.match(r,e)}buildAllMatchers(){const r=Object.create(null);return[...Object.keys(this.routes),...Object.keys(this.middleware)].forEach(e=>{r[e]||(r[e]=this.buildMatcher(e))}),this.middleware=this.routes=void 0,r}buildMatcher(r){const e=[];let t=r===rt;return[this.middleware,this.routes].forEach(n=>{const s=n[r]?Object.keys(n[r]).map(i=>[i,n[r][i]]):[];s.length!==0?(t||(t=!0),e.push(...s)):r!==rt&&e.push(...Object.keys(n[rt]).map(i=>[i,n[rt][i]]))}),t?I0(e):null}},j0=class{constructor(r){K(this,"name","SmartRouter");K(this,"routers",[]);K(this,"routes",[]);Object.assign(this,r)}add(r,e,t){if(!this.routes)throw new Error(Sf);this.routes.push([r,e,t])}match(r,e){if(!this.routes)throw new Error("Fatal error");const{routers:t,routes:n}=this,s=t.length;let i=0,a;for(;i<s;i++){const o=t[i];try{for(let c=0,u=n.length;c<u;c++)o.add(...n[c]);a=o.match(r,e)}catch(c){if(c instanceof Af)continue;throw c}this.match=o.match.bind(o),this.routers=[o],this.routes=void 0;break}if(i===s)throw new Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,a}get activeRouter(){if(this.routes||this.routers.length!==1)throw new Error("No active router has been determined yet.");return this.routers[0]}},jf=class{constructor(r,e,t){K(this,"methods");K(this,"children");K(this,"patterns");K(this,"order",0);K(this,"params",Object.create(null));if(this.children=t||Object.create(null),this.methods=[],r&&e){const n=Object.create(null);n[r]={handler:e,possibleKeys:[],score:0},this.methods=[n]}this.patterns=[]}insert(r,e,t){this.order=++this.order;let n=this;const s=Jg(e),i=[];for(let c=0,u=s.length;c<u;c++){const f=s[c];if(Object.keys(n.children).includes(f)){n=n.children[f];const D=gf(f);D&&i.push(D[1]);continue}n.children[f]=new jf;const m=gf(f);m&&(n.patterns.push(m),i.push(m[1])),n=n.children[f]}n.methods.length||(n.methods=[]);const a=Object.create(null),o={handler:t,possibleKeys:i.filter((c,u,f)=>f.indexOf(c)===u),score:this.order};return a[r]=o,n.methods.push(a),n}gHSets(r,e,t,n){const s=[];for(let i=0,a=r.methods.length;i<a;i++){const o=r.methods[i],c=o[e]||o[rt],u=Object.create(null);if(c!==void 0){c.params=Object.create(null);for(let f=0,m=c.possibleKeys.length;f<m;f++){const D=c.possibleKeys[f],j=u[c.score];c.params[D]=n[D]&&!j?n[D]:t[D]??n[D],u[c.score]=!0}s.push(c)}}return s}search(r,e){const t=[];this.params=Object.create(null);let s=[this];const i=yf(e);for(let o=0,c=i.length;o<c;o++){const u=i[o],f=o===c-1,m=[];for(let D=0,j=s.length;D<j;D++){const p=s[D],g=p.children[u];g&&(g.params=p.params,f?(g.children["*"]&&t.push(...this.gHSets(g.children["*"],r,p.params,Object.create(null))),t.push(...this.gHSets(g,r,p.params,Object.create(null)))):m.push(g));for(let A=0,S=p.patterns.length;A<S;A++){const B=p.patterns[A],T={...p.params};if(B==="*"){const mt=p.children["*"];mt&&(t.push(...this.gHSets(mt,r,p.params,Object.create(null))),m.push(mt));continue}if(u==="")continue;const[ve,Me,Ve]=B,Pe=p.children[ve],et=i.slice(o).join("/");if(Ve instanceof RegExp&&Ve.test(et)){T[Me]=et,t.push(...this.gHSets(Pe,r,p.params,T));continue}(Ve===!0||Ve.test(u))&&typeof ve=="string"&&(T[Me]=u,f?(t.push(...this.gHSets(Pe,r,T,p.params)),Pe.children["*"]&&t.push(...this.gHSets(Pe.children["*"],r,T,p.params))):(Pe.params=T,m.push(Pe)))}}s=m}return[t.sort((o,c)=>o.score-c.score).map(({handler:o,params:c})=>[o,c])]}},T0=class{constructor(){K(this,"name","TrieRouter");K(this,"node");this.node=new jf}add(r,e,t){const n=bf(e);if(n){for(let s=0,i=n.length;s<i;s++)this.node.insert(r,n[s],t);return}this.node.insert(r,e,t)}match(r,e){return this.node.search(r,e)}},N0=class extends Ef{constructor(r={}){super(r),this.router=r.router??new j0({routers:[new C0,new T0]})}},je;(function(r){r.assertEqual=s=>s;function e(s){}r.assertIs=e;function t(s){throw new Error}r.assertNever=t,r.arrayToEnum=s=>{const i={};for(const a of s)i[a]=a;return i},r.getValidEnumValues=s=>{const i=r.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(const o of i)a[o]=s[o];return r.objectValues(a)},r.objectValues=s=>r.objectKeys(s).map(function(i){return s[i]}),r.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const i=[];for(const a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},r.find=(s,i)=>{for(const a of s)if(i(a))return a},r.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}r.joinValues=n,r.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(je||(je={}));var hu;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(hu||(hu={}));const G=je.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),zr=r=>{switch(typeof r){case"undefined":return G.undefined;case"string":return G.string;case"number":return isNaN(r)?G.nan:G.number;case"boolean":return G.boolean;case"function":return G.function;case"bigint":return G.bigint;case"symbol":return G.symbol;case"object":return Array.isArray(r)?G.array:r===null?G.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?G.promise:typeof Map<"u"&&r instanceof Map?G.map:typeof Set<"u"&&r instanceof Set?G.set:typeof Date<"u"&&r instanceof Date?G.date:G.object;default:return G.unknown}},P=je.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),B0=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:");let Ft=class yg extends Error{constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(i){return i.message},n={_errors:[]},s=i=>{for(const a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(t(a));else{let o=n,c=0;for(;c<a.path.length;){const u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(t(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof yg))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,je.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},n=[];for(const s of this.issues)s.path.length>0?(t[s.path[0]]=t[s.path[0]]||[],t[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};Ft.create=r=>new Ft(r);const Gn=(r,e)=>{let t;switch(r.code){case P.invalid_type:r.received===G.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case P.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,je.jsonStringifyReplacer)}`;break;case P.unrecognized_keys:t=`Unrecognized key(s) in object: ${je.joinValues(r.keys,", ")}`;break;case P.invalid_union:t="Invalid input";break;case P.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${je.joinValues(r.options)}`;break;case P.invalid_enum_value:t=`Invalid enum value. Expected ${je.joinValues(r.options)}, received '${r.received}'`;break;case P.invalid_arguments:t="Invalid function arguments";break;case P.invalid_return_type:t="Invalid function return type";break;case P.invalid_date:t="Invalid date";break;case P.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:je.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case P.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case P.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case P.custom:t="Invalid input";break;case P.invalid_intersection_types:t="Intersection results could not be merged";break;case P.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case P.not_finite:t="Number must be finite";break;default:t=e.defaultError,je.assertNever(r)}return{message:t}};let Tf=Gn;function R0(r){Tf=r}function Qa(){return Tf}const eo=r=>{const{data:e,path:t,errorMaps:n,issueData:s}=r,i=[...t,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="";const c=n.filter(u=>!!u).slice().reverse();for(const u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},P0=[];function q(r,e){const t=Qa(),n=eo({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===Gn?void 0:Gn].filter(s=>!!s)});r.common.issues.push(n)}let kt=class gg{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const n=[];for(const s of t){if(s.status==="aborted")return pe;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){const n=[];for(const s of t){const i=await s.key,a=await s.value;n.push({key:i,value:a})}return gg.mergeObjectSync(e,n)}static mergeObjectSync(e,t){const n={};for(const s of t){const{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return pe;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}};const pe=Object.freeze({status:"aborted"}),Jn=r=>({status:"dirty",value:r}),yt=r=>({status:"valid",value:r}),pu=r=>r.status==="aborted",mu=r=>r.status==="dirty",ni=r=>r.status==="valid",si=r=>typeof Promise<"u"&&r instanceof Promise;function to(r,e,t,n){if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(r)}function Nf(r,e,t,n,s){if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(r,t),t}typeof SuppressedError=="function"&&SuppressedError;var ae;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(ae||(ae={}));var ii,ai;let cr=class{constructor(e,t,n,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}};const Bf=(r,e)=>{if(ni(e))return{success:!0,data:e.value};if(!r.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Ft(r.common.issues);return this._error=t,this._error}}};function be(r){if(!r)return{};const{errorMap:e,invalid_type_error:t,required_error:n,description:s}=r;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{var c,u;const{message:f}=r;return a.code==="invalid_enum_value"?{message:f??o.defaultError}:typeof o.data>"u"?{message:(c=f??n)!==null&&c!==void 0?c:o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:(u=f??t)!==null&&u!==void 0?u:o.defaultError}},description:s}}let we=class{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return zr(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:zr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new kt,ctx:{common:e.parent.common,data:e.data,parsedType:zr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(si(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){var n;const s={common:{issues:[],async:(n=t==null?void 0:t.async)!==null&&n!==void 0?n:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zr(e)},i=this._parseSync({data:e,path:s.path,parent:s});return Bf(s,i)}async parseAsync(e,t){const n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){const n={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zr(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(si(s)?s:Promise.resolve(s));return Bf(n,i)}refine(e,t){const n=s=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(s):t;return this._refinement((s,i)=>{const a=e(s),o=()=>i.addIssue({code:P.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,t){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof t=="function"?t(n,s):t),!1))}_refinement(e){return new Wt({schema:this,typeName:de.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return ur.create(this,this._def)}nullable(){return Gr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return bn.create(this,this._def)}promise(){return es.create(this,this._def)}or(e){return hi.create([this,e],this._def)}and(e){return pi.create(this,e,this._def)}transform(e){return new Wt({...be(this._def),schema:this,typeName:de.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new bi({...be(this._def),innerType:this,defaultValue:t,typeName:de.ZodDefault})}brand(){return new vu({typeName:de.ZodBranded,type:this,...be(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new xi({...be(this._def),innerType:this,catchValue:t,typeName:de.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return bu.create(this,e)}readonly(){return _i.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}};const $0=/^c[^\s-]{8,}$/i,Z0=/^[0-9a-z]+$/,D0=/^[0-9A-HJKMNP-TV-Z]{26}$/,M0=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,V0=/^[a-z0-9_-]{21}$/i,U0=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,L0=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,q0="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let yu;const H0=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,F0=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,W0=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Rf="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",z0=new RegExp(`^${Rf}$`);function Pf(r){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`),e}function K0(r){return new RegExp(`^${Pf(r)}$`)}function $f(r){let e=`${Rf}T${Pf(r)}`;const t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function G0(r,e){return!!((e==="v4"||!e)&&H0.test(r)||(e==="v6"||!e)&&F0.test(r))}let Yn=class qa extends we{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==G.string){const i=this._getOrReturnCtx(e);return q(i,{code:P.invalid_type,expected:G.string,received:i.parsedType}),pe}const n=new kt;let s;for(const i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),q(s,{code:P.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),q(s,{code:P.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){const a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?q(s,{code:P.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&q(s,{code:P.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")L0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"email",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")yu||(yu=new RegExp(q0,"u")),yu.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"emoji",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")M0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"uuid",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")V0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"nanoid",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")$0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"cuid",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")Z0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"cuid2",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")D0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"ulid",code:P.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),q(s,{validation:"url",code:P.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"regex",code:P.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?$f(i).test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?z0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?K0(i).test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{code:P.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?U0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"duration",code:P.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?G0(e.data,i.version)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"ip",code:P.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?W0.test(e.data)||(s=this._getOrReturnCtx(e,s),q(s,{validation:"base64",code:P.invalid_string,message:i.message}),n.dirty()):je.assertNever(i);return{status:n.value,value:e.data}}_regex(e,t,n){return this.refinement(s=>e.test(s),{validation:t,code:P.invalid_string,...ae.errToObj(n)})}_addCheck(e){return new qa({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ae.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ae.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ae.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ae.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ae.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ae.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ae.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ae.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ae.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ae.errToObj(e)})}datetime(e){var t,n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(n=e==null?void 0:e.local)!==null&&n!==void 0?n:!1,...ae.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...ae.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...ae.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...ae.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...ae.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...ae.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...ae.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...ae.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...ae.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...ae.errToObj(t)})}nonempty(e){return this.min(1,ae.errToObj(e))}trim(){return new qa({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new qa({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new qa({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Yn.create=r=>{var e;return new Yn({checks:[],typeName:de.ZodString,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...be(r)})};function J0(r,e){const t=(r.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=t>n?t:n,i=parseInt(r.toFixed(s).replace(".","")),a=parseInt(e.toFixed(s).replace(".",""));return i%a/Math.pow(10,s)}let oi=class of extends we{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==G.number){const i=this._getOrReturnCtx(e);return q(i,{code:P.invalid_type,expected:G.number,received:i.parsedType}),pe}let n;const s=new kt;for(const i of this._def.checks)i.kind==="int"?je.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),q(n,{code:P.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?J0(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),q(n,{code:P.not_finite,message:i.message}),s.dirty()):je.assertNever(i);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,ae.toString(t))}gt(e,t){return this.setLimit("min",e,!1,ae.toString(t))}lte(e,t){return this.setLimit("max",e,!0,ae.toString(t))}lt(e,t){return this.setLimit("max",e,!1,ae.toString(t))}setLimit(e,t,n,s){return new of({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:ae.toString(s)}]})}_addCheck(e){return new of({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ae.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ae.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ae.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ae.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ae.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:ae.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:ae.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ae.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ae.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&je.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}};oi.create=r=>new oi({checks:[],typeName:de.ZodNumber,coerce:(r==null?void 0:r.coerce)||!1,...be(r)});let ci=class cf extends we{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==G.bigint){const i=this._getOrReturnCtx(e);return q(i,{code:P.invalid_type,expected:G.bigint,received:i.parsedType}),pe}let n;const s=new kt;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),q(n,{code:P.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):je.assertNever(i);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,ae.toString(t))}gt(e,t){return this.setLimit("min",e,!1,ae.toString(t))}lte(e,t){return this.setLimit("max",e,!0,ae.toString(t))}lt(e,t){return this.setLimit("max",e,!1,ae.toString(t))}setLimit(e,t,n,s){return new cf({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:ae.toString(s)}]})}_addCheck(e){return new cf({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ae.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ae.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ae.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ae.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:ae.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};ci.create=r=>{var e;return new ci({checks:[],typeName:de.ZodBigInt,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...be(r)})};let ui=class extends we{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==G.boolean){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.boolean,received:n.parsedType}),pe}return yt(e.data)}};ui.create=r=>new ui({typeName:de.ZodBoolean,coerce:(r==null?void 0:r.coerce)||!1,...be(r)});let li=class vg extends we{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==G.date){const i=this._getOrReturnCtx(e);return q(i,{code:P.invalid_type,expected:G.date,received:i.parsedType}),pe}if(isNaN(e.data.getTime())){const i=this._getOrReturnCtx(e);return q(i,{code:P.invalid_date}),pe}const n=new kt;let s;for(const i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),q(s,{code:P.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),q(s,{code:P.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):je.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new vg({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:ae.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:ae.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}};li.create=r=>new li({checks:[],coerce:(r==null?void 0:r.coerce)||!1,typeName:de.ZodDate,...be(r)});let ro=class extends we{_parse(e){if(this._getType(e)!==G.symbol){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.symbol,received:n.parsedType}),pe}return yt(e.data)}};ro.create=r=>new ro({typeName:de.ZodSymbol,...be(r)});let di=class extends we{_parse(e){if(this._getType(e)!==G.undefined){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.undefined,received:n.parsedType}),pe}return yt(e.data)}};di.create=r=>new di({typeName:de.ZodUndefined,...be(r)});let fi=class extends we{_parse(e){if(this._getType(e)!==G.null){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.null,received:n.parsedType}),pe}return yt(e.data)}};fi.create=r=>new fi({typeName:de.ZodNull,...be(r)});let Xn=class extends we{constructor(){super(...arguments),this._any=!0}_parse(e){return yt(e.data)}};Xn.create=r=>new Xn({typeName:de.ZodAny,...be(r)});let vn=class extends we{constructor(){super(...arguments),this._unknown=!0}_parse(e){return yt(e.data)}};vn.create=r=>new vn({typeName:de.ZodUnknown,...be(r)});let Or=class extends we{_parse(e){const t=this._getOrReturnCtx(e);return q(t,{code:P.invalid_type,expected:G.never,received:t.parsedType}),pe}};Or.create=r=>new Or({typeName:de.ZodNever,...be(r)});let no=class extends we{_parse(e){if(this._getType(e)!==G.undefined){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.void,received:n.parsedType}),pe}return yt(e.data)}};no.create=r=>new no({typeName:de.ZodVoid,...be(r)});let bn=class ou extends we{_parse(e){const{ctx:t,status:n}=this._processInputParams(e),s=this._def;if(t.parsedType!==G.array)return q(t,{code:P.invalid_type,expected:G.array,received:t.parsedType}),pe;if(s.exactLength!==null){const a=t.data.length>s.exactLength.value,o=t.data.length<s.exactLength.value;(a||o)&&(q(t,{code:a?P.too_big:P.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&t.data.length<s.minLength.value&&(q(t,{code:P.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&t.data.length>s.maxLength.value&&(q(t,{code:P.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((a,o)=>s.type._parseAsync(new cr(t,a,t.path,o)))).then(a=>kt.mergeArray(n,a));const i=[...t.data].map((a,o)=>s.type._parseSync(new cr(t,a,t.path,o)));return kt.mergeArray(n,i)}get element(){return this._def.type}min(e,t){return new ou({...this._def,minLength:{value:e,message:ae.toString(t)}})}max(e,t){return new ou({...this._def,maxLength:{value:e,message:ae.toString(t)}})}length(e,t){return new ou({...this._def,exactLength:{value:e,message:ae.toString(t)}})}nonempty(e){return this.min(1,e)}};bn.create=(r,e)=>new bn({type:r,minLength:null,maxLength:null,exactLength:null,typeName:de.ZodArray,...be(e)});function Qn(r){if(r instanceof Zt){const e={};for(const t in r.shape){const n=r.shape[t];e[t]=ur.create(Qn(n))}return new Zt({...r._def,shape:()=>e})}else return r instanceof bn?new bn({...r._def,type:Qn(r.element)}):r instanceof ur?ur.create(Qn(r.unwrap())):r instanceof Gr?Gr.create(Qn(r.unwrap())):r instanceof Kr?Kr.create(r.items.map(e=>Qn(e))):r}let Zt=class or extends we{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=je.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==G.object){const u=this._getOrReturnCtx(e);return q(u,{code:P.invalid_type,expected:G.object,received:u.parsedType}),pe}const{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof Or&&this._def.unknownKeys==="strip"))for(const u in s.data)a.includes(u)||o.push(u);const c=[];for(const u of a){const f=i[u],m=s.data[u];c.push({key:{status:"valid",value:u},value:f._parse(new cr(s,m,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof Or){const u=this._def.unknownKeys;if(u==="passthrough")for(const f of o)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(u==="strict")o.length>0&&(q(s,{code:P.unrecognized_keys,keys:o}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const f of o){const m=s.data[f];c.push({key:{status:"valid",value:f},value:u._parse(new cr(s,m,s.path,f)),alwaysSet:f in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const u=[];for(const f of c){const m=await f.key,D=await f.value;u.push({key:m,value:D,alwaysSet:f.alwaysSet})}return u}).then(u=>kt.mergeObjectSync(n,u)):kt.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return ae.errToObj,new or({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{var s,i,a,o;const c=(a=(i=(s=this._def).errorMap)===null||i===void 0?void 0:i.call(s,t,n).message)!==null&&a!==void 0?a:n.defaultError;return t.code==="unrecognized_keys"?{message:(o=ae.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new or({...this._def,unknownKeys:"strip"})}passthrough(){return new or({...this._def,unknownKeys:"passthrough"})}extend(e){return new or({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new or({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:de.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new or({...this._def,catchall:e})}pick(e){const t={};return je.objectKeys(e).forEach(n=>{e[n]&&this.shape[n]&&(t[n]=this.shape[n])}),new or({...this._def,shape:()=>t})}omit(e){const t={};return je.objectKeys(this.shape).forEach(n=>{e[n]||(t[n]=this.shape[n])}),new or({...this._def,shape:()=>t})}deepPartial(){return Qn(this)}partial(e){const t={};return je.objectKeys(this.shape).forEach(n=>{const s=this.shape[n];e&&!e[n]?t[n]=s:t[n]=s.optional()}),new or({...this._def,shape:()=>t})}required(e){const t={};return je.objectKeys(this.shape).forEach(n=>{if(e&&!e[n])t[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof ur;)i=i._def.innerType;t[n]=i}}),new or({...this._def,shape:()=>t})}keyof(){return Vf(je.objectKeys(this.shape))}};Zt.create=(r,e)=>new Zt({shape:()=>r,unknownKeys:"strip",catchall:Or.create(),typeName:de.ZodObject,...be(e)}),Zt.strictCreate=(r,e)=>new Zt({shape:()=>r,unknownKeys:"strict",catchall:Or.create(),typeName:de.ZodObject,...be(e)}),Zt.lazycreate=(r,e)=>new Zt({shape:r,unknownKeys:"strip",catchall:Or.create(),typeName:de.ZodObject,...be(e)});let hi=class extends we{_parse(e){const{ctx:t}=this._processInputParams(e),n=this._def.options;function s(i){for(const o of i)if(o.result.status==="valid")return o.result;for(const o of i)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const a=i.map(o=>new Ft(o.ctx.common.issues));return q(t,{code:P.invalid_union,unionErrors:a}),pe}if(t.common.async)return Promise.all(n.map(async i=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await i._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(s);{let i;const a=[];for(const c of n){const u={...t,common:{...t.common,issues:[]},parent:null},f=c._parseSync({data:t.data,path:t.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return t.common.issues.push(...i.ctx.common.issues),i.result;const o=a.map(c=>new Ft(c));return q(t,{code:P.invalid_union,unionErrors:o}),pe}}get options(){return this._def.options}};hi.create=(r,e)=>new hi({options:r,typeName:de.ZodUnion,...be(e)});const Er=r=>r instanceof mi?Er(r.schema):r instanceof Wt?Er(r.innerType()):r instanceof yi?[r.value]:r instanceof gi?r.options:r instanceof vi?je.objectValues(r.enum):r instanceof bi?Er(r._def.innerType):r instanceof di?[void 0]:r instanceof fi?[null]:r instanceof ur?[void 0,...Er(r.unwrap())]:r instanceof Gr?[null,...Er(r.unwrap())]:r instanceof vu||r instanceof _i?Er(r.unwrap()):r instanceof xi?Er(r._def.innerType):[];let Zf=class bg extends we{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.object)return q(t,{code:P.invalid_type,expected:G.object,received:t.parsedType}),pe;const n=this.discriminator,s=t.data[n],i=this.optionsMap.get(s);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(q(t,{code:P.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),pe)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){const s=new Map;for(const i of t){const a=Er(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new bg({typeName:de.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,...be(n)})}};function gu(r,e){const t=zr(r),n=zr(e);if(r===e)return{valid:!0,data:r};if(t===G.object&&n===G.object){const s=je.objectKeys(e),i=je.objectKeys(r).filter(o=>s.indexOf(o)!==-1),a={...r,...e};for(const o of i){const c=gu(r[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(t===G.array&&n===G.array){if(r.length!==e.length)return{valid:!1};const s=[];for(let i=0;i<r.length;i++){const a=r[i],o=e[i],c=gu(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return t===G.date&&n===G.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}let pi=class extends we{_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(pu(i)||pu(a))return pe;const o=gu(i.value,a.value);return o.valid?((mu(i)||mu(a))&&t.dirty(),{status:t.value,value:o.data}):(q(n,{code:P.invalid_intersection_types}),pe)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};pi.create=(r,e,t)=>new pi({left:r,right:e,typeName:de.ZodIntersection,...be(t)});let Kr=class xg extends we{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==G.array)return q(n,{code:P.invalid_type,expected:G.array,received:n.parsedType}),pe;if(n.data.length<this._def.items.length)return q(n,{code:P.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),pe;!this._def.rest&&n.data.length>this._def.items.length&&(q(n,{code:P.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const i=[...n.data].map((a,o)=>{const c=this._def.items[o]||this._def.rest;return c?c._parse(new cr(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>kt.mergeArray(t,a)):kt.mergeArray(t,i)}get items(){return this._def.items}rest(e){return new xg({...this._def,rest:e})}};Kr.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Kr({items:r,typeName:de.ZodTuple,rest:null,...be(e)})};let Df=class uf extends we{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==G.object)return q(n,{code:P.invalid_type,expected:G.object,received:n.parsedType}),pe;const s=[],i=this._def.keyType,a=this._def.valueType;for(const o in n.data)s.push({key:i._parse(new cr(n,o,n.path,o)),value:a._parse(new cr(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?kt.mergeObjectAsync(t,s):kt.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof we?new uf({keyType:e,valueType:t,typeName:de.ZodRecord,...be(n)}):new uf({keyType:Yn.create(),valueType:e,typeName:de.ZodRecord,...be(t)})}},so=class extends we{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==G.map)return q(n,{code:P.invalid_type,expected:G.map,received:n.parsedType}),pe;const s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new cr(n,o,n.path,[u,"key"])),value:i._parse(new cr(n,c,n.path,[u,"value"]))}));if(n.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of a){const u=await c.key,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return pe;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of a){const u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return pe;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}}}};so.create=(r,e,t)=>new so({valueType:e,keyType:r,typeName:de.ZodMap,...be(t)});let io=class lf extends we{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==G.set)return q(n,{code:P.invalid_type,expected:G.set,received:n.parsedType}),pe;const s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(q(n,{code:P.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(q(n,{code:P.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());const i=this._def.valueType;function a(c){const u=new Set;for(const f of c){if(f.status==="aborted")return pe;f.status==="dirty"&&t.dirty(),u.add(f.value)}return{status:t.value,value:u}}const o=[...n.data.values()].map((c,u)=>i._parse(new cr(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,t){return new lf({...this._def,minSize:{value:e,message:ae.toString(t)}})}max(e,t){return new lf({...this._def,maxSize:{value:e,message:ae.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};io.create=(r,e)=>new io({valueType:r,minSize:null,maxSize:null,typeName:de.ZodSet,...be(e)});let Mf=class cu extends we{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.function)return q(t,{code:P.invalid_type,expected:G.function,received:t.parsedType}),pe;function n(o,c){return eo({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Qa(),Gn].filter(u=>!!u),issueData:{code:P.invalid_arguments,argumentsError:c}})}function s(o,c){return eo({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Qa(),Gn].filter(u=>!!u),issueData:{code:P.invalid_return_type,returnTypeError:c}})}const i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof es){const o=this;return yt(async function(...c){const u=new Ft([]),f=await o._def.args.parseAsync(c,i).catch(j=>{throw u.addIssue(n(c,j)),u}),m=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(m,i).catch(j=>{throw u.addIssue(s(m,j)),u})})}else{const o=this;return yt(function(...c){const u=o._def.args.safeParse(c,i);if(!u.success)throw new Ft([n(c,u.error)]);const f=Reflect.apply(a,this,u.data),m=o._def.returns.safeParse(f,i);if(!m.success)throw new Ft([s(f,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new cu({...this._def,args:Kr.create(e).rest(vn.create())})}returns(e){return new cu({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,n){return new cu({args:e||Kr.create([]).rest(vn.create()),returns:t||vn.create(),typeName:de.ZodFunction,...be(n)})}},mi=class extends we{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};mi.create=(r,e)=>new mi({getter:r,typeName:de.ZodLazy,...be(e)});let yi=class extends we{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return q(t,{received:t.data,code:P.invalid_literal,expected:this._def.value}),pe}return{status:"valid",value:e.data}}get value(){return this._def.value}};yi.create=(r,e)=>new yi({value:r,typeName:de.ZodLiteral,...be(e)});function Vf(r,e){return new gi({values:r,typeName:de.ZodEnum,...be(e)})}let gi=class df extends we{constructor(){super(...arguments),ii.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),n=this._def.values;return q(t,{expected:je.joinValues(n),received:t.parsedType,code:P.invalid_type}),pe}if(to(this,ii)||Nf(this,ii,new Set(this._def.values)),!to(this,ii).has(e.data)){const t=this._getOrReturnCtx(e),n=this._def.values;return q(t,{received:t.data,code:P.invalid_enum_value,options:n}),pe}return yt(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return df.create(e,{...this._def,...t})}exclude(e,t=this._def){return df.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}};ii=new WeakMap,gi.create=Vf;let vi=class extends we{constructor(){super(...arguments),ai.set(this,void 0)}_parse(e){const t=je.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==G.string&&n.parsedType!==G.number){const s=je.objectValues(t);return q(n,{expected:je.joinValues(s),received:n.parsedType,code:P.invalid_type}),pe}if(to(this,ai)||Nf(this,ai,new Set(je.getValidEnumValues(this._def.values))),!to(this,ai).has(e.data)){const s=je.objectValues(t);return q(n,{received:n.data,code:P.invalid_enum_value,options:s}),pe}return yt(e.data)}get enum(){return this._def.values}};ai=new WeakMap,vi.create=(r,e)=>new vi({values:r,typeName:de.ZodNativeEnum,...be(e)});let es=class extends we{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==G.promise&&t.common.async===!1)return q(t,{code:P.invalid_type,expected:G.promise,received:t.parsedType}),pe;const n=t.parsedType===G.promise?t.data:Promise.resolve(t.data);return yt(n.then(s=>this._def.type.parseAsync(s,{path:t.path,errorMap:t.common.contextualErrorMap})))}};es.create=(r,e)=>new es({type:r,typeName:de.ZodPromise,...be(e)});let Wt=class extends we{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===de.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{q(n,a),a.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){const a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(t.value==="aborted")return pe;const c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?pe:c.status==="dirty"||t.value==="dirty"?Jn(c.value):c});{if(t.value==="aborted")return pe;const o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?pe:o.status==="dirty"||t.value==="dirty"?Jn(o.value):o}}if(s.type==="refinement"){const a=o=>{const c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){const o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?pe:(o.status==="dirty"&&t.dirty(),a(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?pe:(o.status==="dirty"&&t.dirty(),a(o.value).then(()=>({status:t.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){const a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!ni(a))return a;const o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>ni(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:t.value,value:o})):a);je.assertNever(s)}};Wt.create=(r,e,t)=>new Wt({schema:r,typeName:de.ZodEffects,effect:e,...be(t)}),Wt.createWithPreprocess=(r,e,t)=>new Wt({schema:e,effect:{type:"preprocess",transform:r},typeName:de.ZodEffects,...be(t)});let ur=class extends we{_parse(e){return this._getType(e)===G.undefined?yt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ur.create=(r,e)=>new ur({innerType:r,typeName:de.ZodOptional,...be(e)});let Gr=class extends we{_parse(e){return this._getType(e)===G.null?yt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Gr.create=(r,e)=>new Gr({innerType:r,typeName:de.ZodNullable,...be(e)});let bi=class extends we{_parse(e){const{ctx:t}=this._processInputParams(e);let n=t.data;return t.parsedType===G.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};bi.create=(r,e)=>new bi({innerType:r,typeName:de.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...be(e)});let xi=class extends we{_parse(e){const{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return si(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Ft(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ft(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};xi.create=(r,e)=>new xi({innerType:r,typeName:de.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...be(e)});let ao=class extends we{_parse(e){if(this._getType(e)!==G.nan){const n=this._getOrReturnCtx(e);return q(n,{code:P.invalid_type,expected:G.nan,received:n.parsedType}),pe}return{status:"valid",value:e.data}}};ao.create=r=>new ao({typeName:de.ZodNaN,...be(r)});const Y0=Symbol("zod_brand");let vu=class extends we{_parse(e){const{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},bu=class _g extends we{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?pe:i.status==="dirty"?(t.dirty(),Jn(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{const s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?pe:s.status==="dirty"?(t.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,t){return new _g({in:e,out:t,typeName:de.ZodPipeline})}},_i=class extends we{_parse(e){const t=this._def.innerType._parse(e),n=s=>(ni(s)&&(s.value=Object.freeze(s.value)),s);return si(t)?t.then(s=>n(s)):n(t)}unwrap(){return this._def.innerType}};_i.create=(r,e)=>new _i({innerType:r,typeName:de.ZodReadonly,...be(e)});function Uf(r,e={},t){return r?Xn.create().superRefine((n,s)=>{var i,a;if(!r(n)){const o=typeof e=="function"?e(n):typeof e=="string"?{message:e}:e,c=(a=(i=o.fatal)!==null&&i!==void 0?i:t)!==null&&a!==void 0?a:!0,u=typeof o=="string"?{message:o}:o;s.addIssue({code:"custom",...u,fatal:c})}}):Xn.create()}const X0={object:Zt.lazycreate};var de;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(de||(de={}));const Q0=(r,e={message:`Input not instance of ${r.name}`})=>Uf(t=>t instanceof r,e),Lf=Yn.create,qf=oi.create,ev=ao.create,tv=ci.create,Hf=ui.create,rv=li.create,nv=ro.create,sv=di.create,iv=fi.create,av=Xn.create,ov=vn.create,cv=Or.create,uv=no.create,lv=bn.create,dv=Zt.create,fv=Zt.strictCreate,hv=hi.create,pv=Zf.create,mv=pi.create,yv=Kr.create,gv=Df.create,vv=so.create,bv=io.create,xv=Mf.create,_v=mi.create,wv=yi.create,kv=gi.create,Sv=vi.create,Av=es.create,Ff=Wt.create,Ov=ur.create,Ev=Gr.create,Iv=Wt.createWithPreprocess,Cv=bu.create;var _=Object.freeze({__proto__:null,defaultErrorMap:Gn,setErrorMap:R0,getErrorMap:Qa,makeIssue:eo,EMPTY_PATH:P0,addIssueToContext:q,ParseStatus:kt,INVALID:pe,DIRTY:Jn,OK:yt,isAborted:pu,isDirty:mu,isValid:ni,isAsync:si,get util(){return je},get objectUtil(){return hu},ZodParsedType:G,getParsedType:zr,ZodType:we,datetimeRegex:$f,ZodString:Yn,ZodNumber:oi,ZodBigInt:ci,ZodBoolean:ui,ZodDate:li,ZodSymbol:ro,ZodUndefined:di,ZodNull:fi,ZodAny:Xn,ZodUnknown:vn,ZodNever:Or,ZodVoid:no,ZodArray:bn,ZodObject:Zt,ZodUnion:hi,ZodDiscriminatedUnion:Zf,ZodIntersection:pi,ZodTuple:Kr,ZodRecord:Df,ZodMap:so,ZodSet:io,ZodFunction:Mf,ZodLazy:mi,ZodLiteral:yi,ZodEnum:gi,ZodNativeEnum:vi,ZodPromise:es,ZodEffects:Wt,ZodTransformer:Wt,ZodOptional:ur,ZodNullable:Gr,ZodDefault:bi,ZodCatch:xi,ZodNaN:ao,BRAND:Y0,ZodBranded:vu,ZodPipeline:bu,ZodReadonly:_i,custom:Uf,Schema:we,ZodSchema:we,late:X0,get ZodFirstPartyTypeKind(){return de},coerce:{string:r=>Yn.create({...r,coerce:!0}),number:r=>oi.create({...r,coerce:!0}),boolean:r=>ui.create({...r,coerce:!0}),bigint:r=>ci.create({...r,coerce:!0}),date:r=>li.create({...r,coerce:!0})},any:av,array:lv,bigint:tv,boolean:Hf,date:rv,discriminatedUnion:pv,effect:Ff,enum:kv,function:xv,instanceof:Q0,intersection:mv,lazy:_v,literal:wv,map:vv,nan:ev,nativeEnum:Sv,never:cv,null:iv,nullable:Ev,number:qf,object:dv,oboolean:()=>Hf().optional(),onumber:()=>qf().optional(),optional:Ov,ostring:()=>Lf().optional(),pipeline:Cv,preprocess:Iv,promise:Av,record:gv,set:bv,strictObject:fv,string:Lf,symbol:nv,transformer:Ff,tuple:yv,undefined:sv,union:hv,unknown:ov,void:uv,NEVER:pe,ZodIssueCode:P,quotelessJson:B0,ZodError:Ft}),jt=class ff extends N0{constructor(t){super(t);K(this,"openAPIRegistry");K(this,"defaultHook");K(this,"openapi",({middleware:t,...n},s,i=this.defaultHook)=>{var u,f,m,D,j,p,g,A,S,B;this.openAPIRegistry.registerPath(n);const a=[];if((u=n.request)!=null&&u.query){const T=zn("query",n.request.query,i);a.push(T)}if((f=n.request)!=null&&f.params){const T=zn("param",n.request.params,i);a.push(T)}if((m=n.request)!=null&&m.headers){const T=zn("header",n.request.headers,i);a.push(T)}if((D=n.request)!=null&&D.cookies){const T=zn("cookie",n.request.cookies,i);a.push(T)}const o=(p=(j=n.request)==null?void 0:j.body)==null?void 0:p.content;if(o)for(const T of Object.keys(o)){if(!o[T])continue;const ve=o[T].schema;if(ve instanceof we){if(zf(T)){const Me=zn("json",ve,i);if((A=(g=n.request)==null?void 0:g.body)!=null&&A.required)a.push(Me);else{const Ve=async(Pe,et)=>{if(Pe.req.header("content-type")&&zf(Pe.req.header("content-type")))return await Me(Pe,et);Pe.req.addValidatedData("json",{}),await et()};a.push(Ve)}}if(Kf(T)){const Me=zn("form",ve,i);if((B=(S=n.request)==null?void 0:S.body)!=null&&B.required)a.push(Me);else{const Ve=async(Pe,et)=>{if(Pe.req.header("content-type")&&Kf(Pe.req.header("content-type")))return await Me(Pe,et);Pe.req.addValidatedData("form",{}),await et()};a.push(Ve)}}}}const c=t?Array.isArray(t)?t:[t]:[];return this.on([n.method],n.path.replaceAll(/\/{(.+?)}/g,"/:$1"),...c,...a,s),this});K(this,"getOpenAPIDocument",t=>{const s=new Wg(this.openAPIRegistry.definitions).generateDocument(t);return this._basePath?Wf(s,this._basePath):s});K(this,"getOpenAPI31Document",t=>{const s=new Gg(this.openAPIRegistry.definitions).generateDocument(t);return this._basePath?Wf(s,this._basePath):s});K(this,"doc",(t,n)=>this.get(t,s=>{const i=typeof n=="function"?n(s):n;try{const a=this.getOpenAPIDocument(i);return s.json(a)}catch(a){return s.json(a,500)}}));K(this,"doc31",(t,n)=>this.get(t,s=>{const i=typeof n=="function"?n(s):n;try{const a=this.getOpenAPI31Document(i);return s.json(a)}catch(a){return s.json(a,500)}}));this.openAPIRegistry=new Ig,this.defaultHook=t==null?void 0:t.defaultHook}route(t,n){const s=t.replaceAll(/:([^\/]+)/g,"{$1}");return super.route(t,n),n instanceof ff?(n.openAPIRegistry.definitions.forEach(i=>{switch(i.type){case"component":return this.openAPIRegistry.registerComponent(i.componentType,i.name,i.component);case"route":return this.openAPIRegistry.registerPath({...i.route,path:Wr(s,i.route.path)});case"webhook":return this.openAPIRegistry.registerWebhook({...i.webhook,path:Wr(s,i.webhook.path)});case"schema":return this.openAPIRegistry.register(i.schema._def.openapi._internal.refId,i.schema);case"parameter":return this.openAPIRegistry.registerParameter(i.schema._def.openapi._internal.refId,i.schema);default:{const a=i;throw new Error(`Unknown registry type: ${a}`)}}}),this):this}basePath(t){return new ff({...super.basePath(t),defaultHook:this.defaultHook})}},Oe=r=>{const e={...r,getRoutingPath(){return r.path.replaceAll(/\/{(.+?)}/g,"/:$1")}};return Object.defineProperty(e,"getRoutingPath",{enumerable:!1})};Sg(_);function Wf(r,e){const t={};return Object.keys(r.paths).forEach(n=>{t[Wr(e,n)]=r.paths[n]}),{...r,paths:t}}function zf(r){return/^application\/([a-z-\.]+\+)?json/.test(r)}function Kf(r){return r.startsWith("multipart/form-data")||r.startsWith("application/x-www-form-urlencoded")}function jv(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(r);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(r,n[s])&&(t[n[s]]=r[n[s]]);return t}function Tv(r,e){var t;return((t=r==null?void 0:r._def)===null||t===void 0?void 0:t.typeName)===e}function wi(r,e){const t=r.ZodType.prototype[e];r.ZodType.prototype[e]=function(...n){const s=t.apply(this,n);return s._def.openapi=this._def.openapi,s}}function Nv(r){if(typeof r.ZodType.prototype.openapi<"u")return;r.ZodType.prototype.openapi=function(s,i){var a,o,c,u,f,m;const D=typeof s=="string"?i:s,j=D??{},{param:p}=j,g=jv(j,["param"]),A=Object.assign(Object.assign({},(a=this._def.openapi)===null||a===void 0?void 0:a._internal),typeof s=="string"?{refId:s}:void 0),S=Object.assign(Object.assign(Object.assign({},(o=this._def.openapi)===null||o===void 0?void 0:o.metadata),g),!((u=(c=this._def.openapi)===null||c===void 0?void 0:c.metadata)===null||u===void 0)&&u.param||p?{param:Object.assign(Object.assign({},(m=(f=this._def.openapi)===null||f===void 0?void 0:f.metadata)===null||m===void 0?void 0:m.param),p)}:void 0),B=new this.constructor(Object.assign(Object.assign({},this._def),{openapi:Object.assign(Object.assign({},Object.keys(A).length>0?{_internal:A}:void 0),Object.keys(S).length>0?{metadata:S}:void 0)}));if(Tv(this,"ZodObject")){const T=this.extend;B.extend=function(...ve){var Me,Ve,Pe,et,mt,$t;const E=T.apply(this,ve);return E._def.openapi={_internal:{extendedFrom:!((Ve=(Me=this._def.openapi)===null||Me===void 0?void 0:Me._internal)===null||Ve===void 0)&&Ve.refId?{refId:(et=(Pe=this._def.openapi)===null||Pe===void 0?void 0:Pe._internal)===null||et===void 0?void 0:et.refId,schema:this}:(mt=this._def.openapi)===null||mt===void 0?void 0:mt._internal.extendedFrom},metadata:($t=E._def.openapi)===null||$t===void 0?void 0:$t.metadata},E}}return B},wi(r,"optional"),wi(r,"nullable"),wi(r,"default"),wi(r,"transform"),wi(r,"refine");const e=r.ZodObject.prototype.deepPartial;r.ZodObject.prototype.deepPartial=function(){const s=this._def.shape(),i=e.apply(this),a=i._def.shape();return Object.entries(a).forEach(([o,c])=>{var u,f;c._def.openapi=(f=(u=s[o])===null||u===void 0?void 0:u._def)===null||f===void 0?void 0:f.openapi}),i._def.openapi=void 0,i};const t=r.ZodObject.prototype.pick;r.ZodObject.prototype.pick=function(...s){const i=t.apply(this,s);return i._def.openapi=void 0,i};const n=r.ZodObject.prototype.omit;r.ZodObject.prototype.omit=function(...s){const i=n.apply(this,s);return i._def.openapi=void 0,i}}new Set(".\\+*[^]$()");var Te;(function(r){r.assertEqual=s=>s;function e(s){}r.assertIs=e;function t(s){throw new Error}r.assertNever=t,r.arrayToEnum=s=>{const i={};for(const a of s)i[a]=a;return i},r.getValidEnumValues=s=>{const i=r.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(const o of i)a[o]=s[o];return r.objectValues(a)},r.objectValues=s=>r.objectKeys(s).map(function(i){return s[i]}),r.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const i=[];for(const a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},r.find=(s,i)=>{for(const a of s)if(i(a))return a},r.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}r.joinValues=n,r.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(Te||(Te={}));var xu;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(xu||(xu={}));const J=Te.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Jr=r=>{switch(typeof r){case"undefined":return J.undefined;case"string":return J.string;case"number":return isNaN(r)?J.nan:J.number;case"boolean":return J.boolean;case"function":return J.function;case"bigint":return J.bigint;case"symbol":return J.symbol;case"object":return Array.isArray(r)?J.array:r===null?J.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?J.promise:typeof Map<"u"&&r instanceof Map?J.map:typeof Set<"u"&&r instanceof Set?J.set:typeof Date<"u"&&r instanceof Date?J.date:J.object;default:return J.unknown}},$=Te.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Bv=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:");class Tt extends Error{constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(i){return i.message},n={_errors:[]},s=i=>{for(const a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(t(a));else{let o=n,c=0;for(;c<a.path.length;){const u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(t(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof Tt))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Te.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},n=[];for(const s of this.issues)s.path.length>0?(t[s.path[0]]=t[s.path[0]]||[],t[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}}Tt.create=r=>new Tt(r);const ts=(r,e)=>{let t;switch(r.code){case $.invalid_type:r.received===J.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case $.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,Te.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:t=`Unrecognized key(s) in object: ${Te.joinValues(r.keys,", ")}`;break;case $.invalid_union:t="Invalid input";break;case $.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${Te.joinValues(r.options)}`;break;case $.invalid_enum_value:t=`Invalid enum value. Expected ${Te.joinValues(r.options)}, received '${r.received}'`;break;case $.invalid_arguments:t="Invalid function arguments";break;case $.invalid_return_type:t="Invalid function return type";break;case $.invalid_date:t="Invalid date";break;case $.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:Te.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case $.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case $.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case $.custom:t="Invalid input";break;case $.invalid_intersection_types:t="Intersection results could not be merged";break;case $.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case $.not_finite:t="Number must be finite";break;default:t=e.defaultError,Te.assertNever(r)}return{message:t}};let Gf=ts;function Rv(r){Gf=r}function oo(){return Gf}const co=r=>{const{data:e,path:t,errorMaps:n,issueData:s}=r,i=[...t,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="";const c=n.filter(u=>!!u).slice().reverse();for(const u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},Pv=[];function H(r,e){const t=oo(),n=co({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===ts?void 0:ts].filter(s=>!!s)});r.common.issues.push(n)}class ft{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const n=[];for(const s of t){if(s.status==="aborted")return ye;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){const n=[];for(const s of t){const i=await s.key,a=await s.value;n.push({key:i,value:a})}return ft.mergeObjectSync(e,n)}static mergeObjectSync(e,t){const n={};for(const s of t){const{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return ye;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}}const ye=Object.freeze({status:"aborted"}),uo=r=>({status:"dirty",value:r}),gt=r=>({status:"valid",value:r}),_u=r=>r.status==="aborted",wu=r=>r.status==="dirty",ki=r=>r.status==="valid",Si=r=>typeof Promise<"u"&&r instanceof Promise;function lo(r,e,t,n){if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(r)}function Jf(r,e,t,n,s){if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(r,t),t}var oe;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(oe||(oe={}));var Ai,Oi;class lr{constructor(e,t,n,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Yf=(r,e)=>{if(ki(e))return{success:!0,data:e.value};if(!r.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Tt(r.common.issues);return this._error=t,this._error}}};function xe(r){if(!r)return{};const{errorMap:e,invalid_type_error:t,required_error:n,description:s}=r;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(i,a)=>{var o,c;const{message:u}=r;return i.code==="invalid_enum_value"?{message:u??a.defaultError}:typeof a.data>"u"?{message:(o=u??n)!==null&&o!==void 0?o:a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:(c=u??t)!==null&&c!==void 0?c:a.defaultError}},description:s}}class ke{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Jr(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Jr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ft,ctx:{common:e.parent.common,data:e.data,parsedType:Jr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(Si(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){var n;const s={common:{issues:[],async:(n=t==null?void 0:t.async)!==null&&n!==void 0?n:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Jr(e)},i=this._parseSync({data:e,path:s.path,parent:s});return Yf(s,i)}async parseAsync(e,t){const n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){const n={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Jr(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Si(s)?s:Promise.resolve(s));return Yf(n,i)}refine(e,t){const n=s=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(s):t;return this._refinement((s,i)=>{const a=e(s),o=()=>i.addIssue({code:$.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,t){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof t=="function"?t(n,s):t),!1))}_refinement(e){return new Gt({schema:this,typeName:fe.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return fr.create(this,this._def)}nullable(){return tn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Kt.create(this,this._def)}promise(){return is.create(this,this._def)}or(e){return ji.create([this,e],this._def)}and(e){return Ti.create(this,e,this._def)}transform(e){return new Gt({...xe(this._def),schema:this,typeName:fe.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new $i({...xe(this._def),innerType:this,defaultValue:t,typeName:fe.ZodDefault})}brand(){return new Au({typeName:fe.ZodBranded,type:this,...xe(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new Zi({...xe(this._def),innerType:this,catchValue:t,typeName:fe.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Di.create(this,e)}readonly(){return Mi.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const $v=/^c[^\s-]{8,}$/i,Zv=/^[0-9a-z]+$/,Dv=/^[0-9A-HJKMNP-TV-Z]{26}$/,Mv=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Vv=/^[a-z0-9_-]{21}$/i,Uv=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Lv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,qv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let ku;const Hv=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Fv=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,Wv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Xf="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",zv=new RegExp(`^${Xf}$`);function Qf(r){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Kv(r){return new RegExp(`^${Qf(r)}$`)}function eh(r){let e=`${Xf}T${Qf(r)}`;const t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Gv(r,e){return!!((e==="v4"||!e)&&Hv.test(r)||(e==="v6"||!e)&&Fv.test(r))}class zt extends ke{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==J.string){const s=this._getOrReturnCtx(e);return H(s,{code:$.invalid_type,expected:J.string,received:s.parsedType}),ye}const t=new ft;let n;for(const s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),t.dirty());else if(s.kind==="max")e.data.length>s.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),t.dirty());else if(s.kind==="length"){const i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(n=this._getOrReturnCtx(e,n),i?H(n,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&H(n,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),t.dirty())}else if(s.kind==="email")Lv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"email",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="emoji")ku||(ku=new RegExp(qv,"u")),ku.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"emoji",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="uuid")Mv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"uuid",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="nanoid")Vv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"nanoid",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="cuid")$v.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"cuid",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="cuid2")Zv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"cuid2",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="ulid")Dv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"ulid",code:$.invalid_string,message:s.message}),t.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),H(n,{validation:"url",code:$.invalid_string,message:s.message}),t.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"regex",code:$.invalid_string,message:s.message}),t.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),t.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),t.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),t.dirty()):s.kind==="datetime"?eh(s).test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:"datetime",message:s.message}),t.dirty()):s.kind==="date"?zv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:"date",message:s.message}),t.dirty()):s.kind==="time"?Kv(s).test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{code:$.invalid_string,validation:"time",message:s.message}),t.dirty()):s.kind==="duration"?Uv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"duration",code:$.invalid_string,message:s.message}),t.dirty()):s.kind==="ip"?Gv(e.data,s.version)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"ip",code:$.invalid_string,message:s.message}),t.dirty()):s.kind==="base64"?Wv.test(e.data)||(n=this._getOrReturnCtx(e,n),H(n,{validation:"base64",code:$.invalid_string,message:s.message}),t.dirty()):Te.assertNever(s);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(s=>e.test(s),{validation:t,code:$.invalid_string,...oe.errToObj(n)})}_addCheck(e){return new zt({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...oe.errToObj(e)})}url(e){return this._addCheck({kind:"url",...oe.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...oe.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...oe.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...oe.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...oe.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...oe.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...oe.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...oe.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...oe.errToObj(e)})}datetime(e){var t,n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(n=e==null?void 0:e.local)!==null&&n!==void 0?n:!1,...oe.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...oe.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...oe.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...oe.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...oe.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...oe.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...oe.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...oe.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...oe.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...oe.errToObj(t)})}nonempty(e){return this.min(1,oe.errToObj(e))}trim(){return new zt({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new zt({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new zt({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}zt.create=r=>{var e;return new zt({checks:[],typeName:fe.ZodString,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...xe(r)})};function Jv(r,e){const t=(r.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=t>n?t:n,i=parseInt(r.toFixed(s).replace(".","")),a=parseInt(e.toFixed(s).replace(".",""));return i%a/Math.pow(10,s)}class Yr extends ke{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==J.number){const s=this._getOrReturnCtx(e);return H(s,{code:$.invalid_type,expected:J.number,received:s.parsedType}),ye}let t;const n=new ft;for(const s of this._def.checks)s.kind==="int"?Te.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),H(t,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),n.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),n.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),n.dirty()):s.kind==="multipleOf"?Jv(e.data,s.value)!==0&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),H(t,{code:$.not_finite,message:s.message}),n.dirty()):Te.assertNever(s);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,oe.toString(t))}gt(e,t){return this.setLimit("min",e,!1,oe.toString(t))}lte(e,t){return this.setLimit("max",e,!0,oe.toString(t))}lt(e,t){return this.setLimit("max",e,!1,oe.toString(t))}setLimit(e,t,n,s){return new Yr({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:oe.toString(s)}]})}_addCheck(e){return new Yr({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:oe.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:oe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:oe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:oe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:oe.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:oe.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:oe.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:oe.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:oe.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Te.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}}Yr.create=r=>new Yr({checks:[],typeName:fe.ZodNumber,coerce:(r==null?void 0:r.coerce)||!1,...xe(r)});class Xr extends ke{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==J.bigint){const s=this._getOrReturnCtx(e);return H(s,{code:$.invalid_type,expected:J.bigint,received:s.parsedType}),ye}let t;const n=new ft;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),n.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),n.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),H(t,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),n.dirty()):Te.assertNever(s);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,oe.toString(t))}gt(e,t){return this.setLimit("min",e,!1,oe.toString(t))}lte(e,t){return this.setLimit("max",e,!0,oe.toString(t))}lt(e,t){return this.setLimit("max",e,!1,oe.toString(t))}setLimit(e,t,n,s){return new Xr({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:oe.toString(s)}]})}_addCheck(e){return new Xr({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:oe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:oe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:oe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:oe.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:oe.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}Xr.create=r=>{var e;return new Xr({checks:[],typeName:fe.ZodBigInt,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,...xe(r)})};class Ei extends ke{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==J.boolean){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.boolean,received:t.parsedType}),ye}return gt(e.data)}}Ei.create=r=>new Ei({typeName:fe.ZodBoolean,coerce:(r==null?void 0:r.coerce)||!1,...xe(r)});class xn extends ke{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==J.date){const s=this._getOrReturnCtx(e);return H(s,{code:$.invalid_type,expected:J.date,received:s.parsedType}),ye}if(isNaN(e.data.getTime())){const s=this._getOrReturnCtx(e);return H(s,{code:$.invalid_date}),ye}const t=new ft;let n;for(const s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),t.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(n=this._getOrReturnCtx(e,n),H(n,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),t.dirty()):Te.assertNever(s);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new xn({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:oe.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:oe.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}xn.create=r=>new xn({checks:[],coerce:(r==null?void 0:r.coerce)||!1,typeName:fe.ZodDate,...xe(r)});class fo extends ke{_parse(e){if(this._getType(e)!==J.symbol){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.symbol,received:t.parsedType}),ye}return gt(e.data)}}fo.create=r=>new fo({typeName:fe.ZodSymbol,...xe(r)});class Ii extends ke{_parse(e){if(this._getType(e)!==J.undefined){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.undefined,received:t.parsedType}),ye}return gt(e.data)}}Ii.create=r=>new Ii({typeName:fe.ZodUndefined,...xe(r)});class Ci extends ke{_parse(e){if(this._getType(e)!==J.null){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.null,received:t.parsedType}),ye}return gt(e.data)}}Ci.create=r=>new Ci({typeName:fe.ZodNull,...xe(r)});class rs extends ke{constructor(){super(...arguments),this._any=!0}_parse(e){return gt(e.data)}}rs.create=r=>new rs({typeName:fe.ZodAny,...xe(r)});class _n extends ke{constructor(){super(...arguments),this._unknown=!0}_parse(e){return gt(e.data)}}_n.create=r=>new _n({typeName:fe.ZodUnknown,...xe(r)});class Ir extends ke{_parse(e){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.never,received:t.parsedType}),ye}}Ir.create=r=>new Ir({typeName:fe.ZodNever,...xe(r)});class ho extends ke{_parse(e){if(this._getType(e)!==J.undefined){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.void,received:t.parsedType}),ye}return gt(e.data)}}ho.create=r=>new ho({typeName:fe.ZodVoid,...xe(r)});class Kt extends ke{_parse(e){const{ctx:t,status:n}=this._processInputParams(e),s=this._def;if(t.parsedType!==J.array)return H(t,{code:$.invalid_type,expected:J.array,received:t.parsedType}),ye;if(s.exactLength!==null){const a=t.data.length>s.exactLength.value,o=t.data.length<s.exactLength.value;(a||o)&&(H(t,{code:a?$.too_big:$.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&t.data.length<s.minLength.value&&(H(t,{code:$.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&t.data.length>s.maxLength.value&&(H(t,{code:$.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((a,o)=>s.type._parseAsync(new lr(t,a,t.path,o)))).then(a=>ft.mergeArray(n,a));const i=[...t.data].map((a,o)=>s.type._parseSync(new lr(t,a,t.path,o)));return ft.mergeArray(n,i)}get element(){return this._def.type}min(e,t){return new Kt({...this._def,minLength:{value:e,message:oe.toString(t)}})}max(e,t){return new Kt({...this._def,maxLength:{value:e,message:oe.toString(t)}})}length(e,t){return new Kt({...this._def,exactLength:{value:e,message:oe.toString(t)}})}nonempty(e){return this.min(1,e)}}Kt.create=(r,e)=>new Kt({type:r,minLength:null,maxLength:null,exactLength:null,typeName:fe.ZodArray,...xe(e)});function ns(r){if(r instanceof Ke){const e={};for(const t in r.shape){const n=r.shape[t];e[t]=fr.create(ns(n))}return new Ke({...r._def,shape:()=>e})}else return r instanceof Kt?new Kt({...r._def,type:ns(r.element)}):r instanceof fr?fr.create(ns(r.unwrap())):r instanceof tn?tn.create(ns(r.unwrap())):r instanceof dr?dr.create(r.items.map(e=>ns(e))):r}class Ke extends ke{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=Te.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==J.object){const c=this._getOrReturnCtx(e);return H(c,{code:$.invalid_type,expected:J.object,received:c.parsedType}),ye}const{status:t,ctx:n}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Ir&&this._def.unknownKeys==="strip"))for(const c in n.data)i.includes(c)||a.push(c);const o=[];for(const c of i){const u=s[c],f=n.data[c];o.push({key:{status:"valid",value:c},value:u._parse(new lr(n,f,n.path,c)),alwaysSet:c in n.data})}if(this._def.catchall instanceof Ir){const c=this._def.unknownKeys;if(c==="passthrough")for(const u of a)o.push({key:{status:"valid",value:u},value:{status:"valid",value:n.data[u]}});else if(c==="strict")a.length>0&&(H(n,{code:$.unrecognized_keys,keys:a}),t.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const u of a){const f=n.data[u];o.push({key:{status:"valid",value:u},value:c._parse(new lr(n,f,n.path,u)),alwaysSet:u in n.data})}}return n.common.async?Promise.resolve().then(async()=>{const c=[];for(const u of o){const f=await u.key,m=await u.value;c.push({key:f,value:m,alwaysSet:u.alwaysSet})}return c}).then(c=>ft.mergeObjectSync(t,c)):ft.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(e){return oe.errToObj,new Ke({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{var s,i,a,o;const c=(a=(i=(s=this._def).errorMap)===null||i===void 0?void 0:i.call(s,t,n).message)!==null&&a!==void 0?a:n.defaultError;return t.code==="unrecognized_keys"?{message:(o=oe.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new Ke({...this._def,unknownKeys:"strip"})}passthrough(){return new Ke({...this._def,unknownKeys:"passthrough"})}extend(e){return new Ke({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Ke({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:fe.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new Ke({...this._def,catchall:e})}pick(e){const t={};return Te.objectKeys(e).forEach(n=>{e[n]&&this.shape[n]&&(t[n]=this.shape[n])}),new Ke({...this._def,shape:()=>t})}omit(e){const t={};return Te.objectKeys(this.shape).forEach(n=>{e[n]||(t[n]=this.shape[n])}),new Ke({...this._def,shape:()=>t})}deepPartial(){return ns(this)}partial(e){const t={};return Te.objectKeys(this.shape).forEach(n=>{const s=this.shape[n];e&&!e[n]?t[n]=s:t[n]=s.optional()}),new Ke({...this._def,shape:()=>t})}required(e){const t={};return Te.objectKeys(this.shape).forEach(n=>{if(e&&!e[n])t[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof fr;)s=s._def.innerType;t[n]=s}}),new Ke({...this._def,shape:()=>t})}keyof(){return th(Te.objectKeys(this.shape))}}Ke.create=(r,e)=>new Ke({shape:()=>r,unknownKeys:"strip",catchall:Ir.create(),typeName:fe.ZodObject,...xe(e)}),Ke.strictCreate=(r,e)=>new Ke({shape:()=>r,unknownKeys:"strict",catchall:Ir.create(),typeName:fe.ZodObject,...xe(e)}),Ke.lazycreate=(r,e)=>new Ke({shape:r,unknownKeys:"strip",catchall:Ir.create(),typeName:fe.ZodObject,...xe(e)});class ji extends ke{_parse(e){const{ctx:t}=this._processInputParams(e),n=this._def.options;function s(i){for(const o of i)if(o.result.status==="valid")return o.result;for(const o of i)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const a=i.map(o=>new Tt(o.ctx.common.issues));return H(t,{code:$.invalid_union,unionErrors:a}),ye}if(t.common.async)return Promise.all(n.map(async i=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await i._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(s);{let i;const a=[];for(const c of n){const u={...t,common:{...t.common,issues:[]},parent:null},f=c._parseSync({data:t.data,path:t.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return t.common.issues.push(...i.ctx.common.issues),i.result;const o=a.map(c=>new Tt(c));return H(t,{code:$.invalid_union,unionErrors:o}),ye}}get options(){return this._def.options}}ji.create=(r,e)=>new ji({options:r,typeName:fe.ZodUnion,...xe(e)});const Qr=r=>r instanceof Bi?Qr(r.schema):r instanceof Gt?Qr(r.innerType()):r instanceof Ri?[r.value]:r instanceof en?r.options:r instanceof Pi?Te.objectValues(r.enum):r instanceof $i?Qr(r._def.innerType):r instanceof Ii?[void 0]:r instanceof Ci?[null]:r instanceof fr?[void 0,...Qr(r.unwrap())]:r instanceof tn?[null,...Qr(r.unwrap())]:r instanceof Au||r instanceof Mi?Qr(r.unwrap()):r instanceof Zi?Qr(r._def.innerType):[];class po extends ke{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==J.object)return H(t,{code:$.invalid_type,expected:J.object,received:t.parsedType}),ye;const n=this.discriminator,s=t.data[n],i=this.optionsMap.get(s);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(H(t,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),ye)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){const s=new Map;for(const i of t){const a=Qr(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new po({typeName:fe.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,...xe(n)})}}function Su(r,e){const t=Jr(r),n=Jr(e);if(r===e)return{valid:!0,data:r};if(t===J.object&&n===J.object){const s=Te.objectKeys(e),i=Te.objectKeys(r).filter(o=>s.indexOf(o)!==-1),a={...r,...e};for(const o of i){const c=Su(r[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(t===J.array&&n===J.array){if(r.length!==e.length)return{valid:!1};const s=[];for(let i=0;i<r.length;i++){const a=r[i],o=e[i],c=Su(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return t===J.date&&n===J.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}class Ti extends ke{_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(_u(i)||_u(a))return ye;const o=Su(i.value,a.value);return o.valid?((wu(i)||wu(a))&&t.dirty(),{status:t.value,value:o.data}):(H(n,{code:$.invalid_intersection_types}),ye)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}Ti.create=(r,e,t)=>new Ti({left:r,right:e,typeName:fe.ZodIntersection,...xe(t)});class dr extends ke{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==J.array)return H(n,{code:$.invalid_type,expected:J.array,received:n.parsedType}),ye;if(n.data.length<this._def.items.length)return H(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ye;!this._def.rest&&n.data.length>this._def.items.length&&(H(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const s=[...n.data].map((i,a)=>{const o=this._def.items[a]||this._def.rest;return o?o._parse(new lr(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>ft.mergeArray(t,i)):ft.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new dr({...this._def,rest:e})}}dr.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new dr({items:r,typeName:fe.ZodTuple,rest:null,...xe(e)})};class Ni extends ke{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==J.object)return H(n,{code:$.invalid_type,expected:J.object,received:n.parsedType}),ye;const s=[],i=this._def.keyType,a=this._def.valueType;for(const o in n.data)s.push({key:i._parse(new lr(n,o,n.path,o)),value:a._parse(new lr(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?ft.mergeObjectAsync(t,s):ft.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof ke?new Ni({keyType:e,valueType:t,typeName:fe.ZodRecord,...xe(n)}):new Ni({keyType:zt.create(),valueType:e,typeName:fe.ZodRecord,...xe(t)})}}class mo extends ke{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==J.map)return H(n,{code:$.invalid_type,expected:J.map,received:n.parsedType}),ye;const s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new lr(n,o,n.path,[u,"key"])),value:i._parse(new lr(n,c,n.path,[u,"value"]))}));if(n.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of a){const u=await c.key,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return ye;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of a){const u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return ye;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}}}}mo.create=(r,e,t)=>new mo({valueType:e,keyType:r,typeName:fe.ZodMap,...xe(t)});class wn extends ke{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==J.set)return H(n,{code:$.invalid_type,expected:J.set,received:n.parsedType}),ye;const s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(H(n,{code:$.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(H(n,{code:$.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());const i=this._def.valueType;function a(c){const u=new Set;for(const f of c){if(f.status==="aborted")return ye;f.status==="dirty"&&t.dirty(),u.add(f.value)}return{status:t.value,value:u}}const o=[...n.data.values()].map((c,u)=>i._parse(new lr(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,t){return new wn({...this._def,minSize:{value:e,message:oe.toString(t)}})}max(e,t){return new wn({...this._def,maxSize:{value:e,message:oe.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}wn.create=(r,e)=>new wn({valueType:r,minSize:null,maxSize:null,typeName:fe.ZodSet,...xe(e)});class ss extends ke{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==J.function)return H(t,{code:$.invalid_type,expected:J.function,received:t.parsedType}),ye;function n(o,c){return co({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,oo(),ts].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function s(o,c){return co({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,oo(),ts].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}const i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof is){const o=this;return gt(async function(...c){const u=new Tt([]),f=await o._def.args.parseAsync(c,i).catch(D=>{throw u.addIssue(n(c,D)),u}),m=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(m,i).catch(D=>{throw u.addIssue(s(m,D)),u})})}else{const o=this;return gt(function(...c){const u=o._def.args.safeParse(c,i);if(!u.success)throw new Tt([n(c,u.error)]);const f=Reflect.apply(a,this,u.data),m=o._def.returns.safeParse(f,i);if(!m.success)throw new Tt([s(f,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ss({...this._def,args:dr.create(e).rest(_n.create())})}returns(e){return new ss({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,n){return new ss({args:e||dr.create([]).rest(_n.create()),returns:t||_n.create(),typeName:fe.ZodFunction,...xe(n)})}}class Bi extends ke{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Bi.create=(r,e)=>new Bi({getter:r,typeName:fe.ZodLazy,...xe(e)});class Ri extends ke{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return H(t,{received:t.data,code:$.invalid_literal,expected:this._def.value}),ye}return{status:"valid",value:e.data}}get value(){return this._def.value}}Ri.create=(r,e)=>new Ri({value:r,typeName:fe.ZodLiteral,...xe(e)});function th(r,e){return new en({values:r,typeName:fe.ZodEnum,...xe(e)})}class en extends ke{constructor(){super(...arguments),Ai.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),n=this._def.values;return H(t,{expected:Te.joinValues(n),received:t.parsedType,code:$.invalid_type}),ye}if(lo(this,Ai)||Jf(this,Ai,new Set(this._def.values)),!lo(this,Ai).has(e.data)){const t=this._getOrReturnCtx(e),n=this._def.values;return H(t,{received:t.data,code:$.invalid_enum_value,options:n}),ye}return gt(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return en.create(e,{...this._def,...t})}exclude(e,t=this._def){return en.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}}Ai=new WeakMap,en.create=th;class Pi extends ke{constructor(){super(...arguments),Oi.set(this,void 0)}_parse(e){const t=Te.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==J.string&&n.parsedType!==J.number){const s=Te.objectValues(t);return H(n,{expected:Te.joinValues(s),received:n.parsedType,code:$.invalid_type}),ye}if(lo(this,Oi)||Jf(this,Oi,new Set(Te.getValidEnumValues(this._def.values))),!lo(this,Oi).has(e.data)){const s=Te.objectValues(t);return H(n,{received:n.data,code:$.invalid_enum_value,options:s}),ye}return gt(e.data)}get enum(){return this._def.values}}Oi=new WeakMap,Pi.create=(r,e)=>new Pi({values:r,typeName:fe.ZodNativeEnum,...xe(e)});class is extends ke{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==J.promise&&t.common.async===!1)return H(t,{code:$.invalid_type,expected:J.promise,received:t.parsedType}),ye;const n=t.parsedType===J.promise?t.data:Promise.resolve(t.data);return gt(n.then(s=>this._def.type.parseAsync(s,{path:t.path,errorMap:t.common.contextualErrorMap})))}}is.create=(r,e)=>new is({type:r,typeName:fe.ZodPromise,...xe(e)});class Gt extends ke{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===fe.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{H(n,a),a.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){const a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(t.value==="aborted")return ye;const c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?ye:c.status==="dirty"||t.value==="dirty"?uo(c.value):c});{if(t.value==="aborted")return ye;const o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?ye:o.status==="dirty"||t.value==="dirty"?uo(o.value):o}}if(s.type==="refinement"){const a=o=>{const c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){const o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?ye:(o.status==="dirty"&&t.dirty(),a(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?ye:(o.status==="dirty"&&t.dirty(),a(o.value).then(()=>({status:t.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){const a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!ki(a))return a;const o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>ki(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:t.value,value:o})):a);Te.assertNever(s)}}Gt.create=(r,e,t)=>new Gt({schema:r,typeName:fe.ZodEffects,effect:e,...xe(t)}),Gt.createWithPreprocess=(r,e,t)=>new Gt({schema:e,effect:{type:"preprocess",transform:r},typeName:fe.ZodEffects,...xe(t)});class fr extends ke{_parse(e){return this._getType(e)===J.undefined?gt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}fr.create=(r,e)=>new fr({innerType:r,typeName:fe.ZodOptional,...xe(e)});class tn extends ke{_parse(e){return this._getType(e)===J.null?gt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}tn.create=(r,e)=>new tn({innerType:r,typeName:fe.ZodNullable,...xe(e)});class $i extends ke{_parse(e){const{ctx:t}=this._processInputParams(e);let n=t.data;return t.parsedType===J.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}$i.create=(r,e)=>new $i({innerType:r,typeName:fe.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...xe(e)});class Zi extends ke{_parse(e){const{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Si(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Tt(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Tt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}Zi.create=(r,e)=>new Zi({innerType:r,typeName:fe.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...xe(e)});class yo extends ke{_parse(e){if(this._getType(e)!==J.nan){const t=this._getOrReturnCtx(e);return H(t,{code:$.invalid_type,expected:J.nan,received:t.parsedType}),ye}return{status:"valid",value:e.data}}}yo.create=r=>new yo({typeName:fe.ZodNaN,...xe(r)});const Yv=Symbol("zod_brand");class Au extends ke{_parse(e){const{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}}class Di extends ke{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ye:s.status==="dirty"?(t.dirty(),uo(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{const s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ye:s.status==="dirty"?(t.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,t){return new Di({in:e,out:t,typeName:fe.ZodPipeline})}}class Mi extends ke{_parse(e){const t=this._def.innerType._parse(e),n=s=>(ki(s)&&(s.value=Object.freeze(s.value)),s);return Si(t)?t.then(s=>n(s)):n(t)}unwrap(){return this._def.innerType}}Mi.create=(r,e)=>new Mi({innerType:r,typeName:fe.ZodReadonly,...xe(e)});function rh(r,e={},t){return r?rs.create().superRefine((n,s)=>{var i,a;if(!r(n)){const o=typeof e=="function"?e(n):typeof e=="string"?{message:e}:e,c=(a=(i=o.fatal)!==null&&i!==void 0?i:t)!==null&&a!==void 0?a:!0,u=typeof o=="string"?{message:o}:o;s.addIssue({code:"custom",...u,fatal:c})}}):rs.create()}const Xv={object:Ke.lazycreate};var fe;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(fe||(fe={}));const Qv=(r,e={message:`Input not instance of ${r.name}`})=>rh(t=>t instanceof r,e),nh=zt.create,sh=Yr.create,eb=yo.create,tb=Xr.create,ih=Ei.create,rb=xn.create,nb=fo.create,sb=Ii.create,ib=Ci.create,ab=rs.create,ob=_n.create,cb=Ir.create,ub=ho.create,lb=Kt.create,db=Ke.create,fb=Ke.strictCreate,hb=ji.create,pb=po.create,mb=Ti.create,yb=dr.create,gb=Ni.create,vb=mo.create,bb=wn.create,xb=ss.create,_b=Bi.create,wb=Ri.create,kb=en.create,Sb=Pi.create,Ab=is.create,ah=Gt.create,Ob=fr.create,Eb=tn.create,Ib=Gt.createWithPreprocess,Cb=Di.create;var d=Object.freeze({__proto__:null,defaultErrorMap:ts,setErrorMap:Rv,getErrorMap:oo,makeIssue:co,EMPTY_PATH:Pv,addIssueToContext:H,ParseStatus:ft,INVALID:ye,DIRTY:uo,OK:gt,isAborted:_u,isDirty:wu,isValid:ki,isAsync:Si,get util(){return Te},get objectUtil(){return xu},ZodParsedType:J,getParsedType:Jr,ZodType:ke,datetimeRegex:eh,ZodString:zt,ZodNumber:Yr,ZodBigInt:Xr,ZodBoolean:Ei,ZodDate:xn,ZodSymbol:fo,ZodUndefined:Ii,ZodNull:Ci,ZodAny:rs,ZodUnknown:_n,ZodNever:Ir,ZodVoid:ho,ZodArray:Kt,ZodObject:Ke,ZodUnion:ji,ZodDiscriminatedUnion:po,ZodIntersection:Ti,ZodTuple:dr,ZodRecord:Ni,ZodMap:mo,ZodSet:wn,ZodFunction:ss,ZodLazy:Bi,ZodLiteral:Ri,ZodEnum:en,ZodNativeEnum:Pi,ZodPromise:is,ZodEffects:Gt,ZodTransformer:Gt,ZodOptional:fr,ZodNullable:tn,ZodDefault:$i,ZodCatch:Zi,ZodNaN:yo,BRAND:Yv,ZodBranded:Au,ZodPipeline:Di,ZodReadonly:Mi,custom:rh,Schema:ke,ZodSchema:ke,late:Xv,get ZodFirstPartyTypeKind(){return fe},coerce:{string:r=>zt.create({...r,coerce:!0}),number:r=>Yr.create({...r,coerce:!0}),boolean:r=>Ei.create({...r,coerce:!0}),bigint:r=>Xr.create({...r,coerce:!0}),date:r=>xn.create({...r,coerce:!0})},any:ab,array:lb,bigint:tb,boolean:ih,date:rb,discriminatedUnion:pb,effect:ah,enum:kb,function:xb,instanceof:Qv,intersection:mb,lazy:_b,literal:wb,map:vb,nan:eb,nativeEnum:Sb,never:cb,null:ib,nullable:Eb,number:sh,object:db,oboolean:()=>ih().optional(),onumber:()=>sh().optional(),optional:Ob,ostring:()=>nh().optional(),pipeline:Cb,preprocess:Ib,promise:Ab,record:gb,set:bb,strictObject:fb,string:nh,symbol:nb,transformer:ah,tuple:yb,undefined:sb,union:hb,unknown:ob,void:ub,NEVER:ye,ZodIssueCode:$,quotelessJson:Bv,ZodError:Tt});Nv(d);const as=d.object({start:d.number(),limit:d.number(),length:d.number()}),Ou=d.object({created_at:d.string(),updated_at:d.string()}),jb=d.object({email:d.string().optional(),email_verified:d.boolean().optional(),name:d.string().optional(),username:d.string().optional(),given_name:d.string().optional(),phone_number:d.string().optional(),phone_verified:d.boolean().optional(),family_name:d.string().optional()}).catchall(d.any()),Tb=d.object({connection:d.string(),user_id:d.string(),provider:d.string(),isSocial:d.boolean(),access_token:d.string().optional(),access_token_secret:d.string().optional(),refresh_token:d.string().optional(),profileData:jb.optional()}),Eu=d.object({email:d.string().optional(),username:d.string().optional(),given_name:d.string().optional(),family_name:d.string().optional(),nickname:d.string().optional(),name:d.string().optional(),picture:d.string().optional(),locale:d.string().optional(),linked_to:d.string().optional(),profileData:d.string().optional(),user_id:d.string().optional(),app_metadata:d.any().default({}).optional(),user_metadata:d.any().default({}).optional()}),Iu=Eu.extend({email_verified:d.boolean().default(!1),verify_email:d.boolean().optional(),last_ip:d.string().optional(),last_login:d.string().optional(),user_id:d.string().optional(),provider:d.string().default("email"),connection:d.string().default("email")}),oh=d.object({...Iu.shape,...Ou.shape,user_id:d.string(),email:d.string(),is_social:d.boolean(),login_count:d.number(),identities:d.array(Tb).optional()}),Cr=oh;Eu.extend({email:d.string(),login_count:d.number(),multifactor:d.array(d.string()).optional(),last_ip:d.string().optional(),last_login:d.string().optional(),user_id:d.string()}).catchall(d.any());const Nb="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let Bb=(r=21)=>{let e="",t=crypto.getRandomValues(new Uint8Array(r));for(;r--;)e+=Nb[t[r]&63];return e};const Rb=d.object({audience:d.string().optional(),recipient:d.string().optional(),createUpnClaim:d.boolean().optional(),mapUnknownClaimsAsIs:d.boolean().optional(),passthroughClaimsWithNoMapping:d.boolean().optional(),mapIdentities:d.boolean().optional(),signatureAlgorithm:d.string().optional(),digestAlgorithm:d.string().optional(),issuer:d.string().optional(),destination:d.string().optional(),lifetimeInSeconds:d.number().optional(),signResponse:d.boolean().optional(),nameIdentifierFormat:d.string().optional(),nameIdentifierProbes:d.array(d.string()).optional(),authnContextClassRef:d.string().optional(),mappings:d.record(d.string()).optional()}),Cu=d.object({id:d.string(),name:d.string(),callbacks:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs whitelisted to use as a callback to the client after authentication."}),allowed_origins:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs allowed to make requests from JavaScript to Auth0 API (typically used with CORS). By default, all your callback URLs will be allowed. This field allows you to enter other origins if necessary. You can also use wildcards at the subdomain level. Query strings and hash information are not taken into account when validating these URLs."}),web_origins:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of allowed origins for use with Cross-Origin Authentication, Device Flow, and web message response mode."}),allowed_logout_urls:d.array(d.string()).default([]).optional().openapi({description:"Comma-separated list of URLs that are valid to redirect to after logout from Auth0. Wildcards are allowed for subdomains."}),allowed_clients:d.array(d.string()).default([]).optional().openapi({description:"Ids of clients that will be allowed to perform delegation requests. Clients that will be allowed to make delegation request. By default, all your clients will be allowed. This field allows you to specify specific clients"}),addons:d.object({samlp:Rb.optional()}).default({}).optional().openapi({description:"Addons associated with the client. The key is the addon's package name and the value is an object with the configuration for the addon."}),email_validation:d.enum(["enabled","disabled","enforced"]).default("enforced").optional().openapi({description:"Defines if it possible to sign in with an unverified email and if verification emails will be sent. This is not available in auth0"}),client_secret:d.string().default(()=>Bb()).optional(),disable_sign_ups:d.boolean().optional().default(!1).openapi({description:"Prevents users from signing up using the hosted login page. This is not available in auth0"})}),os=d.object({created_at:d.string().transform(r=>r===null?"":r),updated_at:d.string().transform(r=>r===null?"":r),...Cu.shape});var ch=(r=>(r.TOKEN="token",r.TOKEN_ID_TOKEN="token id_token",r.CODE="code",r))(ch||{}),uh=(r=>(r.QUERY="query",r.FRAGMENT="fragment",r.FORM_POST="form_post",r.WEB_MESSAGE="web_message",r.SAML_POST="saml_post",r))(uh||{}),lh=(r=>(r.S265="S256",r.plain="plain",r))(lh||{});const Pb=d.object({client_id:d.string(),vendor_id:d.string().optional(),response_type:d.nativeEnum(ch).optional(),response_mode:d.nativeEnum(uh).optional(),redirect_uri:d.string().optional(),audience:d.string().optional(),state:d.string().optional(),nonce:d.string().optional(),scope:d.string().optional(),prompt:d.string().optional(),code_challenge_method:d.nativeEnum(lh).optional(),code_challenge:d.string().optional(),username:d.string().optional(),ui_locales:d.string().optional()}),dh=d.object({colors:d.object({primary:d.string(),page_background:d.object({type:d.string().optional(),start:d.string().optional(),end:d.string().optional(),angle_deg:d.number().optional()}).optional()}).optional(),logo_url:d.string().optional(),favicon_url:d.string().optional(),font:d.object({url:d.string()}).optional()}),ju=d.object({id:d.string().optional(),name:d.string(),strategy:d.enum(["google-oauth2","facebook","vipps","freja","apple","email","Username-Password-Authentication","oidc","oauth2","custom"]).optional(),options:d.object({kid:d.string().optional(),team_id:d.string().optional(),realms:d.string().optional(),client_id:d.string().optional(),client_secret:d.string().optional(),app_secret:d.string().optional(),scope:d.string().optional(),authorization_endpoint:d.string().default("").optional(),token_endpoint:d.string().default("").optional(),userinfo_endpoint:d.string().default("").optional(),jwks_uri:d.string().default("").optional(),discovery_url:d.string().default("").optional(),issuer:d.string().default("").optional()}).default({}).optional(),enabled_clients:d.array(d.string()).default([]).optional(),response_type:d.custom().optional(),response_mode:d.custom().optional()}),cs=d.object({id:d.string(),created_at:d.string().transform(r=>r===null?"":r),updated_at:d.string().transform(r=>r===null?"":r)}).extend(ju.shape),Tu=d.object({name:d.string(),audience:d.string(),sender_email:d.string().email(),sender_name:d.string(),support_url:d.string().url().optional(),logo:d.string().url().optional(),primary_color:d.string().optional(),secondary_color:d.string().optional(),language:d.string().optional()}),Vi=d.object({created_at:d.string().transform(r=>r===null?"":r),updated_at:d.string().transform(r=>r===null?"":r),id:d.string(),...Tu.shape});d.object({logoUrl:d.string(),loginBackgroundImage:d.string().nullish(),style:d.object({primaryColor:d.string(),buttonTextColor:d.string(),primaryHoverColor:d.string()}),supportEmail:d.string().nullable(),supportUrl:d.string().nullable(),name:d.string(),showGreyishBackground:d.boolean().optional(),termsAndConditionsUrl:d.string().nullable(),companyName:d.string().optional(),checkoutHideSocial:d.boolean().optional(),siteUrl:d.string().nullable(),manageSubscriptionsUrl:d.string().optional()});const $b=d.object({domain:d.string(),dkim_private_key:d.string().optional(),dkim_public_key:d.string().optional(),email_api_key:d.string().optional(),email_service:d.union([d.literal("mailgun"),d.literal("mailchannels")]).optional()});d.object({...os.shape,domains:d.array($b),tenant:Vi,connections:d.array(cs)});const Zb=d.enum(["password_reset","email_verification","otp","authorization_code","oauth2_state","ticket"]),Db=d.object({code_id:d.string().openapi({description:"The code that will be used in for instance an email verification flow"}),login_id:d.string().openapi({description:"The id of the login session that the code is connected to"}),connection_id:d.string().optional().openapi({description:"The connection that the code is connected to"}),code_type:Zb,expires_at:d.string(),used_at:d.string().optional(),user_id:d.string().optional()});d.object({...Db.shape,created_at:d.string()});const Mb=d.object({domain:d.string(),dkim_private_key:d.string().optional(),dkim_public_key:d.string().optional(),email_api_key:d.string().optional(),email_service:d.enum(["mailgun","mailchannels"])});Ou.extend({...Mb.shape,id:d.string()});const Nu=d.object({trigger_id:d.enum(["pre-user-signup","post-user-registration","post-user-login"]),enabled:d.boolean().default(!1),url:d.string(),hook_id:d.string().optional(),synchronous:d.boolean().default(!1),priority:d.number().optional()}),Ui=Nu.extend({...Ou.shape,hook_id:d.string()}),fh=d.object({alg:d.enum(["RS256","RS384","RS512","ES256","ES384","ES512","HS256","HS384","HS512"]),e:d.string(),kid:d.string(),kty:d.enum(["RSA","EC","oct"]),n:d.string(),x5t:d.string().optional(),x5c:d.array(d.string()).optional(),use:d.enum(["sig","enc"]).optional()}),Vb=d.object({keys:d.array(fh)}),hh=d.object({issuer:d.string(),authorization_endpoint:d.string(),token_endpoint:d.string(),device_authorization_endpoint:d.string(),userinfo_endpoint:d.string(),mfa_challenge_endpoint:d.string(),jwks_uri:d.string(),registration_endpoint:d.string(),revocation_endpoint:d.string(),scopes_supported:d.array(d.string()),response_types_supported:d.array(d.string()),code_challenge_methods_supported:d.array(d.string()),response_modes_supported:d.array(d.string()),subject_types_supported:d.array(d.string()),id_token_signing_alg_values_supported:d.array(d.string()),token_endpoint_auth_methods_supported:d.array(d.string()),claims_supported:d.array(d.string()),request_uri_parameter_supported:d.boolean(),request_parameter_supported:d.boolean(),token_endpoint_auth_signing_alg_values_supported:d.array(d.string())}),Ub=d.object({auth0Client:d.string().optional(),authParams:Pb,expires_at:d.string(),deleted_at:d.string().optional(),ip:d.string().optional()}).openapi({description:"This represents a login sesion"});d.object({...Ub.shape,login_id:d.string().openapi({description:"This is is used as the state in the universal login"}),created_at:d.string(),updated_at:d.string()});var Bu=(r=>(r.FAILED_SILENT_AUTH="fsa",r.FAILED_SIGNUP="fs",r.FAILED_LOGIN="f",r.FAILED_LOGIN_INCORRECT_PASSWORD="fp",r.FAILED_CHANGE_PASSWORD="fcp",r.FAILED_BY_CONNECTOR="fc",r.FAILED_LOGIN_INVALID_EMAIL_USERNAME="fu",r.FAILED_HOOK="fh",r.FAILED_CROSS_ORIGIN_AUTHENTICATION="fcoa",r.SUCCESS_API_OPERATION="sapi",r.SUCCESS_CHANGE_PASSWORD="scp",r.SUCCESS_CHANGE_PASSWORD_REQUEST="scpr",r.SUCCESS_CHANGE_USERNAME="scu",r.SUCCESS_CROSS_ORIGIN_AUTHENTICATION="scoa",r.SUCCESS_EXCHANGE_AUTHORIZATION_CODE_FOR_ACCESS_TOKEN="seacft",r.SUCCESS_EXCHANGE_REFRESH_TOKEN_FOR_ACCESS_TOKEN="serft",r.SUCCESS_LOGIN="s",r.SUCCESS_LOGOUT="slo",r.SUCCESS_SIGNUP="ss",r.SUCCESS_SILENT_AUTH="ssa",r.SUCCESS_VERIFICATION_EMAIL="sv",r.SUCCESS_VERIFICATION_EMAIL_REQUEST="svr",r.CODE_LINK_SENT="cls",r))(Bu||{});const Lb=d.enum(["cls","fsa","fs","f","fc","fcoa","fcp","fh","fp","fs","fu","s","sapi","scoa","scp","scpr","scu","seacft","serft","slo","ss","ssa","sv","svr"]),qb=d.object({name:d.string(),version:d.string(),env:d.object({node:d.string().optional()}).optional()}),Ru=d.object({type:Lb,date:d.string(),description:d.string().optional(),log_id:d.string().optional(),_id:d.string().optional(),ip:d.string(),user_agent:d.string(),details:d.any().optional(),isMobile:d.boolean(),user_id:d.string().optional(),user_name:d.string().optional(),connection:d.string().optional(),connection_id:d.string().optional(),client_id:d.string().optional(),client_name:d.string().optional(),audience:d.string().optional(),scope:d.array(d.string()).optional(),strategy:d.string().optional(),strategy_type:d.string().optional(),hostname:d.string().optional(),auth0_client:qb.optional()}),Hb=d.object({user_id:d.string(),password:d.string(),algorithm:d.enum(["bcrypt","argon2id"]).default("argon2id")});d.object({...Hb.shape,created_at:d.string(),updated_at:d.string()});const Fb=d.object({session_id:d.string(),client_id:d.string(),expires_at:d.string(),used_at:d.string(),deleted_at:d.string().optional(),user_id:d.string()});d.object({created_at:d.string(),...Fb.shape}),d.object({kid:d.string().openapi({description:"The key id of the signing key"}),cert:d.string().openapi({description:"The public certificate of the signing key"}),fingerprint:d.string().openapi({description:"The cert fingerprint"}),thumbprint:d.string().openapi({description:"The cert thumbprint"}),pkcs7:d.string().optional().openapi({description:"The private key in pkcs7 format"}),current:d.boolean().optional().openapi({description:"True if the key is the current key"}),next:d.boolean().optional().openapi({description:"True if the key is the next key"}),previous:d.boolean().optional().openapi({description:"True if the key is the previous key"}),current_since:d.string().optional().openapi({description:"The date and time when the key became the current key"}),current_until:d.string().optional().openapi({description:"The date and time when the current key was rotated"}),revoked:d.boolean().optional().openapi({description:"True if the key is revoked"}),revoked_at:d.string().optional().openapi({description:"The date and time when the key was revoked"})});var ph=(r=>(r.RefreshToken="refresh_token",r.AuthorizationCode="authorization_code",r.ClientCredential="client_credentials",r.Passwordless="passwordless",r.Password="password",r))(ph||{});const Pu=d.nativeEnum(ph);d.object({grant_type:Pu.refine(r=>r==="authorization_code"),code:d.string(),client_secret:d.string(),client_id:d.string()}),d.object({grant_type:Pu.refine(r=>r==="authorization_code"),code:d.string(),code_verifier:d.string(),client_id:d.string().optional(),redirect_uri:d.string()}),d.object({grant_type:Pu.refine(r=>r==="client_credentials"),scope:d.string().optional(),client_secret:d.string(),client_id:d.string(),audience:d.string().optional()}),d.object({access_token:d.string(),id_token:d.string().optional(),scope:d.string().optional(),state:d.string().optional(),refresh_token:d.string().optional(),token_type:d.string(),expires_in:d.number()}),d.object({code:d.string(),state:d.string().optional()});const Wb=d.object({button_border_radius:d.number(),button_border_weight:d.number(),buttons_style:d.enum(["pill"]),input_border_radius:d.number(),input_border_weight:d.number(),inputs_style:d.enum(["pill"]),show_widget_shadow:d.boolean(),widget_border_weight:d.number(),widget_corner_radius:d.number()}),zb=d.object({base_focus_color:d.string(),base_hover_color:d.string(),body_text:d.string(),captcha_widget_theme:d.enum(["auto"]),error:d.string(),header:d.string(),icons:d.string(),input_background:d.string(),input_border:d.string(),input_filled_text:d.string(),input_labels_placeholders:d.string(),links_focused_components:d.string(),primary_button:d.string(),primary_button_label:d.string(),secondary_button_border:d.string(),secondary_button_label:d.string(),success:d.string(),widget_background:d.string(),widget_border:d.string()}),us=d.object({bold:d.boolean(),size:d.number()}),Kb=d.object({body_text:us,buttons_text:us,font_url:d.string(),input_labels:us,links:us,links_style:d.enum(["normal"]),reference_text_size:d.number(),subtitle:us,title:us}),Gb=d.object({background_color:d.string(),background_image_url:d.string(),page_layout:d.enum(["center"])}),Jb=d.object({header_text_alignment:d.enum(["center"]),logo_height:d.number(),logo_position:d.enum(["center"]),logo_url:d.string(),social_buttons_layout:d.enum(["bottom"])});d.object({borders:Wb,colors:zb,displayName:d.string(),fonts:Kb,page_background:Gb,widget:Jb}).extend({themeId:d.string()});const $u=d.object({universal_login_experience:d.enum(["new","classic"]).default("new"),identifier_first:d.boolean().default(!0),password_first:d.boolean().default(!1),webauthn_platform_first_factor:d.boolean()});var go=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Yb(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}function Xb(r){if(r.__esModule)return r;var e=r.default;if(typeof e=="function"){var t=function n(){return this instanceof n?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};t.prototype=e.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(r).forEach(function(n){var s=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:function(){return r[n]}})}),t}/*! *****************************************************************************
|
|
2
|
+
Copyright (C) Microsoft. All rights reserved.
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
4
|
+
this file except in compliance with the License. You may obtain a copy of the
|
|
5
|
+
License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
|
|
7
|
+
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
8
|
+
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
|
9
|
+
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
|
10
|
+
MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
11
|
+
|
|
12
|
+
See the Apache Version 2.0 License for specific language governing permissions
|
|
13
|
+
and limitations under the License.
|
|
14
|
+
***************************************************************************** */var mh;(function(r){(function(e){var t=typeof globalThis=="object"?globalThis:typeof go=="object"?go:typeof self=="object"?self:typeof this=="object"?this:o(),n=s(r);typeof t.Reflect<"u"&&(n=s(t.Reflect,n)),e(n,t),typeof t.Reflect>"u"&&(t.Reflect=r);function s(c,u){return function(f,m){Object.defineProperty(c,f,{configurable:!0,writable:!0,value:m}),u&&u(f,m)}}function i(){try{return Function("return this;")()}catch{}}function a(){try{return(0,eval)("(function() { return this; })()")}catch{}}function o(){return i()||a()}})(function(e,t){var n=Object.prototype.hasOwnProperty,s=typeof Symbol=="function",i=s&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",a=s&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",o=typeof Object.create=="function",c={__proto__:[]}instanceof Array,u=!o&&!c,f={create:o?function(){return af(Object.create(null))}:c?function(){return af({__proto__:null})}:function(){return af({})},has:u?function(x,k){return n.call(x,k)}:function(x,k){return k in x},get:u?function(x,k){return n.call(x,k)?x[k]:void 0}:function(x,k){return x[k]}},m=Object.getPrototypeOf(Function),D=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:B1(),j=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:R1(),p=typeof WeakMap=="function"?WeakMap:P1(),g=s?Symbol.for("@reflect-metadata:registry"):void 0,A=j1(),S=T1(A);function B(x,k,C,U){if(ee(C)){if(!ag(x))throw new TypeError;if(!og(k))throw new TypeError;return O(x,k)}else{if(!ag(x))throw new TypeError;if(!qe(k))throw new TypeError;if(!qe(U)&&!ee(U)&&!at(U))throw new TypeError;return at(U)&&(U=void 0),C=Ar(C),w(x,k,C,U)}}e("decorate",B);function T(x,k){function C(U,le){if(!qe(U))throw new TypeError;if(!ee(le)&&!I1(le))throw new TypeError;Ae(x,k,U,le)}return C}e("metadata",T);function ve(x,k,C,U){if(!qe(C))throw new TypeError;return ee(U)||(U=Ar(U)),Ae(x,k,C,U)}e("defineMetadata",ve);function Me(x,k,C){if(!qe(k))throw new TypeError;return ee(C)||(C=Ar(C)),b(x,k,C)}e("hasMetadata",Me);function Ve(x,k,C){if(!qe(k))throw new TypeError;return ee(C)||(C=Ar(C)),v(x,k,C)}e("hasOwnMetadata",Ve);function Pe(x,k,C){if(!qe(k))throw new TypeError;return ee(C)||(C=Ar(C)),I(x,k,C)}e("getMetadata",Pe);function et(x,k,C){if(!qe(k))throw new TypeError;return ee(C)||(C=Ar(C)),M(x,k,C)}e("getOwnMetadata",et);function mt(x,k){if(!qe(x))throw new TypeError;return ee(k)||(k=Ar(k)),ue(x,k)}e("getMetadataKeys",mt);function $t(x,k){if(!qe(x))throw new TypeError;return ee(k)||(k=Ar(k)),Ie(x,k)}e("getOwnMetadataKeys",$t);function E(x,k,C){if(!qe(k))throw new TypeError;if(ee(C)||(C=Ar(C)),!qe(k))throw new TypeError;ee(C)||(C=Ar(C));var U=La(k,C,!1);return ee(U)?!1:U.OrdinaryDeleteMetadata(x,k,C)}e("deleteMetadata",E);function O(x,k){for(var C=x.length-1;C>=0;--C){var U=x[C],le=U(k);if(!ee(le)&&!at(le)){if(!og(le))throw new TypeError;k=le}}return k}function w(x,k,C,U){for(var le=x.length-1;le>=0;--le){var ot=x[le],it=ot(k,C,U);if(!ee(it)&&!at(it)){if(!qe(it))throw new TypeError;U=it}}return U}function b(x,k,C){var U=v(x,k,C);if(U)return!0;var le=sf(k);return at(le)?!1:b(x,le,C)}function v(x,k,C){var U=La(k,C,!1);return ee(U)?!1:ig(U.OrdinaryHasOwnMetadata(x,k,C))}function I(x,k,C){var U=v(x,k,C);if(U)return M(x,k,C);var le=sf(k);if(!at(le))return I(x,le,C)}function M(x,k,C){var U=La(k,C,!1);if(!ee(U))return U.OrdinaryGetOwnMetadata(x,k,C)}function Ae(x,k,C,U){var le=La(C,U,!0);le.OrdinaryDefineOwnMetadata(x,k,C,U)}function ue(x,k){var C=Ie(x,k),U=sf(x);if(U===null)return C;var le=ue(U,k);if(le.length<=0)return C;if(C.length<=0)return le;for(var ot=new j,it=[],Ee=0,z=C;Ee<z.length;Ee++){var te=z[Ee],ne=ot.has(te);ne||(ot.add(te),it.push(te))}for(var se=0,Ce=le;se<Ce.length;se++){var te=Ce[se],ne=ot.has(te);ne||(ot.add(te),it.push(te))}return it}function Ie(x,k){var C=La(x,k,!1);return C?C.OrdinaryOwnMetadataKeys(x,k):[]}function De(x){if(x===null)return 1;switch(typeof x){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return x===null?1:6;default:return 6}}function ee(x){return x===void 0}function at(x){return x===null}function Fn(x){return typeof x=="symbol"}function qe(x){return typeof x=="object"?x!==null:typeof x=="function"}function tt(x,k){switch(De(x)){case 0:return x;case 1:return x;case 2:return x;case 3:return x;case 4:return x;case 5:return x}var C="string",U=cg(x,i);if(U!==void 0){var le=U.call(x,C);if(qe(le))throw new TypeError;return le}return O1(x)}function O1(x,k){var C,U;{var le=x.toString;if(au(le)){var U=le.call(x);if(!qe(U))return U}var C=x.valueOf;if(au(C)){var U=C.call(x);if(!qe(U))return U}}throw new TypeError}function ig(x){return!!x}function E1(x){return""+x}function Ar(x){var k=tt(x);return Fn(k)?k:E1(k)}function ag(x){return Array.isArray?Array.isArray(x):x instanceof Object?x instanceof Array:Object.prototype.toString.call(x)==="[object Array]"}function au(x){return typeof x=="function"}function og(x){return typeof x=="function"}function I1(x){switch(De(x)){case 3:return!0;case 4:return!0;default:return!1}}function nf(x,k){return x===k||x!==x&&k!==k}function cg(x,k){var C=x[k];if(C!=null){if(!au(C))throw new TypeError;return C}}function ug(x){var k=cg(x,a);if(!au(k))throw new TypeError;var C=k.call(x);if(!qe(C))throw new TypeError;return C}function lg(x){return x.value}function dg(x){var k=x.next();return k.done?!1:k}function fg(x){var k=x.return;k&&k.call(x)}function sf(x){var k=Object.getPrototypeOf(x);if(typeof x!="function"||x===m||k!==m)return k;var C=x.prototype,U=C&&Object.getPrototypeOf(C);if(U==null||U===Object.prototype)return k;var le=U.constructor;return typeof le!="function"||le===x?k:le}function C1(){var x;!ee(g)&&typeof t.Reflect<"u"&&!(g in t.Reflect)&&typeof t.Reflect.defineMetadata=="function"&&(x=N1(t.Reflect));var k,C,U,le=new p,ot={registerProvider:it,getProvider:z,setProvider:ne};return ot;function it(se){if(!Object.isExtensible(ot))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case x===se:break;case ee(k):k=se;break;case k===se:break;case ee(C):C=se;break;case C===se:break;default:U===void 0&&(U=new j),U.add(se);break}}function Ee(se,Ce){if(!ee(k)){if(k.isProviderFor(se,Ce))return k;if(!ee(C)){if(C.isProviderFor(se,Ce))return k;if(!ee(U))for(var We=ug(U);;){var Qe=dg(We);if(!Qe)return;var ar=lg(Qe);if(ar.isProviderFor(se,Ce))return fg(We),ar}}}if(!ee(x)&&x.isProviderFor(se,Ce))return x}function z(se,Ce){var We=le.get(se),Qe;return ee(We)||(Qe=We.get(Ce)),ee(Qe)&&(Qe=Ee(se,Ce),ee(Qe)||(ee(We)&&(We=new D,le.set(se,We)),We.set(Ce,Qe))),Qe}function te(se){if(ee(se))throw new TypeError;return k===se||C===se||!ee(U)&&U.has(se)}function ne(se,Ce,We){if(!te(We))throw new Error("Metadata provider not registered.");var Qe=z(se,Ce);if(Qe!==We){if(!ee(Qe))return!1;var ar=le.get(se);ee(ar)&&(ar=new D,le.set(se,ar)),ar.set(Ce,We)}return!0}}function j1(){var x;return!ee(g)&&qe(t.Reflect)&&Object.isExtensible(t.Reflect)&&(x=t.Reflect[g]),ee(x)&&(x=C1()),!ee(g)&&qe(t.Reflect)&&Object.isExtensible(t.Reflect)&&Object.defineProperty(t.Reflect,g,{enumerable:!1,configurable:!1,writable:!1,value:x}),x}function T1(x){var k=new p,C={isProviderFor:function(te,ne){var se=k.get(te);return ee(se)?!1:se.has(ne)},OrdinaryDefineOwnMetadata:it,OrdinaryHasOwnMetadata:le,OrdinaryGetOwnMetadata:ot,OrdinaryOwnMetadataKeys:Ee,OrdinaryDeleteMetadata:z};return A.registerProvider(C),C;function U(te,ne,se){var Ce=k.get(te),We=!1;if(ee(Ce)){if(!se)return;Ce=new D,k.set(te,Ce),We=!0}var Qe=Ce.get(ne);if(ee(Qe)){if(!se)return;if(Qe=new D,Ce.set(ne,Qe),!x.setProvider(te,ne,C))throw Ce.delete(ne),We&&k.delete(te),new Error("Wrong provider for target.")}return Qe}function le(te,ne,se){var Ce=U(ne,se,!1);return ee(Ce)?!1:ig(Ce.has(te))}function ot(te,ne,se){var Ce=U(ne,se,!1);if(!ee(Ce))return Ce.get(te)}function it(te,ne,se,Ce){var We=U(se,Ce,!0);We.set(te,ne)}function Ee(te,ne){var se=[],Ce=U(te,ne,!1);if(ee(Ce))return se;for(var We=Ce.keys(),Qe=ug(We),ar=0;;){var hg=dg(Qe);if(!hg)return se.length=ar,se;var $1=lg(hg);try{se[ar]=$1}catch(Z1){try{fg(Qe)}finally{throw Z1}}ar++}}function z(te,ne,se){var Ce=U(ne,se,!1);if(ee(Ce)||!Ce.delete(te))return!1;if(Ce.size===0){var We=k.get(ne);ee(We)||(We.delete(se),We.size===0&&k.delete(We))}return!0}}function N1(x){var k=x.defineMetadata,C=x.hasOwnMetadata,U=x.getOwnMetadata,le=x.getOwnMetadataKeys,ot=x.deleteMetadata,it=new p,Ee={isProviderFor:function(z,te){var ne=it.get(z);return!ee(ne)&&ne.has(te)?!0:le(z,te).length?(ee(ne)&&(ne=new j,it.set(z,ne)),ne.add(te),!0):!1},OrdinaryDefineOwnMetadata:k,OrdinaryHasOwnMetadata:C,OrdinaryGetOwnMetadata:U,OrdinaryOwnMetadataKeys:le,OrdinaryDeleteMetadata:ot};return Ee}function La(x,k,C){var U=A.getProvider(x,k);if(!ee(U))return U;if(C){if(A.setProvider(x,k,S))return S;throw new Error("Illegal state.")}}function B1(){var x={},k=[],C=function(){function Ee(z,te,ne){this._index=0,this._keys=z,this._values=te,this._selector=ne}return Ee.prototype["@@iterator"]=function(){return this},Ee.prototype[a]=function(){return this},Ee.prototype.next=function(){var z=this._index;if(z>=0&&z<this._keys.length){var te=this._selector(this._keys[z],this._values[z]);return z+1>=this._keys.length?(this._index=-1,this._keys=k,this._values=k):this._index++,{value:te,done:!1}}return{value:void 0,done:!0}},Ee.prototype.throw=function(z){throw this._index>=0&&(this._index=-1,this._keys=k,this._values=k),z},Ee.prototype.return=function(z){return this._index>=0&&(this._index=-1,this._keys=k,this._values=k),{value:z,done:!0}},Ee}(),U=function(){function Ee(){this._keys=[],this._values=[],this._cacheKey=x,this._cacheIndex=-2}return Object.defineProperty(Ee.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),Ee.prototype.has=function(z){return this._find(z,!1)>=0},Ee.prototype.get=function(z){var te=this._find(z,!1);return te>=0?this._values[te]:void 0},Ee.prototype.set=function(z,te){var ne=this._find(z,!0);return this._values[ne]=te,this},Ee.prototype.delete=function(z){var te=this._find(z,!1);if(te>=0){for(var ne=this._keys.length,se=te+1;se<ne;se++)this._keys[se-1]=this._keys[se],this._values[se-1]=this._values[se];return this._keys.length--,this._values.length--,nf(z,this._cacheKey)&&(this._cacheKey=x,this._cacheIndex=-2),!0}return!1},Ee.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=x,this._cacheIndex=-2},Ee.prototype.keys=function(){return new C(this._keys,this._values,le)},Ee.prototype.values=function(){return new C(this._keys,this._values,ot)},Ee.prototype.entries=function(){return new C(this._keys,this._values,it)},Ee.prototype["@@iterator"]=function(){return this.entries()},Ee.prototype[a]=function(){return this.entries()},Ee.prototype._find=function(z,te){if(!nf(this._cacheKey,z)){this._cacheIndex=-1;for(var ne=0;ne<this._keys.length;ne++)if(nf(this._keys[ne],z)){this._cacheIndex=ne;break}}return this._cacheIndex<0&&te&&(this._cacheIndex=this._keys.length,this._keys.push(z),this._values.push(void 0)),this._cacheIndex},Ee}();return U;function le(Ee,z){return Ee}function ot(Ee,z){return z}function it(Ee,z){return[Ee,z]}}function R1(){var x=function(){function k(){this._map=new D}return Object.defineProperty(k.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),k.prototype.has=function(C){return this._map.has(C)},k.prototype.add=function(C){return this._map.set(C,C),this},k.prototype.delete=function(C){return this._map.delete(C)},k.prototype.clear=function(){this._map.clear()},k.prototype.keys=function(){return this._map.keys()},k.prototype.values=function(){return this._map.keys()},k.prototype.entries=function(){return this._map.entries()},k.prototype["@@iterator"]=function(){return this.keys()},k.prototype[a]=function(){return this.keys()},k}();return x}function P1(){var x=16,k=f.create(),C=U();return function(){function z(){this._key=U()}return z.prototype.has=function(te){var ne=le(te,!1);return ne!==void 0?f.has(ne,this._key):!1},z.prototype.get=function(te){var ne=le(te,!1);return ne!==void 0?f.get(ne,this._key):void 0},z.prototype.set=function(te,ne){var se=le(te,!0);return se[this._key]=ne,this},z.prototype.delete=function(te){var ne=le(te,!1);return ne!==void 0?delete ne[this._key]:!1},z.prototype.clear=function(){this._key=U()},z}();function U(){var z;do z="@@WeakMap@@"+Ee();while(f.has(k,z));return k[z]=!0,z}function le(z,te){if(!n.call(z,C)){if(!te)return;Object.defineProperty(z,C,{value:f.create()})}return z[C]}function ot(z,te){for(var ne=0;ne<te;++ne)z[ne]=Math.random()*255|0;return z}function it(z){if(typeof Uint8Array=="function"){var te=new Uint8Array(z);return typeof crypto<"u"?crypto.getRandomValues(te):typeof msCrypto<"u"?msCrypto.getRandomValues(te):ot(te,z),te}return ot(new Array(z),z)}function Ee(){var z=it(x);z[6]=z[6]&79|64,z[8]=z[8]&191|128;for(var te="",ne=0;ne<x;++ne){var se=z[ne];(ne===4||ne===6||ne===8)&&(te+="-"),se<16&&(te+="0"),te+=se.toString(16).toLowerCase()}return te}}function af(x){return x.__=void 0,delete x.__,x}})})(mh||(mh={}));/*!
|
|
15
|
+
* MIT License
|
|
16
|
+
*
|
|
17
|
+
* Copyright (c) 2017-2022 Peculiar Ventures, LLC
|
|
18
|
+
*
|
|
19
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
20
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
21
|
+
* in the Software without restriction, including without limitation the rights
|
|
22
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
23
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
24
|
+
* furnished to do so, subject to the following conditions:
|
|
25
|
+
*
|
|
26
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
27
|
+
* copies or substantial portions of the Software.
|
|
28
|
+
*
|
|
29
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
30
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
31
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
32
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
33
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
34
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
35
|
+
* SOFTWARE.
|
|
36
|
+
*
|
|
37
|
+
*/const Qb="[object ArrayBuffer]";class L{static isArrayBuffer(e){return Object.prototype.toString.call(e)===Qb}static toArrayBuffer(e){return this.isArrayBuffer(e)?e:e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t)return e;if(this.isArrayBuffer(e))return new t(e);if(this.isArrayBufferView(e))return new t(e.buffer,e.byteOffset,e.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){const n=L.toUint8Array(e),s=L.toUint8Array(t);if(n.length!==s.byteLength)return!1;for(let i=0;i<n.length;i++)if(n[i]!==s[i])return!1;return!0}static concat(...e){let t;Array.isArray(e[0])&&!(e[1]instanceof Function)||Array.isArray(e[0])&&e[1]instanceof Function?t=e[0]:e[e.length-1]instanceof Function?t=e.slice(0,e.length-1):t=e;let n=0;for(const a of t)n+=a.byteLength;const s=new Uint8Array(n);let i=0;for(const a of t){const o=this.toUint8Array(a);s.set(o,i),i+=o.length}return e[e.length-1]instanceof Function?this.toView(s,e[e.length-1]):s.buffer}}const Zu="string",ex=/^[0-9a-f]+$/i,tx=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,rx=/^[a-zA-Z0-9-_]+$/;class yh{static fromString(e){const t=unescape(encodeURIComponent(e)),n=new Uint8Array(t.length);for(let s=0;s<t.length;s++)n[s]=t.charCodeAt(s);return n.buffer}static toString(e){const t=L.toUint8Array(e);let n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return decodeURIComponent(escape(n))}}class hr{static toString(e,t=!1){const n=L.toArrayBuffer(e),s=new DataView(n);let i="";for(let a=0;a<n.byteLength;a+=2){const o=s.getUint16(a,t);i+=String.fromCharCode(o)}return i}static fromString(e,t=!1){const n=new ArrayBuffer(e.length*2),s=new DataView(n);for(let i=0;i<e.length;i++)s.setUint16(i*2,e.charCodeAt(i),t);return n}}class re{static isHex(e){return typeof e===Zu&&ex.test(e)}static isBase64(e){return typeof e===Zu&&tx.test(e)}static isBase64Url(e){return typeof e===Zu&&rx.test(e)}static ToString(e,t="utf8"){const n=L.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return hr.toString(n,!0);case"utf16":case"utf16be":return hr.toString(n);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e)return new ArrayBuffer(0);switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return hr.fromString(e,!0);case"utf16":case"utf16be":return hr.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){const t=L.toUint8Array(e);if(typeof btoa<"u"){const n=this.ToString(t,"binary");return btoa(n)}else return Buffer.from(t).toString("base64")}static FromBase64(e){const t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!re.isBase64(t))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(t)):new Uint8Array(Buffer.from(t,"base64")).buffer}static FromBase64Url(e){const t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!re.isBase64Url(t))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=re.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return yh.fromString(e);case"utf16":case"utf16be":return hr.fromString(e);case"utf16le":case"usc2":return hr.fromString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=re.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return yh.toString(e);case"utf16":case"utf16be":return hr.toString(e);case"utf16le":case"usc2":return hr.toString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){const t=e.length,n=new Uint8Array(t);for(let s=0;s<t;s++)n[s]=e.charCodeAt(s);return n.buffer}static ToBinary(e){const t=L.toUint8Array(e);let n="";for(let s=0;s<t.length;s++)n+=String.fromCharCode(t[s]);return n}static ToHex(e){const t=L.toUint8Array(e);let n="";const s=t.length;for(let i=0;i<s;i++){const a=t[i];a<16&&(n+="0"),n+=a.toString(16)}return n}static FromHex(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!re.isHex(t))throw new TypeError("Argument 'hexString' is not HEX encoded");t.length%2&&(t=`0${t}`);const n=new Uint8Array(t.length/2);for(let s=0;s<t.length;s=s+2){const i=t.slice(s,s+2);n[s/2]=parseInt(i,16)}return n.buffer}static ToUtf16String(e,t=!1){return hr.toString(e,t)}static FromUtf16String(e,t=!1){return hr.fromString(e,t)}static Base64Padding(e){const t=4-e.length%4;if(t<4)for(let n=0;n<t;n++)e+="=";return e}static formatString(e){return(e==null?void 0:e.replace(/[\n\r\t ]/g,""))||""}}re.DEFAULT_UTF8_ENCODING="utf8";function nx(...r){const e=r.map(s=>s.byteLength).reduce((s,i)=>s+i),t=new Uint8Array(e);let n=0;return r.map(s=>new Uint8Array(s)).forEach(s=>{for(const i of s)t[n++]=i}),t.buffer}function gh(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;const t=new Uint8Array(r),n=new Uint8Array(e);for(let s=0;s<r.byteLength;s++)if(t[s]!==n[s])return!1;return!0}/*!
|
|
38
|
+
Copyright (c) Peculiar Ventures, LLC
|
|
39
|
+
*/function ls(r,e){let t=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)t+=r[r.length-1-n]*Math.pow(2,e*n);return t}function kn(r,e,t=-1){const n=t;let s=r,i=0,a=Math.pow(2,e);for(let o=1;o<8;o++){if(r<a){let c;if(n<0)c=new ArrayBuffer(o),i=o;else{if(n<o)return new ArrayBuffer(0);c=new ArrayBuffer(n),i=n}const u=new Uint8Array(c);for(let f=o-1;f>=0;f--){const m=Math.pow(2,f*e);u[i-f-1]=Math.floor(s/m),s-=u[i-f-1]*m}return c}a*=Math.pow(2,e)}return new ArrayBuffer(0)}function Du(...r){let e=0,t=0;for(const i of r)e+=i.length;const n=new ArrayBuffer(e),s=new Uint8Array(n);for(const i of r)s.set(i,t),t+=i.length;return s}function vh(){const r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){const o=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(o||c)&&this.warnings.push("Needlessly long format")}const e=new ArrayBuffer(this.valueHex.byteLength),t=new Uint8Array(e);for(let o=0;o<this.valueHex.byteLength;o++)t[o]=0;t[0]=r[0]&128;const n=ls(t,8),s=new ArrayBuffer(this.valueHex.byteLength),i=new Uint8Array(s);for(let o=0;o<this.valueHex.byteLength;o++)i[o]=r[o];return i[0]&=127,ls(i,8)-n}function sx(r){const e=r<0?r*-1:r;let t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){const a=t-e,o=kn(a,8,n),c=new Uint8Array(o);return c[0]|=128,o}let s=kn(e,8,n),i=new Uint8Array(s);if(i[0]&128){const a=s.slice(0),o=new Uint8Array(a);s=new ArrayBuffer(s.byteLength+1),i=new Uint8Array(s);for(let c=0;c<a.byteLength;c++)i[c+1]=o[c];i[0]=0}return s}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function ix(r,e){if(r.byteLength!==e.byteLength)return!1;const t=new Uint8Array(r),n=new Uint8Array(e);for(let s=0;s<t.length;s++)if(t[s]!==n[s])return!1;return!0}function Nt(r,e){const t=r.toString(10);if(e<t.length)return"";const n=e-t.length,s=new Array(n);for(let a=0;a<n;a++)s[a]="0";return s.join("").concat(t)}/*!
|
|
40
|
+
* Copyright (c) 2014, GMO GlobalSign
|
|
41
|
+
* Copyright (c) 2015-2022, Peculiar Ventures
|
|
42
|
+
* All rights reserved.
|
|
43
|
+
*
|
|
44
|
+
* Author 2014-2019, Yury Strozhevsky
|
|
45
|
+
*
|
|
46
|
+
* Redistribution and use in source and binary forms, with or without modification,
|
|
47
|
+
* are permitted provided that the following conditions are met:
|
|
48
|
+
*
|
|
49
|
+
* * Redistributions of source code must retain the above copyright notice, this
|
|
50
|
+
* list of conditions and the following disclaimer.
|
|
51
|
+
*
|
|
52
|
+
* * Redistributions in binary form must reproduce the above copyright notice, this
|
|
53
|
+
* list of conditions and the following disclaimer in the documentation and/or
|
|
54
|
+
* other materials provided with the distribution.
|
|
55
|
+
*
|
|
56
|
+
* * Neither the name of the copyright holder nor the names of its
|
|
57
|
+
* contributors may be used to endorse or promote products derived from
|
|
58
|
+
* this software without specific prior written permission.
|
|
59
|
+
*
|
|
60
|
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
61
|
+
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
62
|
+
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
63
|
+
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
64
|
+
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
65
|
+
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
66
|
+
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
67
|
+
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
68
|
+
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
69
|
+
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
70
|
+
*
|
|
71
|
+
*/function vo(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Mu(r){let e=0,t=0;for(let s=0;s<r.length;s++){const i=r[s];e+=i.byteLength}const n=new Uint8Array(e);for(let s=0;s<r.length;s++){const i=r[s];n.set(new Uint8Array(i),t),t+=i.byteLength}return n.buffer}function jr(r,e,t,n){return e instanceof Uint8Array?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}class bo{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return Mu(this.items)}}const Li=[new Uint8Array([1])],bh="0123456789",Vu="name",xh="valueHexView",ax="isHexOnly",ox="idBlock",cx="tagClass",ux="tagNumber",lx="isConstructed",dx="fromBER",fx="toBER",hx="local",St="",Jt=new ArrayBuffer(0),xo=new Uint8Array(0),qi="EndOfContent",_h="OCTET STRING",wh="BIT STRING";function pr(r){var e;return e=class extends r{constructor(...n){var s;super(...n);const i=n[0]||{};this.isHexOnly=(s=i.isHexOnly)!==null&&s!==void 0?s:!1,this.valueHexView=i.valueHex?L.toUint8Array(i.valueHex):xo}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,s,i){const a=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!jr(this,a,s,i))return-1;const o=s+i;return this.valueHexView=a.subarray(s,o),this.valueHexView.length?(this.blockLength=i,o):(this.warnings.push("Zero buffer length"),s)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Jt)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:re.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}class Sn{constructor({blockLength:e=0,error:t=St,warnings:n=[],valueBeforeDecode:s=xo}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=L.toUint8Array(s)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:re.ToHex(this.valueBeforeDecodeView)}}}Sn.NAME="baseBlock";class vt extends Sn{fromBER(e,t,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}}vt.NAME="valueBlock";class kh extends pr(Sn){constructor({idBlock:e={}}={}){var t,n,s,i;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?L.toUint8Array(e.valueHex):xo,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(s=e.tagNumber)!==null&&s!==void 0?s:-1,this.isConstructed=(i=e.isConstructed)!==null&&i!==void 0?i:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(e=!1){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:return this.error="Unknown tag class",Jt}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){const s=new Uint8Array(1);if(!e){let i=this.tagNumber;i&=31,t|=i,s[0]=t}return s.buffer}if(!this.isHexOnly){const s=kn(this.tagNumber,7),i=new Uint8Array(s),a=s.byteLength,o=new Uint8Array(a+1);if(o[0]=t|31,!e){for(let c=0;c<a-1;c++)o[c+1]=i[c]|128;o[a]=i[a-1]}return o.buffer}const n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){const s=this.valueHexView;for(let i=0;i<s.length-1;i++)n[i+1]=s[i]|128;n[this.valueHexView.byteLength]=s[s.length-1]}return n.buffer}fromBER(e,t,n){const s=L.toUint8Array(e);if(!jr(this,s,t,n))return-1;const i=s.subarray(t,t+n);if(i.length===0)return this.error="Zero buffer length",-1;switch(i[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(i[0]&32)===32,this.isHexOnly=!1;const o=i[0]&31;if(o!==31)this.tagNumber=o,this.blockLength=1;else{let c=1,u=this.valueHexView=new Uint8Array(255),f=255;for(;i[c]&128;){if(u[c-1]=i[c]&127,c++,c>=i.length)return this.error="End of input reached before message was fully decoded",-1;if(c===f){f+=255;const D=new Uint8Array(f);for(let j=0;j<u.length;j++)D[j]=u[j];u=this.valueHexView=new Uint8Array(f)}}this.blockLength=c+1,u[c-1]=i[c]&127;const m=new Uint8Array(c);for(let D=0;D<c;D++)m[D]=u[D];u=this.valueHexView=new Uint8Array(c),u.set(m),this.blockLength<=9?this.tagNumber=ls(u,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}}kh.NAME="identificationBlock";class Sh extends Sn{constructor({lenBlock:e={}}={}){var t,n,s;super(),this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==void 0?t:!1,this.longFormUsed=(n=e.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(s=e.length)!==null&&s!==void 0?s:0}fromBER(e,t,n){const s=L.toUint8Array(e);if(!jr(this,s,t,n))return-1;const i=s.subarray(t,t+n);if(i.length===0)return this.error="Zero buffer length",-1;if(i[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=i[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(i[0]&128),this.longFormUsed===!1)return this.length=i[0],this.blockLength=1,t+this.blockLength;const a=i[0]&127;if(a>8)return this.error="Too big integer",-1;if(a+1>i.length)return this.error="End of input reached before message was fully decoded",-1;const o=t+1,c=s.subarray(o,o+a);return c[a-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=ls(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=a+1,t+this.blockLength}toBER(e=!1){let t,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=128),t;if(this.longFormUsed){const s=kn(this.length,8);if(s.byteLength>127)return this.error="Too big length",Jt;if(t=new ArrayBuffer(s.byteLength+1),e)return t;const i=new Uint8Array(s);n=new Uint8Array(t),n[0]=s.byteLength|128;for(let a=0;a<s.byteLength;a++)n[a+1]=i[a];return t}return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=this.length),t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}}Sh.NAME="lengthBlock";const Q={};class ut extends Sn{constructor({name:e=St,optional:t=!1,primitiveSchema:n,...s}={},i){super(s),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new kh(s),this.lenBlock=new Sh(s),this.valueBlock=i?new i(s):new vt(s)}fromBER(e,t,n){const s=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}toBER(e,t){const n=t||new bo;t||Ah(this);const s=this.idBlock.toBER(e);if(n.write(s),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(e,n),n.write(new ArrayBuffer(2));else{const i=this.valueBlock.toBER(e);this.lenBlock.length=i.byteLength;const a=this.lenBlock.toBER(e);n.write(a),n.write(i)}return t?Jt:n.final()}toJSON(){const e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(e.primitiveSchema=this.primitiveSchema.toJSON()),e}toString(e="ascii"){return e==="ascii"?this.onAsciiEncoding():re.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${re.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(e){if(this===e)return!0;if(!(e instanceof this.constructor))return!1;const t=this.toBER(),n=e.toBER();return ix(t,n)}}ut.NAME="BaseBlock";function Ah(r){if(r instanceof Q.Constructed)for(const e of r.valueBlock.value)Ah(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}class Uu extends ut{constructor({value:e=St,...t}={},n){super(t,n),e&&this.fromString(e)}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}fromBER(e,t,n){const s=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}}Uu.NAME="BaseStringBlock";class Oh extends pr(vt){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}}Oh.NAME="PrimitiveValueBlock";var Eh;class Hi extends ut{constructor(e={}){super(e,Oh),this.idBlock.isConstructed=!1}}Eh=Hi,Q.Primitive=Eh,Hi.NAME="PRIMITIVE";function px(r,e){if(r instanceof e)return r;const t=new e;return t.idBlock=r.idBlock,t.lenBlock=r.lenBlock,t.warnings=r.warnings,t.valueBeforeDecodeView=r.valueBeforeDecodeView,t}function ds(r,e=0,t=r.length){const n=e;let s=new ut({},vt);const i=new Sn;if(!jr(i,r,e,t))return s.error=i.error,{offset:-1,result:s};if(!r.subarray(e,e+t).length)return s.error="Zero buffer length",{offset:-1,result:s};let o=s.idBlock.fromBER(r,e,t);if(s.idBlock.warnings.length&&s.warnings.concat(s.idBlock.warnings),o===-1)return s.error=s.idBlock.error,{offset:-1,result:s};if(e=o,t-=s.idBlock.blockLength,o=s.lenBlock.fromBER(r,e,t),s.lenBlock.warnings.length&&s.warnings.concat(s.lenBlock.warnings),o===-1)return s.error=s.lenBlock.error,{offset:-1,result:s};if(e=o,t-=s.lenBlock.blockLength,!s.idBlock.isConstructed&&s.lenBlock.isIndefiniteForm)return s.error="Indefinite length form used for primitive encoding form",{offset:-1,result:s};let c=ut;switch(s.idBlock.tagClass){case 1:if(s.idBlock.tagNumber>=37&&s.idBlock.isHexOnly===!1)return s.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:s};switch(s.idBlock.tagNumber){case 0:if(s.idBlock.isConstructed&&s.lenBlock.length>0)return s.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:s};c=Q.EndOfContent;break;case 1:c=Q.Boolean;break;case 2:c=Q.Integer;break;case 3:c=Q.BitString;break;case 4:c=Q.OctetString;break;case 5:c=Q.Null;break;case 6:c=Q.ObjectIdentifier;break;case 10:c=Q.Enumerated;break;case 12:c=Q.Utf8String;break;case 13:c=Q.RelativeObjectIdentifier;break;case 14:c=Q.TIME;break;case 15:return s.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:s};case 16:c=Q.Sequence;break;case 17:c=Q.Set;break;case 18:c=Q.NumericString;break;case 19:c=Q.PrintableString;break;case 20:c=Q.TeletexString;break;case 21:c=Q.VideotexString;break;case 22:c=Q.IA5String;break;case 23:c=Q.UTCTime;break;case 24:c=Q.GeneralizedTime;break;case 25:c=Q.GraphicString;break;case 26:c=Q.VisibleString;break;case 27:c=Q.GeneralString;break;case 28:c=Q.UniversalString;break;case 29:c=Q.CharacterString;break;case 30:c=Q.BmpString;break;case 31:c=Q.DATE;break;case 32:c=Q.TimeOfDay;break;case 33:c=Q.DateTime;break;case 34:c=Q.Duration;break;default:{const u=s.idBlock.isConstructed?new Q.Constructed:new Q.Primitive;u.idBlock=s.idBlock,u.lenBlock=s.lenBlock,u.warnings=s.warnings,s=u}}break;case 2:case 3:case 4:default:c=s.idBlock.isConstructed?Q.Constructed:Q.Primitive}return s=px(s,c),o=s.fromBER(r,e,s.lenBlock.isIndefiniteForm?t:s.lenBlock.length),s.valueBeforeDecodeView=r.subarray(n,n+s.blockLength),{offset:o,result:s}}function fs(r){if(!r.byteLength){const e=new ut({},vt);return e.error="Input buffer has zero length",{offset:-1,result:e}}return ds(L.toUint8Array(r).slice(),0,r.byteLength)}function mx(r,e){return r?1:e}class rn extends vt{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){const s=L.toUint8Array(e);if(!jr(this,s,t,n))return-1;if(this.valueBeforeDecodeView=s.subarray(t,t+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),t;let i=t;for(;mx(this.isIndefiniteForm,n)>0;){const a=ds(s,i,n);if(a.offset===-1)return this.error=a.result.error,this.warnings.concat(a.result.warnings),-1;if(i=a.offset,this.blockLength+=a.result.blockLength,n-=a.result.blockLength,this.value.push(a.result),this.isIndefiniteForm&&a.result.constructor.NAME===qi)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===qi?this.value.pop():this.warnings.push("No EndOfContent block encoded")),i}toBER(e,t){const n=t||new bo;for(let s=0;s<this.value.length;s++)this.value[s].toBER(e,n);return t?Jt:n.final()}toJSON(){const e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(const t of this.value)e.value.push(t.toJSON());return e}}rn.NAME="ConstructedValueBlock";var Ih;class At extends ut{constructor(e={}){super(e,rn),this.idBlock.isConstructed=!0}fromBER(e,t,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;const s=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return s===-1?(this.error=this.valueBlock.error,s):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),s)}onAsciiEncoding(){const e=[];for(const n of this.valueBlock.value)e.push(n.toString("ascii").split(`
|
|
72
|
+
`).map(s=>` ${s}`).join(`
|
|
73
|
+
`));const t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
|
|
74
|
+
${e.join(`
|
|
75
|
+
`)}`:`${t} :`}}Ih=At,Q.Constructed=Ih,At.NAME="CONSTRUCTED";class Ch extends vt{fromBER(e,t,n){return t}toBER(e){return Jt}}Ch.override="EndOfContentValueBlock";var jh;class Lu extends ut{constructor(e={}){super(e,Ch),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}}jh=Lu,Q.EndOfContent=jh,Lu.NAME=qi;var Th;class An extends ut{constructor(e={}){super(e,vt),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(e,t,n){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=n,t+n>e.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):t+n}toBER(e,t){const n=new ArrayBuffer(2);if(!e){const s=new Uint8Array(n);s[0]=5,s[1]=0}return t&&t.write(n),n}onAsciiEncoding(){return`${this.constructor.NAME}`}}Th=An,Q.Null=Th,An.NAME="NULL";class Nh extends pr(vt){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=L.toUint8Array(t.valueHex):this.valueHexView=new Uint8Array(1),e&&(this.value=e)}get value(){for(const e of this.valueHexView)if(e>0)return!0;return!1}set value(e){this.valueHexView[0]=e?255:0}fromBER(e,t,n){const s=L.toUint8Array(e);return jr(this,s,t,n)?(this.valueHexView=s.subarray(t,t+n),n>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,vh.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}}Nh.NAME="BooleanValueBlock";var Bh;let _o=class extends ut{constructor(e={}){super(e,Nh),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};Bh=_o,Q.Boolean=Bh,_o.NAME="BOOLEAN";class Rh extends pr(rn){constructor({isConstructed:e=!1,...t}={}){super(t),this.isConstructed=e}fromBER(e,t,n){let s=0;if(this.isConstructed){if(this.isHexOnly=!1,s=rn.prototype.fromBER.call(this,e,t,n),s===-1)return s;for(let i=0;i<this.value.length;i++){const a=this.value[i].constructor.NAME;if(a===qi){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(a!==_h)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,s=super.fromBER(e,t,n),this.blockLength=n;return s}toBER(e,t){return this.isConstructed?rn.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}}Rh.NAME="OctetStringValueBlock";var Ph;let On=class wg extends ut{constructor({idBlock:e={},lenBlock:t={},...n}={}){var s,i;(s=n.isConstructed)!==null&&s!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},Rh),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(e,t,n){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,n===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),t;if(!this.valueBlock.isConstructed){const i=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+n);try{if(i.byteLength){const a=ds(i,0,i.byteLength);a.offset!==-1&&a.offset===n&&(this.valueBlock.value=[a.result])}}catch{}}return super.fromBER(e,t,n)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?At.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${re.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;const e=[];for(const t of this.valueBlock.value)t instanceof wg&&e.push(t.valueBlock.valueHexView);return L.concat(e)}};Ph=On,Q.OctetString=Ph,On.NAME=_h;class $h extends pr(rn){constructor({unusedBits:e=0,isConstructed:t=!1,...n}={}){super(n),this.unusedBits=e,this.isConstructed=t,this.blockLength=this.valueHexView.byteLength}fromBER(e,t,n){if(!n)return t;let s=-1;if(this.isConstructed){if(s=rn.prototype.fromBER.call(this,e,t,n),s===-1)return s;for(const o of this.value){const c=o.constructor.NAME;if(c===qi){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==wh)return this.error="BIT STRING may consists of BIT STRINGs only",-1;const u=o.valueBlock;if(this.unusedBits>0&&u.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=u.unusedBits}return s}const i=L.toUint8Array(e);if(!jr(this,i,t,n))return-1;const a=i.subarray(t,t+n);if(this.unusedBits=a[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){const o=a.subarray(1);try{if(o.byteLength){const c=ds(o,0,o.byteLength);c.offset!==-1&&c.offset===n-1&&(this.value=[c.result])}}catch{}}return this.valueHexView=a.subarray(1),this.blockLength=a.length,t+n}toBER(e,t){if(this.isConstructed)return rn.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return Jt;const n=new Uint8Array(this.valueHexView.length+1);return n[0]=this.unusedBits,n.set(this.valueHexView,1),n.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}}$h.NAME="BitStringValueBlock";var Zh;let En=class extends ut{constructor({idBlock:e={},lenBlock:t={},...n}={}){var s,i;(s=n.isConstructed)!==null&&s!==void 0||(n.isConstructed=!!(!((i=n.value)===null||i===void 0)&&i.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},$h),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(e,t,n){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(e,t,n)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return At.prototype.onAsciiEncoding.call(this);{const e=[],t=this.valueBlock.valueHexView;for(const s of t)e.push(s.toString(2).padStart(8,"0"));const n=e.join("");return`${this.constructor.NAME} : ${n.substring(0,n.length-this.valueBlock.unusedBits)}`}}};Zh=En,Q.BitString=Zh,En.NAME=wh;var Dh;function yx(r,e){const t=new Uint8Array([0]),n=new Uint8Array(r),s=new Uint8Array(e);let i=n.slice(0);const a=i.length-1,o=s.slice(0),c=o.length-1;let u=0;const f=c<a?a:c;let m=0;for(let D=f;D>=0;D--,m++){switch(!0){case m<o.length:u=i[a-m]+o[c-m]+t[0];break;default:u=i[a-m]+t[0]}switch(t[0]=u/10,!0){case m>=i.length:i=Du(new Uint8Array([u%10]),i);break;default:i[a-m]=u%10}}return t[0]>0&&(i=Du(t,i)),i}function Mh(r){if(r>=Li.length)for(let e=Li.length;e<=r;e++){const t=new Uint8Array([0]);let n=Li[e-1].slice(0);for(let s=n.length-1;s>=0;s--){const i=new Uint8Array([(n[s]<<1)+t[0]]);t[0]=i[0]/10,n[s]=i[0]%10}t[0]>0&&(n=Du(t,n)),Li.push(n)}return Li[r]}function gx(r,e){let t=0;const n=new Uint8Array(r),s=new Uint8Array(e),i=n.slice(0),a=i.length-1,o=s.slice(0),c=o.length-1;let u,f=0;for(let m=c;m>=0;m--,f++)switch(u=i[a-f]-o[c-f]-t,!0){case u<0:t=1,i[a-f]=u+10;break;default:t=0,i[a-f]=u}if(t>0)for(let m=a-c+1;m>=0;m--,f++)if(u=i[a-f]-t,u<0)t=1,i[a-f]=u+10;else{t=0,i[a-f]=u;break}return i.slice()}class qu extends pr(vt){constructor({value:e,...t}={}){super(t),this._valueDec=0,t.valueHex&&this.setValueHex(),e!==void 0&&(this.valueDec=e)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=vh.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(sx(e))}get valueDec(){return this._valueDec}fromDER(e,t,n,s=0){const i=this.fromBER(e,t,n);if(i===-1)return i;const a=this.valueHexView;return a[0]===0&&a[1]&128?this.valueHexView=a.subarray(1):s!==0&&a.length<s&&(s-a.length>1&&(s=a.length+1),this.valueHexView=a.subarray(s-a.length)),i}toDER(e=!1){const t=this.valueHexView;switch(!0){case(t[0]&128)!==0:{const n=new Uint8Array(this.valueHexView.length+1);n[0]=0,n.set(t,1),this.valueHexView=n}break;case(t[0]===0&&(t[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(e)}fromBER(e,t,n){const s=super.fromBER(e,t,n);return s===-1||this.setValueHex(),s}toBER(e){return e?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){const e=this.valueHexView.length*8-1;let t=new Uint8Array(this.valueHexView.length*8/3),n=0,s;const i=this.valueHexView;let a="",o=!1;for(let c=i.byteLength-1;c>=0;c--){s=i[c];for(let u=0;u<8;u++){if((s&1)===1)switch(n){case e:t=gx(Mh(n),t),a="-";break;default:t=yx(t,Mh(n))}n++,s>>=1}}for(let c=0;c<t.length;c++)t[c]&&(o=!0),o&&(a+=bh.charAt(t[c]));return o===!1&&(a+=bh.charAt(0)),a}}Dh=qu,qu.NAME="IntegerValueBlock",Object.defineProperty(Dh.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var Vh;class mr extends ut{constructor(e={}){super(e,qu),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return vo(),BigInt(this.valueBlock.toString())}static fromBigInt(e){vo();const t=BigInt(e),n=new bo,s=t.toString(16).replace(/^-/,""),i=new Uint8Array(re.FromHex(s));if(t<0){const o=new Uint8Array(i.length+(i[0]&128?1:0));o[0]|=128;const u=BigInt(`0x${re.ToHex(o)}`)+t,f=L.toUint8Array(re.FromHex(u.toString(16)));f[0]|=128,n.write(f)}else i[0]&128&&n.write(new Uint8Array([0])),n.write(i);return new mr({valueHex:n.final()})}convertToDER(){const e=new mr({valueHex:this.valueBlock.valueHexView});return e.valueBlock.toDER(),e}convertFromDER(){return new mr({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}}Vh=mr,Q.Integer=Vh,mr.NAME="INTEGER";var Uh;class wo extends mr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}}Uh=wo,Q.Enumerated=Uh,wo.NAME="ENUMERATED";class Hu extends pr(vt){constructor({valueDec:e=-1,isFirstSid:t=!1,...n}={}){super(n),this.valueDec=e,this.isFirstSid=t}fromBER(e,t,n){if(!n)return t;const s=L.toUint8Array(e);if(!jr(this,s,t,n))return-1;const i=s.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let o=0;o<n&&(this.valueHexView[o]=i[o]&127,this.blockLength++,!!(i[o]&128));o++);const a=new Uint8Array(this.blockLength);for(let o=0;o<this.blockLength;o++)a[o]=this.valueHexView[o];return this.valueHexView=a,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=ls(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){vo();let t=BigInt(e).toString(2);for(;t.length%7;)t="0"+t;const n=new Uint8Array(t.length/7);for(let s=0;s<n.length;s++)n[s]=parseInt(t.slice(s*7,s*7+7),2)+(s+1<n.length?128:0);this.fromBER(n.buffer,0,n.length)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);const s=this.valueHexView,i=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength-1;a++)i[a]=s[a]|128;return i[this.blockLength-1]=s[this.blockLength-1],i.buffer}const t=kn(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",Jt;const n=new Uint8Array(t.byteLength);if(!e){const s=new Uint8Array(t),i=t.byteLength-1;for(let a=0;a<i;a++)n[a]=s[a]|128;n[i]=s[i]}return n}toString(){let e="";if(this.isHexOnly)e=re.ToHex(this.valueHexView);else if(this.isFirstSid){let t=this.valueDec;this.valueDec<=39?e="0.":this.valueDec<=79?(e="1.",t-=40):(e="2.",t-=80),e+=t.toString()}else e=this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}}Hu.NAME="sidBlock";class Lh extends vt{constructor({value:e=St,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let s=t;for(;n>0;){const i=new Hu;if(s=i.fromBER(e,s,n),s===-1)return this.blockLength=0,this.error=i.error,s;this.value.length===0&&(i.isFirstSid=!0),this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return s}toBER(e){const t=[];for(let n=0;n<this.value.length;n++){const s=this.value[n].toBER(e);if(s.byteLength===0)return this.error=this.value[n].error,Jt;t.push(s)}return Mu(t)}fromString(e){this.value=[];let t=0,n=0,s="",i=!1;do if(n=e.indexOf(".",t),n===-1?s=e.substring(t):s=e.substring(t,n),t=n+1,i){const a=this.value[0];let o=0;switch(a.valueDec){case 0:break;case 1:o=40;break;case 2:o=80;break;default:this.value=[];return}const c=parseInt(s,10);if(isNaN(c))return;a.valueDec=c+o,i=!1}else{const a=new Hu;if(s>Number.MAX_SAFE_INTEGER){vo();const o=BigInt(s);a.valueBigInt=o}else if(a.valueDec=parseInt(s,10),isNaN(a.valueDec))return;this.value.length||(a.isFirstSid=!0,i=!0),this.value.push(a)}while(n!==-1)}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let s=this.value[n].toString();n!==0&&(e=`${e}.`),t?(s=`{${s}}`,this.value[n].isFirstSid?e=`2.{${s} - 80}`:e+=s):e+=s}return e}toJSON(){const e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}}Lh.NAME="ObjectIdentifierValueBlock";var qh;class ko extends ut{constructor(e={}){super(e,Lh),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}qh=ko,Q.ObjectIdentifier=qh,ko.NAME="OBJECT IDENTIFIER";class Fu extends pr(Sn){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;const s=L.toUint8Array(e);if(!jr(this,s,t,n))return-1;const i=s.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let o=0;o<n&&(this.valueHexView[o]=i[o]&127,this.blockLength++,!!(i[o]&128));o++);const a=new Uint8Array(this.blockLength);for(let o=0;o<this.blockLength;o++)a[o]=this.valueHexView[o];return this.valueHexView=a,i[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=ls(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);const s=this.valueHexView,i=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength-1;a++)i[a]=s[a]|128;return i[this.blockLength-1]=s[this.blockLength-1],i.buffer}const t=kn(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",Jt;const n=new Uint8Array(t.byteLength);if(!e){const s=new Uint8Array(t),i=t.byteLength-1;for(let a=0;a<i;a++)n[a]=s[a]|128;n[i]=s[i]}return n.buffer}toString(){let e="";return this.isHexOnly?e=re.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}}Fu.NAME="relativeSidBlock";class Hh extends vt{constructor({value:e=St,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let s=t;for(;n>0;){const i=new Fu;if(s=i.fromBER(e,s,n),s===-1)return this.blockLength=0,this.error=i.error,s;this.blockLength+=i.blockLength,n-=i.blockLength,this.value.push(i)}return s}toBER(e,t){const n=[];for(let s=0;s<this.value.length;s++){const i=this.value[s].toBER(e);if(i.byteLength===0)return this.error=this.value[s].error,Jt;n.push(i)}return Mu(n)}fromString(e){this.value=[];let t=0,n=0,s="";do{n=e.indexOf(".",t),n===-1?s=e.substring(t):s=e.substring(t,n),t=n+1;const i=new Fu;if(i.valueDec=parseInt(s,10),isNaN(i.valueDec))return!0;this.value.push(i)}while(n!==-1);return!0}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let s=this.value[n].toString();n!==0&&(e=`${e}.`),t&&(s=`{${s}}`),e+=s}return e}toJSON(){const e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}}Hh.NAME="RelativeObjectIdentifierValueBlock";var Fh;class Wu extends ut{constructor(e={}){super(e,Hh),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}Fh=Wu,Q.RelativeObjectIdentifier=Fh,Wu.NAME="RelativeObjectIdentifier";var Wh;class Tr extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}}Wh=Tr,Q.Sequence=Wh,Tr.NAME="SEQUENCE";var zh;let Nr=class extends At{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};zh=Nr,Q.Set=zh,Nr.NAME="SET";class Kh extends pr(vt){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=St}toJSON(){return{...super.toJSON(),value:this.value}}}Kh.NAME="StringValueBlock";class Gh extends Kh{}Gh.NAME="SimpleStringValueBlock";class Bt extends Uu{constructor({...e}={}){super(e,Gh)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,L.toUint8Array(e))}fromString(e){const t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t);for(let s=0;s<t;s++)n[s]=e.charCodeAt(s);this.valueBlock.value=e}}Bt.NAME="SIMPLE STRING";class Jh extends Bt{fromBuffer(e){this.valueBlock.valueHexView=L.toUint8Array(e);try{this.valueBlock.value=re.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=re.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(re.FromUtf8String(e)),this.valueBlock.value=e}}Jh.NAME="Utf8StringValueBlock";var Yh;class Br extends Jh{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}}Yh=Br,Q.Utf8String=Yh,Br.NAME="UTF8String";class Xh extends Bt{fromBuffer(e){this.valueBlock.value=re.ToUtf16String(e),this.valueBlock.valueHexView=L.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(re.FromUtf16String(e))}}Xh.NAME="BmpStringValueBlock";var Qh;class So extends Xh{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}}Qh=So,Q.BmpString=Qh,So.NAME="BMPString";class ep extends Bt{fromBuffer(e){const t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0),n=new Uint8Array(t);for(let s=0;s<n.length;s+=4)n[s]=n[s+3],n[s+1]=n[s+2],n[s+2]=0,n[s+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){const t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let s=0;s<t;s++){const i=kn(e.charCodeAt(s),8),a=new Uint8Array(i);if(a.length>4)continue;const o=4-a.length;for(let c=a.length-1;c>=0;c--)n[s*4+c+o]=a[c]}this.valueBlock.value=e}}ep.NAME="UniversalStringValueBlock";var tp;class Ao extends ep{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}}tp=Ao,Q.UniversalString=tp,Ao.NAME="UniversalString";var rp;class Oo extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}}rp=Oo,Q.NumericString=rp,Oo.NAME="NumericString";var np;class Eo extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}}np=Eo,Q.PrintableString=np,Eo.NAME="PrintableString";var sp;class Io extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}}sp=Io,Q.TeletexString=sp,Io.NAME="TeletexString";var ip;class Co extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}}ip=Co,Q.VideotexString=ip,Co.NAME="VideotexString";var ap;class jo extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}}ap=jo,Q.IA5String=ap,jo.NAME="IA5String";var op;class To extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}}op=To,Q.GraphicString=op,To.NAME="GraphicString";var cp;class Fi extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}}cp=Fi,Q.VisibleString=cp,Fi.NAME="VisibleString";var up;class No extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}}up=No,Q.GeneralString=up,No.NAME="GeneralString";var lp;class Bo extends Bt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}}lp=Bo,Q.CharacterString=lp,Bo.NAME="CharacterString";var dp;class Wi extends Fi{constructor({value:e,valueDate:t,...n}={}){if(super(n),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,e){this.fromString(e),this.valueBlock.valueHexView=new Uint8Array(e.length);for(let s=0;s<e.length;s++)this.valueBlock.valueHexView[s]=e.charCodeAt(s)}t&&(this.fromDate(t),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,L.toUint8Array(e)))}toBuffer(){const e=this.toString(),t=new ArrayBuffer(e.length),n=new Uint8Array(t);for(let s=0;s<e.length;s++)n[s]=e.charCodeAt(s);return t}fromDate(e){this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){const n=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(e);if(n===null){this.error="Wrong input string for conversion";return}const s=parseInt(n[1],10);s>=50?this.year=1900+s:this.year=2e3+s,this.month=parseInt(n[2],10),this.day=parseInt(n[3],10),this.hour=parseInt(n[4],10),this.minute=parseInt(n[5],10),this.second=parseInt(n[6],10)}toString(e="iso"){if(e==="iso"){const t=new Array(7);return t[0]=Nt(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=Nt(this.month,2),t[2]=Nt(this.day,2),t[3]=Nt(this.hour,2),t[4]=Nt(this.minute,2),t[5]=Nt(this.second,2),t[6]="Z",t.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}}dp=Wi,Q.UTCTime=dp,Wi.NAME="UTCTime";var fp;class Ro extends Wi{constructor(e={}){var t;super(e),(t=this.millisecond)!==null&&t!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e),this.millisecond=e.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(e){let t=!1,n="",s="",i=0,a,o=0,c=0;if(e[e.length-1]==="Z")n=e.substring(0,e.length-1),t=!0;else{const m=new Number(e[e.length-1]);if(isNaN(m.valueOf()))throw new Error("Wrong input string for conversion");n=e}if(t){if(n.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(n.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let m=1,D=n.indexOf("+"),j="";if(D===-1&&(D=n.indexOf("-"),m=-1),D!==-1){if(j=n.substring(D+1),n=n.substring(0,D),j.length!==2&&j.length!==4)throw new Error("Wrong input string for conversion");let p=parseInt(j.substring(0,2),10);if(isNaN(p.valueOf()))throw new Error("Wrong input string for conversion");if(o=m*p,j.length===4){if(p=parseInt(j.substring(2,4),10),isNaN(p.valueOf()))throw new Error("Wrong input string for conversion");c=m*p}}}let u=n.indexOf(".");if(u===-1&&(u=n.indexOf(",")),u!==-1){const m=new Number(`0${n.substring(u)}`);if(isNaN(m.valueOf()))throw new Error("Wrong input string for conversion");i=m.valueOf(),s=n.substring(0,u)}else s=n;switch(!0){case s.length===8:if(a=/(\d{4})(\d{2})(\d{2})/ig,u!==-1)throw new Error("Wrong input string for conversion");break;case s.length===10:if(a=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let m=60*i;this.minute=Math.floor(m),m=60*(m-this.minute),this.second=Math.floor(m),m=1e3*(m-this.second),this.millisecond=Math.floor(m)}break;case s.length===12:if(a=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let m=60*i;this.second=Math.floor(m),m=1e3*(m-this.second),this.millisecond=Math.floor(m)}break;case s.length===14:if(a=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){const m=1e3*i;this.millisecond=Math.floor(m)}break;default:throw new Error("Wrong input string for conversion")}const f=a.exec(s);if(f===null)throw new Error("Wrong input string for conversion");for(let m=1;m<f.length;m++)switch(m){case 1:this.year=parseInt(f[m],10);break;case 2:this.month=parseInt(f[m],10);break;case 3:this.day=parseInt(f[m],10);break;case 4:this.hour=parseInt(f[m],10)+o;break;case 5:this.minute=parseInt(f[m],10)+c;break;case 6:this.second=parseInt(f[m],10);break;default:throw new Error("Wrong input string for conversion")}if(t===!1){const m=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=m.getUTCFullYear(),this.month=m.getUTCMonth(),this.day=m.getUTCDay(),this.hour=m.getUTCHours(),this.minute=m.getUTCMinutes(),this.second=m.getUTCSeconds(),this.millisecond=m.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){const t=[];return t.push(Nt(this.year,4)),t.push(Nt(this.month,2)),t.push(Nt(this.day,2)),t.push(Nt(this.hour,2)),t.push(Nt(this.minute,2)),t.push(Nt(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(Nt(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}}fp=Ro,Q.GeneralizedTime=fp,Ro.NAME="GeneralizedTime";var hp;class zu extends Br{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}}hp=zu,Q.DATE=hp,zu.NAME="DATE";var pp;class Ku extends Br{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}}pp=Ku,Q.TimeOfDay=pp,Ku.NAME="TimeOfDay";var mp;class Gu extends Br{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}}mp=Gu,Q.DateTime=mp,Gu.NAME="DateTime";var yp;class Ju extends Br{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}}yp=Ju,Q.Duration=yp,Ju.NAME="Duration";var gp;class Yu extends Br{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}}gp=Yu,Q.TIME=gp,Yu.NAME="TIME";class In{constructor({name:e=St,optional:t=!1}={}){this.name=e,this.optional=t}}class Xu extends In{constructor({value:e=[],...t}={}){super(t),this.value=e}}class Po extends In{constructor({value:e=new In,local:t=!1,...n}={}){super(n),this.value=e,this.local=t}}class vx{constructor({data:e=xo}={}){this.dataView=L.toUint8Array(e)}get data(){return this.dataView.slice().buffer}set data(e){this.dataView=L.toUint8Array(e)}fromBER(e,t,n){const s=t+n;return this.dataView=L.toUint8Array(e).subarray(t,s),s}toBER(e){return this.dataView.slice().buffer}}function Cn(r,e,t){if(t instanceof Xu){for(let i=0;i<t.value.length;i++)if(Cn(r,e,t.value[i]).verified)return{verified:!0,result:r};{const i={verified:!1,result:{error:"Wrong values for Choice type"}};return t.hasOwnProperty(Vu)&&(i.name=t.name),i}}if(t instanceof In)return t.hasOwnProperty(Vu)&&(r[t.name]=e),{verified:!0,result:r};if(!(r instanceof Object))return{verified:!1,result:{error:"Wrong root object"}};if(!(e instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 data"}};if(!(t instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(ox in t))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(dx in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(fx in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const n=t.idBlock.toBER(!1);if(n.byteLength===0)return{verified:!1,result:{error:"Error encoding idBlock for ASN.1 schema"}};if(t.idBlock.fromBER(n,0,n.byteLength)===-1)return{verified:!1,result:{error:"Error decoding idBlock for ASN.1 schema"}};if(t.idBlock.hasOwnProperty(cx)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.tagClass!==e.idBlock.tagClass)return{verified:!1,result:r};if(t.idBlock.hasOwnProperty(ux)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.tagNumber!==e.idBlock.tagNumber)return{verified:!1,result:r};if(t.idBlock.hasOwnProperty(lx)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.isConstructed!==e.idBlock.isConstructed)return{verified:!1,result:r};if(!(ax in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.isHexOnly!==e.idBlock.isHexOnly)return{verified:!1,result:r};if(t.idBlock.isHexOnly){if(!(xh in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const i=t.idBlock.valueHexView,a=e.idBlock.valueHexView;if(i.length!==a.length)return{verified:!1,result:r};for(let o=0;o<i.length;o++)if(i[o]!==a[1])return{verified:!1,result:r}}if(t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&(r[t.name]=e)),t instanceof Q.Constructed){let i=0,a={verified:!1,result:{error:"Unknown error"}},o=t.valueBlock.value.length;if(o>0&&t.valueBlock.value[0]instanceof Po&&(o=e.valueBlock.value.length),o===0)return{verified:!0,result:r};if(e.valueBlock.value.length===0&&t.valueBlock.value.length!==0){let c=!0;for(let u=0;u<t.valueBlock.value.length;u++)c=c&&(t.valueBlock.value[u].optional||!1);return c?{verified:!0,result:r}:(t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&delete r[t.name]),r.error="Inconsistent object length",{verified:!1,result:r})}for(let c=0;c<o;c++)if(c-i>=e.valueBlock.value.length){if(t.valueBlock.value[c].optional===!1){const u={verified:!1,result:r};return r.error="Inconsistent length between ASN.1 data and schema",t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&(delete r[t.name],u.name=t.name)),u}}else if(t.valueBlock.value[0]instanceof Po){if(a=Cn(r,e.valueBlock.value[c],t.valueBlock.value[0].value),a.verified===!1)if(t.valueBlock.value[0].optional)i++;else return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&delete r[t.name]),a;if(Vu in t.valueBlock.value[0]&&t.valueBlock.value[0].name.length>0){let u={};hx in t.valueBlock.value[0]&&t.valueBlock.value[0].local?u=e:u=r,typeof u[t.valueBlock.value[0].name]>"u"&&(u[t.valueBlock.value[0].name]=[]),u[t.valueBlock.value[0].name].push(e.valueBlock.value[c])}}else if(a=Cn(r,e.valueBlock.value[c-i],t.valueBlock.value[c]),a.verified===!1)if(t.valueBlock.value[c].optional)i++;else return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&delete r[t.name]),a;if(a.verified===!1){const c={verified:!1,result:r};return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&(delete r[t.name],c.name=t.name)),c}return{verified:!0,result:r}}if(t.primitiveSchema&&xh in e.valueBlock){const i=ds(e.valueBlock.valueHexView);if(i.offset===-1){const a={verified:!1,result:i.result};return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,St),t.name&&(delete r[t.name],a.name=t.name)),a}return Cn(r,i.result,t.primitiveSchema)}return{verified:!0,result:r}}function bx(r,e){if(!(e instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 schema type"}};const t=ds(L.toUint8Array(r));return t.offset===-1?{verified:!1,result:t.result}:Cn(t.result,t.result,e)}const vp=Object.freeze(Object.defineProperty({__proto__:null,Any:In,BaseBlock:ut,BaseStringBlock:Uu,BitString:En,BmpString:So,Boolean:_o,CharacterString:Bo,Choice:Xu,Constructed:At,DATE:zu,DateTime:Gu,Duration:Ju,EndOfContent:Lu,Enumerated:wo,GeneralString:No,GeneralizedTime:Ro,GraphicString:To,HexBlock:pr,IA5String:jo,Integer:mr,Null:An,NumericString:Oo,ObjectIdentifier:ko,OctetString:On,Primitive:Hi,PrintableString:Eo,RawData:vx,RelativeObjectIdentifier:Wu,Repeated:Po,Sequence:Tr,Set:Nr,TIME:Yu,TeletexString:Io,TimeOfDay:Ku,UTCTime:Wi,UniversalString:Ao,Utf8String:Br,ValueBlock:vt,VideotexString:Co,ViewWriter:bo,VisibleString:Fi,compareSchema:Cn,fromBER:fs,verifySchema:bx},Symbol.toStringTag,{value:"Module"}));var N;(function(r){r[r.Sequence=0]="Sequence",r[r.Set=1]="Set",r[r.Choice=2]="Choice"})(N||(N={}));var y;(function(r){r[r.Any=1]="Any",r[r.Boolean=2]="Boolean",r[r.OctetString=3]="OctetString",r[r.BitString=4]="BitString",r[r.Integer=5]="Integer",r[r.Enumerated=6]="Enumerated",r[r.ObjectIdentifier=7]="ObjectIdentifier",r[r.Utf8String=8]="Utf8String",r[r.BmpString=9]="BmpString",r[r.UniversalString=10]="UniversalString",r[r.NumericString=11]="NumericString",r[r.PrintableString=12]="PrintableString",r[r.TeletexString=13]="TeletexString",r[r.VideotexString=14]="VideotexString",r[r.IA5String=15]="IA5String",r[r.GraphicString=16]="GraphicString",r[r.VisibleString=17]="VisibleString",r[r.GeneralString=18]="GeneralString",r[r.CharacterString=19]="CharacterString",r[r.UTCTime=20]="UTCTime",r[r.GeneralizedTime=21]="GeneralizedTime",r[r.DATE=22]="DATE",r[r.TimeOfDay=23]="TimeOfDay",r[r.DateTime=24]="DateTime",r[r.Duration=25]="Duration",r[r.TIME=26]="TIME",r[r.Null=27]="Null"})(y||(y={}));class $o{constructor(e,t=0){if(this.unusedBits=0,this.value=new ArrayBuffer(0),e)if(typeof e=="number")this.fromNumber(e);else if(L.isBufferSource(e))this.unusedBits=t,this.value=L.toArrayBuffer(e);else throw TypeError("Unsupported type of 'params' argument for BitString")}fromASN(e){if(!(e instanceof En))throw new TypeError("Argument 'asn' is not instance of ASN.1 BitString");return this.unusedBits=e.valueBlock.unusedBits,this.value=e.valueBlock.valueHex,this}toASN(){return new En({unusedBits:this.unusedBits,valueHex:this.value})}toSchema(e){return new En({name:e})}toNumber(){let e="";const t=new Uint8Array(this.value);for(const n of t)e+=n.toString(2).padStart(8,"0");return e=e.split("").reverse().join(""),this.unusedBits&&(e=e.slice(this.unusedBits).padStart(this.unusedBits,"0")),parseInt(e,2)}fromNumber(e){let t=e.toString(2);const n=t.length+7>>3;this.unusedBits=(n<<3)-t.length;const s=new Uint8Array(n);t=t.padStart(n<<3,"0").split("").reverse().join("");let i=0;for(;i<n;)s[i]=parseInt(t.slice(i<<3,(i<<3)+8),2),i++;this.value=s.buffer}}class Ne{get byteLength(){return this.buffer.byteLength}get byteOffset(){return 0}constructor(e){typeof e=="number"?this.buffer=new ArrayBuffer(e):L.isBufferSource(e)?this.buffer=L.toArrayBuffer(e):Array.isArray(e)?this.buffer=new Uint8Array(e):this.buffer=new ArrayBuffer(0)}fromASN(e){if(!(e instanceof On))throw new TypeError("Argument 'asn' is not instance of ASN.1 OctetString");return this.buffer=e.valueBlock.valueHex,this}toASN(){return new On({valueHex:this.buffer})}toSchema(e){return new On({name:e})}}const xx={fromASN:r=>r instanceof An?null:r.valueBeforeDecodeView,toASN:r=>{if(r===null)return new An;const e=fs(r);if(e.result.error)throw new Error(e.result.error);return e.result}},_x={fromASN:r=>r.valueBlock.valueHexView.byteLength>=4?r.valueBlock.toString():r.valueBlock.valueDec,toASN:r=>new mr({value:+r})},wx={fromASN:r=>r.valueBlock.valueDec,toASN:r=>new wo({value:r})},Fe={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new mr({valueHex:r})},kx={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new En({valueHex:r})},Sx={fromASN:r=>r.valueBlock.toString(),toASN:r=>new ko({value:r})},Ax={fromASN:r=>r.valueBlock.value,toASN:r=>new _o({value:r})},Zo={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new On({valueHex:r})},Ox={fromASN:r=>new Ne(r.getValue()),toASN:r=>r.toASN()};function Dt(r){return{fromASN:e=>e.valueBlock.value,toASN:e=>new r({value:e})}}const bp=Dt(Br),Ex=Dt(So),Ix=Dt(Ao),Cx=Dt(Oo),jx=Dt(Eo),Tx=Dt(Io),Nx=Dt(Co),Bx=Dt(jo),Rx=Dt(To),Px=Dt(Fi),$x=Dt(No),Zx=Dt(Bo),Dx={fromASN:r=>r.toDate(),toASN:r=>new Wi({valueDate:r})},Mx={fromASN:r=>r.toDate(),toASN:r=>new Ro({valueDate:r})},Vx={fromASN:()=>null,toASN:()=>new An};function Qu(r){switch(r){case y.Any:return xx;case y.BitString:return kx;case y.BmpString:return Ex;case y.Boolean:return Ax;case y.CharacterString:return Zx;case y.Enumerated:return wx;case y.GeneralString:return $x;case y.GeneralizedTime:return Mx;case y.GraphicString:return Rx;case y.IA5String:return Bx;case y.Integer:return _x;case y.Null:return Vx;case y.NumericString:return Cx;case y.ObjectIdentifier:return Sx;case y.OctetString:return Zo;case y.PrintableString:return jx;case y.TeletexString:return Tx;case y.UTCTime:return Dx;case y.UniversalString:return Ix;case y.Utf8String:return bp;case y.VideotexString:return Nx;case y.VisibleString:return Px;default:return null}}function Rr(r){return typeof r=="function"&&r.prototype?r.prototype.toASN&&r.prototype.fromASN?!0:Rr(r.prototype):!!(r&&typeof r=="object"&&"toASN"in r&&"fromASN"in r)}function xp(r){var e;if(r){const t=Object.getPrototypeOf(r);return((e=t==null?void 0:t.prototype)===null||e===void 0?void 0:e.constructor)===Array?!0:xp(t)}return!1}function Ux(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;const t=new Uint8Array(r),n=new Uint8Array(e);for(let s=0;s<r.byteLength;s++)if(t[s]!==n[s])return!1;return!0}class Lx{constructor(){this.items=new WeakMap}has(e){return this.items.has(e)}get(e,t=!1){const n=this.items.get(e);if(!n)throw new Error(`Cannot get schema for '${e.prototype.constructor.name}' target`);if(t&&!n.schema)throw new Error(`Schema '${e.prototype.constructor.name}' doesn't contain ASN.1 schema. Call 'AsnSchemaStorage.cache'.`);return n}cache(e){const t=this.get(e);t.schema||(t.schema=this.create(e,!0))}createDefault(e){const t={type:N.Sequence,items:{}},n=this.findParentSchema(e);return n&&(Object.assign(t,n),t.items=Object.assign({},t.items,n.items)),t}create(e,t){const n=this.items.get(e)||this.createDefault(e),s=[];for(const i in n.items){const a=n.items[i],o=t?i:"";let c;if(typeof a.type=="number"){const f=y[a.type],m=vp[f];if(!m)throw new Error(`Cannot get ASN1 class by name '${f}'`);c=new m({name:o})}else Rr(a.type)?c=new a.type().toSchema(o):a.optional?this.get(a.type).type===N.Choice?c=new In({name:o}):(c=this.create(a.type,!1),c.name=o):c=new In({name:o});const u=!!a.optional||a.defaultValue!==void 0;if(a.repeated){c.name="";const f=a.repeated==="set"?Nr:Tr;c=new f({name:"",value:[new Po({name:o,value:c})]})}if(a.context!==null&&a.context!==void 0)if(a.implicit)if(typeof a.type=="number"||Rr(a.type)){const f=a.repeated?At:Hi;s.push(new f({name:o,optional:u,idBlock:{tagClass:3,tagNumber:a.context}}))}else{this.cache(a.type);const f=!!a.repeated;let m=f?c:this.get(a.type,!0).schema;m="valueBlock"in m?m.valueBlock.value:m.value,s.push(new At({name:f?"":o,optional:u,idBlock:{tagClass:3,tagNumber:a.context},value:m}))}else s.push(new At({optional:u,idBlock:{tagClass:3,tagNumber:a.context},value:[c]}));else c.optional=u,s.push(c)}switch(n.type){case N.Sequence:return new Tr({value:s,name:""});case N.Set:return new Nr({value:s,name:""});case N.Choice:return new Xu({value:s,name:""});default:throw new Error("Unsupported ASN1 type in use")}}set(e,t){return this.items.set(e,t),this}findParentSchema(e){const t=Object.getPrototypeOf(e);return t?this.items.get(t)||this.findParentSchema(t):null}}const Mt=new Lx,R=r=>e=>{let t;Mt.has(e)?t=Mt.get(e):(t=Mt.createDefault(e),Mt.set(e,t)),Object.assign(t,r)},h=r=>(e,t)=>{let n;Mt.has(e.constructor)?n=Mt.get(e.constructor):(n=Mt.createDefault(e.constructor),Mt.set(e.constructor,n));const s=Object.assign({},r);if(typeof s.type=="number"&&!s.converter){const i=Qu(r.type);if(!i)throw new Error(`Cannot get default converter for property '${t}' of ${e.constructor.name}`);s.converter=i}n.items[t]=s};class _p extends Error{constructor(){super(...arguments),this.schemas=[]}}class qx{static parse(e,t){const n=fs(e);if(n.result.error)throw new Error(n.result.error);return this.fromASN(n.result,t)}static fromASN(e,t){var n;try{if(Rr(t))return new t().fromASN(e);const s=Mt.get(t);Mt.cache(t);let i=s.schema;if(e.constructor===At&&s.type!==N.Choice){i=new At({idBlock:{tagClass:3,tagNumber:e.idBlock.tagNumber},value:s.schema.valueBlock.value});for(const c in s.items)delete e[c]}const a=Cn({},e,i);if(!a.verified)throw new _p(`Data does not match to ${t.name} ASN1 schema. ${a.result.error}`);const o=new t;if(xp(t)){if(!("value"in e.valueBlock&&Array.isArray(e.valueBlock.value)))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const c=s.itemType;if(typeof c=="number"){const u=Qu(c);if(!u)throw new Error(`Cannot get default converter for array item of ${t.name} ASN1 schema`);return t.from(e.valueBlock.value,f=>u.fromASN(f))}else return t.from(e.valueBlock.value,u=>this.fromASN(u,c))}for(const c in s.items){const u=a.result[c];if(!u)continue;const f=s.items[c],m=f.type;if(typeof m=="number"||Rr(m)){const D=(n=f.converter)!==null&&n!==void 0?n:Rr(m)?new m:null;if(!D)throw new Error("Converter is empty");if(f.repeated)if(f.implicit){const j=f.repeated==="sequence"?Tr:Nr,p=new j;p.valueBlock=u.valueBlock;const g=fs(p.toBER(!1));if(g.offset===-1)throw new Error(`Cannot parse the child item. ${g.result.error}`);if(!("value"in g.result.valueBlock&&Array.isArray(g.result.valueBlock.value)))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const A=g.result.valueBlock.value;o[c]=Array.from(A,S=>D.fromASN(S))}else o[c]=Array.from(u,j=>D.fromASN(j));else{let j=u;if(f.implicit){let p;if(Rr(m))p=new m().toSchema("");else{const g=y[m],A=vp[g];if(!A)throw new Error(`Cannot get '${g}' class from asn1js module`);p=new A}p.valueBlock=j.valueBlock,j=fs(p.toBER(!1)).result}o[c]=D.fromASN(j)}}else if(f.repeated){if(!Array.isArray(u))throw new Error("Cannot get list of items from the ASN.1 parsed value. ASN.1 value should be iterable.");o[c]=Array.from(u,D=>this.fromASN(D,m))}else o[c]=this.fromASN(u,m)}return o}catch(s){throw s instanceof _p&&s.schemas.push(t.name),s}}}class el{static serialize(e){return e instanceof ut?e.toBER(!1):this.toASN(e).toBER(!1)}static toASN(e){if(e&&typeof e=="object"&&Rr(e))return e.toASN();if(!(e&&typeof e=="object"))throw new TypeError("Parameter 1 should be type of Object.");const t=e.constructor,n=Mt.get(t);Mt.cache(t);let s=[];if(n.itemType){if(!Array.isArray(e))throw new TypeError("Parameter 1 should be type of Array.");if(typeof n.itemType=="number"){const a=Qu(n.itemType);if(!a)throw new Error(`Cannot get default converter for array item of ${t.name} ASN1 schema`);s=e.map(o=>a.toASN(o))}else s=e.map(a=>this.toAsnItem({type:n.itemType},"[]",t,a))}else for(const a in n.items){const o=n.items[a],c=e[a];if(c===void 0||o.defaultValue===c||typeof o.defaultValue=="object"&&typeof c=="object"&&Ux(this.serialize(o.defaultValue),this.serialize(c)))continue;const u=el.toAsnItem(o,a,t,c);if(typeof o.context=="number")if(o.implicit)if(!o.repeated&&(typeof o.type=="number"||Rr(o.type))){const f={};f.valueHex=u instanceof An?u.valueBeforeDecodeView:u.valueBlock.toBER(),s.push(new Hi({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},...f}))}else s.push(new At({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},value:u.valueBlock.value}));else s.push(new At({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},value:[u]}));else o.repeated?s=s.concat(u):s.push(u)}let i;switch(n.type){case N.Sequence:i=new Tr({value:s});break;case N.Set:i=new Nr({value:s});break;case N.Choice:if(!s[0])throw new Error(`Schema '${t.name}' has wrong data. Choice cannot be empty.`);i=s[0];break}return i}static toAsnItem(e,t,n,s){let i;if(typeof e.type=="number"){const a=e.converter;if(!a)throw new Error(`Property '${t}' doesn't have converter for type ${y[e.type]} in schema '${n.name}'`);if(e.repeated){if(!Array.isArray(s))throw new TypeError("Parameter 'objProp' should be type of Array.");const o=Array.from(s,u=>a.toASN(u)),c=e.repeated==="sequence"?Tr:Nr;i=new c({value:o})}else i=a.toASN(s)}else if(e.repeated){if(!Array.isArray(s))throw new TypeError("Parameter 'objProp' should be type of Array.");const a=Array.from(s,c=>this.toASN(c)),o=e.repeated==="sequence"?Tr:Nr;i=new o({value:a})}else i=this.toASN(s);return i}}class Ze extends Array{constructor(e=[]){if(typeof e=="number")super(e);else{super();for(const t of e)this.push(t)}}}class F{static serialize(e){return el.serialize(e)}static parse(e,t){return qx.parse(e,t)}static toString(e){const t=L.isBufferSource(e)?L.toArrayBuffer(e):F.serialize(e),n=fs(t);if(n.offset===-1)throw new Error(`Cannot decode ASN.1 data. ${n.result.error}`);return n.result.toString()}}function l(r,e,t,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,t):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(r,e,t,n);else for(var o=r.length-1;o>=0;o--)(a=r[o])&&(i=(s<3?a(i):s>3?a(e,t,i):a(e,t))||i);return s>3&&i&&Object.defineProperty(e,t,i),i}typeof SuppressedError=="function"&&SuppressedError;var wp={exports:{}};(function(r){(function(e){const t="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp(`^${t}\\.${t}\\.${t}\\.${t}$`,"i"),threeOctet:new RegExp(`^${t}\\.${t}\\.${t}$`,"i"),twoOctet:new RegExp(`^${t}\\.${t}$`,"i"),longValue:new RegExp(`^${t}$`,"i")},s=new RegExp("^0[0-7]+$","i"),i=new RegExp("^0x[a-f0-9]+$","i"),a="%[0-9a-z]{1,}",o="(?:[0-9a-f]+::?)+",c={zoneIndex:new RegExp(a,"i"),native:new RegExp(`^(::)?(${o})?([0-9a-f]+)?(::)?(${a})?$`,"i"),deprecatedTransitional:new RegExp(`^(?:::)(${t}\\.${t}\\.${t}\\.${t}(${a})?)$`,"i"),transitional:new RegExp(`^((?:${o})|(?:::)(?:${o})?)${t}\\.${t}\\.${t}\\.${t}(${a})?$`,"i")};function u(p,g){if(p.indexOf("::")!==p.lastIndexOf("::"))return null;let A=0,S=-1,B=(p.match(c.zoneIndex)||[])[0],T,ve;for(B&&(B=B.substring(1),p=p.replace(/%.+$/,""));(S=p.indexOf(":",S+1))>=0;)A++;if(p.substr(0,2)==="::"&&A--,p.substr(-2,2)==="::"&&A--,A>g)return null;for(ve=g-A,T=":";ve--;)T+="0:";return p=p.replace("::",T),p[0]===":"&&(p=p.slice(1)),p[p.length-1]===":"&&(p=p.slice(0,-1)),g=function(){const Me=p.split(":"),Ve=[];for(let Pe=0;Pe<Me.length;Pe++)Ve.push(parseInt(Me[Pe],16));return Ve}(),{parts:g,zoneId:B}}function f(p,g,A,S){if(p.length!==g.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");let B=0,T;for(;S>0;){if(T=A-S,T<0&&(T=0),p[B]>>T!==g[B]>>T)return!1;S-=A,B+=1}return!0}function m(p){if(i.test(p))return parseInt(p,16);if(p[0]==="0"&&!isNaN(parseInt(p[1],10))){if(s.test(p))return parseInt(p,8);throw new Error(`ipaddr: cannot parse ${p} as octal`)}return parseInt(p,10)}function D(p,g){for(;p.length<g;)p=`0${p}`;return p}const j={};j.IPv4=function(){function p(g){if(g.length!==4)throw new Error("ipaddr: ipv4 octet count should be 4");let A,S;for(A=0;A<g.length;A++)if(S=g[A],!(0<=S&&S<=255))throw new Error("ipaddr: ipv4 octet should fit in 8 bits");this.octets=g}return p.prototype.SpecialRanges={unspecified:[[new p([0,0,0,0]),8]],broadcast:[[new p([255,255,255,255]),32]],multicast:[[new p([224,0,0,0]),4]],linkLocal:[[new p([169,254,0,0]),16]],loopback:[[new p([127,0,0,0]),8]],carrierGradeNat:[[new p([100,64,0,0]),10]],private:[[new p([10,0,0,0]),8],[new p([172,16,0,0]),12],[new p([192,168,0,0]),16]],reserved:[[new p([192,0,0,0]),24],[new p([192,0,2,0]),24],[new p([192,88,99,0]),24],[new p([198,18,0,0]),15],[new p([198,51,100,0]),24],[new p([203,0,113,0]),24],[new p([240,0,0,0]),4]],as112:[[new p([192,175,48,0]),24],[new p([192,31,196,0]),24]],amt:[[new p([192,52,193,0]),24]]},p.prototype.kind=function(){return"ipv4"},p.prototype.match=function(g,A){let S;if(A===void 0&&(S=g,g=S[0],A=S[1]),g.kind()!=="ipv4")throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one");return f(this.octets,g.octets,8,A)},p.prototype.prefixLengthFromSubnetMask=function(){let g=0,A=!1;const S={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0};let B,T,ve;for(B=3;B>=0;B-=1)if(T=this.octets[B],T in S){if(ve=S[T],A&&ve!==0)return null;ve!==8&&(A=!0),g+=ve}else return null;return 32-g},p.prototype.range=function(){return j.subnetMatch(this,this.SpecialRanges)},p.prototype.toByteArray=function(){return this.octets.slice(0)},p.prototype.toIPv4MappedAddress=function(){return j.IPv6.parse(`::ffff:${this.toString()}`)},p.prototype.toNormalizedString=function(){return this.toString()},p.prototype.toString=function(){return this.octets.join(".")},p}(),j.IPv4.broadcastAddressFromCIDR=function(p){try{const g=this.parseCIDR(p),A=g[0].toByteArray(),S=this.subnetMaskFromPrefixLength(g[1]).toByteArray(),B=[];let T=0;for(;T<4;)B.push(parseInt(A[T],10)|parseInt(S[T],10)^255),T++;return new this(B)}catch{throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},j.IPv4.isIPv4=function(p){return this.parser(p)!==null},j.IPv4.isValid=function(p){try{return new this(this.parser(p)),!0}catch{return!1}},j.IPv4.isValidCIDR=function(p){try{return this.parseCIDR(p),!0}catch{return!1}},j.IPv4.isValidFourPartDecimal=function(p){return!!(j.IPv4.isValid(p)&&p.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},j.IPv4.networkAddressFromCIDR=function(p){let g,A,S,B,T;try{for(g=this.parseCIDR(p),S=g[0].toByteArray(),T=this.subnetMaskFromPrefixLength(g[1]).toByteArray(),B=[],A=0;A<4;)B.push(parseInt(S[A],10)&parseInt(T[A],10)),A++;return new this(B)}catch{throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},j.IPv4.parse=function(p){const g=this.parser(p);if(g===null)throw new Error("ipaddr: string is not formatted like an IPv4 Address");return new this(g)},j.IPv4.parseCIDR=function(p){let g;if(g=p.match(/^(.+)\/(\d+)$/)){const A=parseInt(g[2]);if(A>=0&&A<=32){const S=[this.parse(g[1]),A];return Object.defineProperty(S,"toString",{value:function(){return this.join("/")}}),S}}throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},j.IPv4.parser=function(p){let g,A,S;if(g=p.match(n.fourOctet))return function(){const B=g.slice(1,6),T=[];for(let ve=0;ve<B.length;ve++)A=B[ve],T.push(m(A));return T}();if(g=p.match(n.longValue)){if(S=m(g[1]),S>4294967295||S<0)throw new Error("ipaddr: address outside defined range");return function(){const B=[];let T;for(T=0;T<=24;T+=8)B.push(S>>T&255);return B}().reverse()}else return(g=p.match(n.twoOctet))?function(){const B=g.slice(1,4),T=[];if(S=m(B[1]),S>16777215||S<0)throw new Error("ipaddr: address outside defined range");return T.push(m(B[0])),T.push(S>>16&255),T.push(S>>8&255),T.push(S&255),T}():(g=p.match(n.threeOctet))?function(){const B=g.slice(1,5),T=[];if(S=m(B[2]),S>65535||S<0)throw new Error("ipaddr: address outside defined range");return T.push(m(B[0])),T.push(m(B[1])),T.push(S>>8&255),T.push(S&255),T}():null},j.IPv4.subnetMaskFromPrefixLength=function(p){if(p=parseInt(p),p<0||p>32)throw new Error("ipaddr: invalid IPv4 prefix length");const g=[0,0,0,0];let A=0;const S=Math.floor(p/8);for(;A<S;)g[A]=255,A++;return S<4&&(g[S]=Math.pow(2,p%8)-1<<8-p%8),new this(g)},j.IPv6=function(){function p(g,A){let S,B;if(g.length===16)for(this.parts=[],S=0;S<=14;S+=2)this.parts.push(g[S]<<8|g[S+1]);else if(g.length===8)this.parts=g;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(S=0;S<this.parts.length;S++)if(B=this.parts[S],!(0<=B&&B<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");A&&(this.zoneId=A)}return p.prototype.SpecialRanges={unspecified:[new p([0,0,0,0,0,0,0,0]),128],linkLocal:[new p([65152,0,0,0,0,0,0,0]),10],multicast:[new p([65280,0,0,0,0,0,0,0]),8],loopback:[new p([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new p([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new p([0,0,0,0,0,65535,0,0]),96],discard:[new p([256,0,0,0,0,0,0,0]),64],rfc6145:[new p([0,0,0,0,65535,0,0,0]),96],rfc6052:[new p([100,65435,0,0,0,0,0,0]),96],"6to4":[new p([8194,0,0,0,0,0,0,0]),16],teredo:[new p([8193,0,0,0,0,0,0,0]),32],benchmarking:[new p([8193,2,0,0,0,0,0,0]),48],amt:[new p([8193,3,0,0,0,0,0,0]),32],as112v6:[[new p([8193,4,274,0,0,0,0,0]),48],[new p([9760,79,32768,0,0,0,0,0]),48]],deprecated:[new p([8193,16,0,0,0,0,0,0]),28],orchid2:[new p([8193,32,0,0,0,0,0,0]),28],droneRemoteIdProtocolEntityTags:[new p([8193,48,0,0,0,0,0,0]),28],reserved:[[new p([8193,0,0,0,0,0,0,0]),23],[new p([8193,3512,0,0,0,0,0,0]),32]]},p.prototype.isIPv4MappedAddress=function(){return this.range()==="ipv4Mapped"},p.prototype.kind=function(){return"ipv6"},p.prototype.match=function(g,A){let S;if(A===void 0&&(S=g,g=S[0],A=S[1]),g.kind()!=="ipv6")throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return f(this.parts,g.parts,16,A)},p.prototype.prefixLengthFromSubnetMask=function(){let g=0,A=!1;const S={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0};let B,T;for(let ve=7;ve>=0;ve-=1)if(B=this.parts[ve],B in S){if(T=S[B],A&&T!==0)return null;T!==16&&(A=!0),g+=T}else return null;return 128-g},p.prototype.range=function(){return j.subnetMatch(this,this.SpecialRanges)},p.prototype.toByteArray=function(){let g;const A=[],S=this.parts;for(let B=0;B<S.length;B++)g=S[B],A.push(g>>8),A.push(g&255);return A},p.prototype.toFixedLengthString=function(){const g=(function(){const S=[];for(let B=0;B<this.parts.length;B++)S.push(D(this.parts[B].toString(16),4));return S}).call(this).join(":");let A="";return this.zoneId&&(A=`%${this.zoneId}`),g+A},p.prototype.toIPv4Address=function(){if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");const g=this.parts.slice(-2),A=g[0],S=g[1];return new j.IPv4([A>>8,A&255,S>>8,S&255])},p.prototype.toNormalizedString=function(){const g=(function(){const S=[];for(let B=0;B<this.parts.length;B++)S.push(this.parts[B].toString(16));return S}).call(this).join(":");let A="";return this.zoneId&&(A=`%${this.zoneId}`),g+A},p.prototype.toRFC5952String=function(){const g=/((^|:)(0(:|$)){2,})/g,A=this.toNormalizedString();let S=0,B=-1,T;for(;T=g.exec(A);)T[0].length>B&&(S=T.index,B=T[0].length);return B<0?A:`${A.substring(0,S)}::${A.substring(S+B)}`},p.prototype.toString=function(){return this.toRFC5952String()},p}(),j.IPv6.broadcastAddressFromCIDR=function(p){try{const g=this.parseCIDR(p),A=g[0].toByteArray(),S=this.subnetMaskFromPrefixLength(g[1]).toByteArray(),B=[];let T=0;for(;T<16;)B.push(parseInt(A[T],10)|parseInt(S[T],10)^255),T++;return new this(B)}catch(g){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${g})`)}},j.IPv6.isIPv6=function(p){return this.parser(p)!==null},j.IPv6.isValid=function(p){if(typeof p=="string"&&p.indexOf(":")===-1)return!1;try{const g=this.parser(p);return new this(g.parts,g.zoneId),!0}catch{return!1}},j.IPv6.isValidCIDR=function(p){if(typeof p=="string"&&p.indexOf(":")===-1)return!1;try{return this.parseCIDR(p),!0}catch{return!1}},j.IPv6.networkAddressFromCIDR=function(p){let g,A,S,B,T;try{for(g=this.parseCIDR(p),S=g[0].toByteArray(),T=this.subnetMaskFromPrefixLength(g[1]).toByteArray(),B=[],A=0;A<16;)B.push(parseInt(S[A],10)&parseInt(T[A],10)),A++;return new this(B)}catch(ve){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${ve})`)}},j.IPv6.parse=function(p){const g=this.parser(p);if(g.parts===null)throw new Error("ipaddr: string is not formatted like an IPv6 Address");return new this(g.parts,g.zoneId)},j.IPv6.parseCIDR=function(p){let g,A,S;if((A=p.match(/^(.+)\/(\d+)$/))&&(g=parseInt(A[2]),g>=0&&g<=128))return S=[this.parse(A[1]),g],Object.defineProperty(S,"toString",{value:function(){return this.join("/")}}),S;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},j.IPv6.parser=function(p){let g,A,S,B,T,ve;if(S=p.match(c.deprecatedTransitional))return this.parser(`::ffff:${S[1]}`);if(c.native.test(p))return u(p,8);if((S=p.match(c.transitional))&&(ve=S[6]||"",g=S[1],S[1].endsWith("::")||(g=g.slice(0,-1)),g=u(g+ve,6),g.parts)){for(T=[parseInt(S[2]),parseInt(S[3]),parseInt(S[4]),parseInt(S[5])],A=0;A<T.length;A++)if(B=T[A],!(0<=B&&B<=255))return null;return g.parts.push(T[0]<<8|T[1]),g.parts.push(T[2]<<8|T[3]),{parts:g.parts,zoneId:g.zoneId}}return null},j.IPv6.subnetMaskFromPrefixLength=function(p){if(p=parseInt(p),p<0||p>128)throw new Error("ipaddr: invalid IPv6 prefix length");const g=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];let A=0;const S=Math.floor(p/8);for(;A<S;)g[A]=255,A++;return S<16&&(g[S]=Math.pow(2,p%8)-1<<8-p%8),new this(g)},j.fromByteArray=function(p){const g=p.length;if(g===4)return new j.IPv4(p);if(g===16)return new j.IPv6(p);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},j.isValid=function(p){return j.IPv6.isValid(p)||j.IPv4.isValid(p)},j.isValidCIDR=function(p){return j.IPv6.isValidCIDR(p)||j.IPv4.isValidCIDR(p)},j.parse=function(p){if(j.IPv6.isValid(p))return j.IPv6.parse(p);if(j.IPv4.isValid(p))return j.IPv4.parse(p);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},j.parseCIDR=function(p){try{return j.IPv6.parseCIDR(p)}catch{try{return j.IPv4.parseCIDR(p)}catch{throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},j.process=function(p){const g=this.parse(p);return g.kind()==="ipv6"&&g.isIPv4MappedAddress()?g.toIPv4Address():g},j.subnetMatch=function(p,g,A){let S,B,T,ve;A==null&&(A="unicast");for(B in g)if(Object.prototype.hasOwnProperty.call(g,B)){for(T=g[B],T[0]&&!(T[0]instanceof Array)&&(T=[T]),S=0;S<T.length;S++)if(ve=T[S],p.kind()===ve[0].kind()&&p.match.apply(p,ve))return B}return A},r.exports?r.exports=j:e.ipaddr=j})(go)})(wp);var kp=wp.exports;class Sp{static decodeIP(e){if(e.length===64&&parseInt(e,16)===0)return"::/0";if(e.length!==16)return e;const t=parseInt(e.slice(8),16).toString(2).split("").reduce((s,i)=>s+ +i,0);let n=e.slice(0,8).replace(/(.{2})/g,s=>`${parseInt(s,16)}.`);return n=n.slice(0,-1),`${n}/${t}`}static toString(e){if(e.byteLength===4||e.byteLength===16){const t=new Uint8Array(e);return kp.fromByteArray(Array.from(t)).toString()}return this.decodeIP(re.ToHex(e))}static fromString(e){const t=kp.parse(e);return new Uint8Array(t.toByteArray()).buffer}}var tl,rl,nl;let lt=class{constructor(e={}){Object.assign(this,e)}toString(){return this.bmpString||this.printableString||this.teletexString||this.universalString||this.utf8String||""}};l([h({type:y.TeletexString})],lt.prototype,"teletexString",void 0),l([h({type:y.PrintableString})],lt.prototype,"printableString",void 0),l([h({type:y.UniversalString})],lt.prototype,"universalString",void 0),l([h({type:y.Utf8String})],lt.prototype,"utf8String",void 0),l([h({type:y.BmpString})],lt.prototype,"bmpString",void 0),lt=l([R({type:N.Choice})],lt);let hs=class extends lt{constructor(e={}){super(e),Object.assign(this,e)}toString(){return this.ia5String||(this.anyValue?re.ToHex(this.anyValue):super.toString())}};l([h({type:y.IA5String})],hs.prototype,"ia5String",void 0),l([h({type:y.Any})],hs.prototype,"anyValue",void 0),hs=l([R({type:N.Choice})],hs);class Do{constructor(e={}){this.type="",this.value=new hs,Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Do.prototype,"type",void 0),l([h({type:hs})],Do.prototype,"value",void 0);let ps=tl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,tl.prototype)}};ps=tl=l([R({type:N.Set,itemType:Do})],ps);let sl=rl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,rl.prototype)}};sl=rl=l([R({type:N.Sequence,itemType:ps})],sl);let nt=nl=class extends sl{constructor(e){super(e),Object.setPrototypeOf(this,nl.prototype)}};nt=nl=l([R({type:N.Sequence})],nt);const Hx={fromASN:r=>Sp.toString(Zo.fromASN(r)),toASN:r=>Zo.toASN(Sp.fromString(r))};class zi{constructor(e={}){this.typeId="",this.value=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],zi.prototype,"typeId",void 0),l([h({type:y.Any,context:0})],zi.prototype,"value",void 0);class il{constructor(e={}){this.partyName=new lt,Object.assign(this,e)}}l([h({type:lt,optional:!0,context:0,implicit:!0})],il.prototype,"nameAssigner",void 0),l([h({type:lt,context:1,implicit:!0})],il.prototype,"partyName",void 0);let ge=class{constructor(e={}){Object.assign(this,e)}};l([h({type:zi,context:0,implicit:!0})],ge.prototype,"otherName",void 0),l([h({type:y.IA5String,context:1,implicit:!0})],ge.prototype,"rfc822Name",void 0),l([h({type:y.IA5String,context:2,implicit:!0})],ge.prototype,"dNSName",void 0),l([h({type:y.Any,context:3,implicit:!0})],ge.prototype,"x400Address",void 0),l([h({type:nt,context:4,implicit:!1})],ge.prototype,"directoryName",void 0),l([h({type:il,context:5})],ge.prototype,"ediPartyName",void 0),l([h({type:y.IA5String,context:6,implicit:!0})],ge.prototype,"uniformResourceIdentifier",void 0),l([h({type:y.OctetString,context:7,implicit:!0,converter:Hx})],ge.prototype,"iPAddress",void 0),l([h({type:y.ObjectIdentifier,context:8,implicit:!0})],ge.prototype,"registeredID",void 0),ge=l([R({type:N.Choice})],ge);const al="1.3.6.1.5.5.7",Fx=`${al}.1`,ms=`${al}.3`,Mo=`${al}.48`,Ap=`${Mo}.1`,Op=`${Mo}.2`,Ep=`${Mo}.3`,Ip=`${Mo}.5`,nn="2.5.29";var ol;const cl=`${Fx}.1`;class Ki{constructor(e={}){this.accessMethod="",this.accessLocation=new ge,Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Ki.prototype,"accessMethod",void 0),l([h({type:ge})],Ki.prototype,"accessLocation",void 0);let ys=ol=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,ol.prototype)}};ys=ol=l([R({type:N.Sequence,itemType:Ki})],ys);const ul=`${nn}.35`;class ll extends Ne{}class jn{constructor(e={}){e&&Object.assign(this,e)}}l([h({type:ll,context:0,optional:!0,implicit:!0})],jn.prototype,"keyIdentifier",void 0),l([h({type:ge,context:1,optional:!0,implicit:!0,repeated:"sequence"})],jn.prototype,"authorityCertIssuer",void 0),l([h({type:y.Integer,context:2,optional:!0,implicit:!0,converter:Fe})],jn.prototype,"authorityCertSerialNumber",void 0);const Cp=`${nn}.19`;class Vo{constructor(e={}){this.cA=!1,Object.assign(this,e)}}l([h({type:y.Boolean,defaultValue:!1})],Vo.prototype,"cA",void 0),l([h({type:y.Integer,optional:!0})],Vo.prototype,"pathLenConstraint",void 0);var dl;let bt=dl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,dl.prototype)}};bt=dl=l([R({type:N.Sequence,itemType:ge})],bt);var fl;let jp=fl=class extends bt{constructor(e){super(e),Object.setPrototypeOf(this,fl.prototype)}};jp=fl=l([R({type:N.Sequence})],jp);var hl;const Tp=`${nn}.32`;let Pr=class{constructor(e={}){Object.assign(this,e)}toString(){return this.ia5String||this.visibleString||this.bmpString||this.utf8String||""}};l([h({type:y.IA5String})],Pr.prototype,"ia5String",void 0),l([h({type:y.VisibleString})],Pr.prototype,"visibleString",void 0),l([h({type:y.BmpString})],Pr.prototype,"bmpString",void 0),l([h({type:y.Utf8String})],Pr.prototype,"utf8String",void 0),Pr=l([R({type:N.Choice})],Pr);class pl{constructor(e={}){this.organization=new Pr,this.noticeNumbers=[],Object.assign(this,e)}}l([h({type:Pr})],pl.prototype,"organization",void 0),l([h({type:y.Integer,repeated:"sequence"})],pl.prototype,"noticeNumbers",void 0);class ml{constructor(e={}){Object.assign(this,e)}}l([h({type:pl,optional:!0})],ml.prototype,"noticeRef",void 0),l([h({type:Pr,optional:!0})],ml.prototype,"explicitText",void 0);let Uo=class{constructor(e={}){Object.assign(this,e)}};l([h({type:y.IA5String})],Uo.prototype,"cPSuri",void 0),l([h({type:ml})],Uo.prototype,"userNotice",void 0),Uo=l([R({type:N.Choice})],Uo);class yl{constructor(e={}){this.policyQualifierId="",this.qualifier=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],yl.prototype,"policyQualifierId",void 0),l([h({type:y.Any})],yl.prototype,"qualifier",void 0);class Lo{constructor(e={}){this.policyIdentifier="",Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Lo.prototype,"policyIdentifier",void 0),l([h({type:yl,repeated:"sequence",optional:!0})],Lo.prototype,"policyQualifiers",void 0);let qo=hl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,hl.prototype)}};qo=hl=l([R({type:N.Sequence,itemType:Lo})],qo);let Ho=class{constructor(e=0){this.value=e}};l([h({type:y.Integer})],Ho.prototype,"value",void 0),Ho=l([R({type:N.Choice})],Ho);let Np=class extends Ho{};Np=l([R({type:N.Choice})],Np);var gl;const vl=`${nn}.31`;var Yt;(function(r){r[r.unused=1]="unused",r[r.keyCompromise=2]="keyCompromise",r[r.cACompromise=4]="cACompromise",r[r.affiliationChanged=8]="affiliationChanged",r[r.superseded=16]="superseded",r[r.cessationOfOperation=32]="cessationOfOperation",r[r.certificateHold=64]="certificateHold",r[r.privilegeWithdrawn=128]="privilegeWithdrawn",r[r.aACompromise=256]="aACompromise"})(Yt||(Yt={}));class Bp extends $o{toJSON(){const e=[],t=this.toNumber();return t&Yt.aACompromise&&e.push("aACompromise"),t&Yt.affiliationChanged&&e.push("affiliationChanged"),t&Yt.cACompromise&&e.push("cACompromise"),t&Yt.certificateHold&&e.push("certificateHold"),t&Yt.cessationOfOperation&&e.push("cessationOfOperation"),t&Yt.keyCompromise&&e.push("keyCompromise"),t&Yt.privilegeWithdrawn&&e.push("privilegeWithdrawn"),t&Yt.superseded&&e.push("superseded"),t&Yt.unused&&e.push("unused"),e}toString(){return`[${this.toJSON().join(", ")}]`}}let Tn=class{constructor(e={}){Object.assign(this,e)}};l([h({type:ge,context:0,repeated:"sequence",implicit:!0})],Tn.prototype,"fullName",void 0),l([h({type:ps,context:1,implicit:!0})],Tn.prototype,"nameRelativeToCRLIssuer",void 0),Tn=l([R({type:N.Choice})],Tn);class gs{constructor(e={}){Object.assign(this,e)}}l([h({type:Tn,context:0,optional:!0})],gs.prototype,"distributionPoint",void 0),l([h({type:Bp,context:1,optional:!0,implicit:!0})],gs.prototype,"reasons",void 0),l([h({type:ge,context:2,optional:!0,repeated:"sequence",implicit:!0})],gs.prototype,"cRLIssuer",void 0);let vs=gl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,gl.prototype)}};vs=gl=l([R({type:N.Sequence,itemType:gs})],vs);var bl;let Rp=bl=class extends vs{constructor(e){super(e),Object.setPrototypeOf(this,bl.prototype)}};Rp=bl=l([R({type:N.Sequence,itemType:gs})],Rp);class ht{constructor(e={}){this.onlyContainsUserCerts=ht.ONLY,this.onlyContainsCACerts=ht.ONLY,this.indirectCRL=ht.ONLY,this.onlyContainsAttributeCerts=ht.ONLY,Object.assign(this,e)}}ht.ONLY=!1,l([h({type:Tn,context:0,optional:!0})],ht.prototype,"distributionPoint",void 0),l([h({type:y.Boolean,context:1,defaultValue:ht.ONLY,implicit:!0})],ht.prototype,"onlyContainsUserCerts",void 0),l([h({type:y.Boolean,context:2,defaultValue:ht.ONLY,implicit:!0})],ht.prototype,"onlyContainsCACerts",void 0),l([h({type:Bp,context:3,optional:!0,implicit:!0})],ht.prototype,"onlySomeReasons",void 0),l([h({type:y.Boolean,context:4,defaultValue:ht.ONLY,implicit:!0})],ht.prototype,"indirectCRL",void 0),l([h({type:y.Boolean,context:5,defaultValue:ht.ONLY,implicit:!0})],ht.prototype,"onlyContainsAttributeCerts",void 0);var Gi;(function(r){r[r.unspecified=0]="unspecified",r[r.keyCompromise=1]="keyCompromise",r[r.cACompromise=2]="cACompromise",r[r.affiliationChanged=3]="affiliationChanged",r[r.superseded=4]="superseded",r[r.cessationOfOperation=5]="cessationOfOperation",r[r.certificateHold=6]="certificateHold",r[r.removeFromCRL=8]="removeFromCRL",r[r.privilegeWithdrawn=9]="privilegeWithdrawn",r[r.aACompromise=10]="aACompromise"})(Gi||(Gi={}));let xl=class{constructor(e=Gi.unspecified){this.reason=Gi.unspecified,this.reason=e}toJSON(){return Gi[this.reason]}toString(){return this.toJSON()}};l([h({type:y.Enumerated})],xl.prototype,"reason",void 0),xl=l([R({type:N.Choice})],xl);var _l;const Pp=`${nn}.37`;let Fo=_l=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,_l.prototype)}};Fo=_l=l([R({type:N.Sequence,itemType:y.ObjectIdentifier})],Fo);const Wx=`${ms}.1`,zx=`${ms}.2`,Kx=`${ms}.3`,Gx=`${ms}.4`,Jx=`${ms}.8`,Yx=`${ms}.9`;let wl=class{constructor(e=new ArrayBuffer(0)){this.value=e}};l([h({type:y.Integer,converter:Fe})],wl.prototype,"value",void 0),wl=l([R({type:N.Choice})],wl);let kl=class{constructor(e){this.value=new Date,e&&(this.value=e)}};l([h({type:y.GeneralizedTime})],kl.prototype,"value",void 0),kl=l([R({type:N.Choice})],kl);var Sl;let $p=Sl=class extends bt{constructor(e){super(e),Object.setPrototypeOf(this,Sl.prototype)}};$p=Sl=l([R({type:N.Sequence})],$p);const Zp=`${nn}.15`;var Xt;(function(r){r[r.digitalSignature=1]="digitalSignature",r[r.nonRepudiation=2]="nonRepudiation",r[r.keyEncipherment=4]="keyEncipherment",r[r.dataEncipherment=8]="dataEncipherment",r[r.keyAgreement=16]="keyAgreement",r[r.keyCertSign=32]="keyCertSign",r[r.cRLSign=64]="cRLSign",r[r.encipherOnly=128]="encipherOnly",r[r.decipherOnly=256]="decipherOnly"})(Xt||(Xt={}));class Al extends $o{toJSON(){const e=this.toNumber(),t=[];return e&Xt.cRLSign&&t.push("crlSign"),e&Xt.dataEncipherment&&t.push("dataEncipherment"),e&Xt.decipherOnly&&t.push("decipherOnly"),e&Xt.digitalSignature&&t.push("digitalSignature"),e&Xt.encipherOnly&&t.push("encipherOnly"),e&Xt.keyAgreement&&t.push("keyAgreement"),e&Xt.keyCertSign&&t.push("keyCertSign"),e&Xt.keyEncipherment&&t.push("keyEncipherment"),e&Xt.nonRepudiation&&t.push("nonRepudiation"),t}toString(){return`[${this.toJSON().join(", ")}]`}}var Ol;class Wo{constructor(e={}){this.base=new ge,this.minimum=0,Object.assign(this,e)}}l([h({type:ge})],Wo.prototype,"base",void 0),l([h({type:y.Integer,context:0,defaultValue:0,implicit:!0})],Wo.prototype,"minimum",void 0),l([h({type:y.Integer,context:1,optional:!0,implicit:!0})],Wo.prototype,"maximum",void 0);let zo=Ol=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Ol.prototype)}};zo=Ol=l([R({type:N.Sequence,itemType:Wo})],zo);class Dp{constructor(e={}){Object.assign(this,e)}}l([h({type:zo,context:0,optional:!0,implicit:!0})],Dp.prototype,"permittedSubtrees",void 0),l([h({type:zo,context:1,optional:!0,implicit:!0})],Dp.prototype,"excludedSubtrees",void 0);class Mp{constructor(e={}){Object.assign(this,e)}}l([h({type:y.Integer,context:0,implicit:!0,optional:!0,converter:Fe})],Mp.prototype,"requireExplicitPolicy",void 0),l([h({type:y.Integer,context:1,implicit:!0,optional:!0,converter:Fe})],Mp.prototype,"inhibitPolicyMapping",void 0);var El;class Il{constructor(e={}){this.issuerDomainPolicy="",this.subjectDomainPolicy="",Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Il.prototype,"issuerDomainPolicy",void 0),l([h({type:y.ObjectIdentifier})],Il.prototype,"subjectDomainPolicy",void 0);let Vp=El=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,El.prototype)}};Vp=El=l([R({type:N.Sequence,itemType:Il})],Vp);var Cl;const Up=`${nn}.17`;let jl=Cl=class extends bt{constructor(e){super(e),Object.setPrototypeOf(this,Cl.prototype)}};jl=Cl=l([R({type:N.Sequence})],jl);let $r=class{constructor(e={}){this.type="",this.values=[],Object.assign(this,e)}};l([h({type:y.ObjectIdentifier})],$r.prototype,"type",void 0),l([h({type:y.Any,repeated:"set"})],$r.prototype,"values",void 0);var Tl;let Lp=Tl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Tl.prototype)}};Lp=Tl=l([R({type:N.Sequence,itemType:$r})],Lp);const qp=`${nn}.14`;class sn extends ll{}class Hp{constructor(e={}){Object.assign(this,e)}}l([h({type:y.GeneralizedTime,context:0,implicit:!0,optional:!0})],Hp.prototype,"notBefore",void 0),l([h({type:y.GeneralizedTime,context:1,implicit:!0,optional:!0})],Hp.prototype,"notAfter",void 0);var Ji;(function(r){r[r.keyUpdateAllowed=1]="keyUpdateAllowed",r[r.newExtensions=2]="newExtensions",r[r.pKIXCertificate=4]="pKIXCertificate"})(Ji||(Ji={}));class Fp extends $o{toJSON(){const e=[],t=this.toNumber();return t&Ji.pKIXCertificate&&e.push("pKIXCertificate"),t&Ji.newExtensions&&e.push("newExtensions"),t&Ji.keyUpdateAllowed&&e.push("keyUpdateAllowed"),e}toString(){return`[${this.toJSON().join(", ")}]`}}class Wp{constructor(e={}){this.entrustVers="",this.entrustInfoFlags=new Fp,Object.assign(this,e)}}l([h({type:y.GeneralString})],Wp.prototype,"entrustVers",void 0),l([h({type:Fp})],Wp.prototype,"entrustInfoFlags",void 0);var Nl;let zp=Nl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Nl.prototype)}};zp=Nl=l([R({type:N.Sequence,itemType:Ki})],zp);class Y{constructor(e={}){this.algorithm="",Object.assign(this,e)}isEqual(e){return e instanceof Y&&e.algorithm==this.algorithm&&(e.parameters&&this.parameters&&gh(e.parameters,this.parameters)||e.parameters===this.parameters)}}l([h({type:y.ObjectIdentifier})],Y.prototype,"algorithm",void 0),l([h({type:y.Any,optional:!0})],Y.prototype,"parameters",void 0);class yr{constructor(e={}){this.algorithm=new Y,this.subjectPublicKey=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:Y})],yr.prototype,"algorithm",void 0),l([h({type:y.BitString})],yr.prototype,"subjectPublicKey",void 0);let dt=class{constructor(e){if(e)if(typeof e=="string"||typeof e=="number"||e instanceof Date){const t=new Date(e);t.getUTCFullYear()>2049?this.generalTime=t:this.utcTime=t}else Object.assign(this,e)}getTime(){const e=this.utcTime||this.generalTime;if(!e)throw new Error("Cannot get time from CHOICE object");return e}};l([h({type:y.UTCTime})],dt.prototype,"utcTime",void 0),l([h({type:y.GeneralizedTime})],dt.prototype,"generalTime",void 0),dt=l([R({type:N.Choice})],dt);class Ko{constructor(e){this.notBefore=new dt(new Date),this.notAfter=new dt(new Date),e&&(this.notBefore=new dt(e.notBefore),this.notAfter=new dt(e.notAfter))}}l([h({type:dt})],Ko.prototype,"notBefore",void 0),l([h({type:dt})],Ko.prototype,"notAfter",void 0);var Bl;let Qt=class kg{constructor(e={}){this.extnID="",this.critical=kg.CRITICAL,this.extnValue=new Ne,Object.assign(this,e)}};Qt.CRITICAL=!1,l([h({type:y.ObjectIdentifier})],Qt.prototype,"extnID",void 0),l([h({type:y.Boolean,defaultValue:Qt.CRITICAL})],Qt.prototype,"critical",void 0),l([h({type:Ne})],Qt.prototype,"extnValue",void 0);let Nn=Bl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Bl.prototype)}};Nn=Bl=l([R({type:N.Sequence,itemType:Qt})],Nn);var bs;(function(r){r[r.v1=0]="v1",r[r.v2=1]="v2",r[r.v3=2]="v3"})(bs||(bs={}));class Vt{constructor(e={}){this.version=bs.v1,this.serialNumber=new ArrayBuffer(0),this.signature=new Y,this.issuer=new nt,this.validity=new Ko,this.subject=new nt,this.subjectPublicKeyInfo=new yr,Object.assign(this,e)}}l([h({type:y.Integer,context:0,defaultValue:bs.v1})],Vt.prototype,"version",void 0),l([h({type:y.Integer,converter:Fe})],Vt.prototype,"serialNumber",void 0),l([h({type:Y})],Vt.prototype,"signature",void 0),l([h({type:nt})],Vt.prototype,"issuer",void 0),l([h({type:Ko})],Vt.prototype,"validity",void 0),l([h({type:nt})],Vt.prototype,"subject",void 0),l([h({type:yr})],Vt.prototype,"subjectPublicKeyInfo",void 0),l([h({type:y.BitString,context:1,implicit:!0,optional:!0})],Vt.prototype,"issuerUniqueID",void 0),l([h({type:y.BitString,context:2,implicit:!0,optional:!0})],Vt.prototype,"subjectUniqueID",void 0),l([h({type:Nn,context:3,optional:!0})],Vt.prototype,"extensions",void 0);class xs{constructor(e={}){this.tbsCertificate=new Vt,this.signatureAlgorithm=new Y,this.signatureValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:Vt})],xs.prototype,"tbsCertificate",void 0),l([h({type:Y})],xs.prototype,"signatureAlgorithm",void 0),l([h({type:y.BitString})],xs.prototype,"signatureValue",void 0);class Go{constructor(e={}){this.userCertificate=new ArrayBuffer(0),this.revocationDate=new dt,Object.assign(this,e)}}l([h({type:y.Integer,converter:Fe})],Go.prototype,"userCertificate",void 0),l([h({type:dt})],Go.prototype,"revocationDate",void 0),l([h({type:Qt,optional:!0,repeated:"sequence"})],Go.prototype,"crlEntryExtensions",void 0);class Zr{constructor(e={}){this.signature=new Y,this.issuer=new nt,this.thisUpdate=new dt,Object.assign(this,e)}}l([h({type:y.Integer,optional:!0})],Zr.prototype,"version",void 0),l([h({type:Y})],Zr.prototype,"signature",void 0),l([h({type:nt})],Zr.prototype,"issuer",void 0),l([h({type:dt})],Zr.prototype,"thisUpdate",void 0),l([h({type:dt,optional:!0})],Zr.prototype,"nextUpdate",void 0),l([h({type:Go,repeated:"sequence",optional:!0})],Zr.prototype,"revokedCertificates",void 0),l([h({type:Qt,optional:!0,context:0,repeated:"sequence"})],Zr.prototype,"crlExtensions",void 0);class Rl{constructor(e={}){this.tbsCertList=new Zr,this.signatureAlgorithm=new Y,this.signature=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:Zr})],Rl.prototype,"tbsCertList",void 0),l([h({type:Y})],Rl.prototype,"signatureAlgorithm",void 0),l([h({type:y.BitString})],Rl.prototype,"signature",void 0);class _s{constructor(e={}){this.issuer=new nt,this.serialNumber=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:nt})],_s.prototype,"issuer",void 0),l([h({type:y.Integer,converter:Fe})],_s.prototype,"serialNumber",void 0);let ws=class{constructor(e={}){Object.assign(this,e)}};l([h({type:sn,context:0,implicit:!0})],ws.prototype,"subjectKeyIdentifier",void 0),l([h({type:_s})],ws.prototype,"issuerAndSerialNumber",void 0),ws=l([R({type:N.Choice})],ws);var Dr;(function(r){r[r.v0=0]="v0",r[r.v1=1]="v1",r[r.v2=2]="v2",r[r.v3=3]="v3",r[r.v4=4]="v4",r[r.v5=5]="v5"})(Dr||(Dr={}));let Yi=class extends Y{};Yi=l([R({type:N.Sequence})],Yi);let Jo=class extends Y{};Jo=l([R({type:N.Sequence})],Jo);let gr=class extends Y{};gr=l([R({type:N.Sequence})],gr);let Yo=class extends Y{};Yo=l([R({type:N.Sequence})],Yo);let Kp=class extends Y{};Kp=l([R({type:N.Sequence})],Kp);let Pl=class extends Y{};Pl=l([R({type:N.Sequence})],Pl);let ks=class{constructor(e={}){this.attrType="",this.attrValues=[],Object.assign(this,e)}};l([h({type:y.ObjectIdentifier})],ks.prototype,"attrType",void 0),l([h({type:y.Any,repeated:"set"})],ks.prototype,"attrValues",void 0);var $l;class vr{constructor(e={}){this.version=Dr.v0,this.sid=new ws,this.digestAlgorithm=new Yi,this.signatureAlgorithm=new Jo,this.signature=new Ne,Object.assign(this,e)}}l([h({type:y.Integer})],vr.prototype,"version",void 0),l([h({type:ws})],vr.prototype,"sid",void 0),l([h({type:Yi})],vr.prototype,"digestAlgorithm",void 0),l([h({type:ks,repeated:"set",context:0,implicit:!0,optional:!0})],vr.prototype,"signedAttrs",void 0),l([h({type:Jo})],vr.prototype,"signatureAlgorithm",void 0),l([h({type:Ne})],vr.prototype,"signature",void 0),l([h({type:ks,repeated:"set",context:1,implicit:!0,optional:!0})],vr.prototype,"unsignedAttrs",void 0);let Xo=$l=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,$l.prototype)}};Xo=$l=l([R({type:N.Set,itemType:vr})],Xo);let Gp=class extends dt{};Gp=l([R({type:N.Choice})],Gp);let Jp=class extends vr{};Jp=l([R({type:N.Sequence})],Jp);class Zl{constructor(e={}){this.acIssuer=new ge,this.acSerial=0,this.attrs=[],Object.assign(this,e)}}l([h({type:ge})],Zl.prototype,"acIssuer",void 0),l([h({type:y.Integer})],Zl.prototype,"acSerial",void 0),l([h({type:$r,repeated:"sequence"})],Zl.prototype,"attrs",void 0);var Dl;let Qo=Dl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Dl.prototype)}};Qo=Dl=l([R({type:N.Sequence,itemType:y.ObjectIdentifier})],Qo);class ec{constructor(e={}){this.permitUnSpecified=!0,Object.assign(this,e)}}l([h({type:y.Integer,optional:!0})],ec.prototype,"pathLenConstraint",void 0),l([h({type:Qo,implicit:!0,context:0,optional:!0})],ec.prototype,"permittedAttrs",void 0),l([h({type:Qo,implicit:!0,context:1,optional:!0})],ec.prototype,"excludedAttrs",void 0),l([h({type:y.Boolean,defaultValue:!0})],ec.prototype,"permitUnSpecified",void 0);class Bn{constructor(e={}){this.issuer=new bt,this.serial=new ArrayBuffer(0),this.issuerUID=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:bt})],Bn.prototype,"issuer",void 0),l([h({type:y.Integer,converter:Fe})],Bn.prototype,"serial",void 0),l([h({type:y.BitString,optional:!0})],Bn.prototype,"issuerUID",void 0);var Ml;(function(r){r[r.publicKey=0]="publicKey",r[r.publicKeyCert=1]="publicKeyCert",r[r.otherObjectTypes=2]="otherObjectTypes"})(Ml||(Ml={}));class Rn{constructor(e={}){this.digestedObjectType=Ml.publicKey,this.digestAlgorithm=new Y,this.objectDigest=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.Enumerated})],Rn.prototype,"digestedObjectType",void 0),l([h({type:y.ObjectIdentifier,optional:!0})],Rn.prototype,"otherObjectTypeID",void 0),l([h({type:Y})],Rn.prototype,"digestAlgorithm",void 0),l([h({type:y.BitString})],Rn.prototype,"objectDigest",void 0);class tc{constructor(e={}){Object.assign(this,e)}}l([h({type:bt,optional:!0})],tc.prototype,"issuerName",void 0),l([h({type:Bn,context:0,implicit:!0,optional:!0})],tc.prototype,"baseCertificateID",void 0),l([h({type:Rn,context:1,implicit:!0,optional:!0})],tc.prototype,"objectDigestInfo",void 0);let Ss=class{constructor(e={}){Object.assign(this,e)}};l([h({type:ge,repeated:"sequence"})],Ss.prototype,"v1Form",void 0),l([h({type:tc,context:0,implicit:!0})],Ss.prototype,"v2Form",void 0),Ss=l([R({type:N.Choice})],Ss);class rc{constructor(e={}){this.notBeforeTime=new Date,this.notAfterTime=new Date,Object.assign(this,e)}}l([h({type:y.GeneralizedTime})],rc.prototype,"notBeforeTime",void 0),l([h({type:y.GeneralizedTime})],rc.prototype,"notAfterTime",void 0);class Xi{constructor(e={}){Object.assign(this,e)}}l([h({type:Bn,implicit:!0,context:0,optional:!0})],Xi.prototype,"baseCertificateID",void 0),l([h({type:bt,implicit:!0,context:1,optional:!0})],Xi.prototype,"entityName",void 0),l([h({type:Rn,implicit:!0,context:2,optional:!0})],Xi.prototype,"objectDigestInfo",void 0);var Vl;(function(r){r[r.v2=1]="v2"})(Vl||(Vl={}));class er{constructor(e={}){this.version=Vl.v2,this.holder=new Xi,this.issuer=new Ss,this.signature=new Y,this.serialNumber=new ArrayBuffer(0),this.attrCertValidityPeriod=new rc,this.attributes=[],Object.assign(this,e)}}l([h({type:y.Integer})],er.prototype,"version",void 0),l([h({type:Xi})],er.prototype,"holder",void 0),l([h({type:Ss})],er.prototype,"issuer",void 0),l([h({type:Y})],er.prototype,"signature",void 0),l([h({type:y.Integer,converter:Fe})],er.prototype,"serialNumber",void 0),l([h({type:rc})],er.prototype,"attrCertValidityPeriod",void 0),l([h({type:$r,repeated:"sequence"})],er.prototype,"attributes",void 0),l([h({type:y.BitString,optional:!0})],er.prototype,"issuerUniqueID",void 0),l([h({type:Nn,optional:!0})],er.prototype,"extensions",void 0);class nc{constructor(e={}){this.acinfo=new er,this.signatureAlgorithm=new Y,this.signatureValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:er})],nc.prototype,"acinfo",void 0),l([h({type:Y})],nc.prototype,"signatureAlgorithm",void 0),l([h({type:y.BitString})],nc.prototype,"signatureValue",void 0);var sc;(function(r){r[r.unmarked=1]="unmarked",r[r.unclassified=2]="unclassified",r[r.restricted=4]="restricted",r[r.confidential=8]="confidential",r[r.secret=16]="secret",r[r.topSecret=32]="topSecret"})(sc||(sc={}));class Ul extends $o{}class Ll{constructor(e={}){this.type="",this.value=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier,implicit:!0,context:0})],Ll.prototype,"type",void 0),l([h({type:y.Any,implicit:!0,context:1})],Ll.prototype,"value",void 0);class ql{constructor(e={}){this.policyId="",this.classList=new Ul(sc.unclassified),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],ql.prototype,"policyId",void 0),l([h({type:Ul,defaultValue:new Ul(sc.unclassified)})],ql.prototype,"classList",void 0),l([h({type:Ll,repeated:"set"})],ql.prototype,"securityCategories",void 0);class ic{constructor(e={}){Object.assign(this,e)}}l([h({type:Ne})],ic.prototype,"cotets",void 0),l([h({type:y.ObjectIdentifier})],ic.prototype,"oid",void 0),l([h({type:y.Utf8String})],ic.prototype,"string",void 0);class Yp{constructor(e={}){this.values=[],Object.assign(this,e)}}l([h({type:bt,implicit:!0,context:0,optional:!0})],Yp.prototype,"policyAuthority",void 0),l([h({type:ic,repeated:"sequence"})],Yp.prototype,"values",void 0);var Hl;class ac{constructor(e={}){this.targetCertificate=new Bn,Object.assign(this,e)}}l([h({type:Bn})],ac.prototype,"targetCertificate",void 0),l([h({type:ge,optional:!0})],ac.prototype,"targetName",void 0),l([h({type:Rn,optional:!0})],ac.prototype,"certDigestInfo",void 0);let As=class{constructor(e={}){Object.assign(this,e)}};l([h({type:ge,context:0,implicit:!0})],As.prototype,"targetName",void 0),l([h({type:ge,context:1,implicit:!0})],As.prototype,"targetGroup",void 0),l([h({type:ac,context:2,implicit:!0})],As.prototype,"targetCert",void 0),As=l([R({type:N.Choice})],As);let Fl=Hl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Hl.prototype)}};Fl=Hl=l([R({type:N.Sequence,itemType:As})],Fl);var Wl;let Xp=Wl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Wl.prototype)}};Xp=Wl=l([R({type:N.Sequence,itemType:Fl})],Xp);class Qp{constructor(e={}){Object.assign(this,e)}}l([h({type:bt,implicit:!0,context:0,optional:!0})],Qp.prototype,"roleAuthority",void 0),l([h({type:ge,implicit:!0,context:1})],Qp.prototype,"roleName",void 0);class zl{constructor(e={}){this.service=new ge,this.ident=new ge,Object.assign(this,e)}}l([h({type:ge})],zl.prototype,"service",void 0),l([h({type:ge})],zl.prototype,"ident",void 0),l([h({type:Ne,optional:!0})],zl.prototype,"authInfo",void 0);var Kl;class Gl{constructor(e={}){this.otherCertFormat="",this.otherCert=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Gl.prototype,"otherCertFormat",void 0),l([h({type:y.Any})],Gl.prototype,"otherCert",void 0);let Os=class{constructor(e={}){Object.assign(this,e)}};l([h({type:xs})],Os.prototype,"certificate",void 0),l([h({type:nc,context:2,implicit:!0})],Os.prototype,"v2AttrCert",void 0),l([h({type:Gl,context:3,implicit:!0})],Os.prototype,"other",void 0),Os=l([R({type:N.Choice})],Os);let oc=Kl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Kl.prototype)}};oc=Kl=l([R({type:N.Set,itemType:Os})],oc);class Es{constructor(e={}){this.contentType="",this.content=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Es.prototype,"contentType",void 0),l([h({type:y.Any,context:0})],Es.prototype,"content",void 0);let Qi=class{constructor(e={}){Object.assign(this,e)}};l([h({type:Ne})],Qi.prototype,"single",void 0),l([h({type:y.Any})],Qi.prototype,"any",void 0),Qi=l([R({type:N.Choice})],Qi);class cc{constructor(e={}){this.eContentType="",Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],cc.prototype,"eContentType",void 0),l([h({type:Qi,context:0,optional:!0})],cc.prototype,"eContent",void 0);let ea=class{constructor(e={}){Object.assign(this,e)}};l([h({type:Ne,context:0,implicit:!0,optional:!0})],ea.prototype,"value",void 0),l([h({type:Ne,converter:Ox,context:0,implicit:!0,optional:!0,repeated:"sequence"})],ea.prototype,"constructedValue",void 0),ea=l([R({type:N.Choice})],ea);class ta{constructor(e={}){this.contentType="",this.contentEncryptionAlgorithm=new Yo,Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],ta.prototype,"contentType",void 0),l([h({type:Yo})],ta.prototype,"contentEncryptionAlgorithm",void 0),l([h({type:ea,optional:!0})],ta.prototype,"encryptedContent",void 0);class uc{constructor(e={}){this.keyAttrId="",Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],uc.prototype,"keyAttrId",void 0),l([h({type:y.Any,optional:!0})],uc.prototype,"keyAttr",void 0);var Jl;class lc{constructor(e={}){this.subjectKeyIdentifier=new sn,Object.assign(this,e)}}l([h({type:sn})],lc.prototype,"subjectKeyIdentifier",void 0),l([h({type:y.GeneralizedTime,optional:!0})],lc.prototype,"date",void 0),l([h({type:uc,optional:!0})],lc.prototype,"other",void 0);let Is=class{constructor(e={}){Object.assign(this,e)}};l([h({type:lc,context:0,implicit:!0,optional:!0})],Is.prototype,"rKeyId",void 0),l([h({type:_s,optional:!0})],Is.prototype,"issuerAndSerialNumber",void 0),Is=l([R({type:N.Choice})],Is);class Yl{constructor(e={}){this.rid=new Is,this.encryptedKey=new Ne,Object.assign(this,e)}}l([h({type:Is})],Yl.prototype,"rid",void 0),l([h({type:Ne})],Yl.prototype,"encryptedKey",void 0);let dc=Jl=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Jl.prototype)}};dc=Jl=l([R({type:N.Sequence,itemType:Yl})],dc);class Xl{constructor(e={}){this.algorithm=new Y,this.publicKey=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:Y})],Xl.prototype,"algorithm",void 0),l([h({type:y.BitString})],Xl.prototype,"publicKey",void 0);let Pn=class{constructor(e={}){Object.assign(this,e)}};l([h({type:sn,context:0,implicit:!0,optional:!0})],Pn.prototype,"subjectKeyIdentifier",void 0),l([h({type:Xl,context:1,implicit:!0,optional:!0})],Pn.prototype,"originatorKey",void 0),l([h({type:_s,optional:!0})],Pn.prototype,"issuerAndSerialNumber",void 0),Pn=l([R({type:N.Choice})],Pn);class Cs{constructor(e={}){this.version=Dr.v3,this.originator=new Pn,this.keyEncryptionAlgorithm=new gr,this.recipientEncryptedKeys=new dc,Object.assign(this,e)}}l([h({type:y.Integer})],Cs.prototype,"version",void 0),l([h({type:Pn,context:0})],Cs.prototype,"originator",void 0),l([h({type:Ne,context:1,optional:!0})],Cs.prototype,"ukm",void 0),l([h({type:gr})],Cs.prototype,"keyEncryptionAlgorithm",void 0),l([h({type:dc})],Cs.prototype,"recipientEncryptedKeys",void 0);let js=class{constructor(e={}){Object.assign(this,e)}};l([h({type:sn,context:0,implicit:!0})],js.prototype,"subjectKeyIdentifier",void 0),l([h({type:_s})],js.prototype,"issuerAndSerialNumber",void 0),js=l([R({type:N.Choice})],js);class ra{constructor(e={}){this.version=Dr.v0,this.rid=new js,this.keyEncryptionAlgorithm=new gr,this.encryptedKey=new Ne,Object.assign(this,e)}}l([h({type:y.Integer})],ra.prototype,"version",void 0),l([h({type:js})],ra.prototype,"rid",void 0),l([h({type:gr})],ra.prototype,"keyEncryptionAlgorithm",void 0),l([h({type:Ne})],ra.prototype,"encryptedKey",void 0);class na{constructor(e={}){this.keyIdentifier=new Ne,Object.assign(this,e)}}l([h({type:Ne})],na.prototype,"keyIdentifier",void 0),l([h({type:y.GeneralizedTime,optional:!0})],na.prototype,"date",void 0),l([h({type:uc,optional:!0})],na.prototype,"other",void 0);class sa{constructor(e={}){this.version=Dr.v4,this.kekid=new na,this.keyEncryptionAlgorithm=new gr,this.encryptedKey=new Ne,Object.assign(this,e)}}l([h({type:y.Integer})],sa.prototype,"version",void 0),l([h({type:na})],sa.prototype,"kekid",void 0),l([h({type:gr})],sa.prototype,"keyEncryptionAlgorithm",void 0),l([h({type:Ne})],sa.prototype,"encryptedKey",void 0);class ia{constructor(e={}){this.version=Dr.v0,this.keyEncryptionAlgorithm=new gr,this.encryptedKey=new Ne,Object.assign(this,e)}}l([h({type:y.Integer})],ia.prototype,"version",void 0),l([h({type:Pl,context:0,optional:!0})],ia.prototype,"keyDerivationAlgorithm",void 0),l([h({type:gr})],ia.prototype,"keyEncryptionAlgorithm",void 0),l([h({type:Ne})],ia.prototype,"encryptedKey",void 0);class Ql{constructor(e={}){this.oriType="",this.oriValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Ql.prototype,"oriType",void 0),l([h({type:y.Any})],Ql.prototype,"oriValue",void 0);let an=class{constructor(e={}){Object.assign(this,e)}};l([h({type:ra,optional:!0})],an.prototype,"ktri",void 0),l([h({type:Cs,context:1,implicit:!0,optional:!0})],an.prototype,"kari",void 0),l([h({type:sa,context:2,implicit:!0,optional:!0})],an.prototype,"kekri",void 0),l([h({type:ia,context:3,implicit:!0,optional:!0})],an.prototype,"pwri",void 0),l([h({type:Ql,context:4,implicit:!0,optional:!0})],an.prototype,"ori",void 0),an=l([R({type:N.Choice})],an);var ed;let fc=ed=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,ed.prototype)}};fc=ed=l([R({type:N.Set,itemType:an})],fc);var td;class hc{constructor(e={}){this.otherRevInfoFormat="",this.otherRevInfo=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],hc.prototype,"otherRevInfoFormat",void 0),l([h({type:y.Any})],hc.prototype,"otherRevInfo",void 0);let pc=class{constructor(e={}){this.other=new hc,Object.assign(this,e)}};l([h({type:hc,context:1,implicit:!0})],pc.prototype,"other",void 0),pc=l([R({type:N.Choice})],pc);let mc=td=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,td.prototype)}};mc=td=l([R({type:N.Set,itemType:pc})],mc);class rd{constructor(e={}){Object.assign(this,e)}}l([h({type:oc,context:0,implicit:!0,optional:!0})],rd.prototype,"certs",void 0),l([h({type:mc,context:1,implicit:!0,optional:!0})],rd.prototype,"crls",void 0);var nd;let sd=nd=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,nd.prototype)}};sd=nd=l([R({type:N.Set,itemType:ks})],sd);class aa{constructor(e={}){this.version=Dr.v0,this.recipientInfos=new fc,this.encryptedContentInfo=new ta,Object.assign(this,e)}}l([h({type:y.Integer})],aa.prototype,"version",void 0),l([h({type:rd,context:0,implicit:!0,optional:!0})],aa.prototype,"originatorInfo",void 0),l([h({type:fc})],aa.prototype,"recipientInfos",void 0),l([h({type:ta})],aa.prototype,"encryptedContentInfo",void 0),l([h({type:sd,context:1,implicit:!0,optional:!0})],aa.prototype,"unprotectedAttrs",void 0);const Xx="1.2.840.113549.1.7.2";var id;let yc=id=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,id.prototype)}};yc=id=l([R({type:N.Set,itemType:Yi})],yc);class Ts{constructor(e={}){this.version=Dr.v0,this.digestAlgorithms=new yc,this.encapContentInfo=new cc,this.signerInfos=new Xo,Object.assign(this,e)}}l([h({type:y.Integer})],Ts.prototype,"version",void 0),l([h({type:yc})],Ts.prototype,"digestAlgorithms",void 0),l([h({type:cc})],Ts.prototype,"encapContentInfo",void 0),l([h({type:oc,context:0,implicit:!0,optional:!0})],Ts.prototype,"certificates",void 0),l([h({type:mc,context:1,implicit:!0,optional:!0})],Ts.prototype,"crls",void 0),l([h({type:Xo})],Ts.prototype,"signerInfos",void 0);const oa="1.2.840.10045.2.1",ad="1.2.840.10045.4.1",em="1.2.840.10045.4.3.1",od="1.2.840.10045.4.3.2",cd="1.2.840.10045.4.3.3",ud="1.2.840.10045.4.3.4",tm="1.2.840.10045.3.1.7",rm="1.3.132.0.34",nm="1.3.132.0.35";function ca(r){return new Y({algorithm:r})}const Qx=ca(ad);ca(em);const e_=ca(od),t_=ca(cd),r_=ca(ud);let ua=class{constructor(e={}){Object.assign(this,e)}};l([h({type:y.ObjectIdentifier})],ua.prototype,"fieldType",void 0),l([h({type:y.Any})],ua.prototype,"parameters",void 0),ua=l([R({type:N.Sequence})],ua);class n_ extends Ne{}let Ns=class{constructor(e={}){Object.assign(this,e)}};l([h({type:y.OctetString})],Ns.prototype,"a",void 0),l([h({type:y.OctetString})],Ns.prototype,"b",void 0),l([h({type:y.BitString,optional:!0})],Ns.prototype,"seed",void 0),Ns=l([R({type:N.Sequence})],Ns);var ld;(function(r){r[r.ecpVer1=1]="ecpVer1"})(ld||(ld={}));let Mr=class{constructor(e={}){this.version=ld.ecpVer1,Object.assign(this,e)}};l([h({type:y.Integer})],Mr.prototype,"version",void 0),l([h({type:ua})],Mr.prototype,"fieldID",void 0),l([h({type:Ns})],Mr.prototype,"curve",void 0),l([h({type:n_})],Mr.prototype,"base",void 0),l([h({type:y.Integer,converter:Fe})],Mr.prototype,"order",void 0),l([h({type:y.Integer,optional:!0})],Mr.prototype,"cofactor",void 0),Mr=l([R({type:N.Sequence})],Mr);let on=class{constructor(e={}){Object.assign(this,e)}};l([h({type:y.ObjectIdentifier})],on.prototype,"namedCurve",void 0),l([h({type:y.Null})],on.prototype,"implicitCurve",void 0),l([h({type:Mr})],on.prototype,"specifiedCurve",void 0),on=l([R({type:N.Choice})],on);class gc{constructor(e={}){this.version=1,this.privateKey=new Ne,Object.assign(this,e)}}l([h({type:y.Integer})],gc.prototype,"version",void 0),l([h({type:Ne})],gc.prototype,"privateKey",void 0),l([h({type:on,context:0,optional:!0})],gc.prototype,"parameters",void 0),l([h({type:y.BitString,context:1,optional:!0})],gc.prototype,"publicKey",void 0);class vc{constructor(e={}){this.r=new ArrayBuffer(0),this.s=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.Integer,converter:Fe})],vc.prototype,"r",void 0),l([h({type:y.Integer,converter:Fe})],vc.prototype,"s",void 0);const Ot="1.2.840.113549.1.1",$n=`${Ot}.1`,s_=`${Ot}.7`,i_=`${Ot}.9`,la=`${Ot}.10`,a_=`${Ot}.2`,o_=`${Ot}.4`,bc=`${Ot}.5`,c_=`${Ot}.14`,dd=`${Ot}.11`,xc=`${Ot}.12`,_c=`${Ot}.13`,sm=`${Ot}.15`,im=`${Ot}.16`,wc="1.3.14.3.2.26",am="2.16.840.1.101.3.4.2.4",kc="2.16.840.1.101.3.4.2.1",Sc="2.16.840.1.101.3.4.2.2",Ac="2.16.840.1.101.3.4.2.3",u_="2.16.840.1.101.3.4.2.5",l_="2.16.840.1.101.3.4.2.6",d_="1.2.840.113549.2.2",f_="1.2.840.113549.2.5",Oc=`${Ot}.8`;function st(r){return new Y({algorithm:r,parameters:null})}st(d_),st(f_);const Zn=st(wc);st(am),st(kc),st(Sc),st(Ac),st(u_),st(l_);const om=new Y({algorithm:Oc,parameters:F.serialize(Zn)}),cm=new Y({algorithm:i_,parameters:F.serialize(Zo.toASN(new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer))});st($n),st(a_),st(o_),st(bc),st(sm),st(im),st(xc),st(_c),st(sm),st(im);class Ec{constructor(e={}){this.hashAlgorithm=new Y(Zn),this.maskGenAlgorithm=new Y({algorithm:Oc,parameters:F.serialize(Zn)}),this.pSourceAlgorithm=new Y(cm),Object.assign(this,e)}}l([h({type:Y,context:0,defaultValue:Zn})],Ec.prototype,"hashAlgorithm",void 0),l([h({type:Y,context:1,defaultValue:om})],Ec.prototype,"maskGenAlgorithm",void 0),l([h({type:Y,context:2,defaultValue:cm})],Ec.prototype,"pSourceAlgorithm",void 0),new Y({algorithm:s_,parameters:F.serialize(new Ec)});class Dn{constructor(e={}){this.hashAlgorithm=new Y(Zn),this.maskGenAlgorithm=new Y({algorithm:Oc,parameters:F.serialize(Zn)}),this.saltLength=20,this.trailerField=1,Object.assign(this,e)}}l([h({type:Y,context:0,defaultValue:Zn})],Dn.prototype,"hashAlgorithm",void 0),l([h({type:Y,context:1,defaultValue:om})],Dn.prototype,"maskGenAlgorithm",void 0),l([h({type:y.Integer,context:2,defaultValue:20})],Dn.prototype,"saltLength",void 0),l([h({type:y.Integer,context:3,defaultValue:1})],Dn.prototype,"trailerField",void 0),new Y({algorithm:la,parameters:F.serialize(new Dn)});class Ic{constructor(e={}){this.digestAlgorithm=new Y,this.digest=new Ne,Object.assign(this,e)}}l([h({type:Y})],Ic.prototype,"digestAlgorithm",void 0),l([h({type:Ne})],Ic.prototype,"digest",void 0);var fd;class Cc{constructor(e={}){this.prime=new ArrayBuffer(0),this.exponent=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.Integer,converter:Fe})],Cc.prototype,"prime",void 0),l([h({type:y.Integer,converter:Fe})],Cc.prototype,"exponent",void 0),l([h({type:y.Integer,converter:Fe})],Cc.prototype,"coefficient",void 0);let hd=fd=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,fd.prototype)}};hd=fd=l([R({type:N.Sequence,itemType:Cc})],hd);class br{constructor(e={}){this.version=0,this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),this.privateExponent=new ArrayBuffer(0),this.prime1=new ArrayBuffer(0),this.prime2=new ArrayBuffer(0),this.exponent1=new ArrayBuffer(0),this.exponent2=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.Integer})],br.prototype,"version",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"modulus",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"publicExponent",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"privateExponent",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"prime1",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"prime2",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"exponent1",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"exponent2",void 0),l([h({type:y.Integer,converter:Fe})],br.prototype,"coefficient",void 0),l([h({type:hd,optional:!0})],br.prototype,"otherPrimeInfos",void 0);class pd{constructor(e={}){this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.Integer,converter:Fe})],pd.prototype,"modulus",void 0),l([h({type:y.Integer,converter:Fe})],pd.prototype,"publicExponent",void 0);var md;(function(r){r[r.Transient=0]="Transient",r[r.Singleton=1]="Singleton",r[r.ResolutionScoped=2]="ResolutionScoped",r[r.ContainerScoped=3]="ContainerScoped"})(md||(md={}));const Et=md;/*! *****************************************************************************
|
|
76
|
+
Copyright (c) Microsoft Corporation.
|
|
77
|
+
|
|
78
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
79
|
+
purpose with or without fee is hereby granted.
|
|
80
|
+
|
|
81
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
82
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
83
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
84
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
85
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
86
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
87
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
88
|
+
***************************************************************************** */var yd=function(r,e){return yd=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var s in n)n.hasOwnProperty(s)&&(t[s]=n[s])},yd(r,e)};function gd(r,e){yd(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function h_(r,e,t,n){function s(i){return i instanceof t?i:new t(function(a){a(i)})}return new(t||(t=Promise))(function(i,a){function o(f){try{u(n.next(f))}catch(m){a(m)}}function c(f){try{u(n.throw(f))}catch(m){a(m)}}function u(f){f.done?i(f.value):s(f.value).then(o,c)}u((n=n.apply(r,[])).next())})}function p_(r,e){var t={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,s,i,a;return a={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(u){return function(f){return c([u,f])}}function c(u){if(n)throw new TypeError("Generator is already executing.");for(;t;)try{if(n=1,s&&(i=u[0]&2?s.return:u[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,u[1])).done)return i;switch(s=0,i&&(u=[u[0]&2,i.value]),u[0]){case 0:case 1:i=u;break;case 4:return t.label++,{value:u[1],done:!1};case 5:t.label++,s=u[1],u=[0];continue;case 7:u=t.ops.pop(),t.trys.pop();continue;default:if(i=t.trys,!(i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){t=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){t.label=u[1];break}if(u[0]===6&&t.label<i[1]){t.label=i[1],i=u;break}if(i&&t.label<i[2]){t.label=i[2],t.ops.push(u);break}i[2]&&t.ops.pop(),t.trys.pop();continue}u=e.call(r,t)}catch(f){u=[6,f],s=0}finally{n=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function jc(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],n=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&n>=r.length&&(r=void 0),{value:r&&r[n++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Tc(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var n=t.call(r),s,i=[],a;try{for(;(e===void 0||e-- >0)&&!(s=n.next()).done;)i.push(s.value)}catch(o){a={error:o}}finally{try{s&&!s.done&&(t=n.return)&&t.call(n)}finally{if(a)throw a.error}}return i}function Mn(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(Tc(arguments[e]));return r}var m_="injectionTokens";function y_(r){var e=Reflect.getMetadata("design:paramtypes",r)||[],t=Reflect.getOwnMetadata(m_,r)||{};return Object.keys(t).forEach(function(n){e[+n]=t[n]}),e}function um(r){return!!r.useClass}function vd(r){return!!r.useFactory}var lm=function(){function r(e){this.wrap=e,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}return r.prototype.createProxy=function(e){var t=this,n={},s=!1,i,a=function(){return s||(i=e(t.wrap()),s=!0),i};return new Proxy(n,this.createHandler(a))},r.prototype.createHandler=function(e){var t={},n=function(s){t[s]=function(){for(var i=[],a=0;a<arguments.length;a++)i[a]=arguments[a];i[0]=e();var o=Reflect[s];return o.apply(void 0,Mn(i))}};return this.reflectMethods.forEach(n),t},r}();function Bs(r){return typeof r=="string"||typeof r=="symbol"}function g_(r){return typeof r=="object"&&"token"in r&&"multiple"in r}function dm(r){return typeof r=="object"&&"token"in r&&"transform"in r}function v_(r){return typeof r=="function"||r instanceof lm}function Nc(r){return!!r.useToken}function Bc(r){return r.useValue!=null}function b_(r){return um(r)||Bc(r)||Nc(r)||vd(r)}var bd=function(){function r(){this._registryMap=new Map}return r.prototype.entries=function(){return this._registryMap.entries()},r.prototype.getAll=function(e){return this.ensure(e),this._registryMap.get(e)},r.prototype.get=function(e){this.ensure(e);var t=this._registryMap.get(e);return t[t.length-1]||null},r.prototype.set=function(e,t){this.ensure(e),this._registryMap.get(e).push(t)},r.prototype.setAll=function(e,t){this._registryMap.set(e,t)},r.prototype.has=function(e){return this.ensure(e),this._registryMap.get(e).length>0},r.prototype.clear=function(){this._registryMap.clear()},r.prototype.ensure=function(e){this._registryMap.has(e)||this._registryMap.set(e,[])},r}(),x_=function(r){gd(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e}(bd),fm=function(){function r(){this.scopedResolutions=new Map}return r}();function __(r,e){if(r===null)return"at position #"+e;var t=r.split(",")[e].trim();return'"'+t+'" at position #'+e}function w_(r,e,t){return t===void 0&&(t=" "),Mn([r],e.message.split(`
|
|
89
|
+
`).map(function(n){return t+n})).join(`
|
|
90
|
+
`)}function k_(r,e,t){var n=Tc(r.toString().match(/constructor\(([\w, ]+)\)/)||[],2),s=n[1],i=s===void 0?null:s,a=__(i,e);return w_("Cannot inject the dependency "+a+' of "'+r.name+'" constructor. Reason:',t)}function S_(r){if(typeof r.dispose!="function")return!1;var e=r.dispose;return!(e.length>0)}var A_=function(r){gd(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e}(bd),O_=function(r){gd(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e}(bd),E_=function(){function r(){this.preResolution=new A_,this.postResolution=new O_}return r}(),hm=new Map,I_=function(){function r(e){this.parent=e,this._registry=new x_,this.interceptors=new E_,this.disposed=!1,this.disposables=new Set}return r.prototype.register=function(e,t,n){n===void 0&&(n={lifecycle:Et.Transient}),this.ensureNotDisposed();var s;if(b_(t)?s=t:s={useClass:t},Nc(s))for(var i=[e],a=s;a!=null;){var o=a.useToken;if(i.includes(o))throw new Error("Token registration cycle detected! "+Mn(i,[o]).join(" -> "));i.push(o);var c=this._registry.get(o);c&&Nc(c.provider)?a=c.provider:a=null}if((n.lifecycle===Et.Singleton||n.lifecycle==Et.ContainerScoped||n.lifecycle==Et.ResolutionScoped)&&(Bc(s)||vd(s)))throw new Error('Cannot use lifecycle "'+Et[n.lifecycle]+'" with ValueProviders or FactoryProviders');return this._registry.set(e,{provider:s,options:n}),this},r.prototype.registerType=function(e,t){return this.ensureNotDisposed(),Bs(t)?this.register(e,{useToken:t}):this.register(e,{useClass:t})},r.prototype.registerInstance=function(e,t){return this.ensureNotDisposed(),this.register(e,{useValue:t})},r.prototype.registerSingleton=function(e,t){if(this.ensureNotDisposed(),Bs(e)){if(Bs(t))return this.register(e,{useToken:t},{lifecycle:Et.Singleton});if(t)return this.register(e,{useClass:t},{lifecycle:Et.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}var n=e;return t&&!Bs(t)&&(n=t),this.register(e,{useClass:n},{lifecycle:Et.Singleton})},r.prototype.resolve=function(e,t){t===void 0&&(t=new fm),this.ensureNotDisposed();var n=this.getRegistration(e);if(!n&&Bs(e))throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"');if(this.executePreResolutionInterceptor(e,"Single"),n){var s=this.resolveRegistration(n,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}if(v_(e)){var s=this.construct(e,t);return this.executePostResolutionInterceptor(e,s,"Single"),s}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")},r.prototype.executePreResolutionInterceptor=function(e,t){var n,s;if(this.interceptors.preResolution.has(e)){var i=[];try{for(var a=jc(this.interceptors.preResolution.getAll(e)),o=a.next();!o.done;o=a.next()){var c=o.value;c.options.frequency!="Once"&&i.push(c),c.callback(e,t)}}catch(u){n={error:u}}finally{try{o&&!o.done&&(s=a.return)&&s.call(a)}finally{if(n)throw n.error}}this.interceptors.preResolution.setAll(e,i)}},r.prototype.executePostResolutionInterceptor=function(e,t,n){var s,i;if(this.interceptors.postResolution.has(e)){var a=[];try{for(var o=jc(this.interceptors.postResolution.getAll(e)),c=o.next();!c.done;c=o.next()){var u=c.value;u.options.frequency!="Once"&&a.push(u),u.callback(e,t,n)}}catch(f){s={error:f}}finally{try{c&&!c.done&&(i=o.return)&&i.call(o)}finally{if(s)throw s.error}}this.interceptors.postResolution.setAll(e,a)}},r.prototype.resolveRegistration=function(e,t){if(this.ensureNotDisposed(),e.options.lifecycle===Et.ResolutionScoped&&t.scopedResolutions.has(e))return t.scopedResolutions.get(e);var n=e.options.lifecycle===Et.Singleton,s=e.options.lifecycle===Et.ContainerScoped,i=n||s,a;return Bc(e.provider)?a=e.provider.useValue:Nc(e.provider)?a=i?e.instance||(e.instance=this.resolve(e.provider.useToken,t)):this.resolve(e.provider.useToken,t):um(e.provider)?a=i?e.instance||(e.instance=this.construct(e.provider.useClass,t)):this.construct(e.provider.useClass,t):vd(e.provider)?a=e.provider.useFactory(this):a=this.construct(e.provider,t),e.options.lifecycle===Et.ResolutionScoped&&t.scopedResolutions.set(e,a),a},r.prototype.resolveAll=function(e,t){var n=this;t===void 0&&(t=new fm),this.ensureNotDisposed();var s=this.getAllRegistrations(e);if(!s&&Bs(e))throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"');if(this.executePreResolutionInterceptor(e,"All"),s){var i=s.map(function(o){return n.resolveRegistration(o,t)});return this.executePostResolutionInterceptor(e,i,"All"),i}var a=[this.construct(e,t)];return this.executePostResolutionInterceptor(e,a,"All"),a},r.prototype.isRegistered=function(e,t){return t===void 0&&(t=!1),this.ensureNotDisposed(),this._registry.has(e)||t&&(this.parent||!1)&&this.parent.isRegistered(e,!0)},r.prototype.reset=function(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()},r.prototype.clearInstances=function(){var e,t;this.ensureNotDisposed();try{for(var n=jc(this._registry.entries()),s=n.next();!s.done;s=n.next()){var i=Tc(s.value,2),a=i[0],o=i[1];this._registry.setAll(a,o.filter(function(c){return!Bc(c.provider)}).map(function(c){return c.instance=void 0,c}))}}catch(c){e={error:c}}finally{try{s&&!s.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}},r.prototype.createChildContainer=function(){var e,t;this.ensureNotDisposed();var n=new r(this);try{for(var s=jc(this._registry.entries()),i=s.next();!i.done;i=s.next()){var a=Tc(i.value,2),o=a[0],c=a[1];c.some(function(u){var f=u.options;return f.lifecycle===Et.ContainerScoped})&&n._registry.setAll(o,c.map(function(u){return u.options.lifecycle===Et.ContainerScoped?{provider:u.provider,options:u.options}:u}))}}catch(u){e={error:u}}finally{try{i&&!i.done&&(t=s.return)&&t.call(s)}finally{if(e)throw e.error}}return n},r.prototype.beforeResolution=function(e,t,n){n===void 0&&(n={frequency:"Always"}),this.interceptors.preResolution.set(e,{callback:t,options:n})},r.prototype.afterResolution=function(e,t,n){n===void 0&&(n={frequency:"Always"}),this.interceptors.postResolution.set(e,{callback:t,options:n})},r.prototype.dispose=function(){return h_(this,void 0,void 0,function(){var e;return p_(this,function(t){switch(t.label){case 0:return this.disposed=!0,e=[],this.disposables.forEach(function(n){var s=n.dispose();s&&e.push(s)}),[4,Promise.all(e)];case 1:return t.sent(),[2]}})})},r.prototype.getRegistration=function(e){return this.isRegistered(e)?this._registry.get(e):this.parent?this.parent.getRegistration(e):null},r.prototype.getAllRegistrations=function(e){return this.isRegistered(e)?this._registry.getAll(e):this.parent?this.parent.getAllRegistrations(e):null},r.prototype.construct=function(e,t){var n=this;if(e instanceof lm)return e.createProxy(function(i){return n.resolve(i,t)});var s=function(){var i=hm.get(e);if(!i||i.length===0){if(e.length===0)return new e;throw new Error('TypeInfo not known for "'+e.name+'"')}var a=i.map(n.resolveParams(t,e));return new(e.bind.apply(e,Mn([void 0],a)))}();return S_(s)&&this.disposables.add(s),s},r.prototype.resolveParams=function(e,t){var n=this;return function(s,i){var a,o,c;try{return g_(s)?dm(s)?s.multiple?(a=n.resolve(s.transform)).transform.apply(a,Mn([n.resolveAll(s.token)],s.transformArgs)):(o=n.resolve(s.transform)).transform.apply(o,Mn([n.resolve(s.token,e)],s.transformArgs)):s.multiple?n.resolveAll(s.token):n.resolve(s.token,e):dm(s)?(c=n.resolve(s.transform,e)).transform.apply(c,Mn([n.resolve(s.token,e)],s.transformArgs)):n.resolve(s,e)}catch(u){throw new Error(k_(t,i,u))}}},r.prototype.ensureNotDisposed=function(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")},r}(),xt=new I_;function Rc(){return function(r){hm.set(r,y_(r))}}if(typeof Reflect>"u"||!Reflect.getMetadata)throw new Error(`tsyringe requires a reflect polyfill. Please add 'import "reflect-metadata"' to the top of your entry point.`);var xd;class Pc{constructor(e={}){this.attrId="",this.attrValues=[],Object.assign(e)}}l([h({type:y.ObjectIdentifier})],Pc.prototype,"attrId",void 0),l([h({type:y.Any,repeated:"set"})],Pc.prototype,"attrValues",void 0);let pm=xd=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,xd.prototype)}};pm=xd=l([R({type:N.Sequence,itemType:Pc})],pm);var _d;let mm=_d=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,_d.prototype)}};mm=_d=l([R({type:N.Sequence,itemType:Es})],mm);class ym{constructor(e={}){this.certId="",this.certValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],ym.prototype,"certId",void 0),l([h({type:y.Any,context:0})],ym.prototype,"certValue",void 0);class gm{constructor(e={}){this.crlId="",this.crltValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],gm.prototype,"crlId",void 0),l([h({type:y.Any,context:0})],gm.prototype,"crltValue",void 0);class vm extends Ne{}let $c=class{constructor(e={}){this.encryptionAlgorithm=new Y,this.encryptedData=new vm,Object.assign(this,e)}};l([h({type:Y})],$c.prototype,"encryptionAlgorithm",void 0),l([h({type:vm})],$c.prototype,"encryptedData",void 0);var wd,kd;(function(r){r[r.v1=0]="v1"})(kd||(kd={}));class bm extends Ne{}let Sd=wd=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,wd.prototype)}};Sd=wd=l([R({type:N.Sequence,itemType:$r})],Sd);class da{constructor(e={}){this.version=kd.v1,this.privateKeyAlgorithm=new Y,this.privateKey=new bm,Object.assign(this,e)}}l([h({type:y.Integer})],da.prototype,"version",void 0),l([h({type:Y})],da.prototype,"privateKeyAlgorithm",void 0),l([h({type:bm})],da.prototype,"privateKey",void 0),l([h({type:Sd,implicit:!0,context:0,optional:!0})],da.prototype,"attributes",void 0);let xm=class extends da{};xm=l([R({type:N.Sequence})],xm);let _m=class extends $c{};_m=l([R({type:N.Sequence})],_m);class wm{constructor(e={}){this.secretTypeId="",this.secretValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],wm.prototype,"secretTypeId",void 0),l([h({type:y.Any,context:0})],wm.prototype,"secretValue",void 0);class fa{constructor(e={}){this.mac=new Ic,this.macSalt=new Ne,this.iterations=1,Object.assign(this,e)}}l([h({type:Ic})],fa.prototype,"mac",void 0),l([h({type:Ne})],fa.prototype,"macSalt",void 0),l([h({type:y.Integer,defaultValue:1})],fa.prototype,"iterations",void 0);class Zc{constructor(e={}){this.version=3,this.authSafe=new Es,this.macData=new fa,Object.assign(this,e)}}l([h({type:y.Integer})],Zc.prototype,"version",void 0),l([h({type:Es})],Zc.prototype,"authSafe",void 0),l([h({type:fa,optional:!0})],Zc.prototype,"macData",void 0);var Ad;class Dc{constructor(e={}){this.bagId="",this.bagValue=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:y.ObjectIdentifier})],Dc.prototype,"bagId",void 0),l([h({type:y.Any,context:0})],Dc.prototype,"bagValue",void 0),l([h({type:Pc,repeated:"set",optional:!0})],Dc.prototype,"bagAttributes",void 0);let km=Ad=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Ad.prototype)}};km=Ad=l([R({type:N.Sequence,itemType:Dc})],km);var Od,Ed,Id;const Sm="1.2.840.113549.1.9",Am=`${Sm}.7`,Cd=`${Sm}.14`;let Mc=class extends lt{constructor(e={}){super(e)}toString(){return this.ia5String||super.toString()}};l([h({type:y.IA5String})],Mc.prototype,"ia5String",void 0),Mc=l([R({type:N.Choice})],Mc);let Om=class extends Es{};Om=l([R({type:N.Sequence})],Om);let Em=class extends Zc{};Em=l([R({type:N.Sequence})],Em);let Im=class extends $c{};Im=l([R({type:N.Sequence})],Im);let jd=class{constructor(e=""){this.value=e}toString(){return this.value}};l([h({type:y.IA5String})],jd.prototype,"value",void 0),jd=l([R({type:N.Choice})],jd);let Cm=class extends Mc{};Cm=l([R({type:N.Choice})],Cm);let jm=class extends lt{};jm=l([R({type:N.Choice})],jm);let Td=class{constructor(e=new Date){this.value=e}};l([h({type:y.GeneralizedTime})],Td.prototype,"value",void 0),Td=l([R({type:N.Choice})],Td);let Tm=class extends lt{};Tm=l([R({type:N.Choice})],Tm);let Nd=class{constructor(e="M"){this.value=e}toString(){return this.value}};l([h({type:y.PrintableString})],Nd.prototype,"value",void 0),Nd=l([R({type:N.Choice})],Nd);let Vc=class{constructor(e=""){this.value=e}toString(){return this.value}};l([h({type:y.PrintableString})],Vc.prototype,"value",void 0),Vc=l([R({type:N.Choice})],Vc);let Nm=class extends Vc{};Nm=l([R({type:N.Choice})],Nm);let Bm=class extends lt{};Bm=l([R({type:N.Choice})],Bm);let Bd=class{constructor(e=""){this.value=e}toString(){return this.value}};l([h({type:y.ObjectIdentifier})],Bd.prototype,"value",void 0),Bd=l([R({type:N.Choice})],Bd);let Rm=class extends dt{};Rm=l([R({type:N.Choice})],Rm);let Rd=class{constructor(e=0){this.value=e}toString(){return this.value.toString()}};l([h({type:y.Integer})],Rd.prototype,"value",void 0),Rd=l([R({type:N.Choice})],Rd);let Pm=class extends vr{};Pm=l([R({type:N.Sequence})],Pm);let Uc=class extends lt{};Uc=l([R({type:N.Choice})],Uc);let $m=Od=class extends Nn{constructor(e){super(e),Object.setPrototypeOf(this,Od.prototype)}};$m=Od=l([R({type:N.Sequence})],$m);let Zm=Ed=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Ed.prototype)}};Zm=Ed=l([R({type:N.Set,itemType:ks})],Zm);let Pd=class{constructor(e=""){this.value=e}toString(){return this.value}};l([h({type:y.BmpString})],Pd.prototype,"value",void 0),Pd=l([R({type:N.Choice})],Pd);let $d=class extends Y{};$d=l([R({type:N.Sequence})],$d);let Dm=Id=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Id.prototype)}};Dm=Id=l([R({type:N.Sequence,itemType:$d})],Dm);var Zd;let Lc=Zd=class extends Ze{constructor(e){super(e),Object.setPrototypeOf(this,Zd.prototype)}};Lc=Zd=l([R({type:N.Sequence,itemType:$r})],Lc);class Rs{constructor(e={}){this.version=0,this.subject=new nt,this.subjectPKInfo=new yr,this.attributes=new Lc,Object.assign(this,e)}}l([h({type:y.Integer})],Rs.prototype,"version",void 0),l([h({type:nt})],Rs.prototype,"subject",void 0),l([h({type:yr})],Rs.prototype,"subjectPKInfo",void 0),l([h({type:Lc,implicit:!0,context:0})],Rs.prototype,"attributes",void 0);class ha{constructor(e={}){this.certificationRequestInfo=new Rs,this.signatureAlgorithm=new Y,this.signature=new ArrayBuffer(0),Object.assign(this,e)}}l([h({type:Rs})],ha.prototype,"certificationRequestInfo",void 0),l([h({type:Y})],ha.prototype,"signatureAlgorithm",void 0),l([h({type:y.BitString})],ha.prototype,"signature",void 0);/*!
|
|
91
|
+
* MIT License
|
|
92
|
+
*
|
|
93
|
+
* Copyright (c) Peculiar Ventures. All rights reserved.
|
|
94
|
+
*
|
|
95
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
96
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
97
|
+
* in the Software without restriction, including without limitation the rights
|
|
98
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
99
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
100
|
+
* furnished to do so, subject to the following conditions:
|
|
101
|
+
*
|
|
102
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
103
|
+
* copies or substantial portions of the Software.
|
|
104
|
+
*
|
|
105
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
106
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
107
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
108
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
109
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
110
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
111
|
+
* SOFTWARE.
|
|
112
|
+
*
|
|
113
|
+
*/const pa="crypto.algorithm";class C_{getAlgorithms(){return xt.resolveAll(pa)}toAsnAlgorithm(e){({...e});for(const t of this.getAlgorithms()){const n=t.toAsnAlgorithm(e);if(n)return n}if(/^[0-9.]+$/.test(e.name)){const t=new Y({algorithm:e.name});if("parameters"in e){const n=e;t.parameters=n.parameters}return t}throw new Error("Cannot convert WebCrypto algorithm to ASN.1 algorithm")}toWebAlgorithm(e){for(const n of this.getAlgorithms()){const s=n.toWebAlgorithm(e);if(s)return s}return{name:e.algorithm,parameters:e.parameters}}}const Ps="crypto.algorithmProvider";xt.registerSingleton(Ps,C_);var qc;const It="1.3.36.3.3.2.8.1.1",Mm=`${It}.1`,Vm=`${It}.2`,Um=`${It}.3`,Lm=`${It}.4`,qm=`${It}.5`,Hm=`${It}.6`,Fm=`${It}.7`,Wm=`${It}.8`,zm=`${It}.9`,Km=`${It}.10`,Gm=`${It}.11`,Jm=`${It}.12`,Ym=`${It}.13`,Xm=`${It}.14`,Qm="brainpoolP160r1",ey="brainpoolP160t1",ty="brainpoolP192r1",ry="brainpoolP192t1",ny="brainpoolP224r1",sy="brainpoolP224t1",iy="brainpoolP256r1",ay="brainpoolP256t1",oy="brainpoolP320r1",cy="brainpoolP320t1",uy="brainpoolP384r1",ly="brainpoolP384t1",dy="brainpoolP512r1",fy="brainpoolP512t1",Ge="ECDSA";let ma=qc=class{toAsnAlgorithm(e){switch(e.name.toLowerCase()){case Ge.toLowerCase():if("hash"in e)switch((typeof e.hash=="string"?e.hash:e.hash.name).toLowerCase()){case"sha-1":return Qx;case"sha-256":return e_;case"sha-384":return t_;case"sha-512":return r_}else if("namedCurve"in e){let t="";switch(e.namedCurve){case"P-256":t=tm;break;case"K-256":t=qc.SECP256K1;break;case"P-384":t=rm;break;case"P-521":t=nm;break;case Qm:t=Mm;break;case ey:t=Vm;break;case ty:t=Um;break;case ry:t=Lm;break;case ny:t=qm;break;case sy:t=Hm;break;case iy:t=Fm;break;case ay:t=Wm;break;case oy:t=zm;break;case cy:t=Km;break;case uy:t=Gm;break;case ly:t=Jm;break;case dy:t=Ym;break;case fy:t=Xm;break}if(t)return new Y({algorithm:oa,parameters:F.serialize(new on({namedCurve:t}))})}}return null}toWebAlgorithm(e){switch(e.algorithm){case ad:return{name:Ge,hash:{name:"SHA-1"}};case od:return{name:Ge,hash:{name:"SHA-256"}};case cd:return{name:Ge,hash:{name:"SHA-384"}};case ud:return{name:Ge,hash:{name:"SHA-512"}};case oa:{if(!e.parameters)throw new TypeError("Cannot get required parameters from EC algorithm");switch(F.parse(e.parameters,on).namedCurve){case tm:return{name:Ge,namedCurve:"P-256"};case qc.SECP256K1:return{name:Ge,namedCurve:"K-256"};case rm:return{name:Ge,namedCurve:"P-384"};case nm:return{name:Ge,namedCurve:"P-521"};case Mm:return{name:Ge,namedCurve:Qm};case Vm:return{name:Ge,namedCurve:ey};case Um:return{name:Ge,namedCurve:ty};case Lm:return{name:Ge,namedCurve:ry};case qm:return{name:Ge,namedCurve:ny};case Hm:return{name:Ge,namedCurve:sy};case Fm:return{name:Ge,namedCurve:iy};case Wm:return{name:Ge,namedCurve:ay};case zm:return{name:Ge,namedCurve:oy};case Km:return{name:Ge,namedCurve:cy};case Gm:return{name:Ge,namedCurve:uy};case Jm:return{name:Ge,namedCurve:ly};case Ym:return{name:Ge,namedCurve:dy};case Xm:return{name:Ge,namedCurve:fy}}}}return null}};ma.SECP256K1="1.3.132.0.10",ma=qc=l([Rc()],ma),xt.registerSingleton(pa,ma);const hy=Symbol("name"),py=Symbol("value");class $e{constructor(e,t={},n=""){this[hy]=e,this[py]=n;for(const s in t)this[s]=t[s]}}$e.NAME=hy,$e.VALUE=py;class j_{static toTextObject(e){const t=new $e("Algorithm Identifier",{},cn.toString(e.algorithm));if(e.parameters)switch(e.algorithm){case oa:{const n=new ma().toWebAlgorithm(e);n&&"namedCurve"in n?t["Named Curve"]=n.namedCurve:t.Parameters=e.parameters;break}default:t.Parameters=e.parameters}return t}}class cn{static toString(e){const t=this.items[e];return t||e}}cn.items={[wc]:"sha1",[am]:"sha224",[kc]:"sha256",[Sc]:"sha384",[Ac]:"sha512",[$n]:"rsaEncryption",[bc]:"sha1WithRSAEncryption",[c_]:"sha224WithRSAEncryption",[dd]:"sha256WithRSAEncryption",[xc]:"sha384WithRSAEncryption",[_c]:"sha512WithRSAEncryption",[oa]:"ecPublicKey",[ad]:"ecdsaWithSHA1",[em]:"ecdsaWithSHA224",[od]:"ecdsaWithSHA256",[cd]:"ecdsaWithSHA384",[ud]:"ecdsaWithSHA512",[Wx]:"TLS WWW server authentication",[zx]:"TLS WWW client authentication",[Kx]:"Code Signing",[Gx]:"E-mail Protection",[Jx]:"Time Stamping",[Yx]:"OCSP Signing",[Xx]:"Signed Data"};class Vn{static serialize(e){return this.serializeObj(e).join(`
|
|
114
|
+
`)}static pad(e=0){return"".padStart(2*e," ")}static serializeObj(e,t=0){const n=[];let s=this.pad(t++),i="";const a=e[$e.VALUE];a&&(i=` ${a}`),n.push(`${s}${e[$e.NAME]}:${i}`),s=this.pad(t);for(const o in e){if(typeof o=="symbol")continue;const c=e[o],u=o?`${o}: `:"";if(typeof c=="string"||typeof c=="number"||typeof c=="boolean")n.push(`${s}${u}${c}`);else if(c instanceof Date)n.push(`${s}${u}${c.toUTCString()}`);else if(Array.isArray(c))for(const f of c)f[$e.NAME]=o,n.push(...this.serializeObj(f,t));else if(c instanceof $e)c[$e.NAME]=o,n.push(...this.serializeObj(c,t));else if(L.isBufferSource(c))o?(n.push(`${s}${u}`),n.push(...this.serializeBufferSource(c,t+1))):n.push(...this.serializeBufferSource(c,t));else if("toTextObject"in c){const f=c.toTextObject();f[$e.NAME]=o,n.push(...this.serializeObj(f,t))}else throw new TypeError("Cannot serialize data in text format. Unsupported type.")}return n}static serializeBufferSource(e,t=0){const n=this.pad(t),s=L.toUint8Array(e),i=[];for(let a=0;a<s.length;){const o=[];for(let c=0;c<16&&a<s.length;c++){c===8&&o.push("");const u=s[a++].toString(16).padStart(2,"0");o.push(u)}i.push(`${n}${o.join(" ")}`)}return i}static serializeAlgorithm(e){return this.algorithmSerializer.toTextObject(e)}}Vn.oidSerializer=cn,Vn.algorithmSerializer=j_;class un{constructor(...e){if(e.length===1){const t=e[0];this.rawData=F.serialize(t),this.onInit(t)}else{const t=F.parse(e[0],e[1]);this.rawData=L.toArrayBuffer(e[0]),this.onInit(t)}}equal(e){return e instanceof un?gh(e.rawData,this.rawData):!1}toString(e="text"){switch(e){case"asn":return F.toString(this.rawData);case"text":return Vn.serialize(this.toTextObject());case"hex":return re.ToHex(this.rawData);case"base64":return re.ToBase64(this.rawData);case"base64url":return re.ToBase64Url(this.rawData);default:throw TypeError("Argument 'format' is unsupported value")}}getTextName(){return this.constructor.NAME}toTextObject(){const e=this.toTextObjectEmpty();return e[""]=this.rawData,e}toTextObjectEmpty(e){return new $e(this.getTextName(),{},e)}}un.NAME="ASN";class Ut extends un{constructor(...e){let t;L.isBufferSource(e[0])?t=L.toArrayBuffer(e[0]):t=F.serialize(new Qt({extnID:e[0],critical:e[1],extnValue:new Ne(L.toArrayBuffer(e[2]))})),super(t,Qt)}onInit(e){this.type=e.extnID,this.critical=e.critical,this.value=e.extnValue.buffer}toTextObject(){const e=this.toTextObjectWithoutValue();return e[""]=this.value,e}toTextObjectWithoutValue(){const e=this.toTextObjectEmpty(this.critical?"critical":void 0);return e[$e.NAME]===Ut.NAME&&(e[$e.NAME]=cn.toString(this.type)),e}}var my;class ln{static isCryptoKeyPair(e){return e&&e.privateKey&&e.publicKey}static isCryptoKey(e){return e&&e.usages&&e.type&&e.algorithm&&e.extractable!==void 0}constructor(){this.items=new Map,this[my]="CryptoProvider",typeof self<"u"&&typeof crypto<"u"?this.set(ln.DEFAULT,crypto):typeof global<"u"&&global.crypto&&global.crypto.subtle&&this.set(ln.DEFAULT,global.crypto)}clear(){this.items.clear()}delete(e){return this.items.delete(e)}forEach(e,t){return this.items.forEach(e,t)}has(e){return this.items.has(e)}get size(){return this.items.size}entries(){return this.items.entries()}keys(){return this.items.keys()}values(){return this.items.values()}[Symbol.iterator](){return this.items[Symbol.iterator]()}get(e=ln.DEFAULT){const t=this.items.get(e.toLowerCase());if(!t)throw new Error(`Cannot get Crypto by name '${e}'`);return t}set(e,t){if(typeof e=="string"){if(!t)throw new TypeError("Argument 'value' is required");this.items.set(e.toLowerCase(),t)}else this.items.set(ln.DEFAULT,e);return this}}my=Symbol.toStringTag,ln.DEFAULT="default";const _t=new ln,T_=/^[0-2](?:\.[1-9][0-9]*)+$/;function N_(r){return new RegExp(T_).test(r)}class yy{constructor(e={}){this.items={};for(const t in e)this.register(t,e[t])}get(e){return this.items[e]||null}findId(e){return N_(e)?e:this.get(e)}register(e,t){this.items[e]=t,this.items[t]=e}}const Ct=new yy;Ct.register("CN","2.5.4.3"),Ct.register("L","2.5.4.7"),Ct.register("ST","2.5.4.8"),Ct.register("O","2.5.4.10"),Ct.register("OU","2.5.4.11"),Ct.register("C","2.5.4.6"),Ct.register("DC","0.9.2342.19200300.100.1.25"),Ct.register("E","1.2.840.113549.1.9.1"),Ct.register("G","2.5.4.42"),Ct.register("I","2.5.4.43"),Ct.register("SN","2.5.4.4"),Ct.register("T","2.5.4.12");function B_(r,e){return`\\${re.ToHex(re.FromUtf8String(e)).toUpperCase()}`}function R_(r){return r.replace(/([,+"\\<>;])/g,"\\$1").replace(/^([ #])/,"\\$1").replace(/([ ]$)/,"\\$1").replace(/([\r\n\t])/,B_)}class dn{static isASCII(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return!1;return!0}static isPrintableString(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/g.test(e)}constructor(e,t={}){this.extraNames=new yy,this.asn=new nt;for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const s=t[n];this.extraNames.register(n,s)}typeof e=="string"?this.asn=this.fromString(e):e instanceof nt?this.asn=e:L.isBufferSource(e)?this.asn=F.parse(e,nt):this.asn=this.fromJSON(e)}getField(e){const t=this.extraNames.findId(e)||Ct.findId(e),n=[];for(const s of this.asn)for(const i of s)i.type===t&&n.push(i.value.toString());return n}getName(e){return this.extraNames.get(e)||Ct.get(e)}toString(){return this.asn.map(e=>e.map(t=>{const n=this.getName(t.type)||t.type,s=t.value.anyValue?`#${re.ToHex(t.value.anyValue)}`:R_(t.value.toString());return`${n}=${s}`}).join("+")).join(", ")}toJSON(){var e;const t=[];for(const n of this.asn){const s={};for(const i of n){const a=this.getName(i.type)||i.type;(e=s[a])!==null&&e!==void 0||(s[a]=[]),s[a].push(i.value.anyValue?`#${re.ToHex(i.value.anyValue)}`:i.value.toString())}t.push(s)}return t}fromString(e){const t=new nt,n=/(\d\.[\d.]*\d|[A-Za-z]+)=((?:"")|(?:".*?[^\\]")|(?:[^,+].*?(?:[^\\][,+]))|(?:))([,+])?/g;let s=null,i=",";for(;s=n.exec(`${e},`);){let[,a,o]=s;const c=o[o.length-1];(c===","||c==="+")&&(o=o.slice(0,o.length-1),s[3]=c);const u=s[3];a=this.getTypeOid(a);const f=this.createAttribute(a,o);i==="+"?t[t.length-1].push(f):t.push(new ps([f])),i=u}return t}fromJSON(e){const t=new nt;for(const n of e){const s=new ps;for(const i in n){const a=this.getTypeOid(i),o=n[i];for(const c of o){const u=this.createAttribute(a,c);s.push(u)}}t.push(s)}return t}getTypeOid(e){if(/[\d.]+/.test(e)||(e=this.getName(e)||""),!e)throw new Error(`Cannot get OID for name type '${e}'`);return e}createAttribute(e,t){const n=new Do({type:e});if(typeof t=="object")for(const s in t)switch(s){case"ia5String":n.value.ia5String=t[s];break;case"utf8String":n.value.utf8String=t[s];break;case"universalString":n.value.universalString=t[s];break;case"bmpString":n.value.bmpString=t[s];break;case"printableString":n.value.printableString=t[s];break}else if(t[0]==="#")n.value.anyValue=re.FromHex(t.slice(1));else{const s=this.processStringValue(t);e===this.getName("E")||e===this.getName("DC")?n.value.ia5String=s:dn.isPrintableString(s)?n.value.printableString=s:n.value.utf8String=s}return n}processStringValue(e){const t=/"(.*?[^\\])?"/.exec(e);return t&&(e=t[1]),e.replace(/\\0a/ig,`
|
|
115
|
+
`).replace(/\\0d/ig,"\r").replace(/\\0g/ig," ").replace(/\\(.)/g,"$1")}toArrayBuffer(){return F.serialize(this.asn)}async getThumbprint(...e){var t;let n,s="SHA-1";return e.length>=1&&!(!((t=e[0])===null||t===void 0)&&t.subtle)?(s=e[0]||s,n=e[1]||_t.get()):n=e[0]||_t.get(),await n.subtle.digest(s,this.toArrayBuffer())}}const gy="Cannot initialize GeneralName from ASN.1 data.",vy=`${gy} Unsupported string format in use.`,P_=`${gy} Value doesn't match to GUID regular expression.`,by=/^([0-9a-f]{8})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{12})$/i,xy="1.3.6.1.4.1.311.25.1",_y="1.3.6.1.4.1.311.20.2.3",Dd="dns",Md="dn",Vd="email",Ud="ip",Ld="url",qd="guid",Hd="upn",Hc="id";class fn extends un{constructor(...e){let t;if(e.length===2)switch(e[0]){case Md:{const n=new dn(e[1]).toArrayBuffer(),s=F.parse(n,nt);t=new ge({directoryName:s});break}case Dd:t=new ge({dNSName:e[1]});break;case Vd:t=new ge({rfc822Name:e[1]});break;case qd:{const n=new RegExp(by,"i").exec(e[1]);if(!n)throw new Error("Cannot parse GUID value. Value doesn't match to regular expression");const s=n.slice(1).map((i,a)=>a<3?re.ToHex(new Uint8Array(re.FromHex(i)).reverse()):i).join("");t=new ge({otherName:new zi({typeId:xy,value:F.serialize(new Ne(re.FromHex(s)))})});break}case Ud:t=new ge({iPAddress:e[1]});break;case Hc:t=new ge({registeredID:e[1]});break;case Hd:{t=new ge({otherName:new zi({typeId:_y,value:F.serialize(bp.toASN(e[1]))})});break}case Ld:t=new ge({uniformResourceIdentifier:e[1]});break;default:throw new Error("Cannot create GeneralName. Unsupported type of the name")}else L.isBufferSource(e[0])?t=F.parse(e[0],ge):t=e[0];super(t)}onInit(e){if(e.dNSName!=null)this.type=Dd,this.value=e.dNSName;else if(e.rfc822Name!=null)this.type=Vd,this.value=e.rfc822Name;else if(e.iPAddress!=null)this.type=Ud,this.value=e.iPAddress;else if(e.uniformResourceIdentifier!=null)this.type=Ld,this.value=e.uniformResourceIdentifier;else if(e.registeredID!=null)this.type=Hc,this.value=e.registeredID;else if(e.directoryName!=null)this.type=Md,this.value=new dn(e.directoryName).toString();else if(e.otherName!=null)if(e.otherName.typeId===xy){this.type=qd;const t=F.parse(e.otherName.value,Ne),n=new RegExp(by,"i").exec(re.ToHex(t));if(!n)throw new Error(P_);this.value=n.slice(1).map((s,i)=>i<3?re.ToHex(new Uint8Array(re.FromHex(s)).reverse()):s).join("-")}else if(e.otherName.typeId===_y)this.type=Hd,this.value=F.parse(e.otherName.value,lt).toString();else throw new Error(vy);else throw new Error(vy)}toJSON(){return{type:this.type,value:this.value}}toTextObject(){let e;switch(this.type){case Md:case Dd:case qd:case Ud:case Hc:case Hd:case Ld:e=this.type.toUpperCase();break;case Vd:e="Email";break;default:throw new Error("Unsupported GeneralName type")}let t=this.value;return this.type===Hc&&(t=cn.toString(t)),new $e(e,void 0,t)}}class ya extends un{constructor(e){let t;if(e instanceof bt)t=e;else if(Array.isArray(e)){const n=[];for(const s of e)if(s instanceof ge)n.push(s);else{const i=F.parse(new fn(s.type,s.value).rawData,ge);n.push(i)}t=new bt(n)}else if(L.isBufferSource(e))t=F.parse(e,bt);else throw new Error("Cannot initialize GeneralNames. Incorrect incoming arguments");super(t)}onInit(e){const t=[];for(const n of e){let s=null;try{s=new fn(n)}catch{continue}t.push(s)}this.items=t}toJSON(){return this.items.map(e=>e.toJSON())}toTextObject(){const e=super.toTextObjectEmpty();for(const t of this.items){const n=t.toTextObject();let s=e[n[$e.NAME]];Array.isArray(s)||(s=[],e[n[$e.NAME]]=s),s.push(n)}return e}}ya.NAME="GeneralNames";const ga="-{5}",va="\\n",$_=`[^${va}]+`,Z_=`${ga}BEGIN (${$_}(?=${ga}))${ga}`,D_=`${ga}END \\1${ga}`,$s="\\n",M_=`[^:${va}]+`,V_=`(?:[^${va}]+${$s}(?: +[^${va}]+${$s})*)`,U_=`(?:[a-zA-Z0-9=+/]+${$s})+`,wy=`${Z_}${$s}(?:((?:${M_}: ${V_})+))?${$s}?(${U_})${D_}`;class Rt{static isPem(e){return typeof e=="string"&&new RegExp(wy,"g").test(e)}static decodeWithHeaders(e){e=e.replace(/\r/g,"");const t=new RegExp(wy,"g"),n=[];let s=null;for(;s=t.exec(e);){const i=s[3].replace(new RegExp(`[${va}]+`,"g"),""),a={type:s[1],headers:[],rawData:re.FromBase64(i)},o=s[2];if(o){const c=o.split(new RegExp($s,"g"));let u=null;for(const f of c){const[m,D]=f.split(/:(.*)/);if(D===void 0){if(!u)throw new Error("Cannot parse PEM string. Incorrect header value");u.value+=m.trim()}else u&&a.headers.push(u),u={key:m,value:D.trim()}}u&&a.headers.push(u)}n.push(a)}return n}static decode(e){return this.decodeWithHeaders(e).map(n=>n.rawData)}static decodeFirst(e){const t=this.decode(e);if(!t.length)throw new RangeError("PEM string doesn't contain any objects");return t[0]}static encode(e,t){if(Array.isArray(e)){const n=new Array;return t?e.forEach(s=>{if(!L.isBufferSource(s))throw new TypeError("Cannot encode array of BufferSource in PEM format. Not all items of the array are BufferSource");n.push(this.encodeStruct({type:t,rawData:L.toArrayBuffer(s)}))}):e.forEach(s=>{if(!("type"in s))throw new TypeError("Cannot encode array of PemStruct in PEM format. Not all items of the array are PemStrut");n.push(this.encodeStruct(s))}),n.join(`
|
|
116
|
+
`)}else{if(!t)throw new Error("Required argument 'tag' is missed");return this.encodeStruct({type:t,rawData:L.toArrayBuffer(e)})}}static encodeStruct(e){var t;const n=e.type.toLocaleUpperCase(),s=[];if(s.push(`-----BEGIN ${n}-----`),!((t=e.headers)===null||t===void 0)&&t.length){for(const u of e.headers)s.push(`${u.key}: ${u.value}`);s.push("")}const i=re.ToBase64(e.rawData);let a,o=0;const c=Array();for(;o<i.length&&(i.length-o<64?a=i.substring(o):(a=i.substring(o,o+64),o+=64),a.length!==0);)if(c.push(a),a.length<64)break;return s.push(...c),s.push(`-----END ${n}-----`),s.join(`
|
|
117
|
+
`)}}Rt.CertificateTag="CERTIFICATE",Rt.CrlTag="CRL",Rt.CertificateRequestTag="CERTIFICATE REQUEST",Rt.PublicKeyTag="PUBLIC KEY",Rt.PrivateKeyTag="PRIVATE KEY";class Vr extends un{static isAsnEncoded(e){return L.isBufferSource(e)||typeof e=="string"}static toArrayBuffer(e){if(typeof e=="string"){if(Rt.isPem(e))return Rt.decode(e)[0];if(re.isHex(e))return re.FromHex(e);if(re.isBase64(e))return re.FromBase64(e);if(re.isBase64Url(e))return re.FromBase64Url(e);throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}else{const t=re.ToBinary(e);return Rt.isPem(t)?Rt.decode(t)[0]:re.isHex(t)?re.FromHex(t):re.isBase64(t)?re.FromBase64(t):re.isBase64Url(t)?re.FromBase64Url(t):L.toArrayBuffer(e)}}constructor(...e){Vr.isAsnEncoded(e[0])?super(Vr.toArrayBuffer(e[0]),e[1]):super(e[0])}toString(e="pem"){switch(e){case"pem":return Rt.encode(this.rawData,this.tag);default:return super.toString(e)}}}class xr extends Vr{static async create(e,t=_t.get()){if(e instanceof xr)return e;if(ln.isCryptoKey(e)){if(e.type!=="public")throw new TypeError("Public key is required");const n=await t.subtle.exportKey("spki",e);return new xr(n)}else{if(e.publicKey)return e.publicKey;if(L.isBufferSource(e))return new xr(e);throw new TypeError("Unsupported PublicKeyType")}}constructor(e){Vr.isAsnEncoded(e)?super(e,yr):super(e),this.tag=Rt.PublicKeyTag}async export(...e){let t,n=["verify"],s={hash:"SHA-256",...this.algorithm};e.length>1?(s=e[0]||s,n=e[1]||n,t=e[2]||_t.get()):t=e[0]||_t.get();let i=this.rawData;const a=F.parse(this.rawData,yr);return a.algorithm.algorithm===la&&(i=L_(a,i)),t.subtle.importKey("spki",i,s,!0,n)}onInit(e){const t=xt.resolve(Ps),n=this.algorithm=t.toWebAlgorithm(e.algorithm);switch(e.algorithm.algorithm){case $n:{const s=F.parse(e.subjectPublicKey,pd),i=L.toUint8Array(s.modulus);n.publicExponent=L.toUint8Array(s.publicExponent),n.modulusLength=(i[0]?i:i.slice(1)).byteLength<<3;break}}}async getThumbprint(...e){var t;let n,s="SHA-1";return e.length>=1&&!(!((t=e[0])===null||t===void 0)&&t.subtle)?(s=e[0]||s,n=e[1]||_t.get()):n=e[0]||_t.get(),await n.subtle.digest(s,this.rawData)}async getKeyIdentifier(...e){let t,n="SHA-1";e.length===1?typeof e[0]=="string"?(n=e[0],t=_t.get()):t=e[0]:e.length===2?(n=e[0],t=e[1]):t=_t.get();const s=F.parse(this.rawData,yr);return await t.subtle.digest(n,s.subjectPublicKey)}toTextObject(){const e=this.toTextObjectEmpty(),t=F.parse(this.rawData,yr);switch(e.Algorithm=Vn.serializeAlgorithm(t.algorithm),t.algorithm.algorithm){case oa:e["EC Point"]=t.subjectPublicKey;break;case $n:default:e["Raw Data"]=t.subjectPublicKey}return e}}function L_(r,e){return r.algorithm=new Y({algorithm:$n,parameters:null}),e=F.serialize(r),e}class ba extends Ut{static async create(e,t=!1,n=_t.get()){if("name"in e&&"serialNumber"in e)return new ba(e,t);const i=await(await xr.create(e,n)).getKeyIdentifier(n);return new ba(re.ToHex(i),t)}constructor(...e){if(L.isBufferSource(e[0]))super(e[0]);else if(typeof e[0]=="string"){const t=new jn({keyIdentifier:new ll(re.FromHex(e[0]))});super(ul,e[1],F.serialize(t))}else{const t=e[0],n=t.name instanceof ya?F.parse(t.name.rawData,bt):t.name,s=new jn({authorityCertIssuer:n,authorityCertSerialNumber:re.FromHex(t.serialNumber)});super(ul,e[1],F.serialize(s))}}onInit(e){super.onInit(e);const t=F.parse(e.extnValue,jn);t.keyIdentifier&&(this.keyId=re.ToHex(t.keyIdentifier)),(t.authorityCertIssuer||t.authorityCertSerialNumber)&&(this.certId={name:t.authorityCertIssuer||[],serialNumber:t.authorityCertSerialNumber?re.ToHex(t.authorityCertSerialNumber):""})}toTextObject(){const e=this.toTextObjectWithoutValue(),t=F.parse(this.value,jn);return t.authorityCertIssuer&&(e["Authority Issuer"]=new ya(t.authorityCertIssuer).toTextObject()),t.authorityCertSerialNumber&&(e["Authority Serial Number"]=t.authorityCertSerialNumber),t.keyIdentifier&&(e[""]=t.keyIdentifier),e}}ba.NAME="Authority Key Identifier";class ky extends Ut{constructor(...e){if(L.isBufferSource(e[0])){super(e[0]);const t=F.parse(this.value,Vo);this.ca=t.cA,this.pathLength=t.pathLenConstraint}else{const t=new Vo({cA:e[0],pathLenConstraint:e[1]});super(Cp,e[2],F.serialize(t)),this.ca=e[0],this.pathLength=e[1]}}toTextObject(){const e=this.toTextObjectWithoutValue();return this.ca&&(e.CA=this.ca),this.pathLength!==void 0&&(e["Path Length"]=this.pathLength),e}}ky.NAME="Basic Constraints";var Sy;(function(r){r.serverAuth="1.3.6.1.5.5.7.3.1",r.clientAuth="1.3.6.1.5.5.7.3.2",r.codeSigning="1.3.6.1.5.5.7.3.3",r.emailProtection="1.3.6.1.5.5.7.3.4",r.timeStamping="1.3.6.1.5.5.7.3.8",r.ocspSigning="1.3.6.1.5.5.7.3.9"})(Sy||(Sy={}));class Ay extends Ut{constructor(...e){if(L.isBufferSource(e[0])){super(e[0]);const t=F.parse(this.value,Fo);this.usages=t.map(n=>n)}else{const t=new Fo(e[0]);super(Pp,e[1],F.serialize(t)),this.usages=e[0]}}toTextObject(){const e=this.toTextObjectWithoutValue();return e[""]=this.usages.map(t=>cn.toString(t)).join(", "),e}}Ay.NAME="Extended Key Usages";var Oy;(function(r){r[r.digitalSignature=1]="digitalSignature",r[r.nonRepudiation=2]="nonRepudiation",r[r.keyEncipherment=4]="keyEncipherment",r[r.dataEncipherment=8]="dataEncipherment",r[r.keyAgreement=16]="keyAgreement",r[r.keyCertSign=32]="keyCertSign",r[r.cRLSign=64]="cRLSign",r[r.encipherOnly=128]="encipherOnly",r[r.decipherOnly=256]="decipherOnly"})(Oy||(Oy={}));class Ey extends Ut{constructor(...e){if(L.isBufferSource(e[0])){super(e[0]);const t=F.parse(this.value,Al);this.usages=t.toNumber()}else{const t=new Al(e[0]);super(Zp,e[1],F.serialize(t)),this.usages=e[0]}}toTextObject(){const e=this.toTextObjectWithoutValue(),t=F.parse(this.value,Al);return e[""]=t.toJSON().join(", "),e}}Ey.NAME="Key Usages";class Fc extends Ut{static async create(e,t=!1,n=_t.get()){const i=await(await xr.create(e,n)).getKeyIdentifier(n);return new Fc(re.ToHex(i),t)}constructor(...e){if(L.isBufferSource(e[0])){super(e[0]);const t=F.parse(this.value,sn);this.keyId=re.ToHex(t)}else{const t=typeof e[0]=="string"?re.FromHex(e[0]):e[0],n=new sn(t);super(qp,e[1],F.serialize(n)),this.keyId=re.ToHex(t)}}toTextObject(){const e=this.toTextObjectWithoutValue(),t=F.parse(this.value,sn);return e[""]=t,e}}Fc.NAME="Subject Key Identifier";class Iy extends Ut{constructor(...e){L.isBufferSource(e[0])?super(e[0]):super(Up,e[1],new ya(e[0]||[]).rawData)}onInit(e){super.onInit(e);const t=F.parse(e.extnValue,jl);this.names=new ya(t)}toTextObject(){const e=this.toTextObjectWithoutValue(),t=this.names.toTextObject();for(const n in t)e[n]=t[n];return e}}Iy.NAME="Subject Alternative Name";class Lt{static register(e,t){this.items.set(e,t)}static create(e){const t=new Ut(e),n=this.items.get(t.type);return n?new n(e):t}}Lt.items=new Map;class Cy extends Ut{constructor(...e){var t;if(L.isBufferSource(e[0])){super(e[0]);const n=F.parse(this.value,qo);this.policies=n.map(s=>s.policyIdentifier)}else{const n=e[0],s=(t=e[1])!==null&&t!==void 0?t:!1,i=new qo(n.map(a=>new Lo({policyIdentifier:a})));super(Tp,s,F.serialize(i)),this.policies=n}}toTextObject(){const e=this.toTextObjectWithoutValue();return e.Policy=this.policies.map(t=>new $e("",{},cn.toString(t))),e}}Cy.NAME="Certificate Policies",Lt.register(Tp,Cy);class jy extends Ut{constructor(...e){var t;if(L.isBufferSource(e[0]))super(e[0]);else if(Array.isArray(e[0])&&typeof e[0][0]=="string"){const s=e[0].map(a=>new gs({distributionPoint:new Tn({fullName:[new ge({uniformResourceIdentifier:a})]})})),i=new vs(s);super(vl,e[1],F.serialize(i))}else{const n=new vs(e[0]);super(vl,e[1],F.serialize(n))}(t=this.distributionPoints)!==null&&t!==void 0||(this.distributionPoints=[])}onInit(e){super.onInit(e);const t=F.parse(e.extnValue,vs);this.distributionPoints=t}toTextObject(){const e=this.toTextObjectWithoutValue();return e["Distribution Point"]=this.distributionPoints.map(t=>{var n;const s={};return t.distributionPoint&&(s[""]=(n=t.distributionPoint.fullName)===null||n===void 0?void 0:n.map(i=>new fn(i).toString()).join(", ")),t.reasons&&(s.Reasons=t.reasons.toString()),t.cRLIssuer&&(s["CRL Issuer"]=t.cRLIssuer.map(i=>i.toString()).join(", ")),s}),e}}jy.NAME="CRL Distribution Points";class Ty extends Ut{constructor(...e){var t,n,s,i;if(L.isBufferSource(e[0]))super(e[0]);else if(e[0]instanceof ys){const a=new ys(e[0]);super(cl,e[1],F.serialize(a))}else{const a=e[0],o=new ys;zc(o,a,Ap,"ocsp"),zc(o,a,Op,"caIssuers"),zc(o,a,Ep,"timeStamping"),zc(o,a,Ip,"caRepository"),super(cl,e[1],F.serialize(o))}(t=this.ocsp)!==null&&t!==void 0||(this.ocsp=[]),(n=this.caIssuers)!==null&&n!==void 0||(this.caIssuers=[]),(s=this.timeStamping)!==null&&s!==void 0||(this.timeStamping=[]),(i=this.caRepository)!==null&&i!==void 0||(this.caRepository=[])}onInit(e){super.onInit(e),this.ocsp=[],this.caIssuers=[],this.timeStamping=[],this.caRepository=[],F.parse(e.extnValue,ys).forEach(n=>{switch(n.accessMethod){case Ap:this.ocsp.push(new fn(n.accessLocation));break;case Op:this.caIssuers.push(new fn(n.accessLocation));break;case Ep:this.timeStamping.push(new fn(n.accessLocation));break;case Ip:this.caRepository.push(new fn(n.accessLocation));break}})}toTextObject(){const e=this.toTextObjectWithoutValue();return this.ocsp.length&&Wc(e,"OCSP",this.ocsp),this.caIssuers.length&&Wc(e,"CA Issuers",this.caIssuers),this.timeStamping.length&&Wc(e,"Time Stamping",this.timeStamping),this.caRepository.length&&Wc(e,"CA Repository",this.caRepository),e}}Ty.NAME="Authority Info Access";function Wc(r,e,t){if(t.length===1)r[e]=t[0].toTextObject();else{const n=new $e("");t.forEach((s,i)=>{const a=s.toTextObject(),o=`${a[$e.NAME]} ${i+1}`;let c=n[o];Array.isArray(c)||(c=[],n[o]=c),c.push(a)}),r[e]=n}}function zc(r,e,t,n){const s=e[n];s&&(Array.isArray(s)?s:[s]).forEach(a=>{typeof a=="string"&&(a=new fn("url",a)),r.push(new Ki({accessMethod:t,accessLocation:F.parse(a.rawData,ge)}))})}class Zs extends un{constructor(...e){let t;if(L.isBufferSource(e[0]))t=L.toArrayBuffer(e[0]);else{const n=e[0],s=Array.isArray(e[1])?e[1].map(i=>L.toArrayBuffer(i)):[];t=F.serialize(new $r({type:n,values:s}))}super(t,$r)}onInit(e){this.type=e.type,this.values=e.values}toTextObject(){const e=this.toTextObjectWithoutValue();return e.Value=this.values.map(t=>new $e("",{"":t})),e}toTextObjectWithoutValue(){const e=this.toTextObjectEmpty();return e[$e.NAME]===Zs.NAME&&(e[$e.NAME]=cn.toString(this.type)),e}}Zs.NAME="Attribute";class Ny extends Zs{constructor(...e){var t;if(L.isBufferSource(e[0]))super(e[0]);else{const n=new Uc({printableString:e[0]});super(Am,[F.serialize(n)])}(t=this.password)!==null&&t!==void 0||(this.password="")}onInit(e){if(super.onInit(e),this.values[0]){const t=F.parse(this.values[0],Uc);this.password=t.toString()}}toTextObject(){const e=this.toTextObjectWithoutValue();return e[$e.VALUE]=this.password,e}}Ny.NAME="Challenge Password";class Fd extends Zs{constructor(...e){var t;if(L.isBufferSource(e[0]))super(e[0]);else{const n=e[0],s=new Nn;for(const i of n)s.push(F.parse(i.rawData,Qt));super(Cd,[F.serialize(s)])}(t=this.items)!==null&&t!==void 0||(this.items=[])}onInit(e){if(super.onInit(e),this.values[0]){const t=F.parse(this.values[0],Nn);this.items=t.map(n=>Lt.create(F.serialize(n)))}}toTextObject(){const e=this.toTextObjectWithoutValue(),t=this.items.map(n=>n.toTextObject());for(const n of t)e[n[$e.NAME]]=n;return e}}Fd.NAME="Extensions";class Kc{static register(e,t){this.items.set(e,t)}static create(e){const t=new Zs(e),n=this.items.get(t.type);return n?new n(e):t}}Kc.items=new Map;const Gc="crypto.signatureFormatter";class q_{toAsnSignature(e,t){return L.toArrayBuffer(t)}toWebSignature(e,t){return L.toArrayBuffer(t)}}var Jc;let Wd=Jc=class{static createPssParams(e,t){const n=Jc.getHashAlgorithm(e);return n?new Dn({hashAlgorithm:n,maskGenAlgorithm:new Y({algorithm:Oc,parameters:F.serialize(n)}),saltLength:t}):null}static getHashAlgorithm(e){const t=xt.resolve(Ps);return typeof e=="string"?t.toAsnAlgorithm({name:e}):typeof e=="object"&&e&&"name"in e?t.toAsnAlgorithm(e):null}toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"rsassa-pkcs1-v1_5":if("hash"in e){let t;if(typeof e.hash=="string")t=e.hash;else if(e.hash&&typeof e.hash=="object"&&"name"in e.hash&&typeof e.hash.name=="string")t=e.hash.name.toUpperCase();else throw new Error("Cannot get hash algorithm name");switch(t.toLowerCase()){case"sha-1":return new Y({algorithm:bc,parameters:null});case"sha-256":return new Y({algorithm:dd,parameters:null});case"sha-384":return new Y({algorithm:xc,parameters:null});case"sha-512":return new Y({algorithm:_c,parameters:null})}}else return new Y({algorithm:$n,parameters:null});break;case"rsa-pss":if("hash"in e){if(!("saltLength"in e&&typeof e.saltLength=="number"))throw new Error("Cannot get 'saltLength' from 'alg' argument");const t=Jc.createPssParams(e.hash,e.saltLength);if(!t)throw new Error("Cannot create PSS parameters");return new Y({algorithm:la,parameters:F.serialize(t)})}else return new Y({algorithm:la,parameters:null})}return null}toWebAlgorithm(e){switch(e.algorithm){case $n:return{name:"RSASSA-PKCS1-v1_5"};case bc:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case dd:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case xc:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case _c:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}};case la:if(e.parameters){const t=F.parse(e.parameters,Dn);return{name:"RSA-PSS",hash:xt.resolve(Ps).toWebAlgorithm(t.hashAlgorithm),saltLength:t.saltLength}}else return{name:"RSA-PSS"}}return null}};Wd=Jc=l([Rc()],Wd),xt.registerSingleton(pa,Wd);let zd=class{toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"sha-1":return new Y({algorithm:wc});case"sha-256":return new Y({algorithm:kc});case"sha-384":return new Y({algorithm:Sc});case"sha-512":return new Y({algorithm:Ac})}return null}toWebAlgorithm(e){switch(e.algorithm){case wc:return{name:"SHA-1"};case kc:return{name:"SHA-256"};case Sc:return{name:"SHA-384"};case Ac:return{name:"SHA-512"}}return null}};zd=l([Rc()],zd),xt.registerSingleton(pa,zd);class qt{addPadding(e,t){const n=L.toUint8Array(t),s=new Uint8Array(e);return s.set(n,e-n.length),s}removePadding(e,t=!1){let n=L.toUint8Array(e);for(let s=0;s<n.length;s++)if(n[s]){n=n.slice(s);break}if(t&&n[0]>127){const s=new Uint8Array(n.length+1);return s.set(n,1),s.buffer}return n.buffer}toAsnSignature(e,t){if(e.name==="ECDSA"){const n=e.namedCurve,s=qt.namedCurveSize.get(n)||qt.defaultNamedCurveSize,i=new vc,a=L.toUint8Array(t);return i.r=this.removePadding(a.slice(0,s),!0),i.s=this.removePadding(a.slice(s,s+s),!0),F.serialize(i)}return null}toWebSignature(e,t){if(e.name==="ECDSA"){const n=F.parse(t,vc),s=e.namedCurve,i=qt.namedCurveSize.get(s)||qt.defaultNamedCurveSize,a=this.addPadding(i,this.removePadding(n.r)),o=this.addPadding(i,this.removePadding(n.s));return nx(a,o)}return null}}qt.namedCurveSize=new Map,qt.defaultNamedCurveSize=32;const Kd="1.3.101.110",By="1.3.101.111",Gd="1.3.101.112",Ry="1.3.101.113";let Jd=class{toAsnAlgorithm(e){let t=null;switch(e.name.toLowerCase()){case"ed25519":t=Gd;break;case"x25519":t=Kd;break;case"eddsa":switch(e.namedCurve.toLowerCase()){case"ed25519":t=Gd;break;case"ed448":t=Ry;break}break;case"ecdh-es":switch(e.namedCurve.toLowerCase()){case"x25519":t=Kd;break;case"x448":t=By;break}}return t?new Y({algorithm:t}):null}toWebAlgorithm(e){switch(e.algorithm){case Gd:return{name:"Ed25519"};case Ry:return{name:"EdDSA",namedCurve:"Ed448"};case Kd:return{name:"X25519"};case By:return{name:"ECDH-ES",namedCurve:"X448"}}return null}};Jd=l([Rc()],Jd),xt.registerSingleton(pa,Jd);class H_ extends Vr{constructor(e){Vr.isAsnEncoded(e)?super(e,ha):super(e),this.tag=Rt.CertificateRequestTag}onInit(e){this.tbs=F.serialize(e.certificationRequestInfo),this.publicKey=new xr(e.certificationRequestInfo.subjectPKInfo);const t=xt.resolve(Ps);this.signatureAlgorithm=t.toWebAlgorithm(e.signatureAlgorithm),this.signature=e.signature,this.attributes=e.certificationRequestInfo.attributes.map(s=>Kc.create(F.serialize(s)));const n=this.getAttribute(Cd);this.extensions=[],n instanceof Fd&&(this.extensions=n.items),this.subjectName=new dn(e.certificationRequestInfo.subject),this.subject=this.subjectName.toString()}getAttribute(e){for(const t of this.attributes)if(t.type===e)return t;return null}getAttributes(e){return this.attributes.filter(t=>t.type===e)}getExtension(e){for(const t of this.extensions)if(t.type===e)return t;return null}getExtensions(e){return this.extensions.filter(t=>t.type===e)}async verify(e=_t.get()){const t={...this.publicKey.algorithm,...this.signatureAlgorithm},n=await this.publicKey.export(t,["verify"],e),s=xt.resolveAll(Gc).reverse();let i=null;for(const o of s)if(i=o.toWebSignature(t,this.signature),i)break;if(!i)throw Error("Cannot convert WebCrypto signature value to ASN.1 format");return await e.subtle.verify(this.signatureAlgorithm,n,i,this.tbs)}toTextObject(){const e=this.toTextObjectEmpty(),t=F.parse(this.rawData,ha),n=t.certificationRequestInfo,s=new $e("",{Version:`${bs[n.version]} (${n.version})`,Subject:this.subject,"Subject Public Key Info":this.publicKey});if(this.attributes.length){const i=new $e("");for(const a of this.attributes){const o=a.toTextObject();i[o[$e.NAME]]=o}s.Attributes=i}return e.Data=s,e.Signature=new $e("",{Algorithm:Vn.serializeAlgorithm(t.signatureAlgorithm),"":t.signature}),e}}H_.NAME="PKCS#10 Certificate Request";class Py extends Vr{constructor(e){Vr.isAsnEncoded(e)?super(e,xs):super(e),this.tag=Rt.CertificateTag}onInit(e){const t=e.tbsCertificate;this.tbs=F.serialize(t),this.serialNumber=re.ToHex(t.serialNumber),this.subjectName=new dn(t.subject),this.subject=new dn(t.subject).toString(),this.issuerName=new dn(t.issuer),this.issuer=this.issuerName.toString();const n=xt.resolve(Ps);this.signatureAlgorithm=n.toWebAlgorithm(e.signatureAlgorithm),this.signature=e.signatureValue;const s=t.validity.notBefore.utcTime||t.validity.notBefore.generalTime;if(!s)throw new Error("Cannot get 'notBefore' value");this.notBefore=s;const i=t.validity.notAfter.utcTime||t.validity.notAfter.generalTime;if(!i)throw new Error("Cannot get 'notAfter' value");this.notAfter=i,this.extensions=[],t.extensions&&(this.extensions=t.extensions.map(a=>Lt.create(F.serialize(a)))),this.publicKey=new xr(t.subjectPublicKeyInfo)}getExtension(e){for(const t of this.extensions)if(typeof e=="string"){if(t.type===e)return t}else if(t instanceof e)return t;return null}getExtensions(e){return this.extensions.filter(t=>typeof e=="string"?t.type===e:t instanceof e)}async verify(e={},t=_t.get()){let n,s;const i=e.publicKey;try{if(!i)n={...this.publicKey.algorithm,...this.signatureAlgorithm},s=await this.publicKey.export(n,["verify"],t);else if("publicKey"in i)n={...i.publicKey.algorithm,...this.signatureAlgorithm},s=await i.publicKey.export(n,["verify"],t);else if(i instanceof xr)n={...i.algorithm,...this.signatureAlgorithm},s=await i.export(n,["verify"],t);else if(L.isBufferSource(i)){const u=new xr(i);n={...u.algorithm,...this.signatureAlgorithm},s=await u.export(n,["verify"],t)}else n={...i.algorithm,...this.signatureAlgorithm},s=i}catch{return!1}const a=xt.resolveAll(Gc).reverse();let o=null;for(const u of a)if(o=u.toWebSignature(n,this.signature),o)break;if(!o)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");const c=await t.subtle.verify(this.signatureAlgorithm,s,o,this.tbs);if(e.signatureOnly)return c;{const f=(e.date||new Date).getTime();return c&&this.notBefore.getTime()<f&&f<this.notAfter.getTime()}}async getThumbprint(...e){let t,n="SHA-1";return e[0]&&(e[0].subtle?t=e[0]:(n=e[0]||n,t=e[1])),t??(t=_t.get()),await t.subtle.digest(n,this.rawData)}async isSelfSigned(e=_t.get()){return this.subject===this.issuer&&await this.verify({signatureOnly:!0},e)}toTextObject(){const e=this.toTextObjectEmpty(),t=F.parse(this.rawData,xs),n=t.tbsCertificate,s=new $e("",{Version:`${bs[n.version]} (${n.version})`,"Serial Number":n.serialNumber,"Signature Algorithm":Vn.serializeAlgorithm(n.signature),Issuer:this.issuer,Validity:new $e("",{"Not Before":n.validity.notBefore.getTime(),"Not After":n.validity.notAfter.getTime()}),Subject:this.subject,"Subject Public Key Info":this.publicKey});if(n.issuerUniqueID&&(s["Issuer Unique ID"]=n.issuerUniqueID),n.subjectUniqueID&&(s["Subject Unique ID"]=n.subjectUniqueID),this.extensions.length){const i=new $e("");for(const a of this.extensions){const o=a.toTextObject();i[o[$e.NAME]]=o}s.Extensions=i}return e.Data=s,e.Signature=new $e("",{Algorithm:Vn.serializeAlgorithm(t.signatureAlgorithm),"":t.signatureValue}),e}}Py.NAME="Certificate";var $y;(function(r){r[r.unspecified=0]="unspecified",r[r.keyCompromise=1]="keyCompromise",r[r.cACompromise=2]="cACompromise",r[r.affiliationChanged=3]="affiliationChanged",r[r.superseded=4]="superseded",r[r.cessationOfOperation=5]="cessationOfOperation",r[r.certificateHold=6]="certificateHold",r[r.removeFromCRL=8]="removeFromCRL",r[r.privilegeWithdrawn=9]="privilegeWithdrawn",r[r.aACompromise=10]="aACompromise"})($y||($y={})),Lt.register(Cp,ky),Lt.register(Pp,Ay),Lt.register(Zp,Ey),Lt.register(qp,Fc),Lt.register(ul,ba),Lt.register(Up,Iy),Lt.register(vl,jy),Lt.register(cl,Ty),Kc.register(Am,Ny),Kc.register(Cd,Fd),xt.registerSingleton(Gc,q_),xt.registerSingleton(Gc,qt),qt.namedCurveSize.set("P-256",32),qt.namedCurveSize.set("K-256",32),qt.namedCurveSize.set("P-384",48),qt.namedCurveSize.set("P-521",66);const Yc=60*5;function F_(r){return new jt().openapi(Oe({tags:["jwks"],method:"get",path:"/jwks.json",request:{},responses:{200:{content:{"application/json":{schema:Vb}},description:"List of tenants"}}}),async t=>{const n=await t.env.data.keys.list(),s=await Promise.all(n.map(async i=>{const o=await new Py(i.cert).publicKey.export(),c=await crypto.subtle.exportKey("jwk",o);return fh.parse({...c,kid:i.kid})}));return t.json({keys:s},{headers:{"access-control-allow-origin":"*","access-control-allow-method":"GET","cache-control":`public, max-age=${Yc}, stale-while-revalidate=${Yc*2}, stale-if-error=86400`}})}).openapi(Oe({tags:["well known"],method:"get",path:"/openid-configuration",request:{},responses:{200:{content:{"application/json":{schema:hh}},description:"List of tenants"}}}),async t=>{const{issuer:n}=r,s=hh.parse({issuer:n,authorization_endpoint:`${n}authorize`,token_endpoint:`${n}oauth/token`,device_authorization_endpoint:`${n}oauth/device/code`,userinfo_endpoint:`${n}userinfo`,mfa_challenge_endpoint:`${n}mfa/challenge`,jwks_uri:`${n}.well-known/jwks.json`,registration_endpoint:`${n}oidc/register`,revocation_endpoint:`${n}oauth/revoke`,scopes_supported:["openid","profile","offline_access","name","given_name","family_name","nickname","email","email_verified","picture","created_at","identities","phone","address"],response_types_supported:["code","token","id_token","code token","code id_token","token id_token","code token id_token"],code_challenge_methods_supported:["S256","plain"],response_modes_supported:["query","fragment","form_post"],subject_types_supported:["public"],id_token_signing_alg_values_supported:["HS256","RS256"],token_endpoint_auth_methods_supported:["client_secret_basic","client_secret_post","private_key_jwt"],claims_supported:["aud","auth_time","created_at","email","email_verified","exp","family_name","given_name","iat","identities","iss","name","nickname","phone_number","picture","sub"],request_uri_parameter_supported:!1,request_parameter_supported:!1,token_endpoint_auth_signing_alg_values_supported:["RS256","RS384","PS256"]});return t.json(s,{headers:{"access-control-allow-origin":"*","access-control-allow-method":"GET","cache-control":`public, max-age=${Yc}, stale-while-revalidate=${Yc*2}, stale-if-error=86400`}})})}async function Zy(r,e,t){return(await r.list(e,{page:0,per_page:10,include_totals:!1,q:`email:${t}`})).users}async function W_({userAdapter:r,tenant_id:e,email:t}){var o;const{users:n}=await r.list(e,{page:0,per_page:10,include_totals:!1,q:`email:${t}`}),s=n.filter(c=>!(c.provider==="auth2"&&!c.email_verified));if(s.length===0)return;const i=s.filter(c=>!c.linked_to);if(i.length>0)return i.length>1&&console.error("More than one primary user found for same email"),i[0];const a=await r.get(e,(o=s[0])==null?void 0:o.linked_to);if(!a)throw new Error("Primary account not found");return a}function z_(r){return async(e,t)=>{if(!t.email||!t.email_verified)return r.users.create(e,t);const n=await W_({userAdapter:r.users,tenant_id:e,email:t.email});return n?(await r.users.create(e,{...t,linked_to:n.user_id}),n):r.users.create(e,t)}}function Dy(r,e){return{type:e.type,description:e.description||"",ip:r.req.header("x-real-ip")||"",user_agent:r.req.header("user-agent")||"",date:new Date().toISOString(),details:{request:{method:r.req.method,path:r.req.path,qs:r.req.queries(),body:e.body||r.var.body||""}},isMobile:!1,client_id:r.var.client_id,client_name:"",user_id:e.userId||r.var.user_id||"",hostname:r.req.header("host")||"",user_name:r.var.username||"",connection_id:"",connection:r.var.connection||"",strategy:"",strategy_type:"",audience:"",scope:[]}}async function K_(r,e,t){for await(const n of e)if(!(await fetch(n.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})).ok){const i=Dy(r,{type:Bu.FAILED_LOGIN_INCORRECT_PASSWORD,description:"Invalid password"});await t.logs.create(r.var.tenant_id,i)}}function G_(r,e){return async(t,n)=>{const{hooks:s}=await e.hooks.list(t,{q:"trigger_id:post-user-registration",page:0,per_page:100,include_totals:!1});return await K_(r,s,{tenant_id:t,user:n,trigger_id:"post-user-registration"}),n}}function J_(r,e){return async(t,n)=>{let s=await z_(e)(t,n);return await G_(r,e)(t,s),s}}function Y_(r,e){return{...e,users:{...e.users,create:J_(r,e)}}}const X_=new jt().openapi(Oe({tags:["branding"],method:"get",path:"/",request:{headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:dh}},description:"Branding settings"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=await r.env.data.branding.get(e);return t?r.json(t):r.json({})}).openapi(Oe({tags:["branding"],method:"patch",path:"/",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.object(dh.shape).partial()}}}},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Branding settings"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json");return await r.env.data.branding.set(e,t),r.text("OK")});function Q_(r){throw new Error('Could not dynamically require "'+r+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var My={exports:{}};const ew=Xb(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));(function(r){/**
|
|
118
|
+
* @license bcrypt.js (c) 2013 Daniel Wirtz <dcode@dcode.io>
|
|
119
|
+
* Released under the Apache License, Version 2.0
|
|
120
|
+
* see: https://github.com/dcodeIO/bcrypt.js for details
|
|
121
|
+
*/(function(e,t){typeof Q_=="function"&&r&&r.exports?r.exports=t():(e.dcodeIO=e.dcodeIO||{}).bcrypt=t()})(go,function(){var e={},t=null;function n(E){if(r&&r.exports)try{return ew.randomBytes(E)}catch{}try{var O;return(self.crypto||self.msCrypto).getRandomValues(O=new Uint32Array(E)),Array.prototype.slice.call(O)}catch{}if(!t)throw Error("Neither WebCryptoAPI nor a crypto module is available. Use bcrypt.setRandomFallback to set an alternative");return t(E)}var s=!1;try{n(1),s=!0}catch{}t=null,e.setRandomFallback=function(E){t=E},e.genSaltSync=function(E,O){if(E=E||g,typeof E!="number")throw Error("Illegal arguments: "+typeof E+", "+typeof O);E<4?E=4:E>31&&(E=31);var w=[];return w.push("$2a$"),E<10&&w.push("0"),w.push(E.toString()),w.push("$"),w.push(m(n(p),p)),w.join("")},e.genSalt=function(E,O,w){if(typeof O=="function"&&(w=O,O=void 0),typeof E=="function"&&(w=E,E=void 0),typeof E>"u")E=g;else if(typeof E!="number")throw Error("illegal arguments: "+typeof E);function b(v){a(function(){try{v(null,e.genSaltSync(E))}catch(I){v(I)}})}if(w){if(typeof w!="function")throw Error("Illegal callback: "+typeof w);b(w)}else return new Promise(function(v,I){b(function(M,Ae){if(M){I(M);return}v(Ae)})})},e.hashSync=function(E,O){if(typeof O>"u"&&(O=g),typeof O=="number"&&(O=e.genSaltSync(O)),typeof E!="string"||typeof O!="string")throw Error("Illegal arguments: "+typeof E+", "+typeof O);return $t(E,O)},e.hash=function(E,O,w,b){function v(I){typeof E=="string"&&typeof O=="number"?e.genSalt(O,function(M,Ae){$t(E,Ae,I,b)}):typeof E=="string"&&typeof O=="string"?$t(E,O,I,b):a(I.bind(this,Error("Illegal arguments: "+typeof E+", "+typeof O)))}if(w){if(typeof w!="function")throw Error("Illegal callback: "+typeof w);v(w)}else return new Promise(function(I,M){v(function(Ae,ue){if(Ae){M(Ae);return}I(ue)})})};function i(E,O){for(var w=0,b=0,v=0,I=E.length;v<I;++v)E.charCodeAt(v)===O.charCodeAt(v)?++w:++b;return w<0?!1:b===0}e.compareSync=function(E,O){if(typeof E!="string"||typeof O!="string")throw Error("Illegal arguments: "+typeof E+", "+typeof O);return O.length!==60?!1:i(e.hashSync(E,O.substr(0,O.length-31)),O)},e.compare=function(E,O,w,b){function v(I){if(typeof E!="string"||typeof O!="string"){a(I.bind(this,Error("Illegal arguments: "+typeof E+", "+typeof O)));return}if(O.length!==60){a(I.bind(this,null,!1));return}e.hash(E,O.substr(0,29),function(M,Ae){M?I(M):I(null,i(Ae,O))},b)}if(w){if(typeof w!="function")throw Error("Illegal callback: "+typeof w);v(w)}else return new Promise(function(I,M){v(function(Ae,ue){if(Ae){M(Ae);return}I(ue)})})},e.getRounds=function(E){if(typeof E!="string")throw Error("Illegal arguments: "+typeof E);return parseInt(E.split("$")[2],10)},e.getSalt=function(E){if(typeof E!="string")throw Error("Illegal arguments: "+typeof E);if(E.length!==60)throw Error("Illegal hash length: "+E.length+" != 60");return E.substring(0,29)};var a=typeof process<"u"&&process&&typeof process.nextTick=="function"?typeof setImmediate=="function"?setImmediate:process.nextTick:setTimeout;function o(E){var O=[],w=0;return j.encodeUTF16toUTF8(function(){return w>=E.length?null:E.charCodeAt(w++)},function(b){O.push(b)}),O}var c="./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),u=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,54,55,56,57,58,59,60,61,62,63,-1,-1,-1,-1,-1,-1,-1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,-1,-1,-1,-1,-1,-1,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,-1,-1,-1,-1,-1],f=String.fromCharCode;function m(E,O){var w=0,b=[],v,I;if(O<=0||O>E.length)throw Error("Illegal len: "+O);for(;w<O;){if(v=E[w++]&255,b.push(c[v>>2&63]),v=(v&3)<<4,w>=O){b.push(c[v&63]);break}if(I=E[w++]&255,v|=I>>4&15,b.push(c[v&63]),v=(I&15)<<2,w>=O){b.push(c[v&63]);break}I=E[w++]&255,v|=I>>6&3,b.push(c[v&63]),b.push(c[I&63])}return b.join("")}function D(E,O){var w=0,b=E.length,v=0,I=[],M,Ae,ue,Ie,De,ee;if(O<=0)throw Error("Illegal len: "+O);for(;w<b-1&&v<O&&(ee=E.charCodeAt(w++),M=ee<u.length?u[ee]:-1,ee=E.charCodeAt(w++),Ae=ee<u.length?u[ee]:-1,!(M==-1||Ae==-1||(De=M<<2>>>0,De|=(Ae&48)>>4,I.push(f(De)),++v>=O||w>=b)||(ee=E.charCodeAt(w++),ue=ee<u.length?u[ee]:-1,ue==-1)||(De=(Ae&15)<<4>>>0,De|=(ue&60)>>2,I.push(f(De)),++v>=O||w>=b)));)ee=E.charCodeAt(w++),Ie=ee<u.length?u[ee]:-1,De=(ue&3)<<6>>>0,De|=Ie,I.push(f(De)),++v;var at=[];for(w=0;w<v;w++)at.push(I[w].charCodeAt(0));return at}var j=function(){var E={};return E.MAX_CODEPOINT=1114111,E.encodeUTF8=function(O,w){var b=null;for(typeof O=="number"&&(b=O,O=function(){return null});b!==null||(b=O())!==null;)b<128?w(b&127):b<2048?(w(b>>6&31|192),w(b&63|128)):b<65536?(w(b>>12&15|224),w(b>>6&63|128),w(b&63|128)):(w(b>>18&7|240),w(b>>12&63|128),w(b>>6&63|128),w(b&63|128)),b=null},E.decodeUTF8=function(O,w){for(var b,v,I,M,Ae=function(ue){ue=ue.slice(0,ue.indexOf(null));var Ie=Error(ue.toString());throw Ie.name="TruncatedError",Ie.bytes=ue,Ie};(b=O())!==null;)if(!(b&128))w(b);else if((b&224)===192)(v=O())===null&&Ae([b,v]),w((b&31)<<6|v&63);else if((b&240)===224)((v=O())===null||(I=O())===null)&&Ae([b,v,I]),w((b&15)<<12|(v&63)<<6|I&63);else if((b&248)===240)((v=O())===null||(I=O())===null||(M=O())===null)&&Ae([b,v,I,M]),w((b&7)<<18|(v&63)<<12|(I&63)<<6|M&63);else throw RangeError("Illegal starting byte: "+b)},E.UTF16toUTF8=function(O,w){for(var b,v=null;(b=v!==null?v:O())!==null;){if(b>=55296&&b<=57343&&(v=O())!==null&&v>=56320&&v<=57343){w((b-55296)*1024+v-56320+65536),v=null;continue}w(b)}v!==null&&w(v)},E.UTF8toUTF16=function(O,w){var b=null;for(typeof O=="number"&&(b=O,O=function(){return null});b!==null||(b=O())!==null;)b<=65535?w(b):(b-=65536,w((b>>10)+55296),w(b%1024+56320)),b=null},E.encodeUTF16toUTF8=function(O,w){E.UTF16toUTF8(O,function(b){E.encodeUTF8(b,w)})},E.decodeUTF8toUTF16=function(O,w){E.decodeUTF8(O,function(b){E.UTF8toUTF16(b,w)})},E.calculateCodePoint=function(O){return O<128?1:O<2048?2:O<65536?3:4},E.calculateUTF8=function(O){for(var w,b=0;(w=O())!==null;)b+=E.calculateCodePoint(w);return b},E.calculateUTF16asUTF8=function(O){var w=0,b=0;return E.UTF16toUTF8(O,function(v){++w,b+=E.calculateCodePoint(v)}),[w,b]},E}();Date.now=Date.now||function(){return+new Date};var p=16,g=10,A=16,S=100,B=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],T=[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946,1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055,3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504,976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462],ve=[1332899944,1700884034,1701343084,1684370003,1668446532,1869963892];function Me(E,O,w,b){var v,I=E[O],M=E[O+1];return I^=w[0],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[1],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[2],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[3],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[4],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[5],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[6],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[7],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[8],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[9],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[10],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[11],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[12],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[13],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[14],v=b[I>>>24],v+=b[256|I>>16&255],v^=b[512|I>>8&255],v+=b[768|I&255],M^=v^w[15],v=b[M>>>24],v+=b[256|M>>16&255],v^=b[512|M>>8&255],v+=b[768|M&255],I^=v^w[16],E[O]=M^w[A+1],E[O+1]=I,E}function Ve(E,O){for(var w=0,b=0;w<4;++w)b=b<<8|E[O]&255,O=(O+1)%E.length;return{key:b,offp:O}}function Pe(E,O,w){for(var b=0,v=[0,0],I=O.length,M=w.length,Ae,ue=0;ue<I;ue++)Ae=Ve(E,b),b=Ae.offp,O[ue]=O[ue]^Ae.key;for(ue=0;ue<I;ue+=2)v=Me(v,0,O,w),O[ue]=v[0],O[ue+1]=v[1];for(ue=0;ue<M;ue+=2)v=Me(v,0,O,w),w[ue]=v[0],w[ue+1]=v[1]}function et(E,O,w,b){for(var v=0,I=[0,0],M=w.length,Ae=b.length,ue,Ie=0;Ie<M;Ie++)ue=Ve(O,v),v=ue.offp,w[Ie]=w[Ie]^ue.key;for(v=0,Ie=0;Ie<M;Ie+=2)ue=Ve(E,v),v=ue.offp,I[0]^=ue.key,ue=Ve(E,v),v=ue.offp,I[1]^=ue.key,I=Me(I,0,w,b),w[Ie]=I[0],w[Ie+1]=I[1];for(Ie=0;Ie<Ae;Ie+=2)ue=Ve(E,v),v=ue.offp,I[0]^=ue.key,ue=Ve(E,v),v=ue.offp,I[1]^=ue.key,I=Me(I,0,w,b),b[Ie]=I[0],b[Ie+1]=I[1]}function mt(E,O,w,b,v){var I=ve.slice(),M=I.length,Ae;if(w<4||w>31)if(Ae=Error("Illegal number of rounds (4-31): "+w),b){a(b.bind(this,Ae));return}else throw Ae;if(O.length!==p)if(Ae=Error("Illegal salt length: "+O.length+" != "+p),b){a(b.bind(this,Ae));return}else throw Ae;w=1<<w>>>0;var ue,Ie,De=0,ee;Int32Array?(ue=new Int32Array(B),Ie=new Int32Array(T)):(ue=B.slice(),Ie=T.slice()),et(O,E,ue,Ie);function at(){if(v&&v(De/w),De<w)for(var qe=Date.now();De<w&&(De=De+1,Pe(E,ue,Ie),Pe(O,ue,Ie),!(Date.now()-qe>S)););else{for(De=0;De<64;De++)for(ee=0;ee<M>>1;ee++)Me(I,ee<<1,ue,Ie);var tt=[];for(De=0;De<M;De++)tt.push((I[De]>>24&255)>>>0),tt.push((I[De]>>16&255)>>>0),tt.push((I[De]>>8&255)>>>0),tt.push((I[De]&255)>>>0);if(b){b(null,tt);return}else return tt}b&&a(at)}if(typeof b<"u")at();else for(var Fn;;)if(typeof(Fn=at())<"u")return Fn||[]}function $t(E,O,w,b){var v;if(typeof E!="string"||typeof O!="string")if(v=Error("Invalid string / salt: Not a string"),w){a(w.bind(this,v));return}else throw v;var I,M;if(O.charAt(0)!=="$"||O.charAt(1)!=="2")if(v=Error("Invalid salt version: "+O.substring(0,2)),w){a(w.bind(this,v));return}else throw v;if(O.charAt(2)==="$")I="\0",M=3;else{if(I=O.charAt(2),I!=="a"&&I!=="b"&&I!=="y"||O.charAt(3)!=="$")if(v=Error("Invalid salt revision: "+O.substring(2,4)),w){a(w.bind(this,v));return}else throw v;M=4}if(O.charAt(M+2)>"$")if(v=Error("Missing salt rounds"),w){a(w.bind(this,v));return}else throw v;var Ae=parseInt(O.substring(M,M+1),10)*10,ue=parseInt(O.substring(M+1,M+2),10),Ie=Ae+ue,De=O.substring(M+3,M+25);E+=I>="a"?"\0":"";var ee=o(E),at=D(De,p);function Fn(qe){var tt=[];return tt.push("$2"),I>="a"&&tt.push(I),tt.push("$"),Ie<10&&tt.push("0"),tt.push(Ie.toString()),tt.push("$"),tt.push(m(at,at.length)),tt.push(m(qe,ve.length*4-1)),tt.join("")}if(typeof w>"u")return Fn(mt(ee,at,Ie));mt(ee,at,Ie,function(qe,tt){qe?w(qe,null):w(null,Fn(tt))},b)}return e.encodeBase64=m,e.decodeBase64=D,e})})(My);var tw=My.exports;const rw=Yb(tw),nw="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let sw=r=>crypto.getRandomValues(new Uint8Array(r)),iw=(r,e,t)=>{let n=(2<<Math.log(r.length-1)/Math.LN2)-1,s=-~(1.6*n*e/r.length);return(i=e)=>{let a="";for(;;){let o=t(s),c=s;for(;c--;)if(a+=r[o[c]&n]||"",a.length===i)return a}}},aw=(r,e=21)=>iw(r,e,sw),Vy=(r=21)=>{let e="",t=crypto.getRandomValues(new Uint8Array(r));for(;r--;)e+=nw[t[r]&63];return e};const ow=24;function cw(){return aw("0123456789abcdef",ow)()}function Uy(r){if(!r.includes("|"))return console.error("Invalid user_id format"),r;const[,e]=r.split("|");return e}const Ds=_.object({page:_.string().min(0).optional().default("0").transform(r=>parseInt(r,10)).openapi({description:"The page number where 0 is the first page"}),per_page:_.string().min(1).optional().default("10").transform(r=>parseInt(r,10)).openapi({description:"The number of items per page"}),include_totals:_.string().optional().default("false").transform(r=>r==="true").openapi({description:"If the total number of items should be included in the response"}),sort:_.string().regex(/^.+:(-1|1)$/).optional().openapi({description:"A property that should have the format 'string:-1' or 'string:1'"}),q:_.string().optional().openapi({description:"A lucene query string used to filter the results"})});function Ms(r){if(!r)return;const[e,t]=r.split(":"),n=t==="1"?"asc":"desc";if(!(!e||!n))return{sort_by:e,sort_order:n}}var uw={deno:"Deno",bun:"Bun",workerd:"Cloudflare-Workers",node:"Node.js"},lw=()=>{var t,n;const r=globalThis;if(typeof navigator<"u"&&typeof navigator.userAgent=="string"){for(const[s,i]of Object.entries(uw))if(dw(i))return s}return typeof(r==null?void 0:r.EdgeRuntime)=="string"?"edge-light":(r==null?void 0:r.fastly)!==void 0?"fastly":((n=(t=r==null?void 0:r.process)==null?void 0:t.release)==null?void 0:n.name)==="node"?"node":"other"},dw=r=>navigator.userAgent.startsWith(r);function fw(r,e){lw()==="workerd"&&r.executionCtx.waitUntil(e)}const Ly=as.extend({users:_.array(Cr)}),hw=new jt().openapi(Oe({tags:["users"],method:"get",path:"/",request:{query:Ds,headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:_.union([_.array(Cr),Ly])}},description:"List of users"}}}),async r=>{const{page:e,per_page:t,include_totals:n,sort:s,q:i}=r.req.valid("query"),{"tenant-id":a}=r.req.valid("header");if(i!=null&&i.includes("identities.profileData.email")){const f=i.split("=")[1],D=(await r.env.data.users.list(a,{page:e,per_page:t,include_totals:n,q:`email:${f}`})).users.filter(g=>g.linked_to),[j]=D;if(!j)return r.json([]);const p=await r.env.data.users.get(a,j.linked_to);if(!p)throw new Ue(500,{message:"Primary account not found"});return r.json([Cr.parse(p)])}const o=["-_exists_:linked_to"];i&&o.push(i);const c=await r.env.data.users.list(a,{page:e,per_page:t,include_totals:n,sort:Ms(s),q:o.join(" ")}),u=c.users.filter(f=>!f.linked_to);return n?r.json(Ly.parse({users:u,length:c.length,start:c.start,limit:c.limit})):r.json(_.array(Cr).parse(u))}).openapi(Oe({tags:["users"],method:"get",path:"/{user_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({user_id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:Cr}},description:"List of users"}}}),async r=>{const{user_id:e}=r.req.valid("param"),{"tenant-id":t}=r.req.valid("header"),n=await r.env.data.users.get(t,e);if(!n)throw new Ue(404);if(n.linked_to)throw new Ue(404,{message:"User is linked to another user"});return r.json(n)}).openapi(Oe({tags:["users"],method:"delete",path:"/{user_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({user_id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{user_id:e}=r.req.valid("param"),{"tenant-id":t}=r.req.valid("header");if(!await r.env.data.users.remove(t,e))throw new Ue(404);return r.text("OK")}).openapi(Oe({tags:["users"],method:"post",path:"/",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.object({...Iu.shape})}}}},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"application/json":{schema:Cr}},description:"Status"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json");r.set("body",t);const{email:n}=t;if(!n)throw new Ue(400,{message:"Email is required"});const s=n.toLowerCase(),i=`${t.provider}|${t.user_id||cw()}`;try{const a=await r.env.data.users.create(e,{email:s,user_id:i,name:t.name||s,provider:t.provider,connection:t.connection,email_verified:t.email_verified||!1,last_ip:"",login_count:0,is_social:!1,last_login:new Date().toISOString(),created_at:new Date().toISOString(),updated_at:new Date().toISOString()});r.set("user_id",a.user_id);const o=Dy(r,{type:Bu.SUCCESS_API_OPERATION,description:"User created"});fw(r,r.env.data.logs.create(e,o));const c={...a,identities:[{connection:a.connection,provider:a.provider,user_id:Uy(a.user_id),isSocial:a.is_social}]};return r.json(Cr.parse(c),{status:201})}catch(a){throw a.message==="User already exists"?new Ue(409,{message:"User already exists"}):a}}).openapi(Oe({tags:["users"],method:"patch",path:"/{user_id}",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.object({...Iu.shape,verify_email:_.boolean(),password:_.string()}).partial()}}},params:_.object({user_id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{var u;const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),{user_id:n}=r.req.valid("param"),{verify_email:s,password:i,...a}=t,o=await r.env.data.users.get(e,n);if(!o)throw new Ue(404);if(a.email&&a.email!==o.email){const f=await Zy(r.env.data.users,e,a.email);if(f.length&&f.some(m=>m.user_id!==n))throw new Ue(409,{message:"Another user with the same email address already exists."})}if(o.linked_to)throw new Ue(404,{message:"User is linked to another user"});if(await r.env.data.users.update(e,n,a),i){const f=(u=o.identities)==null?void 0:u.find(m=>m.connection==="Username-Password-Authentication");if(!f)throw new Ue(400,{message:"User does not have a password identity"});await r.env.data.passwords.update(e,{user_id:`${f.provider}|${f.user_id}`,password:rw.hashSync(i,10),algorithm:"bcrypt"})}const c=await r.env.data.users.get(e,n);if(!c)throw new Ue(500);return r.json(c)}).openapi(Oe({tags:["users"],method:"post",path:"/{user_id}/identities",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.union([_.object({link_with:_.string()}),_.object({user_id:_.string(),provider:_.string(),connection:_.string().optional()})])}}},params:_.object({user_id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),{user_id:n}=r.req.valid("param"),s="link_with"in t?t.link_with:t.user_id,i=await r.env.data.users.get(e,n);if(!i)throw new Ue(400,{message:"Linking an inexistent identity is not allowed."});await r.env.data.users.update(e,s,{linked_to:n});const a=await r.env.data.users.list(e,{page:0,per_page:10,include_totals:!1,q:`linked_to:${n}`}),o=[i,...a.users].map(c=>({connection:c.connection,provider:c.provider,user_id:Uy(c.user_id),isSocial:c.is_social}));return r.json(o,{status:201})}).openapi(Oe({tags:["users"],method:"delete",path:"/{user_id}/identities/{provider}/{linked_user_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({user_id:_.string(),provider:_.string(),linked_user_id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"application/json":{schema:_.array(Cr)}},description:"Status"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{user_id:t,provider:n,linked_user_id:s}=r.req.valid("param");await r.env.data.users.unlink(e,t,n,s);const i=await r.env.data.users.get(e,t);if(!i)throw new Ue(404);return r.json([Cr.parse(i)])}).openapi(Oe({tags:["users"],method:"get",path:"/{user_id}/sessions",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({user_id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{description:"List of sessions"}}}),async r=>{const{user_id:e}=r.req.valid("param"),{"tenant-id":t}=r.req.valid("header"),n=await r.env.data.sessions.list(t,{page:0,per_page:10,include_totals:!1,q:`user_id:${e}`});return r.json(n)}),pw=new jt().openapi(Oe({tags:["users"],method:"get",path:"/",request:{query:_.object({email:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"tenant/json":{schema:_.array(oh)}},description:"List of users"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{email:t}=r.req.valid("query"),s=(await Zy(r.env.data.users,e,t)).filter(i=>!i.linked_to);return r.json(s)}),mw=as.extend({clients:_.array(os)}),yw=new jt().openapi(Oe({tags:["clients"],method:"get",path:"/",request:{query:Ds,headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:_.union([mw,_.array(os)])}},description:"List of clients"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{page:t,per_page:n,include_totals:s,sort:i,q:a}=r.req.valid("query"),c=(await r.env.data.applications.list(e,{page:t,per_page:n,include_totals:s,sort:Ms(i),q:a})).applications;return s?r.json({clients:c,start:0,limit:10,length:c.length}):r.json(c)}).openapi(Oe({tags:["clients"],method:"get",path:"/{id}",request:{params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:os}},description:"An application"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param"),s=(await r.env.data.applications.list(e,{page:1,per_page:0,include_totals:!1})).applications.find(i=>i.id===t);if(!s)throw new Ue(404);return r.json(s,{})}).openapi(Oe({tags:["clients"],method:"delete",path:"/{id}",request:{params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param");if(!await r.env.data.applications.remove(e,t))throw new Ue(404,{message:"Application not found"});return r.text("OK")}).openapi(Oe({tags:["clients"],method:"patch",path:"/{id}",request:{body:{content:{"application/json":{schema:_.object(Cu.shape).partial()}}},params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"application/json":{schema:os}},description:"The update application"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param"),s=r.req.valid("json");await r.env.data.applications.update(e,t,s);const i=await r.env.data.applications.get(e,t);if(!i)throw new Ue(404,{message:"Application not found"});return r.json(i)}).openapi(Oe({tags:["clients"],method:"post",path:"/",request:{body:{content:{"application/json":{schema:_.object(Cu.shape)}}},headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{201:{content:{"application/json":{schema:_.object(os.shape)}},description:"An application"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),n={...t,id:t.id||Vy(),client_secret:t.client_secret||Vy()},s=await r.env.data.applications.create(e,n);return r.json(s,{status:201})});var Be;(function(r){r.assertEqual=s=>s;function e(s){}r.assertIs=e;function t(s){throw new Error}r.assertNever=t,r.arrayToEnum=s=>{const i={};for(const a of s)i[a]=a;return i},r.getValidEnumValues=s=>{const i=r.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(const o of i)a[o]=s[o];return r.objectValues(a)},r.objectValues=s=>r.objectKeys(s).map(function(i){return s[i]}),r.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const i=[];for(const a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},r.find=(s,i)=>{for(const a of s)if(i(a))return a},r.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}r.joinValues=n,r.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(Be||(Be={}));var Yd;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(Yd||(Yd={}));const X=Be.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),hn=r=>{switch(typeof r){case"undefined":return X.undefined;case"string":return X.string;case"number":return isNaN(r)?X.nan:X.number;case"boolean":return X.boolean;case"function":return X.function;case"bigint":return X.bigint;case"symbol":return X.symbol;case"object":return Array.isArray(r)?X.array:r===null?X.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?X.promise:typeof Map<"u"&&r instanceof Map?X.map:typeof Set<"u"&&r instanceof Set?X.set:typeof Date<"u"&&r instanceof Date?X.date:X.object;default:return X.unknown}},Z=Be.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),gw=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:");class Pt extends Error{constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(i){return i.message},n={_errors:[]},s=i=>{for(const a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(t(a));else{let o=n,c=0;for(;c<a.path.length;){const u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(t(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof Pt))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Be.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){const t={},n=[];for(const s of this.issues)s.path.length>0?(t[s.path[0]]=t[s.path[0]]||[],t[s.path[0]].push(e(s))):n.push(e(s));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}}Pt.create=r=>new Pt(r);const Vs=(r,e)=>{let t;switch(r.code){case Z.invalid_type:r.received===X.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case Z.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,Be.jsonStringifyReplacer)}`;break;case Z.unrecognized_keys:t=`Unrecognized key(s) in object: ${Be.joinValues(r.keys,", ")}`;break;case Z.invalid_union:t="Invalid input";break;case Z.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${Be.joinValues(r.options)}`;break;case Z.invalid_enum_value:t=`Invalid enum value. Expected ${Be.joinValues(r.options)}, received '${r.received}'`;break;case Z.invalid_arguments:t="Invalid function arguments";break;case Z.invalid_return_type:t="Invalid function return type";break;case Z.invalid_date:t="Invalid date";break;case Z.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:Be.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case Z.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case Z.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case Z.custom:t="Invalid input";break;case Z.invalid_intersection_types:t="Intersection results could not be merged";break;case Z.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case Z.not_finite:t="Number must be finite";break;default:t=e.defaultError,Be.assertNever(r)}return{message:t}};let qy=Vs;function vw(r){qy=r}function Xc(){return qy}const Qc=r=>{const{data:e,path:t,errorMaps:n,issueData:s}=r,i=[...t,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="";const c=n.filter(u=>!!u).slice().reverse();for(const u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},bw=[];function W(r,e){const t=Xc(),n=Qc({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===Vs?void 0:Vs].filter(s=>!!s)});r.common.issues.push(n)}class pt{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){const n=[];for(const s of t){if(s.status==="aborted")return me;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){const n=[];for(const s of t){const i=await s.key,a=await s.value;n.push({key:i,value:a})}return pt.mergeObjectSync(e,n)}static mergeObjectSync(e,t){const n={};for(const s of t){const{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return me;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}}const me=Object.freeze({status:"aborted"}),Us=r=>({status:"dirty",value:r}),wt=r=>({status:"valid",value:r}),Xd=r=>r.status==="aborted",Qd=r=>r.status==="dirty",xa=r=>r.status==="valid",_a=r=>typeof Promise<"u"&&r instanceof Promise;function eu(r,e,t,n){if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e.get(r)}function Hy(r,e,t,n,s){if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e.set(r,t),t}typeof SuppressedError=="function"&&SuppressedError;var ce;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(ce||(ce={}));var wa,ka;class _r{constructor(e,t,n,s){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Fy=(r,e)=>{if(xa(e))return{success:!0,data:e.value};if(!r.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Pt(r.common.issues);return this._error=t,this._error}}};function _e(r){if(!r)return{};const{errorMap:e,invalid_type_error:t,required_error:n,description:s}=r;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{var c,u;const{message:f}=r;return a.code==="invalid_enum_value"?{message:f??o.defaultError}:typeof o.data>"u"?{message:(c=f??n)!==null&&c!==void 0?c:o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:(u=f??t)!==null&&u!==void 0?u:o.defaultError}},description:s}}class Se{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return hn(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:hn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new pt,ctx:{common:e.parent.common,data:e.data,parsedType:hn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(_a(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){var n;const s={common:{issues:[],async:(n=t==null?void 0:t.async)!==null&&n!==void 0?n:!1,contextualErrorMap:t==null?void 0:t.errorMap},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:hn(e)},i=this._parseSync({data:e,path:s.path,parent:s});return Fy(s,i)}async parseAsync(e,t){const n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){const n={common:{issues:[],contextualErrorMap:t==null?void 0:t.errorMap,async:!0},path:(t==null?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:hn(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(_a(s)?s:Promise.resolve(s));return Fy(n,i)}refine(e,t){const n=s=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(s):t;return this._refinement((s,i)=>{const a=e(s),o=()=>i.addIssue({code:Z.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,t){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof t=="function"?t(n,s):t),!1))}_refinement(e){return new nr({schema:this,typeName:he.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return kr.create(this,this._def)}nullable(){return gn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return rr.create(this,this._def)}promise(){return Fs.create(this,this._def)}or(e){return Ea.create([this,e],this._def)}and(e){return Ia.create(this,e,this._def)}transform(e){return new nr({..._e(this._def),schema:this,typeName:he.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t=typeof e=="function"?e:()=>e;return new Ba({..._e(this._def),innerType:this,defaultValue:t,typeName:he.ZodDefault})}brand(){return new rf({typeName:he.ZodBranded,type:this,..._e(this._def)})}catch(e){const t=typeof e=="function"?e:()=>e;return new Ra({..._e(this._def),innerType:this,catchValue:t,typeName:he.ZodCatch})}describe(e){const t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Pa.create(this,e)}readonly(){return $a.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const xw=/^c[^\s-]{8,}$/i,_w=/^[0-9a-z]+$/,ww=/^[0-9A-HJKMNP-TV-Z]{26}$/,kw=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Sw=/^[a-z0-9_-]{21}$/i,Aw=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ow=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ew="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let ef;const Iw=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Cw=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,jw=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Wy="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Tw=new RegExp(`^${Wy}$`);function zy(r){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Nw(r){return new RegExp(`^${zy(r)}$`)}function Ky(r){let e=`${Wy}T${zy(r)}`;const t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function Bw(r,e){return!!((e==="v4"||!e)&&Iw.test(r)||(e==="v6"||!e)&&Cw.test(r))}class tr extends Se{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==X.string){const i=this._getOrReturnCtx(e);return W(i,{code:Z.invalid_type,expected:X.string,received:i.parsedType}),me}const n=new pt;let s;for(const i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),W(s,{code:Z.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),W(s,{code:Z.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){const a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?W(s,{code:Z.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&W(s,{code:Z.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")Ow.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"email",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")ef||(ef=new RegExp(Ew,"u")),ef.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"emoji",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")kw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"uuid",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")Sw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"nanoid",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")xw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"cuid",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")_w.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"cuid2",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")ww.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"ulid",code:Z.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),W(s,{validation:"url",code:Z.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"regex",code:Z.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?Ky(i).test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?Tw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?Nw(i).test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{code:Z.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?Aw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"duration",code:Z.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?Bw(e.data,i.version)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"ip",code:Z.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?jw.test(e.data)||(s=this._getOrReturnCtx(e,s),W(s,{validation:"base64",code:Z.invalid_string,message:i.message}),n.dirty()):Be.assertNever(i);return{status:n.value,value:e.data}}_regex(e,t,n){return this.refinement(s=>e.test(s),{validation:t,code:Z.invalid_string,...ce.errToObj(n)})}_addCheck(e){return new tr({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ce.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ce.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ce.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ce.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ce.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ce.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ce.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ce.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ce.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ce.errToObj(e)})}datetime(e){var t,n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(t=e==null?void 0:e.offset)!==null&&t!==void 0?t:!1,local:(n=e==null?void 0:e.local)!==null&&n!==void 0?n:!1,...ce.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...ce.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...ce.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...ce.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t==null?void 0:t.position,...ce.errToObj(t==null?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...ce.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...ce.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...ce.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...ce.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...ce.errToObj(t)})}nonempty(e){return this.min(1,ce.errToObj(e))}trim(){return new tr({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new tr({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new tr({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}tr.create=r=>{var e;return new tr({checks:[],typeName:he.ZodString,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,..._e(r)})};function Rw(r,e){const t=(r.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=t>n?t:n,i=parseInt(r.toFixed(s).replace(".","")),a=parseInt(e.toFixed(s).replace(".",""));return i%a/Math.pow(10,s)}class pn extends Se{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==X.number){const i=this._getOrReturnCtx(e);return W(i,{code:Z.invalid_type,expected:X.number,received:i.parsedType}),me}let n;const s=new pt;for(const i of this._def.checks)i.kind==="int"?Be.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),W(n,{code:Z.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?Rw(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),W(n,{code:Z.not_finite,message:i.message}),s.dirty()):Be.assertNever(i);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,ce.toString(t))}gt(e,t){return this.setLimit("min",e,!1,ce.toString(t))}lte(e,t){return this.setLimit("max",e,!0,ce.toString(t))}lt(e,t){return this.setLimit("max",e,!1,ce.toString(t))}setLimit(e,t,n,s){return new pn({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:ce.toString(s)}]})}_addCheck(e){return new pn({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ce.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ce.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:ce.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ce.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ce.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Be.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}}pn.create=r=>new pn({checks:[],typeName:he.ZodNumber,coerce:(r==null?void 0:r.coerce)||!1,..._e(r)});class mn extends Se{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==X.bigint){const i=this._getOrReturnCtx(e);return W(i,{code:Z.invalid_type,expected:X.bigint,received:i.parsedType}),me}let n;const s=new pt;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),W(n,{code:Z.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):Be.assertNever(i);return{status:s.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,ce.toString(t))}gt(e,t){return this.setLimit("min",e,!1,ce.toString(t))}lte(e,t){return this.setLimit("max",e,!0,ce.toString(t))}lt(e,t){return this.setLimit("max",e,!1,ce.toString(t))}setLimit(e,t,n,s){return new mn({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:ce.toString(s)}]})}_addCheck(e){return new mn({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ce.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:ce.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}}mn.create=r=>{var e;return new mn({checks:[],typeName:he.ZodBigInt,coerce:(e=r==null?void 0:r.coerce)!==null&&e!==void 0?e:!1,..._e(r)})};class Sa extends Se{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==X.boolean){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.boolean,received:n.parsedType}),me}return wt(e.data)}}Sa.create=r=>new Sa({typeName:he.ZodBoolean,coerce:(r==null?void 0:r.coerce)||!1,..._e(r)});class Un extends Se{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==X.date){const i=this._getOrReturnCtx(e);return W(i,{code:Z.invalid_type,expected:X.date,received:i.parsedType}),me}if(isNaN(e.data.getTime())){const i=this._getOrReturnCtx(e);return W(i,{code:Z.invalid_date}),me}const n=new pt;let s;for(const i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),W(s,{code:Z.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),W(s,{code:Z.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):Be.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Un({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:ce.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:ce.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}}Un.create=r=>new Un({checks:[],coerce:(r==null?void 0:r.coerce)||!1,typeName:he.ZodDate,..._e(r)});class tu extends Se{_parse(e){if(this._getType(e)!==X.symbol){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.symbol,received:n.parsedType}),me}return wt(e.data)}}tu.create=r=>new tu({typeName:he.ZodSymbol,..._e(r)});class Aa extends Se{_parse(e){if(this._getType(e)!==X.undefined){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.undefined,received:n.parsedType}),me}return wt(e.data)}}Aa.create=r=>new Aa({typeName:he.ZodUndefined,..._e(r)});class Oa extends Se{_parse(e){if(this._getType(e)!==X.null){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.null,received:n.parsedType}),me}return wt(e.data)}}Oa.create=r=>new Oa({typeName:he.ZodNull,..._e(r)});class Ls extends Se{constructor(){super(...arguments),this._any=!0}_parse(e){return wt(e.data)}}Ls.create=r=>new Ls({typeName:he.ZodAny,..._e(r)});class Ln extends Se{constructor(){super(...arguments),this._unknown=!0}_parse(e){return wt(e.data)}}Ln.create=r=>new Ln({typeName:he.ZodUnknown,..._e(r)});class Ur extends Se{_parse(e){const t=this._getOrReturnCtx(e);return W(t,{code:Z.invalid_type,expected:X.never,received:t.parsedType}),me}}Ur.create=r=>new Ur({typeName:he.ZodNever,..._e(r)});class ru extends Se{_parse(e){if(this._getType(e)!==X.undefined){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.void,received:n.parsedType}),me}return wt(e.data)}}ru.create=r=>new ru({typeName:he.ZodVoid,..._e(r)});class rr extends Se{_parse(e){const{ctx:t,status:n}=this._processInputParams(e),s=this._def;if(t.parsedType!==X.array)return W(t,{code:Z.invalid_type,expected:X.array,received:t.parsedType}),me;if(s.exactLength!==null){const a=t.data.length>s.exactLength.value,o=t.data.length<s.exactLength.value;(a||o)&&(W(t,{code:a?Z.too_big:Z.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&t.data.length<s.minLength.value&&(W(t,{code:Z.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&t.data.length>s.maxLength.value&&(W(t,{code:Z.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((a,o)=>s.type._parseAsync(new _r(t,a,t.path,o)))).then(a=>pt.mergeArray(n,a));const i=[...t.data].map((a,o)=>s.type._parseSync(new _r(t,a,t.path,o)));return pt.mergeArray(n,i)}get element(){return this._def.type}min(e,t){return new rr({...this._def,minLength:{value:e,message:ce.toString(t)}})}max(e,t){return new rr({...this._def,maxLength:{value:e,message:ce.toString(t)}})}length(e,t){return new rr({...this._def,exactLength:{value:e,message:ce.toString(t)}})}nonempty(e){return this.min(1,e)}}rr.create=(r,e)=>new rr({type:r,minLength:null,maxLength:null,exactLength:null,typeName:he.ZodArray,..._e(e)});function qs(r){if(r instanceof Je){const e={};for(const t in r.shape){const n=r.shape[t];e[t]=kr.create(qs(n))}return new Je({...r._def,shape:()=>e})}else return r instanceof rr?new rr({...r._def,type:qs(r.element)}):r instanceof kr?kr.create(qs(r.unwrap())):r instanceof gn?gn.create(qs(r.unwrap())):r instanceof wr?wr.create(r.items.map(e=>qs(e))):r}class Je extends Se{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),t=Be.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==X.object){const u=this._getOrReturnCtx(e);return W(u,{code:Z.invalid_type,expected:X.object,received:u.parsedType}),me}const{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof Ur&&this._def.unknownKeys==="strip"))for(const u in s.data)a.includes(u)||o.push(u);const c=[];for(const u of a){const f=i[u],m=s.data[u];c.push({key:{status:"valid",value:u},value:f._parse(new _r(s,m,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof Ur){const u=this._def.unknownKeys;if(u==="passthrough")for(const f of o)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(u==="strict")o.length>0&&(W(s,{code:Z.unrecognized_keys,keys:o}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const u=this._def.catchall;for(const f of o){const m=s.data[f];c.push({key:{status:"valid",value:f},value:u._parse(new _r(s,m,s.path,f)),alwaysSet:f in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const u=[];for(const f of c){const m=await f.key,D=await f.value;u.push({key:m,value:D,alwaysSet:f.alwaysSet})}return u}).then(u=>pt.mergeObjectSync(n,u)):pt.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return ce.errToObj,new Je({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{var s,i,a,o;const c=(a=(i=(s=this._def).errorMap)===null||i===void 0?void 0:i.call(s,t,n).message)!==null&&a!==void 0?a:n.defaultError;return t.code==="unrecognized_keys"?{message:(o=ce.errToObj(e).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new Je({...this._def,unknownKeys:"strip"})}passthrough(){return new Je({...this._def,unknownKeys:"passthrough"})}extend(e){return new Je({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Je({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:he.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new Je({...this._def,catchall:e})}pick(e){const t={};return Be.objectKeys(e).forEach(n=>{e[n]&&this.shape[n]&&(t[n]=this.shape[n])}),new Je({...this._def,shape:()=>t})}omit(e){const t={};return Be.objectKeys(this.shape).forEach(n=>{e[n]||(t[n]=this.shape[n])}),new Je({...this._def,shape:()=>t})}deepPartial(){return qs(this)}partial(e){const t={};return Be.objectKeys(this.shape).forEach(n=>{const s=this.shape[n];e&&!e[n]?t[n]=s:t[n]=s.optional()}),new Je({...this._def,shape:()=>t})}required(e){const t={};return Be.objectKeys(this.shape).forEach(n=>{if(e&&!e[n])t[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof kr;)i=i._def.innerType;t[n]=i}}),new Je({...this._def,shape:()=>t})}keyof(){return Gy(Be.objectKeys(this.shape))}}Je.create=(r,e)=>new Je({shape:()=>r,unknownKeys:"strip",catchall:Ur.create(),typeName:he.ZodObject,..._e(e)}),Je.strictCreate=(r,e)=>new Je({shape:()=>r,unknownKeys:"strict",catchall:Ur.create(),typeName:he.ZodObject,..._e(e)}),Je.lazycreate=(r,e)=>new Je({shape:r,unknownKeys:"strip",catchall:Ur.create(),typeName:he.ZodObject,..._e(e)});class Ea extends Se{_parse(e){const{ctx:t}=this._processInputParams(e),n=this._def.options;function s(i){for(const o of i)if(o.result.status==="valid")return o.result;for(const o of i)if(o.result.status==="dirty")return t.common.issues.push(...o.ctx.common.issues),o.result;const a=i.map(o=>new Pt(o.ctx.common.issues));return W(t,{code:Z.invalid_union,unionErrors:a}),me}if(t.common.async)return Promise.all(n.map(async i=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await i._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(s);{let i;const a=[];for(const c of n){const u={...t,common:{...t.common,issues:[]},parent:null},f=c._parseSync({data:t.data,path:t.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return t.common.issues.push(...i.ctx.common.issues),i.result;const o=a.map(c=>new Pt(c));return W(t,{code:Z.invalid_union,unionErrors:o}),me}}get options(){return this._def.options}}Ea.create=(r,e)=>new Ea({options:r,typeName:he.ZodUnion,..._e(e)});const Lr=r=>r instanceof ja?Lr(r.schema):r instanceof nr?Lr(r.innerType()):r instanceof Ta?[r.value]:r instanceof yn?r.options:r instanceof Na?Be.objectValues(r.enum):r instanceof Ba?Lr(r._def.innerType):r instanceof Aa?[void 0]:r instanceof Oa?[null]:r instanceof kr?[void 0,...Lr(r.unwrap())]:r instanceof gn?[null,...Lr(r.unwrap())]:r instanceof rf||r instanceof $a?Lr(r.unwrap()):r instanceof Ra?Lr(r._def.innerType):[];class nu extends Se{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==X.object)return W(t,{code:Z.invalid_type,expected:X.object,received:t.parsedType}),me;const n=this.discriminator,s=t.data[n],i=this.optionsMap.get(s);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(W(t,{code:Z.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),me)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){const s=new Map;for(const i of t){const a=Lr(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new nu({typeName:he.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:s,..._e(n)})}}function tf(r,e){const t=hn(r),n=hn(e);if(r===e)return{valid:!0,data:r};if(t===X.object&&n===X.object){const s=Be.objectKeys(e),i=Be.objectKeys(r).filter(o=>s.indexOf(o)!==-1),a={...r,...e};for(const o of i){const c=tf(r[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(t===X.array&&n===X.array){if(r.length!==e.length)return{valid:!1};const s=[];for(let i=0;i<r.length;i++){const a=r[i],o=e[i],c=tf(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return t===X.date&&n===X.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}class Ia extends Se{_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(Xd(i)||Xd(a))return me;const o=tf(i.value,a.value);return o.valid?((Qd(i)||Qd(a))&&t.dirty(),{status:t.value,value:o.data}):(W(n,{code:Z.invalid_intersection_types}),me)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}Ia.create=(r,e,t)=>new Ia({left:r,right:e,typeName:he.ZodIntersection,..._e(t)});class wr extends Se{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==X.array)return W(n,{code:Z.invalid_type,expected:X.array,received:n.parsedType}),me;if(n.data.length<this._def.items.length)return W(n,{code:Z.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),me;!this._def.rest&&n.data.length>this._def.items.length&&(W(n,{code:Z.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const i=[...n.data].map((a,o)=>{const c=this._def.items[o]||this._def.rest;return c?c._parse(new _r(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>pt.mergeArray(t,a)):pt.mergeArray(t,i)}get items(){return this._def.items}rest(e){return new wr({...this._def,rest:e})}}wr.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new wr({items:r,typeName:he.ZodTuple,rest:null,..._e(e)})};class Ca extends Se{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==X.object)return W(n,{code:Z.invalid_type,expected:X.object,received:n.parsedType}),me;const s=[],i=this._def.keyType,a=this._def.valueType;for(const o in n.data)s.push({key:i._parse(new _r(n,o,n.path,o)),value:a._parse(new _r(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?pt.mergeObjectAsync(t,s):pt.mergeObjectSync(t,s)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof Se?new Ca({keyType:e,valueType:t,typeName:he.ZodRecord,..._e(n)}):new Ca({keyType:tr.create(),valueType:e,typeName:he.ZodRecord,..._e(t)})}}class su extends Se{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==X.map)return W(n,{code:Z.invalid_type,expected:X.map,received:n.parsedType}),me;const s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new _r(n,o,n.path,[u,"key"])),value:i._parse(new _r(n,c,n.path,[u,"value"]))}));if(n.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of a){const u=await c.key,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return me;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}})}else{const o=new Map;for(const c of a){const u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return me;(u.status==="dirty"||f.status==="dirty")&&t.dirty(),o.set(u.value,f.value)}return{status:t.value,value:o}}}}su.create=(r,e,t)=>new su({valueType:e,keyType:r,typeName:he.ZodMap,..._e(t)});class qn extends Se{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==X.set)return W(n,{code:Z.invalid_type,expected:X.set,received:n.parsedType}),me;const s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(W(n,{code:Z.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),t.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(W(n,{code:Z.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),t.dirty());const i=this._def.valueType;function a(c){const u=new Set;for(const f of c){if(f.status==="aborted")return me;f.status==="dirty"&&t.dirty(),u.add(f.value)}return{status:t.value,value:u}}const o=[...n.data.values()].map((c,u)=>i._parse(new _r(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,t){return new qn({...this._def,minSize:{value:e,message:ce.toString(t)}})}max(e,t){return new qn({...this._def,maxSize:{value:e,message:ce.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}qn.create=(r,e)=>new qn({valueType:r,minSize:null,maxSize:null,typeName:he.ZodSet,..._e(e)});class Hs extends Se{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==X.function)return W(t,{code:Z.invalid_type,expected:X.function,received:t.parsedType}),me;function n(o,c){return Qc({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Xc(),Vs].filter(u=>!!u),issueData:{code:Z.invalid_arguments,argumentsError:c}})}function s(o,c){return Qc({data:o,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Xc(),Vs].filter(u=>!!u),issueData:{code:Z.invalid_return_type,returnTypeError:c}})}const i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Fs){const o=this;return wt(async function(...c){const u=new Pt([]),f=await o._def.args.parseAsync(c,i).catch(j=>{throw u.addIssue(n(c,j)),u}),m=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(m,i).catch(j=>{throw u.addIssue(s(m,j)),u})})}else{const o=this;return wt(function(...c){const u=o._def.args.safeParse(c,i);if(!u.success)throw new Pt([n(c,u.error)]);const f=Reflect.apply(a,this,u.data),m=o._def.returns.safeParse(f,i);if(!m.success)throw new Pt([s(f,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Hs({...this._def,args:wr.create(e).rest(Ln.create())})}returns(e){return new Hs({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,n){return new Hs({args:e||wr.create([]).rest(Ln.create()),returns:t||Ln.create(),typeName:he.ZodFunction,..._e(n)})}}class ja extends Se{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}ja.create=(r,e)=>new ja({getter:r,typeName:he.ZodLazy,..._e(e)});class Ta extends Se{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return W(t,{received:t.data,code:Z.invalid_literal,expected:this._def.value}),me}return{status:"valid",value:e.data}}get value(){return this._def.value}}Ta.create=(r,e)=>new Ta({value:r,typeName:he.ZodLiteral,..._e(e)});function Gy(r,e){return new yn({values:r,typeName:he.ZodEnum,..._e(e)})}class yn extends Se{constructor(){super(...arguments),wa.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const t=this._getOrReturnCtx(e),n=this._def.values;return W(t,{expected:Be.joinValues(n),received:t.parsedType,code:Z.invalid_type}),me}if(eu(this,wa)||Hy(this,wa,new Set(this._def.values)),!eu(this,wa).has(e.data)){const t=this._getOrReturnCtx(e),n=this._def.values;return W(t,{received:t.data,code:Z.invalid_enum_value,options:n}),me}return wt(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return yn.create(e,{...this._def,...t})}exclude(e,t=this._def){return yn.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}}wa=new WeakMap,yn.create=Gy;class Na extends Se{constructor(){super(...arguments),ka.set(this,void 0)}_parse(e){const t=Be.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==X.string&&n.parsedType!==X.number){const s=Be.objectValues(t);return W(n,{expected:Be.joinValues(s),received:n.parsedType,code:Z.invalid_type}),me}if(eu(this,ka)||Hy(this,ka,new Set(Be.getValidEnumValues(this._def.values))),!eu(this,ka).has(e.data)){const s=Be.objectValues(t);return W(n,{received:n.data,code:Z.invalid_enum_value,options:s}),me}return wt(e.data)}get enum(){return this._def.values}}ka=new WeakMap,Na.create=(r,e)=>new Na({values:r,typeName:he.ZodNativeEnum,..._e(e)});class Fs extends Se{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==X.promise&&t.common.async===!1)return W(t,{code:Z.invalid_type,expected:X.promise,received:t.parsedType}),me;const n=t.parsedType===X.promise?t.data:Promise.resolve(t.data);return wt(n.then(s=>this._def.type.parseAsync(s,{path:t.path,errorMap:t.common.contextualErrorMap})))}}Fs.create=(r,e)=>new Fs({type:r,typeName:he.ZodPromise,..._e(e)});class nr extends Se{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===he.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{W(n,a),a.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){const a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(t.value==="aborted")return me;const c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?me:c.status==="dirty"||t.value==="dirty"?Us(c.value):c});{if(t.value==="aborted")return me;const o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?me:o.status==="dirty"||t.value==="dirty"?Us(o.value):o}}if(s.type==="refinement"){const a=o=>{const c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){const o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?me:(o.status==="dirty"&&t.dirty(),a(o.value),{status:t.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?me:(o.status==="dirty"&&t.dirty(),a(o.value).then(()=>({status:t.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){const a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!xa(a))return a;const o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>xa(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:t.value,value:o})):a);Be.assertNever(s)}}nr.create=(r,e,t)=>new nr({schema:r,typeName:he.ZodEffects,effect:e,..._e(t)}),nr.createWithPreprocess=(r,e,t)=>new nr({schema:e,effect:{type:"preprocess",transform:r},typeName:he.ZodEffects,..._e(t)});class kr extends Se{_parse(e){return this._getType(e)===X.undefined?wt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}kr.create=(r,e)=>new kr({innerType:r,typeName:he.ZodOptional,..._e(e)});class gn extends Se{_parse(e){return this._getType(e)===X.null?wt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}gn.create=(r,e)=>new gn({innerType:r,typeName:he.ZodNullable,..._e(e)});class Ba extends Se{_parse(e){const{ctx:t}=this._processInputParams(e);let n=t.data;return t.parsedType===X.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Ba.create=(r,e)=>new Ba({innerType:r,typeName:he.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._e(e)});class Ra extends Se{_parse(e){const{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return _a(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Pt(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Pt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}Ra.create=(r,e)=>new Ra({innerType:r,typeName:he.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._e(e)});class iu extends Se{_parse(e){if(this._getType(e)!==X.nan){const n=this._getOrReturnCtx(e);return W(n,{code:Z.invalid_type,expected:X.nan,received:n.parsedType}),me}return{status:"valid",value:e.data}}}iu.create=r=>new iu({typeName:he.ZodNaN,..._e(r)});const Pw=Symbol("zod_brand");class rf extends Se{_parse(e){const{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}}class Pa extends Se{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?me:i.status==="dirty"?(t.dirty(),Us(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{const s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?me:s.status==="dirty"?(t.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,t){return new Pa({in:e,out:t,typeName:he.ZodPipeline})}}class $a extends Se{_parse(e){const t=this._def.innerType._parse(e),n=s=>(xa(s)&&(s.value=Object.freeze(s.value)),s);return _a(t)?t.then(s=>n(s)):n(t)}unwrap(){return this._def.innerType}}$a.create=(r,e)=>new $a({innerType:r,typeName:he.ZodReadonly,..._e(e)});function Jy(r,e={},t){return r?Ls.create().superRefine((n,s)=>{var i,a;if(!r(n)){const o=typeof e=="function"?e(n):typeof e=="string"?{message:e}:e,c=(a=(i=o.fatal)!==null&&i!==void 0?i:t)!==null&&a!==void 0?a:!0,u=typeof o=="string"?{message:o}:o;s.addIssue({code:"custom",...u,fatal:c})}}):Ls.create()}const $w={object:Je.lazycreate};var he;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(he||(he={}));const Zw=(r,e={message:`Input not instance of ${r.name}`})=>Jy(t=>t instanceof r,e),Yy=tr.create,Xy=pn.create,Dw=iu.create,Mw=mn.create,Qy=Sa.create,Vw=Un.create,Uw=tu.create,Lw=Aa.create,qw=Oa.create,Hw=Ls.create,Fw=Ln.create,Ww=Ur.create,zw=ru.create,Kw=rr.create,Gw=Je.create,Jw=Je.strictCreate,Yw=Ea.create,Xw=nu.create,Qw=Ia.create,e1=wr.create,t1=Ca.create,r1=su.create,n1=qn.create,s1=Hs.create,i1=ja.create,a1=Ta.create,o1=yn.create,c1=Na.create,u1=Fs.create,eg=nr.create,l1=kr.create,d1=gn.create,f1=nr.createWithPreprocess,h1=Pa.create;var Ht=Object.freeze({__proto__:null,defaultErrorMap:Vs,setErrorMap:vw,getErrorMap:Xc,makeIssue:Qc,EMPTY_PATH:bw,addIssueToContext:W,ParseStatus:pt,INVALID:me,DIRTY:Us,OK:wt,isAborted:Xd,isDirty:Qd,isValid:xa,isAsync:_a,get util(){return Be},get objectUtil(){return Yd},ZodParsedType:X,getParsedType:hn,ZodType:Se,datetimeRegex:Ky,ZodString:tr,ZodNumber:pn,ZodBigInt:mn,ZodBoolean:Sa,ZodDate:Un,ZodSymbol:tu,ZodUndefined:Aa,ZodNull:Oa,ZodAny:Ls,ZodUnknown:Ln,ZodNever:Ur,ZodVoid:ru,ZodArray:rr,ZodObject:Je,ZodUnion:Ea,ZodDiscriminatedUnion:nu,ZodIntersection:Ia,ZodTuple:wr,ZodRecord:Ca,ZodMap:su,ZodSet:qn,ZodFunction:Hs,ZodLazy:ja,ZodLiteral:Ta,ZodEnum:yn,ZodNativeEnum:Na,ZodPromise:Fs,ZodEffects:nr,ZodTransformer:nr,ZodOptional:kr,ZodNullable:gn,ZodDefault:Ba,ZodCatch:Ra,ZodNaN:iu,BRAND:Pw,ZodBranded:rf,ZodPipeline:Pa,ZodReadonly:$a,custom:Jy,Schema:Se,ZodSchema:Se,late:$w,get ZodFirstPartyTypeKind(){return he},coerce:{string:r=>tr.create({...r,coerce:!0}),number:r=>pn.create({...r,coerce:!0}),boolean:r=>Sa.create({...r,coerce:!0}),bigint:r=>mn.create({...r,coerce:!0}),date:r=>Un.create({...r,coerce:!0})},any:Hw,array:Kw,bigint:Mw,boolean:Qy,date:Vw,discriminatedUnion:Xw,effect:eg,enum:o1,function:s1,instanceof:Zw,intersection:Qw,lazy:i1,literal:a1,map:r1,nan:Dw,nativeEnum:c1,never:Ww,null:qw,nullable:d1,number:Xy,object:Gw,oboolean:()=>Qy().optional(),onumber:()=>Xy().optional(),optional:l1,ostring:()=>Yy().optional(),pipeline:h1,preprocess:f1,promise:u1,record:t1,set:n1,strictObject:Jw,string:Yy,symbol:Uw,transformer:eg,tuple:e1,undefined:Lw,union:Yw,unknown:Fw,void:zw,NEVER:me,ZodIssueCode:Z,quotelessJson:gw,ZodError:Pt});Ht.object({start:Ht.number(),limit:Ht.number(),length:Ht.number()}),Eu.extend({email:Ht.string(),login_count:Ht.number(),multifactor:Ht.array(Ht.string()).optional(),last_ip:Ht.string().optional(),last_login:Ht.string().optional(),user_id:Ht.string()}).catchall(Ht.any());const p1=as.extend({tenants:_.array(Vi)}),m1=new jt().openapi(Oe({tags:["tenants"],method:"get",path:"/",request:{query:Ds},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"tenant/json":{schema:_.union([_.array(Vi),p1])}},description:"List of tenants"}}}),async r=>{const{page:e,per_page:t,include_totals:n,sort:s,q:i}=r.req.valid("query"),a=await r.env.data.tenants.list({page:e,per_page:t,include_totals:n,sort:Ms(s),q:i});return n?r.json(a):r.json(a.tenants)}).openapi(Oe({tags:["tenants"],method:"get",path:"/{id}",request:{params:_.object({id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"tenant/json":{schema:Vi}},description:"A tenant"}}}),async r=>{const{id:e}=r.req.valid("param"),t=await r.env.data.tenants.get(e);if(!t)throw new Ue(404);return console.log("tenant",t),r.json(t)}).openapi(Oe({tags:["tenants"],method:"delete",path:"/{id}",request:{params:_.object({id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{id:e}=r.req.valid("param");return await r.env.data.tenants.remove(e),r.text("OK")}).openapi(Oe({tags:["tenants"],method:"patch",path:"/{id}",request:{body:{content:{"application/json":{schema:_.object(Tu.shape).partial()}}},params:_.object({id:_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{id:e}=r.req.valid("param"),t=r.req.valid("json");return await r.env.data.tenants.update(e,t),r.text("OK")}).openapi(Oe({tags:["tenants"],method:"post",path:"/",request:{body:{content:{"application/json":{schema:_.object(Tu.shape)}}}},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"tenant/json":{schema:Vi}},description:"An tenant"}}}),async r=>{const e=r.req.valid("json"),t=await r.env.data.tenants.create(e);return r.json(t,{status:201})}),y1=as.extend({logs:_.array(Ru)}),g1=new jt().openapi(Oe({tags:["logs"],method:"get",path:"/",request:{query:Ds,headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:_.union([_.array(Ru),y1])}},description:"List of log rows"}}}),async r=>{const{page:e,per_page:t,include_totals:n,sort:s,q:i}=r.req.valid("query"),{"tenant-id":a}=r.req.valid("header"),o=await r.env.data.logs.list(a,{page:e,per_page:t,include_totals:n,sort:Ms(s),q:i});return n?r.json(o):r.json(o.logs)}).openapi(Oe({tags:["logs"],method:"get",path:"/{id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:Ru}},description:"A log entry"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param"),n=await r.env.data.logs.get(e,t);if(!n)throw new Ue(404);return r.json(n)}),v1=as.extend({hooks:_.array(Ui)}),b1=new jt().openapi(Oe({tags:["hooks"],method:"get",path:"/",request:{query:Ds,headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:_.union([_.array(Ui),v1])}},description:"List of hooks"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{page:t,per_page:n,include_totals:s,sort:i,q:a}=r.req.valid("query"),o=await r.env.data.hooks.list(e,{page:t,per_page:n,include_totals:s,sort:Ms(i),q:a});return s?r.json(o):r.json(o.hooks)}).openapi(Oe({tags:["hooks"],method:"post",path:"/",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.object(Nu.shape)}}}},security:[{Bearer:["auth:write"]}],responses:{201:{content:{"application/json":{schema:Ui}},description:"The created hook"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),n=await r.env.data.hooks.create(e,t);return r.json(n,{status:201})}).openapi(Oe({tags:["hooks"],method:"patch",path:"/{hook_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({hook_id:_.string()}),body:{content:{"application/json":{schema:_.object(Nu.shape).omit({hook_id:!0}).partial()}}}},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"application/json":{schema:Ui.shape}},description:"The updated hook"},404:{description:"Hook not found"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{hook_id:t}=r.req.valid("param"),n=r.req.valid("json");await r.env.data.hooks.update(e,t,n);const s=await r.env.data.hooks.get(e,t);if(!s)throw new Ue(404,{message:"Hook not found"});return r.json(s)}).openapi(Oe({tags:["hooks"],method:"get",path:"/{hook_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({hook_id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:Ui}},description:"A hook"},404:{description:"Hook not found"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{hook_id:t}=r.req.valid("param"),n=await r.env.data.hooks.get(e,t);if(!n)throw new Ue(404,{message:"Hook not found"});return r.json(n)}).openapi(Oe({tags:["hooks"],method:"delete",path:"/{hook_id}",request:{headers:_.object({"tenant-id":_.string()}),params:_.object({hook_id:_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{description:"A hook"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{hook_id:t}=r.req.valid("param");if(!await r.env.data.hooks.remove(e,t))throw new Ue(404,{message:"Hook not found"});return r.text("OK")}),x1=as.extend({connections:_.array(cs)}),_1=new jt().openapi(Oe({tags:["connections"],method:"get",path:"/",request:{query:Ds,headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:_.union([_.array(cs),x1])}},description:"List of connectionss"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{page:t,per_page:n,include_totals:s=!1,sort:i,q:a}=r.req.valid("query"),o=await r.env.data.connections.list(e,{page:t,per_page:n,include_totals:s,sort:Ms(i),q:a});return s?r.json(o):r.json(o.connections)}).openapi(Oe({tags:["connections"],method:"get",path:"/{id}",request:{params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:cs}},description:"A connection"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param"),n=await r.env.data.connections.get(e,t);if(!n)throw new Ue(404);return r.json(n)}).openapi(Oe({tags:["connections"],method:"delete",path:"/{id}",request:{params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Status"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param");if(!await r.env.data.connections.remove(e,t))throw new Ue(404,{message:"Connection not found"});return r.text("OK")}).openapi(Oe({tags:["connections"],method:"patch",path:"/{id}",request:{body:{content:{"application/json":{schema:_.object(ju.shape).partial()}}},params:_.object({id:_.string()}),headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{200:{content:{"application/json":{schema:cs}},description:"The updated connection"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),{id:t}=r.req.valid("param"),n=r.req.valid("json");if(!await r.env.data.connections.update(e,t,n))throw new Ue(404,{message:"Connection not found"});const i=await r.env.data.connections.get(e,t);if(!i)throw new Ue(404,{message:"Connection not found"});return r.json(i)}).openapi(Oe({tags:["connections"],method:"post",path:"/",request:{body:{content:{"application/json":{schema:_.object(ju.shape)}}},headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:write"]}],responses:{201:{content:{"application/json":{schema:cs}},description:"An connection"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),n=await r.env.data.connections.create(e,t);return r.json(n,{status:201})}),w1=new jt().openapi(Oe({tags:["prompts"],method:"get",path:"/",request:{headers:_.object({"tenant-id":_.string()})},security:[{Bearer:["auth:read"]}],responses:{200:{content:{"application/json":{schema:$u}},description:"Branding settings"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=await r.env.data.promptSettings.get(e);return t?r.json(t):r.json($u.parse({}))}).openapi(Oe({tags:["prompts"],method:"patch",path:"/",request:{headers:_.object({"tenant-id":_.string()}),body:{content:{"application/json":{schema:_.object($u.shape).partial()}}}},security:[{Bearer:["auth:write"]}],responses:{200:{description:"Prompts settings"}}}),async r=>{const{"tenant-id":e}=r.req.valid("header"),t=r.req.valid("json"),n=await r.env.data.promptSettings.get(e);return Object.assign(n,t),await r.env.data.promptSettings.set(e,n),r.json(n)});let tg=!1;function k1(r){r.use(async(e,t)=>(tg||(r.openAPIRegistry.registerComponent("securitySchemes","Bearer",{type:"oauth2",scheme:"bearer",flows:{implicit:{authorizationUrl:`${e.env.AUTH_URL}/authorize`,scopes:{openid:"Basic user information",email:"User email",profile:"User profile information"}}}}),tg=!0),await t()))}function S1(r){const e=new jt;e.use(async(n,s)=>(n.env.data=Y_(n,r.dataAdapter),s()));const t=e.route("/api/v2/branding",X_).route("/api/v2/users",hw).route("/api/v2/users-by-email",pw).route("/api/v2/clients",yw).route("/api/v2/tenants",m1).route("/api/v2/logs",g1).route("/api/v2/hooks",b1).route("/api/v2/connections",_1).route("/api/v2/prompts",w1);return k1(t),t.doc("/api/v2/spec",{openapi:"3.0.0",info:{version:"1.0.0",title:"Management api"}}),t}function A1(r){const e=new jt;e.get("/",s=>s.text("Hello, authhero!"));const t=S1(r);e.route("/api/v2",t);const n=new jt().route("/.well-known",F_(r));return n.doc("/spec",{openapi:"3.0.0",info:{version:"1.0.0",title:"Oauth endpoints"}}),e.route("/",n),{rootApp:e,managementApp:t,oauthApp:n}}return He.init=A1,Object.defineProperty(He,Symbol.toStringTag,{value:"Module"}),He}({});
|